:root{--ground:#f2f7fc;--ground-alt:#e8f0f8;--surface:#ffffff;--surface-2:#eaf2fa;--surface-3:#dce8f4;--ink:#0c1b2a;--ink-2:#4a6480;--ink-3:#7b93ac;--ink-inv:#ffffff;--line:#d7e4f0;--line-strong:#bcd0e2;--brand-700:#0a4a82;--brand-600:#0f5fa6;--brand-500:#1b7fd4;--brand-400:#4ea3e8;--brand-100:#dcebf9;--brand-050:#eef6fd;--brand-fg:#ffffff;--brand-ring:rgba(27,127,212,0.32);--sev-normal:#0e9f6e;--sev-normal-bg:#dff3ea;--sev-mild:#b8850a;--sev-mild-bg:#fbf0d5;--sev-moderate:#d2691c;--sev-moderate-bg:#fce9d9;--sev-severe:#c6303c;--sev-severe-bg:#fbe2e4;--sig-spo2:#1b7fd4;--sig-desat3:#4bb3c9;--sig-hr:#d14d6b;--sig-arousal:#7b5ec7;--sig-spo2-soft:rgba(27,127,212,0.16);--sig-hr-soft:rgba(209,77,107,0.16);--sig-arousal-soft:rgba(123,94,199,0.18);--night:#0a1826;--night-2:#12283d;--night-line:#1e3a54;--night-ink:#cfe2f2;--night-ink-2:#7e9cb8;--ok:#0e9f6e;--ok-bg:#dff3ea;--warn:#b8850a;--warn-bg:#fbf0d5;--danger:#c6303c;--danger-bg:#fbe2e4;--shadow-sm:0 1px 2px rgba(12,27,42,0.06),0 1px 1px rgba(12,27,42,0.04);--shadow-md:0 4px 16px rgba(12,27,42,0.08),0 1px 3px rgba(12,27,42,0.05);--shadow-lg:0 16px 48px rgba(12,27,42,0.12),0 2px 8px rgba(12,27,42,0.06);--shadow-pop:0 8px 28px rgba(10,74,130,0.16);--font-sans:"Archivo","Noto Sans Thai","Noto Sans SC",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--wide-display:112%;--wide-tight:88%;--hero-bg:#06111d;--hero-ink:#ffffff;--hero-ink-2:#9db8d0;--hero-ink-3:#6b8ca8;--hero-line:#162c42;--hero-line-soft:rgba(120,170,214,0.075);--hero-accent:#46a0e8;--hero-accent-2:#f0904b;--hero-btn-fg:#04121e;--hero-hover:rgba(200,224,245,0.1);--r-xs:4px;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--r-pill:999px;--sidebar-w:244px;--container:1160px;--container-wide:1280px;--dur-fast:120ms;--dur:200ms;--ease:cubic-bezier(0.22,0.61,0.36,1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#070f18;--ground-alt:#0b1725;--surface:#0f1e2e;--surface-2:#16293c;--surface-3:#1e364c;--ink:#e6f0f9;--ink-2:#9db6cd;--ink-3:#6b869f;--ink-inv:#06101a;--line:#1f3548;--line-strong:#2c4760;--brand-700:#8ec5f0;--brand-600:#66aeea;--brand-500:#4ea3e8;--brand-400:#7bc0f2;--brand-100:#16324c;--brand-050:#102638;--brand-fg:#06101a;--brand-ring:rgba(78,163,232,0.4);--sev-normal:#43c79b;--sev-normal-bg:#10362c;--sev-mild:#e0b445;--sev-mild-bg:#382d10;--sev-moderate:#f0904b;--sev-moderate-bg:#3b2413;--sev-severe:#f4737f;--sev-severe-bg:#3d1a1f;--sig-spo2:#58aef0;--sig-desat3:#57c9dd;--sig-hr:#f0788f;--sig-arousal:#a98cf0;--sig-spo2-soft:rgba(88,174,240,0.18);--sig-hr-soft:rgba(240,120,143,0.18);--sig-arousal-soft:rgba(169,140,240,0.2);--night:#050d16;--night-2:#0d1e2e;--night-line:#1a3145;--night-ink:#cfe2f2;--night-ink-2:#7e9cb8;--ok:#43c79b;--ok-bg:#10362c;--warn:#e0b445;--warn-bg:#382d10;--danger:#f4737f;--danger-bg:#3d1a1f;--hero-bg:#0b1a29;--hero-ink:#f2f8fd;--hero-ink-2:#a7c1d8;--hero-ink-3:#7794ae;--hero-line:#1d3448;--hero-line-soft:rgba(140,185,225,0.09);--hero-accent:#58aef0;--hero-accent-2:#f0a066;--hero-btn-fg:#06121d;--hero-hover:rgba(200,224,245,0.12);--shadow-sm:0 1px 2px rgba(0,0,0,0.4);--shadow-md:0 4px 16px rgba(0,0,0,0.45);--shadow-lg:0 16px 48px rgba(0,0,0,0.55);--shadow-pop:0 8px 28px rgba(0,0,0,0.5)}}:root[data-theme=dark]{--ground:#070f18;--ground-alt:#0b1725;--surface:#0f1e2e;--surface-2:#16293c;--surface-3:#1e364c;--ink:#e6f0f9;--ink-2:#9db6cd;--ink-3:#6b869f;--ink-inv:#06101a;--line:#1f3548;--line-strong:#2c4760;--brand-700:#8ec5f0;--brand-600:#66aeea;--brand-500:#4ea3e8;--brand-400:#7bc0f2;--brand-100:#16324c;--brand-050:#102638;--brand-fg:#06101a;--brand-ring:rgba(78,163,232,0.4);--sev-normal:#43c79b;--sev-normal-bg:#10362c;--sev-mild:#e0b445;--sev-mild-bg:#382d10;--sev-moderate:#f0904b;--sev-moderate-bg:#3b2413;--sev-severe:#f4737f;--sev-severe-bg:#3d1a1f;--sig-spo2:#58aef0;--sig-desat3:#57c9dd;--sig-hr:#f0788f;--sig-arousal:#a98cf0;--sig-spo2-soft:rgba(88,174,240,0.18);--sig-hr-soft:rgba(240,120,143,0.18);--sig-arousal-soft:rgba(169,140,240,0.2);--night:#050d16;--night-2:#0d1e2e;--night-line:#1a3145;--night-ink:#cfe2f2;--night-ink-2:#7e9cb8;--ok:#43c79b;--ok-bg:#10362c;--warn:#e0b445;--warn-bg:#382d10;--danger:#f4737f;--danger-bg:#3d1a1f;--hero-bg:#0b1a29;--hero-ink:#f2f8fd;--hero-ink-2:#a7c1d8;--hero-ink-3:#7794ae;--hero-line:#1d3448;--hero-line-soft:rgba(140,185,225,0.09);--hero-accent:#58aef0;--hero-accent-2:#f0a066;--hero-btn-fg:#06121d;--hero-hover:rgba(200,224,245,0.12);--shadow-sm:0 1px 2px rgba(0,0,0,0.4);--shadow-md:0 4px 16px rgba(0,0,0,0.45);--shadow-lg:0 16px 48px rgba(0,0,0,0.55);--shadow-pop:0 8px 28px rgba(0,0,0,0.5)}*,:after,:before{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:104px}section[id]{scroll-margin-top:104px}body{background:var(--ground);color:var(--ink);font-family:var(--font-sans);font-size:15px;line-height:1.6;font-synthesis-weight:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}canvas,img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--brand-500);text-underline-offset:2px}a:hover{color:var(--brand-600)}:focus-visible{outline:2px solid var(--brand-500);outline-offset:2px;border-radius:var(--r-xs)}::selection{background:var(--brand-100);color:var(--ink)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}section[id]{scroll-margin-top:104px}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}h1,h2,h3,h4,h5{font-weight:600;line-height:1.15;letter-spacing:-.015em;text-wrap:balance}h1{font-size:clamp(30px,4.4vw,46px);font-weight:700}h1,h2{font-stretch:var(--wide-display)}h2{font-size:clamp(23px,3vw,32px)}h3{font-size:19px}h4{font-size:16px}.u-eyebrow{letter-spacing:.12em;color:var(--brand-600)}.u-eyebrow,.u-label{font-size:11px;font-weight:600;text-transform:uppercase;font-stretch:var(--wide-tight)}.u-label{letter-spacing:.09em;color:var(--ink-3)}.u-muted{color:var(--ink-2)}.u-dim{color:var(--ink-3)}.u-num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.u-mono{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.u-lede{font-size:17px;line-height:1.62;color:var(--ink-2);max-width:62ch}.u-prose{max-width:68ch}.u-center{text-align:center}.u-nowrap{white-space:nowrap}.u-stack{display:flex;flex-direction:column}.u-row{display:flex;align-items:center}.u-gap-1{gap:4px}.u-gap-2{gap:8px}.u-gap-3{gap:12px}.u-gap-4{gap:16px}.u-gap-5{gap:24px}.u-gap-6{gap:32px}.u-grow{flex:1 1 auto;min-width:0}.u-wrap{flex-wrap:wrap}.u-scroll-x{overflow-x:auto;overscroll-behavior-x:contain}.u-sr{width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.u-skip,.u-sr{position:absolute}.u-skip{left:8px;top:-60px;z-index:100;background:var(--brand-600);color:var(--brand-fg);padding:10px 16px;border-radius:var(--r-md);font-weight:600;transition:top var(--dur) var(--ease)}.u-skip:focus{top:8px;color:var(--brand-fg)}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:20px}.container-wide{max-width:var(--container-wide)}.btn{--btn-bg:var(--surface);--btn-fg:var(--ink);--btn-bd:var(--line-strong);display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;height:40px;border-radius:var(--r-md);border:1px solid var(--btn-bd);background:var(--btn-bg);font-size:14px;font-weight:600;letter-spacing:-.005em;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.btn,.btn:hover{color:var(--btn-fg)}.btn:hover{background:var(--surface-2)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn--primary{--btn-bg:var(--brand-600);--btn-fg:var(--brand-fg);--btn-bd:var(--brand-600);box-shadow:var(--shadow-sm)}.btn--primary:hover{--btn-bg:var(--brand-700);--btn-bd:var(--brand-700);color:var(--brand-fg)}.btn--ghost{--btn-bg:transparent;--btn-bd:transparent;--btn-fg:var(--ink-2)}.btn--ghost:hover{background:var(--surface-2);color:var(--ink)}.btn--danger{--btn-bg:var(--danger);--btn-fg:#fff;--btn-bd:var(--danger)}.btn--danger:hover{--btn-bg:var(--danger);color:#fff;filter:brightness(.92)}.btn--lg{height:48px;padding-inline:24px;font-size:15px;border-radius:var(--r-lg)}.btn--sm{height:32px;padding-inline:12px;font-size:13px}.btn--block{width:100%}.btn--icon{width:40px;padding:0}.btn--icon.btn--sm{width:32px}.field{display:flex;flex-direction:column;gap:6px}.field__label{font-size:13px;font-weight:600;color:var(--ink-2)}.field__hint{font-size:12.5px;color:var(--ink-3)}.field__error{font-size:12.5px;color:var(--danger);font-weight:500}.input,.select,.textarea{width:100%;min-height:42px;padding:9px 13px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);font-size:15px;color:var(--ink);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.input::placeholder,.textarea::placeholder{color:var(--ink-3)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--brand-500);box-shadow:0 0 0 3px var(--brand-ring)}.input[aria-invalid=true]{border-color:var(--danger)}.textarea{min-height:96px;resize:vertical}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:36px;background-image:linear-gradient(45deg,transparent 50%,currentColor 0),linear-gradient(135deg,currentColor 50%,transparent 0);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;cursor:pointer}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}.card__title{font-size:15px;font-weight:600;letter-spacing:-.01em}.card__body{padding:20px}.card__foot{padding:14px 20px;border-top:1px solid var(--line);border-radius:0 0 var(--r-lg) var(--r-lg)}.card__foot,.pill{background:var(--surface-2)}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--r-pill);font-size:12px;font-weight:600;letter-spacing:.01em;color:var(--ink-2);white-space:nowrap}.pill--normal{background:var(--sev-normal-bg);color:var(--sev-normal)}.pill--mild{background:var(--sev-mild-bg);color:var(--sev-mild)}.pill--moderate{background:var(--sev-moderate-bg);color:var(--sev-moderate)}.pill--severe{background:var(--sev-severe-bg);color:var(--sev-severe)}.pill--brand{background:var(--brand-100);color:var(--brand-700)}.pill--ok{background:var(--ok-bg);color:var(--ok)}.pill--warn{background:var(--warn-bg);color:var(--warn)}.pill__dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;font-stretch:var(--wide-tight);color:var(--ink-3);padding:0 14px 10px 0;border-bottom:1px solid var(--line-strong);white-space:nowrap}.table td{padding:11px 14px 11px 0;border-bottom:1px solid var(--line);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.table .num,.table th.num{padding-right:20px}.divider{height:1px;background:var(--line);border:0}.empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 24px;text-align:center;color:var(--ink-2)}.empty__icon{color:var(--ink-3);opacity:.6}.spinner{width:16px;height:16px;border:2px solid var(--brand-ring);border-top-color:var(--brand-500);border-radius:50%;animation:spin .7s linear infinite;flex:none}@keyframes spin{to{transform:rotate(1turn)}}.banner{display:flex;gap:12px;padding:13px 16px;border-radius:var(--r-md);font-size:14px;border:1px solid transparent}.banner--info{background:var(--brand-050);border-color:var(--brand-100);color:var(--brand-700)}.banner--ok{background:var(--ok-bg);color:var(--ok)}.banner--warn{background:var(--warn-bg);color:var(--warn)}.banner--danger{background:var(--danger-bg);color:var(--danger)}.bootscreen{min-height:100dvh;display:flex;align-items:center;justify-content:center;gap:10px;font-size:14px}.lang{position:relative}.lang__btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 10px;background:transparent;border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink-2);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.lang__btn:hover{background:var(--surface-2);color:var(--ink)}.lang__code{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em}.lang__menu{position:absolute;top:calc(100% + 6px);right:0;z-index:60;min-width:172px;margin:0;padding:5px;list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-lg)}.lang__opt{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:transparent;border:0;border-radius:var(--r-sm);color:var(--ink);font-size:14px;text-align:left;cursor:pointer}.lang__opt:hover{background:var(--surface-2)}.lang__opt.is-active{color:var(--brand-600);font-weight:600}.lang__optCode{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:20px;padding:0 5px;border-radius:var(--r-xs);background:var(--surface-2);font-size:10.5px;font-weight:600;color:var(--ink-2)}.lang__opt.is-active .lang__optCode{background:var(--brand-100);color:var(--brand-700)}.segmented{display:inline-flex;padding:3px;gap:2px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md)}.segmented__item{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border:0;border-radius:var(--r-sm);color:var(--ink-2);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.segmented__item:hover{color:var(--ink)}.segmented__item.is-active{background:var(--surface);color:var(--brand-600);box-shadow:var(--shadow-sm)}.shell{min-height:100dvh;display:flex;background:var(--ground)}.shell__side{position:fixed;inset:0 auto 0 0;z-index:70;width:var(--sidebar-w);display:flex;flex-direction:column;padding:20px 14px;background:var(--surface);border-right:1px solid var(--line);transform:translateX(-100%);transition:transform var(--dur) var(--ease)}.shell__side.is-open{transform:translateX(0);box-shadow:var(--shadow-lg)}.shell__brand{display:flex;align-items:center;gap:10px;padding:4px 8px 20px;color:var(--ink);text-decoration:none}.shell__brandName{font-size:17px;font-weight:700;font-stretch:var(--wide-display);letter-spacing:-.02em}.shell__nav{display:flex;flex-direction:column;gap:2px}.shell__link{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:var(--r-md);color:var(--ink-2);font-size:14.5px;font-weight:500;text-decoration:none;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.shell__link:hover{background:var(--surface-2);color:var(--ink)}.shell__link.is-active{background:var(--brand-100);color:var(--brand-700);font-weight:600}.shell__foot{margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}.shell__user{display:flex;align-items:center;gap:10px;padding:8px}.shell__avatar{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:50%;background:var(--brand-600);color:var(--brand-fg);font-weight:700;font-size:14px}.shell__userMail,.shell__userName{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell__userName{font-size:13.5px;font-weight:600}.shell__userMail{font-size:11.5px;color:var(--ink-3)}.shell__signout{width:100%;justify-content:flex-start;margin-top:4px}.shell__scrim{position:fixed;inset:0;z-index:65;border:0;background:rgba(8,20,34,.42);-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);cursor:pointer}.shell__main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.shell__top{position:-webkit-sticky;position:sticky;top:0;z-index:50;height:58px;padding:0 14px;background:color-mix(in srgb,var(--ground) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.shell__top,.shell__topBrand{display:flex;align-items:center;gap:8px}.shell__topBrand{color:var(--ink);font-weight:700;font-size:15px;font-stretch:var(--wide-display);text-decoration:none}.shell__content{flex:1 1 auto;padding:22px 16px 104px}.tabbar{position:fixed;inset:auto 0 0 0;z-index:60;display:flex;padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line)}.tabbar__item{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 4px;border-radius:var(--r-md);color:var(--ink-3);font-size:10.5px;font-weight:600;text-decoration:none}.tabbar__item.is-active{color:var(--brand-600);background:var(--brand-050)}@media (min-width:900px){.shell__side{transform:none;box-shadow:none}.shell__main{margin-left:var(--sidebar-w)}.shell__burger,.shell__topBrand,.tabbar{display:none}.shell__top{height:62px;padding:0 26px;justify-content:flex-end}.shell__content{padding:26px 26px 60px}}.page{max-width:1080px;margin-inline:auto}.page--wide{max-width:1240px}.page__head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}.page__title{font-size:clamp(22px,3.4vw,29px);font-stretch:var(--wide-display)}.page__sub{color:var(--ink-2);font-size:14.5px;margin-top:2px}.section{margin-bottom:26px}.section__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.section__title{font-size:16px;font-weight:600}.grid{display:grid;grid-gap:14px;gap:14px}.grid--2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid--3{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.grid--4{grid-template-columns:repeat(auto-fit,minmax(158px,1fr))}.split{display:grid;grid-gap:16px;gap:16px}@media (min-width:900px){.split{grid-template-columns:minmax(0,340px) minmax(0,1fr)}}.tile{--tile-accent:var(--ink-3);display:flex;flex-direction:column;gap:6px;padding:15px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}.tile--spo2{--tile-accent:var(--sig-spo2)}.tile--hr{--tile-accent:var(--sig-hr)}.tile--arousal{--tile-accent:var(--sig-arousal)}.tile--brand{--tile-accent:var(--brand-500)}.tile__top{display:flex;align-items:center;gap:7px}.tile__icon{display:inline-flex;color:var(--tile-accent)}.tile__label{color:var(--ink-3)}.tile__value{font-size:27px;font-weight:700;line-height:1.05;letter-spacing:-.03em;font-stretch:var(--wide-display)}.tile__unit{margin-left:4px;font-size:13px;font-weight:500;color:var(--ink-3);letter-spacing:0;font-stretch:100%}.tile__hint{font-size:12px;line-height:1.45;color:var(--ink-3);margin:0}.tile--compact{padding:12px 13px}.tile--compact .tile__value{font-size:21px}.dial{position:relative;margin-inline:auto}.dial__fill{transition:stroke-dasharray .7s var(--ease),stroke .3s var(--ease)}.dial__centre{position:absolute;inset:auto 0 6%;display:flex;flex-direction:column;align-items:center;gap:2px}.dial__value{font-size:52px;font-weight:700;line-height:1;letter-spacing:-.045em;font-stretch:var(--wide-display)}.dial__label{color:var(--ink-3)}.legend{display:flex;flex-wrap:wrap;gap:6px 16px;list-style:none;margin:10px 0 0;padding:0}.legend__item{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink-2)}.legend__swatch{width:10px;height:10px;border-radius:2px;flex:none}.trace{position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.trace svg{display:block;width:100%;cursor:crosshair}.trace__scale{position:absolute;inset:0 auto 24px 0;display:flex;flex-direction:column;justify-content:space-between;padding:8px 0;font-size:10px;color:var(--ink-3);pointer-events:none}.trace__guide{color:var(--warn);font-weight:600}.trace__axis{position:relative;height:20px;margin-top:6px;padding-top:4px;border-top:1px solid var(--line);font-size:10.5px;color:var(--ink-3)}.trace__axis-edge{position:absolute;top:4px;font-size:10.5px;font-weight:600;color:var(--ink-2);white-space:nowrap}.trace__axis-edge--start{left:0}.trace__axis-edge--end{right:0}.trace__axis-tick{top:4px;transform:translateX(-50%);font-size:10px;color:var(--ink-3)}.trace__axis-tick,.trace__tooltip{position:absolute;white-space:nowrap}.trace__tooltip{top:8px;display:flex;align-items:center;gap:6px;padding:3px 8px;background:var(--night);color:var(--night-ink);border:1px solid var(--line-strong);border-radius:var(--r-sm);box-shadow:var(--shadow-md);font-size:11px;font-weight:600;pointer-events:none;z-index:10}.trace__tooltip-time{color:var(--night-ink-2);font-weight:500}.trace__tooltip-val{font-weight:700}.trace__times{display:flex;justify-content:space-between;margin-top:4px;font-size:10.5px;color:var(--ink-3)}.trend,.trend__plot{position:relative}.trend__plot{border-radius:var(--r-sm);overflow:hidden}.trend__plot svg{position:absolute;inset:0;width:100%}.trend__bars{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:space-between;gap:3px;padding-inline:3px}.trend__bar{--bar:var(--sev-normal);align-self:flex-end;min-width:6px;padding:0;border:0;border-radius:3px 3px 0 0;background:var(--bar);opacity:.9;cursor:pointer;transition:opacity var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.trend__bar:hover{opacity:1;transform:scaleY(1.03);transform-origin:bottom}.trend__bar--normal{--bar:var(--sev-normal)}.trend__bar--mild{--bar:var(--sev-mild)}.trend__bar--moderate{--bar:var(--sev-moderate)}.trend__bar--severe{--bar:var(--sev-severe)}.trend__axis{position:absolute;inset:0 auto 0 0;pointer-events:none}.trend__axis span{position:absolute;left:2px;transform:translateY(-50%);font-size:10px;color:var(--ink-3);background:var(--surface);padding:0 3px;border-radius:2px}.trend__labels{display:flex;justify-content:space-between;margin-top:6px;font-size:10.5px;color:var(--ink-3)}.site{background:var(--ground)}.site__header{position:-webkit-sticky;position:sticky;top:0;z-index:80;border-bottom:1px solid transparent;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease)}.site__header.is-scrolled{background:color-mix(in srgb,var(--ground) 86%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom-color:var(--line)}.site__headerInner{display:flex;align-items:center;gap:16px;height:66px}.site__brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:18px;font-weight:700;font-stretch:var(--wide-display);letter-spacing:-.02em;text-decoration:none}.site__nav{display:none;gap:4px;margin-left:12px}.site__nav a{padding:8px 12px;border-radius:var(--r-md);color:var(--ink-2);font-size:14.5px;font-weight:500;text-decoration:none}.site__nav a:hover{background:var(--surface-2);color:var(--ink)}.site__actions{display:flex;align-items:center;gap:8px;margin-left:auto}.site__signin{display:none}@media (min-width:860px){.site__nav{display:flex}.site__signin{display:inline-flex}.site__burger{display:none}}@media (max-width:859px){.site__nav.is-open{display:flex;position:absolute;top:66px;left:12px;right:12px;flex-direction:column;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg)}}.plan{display:flex;flex-direction:column;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl)}.plan--featured{border-color:var(--brand-500);box-shadow:var(--shadow-pop);position:relative}.plan__flag{position:absolute;top:-11px;left:24px;padding:3px 10px;border-radius:var(--r-pill);background:var(--brand-600);color:var(--brand-fg);font-size:11px;font-weight:600;letter-spacing:.03em}.plan__price{display:flex;align-items:baseline;gap:5px;margin:12px 0 18px}.plan__amount{font-size:36px;font-weight:700;letter-spacing:-.04em;font-stretch:var(--wide-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.plan__currency{font-size:19px;font-weight:600;color:var(--ink-2)}.plan__period{font-size:13.5px;color:var(--ink-3)}.plan__list{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:9px}.plan__item{display:flex;align-items:flex-start;gap:9px;font-size:14px;line-height:1.45}.plan__item svg{flex:none;margin-top:2px;color:var(--ok)}.plan__item.is-off,.plan__item.is-off svg{color:var(--ink-3)}.plan__cta{margin-top:auto}.site__footer{padding:46px 0 32px;background:var(--surface);border-top:1px solid var(--line)}.site__footerTop{display:flex;flex-wrap:wrap;gap:26px;justify-content:space-between}.site__footerBrand{display:flex;align-items:center;gap:12px;font-size:15px}.site__footerBrand p{font-size:13px;margin:2px 0 0}.site__footerLinks{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:flex-start}.site__footerLinks a{color:var(--ink-2);font-size:14px;text-decoration:none}.site__footerLinks a:hover{color:var(--brand-600)}.site__disclaimer{display:flex;gap:9px;margin:26px 0;padding:13px 15px;background:var(--ground);border:1px solid var(--line);border-radius:var(--r-md);font-size:13px;line-height:1.5;color:var(--ink-2);max-width:74ch}.site__disclaimer svg{flex:none;margin-top:2px;color:var(--ink-3)}.site__footerBottom{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;padding-top:20px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3)}.auth{min-height:100dvh;display:grid}@media (min-width:940px){.auth{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.auth__form{display:flex;flex-direction:column;justify-content:center;padding:32px 20px 56px}.auth__inner{width:100%;max-width:400px;margin-inline:auto}.auth__brand{display:inline-flex;align-items:center;gap:10px;margin-bottom:32px;color:var(--ink);font-weight:700;font-size:18px;text-decoration:none}.auth__brand,.auth__title{font-stretch:var(--wide-display)}.auth__title{font-size:27px}.auth__sub{color:var(--ink-2);margin:6px 0 26px}.auth__fields{display:flex;flex-direction:column;gap:15px}.auth__row{display:grid;grid-gap:12px;gap:12px;grid-template-columns:1fr 1fr}.auth__alt{margin-top:22px;font-size:14px;color:var(--ink-2);text-align:center}.auth__aside{display:none;position:relative;padding:48px;background:var(--night);color:var(--night-ink);overflow:hidden}@media (min-width:940px){.auth__aside{display:flex;flex-direction:column;justify-content:center}}.auth__aside:before{content:"";position:absolute;inset:auto -20% -30% -20%;height:420px;background:radial-gradient(50% 60% at 50% 50%,rgba(27,127,212,.28),transparent 70%)}.auth__aside>*{position:relative}.auth__asideTitle{color:#fff;font-size:30px;font-stretch:var(--wide-display);max-width:16ch}.auth__asideBody{color:var(--night-ink-2);margin-top:14px;max-width:42ch;line-height:1.6}.auth__asideCard{margin-top:32px;padding:18px;background:var(--night-2);border:1px solid var(--night-line);border-radius:var(--r-lg)}.eventRow__kind{display:flex;align-items:center;gap:8px}.eventRow__dot{width:8px;height:8px;border-radius:2px;flex:none}.traceBlock{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-bottom:1px solid var(--line)}.traceBlock:last-child{border-bottom:0}.traceBlock__head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.traceBlock__title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.traceBlock__stat{font-size:12.5px;color:var(--ink-3)}.caveats{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:7px}.caveats li{display:flex;gap:9px;font-size:13px;line-height:1.5;color:var(--ink-2)}.caveats svg{flex:none;margin-top:2px;color:var(--warn)}.provenance{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:12px;line-height:1.5;color:var(--ink-3)}.cons{display:grid;grid-gap:14px;gap:14px}@media (min-width:900px){.cons--monitor{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}.cons--calibrate{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}.cons__bar,.cons__note,.cons__rail{grid-column:1/-1}}.cons__bar{align-items:center;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--line)}.cons__bar,.cons__id{display:flex;flex-wrap:wrap}.cons__id{align-items:baseline;gap:10px;min-width:0}.cons__live{width:7px;height:7px;border-radius:50%;background:var(--ink-3);flex:none;align-self:center}.cons__live.is-live{background:var(--ok);animation:pulse 1.8s ease-in-out infinite}.cons__name{font-size:19px;font-weight:600;letter-spacing:-.02em}.cons__meta{font-size:11px;color:var(--ink-3)}.cons__modes{display:flex;gap:2px;margin-left:auto;padding:3px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md)}.cons__mode{position:relative;padding:7px 16px;border:0;background:none;border-radius:var(--r-sm);color:var(--ink-2);font-size:13px;font-weight:600;cursor:pointer}.cons__mode span{position:relative;z-index:1}.cons__mode.is-on{color:var(--brand-700)}.cons__modeBg{position:absolute;inset:0;border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow-sm)}.cons__feed{min-width:0}.feed{position:relative;aspect-ratio:4/3;border-radius:var(--r-lg);overflow:hidden;background:var(--night);border:1px solid var(--night-line);transition:box-shadow .22s var(--ease)}.feed.is-flash{box-shadow:inset 0 0 0 2px var(--sig-arousal),0 0 22px -6px var(--sig-arousal)}.feed__img{width:100%;height:100%;object-fit:cover;display:block}.feed__idle{position:relative;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;text-align:center;color:var(--night-ink-2);overflow:hidden}.feed__idle p{font-size:12.5px;line-height:1.5;max-width:30ch}.feed__sweep{position:absolute;left:0;right:0;height:36%;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--sig-spo2) 15%,transparent),transparent);animation:feedSweep 3.6s ease-in-out infinite}@keyframes feedSweep{0%,to{transform:translateY(-45%)}50%{transform:translateY(250%)}}.feed__blink{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:var(--r-pill);background:var(--sig-arousal);color:#fff;font-size:11.5px;font-weight:600}.hud{position:absolute;inset:0;pointer-events:none;font-family:var(--font-mono)}.hud__bracket{position:absolute;width:16px;height:16px;border:1px solid color-mix(in srgb,var(--night-ink) 45%,transparent)}.hud__bracket--tl{top:10px;left:10px;border-right:0;border-bottom:0}.hud__bracket--tr{top:10px;right:10px;border-left:0;border-bottom:0}.hud__bracket--bl{bottom:10px;left:10px;border-right:0;border-top:0}.hud__bracket--br{bottom:10px;right:10px;border-left:0;border-top:0}.hud__row{position:absolute;left:16px;right:16px;display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--night-ink-2)}.hud__row--top{top:16px}.hud__row--bottom{bottom:16px}.hud__rec{display:inline-flex;align-items:center;gap:6px}.hud__recDot{width:7px;height:7px;border-radius:50%;background:var(--ink-3)}.hud__rec.is-live{color:var(--danger)}.hud__rec.is-live .hud__recDot{background:var(--danger);animation:pulse 1.4s ease-in-out infinite}.hud__tc{color:var(--night-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.08em}.hud__link{margin-left:auto}.hud__link.is-live{color:var(--ok)}.hud__field{display:inline-flex;align-items:baseline;gap:6px;color:var(--night-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:12px;letter-spacing:.04em;text-transform:none}.hud__field i{font-style:normal;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--night-ink-2)}.cons__panel{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px}.cons__pane{display:flex;flex-direction:column;gap:18px}.cons__specs{display:grid;grid-gap:12px;gap:12px;margin:0}.cons__specs>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--line)}.cons__specs dt{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3)}.cons__specs dd{margin:0;font-size:14px;font-weight:600}.cons__slide{display:flex;align-items:center;gap:14px}.cons__slide .slider{flex:1 1 auto}.cons__val{min-width:52px;text-align:right;font-size:16px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--brand-600)}.cons__hint{font-size:12.5px;line-height:1.5;color:var(--ink-3)}.batt{align-items:center;gap:10px}.batt,.batt__cells{display:inline-flex}.batt__cells{gap:2px}.batt__cells i{width:5px;height:14px;border-radius:1px;background:var(--ok);display:block}.batt.is-low .batt__cells i{background:var(--danger)}.batt__pct{font-size:13px;color:var(--ink-2)}.blog{display:flex;flex-direction:column;gap:6px;padding-top:14px;border-top:1px solid var(--line)}.blog__k{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3)}.blog__empty{font-size:12.5px;color:var(--ink-3)}.blog__row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-2)}.blog__row i{width:5px;height:5px;border-radius:50%;background:var(--sig-arousal);flex:none}.cons__rail{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--line)}.cons__rail .topo{flex:1 1 320px}.cons__unpair{margin-left:auto}.cons__note{align-items:flex-start;font-size:12.5px}.cons__note code{font-family:var(--font-mono);font-size:11px;word-break:break-all}.scan{max-width:380px;margin:24px auto 0;text-align:center}.scan__radar{position:relative;width:168px;height:168px;margin:0 auto 26px;display:grid;place-items:center}.scan__ring,.scan__ring--2,.scan__ring--3{position:absolute;inset:0;border:1px solid var(--line-strong);border-radius:50%;animation:scanRing 3s ease-out infinite}.scan__ring--2{animation-delay:1s}.scan__ring--3{animation-delay:2s}@keyframes scanRing{0%{transform:scale(.35);opacity:0}35%{opacity:.7}to{transform:scale(1);opacity:0}}.scan__sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,color-mix(in srgb,var(--brand-500) 26%,transparent),transparent 42%);animation:scanSweep 3.4s linear infinite}@keyframes scanSweep{to{transform:rotate(1turn)}}.scan__core{position:relative;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--brand-600);color:var(--brand-fg)}.scan__title{font-size:19px;letter-spacing:-.02em}.scan__body{font-size:14px;color:var(--ink-2);margin:8px 0 22px}.scan__form{display:flex;flex-direction:column;gap:12px;text-align:left}.scan__code{text-align:center;letter-spacing:.34em;font-size:20px;text-transform:uppercase}@media (prefers-reduced-motion:reduce){.cons__live,.feed__sweep,.hud__recDot,.scan__ring,.scan__sweep{animation:none}}.recordDot{width:9px;height:9px;border-radius:50%;background:var(--danger);flex:none;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}@keyframes skeletonShimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.rec{display:flex;flex-direction:column;align-items:center;gap:16px;padding:12px 0}.rec__btn{position:relative;width:128px;height:128px;padding:0;border:0;background:transparent;cursor:pointer}.rec__btn svg{width:100%;height:100%}.rec__track{fill:none;stroke:var(--surface-3);stroke-width:6}.rec__prog{fill:none;stroke:var(--danger);stroke-width:6;stroke-linecap:round;transition:stroke-dasharray .9s linear}.rec__core{position:absolute;inset:22px;display:grid;place-items:center;border-radius:50%;background:var(--brand-600);color:var(--brand-fg);transition:background var(--dur) var(--ease),transform var(--dur) var(--ease)}.rec__btn:hover .rec__core{transform:scale(1.04)}.rec__btn:disabled{cursor:not-allowed}.rec.is-live .rec__core{background:var(--danger);color:#fff}.rec__read{display:flex;flex-direction:column;align-items:center;gap:4px}.rec__state{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.rec__clock{font-size:26px;font-weight:600;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.topo{gap:12px}.topo,.topo__sources{display:flex;flex-direction:column}.topo__sources{gap:10px}.topo__cloud,.topo__hub,.topo__node{display:flex;align-items:center;gap:10px;font-size:13px}.topo__hubIcon,.topo__icon{display:grid;place-items:center;width:32px;height:32px;flex:none;border:1px solid var(--line);border-radius:3px;background:var(--surface-2);color:var(--ink-2)}.topo.is-live .topo__hubIcon,.topo.is-live .topo__icon{color:var(--brand-600);border-color:var(--brand-100)}.topo__name{color:var(--ink-2);white-space:nowrap}.topo__wire{position:relative;flex:1 1 auto;height:1px;min-width:24px;background:var(--line-strong);overflow:hidden}.topo__wire--up{height:1px}.topo__packet{position:absolute;top:-1.5px;left:0;width:16px;height:4px;border-radius:2px;background:var(--brand-500)}.topo__hub{padding-left:42px}.topo__out{display:flex;align-items:center;gap:10px}.topo__cloud{padding:6px 11px;border:1px dashed var(--line-strong);border-radius:3px;color:var(--ink-3);font-family:var(--font-mono);font-size:11px;white-space:nowrap}.eyeg{display:flex;flex-direction:column;gap:14px}.eyeg__stage{position:relative;display:grid;place-items:center;padding:14px;background:var(--night);border:1px solid var(--night-line);border-radius:var(--r-md)}.eyeg__stage svg{width:100%;max-width:240px;height:auto}.eyeg__white{fill:rgba(220,236,250,.1);stroke:none}.eyeg__iris{fill:var(--sig-arousal);opacity:.65}.eyeg__pupil{fill:#05101c}.eyeg__lid{fill:none;stroke:var(--night-ink-2);stroke-width:2;stroke-linecap:round;transition:stroke .16s var(--ease)}.eyeg__lid.is-open{stroke:var(--sig-arousal)}.eyeg__pt{fill:var(--night-ink);opacity:.65}.eyeg__thresh{stroke:var(--warn);stroke-width:1;stroke-dasharray:3 4;opacity:.8}.eyeg__state{position:absolute;top:10px;left:12px;display:inline-flex;align-items:center;gap:7px;padding:3px 9px;border-radius:2px;background:rgba(5,16,28,.7);color:var(--night-ink-2);font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.eyeg__state.is-open{color:var(--sig-arousal)}.eyeg__stateDot{width:5px;height:5px;border-radius:50%;background:currentColor}.eyeg__meter{display:flex;align-items:center;gap:10px}.eyeg__meterK,.eyeg__meterV{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.eyeg__meterV{color:var(--ink);min-width:44px;text-align:right}.eyeg__bar{position:relative;flex:1 1 auto;height:5px;border-radius:3px;background:var(--surface-3);overflow:visible}.eyeg__fill{position:absolute;inset:0 auto 0 0;border-radius:3px;background:var(--sig-arousal)}.eyeg__tick{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--warn)}.nights__head{align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.nights__head,.nights__sum{display:flex;flex-wrap:wrap}.nights__sum{align-items:center;gap:10px;margin-top:4px;font-size:12px;color:var(--ink-3)}.nights__dot{width:3px;height:3px;border-radius:50%;background:var(--line-strong)}.nights__delta{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-3)}.nights__delta.is-down{background:var(--ok-bg);color:var(--ok)}.nights__delta.is-up{background:var(--warn-bg);color:var(--warn)}.ridge{margin:0 0 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.ridge__cap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;min-height:42px;border-bottom:1px solid var(--line);flex-wrap:nowrap}.ridge__k{overflow:hidden;text-overflow:ellipsis;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase}.ridge__k,.ridge__read{white-space:nowrap;color:var(--ink-3)}.ridge__read{display:inline-flex;align-items:baseline;gap:8px;font-size:12px;transition:opacity .12s var(--ease)}.ridge__read[data-empty]{opacity:0}.ridge__when{min-width:6.5ch}.ridge__v,.ridge__when{display:inline-block;text-align:right}.ridge__v{min-width:3.5ch;font-size:15px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ridge__v--normal{color:var(--sev-normal)}.ridge__v--mild{color:var(--sev-mild)}.ridge__v--moderate{color:var(--sev-moderate)}.ridge__v--severe{color:var(--sev-severe)}.ridge__plot{position:relative;height:96px;cursor:crosshair;touch-action:pan-y}.ridge__plot svg{width:100%;height:100%;display:block}.ridge__band{opacity:.4}.ridge__band--normal{fill:var(--sev-normal-bg)}.ridge__band--mild{fill:var(--sev-mild-bg)}.ridge__band--moderate{fill:var(--sev-moderate-bg)}.ridge__band--severe{fill:var(--sev-severe-bg)}.ridge__line{fill:none;stroke:var(--brand-600);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.ridge__dot{position:absolute;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:var(--sev-normal);box-shadow:0 0 0 2px var(--surface);transition:transform .16s var(--ease);pointer-events:none}.ridge__dot--mild{background:var(--sev-mild)}.ridge__dot--moderate{background:var(--sev-moderate)}.ridge__dot--severe{background:var(--sev-severe)}.ridge__dot.is-on{transform:scale(1.6)}.ridge__cursor{position:absolute;top:0;bottom:0;width:1px;background:var(--ink);opacity:.28;pointer-events:none}.nfilt{align-items:center;gap:12px;margin-bottom:14px}.nfilt,.nfilt__chips{display:flex;flex-wrap:wrap}.nfilt__chips{gap:6px}.chip{position:relative;display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border:1px solid var(--line);border-radius:var(--r-pill);background:transparent;color:var(--ink-2);font-size:13px;font-weight:600;cursor:pointer}.chip>em,.chip>span{position:relative;z-index:1}.chip em{font-style:normal;font-family:var(--font-mono);font-size:10.5px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chip:disabled{opacity:.4;cursor:not-allowed}.chip.is-on{color:var(--brand-700);border-color:transparent}.chip.is-on em{color:var(--brand-600)}.chip__bg{position:absolute;inset:0;border-radius:var(--r-pill);background:var(--brand-100)}.nfilt__sort{display:inline-flex;align-items:center;gap:7px;margin-left:auto;padding:7px 12px;border:1px solid var(--line);border-radius:var(--r-pill);background:transparent;color:var(--ink-2);font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;cursor:pointer}.nfilt__sort:hover{background:var(--surface-2);color:var(--ink)}.nledger{display:flex;flex-direction:column;gap:8px}.nrow{--sev:var(--sev-normal);position:relative;display:grid;grid-template-columns:190px minmax(0,1fr) 118px 200px 34px 18px;align-items:center;grid-gap:18px;gap:18px;padding:14px 16px 14px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);cursor:pointer;transition:border-color .16s var(--ease),box-shadow .16s var(--ease),transform .16s var(--ease)}.nrow--mild{--sev:var(--sev-mild)}.nrow--moderate{--sev:var(--sev-moderate)}.nrow--severe{--sev:var(--sev-severe)}.nrow.is-hot,.nrow:focus-visible,.nrow:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.nrow__edge{position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 2px 2px 0;background:var(--sev)}.nrow__when{display:flex;flex-direction:column;gap:3px;min-width:0}.nrow__date{font-size:14.5px;font-weight:600;letter-spacing:-.012em}.nrow__time{font-size:11px;color:var(--ink-3)}.nrow__strip{min-width:0}.nrow__strip .nstrip{border-radius:var(--r-sm)}.nrow__score{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.nrow__ahi{font-size:22px;font-weight:700;letter-spacing:-.03em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--sev)}.nrow__mini{display:flex;gap:18px;margin:0}.nrow__mini dt{font-family:var(--font-mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.nrow__mini dd{margin:3px 0 0;font-size:14px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.nrow__del{opacity:0;transition:opacity .14s var(--ease)}.nrow:focus-within .nrow__del,.nrow:hover .nrow__del{opacity:1}.nrow__go{color:var(--ink-3)}@media (max-width:1180px){.nrow{grid-template-columns:168px minmax(0,1fr) 104px 34px 18px}.nrow__mini{display:none}}@media (prefers-reduced-motion:reduce){.nrow,.ridge__dot{transition:none}}.nlist{display:flex;flex-direction:column;gap:10px}.ncard{position:relative;overflow:hidden;border-radius:var(--r-lg)}.ncard__del{position:absolute;top:0;right:0;bottom:0;width:96px;display:grid;place-items:center;border:0;background:var(--danger);color:#fff;cursor:pointer}.ncard__body{position:relative;display:flex;flex-direction:column;gap:12px;padding:15px 16px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);cursor:pointer;touch-action:pan-y}.ncard__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ncard__date{display:block;font-size:14.5px;font-weight:600}.ncard__time{display:block;font-size:11px;color:var(--ink-3);margin-top:2px}.ncard__ahi{display:flex;flex-direction:column;align-items:flex-end;font-size:24px;font-weight:700;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.ncard__ahi em{font-style:normal;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);margin-top:4px;font-weight:500}.ncard__ahi--normal{color:var(--sev-normal)}.ncard__ahi--mild{color:var(--sev-mild)}.ncard__ahi--moderate{color:var(--sev-moderate)}.ncard__ahi--severe{color:var(--sev-severe)}.ncard__foot{display:flex;align-items:center;gap:10px}.ncard__mini{font-size:10.5px;color:var(--ink-3);margin-left:auto}.ncard__foot>svg{color:var(--ink-3);flex:none}.settings{display:flex;flex-direction:column;gap:26px;max-width:720px}.grp__title{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.grp__rows{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.grow{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-top:1px solid var(--line)}.grp__rows>.grow:first-child{border-top:0}.grow__text{display:flex;flex-direction:column;gap:2px;min-width:0}.grow__label{font-size:14.5px;font-weight:500}.grow__hint{font-size:12px;color:var(--ink-3)}.grow__ctl{flex:none}.grow__input{width:220px;min-height:36px}.grow__static{font-size:13px;color:var(--ink-3)}.cmdk__hint{display:none;align-items:center;gap:3px;height:30px;padding:0 9px;border:1px solid var(--line);border-radius:3px;background:transparent;cursor:pointer}.cmdk__hint kbd{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-3)}.cmdk__hint:hover{background:var(--surface-2);border-color:var(--line-strong)}@media (min-width:900px){.cmdk__hint{display:inline-flex}}.cmdk__wrap{position:fixed;inset:0;z-index:200;display:grid;place-items:start center;padding-top:12vh}.cmdk__scrim{position:absolute;inset:0;border:0;background:rgba(6,17,29,.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:pointer}.cmdk__box{position:relative;width:min(560px,calc(100vw - 40px));background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);overflow:hidden}.cmdk__input{width:100%;padding:16px 18px;border:0;border-bottom:1px solid var(--line);background:transparent;font-size:15.5px;outline:none}.cmdk__list{max-height:52vh;overflow-y:auto;padding:6px}.cmdk__empty{padding:22px;text-align:center;color:var(--ink-3)}.cmdk__group [cmdk-group-heading]{padding:10px 10px 6px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.cmdk__item{display:flex;align-items:center;gap:11px;padding:10px 11px;border-radius:var(--r-sm);font-size:14px;cursor:pointer;color:var(--ink-2)}.cmdk__item[data-selected=true]{background:var(--brand-100);color:var(--brand-700)}.toast{font-family:var(--font-sans)!important;border-radius:var(--r-md)!important}.dash{display:grid;grid-gap:16px;gap:16px;align-items:stretch}@media (min-width:1024px){.dash{grid-template-columns:minmax(0,340px) minmax(0,1fr)}}.dash__result{display:flex;flex-direction:column}.dash__result .card__body{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:16px}.dash__result .dial{margin-block:auto}.dash__side{display:flex;flex-direction:column;gap:16px;min-width:0}.dash__band{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}.dash__conf{font-size:11px;color:var(--ink-3)}.dash__flags{display:flex;flex-direction:column;gap:6px;width:100%}.dash__flag{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:var(--r-sm);background:var(--warn-bg);color:var(--warn);font-size:12px;line-height:1.45}.dash__flag svg{flex:none;margin-top:2px}.dash__trend{margin-top:16px}.dash__trendChart{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.statgrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.stat{--stat-accent:var(--brand-500);display:flex;flex-direction:column;gap:8px;padding:14px 15px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);min-width:0}.stat--spo2{--stat-accent:var(--sig-spo2)}.stat--hr{--stat-accent:var(--sig-hr)}.stat--arousal{--stat-accent:var(--sig-arousal)}.stat--brand{--stat-accent:var(--brand-500)}.stat__label{font-family:var(--font-mono);font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3)}.stat__row{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.stat__value{font-size:24px;font-weight:700;letter-spacing:-.03em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.stat__value em{font-style:normal;margin-left:3px;font-size:11px;font-weight:500;color:var(--ink-3);letter-spacing:0}.stat__delta{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;padding:2px 7px;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:10.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat__delta.is-good{background:var(--ok-bg);color:var(--ok)}.stat__delta.is-bad{background:var(--warn-bg);color:var(--warn)}.spark{flex:none}.spark,.spark--empty{width:90px;height:26px;display:block}.heat{display:flex;flex-direction:column;gap:14px}.heat__grid{display:flex;flex-wrap:wrap;gap:6px}.heat__cell{width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:var(--r-sm);cursor:pointer}.heat__cell,.heat__cell--normal{background:var(--sev-normal)}.heat__cell--mild{background:var(--sev-mild)}.heat__cell--moderate{background:var(--sev-moderate)}.heat__cell--severe{background:var(--sev-severe)}.heat__key{display:flex;flex-wrap:wrap;gap:8px 16px}.heat__keyItem{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.heat__key .heat__cell{width:12px;height:12px;cursor:default}.report{max-width:860px;margin-inline:auto}.report__actions{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px}.report__sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:32px}.report__head{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-bottom:20px;border-bottom:2px solid var(--ink)}.report__meta{display:grid;grid-gap:4px;gap:4px;font-size:13px;text-align:right}.report__section{padding:22px 0;border-bottom:1px solid var(--line)}.report__section:last-child{border-bottom:0}@media print{.report__actions,.shell__side,.shell__top,.tabbar{display:none!important}.report,.report__sheet{max-width:none;border:0;padding:0}}@media (max-width:719px){.report__sheet{padding:18px}.report__head{gap:12px}.report__meta{text-align:left}}.grp{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.grp+.grp{margin-top:14px}.nrow--skel{height:76px;background:var(--surface-2);border-color:transparent;cursor:default;animation:skelPulse 1.2s ease-in-out infinite}@keyframes skelPulse{0%,to{opacity:.55}50%{opacity:.85}}@media (prefers-reduced-motion:reduce){.nrow--skel{animation:none}}.sscale{width:100%}.sscale__bands{gap:2px;height:30px}.sscale__band,.sscale__bands{position:relative;display:flex}.sscale__band{align-items:center;justify-content:center;min-width:0;border-radius:3px;background:var(--surface-2);transition:background .2s var(--ease)}.sscale__band em{font-style:normal;font-family:var(--font-mono);font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);overflow:hidden;white-space:nowrap;text-overflow:clip;padding-inline:3px}.sscale__band--normal.is-on{background:var(--sev-normal-bg)}.sscale__band--mild.is-on{background:var(--sev-mild-bg)}.sscale__band--moderate.is-on{background:var(--sev-moderate-bg)}.sscale__band--severe.is-on{background:var(--sev-severe-bg)}.sscale__band--normal.is-on em{color:var(--sev-normal)}.sscale__band--mild.is-on em{color:var(--sev-mild)}.sscale__band--moderate.is-on em{color:var(--sev-moderate)}.sscale__band--severe.is-on em{color:var(--sev-severe)}.sscale__mark{position:absolute;top:-7px;bottom:-7px;width:2px;margin-left:-1px;border-radius:1px;background:var(--ink)}.sscale__mark--normal{background:var(--sev-normal)}.sscale__mark--mild{background:var(--sev-mild)}.sscale__mark--moderate{background:var(--sev-moderate)}.sscale__mark--severe{background:var(--sev-severe)}.sscale__mark b{position:absolute;top:-18px;left:50%;transform:translateX(-50%);padding:1px 5px;border-radius:3px;background:currentColor;font-size:10px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.sscale__mark b:after{content:""}.sscale__mark--mild b,.sscale__mark--moderate b,.sscale__mark--normal b,.sscale__mark--severe b{color:var(--surface)}.sscale__ticks{position:relative;height:16px;margin-top:4px}.sscale__ticks span{position:absolute;top:0;font-size:9px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dash__means{font-size:13px;line-height:1.5;color:var(--ink-2);text-align:center;max-width:34ch}.dash__vs{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding-top:12px;border-top:1px solid var(--line)}.dash__vsK{font-family:var(--font-mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.dash__vsV{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-2);font-size:13px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dash__vsV.is-good{background:var(--ok-bg);color:var(--ok)}.dash__vsV.is-bad{background:var(--warn-bg);color:var(--warn)}.dash__vsV em{font-style:normal;font-weight:500;font-size:11px;opacity:.85}.dash__report{width:100%;justify-content:center}.nstrip{--nstrip-lw:124px;--nstrip-rw:68px;position:relative;margin:0;padding:12px 14px;background:var(--night);border:1px solid var(--night-line);border-radius:var(--r-md)}.nstrip__ends{display:flex;align-items:center;justify-content:space-between;margin:0 var(--nstrip-rw) 8px var(--nstrip-lw);font-size:10px;color:var(--night-ink-2)}.nstrip__cursorRead{color:var(--night-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.nstrip__grid{position:relative;display:flex;flex-direction:column;gap:4px}.nstrip__lane{display:grid;grid-template-columns:var(--nstrip-lw) minmax(0,1fr) var(--nstrip-rw);align-items:center;grid-gap:10px;gap:10px}.nstrip__label{display:inline-flex;align-items:center;gap:7px;font-size:10.5px;font-weight:600;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nstrip__label--muted{color:var(--night-ink-2);font-weight:500}.nstrip__swatch{width:8px;height:8px;border-radius:2px;background:currentColor;flex:none}.nstrip__track{position:relative;height:16px;border-radius:2px;background:color-mix(in srgb,var(--night-ink) 6%,transparent);overflow:hidden}.nstrip__hour{position:absolute;top:0;bottom:0;width:1px;background:color-mix(in srgb,var(--night-ink) 12%,transparent)}.nstrip__ev{position:absolute;top:2px;bottom:2px;min-width:2px;border-radius:1px}.nstrip__rate{font-size:12px;font-weight:600;color:var(--night-ink);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.nstrip__rate em{font-style:normal;font-size:9px;font-weight:400;color:var(--night-ink-2);margin-left:2px}.nstrip__rate--muted{color:var(--night-ink-2);font-weight:500}.nstrip__lane--density{margin-top:4px}.nstrip__track--density{height:26px;background:none;display:block}.nstrip__bar{position:absolute;bottom:0;background:var(--night-ink);border-radius:1px 1px 0 0;min-height:1px}.nstrip__lane--axis{align-items:start}.nstrip__track--axis{height:14px;background:none;overflow:visible}.nstrip__hourLabel{position:absolute;top:1px;transform:translateX(-50%);font-size:9.5px;color:var(--night-ink-2);white-space:nowrap}.nstrip__layer{position:absolute;left:var(--nstrip-lw);right:var(--nstrip-rw);top:0;bottom:18px;margin-inline:10px;pointer-events:none}.nstrip__cursor{position:absolute;top:0;bottom:0;width:1px;background:var(--night-ink);opacity:.7}.nstrip__tip{position:absolute;bottom:calc(100% - 6px);transform:translateX(-50%);z-index:5;display:flex;flex-direction:column;gap:4px;min-width:148px;padding:8px 10px;border-radius:var(--r-sm);background:var(--night-2);border:1px solid var(--night-line);box-shadow:var(--shadow-lg);pointer-events:none}.nstrip__tipTime{font-size:10px;letter-spacing:.1em;color:var(--night-ink-2)}.nstrip__tipRow{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--night-ink);white-space:nowrap}.nstrip__tipRow i{width:7px;height:7px;border-radius:2px;flex:none}.nstrip__tipRow b{margin-left:auto;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.nstrip--compact{padding:5px 6px;border-radius:var(--r-sm)}.nstrip--compact .nstrip__grid{gap:2px}.nstrip--compact .nstrip__lane{grid-template-columns:minmax(0,1fr);gap:0}.nstrip--compact .nstrip__track{height:7px}.nstrip--compact .nstrip__lane--density{margin-top:2px}.nstrip--compact .nstrip__track--density{height:10px}@media (max-width:719px){.nstrip{--nstrip-lw:92px;--nstrip-rw:54px;padding:10px}.nstrip__label{font-size:9.5px}.nstrip__rate{font-size:11px}.nstrip__rate em{display:none}}