/* structure-charts.css — A Girl & Her Futures™
 * Animated SVG charts (structure-charts.js) and the structure slide types
 * (structure-slides.js). Prefixes: .sc- for charts, .ss- for slides.
 */

/* Chart */
.sc-wrap{position:relative;background:linear-gradient(180deg,var(--bg-ffffff,#fff), var(--warm));border:1px solid var(--border);border-radius:16px;padding:10px;margin-top:14px;box-shadow:0 10px 26px rgba(44,24,16,.06);}
.sc-svg{display:block;width:100%;height:auto;overflow:visible;}
.sc-grid line{stroke:rgb(var(--pink-rgb,244 130 154) / .10);stroke-width:1;}
.sc-candle{opacity:0;animation:scCandleIn .35s ease-out forwards;transform-box:fill-box;transform-origin:center bottom;}
@keyframes scCandleIn{from{opacity:0;transform:scaleY(.2);}to{opacity:1;transform:scaleY(1);}}
.sc-hide{display:none;}
.sc-in{animation:scPop .45s cubic-bezier(.3,1.6,.5,1) both;transform-box:fill-box;transform-origin:center;}
@keyframes scPop{0%{opacity:0;transform:scale(.6);}100%{opacity:1;transform:scale(1);}}
.sc-structure{stroke-dashoffset:0;}

/* Swing points: invisible until tappable or marked */
.sc-point .sc-dot{fill:var(--fg-ffffff,#fff);stroke:var(--purple);stroke-width:2.5;opacity:0;transition:opacity .2s, r .2s;}
.sc-point .sc-hit{fill:transparent;}
.sc-tappable .sc-point.sc-tap{cursor:pointer;}
.sc-tappable .sc-mark{pointer-events:none;}
.sc-tappable .sc-point.sc-tap .sc-dot{opacity:1;animation:scPulse 1.8s ease-in-out infinite;transform-box:fill-box;transform-origin:center;}
.sc-tappable .sc-point.sc-tap:hover .sc-dot{fill:var(--purple-pale);}
.sc-point.is-good .sc-dot{fill:var(--teal);stroke:var(--fg-2f8a7f,#2F8A7F);animation:none;opacity:1;}
.sc-point.is-bad .sc-dot{fill:var(--down,var(--pink));stroke:var(--dfg-c2475f,#C2475F);animation:none;opacity:1;}
@keyframes scPulse{0%,100%{transform:scale(1);}50%{transform:scale(1.25);}}
.sc-shake{animation:scShake .4s;}
@keyframes scShake{0%,100%{transform:translateX(0);}25%{transform:translateX(-6px);}75%{transform:translateX(6px);}}

/* Story stepper */
.ss-card h2{margin-bottom:6px;}
.ss-caption{min-height:52px;margin-top:14px;padding:14px 16px;border-radius:14px;background:var(--purple-pale);color:var(--dark);font-size:.92rem;line-height:1.55;}
.ss-caption:empty{display:none;}
.ss-caption strong{color:var(--purple);}
.ss-pop{animation:ssPop .35s ease-out;}
@keyframes ssPop{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
.ss-stepper{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;}
.ss-pips{display:flex;gap:6px;}
.ss-pips span{width:8px;height:8px;border-radius:50%;background:var(--border);transition:background .2s, transform .2s;}
.ss-pips span.on{background:var(--pink);transform:scale(1.15);}
.ss-next{border:none;border-radius:999px;padding:11px 20px;background:var(--ink-bg,var(--dark));color:var(--fg-ffffff,#fff);font-weight:700;font-family:var(--font-body);cursor:pointer;font-size:.86rem;}
.ss-next:hover{background:var(--bg-4a3226,#4a3226);}

/* Rounds, prompts, chips */
.ss-round-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:6px;}
.ss-round{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);}
.ss-hint{font-size:.74rem;color:var(--muted);}
.ss-prompt{font-weight:700;color:var(--dark);margin:8px 0 0;}
.ss-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;}
.ss-chip{border:2px solid transparent;border-radius:999px;padding:9px 18px;font-weight:800;font-size:.9rem;font-family:var(--font-body);cursor:pointer;color:var(--fg-ffffff,#fff);transition:transform .12s, box-shadow .12s;}
.ss-chip-up{background:var(--teal);}
.ss-chip-down{background:var(--down,var(--pink));}
.ss-chip-purple{background:var(--purple);}
.ss-chip.on{transform:translateY(-2px) scale(1.06);box-shadow:0 0 0 3px var(--ln-ffffff,#fff), 0 0 0 5px var(--dark);}
.ss-chip:disabled{opacity:.5;cursor:default;transform:none;box-shadow:none;}

/* Flash sort */
.ss-flash-top{display:flex;justify-content:space-between;align-items:center;margin-top:6px;}
.ss-streak{font-size:.8rem;font-weight:700;color:var(--muted);padding:5px 12px;border-radius:999px;background:var(--cream);transition:all .2s;}
.ss-streak.hot{background:var(--peach-pale);color:var(--fg-b86e12,#B86E12);transform:scale(1.06);}
.ss-progress{height:6px;border-radius:3px;background:var(--border);margin-top:10px;overflow:hidden;}
.ss-progress div{height:100%;width:0;background:linear-gradient(90deg,var(--pink),var(--peach));transition:width .4s;}
.ss-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:14px;}
.ss-opt{border:1.5px solid var(--border);border-radius:14px;background:var(--bg-ffffff,#fff);padding:14px 10px;font-weight:700;font-size:.86rem;font-family:var(--font-body);color:var(--dark);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;transition:border-color .15s, transform .12s;}
.ss-opt span{font-size:1.3rem;}
.ss-opt:hover:not(:disabled){border-color:var(--pink-light);transform:translateY(-1px);}
.ss-opt.correct{background:var(--teal-pale);border-color:var(--teal);color:var(--fg-1a6b63,#1a6b63);}
.ss-opt.wrong{background:var(--down-pale,var(--pink-pale));border-color:var(--down,var(--pink));color:var(--dfg-a84060,#a84060);}
.ss-opt:disabled{cursor:default;}
.ss-score{padding:46px 10px;text-align:center;background:var(--cream);border-radius:16px;margin-top:14px;color:var(--muted);font-weight:700;}
.ss-score-big{font-family:var(--font-display);font-size:3rem;font-weight:900;color:var(--dark);}

/* Section game levels */
.sg-level{display:flex;align-items:center;gap:12px;margin-bottom:-4px;}
.sg-level-badge{flex:none;width:44px;height:44px;border-radius:14px;background:var(--ink-bg,var(--dark));color:var(--fg-ffffff,#fff);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:900;font-size:1.1rem;}
.sg-level-name{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--pink);}
.sg-level-title{font-family:var(--font-display);font-weight:800;font-size:1.15rem;color:var(--dark);}
.sg-ladder{display:flex;gap:6px;margin:4px 0 2px;}
.sg-ladder span{flex:1;height:8px;border-radius:4px;background:var(--border);}
.sg-ladder span.on{background:linear-gradient(90deg,var(--teal),var(--purple));}
.sg-ladder span.cur{background:var(--pink);}

/* Section welcome card on the lessons page */
.sec-welcome{background:linear-gradient(135deg,var(--pink-pale),var(--purple-pale));border:1px solid var(--border);border-radius:18px;padding:20px 22px;margin:4px 0 14px;}
.sec-welcome-eyebrow{font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pink);margin-bottom:6px;}
.sec-welcome h3{font-family:var(--font-display);font-size:1.3rem;margin:0 0 8px;color:var(--dark);}
.sec-welcome p{font-size:.86rem;line-height:1.6;color:var(--text);margin:0 0 8px;}
.sec-welcome .sec-welcome-big{font-family:var(--font-display);font-weight:900;font-size:1.1rem;letter-spacing:.02em;color:var(--purple);}
.sec-welcome .sec-welcome-quote{font-style:italic;color:var(--muted);}
.sec-welcome-mission{margin-top:12px;background:var(--bg-ffffff,#fff);border-radius:14px;padding:12px 14px;font-size:.86rem;font-weight:700;color:var(--dark);}
.sec-welcome-mission span{display:block;font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--pink);margin-bottom:3px;}
.sec-welcome-progress{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:.76rem;color:var(--muted);font-weight:700;}
.sec-welcome-dots{display:flex;gap:5px;}
.sec-welcome-dots i{width:10px;height:10px;border-radius:50%;border:2px solid var(--pink-light);}
.sec-welcome-dots i.on{background:var(--pink);border-color:var(--pink);}
.sec-welcome-goals{margin:10px 0 0;padding-left:18px;font-size:.8rem;color:var(--text);line-height:1.6;}

/* Section complete: phase progress + next up */
.sw-phase{margin-top:14px;text-align:left;}
.sw-phase-row{display:flex;justify-content:space-between;font-size:.82rem;padding:5px 0;color:var(--text);}
.sw-phase-bar{height:10px;border-radius:5px;background:var(--border);overflow:hidden;margin-top:8px;}
.sw-phase-bar div{height:100%;background:linear-gradient(90deg,var(--pink),var(--purple));}
.sw-next-teaser p{margin:6px 0;}
.lw-complete .sw-phase-row{color:rgba(255,255,255,.85);}
.lw-complete .sw-phase-bar{background:rgb(var(--glass-rgb,255 255 255) / .15);}

/* ── Phase 2 chart-reading lab additions ─────────────────────────── */
.sc-dim{opacity:.13;transition:opacity .35s;}
.sc-candles,.sc-structure,.sc-labels g{transition:opacity .35s;}
.sc-point.is-hover .sc-dot{opacity:1;fill:var(--purple-pale);stroke:var(--purple);r:12;animation:none;}
.sc-dropping .sc-point .sc-dot{opacity:.9;}
.sc-draw{stroke-dasharray:600;animation:scDraw .8s ease-out both;}
.sc-compare .sc-draw[stroke-dasharray="6 5"]{animation:none;}
@keyframes scDraw{from{stroke-dashoffset:600;}to{stroke-dashoffset:0;}}

/* View toggles: Candles / Structure, All / Relevant, External / Internal / Both */
.ss-views{margin-top:14px;}
.ss-views-off{display:none;}
.ss-views-row{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--cream);border:1px solid var(--border);flex-wrap:wrap;}
.ss-view{border:none;background:transparent;border-radius:999px;padding:8px 16px;font-family:var(--font-body);font-weight:800;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);cursor:pointer;transition:background .2s,color .2s,box-shadow .2s;}
.ss-view.on{background:var(--bg-ffffff,#fff);color:var(--dark);box-shadow:0 2px 10px rgba(44,24,16,.10);}
.ss-view:hover:not(.on){color:var(--dark);}
.ss-view-text{display:none;font-size:.82rem;color:var(--text);margin-top:8px;line-height:1.5;}
.ss-view-text.show{display:block;animation:ssPop .3s ease-out;}

/* Questions asked mid-sequence */
.ss-ask:empty{display:none;}
.ss-ask .ls-check{margin-top:12px;}
.ls-tap-row-4{grid-template-columns:repeat(2,1fr);}

/* Difficulty tag on tap rounds */
.ss-tag{display:none;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:var(--purple-pale);color:var(--purple);}
.ss-tag.show{display:inline-block;}

/* Draggable labels */
.ss-chip{touch-action:none;user-select:none;-webkit-user-select:none;}
.ss-chip-lifted{opacity:.35;}
.ss-ghost{position:fixed;z-index:9999;pointer-events:none;transform:translate(-50%,-130%) rotate(-4deg) scale(1.12);box-shadow:0 10px 24px rgba(44,24,16,.25);}

/* Flash sort streak: subtle */
.ss-streak{letter-spacing:.08em;font-size:.72rem;}
.ss-streak.bump{animation:ssBump .35s ease-out;}
@keyframes ssBump{50%{transform:scale(1.12);}}
.ss-opts-4{grid-template-columns:repeat(2,1fr);}
@media (min-width:640px){.ss-opts-4{grid-template-columns:repeat(4,1fr);}}
.ss-slide-in{animation:ssSlideIn .35s ease-out;}
@keyframes ssSlideIn{from{opacity:0;transform:translateX(18px);}to{opacity:1;transform:none;}}
.ss-again{display:block;margin:10px auto 0;border:none;background:none;color:var(--purple);font-weight:800;font-family:var(--font-body);cursor:pointer;}

/* Structure Builder: near full-screen lab */
body.sg-lab .lw-wrap,body.sg-lab #lwWrap{max-width:980px;}
.sg-stage{background:radial-gradient(120% 90% at 0% 0%,var(--pink-pale),transparent 60%),radial-gradient(100% 80% at 100% 100%,var(--purple-pale),transparent 60%),var(--bg-ffffff,#fff);border:1px solid var(--border);border-radius:24px;padding:22px 22px 6px;box-shadow:0 18px 50px rgba(44,24,16,.08);}
.sg-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;}
.sg-title{font-family:var(--font-display);font-weight:900;font-size:1.5rem;color:var(--dark);letter-spacing:.01em;}
.sg-tagline{color:var(--muted);font-size:.86rem;margin-top:2px;}
.sg-meter{display:flex;flex-direction:column;align-items:flex-end;gap:6px;}
.sg-dots{font-size:.74rem;font-weight:800;letter-spacing:.12em;color:var(--dark);}
.sg-dots i{font-style:normal;color:var(--border);margin-left:3px;}
.sg-dots i.on{color:var(--purple);}
.sg-dots i.cur{color:var(--pink);}
.sg-acc{font-size:.72rem;font-weight:700;color:var(--muted);}
.sg-stage .sg-level{margin:16px 0 0;}
.sg-goal{margin-top:10px;font-size:.86rem;color:var(--text);line-height:1.55;}
.sg-body .lw-card{box-shadow:none;}
.sg-restart{display:block;margin:6px auto 0;border:none;background:none;color:var(--muted);font-size:.78rem;font-weight:700;font-family:var(--font-body);cursor:pointer;}
.sg-restart:hover{color:var(--dark);}
.sg-done{text-align:center;padding:34px 22px;}
.sg-done-check{width:76px;height:76px;margin:0 auto 12px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--purple));color:var(--fg-ffffff,#fff);font-size:2.4rem;display:flex;align-items:center;justify-content:center;animation:scPop .6s cubic-bezier(.3,1.6,.5,1) both;}
.sg-done h2{font-family:var(--font-display);font-size:1.6rem;letter-spacing:.04em;}
.sg-done-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0;}
.sg-done-stats div{background:var(--cream);border-radius:14px;padding:12px 6px;font-size:.72rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;}
.sg-done-stats b{display:block;font-family:var(--font-display);font-size:1.4rem;color:var(--dark);letter-spacing:0;text-transform:none;}
.sg-concepts{text-align:left;margin-top:6px;}
.sg-concept{display:grid;grid-template-columns:1fr 120px 42px;gap:10px;align-items:center;font-size:.8rem;padding:4px 0;color:var(--text);}
.sg-concept-bar{height:8px;border-radius:4px;background:var(--border);overflow:hidden;}
.sg-concept-bar div{height:100%;background:linear-gradient(90deg,var(--teal),var(--purple));}
.sg-concept b{text-align:right;color:var(--dark);}
.sw-review{margin-top:14px;text-align:left;background:var(--peach-pale);border-radius:14px;padding:12px 14px;font-size:.84rem;color:var(--dark);}
.sw-review ul{margin:6px 0 0;padding-left:18px;}
.sc-halo,.sc-labels > text,.sc-hlines text,.sc-boxes text{paint-order:stroke;stroke:var(--fg-ffffff,#fff);stroke-width:4px;stroke-linejoin:round;}
.sg-dots i{font-size:1rem;vertical-align:-1px;}
.sg-done-line{max-width:560px;margin:8px auto 0;color:var(--text);line-height:1.6;}
.sg-body .ss-card{padding-top:16px;}
.sg-body .lw-card{border:none;background:transparent;box-shadow:none;padding:0;margin-top:14px;}
@media (max-width:600px){
  .sg-stage{padding:16px 14px 6px;border-radius:20px;}
  .sg-meter{align-items:flex-start;}
  .sc-wrap{padding:4px;border-radius:12px;}
  .ss-view{padding:7px 11px;font-size:.66rem;}
}

/* ── Price lab (shared/price-lab.js) ─────────────────────────────────── */
.pl-card h2{margin-bottom:6px;}
.pl-stage{display:grid;grid-template-columns:1fr;gap:14px;margin-top:12px;}
.pl-main .sc-wrap{margin-top:0;}
.pl-side{display:flex;flex-direction:column;gap:12px;}
/* Big chart first (like Section 4); story / evidence panels sit underneath as a compact row. */
@media (min-width:760px){.pl-card .pl-side{margin-top:14px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start;}}
.pl-story,.pl-evidence{background:linear-gradient(180deg,var(--bg-ffffff,#fff),var(--warm));border:1px solid var(--border);border-radius:16px;padding:12px 14px;}
.pl-panel-title{font-size:.64rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--purple);margin-bottom:6px;}
.pl-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 0;border-bottom:1px dashed var(--border);font-size:.8rem;}
.pl-row:last-child{border-bottom:none;}
.pl-row-label{color:var(--muted);font-weight:600;}
.pl-row-val{font-weight:800;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;padding:4px 9px;border-radius:999px;text-align:right;}
.pl-tone-up{background:var(--teal-pale);color:var(--fg-1f6f66,#1f6f66);}
.pl-tone-down{background:var(--down-pale,var(--pink-pale));color:var(--dfg-a84060,#a84060);}
.pl-tone-purple{background:var(--purple-pale);color:var(--fg-4b44a3,#4b44a3);}
.pl-tone-gold{background:var(--peach-pale);color:var(--fg-b86e12,#B86E12);}
.pl-tone-muted{background:var(--cream);color:var(--muted);}
.pl-flash{animation:plFlash .9s ease-out;}
@keyframes plFlash{0%{transform:scale(1.15);box-shadow:0 0 0 4px rgba(127,119,221,.25);}100%{transform:none;box-shadow:none;}}
.pl-evidence ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;}
.pl-evidence li{display:flex;gap:8px;font-size:.8rem;line-height:1.4;color:var(--muted);}
.pl-evidence li span{flex:none;width:16px;font-weight:900;color:var(--placeholder);}
.pl-evidence li.on{color:var(--text);}
.pl-evidence li.on span{color:var(--teal);}
.pl-conclusion{margin-top:10px;background:var(--purple-pale);border-radius:12px;padding:9px 11px;font-size:.8rem;font-weight:800;color:var(--fg-4b44a3,#4b44a3);line-height:1.4;}
.pl-conclusion span{display:block;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;opacity:.75;margin-bottom:2px;}
.pl-caption{margin-top:14px;padding:13px 16px;border-radius:14px;background:var(--purple-pale);color:var(--dark);font-size:.92rem;line-height:1.55;}
.pl-caption:empty{display:none;}
.pl-pop{animation:ssPop .35s ease-out;}
.pl-asks:empty{display:none;}
.pl-ask{margin-top:14px;}
.pl-q{font-weight:800;color:var(--dark);font-size:.98rem;letter-spacing:.01em;}
.pl-opts{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;}
.pl-opts-col{flex-direction:column;}
.pl-opt{flex:1;min-width:130px;border:2px solid var(--border);background:var(--bg-ffffff,#fff);border-radius:14px;padding:12px 14px;font-weight:800;font-size:.88rem;font-family:var(--font-body);color:var(--dark);cursor:pointer;text-align:left;display:flex;align-items:center;gap:8px;transition:border-color .15s, transform .12s;}
.pl-opt:hover:not(:disabled){border-color:var(--pink-light);transform:translateY(-1px);}
.pl-opt.ok{border-color:var(--teal);background:var(--teal-pale);color:var(--fg-1f6f66,#1f6f66);}
.pl-opt.no{border-color:var(--down-light,var(--pink-light));background:var(--dbg-fff7f9,#fff7f9);color:var(--dfg-b58090,#b58090);text-decoration:line-through;text-decoration-thickness:1px;}
.pl-opt:disabled{cursor:default;}
.pl-nei{border-style:dashed;border-color:var(--purple-light);}
.pl-nei-mark{flex:none;width:22px;height:22px;border-radius:50%;background:var(--purple-pale);color:var(--purple);display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:.8rem;}
.pl-nei.ok .pl-nei-mark{background:var(--teal);color:var(--fg-ffffff,#fff);}
.pl-fb{display:none;margin-top:10px;border-radius:12px;padding:11px 14px;font-size:.86rem;line-height:1.5;}
.pl-fb.show{display:block;animation:ssPop .3s ease-out;}
.pl-fb.good{background:var(--teal-pale);color:var(--fg-1f6f66,#1f6f66);}
.pl-fb.bad{background:var(--down-pale,var(--pink-pale));color:var(--dfg-a84060,#a84060);}
.pl-hint{display:block;margin-top:4px;color:var(--muted);font-style:italic;}
.pl-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;}
.pl-reset{border:1px solid var(--border);background:var(--bg-ffffff,#fff);border-radius:999px;padding:9px 14px;font-weight:700;font-size:.78rem;color:var(--muted);cursor:pointer;font-family:var(--font-body);}
.pl-pips{display:flex;gap:6px;flex:1;justify-content:center;}
.pl-pips span{width:8px;height:8px;border-radius:50%;background:var(--border);}
.pl-pips span.on{background:var(--pink);}
.pl-next{border:none;border-radius:999px;padding:11px 20px;background:var(--ink-bg,var(--dark));color:var(--fg-ffffff,#fff);font-weight:800;font-family:var(--font-body);cursor:pointer;font-size:.86rem;}

/* Game debrief: YOUR READ / WHAT PRICE SHOWED / WHY */
.sg-debrief{margin-top:14px;display:grid;gap:10px;}
.sg-debrief div{border-radius:14px;padding:12px 14px;font-size:.88rem;line-height:1.5;background:var(--cream);}
.sg-debrief b{display:block;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:3px;}
.sg-debrief .sg-read-ok{background:var(--teal-pale);}
.sg-debrief .sg-read-no{background:var(--down-pale,var(--pink-pale));}
.sw-review a{color:var(--purple);font-weight:800;text-decoration:none;margin-left:6px;}
.pl-row-label{flex:none;max-width:48%;}
.pl-row-val{white-space:nowrap;}

/* ── Level Toolkit (shared/level-tools.js) ───────────────────────────── */
.lv-level{transition:opacity .35s ease;}
.lv-level.lv-hide{display:none;}
.lv-level.lv-gone{opacity:0;pointer-events:none;}
.lv-level.lv-pop{animation:lvPop .45s ease;}
@keyframes lvPop{0%{opacity:0}100%{opacity:1}}
.lv-tapping .lv-level.lv-tap{cursor:pointer;}
.lv-tapping .lv-level.lv-tap .lv-shape{animation:lvPulse 1.8s ease-in-out infinite;}
.lv-tapping .lv-level.lv-tap:hover .lv-shape{stroke-width:4;}
@keyframes lvPulse{0%,100%{opacity:1}50%{opacity:.55}}
.lv-level.is-picked .lv-shape{stroke:var(--purple);stroke-width:4;stroke-dasharray:none;animation:none;}
.lv-level.is-good .lv-shape{stroke:var(--fg-2f8a7f,#2F8A7F);stroke-width:4;stroke-dasharray:none;animation:none;}
.lv-level.is-bad .lv-shape{stroke:var(--dfg-c2475f,#C2475F);stroke-width:4;animation:none;}
.lv-zone.is-picked .lv-shape,.lv-zone.is-good .lv-shape{fill-opacity:.35;}
.lv-drawing svg{touch-action:none;cursor:ns-resize;}
.lv-draft{fill:var(--purple);fill-opacity:0;stroke:var(--purple);stroke-width:0;}
.lv-draft.on{fill-opacity:.22;stroke-width:1.5;}
.lv-draft.good{fill:var(--fg-7ecec4,#7ECEC4);stroke:var(--fg-2f8a7f,#2F8A7F);fill-opacity:.3;}
.lv-draft.bad{fill:var(--dfg-f4829a,#F4829A);stroke:var(--dfg-c2475f,#C2475F);}
.lv-target{fill:none;stroke:var(--fg-2f8a7f,#2F8A7F);stroke-width:2;stroke-dasharray:6 5;opacity:0;transition:opacity .4s;}
.lv-target.show{opacity:1;}
.lv-target.hint{opacity:.45;}
.lv-keep-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px 0 2px;flex-wrap:wrap;}
.lv-keep-n{font-weight:800;font-size:.85rem;color:var(--purple);}
.lv-lock{border:none;border-radius:999px;padding:10px 18px;font-weight:800;font-size:.85rem;background:var(--purple);color:var(--fg-ffffff,#fff);cursor:pointer;}
.lv-lock:disabled{opacity:.4;cursor:default;}
.lv-compare{margin:8px 0;}
.lv-explain{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:6px;}
.lv-explain li{background:var(--teal-pale);border-radius:12px;padding:8px 12px;font-size:.84rem;line-height:1.45;}
.lv-explain b{display:block;color:var(--fg-2f8a7f,#2F8A7F);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;}
.lv-counter{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0 2px;font-size:.8rem;font-weight:800;color:var(--muted);}
.lv-counter span{padding:4px 10px;border-radius:999px;background:var(--warm);}
.lv-counter span.on{background:var(--purple-pale);color:var(--purple);}
.lv-counter i{font-style:normal;opacity:.6;}
.lv-counter .lv-meaningful{background:var(--teal-pale);color:var(--fg-2f8a7f,#2F8A7F);margin-left:4px;}
.pl-purpose{margin-top:12px;border:1.5px solid var(--purple-light,#CECBF6);border-radius:16px;padding:12px 14px;background:linear-gradient(180deg,var(--bg-ffffff,#fff),var(--purple-pale));}
.pl-purpose-row{display:flex;justify-content:space-between;gap:14px;padding:6px 0;border-bottom:1px dashed var(--border);font-size:.84rem;}
.pl-purpose-row:last-of-type{border-bottom:none;}
.pl-purpose-row span{color:var(--muted);font-weight:700;flex:none;}
.pl-purpose-row b{text-align:right;color:var(--dark);}
.pl-purpose-note{margin-top:8px;font-size:.76rem;color:var(--muted);font-style:italic;}
.li-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 10px;}
.li-tab{border:1.5px solid var(--border);background:var(--bg-ffffff,#fff);border-radius:999px;padding:8px 14px;font-size:.78rem;font-weight:800;color:var(--text);cursor:pointer;}
.li-tab.seen{border-color:var(--purple-light,#CECBF6);}
.li-tab.on{background:var(--purple);border-color:var(--purple);color:var(--fg-ffffff,#fff);}
.li-panel{min-height:64px;}
.li-empty{color:var(--muted);font-size:.85rem;padding:8px 2px;}
.li-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;}
.li-cell{background:var(--warm);border-radius:14px;padding:10px 12px;font-size:.84rem;line-height:1.45;}
.li-cell b{display:block;color:var(--purple);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;}
.ac-card{border:1.5px solid var(--purple-light,#CECBF6);background:linear-gradient(180deg,var(--bg-ffffff,#fff),var(--purple-pale));}
.ac-card.ac-icc{border-color:var(--pink-light,#F9B8C6);background:linear-gradient(180deg,var(--bg-ffffff,#fff),var(--pink-pale));}
.ac-tag{display:inline-flex;align-items:center;gap:8px;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--purple);background:var(--bg-ffffff,#fff);border:1px solid var(--purple-light,#CECBF6);border-radius:999px;padding:6px 14px;margin-bottom:12px;}
.ac-icc .ac-tag{color:var(--pink-dark,#C2475F);border-color:var(--pink-light,#F9B8C6);}
.ac-versus{display:flex;align-items:center;justify-content:center;gap:14px;margin:12px 0;flex-wrap:wrap;}
.ac-versus div{background:var(--bg-ffffff,#fff);border:1.5px solid var(--border);border-radius:14px;padding:12px 16px;font-weight:800;text-align:center;flex:1 1 160px;}
.ac-versus b{font-size:1.8rem;color:var(--purple);}
.ac-body{font-size:.95rem;line-height:1.6;}
.ac-points{margin:8px 0 0;padding-left:18px;line-height:1.7;font-size:.9rem;}
.ac-foot{font-size:.82rem;color:var(--muted);margin-top:10px;}

/* ── Phase Final (shared/phase-final.js) ─────────────────────────────── */
.pf-intro h2{font-size:1.7rem;}
.pf-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 16px;}
.pf-chips span{background:var(--purple-pale);color:var(--purple);border-radius:999px;padding:5px 12px;font-size:.74rem;font-weight:800;}
.pf-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:6px;}
.pf-count{font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--pink-dark,#C2475F);}
.pf-skill{font-size:.72rem;font-weight:800;background:var(--warm);border-radius:999px;padding:4px 10px;color:var(--muted);}
.pf-bar{flex:1 1 100%;height:6px;background:var(--warm);border-radius:999px;overflow:hidden;}
.pf-bar div{height:100%;background:linear-gradient(90deg,var(--pink),var(--peach),var(--purple));transition:width .4s ease;}
.pf-body .lw-continue-btn.pf-next{margin-top:14px;}
.pf-model p{margin:4px 0 0;font-size:.88rem;line-height:1.55;}
.pf-skillgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin:14px 0;text-align:left;}
.pf-skillgrid div{display:flex;justify-content:space-between;gap:10px;border-radius:12px;padding:8px 12px;font-size:.82rem;background:var(--teal-pale);}
.pf-skillgrid div.no{background:var(--down-pale,var(--pink-pale));}

/* ── Phase completion ────────────────────────────────────────────────── */
.pc-hero{position:relative;overflow:hidden;border-radius:28px;padding:44px 28px 30px;text-align:center;color:var(--fg-ffffff,#fff);background:radial-gradient(circle at 50% 0%,var(--bg-4a2c22,#4A2C22) 0%,var(--bg-2c1810,#2C1810) 70%);box-shadow:0 24px 50px -24px rgba(44,24,16,.55);}
.pc-rays{position:absolute;inset:-40%;background:conic-gradient(from 0deg,transparent 0 20deg,rgb(var(--peach-rgb,245 168 87) / .10) 20deg 30deg,transparent 30deg 60deg,rgb(var(--pink-rgb,244 130 154) / .10) 60deg 70deg,transparent 70deg 110deg,rgba(127,119,221,.10) 110deg 120deg,transparent 120deg);animation:pcSpin 40s linear infinite;}
@keyframes pcSpin{to{transform:rotate(360deg)}}
.pc-hero > *:not(.pc-rays){position:relative;}
.pc-eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--peach);animation:pcRise .7s ease both;}
.pc-hero h1{font-family:var(--font-display);font-size:clamp(1.9rem,5vw,3rem);margin:10px 0 6px;line-height:1.1;animation:pcRise .8s .15s ease both;}
.pc-sub{font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;opacity:.8;font-weight:800;animation:pcRise .8s .3s ease both;}
.pc-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:24px;}
.pc-stat{background:rgb(var(--glass-rgb,255 255 255) / .07);border:1px solid rgb(var(--glass-rgb,255 255 255) / .12);border-radius:16px;padding:12px 10px;animation:pcRise .6s ease both;}
.pc-stat:nth-child(2){animation-delay:.45s}.pc-stat:nth-child(3){animation-delay:.55s}.pc-stat:nth-child(4){animation-delay:.65s}.pc-stat:nth-child(5){animation-delay:.75s}.pc-stat:nth-child(6){animation-delay:.85s}.pc-stat:nth-child(7){animation-delay:.95s}
.pc-stat b{display:block;font-size:1.05rem;color:var(--fg-ffffff,#fff);}
.pc-stat span{font-size:.72rem;opacity:.75;}
@keyframes pcRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.pc-badge-card{text-align:center;margin-top:18px;}
.pc-badge-eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--peach-dark,#B86E12);}
.pc-medal{position:relative;width:150px;height:150px;margin:14px auto 6px;overflow:hidden;border-radius:50%;animation:pcMedal 1s 1s cubic-bezier(.2,1.4,.4,1) both;}
.pc-medal svg{width:100%;height:100%;}
.pc-ring{stroke-dasharray:440;stroke-dashoffset:440;animation:pcDraw 1.2s 1.3s ease forwards;}
.pc-stairs{stroke-dasharray:140;stroke-dashoffset:140;animation:pcDraw .9s 1.9s ease forwards;}
.pc-shine{position:absolute;top:-20%;left:-60%;width:40%;height:140%;background:linear-gradient(90deg,transparent,rgb(var(--glass-rgb,255 255 255) / .75),transparent);transform:rotate(20deg);animation:pcShine 1.4s 2.7s ease;}
@keyframes pcMedal{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}
@keyframes pcDraw{to{stroke-dashoffset:0}}
@keyframes pcShine{from{left:-60%}to{left:130%}}
.pc-badge-card h2{font-size:1.6rem;margin:6px 0;}
.pc-quote{font-family:var(--font-display);font-style:italic;font-size:1.05rem;max-width:520px;margin:0 auto;line-height:1.5;}
.pc-saved{display:inline-block;margin-top:12px;font-size:.74rem;font-weight:800;color:var(--fg-2f8a7f,#2F8A7F);background:var(--teal-pale);border-radius:999px;padding:5px 12px;}
.pc-skills{display:grid;gap:8px;margin-top:8px;}
.pc-skill{position:relative;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--warm);font-size:.86rem;overflow:hidden;}
.pc-skill > *{position:relative;}
.pc-skill i{position:absolute;left:0;top:0;bottom:0;width:var(--w);opacity:.18;background:var(--purple);}
.pc-skill b{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;}
.pc-mastered b{color:var(--fg-2f8a7f,#2F8A7F)}.pc-mastered i{background:var(--bg-7ecec4,#7ECEC4);opacity:.35}
.pc-strong b{color:var(--purple)}
.pc-developing b{color:var(--fg-b86e12,#B86E12)}.pc-developing i{background:var(--bg-f5a857,#F5A857)}
.pc-none b{color:var(--muted);font-weight:700}
.pc-note{font-size:.76rem;color:var(--muted);margin-top:10px;}
.pc-review{margin-top:14px;border-top:1px dashed var(--border);padding-top:12px;}
.pc-review-row{background:var(--purple-pale);border-radius:14px;padding:10px 14px;margin-top:8px;}
.pc-review-row p{margin:0 0 4px;font-size:.88rem;}
.pc-review-row a{font-weight:800;color:var(--purple);text-decoration:none;font-size:.85rem;}
.pc-topics{margin:6px 0 10px;padding-left:18px;line-height:1.7;}
.pc-distinction{border-left:4px solid var(--pink);background:var(--pink-pale);border-radius:0 12px 12px 0;padding:10px 14px;font-weight:800;font-size:.9rem;margin:10px 0;}
.pc-preview{display:grid;gap:6px;margin:10px 0 16px;}
.pc-preview div{background:var(--warm);border-radius:12px;padding:8px 12px;font-size:.85rem;font-weight:700;}
@media (prefers-reduced-motion: reduce){.pc-rays,.pc-hero *,.pc-medal,.pc-ring,.pc-stairs,.pc-shine{animation:none!important;stroke-dashoffset:0!important;}}
.pr-can{background:linear-gradient(180deg,var(--bg-ffffff,#fff),var(--teal-pale));border:1px solid var(--border);border-radius:18px;padding:14px 16px;margin:6px 0 18px;}
.pr-can ul{list-style:none;padding:0;margin:6px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:4px 14px;font-size:.88rem;line-height:1.5;}
.pr-can li{color:var(--dark);}

/* ── Phase 3 (shared/phase3-tools.js + price-lab lens/nudge) ─────────── */
.sg-debrief .sg-know{background:var(--teal-pale);}
.sg-debrief .sg-unknown{background:var(--purple-pale);}
.p3-chart{margin:12px 0 4px;}
.p3-prompt{font-weight:900;font-size:.92rem;letter-spacing:.04em;margin:14px 0 8px;color:var(--dark);}
.p3-foot{display:none;margin-top:14px;border-radius:14px;padding:12px 16px;background:linear-gradient(180deg,var(--bg-ffffff,#fff),var(--purple-pale));border:1.5px solid var(--purple-light);font-size:.9rem;line-height:1.55;}
.p3-foot.show{display:block;animation:ssPop .35s ease-out;}
.p3-nudge{display:flex;gap:10px;align-items:flex-start;margin:10px 0;border-radius:12px;padding:10px 14px;background:var(--peach-pale,#FEF3E4);border:1px dashed var(--peach,#F5A857);font-size:.84rem;line-height:1.45;}
/* verdicts */
.p3-verdicts{display:grid;gap:10px;}
.p3-v{border:1.5px solid var(--border);border-radius:16px;padding:12px 14px;background:var(--bg-ffffff,#fff);animation:ssPop .3s ease-out;}
.p3-v.done{background:var(--cream);}
.p3-v-text{font-weight:700;font-size:.92rem;line-height:1.45;}
.p3-v-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.p3-v-btn{flex:1 1 90px;border:2px solid var(--border);background:var(--bg-ffffff,#fff);border-radius:999px;padding:9px 14px;font-weight:900;font-size:.8rem;letter-spacing:.06em;font-family:var(--font-body);color:var(--dark);cursor:pointer;transition:border-color .15s,transform .12s;}
.p3-v-btn:hover:not(:disabled){border-color:var(--pink-light);transform:translateY(-1px);}
.p3-v-btn.no{border-color:var(--down-light,var(--pink-light));background:var(--dbg-fff7f9,#fff7f9);color:var(--dfg-b58090,#b58090);text-decoration:line-through;}
.p3-v-btn:disabled{cursor:default;}
.p3-stamp{display:inline-block;border:2.5px solid currentColor;border-radius:10px;padding:5px 14px;font-weight:900;letter-spacing:.12em;font-size:.84rem;transform:rotate(-4deg);animation:p3Stamp .32s cubic-bezier(.2,1.6,.4,1);}
.p3-stamp-ok{color:var(--teal,#2F8A7F);background:var(--teal-pale);}
.p3-stamp-myth{color:var(--dfg-c2475f,#C2475F);background:var(--down-pale,var(--pink-pale));}
.p3-stamp-calm{color:var(--purple);background:var(--purple-pale);}
@keyframes p3Stamp{from{transform:scale(1.8) rotate(-4deg);opacity:0;}to{transform:scale(1) rotate(-4deg);opacity:1;}}
/* explore */
.p3-ex{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;}
.p3-ex-chip{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;border:2px dashed var(--purple-light);background:var(--bg-ffffff,#fff);border-radius:16px;padding:12px 14px;cursor:pointer;font-family:var(--font-body);color:var(--dark);transition:transform .12s,border-color .15s;}
.p3-ex-chip:hover{transform:translateY(-1px);border-color:var(--purple);}
.p3-ex-ic{font-size:1.3rem;}
.p3-ex-t{font-weight:900;font-size:.88rem;}
.p3-ex-b{display:none;font-size:.82rem;line-height:1.45;color:var(--muted);}
.p3-ex-chip.open{border-style:solid;border-color:var(--purple);background:linear-gradient(180deg,var(--bg-ffffff,#fff),var(--purple-pale));}
.p3-ex-chip.open .p3-ex-b{display:block;animation:ssPop .3s ease-out;}
.p3-ex-count{margin-top:8px;font-size:.76rem;color:var(--muted);font-weight:700;}
/* literacy vs entry */
.p3-le{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;}
.p3-le-col{border-radius:18px;padding:14px;border:1.5px solid var(--purple-light);background:linear-gradient(180deg,var(--bg-ffffff,#fff),var(--purple-pale));}
.p3-le-ent{border-color:var(--pink-light);background:linear-gradient(180deg,var(--bg-ffffff,#fff),var(--pink-pale));}
.p3-le-tag{font-size:.7rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--purple);}
.p3-le-ent .p3-le-tag{color:var(--fg-c2475f,#C2475F);}
.p3-le-sub{font-size:.78rem;color:var(--muted);margin:2px 0 8px;}
.p3-le-list{margin:0;padding-left:0;list-style:none;display:grid;gap:6px;}
.p3-le-list li{background:var(--bg-ffffff,#fff);border-radius:10px;padding:7px 10px;font-weight:800;font-size:.84rem;border:1px solid var(--border);}
.p3-le-list li span{display:block;font-weight:500;font-size:.76rem;color:var(--muted);margin-top:2px;}
.p3-le-new{animation:p3Stamp .3s ease-out;}
.p3-le-seq{margin:0 0 8px;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:4px;align-items:center;}
.p3-le-seq li{background:var(--bg-ffffff,#fff);border:1.5px solid var(--pink-light);border-radius:999px;padding:4px 10px;font-size:.74rem;font-weight:900;}
.p3-le-seq li+li::before{content:'→';margin-right:6px;color:var(--fg-c2475f,#C2475F);}
.p3-le-tray{border:2px dashed var(--border);border-radius:16px;padding:12px 14px;background:var(--bg-ffffff,#fff);}
.p3-le-item{font-weight:900;font-size:1rem;text-align:center;}
@media (max-width:600px){.p3-le{grid-template-columns:1fr;}}
/* joke checklist */
.p3-joke-sheet{position:relative;margin-top:12px;border-radius:16px;padding:14px 16px;background:var(--bg-ffffff,#fff);border:1.5px solid var(--border);box-shadow:0 6px 18px rgba(61,43,32,.06);overflow:hidden;}
.p3-joke-title{font-family:var(--font-script,var(--font-display));font-size:1.15rem;margin-bottom:6px;}
.p3-joke-sheet ul{list-style:none;margin:0;padding:0;display:grid;gap:5px;}
.p3-joke-sheet li{display:flex;align-items:center;gap:10px;font-size:.88rem;}
.p3-joke-box{width:18px;height:18px;border-radius:5px;border:2px solid var(--purple-light);flex:none;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:900;color:var(--fg-ffffff,#fff);}
.p3-joke-sheet li.on .p3-joke-box{background:var(--purple);border-color:var(--purple);}
.p3-joke-sheet li.on .p3-joke-box::after{content:'✓';}
.p3-joke-stamp{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-12deg) scale(2);opacity:0;border:4px solid var(--ln-c2475f,#C2475F);color:var(--fg-c2475f,#C2475F);background:rgb(var(--glass-rgb,255 255 255) / .88);padding:8px 18px;border-radius:12px;font-weight:900;font-size:1.5rem;letter-spacing:.1em;white-space:nowrap;pointer-events:none;}
.p3-joke-sheet.stamped .p3-joke-stamp{opacity:1;transform:translate(-50%,-50%) rotate(-12deg) scale(1);transition:transform .3s cubic-bezier(.2,1.6,.4,1),opacity .2s;}
.p3-joke-sheet.stamped ul{opacity:.45;}
.p3-joke-run{margin-top:12px;border:none;border-radius:999px;background:var(--purple);color:var(--fg-ffffff,#fff);font-weight:800;padding:11px 20px;cursor:pointer;font-family:var(--font-body);}
.p3-joke-said{font-weight:900;color:var(--fg-c2475f,#C2475F);letter-spacing:.08em;margin-bottom:6px;}
/* three lenses */
.p3-lens{margin-top:12px;border:1.5px solid var(--purple-light);border-radius:16px;padding:12px 14px;background:var(--bg-ffffff,#fff);}
.p3-lens-row{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(0,1.2fr);gap:10px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--border);}
.p3-lens-row:last-child{border-bottom:none;}
.p3-lens-ic{font-size:1.1rem;text-align:center;}
.p3-lens-row b{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;}
.p3-lens-row small{color:var(--muted);font-size:.72rem;}
.p3-lens-val{font-weight:800;font-size:.84rem;}
.p3-lens-execution .p3-lens-val{color:var(--purple);}
@media (max-width:600px){.p3-lens-row{grid-template-columns:24px 1fr;}.p3-lens-val{grid-column:2;}}
@media (prefers-reduced-motion: reduce){.p3-stamp,.p3-le-new,.p3-v,.p3-foot.show,.p3-ex-chip.open .p3-ex-b{animation:none!important;}.p3-joke-sheet.stamped .p3-joke-stamp{transition:none;}}
.p3-pair{display:flex;align-items:center;justify-content:center;gap:14px;margin:4px 0 14px;flex-wrap:wrap;}
.p3-pair span{background:var(--bg-ffffff,#fff);border:1.5px solid var(--border);border-radius:999px;padding:8px 16px;font-weight:900;font-size:.84rem;letter-spacing:.08em;}
.p3-pair b{font-size:1.4rem;color:var(--purple);}
.p3-memo{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:4px 0 14px;}
.p3-memo div{border-radius:16px;padding:14px;text-align:center;background:var(--teal-pale);}
.p3-memo div+div{background:var(--pink-pale);}
.p3-memo b{display:block;font-size:.95rem;letter-spacing:.08em;}
.p3-memo span{font-weight:800;color:var(--muted);}
.p3-list{margin:8px 0;padding-left:20px;line-height:1.7;}
/* price replay + delivery meter */
.pr-overlays{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px;}
.pr-ov{border:1.5px dashed var(--purple-light);background:var(--bg-ffffff,#fff);border-radius:999px;padding:6px 12px;font-size:.74rem;font-weight:800;letter-spacing:.06em;color:var(--purple);cursor:pointer;font-family:var(--font-body);}
.pr-ov.on{border-style:solid;background:var(--purple);color:var(--fg-ffffff,#fff);}
.pr-ov.on::before{content:'✓ ';}
.pr-charts{display:grid;gap:12px;margin-top:10px;}
.pr-n2{grid-template-columns:1fr 1fr;}
.pr-label{font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 6px 4px;}
.pr-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;}
.pr-btn{border:1.5px solid var(--border);background:var(--bg-ffffff,#fff);border-radius:999px;padding:8px 14px;font-weight:900;font-size:.82rem;cursor:pointer;color:var(--dark);font-family:var(--font-body);min-width:44px;}
.pr-btn:hover{border-color:var(--pink-light);}
.pr-play{background:var(--pink);border-color:var(--pink);color:var(--fg-ffffff,#fff);min-width:118px;}
.pr-slow.on{background:var(--teal-pale);border-color:var(--teal);}
.pr-count{margin-left:auto;font-size:.76rem;font-weight:800;color:var(--muted);font-variant-numeric:tabular-nums;}
.p3-meter{margin-top:10px;border:1.5px solid var(--border);border-radius:14px;padding:10px 12px;background:var(--bg-ffffff,#fff);}
.p3-meter-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--purple);}
.p3-meter-head em{font-style:normal;font-weight:700;letter-spacing:.04em;text-transform:none;color:var(--muted);}
.p3-meter-track{position:relative;height:10px;border-radius:999px;margin:10px 4px 6px;background:linear-gradient(90deg,var(--teal-light,#B6E6E0),var(--purple-light),var(--pink-light));}
.p3-meter-track i{position:absolute;top:50%;width:18px;height:18px;border-radius:50%;background:var(--bg-ffffff,#fff);border:3px solid var(--ink-bg,var(--dark));transform:translate(-50%,-50%);transition:left .5s ease;}
.p3-meter-ends{display:flex;justify-content:space-between;font-size:.68rem;color:var(--muted);font-weight:700;}
.p3-meter-word{margin-top:4px;font-weight:900;font-size:.84rem;text-align:center;}
@media (max-width:600px){.pr-n2{grid-template-columns:1fr;}.pr-count{width:100%;margin-left:0;}}
@media (prefers-reduced-motion: reduce){.p3-meter-track i{transition:none;}}
/* Phase 3 Section 3: evidence board, read builder, market read, free write, layers, adaptive review, clean chart */
.p3-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px;}
.p3-bcol{border-radius:14px;padding:10px;border:1.5px solid var(--border);background:var(--bg-ffffff,#fff);min-height:110px;}
.p3-b-shows{background:var(--teal-pale);border-color:var(--teal-light,#B6E6E0);}
.p3-b-infer{background:var(--purple-pale);border-color:var(--purple-light);}
.p3-b-cannot{background:var(--pink-pale);border-color:var(--pink-light);}
.p3-b-entry{background:var(--cream);border-style:dashed;}
.p3-btag{font-size:.64rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;display:flex;gap:6px;align-items:center;margin-bottom:8px;}
.p3-btag span{font-size:.9rem;}
.p3-bcol ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;}
.p3-bcol li{background:var(--bg-ffffff,#fff);border-radius:10px;padding:6px 8px;font-size:.78rem;font-weight:700;border:1px solid var(--border);}
.p3-bcol li span{display:block;font-weight:500;color:var(--muted);font-size:.72rem;margin-top:2px;}
@media (max-width:760px){.p3-board{grid-template-columns:1fr 1fr;}}
.p3-rb-sentence{margin:14px 0;padding:16px;border-radius:16px;background:var(--bg-ffffff,#fff);border:1.5px dashed var(--purple-light);font-size:1rem;line-height:2.1;font-weight:600;}
.p3-rb-slot{display:inline;border-bottom:2px dotted var(--muted);color:var(--muted);padding:2px 4px;border-radius:6px;}
.p3-rb-slot.cur{background:var(--peach-pale,#FEF3E4);border-bottom-color:var(--peach,#F5A857);color:var(--dark);}
.p3-rb-slot.filled{border-bottom:none;color:var(--dark);background:var(--teal-pale);animation:ssPop .3s ease-out;}
.p3-rb-sentence.done{border-style:solid;border-color:var(--teal);}
.p3-read{margin-top:12px;border:1.5px solid var(--purple-light);border-radius:16px;padding:12px 14px;background:linear-gradient(180deg,var(--bg-ffffff,#fff),var(--purple-pale));}
.p3-read-row{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border-bottom:1px dashed var(--border);font-size:.84rem;}
.p3-read-row span{color:var(--muted);font-weight:800;flex:none;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;}
.p3-read-row b{text-align:right;}
.p3-read-exec b{color:var(--purple);}
.p3-write .sw-textarea{width:100%;margin-top:8px;}
.p3-write-go{margin-top:8px;flex:none;}
.pf-adaptive{margin:12px 0;border-radius:16px;padding:14px;background:var(--cream);text-align:left;}
.pf-ad-row{display:flex;gap:10px;flex-wrap:wrap;padding:6px 0;font-size:.88rem;}
.pf-ad-row b{min-width:150px;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;}
.pf-ad-row.ok b{color:var(--teal,#2F8A7F);}
.pf-ad-row.no b{color:var(--dfg-c2475f,#C2475F);}
.pf-ad-links{display:grid;gap:6px;margin:8px 0;}
.pf-ad-links a{font-weight:800;font-size:.84rem;color:var(--purple);}
.pf-ad-cta{display:inline-block;margin-top:6px;text-decoration:none;}
.pc-clean{display:block;width:min(340px,90%);margin:0 auto 10px;}
.pc-clean .pc-ovl{animation:pcOvl 3.6s ease-in-out both;}
@keyframes pcOvl{0%{opacity:0}15%{opacity:1}30%{opacity:.2}45%{opacity:1}100%{opacity:0}}
@media (prefers-reduced-motion: reduce){.pc-clean .pc-ovl{animation:none;opacity:0;}}

/* ── Aristella guides every chart lesson (shared/guide.js) ─────────── */
.ag-guide{display:flex;gap:12px;align-items:flex-end;margin-top:14px;}
.ag-guide:has(.pl-caption:empty),.ag-guide:has(.ss-caption:empty){display:none;}
.ag-face{flex:none;width:68px;height:68px;border-radius:50%;overflow:hidden;background:linear-gradient(160deg,var(--pink-pale),var(--peach-pale,#FEF3E4));border:3px solid var(--ln-ffffff,#fff);box-shadow:0 6px 16px rgba(61,43,32,.14);}
.ag-face svg{display:block;width:100%;height:100%;}
.ag-bubble{position:relative;flex:1;min-width:0;background:var(--purple-pale);border-radius:18px 18px 18px 6px;padding:10px 16px 13px;}
.ag-bubble::before{content:'';position:absolute;left:-7px;bottom:10px;width:14px;height:14px;background:var(--purple-pale);transform:rotate(45deg);border-radius:3px;}
.ag-name{position:relative;font-size:.64rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--pink);margin-bottom:3px;}
.ag-bubble .pl-caption,.ag-bubble .ss-caption{position:relative;margin:0;padding:0;background:none;min-height:0;border-radius:0;}
@media (max-width:600px){.ag-face{width:50px;height:50px;}.ag-guide{gap:9px;}}
.pl-card > .pl-side{margin-top:14px;}

/* ── Aristella's clue cards (verdicts) ── */
.p3-case-chartwrap{position:relative;}
.p3-case-chartwrap .p3-chart{margin-top:8px;}
.p3-case-tag{position:absolute;top:18px;left:14px;z-index:2;font-size:.62rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--purple);background:var(--purple-pale);border-radius:999px;padding:4px 10px;}
.p3-case-guide{margin-top:10px;}
.p3-case-say{font-size:.95rem;line-height:1.5;color:var(--dark);}
.p3-case-say.good strong{color:var(--teal,#2F8A7F);}
.p3-case-say.bad strong{color:var(--dfg-c2475f,#C2475F);}
.p3-case-guide:has(.p3-case-say.good) .ag-bubble,.p3-case-guide:has(.p3-case-say.good) .ag-bubble::before{background:var(--teal-pale);}
.p3-case-guide:has(.p3-case-say.bad) .ag-bubble,.p3-case-guide:has(.p3-case-say.bad) .ag-bubble::before{background:var(--dbg-fff1f4,#fff1f4);}
.p3-clue{margin:16px 0 12px;background:var(--bg-ffffff,#fff);border:2px dashed var(--pink-light);border-radius:18px;padding:14px 18px;text-align:center;animation:ssPop .3s ease-out;}
.p3-clue-n{font-size:.66rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--pink);}
.p3-clue-text{font-family:var(--font-display,Georgia,serif);font-size:1.25rem;font-weight:700;line-height:1.35;margin-top:6px;color:var(--dark);}
.p3-tiles{display:grid;gap:10px;grid-template-columns:repeat(var(--n,2),minmax(0,1fr));}
.p3-tiles-2{--n:2}.p3-tiles-3{--n:3}.p3-tiles-4{--n:4}
.p3-tile{display:flex;flex-direction:column;align-items:center;gap:4px;border:2px solid var(--border);background:var(--bg-ffffff,#fff);border-radius:18px;padding:14px 10px;cursor:pointer;font-family:var(--font-body);color:var(--dark);transition:transform .12s,border-color .15s,box-shadow .15s;}
.p3-tile:hover:not(:disabled){transform:translateY(-2px);border-color:var(--pink-light);box-shadow:0 8px 18px -8px rgb(var(--pink-rgb,244 130 154) / .4);}
.p3-tile-ic{font-size:1.6rem;line-height:1;}
.p3-tile-t{font-weight:900;font-size:.8rem;letter-spacing:.06em;text-align:center;}
.p3-tile-s{font-size:.74rem;color:var(--muted,#8a7068);text-align:center;line-height:1.3;}
.p3-tile:disabled{cursor:default;}
.p3-tile.no{border-color:var(--down-light,var(--pink-light));background:var(--dbg-fff7f9,#fff7f9);opacity:.6;}
.p3-tile.no .p3-tile-t{text-decoration:line-through;}
.p3-tile.ok{border-color:var(--teal,#2F8A7F);background:var(--teal-pale);transform:scale(1.03);animation:p3Stamp .32s cubic-bezier(.2,1.6,.4,1);}
.p3-tile.dim{opacity:.4;}
.p3-case-extra{margin-top:10px;}
.p3-case-next{display:block;margin:12px auto 0;border:none;border-radius:999px;background:var(--ink-bg,var(--dark));color:var(--fg-ffffff,#fff);font-weight:800;font-size:.9rem;padding:11px 26px;cursor:pointer;font-family:var(--font-body);}
.p3-case-notes{margin-top:18px;border-top:1.5px solid var(--border);padding-top:12px;}
.p3-case-notes-h{font-size:.7rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--muted,#8a7068);margin-bottom:8px;}
.p3-case-cols{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));}
.p3-case-col{background:var(--cream);border-radius:14px;padding:8px;min-height:48px;}
.p3-case-col-h{font-size:.64rem;font-weight:900;letter-spacing:.1em;color:var(--dark);margin-bottom:6px;}
.p3-case-list{display:grid;gap:6px;}
.p3-case-note{font-size:.78rem;line-height:1.35;background:var(--bg-ffffff,#fff);border-radius:10px;padding:6px 9px;margin-top:5px;border-left:3px solid var(--teal,#2F8A7F);animation:ssPop .3s ease-out;}
.p3-case-note span{font-weight:800;font-size:.7rem;letter-spacing:.04em;color:var(--purple);}
.p3-case-calm{border-left-color:var(--purple);}
.p3-case-myth{border-left-color:var(--dln-c2475f,#C2475F);}
.p3-case-notes.closed{border-top-color:var(--teal,#2F8A7F);}
.p3-case-notes.closed .p3-case-notes-h{color:var(--teal,#2F8A7F);}
@media (max-width:600px){.p3-case-tag{display:none}.p3-tiles-3,.p3-tiles-4{--n:1}.p3-tiles-3 .p3-tile,.p3-tiles-4 .p3-tile{flex-direction:row;justify-content:flex-start;text-align:left;padding:11px 14px;gap:10px}.p3-tiles-3 :is(.p3-tile-t,.p3-tile-s),.p3-tiles-4 :is(.p3-tile-t,.p3-tile-s){text-align:left}.p3-tiles-3 .p3-tile-s,.p3-tiles-4 .p3-tile-s{margin-left:auto}.p3-tile{min-width:0}.p3-tile-t,.p3-tile-s{overflow-wrap:anywhere}.p3-clue-text{font-size:1.08rem}}
@media (prefers-reduced-motion: reduce){.p3-clue,.p3-tile.ok,.p3-case-note{animation:none!important;}}

/* ── Visual text: beats, versus cards, punchlines, status chips ── */
.vt-lead{font-size:1rem;color:var(--muted,#7a5c50);margin:4px 0 0;}
.vt-lead .p3-pair,.vt-lead .p3-memo{margin-top:6px;}
.vt-beats{display:grid;gap:10px;margin-top:16px;grid-template-columns:repeat(var(--c,3),minmax(0,1fr));}
.vt-cols-1{--c:1}.vt-cols-2{--c:2}.vt-cols-3{--c:3}
.vt-beat{display:flex;flex-direction:column;align-items:flex-start;gap:4px;background:linear-gradient(160deg,var(--bg-ffffff,#fff),var(--warm,#FDF8F5));border:1.5px solid var(--border);border-radius:18px;padding:14px 15px;animation:ssPop .35s ease-out both;}
.vt-ic{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:900;color:var(--purple);background:var(--purple-pale);margin-bottom:4px;}
.vt-beat:nth-child(3n+2) .vt-ic{background:var(--pink-pale);color:var(--pink);}
.vt-beat:nth-child(3n) .vt-ic{background:var(--teal-pale);color:var(--fg-1f6f66,#1f6f66);}
.vt-t{font-family:var(--font-display,Georgia,serif);font-weight:700;font-size:1.02rem;line-height:1.25;color:var(--dark);}
.vt-l{font-size:.82rem;line-height:1.4;color:var(--muted,#7a5c50);}
.vt-punch{display:flex;gap:10px;align-items:flex-start;margin-top:16px;background:var(--teal-pale);border-radius:14px;padding:11px 15px;font-weight:700;font-size:.92rem;line-height:1.45;color:var(--fg-1f5f58,#1f5f58);}
.vt-punch span{color:var(--teal,#2F8A7F);}
.vt-vs{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:stretch;margin-top:16px;}
.vt-vs-card{border-radius:22px;padding:18px 18px 16px;display:flex;flex-direction:column;gap:8px;}
.vt-vs-card.left{background:linear-gradient(160deg,var(--bg-fff4f7,#fff4f7),var(--bg-fde1e8,#fde1e8));border:1.5px solid var(--ln-f7c6d2,#f7c6d2);}
.vt-vs-card.right{background:linear-gradient(160deg,var(--bg-effaf8,#effaf8),var(--bg-d6f1ec,#d6f1ec));border:1.5px solid var(--ln-b5e3dc,#b5e3dc);}
.vt-vs-ic{font-size:1.7rem;line-height:1;}
.vt-vs-label{font-family:var(--font-display,Georgia,serif);font-weight:700;font-size:1.12rem;line-height:1.25;}
.vt-vs-card.left .vt-vs-label{color:var(--fg-b23a57,#B23A57);}
.vt-vs-card.right .vt-vs-label{color:var(--fg-1a6f64,#1a6f64);}
.vt-vs-points{display:flex;flex-direction:column;gap:6px;margin-top:2px;}
.vt-vs-points span{background:rgb(var(--glass-rgb,255 255 255) / .75);border-radius:10px;padding:7px 11px;font-size:.84rem;font-weight:600;line-height:1.35;color:var(--dark);}
.vt-vs-ne{align-self:center;width:42px;height:42px;border-radius:50%;background:var(--ink-bg,var(--dark));color:var(--fg-ffffff,#fff);display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:900;}
.pl-chips{display:flex;flex-wrap:wrap;gap:8px;}
.pl-chips .pl-row{flex:1 1 140px;flex-direction:column;align-items:flex-start;gap:5px;border:1px solid var(--border);border-radius:12px;padding:8px 10px;background:var(--bg-ffffff,#fff);}
.pl-chips .pl-row:last-child{border-bottom:1px solid var(--border);}
.pl-chips .pl-row-label{max-width:none;font-size:.72rem;}
.ac-chips{display:flex;flex-direction:column;gap:7px;margin-top:10px;}
.ac-chips span{background:var(--bg-ffffff,#fff);border-radius:12px;padding:9px 13px;font-size:.88rem;font-weight:600;line-height:1.4;border-left:3px solid var(--purple);}
.ac-body{font-size:.88rem!important;color:var(--muted,#7a5c50);}
@media (max-width:640px){.vt-beats{grid-template-columns:1fr;}.vt-beat{flex-direction:row;align-items:center;flex-wrap:wrap;column-gap:12px;padding:11px 13px}.vt-ic{margin:0;width:36px;height:36px}.vt-l{flex-basis:100%;padding-left:48px;margin-top:-4px}
 .vt-vs{grid-template-columns:1fr}.vt-vs-ne{justify-self:center;margin:-4px 0}}
@media (prefers-reduced-motion: reduce){.vt-beat{animation:none!important;}}
.pl-card .pl-side > .pl-story:has(+ .pl-ev-slot:empty),.pl-card .pl-side > :only-child{grid-column:1/-1;}
.pl-ev-slot:empty{display:none;}

/* ── Phase 4 ending: framework cinematic, the pause, METHOD UNLOCKED ── */
.pc-fw{position:relative;max-width:560px;margin:0 auto 14px;}
.pc-fw-chart{display:block;width:min(360px,92%);margin:0 auto;}
.pc-fw-chart .pc-fw-ovl{animation:pcFwOvl var(--fw-out,8s) ease-in-out both;}
.pc-fw-list{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:8px;animation:pcFwOut .8s ease-in var(--fw-out,8s) both;}
.pc-fw-g{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;align-items:center;}
.pc-fw-g b{font-size:.62rem;letter-spacing:.16em;color:var(--pink-light,#F9B8C6);margin-right:4px;}
.pc-fw-g span{font-size:.72rem;font-weight:800;background:rgb(var(--glass-rgb,255 255 255) / .12);color:var(--fg-ffffff,#fff);border:1px solid rgb(var(--glass-rgb,255 255 255) / .25);border-radius:999px;padding:3px 10px;opacity:0;animation:pcFwIn .4s ease-out both;}
.pc-fw-arrow{font-style:normal;color:rgba(255,255,255,.5);font-size:.8rem;}
.pc-fw-head{font-family:var(--font-display,Georgia,serif);font-size:1.5rem;font-weight:700;color:var(--fg-ffffff,#fff);text-align:center;margin-top:-34px;opacity:0;animation:pcFwIn .8s ease-out both;}
@keyframes pcFwIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
@keyframes pcFwOut{to{opacity:0;height:0;margin:0;overflow:hidden;}}
@keyframes pcFwOvl{0%{opacity:0;}12%{opacity:1;}85%{opacity:1;}100%{opacity:0;}}
.pc-pause{text-align:center;padding:28px 22px;}
.pc-pz{opacity:0;font-family:var(--font-display,Georgia,serif);font-size:1.15rem;margin:0 0 10px;color:var(--dark);}
.pc-pause.go .pc-pz{animation:pcFwIn .7s ease-out both;}
.pc-recap{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;font-family:var(--font-body);font-size:.82rem!important;}
.pc-recap li{background:var(--cream);border-radius:999px;padding:4px 11px;font-weight:700;}
.pc-ready{font-size:1.7rem!important;font-weight:700;color:var(--pink)!important;letter-spacing:.02em;margin-top:8px!important;}
.pc-method{background:radial-gradient(circle at 20% 0%,rgb(var(--pink-rgb,244 130 154) / .35),transparent 55%),radial-gradient(circle at 90% 100%,rgba(127,119,221,.4),transparent 55%),var(--bg-2c1810,#2C1810);color:var(--fg-ffffff,#fff);border:none;}
.pc-method h2{color:var(--fg-ffffff,#fff);font-size:1.7rem;}
.pc-method .lw-eyebrow{color:var(--pink-light,#F9B8C6);}
.pc-method p{color:rgba(255,255,255,.85);}
.pc-method .pc-distinction{background:rgb(var(--glass-rgb,255 255 255) / .08);color:var(--fg-ffffff,#fff);}
.pc-msec{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0;}
.pc-msec-c{background:rgb(var(--glass-rgb,255 255 255) / .08);border:1px solid rgb(var(--glass-rgb,255 255 255) / .18);border-radius:16px;padding:12px;text-align:left;}
.pc-msec-c small{display:block;font-size:.6rem;font-weight:900;letter-spacing:.16em;color:var(--pink-light,#F9B8C6);}
.pc-msec-c b{display:block;font-family:var(--font-display,Georgia,serif);font-size:1rem;margin:3px 0 6px;}
.pc-msec-c span{font-size:.76rem;line-height:1.5;color:rgba(255,255,255,.8);}
.pc-msec-c i{font-style:normal;color:var(--pink-light,#F9B8C6);}
@media (max-width:700px){.pc-msec{grid-template-columns:1fr;}}
@media (prefers-reduced-motion: reduce){.pc-fw-chart .pc-fw-ovl,.pc-fw-list,.pc-fw-g span,.pc-fw-head,.pc-pause .pc-pz{animation:none!important;opacity:1;}.pc-fw-list{display:none;}}

/* Visual section intro: heading + hook left, what-you'll-learn icon tiles right. */
.sec-vis-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:20px;align-items:center;}
.sec-vis h3{font-size:1.55rem;line-height:1.15;margin-bottom:6px;}
.sec-vis-hook{font-size:.95rem !important;color:var(--muted) !important;margin-bottom:12px !important;}
.sec-vis .sec-welcome-mission{margin:0;}
.sec-vis-label{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;}
.sec-vis-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.sec-vis-tile{display:flex;align-items:center;gap:10px;background:var(--bg-ffffff,#fff);border:1px solid var(--border);border-radius:14px;padding:10px 12px;box-shadow:0 4px 14px rgba(44,24,16,.05);}
.sec-vis-tile .v2-icon{display:inline-flex;align-items:center;justify-content:center;border-radius:30%;flex:none;}
.sec-vis-tile span:last-child{font-family:var(--font-display);font-weight:700;font-size:.92rem;line-height:1.25;color:var(--dark);}
.sec-vis .sec-welcome-progress{margin-top:14px;}
@media (max-width:720px){.sec-vis-top{grid-template-columns:1fr;}}
@media (max-width:480px){.sec-vis-tiles{grid-template-columns:1fr;gap:8px;}.sec-vis-tile{padding:8px 12px;}}
