:root{color-scheme:light;--paper-0: #ffffff;--paper-1: #f8fbfd;--paper-2: #eff3f7;--paper-3: #e3e8ed;--paper-rule: #d4dae0;--slate-400: #7a818a;--slate-500: #656c76;--slate-600: #4c535e;--slate-800: #1a2029;--night-0: #080c13;--night-1: #0e131b;--night-2: #151b24;--night-3: #1f2630;--night-rule: #2f3640;--night-400: #737b86;--snow-3: #9aa2ad;--snow-2: #bec5cd;--snow-1: #ebeff4;--violet-900: #3a1e5e;--violet-700: #522c83;--violet-600: #643b9a;--violet-400: #8c6ebd;--violet-200: #c6b2ed;--violet-100: #ddd0f7;--violet-wash-light: #efe9fc;--violet-wash-dark: #302543;--brick-600: #a52b1e;--brick-300: #ed9c8e;--ochre-600: #8a5f18;--ochre-300: #eac07a;--surface-canvas: var(--paper-1);--surface-raised: var(--paper-0);--surface-sunken: var(--paper-2);--surface-hover: var(--paper-3);--surface-selected: var(--violet-wash-light);--surface-inverse: var(--slate-800);--text-inverse: var(--paper-0);--text-primary: var(--slate-800);--text-secondary: var(--slate-600);--text-tertiary: var(--slate-500);--text-on-accent: var(--paper-0);--rule-faint: var(--paper-rule);--rule-strong: var(--slate-400);--rule-ink: var(--slate-800);--accent: var(--violet-600);--accent-hover: var(--violet-700);--accent-pressed: var(--violet-900);--focus-ring: var(--violet-700);--danger: var(--brick-600);--danger-wash: #ffebe7;--mark: var(--ochre-600);--shadow-color: #121b2924;--backdrop: #03060d8c;--dialog-edge: transparent;--series-sys: var(--accent);--series-dia: var(--violet-400);--series-pulse: var(--slate-600);--chart-grid: var(--rule-faint);--chart-marker: var(--rule-strong);--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.5rem;--text-num: 1.5rem;--lh-tight: 1.15;--lh-snug: 1.3;--lh-body: 1.5;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--gap-stack: var(--space-3);--gap-section: var(--space-6);--pad-row: var(--space-2);--gutter: var(--space-3);--tap: 2.5rem;--tap-small: 2rem;--radius-xs: 2px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-pill: 999px;--focus-width: 3px;--focus-offset: 2px;--dur-fast: .12s;--dur-base: .18s;--dur-slow: .24s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--z-bar: 20;--z-toast: 40;--content-max: 70rem;--prose-max: 42rem;--bar-height: 3.5rem;--topbar-height: 3.5rem}:root[data-scheme=dark]{color-scheme:dark;--surface-canvas: var(--night-1);--surface-raised: var(--night-2);--surface-sunken: var(--night-0);--surface-hover: var(--night-3);--surface-selected: var(--violet-wash-dark);--surface-inverse: var(--snow-1);--text-inverse: var(--night-1);--text-primary: var(--snow-1);--text-secondary: var(--snow-2);--text-tertiary: var(--snow-3);--text-on-accent: var(--night-1);--rule-faint: var(--night-rule);--rule-strong: var(--night-400);--rule-ink: var(--snow-2);--accent: var(--violet-200);--accent-hover: var(--violet-100);--accent-pressed: var(--paper-0);--focus-ring: var(--violet-100);--danger: var(--brick-300);--danger-wash: #391a15;--mark: var(--ochre-300);--shadow-color: #00000099;--dialog-edge: var(--rule-strong);--series-pulse: var(--snow-3)}:root[data-contrast=high]{--surface-canvas: #ffffff;--surface-raised: #ffffff;--surface-sunken: #ffffff;--surface-hover: #e4e4e4;--surface-selected: #e7e1f6;--surface-inverse: #000000;--text-inverse: #ffffff;--text-primary: #000000;--text-secondary: #000000;--text-tertiary: #1b1b1b;--text-on-accent: #ffffff;--rule-faint: #2e2e2e;--rule-strong: #000000;--rule-ink: #000000;--accent: #480c80;--accent-hover: #31005b;--focus-ring: #000000;--danger: #8d0000;--mark: #553200;--dialog-edge: #000000;--series-dia: #714ca6;--series-pulse: #161616}:root[data-contrast=high][data-scheme=dark]{--surface-canvas: #000000;--surface-raised: #000000;--surface-sunken: #000000;--surface-hover: #1f1f1f;--surface-selected: #291c3c;--surface-inverse: #ffffff;--text-inverse: #000000;--text-primary: #ffffff;--text-secondary: #ffffff;--text-tertiary: #dedede;--text-on-accent: #000000;--rule-faint: #b7b7b7;--rule-strong: #ffffff;--rule-ink: #ffffff;--accent: #deceff;--accent-hover: #efe6ff;--focus-ring: #ffffff;--danger: #febbaf;--mark: #fed899;--dialog-edge: #ffffff;--series-dia: #ae96da;--series-pulse: #e4e4e4}:root[data-density=comfortable]{--gap-stack: var(--space-4);--gap-section: var(--space-8);--pad-row: var(--space-3)}:root[data-targets=large]{--tap: 3rem;--tap-small: 2.75rem}:root[data-motion=reduce]{--dur-fast: 0ms;--dur-base: 0ms;--dur-slow: 0ms}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 0ms;--dur-base: 0ms;--dur-slow: 0ms}}@media(min-width:25rem){:root{--gutter: var(--space-4)}}@media(min-width:56.25rem){:root{--gutter: var(--space-6)}}*,*:before,*:after{box-sizing:border-box}html{background:var(--surface-canvas);color:var(--text-primary);-webkit-text-size-adjust:100%;scrollbar-color:var(--rule-strong) transparent}html{scroll-padding-bottom:calc(var(--bar-height) + env(safe-area-inset-bottom) + var(--space-4))}@media(min-width:56.25rem){html{scroll-padding-bottom:var(--space-4);scroll-padding-top:calc(var(--topbar-height) + var(--space-4))}}body{margin:0;min-height:100dvh;background:var(--surface-canvas);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--lh-body);text-rendering:optimizeLegibility}::selection{background:var(--surface-selected);color:var(--text-primary)}h1,h2,h3,p,ol,ul,dl,figure{margin:0}h1,h2,h3{line-height:var(--lh-snug);text-wrap:balance}h1{font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:-.01em}h2{font-size:var(--text-lg);font-weight:var(--weight-semibold)}h3{font-size:var(--text-md);font-weight:var(--weight-semibold)}p{text-wrap:pretty}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:.18em}a:hover{text-decoration-thickness:2px}strong{font-weight:var(--weight-semibold)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:var(--focus-offset)}[tabindex="-1"]:focus{outline:none}code,.mono{font-family:var(--font-mono);font-size:.95em;overflow-wrap:anywhere}.num,.num-col,time{font-variant-numeric:tabular-nums}.muted{color:var(--text-secondary)}.unit{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary)}.icon{flex:none}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;left:var(--space-3);top:var(--space-3);z-index:calc(var(--z-toast) + 1);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);background:var(--surface-inverse);color:var(--text-inverse);font-weight:var(--weight-semibold);transform:translateY(-200%)}.skip-link:focus{transform:none}.boot-note{padding:var(--space-8) var(--gutter);color:var(--text-secondary)}.main{display:block;max-width:var(--content-max);margin:0 auto;padding:0 var(--gutter) var(--space-8)}.main:focus{outline:none}.view{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--gap-section);min-width:0}.view[data-page=log],.view[data-page=settings],.view[data-page=data],.view[data-page=account],.view[data-page=devices],.view[data-page=more],.view[data-page=guidance]{max-width:44rem}.view[data-page=log]{gap:var(--space-4)}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-bar);background:var(--surface-raised);border-top:1px solid var(--rule-faint);padding-bottom:env(safe-area-inset-bottom)}.tabbar-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0 auto;padding:0 var(--space-2);max-width:32rem}.tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:var(--bar-height);color:var(--text-secondary);text-decoration:none;font-size:var(--text-xs);font-weight:var(--weight-semibold)}.tab:hover,.tab[aria-current=page]{color:var(--text-primary)}.tab[aria-current=page]:before{content:"";position:absolute;top:0;left:28%;right:28%;height:3px;border-radius:0 0 3px 3px;background:var(--accent)}.tab .icon{width:1.25rem;height:1.25rem;padding:.3125rem;box-sizing:content-box}.tab-log .icon{padding-inline:.875rem;border-radius:var(--radius-pill);background:var(--accent);color:var(--text-on-accent)}.tab-log:hover .icon{background:var(--accent-hover)}.topbar{display:none}.app-footer{max-width:var(--content-max);margin:0 auto;padding:var(--space-6) var(--gutter) calc(var(--bar-height) + env(safe-area-inset-bottom) + var(--space-6));border-top:1px solid var(--rule-faint);color:var(--text-secondary);font-size:var(--text-xs);display:grid;gap:var(--space-2)}.app-footer a{color:var(--text-secondary)}.app-footer a:hover{color:var(--text-primary)}.footer-links,.footer-build{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);list-style:none;padding:0}.footer-links a{display:inline-flex;align-items:center;min-height:1.5rem}.footer-source small{font-size:var(--text-xs)}.page-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-2) var(--space-4);padding-top:var(--space-5)}.page-heading{display:grid;gap:2px;min-width:0}.page-sub{color:var(--text-secondary);font-size:var(--text-sm)}.page-actions{display:flex;align-items:center;gap:var(--space-2)}.section{display:grid;gap:var(--space-3);min-width:0}.section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--rule-faint)}.section-head h2:focus{outline:none}.section-intro{color:var(--text-secondary);max-width:var(--prose-max)}.section-danger .section-head{border-top-color:var(--danger)}.subhead{font-size:var(--text-md);margin-top:var(--space-2)}.home-grid{display:grid;gap:var(--gap-section);min-width:0}.home-primary,.home-secondary{display:grid;gap:var(--gap-section);align-content:start;min-width:0}.register{padding:var(--space-1) 0;border-top:2px solid var(--rule-ink);border-bottom:1px solid var(--rule-faint)}.register-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0}.slot{display:grid;align-content:start;gap:var(--space-1);min-width:0;padding:var(--space-3) var(--space-2) var(--space-3) var(--space-3);border-left:1px solid var(--rule-faint)}.slot:first-child{padding-left:0;border-left:0}.slot-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.slot-time{color:var(--text-secondary);font-weight:var(--weight-regular);font-variant-numeric:tabular-nums}.slot-value{font-size:1.3125rem;font-weight:var(--weight-semibold);line-height:var(--lh-tight);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.slot-value .unit{display:block;margin-top:2px;letter-spacing:0}.slot-meta{font-size:var(--text-xs);color:var(--text-secondary)}.slot-empty{color:var(--text-secondary);font-size:var(--text-sm)}.slot-log{display:inline-flex;align-items:center;gap:var(--space-1);width:fit-content;min-height:var(--tap-small);margin-left:-2px;color:var(--accent);font-weight:var(--weight-semibold);font-size:var(--text-sm);text-decoration:none}.slot-log .icon{width:1rem;height:1rem}.slot-log:hover span{text-decoration:underline;text-underline-offset:.18em}.register-note{padding:var(--space-2) 0;border-top:1px solid var(--rule-faint);font-size:var(--text-sm);color:var(--text-secondary)}.medicine-line{list-style:none;padding:0;display:grid;gap:var(--space-1);font-size:var(--text-sm)}.medicine-line li{display:flex;flex-wrap:wrap;gap:0 var(--space-2)}.medicine-name{font-weight:var(--weight-semibold)}.medicine-dose{color:var(--text-secondary)}.glance{display:grid}.glance>div{display:grid;gap:2px;padding:var(--space-2) 0;border-bottom:1px solid var(--rule-faint)}.glance>div:first-child{padding-top:0}.glance dt{font-size:var(--text-sm);color:var(--text-secondary)}.glance dd{margin:0;font-weight:var(--weight-medium)}.glance .muted{font-size:var(--text-sm);font-weight:var(--weight-regular)}.notice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:start;padding:var(--space-3);border:1px solid var(--rule-faint);border-radius:var(--radius-md);background:var(--surface-sunken)}.notice>.icon{color:var(--text-secondary);margin-top:1px}.notice-caution>.icon{color:var(--mark);width:1rem;height:1rem;margin-top:3px}.notice-body{display:grid;gap:var(--space-1);font-size:var(--text-sm)}.notice-title{font-weight:var(--weight-semibold);font-size:var(--text-base)}.stats-notice{grid-template-columns:auto minmax(0,1fr) auto;margin-top:var(--space-4)}.stats-notice>.icon-btn{margin:calc(-1 * var(--space-2)) calc(-1 * var(--space-2)) 0 0}.stats-list{display:grid;gap:var(--space-1);margin:0;padding-left:var(--space-4);font-size:var(--text-sm)}@media print{[data-stats-notice]{display:none}}.empty{display:grid;justify-items:start;gap:var(--space-2);padding:var(--space-4) 0}.empty-rule{width:3rem;border-top:2px dotted var(--text-tertiary)}.empty-title{font-weight:var(--weight-semibold);font-size:var(--text-md)}.empty-body{color:var(--text-secondary);max-width:var(--prose-max)}.empty-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-5);margin-top:var(--space-1)}.nv{display:inline-flex;align-items:center;vertical-align:middle}.nv-mark{display:inline-block;width:1.25em;height:.55em;border-bottom:2px dotted var(--text-tertiary);vertical-align:.1em}.bp{white-space:nowrap}.bp-sep{margin:0 1px;color:var(--text-secondary);font-weight:var(--weight-regular)}.tag{display:inline-flex;align-items:center;margin-left:var(--space-2);padding:0 6px;border:1px solid var(--rule-strong);border-radius:var(--radius-xs);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:1.5;color:var(--text-secondary);white-space:nowrap}.tag:first-child{margin-left:0}.tag-active{border-color:var(--accent);color:var(--accent)}.tag-muted{border-style:dotted}.flag{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);font-weight:var(--weight-semibold);white-space:nowrap}.icon-mark{color:var(--mark)}.status-chip{display:inline-flex;align-items:center;gap:6px;padding:2px var(--space-2) 2px 6px;border:1px solid var(--rule-faint);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-secondary);white-space:nowrap}.status-offline{border-color:var(--rule-strong);color:var(--text-primary)}.skeleton{display:grid;gap:var(--space-2);padding:var(--space-3) 0}.skeleton-line{display:block;height:.75rem;border-radius:var(--radius-xs);background:var(--surface-hover)}.skeleton-line.short{width:60%}@media(prefers-reduced-motion:no-preference){:root:not([data-motion=reduce]) .skeleton-line{animation:skeleton 1.1s ease-in-out infinite alternate}}@keyframes skeleton{to{opacity:.45}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--tap);padding:var(--space-2) var(--space-4);border:1px solid var(--rule-strong);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text-primary);font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:1.2;text-decoration:none;text-align:center;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.btn:hover{background:var(--surface-hover)}.btn:active{background:var(--surface-selected)}.btn .icon{width:1.125rem;height:1.125rem}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.btn-primary:hover,.btn-primary[aria-current=page]{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-primary:active{background:var(--accent-pressed);border-color:var(--accent-pressed)}.btn-danger{background:var(--danger);border-color:var(--danger);color:var(--text-on-accent)}.btn-danger:hover{background:var(--danger);filter:brightness(.94)}.btn-danger-outline{background:transparent;border-color:var(--danger);color:var(--danger)}.btn-danger-outline:hover{background:var(--danger-wash)}.btn-quiet{background:transparent;border-color:transparent}.btn-quiet:hover{background:var(--surface-hover)}.btn-small{min-height:var(--tap-small);padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}.btn-block{width:100%}.btn:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed}.icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:var(--tap-small);min-height:var(--tap-small);padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary)}.icon-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.chip{display:inline-flex;align-items:center;min-height:var(--tap-small);padding:0 var(--space-3);border:1px solid var(--rule-strong);border-radius:var(--radius-pill);background:transparent;color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap}.chip:hover{background:var(--surface-hover)}.ext .icon{margin-left:3px;vertical-align:-2px}.ext-unavailable{color:var(--text-secondary)}.stack,.log-form{display:grid;gap:var(--gap-stack)}.form-row{display:flex;flex-wrap:wrap;gap:var(--gap-stack);align-items:flex-start}.form-row>.field,.form-row>.segmented{flex:1 1 10rem}.form-row>.field.narrow{flex:0 1 8.5rem}.form-row>.field.grow{flex:2 1 10rem}.field{display:grid;gap:var(--space-1);min-width:0}.field-label{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-primary)}.optional{font-weight:var(--weight-regular);color:var(--text-secondary)}.field-hint{font-size:var(--text-sm);color:var(--text-secondary)}.field-error{display:flex;align-items:flex-start;gap:6px;color:var(--danger);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.field-error .icon{margin-top:2px}.field-inline{grid-template-columns:auto minmax(0,14rem);align-items:center;column-gap:var(--space-3);justify-content:start}.field-inline>.field-hint,.field-inline>.field-error{grid-column:1 / -1}input,select,textarea{width:100%;min-width:0;min-height:var(--tap);padding:0 var(--space-3);border:1px solid var(--rule-strong);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text-primary);font-size:var(--text-md);caret-color:var(--accent)}textarea{min-height:4.5rem;padding:var(--space-2) var(--space-3);resize:vertical;line-height:var(--lh-body)}input::placeholder,textarea::placeholder{color:var(--text-tertiary)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px;border-color:var(--focus-ring)}[aria-invalid=true]{border-color:var(--danger);box-shadow:inset 0 0 0 1px var(--danger)}input[type=checkbox],input[type=radio]{width:1.125rem;height:1.125rem;min-height:0;margin:0;padding:0;accent-color:var(--accent)}input[type=number]{-moz-appearance:textfield;appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=file]{padding:var(--space-2);min-height:var(--tap)}input[type=date],input[type=time]{max-width:14rem}.check{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:var(--space-2);min-height:var(--tap-small)}.check>label{cursor:pointer;padding:var(--space-1) 0}.check>.field-hint,.check>.field-error{grid-column:2}.check-row{display:flex;flex-wrap:wrap;gap:0 var(--space-5)}.feature-list{display:grid;gap:var(--space-3);list-style:none;padding:0;margin:0}.feature{align-items:start}.feature>input{margin-top:var(--space-2)}.feature>label{font-weight:var(--weight-semibold)}.feature-kept{display:block;color:var(--text-primary)}.offers:not(:empty){display:grid;gap:var(--space-3);max-width:44rem;margin-bottom:var(--gap-section)}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);margin-top:var(--space-1)}.form-note{flex:1 1 14rem;font-size:var(--text-sm);color:var(--text-secondary)}.form-status{font-size:var(--text-sm);color:var(--text-secondary)}.form-status:empty,.dialog-status:empty{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%)}.preview{font-size:var(--text-sm);color:var(--text-secondary);font-variant-numeric:tabular-nums}.preview:empty{display:none}.summary-note{min-width:0;margin-left:auto;padding-left:var(--space-3);overflow:hidden;color:var(--text-secondary);font-weight:var(--weight-regular);text-overflow:ellipsis;white-space:nowrap}.disclosure>summary>.summary-label{flex:none}.secret-input{display:flex;gap:var(--space-2)}.secret-input input{flex:1 1 auto;font-family:var(--font-mono);font-size:var(--text-md);letter-spacing:.02em}.secret-input .btn{flex:none}.secret-input .btn[aria-pressed=true]{background:var(--surface-selected)}.segmented{display:grid;gap:var(--space-1);min-width:0;margin:0;padding:0;border:0}.segmented-options{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:2px;width:100%;max-width:32rem;padding:2px;border:1px solid var(--rule-strong);border-radius:var(--radius-md);background:var(--surface-sunken)}.segment{position:relative;display:flex;min-width:0}.segment input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.segment span{display:flex;align-items:center;justify-content:center;width:100%;min-height:max(var(--tap-small),calc(var(--tap) - 6px));padding:var(--space-1) var(--space-2);border-radius:calc(var(--radius-md) - 2px);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-align:center;line-height:1.2;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.segment input:hover+span{color:var(--text-primary)}.segment input:checked+span{background:var(--surface-raised);color:var(--text-primary);box-shadow:0 0 0 1px var(--rule-strong),inset 0 -2px 0 var(--accent)}.segment input:focus-visible+span{outline:var(--focus-width) solid var(--focus-ring);outline-offset:1px}#log-kind .segmented-options{max-width:none}.log-panel[hidden]{display:none}.reading-grid{min-width:0;margin:0;padding:0;border:0;display:grid;gap:var(--space-2)}.reading-grid .grid{display:grid;grid-template-columns:1.25rem repeat(3,minmax(0,1fr));gap:var(--space-2);align-items:center}.grid-col{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-secondary)}.grid-col .unit{font-weight:var(--weight-regular)}.grid-row-label{color:var(--text-secondary);font-size:var(--text-sm);text-align:center;font-variant-numeric:tabular-nums}.reading-grid input{text-align:center;font-size:var(--text-lg);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;padding:0 var(--space-1)}.q-fields{display:grid;gap:var(--gap-stack)}.chart-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3)}.chart-toolbar .segmented{flex:1 1 14rem}.chart-toolbar .field-inline{grid-template-columns:auto minmax(0,9rem)}.chart-frame{position:relative;height:14rem;min-width:0}.chart-frame-short{height:10rem}.chart-note{font-size:var(--text-sm);color:var(--text-secondary)}.disclosure{border-top:1px solid var(--rule-faint)}.disclosure:last-child{border-bottom:1px solid var(--rule-faint)}.disclosure>summary{display:flex;align-items:center;gap:var(--space-2);min-height:var(--tap);cursor:pointer;font-size:var(--text-sm);font-weight:var(--weight-semibold);list-style:none}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:before{content:"";flex:none;width:.45rem;height:.45rem;margin:0 .2rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform var(--dur-fast) var(--ease-out)}.disclosure[open]>summary:before{transform:rotate(45deg)}.disclosure>summary:hover{color:var(--accent)}.disclosure-body{display:grid;gap:var(--gap-stack);padding:0 0 var(--space-4);min-width:0}.table-wrap{overflow-x:auto;max-width:100%}.register-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.register-table thead th{padding:var(--space-2) var(--space-3) var(--space-2) 0;border-top:2px solid var(--rule-ink);border-bottom:1px solid var(--rule-strong);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-align:left;white-space:nowrap}.register-table td,.register-table tbody th{padding:var(--pad-row) var(--space-3) var(--pad-row) 0;border-bottom:1px solid var(--rule-faint);text-align:left;vertical-align:middle;font-weight:var(--weight-regular)}.register-table tbody th[scope=row]{font-weight:var(--weight-medium);white-space:nowrap}.register-table :is(th,td):last-child{padding-right:0}.register-table .num-col{text-align:right;white-space:nowrap}.date-row th{padding-top:var(--space-4)!important;border-bottom:1px solid var(--rule-strong)!important;font-size:var(--text-sm);font-weight:var(--weight-semibold)!important;color:var(--text-primary)}.register-table tbody:first-of-type .date-row th{padding-top:var(--space-2)!important}.col-action{width:1%;text-align:right!important;padding-top:0!important;padding-bottom:0!important}.session-cell{white-space:nowrap}.row-marks{display:flex;flex-wrap:wrap;gap:2px var(--space-2);margin-top:2px}.row-marks:empty{display:none}.row-marks .tag{margin-left:0}.is-excluded .struck{color:var(--text-secondary);text-decoration:line-through;text-decoration-color:var(--text-secondary)}.timeline{list-style:none;padding:0}.timeline-row{display:grid;gap:2px var(--space-4);padding:var(--pad-row) 0;border-bottom:1px solid var(--rule-faint);font-size:var(--text-sm)}.timeline-row time{color:var(--text-secondary)}.timeline-what{display:flex;flex-wrap:wrap;gap:0 var(--space-2)}.detail-list{display:grid}.detail-list>div{display:grid;grid-template-columns:minmax(6.5rem,9rem) minmax(0,1fr);gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--rule-faint)}.detail-list dt{color:var(--text-secondary);font-size:var(--text-sm)}.detail-list dd{margin:0;overflow-wrap:anywhere}.detail-inline{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-6)}.detail-inline>div{display:flex;gap:var(--space-2);padding:0;border:0;grid-template-columns:none}.med-list{display:grid}.med{display:grid;gap:var(--space-2);padding:var(--space-4) 0;border-bottom:1px solid var(--rule-faint);min-width:0}.med:first-child{padding-top:var(--space-1)}.med-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.med-head .tag{margin-left:0}.med-name{font-size:var(--text-md)}.med-brands,.med-current{font-size:var(--text-sm);color:var(--text-secondary)}.med-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3)}.med-controls .field{flex:0 1 9rem}.med-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.med .disclosure{border-bottom:0}.med .disclosure-body{font-size:var(--text-sm);padding-bottom:var(--space-1)}.device-list{list-style:none;padding:0}.device{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--rule-faint)}.device-main{display:grid;gap:2px;min-width:0}.device-name{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);font-weight:var(--weight-semibold)}.device-name .tag{margin-left:0}.device-meta{font-size:var(--text-sm);color:var(--text-secondary)}.device-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.guidance-list,.link-list{list-style:none;padding:0;display:grid}.guidance-item{display:grid;gap:var(--space-1);padding:var(--space-3) 0;border-bottom:1px solid var(--rule-faint)}.guidance-title{font-weight:var(--weight-semibold)}.link-list li{padding:var(--space-2) 0;border-bottom:1px solid var(--rule-faint)}.steps{padding-left:1.25rem;display:grid;gap:var(--space-2)}.more-list{list-style:none;padding:0;border-top:2px solid var(--rule-ink)}.more-link{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:3.5rem;padding:var(--space-2) 0;border-bottom:1px solid var(--rule-faint);color:var(--text-primary);text-decoration:none}.more-text{display:grid;gap:1px}.more-label{font-weight:var(--weight-semibold)}.more-description{font-size:var(--text-sm);color:var(--text-secondary)}.more-link .icon{color:var(--text-secondary)}.more-link:hover .more-label{text-decoration:underline;text-underline-offset:.18em}.jump-list ul{display:flex;gap:var(--space-2);overflow-x:auto;list-style:none;padding:2px 2px var(--space-1);margin:0 -2px;scrollbar-width:none;scroll-padding-inline:var(--space-6)}.state-line{display:flex;align-items:flex-start;gap:var(--space-2)}.state-line .icon{color:var(--text-secondary);margin-top:1px}.state-line .tag{margin:0 var(--space-1) 0 0}.secrets{display:grid;gap:var(--space-3)}.secret-row dt{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.secret-row dd{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:var(--space-1) 0 0}.secret{display:block;flex:1 1 100%;padding:var(--space-2) var(--space-3);border:1px solid var(--rule-faint);border-radius:var(--radius-sm);background:var(--surface-sunken);font-size:var(--text-md);letter-spacing:.03em;line-height:1.6;user-select:all}.check-ack{padding:var(--space-2) var(--space-3);border:1px solid var(--rule-strong);border-radius:var(--radius-md)}.phrase{font-family:var(--font-mono);font-weight:var(--weight-bold);padding:0 4px;border-radius:var(--radius-xs);background:var(--surface-sunken)}.dialog{width:100%;max-width:100vw;max-height:100dvh;margin:auto 0 0;padding:0;border:0;background:transparent;color:var(--text-primary);overflow:visible}.dialog::backdrop{background:var(--backdrop)}.dialog-panel{display:grid;gap:var(--space-3);max-height:calc(100dvh - var(--space-6));overflow:auto;padding:var(--space-4) var(--gutter) calc(var(--space-4) + env(safe-area-inset-bottom));border:1px solid var(--dialog-edge);border-bottom:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--surface-raised);box-shadow:0 -2px 6px var(--shadow-color),0 -12px 32px var(--shadow-color)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.dialog-title{font-size:var(--text-lg);padding-top:var(--space-1)}.dialog-close{margin:-4px -8px 0 0}.dialog-body{display:grid;gap:var(--space-3);min-width:0}.dialog-text{display:grid;gap:var(--space-2)}.dialog-status{font-size:var(--text-sm);color:var(--text-secondary)}.dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-1)}.dialog-actions .btn{flex:1 1 100%}.dialog-panel[aria-busy=true] .dialog-actions{opacity:.7}@media(prefers-reduced-motion:no-preference){:root:not([data-motion=reduce]) .dialog[open] .dialog-panel{animation:sheet-in var(--dur-slow) var(--ease-out)}:root:not([data-motion=reduce]) .toast{animation:toast-in var(--dur-base) var(--ease-out)}}@keyframes sheet-in{0%{transform:translateY(1.5rem);opacity:0}}@keyframes toast-in{0%{transform:translateY(.5rem);opacity:0}}.toasts{position:fixed;z-index:var(--z-toast);left:var(--gutter);right:var(--gutter);bottom:calc(var(--bar-height) + env(safe-area-inset-bottom) + var(--space-2));display:grid;gap:var(--space-2);pointer-events:none}.toast-stack{display:grid;gap:var(--space-2)}.toast{display:flex;align-items:flex-start;gap:var(--space-2);width:100%;max-width:30rem;margin-inline:auto;padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-inverse);color:var(--text-inverse);box-shadow:0 2px 4px var(--shadow-color),0 12px 28px var(--shadow-color);font-size:var(--text-sm);font-weight:var(--weight-medium);pointer-events:auto}.toast p{flex:1;padding-top:1px}.toast .icon{width:1.125rem;height:1.125rem}.toast-error{background:var(--surface-raised);color:var(--text-primary);border:2px solid var(--danger)}.toast-error>.icon{color:var(--danger);margin-top:2px}.toast-close{margin:-6px -6px -6px 0;color:inherit}.gate{display:grid;place-items:center;min-height:100dvh;padding:var(--space-8) var(--gutter)}.gate-panel{display:grid;gap:var(--space-4);width:100%;max-width:27rem;padding-top:var(--space-4);border-top:2px solid var(--rule-ink)}.gate-brand{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-secondary)}.gate-lede{color:var(--text-secondary)}.gate-form{display:grid;gap:var(--gap-stack)}.setup,.setup-form{--tap: 2.75rem;--tap-small: 2.75rem}:root[data-targets=large] .setup,:root[data-targets=large] .setup-form{--tap: 3rem}.setup-panel{max-width:30rem}.setup-form{display:grid;gap:var(--space-6);max-width:36rem}fieldset.field{min-width:0;margin:0;padding:0;border:0}fieldset.field>legend{padding:0;margin-bottom:var(--space-1)}.error-summary{display:grid;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:2px solid var(--danger);border-radius:var(--radius-md);background:var(--danger-wash)}.error-summary:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:2px}.error-summary-title{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--weight-bold);color:var(--text-primary)}.error-summary-title .icon{color:var(--danger)}.error-summary ul{display:grid;gap:var(--space-1);margin:0;padding-left:var(--space-6)}.error-summary a{color:var(--text-primary);font-weight:var(--weight-semibold);text-underline-offset:3px}.region-list{display:grid;margin-top:var(--space-2);border:1px solid var(--rule-strong);border-radius:var(--radius-md);overflow:hidden}.region-option{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3);min-height:var(--tap);padding:var(--space-2) var(--space-3);border-top:1px solid var(--rule-faint);background:var(--surface-raised);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}.region-option:first-child{border-top:0}.region-option:hover{background:var(--surface-hover)}.region-option:has(input:checked){background:var(--surface-selected)}.region-option:has(input:focus-visible){outline:var(--focus-width) solid var(--focus-ring);outline-offset:-3px}.region-option input:focus-visible{outline:none}.region-mark{display:flex;width:1.875rem;height:1.25rem;overflow:hidden;border-radius:var(--radius-xs);box-shadow:0 0 0 1px var(--rule-faint)}.region-flag{display:block;width:100%;height:100%}.region-name{font-weight:var(--weight-medium);line-height:var(--lh-snug)}.region-option:has(input:checked) .region-name{font-weight:var(--weight-semibold)}.region-suggested{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-secondary);white-space:nowrap}.region-effect{display:grid;gap:var(--space-2);margin-top:calc(var(--space-6) * -1 + var(--space-3));padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-sunken)}.region-preview{font-variant-numeric:tabular-nums}.region-preview:empty{display:none}.dob-parts{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.dob-part{display:grid;gap:var(--space-1);min-width:0;flex:1 1 0}.dob-part.dob-month{flex-grow:2}.dob-part.dob-year{flex-grow:1.4}.dob-part>label{font-size:var(--text-sm);color:var(--text-secondary)}.dob-part input{font-variant-numeric:tabular-nums}.dob-age{font-size:var(--text-sm);color:var(--text-secondary);font-variant-numeric:tabular-nums}.dob-age:empty{display:none}.sex-options{margin-top:var(--space-1);max-width:none}.setup-form .segment span{min-height:var(--tap)}.setup-actions{display:grid;gap:var(--space-3)}.setup-alt{font-size:var(--text-sm);color:var(--text-secondary);text-align:center}.btn-link{display:inline-flex;align-items:center;min-height:var(--tap);padding:0 var(--space-1);border:0;background:none;color:var(--accent);font:inherit;font-weight:var(--weight-semibold);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.btn-link:hover{color:var(--accent-hover)}.demo-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--gutter);background:var(--surface-inverse);color:var(--text-inverse);font-weight:var(--weight-semibold)}.demo-banner .btn:not(.btn-primary){color:var(--text-primary)}@media(min-width:25rem){.slot-value{font-size:var(--text-num)}}@media(min-width:37.5rem){.dialog{max-width:min(34rem,calc(100vw - 2 * var(--gutter)));margin:auto}.dialog-panel{padding:var(--space-5);border-bottom:1px solid var(--dialog-edge);border-radius:var(--radius-lg);box-shadow:0 2px 6px var(--shadow-color),0 16px 36px var(--shadow-color)}.dialog-actions .btn{flex:0 0 auto}.glance>div{grid-template-columns:minmax(9rem,12rem) minmax(0,1fr);gap:var(--space-4)}.timeline-row{grid-template-columns:10rem minmax(0,1fr)}.chart-frame{height:16rem}}@media(max-width:37.49rem){.col-wide{display:none}.register-table td,.register-table tbody th,.register-table thead th{padding-right:var(--space-2)}}@media(min-width:56.25rem){.topbar{display:block;position:sticky;top:0;z-index:var(--z-bar);background:var(--surface-canvas);border-bottom:1px solid var(--rule-faint)}.topbar-inner{display:flex;align-items:center;gap:var(--space-6);max-width:var(--content-max);min-height:3.5rem;margin:0 auto;padding:0 var(--gutter)}.brand{color:var(--text-primary);font-weight:var(--weight-bold);font-size:var(--text-md);letter-spacing:-.01em;text-decoration:none;white-space:nowrap}.topnav-list{display:flex;gap:var(--space-1);list-style:none;padding:0}.topnav-link{position:relative;display:flex;align-items:center;min-height:3.5rem;padding:0 var(--space-3);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-decoration:none}.topnav-link:hover,.topnav-link[aria-current=page]{color:var(--text-primary)}.topnav-link[aria-current=page]:after{content:"";position:absolute;left:var(--space-3);right:var(--space-3);bottom:-1px;height:3px;background:var(--accent)}.topbar-end{display:flex;align-items:center;gap:var(--space-3);margin-left:auto}.topbar-end .status-slot:empty{display:none}.tabbar,.page-actions .status-slot{display:none}.app-footer{padding-bottom:var(--space-8)}.toasts{left:auto;right:var(--space-6);bottom:var(--space-6);width:24rem}.home-grid{grid-template-columns:minmax(19rem,23rem) minmax(0,1fr);align-items:start;column-gap:var(--space-10)}.home-secondary>.section:first-child>.section-head{border-top:2px solid var(--rule-ink)}.chart-frame{height:17rem}.chart-frame-short{height:11rem}.prose-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-section) var(--space-10);align-items:start}.med-list{grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));column-gap:var(--space-8)}.med:first-child{padding-top:var(--space-4)}}.prose-columns{display:grid;gap:var(--gap-section)}.prose-columns .section p,.prose-columns .steps{max-width:var(--prose-max)}@media(max-height:43.75rem)and (min-width:56.25rem){.chart-frame{height:14rem}.page-header{padding-top:var(--space-3)}}@media print{body{background:#fff}.topbar,.tabbar,.app-footer,.skip-link,.toasts,.no-print,.page-actions,.jump-list,.chart-toolbar,.chart-options,.col-action,dialog{display:none!important}.main{padding:0;max-width:none}.col-wide{display:table-cell!important}.register-table{font-size:9.5pt}.register-table tr{break-inside:avoid}.section{break-inside:avoid-page}a{color:inherit;text-decoration:none}}@media(forced-colors:active){.btn,input,select,textarea,.segmented-options,.chip,.tag,.status-chip,.notice,.toast,.dialog-panel,.check-ack{border:1px solid CanvasText}.segment input:checked+span{forced-color-adjust:none;background:Highlight;color:HighlightText}.tab[aria-current=page]:before,.topnav-link[aria-current=page]:after{background:Highlight}.tab-log .icon{forced-color-adjust:none;background:ButtonText;color:ButtonFace}.nv-mark,.empty-rule{border-color:CanvasText}:focus-visible{outline-color:Highlight}.is-excluded td{text-decoration-color:CanvasText}}
