/* BookKad final readability layer. Loads after compiled design CSS. */

.library-sidebar .side-label {
  font-size: 13px !important;
  line-height: 1.4 !important;
  letter-spacing: .14em !important;
  font-weight: 900 !important;
}
.library-sidebar .side-nav a {
  min-height: 48px !important;
  padding: 11px 14px !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  font-weight: 760 !important;
}
.library-sidebar .side-nav a > span {
  font-size: 16px !important;
}

.global-workspace-top form input {
  font-size: 15px !important;
}
.bookkad-location span {
  font-size: 11px !important;
  line-height: 1.2 !important;
}
.bookkad-location strong {
  font-size: 15px !important;
  line-height: 1.3 !important;
}
.global-quick-links a {
  font-size: 14px !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
}

.bookkad-master-trigger {
  min-height: 44px !important;
  font-size: 14px !important;
}
.bookkad-master-label {
  font-size: 12px !important;
}
.bookkad-master-menu nav > a {
  min-height: 50px !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
}

.discover-heading small,
.catalogue-heading small,
.panel-heading small {
  font-size: 12px !important;
  line-height: 1.35 !important;
}
.feature-info h2,
.feature-info h2 a {
  font-size: 16px !important;
  line-height: 1.35 !important;
}
.feature-info p,
.feature-info span {
  font-size: 13px !important;
  line-height: 1.45 !important;
}
.catalogue-book h3,
.catalogue-book h3 a {
  font-size: 15px !important;
  line-height: 1.4 !important;
}
.catalogue-book p,
.plain-list small,
.catalogue-actions a {
  font-size: 13px !important;
  line-height: 1.45 !important;
}
.plain-list > a > span {
  font-size: 15px !important;
  line-height: 1.4 !important;
}

.global-legal-footer,
.global-legal-footer p,
.footer-brand span {
  font-size: 14px !important;
  line-height: 1.6 !important;
}
.global-legal-footer .app-legal-links a {
  font-size: 14px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
}


/* Final homepage contrast hardening */
.discover-heading small,
.catalogue-heading small,
.panel-heading small,
.feature-info p,
.feature-info span,
.catalogue-book p,
.plain-list small,
.catalogue-actions a,
.global-legal-footer,
.global-legal-footer p,
.footer-brand span,
.global-legal-footer .app-legal-links a {
  color:#475467 !important;
}
.plain-list > a > span,
.feature-info h2,
.feature-info h2 a,
.catalogue-book h3,
.catalogue-book h3 a {
  color:#101828 !important;
}

/* Guest CTA: visually centered as one coherent conversion block. */
.bookkad-guest-cta {
  text-align: center !important;
  grid-template-columns: 1fr !important;
  justify-items: center !important;
}
.bookkad-guest-cta-copy {
  width: min(820px,100%) !important;
  margin: 0 auto !important;
}
.bookkad-guest-cta h2 {
  text-align: center !important;
}
.bookkad-guest-cta p {
  max-width: 760px !important;
  margin: 14px auto 0 !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  text-align: center !important;
}
.bookkad-guest-features {
  width: min(980px,100%) !important;
  margin: 0 auto !important;
  grid-column: auto !important;
}
.bookkad-guest-features span {
  justify-content: center !important;
  text-align: center !important;
  font-size: 14px !important;
}
.bookkad-guest-actions {
  width: min(640px,100%) !important;
  margin: 0 auto !important;
  justify-self: center !important;
  grid-column: auto !important;
}
.bookkad-guest-actions a {
  width: 100% !important;
  min-height: 50px !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  justify-content: center !important;
  text-align: center !important;
}


/* Book of the Day primary CTA — explicit accessible contrast. */
.bk-day-open {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 12px 18px !important;
  border-radius: 999px !important;
  background: #0b1020 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1.3 !important;
}
.bk-day-open:visited {
  color: #ffffff !important;
}
.bk-day-open:hover,
.bk-day-open:focus {
  background: #172554 !important;
  color: #ffffff !important;
}
.bk-day-open:focus-visible {
  outline: 3px solid #93c5fd !important;
  outline-offset: 3px !important;
}


/* Universal Book Note sharing */
.bk-share{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}
.bk-share > strong{
  margin-right:8px !important;
  font-size:12px !important;
  letter-spacing:.12em !important;
}
.bk-share a,
.bk-share button{
  min-height:42px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:9px 14px !important;
  border:1px solid #d7deec !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#0b1020 !important;
  text-decoration:none !important;
  font:800 13px/1.2 inherit !important;
  cursor:pointer !important;
}
.bk-share a:hover,
.bk-share a:focus,
.bk-share button:hover,
.bk-share button:focus{
  background:#eef3ff !important;
  border-color:#b8c7ef !important;
  color:#1d4ed8 !important;
}
.bk-share-native{
  background:#0b1020 !important;
  border-color:#0b1020 !important;
  color:#fff !important;
}
.bk-share-native:hover,
.bk-share-native:focus{
  background:#172554 !important;
  color:#fff !important;
}
.bk-share-status{
  width:100% !important;
  min-height:1.2em !important;
  font-size:12px !important;
  color:#667085 !important;
}
@media(max-width:640px){
  .bk-share{
    gap:8px !important;
  }
  .bk-share > strong{
    width:100% !important;
    margin:0 0 2px !important;
  }
  .bk-share a,
  .bk-share button{
    min-height:44px !important;
    font-size:14px !important;
    padding:10px 13px !important;
  }
  .bk-share-native{
    order:-1 !important;
    width:100% !important;
  }
}


