/* LegacyRx · the exam-console theme
   Shared by The Prescription (#rxApp / #rxResults) and The Intake
   (#inApp / #inResults). The container selectors are written as
   :is(#rxApp,#inApp) so both products stay on one theme and cannot drift;
   everything specific to one product lives in its own stylesheet.

   The Prescription · exam console + diagnosis dashboard
   Loads after site.css and leans on its tokens. One glass layer per view:
   the console panel during the exam, the pillar cards on the results view.
   Everything inside a glass surface is flat navy, never glass-on-glass. */

:root{
  --rx-line-rgb:234,230,218;            /* hairlines: ivory on the midnight world, navy on paper */
  /* flat card inside glass: the brand wash, not a near-black well. Addie flagged
     the darker rgba(6,11,26,.52) wells as emotionally heavy on 2026-08-25 and we
     agreed to warm in place; keep inner surfaces in this family. */
  --rx-flat:rgba(16,32,74,.42);
  --rx-flat-line:rgba(var(--rx-line-rgb),.13);
  --rx-attn:#D28C99;                    /* claret, lifted; the alignment light ONLY */
  --rx-ok:var(--gold-hi);
}

/* the display rules below would otherwise beat the hidden attribute */
[hidden]{display:none !important}

/* when the exam or the diagnosis opens the page, clear the fixed brand + nav */
:is(#rxApp,#inApp){padding-top:clamp(110px,13vh,160px)}
:is(#rxResults,#inResults){padding-top:clamp(130px,15vh,180px)}

/* ---------- intro ---------- */
.rx-hero .sub{max-width:62ch}
.rx-hero .mono-note{margin-top:26px}
.rx-personas{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.rx-personas button{
  font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--sub);background:none;border:1px dashed rgba(124,135,168,.4);border-radius:999px;
  padding:9px 16px;cursor:pointer;transition:color .3s var(--ease),border-color .3s var(--ease)}
.rx-personas button:hover{color:var(--gold-hi);border-color:rgba(217,179,108,.5)}

/* ---------- the console ---------- */
.rx-console{display:grid;grid-template-columns:236px 1fr;gap:clamp(26px,4vw,54px);align-items:start}
.rx-rail{position:sticky;top:96px}
.rx-steps{list-style:none;margin:0;padding:0}
.rx-steps li{
  display:flex;align-items:baseline;gap:14px;padding:11px 0;
  border-bottom:1px solid rgba(var(--rx-line-rgb),.07);
  font-family:var(--display);font-weight:400;font-size:10px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--sub);transition:color .4s var(--ease)}
.rx-steps li:last-child{border-bottom:none}
.rx-steps .n{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;color:var(--sub);width:20px;flex:none}
.rx-steps li.cur{color:var(--ivory)}
.rx-steps li.cur .n{color:var(--gold)}
.rx-steps li.done{color:rgba(217,179,108,.75)}
.rx-steps li.done .n{color:rgba(217,179,108,.75)}

.rx-vitals{margin-top:26px;border-top:1px solid var(--glass-line);padding-top:8px}
.rx-vt{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:9px 0;border-bottom:1px solid rgba(var(--rx-line-rgb),.07)}
.rx-vt:last-child{border-bottom:none}
.rx-vt span{font-family:var(--display);font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--sub)}
.rx-vt b{font-family:var(--mono);font-weight:400;font-size:13px;color:var(--sub);font-variant-numeric:tabular-nums;white-space:nowrap;transition:color .5s var(--ease)}
.rx-vt.live b{color:var(--gold-hi)}
.rx-vitals .cap{margin-top:12px;font-family:var(--mono);font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--sub);opacity:.7}

/* stage area */
.rx-stage{min-height:520px;display:flex;flex-direction:column}
.rx-screen{animation:rxIn .5s var(--ease) both}
@keyframes rxIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.snap .rx-screen,html.snap .rx-screen{animation:none}
.rx-eyeb{font-family:var(--display);font-size:9px;font-weight:400;letter-spacing:.4em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
.rx-q{font-family:var(--display);font-weight:700;text-transform:uppercase;color:var(--ivory);
      font-size:clamp(17px,2.2vw,26px);line-height:1.3;letter-spacing:.05em;max-width:24ch;text-wrap:balance;margin-bottom:10px}
.rx-hint{color:var(--sub);font-size:14px;max-width:56ch;margin-bottom:26px}

/* choice chips (flat, never glass inside the panel) */
.rx-chips{display:flex;flex-wrap:wrap;gap:10px;max-width:640px}
.rx-chip{
  font-family:var(--text);font-weight:500;font-size:13.5px;letter-spacing:.02em;color:var(--dim);
  background:var(--rx-flat);border:1px solid var(--rx-flat-line);border-radius:999px;
  padding:12px 20px;cursor:pointer;transition:border-color .35s var(--ease),color .35s var(--ease),background .35s var(--ease)}
.rx-chip:hover{border-color:rgba(217,179,108,.4);color:var(--ivory)}
.rx-chip[aria-pressed="true"]{color:var(--gold-hi);border-color:rgba(217,179,108,.65);background:rgba(217,179,108,.08)}
.rx-chip:focus-visible,.rx-seg button:focus-visible,.rx-dots button:focus-visible,.rx-personas button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* slider rows */
.rx-ins{display:flex;flex-direction:column;gap:6px;max-width:640px}
.rx-in{padding:14px 0 18px;border-bottom:1px solid rgba(var(--rx-line-rgb),.07)}
.rx-in:last-child{border-bottom:none}
.rx-in-top{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px}
.rx-in-top label{font-size:14.5px;color:var(--dim);font-weight:500}
.rx-in-top output{font-family:var(--mono);font-size:clamp(17px,2vw,21px);color:var(--gold-hi);font-variant-numeric:tabular-nums;white-space:nowrap}
.rx-range{-webkit-appearance:none;appearance:none;width:100%;height:26px;background:none;cursor:pointer;display:block}
.rx-range::-webkit-slider-runnable-track{height:2px;background:linear-gradient(90deg,rgba(217,179,108,.55) var(--fill,0%),rgba(var(--rx-line-rgb),.14) var(--fill,0%));border-radius:2px}
.rx-range::-moz-range-track{height:2px;background:rgba(var(--rx-line-rgb),.14);border-radius:2px}
.rx-range::-moz-range-progress{height:2px;background:rgba(217,179,108,.55);border-radius:2px}
.rx-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;margin-top:-10px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,var(--gold-hi),var(--gold) 60%,var(--gold-deep));
  border:1px solid rgba(var(--rx-line-rgb),.35);box-shadow:0 0 0 5px rgba(217,179,108,.10),0 6px 16px rgba(3,6,16,.5)}
.rx-range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,var(--gold-hi),var(--gold) 60%,var(--gold-deep));
  border:1px solid rgba(var(--rx-line-rgb),.35);box-shadow:0 0 0 5px rgba(217,179,108,.10),0 6px 16px rgba(3,6,16,.5)}
.rx-in-hint{margin-top:8px;font-size:12.5px;color:var(--sub)}

