*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{overflow-x:clip}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}html.lg{font-size:118%}body{min-height:100dvh;background:var(--bg);color:var(--ink);font-family:Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background .35s ease,color .35s ease}button{font-family:inherit;color:inherit}svg{display:block}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}body.rm *,body.rm *:before,body.rm *:after{animation:none!important;transition:none!important}:root{--soil: #2c2620;--loam: #4a4036;--ochre: #c98f3b;--ochre-deep: #a8762c;--moss: #6f8f76;--clay: #b05b47;--linen: #fbf9f4;--r-sm: 12px;--r-md: 16px;--r-lg: 18px;--r-xl: 24px;--space-1: 6px;--space-2: 10px;--space-3: 14px;--space-4: 20px;--space-5: 28px;--safe-bottom: env(safe-area-inset-bottom, 0px)}body{--bg: #1e1b16;--bg-glow: rgba(212, 154, 74, .07);--surface: #27231c;--card: #322c23;--cell-bg: #332d24;--cell-hover: #3d362b;--ghost: rgba(241, 235, 221, .05);--ink: #f1ebdd;--ink-dim: #a89f8e;--line: rgba(241, 235, 221, .11);--accent: #d49a4a;--accent-ink: #2a2013;--calm: #8faf93;--calm-bg: rgba(143, 175, 147, .14);--danger: #ce6e55;--danger-ink: #fff6f0;--danger-bg: rgba(206, 110, 85, .14);--phone-edge: rgba(241, 235, 221, .16);--sheen: rgba(255, 243, 214, .1);--shadow: 0 30px 60px rgba(0, 0, 0, .5);--gold-grad: linear-gradient(160deg, #d9a44e, #bd8430)}body.theme-sun{--bg: #ffffff;--bg-glow: rgba(168, 118, 44, .05);--surface: #ffffff;--card: #f2ede2;--cell-bg: #ede6d6;--cell-hover: #e5dcc7;--ghost: #f7f3ea;--ink: #231e18;--ink-dim: #5c5346;--line: rgba(35, 30, 24, .16);--accent: #9a6c24;--accent-ink: #ffffff;--calm: #4f7258;--calm-bg: rgba(79, 114, 88, .13);--danger: #a8503c;--danger-ink: #ffffff;--danger-bg: rgba(168, 80, 60, .1);--phone-edge: rgba(35, 30, 24, .22);--sheen: rgba(255, 255, 255, .5);--shadow: 0 24px 48px rgba(76, 62, 44, .16);--gold-grad: linear-gradient(160deg, #c08530, #9a6c24)}body.theme-er{--bg: #000000;--bg-glow: transparent;--surface: #0e0e0e;--card: #141414;--cell-bg: #161616;--cell-hover: #222222;--ghost: #0c0c0c;--ink: #ffffff;--ink-dim: #c9c9c9;--line: rgba(255, 255, 255, .3);--accent: #ffc857;--accent-ink: #000000;--calm: #9fe3b0;--calm-bg: rgba(159, 227, 176, .14);--danger: #ff6b4a;--danger-ink: #000000;--danger-bg: rgba(255, 107, 74, .16);--phone-edge: rgba(255, 255, 255, .4);--sheen: transparent;--shadow: 0 0 0 1px rgba(255, 255, 255, .15);--gold-grad: linear-gradient(160deg, #ffc857, #f4b33d)}body.theme-night{--bg: #160b08;--bg-glow: rgba(255, 122, 92, .05);--surface: #1e100b;--card: #26140e;--cell-bg: #28150f;--cell-hover: #331b13;--ghost: rgba(255, 170, 140, .05);--ink: #ffc9b5;--ink-dim: #b47f6d;--line: rgba(255, 170, 140, .16);--accent: #ff8a63;--accent-ink: #1e0b06;--calm: #e8a88e;--calm-bg: rgba(232, 168, 142, .12);--danger: #ff5c38;--danger-ink: #1e0b06;--danger-bg: rgba(255, 92, 56, .15);--phone-edge: rgba(255, 170, 140, .2);--sheen: transparent;--shadow: 0 30px 60px rgba(0, 0, 0, .6);--gold-grad: linear-gradient(160deg, #ff8a63, #e06440)}body.theme-er .comb:after,body.theme-night .comb:after{display:none}@font-face{font-family:Fraunces;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/fraunces-var.woff2) format("woff2")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/jakarta-var.woff2) format("woff2")}.serif,h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:500;line-height:1.18}.label{font-family:Plus Jakarta Sans,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.2em;font-size:.66rem;font-weight:700}.eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:.66rem;color:var(--accent);font-weight:700}.hex{clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%)}.comb{--hw: calc((min(480px, 100vw) - 46px) / 3);--hh: calc(var(--hw) * 1.1547);--hgap: 6px;display:flex;flex-direction:column;align-items:center;position:relative;margin-bottom:12px}.comb-row{display:flex;gap:var(--hgap);justify-content:center}.comb-row+.comb-row{margin-top:calc(var(--hh) * -.25 + var(--hgap) * .866)}.cell{width:var(--hw);height:var(--hh);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2px;padding:14px 9px;background:var(--cell-bg);transition:background .3s ease;cursor:pointer;border:none;color:var(--ink)}.cell:hover{background:var(--cell-hover)}.cell svg{width:calc(var(--hw) * .17);height:calc(var(--hw) * .17)}.cell b{font-size:.66rem;font-weight:600;line-height:1.25;letter-spacing:.02em;color:var(--ink)}.cell small{font-size:.56rem;color:var(--ink-dim);line-height:1.25}.cell .stat{font-family:Fraunces,serif;font-size:1.05rem;color:var(--accent);line-height:1.1;font-weight:500}.cell.gold{background:var(--gold-grad)}.cell.gold b,.cell.gold small{color:var(--accent-ink)}.cell.gold small{opacity:.8}.cell.gold svg{stroke:var(--accent-ink)}.cell.calmcell{background:var(--calm-bg)}.cell.calmcell .stat{color:var(--calm)}.cell.ghost{background:var(--ghost);cursor:default}.cell.ghost b{color:var(--ink-dim)}.cell.dim{background:var(--cell-bg);cursor:default}.cell.dim b{color:var(--ink-dim)}.cell.dim small{opacity:.8}.cell.dim svg{stroke:var(--ink-dim)}.comb:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 38%,var(--sheen) 49%,var(--sheen) 51%,transparent 62%);background-size:260% 100%;background-position:130% 0;animation:sheen 9s ease-in-out infinite;mix-blend-mode:soft-light}@keyframes sheen{0%{background-position:130% 0}55%{background-position:-130% 0}to{background-position:-130% 0}}@media(prefers-reduced-motion:reduce){.comb:after{animation:none;opacity:0}.cell{transition:none}}body.rm .comb:after{animation:none!important;opacity:0}.theme-picker{position:relative}.hex-trigger{width:38px;height:44px;border:none;background:var(--cell-bg);color:var(--accent);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .35s ease}.hex-trigger.open{background:color-mix(in srgb,var(--accent) 28%,var(--cell-bg))}.ticon{display:flex;transition:transform .45s cubic-bezier(.34,1.56,.64,1)}.hex-trigger.open .ticon{transform:rotate(120deg)}.hex-trigger:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.theme-panel{position:absolute;top:calc(100% + 6px);right:-6px;z-index:60;pointer-events:none;opacity:0;visibility:hidden;transform:scale(.08);transform-origin:calc(100% - 25px) -28px;transition:transform .4s cubic-bezier(.5,0,.7,.4),opacity .3s ease,visibility 0s linear .4s}.theme-panel.open{pointer-events:auto;opacity:1;visibility:visible;transform:scale(1);transition:transform .65s cubic-bezier(.34,1.45,.64,1),opacity .35s ease,visibility 0s}.bloom{position:relative;width:260px;height:250px;display:flex;align-items:center;justify-content:center}.bloom-circle{position:absolute;inset:6px;border-radius:50%;background:color-mix(in srgb,var(--accent) 22%,transparent);filter:blur(18px);opacity:0;transition:opacity .3s ease,background .5s ease}.open .bloom-circle{opacity:1;transition:opacity .7s ease .25s,background .5s ease}.bloom-rot{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transform:rotate(0);opacity:0;transition:transform .35s ease,opacity .25s ease}.open .bloom-rot{transform:rotate(30deg);opacity:1;transition:transform .85s cubic-bezier(.34,1.25,.64,1) .1s,opacity .55s ease .1s}.bloom-main{position:relative;filter:drop-shadow(1px 0 0 color-mix(in srgb,var(--accent) 75%,transparent)) drop-shadow(-1px 0 0 color-mix(in srgb,var(--accent) 75%,transparent)) drop-shadow(0 1px 0 color-mix(in srgb,var(--accent) 75%,transparent)) drop-shadow(0 -1px 0 color-mix(in srgb,var(--accent) 75%,transparent)) drop-shadow(0 16px 26px rgba(0,0,0,.35))}.fs-row{display:flex;justify-content:center}.fs-cell{background:var(--surface);transition:background .5s ease}.fs-back .fs-row+.fs-row{margin-top:-17.9px}.fs-back .fs-cell{width:62px;height:71.6px}.fs-rot .fs-row+.fs-row{margin-top:-19.6px}.fs-rot .fs-cell{width:68px;height:78.5px;background:color-mix(in srgb,var(--calm) 34%,var(--surface))}.fs-front{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.t-row{display:flex;gap:4px;justify-content:center}.t-row+.t-row{margin-top:-12px}.t-cell{width:54px;height:62px;border:none;cursor:pointer;background:var(--cell-bg);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transform:scale(.35);opacity:0;transition:background .5s ease,transform .3s ease,opacity .2s ease}.open .t-cell{transform:scale(1);opacity:1;transition:background .5s ease,transform .55s cubic-bezier(.34,1.56,.64,1),opacity .4s ease}.open .ring-0{transition-delay:.08s}.open .ring-1{transition-delay:.22s}.open .ring-2{transition-delay:.36s}.t-cell small{font-size:.46rem;letter-spacing:.04em;color:var(--ink-dim);font-weight:600}.t-cell.on{background:var(--gold-grad);color:var(--accent-ink)}.t-cell.on small{color:var(--accent-ink)}.t-cell.tg-on{background:var(--calm-bg)}.t-cell.tg-on small{color:var(--calm)}.t-cell .aa-glyph{font-size:.8rem;font-weight:700;line-height:1}.t-cell.t-center{background:var(--ghost);color:var(--accent);cursor:default}.t-cell:focus-visible{outline:3px solid var(--accent);outline-offset:-4px}@media(prefers-reduced-motion:reduce){.theme-panel,.t-cell,.bloom-rot,.bloom-circle,.ticon{transition:none!important}}body.rm .theme-panel,body.rm .t-cell,body.rm .bloom-rot,body.rm .bloom-circle,body.rm .ticon{transition:none!important}.shell{max-width:480px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;position:relative}.app-bar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.app-id{display:flex;align-items:center;gap:9px;background:none;border:none;cursor:pointer;text-align:left;padding:0}.app-id .lname{font-family:Fraunces,serif;font-size:1rem;font-weight:500;line-height:1.15;color:var(--ink)}.app-id .lname small{display:block;font-family:Plus Jakarta Sans,sans-serif;font-size:.55rem;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);font-weight:700}.app-bar-right{display:flex;align-items:center;gap:10px}.shell-main{flex:1;display:flex;flex-direction:column}.has-help-bar .shell-main{padding-bottom:88px}.screen{padding:18px 16px 8px;display:flex;flex-direction:column;flex:1}.screen-spacer{flex:1}.home-content{display:flex;flex-direction:column;flex:1}.home-hero{padding:4px 4px 14px}.home-hero .eyebrow{display:block;margin-bottom:6px}.greet{font-size:1.5rem;line-height:1.3;padding:2px 0 0}.screen-home .comb{flex:1;justify-content:center;margin-bottom:0}.home-status{display:flex;flex-direction:column;gap:2px;border-radius:var(--r-md);padding:12px 14px;margin:0 0 12px;font-size:.78rem;line-height:1.45}.home-status b{font-weight:700}.home-status span{color:var(--ink-dim);font-weight:300}.home-status-calm{background:var(--calm-bg);border:1px solid var(--calm)}.home-status-calm b{color:var(--calm)}.home-status-danger{background:var(--danger-bg);border:1px solid var(--danger)}.home-status-danger b{color:var(--danger)}.cell.dim:focus-visible{outline:none}.help-now-bar{position:fixed;left:50%;bottom:calc(16px + var(--safe-bottom));transform:translate(-50%);z-index:40;width:min(calc(100% - 32px),448px);background:var(--danger);color:var(--danger-ink);border:none;border-radius:var(--r-lg);padding:17px;font-size:1rem;font-weight:700;letter-spacing:.02em;cursor:pointer;box-shadow:0 8px 24px #00000040}.help-now-bar:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.esc-banner{background:var(--danger-bg);border:1.5px solid var(--danger);border-radius:var(--r-md);padding:13px 15px;font-size:.8rem;line-height:1.5;margin-bottom:14px}.esc-banner b{color:var(--danger)}.help-title{font-size:1.5rem;margin-bottom:2px}.help-sub{color:var(--ink-dim);font-size:.8rem;font-weight:300;margin-bottom:16px}.proto{display:flex;flex-direction:column;gap:8px}.proto-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;width:100%;text-align:left;color:var(--ink);font:inherit}.proto-card span:first-child{font-size:.85rem;font-weight:600}.chev{color:var(--accent);font-weight:700}.review-flag{font-size:.7rem;color:var(--ink-dim);font-weight:300;margin-top:14px;line-height:1.5}.review-flag b{color:var(--danger);font-weight:700;letter-spacing:.04em}.secondary-action{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-lg);padding:15px;font-size:.95rem;font-weight:600;cursor:pointer;width:100%;margin-bottom:calc(8px + var(--safe-bottom))}.back-action{margin-top:20px}.ob{align-items:stretch;text-align:center;padding:16px 22px}.ob-back{align-self:flex-start;background:none;border:none;color:var(--ink-dim);font-size:.9rem;font-weight:600;cursor:pointer;padding:6px 8px 6px 0;margin-bottom:2px}.ob-back:hover{color:var(--ink)}.ob-mark{display:flex;justify-content:center;margin:18px 0 14px}.ob-welcome{justify-content:flex-start}.ob-welcome .ob-mark,.ob-welcome .ob-primary{margin-top:8px}.ob-headline{font-size:1.7rem;line-height:1.22;margin-bottom:14px}.ob-headline-sm{font-size:1.35rem;line-height:1.25;margin:6px 0 14px}.ob .eyebrow{display:block;margin-bottom:6px}.ob-body{color:var(--ink-dim);font-weight:300;font-size:.92rem;line-height:1.6;margin-bottom:18px}.ob-disclaimer{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 16px 12px;text-align:left;font-size:.85rem;line-height:1.55;color:var(--ink);display:grid;gap:10px;margin-bottom:18px}.ob-disclaimer b{font-weight:700}.ob-urgent{background:var(--danger-bg);border-left:3px solid var(--danger);border-radius:0 var(--r-sm) var(--r-sm) 0;padding:10px 12px}.ob-list-lead{font-weight:600;margin:0 0 6px}.ob-signal-list,.ob-ack-list{margin:0;padding-left:1.15em;display:grid;gap:6px}.ob-privacy-list{list-style:none;display:grid;gap:10px;margin-bottom:18px;text-align:left}.ob-privacy-list li{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px 12px 38px;font-size:.88rem;line-height:1.55;color:var(--ink)}.ob-privacy-list li:before{content:"✓";position:absolute;left:14px;top:12px;color:var(--calm);font-weight:700}.ob-check{display:flex;align-items:flex-start;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:14px;text-align:left;font-size:.88rem;line-height:1.5;color:var(--ink);cursor:pointer}.ob-check input{flex:none;width:22px;height:22px;margin:1px 0 0;accent-color:var(--accent);cursor:pointer}.ob-check:focus-within{border-color:var(--accent)}.ob-check:has(input:checked){background:var(--calm-bg);border-color:var(--calm)}.ob-primary{background:var(--gold-grad);color:var(--accent-ink);border:none;border-radius:var(--r-lg);padding:16px;font-size:1rem;font-weight:700;cursor:pointer;width:100%;margin-top:auto}.ob-primary:disabled{background:var(--ghost);color:var(--ink-dim);cursor:not-allowed}.ob-secondary{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px;font-size:1rem;font-weight:600;cursor:pointer;flex:1}.ob-row{display:flex;gap:10px;margin-top:auto}.ob-row .ob-primary{flex:1;margin-top:0}.ob-dots{display:flex;gap:7px;justify-content:center;margin:18px 0 14px}.ob-dots .dot{width:7px;height:7px;border-radius:99px;background:var(--line);transition:width .25s ease,background .25s ease,opacity .25s ease}.ob-dots .dot.done{background:var(--accent);opacity:.4}.ob-dots .dot.on{width:20px;background:var(--accent)}body.rm .ob-dots .dot{transition:none}.ob-bloom{display:flex;justify-content:center;align-items:center;margin:2px 0 8px}.ob-bloom .bloom-circle{opacity:1}.ob-bloom .bloom-rot{transform:rotate(30deg);opacity:1}.ob-bloom .t-cell{transform:none;opacity:1}.ob-bloom .bloom-circle{animation:ob-bloom-glow .8s ease .15s both}.ob-bloom .bloom-rot{animation:ob-bloom-rot .85s cubic-bezier(.34,1.25,.64,1) .1s both}.ob-bloom .ring-0{animation:ob-bloom-pop .55s cubic-bezier(.34,1.56,.64,1) .12s both}.ob-bloom .ring-1{animation:ob-bloom-pop .55s cubic-bezier(.34,1.56,.64,1) .24s both}.ob-bloom .ring-2{animation:ob-bloom-pop .55s cubic-bezier(.34,1.56,.64,1) .36s both}@keyframes ob-bloom-pop{0%{transform:scale(.35);opacity:0}to{transform:scale(1);opacity:1}}@keyframes ob-bloom-rot{0%{transform:rotate(0);opacity:0}to{transform:rotate(30deg);opacity:1}}@keyframes ob-bloom-glow{0%{opacity:0}to{opacity:1}}@media(max-height:720px){.ob-bloom{margin:-14px 0 -10px}.ob-bloom .bloom{transform:scale(.85)}}@media(prefers-reduced-motion:reduce){.ob-bloom .bloom-circle,.ob-bloom .bloom-rot,.ob-bloom .ring-0,.ob-bloom .ring-1,.ob-bloom .ring-2{animation:none}}body.rm .ob-bloom .bloom-circle,body.rm .ob-bloom .bloom-rot,body.rm .ob-bloom .ring-0,body.rm .ob-bloom .ring-1,body.rm .ob-bloom .ring-2{animation:none!important}.ob-hero{margin:4px 0 0}.ob-mark-onhero{margin:12px 0 10px}.ob-chips{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:2px 0 8px}.ob-chips li{background:var(--calm-bg);color:var(--calm);border-radius:99px;padding:6px 12px;font-size:.72rem;font-weight:600}.ob-body-tip{color:var(--calm);font-weight:600;font-size:.84rem;margin-top:-8px}.ob-install-help{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px;text-align:left;font-size:.8rem;color:var(--ink-dim);display:grid;gap:6px;margin-bottom:8px}.ob-install-help b{color:var(--ink);font-weight:700}.ob-install-note{font-size:.74rem;color:var(--ink-dim);font-weight:300;margin:2px 0 6px}.ob-installed-chip{align-self:center;background:var(--calm-bg);color:var(--calm);border-radius:99px;padding:8px 16px;font-size:.84rem;font-weight:700;margin:2px 0 10px}.ob-install-steps{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px;text-align:left;font-size:.86rem;color:var(--ink);margin-bottom:10px}.ob-install-steps-title{margin:0 0 8px}.ob-install-steps ol{margin:0;padding-left:1.2em;display:grid;gap:7px;color:var(--ink-dim)}.ob-install-steps ol b{color:var(--ink);font-weight:700}.ob-install-steps .ob-install-note{margin:10px 0 0}.ob-install-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:1.05rem}.ob-install-cta span{font-size:1.15rem;line-height:1}.ob-skip-link{align-self:center;background:none;border:none;color:var(--ink-dim);font-size:.84rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;padding:12px;margin-top:8px;cursor:pointer}.ob-skip-danger{color:var(--danger)}.ob-leave-warn{background:var(--danger-bg);border:1.5px solid var(--danger);border-radius:var(--r-md);padding:16px;margin-bottom:14px}.ob-leave-warn .ob-headline-sm{color:var(--danger);margin-bottom:8px}.ob-leave-row{margin-top:4px}.refresh-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 16px 0;padding:10px 14px;background:var(--calm-bg);border:1px solid var(--calm);border-radius:var(--r-md);font-size:.82rem;color:var(--ink)}.refresh-actions{display:flex;align-items:center;gap:8px}.refresh-apply{background:var(--calm);color:var(--bg);border:none;border-radius:99px;padding:7px 14px;font-size:.78rem;font-weight:700;cursor:pointer}.refresh-dismiss{background:none;border:none;color:var(--ink-dim);font-size:.9rem;cursor:pointer;padding:4px 6px}.oh-hero{position:relative;width:100%;border-radius:var(--r-lg);overflow:hidden;box-shadow:inset 0 0 0 1px var(--line);background:var(--bg)}.oh-hero--compact{aspect-ratio:400 / 120}.oh-svg{display:block;width:100%;height:100%}.oh-hero--compact,.oh-hero--compact .oh-sun,.oh-hero--compact .oh-star,.oh-hero--compact .oh-altar,.oh-hero--compact .oh-drop{animation:none}.ob-splash{position:fixed;inset:0;margin:0 auto;width:min(100%,480px);z-index:30;cursor:pointer;clip-path:inset(0 0 0 0 round 0px);transition:transform .65s cubic-bezier(.3,.9,.35,1),clip-path .65s cubic-bezier(.15,1,.3,1),opacity .25s ease .4s}.ob-splash .oh-hero{position:absolute;inset:0;height:100%;border-radius:0;box-shadow:none;animation:oh-fade-in .7s ease both}.ob-splash .oh-sky,.ob-splash .oh-dune{transition:opacity .22s ease}.ob-splash.folding .oh-sky,.ob-splash.folding .oh-dune{opacity:0}.ob-splash.folding .oh-star{animation:none;opacity:0}.ob-splash.folding{transform:translate(var(--fold-x, 0px),var(--fold-y, -38vh)) scale(var(--fold-k, .24));clip-path:inset(var(--fold-clip-top, 25vh) 0 var(--fold-clip-bottom, 25vh) 0 round calc(var(--r-lg) / var(--fold-k, .24)));opacity:0;pointer-events:none}.oh-hero--compact{transition:opacity .35s ease}.shell.ob-splashing .oh-hero--compact{visibility:hidden;opacity:0}.shell.ob-splashing .ob-anim-compact .ob-content>*{opacity:0;animation:none}@keyframes oh-fade-in{0%{opacity:0}to{opacity:1}}.oh-hero--splash .oh-sun{transform-box:fill-box;transform-origin:center;animation:oh-breathe 13s ease-in-out infinite,oh-sun-dim .8s ease 1.35s both}@keyframes oh-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes oh-sun-dim{0%{opacity:1}to{opacity:.66}}.oh-hero--splash .oh-star{animation:oh-twinkle 9s ease-in-out infinite}.oh-hero--splash .oh-tw-0{animation-delay:0s}.oh-hero--splash .oh-tw-1{animation-delay:-3s}.oh-hero--splash .oh-tw-2{animation-delay:-6s}@keyframes oh-twinkle{0%,to{opacity:.85}50%{opacity:.32}}.oh-altar,.oh-drop{transform-box:fill-box;transform-origin:center}.oh-hero--splash .oh-altar{animation:oh-fly-right .9s cubic-bezier(.22,1,.36,1) .7s both}.oh-hero--splash .oh-drop{animation:oh-fly-left .9s cubic-bezier(.22,1,.36,1) .72s both}@keyframes oh-fly-right{0%{transform:translate(62px,30px) scale(.4) rotate(12deg);opacity:0}60%{opacity:1}to{transform:none;opacity:1}}@keyframes oh-fly-left{0%{transform:translate(-62px,30px) scale(.4) rotate(-12deg);opacity:0}60%{opacity:1}to{transform:none;opacity:1}}.ob-content{display:contents}.ob-anim-compact .ob-content>*{animation:oh-reveal .45s ease .1s both}@keyframes oh-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.ob-splash{display:none}.oh-hero--splash .oh-sun,.oh-hero--splash .oh-star,.oh-hero--splash .oh-altar,.oh-hero--splash .oh-drop,.ob-anim-compact .ob-content>*{animation:none!important}}body.rm .ob-splash{display:none}body.rm .oh-hero--splash .oh-sun,body.rm .oh-hero--splash .oh-star,body.rm .oh-hero--splash .oh-altar,body.rm .oh-hero--splash .oh-drop,body.rm .ob-anim-compact .ob-content>*{animation:none!important}.screen-howto #howto-title{font-size:1.5rem;margin-bottom:2px}.screen-howto .howto-lead{color:var(--ink-dim);font-size:.8rem;font-weight:300;line-height:1.5;margin-bottom:16px}.screen-howto .howto-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:15px 16px 14px;margin-bottom:12px;display:grid;gap:6px;text-align:left}.screen-howto .howto-card .eyebrow{display:block;margin-bottom:4px}.screen-howto .howto-card p{color:var(--ink);font-size:.86rem;font-weight:300;line-height:1.5}.screen-howto .howto-card .review-flag{margin-top:4px}.screen-howto .howto-stamp{border-style:dashed}.screen-howto .howto-build{margin-top:2px;font-size:.62rem;letter-spacing:.12em;color:var(--ink-dim);opacity:.55;font-variant-numeric:tabular-nums}.screen-rights h1,.screen-consent h1{font-size:1.5rem;margin-bottom:2px}.doc-lead{color:var(--ink-dim);font-size:.8rem;font-weight:300;line-height:1.5;margin-bottom:4px}.screen-rights .review-flag,.screen-consent .review-flag{margin-top:0;margin-bottom:14px}.doc-cards{display:grid;gap:10px}.doc-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg)}.doc-card summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:14px 16px;color:var(--ink)}.doc-card summary::-webkit-details-marker{display:none}.doc-card-title{font-size:.85rem;font-weight:600;line-height:1.35}.doc-card summary .chev{margin-left:auto}.doc-card[open] summary .chev{transform:rotate(90deg)}.doc-card-body{padding:0 16px 15px;display:grid;gap:8px;text-align:left}.doc-card-body p,.doc-card-body li,.doc-card-body dd{color:var(--ink);font-size:.86rem;font-weight:300;line-height:1.5}.doc-sub{display:grid;gap:6px;margin-top:6px}.doc-sub-title{text-transform:uppercase;letter-spacing:.18em;font-size:.66rem;color:var(--accent);font-weight:700}.doc-list,.doc-steps{margin:0;padding-left:20px;display:grid;gap:6px}.doc-details{margin:0;display:grid;gap:8px}.doc-detail dt{font-size:.74rem;font-weight:700;color:var(--ink);letter-spacing:.04em;margin-bottom:2px}.doc-detail dd{margin:0}.screen-settings #settings-title{font-size:1.5rem;margin-bottom:14px}.screen-settings .settings-section{margin-bottom:22px}.screen-settings .settings-section .eyebrow{display:block;margin-bottom:8px}.screen-settings .settings-line{color:var(--ink-dim);font-size:.82rem;font-weight:300;line-height:1.5;margin-bottom:6px}.screen-settings .ob-bloom{justify-content:center;margin:4px 0 0}.dev-card{display:flex;flex-direction:column;gap:var(--space-2)}.dev-state{font-size:.85rem;color:var(--ink)}.dev-form{display:flex;flex-direction:column;gap:var(--space-2)}.dev-form label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;color:var(--ink-dim)}.dev-form input[type=number]{min-height:40px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font-size:.9rem}.dev-form input[type=range]{width:100%}.dev-scale-out{font-weight:600;color:var(--ink)}.dev-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.dev-status{font-size:.78rem;color:var(--calm)}.screen-settings .settings-disclaimer{margin-top:8px;color:var(--ink-dim);font-size:.7rem;font-weight:300;line-height:1.45}.screen-settings .settings-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 16px 14px;display:grid;gap:4px;text-align:left}.screen-settings .settings-app-name{font-size:1.1rem;color:var(--ink);line-height:1.25}.screen-settings .settings-app-sub{color:var(--ink-dim);font-size:.8rem;font-weight:300;line-height:1.4}.screen-settings .settings-promise{color:var(--ink);font-size:.84rem;font-weight:300;line-height:1.5;margin-top:6px}.screen-settings .settings-version{margin-top:10px;font-size:.82rem;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}.screen-settings .settings-build{margin-top:1px;font-size:.62rem;letter-spacing:.1em;color:var(--ink-dim);opacity:.55;font-variant-numeric:tabular-nums}.screen-settings .storage-card{gap:6px}.screen-settings .storage-state{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:.86rem;font-weight:600;line-height:1.4}.screen-settings .storage-dot{flex:none;width:9px;height:9px;border-radius:50%;background:var(--ghost)}.screen-settings .storage-dot.is-ready{background:var(--calm)}.screen-settings .storage-sub{color:var(--ink-dim);font-size:.78rem;font-weight:300;line-height:1.45;font-variant-numeric:tabular-nums}.screen-settings .storage-warn{color:var(--calm);font-weight:600}.screen-settings .storage-refresh{margin-top:8px;align-self:stretch}.screen-settings .storage-refresh[disabled]{opacity:.5;cursor:not-allowed}.screen-settings .storage-hint{color:var(--ink-dim);font-size:.72rem;font-weight:300;line-height:1.4;opacity:.85}.screen-map{display:flex;flex-direction:column;gap:var(--space-2)}.screen-map .map-head{display:flex;align-items:baseline;gap:10px;min-width:0}.screen-map .map-head h1{font-size:1.25rem;margin:0;flex:none}.screen-map .map-sub{color:var(--ink-dim);font-size:.76rem;font-weight:300;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.screen-map .map-body{display:flex;flex-direction:column;gap:var(--space-2)}.screen-map .map-foot{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--line);display:flex;flex-direction:column;gap:3px}.screen-map .review-flag{color:var(--ink-dim);font-size:.68rem;font-weight:300;line-height:1.4}.screen-map .review-flag b{color:var(--ink-dim);font-weight:600;letter-spacing:.02em}.screen-map .map-disclaimer{color:var(--ink-dim);font-size:.66rem;font-weight:300;line-height:1.4;opacity:.85}.map-controls-row{display:flex;align-items:center;gap:var(--space-2);min-width:0}.map-controls-row .map-layers{flex:1;min-width:0}.map-layers{display:flex;flex-wrap:nowrap;gap:var(--space-1);overflow-x:auto;padding-bottom:2px;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x proximity;-webkit-mask-image:linear-gradient(90deg,#000 92%,transparent);mask-image:linear-gradient(90deg,#000 92%,transparent)}.map-layers::-webkit-scrollbar{display:none}.layer-chip{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;scroll-snap-align:start;min-height:30px;padding:4px 10px 4px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-dim);font-size:.74rem;font-weight:400;white-space:nowrap;cursor:pointer}.layer-chip.on{border-color:var(--calm);background:var(--calm-bg);color:var(--ink)}.layer-chip.locked{cursor:default}.layer-chip .chip-dot{flex:none;width:9px;height:9px;border-radius:50%;background:var(--calm);opacity:.4}.layer-chip.on .chip-dot{opacity:1}.layer-chip.dot-medical .chip-dot{background:var(--danger)}.layer-chip.dot-muted .chip-dot{background:var(--ink-dim)}.layer-chip .chip-count{font-size:.66rem;color:var(--ink-dim);font-variant-numeric:tabular-nums;opacity:.75}.layer-chip.on .chip-count{opacity:1}.map-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.map-list-empty{color:var(--ink-dim);font-size:.85rem;padding:var(--space-3) 0}.map-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--cell-bg);color:var(--ink);text-align:left;cursor:pointer}.map-row.selected{border-color:var(--calm);background:var(--cell-hover)}.map-row .row-main{display:flex;flex-direction:column;gap:2px;min-width:0}.map-row .row-name{display:inline-flex;align-items:center;gap:6px;font-weight:500;font-size:.92rem}.map-row .row-where{color:var(--ink-dim);font-size:.78rem}.map-row .row-kind{flex:none;color:var(--ink-dim);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.map-row.is-medical{border-color:var(--danger)}.map-row.is-medical .row-kind{color:var(--danger)}.map-sheet{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.map-sheet.is-medical{border-color:var(--danger)}.map-sheet .sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.map-sheet .sheet-kind{display:block;color:var(--ink-dim);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.map-sheet .sheet-titles h2{display:inline-flex;align-items:center;gap:8px;font-size:1.15rem}.map-sheet .sheet-close{flex:none;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink-dim);cursor:pointer}.map-sheet .sheet-facts{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:0;font-size:.85rem}.map-sheet .sheet-facts dt{color:var(--ink-dim);font-weight:400}.map-sheet .sheet-facts dd{margin:0;color:var(--ink)}.map-sheet .sheet-boundary{font-size:.78rem;color:var(--ink-dim);line-height:1.45}.map-sheet .sheet-unverified{font-size:.74rem;color:var(--ink-dim);line-height:1.4}.sheet-navigate,.origin-set,.origin-gps{min-height:44px;padding:12px 18px;border:1px solid var(--calm);border-radius:var(--r-md);background:var(--calm-bg);color:var(--ink);font-weight:600;font-size:.95rem;cursor:pointer}.sheet-navigate.is-medical{border-color:var(--danger);background:var(--danger-bg)}.origin-for,.route-origin{font-size:.85rem;color:var(--ink)}.origin-input{display:flex;flex-direction:column;gap:var(--space-2);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card);padding:var(--space-3)}.origin-input .origin-title{font-size:1.1rem}.origin-gps-note,.origin-hint{color:var(--ink-dim);font-size:.74rem;line-height:1.4}.origin-fields{display:flex;flex-wrap:wrap;gap:var(--space-3)}.origin-field{display:flex;flex-direction:column;gap:4px;font-size:.78rem;color:var(--ink-dim)}.origin-clock{display:inline-flex;align-items:center;gap:6px}.origin-input select{min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font-size:.95rem}.origin-actions{display:flex;gap:var(--space-2);align-items:center}.route-summary{display:flex;flex-direction:column;gap:var(--space-2);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card);padding:var(--space-3)}.route-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.route-eyebrow{color:var(--ink-dim);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.route-dest{font-size:1.15rem}.route-distance{flex:none;font-size:1rem;font-weight:600;color:var(--ink)}.route-origin{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;color:var(--ink-dim)}.route-update{min-height:36px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:.78rem;cursor:pointer}.route-mode{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;align-self:flex-start}.mode-btn{min-height:40px;padding:8px 18px;border:none;background:var(--surface);color:var(--ink-dim);font-size:.85rem;font-weight:500;cursor:pointer}.mode-btn.on{background:var(--calm-bg);color:var(--ink)}.route-steps{margin:0;padding-left:1.4em;display:flex;flex-direction:column;gap:6px}.route-step{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);font-size:.88rem;color:var(--ink)}.route-step.is-open{color:var(--ink-dim);font-style:italic}.route-step .step-dist{flex:none;color:var(--ink-dim);font-size:.76rem}.map-view-toggle{display:inline-flex;flex:none;align-self:flex-start;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:var(--surface)}.view-btn{min-height:34px;padding:7px 16px;border:none;background:transparent;color:var(--ink-dim);font-size:.8rem;font-weight:500;letter-spacing:.01em;cursor:pointer}.view-btn.on{background:var(--calm-bg);color:var(--ink)}.map-browse,.map-route{display:flex;flex-direction:column;gap:var(--space-2)}.map-plate{width:100%;padding:6px;border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);box-shadow:0 1px 0 var(--sheen) inset,var(--shadow)}.map-canvas-host{position:relative;width:100%;height:min(68vh,660px);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:var(--surface);touch-action:none}.map-canvas-host>.map-gl{position:absolute;inset:0;width:100%;height:100%}.map-canvas-host:after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:inherit;background:radial-gradient(circle at 50% 44%,var(--bg-glow),transparent 58%);box-shadow:0 0 0 1px var(--line) inset,0 0 70px #00000047 inset}body.theme-er .map-canvas-host:after{background:none;box-shadow:0 0 0 1px var(--line) inset}.map-pins-host,.map-pins{position:absolute;inset:0;z-index:2;pointer-events:none}.map-controls-host{position:absolute;inset:0;z-index:4;pointer-events:none}.map-controls{position:absolute;inset:0;pointer-events:none}.map-controls-cluster{position:absolute;top:10px;right:10px;display:flex;flex-direction:column;gap:6px;pointer-events:auto}.map-ctl{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);display:grid;place-items:center;font-size:1.15rem;font-weight:500;cursor:pointer}.map-ctl:disabled{opacity:.45;cursor:default}.map-ctl.on{background:var(--calm-bg);border-color:var(--calm);color:var(--calm)}.map-status-chip{position:absolute;left:10px;bottom:10px;max-width:calc(100% - 76px);padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-dim);font-size:.74rem;line-height:1.35;pointer-events:none}.map-unavailable{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3);text-align:center;color:var(--ink-dim);font-size:.85rem;line-height:1.45}.map-use-list{min-height:44px;padding:10px 18px;border:1px solid var(--calm);border-radius:var(--r-md);background:var(--calm-bg);color:var(--ink);font-weight:600;cursor:pointer}.map-pin{position:absolute;width:44px;height:44px;transform:translate(-50%,-50%);display:grid;place-items:center;background:none;border:none;padding:0;cursor:pointer;pointer-events:auto}.map-pin .pin-dot{width:14px;height:14px;border-radius:50%;background:var(--calm);border:2px solid var(--bg);box-shadow:0 0 0 1px var(--line);display:grid;place-items:center}.map-pin.is-medical .pin-dot{background:var(--danger)}.map-pin.pin-landmark .pin-dot,.map-pin.pin-reference .pin-dot{background:var(--ink-dim)}.map-pin.selected .pin-dot{box-shadow:0 0 0 3px var(--calm)}.pin-you,.pin-dest{position:absolute;transform:translate(-50%,-50%);pointer-events:none}.dev-test-banner{display:flex;flex-direction:column;gap:2px;padding:8px 14px;border-radius:var(--r-sm);background:#4b56b8;color:#fff;font-size:.74rem;line-height:1.3}.dev-test-banner b{letter-spacing:.06em}.origin-gps{align-self:stretch}.route-controls{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.compass-toggle{min-height:40px;padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:.82rem;font-weight:500;cursor:pointer}.compass-toggle.on{background:var(--calm-bg);border-color:var(--calm)}.map-compass-wrap{display:flex;flex-direction:column;align-items:center;gap:6px;padding:var(--space-3) 0}.compass-rose{width:96px;height:96px;border-radius:50%;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;color:var(--calm)}.compass-arrow{display:grid;place-items:center;transition:transform .12s ease-out}body.rm .compass-arrow,body.theme-er .compass-arrow,body.theme-night .compass-arrow{transition:none}.compass-note{color:var(--ink-dim);font-size:.76rem;text-align:center}.pin-you .you-dot{display:block;width:16px;height:16px;border-radius:50%;background:var(--ink);border:3px solid var(--bg);box-shadow:0 0 0 2px var(--ink)}.pin-dest{color:var(--ink)}
