:root{
  --bg:#070b12;
  --bg-deep:#04070c;
  --panel:#0d1420;
  --panel-2:#101b29;
  --ink:#eaf7ff;
  --muted:#8395a6;
  --line:#233447;
  --cyan:#52f7ff;
  --cyan-dim:#17aebd;
  --magenta:#ff4fd8;
  --green:#7dffbd;
  --amber:#ffc861;
  --answer-bg:#10343a;
  --take-bg:#160f22;
  --max:1040px;
}
*{box-sizing:border-box}
html{font-size:18px;scroll-behavior:smooth;background:var(--bg-deep)}
body{margin:0;min-height:100vh;background:
  radial-gradient(circle at 20% -10%,rgba(82,247,255,.08),transparent 34rem),
  radial-gradient(circle at 90% 18%,rgba(255,79,216,.06),transparent 30rem),
  linear-gradient(180deg,var(--bg),var(--bg-deep));color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;line-height:1.52}
body::before{content:"";position:fixed;inset:0;z-index:999;pointer-events:none;opacity:.065;background:repeating-linear-gradient(180deg,rgba(255,255,255,.7) 0,rgba(255,255,255,.7) 1px,transparent 1px,transparent 4px)}
a{color:inherit}.shell{width:min(calc(100% - 32px),var(--max));margin:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(4,7,12,.94);border-bottom:1px solid var(--line);box-shadow:0 7px 28px rgba(0,0,0,.35);backdrop-filter:blur(10px)}
.site-header::after{content:"";display:block;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),var(--magenta),transparent);opacity:.75}
.nav-row{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:14px;overflow:visible}
.brand{min-width:0;flex:1 1 auto;text-decoration:none;display:flex;align-items:baseline;gap:11px;overflow:visible}
.brand strong{display:block;white-space:nowrap;font-size:clamp(.98rem,2.2vw,1.26rem);line-height:1.05;letter-spacing:.055em;text-transform:uppercase;color:var(--cyan);text-shadow:0 0 14px rgba(82,247,255,.34)}
.brand strong::before{content:"[";color:var(--magenta);margin-right:.3em}.brand strong::after{content:"]";color:var(--magenta);margin-left:.3em}
.brand span{white-space:nowrap;font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.top-actions{display:flex;flex:0 0 auto;gap:8px}button,.nav-button,.search-page-form select,.search-page-form input,.search-form input{font:inherit}
.nav-button{border:1px solid var(--line);border-radius:3px;padding:8px 14px;cursor:pointer;text-transform:uppercase;letter-spacing:.08em;font-size:.71rem;font-weight:800;color:var(--ink)}
.nav-button.ghost{background:#09101a}.nav-button.ghost:hover{border-color:var(--cyan);color:var(--cyan)}
.nav-button.accent{background:rgba(255,79,216,.09);border-color:var(--magenta);color:#ffd7f7;box-shadow:inset 0 0 16px rgba(255,79,216,.06)}
.nav-button.accent:hover{background:rgba(255,79,216,.16);box-shadow:0 0 14px rgba(255,79,216,.14)}
.drop-panel{background:#070c13;border-top:1px solid #111d2a;border-bottom:1px solid var(--line);padding:16px 0}
.section-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.section-grid a{text-decoration:none;border:1px solid var(--line);border-radius:3px;padding:11px 12px;background:var(--panel);display:flex;flex-direction:column;transition:border-color .15s,transform .15s}.section-grid a:hover{border-color:var(--cyan);transform:translateY(-1px)}.section-grid strong{color:var(--cyan);letter-spacing:.08em}.section-grid span{font-size:.72rem;color:var(--muted)}
.search-form{display:flex;gap:8px}.search-form input,.search-page-form input,.search-page-form select{width:100%;border:1px solid var(--line);background:#050a10;border-radius:3px;padding:11px 12px;color:var(--ink);outline:none}.search-form input:focus,.search-page-form input:focus,.search-page-form select:focus{border-color:var(--cyan);box-shadow:0 0 0 1px rgba(82,247,255,.18)}.search-form button,.search-page-form button{border:1px solid var(--cyan);border-radius:3px;padding:10px 18px;background:rgba(82,247,255,.08);color:var(--cyan);cursor:pointer;text-transform:uppercase;font-size:.72rem;font-weight:800;letter-spacing:.08em}
.intro{padding:42px 0 24px;display:grid;grid-template-columns:1fr 330px;gap:32px;align-items:end}.eyebrow,.meta,.answer-label,.take-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.eyebrow{color:var(--magenta)}
.intro h1{position:relative;font-size:clamp(2.25rem,6vw,4.7rem);line-height:.94;margin:.18em 0 .13em;letter-spacing:-.055em;text-transform:uppercase;color:#f4fbff;text-shadow:2px 0 0 rgba(82,247,255,.28),-2px 0 0 rgba(255,79,216,.18)}
.intro h1::after{content:"_";color:var(--cyan);margin-left:.06em}.intro p{margin:0;color:var(--muted);font-size:.9rem}.promise{border-left:2px solid var(--magenta);padding:12px 0 12px 16px;display:flex;flex-direction:column;gap:5px;background:linear-gradient(90deg,rgba(255,79,216,.055),transparent)}.promise strong{font-size:.76rem;letter-spacing:.09em;color:#ffd6f6}.promise span{font-size:.72rem;color:var(--muted);line-height:1.45}
.feed{padding:0 0 64px}.study-card{position:relative;background:linear-gradient(135deg,rgba(16,27,41,.98),rgba(9,15,24,.98));border:1px solid var(--line);border-radius:12px;margin:0 0 28px;display:grid;grid-template-columns:minmax(0,1fr) 300px;overflow:hidden;box-shadow:0 14px 34px rgba(0,0,0,.18)}
.study-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(var(--cyan),var(--magenta));opacity:.9}.study-card:hover{border-color:#31516b}
.card-main{padding:22px 24px 20px}.meta{display:flex;justify-content:space-between;gap:16px;color:var(--muted);margin-bottom:12px}.meta a{text-decoration:none;color:var(--cyan)}.study-card h2{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1.28rem;font-weight:700;line-height:1.26;margin:0 0 14px;letter-spacing:-.012em;color:#f3f8fc}.study-card h2 a{text-decoration:none}.study-card h2 a:hover{color:var(--cyan)}
.answer{
  position:relative;
  background:linear-gradient(145deg,#16464d 0%,var(--answer-bg) 52%,#0b262b 100%);
  border:1px solid rgba(125,255,189,.36);
  border-left:4px solid var(--green);
  border-radius:10px;
  padding:12px 14px;
  margin:0 2px 17px;
  display:flex;
  flex-direction:column;
  gap:4px;
  box-shadow:
    0 5px 0 rgba(0,0,0,.28),
    0 9px 18px rgba(0,0,0,.24),
    0 0 18px rgba(125,255,189,.055),
    inset 0 1px 0 rgba(232,255,248,.16),
    inset 0 -1px 0 rgba(0,0,0,.28);
}
.answer::after{content:"";position:absolute;inset:1px;border-radius:8px;pointer-events:none;border-top:1px solid rgba(255,255,255,.055)}.answer-label{color:var(--green)}.answer strong{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1.04rem;color:#e9fff5}.explanation{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.95rem;color:#bac8d3;line-height:1.58}
.takeaway{background:linear-gradient(145deg,var(--take-bg),#0e101c);padding:22px;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}.take-label{color:var(--magenta)}.takeaway h3{font-size:1.02rem;line-height:1.25;margin:7px 0;color:#ffe2f8;text-transform:uppercase;letter-spacing:.02em}.takeaway p{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.87rem;color:#aeb9c7;margin:0;line-height:1.5}
.loop-divider{margin:26px 0 14px;display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.62rem;letter-spacing:.15em;text-transform:uppercase}.loop-divider::before,.loop-divider::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--line))}.loop-divider::after{background:linear-gradient(90deg,var(--line),transparent)}.loop-divider span{color:var(--cyan)}.loop-marker{height:1px}
.search-page-form{display:grid;grid-template-columns:1fr 240px auto;gap:8px;margin:0 0 20px}.empty{padding:30px;border:1px dashed var(--line);border-radius:3px;color:var(--muted);text-align:center}.site-footer{border-top:1px solid var(--line);padding:30px 0 44px;background:#05080d}.site-footer::before{content:"";display:block;height:1px;margin-top:-31px;margin-bottom:30px;background:linear-gradient(90deg,transparent,var(--magenta),var(--cyan),transparent);opacity:.4}.footer-grid{display:grid;grid-template-columns:250px 1fr;gap:40px}.site-footer strong{color:var(--cyan);text-transform:uppercase;letter-spacing:.06em}.site-footer p{margin:.25rem 0;font-size:.68rem;color:var(--muted)}
@media(max-width:760px){html{font-size:18px}.shell{width:min(calc(100% - 22px),var(--max))}.nav-row{min-height:62px;gap:8px}.brand{gap:7px}.brand strong{font-size:.92rem;letter-spacing:.025em}.brand span{display:none}.nav-button{padding:7px 10px;font-size:.65rem}.section-grid{grid-template-columns:repeat(2,1fr)}.intro{grid-template-columns:1fr;padding:29px 0 18px;gap:18px}.intro h1{font-size:2.55rem}.promise{display:none}.study-card{grid-template-columns:1fr;border-radius:11px}.card-main{padding:18px 18px 16px}.study-card h2{font-size:1.21rem}.explanation{font-size:.98rem}.takeaway{border-left:0;border-top:1px solid var(--line);padding:15px 18px}.takeaway h3{font-size:.96rem;margin:4px 0}.takeaway p{font-size:.91rem}.search-page-form{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:10px}}
@media(max-width:420px){.shell{width:min(calc(100% - 16px),var(--max))}.nav-row{gap:5px}.brand strong{font-size:.80rem;letter-spacing:0}.brand strong::before{margin-right:.15em}.brand strong::after{margin-left:.15em}.top-actions{gap:5px}.nav-button{padding:6px 7px;font-size:.59rem}.meta{font-size:.58rem}.intro h1{font-size:2.28rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.section-grid a{transition:none}}

/* v1.3 — detail navigation, delayed answer reveal, roomier feed rhythm */
.study-card{margin-bottom:28px}

.detail-nav{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:10px;
  margin:0 0 22px;
  align-items:center;
}
.detail-button{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:9px 14px;
  border:1px solid var(--line);
  border-radius:10px;
  background:linear-gradient(180deg,#111d2a,#0a111b);
  color:var(--cyan);
  text-decoration:none;
  font-size:.69rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  box-shadow:
    0 4px 0 rgba(0,0,0,.34),
    0 8px 16px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease,color .12s ease;
}
.detail-button.previous{justify-self:start}
.detail-button.next{justify-self:end}
.detail-button.feed-return{
  min-width:150px;
  border-color:rgba(255,79,216,.58);
  color:#ffe2f8;
  background:linear-gradient(180deg,#24132a,#130d1b);
  box-shadow:
    0 4px 0 rgba(0,0,0,.34),
    0 8px 18px rgba(0,0,0,.20),
    0 0 16px rgba(255,79,216,.08),
    inset 0 1px 0 rgba(255,255,255,.07);
}
.detail-button:hover,.detail-button:focus-visible{
  transform:translateY(-1px);
  border-color:var(--cyan-dim);
  color:#fff;
  box-shadow:0 5px 0 rgba(0,0,0,.3),0 10px 22px rgba(0,0,0,.25),0 0 18px rgba(82,247,255,.1);
  outline:none;
}
.detail-button.feed-return:hover,.detail-button.feed-return:focus-visible{border-color:var(--magenta);box-shadow:0 5px 0 rgba(0,0,0,.3),0 10px 22px rgba(0,0,0,.25),0 0 20px rgba(255,79,216,.12)}

body[data-route="question"] .detail-card{cursor:pointer}
body[data-route="question"] .delayed-answer{
  min-height:88px;
  overflow:hidden;
}
body[data-route="question"] .delayed-answer .answer-label,
body[data-route="question"] .delayed-answer strong{
  opacity:0;
  filter:blur(5px);
  transform:translateY(4px);
  transition:opacity .7s ease,filter .7s ease,transform .7s ease;
}
body[data-route="question"] .delayed-answer::before{
  content:"TAP CARD // AUTO REVEAL";
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px;
  color:var(--green);
  font-size:.67rem;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
  text-align:center;
  text-shadow:0 0 12px rgba(125,255,189,.16);
  opacity:1;
  transition:opacity .32s ease;
  pointer-events:none;
}
body[data-route="question"] .delayed-answer.is-revealed::before{opacity:0}
body[data-route="question"] .delayed-answer.is-revealed .answer-label,
body[data-route="question"] .delayed-answer.is-revealed strong{
  opacity:1;
  filter:none;
  transform:none;
}

@media(max-width:760px){
  .study-card{margin-bottom:25px}
  .detail-nav{grid-template-columns:1fr 1fr 1fr;gap:7px;margin-bottom:19px}
  .detail-button{min-width:0;padding:8px 7px;font-size:.60rem;letter-spacing:.075em}
  .detail-button.feed-return{min-width:0}
}
@media(max-width:420px){
  .detail-button{font-size:.55rem;padding:8px 5px}
}
@media(prefers-reduced-motion:reduce){
  body[data-route="question"] .delayed-answer .answer-label,
  body[data-route="question"] .delayed-answer strong,
  body[data-route="question"] .delayed-answer::before{transition:none}
}


/* RF PREP v2 — three-class feed */
.meta-left{display:flex;align-items:center;gap:9px;min-width:0}.meta-left a{min-width:0}
.class-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;padding:3px 7px;border:1px solid currentColor;border-radius:999px;font-size:.55rem;letter-spacing:.11em;line-height:1.1}
.class-T .class-badge{color:var(--cyan);background:rgba(82,247,255,.07)}
.class-G .class-badge{color:var(--amber);background:rgba(255,200,97,.07)}
.class-E .class-badge{color:var(--magenta);background:rgba(255,79,216,.07)}
.study-card.class-T::before{background:linear-gradient(var(--cyan),#3697ff)}.study-card.class-G::before{background:linear-gradient(var(--amber),#ff7b55)}.study-card.class-E::before{background:linear-gradient(var(--magenta),#8a68ff)}
.sections-drop{max-height:72vh;overflow:auto}.section-groups{display:grid;gap:22px}.section-group h3{margin:0 0 9px;font-size:.69rem;letter-spacing:.12em;color:var(--muted)}.section-group h3 span{color:var(--cyan)}.section-group.class-G h3 span{color:var(--amber)}.section-group.class-E h3 span{color:var(--magenta)}
.class-selector{margin:0 0 28px;padding:14px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(145deg,rgba(13,20,32,.94),rgba(6,10,16,.96));display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:14px;align-items:center;box-shadow:0 10px 26px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.035)}
.selector-label{display:flex;flex-direction:column;gap:2px}.selector-label strong{font-size:.69rem;letter-spacing:.13em;color:var(--cyan)}.selector-label span{font-size:.67rem;color:var(--muted)}
.class-switches{display:flex;gap:8px}.class-switch{cursor:pointer}.class-switch input{position:absolute;opacity:0;pointer-events:none}.class-switch span{min-width:112px;display:flex;flex-direction:column;align-items:center;padding:8px 12px;border:1px solid var(--line);border-radius:9px;background:#080e16;color:var(--muted);transition:.14s ease}.class-switch b{font-size:.69rem;letter-spacing:.1em}.class-switch small{font-size:.55rem;margin-top:2px}.class-switch input:checked+span{color:var(--ink);transform:translateY(-1px);box-shadow:0 4px 0 rgba(0,0,0,.25),0 0 15px rgba(82,247,255,.08)}
.class-switch.class-T input:checked+span{border-color:var(--cyan);color:var(--cyan);background:rgba(82,247,255,.07)}.class-switch.class-G input:checked+span{border-color:var(--amber);color:var(--amber);background:rgba(255,200,97,.07)}.class-switch.class-E input:checked+span{border-color:var(--magenta);color:var(--magenta);background:rgba(255,79,216,.07)}
.mix-button{height:45px;padding:0 16px;border:1px solid var(--cyan);border-radius:9px;background:rgba(82,247,255,.08);color:var(--cyan);font:inherit;font-size:.66rem;font-weight:800;letter-spacing:.1em;cursor:pointer;box-shadow:0 4px 0 rgba(0,0,0,.25)}.mix-button:hover{background:rgba(82,247,255,.14)}
.site-footer b{color:#cddbe6;font-weight:700}
@media(max-width:900px){.class-selector{grid-template-columns:1fr}.class-switches{display:grid;grid-template-columns:repeat(3,1fr)}.class-switch span{min-width:0}.mix-button{width:100%}}
@media(max-width:760px){.section-grid{grid-template-columns:repeat(2,1fr)}.class-selector{margin-bottom:25px}.selector-label span{display:none}.meta-left{gap:6px}.class-badge{font-size:.5rem;padding:3px 5px}.class-switch span{padding:8px 5px}.class-switch b{font-size:.61rem}.class-switch small{font-size:.5rem}}
@media(max-width:420px){.brand strong{font-size:.88rem}.class-switches{gap:5px}.class-switch b{font-size:.56rem;letter-spacing:.055em}}

/* RF PREP v2.1 — About overlay, five-second reveal, centered detail controls */
body.modal-open{overflow:hidden}
.about-overlay[hidden]{display:none}
.about-overlay{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:22px;background:rgba(2,5,10,.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.about-dialog{position:relative;width:min(720px,100%);max-height:min(82vh,720px);overflow:auto;padding:30px;border:1px solid rgba(82,247,255,.42);border-radius:18px;background:linear-gradient(145deg,rgba(16,28,42,.98),rgba(7,11,18,.99));box-shadow:0 24px 70px rgba(0,0,0,.55),0 0 32px rgba(82,247,255,.08),inset 0 1px 0 rgba(255,255,255,.06)}
.about-dialog::before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0,rgba(255,255,255,.018) 1px,transparent 1px,transparent 4px);opacity:.35}
.about-kicker{position:relative;z-index:1;color:var(--cyan);font-size:.62rem;font-weight:800;letter-spacing:.16em}
.about-dialog h2{position:relative;z-index:1;margin:8px 42px 14px 0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1.55rem;line-height:1.15;color:#f4fbff}
.about-dialog>p{position:relative;z-index:1;margin:0 0 20px;color:#c2ced8;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.91rem;line-height:1.62}
.about-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.about-grid>div{padding:14px;border:1px solid var(--line);border-radius:11px;background:rgba(5,10,17,.62)}
.about-grid strong{display:block;margin-bottom:5px;color:var(--magenta);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase}
.about-grid p{margin:0;color:#aebdca;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.78rem;line-height:1.55}
.about-grid a{color:var(--cyan);text-decoration:none;border-bottom:1px solid rgba(82,247,255,.35)}
.about-close{position:absolute;z-index:3;top:13px;right:13px;width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:#09111b;color:var(--cyan);font:700 1.35rem/1 system-ui,sans-serif;cursor:pointer}
.about-dismiss{position:relative;z-index:1;display:block;margin:20px auto 0;padding:10px 18px;border:1px solid var(--cyan);border-radius:10px;background:rgba(82,247,255,.07);color:var(--cyan);font:800 .64rem/1.2 system-ui,sans-serif;letter-spacing:.12em;cursor:pointer}
.about-close:hover,.about-close:focus-visible,.about-dismiss:hover,.about-dismiss:focus-visible{border-color:#fff;color:#fff;outline:none;box-shadow:0 0 18px rgba(82,247,255,.14)}
body[data-route="question"] .feed{padding-bottom:0}
body[data-route="question"] .detail-card{margin-bottom:0}
.detail-nav{display:flex;justify-content:center;align-items:center;flex-wrap:nowrap;gap:8px;margin:16px auto 38px}
.detail-button,.detail-button.previous,.detail-button.next{justify-self:auto;min-width:0;width:auto;flex:0 0 auto;padding:9px 13px}
.detail-button.feed-return{min-width:116px}
@media(max-width:760px){.about-overlay{padding:12px}.about-dialog{padding:24px 17px 18px;max-height:88vh;border-radius:14px}.about-dialog h2{font-size:1.27rem;margin-right:34px}.about-grid{grid-template-columns:1fr;gap:8px}.about-grid>div{padding:11px 12px}.about-close{top:9px;right:9px;width:34px;height:34px}.detail-nav{gap:5px;margin-top:13px;margin-bottom:32px}.detail-button,.detail-button.previous,.detail-button.next{padding:8px 8px;font-size:.56rem;letter-spacing:.065em}.detail-button.feed-return{min-width:92px}}
@media(max-width:420px){.nav-button{padding-left:6px;padding-right:6px}.top-actions{gap:4px}.detail-nav{width:100%;gap:4px}.detail-button,.detail-button.previous,.detail-button.next{padding:8px 6px;font-size:.52rem}.detail-button.feed-return{min-width:84px}}