/* live readout card inside a stage (career conversion forming) */
.rx-live{
  margin-top:24px;display:flex;align-items:center;gap:20px;max-width:640px;
  background:var(--rx-flat);border:1px solid var(--rx-flat-line);border-radius:var(--r-inner);padding:18px 22px}
.rx-live canvas{width:64px;height:64px;flex:none}
.rx-live .v{font-family:var(--display);font-weight:700;font-size:26px;color:var(--gold-hi);line-height:1}
.rx-live .l{font-family:var(--display);font-size:8.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--sub);margin-top:7px}
.rx-live .note{font-size:12.5px;color:var(--sub);max-width:30ch;margin-left:auto}

/* two-column chip groups (own / protection) */
.rx-duo{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:720px}
.rx-duo h4{font-family:var(--display);font-weight:400;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--sub);margin:0 0 14px}
.rx-duo .rx-chips{gap:8px}
.rx-duo .rx-chip{padding:10px 16px;font-size:12.5px}

/* legacy segmented rows */
.rx-legacy{max-width:680px}
.rx-lrow{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid rgba(var(--rx-line-rgb),.07)}
.rx-lrow:last-child{border-bottom:none}
.rx-lrow p{font-size:14.5px;color:var(--dim);margin:0;max-width:44ch}
.rx-seg{display:flex;flex:none;border:1px solid var(--rx-flat-line);border-radius:999px;overflow:hidden;background:var(--rx-flat)}
.rx-seg button{
  font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--sub);background:none;border:none;padding:9px 13px;cursor:pointer;
  transition:color .3s var(--ease),background .3s var(--ease)}
.rx-seg button + button{border-left:1px solid var(--rx-flat-line)}
.rx-seg button[aria-pressed="true"]{color:var(--deep);background:linear-gradient(120deg,var(--gold-deep),var(--gold) 60%,var(--gold-hi))}
.rx-kids{margin:0 0 20px;display:inline-flex;align-items:center;gap:12px;font-size:12.5px;color:var(--sub)}

/* alignment dots */
.rx-align{max-width:680px}
.rx-arow{padding:18px 0;border-bottom:1px solid rgba(var(--rx-line-rgb),.07)}
.rx-arow:last-child{border-bottom:none}
.rx-arow p{font-size:15px;color:var(--ivory);margin:0 0 14px;max-width:52ch}
.rx-dots{display:flex;align-items:center;gap:12px}
.rx-dots button{
  width:30px;height:30px;border-radius:50%;cursor:pointer;background:var(--rx-flat);
  border:1px solid var(--rx-flat-line);color:transparent;font-size:0;
  transition:border-color .3s var(--ease),background .3s var(--ease),transform .3s var(--ease)}
.rx-dots button:hover{border-color:rgba(217,179,108,.5)}
.rx-dots button[aria-pressed="true"]{background:radial-gradient(circle at 35% 30%,var(--gold-hi),var(--gold) 65%,var(--gold-deep));border-color:rgba(var(--rx-line-rgb),.3);transform:scale(1.08)}
.rx-dots .lab{font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--sub)}
.rx-dots .lab.hi{margin-left:auto}

/* stage footer nav */
.rx-nav{margin-top:auto;padding-top:34px;display:flex;align-items:center;gap:22px}
.rx-next{border:none;cursor:pointer}
.rx-next[disabled]{opacity:.35;pointer-events:none}
.rx-back{background:none;border:none;cursor:pointer;font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sub);padding:8px 0}
.rx-back:hover{color:var(--ivory)}
.rx-count{margin-left:auto;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;color:var(--sub)}

/* writing theater */
.rx-writing{min-height:420px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:18px}
.rx-writing p{font-family:var(--display);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--sub);opacity:0;animation:rxLine .7s var(--ease) forwards}
.rx-writing p.on{color:var(--gold-hi)}
@keyframes rxLine{to{opacity:1}}

/* ---------- results ---------- */
:is(#rxResults,#inResults) .rx-head{margin-bottom:34px}
:is(#rxResults,#inResults) .rx-head .big{margin-bottom:12px}
.rx-whyline{color:var(--dim);font-size:16px;max-width:70ch}
.rx-whyline b{color:var(--gold-hi);font-weight:600}
.rx-tone{margin-top:16px;padding-left:16px;border-left:2px solid var(--gold-deep);color:var(--ivory);font-size:15px;max-width:58ch;font-weight:300}
.rx-tone .quiet{color:var(--dim)}
.rx-headrow{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}

.rx-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:10px}
.rx-pl{
  border-radius:var(--r-card);padding:26px 26px 20px;position:relative;overflow:hidden;
  background:var(--glass-bg);border:1px solid var(--glass-line);
  -webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 24px 50px rgba(3,6,16,.4)}
.rx-pl::after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(217,179,108,.4),transparent)}
.rx-pl h3{font-family:var(--display);font-weight:700;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ivory);margin:0 0 10px}
/* statuses live in the gold family only: filled gold is strong, outlined gold is
   developing, a quiet ivory outline is early / needs attention. Claret never
   appears on a pillar chip; on this site claret means rank, and the one alarm
   on this page is the alignment light below. */
.rx-status{display:inline-block;font-family:var(--display);font-size:8.5px;letter-spacing:.24em;text-transform:uppercase;padding:6px 13px 5px;border-radius:999px;border:1px solid;margin-bottom:16px}
.rx-status.s-strong{color:var(--deep);border-color:transparent;background:linear-gradient(120deg,var(--gold-deep),var(--gold) 55%,var(--gold-hi));font-weight:700}
.rx-status.s-dev{color:var(--gold-hi);border-color:rgba(217,179,108,.5)}
.rx-status.s-attn{color:var(--dim);border-color:rgba(185,191,207,.35)}
.rx-gaugewrap{display:flex;align-items:center;gap:16px;margin-bottom:14px}
.rx-gaugewrap canvas{width:74px;height:74px;flex:none}
.rx-gaugewrap .gv{font-family:var(--display);font-weight:700;font-size:24px;color:var(--gold-hi);line-height:1}
.rx-gaugewrap .gl{font-family:var(--display);font-size:8px;letter-spacing:.2em;text-transform:uppercase;color:var(--sub);margin-top:6px}
.rx-rows .r{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid rgba(var(--rx-line-rgb),.07);font-size:13px}
.rx-rows .r:last-child{border-bottom:none}
.rx-rows .r span{color:var(--sub)}
.rx-rows .r b{font-family:var(--mono);font-weight:400;color:var(--ivory);font-variant-numeric:tabular-nums;white-space:nowrap}

/* career conversion band */
.rx-band{margin-top:16px;border-radius:var(--r-card);padding:28px 30px;background:var(--glass-bg);border:1px solid var(--glass-line);
  -webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 24px 50px rgba(3,6,16,.4)}
