/* Fonts are served from this domain. No third party is contacted to render a
   page. Every file lives in /assets/fonts/ and is committed to the repo. */
@font-face { font-family:'DM Mono'; font-weight:400; font-style:normal; font-display:swap;
  src:url('/assets/fonts/dm-mono-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family:'DM Mono'; font-weight:500 600; font-style:normal; font-display:swap;
  src:url('/assets/fonts/dm-mono-latin-500-normal.woff2') format('woff2'); }
@font-face { font-family:'Fraunces'; font-weight:100 900; font-style:normal; font-display:swap;
  src:url('/assets/fonts/fraunces-latin-opsz-normal.woff2') format('woff2-variations'); }
@font-face { font-family:'Fraunces'; font-weight:100 900; font-style:italic; font-display:swap;
  src:url('/assets/fonts/fraunces-latin-opsz-italic.woff2') format('woff2-variations'); }
@font-face { font-family:'Manrope'; font-weight:200 800; font-style:normal; font-display:swap;
  src:url('/assets/fonts/manrope-latin-wght-normal.woff2') format('woff2-variations'); }
@font-face { font-family:'Schibsted Grotesk'; font-weight:400 900; font-style:normal; font-display:swap;
  src:url('/assets/fonts/schibsted-grotesk-latin-wght-normal.woff2') format('woff2-variations'); }

:root { --pine:#0e3b2e; --pine-dark:#08261d; --ink:#10211b; --chalk:#f4f4f1; --paper:#fdfcf9; --mint:#7fd1a8; --brass:#b58b4a; --fault:#c4452c; --slate:#587066; --rule:rgba(16,33,27,.16); --site-header-h:78px; }
* { box-sizing:border-box; }
html { min-width:320px; min-height:100%; background:var(--pine-dark); }
body { min-height:100%; margin:0; display:flex; flex-direction:column; background:var(--chalk); color:var(--ink); font-family:Manrope,Arial,sans-serif; }
button,a { font:inherit; }
button { cursor:pointer; }
[hidden] { display:none!important; }
.skip { position:absolute; z-index:50; top:-80px; left:0; padding:11px 17px; color:var(--pine); background:var(--mint); text-decoration:none; }.skip:focus { top:0; }
.simulation-shell { width:min(1600px,100%); min-height:calc(100dvh - var(--site-header-h)); flex:1 0 auto; margin:0 auto; padding:0 clamp(16px,3vw,48px) 40px; }
.topbar { min-height:72px; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:0 clamp(4px,1vw,14px); border-bottom:3px solid var(--pine); background:transparent; }
.product-lockup { min-width:0; display:flex; align-items:center; gap:16px; }
.ridgeline-mark { display:inline-flex; align-items:center; color:var(--pine); text-decoration:none; gap:9px; letter-spacing:.045em; }
.ridge-icon { width:32px; height:28px; color:var(--pine); }
.ridgeline-mark span { display:flex; flex-direction:column; line-height:1; }
.ridgeline-mark strong { font-size:11px; letter-spacing:.12em; font-weight:700; }
.ridgeline-mark small { margin-top:4px; color:var(--slate); font:500 6.5px 'DM Mono',monospace; letter-spacing:.2em; }
.ridgeline-mark:hover,.ridgeline-mark:focus-visible { color:var(--fault); }.ridgeline-mark:hover .ridge-icon,.ridgeline-mark:focus-visible .ridge-icon { color:var(--fault); }
.product-divider { width:1px; height:29px; flex:none; background:var(--rule); }
.session-name { min-width:0; color:var(--pine); font:500 clamp(20px,1.8vw,25px) Fraunces,Georgia,serif; letter-spacing:-.035em; line-height:1; white-space:nowrap; }
.product-context { color:var(--slate); font:500 8px 'DM Mono',monospace; letter-spacing:.12em; text-transform:uppercase; white-space:nowrap; }
.quiet-button { color:var(--pine); background:transparent; border:0; padding:7px 0; font:500 11px 'DM Mono',monospace; letter-spacing:.055em; text-transform:uppercase; }
.quiet-button:hover,.quiet-button:focus-visible { color:var(--fault); }
.scene-head { display:flex; justify-content:space-between; gap:26px; align-items:end; padding:29px 0 18px; }
.eyebrow,.console-label { margin:0 0 8px; color:var(--slate); font:500 10px 'DM Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
h1,h2,p { margin-top:0; }
h1,h2 { font-family:Fraunces,Georgia,serif; font-weight:500; letter-spacing:-.035em; }
h1, #situation-title { margin-bottom:0; color:var(--pine); font-size:clamp(30px,3.15vw,46px); line-height:1; }
.scenario-console { display:grid; grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr); border:1px solid var(--rule); background:var(--paper); margin-bottom:22px; }
.scenario-console > div,.console-brief { min-width:0; padding:17px 18px; }
.console-ledgers,.console-last { border-left:1px solid var(--rule); }
.scenario-console .console-label { display:block; margin-bottom:7px; font-size:8.5px; }.console-label { color:var(--slate); }
.aura-value { display:flex; align-items:baseline; gap:7px; }.aura-value strong { color:var(--pine); font:500 28px Fraunces,serif; letter-spacing:-.05em; line-height:1; }.aura-value span { color:var(--slate); font-size:10px; }
.aura-ticks { display:grid; grid-template-columns:repeat(10,1fr); gap:3px; margin-top:10px; }.aura-ticks i { display:block; height:5px; background:#dbe3dc; }.aura-ticks i.lit { background:var(--mint); }.aura-ticks i.last { background:var(--brass); }
.console-ledgers { display:grid; align-content:center; gap:11px; }.ledger-line { display:grid; grid-template-columns:57px minmax(38px,1fr) 46px; align-items:center; gap:7px; color:var(--slate); font-size:10px; }.ledger-line strong { color:var(--pine); font:500 12px 'DM Mono',monospace; text-align:right; }.ledger-line strong.neg { color:var(--fault); }.ledger-bar { position:relative; height:5px; background:#dbe3dc; overflow:hidden; }.ledger-bar i { position:absolute; top:0; bottom:0; left:0; width:50%; background:var(--mint); transition:width .3s ease,background-color .3s ease; }.ledger-bar i.neg { background:var(--fault); }.ledger-bar b { position:absolute; left:50%; top:-2px; width:1px; height:9px; background:var(--pine); opacity:.48; }
.console-brief { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:20px; border:0; border-top:1px solid var(--rule); background:var(--chalk); color:var(--pine); text-align:left; transition:background .16s ease,color .16s ease; }.console-brief span { display:flex; flex-direction:column; }.console-brief b { font-size:12px; font-weight:700; line-height:1.35; }.console-brief small { margin-top:3px; color:var(--slate); font-size:10px; line-height:1.42; }.console-brief em { flex:none; color:var(--fault); font:500 9px 'DM Mono',monospace; font-style:normal; letter-spacing:.055em; text-transform:uppercase; white-space:nowrap; }.console-brief em i { font-style:normal; font-size:14px; }.console-brief:hover,.console-brief:focus-visible { background:#edf6ef; }.console-brief:hover b,.console-brief:focus-visible b { color:var(--fault); }.console-brief:disabled { cursor:default; background:#edf6ef; }.console-brief:disabled em { color:var(--slate); }.console-brief:disabled:hover b { color:var(--pine); }
.console-intel,.console-last { display:flex; flex-direction:column; justify-content:center; border-top:1px solid var(--rule); }.console-intel strong,.console-last strong { color:var(--pine); font-size:12px; line-height:1.4; }.console-intel strong b { font:500 15px Fraunces,serif; }.console-intel > span,.console-last > span { color:var(--slate); font-size:10px; line-height:1.45; }.console-intel p { margin:5px 0 0; color:var(--fault); font-size:9.5px; line-height:1.35; }.console-last strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

.experience { border:1px solid var(--rule); background:var(--paper); }
.floor-stage { position:relative; isolation:isolate; height:clamp(610px,68vh,750px); overflow:hidden; background:var(--pine-dark); }
.floor-art { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.84) contrast(1.04) brightness(.82); }
.floor-wash { position:absolute; z-index:1; inset:0; background:linear-gradient(180deg,rgba(5,19,15,.16),rgba(5,19,15,.04) 46%,rgba(5,19,15,.55)),linear-gradient(90deg,rgba(4,20,15,.12),transparent 45%); pointer-events:none; }
.floor-title { position:absolute; z-index:2; top:22px; left:25px; color:var(--chalk); display:flex; flex-direction:column; text-shadow:0 1px 4px rgba(0,0,0,.3); }.floor-title span { font-size:11px; letter-spacing:.17em; font-weight:700; }.floor-title small { margin-top:5px; font:400 8px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; opacity:.8; }
.floor-instruction { position:absolute; z-index:3; top:72px; left:25px; max-width:255px; margin:0; padding-left:12px; border-left:2px solid var(--mint); color:var(--chalk); font-size:12px; line-height:1.45; text-shadow:0 1px 4px rgba(0,0,0,.44); }
.hotspot { position:absolute; z-index:4; border:0; background:transparent; color:var(--chalk); padding:0; text-align:left; display:flex; align-items:center; gap:8px; filter:drop-shadow(0 2px 3px rgba(0,0,0,.35)); }.hotspot.business { top:25%; left:14%; }.hotspot.client { top:22%; left:59%; }.hotspot.team { top:68%; left:13%; }.hotspot.culture { top:70%; left:48%; }.hotspot.power { top:51%; left:79%; }
.pin { display:grid; place-items:center; width:28px; height:28px; flex:none; border:1px solid rgba(244,244,241,.82); border-radius:50%; background:rgba(8,38,29,.84); transition:transform .18s ease,background .18s ease,border-color .18s ease; }.pin b { display:block; width:7px; height:7px; background:var(--mint); border-radius:50%; box-shadow:0 0 0 4px rgba(127,209,168,.18); }.hotspot-label { display:flex; flex-direction:column; color:var(--chalk); text-shadow:0 1px 4px rgba(0,0,0,.5); }.hotspot-label em { color:var(--mint); font:500 8px 'DM Mono',monospace; font-style:normal; text-transform:uppercase; letter-spacing:.1em; }.hotspot-label strong { margin-top:2px; font-size:11px; font-weight:700; line-height:1.15; }.hotspot:hover .pin,.hotspot:focus-visible .pin,.hotspot.active .pin { background:var(--mint); border-color:var(--mint); transform:scale(1.11); }.hotspot:hover .pin b,.hotspot:focus-visible .pin b,.hotspot.active .pin b { background:var(--pine); box-shadow:none; }.hotspot.revealed .pin { border-color:var(--brass); }.hotspot.revealed .pin b { background:var(--brass); }
.floor-controls { position:absolute; z-index:5; left:24px; right:24px; bottom:20px; display:flex; align-items:center; justify-content:space-between; gap:22px; padding:12px 15px 12px 17px; background:rgba(8,38,29,.9); color:var(--chalk); box-shadow:0 8px 22px rgba(0,0,0,.18); }.floor-controls .console-label { display:block; color:var(--mint); margin-bottom:3px; font-size:8px; }.floor-controls p { max-width:560px; margin:0; font-size:11px; line-height:1.38; }.floor-decision { display:inline-flex; flex:none; align-items:center; justify-content:space-between; gap:21px; padding:10px 0; min-width:170px; border:0; border-top:1px solid rgba(244,244,241,.3); background:transparent; color:var(--chalk); text-align:left; font:500 10px 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }.floor-decision span { color:var(--mint); font-size:16px; }.floor-decision:hover,.floor-decision:focus-visible { color:var(--mint); }

.context-layer,.brief-layer { position:absolute; z-index:10; inset:0; display:grid; padding:24px; background:rgba(5,23,17,.58); backdrop-filter:blur(5px); }.context-layer { justify-items:end; align-items:center; }.brief-layer { z-index:12; place-items:center; }
.context-panel,.brief-panel { position:relative; width:min(440px,48%); max-height:100%; overflow-x:hidden; overflow-y:auto; background:var(--paper); box-shadow:0 24px 60px rgba(0,0,0,.35); }.close-overlay { position:absolute; z-index:2; right:13px; top:11px; width:33px; height:33px; display:grid; place-items:center; border:1px solid rgba(244,244,241,.7); background:rgba(8,38,29,.84); color:var(--chalk); font-size:23px; line-height:1; }.close-overlay:hover,.close-overlay:focus-visible { background:var(--fault); }
.context-art { margin:0; height:210px; background:var(--pine-dark); }.context-art img { display:block; width:100%; height:100%; object-fit:cover; }.context-copy { padding:21px clamp(19px,2.3vw,30px) 24px; }.context-copy h2,.brief-copy h2 { margin:0 0 8px; color:var(--pine); font-size:clamp(27px,3vw,38px); line-height:1.04; }.speaker { margin-bottom:14px; color:var(--slate); font:500 9px 'DM Mono',monospace; letter-spacing:.065em; text-transform:uppercase; }.context-clue { margin:0; color:var(--ink); font-size:13px; line-height:1.62; }.context-status { display:flex; justify-content:space-between; gap:10px; margin-top:18px; padding-top:11px; border-top:1px solid var(--rule); color:var(--pine); font:500 9px 'DM Mono',monospace; letter-spacing:.07em; text-transform:uppercase; }.context-status span:last-child { color:var(--fault); text-align:right; }
.brief-panel { display:grid; grid-template-columns:minmax(0,1.32fr) minmax(220px,.68fr); gap:clamp(28px,5vw,70px); width:min(920px,100%); padding:clamp(27px,4vw,48px); color:var(--chalk); background:var(--pine); }.brief-panel::after { content:""; position:absolute; width:240px; height:240px; right:-104px; top:-110px; border:1px solid rgba(127,209,168,.25); border-radius:50%; box-shadow:0 0 0 36px rgba(127,209,168,.05),0 0 0 72px rgba(127,209,168,.04); pointer-events:none; }.brief-copy,.brief-facts { position:relative; z-index:1; }.brief-copy .eyebrow,.brief-facts .eyebrow { color:var(--mint); }.brief-copy h2 { color:var(--chalk); font-size:clamp(30px,4vw,46px); }.brief-copy p:not(.eyebrow) { margin-bottom:13px; color:#d7e3da; font-size:14px; line-height:1.65; }.brief-facts { align-self:end; padding-top:10px; }.brief-facts dl { margin:0; }.brief-facts dl div { padding:11px 0; border-top:1px solid rgba(244,244,241,.21); }.brief-facts dt { color:var(--mint); font:500 9px 'DM Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }.brief-facts dd { margin:5px 0 0; color:var(--chalk); font-size:12px; line-height:1.45; }.brief-guidance { margin:21px 0 0; color:var(--chalk); font-size:13px; line-height:1.5; }.brief-continue { margin-top:10px; padding:11px 0; border:0; border-top:1px solid rgba(244,244,241,.21); width:100%; background:transparent; color:var(--chalk); text-align:left; font:500 10px 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }.brief-continue span { float:right; color:var(--mint); font-size:16px; }.brief-continue:hover,.brief-continue:focus-visible { color:var(--mint); }

.decision-panel,.outcome-panel { margin-top:22px; padding:28px clamp(20px,4vw,58px) 34px; border:1px solid var(--rule); background:var(--paper); }.decision-topline { display:flex; justify-content:space-between; align-items:center; margin-bottom:30px; color:var(--slate); font:500 10px 'DM Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }.decision-panel h2,.outcome-panel h2 { max-width:650px; margin:0 0 12px; color:var(--pine); font-size:clamp(31px,4vw,48px); line-height:1; }.decision-status { max-width:710px; margin-bottom:22px; padding:10px 13px; border-left:2px solid var(--brass); color:var(--slate); background:#f3f5f0; font-size:12px; line-height:1.48; }.decision-status.ready { border-left-color:var(--mint); color:var(--pine); }.choice-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }.choice { min-height:190px; padding:20px; color:var(--ink); background:var(--chalk); border:1px solid var(--rule); text-align:left; transition:border-color .16s ease,background .16s ease,transform .16s ease; }.choice:hover,.choice:focus-visible { border-color:var(--pine); background:#edf6ef; transform:translateY(-2px); }.choice span { color:var(--fault); font:500 11px 'DM Mono',monospace; }.choice p { margin:16px 0 0; font-size:13px; line-height:1.62; }
.outcome-panel { background:var(--pine); color:var(--chalk); border-color:var(--pine); }.outcome-panel .eyebrow { color:var(--mint); }.outcome-panel h2 { color:var(--chalk); }.outcome-impact { max-width:620px; margin-bottom:28px; color:#c7d6cc; font-size:14px; line-height:1.55; }.outcome-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:35px; max-width:960px; }.outcome-columns div { padding-top:14px; border-top:1px solid rgba(244,244,241,.22); }.outcome-columns span { color:var(--mint); font:500 9px 'DM Mono',monospace; letter-spacing:.11em; text-transform:uppercase; }.outcome-columns p { margin:8px 0 0; max-width:56ch; color:var(--chalk); font-size:13px; line-height:1.6; }.outcome-return { width:min(320px,100%); margin-top:26px; border-color:rgba(244,244,241,.25); }
.scene-footer { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:20px 2px 0; color:var(--slate); font:500 9px 'DM Mono',monospace; letter-spacing:.07em; text-transform:uppercase; }.scene-footer .quiet-button { font-size:9px; }

/* ------------------------------------------------------ session builder */
.setup-screen { display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.84fr); gap:clamp(34px,7vw,110px); align-items:center; min-height:calc(100dvh - var(--site-header-h) - 72px); padding:clamp(42px,8vh,108px) clamp(2px,1vw,14px); }
.setup-copy { max-width:645px; }.setup-copy h1 { max-width:640px; margin:0 0 23px; font-size:clamp(43px,5.3vw,76px); line-height:.94; }.setup-lede { max-width:55ch; margin:0; color:var(--slate); font-size:16px; line-height:1.72; }.setup-rules { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:19px; margin:42px 0 0; }.setup-rules div { padding-top:12px; border-top:1px solid var(--rule); }.setup-rules dt { color:var(--pine); font:500 9px 'DM Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }.setup-rules dd { margin:8px 0 0; color:var(--slate); font-size:11px; line-height:1.55; }
.session-builder { position:relative; overflow:hidden; padding:clamp(27px,4vw,45px); color:var(--chalk); background:var(--pine); box-shadow:0 24px 60px rgba(8,38,29,.2); }.session-builder::before { content:""; position:absolute; width:290px; height:290px; right:-120px; top:-150px; border:1px solid rgba(127,209,168,.25); border-radius:50%; box-shadow:0 0 0 36px rgba(127,209,168,.055),0 0 0 73px rgba(127,209,168,.035); pointer-events:none; }.session-builder > * { position:relative; z-index:1; }.session-builder .eyebrow { color:var(--mint); }.session-builder h2 { max-width:400px; margin:0 0 25px; color:var(--chalk); font-size:clamp(29px,3.25vw,43px); line-height:1.02; }
.pillar-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }.pillar-chip { display:flex; align-items:center; min-height:48px; gap:10px; padding:11px 12px; border:1px solid rgba(244,244,241,.32); color:#c9d9d0; background:transparent; font:500 9px 'DM Mono',monospace; letter-spacing:.055em; line-height:1.35; text-align:left; text-transform:uppercase; transition:background .16s ease,border-color .16s ease,color .16s ease; }.pillar-check { display:grid; place-items:center; width:16px; height:16px; flex:none; border:1px solid rgba(244,244,241,.5); }.pillar-check::after { content:""; width:5px; height:8px; margin-top:-2px; border:solid var(--pine); border-width:0 2px 2px 0; opacity:0; transform:rotate(45deg); }.pillar-chip[aria-pressed="true"] { border-color:var(--mint); color:var(--chalk); background:rgba(127,209,168,.16); }.pillar-chip[aria-pressed="true"] .pillar-check { border-color:var(--mint); background:var(--mint); }.pillar-chip[aria-pressed="true"] .pillar-check::after { opacity:1; }.pillar-chip:hover,.pillar-chip:focus-visible { border-color:var(--mint); color:var(--chalk); }.builder-note,.data-status { margin:16px 0 0; color:#b7ccc1; font-size:11px; line-height:1.5; }.data-status { color:var(--mint); font:500 9px 'DM Mono',monospace; letter-spacing:.05em; text-transform:uppercase; }.session-actions { display:grid; gap:9px; margin-top:23px; padding-top:20px; border-top:1px solid rgba(244,244,241,.2); }.start-session { display:flex; align-items:center; justify-content:space-between; gap:14px; width:100%; padding:15px 16px; border:1px solid rgba(244,244,241,.46); background:transparent; color:var(--chalk); text-align:left; font-size:12px; font-weight:700; transition:background .16s ease,border-color .16s ease,color .16s ease; }.start-session span { color:var(--mint); font:500 9px 'DM Mono',monospace; letter-spacing:.07em; text-transform:uppercase; }.start-session.primary-start { border-color:var(--mint); background:var(--mint); color:var(--pine); }.start-session.primary-start span { color:var(--pine); }.start-session:hover,.start-session:focus-visible { border-color:var(--chalk); background:rgba(244,244,241,.12); }.start-session.primary-start:hover,.start-session.primary-start:focus-visible { background:#a1e1bc; }.start-session:disabled { cursor:not-allowed; opacity:.5; }
.new-session { flex:none; margin-bottom:1px; }.brief-carryover { margin:0 0 17px!important; padding:10px 12px; border-left:2px solid var(--mint); color:var(--chalk)!important; background:rgba(127,209,168,.09); font-size:12px!important; line-height:1.5!important; }

/* ------------------------------------------------ session consequences */
.event-panel,.report-panel { margin-top:22px; padding:clamp(27px,4vw,58px); border:1px solid var(--rule); background:var(--paper); }.event-panel { background:var(--pine); border-color:var(--pine); color:var(--chalk); }.event-panel .eyebrow { color:var(--mint); }.event-panel h2,.report-panel h2 { max-width:720px; margin:0 0 15px; color:var(--chalk); font-size:clamp(34px,4.5vw,58px); line-height:.98; }.event-panel p { max-width:760px; margin:0; color:#d4e1d9; font-size:14px; line-height:1.65; }.event-delta { display:inline-block; margin:23px 0 18px; padding:9px 11px; border:1px solid rgba(127,209,168,.45); color:var(--mint); font:500 10px 'DM Mono',monospace; letter-spacing:.06em; text-transform:uppercase; }.event-panel .floor-decision { width:min(320px,100%); border-color:rgba(244,244,241,.28); }
.report-panel { position:relative; background:var(--paper); }.report-panel h2 { color:var(--pine); }.report-head { max-width:780px; }.report-head .eyebrow { margin-bottom:9px; }.report-summary { max-width:680px; margin:0; color:var(--slate); font-size:14px; line-height:1.62; }.report-tabs { display:flex; gap:6px; margin:23px 0 18px; padding-bottom:10px; border-bottom:1px solid var(--rule); overflow-x:auto; scrollbar-width:none; }.report-tabs::-webkit-scrollbar { display:none; }.report-tabs button { flex:none; padding:8px 10px; border:1px solid transparent; color:var(--slate); background:transparent; font:500 9px 'DM Mono',monospace; letter-spacing:.07em; text-transform:uppercase; white-space:nowrap; }.report-tabs button[aria-pressed="true"] { color:var(--pine); border-color:var(--pine); background:#edf6ef; }.report-tabs button:hover,.report-tabs button:focus-visible { color:var(--pine); border-color:var(--rule); outline:none; }.report-view { min-height:0; }.report-readout-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }.report-card { min-width:0; padding:clamp(18px,2.5vw,27px); border:1px solid var(--rule); background:var(--chalk); }.report-card-label,.report-view-intro > .report-card-label { display:block; margin-bottom:15px; color:var(--slate); font:500 8px 'DM Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }.report-aura-readout { display:flex; align-items:center; gap:clamp(14px,2.2vw,24px); }.report-aura-ring { --aura-fill:0%; position:relative; isolation:isolate; display:grid; place-content:center; width:118px; height:118px; flex:none; border-radius:50%; background:conic-gradient(from -90deg,var(--mint) var(--aura-fill),#d8e0da 0); text-align:center; }.report-aura-ring::before { position:absolute; z-index:-1; inset:10px; border:1px solid var(--rule); border-radius:50%; background:var(--paper); content:""; }.report-aura-ring strong { color:var(--pine); font:500 35px Fraunces,serif; letter-spacing:-.06em; line-height:.9; }.report-aura-ring span { margin-top:4px; color:var(--slate); font:500 8px 'DM Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }.report-aura-readout h3,.report-brand-card h3,.report-view-intro h3 { margin:0; color:var(--pine); font:500 clamp(25px,2.7vw,34px) Fraunces,serif; letter-spacing:-.04em; line-height:.98; }.report-aura-readout p { margin:8px 0 0; color:var(--slate); font-size:12px; line-height:1.48; }.report-brand-card > p { margin:11px 0 0; color:var(--slate); font-size:12px; line-height:1.55; }.report-meters { display:grid; gap:12px; margin-top:18px; }.report-meter { padding-top:11px; border-top:1px solid var(--rule); }.report-meter > div:first-child { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }.report-meter > div:first-child span { color:var(--pine); font-size:12px; font-weight:700; }.report-meter > div:first-child strong { color:var(--slate); font:500 9px 'DM Mono',monospace; letter-spacing:.06em; text-transform:uppercase; }.report-meter > div:first-child strong.positive { color:var(--pine); }.report-meter > div:first-child strong.negative { color:var(--fault); }.report-meter-bar { position:relative; height:7px; margin:8px 0 6px; background:#d8e0da; overflow:hidden; }.report-meter-bar i { position:absolute; inset:0 auto 0 0; background:var(--mint); transition:width .35s ease; }.report-meter-bar i.negative { background:var(--fault); }.report-meter-bar b { position:absolute; top:-2px; bottom:-2px; left:50%; width:1px; background:var(--pine); opacity:.45; }.report-meter p { margin:0; color:var(--slate); font-size:10px; line-height:1.42; }.report-prompt { display:flex; align-items:flex-start; gap:15px; max-width:900px; margin-top:13px; padding:13px 15px; color:var(--pine); background:#edf6ef; border-left:3px solid var(--mint); }.report-prompt span { flex:none; color:var(--slate); font:500 8px 'DM Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }.report-prompt p { max-width:72ch; margin:0; font-size:11px; line-height:1.52; }.report-view-intro { max-width:720px; margin-bottom:16px; }.report-view-intro h3 { font-size:clamp(27px,3vw,38px); }.report-view-intro p { margin:9px 0 0; color:var(--slate); font-size:13px; line-height:1.55; }.report-review-list { display:grid; gap:8px; }.report-review-item { border:1px solid var(--rule); background:var(--chalk); }.report-review-item[open] { border-color:rgba(14,59,46,.46); }.report-review-item summary { display:grid; grid-template-columns:30px minmax(0,1fr) auto 14px; align-items:center; gap:10px; min-height:52px; padding:11px 14px; color:var(--pine); cursor:pointer; list-style:none; }.report-review-item summary::-webkit-details-marker { display:none; }.report-review-item summary:hover { background:#edf6ef; }.review-number,.review-meta { color:var(--slate); font:500 8px 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }.review-title { overflow:hidden; font-size:12px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }.review-meta { text-align:right; white-space:nowrap; }.review-chevron { color:var(--fault); font-size:21px; line-height:1; transition:transform .16s ease; }.report-review-item[open] .review-chevron { transform:rotate(90deg); }.report-review-body { padding:0 14px 16px; border-top:1px solid var(--rule); color:var(--slate); font-size:12px; line-height:1.55; }.report-review-body > p { margin:13px 0 0; }.review-quality { display:inline-block; margin:13px 0 0!important; color:var(--pine); font:500 8px 'DM Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }.review-quality.bad { color:var(--fault); }.review-block { margin-top:13px; padding:11px 12px; border-left:2px solid var(--brass); background:var(--paper); }.review-block.stronger { border-left-color:var(--mint); }.review-block.carryover { border-left-color:var(--fault); }.review-block span,.review-clue-heading { display:block; margin-bottom:5px; color:var(--pine); font:500 8px 'DM Mono',monospace; letter-spacing:.09em; text-transform:uppercase; }.review-block p { margin:0; }.review-ledger { margin:13px 0 0; padding:9px 11px; color:var(--pine); background:#edf6ef; font:500 10px 'DM Mono',monospace; letter-spacing:.02em; line-height:1.5; }.review-ledger.withheld { color:#865f28; background:#faf3e8; }.review-clue-heading { margin-top:16px; }.review-clue-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }.review-clue { min-width:0; padding:10px; border:1px solid var(--rule); background:var(--paper); }.review-clue.missed { border-style:dashed; background:#f3f5f0; }.review-clue > div { display:flex; justify-content:space-between; gap:8px; }.review-clue span,.review-clue b,.review-clue em { color:var(--pine); font:500 7.5px 'DM Mono',monospace; font-style:normal; letter-spacing:.07em; text-transform:uppercase; }.review-clue b { color:var(--brass); text-align:right; }.review-clue em { display:block; margin-top:6px; color:var(--fault); }.review-clue p { margin:7px 0 0; font-size:10px; line-height:1.46; }.review-room-reading { margin-top:14px; padding-top:13px; border-top:1px solid var(--rule); color:var(--pine); font-size:11px; line-height:1.56; }.report-event-item summary { background:#edf6ef; }.report-pillar-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.report-pillar-card { padding:17px; border:1px solid var(--rule); background:var(--chalk); }.report-pillar-card > div { display:flex; justify-content:space-between; gap:13px; align-items:baseline; }.report-pillar-card > div span { color:var(--pine); font-size:12px; font-weight:700; }.report-pillar-card > div strong { flex:none; color:var(--slate); font:500 8px 'DM Mono',monospace; letter-spacing:.06em; white-space:nowrap; }.report-pillar-card > p { margin:11px 0 13px; color:var(--slate); font-size:11px; line-height:1.5; }.report-pillar-card > p.solid { color:var(--pine); }.report-pillar-card small { color:var(--slate); font:500 8px 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }.report-pillar-card .report-essay-links { margin:5px 0 0; }.report-essay-links a { display:block; margin-top:4px; color:var(--pine); text-decoration-color:var(--mint); text-decoration-thickness:2px; text-underline-offset:3px; }
.report-essay-links a:first-child { margin-top:0; }.report-actions { display:flex; align-items:center; gap:18px; margin-top:18px; }.report-panel .floor-decision { width:auto; color:var(--pine); border-color:var(--rule); }.report-panel .floor-decision span { color:var(--fault); }.result-share-layer { position:absolute; z-index:6; inset:0; display:grid; place-items:center; padding:clamp(14px,4vw,34px); background:rgba(5,27,20,.7); backdrop-filter:blur(3px); }.result-share-card { position:relative; width:min(560px,100%); max-height:100%; overflow:auto; padding:clamp(26px,4vw,42px); color:var(--chalk); background:var(--pine); box-shadow:0 22px 62px rgba(4,24,17,.42); }.result-share-card .close-overlay { color:var(--chalk); }.result-share-card .eyebrow { color:var(--mint); }.share-rule { width:92px; height:3px; margin:19px 0 23px; background:var(--mint); }.share-kicker { margin:0 0 6px; color:#b9cfc6; font:500 8px 'DM Mono',monospace; letter-spacing:.11em; text-transform:uppercase; }.result-share-card h3 { max-width:12ch; margin:0; color:var(--chalk); font:500 clamp(39px,6vw,62px) Fraunces,serif; letter-spacing:-.055em; line-height:.9; }.share-copy { max-width:52ch; margin:18px 0 0; color:#d5e2da; font-size:13px; line-height:1.58; }.share-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:22px; border:1px solid rgba(244,244,241,.24); }.share-stats div { min-width:0; padding:14px; }.share-stats div + div { border-left:1px solid rgba(244,244,241,.24); }.share-stats span { display:block; color:var(--mint); font:500 8px 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }.share-stats strong { display:block; margin-top:7px; color:var(--chalk); font:500 27px Fraunces,serif; letter-spacing:-.05em; white-space:nowrap; }.share-cta { margin:22px 0 0; color:var(--mint); font:500 13px Fraunces,serif; }.share-actions { display:flex; align-items:center; gap:17px; margin-top:22px; }.result-share-card .floor-decision { color:var(--chalk); border-color:rgba(244,244,241,.35); }.result-share-card .floor-decision span { color:var(--mint); }.result-share-card .quiet-button { color:var(--chalk); }.result-share-card .quiet-button:hover,.result-share-card .quiet-button:focus-visible { color:var(--mint); }

/* -------------------------------------------------------- fixed play shell */
body.is-playing { overflow:hidden; }
.simulation-shell.is-playing { height:calc(100dvh - var(--site-header-h)); min-height:0; flex:1 1 auto; display:grid; grid-template-rows:auto minmax(0,1fr); padding-bottom:0; }
.simulation-shell.is-playing .game-shell { min-height:0; display:flex; flex-direction:column; }
.simulation-shell.is-playing .scene-head { flex:none; min-height:0; padding:13px 0 10px; }
.simulation-shell.is-playing .scene-head .eyebrow { margin-bottom:5px; font-size:8px; }
.simulation-shell.is-playing .scene-head :is(h1,h2) { font-size:clamp(26px,2.4vw,38px); line-height:1; }
.simulation-shell.is-playing .scenario-console { flex:none; margin-bottom:10px; }
.simulation-shell.is-playing .scenario-console > div,.simulation-shell.is-playing .console-brief { padding:10px 15px; }
.simulation-shell.is-playing .scenario-console .console-label { margin-bottom:4px; font-size:8px; }
.simulation-shell.is-playing .aura-value strong { font-size:24px; }
.simulation-shell.is-playing .aura-ticks { margin-top:7px; }
.simulation-shell.is-playing .console-brief { min-height:50px; }
.simulation-shell.is-playing .console-brief small { margin-top:2px; }
.simulation-shell.is-playing .console-intel p { margin-top:3px; }
.simulation-shell.is-playing .play-surface { position:relative; flex:1 1 auto; min-height:0; }
.simulation-shell.is-playing .play-surface > section { box-sizing:border-box; }
.simulation-shell.is-playing .experience { height:100%; min-height:0; }
.simulation-shell.is-playing .floor-stage { height:100%; min-height:0; }
.simulation-shell.is-playing .decision-panel,.simulation-shell.is-playing .outcome-panel,.simulation-shell.is-playing .event-panel,.simulation-shell.is-playing .report-panel { position:absolute; inset:0; height:auto; max-height:none; margin:0; overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
.simulation-shell.is-playing .decision-panel,.simulation-shell.is-playing .report-panel { padding:clamp(18px,3vw,34px) clamp(20px,4vw,58px); }
.simulation-shell.is-playing .outcome-panel,.simulation-shell.is-playing .event-panel { padding:clamp(22px,3.3vw,42px) clamp(20px,4vw,58px); }
.simulation-shell.is-playing .decision-panel { background:var(--paper); }
.simulation-shell.is-playing .choice-grid { gap:9px; }
.simulation-shell.is-playing .choice { min-height:0; padding:clamp(14px,1.8vw,20px); }
.simulation-shell.is-playing .choice p { margin-top:11px; font-size:12px; line-height:1.5; }
.simulation-shell.is-playing .scene-footer { flex:none; min-height:27px; padding:7px 2px; }
.simulation-shell.is-playing .game-shell.is-call .scene-head { display:none; }
.decision-scene-ribbon { display:grid; grid-template-columns:minmax(130px,.55fr) minmax(0,1.4fr) minmax(160px,.7fr); align-items:center; gap:15px; margin:0 0 19px; padding:10px 12px; border:1px solid var(--rule); background:#f3f5f0; }.decision-scene-ribbon span,.decision-scene-ribbon em { color:var(--slate); font:500 8px 'DM Mono',monospace; font-style:normal; letter-spacing:.08em; text-transform:uppercase; }.decision-scene-ribbon strong { color:var(--pine); font:500 19px Fraunces,serif; letter-spacing:-.03em; }.decision-scene-ribbon em { text-align:right; }
.simulation-shell.is-playing .report-rounds { margin:20px 0; }

@media (max-width:980px) { .setup-screen { grid-template-columns:1fr; min-height:0; padding:52px 4px; }.setup-copy { max-width:760px; }.session-builder { max-width:760px; }.setup-rules { max-width:690px; } }
@media (max-width:900px) {.simulation-shell.is-playing .topbar { min-height:64px; }.simulation-shell.is-playing .scene-head { padding:9px 0 7px; }.simulation-shell.is-playing .scenario-console > div,.simulation-shell.is-playing .console-brief { padding-top:7px; padding-bottom:7px; }.simulation-shell.is-playing .console-brief { min-height:42px; }.simulation-shell.is-playing .console-brief small { display:none; }.simulation-shell.is-playing .aura-ticks { margin-top:5px; }.simulation-shell.is-playing .scene-footer { min-height:22px; padding-top:4px; padding-bottom:4px; } }
@media (max-width:820px) { .floor-stage { height:650px; }.brief-panel { grid-template-columns:1fr; gap:15px; }.brief-facts dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }.brief-continue { max-width:340px; }.choice-grid { grid-template-columns:1fr; }.choice { min-height:auto; }.choice p { margin:8px 0 0; }.outcome-columns { grid-template-columns:1fr; gap:18px; }.report-readout-grid,.report-pillar-list { grid-template-columns:1fr; }.report-review-item summary { grid-template-columns:24px minmax(0,1fr) 12px; gap:8px; }.report-review-item .review-meta { grid-column:2; grid-row:2; text-align:left; }.report-review-item .review-chevron { grid-column:3; grid-row:1; }.review-clue-grid { grid-template-columns:1fr; } }
@media (max-width:600px) { :root { --site-header-h:62px; } }
@media (max-width:600px) { .simulation-shell { padding:0 12px 24px; }.topbar { min-height:64px; padding:0 3px; }.product-lockup { gap:10px; }.product-divider { height:25px; }.product-context { display:none; }.ridge-icon { width:27px; height:24px; }.ridgeline-mark { gap:7px; }.ridgeline-mark strong { font-size:10px; }.ridgeline-mark small { font-size:5.8px; }.session-name { font-size:20px; }.setup-screen { gap:31px; padding:36px 3px; }.setup-copy h1 { font-size:clamp(39px,12.2vw,56px); }.setup-lede { font-size:14px; }.setup-rules { grid-template-columns:1fr; gap:13px; margin-top:30px; }.session-builder { padding:25px 19px; }.session-builder h2 { font-size:31px; }.pillar-grid { grid-template-columns:1fr; }.scene-head { display:flex; padding:25px 4px 17px; }.new-session { font-size:8px; }.scenario-console { margin-bottom:13px; }.scenario-console > div,.console-brief { padding:14px 13px; }.console-brief { align-items:flex-start; flex-direction:column; gap:5px; }.console-brief small { display:none; }.console-brief em { font-size:8px; }.floor-stage { height:570px; }.floor-art { object-position:54% center; }.floor-title { top:17px; left:17px; }.floor-instruction { top:59px; left:17px; max-width:215px; font-size:11px; }.hotspot-label strong { font-size:10px; }.hotspot.business { top:24%; left:5%; }.hotspot.client { top:25%; left:54%; }.hotspot.team { top:66%; left:4%; }.hotspot.culture { top:67%; left:46%; }.hotspot.power { top:49%; left:67%; }.pin { width:25px; height:25px; }.floor-controls { left:13px; right:13px; bottom:13px; gap:14px; padding:10px 12px; }.floor-controls p { max-width:190px; font-size:10px; }.floor-decision { min-width:112px; gap:9px; font-size:8px; }.context-layer,.brief-layer { padding:12px; }.context-layer { align-items:end; }.context-panel,.brief-panel { width:100%; max-height:calc(100% - 2px); }.context-art { height:170px; }.context-copy { padding:18px; }.context-clue { font-size:12.5px; }.brief-panel { padding:26px 19px 24px; }.brief-copy h2 { font-size:32px; }.brief-copy p:not(.eyebrow) { font-size:13px; }.brief-facts dl { display:block; }.brief-facts dl div { padding:8px 0; }.decision-panel,.outcome-panel,.event-panel,.report-panel { margin-top:13px; padding:24px 18px; }.choice { padding:16px; }.scene-footer { padding:17px 2px 0; }.report-metrics { grid-template-columns:1fr; }.report-metrics div + div { border-top:1px solid var(--rule); border-left:0; }.report-metrics div { min-height:78px; }.report-metrics strong { font-size:32px; } }
@media (max-height:760px) and (min-width:601px) { .simulation-shell.is-playing .topbar { min-height:72px; }.simulation-shell.is-playing .scene-head { padding:9px 0 7px; }.simulation-shell.is-playing .scenario-console > div,.simulation-shell.is-playing .console-brief { padding-top:7px; padding-bottom:7px; }.simulation-shell.is-playing .console-brief { min-height:42px; }.simulation-shell.is-playing .console-brief small { display:none; }.simulation-shell.is-playing .aura-ticks { margin-top:5px; }.simulation-shell.is-playing .scene-footer { min-height:22px; padding-top:4px; padding-bottom:4px; } }
@media (max-width:600px) { .simulation-shell.is-playing .topbar { min-height:62px; }.simulation-shell.is-playing .scene-head { padding:8px 3px 7px; }.simulation-shell.is-playing .scene-head :is(h1,h2) { font-size:25px; }.simulation-shell.is-playing .scenario-console { margin-bottom:7px; }.simulation-shell.is-playing .scenario-console > div,.simulation-shell.is-playing .console-brief { padding:8px 11px; }.simulation-shell.is-playing .console-brief { min-height:0; gap:2px; }.simulation-shell.is-playing .console-brief b { font-size:11px; }.simulation-shell.is-playing .aura-value strong { font-size:22px; }.simulation-shell.is-playing .aura-ticks { margin-top:5px; }.simulation-shell.is-playing .console-intel p { font-size:8.5px; }.simulation-shell.is-playing .scene-footer { min-height:21px; padding:4px 1px; font-size:7px; }.simulation-shell.is-playing .scene-footer .quiet-button { font-size:7px; }.simulation-shell.is-playing .decision-panel,.simulation-shell.is-playing .outcome-panel,.simulation-shell.is-playing .event-panel,.simulation-shell.is-playing .report-panel { padding:15px 14px; }.decision-scene-ribbon { grid-template-columns:1fr; gap:4px; margin-bottom:14px; padding:9px 10px; }.decision-scene-ribbon strong { font-size:18px; }.decision-scene-ribbon em { text-align:left; }.simulation-shell.is-playing .decision-topline { margin-bottom:16px; }.simulation-shell.is-playing .decision-panel h2,.simulation-shell.is-playing .outcome-panel h2,.simulation-shell.is-playing .event-panel h2,.simulation-shell.is-playing .report-panel h2 { font-size:30px; }.simulation-shell.is-playing .decision-status { margin-bottom:13px; font-size:11px; }.simulation-shell.is-playing .choice { padding:13px; }.simulation-shell.is-playing .choice p { font-size:11.5px; line-height:1.45; }.simulation-shell.is-playing .outcome-columns { gap:14px; }.simulation-shell.is-playing .outcome-columns p,.simulation-shell.is-playing .event-panel p,.simulation-shell.is-playing .report-summary { font-size:12px; }.simulation-shell.is-playing .report-rounds { margin:15px 0; }.simulation-shell.is-playing .report-round { padding:9px 0; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }

/* The share card is deliberately a single-screen artifact: it is a compact
   handoff to the wider Situation Room, not another document to read. */
.result-share-layer { padding:12px; overflow:hidden; }
.result-share-card { width:min(520px,100%); max-height:none; overflow:visible; padding:20px clamp(22px,3.4vw,30px); }
.share-rule { width:72px; margin:12px 0 15px; }.share-kicker { margin-bottom:5px; font-size:7px; }.result-share-card h3 { font-size:clamp(34px,5.2vw,50px); }.share-copy { margin-top:12px; font-size:11.5px; line-height:1.48; }.share-stats { margin-top:14px; }.share-stats div { padding:10px 12px; }.share-stats span { font-size:7px; }.share-stats strong { margin-top:5px; font-size:23px; }.share-cta { margin-top:14px; font-size:12px; }.share-actions { margin-top:14px; }

/* Relationship climate is a qualitative reading, not a false numeric meter.
   The restrained portrait marks change in the room without turning the panel
   into a playful emoji system. */
.aura-detail { display:block; margin-top:4px; color:var(--slate); font-size:9px; line-height:1.3; }
.relationship-climate { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; align-content:center; border-left:1px solid var(--rule); }
.relationship-signal { --climate:var(--slate); --climate-wash:#eef1ec; min-width:0; display:grid; grid-template-columns:48px minmax(0,1fr); align-items:center; gap:9px; padding:2px 0; color:var(--climate); }
.relationship-signal[data-mood="frayed"] { --climate:var(--fault); --climate-wash:#faece8; }
.relationship-signal[data-mood="wary"] { --climate:#956d2f; --climate-wash:#f8f0e1; }
.relationship-signal[data-mood="unformed"] { --climate:var(--slate); --climate-wash:#edf0ec; }
.relationship-signal[data-mood="opening"] { --climate:#287353; --climate-wash:#e5f3e9; }
.relationship-signal[data-mood="earned"] { --climate:var(--pine); --climate-wash:#dceee3; }
.relationship-portrait { width:48px; height:48px; overflow:visible; }
.portrait-orbit { fill:var(--climate-wash); stroke:currentColor; stroke-width:1; }
.portrait-shoulders,.portrait-brow,.portrait-expression,.portrait-mark { fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; }
.portrait-shoulders { stroke-width:2.2; }.portrait-brow { stroke-width:1.5; }.portrait-expression { stroke-width:1.8; }.portrait-mark { stroke-width:1.3; opacity:.58; }
.portrait-head { fill:var(--chalk); stroke:currentColor; stroke-width:1.7; }
.portrait-expression { display:none; }.relationship-signal[data-mood="frayed"] .expression-low,.relationship-signal[data-mood="wary"] .expression-low { display:block; }.relationship-signal[data-mood="unformed"] .expression-neutral { display:block; }.relationship-signal[data-mood="opening"] .expression-high,.relationship-signal[data-mood="earned"] .expression-high { display:block; }
.relationship-copy { min-width:0; display:flex; flex-direction:column; }.relationship-copy > span { color:var(--slate); font:500 7px 'DM Mono',monospace; letter-spacing:.085em; line-height:1.25; text-transform:uppercase; }.relationship-copy strong { margin-top:3px; color:var(--climate); font:500 17px Fraunces,serif; letter-spacing:-.035em; line-height:.98; }.relationship-copy small { display:block; margin-top:4px; color:var(--slate); font-size:8.5px; line-height:1.35; }
.relationship-climate--report { margin-top:17px; padding-top:12px; border-top:1px solid var(--rule); border-left:0; }.relationship-climate--report .relationship-signal { grid-template-columns:45px minmax(0,1fr); }.relationship-climate--report .relationship-portrait { width:45px; height:45px; }.relationship-climate--report .relationship-copy strong { font-size:18px; }.relationship-climate--report .relationship-copy small { font-size:9px; }
.report-aura-readout #report-aura-detail { margin:8px 0 0; }.report-aura-readout #report-signals { margin-top:5px; font-size:10px; }.report-pillar-card > p small { display:block; margin-top:7px; font-size:7px; }
@media (max-width:600px) { .relationship-climate { gap:7px; }.relationship-signal { grid-template-columns:39px minmax(0,1fr); gap:6px; }.relationship-portrait { width:39px; height:39px; }.relationship-copy strong { font-size:14px; }.relationship-copy > span { font-size:6px; }.relationship-copy small { font-size:7.5px; }.simulation-shell.is-playing .relationship-copy small { display:none; }.simulation-shell.is-playing .relationship-signal { grid-template-columns:34px minmax(0,1fr); gap:5px; }.simulation-shell.is-playing .relationship-portrait { width:34px; height:34px; }.simulation-shell.is-playing .relationship-copy strong { font-size:13px; }.relationship-climate--report { grid-template-columns:1fr; }.relationship-climate--report .relationship-copy small { display:block; } }

/* Live Aura uses the same ring language as the final report, but measures the
   player against the decision potential reached so far rather than the whole
   unopened session. */
.console-aura-reading { display:flex; align-items:center; gap:11px; }.console-aura-ring { --aura-fill:0%; position:relative; isolation:isolate; display:grid; place-content:center; width:58px; height:58px; flex:none; border-radius:50%; background:conic-gradient(from -90deg,var(--mint) var(--aura-fill),#d8e0da 0); text-align:center; }.console-aura-ring::before { position:absolute; z-index:-1; inset:5px; border:1px solid var(--rule); border-radius:50%; background:var(--paper); content:""; }.console-aura-ring strong { color:var(--pine); font:500 18px Fraunces,serif; letter-spacing:-.06em; line-height:.9; }.console-aura-ring span { margin-top:3px; color:var(--slate); font:500 6px 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }.console-aura-reading p { max-width:27ch; margin:0; color:var(--slate); font-size:9px; line-height:1.35; }.aura-value,.aura-detail,.aura-ticks { display:none; }

/* Chance events happen on the practice floor: a contained interruption, not a
   detached page between scenes. */
.event-panel { position:relative; isolation:isolate; display:grid; place-items:center; min-height:100%; overflow:hidden; background:var(--pine-dark); }.event-art,.event-wash { position:absolute; inset:0; width:100%; height:100%; }.event-art { object-fit:cover; filter:saturate(.66) contrast(1.08) brightness(.5); }.event-wash { background:radial-gradient(circle at 74% 13%,rgba(127,209,168,.19),transparent 30%),linear-gradient(105deg,rgba(3,19,13,.93) 10%,rgba(4,28,20,.72) 64%,rgba(2,18,12,.88)); }.event-card { position:relative; z-index:1; width:min(780px,100%); padding:clamp(25px,4.7vw,58px); border:1px solid rgba(244,244,241,.34); color:var(--chalk); background:rgba(8,38,29,.72); box-shadow:0 24px 64px rgba(0,0,0,.32); backdrop-filter:blur(6px); }.event-card::before { position:absolute; top:0; left:0; width:82px; height:3px; background:var(--mint); content:""; }.event-card-top { display:flex; justify-content:space-between; align-items:baseline; gap:18px; padding-right:40px; }.event-card .eyebrow { color:var(--mint); }.event-card-top > span { color:#b9cfc6; font:500 8px 'DM Mono',monospace; letter-spacing:.08em; line-height:1.4; text-align:right; text-transform:uppercase; }.event-mark { display:flex; align-items:end; gap:5px; height:30px; margin:26px 0 17px; }.event-mark i { display:block; width:4px; background:var(--mint); }.event-mark i:nth-child(1) { height:11px; opacity:.45; }.event-mark i:nth-child(2) { height:23px; }.event-mark i:nth-child(3) { height:16px; background:var(--brass); }.event-card h2 { max-width:620px; margin:0 0 15px; color:var(--chalk); font-size:clamp(36px,5vw,62px); line-height:.94; }.event-card > p { max-width:64ch; color:#d7e3da; font-size:14px; line-height:1.65; }.event-card > .event-reading { margin:18px 0 0; padding:12px 14px; border-left:2px solid var(--mint); color:var(--chalk); background:rgba(244,244,241,.08); font-size:12px; line-height:1.55; }.event-card .event-delta { margin:21px 0 17px; color:var(--mint); border-color:rgba(127,209,168,.52); background:rgba(4,24,17,.2); }.event-card .floor-decision { width:min(310px,100%); border-color:rgba(244,244,241,.34); }

.assessment-path-card { display:flex; align-items:end; justify-content:space-between; gap:26px; margin-top:14px; padding:clamp(20px,3vw,30px); border:1px solid rgba(14,59,46,.3); color:var(--chalk); background:var(--pine); }.assessment-path-card .report-card-label { margin-bottom:9px; color:var(--mint); }.assessment-path-card h3 { max-width:520px; margin:0; color:var(--chalk); font:500 clamp(24px,2.7vw,34px) Fraunces,serif; letter-spacing:-.04em; line-height:1; }.assessment-path-card p { max-width:61ch; margin:10px 0 0; color:#c8d9d0; font-size:12px; line-height:1.55; }.assessment-path-link { display:inline-flex; flex:none; align-items:center; justify-content:space-between; gap:18px; min-width:190px; padding:11px 0; border-top:1px solid rgba(244,244,241,.36); color:var(--chalk); font:500 9px 'DM Mono',monospace; letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }.assessment-path-link span { color:var(--mint); font-size:16px; }.assessment-path-link:hover,.assessment-path-link:focus-visible { color:var(--mint); }
@media (max-width:600px) { .console-aura-reading p { display:none; }.console-aura-ring { width:46px; height:46px; }.console-aura-ring strong { font-size:15px; }.simulation-shell.is-playing .console-aura-ring { width:39px; height:39px; }.simulation-shell.is-playing .console-aura-ring strong { font-size:13px; }.event-card { padding:26px 20px; }.event-card-top { align-items:flex-start; flex-direction:column; gap:7px; }.event-card-top > span { text-align:left; }.event-card h2 { font-size:36px; }.event-card > p { font-size:12px; }.assessment-path-card { align-items:flex-start; flex-direction:column; gap:18px; }.assessment-path-link { width:100%; } }

/* The development path recommends two things per area: the reading behind the
   calls that went wrong, and the assessment that measures the same area. The
   assessment link is the action, so it sits slightly heavier than the reading. */
.report-pillar-card .report-assessment-link { margin:5px 0 0; }
.report-pillar-card .report-assessment-link a { font-weight:600; }
.report-mirror-card { border-color:var(--pine); }
