:root{--background:248 248 246;--foreground:31 31 28;--muted-token:240 240 236;--muted-foreground:107 107 99;--panel:255 255 252;--panel-2:244 244 240;--border:222 222 216;--border-strong:202 202 193;--accent-token:15 118 110;--accent-foreground:255 255 255;--danger:190 24 24;--success:21 128 61;--warning-token:161 98 7;--ring:20 184 166;--bg:rgb(var(--background));--surface:rgb(var(--panel));--surface-muted:rgb(var(--muted-token));--surface-raised:rgb(251 251 247);--print-surface:#fffdf8;--ink:rgb(var(--foreground));--muted:rgb(var(--muted-foreground));--line:rgb(var(--border));--line-strong:rgb(var(--border-strong));--accent:rgb(var(--accent-token));--accent-soft:rgb(224 242 238);--accent-contrast:rgb(var(--accent-foreground));--warning:rgb(var(--warning-token));--radius-sm:6px;--radius-md:8px;--control-height:32px;color-scheme:light}.dark,.desktop-shell--dark,:root.dark .desktop-shell,:root[data-theme=dark] .desktop-shell{--background:24 24 22;--foreground:237 237 230;--muted-token:39 39 35;--muted-foreground:164 164 154;--panel:31 31 28;--panel-2:42 42 38;--border:58 58 52;--border-strong:79 79 70;--accent-token:94 234 212;--accent-foreground:15 23 20;--danger:248 113 113;--success:74 222 128;--warning-token:251 191 36;--ring:94 234 212;--bg:rgb(var(--background));--surface:rgb(var(--panel));--surface-muted:rgb(var(--muted-token));--surface-raised:rgb(22 22 20);--print-surface:#18191d;--ink:rgb(var(--foreground));--muted:rgb(var(--muted-foreground));--line:rgb(var(--border));--line-strong:rgb(var(--border-strong));--accent:rgb(var(--accent-token));--accent-soft:rgb(29 43 43);--accent-contrast:rgb(var(--accent-foreground));--warning:rgb(var(--warning-token));color-scheme:dark}*{box-sizing:border-box}body,html{min-height:100%}html{background:var(--bg);scrollbar-gutter:auto;scrollbar-color:color-mix(in srgb,var(--muted),transparent 45%) var(--bg)}html::-webkit-scrollbar{width:12px;height:12px}html::-webkit-scrollbar-track{background:var(--bg)}html::-webkit-scrollbar-thumb{border:3px solid var(--bg);border-radius:999px;background:color-mix(in srgb,var(--muted),transparent 45%)}html::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--muted),transparent 25%)}html[data-login-gate=true],html[data-login-gate=true] body{width:100vw;min-height:100vh;overflow:hidden}body{margin:0;color:var(--ink);font-family:var(--font-body),sans-serif}body,body[data-scroll-locked]{background:var(--bg)}a{color:inherit;text-decoration:none}::selection{background:color-mix(in srgb,var(--accent),transparent 78%)}button,input,select,textarea{font:inherit;-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:0 0 0 2px var(--surface),0 0 0 4px rgb(var(--ring)/.75)}.license-gate{--electron-titlebar-height:34px;--electron-titlebar-bg:#eef0f2;--license-spinner-track:rgba(23,32,29,0.12);--license-spinner-active:#0f766e;display:grid;min-height:100vh;place-items:center;padding:calc(var(--electron-titlebar-height) + 28px) 28px 28px;background:radial-gradient(circle at 18% 16%,rgba(15,118,110,.08),transparent 28%),linear-gradient(180deg,#f7f8f5,#ebeee8);color:#17201d}.license-gate--dark{--electron-titlebar-bg:#0d0e10;--license-spinner-track:rgba(255,255,255,0.16);--license-spinner-active:#5eead4;background:radial-gradient(circle at 18% 16%,rgba(94,234,212,.12),transparent 30%),linear-gradient(180deg,#111513,#060807);color:#f4f7f5;color-scheme:dark}.electron-host-frame{--electron-titlebar-height:34px;--electron-titlebar-bg:#eef0f2;color-scheme:light}.dark .electron-host-frame{--electron-titlebar-bg:#0d0e10;color-scheme:dark}.electron-host-frame .electron-drag-strip{left:0;right:138px;z-index:75;-webkit-app-region:drag}.electron-host-frame .electron-app-menu{left:0;z-index:80;background:var(--electron-titlebar-bg)}.license-gate a,.license-gate button,.license-gate input,.license-gate__panel{-webkit-app-region:no-drag}.dark .electron-host-frame .electron-app-menu button{color:#d9dde3}.dark .electron-host-frame .electron-app-menu button:focus-visible,.dark .electron-host-frame .electron-app-menu button:hover{color:#f2f3f5;background:rgba(255,255,255,.08)}.license-gate__panel{display:grid;gap:22px;width:min(460px,100%);padding:30px;border:1px solid rgba(23,32,29,.1);border-radius:10px;background:rgba(255,255,252,.86);box-shadow:0 28px 90px rgba(44,52,46,.16);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.license-gate--checking{font-family:Segoe UI,sans-serif}.license-gate__splash{display:grid;justify-items:center;gap:14px;width:min(420px,100%);text-align:center}.license-gate__splash h1{margin:0;font-size:15px;font-weight:650;line-height:1.2}.license-gate__spinner{width:38px;height:38px;border:3px solid var(--license-spinner-track);border-top-color:var(--license-spinner-active);border-radius:999px;animation:spin .8s linear infinite}.license-gate--dark .license-gate__panel{border-color:rgba(255,255,255,.12);background:rgba(22,25,23,.88);box-shadow:0 28px 90px rgba(0,0,0,.34)}.license-gate__brand{display:flex;gap:12px;align-items:center}.license-gate__brand img{width:38px;height:38px}.license-gate__brand div,.license-gate__copy,.license-gate__form,.license-gate__form label{display:grid}.license-gate__brand span{color:#60706b;font-size:.72rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.license-gate--dark .license-gate__brand span{color:rgba(244,247,245,.62)}.license-gate__brand strong{font-size:1.04rem;line-height:1.1}.license-gate__copy{gap:9px}.license-gate__icon{display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(15,118,110,.22);border-radius:999px;background:rgba(15,118,110,.1);color:#0f766e}.license-gate--dark .license-gate__icon{border-color:rgba(94,234,212,.22);background:rgba(94,234,212,.1);color:#5eead4}.license-gate__form button svg,.license-gate__icon svg,.license-gate__status svg{width:18px;height:18px}.license-gate[aria-busy=true] .license-gate__icon svg,.license-gate[aria-busy=true] .license-gate__status svg,.license-gate__form button:disabled svg{animation:spin .9s linear infinite}.license-gate__copy h1{margin:0;font-size:clamp(2.25rem,6vw,4.6rem);line-height:.92;letter-spacing:0}.license-gate__copy p{margin:0;color:#60706b;font-size:1rem;line-height:1.45}.license-gate--dark .license-gate__copy p{color:rgba(244,247,245,.68)}.license-gate__form{gap:13px}.license-gate__form label{gap:7px}.license-gate__form label span{color:#60706b;font-size:.76rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.license-gate--dark .license-gate__form label span{color:rgba(244,247,245,.66)}.license-gate__form input{width:100%;min-height:42px;padding:9px 11px;border:1px solid rgba(23,32,29,.16);border-radius:8px;background:#fffef9;color:#17201d}.license-gate--dark .license-gate__form input{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#f4f7f5}.license-gate__form button{display:inline-flex;justify-content:center;gap:8px;align-items:center;min-height:42px;margin-top:3px;border:0;border-radius:8px;background:#0f766e;color:#fff;font-weight:850}.license-gate__form button:disabled{cursor:default;opacity:.62}.license-gate__link{justify-self:center;min-height:28px;padding:0;border:0;background:transparent;color:#0f766e;font-size:.84rem;font-weight:800}.license-gate__link:hover{text-decoration:underline}.license-gate--dark .license-gate__link{color:#5eead4}.license-gate__status{display:inline-flex;gap:9px;align-items:center;color:#60706b;font-weight:750}.license-gate--dark .license-gate__status{color:rgba(244,247,245,.7)}.license-gate__error,.license-gate__note{padding:10px 11px;border-radius:8px;font-size:.86rem;line-height:1.4}.license-gate__error{border:1px solid rgba(190,24,24,.22);background:rgba(190,24,24,.08);color:#991b1b}.license-gate--dark .license-gate__error{color:#fecaca}.license-gate__note{border:1px solid rgba(15,118,110,.16);background:rgba(15,118,110,.08);color:#48605a}.license-gate--dark .license-gate__note{color:rgba(244,247,245,.7)}@keyframes spin{to{transform:rotate(1turn)}}.desktop-shell{--rail-width:260px;--shell-pad:18px;padding:var(--shell-pad)}.desktop-shell.is-nav-collapsed{--rail-width:84px}.desktop-shell__frame{min-height:calc(100vh - 36px);display:block;padding-left:var(--rail-width);border:1px solid var(--line);border-radius:16px;overflow:visible;background:var(--surface);transition:padding-left .18s ease}.desktop-rail{position:fixed;inset:var(--shell-pad) auto var(--shell-pad) var(--shell-pad);z-index:20;display:grid;grid-template-rows:auto 1fr;align-content:start;gap:22px;width:var(--rail-width);overflow-y:auto;padding:20px 16px;border-radius:16px 0 0 16px;background:var(--surface-raised);transition:width .18s ease,padding .18s ease}.desktop-rail__brand{gap:10px;align-items:flex-start;justify-content:space-between;padding:2px 4px 14px;border-bottom:1px solid var(--line)}.desktop-rail__brand-copy{display:grid;gap:4px}.desktop-rail__brand h1{margin:0;font-family:var(--font-display),sans-serif;font-size:1.2rem;line-height:1.1}.desktop-rail__collapse{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--surface);box-shadow:0 1px 2px rgba(23,32,29,.04)}.desktop-rail__collapse:hover{border-color:var(--line-strong);color:var(--accent);background:var(--accent-soft)}.desktop-rail__collapse svg{width:16px;height:16px}.desktop-nav__item{display:grid;grid-template-columns:24px 1fr;min-width:108px;padding:9px 12px;border-radius:10px}.desktop-nav__icon{width:21px;height:21px}.desktop-nav__copy{display:grid;gap:2px}.desktop-nav__item strong{color:var(--ink);font-size:.95rem}.desktop-nav__item span{font-size:.78rem}.desktop-nav__item.is-active,.desktop-nav__item:hover{border-color:var(--line-strong);background:var(--accent-soft);color:var(--accent)}.desktop-shell.is-nav-collapsed .desktop-rail{padding:18px 12px}.desktop-shell.is-nav-collapsed .desktop-rail__brand{justify-content:center;padding:0 0 14px}.desktop-shell.is-nav-collapsed .desktop-rail__brand-copy{display:none}.desktop-shell.is-nav-collapsed .desktop-nav__item{grid-template-columns:1fr;justify-items:center;min-width:0;padding:11px 10px}.desktop-shell.is-nav-collapsed .desktop-nav__copy{display:none}.desktop-rail__utilities{align-content:end;padding-top:10px}.theme-toggle{justify-self:start;position:relative;display:inline-flex;align-items:center;padding:3px;border:1px solid var(--line-strong);border-radius:999px;color:var(--muted);background:var(--surface);box-shadow:inset 0 1px 2px rgba(0,0,0,.08);transition:background .16s ease,border-color .16s ease,color .16s ease}.theme-toggle:hover{border-color:var(--accent);color:var(--accent)}.theme-toggle__thumb{display:grid;place-items:center;width:22px;height:22px;border-radius:999px;background:var(--surface-raised);box-shadow:0 1px 4px rgba(0,0,0,.18);transform:translateX(0);transition:transform .18s ease,background .16s ease,color .16s ease}.theme-toggle__thumb svg{width:14px;height:14px}.theme-toggle[data-state=checked]{background:var(--surface-muted);border-color:var(--line-strong)}.theme-toggle[data-state=checked] .theme-toggle__thumb{color:var(--ink);background:var(--surface-raised);transform:translateX(24px)}.desktop-main{min-height:calc(100vh - 38px);border-left:1px solid var(--line);border-radius:0 var(--radius-md) var(--radius-md) 0}.workspace-header{padding:14px 18px;border-bottom:1px solid var(--line);background:var(--surface)}.workspace-header__copy{display:grid;gap:6px}.workspace-title{margin:0;font-size:1rem;line-height:1.15;font-weight:600;letter-spacing:0}.workspace-copy{margin:0;max-width:70ch;color:var(--muted);font-size:.83rem;line-height:1.45}.workspace-header__aside{display:grid;justify-items:end;gap:10px;min-width:250px}.workspace-header__metrics{width:100%}.workspace-body{padding:14px 18px 18px}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.flow-column,.hardware-layout,.list,.review-list,.stack,.test-group-list,.workspace-stack{display:grid;gap:14px}.panel,.workspace-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:14px}.workspace-panel--accent{background:var(--surface-muted)}.panel h2,.panel h3,.panel h4,.workspace-panel h2,.workspace-panel h3{margin:0;font-size:.95rem;line-height:1.2;font-weight:600;letter-spacing:0}.workspace-panel__header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.eyebrow,.metric-label{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}.section-copy,.subtle{color:var(--muted);line-height:1.5}.status-cluster{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.status-card{display:grid;gap:4px;min-width:120px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-muted)}.status-card strong{font-size:.92rem}.status-card--link:hover{border-color:var(--accent)}.preset-row,.surface-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.card-link,.patient-switcher__item,.preset-tile,.surface-tile{display:grid;gap:6px;padding:11px;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface);text-align:left}.card-link:hover,.patient-switcher__item:hover,.preset-tile:hover,.surface-tile:hover{border-color:var(--accent)}.patient-switcher__item span,.preset-tile span,.surface-tile span{color:var(--muted);line-height:1.4}.patient-history-row,.review-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:11px 0;border-top:1px solid var(--line)}.patient-history-row:first-child,.review-row:first-child{border-top:0;padding-top:0}.patient-history-row,.review-row div{display:grid;gap:3px}.patient-history-row span,.review-row span,.review-row__tests{color:var(--muted);line-height:1.4}.review-row__tests{text-align:right;max-width:48%}.compare-workspace{display:grid;gap:18px}.compare-export-header{align-items:center}.compare-controls{align-items:end;padding-bottom:16px}.compare-controls,.compare-session-heading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border-bottom:1px solid var(--line)}.compare-session-heading{position:sticky;top:18px;z-index:8;padding:10px 0;background:var(--surface)}.compare-session-heading span{display:block;min-width:0;padding:8px 10px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);background:var(--surface-muted);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.compare-rows{display:grid;gap:16px}.compare-test-row{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-muted)}.compare-test-row__title{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.compare-test-row__title h3{margin:0}.compare-plot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.compare-plot-slot{display:grid;gap:10px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.compare-plot-slot__header{display:grid;gap:3px;min-width:0}.compare-plot-slot__header span,.compare-plot-slot__header strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compare-plot-slot__header span{color:var(--muted);font-size:.84rem}.compare-empty-plot{display:grid;place-items:center;min-height:160px;border:1px dashed var(--line-strong);border-radius:var(--radius-md);color:var(--muted);background:var(--surface-raised)}.flow-step{display:grid;gap:4px;padding:11px 12px;border-left:3px solid var(--line-strong);background:var(--surface-muted)}.flow-step.is-active{border-left-color:var(--accent)}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.metric-grid--supporting{opacity:.82}.metric{display:grid;gap:6px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-muted)}.metric-value{font-family:var(--font-display),sans-serif;font-size:1rem}.patient-grid{display:grid;gap:12px}.patient-hub-header__actions,.user-actions,.user-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.patient-hub-header__actions{justify-content:flex-end}.patient-picker{display:grid;gap:14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted)}.user-toolbar .shell-input{flex:1 1 260px}.user-toggle{display:inline-flex;align-items:center;gap:8px;color:var(--muted)}.user-form,.user-list{display:grid;gap:10px}.user-row{display:flex;justify-content:space-between;gap:14px;align-items:center;width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);text-align:left}.user-form label,.user-row>span{display:grid;gap:4px}.birthday-picker{display:grid;grid-template-columns:minmax(160px,1.3fr) minmax(82px,.7fr) minmax(104px,.9fr);gap:8px}.user-form label span,.user-row span span{color:var(--muted)}.user-row.is-selected,.user-row:hover{border-color:var(--accent);background:var(--accent-soft)}.user-form{background:var(--surface-muted)}.patient-panel,.user-form{padding:14px;border:1px solid var(--line);border-radius:12px}.patient-panel{display:grid;gap:12px;background:var(--surface)}.patient-panel--active{padding:18px}.hardware-row,.patient-panel__actions,.patient-panel__header,.patient-panel__meta{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.patient-panel__header h3{margin:0}.patient-panel__header p{margin:3px 0 0;color:var(--muted)}.patient-badge{padding:7px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-weight:600;white-space:nowrap}.patient-panel__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.patient-panel__meta div{display:grid;gap:4px}.hardware-row--stream-diagnostics{display:grid;justify-content:start}.hardware-row--stream-diagnostics>div:first-child{display:grid;gap:4px}.patient-panel__history,.patient-switcher{display:grid;gap:8px}.patient-history-row__meta{display:grid;gap:3px;min-width:190px}.history-layout{display:grid;grid-template-columns:minmax(180px,.34fr) minmax(0,1fr);gap:18px;align-items:start}.history-date-group,.history-date-group__list,.history-patients,.history-sessions{display:grid;gap:10px}.history-patients{position:sticky;top:18px}.history-patient{display:grid;gap:4px;width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:var(--surface);text-align:left}.history-patient span{color:var(--muted);font-size:.84rem}.history-patient.is-active,.history-patient:hover{border-color:var(--accent);background:var(--accent-soft)}.history-date-group{padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.history-date-group__heading{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:0 2px 4px}.history-date-group__heading strong{font-family:var(--font-display),sans-serif;font-size:1rem}.history-date-group__heading span{color:var(--muted);font-size:.84rem}.history-session-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px;align-items:center}.history-session{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 1px 2px rgba(23,32,29,.03)}.history-session:hover{border-color:var(--accent)}.desktop-shell--dark .history-session,:root.dark .desktop-shell .history-session,:root[data-theme=dark] .desktop-shell .history-session{background:#1b1d22;border-color:#3a3f49}.desktop-shell--dark .history-session:hover,:root.dark .desktop-shell .history-session:hover,:root[data-theme=dark] .desktop-shell .history-session:hover{border-color:#62d6bd}.history-session__delete{display:inline-grid;place-items:center;width:34px;height:34px;justify-self:center;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--surface);box-shadow:0 1px 2px rgba(23,32,29,.03)}.history-session__delete:hover{border-color:rgba(220,38,38,.45);color:#dc2626;background:rgba(220,38,38,.08)}.history-session__delete:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.desktop-shell--dark .history-session__delete,:root.dark .desktop-shell .history-session__delete,:root[data-theme=dark] .desktop-shell .history-session__delete{background:#1b1d22;border-color:#3a3f49;color:#d6dbe3}.desktop-shell--dark .history-session__delete:hover,:root.dark .desktop-shell .history-session__delete:hover,:root[data-theme=dark] .desktop-shell .history-session__delete:hover{border-color:rgba(248,113,113,.62);color:#fca5a5;background:rgba(248,113,113,.12)}.confirm-dialog__error{margin:0;padding:10px 12px;border:1px solid rgba(220,38,38,.22);border-radius:8px;color:#b91c1c;background:rgba(220,38,38,.08);font-size:.88rem;line-height:1.35}.desktop-shell--dark .confirm-dialog__error,:root.dark .desktop-shell .confirm-dialog__error,:root[data-theme=dark] .desktop-shell .confirm-dialog__error{border-color:rgba(248,113,113,.32);color:#fecaca;background:rgba(248,113,113,.13)}.history-session__main{display:grid;gap:9px;min-width:0}.history-session__title{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.desktop-shell--dark .history-session__title strong,:root.dark .desktop-shell .history-session__title strong,:root[data-theme=dark] .desktop-shell .history-session__title strong{color:#ffffff}.history-session__count,.history-session__title span{color:var(--muted);font-size:.86rem}.desktop-shell--dark .history-session__count,.desktop-shell--dark .history-session__title span,:root.dark .desktop-shell .history-session__count,:root.dark .desktop-shell .history-session__title span,:root[data-theme=dark] .desktop-shell .history-session__count,:root[data-theme=dark] .desktop-shell .history-session__title span{color:#d6dbe3}.history-session__title .history-session__source-badge{display:inline-flex;align-items:center;align-self:center;min-height:22px;padding:2px 8px;border:1px solid var(--line-strong);border-radius:999px;color:var(--muted);background:transparent;font-size:.72rem;font-weight:800;line-height:1;text-transform:uppercase}.desktop-shell--dark .history-session__title .history-session__source-badge,:root.dark .desktop-shell .history-session__title .history-session__source-badge,:root[data-theme=dark] .desktop-shell .history-session__title .history-session__source-badge{border-color:#5b6370;color:#edf0f4}.history-session__count{padding:5px 9px;border-radius:999px;background:var(--surface-muted);white-space:nowrap}.desktop-shell--dark .history-session__count,:root.dark .desktop-shell .history-session__count,:root[data-theme=dark] .desktop-shell .history-session__count{background:#262a31}.history-test-badges{display:flex;flex-wrap:wrap;gap:6px}.history-test-badge{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;color:var(--ink);background:var(--surface-raised);font-size:.78rem;line-height:1.2}.desktop-shell--dark .history-test-badge,:root.dark .desktop-shell .history-test-badge,:root[data-theme=dark] .desktop-shell .history-test-badge{border-color:#454b55;color:#edf0f4;background:#242831}.history-test-badge.is-muted{color:var(--muted);background:var(--surface-muted)}.desktop-shell--dark .history-test-badge.is-muted,:root.dark .desktop-shell .history-test-badge.is-muted,:root[data-theme=dark] .desktop-shell .history-test-badge.is-muted{color:#c8ced7;background:#20242b}.hardware-actions,.patient-panel__actions,.session-flags{display:flex;gap:8px;flex-wrap:wrap}.hardware-diagnostic-launchers{display:grid;gap:8px;width:min(320px,100%);flex:0 0 min(320px,100%)}.hardware-diagnostic-launchers .telemetry-button{justify-content:center;width:100%}.text-link{width:fit-content;border:0;padding:0;color:var(--accent);background:transparent;font-weight:600}.patient-switcher{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.patient-switcher__item.is-active{border-color:var(--accent);background:var(--accent-soft)}.workspace-kicker{display:grid;gap:2px;min-width:78px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);text-align:right}.workspace-kicker strong{font-family:var(--font-display),sans-serif;font-size:1.35rem}.workspace-kicker span{color:var(--muted)}.summary-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.summary-chip{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.sequence-preview{display:grid;gap:8px}.sequence-preview__list{display:flex;flex-wrap:wrap;gap:6px}.pill,.sequence-pill,.session-flag{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;border:1px solid var(--line);background:var(--surface)}.session-flag{color:var(--muted)}.session-flag.is-active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.session-action,.telemetry-button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-height);padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:.82rem}.session-action:hover,.telemetry-button:hover{border-color:var(--accent)}.session-action.is-disabled,.session-action:disabled,.telemetry-button:disabled{cursor:default;opacity:.6;pointer-events:none}.session-action--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.session-action--icon{gap:7px}.session-action--icon svg{width:16px;height:16px}.session-action--icon:disabled svg{opacity:.72}.feature-access-admin{display:grid;gap:16px}.feature-access-admin__toolbar{align-items:center;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(260px,380px) auto}.feature-access-admin__selector,.feature-access-card__catalog label,.feature-access-card__form label{color:var(--muted);display:grid;font-size:.82rem;font-weight:650;gap:6px}.feature-access-admin__selector select,.feature-access-card__catalog select,.feature-access-card__form input,.feature-access-card__form select,.feature-access-card__form textarea{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);font:inherit;min-height:40px;padding:9px 10px}.feature-access-admin__grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.feature-access-card{display:grid;gap:14px}.feature-access-card__actions,.feature-access-card__header{align-items:center;display:flex;gap:12px;justify-content:space-between}.feature-access-card__badges{align-items:flex-end;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.feature-access-card__meta{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.feature-access-card__meta div{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px}.feature-access-card__meta dt{color:var(--muted);font-size:.72rem;font-weight:750;text-transform:uppercase}.feature-access-card__meta dd{font-size:.86rem;margin:4px 0 0;overflow-wrap:anywhere}.feature-access-card__form{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.feature-access-card__catalog{align-items:end;background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius-sm);display:grid;gap:12px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) auto;padding:12px}.feature-access-card__notes{grid-column:1/-1}.feature-access-card__form textarea{min-height:84px;resize:vertical}.feature-access-badge{border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.76rem;font-weight:800;padding:5px 9px;text-transform:uppercase;white-space:nowrap}.feature-access-badge--active{background:rgba(53,151,103,.12);border-color:rgba(53,151,103,.32);color:#2f8b61}.feature-access-badge--revoked{background:rgba(173,66,66,.12);border-color:rgba(173,66,66,.32);color:#ad4242}.feature-access-badge--default{background:rgba(56,113,197,.12);border-color:rgba(56,113,197,.32);color:#336cbd}.feature-access-badge--gated{background:rgba(143,98,45,.13);border-color:rgba(143,98,45,.32);color:#8f622d}.feature-access-badge--disabled,.feature-access-badge--hidden{background:rgba(94,105,122,.12);border-color:rgba(94,105,122,.3);color:#5e697a}.admin-access-state{align-items:center;display:grid;gap:10px;justify-items:start;max-width:680px}.admin-access-state svg{color:var(--accent);height:32px;width:32px}.subtle.success{color:#2f8b61}.test-group{display:grid;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.test-group:first-child{padding-top:0;border-top:0}.test-group__heading{display:grid;gap:3px}.test-group__heading span{color:var(--muted)}.test-chip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.test-chip{display:grid;gap:3px;min-height:66px;padding:10px;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface);text-align:left}.test-chip span{color:var(--muted);font-size:.86rem;line-height:1.35}.test-chip.is-active,.test-chip:hover{border-color:var(--accent)}.test-chip.is-active{background:var(--accent-soft)}.telemetry-box{padding:12px;border-radius:var(--radius-md);background:var(--surface-muted);border:1px solid var(--line)}.telemetry-box,.telemetry-box__interactive{display:grid;gap:12px}.session-report-print{position:fixed;left:-12000px;top:0;z-index:-1;display:grid;gap:8px;width:1120px;visibility:hidden;pointer-events:none}.empty-state-panel{display:grid;gap:12px;max-width:620px;padding:18px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-muted)}.empty-state-panel h3,.empty-state-panel p{margin:0}.empty-state-panel .session-action{justify-self:start}.workflow-loading-panel{display:inline-flex;align-items:center;gap:10px;width:fit-content;min-height:42px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--muted);background:var(--surface);font-size:.84rem;font-weight:600}.workflow-loading-panel.is-warning{border-color:color-mix(in srgb,#c47a1c,var(--line) 45%);color:color-mix(in srgb,#8a4f08,var(--text) 18%);background:color-mix(in srgb,#fff7e6,var(--surface) 36%)}.workflow-loading-panel__detail{color:var(--muted);font-weight:500}.workflow-loading-panel__dismiss{border:1px solid color-mix(in srgb,currentColor,transparent 72%);border-radius:999px;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:.78rem;line-height:1;padding:6px 9px}.workflow-loading-panel__dismiss:hover{background:color-mix(in srgb,currentColor,transparent 92%)}.workflow-loading-panel__spinner{width:14px;height:14px;border:2px solid color-mix(in srgb,var(--accent),transparent 72%);border-top-color:var(--accent);border-radius:999px;animation:workflow-spinner .8s linear infinite}.assessment-builder{display:grid;gap:20px;align-items:start}.assessment-builder,.assessment-builder--sequence{grid-template-columns:minmax(320px,.9fr) minmax(520px,1.35fr) minmax(320px,.85fr)}.assessment-builder__summary,.assessment-category-browser,.assessment-picker,.assessment-presets,.assessment-sequence-selection,.assessment-test-list,.sequence-queue{display:grid;gap:14px}.assessment-builder__summary{position:sticky;top:18px}.assessment-category-browser{grid-template-columns:210px minmax(0,1fr);align-items:start}.assessment-category-tabs{display:grid;gap:6px;position:sticky;top:18px}.assessment-category-tab{min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:var(--surface);text-align:left;font-weight:700}.assessment-category-tab.is-active,.assessment-category-tab:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.assessment-test-list{min-width:0}.assessment-test-row{position:relative;display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:18px;align-items:center;width:100%;min-height:88px;padding:12px 16px 12px 12px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:var(--surface);overflow:hidden;text-align:left}.assessment-test-row.is-active,.assessment-test-row:hover{border-color:var(--accent)}.assessment-test-row.is-active{background:var(--accent-soft)}.assessment-test-row.is-disabled,.assessment-test-row:disabled{cursor:default;opacity:.58}.assessment-test-row__copy{display:grid;gap:4px;min-width:0}.assessment-test-row__title{display:flex;align-items:center;gap:8px;min-width:0}.assessment-test-row small,.assessment-test-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis}.assessment-test-row small{color:var(--muted);line-height:1.35}.assessment-test-row__badge{position:absolute;top:10px;left:-28px;z-index:1;width:96px;padding:4px 0;color:white;background:rgb(var(--danger));box-shadow:0 5px 14px rgb(var(--danger)/.24);font-size:.62rem;font-weight:850;line-height:1;letter-spacing:0;pointer-events:none;text-align:center;text-transform:uppercase;transform:rotate(-38deg)}.assessment-test-row em{min-width:92px;color:var(--accent);font-style:normal;font-weight:800;text-align:right}.assessment-test-glyph{display:block;width:78px;height:48px;color:var(--accent);border:1px solid color-mix(in srgb,var(--line),var(--accent) 16%);border-radius:8px;background:color-mix(in srgb,var(--surface-muted),var(--surface) 46%);overflow:visible}.assessment-test-glyph .glyph-arrow,.assessment-test-glyph .glyph-path{fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.assessment-test-glyph .glyph-path--soft{opacity:.38;stroke-width:3}.assessment-test-glyph .glyph-path--dash{stroke-dasharray:7 7}.assessment-test-glyph .glyph-dot,.assessment-test-glyph .glyph-target{fill:color-mix(in srgb,var(--accent),white 16%);stroke:var(--surface);stroke-width:2}.assessment-test-glyph .glyph-target--end{fill:#2b6cb0}.assessment-test-glyph .glyph-dot--green,.assessment-test-glyph .glyph-target--green{fill:#22a95f}.assessment-test-glyph .glyph-dot--blue{fill:#2b6cb0}.assessment-test-glyph .glyph-dot--red{fill:#c83f31}.assessment-test-glyph .glyph-dot--white{fill:#fff}.assessment-test-glyph .glyph-page{fill:color-mix(in srgb,var(--surface),white 24%);stroke:color-mix(in srgb,var(--accent),var(--line) 42%);stroke-width:2}.assessment-test-glyph .glyph-text{fill:var(--accent);font-size:13px;font-weight:800;font-family:Arial,Helvetica,sans-serif}.assessment-test-glyph .glyph-symbol{fill:#2b6cb0;stroke:var(--surface);stroke-width:1.5}.assessment-test-row.is-active .assessment-test-glyph,.assessment-test-row:hover .assessment-test-glyph{border-color:color-mix(in srgb,var(--accent),white 12%);background:color-mix(in srgb,var(--accent-soft),var(--surface) 34%)}.sequence-queue{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.assessment-presets .preset-row{grid-template-columns:1fr}.preset-tile{position:relative}.preset-tile__header{display:grid;gap:6px}.preset-tile__actions{display:flex;gap:8px;align-items:center;margin-top:4px}.preset-tile__actions .session-action{min-height:32px;padding:0 10px}.preset-tile--custom{padding-right:50px}.preset-tile__trash{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);background:var(--surface-muted)}.preset-tile__trash:focus-visible,.preset-tile__trash:hover{border-color:color-mix(in srgb,rgb(var(--danger)),var(--line) 24%);color:rgb(var(--danger));background:color-mix(in srgb,rgb(var(--danger)),var(--surface) 90%);outline:none}.preset-tile__trash svg{width:16px;height:16px}.quick-start-save{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 12px;border:1px dashed color-mix(in srgb,var(--accent),var(--line) 42%);border-radius:var(--radius-md);color:var(--accent);background:color-mix(in srgb,var(--accent-soft),transparent 36%);font-weight:700;transition:border-color .16s ease,background .16s ease,color .16s ease,opacity .16s ease}.quick-start-save:focus-visible:not(:disabled),.quick-start-save:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);outline:none}.quick-start-save:disabled{cursor:default;opacity:.48}.quick-start-save svg{width:16px;height:16px}.quick-start-note{margin:-4px 0 0;color:var(--muted);font-size:.8rem;line-height:1.35}.quick-start-dialog{display:grid;gap:14px}.quick-start-dialog__field{display:grid;gap:7px}.quick-start-dialog__field span{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.quick-start-dialog__field input{width:100%;min-height:var(--control-height);padding:8px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit}.quick-start-dialog__field input:focus{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent),transparent 72%);outline-offset:2px}.quick-start-dialog__summary{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-muted),transparent 20%)}.quick-start-dialog__summary span{color:var(--muted);font-size:.8rem}.quick-start-dialog__summary strong{color:var(--ink);font-size:.9rem;line-height:1.35}.sequence-queue__list{display:grid;gap:8px}.sequence-queue__list.is-drag-active{cursor:grabbing}.sequence-queue__item{display:grid;grid-template-columns:22px 28px 52px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted);cursor:grab;box-shadow:0 0 0 rgba(23,32,29,0);transition:border-color .16s ease,background .16s ease,box-shadow .18s ease,opacity .16s ease,transform .18s ease;will-change:transform}.sequence-queue__item .assessment-test-glyph{width:48px;height:30px;border-radius:7px}.sequence-queue__item:focus-within,.sequence-queue__item:hover{border-color:color-mix(in srgb,var(--accent),var(--line) 55%);background:color-mix(in srgb,var(--accent-soft),var(--surface) 68%)}.sequence-queue__item:active{cursor:grabbing}.sequence-queue__list.is-drag-active .sequence-queue__item:not(.is-dragging){transform:translateY(0)}.sequence-queue__item.is-dragging{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft),var(--surface) 58%);box-shadow:0 10px 24px rgba(23,32,29,.1);opacity:.48;transform:scale(.985)}.sequence-queue__handle{display:inline-flex;align-items:center;justify-content:center;width:22px;height:28px;color:var(--muted);cursor:grab}.sequence-queue__handle svg{width:16px;height:16px}.sequence-queue__item>span:not(.sequence-queue__handle){display:grid;place-items:center;width:28px;height:28px;border-radius:999px;color:var(--accent);background:var(--accent-soft);font-weight:800}.sequence-queue__item strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sequence-queue__controls{display:flex;gap:5px}.sequence-queue__controls button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;min-width:30px;padding:5px;border:1px solid var(--line);border-radius:7px;color:var(--muted);background:var(--surface);font-size:.78rem;font-weight:700}.sequence-queue__controls svg{width:15px;height:15px}.sequence-queue__controls button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.sequence-queue__trash:hover:not(:disabled){border-color:rgb(var(--danger));color:rgb(var(--danger));background:color-mix(in srgb,rgb(var(--danger)),transparent 92%)}.sequence-queue__controls button:disabled{cursor:default;opacity:.45}.plot-results-panel{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.plot-results-panel__header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.plot-results-panel__header h4{margin:2px 0 0}.plot-results-panel__source{color:var(--muted);font-size:.86rem;text-align:right}.plot-results-table{display:grid;border:1px solid var(--line);border-radius:9px;overflow:hidden}.plot-results-row,.plot-results-table__head{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(82px,.45fr) minmax(82px,.45fr) minmax(110px,.55fr);gap:10px;align-items:center}.plot-results-table__head{padding:8px 10px;background:var(--surface-muted);color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.plot-results-row{padding:8px 10px;background:var(--surface);border-top:1px solid var(--line)}.plot-results-group{display:grid}.plot-results-group__title{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:7px 10px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface-muted) 72%,var(--surface));color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.plot-results-group__action{flex:0 0 auto;font-size:.68rem;letter-spacing:0;text-transform:none}.plot-results-row div>strong{font-size:.88rem;line-height:1.2}.plot-results-row p{margin:3px 0 0;color:var(--muted);font-size:.74rem;line-height:1.3}.plot-results-row>strong{font-size:.9rem;color:var(--ink)}.plot-results-row>span{color:var(--muted);font-size:.78rem}.dem-percentile-status{display:grid;gap:2px;align-items:center;color:var(--muted);font-size:.74rem;line-height:1.2}.dem-percentile-status strong{color:var(--ink);font-size:.9rem;line-height:1.15}.dem-percentile-status span{color:var(--muted);font-weight:750}.dem-percentile-status .is-pass{color:rgb(var(--success))}.dem-percentile-status .is-fail{color:rgb(var(--danger))}.printout-sheet{background:var(--print-surface)}.pdf-export-row{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.pdf-export-status{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.test-detail-actions{display:flex;justify-content:flex-end;gap:10px;align-items:center;flex-wrap:wrap}.session-detail-nav{position:sticky;top:var(--session-detail-nav-sticky-top,0);z-index:18;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 10px 30px rgba(23,32,29,.08);color:var(--muted);font-size:.9rem}.session-detail-nav>span,.session-detail-nav__context{flex:1 1;color:var(--ink);font-weight:700;text-align:center}.session-detail-nav__context{display:grid;gap:2px;min-width:220px}.session-detail-nav__context strong{color:var(--ink);font-size:.96rem;line-height:1.15}.session-detail-nav__context span{color:var(--muted);font-size:.8rem;font-weight:650;line-height:1.2}.session-detail-nav__actions{display:flex;justify-content:flex-end;gap:8px;align-items:center;flex-wrap:wrap}.session-detail-nav--overview{margin-bottom:2px}.session-report-heading{position:fixed;left:-12000px;top:0;z-index:-1;display:grid;gap:12px;visibility:hidden;pointer-events:none}@media screen{.session-review-page .session-report-heading,.session-review-page .session-report-print{display:none}}.report-page{--background:248 248 246;--foreground:31 31 28;--muted-token:240 240 236;--muted-foreground:107 107 99;--panel:255 255 252;--panel-2:244 244 240;--border:222 222 216;--border-strong:202 202 193;--accent-token:15 118 110;--accent-foreground:255 255 255;--bg:rgb(var(--background));--surface:rgb(var(--panel));--surface-muted:rgb(var(--muted-token));--surface-raised:rgb(251 251 247);--print-surface:#fffdf8;--ink:rgb(var(--foreground));--muted:rgb(var(--muted-foreground));--line:rgb(var(--border));--line-strong:rgb(var(--border-strong));--accent:rgb(var(--accent-token));--accent-soft:rgb(224 242 238);--accent-contrast:rgb(var(--accent-foreground));min-height:100vh;padding:28px;background:#e8ecea;color:#17201d;color-scheme:light}.electron-host-frame~* .report-page,.electron-host-frame~.report-page{padding-top:calc(var(--electron-titlebar-height, 34px) + 28px)}.dark .report-page{background:#101512;color-scheme:dark}.report-status,.report-toolbar{display:flex;justify-content:space-between;gap:12px;width:min(860px,100%);margin:0 auto 14px}.report-status{align-items:center;padding:9px 11px;border:1px solid #cfd8d4;border-radius:8px;background:#fff;color:#5f6f69;font-size:.88rem}.report-status span{min-width:0;overflow-wrap:anywhere}.report-sheet{display:grid;gap:16px;width:min(860px,100%);margin:0 auto;padding:34px;border:1px solid #cfd8d4;border-radius:10px;background:#fff;box-shadow:0 22px 70px rgba(20,31,27,.12)}.report-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end;padding-bottom:14px;border-bottom:2px solid #1f2d28}.report-header dt,.report-header span{color:#5f6f69;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.report-header h1{margin:3px 0 0;color:#17201d;font-size:1.85rem;line-height:1.08}.report-header dl{display:grid;grid-template-columns:repeat(3,max-content);gap:14px;margin:0}.report-header div{display:grid;gap:3px}.report-header dd{margin:0;color:#17201d;font-size:.9rem;font-weight:750}.report-section{display:grid;gap:9px}.report-plots{gap:10px}.report-plots__primary-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}.session-report-print__secondary-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start}.report-plots .eye-plot{padding:8px;border-color:#d7dedb;background:#fff}.report-plots .eye-plot__canvas{border-color:#cfd6d3}.session-review-page{--session-detail-nav-sticky-top:0px;--session-review-padding-block:28px;box-sizing:border-box;min-height:0;padding:var(--session-review-padding-block) 28px;scroll-padding-top:calc(var(--session-detail-nav-sticky-top) + 72px);background:var(--bg);color:var(--ink);animation:session-review-surface-enter .24s cubic-bezier(.16,1,.3,1) both;transform-origin:top center}.session-review-page>.stack{width:min(1360px,100%);margin:0 auto;animation:session-review-content-enter .26s cubic-bezier(.16,1,.3,1) 40ms both}.session-review-overlay{position:fixed;inset:var(--electron-titlebar-height,0) 0 0;z-index:100;overflow:hidden auto;overscroll-behavior:contain;background:var(--bg);color:var(--ink)}.session-review-overlay .session-review-page{--session-review-padding-block:0px;min-height:100%;padding-bottom:16px}.session-review-overlay .session-detail-nav{top:0;margin:-14px -14px 14px;border-top:0;border-right:0;border-left:0;border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:0 8px 24px rgba(23,32,29,.1)}@keyframes session-review-surface-enter{0%{opacity:0;transform:translateY(10px) scale(.992)}to{opacity:1;transform:none}}@keyframes session-review-content-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes session-review-sidebar-enter{0%{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}@keyframes session-review-topbar-enter{0%{opacity:0;transform:translate3d(0,-10px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes session-review-main-return{0%{opacity:.92;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.session-review-page,.session-review-page>.stack,:root[data-session-review-returning=true] .desktop-main:not(.desktop-main--focus),:root[data-session-review-returning=true] .desktop-rail-shell,:root[data-session-review-returning=true] .settings-tabs,:root[data-session-review-returning=true] .shell-header{animation:none}}.report-sheet--session{gap:18px}.report-session-tests{gap:16px}.report-test-summary{display:grid;gap:10px;padding:14px;border:1px solid #d7dedb;border-radius:8px;background:#fbfcfc}.report-test-summary>header{display:flex;justify-content:space-between;gap:12px;align-items:end}.report-test-summary>header span{color:#5f6f69;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.report-test-summary h2{margin:2px 0 0;color:#17201d;font-size:1.08rem;line-height:1.15}.report-test-summary>header strong{color:#5f6f69;font-size:.82rem}.report-test-summary__plot .eye-plot{padding:0;border:0;background:transparent}.report-sheet--compare{gap:18px}.compare-report-sessions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.compare-report-sessions>div{display:grid;gap:4px;padding:12px;border:1px solid #d7dedb;border-radius:8px;background:#fbfcfc}.compare-report-sessions strong{color:#17201d;font-size:.95rem}.compare-report-sessions small{color:#5f6f69}.compare-report-tests{gap:14px}.compare-report-test{display:grid;gap:10px;padding:14px;border:1px solid #d7dedb;border-radius:8px;background:#fff}.compare-report-test>header{display:grid;gap:2px}.compare-report-test>header span{color:#5f6f69;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.compare-report-test h2{margin:0;color:#17201d;font-size:1.08rem;line-height:1.15}.compare-report-plot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compare-report-plot-slot{display:grid;gap:8px}.compare-report-plot-slot__header{display:flex;justify-content:space-between;gap:10px;align-items:baseline;color:#5f6f69;font-size:.78rem}.compare-report-plot-slot__header strong{min-width:0;overflow:hidden;color:#17201d;text-overflow:ellipsis;white-space:nowrap}.reports-workspace{gap:16px}.reports-toolbar,.reports-workspace__header{align-items:center}.reports-toolbar{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.reports-toolbar .session-action{gap:7px}.reports-toolbar svg{width:15px;height:15px}.reports-workspace__status{margin:0}.reports-builder-grid{display:grid;grid-template-columns:minmax(220px,.74fr) minmax(420px,1.7fr) minmax(260px,.9fr);gap:14px;align-items:start}.reports-panel{position:sticky;top:calc(var(--electron-titlebar-height, 0px) + var(--shell-header-height) + var(--patient-context-height) + 12px);display:grid;gap:14px;max-height:calc(100vh - var(--electron-titlebar-height, 0px) - var(--shell-header-height) - var(--patient-context-height) - 40px);overflow:auto}.reports-panel__section{display:grid;gap:9px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface),var(--surface-muted) 36%)}.reports-textarea{min-height:82px;resize:vertical}.report-source-tests{display:flex;flex-wrap:wrap;gap:6px}.report-source-tests span{max-width:100%;overflow:hidden;padding:5px 7px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font-size:.76rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.report-block-inspector,.report-block-library,.report-template-list{display:grid;gap:8px}.report-template-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:stretch}.report-template-row button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink)}.report-template-row>button:first-child{display:grid;gap:2px;min-width:0;padding:9px;text-align:left}.report-template-row>button:last-child{display:grid;place-items:center;width:34px}.report-template-row.is-active>button:first-child{border-color:var(--accent);background:var(--accent-soft)}.report-template-row span,.report-template-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-template-row span{color:var(--muted);font-size:.78rem}.report-template-row svg{width:14px;height:14px}.report-builder-canvas{min-height:700px;padding:18px;border:1px dashed var(--line-strong);border-radius:var(--radius-md);background:linear-gradient(90deg,color-mix(in srgb,var(--line),transparent 74%) 1px,transparent 1px),linear-gradient(color-mix(in srgb,var(--line),transparent 74%) 1px,transparent 1px),color-mix(in srgb,var(--surface-muted),var(--bg) 32%);background-size:26px 26px}.report-builder-canvas__sheet{--background:248 248 246;--foreground:31 31 28;--muted-token:240 240 236;--muted-foreground:107 107 99;--panel:255 255 252;--panel-2:244 244 240;--border:222 222 216;--border-strong:202 202 193;--accent-token:15 118 110;--accent-foreground:255 255 255;--bg:rgb(var(--background));--surface:rgb(var(--panel));--surface-muted:rgb(var(--muted-token));--surface-raised:rgb(251 251 247);--ink:rgb(var(--foreground));--muted:rgb(var(--muted-foreground));--line:rgb(var(--border));--line-strong:rgb(var(--border-strong));--accent:rgb(var(--accent-token));--accent-soft:rgb(224 242 238);--accent-contrast:rgb(var(--accent-foreground));display:grid;gap:12px;width:min(760px,100%);min-height:920px;margin:0 auto;padding:30px;border:1px solid #d5ddd9;border-radius:8px;background:#fffefa;color:#17201d;color-scheme:light;box-shadow:0 22px 70px rgba(20,31,27,.14)}.report-builder-canvas__sheet.is-dragging-over{box-shadow:0 24px 80px rgba(15,118,110,.18)}.report-builder-canvas__header{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding-bottom:12px;border-bottom:2px solid #1f2d28}.report-builder-canvas__header span{color:#63726d;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.report-builder-canvas__header strong{color:#17201d;font-size:1.02rem}.report-builder-block{position:relative;display:grid;gap:8px;padding:12px;border:1px solid transparent;border-radius:8px;background:#fffefa;cursor:grab;transition:transform .18s ease,border-color .16s ease,background .16s ease,box-shadow .18s ease,opacity .16s ease;will-change:transform}.report-builder-block.is-selected,.report-builder-block:hover{border-color:#7eb8ad;background:#fbfffd}.report-builder-block:hover{transform:translateY(-1px)}.report-builder-block.is-being-dragged{opacity:.44;transform:scale(.985)}.report-builder-block-slot{display:grid;gap:0;transition:transform .19s ease}.report-builder-insert-marker{display:grid;align-items:center;height:24px;margin:-2px 0;animation:reportInsertMarkerIn .15s ease-out}.report-builder-insert-marker span{display:block;height:3px;border-radius:999px;background:#0f766e;box-shadow:0 0 0 5px rgba(15,118,110,.12)}@keyframes reportInsertMarkerIn{0%{height:0;opacity:0;transform:translateY(-4px)}to{height:24px;opacity:1;transform:translateY(0)}}.report-builder-block__tools{position:absolute;right:8px;top:8px;display:none;gap:4px;align-items:center;padding:4px;border:1px solid #d7dedb;border-radius:6px;background:#fff;color:#5f6f69;box-shadow:0 8px 24px rgba(20,31,27,.11)}.report-builder-block.is-selected .report-builder-block__tools,.report-builder-block:hover .report-builder-block__tools{display:flex}.report-builder-block__tools svg{width:15px;height:15px}.report-builder-block__tools button{display:inline-grid;place-items:center;border:0;padding:4px 5px;border-radius:5px;background:transparent;color:#41504b;font-size:.72rem}.report-builder-block__tools button:hover{background:#eef5f2}.report-builder-block__delete{color:#9f1d1d!important}.report-builder-block__delete svg{width:14px;height:14px}.report-inline-edit{min-width:1ch;border-radius:5px;outline:none;transition:background .14s ease,box-shadow .14s ease}.report-inline-edit:hover{background:rgba(15,118,110,.06)}.report-inline-edit:focus{background:rgba(15,118,110,.08);box-shadow:0 0 0 2px rgba(15,118,110,.18)}.report-inline-edit.is-placeholder{color:#7d8a85}.report-block-heading{display:grid;gap:4px;padding-right:190px}.report-block-heading span,.report-block-metrics>.metric-label,.report-block-signature span,.report-block-summary dt{color:#63726d;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.report-block-heading h2{margin:0;color:#17201d;font-size:1.7rem;line-height:1.08}.report-block-metrics,.report-block-plot,.report-block-signature,.report-block-summary,.report-block-text{display:grid;gap:9px}.report-block-metrics h3,.report-block-plot h3,.report-block-summary h3,.report-block-text h3{margin:0;color:#17201d;font-size:1.02rem}.report-block-text p{margin:0;color:#41504b;line-height:1.5}.report-block-summary dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.report-block-summary div{display:grid;gap:3px;padding:10px;border:1px solid #d7dedb;border-radius:7px;background:#fbfcfc}.report-block-summary dd{margin:0;color:#17201d;font-weight:750}.report-block-metrics .plot-results-table{border-color:#d7dedb;background:#fff}.report-block-metrics .plot-results-table__head{background:#f1f4f2;color:#63726d}.report-block-metrics .plot-results-row{border-color:#d7dedb;background:#fff}.report-block-metrics .plot-results-row p,.report-block-metrics .plot-results-row>span{color:#63726d}.report-block-metrics .plot-results-row>strong{color:#17201d}.report-block-plot .eye-plot{padding:6px;border-color:#d7dedb;background:#fff}.report-block-plot .eye-plot__label strong,.report-block-plot .eye-plot__section-title strong{color:#17201d}.report-block-plot .eye-plot__control-label,.report-block-plot .eye-plot__label span,.report-block-plot .eye-plot__legend,.report-block-plot .eye-plot__toolbar span{color:#63726d}.report-block-plot .eye-plot__canvas{aspect-ratio:16/7.5;border-color:#cfd6d3;background:#fbfbf7}.report-block-plot .eye-plot__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.report-block-plot-group{gap:12px}.report-test-plot-list{display:grid;gap:14px}.report-test-plot-bundle{display:grid;gap:10px;padding:10px;border:1px solid #d7dedb;border-radius:8px;background:#fbfcfa}.report-test-plot-bundle header{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding-bottom:8px;border-bottom:1px solid #dfe6e2}.report-test-plot-bundle header strong{color:#17201d;font-size:.94rem}.report-test-plot-bundle header span{color:#63726d;font-size:.78rem;font-weight:700}.report-test-plot-bundle__grid{display:grid;gap:10px}.report-test-plot-card{display:grid;gap:6px}.report-test-plot-card>.metric-label{color:#63726d;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.report-block-signature{padding-top:20px}.report-block-signature i{display:block;width:min(320px,100%);height:1px;background:#73817c}.report-block-signature strong{color:#17201d}.report-builder-drop-zone{display:grid;place-items:center;min-height:74px;border:1px dashed #b8c8c3;border-radius:8px;color:#63726d;font-size:.86rem;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .18s ease}.report-builder-drop-zone.is-active{border-color:#0f766e;background:rgba(15,118,110,.07);color:#0f766e;transform:translateY(-1px)}.report-block-library button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;width:100%;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);text-align:left;transition:border-color .15s ease,background .15s ease,transform .16s ease,box-shadow .16s ease}.report-block-library button:hover{border-color:var(--accent);transform:translateX(-2px);box-shadow:0 8px 24px rgba(20,31,27,.08)}.report-block-library__group{display:grid;gap:6px}.report-block-library__group-toggle svg:last-child{transition:transform .16s ease}.report-block-library__group.is-open .report-block-library__group-toggle svg:last-child{transform:rotate(180deg)}.report-block-library__sublist{display:grid;gap:6px;padding-left:12px;border-left:2px solid var(--line);animation:reportPlotLibraryIn .14s ease-out}.report-block-library__sublist button{padding:8px;background:color-mix(in srgb,var(--surface),var(--surface-muted) 30%)}@keyframes reportPlotLibraryIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.report-block-library svg{width:16px;height:16px;color:var(--accent)}.report-block-library span{display:grid;gap:2px;min-width:0}.report-block-library small{color:var(--muted);line-height:1.25}.report-block-inspector label{display:grid;gap:5px}.report-block-inspector label>span{color:var(--muted);font-size:.78rem;font-weight:750}@media (max-width:1180px){.reports-builder-grid{grid-template-columns:1fr}.reports-panel{position:static;max-height:none}.reports-panel--inspector,.reports-panel--templates{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media (max-width:760px){.report-block-summary dl,.report-builder-canvas__header,.reports-toolbar,.reports-workspace__header{display:grid;grid-template-columns:1fr}.report-builder-canvas{padding:10px}.report-builder-canvas__sheet{min-height:760px;padding:18px}.report-block-heading{padding-right:0}.report-builder-block__tools{position:static;display:flex;width:fit-content;box-shadow:none}}@media print{@page{size:Letter portrait;margin:.35in}body.report-builder-printing{background:#fff!important}body.report-builder-printing *{visibility:hidden!important}body.report-builder-printing .report-builder-canvas__sheet,body.report-builder-printing .report-builder-canvas__sheet *{visibility:visible!important}body.report-builder-printing .report-builder-canvas__sheet{position:absolute!important;left:0!important;top:0!important;width:100%!important;min-height:auto!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}body.report-builder-printing .report-builder-block{page-break-inside:avoid;break-inside:avoid;border-color:transparent!important;box-shadow:none!important}body.report-builder-printing .report-builder-block__tools,body.report-builder-printing .report-builder-drop-zone,body.report-builder-printing .report-builder-insert-marker{display:none!important}}.session-detail-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;padding-top:14px}.printout-meta,.session-detail-footer{gap:10px;border-top:1px solid var(--line)}.printout-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 0;border-bottom:1px solid var(--line)}.printout-meta div{display:grid;gap:4px}.result-print-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.result-print-card{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);text-align:left}.result-print-card.is-active,.result-print-card:hover{border-color:var(--accent)}.result-print-card.is-active{background:var(--accent-soft)}.result-print-card__header{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.eye-plot{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.eye-plot__footer,.eye-plot__legend,.eye-plot__toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.eye-plot__footer{justify-content:flex-start;align-items:flex-start}.eye-plot__footer>.eye-plot__legend,.eye-plot__replay-controls{flex:1 1 100%}.eye-plot__toolbar{justify-content:flex-end}.eye-plot__toolbar--reserved{visibility:hidden;pointer-events:none}.eye-plot__toolbar>div:first-child{display:grid;gap:3px}.eye-plot__controls{display:grid;gap:8px;justify-items:end}.eye-plot__control-group{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.eye-plot__control-label{color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.plot-layout-toggle{display:inline-flex;padding:3px;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface-muted);box-shadow:inset 0 1px 2px rgba(23,35,31,.04)}.plot-layout-toggle button{min-height:28px;padding:5px 10px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:.82rem;font-weight:700}.plot-layout-toggle button.is-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(23,35,31,.12)}.plot-layout-toggle button:disabled{cursor:default;opacity:.45}.eye-plot__legend,.eye-plot__toolbar span{color:var(--muted)}.diagnostic-trace-layout,.diagnostic-trace-layout__export-surface,.diagnostic-trace-layout__secondary{display:grid;gap:14px}.diagnostic-trace-layout__secondary{padding-top:2px}.reading-trace-layout__primary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.reading-trace-layout__primary>.eye-plot{height:100%;align-content:start}.reading-trace-layout__primary .eye-plot__toolbar{min-height:118px;align-content:start;align-items:flex-start}@media (max-width:980px){.reading-trace-layout__primary{grid-template-columns:1fr}}.diagnostic-trace-layout__controls{gap:12px}.diagnostic-trace-layout__controls,.reading-alignment-controls{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap}.reading-alignment-controls{gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.reading-alignment-controls strong{color:var(--ink);font-size:.84rem;min-width:76px}.reading-norm-controls{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.reading-norm-controls strong{min-width:68px;color:var(--ink);font-size:.86rem;text-align:center}.reading-norm-controls>span:last-child{color:var(--muted);font-size:.8rem;font-weight:700}.reading-norm-inline-controls{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0}.reading-norm-inline-controls strong{min-width:68px;color:var(--ink);font-size:.86rem;text-align:center}.reading-norm-inline-controls>span{color:var(--muted);font-size:.76rem;font-weight:750}.reading-norm-inline-controls .text-link{font-size:.76rem}.dem-error-controls{display:grid;gap:8px;margin-bottom:10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.dem-error-control,.dem-error-control>div,.dem-error-controls__header{display:flex;align-items:center;gap:8px}.dem-error-controls__header{justify-content:space-between;flex-wrap:wrap}.dem-error-controls__grid{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:8px}.dem-error-control{justify-content:space-between;min-width:0;padding:7px 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.dem-error-control>span{min-width:0;color:var(--muted);font-size:.78rem;font-weight:800}.dem-error-control strong{min-width:28px;text-align:center;color:var(--ink);font-size:.86rem}.dem-error-controls__note{color:var(--muted);font-size:.78rem;font-weight:700}.dem-error-inline-control{display:inline-flex;align-items:center;gap:6px;min-width:112px}.dem-error-inline-control strong{min-width:28px;color:var(--ink);font-size:.9rem;text-align:center}.dem-audio-review{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.dem-audio-review__header{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 12px;border-bottom:1px solid var(--line);color:var(--ink);background:transparent;font:inherit;font-size:.86rem;font-weight:800}.dem-audio-review__header>span{display:inline-flex;align-items:center;gap:8px;min-width:0}.dem-audio-review__header svg{width:16px;height:16px;color:var(--accent)}.dem-audio-review__body{display:grid;gap:12px;padding:0 12px 12px}.dem-audio-review__player{display:grid;grid-template-columns:minmax(260px,1fr) minmax(240px,.85fr);gap:12px;align-items:center}.dem-audio-review audio{width:100%}.dem-audio-review dl,.dem-audio-review__grid{display:grid;gap:8px}.dem-audio-review dl{grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.dem-audio-review dl div,.dem-audio-review__counts>span,.dem-audio-review__grid>div,.dem-audio-review__transcript-section{min-width:0;padding:8px;border:1px solid var(--line);border-radius:7px;background:var(--surface-muted)}.dem-audio-review dt{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.dem-audio-review dd{margin:2px 0 0;color:var(--ink);font-size:.84rem;font-weight:800}.dem-audio-review__grid{grid-template-columns:minmax(260px,.65fr) minmax(360px,1.35fr)}.dem-audio-review__counts{display:grid;grid-template-columns:repeat(6,minmax(84px,1fr));gap:6px;margin-top:8px}.dem-audio-review__counts>span{display:grid;gap:3px;color:var(--muted);font-size:.72rem;font-weight:800}.dem-audio-review__counts strong{color:var(--ink);font-size:.98rem}.dem-audio-review__count-stepper>span{display:flex;gap:5px;margin-top:2px}.dem-audio-review__count-stepper .session-action{width:32px;height:32px;min-height:32px;border-color:color-mix(in srgb,var(--line),var(--ink) 18%);color:var(--ink);background:var(--surface)}.dem-audio-review__count-stepper .session-action svg{width:19px;height:19px;stroke-width:2.7}.dem-audio-review__transcript-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.dem-audio-review__transcript-head>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.dem-audio-review__transcript-head .session-action{min-height:30px;padding:6px 9px;font-size:.74rem}.dem-audio-review__edit-popover .session-action svg,.dem-audio-review__transcript-head .session-action svg{width:14px;height:14px}.dem-audio-review__transcript-head .session-action.is-active{border-color:color-mix(in srgb,var(--accent),transparent 42%);color:var(--accent);background:color-mix(in srgb,var(--accent),transparent 90%)}.spin{animation:spin .9s linear infinite}.dem-audio-review__transcript{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px;margin:8px 0 0;max-height:260px;overflow:auto;padding:8px 8px 8px 0;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.dem-audio-review__row-labels{position:sticky;left:0;z-index:2;isolation:isolate;display:grid;grid-template-rows:repeat(2,28px);gap:4px;width:76px;box-sizing:border-box;padding-left:8px;padding-right:12px;background:transparent}.dem-audio-review__row-labels:before{content:"";position:absolute;inset:-8px -8px -8px 0;z-index:0;background:var(--surface);box-shadow:8px 0 10px -10px color-mix(in srgb,var(--ink),transparent 35%)}.dem-audio-review__row-labels span{position:relative;z-index:1;display:inline-flex;align-items:center;color:var(--muted);font-size:.66rem;font-weight:850;text-transform:uppercase}.dem-audio-review__token-grid{display:grid;grid-auto-flow:column;grid-auto-columns:30px;gap:4px;width:max-content;min-width:100%}.dem-audio-review__cell{position:relative;display:grid;grid-template-rows:repeat(2,28px);gap:4px;width:30px;padding:0;border:0;color:var(--ink);background:transparent;cursor:default}.dem-audio-review__cell:not(:disabled){cursor:pointer}.dem-audio-review__cell.is-selected .dem-audio-review__token,.dem-audio-review__cell:not(:disabled):hover .dem-audio-review__token{border-color:color-mix(in srgb,var(--accent),transparent 24%);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent),transparent 86%)}.dem-audio-review__token-row{display:grid}.dem-audio-review__token-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.dem-audio-review__token{display:inline-grid;place-items:center;width:30px;height:28px;border:1px solid transparent;border-radius:5px;color:var(--ink);background:transparent;font-size:.82rem;font-weight:850;line-height:1}.dem-audio-review__cell.is-addition .dem-audio-review__token-row:first-child .dem-audio-review__token,.dem-audio-review__cell.is-substitution .dem-audio-review__token-row:first-child .dem-audio-review__token,.dem-audio-review__cell.is-transposition .dem-audio-review__token-row:first-child .dem-audio-review__token{border-color:color-mix(in srgb,rgb(var(--danger)),transparent 52%);color:rgb(var(--danger));background:color-mix(in srgb,rgb(var(--danger)),transparent 90%)}.dem-audio-review__cell.is-omission .dem-audio-review__token-row:first-child .dem-audio-review__token{border-color:color-mix(in srgb,var(--muted),transparent 58%);border-style:dashed;color:color-mix(in srgb,var(--muted),transparent 24%);background:color-mix(in srgb,var(--surface-muted),transparent 34%);opacity:.68}.dem-audio-review__token.is-expected{color:color-mix(in srgb,rgb(var(--success)),var(--ink) 38%)}.dem-audio-review__cell.is-omission .dem-audio-review__token.is-expected,.dem-audio-review__cell.is-substitution .dem-audio-review__token.is-expected,.dem-audio-review__cell.is-transposition .dem-audio-review__token.is-expected{border-color:color-mix(in srgb,rgb(var(--danger)),transparent 54%);color:rgb(var(--danger));background:color-mix(in srgb,rgb(var(--danger)),transparent 92%)}.dem-audio-review__cell.is-addition .dem-audio-review__token.is-expected{border-color:color-mix(in srgb,var(--muted),transparent 62%);border-style:dashed;color:color-mix(in srgb,var(--muted),transparent 14%);background:color-mix(in srgb,var(--surface-muted),transparent 24%)}.dem-audio-review__cell.is-corrected .dem-audio-review__token,.dem-audio-review__cell.is-corrected .dem-audio-review__token-row:first-child .dem-audio-review__token,.dem-audio-review__cell.is-corrected .dem-audio-review__token.is-expected{border-color:color-mix(in srgb,rgb(var(--success)),transparent 38%);border-style:solid;color:color-mix(in srgb,rgb(var(--success)),var(--ink) 18%);background:color-mix(in srgb,rgb(var(--success)),transparent 88%);opacity:1}.dem-audio-review__corrected-icon{position:absolute;top:-4px;right:-4px;width:13px;height:13px;padding:1px;border-radius:999px;color:#fff;background:rgb(var(--success))}.dem-audio-review__corrected-icon--expected{top:28px}.dem-audio-review__edit-popover{grid-column:1/-1;position:sticky;left:0;display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:4px;padding:8px;border:1px solid color-mix(in srgb,var(--accent),transparent 64%);border-radius:7px;background:var(--surface-muted)}.dem-audio-review__edit-popover span{flex:1 1 180px;color:var(--muted);font-size:.76rem;font-weight:750}.dem-audio-review__edit-popover .session-action{min-height:30px;padding:6px 9px;font-size:.74rem}.dem-audio-review__unsaved-bar{position:fixed;right:clamp(16px,3vw,48px);bottom:max(14px,env(safe-area-inset-bottom));left:clamp(16px,3vw,48px);z-index:1200;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent),transparent 46%);border-radius:8px;color:var(--ink);background:color-mix(in srgb,var(--surface),var(--accent) 6%);box-shadow:0 14px 34px color-mix(in srgb,var(--ink),transparent 86%)}.dem-audio-review__unsaved-bar>span{min-width:0;font-size:.86rem;font-weight:850}.dem-audio-review__unsaved-bar>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.dem-audio-review__unsaved-bar .session-action{gap:7px;min-height:34px}.dem-audio-review__unsaved-bar .session-action svg{width:15px;height:15px}@media (max-width:620px){.dem-audio-review__unsaved-bar{align-items:stretch;flex-direction:column}.dem-audio-review__unsaved-bar>div{justify-content:stretch}.dem-audio-review__unsaved-bar .session-action{flex:1 1}}@media print{.dem-audio-review__unsaved-bar{display:none}}.eye-plot__export-error{color:#b91c1c;font-size:.78rem;font-weight:700}.desktop-shell--dark .eye-plot__export-error,:root.dark .desktop-shell .eye-plot__export-error,:root[data-theme=dark] .desktop-shell .eye-plot__export-error{color:#fecaca}.eye-plot__section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.eye-plot__section-title strong{color:var(--ink);font-size:.95rem;line-height:1.2}.eye-plot__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.eye-plot__grid.is-stacked{grid-template-columns:1fr}.eye-plot__panel{display:grid;gap:8px}.eye-plot__label{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.eye-plot__label span{color:var(--muted);font-size:.84rem}.eye-plot__canvas{width:100%;aspect-ratio:16/9;height:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface-raised)}.nine-point-results{gap:12px}.nine-point-results__summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.nine-point-results__summary>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;align-items:baseline;min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.nine-point-results__summary span{min-width:0;overflow:hidden;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.nine-point-results__summary strong{color:var(--ink);font-size:.82rem;line-height:1.2;white-space:nowrap}.nine-point-results__canvas{aspect-ratio:16/9}.nine-point-results__ring{display:inline-block;width:13px;height:13px;border:1.5px dashed #2b6cb0;border-radius:999px;opacity:.72}@media (max-width:860px){.nine-point-results__summary{grid-template-columns:1fr}}.eye-plot__pupil-replay{display:grid;grid-template-columns:minmax(160px,auto) minmax(0,1fr);gap:12px;align-items:stretch;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.eye-plot__pupil-replay-heading{display:grid;align-content:center;gap:3px;min-width:0}.eye-plot__pupil-replay-heading strong{font-size:.9rem;line-height:1.2}.eye-plot__pupil-replay-heading span{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:.78rem;font-weight:700}.eye-plot__pupil-replay-heading svg{width:13px;height:13px;animation:spin .9s linear infinite}.eye-plot__pupil-dots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.eye-plot__pupil-dot-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto auto;gap:2px 10px;align-items:center;min-height:86px;min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.eye-plot__pupil-dot-card em,.eye-plot__pupil-dot-label{color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.eye-plot__pupil-dot{grid-row:1/-1;display:block;width:var(--pupil-dot-size,22px);height:var(--pupil-dot-size,22px);border:2px solid color-mix(in srgb,var(--surface),white 42%);border-radius:999px;box-shadow:inset 0 0 0 5px rgba(0,0,0,.16),0 8px 18px rgba(23,32,29,.16);transition:width 90ms linear,height 90ms linear}.eye-plot__pupil-dot--left{background:radial-gradient(circle at 34% 26%,rgba(255,255,255,.42),transparent 16%),#5cae58}.eye-plot__pupil-dot--right{background:radial-gradient(circle at 34% 26%,rgba(255,255,255,.42),transparent 16%),#107869}.eye-plot__pupil-dot-card em,.eye-plot__pupil-dot-card strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eye-plot__pupil-dot-card strong{font-size:.98rem;line-height:1.2}.eye-plot__pupil-dot-card em{font-style:normal;letter-spacing:0;text-transform:none}.eye-plot__pupil-replay.is-preparing .eye-plot__pupil-dot{opacity:.52}@media (max-width:720px){.eye-plot__pupil-dots,.eye-plot__pupil-replay{grid-template-columns:1fr}}.eye-plot--compact{gap:6px;padding:0;border:0;background:transparent}.eye-plot--compact .eye-plot__grid{gap:6px}.eye-plot--compact .eye-plot__grid,.eye-plot--compact .eye-plot__grid.is-stacked{grid-template-columns:repeat(2,minmax(0,1fr))}.eye-plot--compact .eye-plot__label{display:none}.eye-plot--compact .eye-plot__canvas{border-radius:6px}.eye-plot__legend{justify-content:flex-start;font-size:.86rem}.legend-dot{width:10px;height:10px;border-radius:999px;display:inline-block}.legend-dot--left{background:#5cae58}.legend-dot--right{background:#107869}.legend-dot--target{background:#2b6cb0}.legend-dot--vertical-disparity{background:#8a5d13}.legend-dot--fixation{background:#f59e0b}.legend-dot--regression{background:#b83280}.legend-dot--color-red{background:#c80000}.legend-dot--color-blue{background:#0000c8}.legend-dot--color-green{background:#006400}.legend-dot--color-form{background:#7d8580}.legend-dot--color-blind{background:#d6aa1d}.heatmap-legend{width:96px;height:10px;border-radius:999px;border:1px solid var(--line);background:linear-gradient(90deg,#29a869,#e2c441 46%,#e68f23 70%,#cc2d23);display:inline-block}.heatmap-scale{display:grid;grid-template-columns:auto minmax(120px,220px) auto;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:.76rem;font-weight:750}.heatmap-scale__bar{display:block;height:9px;border:1px solid var(--line);border-radius:999px;background:linear-gradient(90deg,#29a869,#e2c441 46%,#e68f23 70%,#cc2d23);box-shadow:inset 0 1px 1px rgba(23,35,31,.1)}.hardware-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hardware-sample-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.hardware-sample-header .telemetry-button{min-height:32px;padding:0 10px;font-size:.82rem}.hardware-layout{grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);align-items:start}.hardware-overview-panel{align-content:start}.hardware-device-card{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-muted)}.hardware-device-card h2{margin:2px 0 4px}.hardware-status-pill{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);white-space:nowrap}.hardware-status-pill span{width:10px;height:10px;border-radius:999px;background:#c43b3b;box-shadow:0 0 0 3px rgba(196,59,59,.14)}.hardware-status-pill.is-connected{color:#176b43}.hardware-status-pill.is-connected span{background:#22a05b;box-shadow:0 0 0 3px rgba(34,160,91,.16)}.desktop-shell--dark .hardware-status-pill.is-connected,:root.dark .desktop-shell .hardware-status-pill.is-connected,:root[data-theme=dark] .desktop-shell .hardware-status-pill.is-connected{color:#78e2aa}.hardware-frequency-card .field{display:grid;gap:7px;margin:0}.hardware-select{position:relative;display:block}.hardware-select:after{position:absolute;top:50%;right:12px;width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);content:"";pointer-events:none;transform:translateY(-65%) rotate(45deg)}.hardware-select select{width:100%;min-height:40px;padding:0 38px 0 12px;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);background:var(--surface);box-shadow:0 1px 1px rgba(0,0,0,.025);font:inherit;font-weight:650;outline:none;appearance:none;-webkit-appearance:none}.hardware-select select:focus-visible,.hardware-select select:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent),var(--line) 42%)}.hardware-select select:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent),transparent 82%)}.hardware-select select:disabled{cursor:default;color:var(--muted);background:var(--surface-muted);opacity:.72}.hardware-pre{margin:8px 0 0;overflow:auto;font-size:.82rem;line-height:1.45;white-space:pre-wrap}.hardware-inline,.hardware-path,.hardware-pre{word-break:break-word}.hardware-live-overlay{position:fixed;z-index:90;pointer-events:none;transition:left 80ms linear,top 80ms linear,transform .14s ease-out,opacity .14s ease}.hardware-live-overlay--gaze{width:54px;height:54px;border:2px solid rgba(7,168,211,.74);border-radius:999px;background:rgba(7,168,211,.13);box-shadow:0 0 0 12px rgba(7,168,211,.08),0 10px 26px rgba(4,83,108,.16);transform:translate(-50%,-50%)}.hardware-live-head-anchor{position:fixed;inset:0;z-index:89;display:grid;place-items:center;pointer-events:none;perspective:800px}.hardware-live-overlay--head{width:142px;height:188px;border:2px solid rgba(21,25,24,.56);border-radius:52% 52% 46% 46%;background:rgba(21,25,24,.08);box-shadow:0 0 0 14px rgba(21,25,24,.05),inset 0 0 0 1px rgba(255,255,255,.36);transform-style:preserve-3d}.hardware-diagnostic{position:fixed;inset:0;z-index:110;display:block;background:var(--surface);color:var(--ink)}.hardware-diagnostic__bar{position:absolute;top:12px;right:0;left:0;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:0;padding:0 18px;border:0;background:transparent;pointer-events:none}.hardware-diagnostic__bar-actions,.hardware-diagnostic__bar>div{pointer-events:auto}.hardware-diagnostic__bar span,.hardware-diagnostic__bar strong{display:block;text-shadow:0 1px 10px color-mix(in srgb,var(--surface),transparent 8%)}.hardware-diagnostic__bar span{color:color-mix(in srgb,var(--muted),var(--ink) 18%);font-size:.82rem}.hardware-diagnostic__bar-actions{display:inline-flex;align-items:center;gap:8px}.hardware-diagnostic__bar-actions .telemetry-button{min-height:34px;padding:0 12px;font-size:.82rem;background:color-mix(in srgb,var(--surface),transparent 14%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hardware-diagnostic__close{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 12%);color:var(--ink);box-shadow:0 1px 2px rgba(21,25,24,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hardware-diagnostic__close:focus-visible,.hardware-diagnostic__close:hover{border-color:color-mix(in srgb,var(--accent),var(--line) 45%);color:var(--accent)}.hardware-diagnostic__close svg{width:18px;height:18px}.hardware-diagnostic__body,.hardware-diagnostic__stage{position:absolute;inset:0;overflow:hidden}.hardware-diagnostic__stage{background:linear-gradient(90deg,color-mix(in srgb,var(--line),transparent 50%) 1px,transparent 1px),linear-gradient(0deg,color-mix(in srgb,var(--line),transparent 50%) 1px,transparent 1px),radial-gradient(circle at center,rgba(7,168,211,.09),transparent 32%),var(--surface);background-size:33.333% 100%,100% 33.333%,auto,auto}.hardware-diagnostic__sample{position:absolute;top:50%;left:min(64vw,calc(100% - 350px));z-index:4;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;width:min(330px,calc(100vw - 40px));max-height:min(62vh,520px);min-height:260px;padding:16px;border:1px solid color-mix(in srgb,var(--line),transparent 8%);border-radius:8px;background:color-mix(in srgb,var(--surface),transparent 4%);box-shadow:0 18px 54px rgba(21,25,24,.14);transform:translateY(-50%);transition:opacity .14s ease,transform .14s ease}.hardware-diagnostic__sample[hidden]{display:none}.hardware-diagnostic__sample>div{display:grid;gap:4px}.hardware-diagnostic__sample>div strong{color:var(--ink)}.hardware-diagnostic__sample .hardware-pre{min-height:0;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.hardware-diagnostic__body--head .hardware-diagnostic__sample,.hardware-diagnostic__body--pupil .hardware-diagnostic__sample{top:72px;right:18px;bottom:18px;left:auto;width:min(340px,calc(100vw - 36px));max-height:none;min-height:0;transform:none}@media (max-width:760px){.hardware-diagnostic__sample{right:20px;bottom:20px;left:20px;top:auto;width:auto;max-height:38vh;min-height:0;transform:none}}.hardware-diagnostic__target{position:absolute;display:grid;place-items:center;width:clamp(42px,5vw,68px);height:clamp(42px,5vw,68px);border:2px solid color-mix(in srgb,var(--accent),white 20%);border-radius:999px;color:color-mix(in srgb,var(--accent),black 52%);background:color-mix(in srgb,var(--accent),white 86%);font-size:.74rem;font-weight:800;transform:translate(-50%,-50%)}.hardware-diagnostic__gaze{position:absolute;width:28px;height:28px;border-radius:999px;transform:translate(-50%,-50%);transition:left 80ms linear,top 80ms linear}.hardware-diagnostic__gaze--left,.hardware-diagnostic__gaze--right{z-index:2;opacity:.72;border:2px solid rgba(255,255,255,.78)}.hardware-diagnostic__gaze--left{background:#3974ff}.hardware-diagnostic__gaze--right{background:#f26a43}.hardware-diagnostic__gaze--combined{z-index:3;width:46px;height:46px;border:2px solid rgba(7,168,211,.72);background:rgba(7,168,211,.16);box-shadow:0 0 0 14px rgba(7,168,211,.1)}.hardware-diagnostic__empty{position:absolute;inset:0;display:grid;place-items:center;padding:24px;color:var(--muted);text-align:center}.hardware-diagnostic__stage--head{display:grid;place-items:center;background:linear-gradient(90deg,color-mix(in srgb,var(--line),transparent 56%) 1px,transparent 1px),linear-gradient(0deg,color-mix(in srgb,var(--line),transparent 56%) 1px,transparent 1px),radial-gradient(circle at center,rgba(21,25,24,.07),transparent 42%),var(--surface);background-size:25% 100%,100% 25%,auto,auto;perspective:900px}.hardware-diagnostic__stage--pupil{display:grid;place-items:center;align-content:center;gap:34px;background:radial-gradient(circle at center,rgba(15,118,110,.1),transparent 36%),linear-gradient(90deg,color-mix(in srgb,var(--line),transparent 60%) 1px,transparent 1px),linear-gradient(0deg,color-mix(in srgb,var(--line),transparent 60%) 1px,transparent 1px),var(--surface);background-size:auto,25% 100%,100% 25%,auto}.hardware-pupil-pair{display:flex;align-items:center;justify-content:center;gap:clamp(56px,9vw,132px);min-height:240px}.hardware-pupil{display:grid;width:var(--pupil-size,76px);height:var(--pupil-size,76px);place-items:center;border:2px solid color-mix(in srgb,var(--muted),transparent 28%);border-radius:999px;background:rgba(21,25,24,.1);opacity:.48;transition:width .12s ease-out,height .12s ease-out,opacity .14s ease,border-color .14s ease}.hardware-pupil.is-valid{border-color:rgba(15,118,110,.72);background:radial-gradient(circle at 34% 30%,rgba(255,255,255,.22),rgba(15,118,110,.2) 42%,rgba(15,118,110,.52));box-shadow:0 0 0 18px rgba(15,118,110,.08),0 18px 48px rgba(15,118,110,.16);opacity:1}.hardware-pupil span{width:42%;height:42%;border-radius:999px;background:rgba(21,25,24,.74)}.hardware-pupil-readout{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;width:min(760px,calc(100% - 40px))}.hardware-pupil-readout div{display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface),transparent 8%)}.hardware-pupil-readout span{color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hardware-pupil-readout strong{color:var(--ink);font-size:1.2rem}.hardware-diagnostic__head-guide{position:absolute;width:min(42vw,460px);aspect-ratio:1;border:1px dashed color-mix(in srgb,var(--muted),transparent 45%);border-radius:999px;box-shadow:0 0 0 78px color-mix(in srgb,var(--line),transparent 84%),0 0 0 156px color-mix(in srgb,var(--line),transparent 92%)}.hardware-diagnostic__head{position:relative;width:184px;height:238px;border:2px solid rgba(21,25,24,.58);border-radius:52% 52% 46% 46%;background:rgba(21,25,24,.09);box-shadow:0 22px 54px rgba(21,25,24,.13),inset 0 0 0 1px rgba(255,255,255,.38);opacity:.5;transform-style:preserve-3d;transition:transform .15s ease-out,opacity .16s ease}.hardware-diagnostic__head.is-valid{opacity:1}.hardware-diagnostic__head.is-ready,.hardware-live-overlay--head.is-ready{border-color:rgba(15,118,110,.68);background:rgba(15,118,110,.12)}.hardware-diagnostic__head-center{position:absolute;left:50%;top:50%;width:12px;height:12px;border-radius:999px;background:rgba(21,25,24,.42);transform:translate(-50%,-50%)}.hardware-diagnostic__metrics{position:absolute;left:20px;bottom:18px;display:flex;flex-wrap:wrap;gap:10px 18px;color:var(--muted);font-size:.9rem}.gaze-preview{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:radial-gradient(circle at 20% 12%,rgba(36,184,222,.12),transparent 30%),linear-gradient(135deg,rgba(255,255,255,.68),rgba(255,255,255,.28)),var(--surface-muted)}.gaze-preview__header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.gaze-preview__header span,.gaze-preview__header strong{display:block}.gaze-preview__header span,.gaze-preview__legend{color:var(--muted);font-size:.86rem;line-height:1.4}.gaze-preview__legend{display:flex;flex-wrap:wrap;gap:8px 12px;justify-content:flex-end}.gaze-preview__legend span{display:inline-flex;gap:6px;align-items:center;white-space:nowrap}.gaze-preview__legend-dot{width:10px;height:10px;border-radius:999px;display:inline-block}.gaze-preview__legend-dot--combined{background:#09b7e5}.gaze-preview__legend-dot--left{background:#3974ff}.gaze-preview__legend-dot--right{background:#f26a43}.gaze-preview__screen{position:relative;aspect-ratio:16/9;min-height:280px;overflow:hidden;border-radius:18px;border:1px solid color-mix(in srgb,var(--line),var(--ink) 10%);background:linear-gradient(90deg,color-mix(in srgb,var(--line),transparent 45%) 1px,transparent 1px),linear-gradient(0deg,color-mix(in srgb,var(--line),transparent 45%) 1px,transparent 1px),radial-gradient(circle at center,rgba(9,183,229,.11),transparent 34%),var(--surface);background-size:33.333% 100%,100% 33.333%,auto,auto;box-shadow:inset 0 0 0 12px color-mix(in srgb,var(--surface-muted),transparent 55%)}.gaze-preview__target{position:absolute;width:clamp(34px,5.2vw,56px);height:clamp(34px,5.2vw,56px);transform:translate(-50%,-50%);border-radius:999px;display:grid;place-items:center;border:2px solid color-mix(in srgb,var(--accent),white 28%);background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.88),transparent 18%),radial-gradient(circle,color-mix(in srgb,var(--accent),white 82%) 0 42%,color-mix(in srgb,var(--accent),transparent 72%) 43% 100%);color:color-mix(in srgb,var(--accent),black 52%);font-size:.72rem;font-weight:800;letter-spacing:.04em;box-shadow:0 10px 24px rgba(26,53,50,.12)}.gaze-preview__marker{position:absolute;width:20px;height:20px;transform:translate(-50%,-50%);border-radius:999px;pointer-events:none;transition:left 80ms linear,top 80ms linear,opacity .12s ease}.gaze-preview__marker--combined{width:28px;height:28px;z-index:4;background:radial-gradient(circle at 34% 24%,rgba(255,255,255,.92),transparent 22%),radial-gradient(circle,#18c9f5 0 44%,#08a8d8 45% 100%);border:2px solid rgba(255,255,255,.82);box-shadow:0 0 0 7px rgba(9,183,229,.16),0 12px 26px rgba(8,120,160,.32)}.gaze-preview__marker--left,.gaze-preview__marker--right{z-index:3;opacity:.82;border:2px solid rgba(255,255,255,.78);box-shadow:0 8px 18px rgba(26,53,50,.18)}.gaze-preview__marker--left{background:#3974ff}.gaze-preview__marker--right{background:#f26a43}.gaze-preview__empty{position:absolute;inset:0;display:grid;place-items:center;padding:24px;color:var(--muted);text-align:center;font-size:.92rem}.head-preview{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:radial-gradient(circle at 75% 8%,rgba(239,145,91,.13),transparent 28%),linear-gradient(135deg,rgba(255,255,255,.7),rgba(255,255,255,.24)),var(--surface-muted)}.head-preview__header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.head-preview__header span,.head-preview__header strong{display:block}.head-preview__header span,.head-preview__metrics{color:var(--muted);font-size:.86rem;line-height:1.4}.head-preview__status{flex:0 0 auto;padding:5px 9px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.head-preview__status.is-valid{border-color:rgba(41,168,105,.35);background:rgba(41,168,105,.13);color:#17834d}.head-preview__stage{position:relative;min-height:320px;overflow:hidden;border-radius:18px;border:1px solid color-mix(in srgb,var(--line),var(--ink) 10%);background:linear-gradient(90deg,color-mix(in srgb,var(--line),transparent 52%) 1px,transparent 1px),linear-gradient(0deg,color-mix(in srgb,var(--line),transparent 52%) 1px,transparent 1px),radial-gradient(circle at center,rgba(27,38,36,.08),transparent 42%),var(--surface);background-size:25% 100%,100% 25%,auto,auto;perspective:650px;display:grid;place-items:center}.head-preview__depth-rings{position:absolute;width:min(58%,360px);aspect-ratio:1;border-radius:999px;border:1px dashed color-mix(in srgb,var(--muted),transparent 48%);box-shadow:0 0 0 54px color-mix(in srgb,var(--line),transparent 82%),0 0 0 108px color-mix(in srgb,var(--line),transparent 90%);opacity:.65}.head-preview__head{position:relative;width:150px;height:170px;transform-style:preserve-3d;transition:transform .17s ease-out,opacity .18s ease;opacity:.58}.head-preview__head.is-valid{opacity:1}.head-preview__hair{display:none}.head-preview__face{position:absolute;left:28px;top:14px;width:94px;height:136px;border-radius:52% 52% 48% 48%;background:radial-gradient(circle at 34% 22%,rgba(255,255,255,.18),transparent 22%),linear-gradient(145deg,#151918,#020303);border:1px solid rgba(255,255,255,.08);box-shadow:-22px 32px 0 -50px #050707,22px 32px 0 -50px #050707,inset -18px -20px 28px rgba(0,0,0,.28),0 18px 38px rgba(29,37,36,.24)}.head-preview__face:after,.head-preview__face:before{content:"";position:absolute;top:48px;width:26px;height:40px;border-radius:999px;background:linear-gradient(145deg,#101413,#020303);box-shadow:inset -7px -8px 12px rgba(255,255,255,.03);z-index:-1}.head-preview__face:before{left:-18px}.head-preview__face:after{right:-18px}.head-preview__eye{display:none}.head-preview__eye--left{left:27px}.head-preview__eye--right{right:27px}.head-preview__mouth,.head-preview__neck,.head-preview__nose,.head-preview__shoulders{display:none}.head-preview__metrics{display:flex;flex-wrap:wrap;gap:8px 14px;justify-content:space-between}.oculo-runner{display:grid;gap:14px}.assessment-launch-blackout,.oculo-autostart-fallback,.oculo-autostart-page{position:fixed;inset:0;z-index:10000;width:100vw;height:100vh;background:#000}.assessment-launch-blackout--light,.oculo-autostart-fallback--light,.oculo-autostart-page--light{background:#fff}.oculo-test-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.oculo-test-card{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);text-align:left}.oculo-test-card.is-active,.oculo-test-card:hover{border-color:var(--accent)}.oculo-test-card.is-active{background:var(--accent-soft)}.oculo-test-card small,.oculo-test-card span{color:var(--muted);font-size:.82rem;line-height:1.4}.oculo-option-toggle{display:inline-flex;width:fit-content;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:.9rem;font-weight:800}.oculo-option-toggle input{width:16px;height:16px;accent-color:var(--accent)}.hess-sequence-options,.oculo-hess-options{display:grid;gap:12px;width:100%}.glasses-wear-preview{position:relative;aspect-ratio:1680/552;isolation:isolate}.glasses-wear-preview img{position:relative;z-index:2;display:block;width:100%;height:auto;pointer-events:none}.glasses-wear-preview__lens{position:absolute;z-index:1;top:43%;width:25.5%;height:62%;border:1px solid rgba(255,255,255,.24);opacity:.82;transform:translate(-50%,-50%)}.glasses-wear-preview__lens--left{left:31.8%;border-radius:40% 45% 48% 50%;background:var(--glasses-left-lens-fill)}.glasses-wear-preview__lens--right{left:68.1%;border-radius:45% 40% 50% 48%;background:var(--glasses-right-lens-fill)}.hess-sequence-options{padding:14px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.06)}.hess-sequence-options h3{margin:3px 0 0;font-size:1rem}.hess-sequence-options__row,.oculo-hess-options__group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.hess-sequence-options button,.oculo-hess-options button:not(.session-action){min-height:34px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.08);color:inherit;font-weight:800}.hess-sequence-options button.is-active,.oculo-hess-options button.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.hess-sequence-options__slider,.oculo-hess-options__slider{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;align-items:center;color:inherit;font-size:.84rem;font-weight:800}.hess-sequence-options__slider input,.oculo-hess-options__slider input{width:100%;accent-color:var(--accent)}.hess-sequence-options__slider em,.oculo-hess-options__slider em{color:var(--muted);font-style:normal}.hess-target-size-reset{display:inline-grid;width:28px;height:28px;min-height:28px!important;place-items:center;padding:0;border-radius:999px!important}.hess-target-size-reset svg{width:14px;height:14px}.color-field-config__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.color-field-config{max-height:min(78vh,760px);overflow-y:auto;scrollbar-gutter:stable}.color-field-config__toggles{grid-template-columns:minmax(0,1fr)}.color-field-config__toggle input:disabled{cursor:default;opacity:1}.color-field-config__toggle input:disabled:checked{border-color:color-mix(in srgb,var(--accent),white 10%);background:color-mix(in srgb,var(--accent),white 6%)}.color-field-config__colors label,.color-field-config__grid label{display:grid;grid-template-columns:minmax(124px,.32fr) minmax(180px,1fr) minmax(64px,auto);gap:10px;align-items:center;min-width:0;min-height:40px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--line),transparent 20%);border-radius:8px;background:rgba(255,255,255,.055);color:inherit;font-size:.82rem;font-weight:800}.color-field-config__colors input,.color-field-config__grid input{width:100%;accent-color:var(--accent)}.color-field-config__colors em,.color-field-config__grid em{color:var(--muted);font-style:normal;text-align:right}.color-field-config__colors{display:grid;gap:8px}.color-field-config__colors label{grid-template-columns:18px minmax(96px,.26fr) minmax(180px,1fr) minmax(52px,auto)}.color-field-config__colors label>span{width:16px;height:16px;border-radius:999px;box-shadow:0 0 0 1px rgba(255,255,255,.35)}.color-field-summary__row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.color-field-modal{position:fixed;left:50%;top:50%;z-index:410;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(1080px,calc(100vw - 44px));max-height:calc(100vh - 44px);overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 28px 90px rgba(5,8,8,.3);color:var(--ink);transform:translate(-50%,-50%);animation:dialog-in .16s ease-out}.color-field-modal__footer,.color-field-modal__header{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface),var(--surface-muted) 38%)}.color-field-modal__title{margin:4px 0 0;font-size:1.08rem;line-height:1.2;letter-spacing:0}.color-field-modal__body{display:grid;grid-template-columns:minmax(280px,.42fr) minmax(0,1fr);min-height:0;overflow:hidden}.color-field-modal__controls,.color-field-modal__preview{min-height:0;overflow:auto;padding:16px}.color-field-modal__preview{display:grid;align-content:start;gap:12px;border-right:1px solid var(--line);background:color-mix(in srgb,var(--surface-muted),var(--surface) 42%)}.color-field-modal__preview-stage{position:relative;display:grid;min-height:280px;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--cf-bg)}.color-field-modal__fixation-preview{position:absolute;left:50%;top:50%;display:grid;width:var(--cf-fixation-size);height:var(--cf-fixation-size);place-items:center;border:1px dashed rgba(255,255,255,.82);border-radius:999px;transform:translate(-50%,-50%)}.color-field-modal__fixation-preview span{width:8px;height:8px;border-radius:999px;background:#111;box-shadow:0 0 0 2px rgba(255,255,255,.62)}.color-field-modal__target-preview{position:absolute;left:50%;top:32px;width:var(--cf-target-size);height:var(--cf-target-size);border-radius:999px;background:var(--cf-blue);box-shadow:0 0 0 1px rgba(255,255,255,.38);transform:translateX(-50%)}.color-field-modal__speed-preview{position:absolute;left:32px;right:32px;bottom:30px;height:2px;background:rgba(255,255,255,.58)}.color-field-modal__speed-preview span{position:absolute;left:0;top:50%;width:var(--cf-target-size);height:var(--cf-target-size);border-radius:999px;background:var(--cf-green);transform:translateY(-50%);animation:color-field-speed-preview var(--cf-speed-duration) linear infinite alternate}.color-field-modal__preview-meta,.color-field-modal__swatches{display:flex;gap:8px;flex-wrap:wrap}.color-field-modal__preview-meta span,.color-field-modal__swatches span{min-height:26px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--surface);font-size:.76rem;font-weight:800}.color-field-modal__swatches span{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.34)}.color-field-modal__controls{display:grid;align-content:start;gap:14px}.color-field-modal__section{display:grid;gap:9px}.color-field-modal__section h4{margin:2px 0 0;font-size:.94rem;line-height:1.2}.color-field-modal__footer{border-top:1px solid var(--line);border-bottom:0}.color-field-modal__footer>div{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}@keyframes color-field-speed-preview{0%{left:0;transform:translateY(-50%)}to{left:calc(100% - var(--cf-target-size));transform:translateY(-50%)}}@media (max-width:760px){.color-field-config__grid label{grid-template-columns:minmax(0,1fr) minmax(58px,auto)}.color-field-config__colors label{grid-template-columns:18px minmax(0,1fr) minmax(58px,auto)}.color-field-config__colors input,.color-field-config__grid input{grid-column:1/-1;grid-row:2}.color-field-config__colors label>span{grid-row:1}.color-field-modal__body,.color-field-summary__row{grid-template-columns:minmax(0,1fr)}.color-field-modal__preview{border-right:0;border-bottom:1px solid var(--line)}.color-field-modal__footer,.color-field-modal__header{align-items:stretch;flex-direction:column}}.reading-config__custom label,.reading-config__select{display:grid;gap:6px;color:inherit;font-size:.82rem;font-weight:800}.reading-config__custom input,.reading-config__custom textarea,.reading-config__select input,.reading-config__select select,.reading-config__select textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit}.reading-config__custom input,.reading-config__select input,.reading-config__select select{min-height:38px;padding:0 10px}.reading-config__custom textarea,.reading-config__select textarea{min-height:96px;padding:10px;line-height:1.45;resize:vertical}.reading-config__simple{display:grid;grid-template-columns:minmax(108px,.38fr) minmax(0,1fr);gap:10px}.reading-config__actions{display:flex;flex-wrap:wrap;gap:8px}.dem-setup-toggles{display:grid;gap:8px}.dem-setup-toggle{display:grid;grid-template-columns:minmax(0,1fr) 50px;gap:12px;align-items:center;min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.07);color:inherit}.dem-setup-toggle>span{display:grid;gap:2px;min-width:0}.dem-setup-toggle em,.dem-setup-toggle strong{font-size:.8rem;line-height:1.2}.dem-setup-toggle strong{font-weight:900}.dem-setup-toggle em{color:var(--muted);font-style:normal;font-weight:800;text-transform:uppercase}.dem-setup-toggle input{position:relative;box-sizing:border-box;width:46px;height:26px;margin:0;appearance:none;border:1px solid color-mix(in srgb,var(--line),white 18%);border-radius:999px;background:color-mix(in srgb,var(--surface-muted),white 36%);cursor:pointer;transition:background .16s ease,border-color .16s ease}.dem-setup-toggle input:after{position:absolute;top:50%;left:3px;width:20px;height:20px;border-radius:999px;background:#ffffff;box-shadow:0 1px 5px rgba(23,32,29,.32);content:"";transform:translateY(-50%);transition:transform .16s ease}.dem-setup-toggle input:checked{border-color:var(--accent);background:var(--accent)}.dem-setup-toggle input:checked:after{transform:translate(20px,-50%)}.dem-setup-toggle input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dem-voice-config{display:grid;gap:8px;padding:10px;border:1px solid color-mix(in srgb,var(--line),white 10%);border-radius:8px;background:rgba(255,255,255,.08)}.dem-voice-config__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.dem-voice-config__actions span{color:var(--muted);font-size:.78rem;font-weight:800;line-height:1.35}.dem-voice-debug-modal{width:min(1280px,calc(100vw - 34px))}.dem-voice-debug-modal__body{display:grid;grid-template-columns:minmax(420px,1fr) minmax(330px,420px);min-height:0;overflow:hidden}.dem-voice-debug-modal__plate{display:grid;min-height:0;overflow:auto;padding:16px;border-right:1px solid var(--line);background:#f7f8f7}.dem-voice-debug-modal__plate .dem-calibration-plate{position:relative;inset:auto;width:min(92%,620px);min-height:0;margin:auto;padding:0;background:#fff;box-shadow:0 18px 46px rgba(16,24,20,.18)}.dem-voice-debug-modal__controls{display:grid;align-content:start;gap:12px;min-height:0;overflow:auto;padding:16px}.dem-voice-debug-status{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface-muted),var(--surface) 36%)}.dem-voice-debug-status strong{color:var(--ink);font-size:.88rem}.dem-voice-debug-status span{color:var(--muted);font-size:.76rem;font-weight:800}.dem-voice-debug-status.is-listening{border-color:color-mix(in srgb,var(--accent),white 18%);background:color-mix(in srgb,var(--accent),var(--surface) 86%)}.dem-voice-debug-actions{display:flex;flex-wrap:wrap;gap:8px}.dem-voice-debug-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dem-voice-debug-metrics div{display:grid;gap:4px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.08)}.dem-voice-debug-metrics span{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.dem-voice-debug-metrics strong{font-size:1.05rem}.dem-voice-debug-transcript{display:grid;gap:10px;min-height:0}.dem-voice-debug-transcript>div{display:grid;gap:6px;min-height:0}.dem-voice-debug-transcript code{display:block;min-height:58px;max-height:132px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:8px;background:#101815;color:#f4faf6;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.dem-voice-debug-transcript ol{display:grid;gap:6px;max-height:220px;padding:0;margin:0;overflow:auto;list-style:none}.dem-voice-debug-transcript li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.07)}.dem-voice-debug-transcript li strong{display:block;min-width:0;overflow:hidden;padding:6px 8px;border-radius:6px;background:#f4faf6;color:#101815;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem;line-height:1.25;overflow-wrap:anywhere}.dem-voice-debug-transcript li em{min-width:0;color:var(--muted);font-size:.72rem;font-style:normal;font-weight:800}@media (max-width:860px){.dem-voice-debug-modal__body{grid-template-columns:1fr}.dem-voice-debug-modal__plate{max-height:48vh;border-right:0;border-bottom:1px solid var(--line)}}.reading-config__calibration-action{display:flex;padding-top:14px;margin-top:6px;border-top:1px solid color-mix(in srgb,var(--line),transparent 24%)}.reading-config__summary{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.07)}.reading-config__summary div{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.reading-config__summary span,.reading-config__summary strong{font-size:.76rem;font-weight:900;text-transform:uppercase}.reading-config__summary span{color:var(--muted)}.reading-config__summary p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.4}.reading-config__grid{grid-template-columns:1fr}.reading-config__custom{display:grid;gap:10px}.reading-config__custom-row{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:10px}.dem-calibration-fullscreen,.reading-custom-fullscreen,.reading-preview-fullscreen,.reading-scale-calibration-fullscreen{position:fixed;inset:0;z-index:220;display:grid;grid-template-rows:auto minmax(0,1fr);background:var(--bg);color:var(--ink)}.reading-preview-fullscreen{background:#e8ebe8}.reading-preview-fullscreen,.reading-scale-calibration-fullscreen{top:var(--electron-titlebar-height,0);color:#111827;height:calc(100vh - var(--electron-titlebar-height, 0px))}.reading-scale-calibration-fullscreen{background:#f5f6f2}:root[data-testing-fullscreen=true] .dem-calibration-fullscreen,:root[data-testing-fullscreen=true] .reading-scale-calibration-fullscreen{top:0;height:100vh}.reading-custom-fullscreen__bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;padding:14px 22px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface),var(--bg) 30%)}.reading-custom-fullscreen__bar>div:first-child{display:grid;gap:3px}.reading-custom-fullscreen__bar strong{font-size:1rem;letter-spacing:0}.reading-preview-fullscreen__bar{position:fixed;top:var(--electron-titlebar-height,0);right:0;left:0;z-index:2;display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:64px;padding:12px 18px 12px 24px;background:rgba(255,255,255,.9);border-bottom:1px solid #cfd6d0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.reading-preview-fullscreen__bar>div{display:grid;gap:3px;min-width:0}.reading-preview-fullscreen__bar strong{overflow:hidden;font-size:1rem;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.reading-preview-fullscreen__close{display:inline-grid;width:38px;height:38px;place-items:center;border:1px solid #cfd6d0;border-radius:999px;background:#fff;color:#111827}.reading-preview-fullscreen__close svg{width:18px;height:18px}.reading-preview-fullscreen__stage{position:absolute;inset:64px 0 0;overflow:hidden;background:#fff}.reading-scale-calibration-fullscreen__body{display:grid;grid-template-columns:minmax(0,1fr) 320px;min-height:0}.reading-scale-calibration-fullscreen__stage{position:relative;min-height:0;overflow:hidden;background:#fff}.reading-scale-calibration-fullscreen__controls{display:grid;align-content:start;gap:14px;padding:20px;border-left:1px solid var(--line);background:color-mix(in srgb,var(--surface),var(--bg) 20%)}.reading-scale-calibration-fullscreen__controls label{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) 56px;align-items:center;gap:10px;font-size:.82rem;font-weight:800}.reading-scale-calibration-fullscreen__controls input{width:100%;accent-color:var(--accent)}.reading-scale-calibration-fullscreen__controls em{color:var(--muted);font-style:normal;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.reading-card-calibration{position:absolute;right:34px;bottom:34px;z-index:1;display:grid;width:323.5px;height:204.1px;place-items:center;border:1px solid #9aa3af;border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(226,232,240,.94)),repeating-linear-gradient(90deg,rgba(148,163,184,.12) 0 1px,transparent 1px 12px);box-shadow:0 12px 28px rgba(15,23,42,.14);color:#475569;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;transform:scale(var(--reading-display-scale,1));transform-origin:right bottom;pointer-events:none}.reading-custom-fullscreen__actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.reading-custom-fullscreen__body{display:grid;grid-template-columns:minmax(340px,420px) minmax(0,1fr);min-height:0}.reading-custom-fullscreen__editor{display:grid;align-content:start;gap:14px;min-height:0;padding:20px;overflow:auto;border-right:1px solid var(--line);background:color-mix(in srgb,var(--surface),var(--bg) 20%)}.reading-custom-fullscreen__editor .reading-config__select textarea:first-of-type{min-height:220px}.reading-custom-fullscreen__preview{min-height:0;padding:26px;overflow:auto;background:#e8ebe8}.reading-custom-preview-page{position:relative;width:min(100%,calc(var(--reading-body-width, 400px) + 160px));min-height:min(760px,calc(100vh - 130px));margin:0 auto;padding:58px 72px;background:#fff;color:#111827;box-shadow:0 24px 60px rgba(15,23,42,.18)}.reading-custom-preview-page__marker{position:absolute;top:64px;left:42px;width:10px;height:10px;border-radius:999px;background:#111827}.reading-custom-preview-page article{width:min(var(--reading-body-width,400px),100%);margin:0 auto;font-family:Georgia,Times New Roman,serif}.reading-custom-preview-page h2{margin:0 0 24px;font-size:1rem;font-family:inherit;font-weight:700;text-align:center}.reading-custom-preview-page p{margin:0;font-size:var(--reading-font-size,30px);line-height:1.45;white-space:pre-line}.reading-custom-preview-page--live{min-height:calc(100vh - 120px)}.dem-calibration-fullscreen__body{display:grid;grid-template-columns:minmax(0,1fr) 320px;min-height:0}.dem-calibration-fullscreen{top:var(--electron-titlebar-height,0);height:calc(100vh - var(--electron-titlebar-height, 0px))}.dem-calibration-fullscreen__stage{position:relative;display:grid;min-height:0;place-items:center;overflow:hidden;padding:24px;background:#fff;color:#111827}.dem-calibration-plate{display:grid;gap:8px;justify-items:center;width:min(92vw,1000px);max-width:100%;max-height:88vh;transform:scale(var(--dem-scale,1));transform-origin:center}.dem-calibration-plate>span{color:rgba(17,24,39,.56);font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.dem-calibration-plate img{display:block;width:100%;max-height:88vh;object-fit:contain;filter:brightness(0);opacity:1}.dem-calibration-card{position:absolute;right:34px;bottom:34px;display:grid;width:323.5px;height:204.1px;place-items:center;border-radius:12px;border:1px solid #9aa3af;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(226,232,240,.94)),repeating-linear-gradient(90deg,rgba(148,163,184,.12) 0 1px,transparent 1px 12px);box-shadow:0 12px 28px rgba(15,23,42,.14);color:#475569;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;transform:scale(var(--dem-card-scale,1));transform-origin:right bottom;pointer-events:none}.dem-calibration-fullscreen__controls{display:grid;align-content:start;gap:14px;padding:20px;border-left:1px solid var(--line);background:color-mix(in srgb,var(--surface),var(--bg) 20%)}.dem-calibration-fullscreen__controls label{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) 56px;align-items:center;gap:10px;font-size:.82rem;font-weight:800}.dem-calibration-fullscreen__controls input{width:100%;accent-color:var(--accent)}.dem-calibration-fullscreen__controls em{color:var(--muted);font-style:normal;text-align:right}.hess-target-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;border:1px solid color-mix(in srgb,var(--line),transparent 12%);border-radius:10px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.hess-target-preview__item{position:relative;display:grid;min-height:max(86px,calc(var(--hess-target-size, 30px) + 42px));place-items:center;overflow:hidden;border:1px solid rgba(127,127,127,.24);border-radius:8px;background:color-mix(in srgb,var(--hess-bg,#fff),transparent 10%)}.hess-target-preview__item>span{position:absolute;left:8px;top:7px;color:color-mix(in srgb,var(--ink),var(--muted) 40%);font-size:.66rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.hess-target-preview .oculo-hess-test__circle,.hess-target-preview .oculo-hess-test__crosshair{position:relative;left:auto;top:auto;transform:none}.oculo-hess-options .hess-target-preview{border-color:rgba(255,255,255,.16)}.oculo-hess-options .hess-target-preview__item>span{color:rgba(255,255,255,.68)}.oculo-stage-shell{overflow:hidden;border-radius:18px;border:1px solid var(--line);background:#050505;transition:background-color .18s ease}.oculo-stage-shell:fullscreen{border:0;border-radius:0;background:#000}.oculo-stage-shell.is-running{cursor:none}.oculo-stage-shell.is-color-field-microphone,.oculo-stage-shell.is-color-field-microphone *,.oculo-stage-shell.is-nystagmus-preview,.oculo-stage-shell.is-nystagmus-preview *,.oculo-stage-shell.is-worth4dot-interactive,.oculo-stage-shell.is-worth4dot-interactive *{cursor:auto}.oculo-stage-shell.is-color-field-microphone button,.oculo-stage-shell.is-worth4dot-interactive button,.oculo-stage-shell.is-worth4dot-interactive input{cursor:pointer}.oculo-stage-shell.is-light-test,.oculo-stage-shell.is-light-test .oculo-stage,.oculo-stage-shell.is-light-test:fullscreen{background:#fff}.oculo-stage-shell.is-processing-results,.oculo-stage-shell.is-processing-results .oculo-stage,.oculo-stage-shell.is-processing-results:fullscreen{background:#050505}.oculo-runner.is-autostart-launch .oculo-stage-shell{position:fixed;inset:0;z-index:180;border:0;border-radius:0}.oculo-stage{position:relative;min-height:min(72vh,680px);aspect-ratio:16/9;width:100%;max-height:100vh;margin:0 auto;overflow:hidden;background:#000;transition:background-color .18s ease}.oculo-stage-shell:fullscreen .oculo-stage{width:100vw;height:100vh;min-height:100vh;aspect-ratio:auto}.oculo-runner.is-autostart-launch .oculo-stage{width:100vw;height:100vh;min-height:100vh;aspect-ratio:auto}.oculo-runner.is-autostart-launch .oculo-stage-shell.is-autostart-pending,.oculo-runner.is-autostart-launch .oculo-stage-shell.is-autostart-pending .oculo-stage{background:#000}.oculo-runner.is-autostart-launch .oculo-stage-shell.is-autostart-pending.is-light-test,.oculo-runner.is-autostart-launch .oculo-stage-shell.is-autostart-pending.is-light-test .oculo-stage{background:#fff}.oculo-runner.is-autostart-launch .oculo-stage-shell.is-autostart-pending .oculo-stage__idle{opacity:0;pointer-events:none}.oculo-countdown,.oculo-stage__break,.oculo-stage__idle,.oculo-stage__processing{position:absolute;inset:0;padding:24px;color:#fff;text-align:center}.oculo-stage__idle{display:grid;place-items:center;align-content:center;gap:10px}.oculo-stage__processing{display:grid;place-items:center;align-content:center;gap:14px;background:#050505}.oculo-stage__break{display:grid;place-items:center;align-content:center;gap:16px;background:#000}.oculo-countdown{display:block}.oculo-countdown span,.oculo-stage__break span,.oculo-stage__idle span,.oculo-stage__processing span{color:rgba(255,255,255,.62);font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.oculo-stage__break strong,.oculo-stage__idle strong,.oculo-stage__processing strong{font-size:clamp(1.8rem,5vw,4.6rem)}.oculo-countdown p,.oculo-stage__break p,.oculo-stage__idle p,.oculo-stage__processing p{max-width:560px;margin:0;color:rgba(255,255,255,.72);font-size:clamp(1rem,1.8vw,1.4rem)}.oculo-stage__processing-bar{position:relative;width:min(420px,72vw);height:8px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.14)}.oculo-stage__processing-bar i{position:absolute;inset:0 auto 0 0;width:44%;border-radius:inherit;background:#5eead4;box-shadow:0 0 18px rgba(94,234,212,.4);animation:oculo-processing-bar 1.2s ease-in-out infinite}.oculo-stage__processing-steps{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;max-width:min(560px,82vw);margin:0;padding:0;list-style:none;color:rgba(255,255,255,.66);font-size:clamp(.82rem,1.3vw,.96rem)}.oculo-stage__processing-steps li{display:inline-flex;align-items:center;gap:8px}.oculo-stage__processing-steps li:before{content:"";width:7px;height:7px;border-radius:999px;background:#5eead4;opacity:.72}@keyframes oculo-processing-bar{0%{transform:translateX(-115%)}48%,52%{transform:translateX(64%)}to{transform:translateX(232%)}}.oculo-hess-options{max-width:640px;margin-top:8px;padding:14px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.08)}.oculo-hess-glasses-note{display:grid;grid-template-columns:minmax(120px,168px) minmax(0,1fr);gap:14px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(0,0,0,.16);text-align:left}.oculo-hess-glasses-note strong{display:block;color:#fff;font-size:.96rem;line-height:1.2}.oculo-hess-glasses-note span{display:block;margin-top:4px;color:rgba(255,255,255,.68);font-size:.82rem;line-height:1.35}.glasses-wear-preview--hess img{filter:invert(1) drop-shadow(0 0 8px rgba(255,255,255,.1))}.oculo-hess-options__slider em{color:rgba(255,255,255,.62)}@media (max-width:640px){.oculo-hess-glasses-note{grid-template-columns:1fr;justify-items:center;text-align:center}.glasses-wear-preview--hess{width:min(180px,68vw)}}.oculo-stage__break-count{display:grid;width:clamp(72px,9vw,104px);aspect-ratio:1;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#fff;font-size:clamp(2.1rem,5vw,4rem);font-weight:820;line-height:1}.oculo-stage__break--manual{cursor:pointer}.oculo-stage__break-prompt{margin-top:6px;padding:12px 18px;border:1px solid rgba(255,255,255,.24);border-radius:999px;color:rgba(255,255,255,.86);font-size:clamp(.98rem,1.5vw,1.25rem);font-weight:760}.oculo-stage__break--calibration{cursor:default}.oculo-stage__break--calibration .session-action{min-width:220px}.oculo-cue-copy{position:absolute;left:50%;top:calc(50% - clamp(78px, 11vh, 112px));width:min(620px,calc(100% - 48px));transform:translate(-50%,4px);display:grid;pointer-events:none;animation:oculo-cue-copy-fade 3s ease forwards;opacity:0}.oculo-cue-copy p{justify-self:center;color:#fff;font-size:clamp(1.1rem,2vw,1.8rem);font-weight:760;line-height:1.15}.oculo-target{position:absolute;width:clamp(11px,1.1vw,17px);height:clamp(11px,1.1vw,17px);transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:999px;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.95),rgba(255,255,255,.7) 28%,#fff 60%),#fff;box-shadow:0 0 14px rgba(255,255,255,.36);color:#050505;font-weight:900}.oculo-target--cue{animation:oculo-pulse 1s ease-in-out infinite}.oculo-target.is-transition-pause{animation:oculo-transition-soft-fade .52s ease-out both}.oculo-target--nine-point-gaze{width:20px;height:20px;background:transparent;box-shadow:none}.oculo-target--nine-point-gaze:after,.oculo-target--nine-point-gaze:before{position:absolute;inset:0;border-radius:inherit;content:""}.oculo-target--nine-point-gaze:before{border:2px solid rgba(255,255,255,.25);border-top-color:#ffffff;opacity:calc(.35 + var(--calibration-progress, 0) * .65);animation:calibration-spin var(--calibration-spin-duration,1.2s) linear infinite;transition:opacity .12s ease,border-color .12s ease}.oculo-target--nine-point-gaze:after{inset:5px;background:#ffffff;box-shadow:0 0 10px rgba(255,255,255,.58);transform:scale(calc(1 - var(--calibration-progress, 0) * .18));transition:transform 80ms linear,background .12s ease,box-shadow .12s ease}.oculo-target--nine-point-gaze i,.oculo-target--nine-point-gaze span{position:absolute;inset:-5px;border:1px solid rgba(43,180,148,.54);border-radius:inherit;opacity:0;transform:scale(.8);transition:opacity .14s ease,transform .14s ease}.oculo-target--nine-point-gaze i{inset:-9px;border-color:rgba(255,255,255,.36);transform:scale(.68)}.oculo-target--nine-point-gaze.is-dwelling:before{border-color:#2bb494 rgba(43,180,148,.38) rgba(43,180,148,.38)}.oculo-target--nine-point-gaze.is-dwelling:after{background:color-mix(in srgb,#ffffff,#2bb494 calc(var(--calibration-progress, 0) * 75%));box-shadow:0 0 15px rgba(43,180,148,calc(.38 + var(--calibration-progress, 0) * .34))}.oculo-target--nine-point-gaze.is-dwelling span{opacity:1;transform:scale(calc(.94 + var(--calibration-progress, 0) * .24))}.oculo-target--nine-point-gaze.is-dwelling i{opacity:calc(.24 + var(--calibration-progress, 0) * .32);transform:scale(calc(.8 + var(--calibration-progress, 0) * .42))}.oculo-target--nine-point-gaze.is-capturing:before{border-color:rgba(43,180,148,.78);opacity:0;transform:scale(1.9);transition:opacity .32s ease,transform .32s ease}.oculo-target--nine-point-gaze.is-capturing:after{background:#2bb494;box-shadow:0 0 0 12px rgba(43,180,148,0),0 0 34px rgba(43,180,148,.78);transform:scale(1.24);animation:calibration-burst .36s ease-out both}.oculo-target--nine-point-gaze.is-capturing span{border-color:rgba(43,180,148,.78);opacity:0;transform:scale(1.75);transition:opacity .32s ease,transform .32s ease}.oculo-target--nine-point-gaze.is-capturing i{opacity:0;transform:scale(2.05);transition:opacity .32s ease,transform .32s ease}.oculo-fixation-instruction{position:absolute;left:50%;top:calc(50% - clamp(82px, 13vh, 132px));z-index:2;width:min(680px,calc(100% - 48px));transform:translate(-50%,4px);display:grid;pointer-events:none;opacity:1}.oculo-fixation-instruction.is-timed{animation:oculo-fixation-instruction-fade var(--fixation-instruction-fade-duration,.28s) ease forwards;animation-delay:var(--fixation-instruction-fade-delay,0s)}.oculo-fixation-instruction p{justify-self:center;margin:0;color:#fff;font-size:clamp(1.05rem,1.8vw,1.65rem);font-weight:760;line-height:1.15}@keyframes oculo-fixation-instruction-fade{0%{opacity:1;transform:translate(-50%,4px)}to{opacity:0;transform:translate(-50%,-2px)}}.oculo-circular-guide{position:absolute;left:50%;top:50%;z-index:0;width:33.3%;height:59.2%;transform:translate(-50%,-50%);pointer-events:none}.oculo-circular-guide span{position:absolute;left:50%;top:0;width:clamp(18px,2vw,30px);height:clamp(18px,2vw,30px);transform:translate(-50%,-50%) rotate(45deg);border-right:3px solid rgba(255,255,255,.88);border-top:3px solid rgba(255,255,255,.88);box-shadow:0 0 14px rgba(255,255,255,.22)}.oculo-circular-guide--counterclockwise span{transform:translate(-50%,-50%) rotate(225deg)}.oculo-target--cross,.oculo-target--fixation-four-dots,.oculo-target--fixation-x,.oculo-target--number,.oculo-target--nystagmus,.oculo-target--symbol,.oculo-target--x{width:clamp(34px,3.2vw,52px);height:clamp(34px,3.2vw,52px)}.oculo-target--cross:before,.oculo-target--fixation-x:before,.oculo-target--x:before{content:"";position:absolute;inset:28%;background:linear-gradient(45deg,transparent 42%,currentColor 0,currentColor 58%,transparent 0),linear-gradient(-45deg,transparent 42%,currentColor 0,currentColor 58%,transparent 0)}.oculo-target--fixation-x{width:clamp(22px,2.2vw,34px);height:clamp(22px,2.2vw,34px);background:transparent;box-shadow:none;color:#fff}.oculo-target--fixation-x:before{inset:10%;background:linear-gradient(45deg,transparent 46.5%,currentColor 0,currentColor 53.5%,transparent 0),linear-gradient(-45deg,transparent 46.5%,currentColor 0,currentColor 53.5%,transparent 0)}.oculo-target--fixation-four-dots{--fixation-dot-offset:clamp(20px,2.1vw,34px);width:clamp(58px,5.4vw,92px);height:clamp(58px,5.4vw,92px);background:transparent;box-shadow:none}.oculo-target--fixation-four-dots:before{content:"";position:absolute;left:50%;top:50%;width:clamp(8px,.8vw,13px);height:clamp(8px,.8vw,13px);transform:translate(-50%,-50%);border-radius:999px;background:transparent;box-shadow:0 calc(var(--fixation-dot-offset) * -1) 0 #fff,var(--fixation-dot-offset) 0 0 #fff,0 var(--fixation-dot-offset) 0 #fff,calc(var(--fixation-dot-offset) * -1) 0 0 #fff}.oculo-target--cross{background:transparent;border:3px solid #fff;color:#fff}.oculo-target--number,.oculo-target--symbol{font-size:clamp(1.1rem,2vw,1.9rem)}.oculo-target--nystagmus{background:transparent;border:3px solid #fff;box-shadow:0 0 34px rgba(255,255,255,.34)}.oculo-target--nystagmus:before{content:"";width:8px;height:8px;border-radius:999px;background:#fff}.oculo-nystagmus{position:absolute;inset:0;overflow:hidden;background:linear-gradient(90deg,transparent calc(50% - 1px),rgba(255,255,255,.09) calc(50% - 1px),rgba(255,255,255,.09) calc(50% + 1px),transparent calc(50% + 1px)),#050505}.oculo-nystagmus svg{position:absolute;inset:0;width:100%;height:100%}.oculo-nystagmus__center{stroke:rgba(255,255,255,.24);stroke-width:1.4;stroke-dasharray:7 9}.oculo-nystagmus__origin{stroke:rgba(255,255,255,.16);stroke-width:1.2;stroke-dasharray:5 10}.oculo-nystagmus__trace{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5;vector-effect:non-scaling-stroke}.oculo-nystagmus__trace--left{stroke:#5cae58}.oculo-nystagmus__trace--right{stroke:#ef4444}.oculo-nystagmus__fixation{position:absolute;left:50%;top:50%;width:12px;height:12px;transform:translate(-50%,-50%);border-radius:999px;background:#fff;box-shadow:0 0 0 7px rgba(255,255,255,.1)}.oculo-nystagmus__timer{position:absolute;right:clamp(20px,3vw,44px);top:clamp(18px,3vh,38px);color:rgba(255,255,255,.72);font-size:clamp(.9rem,1.2vw,1.15rem);font-weight:800;letter-spacing:.08em}.oculo-nystagmus-controls{position:absolute;right:clamp(20px,3vw,44px);top:50%;z-index:4;display:grid;gap:12px;width:min(230px,28vw);transform:translateY(-50%)}.oculo-nystagmus-controls__modes{display:grid;gap:6px;padding:6px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(8,12,12,.78)}.oculo-nystagmus-controls__modes button{min-height:34px;border:0;border-radius:5px;color:rgba(255,255,255,.72);background:transparent;font-size:.78rem;font-weight:750}.oculo-nystagmus-controls__modes button.is-active,.oculo-nystagmus-controls__modes button:hover{color:#fff;background:rgba(255,255,255,.14)}.oculo-nystagmus-close{position:absolute;right:clamp(18px,2.6vw,36px);top:clamp(16px,2.6vh,32px);z-index:5;display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:rgba(255,255,255,.78);background:rgba(8,12,12,.68);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.oculo-nystagmus-close:focus-visible,.oculo-nystagmus-close:hover{color:#fff;background:rgba(255,255,255,.14)}.oculo-nystagmus-close svg{width:18px;height:18px}.oculo-nystagmus__instruction{position:absolute;left:50%;top:calc(50% - 86px);z-index:4;width:min(620px,calc(100% - 48px));transform:translateX(-50%);pointer-events:none;text-align:center}.oculo-nystagmus__instruction p{margin:0;color:#fff;font-size:clamp(1.1rem,1.8vw,1.7rem);font-weight:780}.oculo-hess-crosshair{position:absolute;width:clamp(34px,3.2vw,52px);height:clamp(34px,3.2vw,52px);transform:translate(-50%,-50%);color:#3b82f6}.oculo-hess-crosshair:after,.oculo-hess-crosshair:before{content:"";position:absolute;left:50%;top:15%;width:3px;height:70%;transform:translateX(-50%);background:currentColor}.oculo-hess-crosshair:after{left:15%;top:50%;width:70%;height:3px;transform:translateY(-50%)}.oculo-hess-test{position:absolute;inset:0;overflow:hidden;cursor:none}.oculo-hess-test--mouse{cursor:none}.oculo-hess-test__prompt,.oculo-hess-test__status{position:absolute;z-index:3;left:50%;transform:translateX(-50%);color:rgba(20,24,27,.72);font-size:.82rem;letter-spacing:0;text-align:center;pointer-events:none}.oculo-hess-test__status{top:24px;display:flex;gap:12px;align-items:center}.oculo-hess-test__prompt{bottom:24px}.oculo-hess-test__circle,.oculo-hess-test__crosshair{position:absolute;z-index:2;width:var(--hess-target-size,30px);height:var(--hess-target-size,30px);box-sizing:border-box;transform:translate(-50%,-50%);pointer-events:none;--hess-cross-stroke:max(2px,calc(var(--hess-target-size, 30px) * 0.1));--hess-ring-stroke:max(3px,calc(var(--hess-target-size, 30px) * 0.16));--hess-dot-ring-stroke:max(4px,calc(var(--hess-target-size, 30px) * 0.3));border-radius:999px}.oculo-hess-test__circle:after,.oculo-hess-test__circle:before,.oculo-hess-test__crosshair:after,.oculo-hess-test__crosshair:before{content:"";position:absolute;background:currentColor}.oculo-hess-test__circle--cross{border:var(--hess-ring-stroke) solid}.oculo-hess-test__circle--cross:before{left:50%;top:calc(var(--hess-ring-stroke) * -1);width:var(--hess-cross-stroke);height:calc(100% + var(--hess-ring-stroke) * 2);transform:translateX(-50%);background:var(--hess-bg,transparent)}.oculo-hess-test__circle--cross:after{left:calc(var(--hess-ring-stroke) * -1);top:50%;width:calc(100% + var(--hess-ring-stroke) * 2);height:var(--hess-cross-stroke);transform:translateY(-50%);background:var(--hess-bg,transparent)}.oculo-hess-test__circle--dot{border:var(--hess-dot-ring-stroke) solid}.oculo-hess-test__circle--dot:after,.oculo-hess-test__circle--dot:before{content:none}.oculo-hess-test__crosshair--cross:before{left:50%;top:0;width:var(--hess-cross-stroke);height:100%;transform:translateX(-50%)}.oculo-hess-test__crosshair--cross:after{left:0;top:50%;width:100%;height:var(--hess-cross-stroke);transform:translateY(-50%)}.oculo-hess-test__crosshair--dot{width:calc(var(--hess-target-size, 30px) * .4);height:calc(var(--hess-target-size, 30px) * .4);background:currentColor}.oculo-hess-test__crosshair--dot:after,.oculo-hess-test__crosshair--dot:before{content:none}.oculo-reaction{position:absolute;inset:0;background:#000;color:#fff}.oculo-reaction__path{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.oculo-reaction__path line{stroke:rgba(255,255,255,.78);stroke-width:.7;stroke-linecap:round;filter:drop-shadow(0 0 5px rgba(255,255,255,.28))}.oculo-reaction--center .oculo-reaction__path line{opacity:0}.oculo-reaction__center,.oculo-reaction__target{position:absolute;width:clamp(54px,5.6vw,88px);height:clamp(54px,5.6vw,88px);transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:999px;background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.96),rgba(255,255,255,.78) 30%,#f8fafc 64%),#fff;box-shadow:0 0 0 2px rgba(255,255,255,.18),0 0 28px rgba(255,255,255,.28);color:#050505;font-weight:900}.oculo-reaction__center.is-awaiting{animation:oculo-reaction-ready .95s ease-in-out infinite}.oculo-reaction__center span{position:absolute;top:calc(100% + 12px);min-width:100px;color:rgba(255,255,255,.72);font-size:.84rem;font-weight:800;text-align:center;text-transform:uppercase}.oculo-reaction__target{font-size:clamp(1.25rem,2.6vw,2.4rem);animation:oculo-reaction-target-in .18s ease-out both}.oculo-reaction__target img{width:72%;height:72%;object-fit:contain;filter:brightness(0)}.oculo-reaction__target-cue{position:absolute;z-index:3;width:max-content;max-width:min(220px,24vw);padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.92);color:#050505;font-size:clamp(.84rem,1.2vw,1.05rem);font-weight:800;line-height:1;text-align:center;pointer-events:none;transform:translate(-50%,calc(-100% - 46px));animation:oculo-reaction-target-cue-in .18s ease-out both}.oculo-reaction__target-cue--below{transform:translate(-50%,46px)}.oculo-reaction__target.is-popping{animation:oculo-reaction-pop .26s ease-out forwards}.oculo-countdown--saccade{background:#000}.oculo-saccade-cue-copy{position:absolute;left:50%;top:50%;z-index:2;width:min(720px,calc(100% - 48px));transform:translate(-50%,-50%);display:grid;pointer-events:none;animation:oculo-saccade-cue-fade 3s ease forwards}.oculo-saccade-cue-copy p{justify-self:center;color:#fff;font-size:clamp(1.15rem,2.2vw,2rem);font-weight:780;line-height:1.15}.oculo-saccade-preview{position:absolute;inset:0}.oculo-saccade-sphere{position:absolute;width:clamp(54px,5.6vw,88px);height:clamp(54px,5.6vw,88px);transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:999px;background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.96),rgba(255,255,255,.78) 30%,#f8fafc 64%),#fff;box-shadow:0 0 0 2px rgba(255,255,255,.18),0 0 28px rgba(255,255,255,.28)}.oculo-saccade-sphere--preview{overflow:hidden}.oculo-saccade-sphere--preview:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at 34% 28%,rgba(236,253,245,.98),rgba(88,222,140,.95) 33%,#16a34a 68%),#22c55e;box-shadow:inset 0 0 0 1px rgba(236,253,245,.24),0 0 30px rgba(34,197,94,.38);opacity:0}.oculo-saccade-sphere--preview-first{animation:oculo-saccade-preview-first var(--saccade-preview-cycle,2s) ease-in-out infinite}.oculo-saccade-sphere--preview-first:after{animation:oculo-saccade-preview-first-color var(--saccade-preview-cycle,2s) step-end infinite}.oculo-saccade-sphere--preview-second{animation:oculo-saccade-preview-second var(--saccade-preview-cycle,2s) ease-in-out infinite}.oculo-saccade-sphere--preview-second:after{animation:oculo-saccade-preview-second-color var(--saccade-preview-cycle,2s) step-end infinite}.oculo-saccade-sphere--active{background:radial-gradient(circle at 34% 28%,rgba(236,253,245,.98),rgba(88,222,140,.95) 33%,#16a34a 68%),#22c55e;box-shadow:0 0 0 2px rgba(34,197,94,.2),0 0 32px rgba(34,197,94,.38);animation:oculo-saccade-run-flash var(--saccade-run-flash-ms,.5s) ease-in-out both}.oculo-reaction__legend{position:absolute;top:clamp(18px,3vh,32px);right:clamp(18px,3vw,36px);display:grid;gap:8px;padding:12px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:rgba(0,0,0,.34);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.oculo-reaction__legend span{display:grid;grid-template-columns:28px 42px;gap:10px;align-items:center}.oculo-reaction__legend strong{display:grid;place-items:center;width:26px;height:26px;border-radius:5px;background:rgba(255,255,255,.92);color:#050505;font-size:.86rem}.oculo-reaction__legend i{display:grid;width:42px;height:42px;place-items:center;border-radius:999px;background:rgba(255,255,255,.94);box-shadow:inset 0 0 0 1px rgba(5,5,5,.08);font-style:normal}.oculo-reaction__legend i img{width:72%;height:72%;object-fit:contain;filter:brightness(0)}@keyframes oculo-pulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(.55)}}@keyframes oculo-reaction-ready{0%,to{transform:translate(-50%,-50%) scale(1);box-shadow:0 0 0 2px rgba(255,255,255,.18),0 0 28px rgba(255,255,255,.28)}50%{transform:translate(-50%,-50%) scale(.92);box-shadow:0 0 0 7px rgba(255,255,255,.08),0 0 34px rgba(255,255,255,.36)}}@keyframes oculo-reaction-target-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.68)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes oculo-reaction-target-cue-in{0%{opacity:0}to{opacity:1}}@keyframes oculo-reaction-pop{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.9)}}@keyframes oculo-saccade-cue-fade{0%{opacity:0;transform:translate(-50%,calc(-50% + 4px))}12%,72%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,calc(-50% - 6px))}}@keyframes oculo-saccade-preview-first{0%,49.999%{opacity:1;transform:translate(-50%,-50%) scale(1)}50%,to{opacity:.62;transform:translate(-50%,-50%) scale(.94)}}@keyframes oculo-saccade-preview-second{0%,49.999%{opacity:.62;transform:translate(-50%,-50%) scale(.94)}50%,to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes oculo-saccade-preview-first-color{0%,49.999%{opacity:1}50%,to{opacity:0}}@keyframes oculo-saccade-preview-second-color{0%,49.999%{opacity:0}50%,to{opacity:1}}@keyframes oculo-saccade-run-flash{0%{opacity:.62;transform:translate(-50%,-50%) scale(.88)}18%,82%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:.8;transform:translate(-50%,-50%) scale(.94)}}@keyframes oculo-transition-soft-fade{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:.32;transform:translate(-50%,-50%) scale(.82)}}@keyframes oculo-cue-copy-fade{0%{opacity:0;transform:translate(-50%,4px)}18%,68%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-6px)}}.oculo-dem-plate,.oculo-reading-page,.oculo-worth-page{position:absolute;inset:0;display:grid;place-items:center;background:#fff;color:#111827}.oculo-dem-plate{padding:clamp(18px,3vw,48px)}.oculo-dem-plate__frame{position:relative;display:grid;place-items:center;width:min(92vw,calc(88vh * 2551 / 3150),1000px);aspect-ratio:2551/3150;max-height:88vh;transform:scale(var(--dem-scale,1));transform-origin:center}.oculo-dem-plate strong{position:absolute;left:20px;top:18px;color:rgba(17,24,39,.72);font-size:.82rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.oculo-dem-plate img{width:100%;max-height:88vh;object-fit:contain;filter:brightness(0);opacity:1}.oculo-dem-plate--active img{animation:oculo-dem-plate-fade-in .36s ease-out both}.oculo-dem-plate--active .oculo-dem-start-target{animation:oculo-dem-target-fade-out .26s ease-out .12s both}.oculo-dem-plate--cue .oculo-dem-plate__frame{width:min(92vw,calc(88vh * 2551 / 3150),1000px);max-height:88vh}.oculo-dem-start-target{position:absolute;left:var(--dem-start-x,38%);top:var(--dem-start-y,30%);width:10px;height:10px;border-radius:999px;background:#111827;box-shadow:0 0 0 5px rgba(17,24,39,.1);transform:translate(-50%,-50%);animation:reading-passage-fade-in .52s ease both}@keyframes oculo-dem-plate-fade-in{0%{opacity:0}to{opacity:1}}@keyframes oculo-dem-target-fade-out{0%{opacity:1}to{opacity:0}}.oculo-dem-voice-status{position:absolute;left:20px;bottom:18px;color:rgba(17,24,39,.52);font-size:.76rem;font-style:normal;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.oculo-dem-plate span,.oculo-reading-page>span:last-child,.oculo-worth-page>span:last-child{position:absolute;right:20px;bottom:18px;color:rgba(17,24,39,.58);font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.oculo-reading-page{inset:auto;left:50%;top:50%;width:1920px;height:1080px;display:block;overflow:hidden;padding:0;transform:translate(-50%,-50%) scale(var(--reading-design-scale,1));transform-origin:center}.oculo-reading-page article{position:absolute;top:50%;right:calc(var(--reading-body-width, 400px) + 10px);left:calc(var(--reading-body-width, 400px) + 10px);width:auto;color:#111827;font-family:Arial,Helvetica,sans-serif;line-height:1;transform:translateY(-50%)}.oculo-reading-page h2{margin:0 0 28px;color:#111827;font-size:clamp(2rem,4vw,4rem);line-height:1}.oculo-reading-page p{margin:0;white-space:pre-wrap;font-size:calc(var(--reading-font-size, 30px) * 1.06)}.oculo-reading-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.oculo-reading-marker{position:absolute;left:var(--reading-marker-x,var(--reading-body-width,400px));top:var(--reading-marker-y,50%);width:10px;height:10px;border-radius:999px;background:#111827;box-shadow:0 0 0 5px rgba(17,24,39,.1);transform:translate(-50%,-50%)}.oculo-reading-page--preview{display:block}.oculo-reading-page--cue .oculo-reading-svg,.oculo-reading-page--cue article{opacity:0}.oculo-reading-page--active .oculo-reading-svg,.oculo-reading-page--active article{animation:reading-passage-fade-in .52s ease both}.oculo-reading-page--preview .oculo-reading-svg,.oculo-reading-page--preview article{animation:none}.oculo-reading-marker--fade{animation:reading-marker-fade-out .52s ease both}.oculo-reading-questions{position:absolute;inset:0;display:grid;place-items:center;padding:clamp(18px,3vw,44px);background:#f8fafc;color:#111827;overflow:hidden}.oculo-reading-questions__panel{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:clamp(10px,1.6vh,18px);width:min(1240px,100%);height:min(760px,calc(100vh - 44px));overflow:hidden;padding:clamp(18px,2.4vw,30px);border:1px solid rgba(15,23,42,.12);border-radius:8px;background:#ffffff;box-shadow:0 22px 60px rgba(15,23,42,.14)}.oculo-reading-questions__panel h2{margin:0;color:#111827;font-size:clamp(1.35rem,1.8vw,2rem);line-height:1.08}.oculo-reading-questions__list{display:grid;grid-auto-rows:minmax(0,1fr);gap:6px;min-height:0}.oculo-reading-questions__row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:center;margin:0;padding:8px 10px;border:1px solid rgba(15,23,42,.12);border-radius:8px;background:#ffffff}.oculo-reading-questions__row:nth-child(2n){background:#f8fafc}.oculo-reading-questions__number{display:grid;width:26px;height:26px;place-items:center;border-radius:999px;background:rgba(15,118,110,.1);color:#0f766e;font-size:.78rem;font-weight:900}.oculo-reading-questions__row p{margin:0;color:#111827;font-size:clamp(.86rem,1.16vw,1rem);font-weight:850;line-height:1.25}.oculo-reading-questions__answers{display:flex;gap:8px;justify-content:flex-end;white-space:nowrap}.oculo-reading-questions__answers button{min-width:76px;min-height:34px;padding:0 14px;border:1px solid rgba(15,23,42,.16);border-radius:8px;background:#ffffff;color:#111827;font-weight:850}.oculo-reading-questions__answers button.is-active{border-color:#0f766e;background:#0f766e;color:#ffffff}.oculo-reading-questions__panel>.session-action{justify-self:end}@keyframes reading-passage-fade-in{0%{opacity:0}to{opacity:1}}@keyframes reading-marker-fade-out{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.72)}}.oculo-worth-page{background:#151515}.glasses-calibration-fullscreen{position:fixed;inset:0;z-index:220;display:grid;grid-template-rows:auto minmax(0,1fr);min-width:100vw;min-height:100vh;background:#050607;color:#f8fafc}.glasses-calibration-fullscreen button,.glasses-calibration-fullscreen input,.glasses-calibration-fullscreen select{-webkit-app-region:no-drag}.glasses-calibration__bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-bottom:1px solid rgba(248,250,252,.12);background:rgba(5,6,7,.88)}.glasses-calibration__bar div:first-child{display:grid;gap:3px}.glasses-calibration__bar span{color:rgba(248,250,252,.55);font-size:.72rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.glasses-calibration__bar strong{font-size:1.05rem}.glasses-calibration__bar-actions{display:flex;gap:8px;align-items:center}.glasses-calibration-fullscreen .session-action{border-color:rgba(248,250,252,.24);background:rgba(248,250,252,.08);color:#f8fafc}.glasses-calibration-fullscreen .session-action--primary{border-color:#f8fafc;background:#f8fafc;color:#050607}.glasses-calibration__body{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,380px);min-height:0}.glasses-calibration__stage{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden;background:var(--glasses-background,#fff)}.glasses-calibration__stage>p{position:absolute;left:50%;top:clamp(24px,4vh,48px);z-index:2;width:min(560px,calc(100% - 48px));margin:0;color:rgba(248,250,252,.84);font-size:clamp(1rem,1.5vw,1.18rem);font-weight:800;line-height:1.35;text-align:center;text-shadow:0 2px 18px rgba(0,0,0,.5);transform:translateX(-50%)}.glasses-calibration-fullscreen--light .glasses-calibration__stage>p{color:rgba(16,18,20,.82);text-shadow:none}.glasses-calibration-guide{position:absolute;left:clamp(18px,3vw,42px);top:clamp(22px,4vh,46px);z-index:2;display:grid;gap:8px;width:clamp(138px,13vw,190px);padding:12px;border:1px solid rgba(248,250,252,.16);border-radius:12px;background:rgba(8,10,12,.58);color:#f8fafc;pointer-events:none}.glasses-calibration-fullscreen--light .glasses-calibration-guide{border-color:rgba(14,16,18,.14);background:rgba(255,255,255,.74);color:#151718}.glasses-calibration-guide__screen{position:relative;height:52px;border:2px solid;border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.14),transparent),var(--glasses-background,#fff)}.glasses-calibration-guide__screen:after{content:"";position:absolute;left:50%;bottom:-10px;width:46%;height:2px;border-radius:999px;background:currentColor;transform:translateX(-50%);opacity:.5}.glasses-calibration-guide__target{position:absolute;top:50%;width:12px;height:12px;border-radius:999px;transform:translate(-50%,-50%)}.glasses-calibration-guide__target--left{left:34%;background:var(--glasses-left-target,#f00)}.glasses-calibration-guide__target--right{left:66%;background:var(--glasses-right-target,#0ff)}.glasses-calibration-guide__glasses{position:relative;width:92%;aspect-ratio:1680/552;justify-self:center;color:currentColor;animation:glasses-guide-align 2.8s ease-in-out infinite;transform-origin:50% 0}.glasses-calibration-guide__glasses img{position:relative;z-index:2;display:block;width:100%;height:auto;filter:drop-shadow(0 2px 1px rgba(0,0,0,.16))}.glasses-calibration-fullscreen--dark .glasses-calibration-guide__glasses img{filter:invert(1) drop-shadow(0 2px 1px rgba(255,255,255,.14))}.glasses-calibration-guide__label{color:currentColor;font-size:.64rem;font-weight:900;letter-spacing:.1em;text-align:center;text-transform:uppercase;opacity:.72}@keyframes glasses-guide-align{0%,to{opacity:.78;transform:translateY(22px) scale(.86)}45%,72%{opacity:1;transform:translateY(2px) scale(1)}}.glasses-calibration__model{position:relative;display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));align-items:start;gap:14px clamp(18px,3vw,38px);width:min(620px,76%);filter:drop-shadow(0 20px 28px rgba(0,0,0,.28))}.glasses-calibration__frame-stage{position:relative;grid-column:1/-1;justify-self:center;width:100%;aspect-ratio:1680/552}.glasses-calibration__frame-image{position:relative;z-index:2;display:block;width:100%;height:auto;filter:none;pointer-events:none}.glasses-calibration-fullscreen--dark .glasses-calibration__frame-image{filter:invert(1) drop-shadow(0 0 1px rgba(255,255,255,.28))}.glasses-calibration__model .glasses-calibration__select,.glasses-calibration__model .glasses-calibration__slider{justify-self:center;width:min(320px,100%);padding:10px;border:1px solid rgba(248,250,252,.16);border-radius:10px;background:rgba(8,10,12,.78);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.glasses-calibration-fullscreen--light .glasses-calibration__model .glasses-calibration__select,.glasses-calibration-fullscreen--light .glasses-calibration__model .glasses-calibration__slider{border-color:rgba(14,16,18,.14);background:rgba(255,255,255,.84)}.glasses-calibration-fullscreen--light .glasses-calibration__model .glasses-calibration__select>span strong,.glasses-calibration-fullscreen--light .glasses-calibration__model .glasses-calibration__slider>span strong{color:rgba(14,16,18,.74)}.glasses-calibration-fullscreen--light .glasses-calibration__model .glasses-calibration__slider>span em{color:rgba(14,16,18,.54)}.glasses-calibration-fullscreen--light .glasses-calibration__model .glasses-calibration__slider input[type=range]::-webkit-slider-runnable-track{background:rgba(14,16,18,.28);box-shadow:inset 0 0 0 1px rgba(14,16,18,.24)}.glasses-calibration-fullscreen--light .glasses-calibration__model .glasses-calibration__slider input[type=range]::-moz-range-track{background:rgba(14,16,18,.28);box-shadow:inset 0 0 0 1px rgba(14,16,18,.24)}.glasses-calibration__target{position:absolute;z-index:1;display:block;border-radius:999px;transform:translate(-50%,-50%);top:37.5%;width:clamp(24px,3vw,44px);height:clamp(24px,3vw,44px);box-shadow:none}.glasses-calibration__target:after,.glasses-calibration__target:before{content:"";position:absolute;left:50%;top:50%;border-radius:999px;background:var(--glasses-background,#fff);transform:translate(-50%,-50%)}.glasses-calibration__target:before{width:72%;height:13%}.glasses-calibration__target:after{width:13%;height:72%}.glasses-calibration__target--left{left:31.4%;color:var(--glasses-left-target,#f00);background:var(--glasses-left-target,#f00)}.glasses-calibration__target--right{left:68.5%;color:var(--glasses-right-target,#0ff);background:var(--glasses-right-target,#0ff)}.glasses-calibration__controls{display:grid;align-content:start;gap:16px;min-height:0;padding:20px;overflow:auto;border-left:1px solid rgba(248,250,252,.12);background:#101214}.glasses-calibration__select{display:grid;gap:8px}.glasses-calibration__mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.glasses-calibration__mode button{min-height:38px;border:1px solid rgba(248,250,252,.2);border-radius:8px;background:rgba(248,250,252,.08);color:rgba(248,250,252,.7);font-weight:900}.glasses-calibration__mode button.is-active{border-color:rgba(248,250,252,.78);background:rgba(248,250,252,.18);color:#fff}.glasses-calibration__select>span strong,.glasses-calibration__slider>span strong{color:rgba(248,250,252,.78);font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.glasses-calibration__select>span{display:flex;justify-content:space-between;gap:12px;align-items:center}.glasses-calibration__select i{display:block;width:22px;height:22px;border-radius:8px;border:1px solid rgba(248,250,252,.5);box-shadow:none}.glasses-calibration__select select{width:100%;height:38px;border:1px solid rgba(248,250,252,.2);border-radius:8px;background:#1a1d20;color:#f8fafc;color-scheme:dark}.glasses-calibration__select option{background:#1a1d20;color:#f8fafc}.glasses-calibration__slider{display:grid;gap:10px;min-height:72px;overflow:visible}.glasses-calibration__slider>span{display:flex;justify-content:space-between;gap:12px;align-items:baseline;min-width:0}.glasses-calibration__slider>span strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.glasses-calibration__slider>span em{flex:0 0 3.4ch;color:rgba(248,250,252,.52);font-style:normal;font-size:.76rem;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.glasses-calibration__slider input[type=range]{appearance:none;width:100%;min-height:28px;margin:0;padding:8px 0;background:transparent;accent-color:#f8fafc}.glasses-calibration__slider input[type=range]::-webkit-slider-runnable-track{height:6px;border:1px solid rgba(248,250,252,.28);border-radius:999px;background:rgba(248,250,252,.32)}.glasses-calibration__slider input[type=range]::-webkit-slider-thumb{appearance:none;width:18px;height:18px;margin-top:-6px;border:2px solid #111;border-radius:999px;background:#fff;box-shadow:0 0 0 2px rgba(248,250,252,.38)}.glasses-calibration__slider input[type=range]::-moz-range-track{height:6px;border:1px solid rgba(248,250,252,.28);border-radius:999px;background:rgba(248,250,252,.32)}.glasses-calibration__slider input[type=range]::-moz-range-thumb{width:18px;height:18px;border:2px solid #111;border-radius:999px;background:#fff;box-shadow:0 0 0 2px rgba(248,250,252,.38)}.glasses-calibration__slider--r input[type=range]{accent-color:#ff3b45}.glasses-calibration__slider--g input[type=range]{accent-color:#2fd071}.glasses-calibration__slider--b input[type=range]{accent-color:#39a7ff}@media (max-width:980px){.glasses-calibration__body{grid-template-columns:1fr;grid-template-rows:minmax(540px,1fr) minmax(180px,auto)}.glasses-calibration__model{grid-template-columns:minmax(0,1fr);gap:18px;width:min(420px,calc(100% - 40px));padding-top:74px;padding-bottom:22px}.glasses-calibration__controls{border-left:0;border-top:1px solid rgba(248,250,252,.12)}}.oculo-glasses-prompt{position:absolute;inset:0;z-index:2;display:grid;place-items:center;align-content:center;gap:16px;padding:32px;background:#050607;color:#f8fafc;text-align:center;cursor:auto}.oculo-glasses-prompt button{cursor:pointer}.oculo-glasses-prompt>span{color:rgba(248,250,252,.54);font-size:.78rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.oculo-glasses-prompt strong{max-width:min(640px,92vw);font-size:clamp(2rem,5vw,4.6rem);line-height:.94}.oculo-glasses-prompt p{max-width:460px;margin:0;color:rgba(248,250,252,.72);font-size:clamp(1rem,1.6vw,1.18rem);line-height:1.45}.oculo-glasses-prompt small{color:rgba(248,250,252,.48);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.oculo-glasses-prompt__icon{position:relative;width:min(320px,44vw);aspect-ratio:1680/552;margin-bottom:8px}.oculo-glasses-prompt__icon img{display:block;width:100%;height:auto;filter:invert(1) drop-shadow(0 0 10px rgba(255,255,255,.16))}.oculo-worth-target{position:relative;--worth-grid-size:clamp(160px,var(--worth-grid-size-px,342px),min(82vw,82vh));--worth-dot-diameter:calc(var(--worth-grid-size) / 3.4);width:var(--worth-grid-size);height:var(--worth-grid-size)}.oculo-worth-dot{position:absolute;width:var(--worth-dot-diameter);height:var(--worth-dot-diameter);border-radius:999px;box-shadow:0 0 22px rgba(255,255,255,.2);transform:translate(-50%,-50%)}.oculo-worth-dot--red{background:#e01f28}.oculo-worth-dot--green{background:#1db954}.oculo-worth-dot--white{background:#f8fafc}.oculo-worth-dot--top{left:50%;top:16.666%}.oculo-worth-dot--left{left:16.666%;top:50%}.oculo-worth-dot--right{left:83.333%;top:50%}.oculo-worth-dot--bottom{left:50%;top:83.333%}.oculo-worth-page{background:var(--worth-background,#fff);color:#111827}.oculo-worth-toolbar{position:absolute;left:clamp(16px,2vw,28px);top:clamp(16px,2vw,28px);z-index:3;display:flex;align-items:center;gap:10px;padding:10px;border:1px solid rgba(17,24,39,.14);border-radius:8px;background:rgba(255,255,255,.88);box-shadow:0 16px 40px rgba(15,23,42,.12);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.oculo-worth-toolbar .session-action{min-height:34px}.oculo-worth-size{display:grid;grid-template-columns:auto minmax(140px,16vw) 52px;gap:8px;align-items:center;color:rgba(17,24,39,.74);font-size:.78rem;font-weight:850;text-transform:uppercase}.oculo-worth-size input{accent-color:#0f766e}.oculo-worth-size em{color:rgba(17,24,39,.64);font-style:normal;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.oculo-worth-close{position:absolute;right:clamp(16px,2vw,28px);top:clamp(16px,2vw,28px);z-index:4;display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(17,24,39,.16);border-radius:999px;background:rgba(255,255,255,.88);color:#111827;box-shadow:0 14px 34px rgba(15,23,42,.12)}.oculo-worth-close svg{width:18px;height:18px}.oculo-worth-proceed{position:absolute;right:clamp(16px,2vw,28px);bottom:clamp(16px,2vw,28px);z-index:4;min-height:42px;padding:0 18px;border:1px solid rgba(17,24,39,.14);border-radius:8px;background:#111827;color:#ffffff;box-shadow:0 16px 42px rgba(15,23,42,.18);font-size:.86rem;font-weight:900}.oculo-worth-proceed:hover{background:#0f766e}.oculo-worth-legend{width:min(920px,calc(100vw - 72px));display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:clamp(72px,10vh,110px) 0 32px}.oculo-worth-legend__item{display:grid;grid-template-columns:78px 1fr;grid-template-rows:auto auto;column-gap:14px;row-gap:4px;align-items:center;min-height:88px;padding:12px;border:1px solid rgba(17,24,39,.12);border-radius:8px;background:rgba(255,255,255,.84)}.oculo-worth-legend__item strong{color:#111827;font-size:.9rem;font-weight:900;letter-spacing:.02em;text-transform:uppercase}.oculo-worth-legend__item>span{color:rgba(17,24,39,.62);font-size:.78rem;font-weight:650;line-height:1.3}.worth-legend-pattern{grid-row:1/span 2;position:relative;width:68px;height:68px;border-radius:8px;background:rgba(17,24,39,.05)}.worth-legend-pattern__dot{position:absolute;width:16px;height:16px;border-radius:999px;transform:translate(-50%,-50%);box-shadow:0 0 0 1px rgba(17,24,39,.12)}.worth-legend-pattern__dot--top{left:50%;top:17%}.worth-legend-pattern__dot--left{left:25%;top:50%}.worth-legend-pattern__dot--right{left:75%;top:50%}.worth-legend-pattern__dot--bottom{left:50%;top:80%}.worth-legend-pattern--crossed .worth-legend-pattern__dot--left,.worth-legend-pattern--left-hyper .worth-legend-pattern__dot--left,.worth-legend-pattern--right-hyper .worth-legend-pattern__dot--left{left:35%}.worth-legend-pattern--crossed .worth-legend-pattern__dot--right,.worth-legend-pattern--left-hyper .worth-legend-pattern__dot--right,.worth-legend-pattern--right-hyper .worth-legend-pattern__dot--right{left:65%}.worth-legend-pattern--uncrossed .worth-legend-pattern__dot--left{left:12%}.worth-legend-pattern--uncrossed .worth-legend-pattern__dot--right{left:88%}.worth-legend-pattern--left-hyper .worth-legend-pattern__dot--bottom,.worth-legend-pattern--left-hyper .worth-legend-pattern__dot--top{transform:translate(-50%,calc(-50% - 8px))}.worth-legend-pattern--right-hyper .worth-legend-pattern__dot--bottom,.worth-legend-pattern--right-hyper .worth-legend-pattern__dot--top{transform:translate(-50%,calc(-50% + 8px))}.oculo-color-field{position:absolute;inset:0;overflow:hidden;background:#939393}.oculo-color-field-position{background:#050505}.oculo-color-field-position .tobii-calibration-position__zone{width:42%;border-color:rgba(105,224,189,.58)}.oculo-color-field-position .tobii-calibration-position__copy span{color:rgba(247,250,248,.72)}.oculo-color-field-position__close{position:absolute;top:18px;right:18px;z-index:3;display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(247,250,248,.2);border-radius:999px;background:rgba(247,250,248,.08);color:rgba(247,250,248,.86)}.oculo-color-field-position__close svg{width:18px;height:18px}.oculo-color-field-center{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;background:#050505;color:#f7faf8}.oculo-color-field-center__copy{position:absolute;top:clamp(22px,5vh,48px);left:50%;z-index:2;display:grid;gap:6px;width:min(520px,calc(100% - 96px));transform:translateX(-50%);text-align:center}.oculo-color-field-center__copy strong{font-size:clamp(1.3rem,2.6vw,2.4rem);letter-spacing:0}.oculo-color-field-center__copy span{color:rgba(247,250,248,.72);font-size:clamp(.95rem,1.4vw,1.15rem)}.oculo-color-field-center__target{position:absolute;left:50%;top:50%;display:grid;width:clamp(46px,7vw,78px);aspect-ratio:1;place-items:center;transform:translate(-50%,-50%);border:2px solid rgba(105,224,189,.82);border-radius:999px;box-shadow:0 0 32px rgba(105,224,189,.28)}.oculo-color-field-center__target span{display:block;width:22%;aspect-ratio:1;border-radius:999px;background:#69e0bd}.oculo-color-field-center.is-ready .oculo-color-field-center__target{border-color:rgba(84,220,140,.95);box-shadow:0 0 42px rgba(84,220,140,.34)}.oculo-color-field-center__meter{position:absolute;right:18%;bottom:clamp(34px,8vh,72px);left:18%;height:8px;overflow:hidden;border-radius:999px;background:rgba(247,250,248,.12)}.oculo-color-field-center__meter span{display:block;width:100%;height:100%;transform-origin:left center;border-radius:inherit;background:linear-gradient(90deg,#69e0bd,#54dc8c);transition:transform .12s ease}.settings-calibration{display:grid;gap:12px}.settings-surface{display:grid;gap:18px;padding-top:var(--patient-context-height)}.settings-tabs{position:fixed;top:calc(var(--electron-titlebar-height, 0px) + var(--shell-header-height));right:0;left:var(--shell-sidebar-width);z-index:35;display:flex;gap:4px;min-height:var(--patient-context-height);padding:0 16px 0 12px;border-bottom:1px solid var(--line);background:var(--surface);transition:left .2s ease,opacity .22s ease,transform var(--session-review-transition),visibility .22s ease}.settings-tabs,.settings-tabs__group{align-items:center;justify-content:flex-start}.settings-tabs__group{display:inline-flex;gap:8px;max-width:100%;overflow-x:auto;padding:0;border:0;border-radius:0;background:transparent}.settings-tab{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:0;padding-inline:12px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface-muted),var(--surface) 42%);white-space:nowrap}.settings-tab svg{width:15px;height:15px;flex:0 0 auto}.settings-tab:after{display:none}.settings-tab-panel{display:grid;gap:14px}.settings-calibration-grid,.settings-usage-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:14px;align-items:start}.settings-calibration-list{display:grid;gap:12px}.settings-calibration-item{display:flex;align-items:center;justify-content:space-between;gap:18px}.settings-calibration-item>div:first-child{display:grid;gap:8px;min-width:0}.settings-calibration-item p{max-width:680px;margin:0;color:var(--muted);font-size:.86rem;line-height:1.45}.settings-calibration-item__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px}.settings-usage--primary .settings-usage__numbers strong{font-size:clamp(2.2rem,6vw,4.4rem)}.settings-path-reference{display:grid;gap:6px;min-width:0}.settings-path-reference strong{color:var(--ink);overflow-wrap:anywhere}.settings-path-reference span{color:var(--muted);font-size:.84rem}.settings-calibration-summary{display:grid;gap:12px}.settings-calibration-summary p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.45}.settings-calibration-summary__swatches{display:flex;gap:8px;align-items:center}.settings-calibration-summary__swatches span{width:30px;height:30px;border:1px solid var(--line-strong);border-radius:999px}.settings-usage{display:grid;gap:12px}.settings-usage__numbers{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.settings-usage__numbers strong{color:var(--text);font-size:1.4rem;line-height:1}.settings-usage__numbers span{color:var(--muted);font-size:.82rem}.settings-usage__track{height:10px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--border),transparent 20%)}.settings-usage__track span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.settings-usage__track--inactive span{background:transparent}.settings-usage p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.45}.settings-subscription-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.settings-subscription-details>div{display:grid;gap:4px;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface),var(--panel) 34%)}.settings-subscription-details span{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.settings-subscription-details strong{color:var(--ink);font-size:.9rem;line-height:1.25;overflow-wrap:anywhere}.settings-subscription-details__wide{grid-column:1/-1}.settings-subscription-actions{display:flex;justify-content:flex-end}.settings-subscription-cancel{border-color:color-mix(in srgb,rgb(var(--danger)),transparent 35%);color:rgb(var(--danger))}.settings-subscription-cancel:hover{background:color-mix(in srgb,rgb(var(--danger)),transparent 90%)}.settings-staff,.settings-staff-state,.settings-staff__invite,.settings-staff__members,.settings-staff__pending{display:grid;gap:14px}.settings-staff-state{justify-items:start}.settings-staff-state svg{width:22px;height:22px;color:var(--accent)}.settings-staff-form{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(130px,.6fr) minmax(160px,.8fr) minmax(190px,.9fr) auto;gap:12px;align-items:end}.settings-staff-form label,.settings-staff-row label{display:grid;gap:6px;min-width:0;color:var(--muted);font-size:.78rem;font-weight:700}.settings-staff-form label span,.settings-staff-row label span{text-transform:uppercase;letter-spacing:.08em}.settings-staff-form input,.settings-staff-form select,.settings-staff-row select{width:100%;min-height:40px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;padding:9px 10px}.settings-staff-form__submit,.settings-staff-row .session-action{gap:7px;white-space:nowrap}.settings-staff-count{color:var(--muted);font-size:.82rem}.settings-staff-list{display:grid;gap:10px}.settings-staff-row{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(120px,.55fr) minmax(150px,.7fr) minmax(180px,.85fr) auto;gap:12px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface),var(--panel) 26%)}.settings-staff-row__identity{display:grid;gap:5px;min-width:0;align-self:center}.settings-staff-pending-list strong,.settings-staff-row__identity strong{color:var(--ink);overflow-wrap:anywhere}.settings-staff-pending-list span,.settings-staff-row__identity span{color:var(--muted);font-size:.82rem;line-height:1.4}.settings-staff-row label>strong{display:inline-flex;align-items:center;min-height:40px;color:var(--ink);font-size:.9rem}.settings-staff-pending-list{display:grid;gap:8px}.settings-staff-pending-list>div{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-muted)}#glasses-calibration{scroll-margin-top:96px}.settings-calibration label{display:grid;gap:6px;color:var(--muted);font-size:.78rem}.settings-calibration input[type=color],.settings-calibration select{width:100%;height:36px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text)}.settings-calibration input[type=range]{width:100%}.settings-calibration strong{color:var(--text);font-size:.82rem}.settings-divider{width:100%;border:0;border-top:1px solid var(--border)}.oculo-color-field__fixation{position:absolute;left:50%;top:50%;width:clamp(10px,1vw,16px);height:clamp(10px,1vw,16px);border-radius:999px;border:2px solid #111;background:#fff;transform:translate(-50%,-50%);box-shadow:0 0 0 8px rgba(255,255,255,.14)}.oculo-color-field__moving-dot{position:absolute;border-radius:999px;transform:translate(-50%,-50%)}.oculo-color-field__moving-dot--red{background:#c80000}.oculo-color-field__moving-dot--blue{background:#0000c8}.oculo-color-field__moving-dot--green{background:#006400}.oculo-color-field__prompt,.oculo-color-field__status,.oculo-color-field__warning{position:absolute;color:rgba(255,255,255,.82);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.oculo-color-field__status{left:18px;top:16px;display:grid;gap:4px}.oculo-color-field__status span{color:rgba(255,255,255,.62)}.oculo-color-field__prompt{right:18px;bottom:16px}.oculo-color-field__intro{position:absolute;left:50%;top:30%;display:grid;gap:8px;width:min(520px,calc(100vw - 56px));color:rgba(255,255,255,.9);text-align:center;transform:translate(-50%,-50%)}.oculo-color-field__intro strong{font-size:clamp(1.2rem,1.8vw,1.9rem);font-weight:850}.oculo-color-field__intro span{color:rgba(255,255,255,.72);font-size:.82rem;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.oculo-color-field__cover-confirmation{display:inline-flex;align-items:center;justify-content:center;gap:7px;justify-self:center;min-height:30px;padding:5px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:rgba(255,255,255,.72);background:rgba(0,0,0,.18);font-size:.74rem;font-style:normal;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.oculo-color-field__cover-confirmation.is-confirmed{border-color:rgba(105,224,189,.55);color:#dffbf3;background:rgba(21,128,93,.32)}.oculo-color-field__cover-confirmation svg{width:16px;height:16px;stroke-width:3}.oculo-color-field-mic{display:grid;place-items:center}.oculo-color-field-mic__actions{position:absolute;left:50%;bottom:24px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;opacity:0;pointer-events:none;transform:translateX(-50%);transition:opacity .18s ease}.oculo-color-field-mic__actions.is-visible{opacity:1;pointer-events:auto}.oculo-color-field-mic__panel{display:grid;justify-items:center;gap:14px;width:min(420px,calc(100vw - 48px));color:rgba(255,255,255,.92);text-align:center}.oculo-color-field-mic__dot{width:clamp(44px,6vw,78px);aspect-ratio:1/1;border-radius:999px;box-shadow:0 0 0 10px rgba(255,255,255,.14)}.oculo-color-field-mic__panel strong{font-size:clamp(2rem,4vw,4.3rem);font-weight:900;letter-spacing:.02em;text-transform:uppercase}.oculo-color-field-mic__recognized{display:inline-flex;align-items:center;gap:7px;min-height:28px;padding:4px 10px;border:1px solid rgba(105,224,189,.45);border-radius:999px;color:#dffbf3;background:rgba(21,128,93,.3);font-size:.76rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase;opacity:0;transform:translateY(4px);transition:opacity .14s ease,transform .14s ease}.oculo-color-field-mic__recognized.is-visible{opacity:1;transform:translateY(0)}.oculo-color-field-mic__recognized svg{width:16px;height:16px;stroke-width:3}.oculo-color-field-mic__meter{width:min(280px,70vw);height:10px;overflow:hidden;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.12)}.oculo-color-field-mic__meter span{display:block;width:100%;height:100%;transform-origin:left center;background:linear-gradient(90deg,#69e0bd,#f0da79,#ff7f7f);transition:transform 80ms linear}.oculo-color-field-mic__panel small{min-height:1.2em;color:rgba(255,255,255,.62);font-size:.84rem;font-weight:720}.oculo-color-field__warning{left:50%;top:calc(50% + 34px);color:#ffffff;transform:translateX(-50%)}.shell-input{width:100%;min-height:var(--control-height);padding:6px 9px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:.84rem}.test-block{display:grid;gap:14px;padding:16px 0;border-top:1px solid var(--line)}.test-block:first-child{padding-top:0;border-top:0}.warning{color:var(--warning)}.desktop-shell{--electron-titlebar-height:34px;--utility-sidebar-width:128px;padding:calc(var(--electron-titlebar-height) + 14px) 14px 14px calc(var(--utility-sidebar-width) + 36px);transition:padding-left .18s ease}.desktop-shell.is-utilities-collapsed{padding-left:14px}.desktop-shell__frame{min-height:calc(100vh - var(--electron-titlebar-height) - 28px);transition:none}.desktop-main{min-height:calc(100vh - var(--electron-titlebar-height) - 30px);padding-top:calc(var(--patient-context-height) - 14px);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.desktop-shell.is-utilities-collapsed .settings-tabs,.desktop-shell.is-utilities-collapsed .shell-header{left:14px}.electron-top-bar{inset:0 0 auto 0;z-index:20;border:0;box-shadow:none}.electron-drag-strip,.electron-top-bar{position:fixed;height:var(--electron-titlebar-height);background:var(--electron-titlebar-bg,#eef0f2);-webkit-app-region:drag}.electron-drag-strip{top:0;left:332px;right:138px;z-index:25}.electron-app-menu{position:fixed;top:0;left:54px;z-index:45;display:flex;align-items:center;padding:0 4px;-webkit-app-region:no-drag}.electron-app-menu button{height:28px;padding:0 10px;border:0;border-radius:6px;color:var(--muted);background:transparent;font-size:.82rem}.desktop-shell--dark .electron-app-menu button,.desktop-shell--dark .settings-button,.desktop-shell--dark .workflow-sidebar-toggle,:root.dark .desktop-shell .electron-app-menu button,:root.dark .desktop-shell .settings-button,:root.dark .desktop-shell .workflow-sidebar-toggle,:root[data-theme=dark] .desktop-shell .electron-app-menu button,:root[data-theme=dark] .desktop-shell .settings-button,:root[data-theme=dark] .desktop-shell .workflow-sidebar-toggle{color:#d9dde3}.electron-app-menu button:focus-visible,.electron-app-menu button:hover{color:var(--ink);background:var(--surface-muted);outline:none}.desktop-main a,.desktop-main button,.desktop-main input,.desktop-main select,.desktop-main textarea,.electron-app-menu,.workflow-sidebar-toggle,.workflow-utilities{-webkit-app-region:no-drag}.workflow-utilities{position:fixed;left:18px;top:70px;bottom:18px;z-index:30;display:grid;align-content:end;gap:10px;width:var(--utility-sidebar-width);padding:12px;border:0;border-radius:0;background:transparent;box-shadow:none;justify-items:start;transition:opacity .16s ease,transform .18s ease,visibility .18s ease}.desktop-shell.is-utilities-collapsed .workflow-utilities{visibility:hidden;opacity:0;pointer-events:none;transform:translateX(-10px)}.workflow-sidebar-toggle{position:fixed;left:10px;top:2px;z-index:35;display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid var(--line-strong);border-radius:var(--radius-md);color:var(--muted);background:var(--surface);box-shadow:0 12px 28px rgba(23,32,29,.1)}.desktop-shell--dark .workflow-sidebar-toggle,:root.dark .desktop-shell .workflow-sidebar-toggle,:root[data-theme=dark] .desktop-shell .workflow-sidebar-toggle{background:#1e2024;border-color:#555b66;box-shadow:none}.workflow-sidebar-toggle:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.workflow-sidebar-toggle svg{width:19px;height:19px}.workflow-utilities .theme-toggle{justify-self:center}.settings-button{display:inline-flex;gap:9px;width:100%;min-width:42px;height:36px;padding:0 10px;border:1px solid transparent;background:transparent;font-weight:400}.settings-button:focus-visible,.settings-button:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);outline:none}.desktop-shell--dark .electron-app-menu button:focus-visible,.desktop-shell--dark .electron-app-menu button:hover,.desktop-shell--dark .settings-button:focus-visible,.desktop-shell--dark .settings-button:hover,.desktop-shell--dark .workflow-sidebar-toggle:focus-visible,.desktop-shell--dark .workflow-sidebar-toggle:hover,:root.dark .desktop-shell .electron-app-menu button:focus-visible,:root.dark .desktop-shell .electron-app-menu button:hover,:root.dark .desktop-shell .settings-button:focus-visible,:root.dark .desktop-shell .settings-button:hover,:root.dark .desktop-shell .workflow-sidebar-toggle:focus-visible,:root.dark .desktop-shell .workflow-sidebar-toggle:hover,:root[data-theme=dark] .desktop-shell .electron-app-menu button:focus-visible,:root[data-theme=dark] .desktop-shell .electron-app-menu button:hover,:root[data-theme=dark] .desktop-shell .settings-button:focus-visible,:root[data-theme=dark] .desktop-shell .settings-button:hover,:root[data-theme=dark] .desktop-shell .workflow-sidebar-toggle:focus-visible,:root[data-theme=dark] .desktop-shell .workflow-sidebar-toggle:hover{color:#8ff0d9;background:#203231}.settings-button svg{width:20px;height:20px}.settings-button span{line-height:1}.app-tooltip{z-index:100;padding:5px 8px;border:1px solid var(--line);border-radius:6px;color:var(--ink);background:var(--surface);box-shadow:0 10px 28px rgba(5,8,8,.16);font-size:.78rem;line-height:1.2}.app-tooltip__arrow{fill:var(--surface)}.workflow-back-link{display:inline-flex;width:fit-content;align-items:center;gap:7px;color:var(--accent);font-weight:700}.patient-flow,.patient-hub,.patient-recent,.patient-start{display:grid;gap:14px}.patient-hub,.patient-start{max-width:1120px;margin:0 auto;width:100%}.patient-start{align-content:center;min-height:calc(100vh - 190px);justify-items:center;padding:clamp(28px,7vh,74px) 0}.patient-start__prompt{display:grid;gap:16px;justify-items:center;width:min(760px,100%)}.patient-hub__header h3{margin:0;color:var(--ink);font-size:1.15rem;line-height:1.15;font-weight:600;letter-spacing:0}.desktop-shell--dark .patient-hub__header h3,:root.dark .desktop-shell .patient-hub__header h3,:root[data-theme=dark] .desktop-shell .patient-hub__header h3{color:#f2f3f5}.patient-search-bar{display:flex;align-items:center;gap:12px;width:min(720px,100%);min-height:66px;padding:0 18px;border:1px solid color-mix(in srgb,var(--line-strong),transparent 12%);border-radius:18px;background:var(--surface);box-shadow:0 18px 52px rgba(15,23,42,.09),inset 0 1px 0 rgba(255,255,255,.45)}.patient-search-bar svg{width:22px;height:22px;flex:0 0 auto;color:var(--muted)}.patient-search-bar .shell-input{min-width:0;min-height:64px;padding:0;border:0;border-radius:0;background:transparent;font-size:1.12rem;box-shadow:none}.patient-search-bar .shell-input:focus-visible{box-shadow:none}.patient-start__quick-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;width:min(720px,100%)}.patient-start__chip{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;max-width:100%;padding:0 11px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:color-mix(in srgb,var(--surface),var(--surface-muted) 34%);font-size:.8rem;font-weight:600;white-space:nowrap;transition:border-color .16s ease,color .16s ease,background .16s ease}.patient-start__chip:focus-within,.patient-start__chip:hover{border-color:var(--accent);color:var(--ink);background:var(--accent-soft)}.patient-start__chip svg{width:15px;height:15px;flex:0 0 auto}.patient-start__chip input{width:14px;height:14px;margin:0;accent-color:var(--accent)}.patient-start .user-form,.patient-start .user-list{width:min(720px,100%)}.patient-name-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.patient-start .user-list{margin-top:10px}.patient-start .user-row{min-height:62px;border-radius:12px;box-shadow:0 1px 0 rgba(15,23,42,.03)}.patient-start .user-row,.patient-start__empty{background:color-mix(in srgb,var(--surface),transparent 2%)}.patient-start__empty{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:58px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;color:var(--muted);font-size:.9rem}.patient-start__empty .session-action{flex:0 0 auto}.patient-start__source{color:var(--muted);font-size:.78rem}.patient-hub__header{display:flex;justify-content:space-between;gap:18px;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--line)}.patient-hub__identity{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap}.patient-hub__identity>span{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--surface);font-size:.78rem;line-height:1}.desktop-shell--dark .patient-hub .metric-label,.desktop-shell--dark .patient-hub__identity>span,.desktop-shell--dark .patient-recent .metric-label,:root.dark .desktop-shell .patient-hub .metric-label,:root.dark .desktop-shell .patient-hub__identity>span,:root.dark .desktop-shell .patient-recent .metric-label,:root[data-theme=dark] .desktop-shell .patient-hub .metric-label,:root[data-theme=dark] .desktop-shell .patient-hub__identity>span,:root[data-theme=dark] .desktop-shell .patient-recent .metric-label{color:#d6dbe3}.patient-hub__header-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.patient-hub-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.patient-hub-action{display:grid;align-content:space-between;min-height:132px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);background:var(--surface);transition:border-color .16s ease,background .16s ease,transform .16s ease}.patient-hub-action:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.patient-hub-action--primary{border-color:color-mix(in srgb,var(--accent),var(--line) 45%);background:var(--accent-soft)}.patient-hub-action span{color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.desktop-shell--dark .patient-hub-action span,:root.dark .desktop-shell .patient-hub-action span,:root[data-theme=dark] .desktop-shell .patient-hub-action span{color:#d6dbe3}.patient-hub-action strong{font-size:1.08rem;line-height:1.15;font-weight:600;letter-spacing:0}.patient-hub-action small{color:var(--muted);font-size:.82rem;line-height:1.45}.desktop-shell--dark .patient-hub-action small,.desktop-shell--dark .patient-hub__meta strong,.desktop-shell--dark .patient-recent h3,:root.dark .desktop-shell .patient-hub-action small,:root.dark .desktop-shell .patient-hub__meta strong,:root.dark .desktop-shell .patient-recent h3,:root[data-theme=dark] .desktop-shell .patient-hub-action small,:root[data-theme=dark] .desktop-shell .patient-hub__meta strong,:root[data-theme=dark] .desktop-shell .patient-recent h3{color:#f2f3f5}.patient-hub__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.patient-hub__meta div,.patient-recent{padding:14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-muted)}.patient-hub__meta div{display:grid;gap:5px;background:var(--surface)}.desktop-shell--dark .patient-hub__meta div,.desktop-shell--dark .patient-recent,:root.dark .desktop-shell .patient-hub__meta div,:root.dark .desktop-shell .patient-recent,:root[data-theme=dark] .desktop-shell .patient-hub__meta div,:root[data-theme=dark] .desktop-shell .patient-recent{background:#1b1d22;border-color:#3a3f49}.danger-link{width:fit-content;border:0;padding:0;color:#b44336;background:transparent}.modal-scrim{position:fixed;inset:0;z-index:400;background:rgba(11,14,14,.46);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:overlay-in .15s ease-out}.confirm-dialog{position:fixed;left:50%;top:50%;z-index:410;display:grid;gap:14px;width:min(440px,100%);max-width:calc(100vw - 44px);max-height:calc(100vh - 44px);overflow:auto;padding:18px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);color-scheme:light;box-shadow:0 28px 90px rgba(5,8,8,.28);transform:translate(-50%,-50%);animation:dialog-in .16s ease-out}.confirm-dialog .metric-label{color:color-mix(in srgb,var(--ink),var(--muted) 28%)}.confirm-dialog .section-copy{color:color-mix(in srgb,var(--ink),var(--muted) 20%)}.confirm-dialog h3,.confirm-dialog__title{margin:5px 0 0;color:var(--ink);font-size:1rem;line-height:1.2;font-weight:600;letter-spacing:0}.confirm-dialog__actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.session-action--danger{border-color:rgba(180,67,54,.45);color:#fff;background:#b44336}.session-action--danger:hover{border-color:#8f2f25;background:#9f382e}:root.dark .confirm-dialog,:root[data-theme=dark] .confirm-dialog{border-color:#3a3f49;background:#1b1d22;color:#f4f7f8;color-scheme:dark;box-shadow:0 28px 90px rgba(0,0,0,.46)}:root.dark .confirm-dialog .metric-label,:root[data-theme=dark] .confirm-dialog .metric-label{color:#b8c0ca}:root.dark .confirm-dialog .section-copy,:root[data-theme=dark] .confirm-dialog .section-copy{color:#d6dbe3}:root.dark .confirm-dialog__error,:root[data-theme=dark] .confirm-dialog__error{border-color:rgba(248,113,113,.32);color:#fecaca;background:rgba(248,113,113,.13)}@keyframes overlay-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,calc(-50% + 6px)) scale(.985)}}.section-chip{border:1px solid transparent;background:transparent;color:rgb(var(--muted-foreground))}.section-chip-active{border-color:rgb(var(--border));background:rgb(var(--panel));color:rgb(var(--foreground));box-shadow:0 1px 2px rgba(0,0,0,.04)}.desktop-shell{--shell-sidebar-width:288px;--shell-header-height:56px;--patient-context-height:48px;--patient-context-nav-width:clamp(540px,42vw,576px);--patient-workflow-gap:clamp(16px,1.8vw,26px);--electron-titlebar-bg:#eef0f2;--session-review-transition:420ms cubic-bezier(0.16,1,0.3,1);min-height:100vh;padding:0;background:var(--bg);color:var(--ink);transition:none}.desktop-shell--dark,:root.dark .desktop-shell,:root[data-theme=dark] .desktop-shell{--electron-titlebar-bg:#0d0e10}.desktop-shell--web{--electron-titlebar-height:0px}.desktop-shell.is-nav-collapsed{--shell-sidebar-width:72px}.desktop-shell:not(.is-nav-transition-ready) .desktop-main,.desktop-shell:not(.is-nav-transition-ready) .desktop-nav__item,.desktop-shell:not(.is-nav-transition-ready) .desktop-nav__item:before,.desktop-shell:not(.is-nav-transition-ready) .desktop-rail,.desktop-shell:not(.is-nav-transition-ready) .desktop-rail-shell,.desktop-shell:not(.is-nav-transition-ready) .desktop-shell__frame,.desktop-shell:not(.is-nav-transition-ready) .find-button,.desktop-shell:not(.is-nav-transition-ready) .patient-context-bar,.desktop-shell:not(.is-nav-transition-ready) .patient-context-bar__tab,.desktop-shell:not(.is-nav-transition-ready) .product-switcher,.desktop-shell:not(.is-nav-transition-ready) .settings-tabs,.desktop-shell:not(.is-nav-transition-ready) .shell-header,.desktop-shell:not(.is-nav-transition-ready) .shell-icon-button,.desktop-shell:not(.is-nav-transition-ready) .shell-nav-toggle,.desktop-shell:not(.is-nav-transition-ready) .shell-notification-button,.desktop-shell:not(.is-nav-transition-ready) .shell-topbar,.desktop-shell:not(.is-nav-transition-ready) .shell-topbar__patient-identity,.desktop-shell:not(.is-nav-transition-ready) .shell-topbar__patient-switch{transition:none!important}.desktop-shell__frame{min-height:100vh;padding-left:0;border:0;border-radius:0;background:transparent}.electron-top-bar{z-index:70}.electron-drag-strip,.electron-top-bar{height:var(--electron-titlebar-height,0);background:var(--electron-titlebar-bg)}.electron-drag-strip{left:428px;right:170px;z-index:75;border:0;opacity:1}.shell-nav-toggle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--muted);background:var(--surface);transition:background .16s ease,border-color .16s ease,color .16s ease;-webkit-app-region:no-drag}.shell-nav-toggle:focus-visible,.shell-nav-toggle:hover{border-color:var(--line);color:var(--ink);background:var(--surface-muted)}.shell-nav-toggle svg{width:16px;height:16px}.electron-app-menu{left:0;z-index:80;height:var(--electron-titlebar-height,34px);background:var(--electron-titlebar-bg)}:root[data-testing-fullscreen=true] .desktop-rail-shell,:root[data-testing-fullscreen=true] .electron-app-menu,:root[data-testing-fullscreen=true] .electron-drag-strip,:root[data-testing-fullscreen=true] .electron-top-bar,:root[data-testing-fullscreen=true] .shell-header,:root[data-testing-fullscreen=true] .shell-topbar{display:none}:root[data-testing-fullscreen=true],:root[data-testing-fullscreen=true] body{width:100vw;height:100vh;overflow:hidden;background:#000;scrollbar-width:none}:root[data-testing-fullscreen=true][data-testing-fullscreen-surface=light],:root[data-testing-fullscreen=true][data-testing-fullscreen-surface=light] body{background:#fff}:root[data-testing-fullscreen=true] ::-webkit-scrollbar,:root[data-testing-fullscreen=true] body::-webkit-scrollbar{width:0;height:0}.tobii-calibration{position:fixed;inset:0;z-index:500;overflow:hidden;color:#f7faf8;background:#000;font-family:inherit}.tobii-calibration__exit{position:fixed;right:18px;top:18px;z-index:6;display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(247,250,248,.2);border-radius:999px;color:rgba(247,250,248,.9);background:rgba(12,14,14,.72);box-shadow:0 14px 36px rgba(0,0,0,.28);cursor:pointer}.tobii-calibration__exit:focus-visible,.tobii-calibration__exit:hover{color:#ffffff;border-color:rgba(247,250,248,.42);background:rgba(34,38,38,.88)}.tobii-calibration__exit svg{width:18px;height:18px}.tobii-calibration__instruction{position:absolute;left:50%;top:calc(50% - 72px);z-index:2;display:grid;width:min(520px,calc(100vw - 56px));color:#f7faf8;text-align:center;transform:translateX(-50%);pointer-events:none}.tobii-calibration__instruction strong{font-size:clamp(1rem,2vw,1.36rem);font-weight:650;text-shadow:0 2px 18px rgba(0,0,0,.75)}.tobii-calibration-position{position:absolute;inset:0;display:grid;box-sizing:border-box;padding:clamp(24px,4vw,48px);place-items:center;color:#f7faf8}.tobii-calibration-position__copy{display:grid;gap:7px;text-align:center;pointer-events:none}.tobii-calibration-position__copy span{color:rgba(247,250,248,.68);font-size:clamp(1rem,1.55vw,1.24rem);font-weight:850;line-height:1.2}.tobii-calibration-position__timer{color:rgba(105,224,189,.92);font-size:.82rem;font-style:normal;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.tobii-calibration-position.is-position-ready .tobii-calibration-position__copy span{color:#69e0bd}.tobii-calibration-position__stage{display:grid;width:min(58vw,680px,calc((100vh - 150px) * 1.24));min-width:min(420px,calc(100vw - 48px));aspect-ratio:1.24/1;place-items:center}.tobii-calibration-position__trackbox{position:relative;width:100%;height:100%;border:1px solid rgba(247,250,248,.18);border-radius:28px;background:linear-gradient(rgba(247,250,248,.08) 1px,transparent 0),linear-gradient(90deg,rgba(247,250,248,.08) 1px,transparent 0),radial-gradient(circle at 50% 50%,rgba(105,224,189,.08),transparent 46%),rgba(255,255,255,.025);background-size:100% 25%,25% 100%,100% 100%,100% 100%;box-shadow:inset 0 0 44px rgba(255,255,255,.045)}.tobii-calibration-position__trackbox>.tobii-calibration-position__copy{position:absolute;left:50%;top:31%;z-index:3;width:min(380px,82%);padding:8px 12px;border-radius:10px;background:rgba(0,0,0,.52);box-shadow:0 10px 28px rgba(0,0,0,.22);transform:translate(-50%,calc(-100% - 18px))}.tobii-calibration-position__zone{position:absolute;left:50%;top:50%;width:38%;aspect-ratio:1/1;border:2px solid rgba(247,250,248,.28);border-radius:999px;transform:translate(-50%,-50%);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.tobii-calibration-position__zone:after,.tobii-calibration-position__zone:before{position:absolute;content:""}.tobii-calibration-position__zone:before{left:50%;top:-18%;bottom:-18%;width:1px;background:rgba(247,250,248,.14)}.tobii-calibration-position__zone:after{left:-18%;right:-18%;top:50%;height:1px;background:rgba(247,250,248,.14)}.tobii-calibration-position.is-position-ready .tobii-calibration-position__zone{border-color:rgba(105,224,189,.78);background:rgba(105,224,189,.05);box-shadow:0 0 0 12px rgba(105,224,189,.08),0 0 34px rgba(105,224,189,.2)}.tobii-calibration-position__head{position:absolute;left:calc(50% + var(--head-offset-x, 0) * 130%);top:calc(50% + var(--head-offset-y, 0) * 130%);display:grid;width:calc(112px + (.5 - var(--head-depth, .5)) * 56px);aspect-ratio:.72/1;place-items:center;border:4px solid #ff5c68;border-radius:48% 48% 42% 42%/38% 38% 58% 58%;background:rgba(255,92,104,.13);box-shadow:0 0 26px rgba(255,92,104,.22);transform:translate(-50%,-50%);transition:left .13s ease-out,top .13s ease-out,width .13s ease-out,border-color .16s ease,background .16s ease,box-shadow .16s ease}.tobii-calibration-position__head span{position:absolute;left:50%;top:44%;width:46%;height:18%;border-top:3px solid;border-bottom:3px solid;color:rgba(255,92,104,.75);transform:translate(-50%,-50%)}.tobii-calibration-position.is-position-ready .tobii-calibration-position__head{border-color:#69e0bd;background:rgba(105,224,189,.15);box-shadow:0 0 30px rgba(105,224,189,.34)}.tobii-calibration-position.is-position-ready .tobii-calibration-position__head span{color:rgba(105,224,189,.8)}.tobii-calibration-position__meter{position:absolute;left:50%;bottom:clamp(56px,8vh,78px);display:grid;width:min(360px,calc(100vw - 80px));height:5px;overflow:hidden;border-radius:999px;background:rgba(247,250,248,.12);transform:translateX(-50%)}.tobii-calibration-position__meter span{display:block;width:calc(var(--head-position-progress, 0) * 100%);border-radius:inherit;background:#69e0bd;box-shadow:0 0 18px rgba(105,224,189,.6);transition:width 90ms linear}.tobii-calibration-position__bypass{position:absolute;left:50%;bottom:clamp(24px,4vh,40px);width:min(520px,calc(100vw - 48px));margin:0;color:rgba(247,250,248,.52);font-size:.84rem;font-weight:760;letter-spacing:.02em;text-align:center;transform:translateX(-50%)}.tobii-calibration__target{position:absolute;display:grid;place-items:center;width:20px;height:20px;border-radius:999px;transform:translate(-50%,-50%)}.tobii-calibration__target:after,.tobii-calibration__target:before{position:absolute;inset:0;border-radius:inherit;content:""}.tobii-calibration__target:before{border:2px solid rgba(255,255,255,.25);border-top-color:#ffffff;opacity:calc(.35 + var(--calibration-progress, 0) * .65);transform:rotate(var(--calibration-spin-angle,0deg));transition:opacity .12s ease,border-color .12s ease;will-change:transform}.tobii-calibration__target:after{inset:5px;background:#ffffff;box-shadow:0 0 10px rgba(255,255,255,.58);transform:scale(calc(1 - var(--calibration-progress, 0) * .18));transition:transform 80ms linear,background .12s ease,box-shadow .12s ease}.tobii-calibration__target i,.tobii-calibration__target span{position:absolute;inset:-5px;border:1px solid rgba(43,180,148,.54);border-radius:inherit;opacity:0;transform:scale(.8);transition:opacity .14s ease,transform .14s ease}.tobii-calibration__target i{inset:-9px;border-color:rgba(255,255,255,.36);transform:scale(.68)}.tobii-calibration__target.is-dwelling:before{border-color:#2bb494 rgba(43,180,148,.38) rgba(43,180,148,.38)}.tobii-calibration__target.is-dwelling:after{background:color-mix(in srgb,#ffffff,#2bb494 calc(var(--calibration-progress, 0) * 75%));box-shadow:0 0 15px rgba(43,180,148,calc(.38 + var(--calibration-progress, 0) * .34))}.tobii-calibration__target.is-dwelling span{opacity:1;transform:scale(calc(.94 + var(--calibration-progress, 0) * .24))}.tobii-calibration__target.is-dwelling i{opacity:calc(.24 + var(--calibration-progress, 0) * .32);transform:scale(calc(.8 + var(--calibration-progress, 0) * .42))}.tobii-calibration__target.is-capturing:before{border-color:rgba(43,180,148,.78);opacity:0;transform:scale(1.9);transition:opacity .32s ease,transform .32s ease}.tobii-calibration__target.is-capturing:after{background:#2bb494;box-shadow:0 0 0 12px rgba(43,180,148,0),0 0 34px rgba(43,180,148,.78);transform:scale(1.24);animation:calibration-burst .36s ease-out both}.tobii-calibration__target.is-capturing span{border-color:rgba(43,180,148,.78);opacity:0;transform:scale(1.75);transition:opacity .32s ease,transform .32s ease}.tobii-calibration__target.is-capturing i{opacity:0;transform:scale(2.05);transition:opacity .32s ease,transform .32s ease}.tobii-calibration__collecting{position:absolute;left:50%;top:calc(50% + 44px);z-index:2;display:inline-flex;align-items:center;gap:8px;color:rgba(247,250,248,.72);font-size:.86rem;font-weight:650;transform:translateX(-50%);pointer-events:none}.tobii-calibration__collecting svg{width:16px;height:16px;animation:calibration-spin .9s linear infinite}.tobii-calibration-debug{position:absolute;inset:0;z-index:2;overflow:hidden}.tobii-calibration-debug__stage{position:absolute;inset:0;border:1px solid rgba(247,250,248,.18);background:linear-gradient(rgba(247,250,248,.08) 1px,transparent 0),linear-gradient(90deg,rgba(247,250,248,.08) 1px,transparent 0),radial-gradient(circle at center,rgba(43,180,148,.08),transparent 58%);background-size:25% 25%,25% 25%,100% 100%}.tobii-calibration-debug__stage:before{position:absolute;inset:10%;border:1px dashed rgba(247,250,248,.16);content:"";pointer-events:none}.tobii-calibration-debug__point-set{position:absolute;inset:0}.tobii-calibration-debug__dot{position:absolute;border-radius:999px;transform:translate(-50%,-50%)}.tobii-calibration-debug__dot--target{width:11px;height:11px;border:2px solid #ffffff;background:#000000;box-shadow:0 0 0 4px rgba(255,255,255,.12)}.tobii-calibration-debug__dot--left,.tobii-calibration-debug__dot--right{width:8px;height:8px;box-shadow:0 0 0 2px rgba(0,0,0,.68)}.tobii-calibration-debug__dot--left{background:#4db7ff}.tobii-calibration-debug__dot--right{background:#ff6ab7}.tobii-calibration-debug__dot--average{width:16px;height:16px;border:2px solid #2bb494;background:rgba(43,180,148,.12);box-shadow:0 0 13px rgba(43,180,148,.48)}.tobii-calibration-debug__panel{position:absolute;top:50%;right:32px;display:grid;width:min(300px,calc(100vw - 64px));gap:12px;justify-items:start;padding:18px;border:1px solid rgba(247,250,248,.16);border-radius:8px;color:#f7faf8;background:rgba(10,14,13,.84);box-shadow:0 24px 70px rgba(0,0,0,.42);transform:translateY(-50%)}.tobii-calibration-debug__panel svg{width:28px;height:28px;color:#2bb494}.tobii-calibration-debug__panel strong{font-size:1.2rem;font-weight:650}.tobii-calibration-debug__panel span{color:rgba(247,250,248,.7);line-height:1.42}.tobii-calibration-debug__legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;width:100%}.tobii-calibration-debug__legend span{display:inline-flex;align-items:center;gap:7px;min-width:0;color:rgba(247,250,248,.72);font-size:.82rem;font-weight:650}.tobii-calibration-debug__legend-dot{flex:0 0 auto;width:10px;height:10px;border-radius:999px}.tobii-calibration-debug__legend-dot--target{border:2px solid #ffffff;background:#000000}.tobii-calibration-debug__legend-dot--left{background:#4db7ff}.tobii-calibration-debug__legend-dot--right{background:#ff6ab7}.tobii-calibration-debug__legend-dot--average{border:2px solid #2bb494;background:rgba(43,180,148,.22)}.tobii-calibration-debug__actions{display:flex;gap:8px;justify-content:flex-end;width:100%}.tobii-calibration__center-status,.tobii-calibration__result{position:absolute;top:50%;left:50%;z-index:2;display:grid;justify-items:center;width:min(460px,calc(100vw - 48px));gap:14px;color:#f7faf8;text-align:center;transform:translate(-50%,-50%)}.tobii-calibration__center-status svg,.tobii-calibration__result svg{width:34px;height:34px}.tobii-calibration__center-status svg{animation:calibration-spin .9s linear infinite}.tobii-calibration__result strong{font-size:1.35rem;font-weight:650}.tobii-calibration__result span{color:rgba(247,250,248,.68);line-height:1.45}@keyframes calibration-spin{to{transform:rotate(1turn)}}@keyframes calibration-burst{0%{box-shadow:0 0 0 0 rgba(43,180,148,.55),0 0 28px rgba(255,255,255,.55);transform:scale(1)}to{box-shadow:0 0 0 18px rgba(43,180,148,0),0 0 34px rgba(43,180,148,0);transform:scale(1.18)}}.shell-header{position:fixed;top:var(--electron-titlebar-height,0);right:0;left:var(--shell-sidebar-width);z-index:40;transition:left .2s ease,opacity .22s ease,transform var(--session-review-transition),visibility .22s ease;-webkit-app-region:no-drag}.shell-topbar{position:relative;z-index:1;height:var(--shell-header-height);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface),transparent 14%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.shell-topbar__inner{display:flex;align-items:center;gap:12px;height:100%;padding:0 16px 0 12px;overflow:hidden}.shell-topbar__title{color:var(--ink);text-overflow:ellipsis}.shell-topbar__breadcrumb,.shell-topbar__title{flex:1 1 auto;min-width:0;overflow:hidden;font-size:.88rem;font-weight:500;white-space:nowrap}.shell-topbar__breadcrumb{display:flex;align-items:center;gap:6px;color:var(--muted)}.shell-topbar__breadcrumb-current,.shell-topbar__breadcrumb-link{min-width:0;overflow:hidden;text-overflow:ellipsis}.shell-topbar__breadcrumb-item{display:inline-flex;align-items:center;gap:6px;min-width:0}.shell-topbar__breadcrumb-link{color:var(--muted);transition:color .16s ease}.shell-topbar__breadcrumb-link:focus-visible,.shell-topbar__breadcrumb-link:hover{color:var(--accent);outline:none}.shell-topbar__breadcrumb-separator{flex:0 0 auto;color:color-mix(in srgb,var(--muted),transparent 34%)}.shell-topbar__breadcrumb-current{color:var(--ink)}.shell-topbar__patient{display:inline-flex;flex:1 1 auto;align-items:center;gap:12px;min-width:0}.shell-topbar__patient-identity{display:inline-flex;align-items:baseline;gap:8px;min-width:0;color:var(--ink)}.shell-topbar__patient-identity span,.shell-topbar__patient-identity strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell-topbar__patient-identity strong{font-size:.92rem;font-weight:700}.shell-topbar__patient-identity span{color:var(--muted);font-size:.78rem;font-weight:650}.shell-topbar__patient-switch{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:6px;height:32px;min-width:0;padding:0 11px;border:1px solid var(--line);border-radius:999px;color:color-mix(in srgb,var(--ink),transparent 45%);background:color-mix(in srgb,var(--surface-muted),var(--surface) 42%);font-size:.8rem;font-weight:650;transition:background .16s ease,border-color .16s ease,color .16s ease}.shell-topbar__patient-switch svg{flex:0 0 auto;width:14px;height:14px}.shell-topbar__patient-switch span{min-width:0;line-height:1;white-space:nowrap}.shell-topbar__patient-switch:focus-visible,.shell-topbar__patient-switch:hover{border-color:color-mix(in srgb,var(--accent),var(--line) 45%);color:var(--accent);background:var(--accent-soft);outline:none}.shell-topbar__actions{margin-left:auto;display:flex;flex:0 0 auto;min-width:0;align-items:center;gap:8px}.settings-menu__label{padding:6px 8px;color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.settings-menu__link{display:flex;align-items:flex-start;gap:10px;min-width:0;padding:9px 8px;border-radius:var(--radius-md);color:var(--ink);outline:none}.settings-menu__link.is-active,.settings-menu__link:focus-visible,.settings-menu__link:hover,.settings-menu__link[data-highlighted]{background:var(--surface-muted)}.settings-menu__link svg{flex:0 0 auto;width:15px;height:15px;margin-top:2px;color:var(--muted)}.settings-menu__link span{min-width:0}.settings-menu__link small,.settings-menu__link strong{display:block}.settings-menu__link strong{font-size:.82rem;line-height:1.2}.settings-menu__link small{margin-top:2px;color:var(--muted);font-size:.72rem;line-height:1.25}.shell-icon-button,.shell-notification-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--muted);background:var(--surface);transition:background .16s ease,border-color .16s ease,color .16s ease}.shell-icon-button:hover,.shell-notification-button:hover{color:var(--ink);background:var(--surface-muted)}.web-account-trigger{border-radius:999px}.web-account-avatar{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;color:var(--accent-contrast);background:var(--accent);font-size:.68rem;font-weight:800;line-height:1;letter-spacing:0}.shell-icon-button svg,.shell-notification-button svg{width:16px;height:16px}.shell-notification-button span{position:absolute;top:-4px;right:-4px;min-width:16px;padding:0 4px;border-radius:999px;color:var(--accent-contrast);background:var(--accent);font-size:.62rem;font-weight:700;line-height:16px}.shell-loading-bar{position:fixed;top:calc(var(--electron-titlebar-height, 34px) - 3px);right:0;left:0;z-index:120;height:3px;overflow:hidden;background:color-mix(in srgb,var(--accent),transparent 85%);pointer-events:none}.shell-loading-bar div{width:33.333%;height:100%;background:var(--accent);animation:optics-loading-bar 1s ease-in-out infinite}.notification-menu{z-index:50;width:320px;padding:8px;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);background:var(--surface);box-shadow:0 24px 70px rgba(5,8,8,.2)}.notification-menu__header{display:grid;gap:4px;padding:8px}.notification-menu__header strong{font-size:.88rem}.notification-menu__empty,.notification-menu__header span{color:var(--muted);font-size:.78rem}.notification-menu__empty{padding:12px 8px}.desktop-rail-shell{position:fixed;inset:var(--electron-titlebar-height,0) auto 0 0;z-index:50;width:var(--shell-sidebar-width);height:calc(100vh - var(--electron-titlebar-height, 0px));transition:width .2s ease,opacity .22s ease,transform var(--session-review-transition),visibility .22s ease;-webkit-app-region:no-drag}:root[data-session-review-returning=true] .desktop-rail-shell{animation:session-review-sidebar-enter var(--session-review-transition) both}:root[data-session-review-returning=true] .settings-tabs,:root[data-session-review-returning=true] .shell-header{animation:session-review-topbar-enter var(--session-review-transition) both}:root[data-session-review-returning=true] .desktop-main:not(.desktop-main--focus){animation:session-review-main-return var(--session-review-transition) both}.desktop-rail{position:static;display:flex;flex-direction:column;gap:0;width:100%;height:100%;overflow:hidden auto;padding:16px;border-right:1px solid var(--line);border-radius:0;background:var(--bg);transition:padding .2s ease}.desktop-shell.is-nav-collapsed .desktop-rail{padding:16px 12px}.desktop-rail__brand{display:flex;align-items:center;gap:12px;justify-content:flex-start;min-width:0;margin:0 0 24px;padding:4px;border:0;border-radius:var(--radius-md);transition:opacity .16s ease}.desktop-rail__brand:hover{opacity:.8}.desktop-rail__logo{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:36px;height:36px;border:1px solid var(--line);border-radius:var(--radius-md);color:#a33a2e;background:var(--surface);font-size:.74rem;font-weight:800;letter-spacing:.02em;overflow:hidden}.desktop-rail__logo img,.desktop-rail__logo span{display:block;width:24px;height:24px}.desktop-rail__brand-copy{display:block;min-width:0}.desktop-rail__brand-copy span{color:var(--muted);font-size:.68rem;letter-spacing:.18em;line-height:1.15;text-transform:uppercase}.desktop-rail__brand-copy span,.desktop-rail__brand-copy strong{display:block;overflow:hidden;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.desktop-rail__brand-copy strong{min-width:0;margin-top:4px;color:var(--ink);font-size:.88rem;line-height:1.2}.product-switcher{display:flex;align-items:center;flex:0 0 auto;gap:9px;width:100%;max-width:none;min-height:40px;margin-bottom:16px;padding:0 10px 0 8px;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);background:var(--surface);text-align:left;transition:background .16s ease,border-color .16s ease}.product-switcher:hover{background:var(--surface-muted)}.command-result__icon,.product-menu__icon,.product-switcher__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:28px;height:28px;border-radius:var(--radius-md);color:var(--accent);background:color-mix(in srgb,var(--accent),transparent 88%)}.command-result__icon svg,.product-menu__icon svg,.product-switcher__icon svg{width:15px;height:15px}.product-menu__copy,.product-switcher__copy{min-width:0;flex:1 1}.product-menu__copy strong,.product-switcher__copy strong{display:block;overflow:hidden;color:var(--ink);font-size:.82rem;font-weight:500;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.product-menu__copy span,.product-switcher__copy span{display:block;margin-top:2px;overflow:hidden;color:var(--muted);font-size:.7rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.product-switcher__chevron{width:15px;height:15px;color:var(--muted)}.product-menu{z-index:100;width:288px;padding:6px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 24px 70px rgba(5,8,8,.2)}.product-menu__label{padding:6px 8px;color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.product-menu__item{display:flex;align-items:center;gap:12px;min-width:0;padding:10px 8px;border-radius:var(--radius-md);color:var(--ink);cursor:pointer;outline:none;transition:background .16s ease}.product-menu__item:focus-visible,.product-menu__item:hover,.product-menu__item[data-highlighted]{background:var(--surface-muted)}.product-menu__item[data-disabled]{cursor:default;opacity:.45}.product-menu__item[data-disabled]:hover,.product-menu__item[data-disabled][data-highlighted]{background:transparent}.product-menu__badge{border:1px solid var(--line);border-radius:999px;padding:2px 8px;color:var(--accent);font-size:.65rem;font-weight:700;line-height:1.2}.find-button{display:flex;align-items:center;gap:8px;width:auto;height:32px;margin:0;padding:0 9px;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--muted);background:var(--surface);font-size:.88rem;font-weight:500;text-align:left;transition:background .16s ease,color .16s ease}.find-button:hover{color:var(--ink);background:var(--surface-muted)}.find-button svg{width:16px;height:16px}.find-button span{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.find-button kbd{border:1px solid color-mix(in srgb,var(--line),transparent 20%);border-radius:4px;padding:1px 6px;color:var(--muted);font:700 .62rem/1.4 var(--font-mono),ui-monospace,monospace}.desktop-rail__search{width:100%;height:40px;justify-content:flex-start;margin-bottom:20px}.desktop-nav{display:grid;align-content:start;gap:6px}.desktop-nav__group{margin-bottom:24px}.desktop-nav__label{margin-bottom:8px;padding:0 4px;color:var(--muted);font-size:.68rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.desktop-nav__items{display:grid;gap:4px}.desktop-nav__item{position:relative;display:flex;align-items:center;gap:10px;width:100%;height:40px;min-height:40px;min-width:0;overflow:hidden;padding:0 10px;border:1px solid transparent;border-radius:var(--radius-md);color:var(--muted);background:transparent;font-size:.88rem;font-weight:500;text-align:left;transition:background .16s ease,border-color .16s ease,color .16s ease}.desktop-nav__item:hover{border-color:var(--line);color:var(--ink);background:transparent}.desktop-nav__item.is-active{border-color:var(--line);color:var(--ink);background:var(--surface);box-shadow:0 1px 2px rgba(0,0,0,.04)}.desktop-nav__item.is-active .desktop-nav__icon{color:var(--accent)}.desktop-nav__item.is-pending{border-color:color-mix(in srgb,var(--accent),transparent 65%);color:var(--accent);background:color-mix(in srgb,var(--accent),transparent 90%)}.desktop-nav__item.is-locked{cursor:pointer;color:color-mix(in srgb,var(--muted),transparent 22%);background:transparent;opacity:.72}.desktop-nav__item.is-locked:focus-visible,.desktop-nav__item.is-locked:hover{border-color:color-mix(in srgb,var(--line),transparent 20%);color:var(--muted);background:color-mix(in srgb,var(--surface),transparent 35%);opacity:1}.desktop-nav__indicator{position:absolute;left:0;top:50%;width:4px;height:24px;border-radius:0 999px 999px 0;background:color-mix(in srgb,var(--accent),transparent 45%);opacity:0;transform:translateY(-50%);transition:opacity .16s ease}.desktop-nav__icon{position:relative;z-index:1;flex:0 0 auto;width:16px;height:16px}.desktop-nav__copy{position:relative;z-index:1;display:block;min-width:0;overflow:hidden}.desktop-nav__copy strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:.88rem;font-weight:500;line-height:1.2}.desktop-nav__item:before{position:absolute;left:0;top:50%;width:4px;height:24px;border-radius:0 999px 999px 0;background:color-mix(in srgb,var(--accent),transparent 45%);content:"";opacity:0;transform:translateY(-50%);transition:opacity .16s ease,background .16s ease}.desktop-nav__item:hover:before{opacity:1}.desktop-nav__item.is-active:before{background:var(--accent);opacity:1}.shell-tooltip{z-index:120;max-width:220px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);background:var(--surface);box-shadow:0 12px 32px rgba(5,8,8,.18);font-size:.76rem;line-height:1.2}.desktop-nav__pending-dot{position:relative;z-index:1;margin-left:auto}.desktop-nav__pending-dot span{display:block;width:6px;height:6px;border-radius:999px;background:var(--accent);animation:pending-dot .9s ease-in-out infinite}.desktop-nav__account-dot{position:relative;z-index:1;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:24px;height:24px;margin-left:auto;border-radius:999px;color:var(--accent-contrast);background:var(--accent);font-size:.65rem;font-weight:700;line-height:1}.desktop-rail__utilities{display:grid;gap:10px;margin-top:auto;padding:16px 0 0;border-top:1px solid var(--line)}.desktop-nav__item--utility{margin-top:0}.theme-toggle{width:54px;height:30px}.settings-button{display:flex;align-items:center;gap:8px;width:auto;height:32px;padding:0 9px;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--muted);background:var(--surface);font-size:.88rem;font-weight:500;text-align:left}.settings-button:focus-visible,.settings-button:hover{border-color:var(--line);color:var(--ink);background:var(--surface-muted)}.settings-button svg{flex:0 0 auto;width:16px;height:16px}.settings-button span{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-button strong{display:none;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;color:var(--accent-contrast);background:var(--accent);font-size:.65rem;line-height:1}.settings-menu{z-index:100;width:288px;padding:8px;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);background:var(--surface);box-shadow:0 24px 70px rgba(5,8,8,.2)}.settings-menu__identity{padding:8px}.settings-menu__identity div{overflow:hidden;font-size:.78rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.settings-menu__identity span{display:block;margin-top:4px;color:var(--muted);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.settings-menu__usage{display:grid;gap:8px;padding:8px}.settings-menu__usage-header{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.76rem}.settings-menu__usage-header span{color:var(--muted);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.settings-menu__usage-header strong{color:var(--ink);font-size:.82rem}.settings-menu__usage-track{height:7px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--line),transparent 30%)}.settings-menu__usage-track span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.settings-menu__usage p{margin:0;color:var(--muted);font-size:.74rem;line-height:1.35}.settings-menu__separator{height:1px;margin:4px 0;background:var(--line)}.settings-menu__theme{display:grid;gap:8px;padding:8px;border-radius:var(--radius-md)}.settings-menu__theme>div:first-child{font-size:.88rem;font-weight:600}.theme-choice{display:flex;flex-direction:column;gap:4px;width:100%;padding:4px;border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg),transparent 40%)}.theme-choice button{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;height:32px;padding:0 8px;border:0;border-radius:4px;color:var(--muted);background:transparent;font-size:.75rem;font-weight:500;text-transform:capitalize}.theme-choice button.is-active,.theme-choice button:hover{color:var(--ink);background:var(--surface-muted)}.theme-choice button.is-active{color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 55%)}.theme-choice svg{width:14px;height:14px}.settings-menu__sign-out{display:flex;align-items:center;gap:8px;width:100%;height:36px;padding:0 8px;border:0;border-radius:var(--radius-md);color:var(--muted);background:transparent;font-size:.88rem;font-weight:500}.settings-menu__sign-out:focus-visible,.settings-menu__sign-out:hover{color:var(--ink);background:var(--surface-muted)}.settings-menu__sign-out:disabled{cursor:wait;opacity:.58}.settings-menu__sign-out svg{width:14px;height:14px}.desktop-shell.is-nav-collapsed .desktop-nav__item,.desktop-shell.is-nav-collapsed .desktop-rail__brand,.desktop-shell.is-nav-collapsed .desktop-rail__search,.desktop-shell.is-nav-collapsed .product-switcher{justify-content:center;padding-right:0;padding-left:0}.desktop-shell.is-nav-collapsed .desktop-rail__brand{margin-bottom:24px}.desktop-shell.is-nav-collapsed .desktop-nav__account-dot,.desktop-shell.is-nav-collapsed .desktop-nav__copy,.desktop-shell.is-nav-collapsed .desktop-nav__label,.desktop-shell.is-nav-collapsed .desktop-rail__brand-copy,.desktop-shell.is-nav-collapsed .desktop-rail__search kbd,.desktop-shell.is-nav-collapsed .desktop-rail__search span,.desktop-shell.is-nav-collapsed .product-switcher__chevron,.desktop-shell.is-nav-collapsed .product-switcher__copy{display:none}.desktop-shell.is-nav-collapsed .product-switcher{min-height:40px;border-radius:var(--radius-md)}.desktop-shell.is-nav-collapsed .desktop-rail__search,.desktop-shell.is-nav-collapsed .product-switcher{margin-bottom:16px}.desktop-shell.is-nav-collapsed .desktop-rail__logo,.desktop-shell.is-nav-collapsed .product-switcher__icon{width:36px;height:36px}.desktop-shell.is-nav-collapsed .desktop-nav__pending-dot{position:absolute;top:6px;right:6px;margin-left:0}.desktop-shell.is-nav-collapsed .theme-toggle{justify-self:center;width:40px}.desktop-shell.is-nav-collapsed .theme-toggle[data-state=checked] .theme-toggle__thumb{transform:translateX(10px)}.desktop-main{min-width:0;min-height:100vh;margin-left:var(--shell-sidebar-width);padding-top:calc(var(--electron-titlebar-height, 0px) + var(--shell-header-height) + var(--patient-context-height) + var(--patient-workflow-gap));border-left:0;border-radius:0;background:var(--bg);overflow:visible;transition:margin-left .2s ease}.desktop-main--global{padding-top:calc(var(--electron-titlebar-height, 0px) + var(--shell-header-height))}.desktop-main--focus{margin-left:0;height:100vh;max-height:100vh;min-height:0;overflow:hidden auto;padding-top:var(--electron-titlebar-height,0);overscroll-behavior:contain}.desktop-main--focus .workspace-body{width:100%;min-height:0;max-width:none;padding:0}.desktop-main--focus .session-review-page{--session-review-padding-block:0px;padding-bottom:16px}.desktop-main--focus .session-detail-nav{top:0;margin:-14px -14px 14px;border-top:0;border-right:0;border-left:0;border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:0 8px 24px rgba(23,32,29,.1)}.patient-context-bar{position:relative;inset:auto;z-index:auto;display:flex;align-items:center;min-height:var(--patient-context-height);padding:0 16px 0 12px;border-bottom:1px solid var(--line);background:var(--surface)}.patient-context-bar__nav{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;max-width:100%;min-width:0;overflow-x:auto;padding:0;border:0;border-radius:0;background:transparent}.patient-context-bar__tab{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:0;height:34px;padding:0 12px;border:1px solid var(--line);border-radius:999px;color:color-mix(in srgb,var(--ink),transparent 45%);background:color-mix(in srgb,var(--surface-muted),var(--surface) 42%);box-shadow:none;font-size:.82rem;font-weight:650;transition:background .16s ease,border-color .16s ease,color .16s ease,opacity .16s ease}.patient-context-bar__tab svg{width:15px;height:15px;flex:0 0 auto}.patient-context-bar__tab:after{display:none}.patient-context-bar__tab:focus-visible,.patient-context-bar__tab:hover{border-color:color-mix(in srgb,var(--accent),var(--line) 62%);color:var(--ink);background:var(--surface);box-shadow:none}.patient-context-bar__tab.is-active{border-color:color-mix(in srgb,var(--accent),var(--line) 45%);color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 78%)}.patient-context-bar__tab.is-disabled{cursor:default;color:var(--muted);opacity:.45}.patient-context-bar__tab.is-locked{display:inline-flex;align-items:center;cursor:pointer;color:color-mix(in srgb,var(--muted),transparent 18%);opacity:.72}.patient-context-bar__lock{width:13px;height:13px;opacity:.72}.patient-context-bar__tab.is-locked:after{display:none}.patient-context-bar__tab.is-locked:focus-visible,.patient-context-bar__tab.is-locked:hover{color:var(--muted);opacity:1}.locked-feature-popover{position:fixed;top:calc(var(--electron-titlebar-height, 0px) + var(--shell-header-height) + 12px);right:18px;z-index:80;display:grid;gap:3px;width:min(320px,calc(100vw - 36px));padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);background:color-mix(in srgb,var(--surface),transparent 4%);box-shadow:var(--shadow-md)}.locked-feature-popover strong{font-size:.84rem}.locked-feature-popover span{color:var(--muted);font-size:.78rem}.workspace-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;max-width:92rem;margin:0 auto;padding:16px 20px;border-bottom:0;background:transparent}.workspace-body{max-width:92rem;margin:0 auto;padding:16px 20px 20px}.desktop-main--patient-workflow{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-muted),transparent 42%) 0,transparent 180px),var(--bg)}.desktop-main--focus.desktop-main--patient-workflow{background:var(--bg)}.workspace-body--patient-workflow,.workspace-header--patient-workflow{width:min(1440px,calc(100vw - var(--shell-sidebar-width) - 32px));max-width:none}.workspace-header--patient-workflow{padding:0 24px 14px}.workspace-header--patient-workflow .workspace-header__copy{gap:5px}.workspace-header--patient-workflow .workspace-title{font-size:1.08rem}.workspace-header--patient-workflow .workspace-copy{max-width:66ch}.workspace-body--patient-workflow{padding:18px 24px 32px}.patient-workflow-section,.workspace-body--patient-workflow .assessment-builder,.workspace-body--patient-workflow .compare-workspace,.workspace-body--patient-workflow .patient-flow,.workspace-body--patient-workflow .patient-hub,.workspace-body--patient-workflow .patient-start,.workspace-body--patient-workflow .workspace-stack{width:100%}.workspace-body--patient-workflow .patient-hub,.workspace-body--patient-workflow .patient-start{max-width:none;margin:0;padding-top:0}.workspace-body--patient-workflow .patient-start{min-height:calc(100vh - var(--electron-titlebar-height, 0px) - var(--shell-header-height) - var(--patient-context-height) - 96px);padding-top:clamp(28px,7vh,74px)}.workspace-body--patient-workflow .patient-hub-action,.workspace-body--patient-workflow .patient-hub__meta div,.workspace-body--patient-workflow .patient-recent,.workspace-body--patient-workflow .workspace-panel{border-radius:8px}.workspace-body--patient-workflow .empty-state-panel{max-width:680px}.workspace-body--patient-workflow .assessment-builder__summary,.workspace-body--patient-workflow .assessment-category-tabs,.workspace-body--patient-workflow .compare-session-heading,.workspace-body--patient-workflow .reports-workspace__status{top:calc(var(--electron-titlebar-height, 0px) + var(--shell-header-height) + var(--patient-context-height) + var(--patient-workflow-gap))}.command-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:32px 12px;background:color-mix(in srgb,var(--bg),transparent 45%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.command-dialog{position:fixed;left:50%;top:14vh;z-index:101;width:min(672px,calc(100vw - 24px));overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 32px 90px rgba(15,23,42,.32);transform:translateX(-50%)}.command-dialog__input-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:12px 16px}.command-dialog__input-row svg{width:18px;height:18px;color:var(--muted)}.command-dialog__title{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.command-dialog__input-row input{min-width:0;flex:1 1;height:36px;border:0;outline:none;color:var(--ink);background:transparent;font-size:1rem;font-weight:500}.command-dialog__input-row input::placeholder{color:var(--muted)}.command-dialog__esc{display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 8px;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--muted);background:var(--surface-muted);font-size:.68rem;font-weight:800;letter-spacing:.08em}.command-dialog__esc:focus-visible,.command-dialog__esc:hover{color:var(--ink);background:var(--bg)}.command-dialog__description{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:8px 16px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.75rem}.command-dialog__results{display:grid;align-content:start;gap:4px;height:min(26rem,calc(100vh - 13rem));overflow-y:auto;padding:10px}.command-result{display:flex;align-items:flex-start;gap:12px;width:100%;padding:12px;border:0;border-radius:14px;color:var(--ink);background:transparent;text-align:left;transition:background .16s ease}.command-result:focus-visible,.command-result:hover{background:var(--surface-muted)}.command-result small,.command-result strong{display:block}.command-empty{padding:40px 16px;text-align:center}.command-empty span,.command-empty strong{display:block}.command-empty strong{font-size:.88rem}.command-empty span{margin-top:4px;color:var(--muted);font-size:.86rem}.command-result strong{font-size:.9rem;line-height:1.25}.command-result small{margin-top:3px;color:var(--muted);font-size:.78rem;line-height:1.3}.command-result__icon{width:32px;height:32px;border:1px solid var(--line);background:color-mix(in srgb,var(--bg),transparent 45%)}.command-result__icon svg{width:15px;height:15px}@keyframes pending-dot{0%,to{opacity:.35}50%{opacity:1}}@keyframes workflow-spinner{to{transform:rotate(1turn)}}@keyframes optics-loading-bar{0%{transform:translateX(-120%)}to{transform:translateX(320%)}}.oculo-test-card:disabled,.test-chip:disabled{cursor:default;opacity:.56}.oculo-test-card.is-disabled,.test-chip.is-disabled{border-style:dashed}@media (max-width:1050px){.desktop-shell{--rail-width:220px;--patient-context-height:56px}.desktop-shell.is-nav-collapsed{--rail-width:84px}.workspace-header{grid-template-columns:1fr;align-items:stretch}.patient-context-bar__tab{flex:1 0 auto}.settings-calibration-grid,.settings-usage-layout,.workspace-grid{grid-template-columns:1fr}.settings-staff-form,.settings-staff-row{grid-template-columns:1fr 1fr}.settings-staff-form label:first-child,.settings-staff-row__identity{grid-column:1/-1}.settings-calibration-item{align-items:stretch;flex-direction:column}.settings-calibration-item__actions,.settings-tabs{justify-content:flex-start}.settings-tabs{width:auto;overflow:visible}.settings-tabs__group{max-width:calc(100vw - var(--shell-sidebar-width) - 24px);overflow-x:auto}.compare-plot-grid,.compare-session-heading,.history-layout{grid-template-columns:1fr}.history-patients{position:static;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.workspace-header__aside{min-width:0}.review-row__tests{max-width:none}.assessment-builder,.assessment-category-browser{grid-template-columns:1fr}.assessment-builder--sequence .assessment-presets,.assessment-builder__summary,.assessment-category-tabs{position:static}.assessment-category-tabs{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.assessment-presets .preset-row{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}}@media (max-width:720px){.desktop-shell{--shell-pad:8px;--patient-context-height:56px;padding:8px}.desktop-shell__frame{padding-left:0;min-height:calc(100vh - 16px);border-radius:10px;overflow:hidden}.desktop-rail{position:static;width:auto;height:auto;padding:16px;border-right:0;border-bottom:1px solid var(--line);border-radius:0}.desktop-shell.is-nav-collapsed .desktop-rail{padding:16px}.desktop-shell.is-nav-collapsed .desktop-rail__brand{justify-content:space-between;padding:2px 4px 14px}.desktop-shell.is-nav-collapsed .desktop-nav__copy,.desktop-shell.is-nav-collapsed .desktop-rail__brand-copy{display:grid}.desktop-main{min-height:0;padding-top:calc(var(--patient-context-height) + var(--electron-titlebar-height, 0px));border-left:0;border-radius:0}.desktop-main--global{padding-top:var(--electron-titlebar-height,0)}.workspace-body,.workspace-header{padding:16px}.settings-tabs{top:var(--electron-titlebar-height,0);left:8px;right:8px}.settings-staff-form,.settings-staff-row{grid-template-columns:1fr}.settings-staff-form label:first-child,.settings-staff-row__identity{grid-column:auto}.patient-context-bar__nav,.settings-staff-form__submit,.settings-staff-row .session-action{width:100%}.compare-controls{grid-template-columns:1fr}.compare-session-heading{position:static}.hardware-row,.history-date-group__heading,.history-session,.patient-panel__actions,.patient-panel__header,.review-row{flex-direction:column}.history-session{grid-template-columns:1fr;align-items:stretch}.history-session-row{grid-template-columns:minmax(0,1fr) 44px}.history-session__count{justify-self:flex-start}.desktop-nav{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.desktop-nav__item{grid-template-columns:24px 1fr;justify-items:stretch;width:100%}.desktop-shell.is-nav-collapsed .theme-toggle{justify-self:start}.birthday-picker,.eye-plot__grid,.hardware-data-grid,.hardware-layout,.patient-panel__meta,.plot-results-row,.plot-results-table__head,.printout-meta,.result-print-grid,.summary-strip{grid-template-columns:1fr}.plot-results-table__head{display:none}.hardware-device-card{flex-direction:column}.hardware-status-pill{align-self:flex-start}.plot-results-row{gap:6px}.dem-error-controls__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dem-audio-review__grid,.dem-audio-review__player{grid-template-columns:1fr}.dem-audio-review__counts{grid-template-columns:repeat(2,minmax(0,1fr))}.plot-results-row>span,.plot-results-row>strong{display:block}.assessment-presets .preset-row,.patient-hub-actions,.patient-hub__meta,.patient-name-fields,.patient-search-bar{grid-template-columns:1fr}.assessment-test-row{grid-template-columns:78px minmax(0,1fr);align-items:flex-start}.assessment-test-row em{grid-column:2;text-align:left}.sequence-queue__item{grid-template-columns:28px 32px minmax(0,1fr);align-items:start}.sequence-queue__item .sequence-queue__handle{grid-row:1/span 2}.sequence-queue__item .assessment-test-glyph{grid-column:2}.sequence-queue__item>strong{grid-column:3}.sequence-queue__controls{grid-column:1/-1;flex-wrap:wrap}}@media (max-width:1050px){.desktop-shell{--shell-sidebar-width:72px;--patient-context-height:56px}.settings-tabs,.shell-header{left:var(--shell-sidebar-width)}.desktop-main{margin-left:var(--shell-sidebar-width);padding-top:calc(var(--electron-titlebar-height, 0px) + var(--shell-header-height) + var(--patient-context-height) + var(--patient-workflow-gap))}.desktop-main--global{padding-top:calc(var(--electron-titlebar-height, 0px) + var(--shell-header-height))}.desktop-rail{position:static;width:100%;height:100%;padding:16px 12px;border-right:1px solid var(--line);border-bottom:0}.desktop-nav__item,.desktop-rail__brand{justify-content:center;padding-right:0;padding-left:0}.desktop-rail__brand{justify-content:center}.desktop-nav__copy,.desktop-nav__label,.desktop-rail__brand-copy{display:none}.product-switcher{min-height:40px}.theme-toggle{justify-self:center;width:40px}.theme-toggle[data-state=checked] .theme-toggle__thumb{transform:translateX(10px)}}@media (max-width:720px){.desktop-shell{--shell-sidebar-width:0px;--patient-context-height:56px;--patient-workflow-gap:14px;padding:0}.desktop-rail-shell{display:none}.settings-tabs,.shell-header{left:0}.settings-tabs{top:calc(var(--electron-titlebar-height, 0px) + var(--shell-header-height));right:0;padding:0 12px}.shell-topbar__inner{padding-inline:10px}.desktop-main{min-height:100vh;margin-left:0;padding-top:calc(var(--electron-titlebar-height, 0px) + var(--shell-header-height) + var(--patient-context-height) + var(--patient-workflow-gap));border-radius:0}.desktop-main--global{padding-top:calc(var(--electron-titlebar-height, 0px) + var(--shell-header-height))}.patient-context-bar{padding:0 12px}.patient-context-bar__nav{width:100%}.workspace-body,.workspace-header{padding-inline:16px}}@media print{@page{size:portrait;margin:10mm}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-page,body,html{background:#fff}.report-page{min-height:auto;padding:0}.report-status,.report-toolbar{display:none!important}.report-sheet{width:auto;margin:0;padding:0;border:0;border-radius:0;box-shadow:none}.report-header{gap:12px;padding-bottom:9px}.report-header h1{font-size:18pt}.report-header dt,.report-header span{font-size:8pt}.report-header dd{font-size:9pt}.report-header dl{grid-template-columns:repeat(3,max-content);gap:10px}.report-section{gap:6px}.report-plots,.report-plots__primary-pair,.session-report-print__secondary-grid{gap:7px}.report-plots .eye-plot{gap:4px;padding:5px;border-radius:6px;page-break-inside:avoid;break-inside:avoid}.report-plots .eye-plot__label strong,.report-plots .eye-plot__section-title strong{font-size:8pt}.report-plots .eye-plot__grid{gap:4px}.report-plots>.eye-plot .eye-plot__canvas,.report-plots__primary-pair .eye-plot__canvas{max-height:150px}.report-plots .eye-plot:not(:first-of-type) .eye-plot__canvas{max-height:92px}.report-plots .session-report-print__secondary-grid .eye-plot:not(:first-of-type) .eye-plot__canvas,.report-plots .session-report-print__secondary-grid .eye-plot__canvas{max-height:150px}.report-test-summary{gap:6px;padding:8px;border-radius:6px;page-break-inside:avoid;break-inside:avoid}.report-test-summary h2{font-size:11pt}.report-test-summary>header span,.report-test-summary>header strong{font-size:7.5pt}.report-test-summary__plot .eye-plot__canvas{max-height:110px}.compare-report-sessions{gap:7px}.compare-report-sessions>div,.compare-report-test{padding:8px;border-radius:6px;page-break-inside:avoid;break-inside:avoid}.compare-report-test,.compare-report-tests{gap:7px}.compare-report-test h2{font-size:11pt}.compare-report-plot-slot__header,.compare-report-test>header span{font-size:7.5pt}.compare-report-plot-grid{gap:7px}.compare-report-plot-slot{gap:5px}.compare-report-plot-slot .eye-plot__canvas{max-height:110px}.desktop-shell{padding:0;background:#fff}.desktop-main,.desktop-main--global,.desktop-main--patient{padding:0!important;background:#fff}.desktop-shell__frame{display:block;min-height:auto;border:0;border-radius:0;overflow:visible}.desktop-rail,.desktop-rail-shell,.electron-app-menu,.electron-drag-strip,.electron-top-bar,.patient-context-bar,.pdf-export-row,.pdf-export-status,.session-detail-footer,.session-detail-nav,.session-flags,.settings-button,.shell-header,.shell-topbar,.telemetry-box__interactive,.telemetry-button,.test-detail-actions,.workflow-sidebar-toggle,.workflow-utilities,.workspace-header{display:none!important}.session-report-heading{position:static;z-index:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end;visibility:visible;pointer-events:auto;padding:0 0 10px;border-bottom:2px solid #1f2d28;color:#17201d}.session-report-heading dt,.session-report-heading span{color:#5f6f69;font-size:8.5pt;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.session-report-heading h1{margin:2px 0 0;font-size:18pt;line-height:1.08}.session-report-heading dl{display:grid;grid-template-columns:repeat(3,max-content);gap:12px;margin:0}.session-report-heading div{display:grid;gap:2px}.session-report-heading dd{margin:0;color:#17201d;font-size:9.5pt;font-weight:700}.session-report-print{position:static;z-index:auto;display:grid;gap:7px;width:auto;visibility:visible;pointer-events:auto}.session-report-print__plots,.session-report-print__section{display:grid;gap:8px}.session-report-print__secondary-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;align-items:start}.workspace-body{padding:0}.workspace-panel{border:0;border-radius:0;padding:0;background:#fff}.telemetry-box{padding:0;border:0;background:#fff}.plot-results-row,.plot-results-table__head{grid-template-columns:minmax(150px,1.25fr) minmax(54px,.35fr) minmax(54px,.35fr) minmax(76px,.45fr);gap:6px}.plot-results-table__head{padding:5px 7px;font-size:.56rem}.plot-results-row{padding:6px 7px}.plot-results-row p{display:none}.plot-results-row>span,.plot-results-row>strong{font-size:.7rem}.plot-results-row div>strong{font-size:.72rem}.result-print-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.eye-plot,.result-print-card{page-break-inside:avoid;break-inside:avoid}.eye-plot{gap:4px;padding:5px;border:1px solid #d7dedb;border-radius:6px;background:#fff}.eye-plot__label strong,.eye-plot__section-title strong{color:#17201d;font-size:8pt}.eye-plot__grid{gap:4px}.eye-plot__canvas{border-color:#cfd6d3;border-radius:4px}.session-report-print__plots .report-plots__primary-pair .eye-plot__canvas,.session-report-print__plots>.eye-plot .eye-plot__canvas,.session-report-print__secondary-grid .eye-plot__canvas{max-height:150px}}.oculo-breath-pupil{position:absolute;inset:0;color:#eef6ff}.oculo-breath-pupil__fixation{position:absolute;left:50%;top:50%;width:74px;height:74px;transform:translate(-50%,-50%);z-index:2}.oculo-breath-pupil__fixation span,.oculo-breath-pupil__fixation:after,.oculo-breath-pupil__fixation:before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.oculo-breath-pupil__fixation:before{width:58px;height:2px;background:currentColor}.oculo-breath-pupil__fixation:after{width:2px;height:58px;background:currentColor}.oculo-breath-pupil__fixation span{width:10px;height:10px;border-radius:999px;background:#f8fafc;box-shadow:0 0 24px rgba(255,255,255,.55)}.oculo-breath-pupil__graph{position:absolute;left:24px;bottom:24px;width:min(620px,calc(100% - 340px));min-height:260px;padding:18px;border:1px solid rgba(226,232,240,.18);border-radius:8px;background:rgba(8,16,28,.78);box-shadow:0 22px 70px rgba(0,0,0,.28);z-index:1}.oculo-breath-pupil__graph svg{display:block;width:100%;height:210px;border-radius:6px;overflow:hidden}.oculo-breath-pupil__graph line{stroke:rgba(226,232,240,.16);stroke-width:.45}.oculo-breath-pupil__graph polyline{fill:none;stroke:#e7f9a9;stroke-width:1.35;vector-effect:non-scaling-stroke}.oculo-breath-pupil__phase-fill--inhale{fill:rgba(37,99,235,.18)}.oculo-breath-pupil__phase-fill--exhale{fill:rgba(249,115,22,.22)}.oculo-breath-pupil__axis,.oculo-breath-pupil__phase{display:flex;justify-content:space-between;gap:12px;color:rgba(238,246,255,.7);font-size:.76rem;font-weight:800}.oculo-breath-pupil__phase{margin-bottom:12px}.oculo-breath-pupil__phase span{padding:5px 9px;border-radius:999px;border:1px solid rgba(226,232,240,.18)}.oculo-breath-pupil__phase span.is-active:first-child{color:#bfdbfe;border-color:rgba(96,165,250,.6)}.oculo-breath-pupil__phase span.is-active:last-child{color:#fed7aa;border-color:rgba(251,146,60,.65)}.oculo-breath-pupil__axis{margin-top:10px}.oculo-breath-pupil__metrics{position:absolute;right:24px;top:50%;width:260px;transform:translateY(-50%);display:grid;gap:10px;z-index:1}.oculo-breath-pupil__metrics div{display:grid;gap:4px;min-height:78px;padding:14px;border:1px solid rgba(226,232,240,.16);border-radius:8px;background:rgba(15,23,42,.78)}.oculo-breath-pupil__metrics span{color:rgba(238,246,255,.62);font-size:.72rem;font-weight:800;text-transform:uppercase}.oculo-breath-pupil__metrics strong{font-size:1.1rem}.oculo-breath-pupil__instructions{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);color:rgba(238,246,255,.76);text-align:center;z-index:2}.breath-pupil-trace{display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.breath-pupil-trace footer,.breath-pupil-trace header,.breath-pupil-trace__legend{display:flex;align-items:center;justify-content:space-between;gap:12px}.breath-pupil-trace h3{margin:0}.breath-pupil-trace__legend span{padding:5px 9px;border-radius:999px;font-size:.76rem;font-weight:800}.breath-pupil-trace__legend .is-inhale{color:#1d4ed8;background:rgba(59,130,246,.12)}.breath-pupil-trace__legend .is-exhale{color:#c2410c;background:rgba(249,115,22,.14)}.breath-pupil-trace__plot{position:relative;min-height:260px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#f8fafc}.breath-pupil-trace--compact .breath-pupil-trace__plot{min-height:190px}.breath-pupil-trace__band,.breath-pupil-trace__bands{position:absolute;inset:0}.breath-pupil-trace__band--inhale{background:rgba(59,130,246,.12)}.breath-pupil-trace__band--exhale{background:rgba(249,115,22,.16)}.breath-pupil-trace__plot svg{position:relative;display:block;width:100%;height:260px}.breath-pupil-trace--compact .breath-pupil-trace__plot svg{height:190px}.breath-pupil-trace__plot line{stroke:rgba(15,23,42,.16);stroke-width:.4}.breath-pupil-trace__plot polyline{fill:none;stroke:#0f172a;stroke-width:1.25;vector-effect:non-scaling-stroke}.breath-pupil-trace__breath{position:relative;height:22px;border-radius:999px;overflow:hidden;background:var(--surface-muted)}.breath-pupil-trace__breath-segment{position:absolute;top:0;bottom:0}.breath-pupil-trace__breath-segment--inhale{background:#60a5fa}.breath-pupil-trace__breath-segment--exhale{background:#fb923c}.breath-pupil-trace footer{color:var(--muted);font-size:.82rem;font-weight:700}@media (max-width:860px){.oculo-breath-pupil__metrics{left:14px;right:14px;top:14px;width:auto;transform:none;grid-template-columns:repeat(2,minmax(0,1fr))}.oculo-breath-pupil__graph{left:14px;right:14px;bottom:58px;width:auto;min-height:190px;padding:12px}.oculo-breath-pupil__graph svg{height:140px}.oculo-breath-pupil__metrics div{min-height:68px}.breath-pupil-trace footer,.breath-pupil-trace header{align-items:flex-start;flex-direction:column}}