.rx-band h3{font-family:var(--display);font-weight:700;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ivory);margin:0 0 14px}
.rx-band .line{font-size:16px;color:var(--dim);max-width:72ch}
.rx-band .line b{color:var(--gold-hi);font-family:var(--mono);font-weight:400}
.rx-bar{margin:20px 0 10px;height:16px;border-radius:8px;overflow:hidden;display:flex;background:rgba(var(--rx-line-rgb),.08);max-width:820px}
.rx-bar .kept{background:linear-gradient(90deg,var(--gold-deep),var(--gold) 70%,var(--gold-hi));min-width:2px}
.rx-barlab{display:flex;justify-content:space-between;max-width:820px;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--sub)}
.rx-band .note{margin-top:14px;font-size:13px;color:var(--sub);max-width:76ch}

/* capital map */
.rx-map{margin-top:16px;border-radius:var(--r-card);padding:28px 30px;background:var(--glass-bg);border:1px solid var(--glass-line);
  -webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 24px 50px rgba(3,6,16,.4)}
.rx-map h3{font-family:var(--display);font-weight:700;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ivory);margin:0 0 22px}
.rx-nodes{display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative}
.rx-nodes::before{content:"";position:absolute;top:7px;left:10%;right:10%;height:1px;background:rgba(var(--rx-line-rgb),.14)}
.rx-node{position:relative;text-align:center;padding:0 8px}
.rx-node .dot{width:15px;height:15px;border-radius:50%;margin:0 auto 12px;position:relative;z-index:1;
  background:rgba(var(--rx-line-rgb),.12);border:1px solid rgba(var(--rx-line-rgb),.2);transition:background .5s var(--ease)}
.rx-node.on .dot{background:radial-gradient(circle at 35% 30%,var(--gold-hi),var(--gold) 65%,var(--gold-deep));border-color:rgba(var(--rx-line-rgb),.35);box-shadow:0 0 14px rgba(217,179,108,.45)}
.rx-node.half .dot{background:linear-gradient(90deg,var(--gold) 50%,rgba(var(--rx-line-rgb),.12) 50%);border-color:rgba(217,179,108,.4)}
.rx-node h4{font-family:var(--display);font-weight:700;font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ivory);margin:0 0 6px}
.rx-node p{font-size:11.5px;color:var(--sub);margin:0;line-height:1.55}

/* alignment strip */
.rx-alignbar{margin-top:16px;border-radius:var(--r-inner);padding:20px 26px;border:1px solid rgba(var(--rx-line-rgb),.14);background:rgba(16,32,74,.3)}
.rx-alignbar.warn{border-color:rgba(210,140,153,.4);background:rgba(126,42,56,.14)}
.rx-alignbar .t{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.rx-alignbar.warn .t{color:var(--rx-attn)}
.rx-alignbar p{font-size:15.5px;color:var(--ivory);max-width:76ch;margin:0}
.rx-alignbar p .quiet{color:var(--dim)}

/* the three prescriptions */
.rx-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.rx-card{
  border-radius:var(--r-card);padding:26px;position:relative;
  background:rgba(16,32,74,.40);border:1px solid rgba(217,179,108,.34);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 24px 50px rgba(3,6,16,.4)}
.rx-card .no{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.rx-card h4{font-family:var(--text);font-weight:700;font-size:16.5px;color:var(--ivory);line-height:1.45;margin:0 0 10px}
.rx-card p{font-size:13.5px;color:var(--dim);line-height:1.7;margin:0}
.rx-card .cite{margin-top:14px;font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--sub)}
.rx-card .draft{position:absolute;top:14px;right:16px;font-family:var(--mono);font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:var(--sub);border:1px dashed rgba(124,135,168,.4);border-radius:999px;padding:4px 9px}

/* actions + teaser */
.rx-actions{margin-top:16px;border-radius:var(--r-card);padding:clamp(28px,4vw,44px);background:var(--glass-bg);border:1px solid var(--glass-line);
  -webkit-backdrop-filter:blur(22px) saturate(1.4);backdrop-filter:blur(22px) saturate(1.4);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 30px 60px rgba(3,6,16,.45)}
.rx-actions .grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(26px,4vw,54px);align-items:start}
.rx-actions h3{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--ivory);margin:0 0 10px}
.rx-actions .side p{font-size:14px;color:var(--dim)}
.rx-sharerow{display:flex;flex-direction:column;gap:12px;margin-top:18px;align-items:flex-start}
.rx-sharestatus{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-hi);min-height:16px}
.rx-tease{margin-top:16px;border-radius:var(--r-inner);border:1px dashed rgba(124,135,168,.35);padding:20px 26px;display:flex;gap:20px;align-items:baseline;flex-wrap:wrap}
.rx-tease .t{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--sub)}
.rx-tease p{font-size:13.5px;color:var(--sub);margin:0;max-width:58ch}
.rx-fine{margin-top:34px;padding-top:22px;border-top:1px solid rgba(var(--rx-line-rgb),.10);
  font-size:12.5px;color:var(--sub);line-height:1.8;columns:2;column-gap:clamp(26px,4vw,54px)}
@media (max-width:860px){.rx-fine{columns:1}}

