@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-italic-DKMiL14s.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-display:"Archivo Variable", system-ui, sans-serif;--font-serif:"Instrument Serif", Georgia, serif;--font-body:"Inter Variable", system-ui, sans-serif;--font-mono:"Geist Mono Variable", ui-monospace, SFMono-Regular, Menlo, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:40px;--rail-max:1280px;--bar-height:48px;--ease-reveal:cubic-bezier(.215, .61, .355, 1);--ease-draw:cubic-bezier(.25, .46, .45, .94);--bg:#f2f1ee;--bg-raised:#faf9f7;--bg-sunken:#e9e8e4;--ink:#101014;--ink-strong:#000;--muted:#1010149e;--faint:#1010146b;--line:#10101429;--line-strong:#10101466;--accent:#2d81ff;--accent-ink:#1659c4;--invert-bg:#101014;--invert-fg:#f2f1ee;--danger:#b3261e;--ok:#167a45;--warn:#9a6200;--scanline:#10101408;--theme-color:#f2f1ee;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#121316;--bg-raised:#101014;--bg-sunken:#060607;--ink:#f2f1ee;--ink-strong:#fff;--muted:#f2f1ee99;--faint:#f2f1ee61;--line:#f2f1ee26;--line-strong:#f2f1ee66;--accent:#2d81ff;--accent-ink:#74aaff;--invert-bg:#fff;--invert-fg:#0b0b0c;--danger:#ff6259;--ok:#3ecf8e;--warn:#f2b84b;--scanline:#ffffff06;--theme-color:#0b0b0c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme]){--bg:#121316;--bg-raised:#101014;--bg-sunken:#060607;--ink:#f2f1ee;--ink-strong:#fff;--muted:#f2f1ee99;--faint:#f2f1ee61;--line:#f2f1ee26;--line-strong:#f2f1ee66;--accent-ink:#74aaff;--invert-bg:#fff;--invert-fg:#0b0b0c;--danger:#ff6259;--ok:#3ecf8e;--warn:#f2b84b;--scanline:#ffffff06;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box}@property --bg{syntax:"<color>";inherits:true;initial-value:#f2f1ee}@property --bg-raised{syntax:"<color>";inherits:true;initial-value:#faf9f7}@property --bg-sunken{syntax:"<color>";inherits:true;initial-value:#e9e8e4}@property --ink{syntax:"<color>";inherits:true;initial-value:#101014}@property --ink-strong{syntax:"<color>";inherits:true;initial-value:#000}@property --muted{syntax:"<color>";inherits:true;initial-value:#1010149e}@property --faint{syntax:"<color>";inherits:true;initial-value:#1010146b}@property --line{syntax:"<color>";inherits:true;initial-value:#10101429}@property --line-strong{syntax:"<color>";inherits:true;initial-value:#10101466}@property --accent{syntax:"<color>";inherits:true;initial-value:#2d81ff}@property --accent-ink{syntax:"<color>";inherits:true;initial-value:#1659c4}@property --invert-bg{syntax:"<color>";inherits:true;initial-value:#101014}@property --invert-fg{syntax:"<color>";inherits:true;initial-value:#f2f1ee}@property --danger{syntax:"<color>";inherits:true;initial-value:#b3261e}@property --scanline{syntax:"<color>";inherits:true;initial-value:#10101408}html.theme-anim{transition:--bg .4s,--bg-raised .4s,--bg-sunken .4s,--ink .4s,--ink-strong .4s,--muted .4s,--faint .4s,--line .4s,--line-strong .4s,--accent .4s,--accent-ink .4s,--invert-bg .4s,--invert-fg .4s,--danger .4s,--scanline .4s}html.theme-anim body *{transition-duration:0s!important}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg);overflow-x:clip}body{background:var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.5;overflow-x:clip}#root{min-height:100dvh}h1,h2,p{margin:0}button,input{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.font-display{font-family:var(--font-display);letter-spacing:-.03em;font-weight:620;font-stretch:118%}.serif-accent{font-family:var(--font-serif);letter-spacing:0;color:var(--muted);font-style:italic;font-weight:400;font-stretch:100%}.hud-label{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;font-size:.6875rem;font-weight:500}.invert-block{transition:background-color .12s linear,color .12s linear}.invert-block:hover,.invert-block[data-active=true]{background:var(--invert-bg);color:var(--invert-fg)}.tick{pointer-events:none;width:11px;height:11px;position:absolute}.tick:before,.tick:after{content:"";background:var(--line-strong);position:absolute}.tick:before{width:1px;top:0;bottom:0;left:5px}.tick:after{height:1px;top:5px;left:0;right:0}.tick-half:before{top:5px}.scanlines:after{content:"";z-index:60;pointer-events:none;background:repeating-linear-gradient(to bottom, var(--scanline) 0 1px, transparent 1px 3px);position:fixed;inset:0}[data-reveal]{animation:reveal .9s var(--ease-reveal) backwards;animation-delay:calc(var(--reveal-base,.15s) + var(--i,0) * 80ms)}.draw-rule{transform-origin:0;animation:draw .7s var(--ease-draw) backwards}.draw-tick{animation:tick-pop .35s var(--ease-reveal) backwards;animation-delay:calc(.35s + var(--t,0) * 60ms)}@keyframes reveal{0%{opacity:0;filter:blur(8px);transform:translateY(28px)}}@keyframes draw{0%{transform:scaleX(0)}}@keyframes tick-pop{0%{opacity:0;transform:scale(0)}}.skip-link{left:var(--space-4);z-index:70;padding:var(--space-2) var(--space-4);background:var(--invert-bg);color:var(--invert-fg);transition:top .2s var(--ease-reveal);position:absolute;top:-56px}.skip-link:focus{top:var(--space-3)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html[data-fx=reduced] *,html[data-fx=reduced] :before,html[data-fx=reduced] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html[data-fx=reduced] [data-reveal],html[data-fx=reduced] .draw-rule,html[data-fx=reduced] .draw-tick,html[data-fx=reduced] .wordmark__letter,html[data-fx=reduced] .split-letter,html[data-fx=reduced] .frame__rails:before,html[data-fx=reduced] .frame__rails:after,html[data-fx=reduced] .ruler,html[data-fx=reduced] .status-screen__emblem,html[data-fx=reduced] .status-screen__check{animation:none!important}@media (prefers-reduced-motion:reduce){html:not([data-fx]) *,html:not([data-fx]) :before,html:not([data-fx]) :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}.btn{height:48px;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;border:0;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:0 24px;font-size:.6875rem;font-weight:700;transition:opacity .15s linear,background-color .12s linear,color .12s linear,border-color .12s linear;display:inline-flex}.btn--block{width:100%}.btn--primary{background:var(--invert-bg);color:var(--invert-fg)}.btn--primary:hover:not(:disabled){opacity:.8}.btn--secondary{border:1px solid var(--line-strong);background:var(--bg);color:var(--ink)}.btn--secondary:hover:not(:disabled){border-color:#0000}.btn:disabled{cursor:not-allowed;opacity:.5}.btn[data-busy=true]{cursor:progress}.btn__spinner,.spin{animation:.8s linear infinite spin}.field__label{color:var(--muted);font-family:var(--font-mono);letter-spacing:.25em;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:600;display:block}.field__row{align-items:stretch;gap:8px;display:flex}.field__box{flex:1;align-items:center;min-width:0;display:flex;position:relative}.field__icon{color:var(--muted);pointer-events:none;display:flex;position:absolute;left:12px}.field__input{border:1px solid var(--line);background:var(--bg-raised);width:100%;height:44px;color:var(--ink);border-radius:0;outline:none;padding:0 12px;font-size:1rem;transition:border-color .15s ease-in-out}.field__input[data-icon=true]{padding-left:40px}.field__input::placeholder{color:var(--faint)}.field__input:hover:not(:disabled){border-color:var(--line-strong)}.field__input:focus{border-color:var(--ink)}.field__input:disabled{cursor:not-allowed;opacity:.6}.field[data-invalid=true] .field__input{border-color:var(--danger)}.field__box:has(.field__toggle) .field__input{padding-right:48px}.field__toggle{border:0;border-left:1px solid var(--line);width:44px;height:44px;color:var(--muted);background:0 0;border-radius:0;place-items:center;padding:0;transition:background-color .12s linear,color .12s linear;display:grid;position:absolute;right:0}.field__toggle:hover:not(:disabled){background:var(--invert-bg);color:var(--invert-fg)}.field__toggle:disabled{cursor:not-allowed;opacity:.6}.field__message{min-height:0;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-top:4px;font-size:10px;line-height:1.4}.field__message:empty{display:none}.field__message[data-tone=error]{color:var(--danger)}.field__message[data-tone=hint]{color:var(--faint)}.lock-notice{border:1px solid var(--line-strong);background:var(--bg-sunken);color:var(--ink);animation:alert-in .35s var(--ease-reveal) backwards;align-items:center;gap:12px;padding:12px 14px;display:flex;position:relative}.lock-notice__text{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.08em;font-size:.75rem}.lock-notice__bar{background:var(--accent);height:2px;transform:scaleX(var(--lock-progress,1));transform-origin:0;transition:transform .25s linear;position:absolute;inset:auto 0 0}.progress{background:var(--line);width:min(240px,70vw);height:2px;position:relative;overflow:hidden}.progress__fill{background:var(--accent);transform-origin:0;position:absolute;inset:0}.progress--indeterminate .progress__fill{width:40%;animation:slide 1.3s var(--ease-draw) infinite}.progress--success .progress__fill{animation:1.6s linear both draw}@keyframes alert-in{0%{opacity:0;transform:translateY(-6px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}html[data-fx=reduced] .progress--indeterminate .progress__fill{width:100%;animation:none!important}html[data-fx=reduced] .progress--success .progress__fill{animation:none!important}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.app-main{flex-direction:column;flex:1;display:flex}.site-bar{z-index:30;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 60%, transparent);-webkit-backdrop-filter:blur(12px);padding-top:env(safe-area-inset-top,0px);position:sticky;top:0}.site-bar__inner{height:var(--bar-height);max-width:var(--rail-max);justify-content:space-between;align-items:stretch;margin:0 auto;display:flex}.site-bar__brand{align-items:center;gap:12px;padding-left:16px;display:flex}.site-bar__brand img{object-fit:contain;display:block}.site-bar__wordmark{color:var(--ink-strong);letter-spacing:.25em;font-weight:700}.theme-toggle{width:var(--bar-height);border:0;border-left:1px solid var(--line);color:var(--muted);background:0 0;border-radius:0;place-items:center;display:grid}.theme-toggle:hover{color:var(--invert-fg)}.frame{position:relative}.frame--grow{flex-direction:column;flex:1;display:flex}.frame__rule{background:var(--line);height:1px;position:absolute;inset:0 0 auto}.frame__rails{max-width:var(--rail-max);width:100%;margin:0 auto;position:relative}.frame--grow .frame__rails{flex-direction:column;flex:1;display:flex}.frame__tick{z-index:31;top:-5px}.frame__tick--left{left:-6px}.frame__tick--right{right:-5px}.eyebrow{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.eyebrow__label{color:var(--muted)}.eyebrow__index,.eyebrow__slash,.eyebrow__annotation{color:var(--faint)}.eyebrow__slash{margin:0 8px}.login-grid{flex:1;align-content:start;display:grid}.login-hero{gap:16px;padding:40px 16px 28px;display:grid}.login-title{color:var(--ink-strong);font-size:clamp(2.5rem,11vw,4rem);line-height:1}.login-hospital{color:var(--muted);line-height:1.6}.login-panel{border-top:1px solid var(--line);background:color-mix(in srgb, var(--bg-raised) 78%, transparent);-webkit-backdrop-filter:blur(10px);padding:24px 16px 32px}.login-form{gap:16px;max-width:28rem;display:grid}.login-form.is-shaking{animation:shake .5s var(--ease-reveal)}.captcha__image{border:1px solid var(--line);background:#fff;border-radius:0;flex:none;width:156px;height:44px;padding:0;transition:border-color .15s ease-in-out;display:block;position:relative;overflow:hidden}.captcha__image:hover:not(:disabled){border-color:var(--line-strong)}.captcha__image:disabled{cursor:progress}.captcha__image img{object-fit:contain;object-position:center;width:100%;height:100%;display:block;position:absolute;inset:0}.captcha__image[data-loading=true] img{opacity:.4}.captcha__cue{color:#101014;opacity:.4;transition:opacity .15s linear;position:absolute;top:4px;left:4px}.captcha__image:hover:not(:disabled) .captcha__cue{opacity:.85}.captcha__image[data-loading=true] .captcha__cue{opacity:.85;animation:.8s linear infinite spin}.captcha__placeholder{background:linear-gradient(90deg,#e9e8e4,#d6d5d0,#e9e8e4) 0 0/200% 100%;width:50%;height:12px;margin:auto;animation:1.4s linear infinite shimmer;position:absolute;inset:0}.site-footer{padding:20px 16px calc(env(safe-area-inset-bottom,0px) + 24px);border-top:1px solid var(--line);text-align:center;background:color-mix(in srgb, var(--bg) 60%, transparent);gap:4px;display:grid}.site-footer__product{color:var(--muted)}.site-footer__version{color:var(--faint)}@media (min-width:960px){.login-grid{grid-template-columns:1.15fr 1fr;align-content:stretch}.login-hero{align-content:end;padding:64px 40px 72px 48px}.login-title{font-size:clamp(3.5rem,6.4vw,5.75rem)}.login-panel{border-top:0;border-left:1px solid var(--line);align-content:center;padding:48px 40px;display:grid}.eyebrow{padding-inline:48px}}@keyframes shake{0%,to{transform:translate(0)}18%{transform:translate(-8px)}36%{transform:translate(7px)}54%{transform:translate(-5px)}72%{transform:translate(3px)}}@keyframes shimmer{to{background-position:-200% 0}}.status-screen{min-height:100dvh;padding:48px 24px calc(env(safe-area-inset-bottom,0px) + 48px);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.status-screen__emblem{object-fit:contain;animation:emblem-in .7s var(--ease-reveal) backwards;display:block}.wordmark{padding-block:.1em;display:inline-flex;overflow:hidden}.wordmark__letter{animation:letter-in .8s var(--ease-reveal) backwards;animation-delay:calc(var(--wm-delay,0s) + var(--i,0) * 60ms);display:inline-block}.status-screen__wordmark{color:var(--ink-strong);margin-top:20px;font-size:clamp(2.5rem,12vw,3.5rem);line-height:1}.status-screen__identity{color:var(--muted);gap:4px;margin-top:16px;display:grid}.status-screen__city{color:var(--faint)}.status-screen__loading{justify-items:center;gap:16px;margin-top:56px;display:grid}.status-screen__label{color:var(--faint)}.status-screen__message{color:var(--muted);font-size:.9375rem}.status-screen__retry{justify-items:center;gap:16px;margin-top:48px;display:grid}.status-screen__success{justify-items:center;gap:8px;margin-top:48px;display:grid}.status-screen__check{border:1px solid var(--accent);width:88px;height:88px;color:var(--accent-ink);background:color-mix(in srgb, var(--accent) 10%, transparent);animation:emblem-in .6s var(--ease-reveal) .15s backwards;place-items:center;display:grid;position:relative}.status-screen__tick--a{top:-5px;left:-5px}.status-screen__tick--b{bottom:-5px;right:-5px}.status-screen__check .check-path{stroke-dasharray:30;stroke-dashoffset:0;animation:check-draw .5s var(--ease-draw) .45s backwards}.status-screen__heading{color:var(--ink-strong);margin-top:16px;font-size:1.75rem;line-height:1.1}.progress--success{margin-top:24px}@keyframes emblem-in{0%{opacity:0;transform:scale(.8)}}@keyframes letter-in{0%{opacity:0;filter:blur(6px);transform:translate(-.6em)}}@keyframes check-draw{0%{stroke-dashoffset:30px}}.app-bar,.sub-bar{z-index:30;padding-top:env(safe-area-inset-top,0px);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(14px);position:sticky;top:0}.app-bar__inner,.sub-bar__inner{height:58px;max-width:var(--rail-max);align-items:center;gap:12px;margin:0 auto;padding:0 12px;display:flex}.app-bar__button{border:1px solid var(--line-strong);width:42px;height:42px;color:var(--ink-strong);background:0 0;border-radius:0;flex:none;place-items:center;display:grid}.app-bar__brand{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.app-bar__titles,.sub-bar__titles{min-width:0;display:grid}.app-bar__title,.sub-bar__title{color:var(--ink-strong);font-variation-settings:"wdth" 118;letter-spacing:.14em;margin:0;font-size:1.125rem;font-weight:700;line-height:1.1}.app-bar__subtitle,.sub-bar__subtitle{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.5625rem;overflow:hidden}.sub-bar__title{letter-spacing:.08em}.app-bar__avatar{background:var(--invert-bg);width:42px;height:42px;color:var(--invert-fg);font-family:var(--font-display);font-variation-settings:"wdth" 118;letter-spacing:.04em;border:0;border-radius:0;flex:none;place-items:center;font-size:.9375rem;font-weight:620;display:grid}.app-bar__avatar:active{opacity:.8}.home-app{flex:1;align-content:start;display:grid}.home-app__content{min-width:0;padding:20px 16px calc(112px + env(safe-area-inset-bottom,0px));animation:view-in .34s var(--ease-reveal,cubic-bezier(.215, .61, .355, 1)) backwards;align-content:start;gap:26px;display:grid}@keyframes view-in{0%{opacity:0;transform:translateY(10px)}}html[data-fx=reduced] .home-app__content{animation:none}.app-shell:has(.bottom-nav) .site-footer{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}.bottom-nav{z-index:40;padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line-strong);background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(16px);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;inset:auto 0 0}.bottom-nav__item{min-height:56px;color:var(--muted);background:0 0;border:0;border-radius:0;align-content:center;justify-items:center;gap:4px;padding:0;transition:color .12s linear;display:grid}.bottom-nav__pill{place-items:center;width:62px;height:30px;display:grid;position:relative}.bottom-nav__pill:before{content:"";background:color-mix(in srgb, var(--accent) 18%, transparent);border-bottom:2px solid var(--accent);opacity:0;transition:transform .24s var(--ease-reveal,ease-out), opacity .16s linear;position:absolute;inset:0;transform:scaleX(.3)}.bottom-nav__pill>svg{position:relative}.bottom-nav__item[aria-current=page]{color:var(--ink-strong)}.bottom-nav__item[aria-current=page] .bottom-nav__pill:before{opacity:1;transform:scaleX(1)}.bottom-nav__item:active .bottom-nav__pill:before{opacity:.7;transform:scaleX(1)}.bottom-nav__label{letter-spacing:.1em;font-size:.625rem}.bottom-nav__item[aria-current=page] .bottom-nav__label{font-weight:700}.hero{border:1px solid var(--line-strong);background:var(--bg-raised);gap:14px;padding:18px 16px 14px;display:grid;position:relative}.hero:before{content:"";background:var(--accent);height:3px;position:absolute;inset:-1px -1px auto}.hero:after{content:"";border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);width:10px;height:10px;position:absolute;bottom:-5px;right:-5px}.hero__top{align-items:flex-end;gap:14px;display:flex}.hero__text{gap:6px;min-width:0;display:grid}.hero__date,.hero__hospital{color:var(--faint);margin:0}.hero__greeting{color:var(--ink-strong);overflow-wrap:anywhere;margin:0;font-size:clamp(1.625rem,7vw,2.5rem);line-height:1.05}.hero__greeting .serif-accent{white-space:nowrap}.hero__stats{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.hero__rooms{border:1px solid var(--line-strong);color:var(--ink);background:0 0;border-radius:0;align-items:center;gap:6px;padding:7px 10px;display:inline-flex}.hero__rooms:active{background:var(--invert-bg);color:var(--invert-fg)}.live-clock{color:var(--ink);font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:inline-flex}.live-clock__dot{background:var(--ok);width:7px;height:7px;animation:2.2s ease-in-out infinite live-pulse}@keyframes live-pulse{50%{opacity:.35}}html[data-fx=reduced] .live-clock__dot{animation:none}.avatar{background:var(--invert-bg);width:60px;height:60px;color:var(--invert-fg);flex:none;place-items:center;display:grid;position:relative}.avatar:after{content:"";background:var(--accent);width:10px;height:10px;position:absolute;bottom:-4px;right:-4px}.avatar--large{width:88px;height:88px}.avatar--on-dark{color:#0b0b0c;background:#fff}.avatar__initials{font-family:var(--font-display);font-variation-settings:"wdth" 118;letter-spacing:.04em;font-size:1.375rem;font-weight:620}.avatar--large .avatar__initials{font-size:2rem}.home-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.home-chip{border:1px solid var(--line-strong);color:var(--muted);padding:4px 8px}.home-section{align-content:start;gap:14px;min-width:0;display:grid}.home-section__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:30px;padding-bottom:8px;display:flex}.home-section__title{color:var(--muted);margin:0;font-weight:500}.home-section__count{color:var(--faint);margin:0}.home-section__more{border:1px solid var(--line-strong);color:var(--ink);background:0 0;border-radius:0;padding:6px 10px}.home-empty{color:var(--muted);margin:0}.page-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.page-head__title{color:var(--ink-strong);margin:0;font-size:clamp(2rem,9vw,3rem);line-height:1.02}.page-head__count{color:var(--faint);margin:0}.quick-actions{gap:10px;display:grid}.quick-action{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--bg-raised));width:100%;color:var(--ink);text-align:left;border-radius:0;align-items:center;gap:14px;padding:14px;display:flex}.quick-action>svg:last-child{color:var(--accent-ink);flex:none;margin-left:auto}.quick-action:hover>svg:last-child{color:inherit}.quick-action__icon{background:var(--accent);color:#fff;flex:none;place-items:center;width:48px;height:48px;display:grid}.quick-action__text{gap:2px;min-width:0;display:grid}.quick-action__title{font-family:var(--font-display);font-variation-settings:"wdth" 112;font-size:1.125rem;font-weight:620}.quick-action__hint{color:var(--muted);font-size:.625rem}.quick-action:hover .quick-action__hint{color:inherit}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.work-card{border:1px solid var(--line);background:var(--bg-raised);align-content:space-between;gap:10px;min-height:7.25rem;padding:12px;display:grid;position:relative}.work-card__index{color:var(--faint)}.work-card__icon{color:var(--muted);position:absolute;top:10px;right:10px}.work-card__label{overflow-wrap:anywhere;font-size:.875rem;font-weight:600;line-height:1.2}.work-card__tag,.work-row__tag{border:1px dashed var(--line-strong);color:var(--faint);justify-self:start;padding:1px 5px;font-size:.5625rem}.work-card[data-available=false] .work-card__label{color:var(--muted)}.work-list{margin:0;padding:0;list-style:none;display:grid}.work-row{border:1px solid var(--line);background:var(--bg-raised);align-items:center;gap:14px;margin-top:-1px;padding:14px 12px;display:flex}.work-row__icon{border:1px dashed var(--line-strong);width:42px;height:42px;color:var(--muted);flex:none;place-items:center;display:grid}.work-row__text{flex:1;gap:2px;min-width:0;display:grid}.work-row__label{overflow-wrap:anywhere;font-weight:600}.work-row__index{color:var(--faint);font-size:.5625rem}.launcher{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 8px;margin:0;padding:0;list-style:none;display:grid}.launcher__tile{min-width:0}.launcher__action{width:100%;color:inherit;font:inherit;text-align:center;background:0 0;border:0;border-radius:0;align-content:start;justify-items:center;gap:8px;padding:0;display:grid}button.launcher__action{cursor:pointer}.launcher__icon{border:1px solid var(--line-strong);background:var(--bg-raised);width:60px;height:60px;color:var(--ink-strong);transition:transform .14s var(--ease-reveal,ease-out), background-color .12s linear, color .12s linear;place-items:center;display:grid;position:relative}.launcher__icon:before,.launcher__icon:after{content:"";opacity:.55;border:0 solid;width:7px;height:7px;position:absolute}.launcher__icon:before{border-top-width:1px;border-left-width:1px;top:-4px;left:-4px}.launcher__icon:after{border-bottom-width:1px;border-right-width:1px;bottom:-4px;right:-4px}.launcher__label{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:.75rem;font-weight:500;line-height:1.25;display:-webkit-box;overflow:hidden}.launcher__tile[data-available=true] .launcher__label{color:var(--ink-strong)}.launcher__tile[data-available=true] .launcher__icon{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 9%, var(--bg-raised));color:var(--accent-ink)}.launcher__tile[data-available=false] .launcher__icon{color:var(--muted);border-style:dashed}.launcher__tile[data-available=false] .launcher__label{color:var(--muted)}.launcher__tag{color:var(--faint);justify-self:center;margin-top:-4px;font-size:.5rem}button.launcher__action:active .launcher__icon{transform:scale(.93)}button.launcher__action:hover .launcher__icon{background:var(--accent);color:#fff}.profile-card{border:1px solid var(--line);background:var(--bg-raised);justify-items:start;gap:6px;padding:20px;display:grid}.profile-card__name{color:var(--ink-strong);overflow-wrap:anywhere;margin:10px 0 0;font-size:1.5rem;line-height:1.1}.profile-card__meta{color:var(--muted);overflow-wrap:anywhere;margin:0}.profile-stats{border-block:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.profile-stats__cell{gap:4px;padding:14px 12px;display:grid}.profile-stats__cell+.profile-stats__cell{border-left:1px solid var(--line)}.profile-stats dt{color:var(--faint)}.profile-stats dd{color:var(--ink-strong);margin:0;font-size:1.75rem;line-height:1}.profile-actions{justify-items:start;gap:12px;display:grid}.profile-actions__version{color:var(--faint);margin:0}.drawer-scrim,.dialog-scrim{z-index:70;background:#0506088c;animation:.2s linear backwards scrim-in;position:fixed;inset:0}@keyframes scrim-in{0%{opacity:0}}.drawer{border-right:1px solid var(--line-strong);background:var(--bg);width:min(86vw,21.5rem);animation:drawer-in .3s var(--ease-reveal,cubic-bezier(.215, .61, .355, 1)) backwards;outline:none;flex-direction:column;display:flex;position:absolute;inset:0 auto 0 0}@keyframes drawer-in{0%{transform:translate(-100%)}}.drawer__head{padding:calc(20px + env(safe-area-inset-top,0px)) 18px 18px;background:linear-gradient(135deg, var(--accent), var(--accent-ink));color:#fff;align-items:center;gap:14px;display:flex}.drawer__who{gap:3px;min-width:0;display:grid}.drawer__name{overflow-wrap:anywhere;margin:0;font-size:1.1875rem;line-height:1.1}.drawer__meta{color:#ffffffdb;overflow-wrap:anywhere;margin:0;font-size:.5625rem}.drawer__scroll{overscroll-behavior:contain;flex:1;overflow-y:auto}.drawer__nav{border-bottom:1px solid var(--line);padding:6px 0;display:grid}.drawer__link{width:100%;min-height:48px;color:var(--ink);font:inherit;text-align:left;background:0 0;border:0;border-radius:0;align-items:center;gap:16px;padding:0 18px;font-size:.9375rem;display:flex}.drawer__link:active{background:color-mix(in srgb, var(--accent) 14%, transparent)}.drawer__link svg{color:var(--muted);flex:none}.drawer__link--feature svg{color:var(--accent-ink)}.drawer__section{color:var(--faint);margin:0;padding:16px 18px 6px}.drawer__menu{margin:0;padding:0 0 12px;list-style:none}.drawer__link--soon{color:var(--muted);cursor:default}.drawer__item-label{overflow-wrap:anywhere;flex:1;min-width:0}.drawer__tag{color:var(--faint);flex:none;font-size:.5rem}.drawer__foot{padding:12px 18px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);gap:12px;display:grid}.drawer__display{justify-content:space-between;align-items:center;display:flex}.drawer__display .drawer__section{padding:0}.drawer__toggles{display:flex}.drawer__toggle{border:1px solid var(--line-strong);width:46px;height:40px}.drawer__toggle+.drawer__toggle{border-left:0}.drawer__logout{border:1px solid var(--danger);min-height:44px;color:var(--danger);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:0 0;border-radius:0;font-size:.6875rem;font-weight:700}.drawer__logout:active{background:var(--danger);color:var(--bg)}.drawer__version{color:var(--faint);margin:0;font-size:.5625rem}.dialog-scrim{place-items:center;padding:24px;display:grid}.dialog{border:1px solid var(--line-strong);background:var(--bg-raised);width:min(24rem,100%);animation:dialog-in .24s var(--ease-reveal,ease-out) backwards;gap:12px;padding:22px 20px 18px;display:grid;position:relative;box-shadow:0 30px 60px -24px #0009}.dialog:before{content:"";background:var(--accent);height:3px;position:absolute;inset:-1px -1px auto}@keyframes dialog-in{0%{opacity:0;transform:translateY(14px)scale(.98)}}.dialog__title{color:var(--ink-strong);margin:0;font-size:1.375rem;line-height:1.1}.dialog__message{color:var(--muted);margin:0;line-height:1.5}.dialog__actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:6px;display:grid}.dialog__actions .btn{white-space:normal;text-align:center;padding:0 12px}.dialog-scrim--sheet{align-items:end;padding:0}.sheet{width:min(36rem,100%);max-height:72dvh;padding:8px 18px calc(18px + env(safe-area-inset-bottom,0px));border:1px solid var(--line-strong);background:var(--bg-raised);animation:sheet-in .3s var(--ease-reveal,ease-out) backwards;border-bottom:0;gap:4px;display:grid}@keyframes sheet-in{0%{transform:translateY(100%)}}.sheet__grip{background:var(--line-strong);justify-self:center;width:38px;height:3px;margin-bottom:6px}.sheet__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.sheet__title{color:var(--muted);margin:0}.sheet__close{border:1px solid var(--line-strong);width:38px;height:38px;color:var(--ink);background:0 0;border-radius:0;place-items:center;display:grid}.sheet__body{overscroll-behavior:contain;overflow-y:auto}.sheet__list{margin:0;padding:0;list-style:none}.sheet__item{border-bottom:1px solid var(--line);padding:13px 2px;font-weight:500}html[data-fx=reduced] .drawer,html[data-fx=reduced] .sheet,html[data-fx=reduced] .dialog,html[data-fx=reduced] .drawer-scrim,html[data-fx=reduced] .dialog-scrim{animation:none}@media (min-width:560px){.launcher,.work-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-actions{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}}@media (min-width:960px){.home-app{grid-template-columns:6.25rem minmax(0,1fr)}.bottom-nav{border-top:0;border-right:1px solid var(--line);-webkit-backdrop-filter:none;background:0 0;flex-direction:column;align-self:start;gap:6px;height:calc(100dvh - 58px);padding:20px 0;display:flex;position:sticky;inset:58px auto auto}.bottom-nav__item{min-height:64px}.app-shell:has(.bottom-nav) .site-footer{padding-bottom:20px}.home-app__content{gap:32px;max-width:62rem;padding:36px 40px 56px}.launcher{grid-template-columns:repeat(6,minmax(0,1fr))}}.frbpjs{width:100%;max-width:44rem;padding:20px 16px calc(40px + env(safe-area-inset-bottom,0px));flex:1;align-content:start;gap:24px;margin:0 auto;display:grid}.frbpjs__status{color:var(--muted);margin:0}.frbpjs__error{border:1px solid var(--danger);justify-items:start;gap:12px;padding:16px;display:grid}.frbpjs__error p{color:var(--danger);margin:0}.patient-search{gap:16px;display:grid}.patient-search__form{gap:12px;display:grid}.patient-search__message{color:var(--muted);margin:0}.patient-search__message--error{color:var(--danger)}.patient-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.patient-row{border:1px solid var(--line-strong);border-left:3px solid var(--line-strong);background:var(--bg-raised);width:100%;color:var(--ink);text-align:left;border-radius:0;grid-template-columns:44px minmax(0,1fr) 20px;align-items:center;gap:12px;padding:12px;transition:border-color .12s linear,background-color .12s linear;display:grid}.patient-row[data-gender=female]{border-left-color:var(--accent)}.patient-row[data-gender=male]{border-left-color:var(--ok)}.patient-row:hover,.patient-row:focus-visible{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--bg-raised))}.patient-row:active{background:color-mix(in srgb, var(--accent) 14%, var(--bg-raised))}.patient-row__avatar{border:1px solid var(--line-strong);background:var(--bg-sunken);width:44px;height:44px;color:var(--ink-strong);font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.04em;place-items:center;font-weight:700;display:grid}.patient-row__body{gap:3px;min-width:0;display:grid}.patient-row__name{color:var(--ink-strong);overflow-wrap:anywhere;font-weight:700}.patient-row__hit{background:color-mix(in srgb, var(--accent) 22%, transparent);box-shadow:0 -1px 0 var(--accent) inset}.patient-row__rm{color:var(--accent-ink)}.patient-row__meta{color:var(--muted);overflow-wrap:anywhere;font-size:.8125rem}.patient-row__address{color:var(--faint)}.patient-row__tag{border:1px dashed var(--warn);color:var(--warn);justify-self:start;padding:2px 6px;font-size:.625rem}.patient-row__go{width:20px;height:20px;color:var(--faint)}.patient-row:hover .patient-row__go{color:var(--accent-ink)}.patient-results{gap:10px;display:grid}.patient-results__count{color:var(--muted);margin:0}.search-kinds{gap:6px;margin:0;padding:0;list-style:none;display:flex}.search-kinds__chip{border:1px solid var(--line);color:var(--faint);padding:4px 9px;transition:color .12s linear,border-color .12s linear,background-color .12s linear}.search-kinds__chip[data-active=true]{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent-ink)}.search-tips{border:1px dashed var(--line-strong);gap:10px;padding:14px;display:grid}.search-tips__title{color:var(--muted);margin:0}.search-tips__list{color:var(--muted);gap:8px;margin:0;padding:0;font-size:.875rem;list-style:none;display:grid}.search-tips__list li{grid-template-columns:4.5rem minmax(0,1fr);align-items:baseline;gap:10px;display:grid}.search-tips__tag{color:var(--accent-ink)}.patient-skeleton{gap:8px;display:grid}.patient-skeleton__label{color:var(--muted);margin:0 0 2px}.patient-skeleton__row{border:1px solid var(--line);grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;padding:12px;display:grid}.patient-skeleton__avatar,.patient-skeleton__lines span{background:linear-gradient(90deg, var(--bg-sunken) 25%, color-mix(in srgb, var(--accent) 14%, var(--bg-sunken)) 50%, var(--bg-sunken) 75%);background-size:200% 100%;animation:1.2s linear infinite skeleton-sweep;display:block}.patient-skeleton__avatar{width:44px;height:44px}.patient-skeleton__lines{gap:8px;display:grid}.patient-skeleton__lines span{height:10px}.patient-skeleton__lines span:first-child{width:70%}.patient-skeleton__lines span:last-child{width:45%}@keyframes skeleton-sweep{to{background-position:-200% 0}}html[data-fx=reduced] .patient-skeleton__avatar,html[data-fx=reduced] .patient-skeleton__lines span{animation:none}.sheet.sheet--tall{max-height:88dvh}.verify-camera{gap:16px;display:grid}.verify-camera__stage{border:1px solid var(--line-strong);background:var(--bg-sunken);place-items:center;min-height:12rem;display:grid;position:relative;overflow:hidden}.verify-camera__mirror{width:100%;max-height:70dvh;position:relative;transform:scaleX(-1)}.verify-camera__video{object-fit:contain;width:100%;height:100%;display:block}.verify-camera__box{border:2px solid var(--danger);transition:border-color .12s linear;position:absolute}.verify-camera__stage[data-face=adjust] .verify-camera__box{border-color:var(--warn)}.verify-camera__stage[data-face=ready] .verify-camera__box{border-color:var(--ok)}.verify-camera__stage[data-busy=true] .verify-camera__video{opacity:.55}.verify-camera__status{color:var(--muted);margin:0;position:absolute}.verify-camera__message{border-left:3px solid var(--danger);color:var(--ink);margin:0;padding-left:12px;line-height:1.5}.verify-camera__message[data-face=adjust]{border-left-color:var(--warn)}.verify-camera__message[data-face=ready]{border-left-color:var(--ok)}@media (min-width:960px){.frbpjs{padding:56px 40px 64px}}.identity{gap:16px;display:grid}.fr-card{border:1px solid var(--line-strong);background:var(--bg-raised);gap:10px;padding:16px;display:grid;position:relative}.fr-card[data-phase=ready]{border-left:3px solid var(--ok)}.fr-card[data-phase=error]{border-left:3px solid var(--danger)}.fr-card[data-phase=loading]{border-left:3px solid var(--warn)}.fr-card__row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.fr-card__text{gap:4px;min-width:0;display:grid}.fr-card__title{color:var(--ink-strong);margin:0;font-weight:600}.fr-card__heading{color:var(--ink-strong);margin:0;font-size:1.375rem;line-height:1.1}.fr-card__meta{color:var(--faint);overflow-wrap:anywhere;margin:0}.fr-card__message{color:var(--muted);overflow-wrap:anywhere;margin:0;line-height:1.45}.camera-card__tool{border:1px solid var(--line-strong);min-width:48px;height:48px;color:var(--ink);background:0 0;border-radius:0;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.camera-card__tool:disabled{cursor:not-allowed;opacity:.4}.fr-card__reconnect{height:40px}.identity__nik{grid-template-columns:minmax(0,1fr) 56px;align-items:start;gap:8px;display:grid}.identity__search{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--bg-raised));width:56px;height:56px;color:var(--accent-ink);border-radius:0;place-items:center;margin-top:22px;display:grid}.patient-summary{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 7%, var(--bg-raised));gap:3px;margin:0;padding:12px;display:grid}.patient-summary--empty{border:1px dashed var(--line-strong);color:var(--muted);background:0 0;font-size:.875rem;line-height:1.4}.patient-summary__name{color:var(--ink-strong);overflow-wrap:anywhere;margin:0;font-weight:700}.patient-summary__meta{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.8125rem}.patient-summary__meta--soft{color:var(--faint)}.camera-card{border:1px solid var(--line-strong);background:var(--bg-raised);gap:12px;padding:14px;display:grid}.camera-card__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.camera-card__title{color:var(--ink-strong);margin:0;font-size:1.25rem;line-height:1.1}.camera-card__badge{border:1px solid var(--line-strong);color:var(--ink);padding:5px 10px}.camera-card__hint{color:var(--muted);margin:-6px 0 0;font-size:.8125rem}.camera-card__actions{grid-template-columns:48px 48px minmax(0,1fr);gap:8px;display:grid}.verify-camera__stage[data-facing=environment] .verify-camera__mirror{transform:none}.verify-dialog__icon{width:28px;height:28px}.verify-dialog[data-tone=success]:before{background:var(--ok)}.verify-dialog[data-tone=error]:before{background:var(--danger)}.verify-dialog[data-tone=warning]:before{background:var(--warn)}.verify-dialog[data-tone=success] .verify-dialog__icon{color:var(--ok)}.verify-dialog[data-tone=error] .verify-dialog__icon{color:var(--danger)}.verify-dialog[data-tone=warning] .verify-dialog__icon{color:var(--warn)}.verify-dialog__message{white-space:pre-line;overflow-wrap:anywhere}.verify-dialog__details{border-top:1px solid var(--line);color:var(--muted);overflow-wrap:anywhere;gap:4px;margin:0;padding:10px 0 0;list-style:none;display:grid}.patient-search__hint{color:var(--muted);margin:0;font-size:.875rem}@media (min-width:960px){.camera-card{max-width:36rem}}.fx-canvas{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.fx-grain{z-index:58;pointer-events:none;opacity:.09;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:fixed;inset:0}:root[data-theme=dark] .fx-grain{opacity:.12;filter:invert()}.fx-vignette{z-index:57;pointer-events:none;background:radial-gradient(ellipse 120% 90% at 50% 38%, transparent 52%, color-mix(in srgb, var(--ink) 13%, transparent) 100%);position:fixed;inset:0}.app-shell,.status-screen{z-index:1;position:relative}.frame__rails{border-inline:0}.frame__rails:before,.frame__rails:after{content:"";background:var(--line);transform-origin:top;pointer-events:none;width:1px;animation:draw-y 1.1s var(--ease-draw) .1s backwards;position:absolute;top:0;bottom:0}.frame__rails:before{left:0}.frame__rails:after{right:0}@keyframes draw-y{0%{transform:scaleY(0)}}.ruler{z-index:2;pointer-events:none;background:repeating-linear-gradient(to bottom, var(--line-strong) 0 1px, transparent 1px 8px) left top / 6px 100% no-repeat, repeating-linear-gradient(to bottom, var(--line-strong) 0 1px, transparent 1px 64px) left top / 14px 100% no-repeat;width:20px;animation:ruler-in .9s var(--ease-reveal) .5s backwards;display:none;position:absolute;inset:0 auto 0 0}.ruler__marker{opacity:0;background:linear-gradient(to right, var(--accent), transparent);will-change:transform;width:min(420px,42vw);height:1px;transition:opacity .25s linear;position:absolute;top:0;left:0}.ruler__readout{color:var(--accent-ink);white-space:nowrap;font-size:10px;position:absolute;top:-15px;left:26px}@media (min-width:960px){.ruler{display:block}}@keyframes ruler-in{0%{opacity:0}}.spot{--mx:50%;--my:50%;position:relative}.spot:before,.spot:after{content:"";pointer-events:none;opacity:0;transition:opacity .3s linear;position:absolute;inset:0}.spot:before{background:radial-gradient(280px circle at var(--mx) var(--my), var(--accent), transparent 70%);-webkit-mask-composite:xor;padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.spot:after{background:radial-gradient(360px circle at var(--mx) var(--my), color-mix(in srgb, var(--accent) 9%, transparent), transparent 65%)}.spot[data-hover=true]:before,.spot[data-hover=true]:after,.spot:focus-within:before{opacity:1}.split-word{white-space:nowrap;display:inline-block}.split-letter{animation:letter-up .85s var(--ease-reveal) backwards;animation-delay:calc(var(--split-delay,0s) + var(--i,0) * 40ms);display:inline-block}@keyframes letter-up{0%{opacity:0;filter:blur(8px);transform:translateY(.5em)rotate(4deg)}}.site-bar__cells{align-items:stretch;display:flex}.fx-toggle{border:0;border-left:1px solid var(--line);color:var(--muted);background:0 0;border-radius:0;align-items:center;gap:8px;padding:0 16px;display:flex}.fx-toggle__dot{background:var(--faint);width:6px;height:6px}.fx-toggle[data-mode=full]{color:var(--ink)}.fx-toggle[data-mode=full] .fx-toggle__dot{background:var(--accent);box-shadow:0 0 10px var(--accent)}.fx-toggle:hover{color:var(--invert-fg)}.live{font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:inline-flex}.live__dot{background:var(--accent);width:6px;height:6px}.live__dot[data-online=false]{background:var(--danger)}.live__sep{color:var(--faint)}html[data-fx=full] .live__dot[data-online=true]{animation:1.8s ease-out infinite pulse-dot}@keyframes pulse-dot{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 65%, transparent)}to{box-shadow:0 0 0 9px #0000}}.btn{position:relative;overflow:hidden}.btn svg:last-child{transition:transform .2s var(--ease-reveal)}.btn:hover:not(:disabled) svg:last-child{transform:translate(4px)}html[data-fx=full] .btn--primary:hover:not(:disabled):after{content:"";pointer-events:none;background:repeating-linear-gradient(115deg, transparent 0 7px, color-mix(in srgb, var(--invert-fg) 20%, transparent) 7px 8px);animation:.7s linear infinite hatch;position:absolute;inset:0 -16px}@keyframes hatch{to{transform:translate(16px)}}.btn[data-busy=true]:before{content:"";background:var(--accent);width:40%;height:2px;animation:slide 1.1s var(--ease-draw) infinite;position:absolute;inset:auto auto 0 0}.field__box:after{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform .35s var(--ease-draw);pointer-events:none;position:absolute;inset:auto 0 0;transform:scaleX(0)}.field__box:focus-within:after,.field[data-invalid=true] .field__box:after{transform:scaleX(1)}.field[data-invalid=true] .field__box:after{background:var(--danger)}.field__input{caret-color:var(--accent)}.toast-host{z-index:80;padding:calc(env(safe-area-inset-top,0px) + 12px) 12px 0;pointer-events:none;justify-content:center;display:flex;position:fixed;inset:0 0 auto}.toast{border:1px solid var(--danger);background:color-mix(in srgb, var(--bg-raised) 94%, transparent);-webkit-backdrop-filter:blur(12px);pointer-events:auto;align-items:stretch;width:min(28rem,100%);animation:.65s cubic-bezier(.2,.9,.3,1) backwards toast-in;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 40px -16px #00000080}.toast[data-leaving=true]{animation:.22s ease-in forwards toast-out}.toast__icon{color:var(--danger);flex:none;align-self:flex-start;margin:14px 0 0 14px}.toast__body{flex:1;min-width:0;padding:12px 12px 14px}.toast__title{color:var(--danger)}.toast__message{color:var(--ink);overflow-wrap:anywhere;white-space:pre-line;margin-top:4px;font-size:.875rem;line-height:1.45}.toast__close{border:0;border-left:1px solid var(--line);width:44px;color:var(--muted);background:0 0;border-radius:0;flex:none;place-items:center;display:grid}.toast__close:hover{color:var(--invert-fg)}.toast__timer{background:var(--danger);transform-origin:0;height:2px;animation:toast-timer var(--toast-duration,6s) linear forwards;position:absolute;inset:auto 0 0}.toast:hover .toast__timer{animation-play-state:paused}html[data-fx=reduced] .toast__timer{animation:none}@keyframes toast-in{0%{opacity:0;transform:translateY(-150%)}55%{opacity:1;transform:translateY(16px)}75%{transform:translateY(-4px)}to{transform:translateY(0)}}@keyframes toast-out{to{opacity:0;transform:translateY(-140%)}}@keyframes toast-timer{to{transform:scaleX(0)}}.update-host{z-index:85;padding:calc(env(safe-area-inset-top,0px) + 12px) 12px 0;pointer-events:none;justify-content:center;display:flex;position:fixed;inset:0 0 auto}.update-notice{border:1px solid var(--accent);background:color-mix(in srgb, var(--bg-raised) 94%, transparent);-webkit-backdrop-filter:blur(12px);pointer-events:auto;align-items:stretch;width:min(30rem,100%);animation:.6s cubic-bezier(.2,.9,.3,1) backwards update-in;display:flex;overflow:hidden;box-shadow:0 18px 40px -16px #00000080}.update-notice__icon{color:var(--accent);flex:none;align-self:flex-start;margin:14px 0 0 14px}.update-notice__body{flex:1;min-width:0;padding:12px 12px 14px}.update-notice__title{color:var(--accent)}.update-notice__message{color:var(--ink);margin-top:4px;font-size:.8125rem;line-height:1.45}.update-notice__apply,.update-notice__close{border:0;border-left:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:0;flex:none}.update-notice__apply{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);padding:0 16px;font-size:.75rem}.update-notice__close{width:44px;color:var(--muted);place-items:center;display:grid}.update-notice__apply:hover,.update-notice__close:hover{color:var(--invert-fg)}@keyframes update-in{0%{opacity:0;transform:translateY(-150%)}60%{opacity:1;transform:translateY(12px)}80%{transform:translateY(-3px)}to{transform:translateY(0)}}html[data-fx=reduced] .update-notice{animation:none}
