@font-face{font-family:Kumbh Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/kumbh-sans-latin-600-normal-CL4gQMAm.woff2) format("woff2"),url(/assets/kumbh-sans-latin-600-normal-BmNIF_rA.woff) format("woff")}@font-face{font-family:Kumbh Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/kumbh-sans-latin-700-normal-CYB4l3qe.woff2) format("woff2"),url(/assets/kumbh-sans-latin-700-normal-C_MMDE4Y.woff) format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/poppins-latin-400-normal-cpxAROuN.woff2) format("woff2"),url(/assets/poppins-latin-400-normal-BOb3E3N0.woff) format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/poppins-latin-500-normal-C8OXljZJ.woff2) format("woff2"),url(/assets/poppins-latin-500-normal-DGXqpDMm.woff) format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/poppins-latin-600-normal-zEkxB9Mr.woff2) format("woff2"),url(/assets/poppins-latin-600-normal-BJdTmd5m.woff) format("woff")}:root{color-scheme:light;--black: #000000;--charcoal: #26272a;--gold: #ffc834;--gold-hover: #f2b705;--gold-ink: #1c1500;--gold-deep: #7a5600;--on-dark: #f2f2f3;--on-dark-soft: #b4b7bd;--on-dark-line: #4a4c51;--paper: #fbf6e9;--surface: #fffdf7;--sunken: #f5edd6;--ink: #1c1c1e;--ink-soft: #55575c;--line: #eadfc4;--line-strong: #85888e;--silver: #77797f;--inverse-bg: var(--black);--inverse-ink: var(--on-dark);--inverse-accent: var(--gold);--inverse-crisis: #ffb3a3;--own-bg: var(--charcoal);--own-ink: #ffffff;--agent-bg: var(--surface);--alert-bg: #fbe9e4;--alert-ink: #6b1a0f;--alert-line: #b3402c;--crisis-bg: #8e2a1f;--crisis-ink: #fff6f1;--crisis-edge: #8e2a1f;--crisis-text: #8e2a1f;--focus: var(--gold-deep);--focus-inner: var(--ink);--focus-w: 3px;--focus-offset: 2px;--c-mood: #9a6e00;--c-craving: #3a3c41;--c-bar: #3a3c41;--stage-none: #8d9096;--stage-emotional: #b88a00;--stage-mental: #c2410c;--stage-lapse: #8e2a1f;--strength: #3f6b4a;--strength-bg: #e3eee5;--risk-none-bg: #e7e8ea;--risk-none-ink: #2e3034;--risk-low-bg: #dce5ee;--risk-low-ink: #1f3346;--risk-elevated-bg: #ffe9a8;--risk-elevated-ink: #4a3400;--risk-high-bg: #f7d5cd;--risk-high-ink: #6b1a0f;--ind-use-bg: #8e2a1f;--ind-use-ink: #fff6f1;--ind-hope-bg: #f7d5cd;--ind-hope-ink: #6b1a0f;--ind-crave-bg: #fde0cc;--ind-crave-ink: #7a2e06;--ind-trig-bg: #ffe9a8;--ind-trig-ink: #4a3400;--ind-iso-bg: #eadcf0;--ind-iso-ink: #4b2160;--ind-miss-bg: #dde3ee;--ind-miss-ink: #263553;--ind-sleep-bg: #d8e9f2;--ind-sleep-ink: #12384b;--font-ui: "Kumbh Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;--fs-2xs: .72rem;--fs-xs: .78rem;--fs-sm: .85rem;--fs-md: .92rem;--fs-lead: 1.05rem;--step--1: var(--fs-sm);--step-0: 1rem;--step-1: 1.2rem;--step-2: 1.5rem;--step-3: 1.9rem;--step-4: clamp(2.4rem, 9vw, 3.6rem);--s-1: .25rem;--s-2: .5rem;--s-3: .75rem;--s-4: 1rem;--s-5: 1.5rem;--s-6: 2rem;--s-7: 3rem;--r-xs: 6px;--r-sm: 8px;--r-md: 14px;--r-lg: 20px;--r-xl: 24px;--r-pill: 999px;--shadow-card: 0 1px 0 rgb(0 0 0 / .04), 0 8px 24px -12px rgb(28 28 30 / .18);--shadow-pop: 0 18px 40px -16px rgb(40 30 0 / .35), 0 2px 6px rgb(0 0 0 / .06);--shadow-overlay: 0 30px 70px -20px rgb(30 20 0 / .45), 0 2px 8px rgb(0 0 0 / .08);--shadow-crisis: 0 10px 30px -14px rgb(60 10 5 / .55);--scrim: rgb(20 16 4 / .45);--tap: 44px;--control-h: 3rem;--control-h-sm: 2.6rem;--ease-out: cubic-bezier(.2, .7, .3, 1);--dur-1: .12s;--dur-2: .18s;--dur-3: .28s}:root[data-theme=dark]{color-scheme:dark;--gold-deep: #ffc834;--paper: #18181a;--surface: #232427;--sunken: #1d1e20;--ink: #e8e9eb;--ink-soft: #a9adb3;--line: #34363a;--line-strong: #6e7178;--silver: #8d9096;--inverse-bg: #f2efe6;--inverse-ink: #1c1c1e;--inverse-accent: #7a5600;--inverse-crisis: #8e2a1f;--own-bg: #3a3b40;--own-ink: #ffffff;--agent-bg: var(--surface);--alert-bg: #3a1a15;--alert-ink: #ffd3c8;--alert-line: #e0705a;--crisis-edge: #e0705a;--crisis-text: #ff9b85;--focus-inner: #000000;--c-mood: #ffc834;--c-craving: #c4c7cc;--c-bar: #ffc834;--stage-none: #6e7178;--stage-emotional: #ffc834;--stage-mental: #f0883e;--stage-lapse: #e0503f;--strength: #9fd0aa;--strength-bg: #22332a;--risk-none-bg: #2c2d31;--risk-none-ink: #dadce0;--risk-low-bg: #22303d;--risk-low-ink: #cfe0f0;--risk-elevated-bg: #4a3a0e;--risk-elevated-ink: #ffe08a;--risk-high-bg: #4e1d16;--risk-high-ink: #ffd3c8;--ind-use-bg: #e0705a;--ind-use-ink: #1a0905;--ind-hope-bg: #4e1d16;--ind-hope-ink: #ffd3c8;--ind-crave-bg: #4d2510;--ind-crave-ink: #ffcfae;--ind-trig-bg: #4a3a0e;--ind-trig-ink: #ffe08a;--ind-iso-bg: #3a2445;--ind-iso-ink: #ecd3f7;--ind-miss-bg: #24304a;--ind-miss-ink: #d3def5;--ind-sleep-bg: #1d3644;--ind-sleep-ink: #cde9f7;--shadow-card: 0 1px 0 rgb(0 0 0 / .3), 0 10px 28px -14px rgb(0 0 0 / .7);--shadow-pop: 0 18px 40px -16px rgb(0 0 0 / .7), 0 2px 6px rgb(0 0 0 / .3);--shadow-overlay: 0 30px 70px -20px rgb(0 0 0 / .75), 0 2px 8px rgb(0 0 0 / .3);--scrim: rgb(0 0 0 / .6)}.masthead,.hero,.as-head{--focus: var(--gold)}.crisis,.crisis-alert{--focus: #ffffff}*,*:before,*:after{box-sizing:border-box}html{font-size:106.25%;-webkit-text-size-adjust:100%}html:has(.app.dash){font-size:94%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);line-height:1.6;overflow-wrap:anywhere;-webkit-font-smoothing:antialiased}:root:not([data-theme=dark]) body{background:radial-gradient(120% 60% at 50% -10%,rgb(255 200 52 / .16),transparent 60%),var(--paper);background-attachment:fixed}img{max-width:100%}h1,h2,h3{font-family:var(--font-ui);font-weight:700;line-height:1.15;letter-spacing:-.015em;text-wrap:balance}h1{font-size:var(--step-3);margin:0 0 var(--s-3)}h2{font-size:var(--step-1);margin:0 0 var(--s-3)}p{margin:0 0 var(--s-4)}a{color:var(--ink);text-decoration-color:var(--gold-deep);text-decoration-thickness:2px;text-underline-offset:4px}a:hover{text-decoration-color:currentColor}::placeholder{color:var(--ink-soft);opacity:1}::selection{background:color-mix(in srgb,var(--gold) 45%,transparent);color:var(--ink)}:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}:where(a,summary,[tabindex]):focus-visible{border-radius:var(--r-xs)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.muted{color:var(--ink-soft);font-size:var(--fs-md);margin:0}.lede{color:var(--ink-soft);font-size:var(--fs-lead);margin:0 0 var(--s-5)}.loading,.route-loading{display:flex;align-items:center;gap:var(--s-2);color:var(--ink-soft);font-size:var(--fs-md);margin:0 0 var(--s-4)}.loading:before,.route-loading:before{content:"";flex:none;width:.55rem;height:.55rem;border-radius:50%;background:var(--gold-deep)}.route-loading{justify-content:center;padding:var(--s-6) var(--s-4)}@keyframes msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes typing{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@keyframes as-pulse{50%{opacity:.45}}@keyframes as-shine{to{background-position:-200% 0}}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}.loading:before,.route-loading:before{animation:as-pulse 1s ease-in-out infinite}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.app{--frame: 42rem;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;overflow-x:clip}.app>main{flex:1;width:100%}.dash{--frame: 70rem}.masthead{background:var(--black);color:var(--on-dark);border-bottom:3px solid var(--gold);overflow-wrap:normal}.masthead-inner{max-width:var(--frame);margin:0 auto;padding:var(--s-2) var(--s-4);display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-3);min-height:4rem}.lockup{display:flex;align-items:center;gap:var(--s-3);color:var(--on-dark);text-decoration:none;min-width:0}.lockup-text{font-family:var(--font-ui);line-height:1.15;display:flex;flex-direction:column;white-space:nowrap}.lockup-org{font-size:var(--fs-sm);font-weight:600;color:var(--on-dark-soft);letter-spacing:.01em}.lockup-sep{display:none;color:var(--gold)}.lockup-product{font-size:var(--step-1);font-weight:700;color:var(--on-dark)}.masthead-tag{font-family:var(--font-ui);font-size:var(--fs-sm);font-weight:600;color:var(--on-dark-soft);border:1px solid var(--on-dark-line);border-radius:var(--r-pill);padding:.1rem .65rem;white-space:nowrap}.masthead-actions{margin-left:auto;display:flex;align-items:center;gap:var(--s-3)}.masthead .linklike{color:var(--on-dark);text-decoration-color:var(--on-dark-soft);white-space:nowrap}.masthead .linklike:hover{text-decoration-color:var(--gold)}.monogram{display:block;flex:none;height:2.9rem}.monogram img{display:block;height:100%;width:auto}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:2.25rem;height:2.25rem;padding:0;border-radius:50%;border:1px solid rgb(255 255 255 / .35);background:transparent;color:var(--on-dark);cursor:pointer;transition:border-color var(--dur-1),color var(--dur-1)}.theme-toggle:hover{border-color:var(--gold);color:var(--gold)}.theme-toggle svg{width:1.15rem;height:1.15rem}@media (min-width: 34rem){.lockup-text{flex-direction:row;align-items:baseline}.lockup-sep{display:inline;white-space:pre}.lockup-org{font-size:var(--step-0);color:var(--on-dark)}.lockup-product{font-size:var(--step-0)}}@media (max-width: 34rem){.masthead-inner{flex-wrap:nowrap;gap:var(--s-2);min-height:3.5rem}.monogram{height:2.4rem}.lockup{gap:var(--s-2)}.lockup-org{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.masthead-tag{font-size:var(--fs-2xs);padding:.05rem .5rem}.masthead-actions{gap:var(--s-2)}}@media (max-width: 22rem){.masthead-tag{display:none}}.page{max-width:var(--frame);margin:0 auto;padding:var(--s-5) var(--s-4) var(--s-7)}.page.narrow{max-width:30rem;padding-top:var(--s-6)}.page.wide{max-width:var(--frame)}.app-foot{border-top:1px solid var(--line);padding:var(--s-4);text-align:center;color:var(--ink-soft);font-size:var(--fs-sm)}.app-foot p{margin:0 auto;max-width:40rem}.app-foot .framework-note{margin-top:var(--s-2);font-size:var(--fs-xs)}.page-title{font-size:var(--step-2);margin:0 0 var(--s-4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);font-family:var(--font-ui);font-size:var(--step-0);font-weight:700;letter-spacing:.01em;text-align:center;text-decoration:none;line-height:1.2;min-height:var(--control-h);padding:.65rem 1.4rem;border-radius:var(--r-pill);cursor:pointer;color:var(--ink);background:transparent;border:1.5px solid var(--silver);transition:background-color var(--dur-1),border-color var(--dur-1),transform var(--dur-1)}.btn:hover:not(:disabled){border-color:var(--ink)}.btn:active:not(:disabled){transform:translateY(1px)}.btn.primary{background:var(--gold);color:var(--gold-ink);border-color:var(--gold)}.btn.primary:hover:not(:disabled){background:var(--gold-hover);border-color:var(--gold-ink)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.small{min-height:var(--control-h-sm);padding:.4rem 1.05rem;font-size:var(--fs-md)}.linklike{font:inherit;font-family:var(--font-ui);font-weight:600;background:none;border:0;color:var(--ink);text-decoration:underline;text-decoration-color:var(--gold-deep);text-decoration-thickness:2px;text-underline-offset:4px;cursor:pointer;padding:.6rem .1rem;min-height:2.75rem}.linklike:hover{text-decoration-color:currentColor}.form{display:grid;gap:var(--s-4)}.form label{display:grid;gap:.35rem;font-family:var(--font-ui);font-weight:600}.form .btn{margin-top:var(--s-2)}input,textarea{font:inherit;font-family:var(--font-body);font-weight:400;color:var(--ink);background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--r-sm);padding:.75rem .9rem;width:100%;min-width:0;transition:border-color var(--dur-1)}input:hover,textarea:hover{border-color:var(--ink-soft)}input:focus-visible,textarea:focus-visible{border-color:var(--ink)}input:disabled,textarea:disabled{cursor:not-allowed;opacity:.6}.form-error{color:var(--alert-ink);background:var(--alert-bg);border-left:4px solid var(--alert-line);padding:.7rem .9rem;border-radius:var(--r-sm);margin:var(--s-3) 0}.form-error:has(>button){display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 var(--s-3);padding-block:.3rem}.form-error .linklike{color:inherit;text-decoration-color:currentColor}.btn[aria-busy=true]{cursor:progress}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3) var(--s-4);flex-wrap:wrap;margin-bottom:var(--s-5)}.topbar.back{margin-bottom:var(--s-2);font-family:var(--font-ui);font-weight:600}.topbar a{font-family:var(--font-ui);font-weight:600;display:inline-flex;align-items:center;min-height:var(--tap)}.topbar.back a:before{content:"‹ ";text-decoration:none;display:inline-block}.login-card{max-width:28rem;margin:var(--s-6) auto 0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-5);box-shadow:var(--shadow-card)}.page.narrow .login-card{margin-top:0}.login-card h1{font-size:var(--step-2)}.login-card .lede{margin-bottom:var(--s-5);font-size:1rem}.empty{background:var(--surface);border:1.5px dashed var(--line-strong);border-radius:var(--r-md);padding:var(--s-6) var(--s-5);text-align:center}.empty-title{font-family:var(--font-ui);font-weight:700;font-size:var(--step-1);margin:0 0 var(--s-2)}.empty .btn{margin-top:var(--s-4)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-3);min-width:0;box-shadow:var(--shadow-card)}.panel h2{font-size:1rem;margin-bottom:var(--s-2)}.badges,td .badges{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.badge{display:inline-block;font-family:var(--font-ui);font-size:var(--fs-sm);font-weight:700;line-height:1.5;padding:.1rem .7rem;border-radius:var(--r-pill);border:1.5px solid currentColor;white-space:nowrap}.risk-none{background:var(--risk-none-bg);color:var(--risk-none-ink)}.risk-low{background:var(--risk-low-bg);color:var(--risk-low-ink)}.risk-elevated{background:var(--risk-elevated-bg);color:var(--risk-elevated-ink)}.risk-high{background:var(--risk-high-bg);color:var(--risk-high-ink);border-style:double;border-width:4px;padding:0 .6rem}.risk-nodata{background:transparent;color:var(--ink-soft);border-style:dashed;font-weight:600}.crisis-badge{background:var(--crisis-bg);color:var(--crisis-ink);border-color:var(--crisis-bg)}.crisis-badge:before{content:"⚠︎ "}.badge.stage{background:transparent;border:1.5px solid currentColor}.badge.stage-none{color:var(--ink-soft)}.badge.stage-emotional{color:var(--gold-deep)}.badge.stage-mental{color:var(--stage-mental)}.badge.stage-lapse{color:var(--crisis-ink);background:var(--crisis-bg);border-color:var(--crisis-bg)}.badge.stage-none-data{color:var(--ink-soft);border:1px dashed var(--line-strong);background:transparent}.badge.sev-imminent{background:var(--crisis-bg);color:var(--crisis-ink);border-color:var(--crisis-bg)}.badge.sev-concern{background:var(--risk-high-bg);color:var(--risk-high-ink)}.ind-badges{display:inline-flex;flex-wrap:wrap;gap:.35rem}.badge.ind{border:0;font-size:var(--fs-xs)}.ind-recent_use{background:var(--ind-use-bg);color:var(--ind-use-ink)}.ind-hopelessness{background:var(--ind-hope-bg);color:var(--ind-hope-ink)}.ind-high_craving{background:var(--ind-crave-bg);color:var(--ind-crave-ink)}.ind-trigger_exposure{background:var(--ind-trig-bg);color:var(--ind-trig-ink)}.ind-isolation{background:var(--ind-iso-bg);color:var(--ind-iso-ink)}.ind-missed_program{background:var(--ind-miss-bg);color:var(--ind-miss-ink)}.ind-sleep_disruption{background:var(--ind-sleep-bg);color:var(--ind-sleep-ink)}.theme-toggle,.ja-collapse,.sm-close,.send-btn,.cl-clear{position:relative}.theme-toggle:after,.ja-collapse:after,.sm-close:after,.send-btn:after,.cl-clear:after{content:"";position:absolute;left:50%;top:50%;width:max(100%,var(--tap));height:max(100%,var(--tap));transform:translate(-50%,-50%)}@media (pointer: coarse){.btn.small,.linklike{min-height:var(--tap)}}.hero{background:var(--black);color:var(--on-dark);border-bottom:3px solid var(--gold)}.hero-inner{max-width:44rem;margin:0 auto;padding:var(--s-6) var(--s-4) 5rem;text-align:center}.hero-logo{display:block;width:min(15rem,62vw);height:auto;margin:0 auto var(--s-4)}.hero-title{font-size:var(--step-4);margin:0 0 var(--s-3);letter-spacing:-.03em;color:var(--on-dark)}.hero-promise{margin:0 auto;max-width:30ch;font-size:1.08rem;line-height:1.6;color:var(--on-dark-soft)}.page.entry{max-width:44rem;padding-top:0}.entry-cards{display:grid;gap:var(--s-4);margin-top:-3rem}@media (min-width: 40rem){.entry-cards{grid-template-columns:1fr 1fr}}.entry-card{display:grid;gap:var(--s-2);align-content:start;min-height:8.5rem;padding:var(--s-5);border-radius:var(--r-md);text-decoration:none;background:var(--surface);color:var(--ink);border:1.5px solid var(--line);box-shadow:var(--shadow-card);transition:background-color var(--dur-1),border-color var(--dur-1),transform var(--dur-1)}.entry-card.primary{background:var(--gold);color:var(--gold-ink);border-color:var(--gold)}.entry-title{font-family:var(--font-ui);font-weight:700;font-size:var(--step-2);line-height:1.15;letter-spacing:-.015em}.entry-desc{font-size:var(--fs-md);color:var(--ink-soft)}.entry-card.primary .entry-desc{color:var(--gold-ink)}.entry-card:hover{border-color:var(--ink)}.entry-card.primary:hover{border-color:var(--gold-ink);background:var(--gold-hover)}.entry-card:active{transform:translateY(1px)}@media (prefers-reduced-motion: no-preference){.entry-card:hover{transform:translateY(-1px)}}.journal-app{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.journal-app .masthead{flex:none}.ja-body{flex:1;min-height:0;display:grid;grid-template-columns:13.5rem minmax(0,1fr);transition:grid-template-columns .2s ease}.ja-side{border-right:1px solid var(--line);background:color-mix(in srgb,var(--sunken) 55%,var(--paper));padding:var(--s-3) var(--s-2);overflow-y:auto;display:flex;flex-direction:column;gap:var(--s-2)}.ja-side-top{display:flex;justify-content:flex-end;margin:-.25rem 0 .25rem}.ja-new{display:flex;align-items:center;gap:var(--s-2);padding:.55rem .75rem;border-radius:var(--r-md);background:var(--gold);color:var(--gold-ink);font:700 var(--fs-md) var(--font-ui);text-decoration:none;box-shadow:0 1px #00000014;transition:background-color var(--dur-1)}.ja-new:hover{background:var(--gold-hover)}.ja-new svg{width:1.1rem;height:1.1rem}.ja-side-h{margin:var(--s-4) var(--s-2) var(--s-1);font:600 var(--fs-xs) var(--font-ui);letter-spacing:.01em;color:var(--ink-soft)}.ja-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.ja-list a{display:flex;justify-content:space-between;align-items:center;gap:var(--s-2);padding:.45rem .6rem;border-radius:var(--r-sm);color:var(--ink);text-decoration:none;font-size:var(--fs-sm);transition:background-color var(--dur-1)}.ja-list a:hover{background:color-mix(in srgb,var(--gold) 14%,transparent)}.ja-list a.active{background:color-mix(in srgb,var(--gold) 26%,transparent);font-weight:600}.ja-time{color:var(--ink-soft);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.ja-side-empty{margin:0 var(--s-2);color:var(--ink-soft);font-size:var(--fs-md)}.ja-side-foot{margin:auto var(--s-2) 0;padding-top:var(--s-4);color:var(--ink-soft);font-size:var(--fs-2xs);line-height:1.4}.ja-main{min-width:0;min-height:0;display:flex;flex-direction:column;position:relative}.ja-menu,.ja-scrim{display:none}.ja-collapse{display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:var(--r-sm);border:0;background:transparent;color:var(--ink-soft);cursor:pointer;text-decoration:none;transition:background-color var(--dur-1),color var(--dur-1)}.ja-collapse:hover{background:color-mix(in srgb,var(--gold) 18%,transparent);color:var(--ink)}.ja-collapse svg{width:1.25rem;height:1.25rem}.ja-collapsed-bar{position:absolute;top:var(--s-3);left:var(--s-3);z-index:5;display:flex;gap:var(--s-1)}.ja-body.side-collapsed{grid-template-columns:0 minmax(0,1fr)}.ja-body.side-collapsed .ja-side{visibility:hidden;padding:0;border:0;overflow:hidden}.chat-view{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.chat-actions{flex:none;display:flex;justify-content:flex-end;padding:var(--s-3) var(--s-4) 0;position:relative;z-index:4}.chat-scroll{flex:1;min-height:0;overflow-y:auto;scroll-behavior:smooth}.chat-col{width:100%;max-width:46rem;margin:0 auto;padding:0 var(--s-4)}.chat-scroll>.chat-col{padding-top:calc(var(--s-5) + 2.25rem);padding-bottom:var(--s-5)}.chat-actions+.chat-scroll>.chat-col{padding-top:var(--s-3)}.thread{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-5)}.msg{max-width:100%;min-width:0;padding:0}.msg p{margin:0;white-space:pre-wrap}.msg.agent{justify-self:start;position:relative;padding-left:2.75rem;color:var(--ink);font-size:var(--fs-lead);line-height:1.75}.msg.agent:before{content:"";position:absolute;left:0;top:.1rem;width:2rem;height:2rem;border-radius:50%;background:var(--black) url(/atr-monogram.png) center / 62% no-repeat;box-shadow:0 0 0 2px var(--gold)}.msg.client{justify-self:end;max-width:min(36rem,85%);padding:.7rem 1rem;border-radius:var(--r-lg) var(--r-lg) .35rem var(--r-lg);background:color-mix(in srgb,var(--gold) 20%,var(--surface));color:var(--ink);border:1px solid color-mix(in srgb,var(--gold) 35%,var(--line))}:root[data-theme=dark] .msg.client{background:var(--own-bg);color:var(--own-ink);border-color:transparent}.typing{display:inline-flex;align-items:center;gap:.35rem;vertical-align:middle;padding:.45rem .85rem;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow-card)}.typing i{display:block;width:.5rem;height:.5rem;border-radius:50%;background:var(--gold-deep)}.typing-label{margin-left:var(--s-1);font:600 var(--fs-sm) var(--font-ui);color:var(--ink-soft)}.ended{text-align:center;padding:var(--s-5) 0;display:grid;gap:var(--s-3);justify-items:center}.ended p{margin:0;font-family:var(--font-ui);font-weight:600;font-size:var(--step-1)}@media (prefers-reduced-motion: no-preference){.chat .msg{animation:msg-in var(--dur-3) var(--ease-out) both}.typing i{animation:typing 1.2s ease-in-out infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}.crisis{animation:msg-in .3s ease-out both}}.composer-dock{flex:none;padding:var(--s-2) 0 var(--s-3);background:linear-gradient(to top,var(--paper) 70%,transparent)}.composer{display:grid;gap:var(--s-2);margin:0 auto}.composer-box{display:flex;align-items:flex-end;gap:var(--s-2);padding:var(--s-2) var(--s-2) var(--s-2) var(--s-4);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-xl);box-shadow:var(--shadow-card);transition:border-color var(--dur-1),box-shadow var(--dur-1)}.composer-box:focus-within{border-color:var(--gold-deep);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 40%,transparent),var(--shadow-card)}.composer-box textarea{flex:1;min-height:2.5rem;max-height:220px;resize:none;border:0;border-radius:0;outline:none;box-shadow:none;background:transparent;padding:.55rem 0;font:inherit;line-height:1.5;color:var(--ink)}.send-btn{flex:none;width:2.5rem;height:2.5rem;border-radius:50%;border:0;display:grid;place-items:center;background:var(--gold);color:var(--gold-ink);cursor:pointer;transition:background-color var(--dur-1),transform var(--dur-1)}.send-btn:hover:not(:disabled){background:var(--gold-hover)}.send-btn:active:not(:disabled){transform:scale(.94)}.send-btn svg{width:1.2rem;height:1.2rem}.send-btn:disabled{background:var(--sunken);color:var(--ink-soft);cursor:default}.composer-meta{display:flex;justify-content:center;align-items:flex-start;gap:var(--s-3);padding:0 var(--s-1);font-size:var(--fs-sm);color:var(--ink-soft)}.end-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .8rem;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none;white-space:nowrap;font:600 var(--fs-sm) var(--font-ui);box-shadow:var(--shadow-card);cursor:pointer;transition:border-color var(--dur-1)}.end-btn svg{width:.95rem;height:.95rem;color:var(--gold-deep)}.end-btn:hover:not(:disabled){border-color:var(--gold-deep)}.end-btn:disabled{opacity:.55;cursor:default}.privacy-note{margin:0;font-size:var(--fs-sm);color:var(--ink-soft)}.privacy-note summary{position:relative;display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;list-style:none;font:500 var(--fs-sm)/1.4 var(--font-ui);color:var(--ink-soft);padding:.15rem 0;border-radius:var(--r-xs);white-space:nowrap;transition:color var(--dur-1)}.privacy-note summary:after{content:"";position:absolute;top:-.6rem;right:-.25rem;bottom:-.6rem;left:-.25rem}.privacy-note summary::-webkit-details-marker{display:none}.privacy-note summary:hover{color:var(--ink)}.privacy-note svg{width:.95rem;height:.95rem;flex:none}.pn-shield{color:var(--gold-deep)}.pn-chevron{transition:transform var(--dur-1) ease}.privacy-note[open] .pn-chevron{transform:rotate(180deg)}.pn-panel{margin-top:var(--s-2);padding:var(--s-3) var(--s-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-card)}.pn-h{margin:0 0 var(--s-2);font:700 var(--fs-md) var(--font-ui);color:var(--ink)}.checklist{list-style:none;margin:0 0 var(--s-4);padding:0;display:grid;gap:var(--s-2)}.checklist li{display:flex;gap:var(--s-3);align-items:flex-start}.checklist .check{flex:none;margin-top:.1rem;color:var(--ink)}.pn-panel .checklist{margin:0;font-size:var(--fs-sm);gap:.35rem}.pn-panel .checklist .check{width:1rem;height:1rem;color:var(--gold-deep)}@media (max-width: 24rem){.privacy-note summary{white-space:normal;text-align:left}}.crisis{position:sticky;top:0;z-index:2;background:var(--crisis-bg);color:var(--crisis-ink);border:2px solid var(--crisis-edge);border-radius:var(--r-md);padding:var(--s-4);margin-bottom:var(--s-5);box-shadow:var(--shadow-crisis)}.crisis-title{margin:0 0 var(--s-3);font-family:var(--font-ui);font-weight:700;font-size:var(--step-1);line-height:1.3}.crisis-lines{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-2)}.crisis-lines>li>a,.crisis-lines>li>span{display:flex;align-items:center;min-height:var(--control-h);padding:.55rem .9rem;border-radius:var(--r-sm);color:var(--crisis-ink);font-weight:600}.crisis-lines a{background:#ffffff1f;border:1.5px solid rgb(255 246 241 / .7);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#fff6f1b3;transition:background-color var(--dur-1)}.crisis-lines a:hover{background:#fff3}.crisis-short{display:none}@media (max-width: 34rem){.crisis{padding:var(--s-3);margin-bottom:var(--s-4)}.crisis-title{font-size:var(--fs-lead);margin-bottom:var(--s-2)}.crisis .crisis-full{display:none}.crisis .crisis-short{display:inline}.crisis-lines{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-2)}.crisis-lines>li>a,.crisis-lines>li>span{padding:.4rem .3rem;text-align:center;justify-content:center;font-size:var(--fs-sm);line-height:1.2;text-decoration:none}}.history{list-style:none;padding:0;margin:var(--s-4) 0 0;display:grid;gap:var(--s-2)}.history a{display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);flex-wrap:wrap;min-height:3.5rem;padding:.75rem 1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink);text-decoration:none;font-family:var(--font-ui);font-weight:600;transition:border-color var(--dur-1),transform var(--dur-1)}.history a:hover{border-color:var(--ink)}.h-status{font-family:var(--font-body);font-weight:500;font-size:var(--fs-sm);color:var(--ink-soft)}.h-status.active{color:var(--gold-ink);background:var(--gold);padding:.1rem .65rem;border-radius:var(--r-pill)}@media (prefers-reduced-motion: no-preference){.history a:hover{transform:translateY(-1px)}}@media (max-width: 48rem){.ja-body,.ja-body.side-collapsed{grid-template-columns:minmax(0,1fr)}.ja-side,.ja-body.side-collapsed .ja-side{position:fixed;z-index:20;top:0;bottom:0;left:0;width:min(19rem,84vw);padding:var(--s-3) var(--s-2);border-right:1px solid var(--line);overflow-y:auto;background:var(--paper);transform:translate(-102%);visibility:hidden;transition:transform .22s ease,visibility 0s linear .22s}.ja-body.drawer-open .ja-side{transform:none;visibility:visible;box-shadow:0 0 40px #00000040;transition:transform .22s ease}.ja-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:15;border:0;background:#00000059}.drawer-open .ja-scrim{display:block}.ja-side-top,.ja-collapsed-bar{display:none}.ja-menu{display:inline-flex;align-items:center;gap:.4rem;align-self:flex-start;margin:var(--s-2) var(--s-4) 0;min-height:var(--tap);padding:.4rem .9rem;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);color:var(--ink);font:600 var(--fs-sm) var(--font-ui);cursor:pointer}.ja-menu svg{width:1.05rem;height:1.05rem}.chat-view{position:static}.chat-actions{position:absolute;top:var(--s-2);right:var(--s-4);padding:0}.end-btn{min-height:var(--tap);padding:.4rem .9rem}.chat-scroll>.chat-col,.chat-actions+.chat-scroll>.chat-col{padding-top:var(--s-3)}}.dash .page-title{margin-bottom:var(--s-3)}.h-sub{font-family:var(--font-body);font-weight:400;font-size:var(--fs-sm);color:var(--ink-soft);margin-left:.35rem}@media (max-width: 40rem){.dash .lockup-org{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.dash .lockup-sep{display:none}}@media (pointer: coarse){.app.dash input,.app.dash textarea{font-size:16px}}.cl-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0 var(--s-4)}.cl-sub{margin:0 0 var(--s-4);color:var(--ink-soft);font-size:var(--fs-md)}.cl-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-2);margin:0 0 var(--s-3);max-width:46rem}.cl-kpi{display:grid;gap:.1rem;align-content:start;text-align:left;padding:.45rem .8rem;border-radius:var(--r-sm);cursor:pointer;background:var(--surface);border:1.5px solid var(--line);color:var(--ink);font:inherit;transition:border-color var(--dur-1) ease,background-color var(--dur-1) ease,box-shadow var(--dur-1) ease}.cl-kpi:hover{border-color:var(--line-strong)}.cl-kpi-label{font-size:var(--fs-2xs);line-height:1.3;color:var(--ink-soft)}.cl-kpi-n{font:700 1.15rem/1.2 var(--font-ui);font-variant-numeric:tabular-nums}.cl-kpi.hot.lit{border-color:var(--crisis-edge);background:color-mix(in srgb,var(--crisis-bg) 6%,var(--surface))}.cl-kpi.hot.lit .cl-kpi-n{color:var(--crisis-text)}.cl-kpi.warm.lit{border-color:var(--stage-mental);background:color-mix(in srgb,var(--stage-mental) 6%,var(--surface))}.cl-kpi.warm.lit .cl-kpi-n{color:var(--stage-mental)}.cl-kpi[aria-pressed=true]{border-color:var(--ink);box-shadow:0 0 0 2px var(--gold);background:color-mix(in srgb,var(--gold) 14%,var(--surface))}.cl-kpi[aria-pressed=true] .cl-kpi-label{color:var(--ink);font-weight:600}.cl-search-wrap{position:relative;max-width:22rem;margin:0 0 var(--s-3)}.cl-search{display:flex;align-items:center;gap:var(--s-2);margin:0;padding:0 .4rem 0 .75rem;background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--r-pill);transition:border-color var(--dur-1),box-shadow var(--dur-1)}.cl-search:hover{border-color:var(--ink-soft)}.cl-search:focus-within{border-color:var(--gold-deep);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 35%,transparent)}.cl-search svg{width:1rem;height:1rem;color:var(--ink-soft);flex:none}.cl-search input{flex:1;min-width:0;border:0;border-radius:0;outline:none;box-shadow:none;background:transparent;padding:.5rem 0;font:inherit;font-size:var(--fs-md);color:var(--ink)}.cl-search input::-webkit-search-cancel-button{display:none}.cl-clear{border:0;background:var(--sunken);color:var(--ink);border-radius:var(--r-pill);padding:.25rem .7rem;font:600 var(--fs-xs) var(--font-ui);cursor:pointer;transition:background-color var(--dur-1)}.cl-clear:hover{background:color-mix(in srgb,var(--gold) 22%,var(--sunken))}.cl-suggest{position:absolute;z-index:40;top:calc(100% + .4rem);left:0;right:0;list-style:none;margin:0;padding:.35rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-pop);animation:msg-in var(--dur-1) ease-out both}.cl-suggest li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;padding:.45rem .55rem;border-radius:var(--r-sm);cursor:pointer}.cl-suggest li.hi{background:color-mix(in srgb,var(--gold) 18%,var(--surface))}.cs-name{font:600 var(--fs-md) var(--font-ui);color:var(--ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs-name mark{background:color-mix(in srgb,var(--gold) 45%,transparent);color:inherit;border-radius:3px;padding:0 1px}.cs-badges{display:inline-flex;gap:.3rem}.cs-badges .badge{font-size:var(--fs-2xs)}@media (max-width: 48rem){.cl-filters{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.cl-search-wrap{max-width:none}}@media (pointer: coarse){.cl-search,.cl-suggest li{min-height:var(--tap)}}.table-scroll{overflow:visible;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-card)}table.caseload{width:100%;min-width:34rem;table-layout:fixed;border-collapse:separate;border-spacing:0}.caseload th,.caseload td{text-align:left;padding:.6rem 1rem;vertical-align:middle}table.caseload thead th{font:600 var(--fs-xs) var(--font-ui);letter-spacing:.01em;color:var(--ink-soft);background:transparent;border-bottom:1.5px solid var(--line)}table.caseload thead th:nth-child(1){width:30%}table.caseload thead th:nth-child(2){width:17%}table.caseload thead th:nth-child(3){width:14%}table.caseload thead th:nth-child(4),table.caseload thead th:nth-child(5){width:17%}table.caseload thead th:nth-child(6){width:5%}table.caseload tbody tr+tr>*{border-top:1px solid var(--line)}.caseload tbody th{font-family:var(--font-ui);font-weight:700}.caseload tbody th a{overflow-wrap:normal}.caseload td{font-variant-numeric:tabular-nums}table.caseload tr{position:relative}table.caseload tbody tr{transition:background-color var(--dur-1) ease}table.caseload tbody tr:hover{background:color-mix(in srgb,var(--gold) 9%,var(--surface))}.caseload .row-crisis{box-shadow:inset 5px 0 0 var(--crisis-bg)}table.caseload .cl-none td{text-align:center;color:var(--ink-soft);padding:var(--s-5)}td .badges .badge.stage{display:none}.cl-client{display:flex;align-items:center;gap:var(--s-3)}.cl-avatar{flex:none;width:2.1rem;height:2.1rem;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--gold) 28%,var(--surface));color:var(--ink);border:1px solid color-mix(in srgb,var(--gold) 55%,var(--line));font:700 var(--fs-sm) var(--font-ui);letter-spacing:.02em}.cl-avatar.sm{width:1.75rem;height:1.75rem;font-size:var(--fs-2xs)}.row-crisis .cl-avatar,.cl-avatar.crisis{border:2px solid var(--crisis-edge);background:color-mix(in srgb,var(--crisis-bg) 10%,var(--surface));color:var(--crisis-text)}.cl-who{display:grid;line-height:1.25;min-width:0}.cl-name{font:700 1rem var(--font-ui);color:var(--ink);text-decoration:none}.cl-name:hover{text-decoration:underline;text-underline-offset:3px}.cl-name:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.cl-last{font-size:var(--fs-xs);color:var(--ink-soft);font-weight:400}.cl-go{width:2rem;color:var(--ink-soft)}.cl-go svg{width:1.1rem;height:1.1rem;display:block}tr:hover .cl-go{color:var(--ink)}.meter{display:inline-flex;align-items:center;gap:var(--s-2);min-width:6.5rem}.meter-n{font:700 1rem var(--font-ui);font-variant-numeric:tabular-nums;min-width:1.4rem}.meter-track{width:3.75rem;height:.45rem;border-radius:var(--r-pill);background:var(--sunken);overflow:hidden}.meter-fill{display:block;height:100%;border-radius:var(--r-pill)}.meter-mood .meter-fill{background:var(--c-mood)}.meter-craving .meter-fill{background:var(--stage-mental)}.tip{position:relative;z-index:2;display:inline-flex;border-radius:var(--r-xs);cursor:help}.tip:hover,.tip:focus-within{z-index:31}.tip-body{position:absolute;left:50%;bottom:calc(100% + .6rem);transform:translate(-50%,4px);width:max-content;max-width:min(17rem,calc(100vw - 2rem));padding:.55rem .75rem;border-radius:var(--r-sm);background:var(--inverse-bg);color:var(--inverse-ink);font:400 var(--fs-xs)/1.45 var(--font-body);text-align:left;white-space:normal;box-shadow:0 10px 30px -10px #00000080;opacity:0;visibility:hidden;pointer-events:none;z-index:30;transition:opacity var(--dur-1) ease,transform var(--dur-1) ease,visibility 0s linear var(--dur-1)}.tip-body:after{content:"";position:absolute;top:100%;left:50%;margin-left:-6px;border:6px solid transparent;border-top-color:var(--inverse-bg)}.tip:hover .tip-body,.tip:focus-visible .tip-body,.tip:focus-within .tip-body{opacity:1;visibility:visible;transform:translate(-50%);transition:opacity var(--dur-1) ease,transform var(--dur-1) ease}.tip-body strong{color:var(--inverse-accent);font-weight:600}.tip-body .tip-crisis{color:var(--inverse-crisis)}@media (max-width: 48rem){td[data-label=Craving] .tip-body{left:auto;right:0;transform:translateY(4px)}td[data-label=Craving] .tip:hover .tip-body,td[data-label=Craving] .tip:focus-visible .tip-body,td[data-label=Craving] .tip:focus-within .tip-body{transform:none}td[data-label=Craving] .tip-body:after{left:auto;right:1.25rem;margin-left:0;margin-right:-6px}}@media (max-width: 34rem){.table-scroll{border:0;box-shadow:none;background:transparent}table.caseload{min-width:0}table.caseload thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}table.caseload thead th{width:auto}table.caseload tbody,table.caseload tr,table.caseload th,table.caseload td{display:block}table.caseload tr{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-card);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-3);display:grid;grid-template-columns:repeat(2,auto);gap:var(--s-2) var(--s-4);justify-content:start}table.caseload tr.row-crisis{box-shadow:inset 5px 0 0 var(--crisis-bg),var(--shadow-card)}table.caseload th,table.caseload td,table.caseload tbody tr+tr>*{padding:0;border:0}table.caseload th[scope=row]{grid-column:1 / -1;font-size:1rem}table.caseload td[data-label=Status]{grid-column:1 / -1}table.caseload td.col-stage,table.caseload td.cl-go{display:none}table.caseload .cl-none td{padding:var(--s-4);grid-column:1 / -1}td .badges .badge.stage{display:inline-flex}table.caseload td[data-label=Mood],table.caseload td[data-label=Craving]{font-weight:600}table.caseload td[data-label=Mood]:before,table.caseload td[data-label=Craving]:before{content:attr(data-label);display:block;font-weight:400;font-size:var(--fs-sm);color:var(--ink-soft)}.tip-body{left:0;transform:translateY(4px)}.tip:hover .tip-body,.tip:focus-visible .tip-body,.tip:focus-within .tip-body{transform:none}.tip-body:after{left:1.25rem}}.crisis-alert{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--s-3);margin:0 0 var(--s-4);padding:var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--crisis-bg);color:var(--crisis-ink);border:2px solid var(--crisis-edge);box-shadow:0 10px 28px -14px #8e2a1f99}.ca-icon svg{width:1.9rem;height:1.9rem;display:block}.ca-body h2{margin:0 0 .15rem;font:700 var(--fs-lead) var(--font-ui);color:inherit}.ca-body p{margin:0;font-size:var(--fs-sm);line-height:1.45}.ca-btn{background:var(--crisis-ink);color:var(--crisis-bg);border-color:var(--crisis-ink);font-weight:700;white-space:nowrap}.ca-btn:hover{filter:brightness(.95)}#crisis-h{scroll-margin-top:var(--s-4)}@media (max-width: 34rem){.crisis-alert{grid-template-columns:auto 1fr}.ca-btn{grid-column:1 / -1;justify-self:start}}.cd-summary{display:grid;gap:var(--s-3);margin-bottom:var(--s-3)}.cd-summary>.panel{margin-bottom:0}@media (min-width: 56rem){.cd-summary{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}.cd-summary .stats{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));gap:var(--s-2);margin:0 0 var(--s-4);max-width:34rem}.cd-summary .stats{margin:0}.stats>div{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-sm);padding:.45rem .8rem}.stats dt{color:var(--ink-soft);font-size:var(--fs-2xs)}.stats dd{margin:0;font-family:var(--font-ui);font-size:1.15rem;line-height:1.25;font-weight:700;font-variant-numeric:tabular-nums}@media (max-width: 34rem){.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stats>div{padding:var(--s-2) var(--s-3)}.stats dt{line-height:1.25}}.latest{border-top:3px solid var(--gold)}.latest-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-3);margin:0 0 var(--s-2)}.latest .efficacy{color:var(--ink-soft);font-size:var(--fs-sm)}.latest .why,.why{margin:0;font-family:var(--font-ui);font-weight:600;font-size:var(--fs-md)}.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:0 var(--s-3)}.chart{margin:0;min-width:0}.chart .recharts-wrapper{font-family:var(--font-body)}.chart .recharts-legend-item-text{font-family:var(--font-ui);font-weight:600;color:var(--ink)!important}.chart .recharts-default-tooltip{border-radius:var(--r-sm);box-shadow:var(--shadow-pop)}.chart-note{color:var(--ink-soft);font-size:var(--fs-sm);margin:var(--s-2) 0 0}.indicators,.events{list-style:none;margin:0;padding:0;display:grid;gap:0}.indicators li,.events li{display:flex;gap:var(--s-2) var(--s-4);align-items:center;flex-wrap:wrap;padding:var(--s-3) 0;border-bottom:1px solid var(--line)}.indicators li:last-child,.events li:last-child{border-bottom:0}.indicators li{display:grid;grid-template-columns:7.5rem 1fr}.ind-date{min-width:7.5rem;color:var(--ink-soft);font-variant-numeric:tabular-nums}.events .btn,.events .acked{margin-left:auto}.acked{color:var(--gold-deep);font-family:var(--font-ui);font-weight:700}.acked:before{content:"✓ "}@media (max-width: 30rem){.indicators li{grid-template-columns:1fr;gap:.15rem}}.crisis-events li{display:block;padding:var(--s-3) 0}.crisis-events .open-row{border-left:3px solid var(--crisis-edge);padding-left:var(--s-3)}.ce-head{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .7rem}.ce-cat{font:700 var(--fs-md) var(--font-ui)}.ce-meta{color:var(--ink-soft);font-size:var(--fs-sm)}.ce-head .btn,.ce-head .acked{margin-left:auto}.ce-ctx{margin-top:var(--s-2)}.ce-badges{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem var(--s-2)}.ce-pending{margin:var(--s-2) 0 0;color:var(--ink-soft);font-size:var(--fs-sm);font-style:italic}.stage-timeline{list-style:none;margin:0 0 var(--s-3);padding:0;display:flex;gap:4px;align-items:stretch}.stage-chip{flex:1 1 0;min-width:0;height:1.75rem;padding:0;border-radius:var(--r-xs);background:var(--stage-none);position:relative}.stage-chip.stage-emotional,.stage-dot.stage-emotional{background:var(--stage-emotional)}.stage-chip.stage-mental,.stage-dot.stage-mental{background:var(--stage-mental)}.stage-chip.stage-lapse,.stage-dot.stage-lapse{background:var(--stage-lapse)}.stage-chip-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.stage-chip>button{all:unset;display:block;width:100%;height:100%;border-radius:inherit;cursor:pointer}.stage-chip>button:hover{box-shadow:inset 0 0 0 2px #00000059}:root[data-theme=dark] .stage-chip>button:hover{box-shadow:inset 0 0 0 2px #ffffff8c}.stage-chip>button:focus-visible{outline:var(--focus-w) solid var(--focus);outline-offset:var(--focus-offset)}.stage-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--s-1) var(--s-4);font-size:var(--fs-sm);color:var(--ink-soft)}.stage-legend li{display:inline-flex;align-items:center;gap:.4rem}.stage-dot{width:.8rem;height:.8rem;border-radius:3px;background:var(--stage-none);display:inline-block}.stage-hint{margin-left:auto;font-style:italic}@media (max-width: 34rem){.stage-hint{display:none}}@media (max-width: 30rem){.stage-timeline{gap:2px}.stage-chip{border-radius:4px}}.count-bars{list-style:none;margin:0 0 var(--s-3);padding:0;display:grid;gap:.45rem}.count-bars li{display:grid;grid-template-columns:minmax(7rem,11rem) 1fr 2rem;align-items:center;gap:.6rem}.cb-label{font-size:var(--fs-md)}.cb-track{height:.7rem;background:var(--sunken);border-radius:var(--r-pill);overflow:hidden}.cb-fill{display:block;height:100%;border-radius:var(--r-pill);background:var(--c-bar)}.tone-risk .cb-fill{background:var(--stage-mental)}.tone-strength .cb-fill{background:var(--strength)}.cb-n{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink-soft);font-size:var(--fs-sm)}.strengths h3{font-size:1rem;margin:var(--s-3) 0 var(--s-2);color:var(--strength)}.strengths h3:first-of-type{margin-top:0}.acc-bars{list-style:none;margin:0 0 var(--s-3);padding:0;display:grid;gap:var(--s-1)}.acc-bars details>summary{display:grid;grid-template-columns:minmax(7rem,11rem) 1fr 2rem 1rem;align-items:center;gap:.6rem;padding:.35rem .4rem;border-radius:var(--r-sm);cursor:pointer;list-style:none;transition:background-color var(--dur-1)}.acc-bars details>summary::-webkit-details-marker{display:none}.acc-bars details>summary:hover{background:color-mix(in srgb,var(--gold) 12%,transparent)}.acc-bars details[open]>summary{background:color-mix(in srgb,var(--gold) 8%,transparent)}.acc-chev{width:1rem;height:1rem;color:var(--ink-soft);transition:transform var(--dur-1) ease}.acc-bars details[open] .acc-chev{transform:rotate(180deg)}.acc-sessions{list-style:none;margin:var(--s-1) 0 .6rem .4rem;padding:0 0 0 .85rem;border-left:2px solid var(--line);display:grid;gap:.6rem}.acc-head{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem}.acc-head .ind-date{min-width:0;font-size:var(--fs-sm)}.acc-mc{font-size:var(--fs-sm);color:var(--ink-soft);font-variant-numeric:tabular-nums}.acc-ctx{margin:.3rem 0 0;display:grid;gap:.2rem;font-size:var(--fs-sm)}.acc-ctx>div{display:grid;grid-template-columns:8.5rem 1fr;gap:var(--s-2)}.acc-ctx dt{color:var(--ink-soft)}.acc-ctx dd{margin:0}@media (pointer: coarse){.acc-bars details>summary{min-height:var(--tap)}}@media (max-width: 30rem){.count-bars li{grid-template-columns:minmax(6.5rem,9rem) 1fr 1.75rem;gap:var(--s-2)}}.session-modal{width:min(32rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);padding:0;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);color:var(--ink);box-shadow:0 24px 60px -20px #00000073}.session-modal::backdrop{background:#14100473;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sm-body{padding:var(--s-4) var(--s-5) var(--s-5);border-top:4px solid var(--gold)}.sm-top{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);margin-bottom:var(--s-2)}.sm-top h2{margin:0;font-size:var(--step-1)}.sm-close{flex:none;border:0;background:transparent;width:2.25rem;height:2.25rem;border-radius:50%;display:grid;place-items:center;color:var(--ink-soft);cursor:pointer;transition:background-color var(--dur-1),color var(--dur-1)}.sm-close:hover{background:var(--sunken);color:var(--ink)}.sm-close svg{width:1.2rem;height:1.2rem}.sm-stage-hint{margin:0 0 var(--s-2);color:var(--ink-soft);font-size:var(--fs-md)}.sm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-2);margin:var(--s-3) 0}.sm-grid>div{background:var(--sunken);border-radius:var(--r-sm);padding:var(--s-2) var(--s-3)}.sm-grid dt{font-size:var(--fs-2xs);color:var(--ink-soft)}.sm-grid dd{margin:0;font:700 1.3rem var(--font-ui)}.sm-grid small{font-size:var(--fs-2xs);font-weight:500;color:var(--ink-soft)}.sm-lists>div{grid-template-columns:9.5rem 1fr;padding:.35rem 0;border-top:1px solid var(--line)}.sm-foot{margin:var(--s-3) 0 0;font-size:var(--fs-xs);color:var(--ink-soft)}@media (prefers-reduced-motion: no-preference){.session-modal[open]{animation:msg-in var(--dur-2) var(--ease-out) both}}@media (max-width: 34rem){.acc-bars details>summary{grid-template-columns:minmax(6rem,8.5rem) 1fr 1.75rem 1rem;gap:.45rem}.acc-ctx>div,.sm-lists>div{grid-template-columns:1fr;gap:.1rem}.sm-body{padding:var(--s-3) var(--s-4) var(--s-4)}}.app.dash:has(.as-fab,.as-panel) .app-foot{padding-bottom:5.5rem}.as-fab{position:fixed;right:1.25rem;bottom:1.25rem;z-index:60;width:3.6rem;height:3.6rem;border-radius:50%;border:0;background:var(--black);display:grid;place-items:center;cursor:pointer;box-shadow:0 0 0 3px var(--gold),0 14px 30px -10px #0000008c;transition:transform var(--dur-1) ease}.as-fab:focus-visible{outline-offset:5px}.as-fab img{width:58%;height:auto}.as-fab-spark{position:absolute;top:-.2rem;right:-.15rem;width:1.3rem;height:1.3rem;border-radius:50%;background:var(--gold);color:var(--gold-ink);font-size:var(--fs-2xs);display:grid;place-items:center;box-shadow:0 0 0 2px var(--surface)}@media (prefers-reduced-motion: no-preference){.as-fab:hover{transform:translateY(-2px) scale(1.03)}}.as-panel{position:fixed;right:1.25rem;bottom:1.25rem;z-index:60;width:min(26rem,calc(100vw - 1.5rem));height:min(40rem,calc(100dvh - 2.5rem));display:flex;flex-direction:column;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-overlay);animation:msg-in var(--dur-2) ease-out both}.as-panel.full{top:0;right:0;bottom:0;left:0;width:auto;height:auto;border-radius:0;border:0}@media (max-height: 46rem) and (min-width: 34.01rem){.as-panel:not(.full){right:.75rem;bottom:.75rem;height:calc(100dvh - 1.5rem)}.as-fab{right:1rem;bottom:1rem}}.as-head{flex:none;display:flex;align-items:center;gap:.65rem;padding:.6rem .6rem .6rem .75rem;background:var(--black);color:var(--on-dark);border-bottom:3px solid var(--gold)}.as-mark{flex:none;width:2rem;height:2rem;border-radius:50%;display:grid;place-items:center;background:var(--black);box-shadow:0 0 0 1.5px var(--gold)}.as-mark img{width:62%;height:auto}.as-titles{min-width:0}.as-titles h2{margin:0;font:700 1rem var(--font-ui);color:var(--on-dark)}.as-titles p{margin:0;font-size:var(--fs-2xs);color:var(--on-dark-soft)}.as-actions{margin-left:auto;display:flex;gap:.15rem}.as-actions button{width:2.25rem;height:2.25rem;border:0;border-radius:50%;background:transparent;color:var(--on-dark);display:grid;place-items:center;cursor:pointer;transition:background-color var(--dur-1),color var(--dur-1)}.as-actions button:hover{background:#ffffff1f;color:var(--gold)}.as-actions svg{width:1.05rem;height:1.05rem}@media (pointer: coarse){.as-actions button{width:var(--tap);height:var(--tap)}}.as-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.as-col{padding:var(--s-3) var(--s-4)}.as-panel.full .as-col{max-width:46rem;margin:0 auto;padding-top:var(--s-5)}.as-brief{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:.7rem .85rem;box-shadow:var(--shadow-card)}.as-brief p{margin:0;font-size:var(--fs-md);line-height:1.55}.as-brief .as-brief-h{font:700 var(--fs-xs) var(--font-ui);letter-spacing:.01em;color:var(--gold-deep);margin-bottom:.3rem}.as-shimmer{color:var(--ink-soft);animation:as-pulse 1.4s ease-in-out infinite}.as-chips-h{margin:var(--s-3) 0 var(--s-2);font:600 var(--fs-xs) var(--font-ui);letter-spacing:.01em;color:var(--ink-soft)}.as-chips{display:flex;flex-wrap:wrap;gap:.4rem}.as-chips.follow{margin-top:var(--s-3)}.as-chip{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:var(--r-pill);padding:.35rem .75rem;font:600 var(--fs-xs) var(--font-ui);line-height:1.35;cursor:pointer;text-align:left;transition:border-color var(--dur-1),background-color var(--dur-1)}.as-chip:hover{border-color:var(--gold-deep);background:color-mix(in srgb,var(--gold) 14%,var(--surface))}.as-chip:disabled{opacity:.5;cursor:default}.as-chip.rec{border-color:color-mix(in srgb,var(--gold) 70%,var(--line));background:color-mix(in srgb,var(--gold) 16%,var(--surface))}.as-chip.ctx{border-color:var(--ink)}@media (pointer: coarse){.as-chip{min-height:var(--tap)}}.as-thread{list-style:none;margin:var(--s-3) 0 0;padding:0;display:grid;gap:var(--s-3)}.as-msg{font-size:var(--fs-md);line-height:1.6;min-width:0}.as-msg p{margin:0 0 var(--s-2)}.as-msg p:last-child{margin-bottom:0}.as-msg ul,.as-msg ol{margin:0 0 var(--s-2);padding-left:1.2rem}.as-msg li{margin:.15rem 0}.as-msg .as-h{font-weight:700;font-family:var(--font-ui)}.as-msg.user{justify-self:end;max-width:85%;padding:.55rem .85rem;border-radius:1rem 1rem .3rem;background:color-mix(in srgb,var(--gold) 20%,var(--surface));border:1px solid color-mix(in srgb,var(--gold) 35%,var(--line))}.as-msg.assistant{padding-left:.1rem}:root[data-theme=dark] .as-msg.user{background:var(--own-bg);color:var(--own-ink);border-color:transparent}.as-status{display:flex;align-items:center;gap:var(--s-2);margin:var(--s-2) 0 0;font-size:var(--fs-sm);color:var(--ink-soft)}.as-dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--gold-deep);animation:as-pulse 1s ease-in-out infinite}.as-compose{flex:none;display:flex;align-items:flex-end;gap:var(--s-2);margin:0 .75rem;padding:.4rem .4rem .4rem .85rem;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-xl);transition:border-color var(--dur-1),box-shadow var(--dur-1)}.as-panel.full .as-compose{width:min(46rem,calc(100% - 1.5rem));margin:0 auto}.as-compose:focus-within{border-color:var(--gold-deep);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 35%,transparent)}.as-compose textarea{flex:1;resize:none;border:0;border-radius:0;outline:none;box-shadow:none;background:transparent;padding:.45rem 0;font:inherit;font-size:var(--fs-md);line-height:1.45;color:var(--ink);min-height:2.2rem}.as-compose .send-btn{width:2.2rem;height:2.2rem}.as-foot{flex:none;display:flex;flex-direction:column;align-items:center;gap:.3rem;margin:.35rem 0 .55rem;padding:0 var(--s-3);text-align:center;font-size:var(--fs-2xs);color:var(--ink-soft)}.as-budget{display:inline-flex;align-items:center;gap:.45rem;font:600 var(--fs-2xs) var(--font-ui);color:var(--ink-soft);cursor:help}.as-budget-track{width:4.5rem;height:.35rem;border-radius:var(--r-pill);background:var(--sunken);overflow:hidden}.as-budget-track>span{display:block;height:100%;background:var(--strength);border-radius:var(--r-pill)}.as-budget.warm .as-budget-track>span{background:var(--gold-deep)}.as-budget.hot .as-budget-track>span{background:var(--crisis-bg)}.as-budget.hot{color:var(--crisis-text)}.as-budget-site{color:var(--stage-mental)}@media (max-width: 34rem){.as-panel{right:0;bottom:0;width:100vw;height:88dvh;border-radius:var(--r-lg) var(--r-lg) 0 0}.as-fab{right:1rem;bottom:1rem}}.as-reason{margin:0 0 .6rem;border-left:2px solid var(--line-strong);padding-left:.75rem}.as-reason.live{border-left-color:var(--gold)}.as-reason-head{display:flex;align-items:center;gap:.45rem;width:100%;padding:.2rem 0;border:0;background:none;color:var(--ink-soft);font:600 var(--fs-xs) var(--font-ui);cursor:pointer;text-align:left;border-radius:var(--r-xs)}.as-reason-head:hover:not(:disabled){color:var(--ink)}.as-reason-head:disabled{cursor:default}.as-reason.live .as-reason-head{color:var(--ink)}.as-reason-icon svg{width:1rem;height:1rem;display:block;color:var(--gold-deep)}.as-reason.live .as-reason-icon{animation:as-pulse 1.2s ease-in-out infinite}.as-reason.live .as-reason-title{background:linear-gradient(90deg,var(--ink) 0%,var(--gold-deep) 50%,var(--ink) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:as-shine 1.8s linear infinite}.as-reason-meta{margin-left:auto;font-weight:500;font-variant-numeric:tabular-nums}.as-reason-chev{width:.9rem;height:.9rem;transition:transform var(--dur-1) ease}.as-reason-head[aria-expanded=true] .as-reason-chev{transform:rotate(180deg)}.as-reason-steps{list-style:none;margin:var(--s-1) 0 .15rem;padding:0;display:grid;gap:.35rem}.as-reason-steps .thought{font-size:var(--fs-xs);line-height:1.5;color:var(--ink-soft);font-style:italic;white-space:pre-wrap;max-height:9rem;overflow-y:auto}.as-reason-steps .tool{display:flex;align-items:center;gap:.45rem;font:600 var(--fs-xs) var(--font-ui);color:var(--ink)}.as-step-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--strength);flex:none}.as-reason-steps .tool.active .as-step-dot{background:var(--gold-deep);animation:as-pulse .9s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.as-reason.live .as-reason-title{animation:none;background:none;color:var(--ink)}}.as-actions button:disabled{opacity:.45;cursor:default}.as-actions button[aria-pressed=true]{background:#ffffff24;color:var(--gold)}.as-brief-top{display:flex;align-items:center;gap:var(--s-2);margin-bottom:.3rem;min-height:2rem}.as-brief-top .as-brief-h{margin:0}.as-brief-when{font:500 .75rem var(--font-ui);color:var(--ink-soft)}.as-brief-refresh{margin-left:auto;display:inline-flex;align-items:center;gap:.3rem;min-height:2rem;padding:0 .6rem;border:1px solid var(--line);border-radius:var(--r-pill);background:transparent;color:var(--ink);font:600 .78rem var(--font-ui);cursor:pointer;transition:border-color .15s,background-color .15s}.as-brief-refresh svg{width:.95rem;height:.95rem;display:block}.as-brief-refresh:hover:not(:disabled){border-color:var(--gold-deep);background:color-mix(in srgb,var(--gold) 14%,var(--surface))}.as-brief-refresh:disabled{color:var(--ink-soft);cursor:default}.as-brief-refresh .spin{display:inline-flex;animation:as-spin .9s linear infinite}.as-brief p.stale{opacity:.55}@keyframes as-spin{to{transform:rotate(360deg)}}.as-recent-h{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-2);margin-top:var(--s-4)}.as-recent-h .as-chips-h{margin:0 0 var(--s-2)}.as-link{border:0;background:none;padding:.4rem 0;min-height:2rem;cursor:pointer;color:var(--gold-deep);font:600 .8rem var(--font-ui);text-decoration:underline;text-underline-offset:3px}.as-convs{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-1)}.as-convs li{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);transition:border-color .15s}.as-convs li:hover{border-color:var(--line-strong)}.as-convs li.active{border-color:var(--gold-deep);box-shadow:inset 3px 0 0 var(--gold)}.as-conv{flex:1;min-width:0;display:grid;gap:.1rem;text-align:left;cursor:pointer;padding:.55rem .75rem;min-height:2.75rem;border:0;background:none;color:var(--ink);border-radius:var(--r-sm)}.as-conv-title{font:600 .88rem/1.35 var(--font-ui);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.as-conv-meta{font:500 .74rem var(--font-ui);color:var(--ink-soft)}.as-conv-del{flex:none;width:2.75rem;border:0;background:none;color:var(--ink-soft);cursor:pointer;display:grid;place-items:center;border-radius:var(--r-sm)}.as-conv-del svg{width:1.05rem;height:1.05rem}.as-conv-del:hover{color:var(--alert-line)}.as-conv-confirm{flex:none;display:flex;align-items:center;gap:var(--s-1);padding-right:var(--s-2)}.as-conv-confirm button{min-height:2.25rem;padding:0 .65rem;border-radius:var(--r-pill);cursor:pointer;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:600 .78rem var(--font-ui)}.as-conv-confirm button.danger{background:var(--crisis-bg);border-color:var(--crisis-bg);color:var(--crisis-ink)}.as-hist-head{display:flex;align-items:center;gap:var(--s-2);margin-bottom:var(--s-3)}.as-hist-head h3{margin:0;font:700 1rem var(--font-ui)}.as-back{display:inline-flex;align-items:center;gap:.15rem;min-height:2.25rem;padding:0 .6rem 0 .3rem;border:1px solid var(--line);border-radius:var(--r-pill);background:transparent;color:var(--ink);font:600 .8rem var(--font-ui);cursor:pointer}.as-back svg{width:1.1rem;height:1.1rem}.as-back:hover{border-color:var(--line-strong)}.as-empty{color:var(--ink-soft);font-size:.9rem;line-height:1.55;margin:var(--s-2) 0}.as-scroll[hidden],.as-compose[hidden]{display:none!important}@media (pointer: coarse){.as-brief-refresh,.as-link,.as-conv-confirm button{min-height:2.75rem}}@media (prefers-reduced-motion: reduce){.as-brief-refresh .spin{animation:none}}