/* shared-with-you banner */
.rx-banner{margin-bottom:30px;border-radius:var(--r-inner);border:1px solid rgba(217,179,108,.35);background:rgba(217,179,108,.07);padding:16px 22px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.rx-banner p{margin:0;font-size:14.5px;color:var(--ivory)}

/* ---------- mobile ---------- */
@media (max-width:940px){
  .rx-console{grid-template-columns:1fr}
  .rx-rail{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 26px;align-items:start}
  .rx-steps{display:flex;flex-wrap:wrap;gap:4px 16px}
  .rx-steps li{border-bottom:none;padding:4px 0}
  .rx-steps .n{width:auto}
  .rx-vitals{margin-top:0;border-top:none;padding-top:0}
  .rx-pillars,.rx-cards{grid-template-columns:1fr}
  .rx-actions .grid{grid-template-columns:1fr}
  .rx-nodes{grid-template-columns:1fr;gap:16px}
  .rx-nodes::before{display:none}
  .rx-node{display:grid;grid-template-columns:15px 1fr;gap:0 14px;text-align:left;align-items:start}
  .rx-node .dot{margin:5px 0 0}
  .rx-node h4{grid-column:2}
  .rx-node p{grid-column:2}
  .rx-stage{min-height:0}
  .rx-lrow{flex-direction:column;align-items:flex-start;gap:10px}
}
@media (max-width:560px){
  .rx-rail{grid-template-columns:1fr}
  .rx-vitals{display:flex;gap:18px;border-top:1px solid var(--glass-line);padding-top:10px;margin-top:8px}
  .rx-vt{border-bottom:none;flex-direction:column;gap:2px;padding:4px 0}
  .rx-vitals .cap{display:none}
  .rx-duo{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .rx-screen{animation:none}
  .rx-writing p{animation:none;opacity:1}
}

/* ---------- the one-pager (print) ---------- */
#rxPrint{display:none}
@media print{
  #bg,#page,#toast{display:none !important}
  body{background:#fff !important}
  #rxPrint{display:block;color:#10204A;font-family:'Manrope',Helvetica,Arial,sans-serif;padding:0;font-size:12px;line-height:1.6}
  #rxPrint .mast{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid #10204A;padding-bottom:10px;margin-bottom:14px}
  #rxPrint .mast h1{font-family:'Syncopate',sans-serif;font-size:15px;letter-spacing:.14em;text-transform:uppercase;margin:0;color:#0A1128}
  #rxPrint .mast .rxmark{font-family:'Syncopate',sans-serif;font-size:11px;letter-spacing:.1em;color:#8C6A2F}
  #rxPrint .meta{display:flex;gap:26px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#5A6785;margin-bottom:14px}
  #rxPrint .why{font-size:13px;margin:0 0 16px;color:#0A1128}
  #rxPrint .cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:16px}
  #rxPrint .cl h2{font-family:'Syncopate',sans-serif;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#8C6A2F;margin:0 0 8px;border-bottom:1px solid #D8DCE8;padding-bottom:5px}
  #rxPrint .cl div{display:flex;justify-content:space-between;gap:8px;padding:3px 0;font-size:11px}
  #rxPrint .cl div b{font-weight:600;color:#0A1128}
  #rxPrint .rxs{margin-bottom:16px}
  #rxPrint .rxs h2{font-family:'Syncopate',sans-serif;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#8C6A2F;margin:0 0 8px}
  #rxPrint .rxs article{margin-bottom:10px;padding-left:12px;border-left:2px solid #D9B36C}
  #rxPrint .rxs h3{font-size:12px;margin:0 0 3px;color:#0A1128}
  #rxPrint .rxs p{margin:0;font-size:11px;color:#3D4A6B}
  #rxPrint .fourq{border-top:1px solid #D8DCE8;padding-top:12px;font-size:12px;color:#0A1128;font-weight:600}
  #rxPrint .legal{margin-top:12px;font-size:8.5px;color:#7C87A8}
}

/* =========================================================================
   v2 (2026-08-27) · vitals → diagnosis → prescription → follow-up
   Everything below was added for Dr. Kyle's Aug 26 notes. Same rules as
   above: one glass layer per block, flat navy inside it, never glass on glass.
   ========================================================================= */

/* ---------- intro additions ---------- */
.rx-promise{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:900px;margin:34px 0 6px;
  border-top:1px solid rgba(var(--rx-line-rgb),.12);border-bottom:1px solid rgba(var(--rx-line-rgb),.12);padding:24px 0}
.rx-promise h3{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 8px}
.rx-promise p{font-size:14px;color:var(--dim);margin:0;line-height:1.6;max-width:32ch}
.rx-byline{margin-top:16px;font-size:14.5px;color:var(--ivory);max-width:56ch;font-weight:300}
.rx-open{margin-top:12px;font-size:12.5px;color:var(--sub);max-width:62ch;line-height:1.7}
/* a saved run is an offer here, never a takeover of the page */
.rx-resume{margin-top:18px;font-size:13.5px;color:var(--dim)}
.rx-resume .lnk{background:none;border:none;padding:0;cursor:pointer;font:inherit;
  color:var(--gold-hi);border-bottom:1px solid rgba(217,179,108,.45);transition:color .3s var(--ease),border-color .3s var(--ease)}
.rx-resume .lnk:hover{color:var(--ivory);border-color:var(--ivory)}
.rx-resume .lnk:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* ---------- section headers on the results view ---------- */
.rx-sechead{
  display:flex;align-items:center;gap:16px;margin:40px 0 16px;
  font-family:var(--display);font-weight:700;font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}
.rx-sechead::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(217,179,108,.45),transparent)}
.rx-sechead:first-of-type{margin-top:8px}

/* ---------- the "what does this mean" button and popover ---------- */
.rx-info{
  display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;
  width:16px;height:16px;margin-left:7px;flex:none;
  border-radius:50%;border:1px solid rgba(217,179,108,.45);background:none;cursor:pointer;
  font-family:var(--mono);font-size:9px;line-height:1;color:var(--gold);padding:0;
  transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}
.rx-info:hover,.rx-info[aria-expanded="true"]{background:var(--gold);border-color:var(--gold);color:var(--deep)}
.rx-info:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.rx-pop{
  position:fixed;z-index:80;max-width:min(360px,calc(100vw - 24px));
  border-radius:var(--r-inner);padding:20px 22px 18px;
  background:rgba(10,17,40,.94);border:1px solid rgba(217,179,108,.4);
  -webkit-backdrop-filter:blur(24px) saturate(1.4);backdrop-filter:blur(24px) saturate(1.4);
  box-shadow:0 30px 70px rgba(3,6,16,.7)}
.rx-pop h5{font-family:var(--display);font-weight:700;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 10px;padding-right:18px}
.rx-pop p{font-size:13px;line-height:1.7;color:var(--ivory);margin:0}
.rx-pop p.how{margin-top:12px;padding-top:12px;border-top:1px solid rgba(var(--rx-line-rgb),.14);color:var(--dim);font-size:12.5px}
.rx-pop p.how b{color:var(--sub);font-weight:600}
.rx-pop .x{position:absolute;top:10px;right:12px;background:none;border:none;color:var(--sub);font-size:18px;line-height:1;cursor:pointer;padding:2px 4px}
.rx-pop .x:hover{color:var(--ivory)}

/* ---------- 01 · vitals ---------- */
.rx-vitalsblock{
  display:grid;grid-template-columns:250px 1fr;gap:clamp(20px,3vw,34px);align-items:stretch;
  border-radius:var(--r-card);padding:clamp(22px,3vw,30px);
  background:var(--glass-bg);border:1px solid var(--glass-line);
  -webkit-backdrop-filter:blur(22px) saturate(1.4);backdrop-filter:blur(22px) saturate(1.4);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 30px 60px rgba(3,6,16,.45)}
.rx-score{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  background:var(--rx-flat);border:1px solid var(--rx-flat-line);border-radius:var(--r-inner);padding:26px 20px}
.rx-score canvas{width:132px;height:132px}
.rx-score .sv{position:absolute;top:calc(26px + 66px);transform:translateY(-50%);
  font-family:var(--display);font-weight:700;font-size:38px;color:var(--gold-hi);line-height:1}
.rx-score .sl{margin-top:16px;font-family:var(--display);font-weight:700;font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ivory)}
.rx-score .sn{margin:8px 0 0;font-size:11.5px;color:var(--sub);line-height:1.6}
.rx-vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.rx-v{background:var(--rx-flat);border:1px solid var(--rx-flat-line);border-radius:var(--r-inner);padding:18px 18px 16px;display:flex;flex-direction:column}
.rx-v .vl{display:flex;align-items:center;font-family:var(--display);font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:var(--sub);line-height:1.5;min-height:2.6em}
.rx-v .vv{font-family:var(--display);font-weight:700;font-size:clamp(19px,2.2vw,25px);color:var(--gold-hi);line-height:1;margin:8px 0 9px}
.rx-v .vn{font-size:11.5px;color:var(--sub);line-height:1.55;margin-top:auto}

