
.plans-shell{width:min(940px,calc(100% - 28px));margin:0 auto;padding:28px 0 60px}
.plans-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}
.plans-topbar h1{margin:.2rem 0 .35rem}.plans-lead{margin:0;color:var(--muted);line-height:1.65}.plans-back{text-decoration:none;white-space:nowrap}
.plans-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}.plans-intro h2{margin:.2rem 0 .4rem}.plans-intro p:last-child{margin:0;color:var(--muted);line-height:1.6}.plans-intro-icon{font-size:2.4rem}
.plans-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.plan-choice-card{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:18px;background:var(--surface);padding:18px}
.plan-choice-card h2{margin:.2rem 0 .45rem;font-size:1.15rem}.plan-choice-card p{color:var(--muted);line-height:1.55}
.plan-choice-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:10px}.plan-choice-progress{font-size:.8rem;font-weight:800;color:var(--muted)}
.plan-choice-card .primary-button,.plan-choice-card .secondary-button{width:100%;margin-top:12px}
.plans-return{margin:0 0 12px}.plan-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:14px}
.plan-header h2{margin:.2rem 0 .35rem}.plan-summary{margin:0;color:var(--muted);line-height:1.6}.plan-progress-wrap{min-width:190px}.plan-progress-text{margin:0 0 7px;font-size:.84rem;font-weight:800;text-align:right}
.plan-progress-track{height:8px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--border) 70%,transparent)}.plan-progress-bar{display:block;width:0;height:100%;background:var(--accent);transition:width .2s ease}
.day-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px;scrollbar-width:thin}.day-tab{flex:0 0 auto;min-width:44px;min-height:40px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);font:inherit;font-weight:800;cursor:pointer}
.day-tab.is-active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.day-tab.is-complete::after{content:"✓";margin-left:4px;color:var(--accent)}
.plan-day-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.plan-day-heading h2{margin:.15rem 0 0}.plan-translation{margin:.25rem 0 0;color:var(--muted);font-size:.84rem}
.day-complete-badge{display:inline-flex;padding:.36rem .62rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 9%,var(--surface));color:var(--accent);font-size:.78rem;font-weight:850}
.plan-section{margin-top:18px;padding:16px;border-radius:15px;background:color-mix(in srgb,var(--accent) 4%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 14%,var(--border))}
.plan-section-label{margin:0 0 .6rem;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.03em;color:var(--accent)}.plan-section p:last-child{margin-bottom:0;line-height:1.72}
.plan-scripture{font-family:Georgia,"Times New Roman",serif;font-size:1.08rem;line-height:1.86}.plan-scripture p{margin:0 0 .8em}.plan-verse-number{font-weight:850;margin-right:7px;color:var(--accent)}
.plan-think{background:color-mix(in srgb,#f3b000 8%,var(--surface));border-color:color-mix(in srgb,#f3b000 22%,var(--border))}
.mark-complete-button{margin-top:18px;min-height:50px}.plan-day-navigation{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.plan-day-navigation button{width:100%}
.plan-complete-card{display:flex;align-items:center;gap:16px;margin-top:16px}.plan-complete-card>span{font-size:2rem}.plan-complete-card h2{margin:.15rem 0 .35rem}.plan-complete-card p:last-child{margin:0;color:var(--muted);line-height:1.55}
@media(max-width:760px){.plans-list{grid-template-columns:1fr}.plan-header{display:grid}.plan-progress-wrap{min-width:0}.plan-progress-text{text-align:left}}
@media(max-width:620px){.plans-topbar{display:grid}.plans-back{width:100%;box-sizing:border-box;text-align:center}.plans-intro{align-items:flex-start}.plans-intro-icon{font-size:2rem}.plan-day-heading{display:grid}.day-complete-badge{width:fit-content}}

/* Build 1.6.50 */
.plan-complete-card.hidden{display:none!important}

.plan-context{background:color-mix(in srgb,var(--accent) 3%,var(--surface))}
.plan-modern-story{background:color-mix(in srgb,#8b5cf6 5%,var(--surface));border-color:color-mix(in srgb,#8b5cf6 17%,var(--border))}
.plan-story-note{margin:-.2rem 0 .7rem;color:var(--muted);font-size:.78rem;font-style:italic}

/* Build 1.6.50: Bible Plan section polish */
.plan-context {
  position: relative;
  background: color-mix(in srgb, var(--accent) 2.5%, var(--surface));
  border-color: color-mix(in srgb, var(--accent) 18%, var(--border));
}
.plan-context::before {
  content: "Bible Context";
  display: inline-flex;
  margin-bottom: .55rem;
  padding: .2rem .46rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent) 8%, var(--surface));
  color: var(--accent);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .02em;
}
.plan-modern-story {
  position: relative;
  background: color-mix(in srgb, #8b5cf6 7%, var(--surface));
  border-color: color-mix(in srgb, #8b5cf6 28%, var(--border));
}
.plan-modern-story::before {
  content: "Real-Life Illustration";
  display: inline-flex;
  margin-bottom: .55rem;
  padding: .2rem .46rem;
  border-radius: 999px;
  background: color-mix(in srgb, #8b5cf6 10%, var(--surface));
  color: #6d4bc7;
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .02em;
}
.plan-modern-story .plan-section-label {
  color: #6d4bc7;
}
.plan-story-note {
  margin-top: -.1rem;
  color: var(--muted);
}

/* Build 1.6.50: audience-aware Bible Plans */
.plan-audience-badge{
  display:inline-flex;
  margin-top:.4rem;
  padding:.28rem .5rem;
  border-radius:999px;
  background:color-mix(in srgb,var(--accent) 7%,var(--surface));
  color:var(--accent);
  font-size:.72rem;
  font-weight:850;
}
.plan-audience-quick-select{
  width:auto;
  max-width:130px;
  border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));
  cursor:pointer;
  font-family:inherit;
}
.plan-audience-quick-select:focus-visible{
  outline:3px solid color-mix(in srgb,var(--accent) 32%,transparent);
  outline-offset:2px;
}


/* Build 1.8.34: Safe Bible Plan Reset */
.reset-plan-progress-button{
  margin-top:10px;
}


/* Build 1.8.34: Plan Options */
.plan-options-section{
  margin-top:18px;
  border:1px solid var(--border);
  border-radius:14px;
  overflow:hidden;
  background:color-mix(in srgb,var(--accent) 2%,var(--surface));
}
.plan-options-toggle{
  width:100%;
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 14px;
  border:0;
  background:transparent;
  color:var(--text);
  font-weight:800;
  cursor:pointer;
  text-align:left;
}
.plan-options-toggle:hover{
  background:color-mix(in srgb,var(--accent) 5%,transparent);
}
.plan-options-body{
  padding:0 14px 14px;
  border-top:1px solid var(--border);
}
.plan-options-body.hidden{
  display:none!important;
}
.plan-options-copy{
  margin:12px 0 10px;
  color:var(--muted);
  font-size:.86rem;
}
.reset-plan-progress-button{
  width:auto;
  min-width:0;
  padding:8px 12px;
  font-size:.82rem;
}


/* Build 1.8.34: Chronological Bible in a Year foundation */
.plan-choice-card-building{
  border-style:dashed;
}
.plan-choice-card-building button:disabled{
  opacity:.72;
  cursor:default;
}
.plan-choice-schedule-note{
  margin:.7rem 0 0;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.5;
}


/* Build 1.8.34: Chronological 365-day reading view */
.plan-reading-reference{
  margin:1.1rem 0 .45rem;
  font-size:1rem;
}
.plan-reading-reference:first-child{
  margin-top:0;
}


/* Build 1.8.34: release-ready long-plan navigation */
.day-tabs.long-plan-navigation{
  display:grid;
  gap:10px;
  overflow:visible;
  padding:2px 0 12px;
}
.plan-day-jump{
  display:grid;
}
.plan-day-jump-label{
  display:grid;
  gap:6px;
  color:var(--muted);
  font-size:.8rem;
  font-weight:800;
}
.plan-day-jump-select{
  width:100%;
  min-height:46px;
  box-sizing:border-box;
  padding:0 42px 0 14px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface);
  color:var(--text);
  font:inherit;
  font-weight:750;
}
.plan-day-nearby{
  display:flex;
  justify-content:center;
  gap:8px;
  flex-wrap:wrap;
}
.plan-choice-schedule-note{
  margin:.7rem 0 0;
}
@media(max-width:620px){
  .plan-day-nearby{
    justify-content:flex-start;
  }
  .plan-day-nearby .day-tab{
    min-width:42px;
  }
}

/* Build 1.8.34: clickable verse tools in every Bible Plan */
.plan-verse-tools-helper{margin:.35rem 0 .9rem;color:var(--muted);font-size:.88rem;line-height:1.5}
.plan-clickable-verse{position:relative;cursor:pointer;border-radius:8px;padding:3px 5px;margin-left:-5px;margin-right:-5px;transition:background .14s ease,box-shadow .14s ease}
.plan-clickable-verse:hover{background:color-mix(in srgb,var(--blue-soft) 50%,transparent)}
.plan-copy-verse-action{flex:1 1 100%;width:100%;min-height:44px}
.plan-verse-toolbar{margin-bottom:14px}


/* Build 1.8.34: Chronological floating audio controls */
.plan-audio-floating{
  position:fixed;
  left:50%;
  bottom:calc(70px + env(safe-area-inset-bottom));
  transform:translateX(-50%);
  width:min(720px,calc(100vw - 24px));
  z-index:850;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:10px 12px 10px 14px;
  border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));
  border-radius:16px;
  background:color-mix(in srgb,var(--surface) 92%,var(--accent) 8%);
  box-shadow:0 10px 28px rgba(0,0,0,.20);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
  backdrop-filter:blur(18px) saturate(150%);
}
.plan-audio-floating.hidden{display:none!important}
@media(min-width:1050px){
  .plan-audio-floating{
    left:calc(50% + 129px);
    width:min(720px,calc(100vw - 282px));
  }
}
.plan-audio-floating-info{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}
.plan-audio-floating-kicker{
  color:var(--muted);
  font-size:.72rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.plan-audio-floating-info strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.94rem;
}
.plan-audio-floating-controls{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:7px;
}
.plan-audio-floating-controls button{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid var(--border);
  border-radius:50%;
  background:var(--surface);
  color:var(--text);
  font-size:1rem;
  cursor:pointer;
  box-shadow:0 2px 8px rgba(0,0,0,.08);
}
.plan-audio-floating-controls button:disabled{
  opacity:.35;
  cursor:default;
}
.plan-audio-floating-controls .plan-audio-floating-play{
  width:44px;
  height:44px;
  background:var(--accent);
  color:#fff;
  border-color:transparent;
  font-size:1.05rem;
}
@media(max-width:560px){
  .plan-audio-floating{
    bottom:calc(68px + env(safe-area-inset-bottom));
    width:calc(100vw - 18px);
    gap:9px;
    padding:9px 9px 9px 12px;
  }
  .plan-audio-floating-kicker{font-size:.66rem}
  .plan-audio-floating-info strong{font-size:.86rem}
  .plan-audio-floating-controls{gap:4px}
  .plan-audio-floating-controls button{width:34px;height:34px}
  .plan-audio-floating-controls .plan-audio-floating-play{width:40px;height:40px}
}


/* Build 1.8.34: Chronological Reading Break It Down */
.plan-breakdown-section {
  padding: 0;
  overflow: hidden;
}

.plan-breakdown-toggle {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

.plan-breakdown-toggle > span:first-child {
  display: grid;
  gap: 4px;
}

.plan-breakdown-toggle strong {
  font-size: 1.05rem;
}

.plan-breakdown-toggle small {
  opacity: .72;
}

#planBreakdownChevron {
  font-size: 1.2rem;
  flex: 0 0 auto;
}

.plan-breakdown-body {
  padding: 0 18px 18px;
}

.plan-breakdown-content {
  display: grid;
  gap: 14px;
}

.plan-breakdown-block {
  padding-top: 12px;
  border-top: 1px solid color-mix(in srgb, currentColor 14%, transparent);
}

.plan-breakdown-block h3 {
  margin: 0 0 6px;
  font-size: .98rem;
}

.plan-breakdown-block p {
  margin: 0;
  line-height: 1.65;
}


/* Build 1.8.34: exact segment-to-verse highlight test */
.scripture-audio-test-verses {
  display: grid;
  gap: 10px;
  margin: 14px 0;
}

.scripture-audio-test-verse {
  margin: 0;
  padding: 12px 14px;
  border-radius: 12px;
  line-height: 1.65;
  transition: background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.scripture-audio-test-verse.is-playing {
  background: rgba(255, 221, 87, .34);
  box-shadow: inset 0 0 0 2px rgba(184, 139, 0, .28);
  transform: translateY(-1px);
}

html[data-theme="dark"] .scripture-audio-test-verse.is-playing {
  background: rgba(255, 221, 87, .2);
  box-shadow: inset 0 0 0 2px rgba(255, 221, 87, .32);
}


/* Build 1.8.34: production exact spoken-verse highlight */
.plan-clickable-verse.plan-audio-playing {
  background: rgba(255, 221, 87, .34);
  box-shadow: inset 0 0 0 2px rgba(184, 139, 0, .28);
  border-radius: 12px;
  transition: background-color .18s ease, box-shadow .18s ease;
}

html[data-theme="dark"] .plan-clickable-verse.plan-audio-playing {
  background: rgba(255, 221, 87, .20);
  box-shadow: inset 0 0 0 2px rgba(255, 221, 87, .32);
}