/* Icon-only share controls */
.bk-share a,
.bk-share button{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;
  padding:0 !important;
  flex:0 0 44px !important;
}
.bk-share svg{
  width:20px !important;
  height:20px !important;
  display:block !important;
  overflow:visible !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.bk-share .bk-share-native svg,
.bk-share .bk-share-copy svg{
  width:19px !important;
  height:19px !important;
}
.bk-share .screen-reader-text{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
@media(max-width:640px){
  .bk-share-native{
    width:44px !important;
    min-width:44px !important;
    flex:0 0 44px !important;
  }
}


/* Saved Shorts — member video library */
.bk-short-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  margin-top:14px !important;
}
.bk-short-actions > a{
  margin-top:0 !important;
}
.bk-short-save{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:42px !important;
  padding:9px 13px !important;
  border:1px solid #c7d2fe !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#1e3a8a !important;
  text-decoration:none !important;
  font:800 13px/1.2 inherit !important;
  cursor:pointer !important;
}
.bk-short-save:hover,
.bk-short-save:focus{
  background:#eef3ff !important;
  border-color:#93a8e8 !important;
}
.bk-short-save.is-active{
  background:#0b1020 !important;
  border-color:#0b1020 !important;
  color:#fff !important;
}
.bk-saved-shorts{
  margin:28px 0 0 !important;
  padding:24px !important;
  border:1px solid #d7deec !important;
  border-radius:20px !important;
  background:#fff !important;
}
.bk-saved-shorts-head{
  display:flex !important;
  justify-content:space-between !important;
  align-items:flex-end !important;
  gap:18px !important;
  margin-bottom:18px !important;
}
.bk-saved-shorts-head h2{
  margin:4px 0 6px !important;
  font-size:28px !important;
  line-height:1.12 !important;
}
.bk-saved-shorts-head p{
  margin:0 !important;
  color:#667085 !important;
}
.bk-saved-shorts-head > a{
  flex:0 0 auto !important;
  font-weight:800 !important;
  text-decoration:none !important;
}
.bk-saved-shorts-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}
.bk-saved-shorts-grid article{
  display:grid !important;
  grid-template-columns:100px minmax(0,1fr) !important;
  gap:14px !important;
  padding:12px !important;
  border:1px solid #e4e7ec !important;
  border-radius:14px !important;
  background:#fafbff !important;
}
.bk-saved-short-thumb img{
  width:100% !important;
  aspect-ratio:2/3 !important;
  object-fit:cover !important;
  border-radius:10px !important;
}
.bk-saved-shorts-grid h3{
  margin:0 0 6px !important;
  font-size:16px !important;
  line-height:1.3 !important;
}
.bk-saved-shorts-grid h3 a{
  color:inherit !important;
  text-decoration:none !important;
}
.bk-saved-shorts-grid p{
  margin:0 0 10px !important;
  color:#667085 !important;
  font-size:13px !important;
  line-height:1.45 !important;
}
@media(max-width:700px){
  .bk-short-actions{
    align-items:stretch !important;
  }
  .bk-short-save{
    width:100% !important;
    min-height:44px !important;
  }
  .bk-saved-shorts{
    padding:18px !important;
  }
  .bk-saved-shorts-head{
    align-items:flex-start !important;
    flex-direction:column !important;
  }
  .bk-saved-shorts-grid{
    grid-template-columns:1fr !important;
  }
  .bk-saved-shorts-grid article{
    grid-template-columns:82px minmax(0,1fr) !important;
  }
}


/* Reading Streak — meaningful participation, not login count */
.bk-progress-metrics{
  display:flex !important;
  align-items:stretch !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
.bk-progress-metrics .bk-xp,
.bk-progress-metrics .bk-streak{
  min-width:118px !important;
}
.bk-streak{
  display:grid !important;
  align-content:center !important;
  justify-items:center !important;
  padding:12px 14px !important;
  border:1px solid #d7deec !important;
  border-radius:14px !important;
  background:#fff !important;
  text-align:center !important;
}
.bk-streak strong{
  font-size:28px !important;
  line-height:1 !important;
  color:#0b1020 !important;
}
.bk-streak span{
  margin-top:4px !important;
  font-size:12px !important;
  font-weight:850 !important;
  color:#344054 !important;
}
.bk-streak small{
  margin-top:3px !important;
  font-size:10px !important;
  color:#667085 !important;
}
@media(max-width:640px){
  .bk-progress-metrics{
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
  }
  .bk-progress-metrics .bk-xp,
  .bk-progress-metrics .bk-streak{
    min-width:0 !important;
  }
}

@media (max-width:1099px) {
  .bookkad-master-menu nav > a {
    font-size: 16px !important;
  }
}

@media (max-width:767px) {
  .global-workspace-top form input {
    font-size: 16px !important;
  }
  .bookkad-guest-cta {
    padding: 26px 18px !important;
  }
  .bookkad-guest-cta p {
    font-size: 16px !important;
  }
  .bookkad-guest-features {
    grid-template-columns: 1fr !important;
  }
  .bookkad-guest-features span,
  .bookkad-guest-actions a {
    font-size: 15px !important;
  }
  .global-legal-footer,
  .global-legal-footer p,
  .footer-brand span,
  .global-legal-footer .app-legal-links a {
    font-size: 14px !important;
  }
}