/* ---------- 02 · diagnosis ---------- */
.rx-diag{
  position:relative;border-radius:var(--r-card);padding:clamp(28px,4vw,42px);
  background:linear-gradient(135deg,rgba(217,179,108,.12),rgba(16,32,74,.42) 55%);
  border:1px solid rgba(217,179,108,.4);
  -webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 26px 55px rgba(3,6,16,.42)}
.rx-diag .name{font-family:var(--display);font-weight:700;text-transform:uppercase;color:var(--ivory);
  font-size:clamp(22px,3.4vw,40px);line-height:1.18;letter-spacing:.04em;margin:0 0 16px;max-width:18ch;text-wrap:balance}
.rx-diag .line{font-size:clamp(16px,1.6vw,19px);color:var(--ivory);line-height:1.7;max-width:62ch;margin:0;font-weight:300}
.rx-diag .constraint{margin:20px 0 0;padding-top:18px;border-top:1px solid rgba(217,179,108,.28);
  font-family:var(--display);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--sub)}
.rx-diag .constraint b{color:var(--gold-hi);font-weight:700}
.rx-diag.is-draft::after{content:"draft copy";position:absolute;top:16px;right:18px;
  font-family:var(--mono);font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:var(--sub);
  border:1px dashed rgba(124,135,168,.4);border-radius:999px;padding:4px 9px}
:is(#rxResults,#inResults) .rx-alignbar{margin-top:14px}

/* ---------- 03 · the work optional number ---------- */
.rx-plan{
  border-radius:var(--r-card);padding:clamp(24px,3.4vw,34px);
  background:var(--glass-bg);border:1px solid var(--glass-line);
  -webkit-backdrop-filter:blur(22px) saturate(1.4);backdrop-filter:blur(22px) saturate(1.4);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 30px 60px rgba(3,6,16,.45)}
.rx-plan h3{display:flex;align-items:center;font-family:var(--display);font-weight:700;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ivory);margin:0 0 20px}
.rx-plangrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.rx-pf{background:var(--rx-flat);border:1px solid var(--rx-flat-line);border-radius:var(--r-inner);padding:18px}
.rx-pf .pl{display:flex;align-items:center;font-family:var(--display);font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:var(--sub);line-height:1.5;min-height:2.6em}
.rx-pf .pv{font-family:var(--display);font-weight:700;font-size:clamp(20px,2.4vw,27px);color:var(--gold-hi);line-height:1;margin:9px 0}
.rx-pf .pn{font-size:11.5px;color:var(--sub);line-height:1.55}
.rx-planline{margin:22px 0 0;font-size:15.5px;color:var(--dim);line-height:1.8;max-width:80ch}
.rx-planline b{color:var(--gold-hi);font-family:var(--mono);font-weight:400}
.rx-whatif{margin-top:22px;background:var(--rx-flat);border:1px solid var(--rx-flat-line);border-radius:var(--r-inner);padding:20px 24px 16px}
.rx-whatif .wi-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:6px}
.rx-whatif .wi-head span{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
.rx-whatif .wi-reset{background:none;border:none;cursor:pointer;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--sub);padding:0}
.rx-whatif .wi-reset:hover{color:var(--ivory)}
.rx-whatif .wi-ins{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;max-width:none}
.rx-whatif .rx-in{padding:12px 0 6px;border-bottom:none}
.rx-whatif .wi-note{margin:6px 0 0;font-size:12px;color:var(--sub)}
.rx-assume{margin:16px 0 0;font-size:12px;color:var(--sub);line-height:1.75;max-width:84ch}

/* ---------- 04 · the prescription ---------- */
.rx-card.is-first{border-color:rgba(217,179,108,.7);box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 24px 50px rgba(3,6,16,.4),0 0 0 1px rgba(217,179,108,.22)}
.rx-card .starthere{display:inline-block;margin-bottom:12px;
  font-family:var(--display);font-weight:700;font-size:8px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--deep);background:linear-gradient(120deg,var(--gold-deep),var(--gold) 55%,var(--gold-hi));
  border-radius:999px;padding:6px 12px 5px}
.rx-card.is-first .no{margin-top:0}

.rx-first{margin-top:16px;display:grid;grid-template-columns:minmax(200px,.85fr) 1.6fr;gap:clamp(24px,4vw,54px);
  border-radius:var(--r-card);padding:clamp(26px,3.6vw,38px);
  background:var(--glass-bg);border:1px solid var(--glass-line);
  -webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 24px 50px rgba(3,6,16,.4)}
.rx-first .fh h3{font-family:var(--display);font-weight:700;text-transform:uppercase;color:var(--ivory);
  font-size:clamp(17px,2vw,24px);line-height:1.3;letter-spacing:.05em;margin:0}
.rx-first .fm{font-size:clamp(16px,1.7vw,20px);color:var(--ivory);line-height:1.75;margin:0;font-weight:300;max-width:60ch}
.rx-first .fq{margin:16px 0 0;font-size:13px;color:var(--sub);max-width:60ch}

/* ---------- 05 · ownership income ---------- */
.rx-streamintro{display:grid;grid-template-columns:minmax(200px,.85fr) 1.6fr;gap:clamp(24px,4vw,54px);margin-bottom:16px}
.rx-streamintro .si-head h3{font-family:var(--display);font-weight:700;text-transform:uppercase;color:var(--ivory);
  font-size:clamp(18px,2.4vw,28px);line-height:1.25;letter-spacing:.05em;margin:0}
.rx-streamintro .lede{margin:0;font-size:16px;color:var(--dim);line-height:1.8;max-width:68ch}
.rx-streamintro .quiet{margin:14px 0 0;font-size:13px;color:var(--sub);line-height:1.75;max-width:68ch}
.rx-streams{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.rx-stream{background:var(--rx-flat);border:1px solid var(--rx-flat-line);border-radius:var(--r-inner);padding:22px;display:flex;flex-direction:column}
.rx-stream.pick{border-color:rgba(217,179,108,.45);background:rgba(217,179,108,.07)}
.rx-stream .tag{display:inline-block;align-self:flex-start;margin-bottom:12px;
  font-family:var(--display);font-weight:700;font-size:7.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);
  border:1px solid rgba(217,179,108,.5);border-radius:999px;padding:5px 10px 4px}
.rx-stream h4{font-family:var(--text);font-weight:700;font-size:15px;color:var(--ivory);line-height:1.4;margin:0 0 9px}
.rx-stream p{font-size:13px;color:var(--dim);line-height:1.7;margin:0}
.rx-stream .sn{margin-top:10px;padding-left:12px;border-left:2px solid var(--gold-deep);font-size:12.5px;color:var(--sub)}
.rx-stream .sn .dr{display:block;margin-bottom:5px;font-family:var(--mono);font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.rx-stream .meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:16px;padding-top:12px;border-top:1px solid rgba(var(--rx-line-rgb),.09)}
.rx-stream .meta span{font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--sub)}

/* ---------- 07 · retirement resilience ---------- */
.rx-resil{display:grid;grid-template-columns:minmax(200px,.85fr) 1.6fr;gap:clamp(24px,4vw,54px);
  border-radius:var(--r-card);padding:clamp(26px,3.6vw,38px);
  background:var(--glass-bg);border:1px solid var(--glass-line);
  -webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 24px 50px rgba(3,6,16,.4)}
.rx-resil .rs-head{display:flex;align-items:flex-start;gap:8px}
.rx-resil .rs-head h3{font-family:var(--display);font-weight:700;text-transform:uppercase;color:var(--ivory);
  font-size:clamp(17px,2.1vw,25px);line-height:1.28;letter-spacing:.05em;margin:0}
.rx-resil .lede{margin:0;font-size:15.5px;color:var(--dim);line-height:1.8;max-width:70ch}
.rx-resil .rs-read{margin:18px 0;padding:16px 20px;border-radius:var(--r-inner);
  background:var(--rx-flat);border:1px solid var(--rx-flat-line);font-size:15px;color:var(--ivory);line-height:1.7;max-width:70ch}
.rx-resil .rs-read b{color:var(--gold-hi);font-family:var(--mono);font-weight:400}
.rx-resil .quiet{margin:0;font-size:12.5px;color:var(--sub);line-height:1.8;max-width:74ch}
.rx-resil .rx-teaseline{margin:16px 0 0;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);line-height:1.8}

/* ---------- 08 · follow up ---------- */
.rx-asknight{margin-top:24px;padding-top:18px;border-top:1px solid rgba(var(--rx-line-rgb),.12)}
.rx-asknight .t{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0 0 12px}
.rx-asknight ol{margin:0;padding-left:18px}
.rx-asknight li{font-size:14px;color:var(--ivory);line-height:1.65;margin-bottom:9px;font-weight:300}
.rx-annual{margin-top:20px;font-size:12.5px;color:var(--sub);line-height:1.75}

/* Where the reader goes next. Shared by both products, so the hairlines use
   --rx-line-rgb and flip with the paper theme (the intake's own copy of this
   block used raw ivory hairlines and went invisible on paper). */
.rx-onward{margin-top:24px;padding-top:18px;border-top:1px solid rgba(var(--rx-line-rgb),.12)}
.rx-onward a{display:block;padding:11px 0;border-bottom:1px solid rgba(var(--rx-line-rgb),.10);
  color:var(--ivory);text-decoration:none;font-size:14px;transition:color .3s var(--ease)}
.rx-onward a:last-child{border-bottom:none}
.rx-onward a:hover{color:var(--gold-hi)}
.rx-onward a span{display:block;font-size:12.5px;color:var(--sub);margin-top:2px}

/* ---------- mobile, v2 blocks ---------- */
@media (max-width:1080px){
  .rx-vgrid{grid-template-columns:repeat(2,1fr)}
  .rx-plangrid{grid-template-columns:repeat(2,1fr)}
  .rx-streams{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:940px){
  .rx-promise{grid-template-columns:1fr;gap:20px}
  .rx-vitalsblock{grid-template-columns:1fr}
  .rx-first,.rx-streamintro,.rx-resil{grid-template-columns:1fr;gap:18px}
  .rx-whatif .wi-ins{grid-template-columns:1fr;gap:0}
}
@media (max-width:640px){
  .rx-vgrid,.rx-plangrid,.rx-streams{grid-template-columns:1fr}
  .rx-diag{padding:24px 22px}
  .rx-pop{max-width:calc(100vw - 24px)}
}

/* ---------- the one-pager (print), v2 ---------- */
@media print{
  #rxPrint{font-size:11px}
  #rxPrint .rxhead{display:flex;gap:16px;align-items:stretch;margin-bottom:12px}
  #rxPrint .rxhead .sc{flex:none;width:104px;border:2px solid #D9B36C;border-radius:8px;
    display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 6px;text-align:center}
  #rxPrint .rxhead .sc b{font-family:'Syncopate',sans-serif;font-size:26px;color:#8C6A2F;line-height:1}
  #rxPrint .rxhead .sc span{font-size:7.5px;letter-spacing:.1em;text-transform:uppercase;color:#5A6785;margin-top:6px;line-height:1.4}
  #rxPrint .rxhead .dg{flex:1}
  #rxPrint .rxhead .dg h2{font-family:'Syncopate',sans-serif;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:#0A1128;margin:0 0 6px;line-height:1.25}
  #rxPrint .rxhead .dg p{margin:0;font-size:11px;color:#3D4A6B;line-height:1.55}
  #rxPrint .rxhead .dg .cn{margin-top:6px;font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:#5A6785}
  #rxPrint .rxhead .dg .cn b{color:#8C6A2F}
  #rxPrint .rxs article.first h3 em{font-style:normal;font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:#8C6A2F}
  #rxPrint .move{margin-bottom:12px;padding:9px 12px;border:1px solid #D9B36C;border-radius:6px}
  #rxPrint .move h2,#rxPrint .ask h2{font-family:'Syncopate',sans-serif;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#8C6A2F;margin:0 0 5px}
  #rxPrint .move p{margin:0;font-size:11px;color:#0A1128}
  #rxPrint .ask{margin-bottom:12px}
  #rxPrint .ask ol{margin:0;padding-left:16px}
  #rxPrint .ask li{font-size:10.5px;color:#3D4A6B;margin-bottom:2px}
  #rxPrint .fourq{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
  #rxPrint .fourq span{font-family:'Syncopate',sans-serif;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#8C6A2F;font-weight:400}
  .rx-pop{display:none !important}
}

/* =========================================================================
   v3 (2026-08-28) · feedback round one
   The household tap on screen one, the permanent policy panel, the "within
   normal limits" strip, the tax slice in the conversion band, the tax line on
   the ownership income cards, and the resilience breakdown. Same rules: flat
   navy inside glass, gold for the one thing worth noticing, claret nowhere.
   ========================================================================= */

/* screen one: who is in the picture, then the why chips */
.rx-sub{margin:2px 0 12px}
.rx-house{margin-bottom:4px}
.rx-whyhint{margin-top:24px}

/* the permanent policy panel, revealed only when a permanent life chip is tapped */
.rx-policy{margin-top:26px;max-width:720px;padding:18px 22px 4px;
  background:var(--rx-flat);border:1px solid var(--rx-flat-line);border-radius:var(--r-inner)}
.rx-policy h4{font-family:var(--display);font-weight:400;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin:0 0 8px}
.rx-policy>.rx-in-hint{margin:0 0 4px;max-width:60ch}
.rx-policy .rx-ins{max-width:none}
.rx-policy .rx-in{padding:12px 0 14px}

/* within normal limits */
.rx-wnl{margin-top:14px;border-radius:var(--r-inner);padding:18px 26px 16px;border:1px solid rgba(var(--rx-line-rgb),.14);background:rgba(16,32,74,.3)}
.rx-wnl .t{display:flex;align-items:center;font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.rx-wnl .items{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.rx-wnl .items li{font-family:var(--text);font-size:12.5px;color:var(--ivory);border:1px solid rgba(217,179,108,.3);border-radius:999px;padding:7px 13px;background:rgba(217,179,108,.05)}
.rx-wnl .items li.none{border:none;background:none;padding:0;color:var(--dim);font-size:14px}
.rx-wnl .after{margin:12px 0 0;font-size:12.5px;color:var(--sub)}

/* the tax slice in the conversion band */
.rx-bar .tax{background:rgba(var(--rx-line-rgb),.22)}
.rx-barlab span:nth-child(2){text-align:center}

/* leave what lasts, for a reader without children */
.rx-pl .pl-note{margin:14px 0 0;padding-top:12px;border-top:1px solid rgba(var(--rx-line-rgb),.09);font-size:12.5px;color:var(--sub);line-height:1.65}

/* one tax line per ownership income card */
.rx-stream .tx{margin-top:10px;font-size:12px;color:var(--sub);line-height:1.65}
.rx-stream .tx span{display:inline-block;margin-right:8px;font-family:var(--mono);font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);vertical-align:1px}

/* the resilience breakdown: each pool with one job */
.rx-resilgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:0 0 18px;max-width:70ch}
.rx-resilgrid .rx-pf.pick{border-color:rgba(217,179,108,.45);background:rgba(217,179,108,.07)}
.rx-resil .rs-two{margin:0 0 18px;padding-left:14px;border-left:2px solid var(--gold-deep);font-size:13.5px;color:var(--dim);line-height:1.75;max-width:70ch}
.rx-resil .rs-two b{color:var(--gold-hi);font-family:var(--mono);font-weight:400}
@media (max-width:640px){.rx-resilgrid{grid-template-columns:1fr}}
@media (max-width:640px){
  /* three bar labels on one narrow line crowd each other; let them wrap whole */
  .rx-barlab{flex-wrap:wrap;justify-content:flex-start;gap:6px 18px}
  .rx-barlab span:nth-child(2){text-align:left}
  /* the preview-only draft tag sat on top of a long diagnosis name */
  .rx-diag.is-draft .name{margin-top:22px}
}

/* =========================================================================
   v4 (2026-08-28, afternoon) · the readability pass
   Addie: the cards are hard to read. Measured, the hue was fine (ivory 14:1,
   dim 9.6:1, gold 9:1 on the card) and the small grey was not: --sub at
   4.9:1, set at 11.5 to 13px, weight 300 in places, over two thousand words,
   for readers who skew 45 and over. So: the grey lifted one notch on this
   page only, every sentence-length note moved from --sub to --dim, sizes up
   a step, weight 300 retired on the long lines, the flat wash a notch
   lighter. Nothing here changes a color's meaning; gold still marks the one
   thing worth noticing and claret still lives only on the alignment light.
   ========================================================================= */
:is(#rxApp,#inApp),:is(#rxResults,#inResults),.rx-pop{--sub:#9AA4C0;--rx-flat:rgba(20,38,86,.5);--rx-flat-line:rgba(var(--rx-line-rgb),.16)}

/* the exam */
.rx-hint{font-size:14.5px;color:var(--dim)}
.rx-in-hint{font-size:13.5px;color:var(--dim)}
.rx-live .note{font-size:13.5px;color:var(--dim)}
.rx-lrow p{font-size:15px}
.rx-policy>.rx-in-hint{font-size:13.5px}
.rx-vt span{font-size:9px}

/* results: head, vitals, diagnosis */
.rx-tone{font-weight:400}
.rx-v .vl{font-size:9px;letter-spacing:.16em;color:var(--dim)}
.rx-v .vn{font-size:13px;color:var(--dim)}
.rx-score .sn{font-size:13px;color:var(--dim)}
.rx-diag .line{font-weight:400}
.rx-diag .constraint{font-size:10px;color:var(--dim)}
.rx-wnl .items li{font-size:13.5px}
.rx-wnl .after{font-size:13.5px;color:var(--dim)}

/* the finish line */
.rx-pf .pl{font-size:9px;letter-spacing:.16em;color:var(--dim)}
.rx-pf .pn{font-size:13px;color:var(--dim)}
.rx-planline{font-size:16px}
.rx-whatif .wi-note{font-size:13px;color:var(--dim)}
.rx-assume{font-size:13px;color:var(--dim)}

/* the prescription and the first move */
.rx-card h4{font-size:17px}
.rx-card p{font-size:15px;line-height:1.7}
.rx-card .cite{font-size:9.5px;color:var(--dim)}
.rx-first .fm{font-weight:400}
.rx-first .fq{font-size:14px;color:var(--dim)}

/* ownership income */
.rx-streamintro .quiet{font-size:14px;color:var(--dim)}
.rx-stream p{font-size:14.5px}
.rx-stream .sn{font-size:13.5px;color:var(--dim)}
.rx-stream .tx{font-size:13.5px;color:var(--dim)}
.rx-stream .meta span{font-size:9.5px;color:var(--dim)}

/* the detail */
.rx-rows .r{font-size:13.5px}
.rx-rows .r span{color:var(--dim)}
.rx-gaugewrap .gl{font-size:9px;color:var(--dim)}
.rx-pl .pl-note{font-size:13.5px;color:var(--dim)}
.rx-band .note{font-size:14px;color:var(--dim)}
.rx-barlab{font-size:10px;color:var(--dim)}
.rx-node p{font-size:13px;color:var(--dim)}

/* resilience, follow up, fine print, popover */
.rx-resil .quiet{font-size:14px;color:var(--dim)}
.rx-resil .rs-two{font-size:14.5px}
.rx-actions .side p{font-size:15px}
.rx-asknight li{font-size:15px;font-weight:400}
.rx-annual{font-size:13.5px;color:var(--dim)}
.rx-fine{font-size:13.5px;color:var(--dim)}
.rx-pop p{font-size:14px}
.rx-pop p.how{font-size:13.5px}

/* =========================================================================
   v5 (2026-08-28, evening) · paper by default
   Addie: "make paper default for everything. I think the questionnaire too."
   The hero stays in the midnight world. From the first tap on, the reader is
   on paper: the exam console is a pad and the results are a report, both
   lying on the navy desk. One rule for gold: as text it reads bronze
   (#7A5A22, 5.6:1 on paper), as a fill or a rule it stays the real gold.
   Ivory hairlines become navy hairlines through --rx-line-rgb. ?paper=0
   shows the midnight version for comparison.
   ========================================================================= */
:is(#rxApp,#inApp).paper,:is(#rxResults,#inResults).paper{
  --ivory:#0A1128;--dim:#2F3B5E;--sub:#5A6785;
  --gold:#7A5A22;--gold-hi:#7A5A22;--gold-deep:#6B4E1D;
  --rx-line-rgb:16,32,74;
  --rx-flat:#FFFDF9;--rx-flat-line:rgba(16,32,74,.16);
  --glass-bg:rgba(16,32,74,.035);--glass-line:rgba(16,32,74,.13);
  --rx-attn:#7E2A38}

/* the two sheets */
:is(#rxApp,#inApp).paper .panel.rx-console,:is(#rxResults,#inResults).paper .sec-inner{
  background:linear-gradient(180deg,#F8F4EB,#F4F0E6 30%,#EFEADF);
  border:1px solid rgba(16,32,74,.16);border-radius:calc(var(--r-card) + 10px);
  -webkit-backdrop-filter:none;backdrop-filter:none;color:var(--ivory);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 40px 90px rgba(3,6,16,.6)}
:is(#rxResults,#inResults).paper .sec-inner{padding:clamp(22px,4vw,56px)}

/* panels become flat wells on the sheet; the prescription and the first move
   stay white so the pad still sits on top of the report */
:is(#rxResults,#inResults).paper .rx-vitalsblock,:is(#rxResults,#inResults).paper .rx-plan,:is(#rxResults,#inResults).paper .rx-pl,:is(#rxResults,#inResults).paper .rx-band,
:is(#rxResults,#inResults).paper .rx-map,:is(#rxResults,#inResults).paper .rx-resil,:is(#rxResults,#inResults).paper .rx-actions{
  -webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
:is(#rxResults,#inResults).paper .rx-diag{background:linear-gradient(135deg,rgba(217,179,108,.22),rgba(255,253,249,.9) 60%);border-color:rgba(140,106,47,.45);
  -webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 10px 30px rgba(16,32,74,.08)}
:is(#rxResults,#inResults).paper .rx-diag.is-draft::after,:is(#rxResults,#inResults).paper .rx-card .draft{color:var(--sub);border-color:rgba(90,103,133,.5)}
:is(#rxResults,#inResults).paper .rx-alignbar,:is(#rxResults,#inResults).paper .rx-wnl{background:rgba(16,32,74,.035);border-color:rgba(16,32,74,.14)}
:is(#rxResults,#inResults).paper .rx-alignbar.warn{background:rgba(126,42,56,.07);border-color:rgba(126,42,56,.35)}
:is(#rxResults,#inResults).paper .rx-card,:is(#rxResults,#inResults).paper .rx-first{
  background:linear-gradient(180deg,#FFFEFB,#FFFDF9 40%,#FBF8F1);border:1px solid rgba(16,32,74,.14);
  -webkit-backdrop-filter:none;backdrop-filter:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 14px 34px rgba(16,32,74,.12)}
:is(#rxResults,#inResults).paper .rx-card.is-first{border-color:rgba(217,179,108,.95);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 14px 34px rgba(16,32,74,.12),0 0 0 3px rgba(217,179,108,.3)}
:is(#rxResults,#inResults).paper .rx-stream.pick{background:rgba(217,179,108,.12);border-color:rgba(140,106,47,.5)}
:is(#rxResults,#inResults).paper .rx-banner{background:rgba(217,179,108,.16);border-color:rgba(140,106,47,.5)}

/* gold as a fill stays gold, with ink on top */
:is(#rxApp,#inApp).paper .btn-gold,:is(#rxResults,#inResults).paper .btn-gold,:is(#rxResults,#inResults).paper .rx-status.s-strong,:is(#rxResults,#inResults).paper .rx-card .starthere,
:is(#rxApp,#inApp).paper .rx-seg button[aria-pressed="true"]{background:linear-gradient(120deg,#8C6A2F,#D9B36C 55%,#E3C27C);color:#050A1A}
:is(#rxApp,#inApp).paper .rx-range::-webkit-slider-thumb{background:radial-gradient(circle at 35% 30%,#E3C27C,#D9B36C 60%,#8C6A2F)}
:is(#rxApp,#inApp).paper .rx-range::-moz-range-thumb{background:radial-gradient(circle at 35% 30%,#E3C27C,#D9B36C 60%,#8C6A2F)}
:is(#rxApp,#inApp).paper .rx-dots button[aria-pressed="true"]{background:radial-gradient(circle at 35% 30%,#E3C27C,#D9B36C 65%,#8C6A2F)}
:is(#rxResults,#inResults).paper .rx-node.on .dot{background:radial-gradient(circle at 35% 30%,#E3C27C,#D9B36C 65%,#8C6A2F);box-shadow:0 0 10px rgba(217,179,108,.5)}
:is(#rxResults,#inResults).paper .rx-node.half .dot{background:linear-gradient(90deg,#D9B36C 50%,rgba(16,32,74,.12) 50%)}
:is(#rxResults,#inResults).paper .rx-bar .kept{background:linear-gradient(90deg,#8C6A2F,#D9B36C 70%,#C9A24F)}
:is(#rxResults,#inResults).paper .rx-status.s-attn{border-color:rgba(16,32,74,.3)}
:is(#rxApp,#inApp).paper .rx-steps li.done,:is(#rxApp,#inApp).paper .rx-steps li.done .n{color:#8C6A2F}

/* gold as text reads bronze */
:is(#rxApp,#inApp).paper .gw,:is(#rxResults,#inResults).paper .gw{color:#7A5A22}
:is(#rxResults,#inResults).paper .rx-info{border-color:rgba(122,90,34,.5)}
:is(#rxResults,#inResults).paper .rx-info:hover,:is(#rxResults,#inResults).paper .rx-info[aria-expanded="true"]{background:#7A5A22;border-color:#7A5A22;color:#F7F3EA}
:is(#rxResults,#inResults).paper .rx-sharestatus,:is(#rxResults,#inResults).paper .ta-status,:is(#rxResults,#inResults).paper .ta-form__label{color:#7A5A22}

/* the site's glass button and form fields, on paper */
:is(#rxResults,#inResults).paper .btn-glass{color:#0A1128;background:rgba(16,32,74,.05);border-color:rgba(16,32,74,.28);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}
:is(#rxResults,#inResults).paper .ta-form input{background:#fff;border-color:rgba(16,32,74,.25);color:#0A1128}
:is(#rxResults,#inResults).paper .ta-form input::placeholder{color:#8A93AD}
/* the preview-only draft tag sat on top of a long card eyebrow */
.rx-card .no{padding-right:96px}

/* =========================================================================
   v6 (2026-08-31) · feedback from Kyle's colleagues (this page only)
   ========================================================================= */
/* the white logo washed out when the paper sheet scrolled beneath it: give
   it a navy footing here, where light surfaces pass under fixed elements */
.side-brand{background:rgba(5,10,26,.55);border:1px solid rgba(234,230,218,.14);border-radius:999px;padding:0 20px;
  -webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 14px 34px rgba(3,6,16,.4)}
@media(max-width:640px){.side-brand{padding:0 12px}}
/* the header used to sit on top of the text while you read; now it steps
   aside on the way down and comes back the moment you scroll up */
.gnav,.side-brand{transition:transform .55s var(--ease),opacity .4s var(--ease),filter .4s var(--ease),background .4s var(--ease),box-shadow .4s var(--ease)}
.gnav.nav-away,.side-brand.nav-away{transform:translateY(-170%)}
/* the start button reads solid, like the tickets pill */
.rx-hero .ctas .btn{padding:19px 40px;font-size:11.5px;letter-spacing:.24em}
