*{box-sizing:border-box;margin:0;padding:0}html{overflow:hidden}:root{--z0-base: #1c1b17;--z1-card: #25241f;--z2-panel: #2e2d27;--z3-content: #38362f;--z4-thread: #413f37;--z5-inset: #4a4840;--bg: var(--z0-base);--bg-sidebar: var(--z0-base);--bg-card: rgba(37, 36, 31, .95);--bg-card-alt: rgba(37, 36, 31, .95);--bg-hover: rgba(37, 36, 31, .97);--text-primary: #e8e4dc;--text-secondary: #b0a898;--text-tertiary: #7a7468;--text-inv: #e8e4dc;--text-inv-secondary: rgba(232,228,220,.5);--accent: #CAFF00;--accent-light: rgba(202,255,0,.12);--accent-warm: #d29922;--accent-warm-light: rgba(210,153,34,.12);--accent-rose: #CAFF00;--accent-rose-light: rgba(202,255,0,.12);--accent-blue: #58a6ff;--accent-blue-light: rgba(88,166,255,.12);--border: rgba(255,255,255,.08);--border-medium: rgba(255,255,255,.12);--border-sidebar: rgba(255,255,255,.06);--border-accent: rgba(255,255,255,.06);--border-accent-hover: rgba(255,255,255,.12);--accent-a04: rgba(202,255,0,.04);--accent-a05: rgba(202,255,0,.05);--accent-a06: rgba(202,255,0,.06);--accent-a08: rgba(202,255,0,.08);--accent-a10: rgba(202,255,0,.1);--accent-a12: rgba(202,255,0,.12);--accent-a15: rgba(202,255,0,.15);--accent-a20: rgba(202,255,0,.2);--accent-a25: rgba(202,255,0,.25);--accent-a30: rgba(202,255,0,.3);--accent-a35: rgba(202,255,0,.35);--accent-a40: rgba(202,255,0,.4);--accent-a50: rgba(202,255,0,.5);--accent-a60: rgba(202,255,0,.6);--accent-a70: rgba(202,255,0,.7);--accent-a80: rgba(202,255,0,.8);--accent-a85: rgba(202,255,0,.85);--accent-a90: rgba(202,255,0,.9);--accent-a95: rgba(202,255,0,.95);--accent-glow-sm: 0 0 6px rgba(202,255,0,.2);--accent-glow-md: 0 0 8px rgba(202,255,0,.3);--accent-glow-lg: 0 0 12px rgba(202,255,0,.4);--accent-text-glow: 0 0 10px rgba(202,255,0,.3);--accent-text-glow-sm: 0 0 10px rgba(202,255,0,.2);--accent-shadow-chart: 0 3px 12px rgba(202,255,0,.35);--accent-shadow-btn: 0 4px 12px rgba(202,255,0,.3);--accent-shadow-btn-hover: 0 6px 20px rgba(202,255,0,.45);--accent-shadow-glow: 0 0 20px rgba(202,255,0,.1);--accent-shadow-drag: 0 0 8px rgba(202,255,0,.4);--shadow: 0 1px 2px rgba(0,0,0,.2);--shadow-hover: 0 2px 8px rgba(0,0,0,.3);--shadow-lg: 0 4px 16px rgba(0,0,0,.4);--nav-brand: rgba(202,255,0,.7);--nav-heading: rgba(202,255,0,.2);--nav-icon: rgba(202,255,0,.45);--nav-label: rgba(202,255,0,.5);--nav-hover: rgba(202,255,0,.7);--nav-muted: rgba(202,255,0,.15);--nav-muted-text: rgba(255,255,255,.25);--nav-glow: 0 0 10px rgba(202,255,0,.3);--nav-scroll: rgba(202,255,0,.1);--nav-hover-bg: rgba(202,255,0,.04);--bg-content: var(--z0-base);--bg-topbar: var(--z0-base);--scroll-thumb: rgba(255,255,255,.12);--scroll-thumb-hover: rgba(255,255,255,.25);--bg-sidebar-mobile: rgba(28,27,23,.92);--radius: 6px;--radius-sm: 4px;--radius-xs: 3px;--module-radius: 24px;--module-padding: 20px;--module-gap: 16px;--module-shadow: 0 2px 8px rgba(0, 0, 0, .3);--module-border: 1px solid rgba(255, 255, 255, .08);--widget-sm: 330px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 20px;--space-xl: 28px;--font-serif: "Rubik", "Menlo", sans-serif;--font-sans: "Rubik", "Menlo", sans-serif;--font-size: 11px;color-scheme:dark}[data-theme=dark]{--z0-base: #0a0a0e;--z1-card: #0e0e12;--z2-panel: #111115;--z3-content: #141418;--z4-thread: #18181c;--z5-inset: #1c1c20;--bg: var(--z0-base);--bg-sidebar: var(--z0-base);--bg-card: rgba(14, 14, 18, .95);--bg-card-alt: rgba(14, 14, 18, .95);--bg-hover: rgba(255, 255, 255, .06);--bg-sidebar-mobile: rgba(10, 10, 14, .92);--text-primary: #e8e4dc;--text-secondary: #b0a898;--text-tertiary: #6a6560;--border: rgba(255,255,255,.08);--border-medium: rgba(255,255,255,.12);--border-sidebar: rgba(255,255,255,.06);--accent: #4ec9b0;--accent-light: rgba(78,201,176,.12);--accent-warm: #d29922;--accent-warm-light: rgba(210,153,34,.12);--accent-rose: #4ec9b0;--accent-rose-light: rgba(78,201,176,.12);--accent-blue: #58a6ff;--accent-blue-light: rgba(88,166,255,.12);--accent-a04: rgba(78,201,176,.04);--accent-a05: rgba(78,201,176,.05);--accent-a06: rgba(78,201,176,.06);--accent-a08: rgba(78,201,176,.08);--accent-a10: rgba(78,201,176,.1);--accent-a12: rgba(78,201,176,.12);--accent-a15: rgba(78,201,176,.15);--accent-a20: rgba(78,201,176,.2);--accent-a25: rgba(78,201,176,.25);--accent-a30: rgba(78,201,176,.3);--accent-a35: rgba(78,201,176,.35);--accent-a40: rgba(78,201,176,.4);--accent-a50: rgba(78,201,176,.5);--accent-a60: rgba(78,201,176,.6);--accent-a70: rgba(78,201,176,.7);--accent-a80: rgba(78,201,176,.8);--accent-a85: rgba(78,201,176,.85);--accent-a90: rgba(78,201,176,.9);--accent-a95: rgba(78,201,176,.95);--accent-glow-sm: 0 0 6px rgba(78,201,176,.2);--accent-glow-md: 0 0 8px rgba(78,201,176,.3);--accent-glow-lg: 0 0 12px rgba(78,201,176,.4);--accent-text-glow: 0 0 10px rgba(78,201,176,.3);--accent-text-glow-sm: 0 0 10px rgba(78,201,176,.2);--accent-shadow-chart: 0 3px 12px rgba(78,201,176,.35);--accent-shadow-btn: 0 4px 12px rgba(78,201,176,.3);--accent-shadow-btn-hover: 0 6px 20px rgba(78,201,176,.45);--accent-shadow-glow: 0 0 20px rgba(78,201,176,.1);--accent-shadow-drag: 0 0 8px rgba(78,201,176,.4);--shadow: 0 1px 2px rgba(0,0,0,.3);--shadow-hover: 0 2px 8px rgba(0,0,0,.4);--shadow-lg: 0 4px 16px rgba(0,0,0,.5);--module-shadow: 0 2px 8px rgba(0, 0, 0, .4);--module-border: 1px solid rgba(255, 255, 255, .06);--nav-brand: rgba(78,201,176,.7);--nav-heading: rgba(78,201,176,.2);--nav-icon: rgba(78,201,176,.45);--nav-label: rgba(78,201,176,.5);--nav-hover: rgba(78,201,176,.7);--nav-muted: rgba(78,201,176,.15);--nav-muted-text: rgba(255,255,255,.25);--nav-glow: 0 0 10px rgba(78,201,176,.3);--nav-scroll: rgba(78,201,176,.1);--nav-hover-bg: rgba(78,201,176,.04);--bg-content: var(--z0-base);--bg-topbar: var(--z0-base);--scroll-thumb: rgba(255,255,255,.12);--scroll-thumb-hover: rgba(255,255,255,.25);color-scheme:dark}[data-theme=olive]{--z0-base: #1c1b17;--z1-card: #25241f;--z2-panel: #2e2d27;--z3-content: #38362f;--z4-thread: #413f37;--z5-inset: #4a4840;--bg: var(--z0-base);--bg-sidebar: var(--z0-base);--bg-card: rgba(37, 36, 31, .95);--bg-card-alt: rgba(37, 36, 31, .95);--bg-hover: rgba(37, 36, 31, .97);--text-primary: #e8e4dc;--text-secondary: #b0a898;--text-tertiary: #7a7468;--border: rgba(255,255,255,.08);--border-sidebar: rgba(255,255,255,.06);color-scheme:dark}[data-theme=light]{--z0-base: #d4cfba;--z1-card: #e5e2d6;--z2-panel: #efeee6;--z3-content: #f5f5f0;--z4-thread: #f9f9f6;--z5-inset: #fbfbfa;--bg: var(--z0-base);--bg-sidebar: var(--z0-base);--bg-card: var(--z3-content);--bg-card-alt: var(--z2-panel);--bg-hover: #d9d4c0;--text-primary: #2a2a2a;--text-secondary: #5a5a5a;--text-tertiary: #8a8578;--text-inv: #2a2a2a;--text-inv-secondary: rgba(42,42,42,.5);--accent: #3d5a3d;--accent-light: rgba(61,90,61,.12);--accent-warm: #a57c52;--accent-warm-light: rgba(165,124,82,.12);--accent-rose: #3d5a3d;--accent-rose-light: rgba(61,90,61,.12);--accent-blue: #1a6dcc;--accent-blue-light: rgba(26,109,204,.1);--border: #e0ded8;--border-medium: #d9d0c4;--border-sidebar: rgba(0,0,0,.06);--shadow: 0 1px 2px rgba(42,42,42,.05);--shadow-hover: 0 2px 8px rgba(42,42,42,.08);--shadow-lg: 0 4px 16px rgba(42,42,42,.12);--module-shadow: 0 3px 8px rgba(42,42,42,.06), 0 6px 20px rgba(42,42,42,.04);--module-border: 1px solid rgba(0,0,0,.05);--accent-a04: rgba(61,90,61,.04);--accent-a05: rgba(61,90,61,.05);--accent-a06: rgba(0,0,0,.05);--accent-a08: rgba(61,90,61,.07);--accent-a10: rgba(61,90,61,.08);--accent-a12: rgba(61,90,61,.1);--accent-a15: rgba(61,90,61,.12);--accent-a20: rgba(61,90,61,.2);--accent-a25: rgba(61,90,61,.25);--accent-a30: rgba(61,90,61,.3);--accent-a35: rgba(61,90,61,.38);--accent-a40: rgba(61,90,61,.45);--accent-a50: rgba(61,90,61,.55);--accent-a60: rgba(61,90,61,.65);--accent-a70: rgba(61,90,61,.78);--accent-a80: rgba(61,90,61,.85);--accent-a85: rgba(61,90,61,.88);--accent-a90: rgba(61,90,61,.92);--accent-a95: rgba(61,90,61,.95);--accent-glow-sm: none;--accent-glow-md: none;--accent-glow-lg: none;--accent-text-glow: none;--accent-text-glow-sm: none;--accent-shadow-chart: 0 3px 12px rgba(61,90,61,.1);--accent-shadow-btn: 0 4px 12px rgba(61,90,61,.08);--accent-shadow-btn-hover: 0 6px 20px rgba(61,90,61,.12);--accent-shadow-glow: none;--accent-shadow-drag: 0 0 8px rgba(61,90,61,.1);--border-accent: rgba(0,0,0,.06);--border-accent-hover: rgba(0,0,0,.1);--nav-brand: #3d5a3d;--nav-heading: #8a8578;--nav-icon: #7a8a5a;--nav-label: #5a6e3a;--nav-hover: #3d5a3d;--nav-muted: rgba(0,0,0,.06);--nav-muted-text: #8a8578;--nav-glow: none;--nav-scroll: rgba(0,0,0,.08);--nav-hover-bg: rgba(61,90,61,.06);--bg-content: var(--z0-base);--bg-topbar: var(--z0-base);--scroll-thumb: rgba(0,0,0,.1);--scroll-thumb-hover: rgba(0,0,0,.2);--bg-sidebar-mobile: rgba(212,207,186,.92);color-scheme:light}body{font-family:var(--font-sans);font-size:var(--font-size);background:var(--bg);color:var(--text-primary);min-height:100vh;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font-family:inherit;font-size:inherit}#root{width:100%}body,.portal-view,.portal-sidebar,.portal-railbar,.portal-content,.portal-systime,.portal-nav-item,.railbar-nav-item,.portal-logo-name,.sidebar-section-header{transition:background .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease,backdrop-filter .3s ease}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#caff0026;border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#caff004d}[data-theme=light] ::-webkit-scrollbar-thumb{background:#0000001f}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#00000040}@keyframes fadeUp{0%{opacity:0}to{opacity:1}}.module-view-transition{animation:moduleViewFadeIn .3s ease-out}@keyframes moduleViewFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}:root{--stage-awake: #ff6b4a;--stage-rem: #a3e635;--stage-core: #22c55e;--stage-deep: #15803d}[data-theme=light]{--stage-awake: #c47a5a;--stage-rem: #8a9a5a;--stage-core: #5a7a3a;--stage-deep: #3d5a2a}.sleep-card{background:var(--bg-card);border-radius:var(--module-radius);border:1px solid var(--accent-a06);box-shadow:var(--module-shadow);padding:var(--module-padding)}.sleep-card-title{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--accent-a70);font-weight:500;margin-bottom:16px;font-family:var(--font-sans)}.sleep-headline{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.sleep-headline-date{font-size:11px;letter-spacing:.1em;color:var(--text-secondary)}.sleep-headline-value{font-family:var(--font-serif);font-size:32px;color:var(--text-primary);line-height:1}.sleep-headline-label{font-size:12px;color:var(--text-secondary);letter-spacing:.08em}.sleep-metrics-rows{display:flex;flex-direction:column}.sleep-metric-row{display:flex;align-items:center;gap:14px;padding:11px 0}.sleep-metric-row+.sleep-metric-row{border-top:1px solid var(--border)}.sleep-metric-icon{width:36px;height:36px;border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;background:var(--accent-light);color:var(--accent);flex-shrink:0}.sleep-metric-icon svg{width:18px;height:18px}.sleep-metric-label{font-size:13px;font-weight:500;color:var(--text-primary);flex:1}.sleep-metric-right{text-align:right}.sleep-metric-value{font-family:var(--font-serif);font-size:15px;font-variant-numeric:tabular-nums;color:var(--text-primary)}.sleep-metric-target{display:block;font-size:10px;color:var(--accent);font-weight:400;margin-top:1px}.sleep-sessions-legend{display:flex;gap:16px;margin-bottom:12px}.sleep-sessions-legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-secondary);letter-spacing:.04em}.sleep-sessions-legend-dot{width:8px;height:8px;border-radius:50%}.sleep-empty{color:var(--text-tertiary);font-size:13px;padding:32px 0;text-align:center}.sleep-card .hearing-charts{margin:0}.sleep-card .sleep-stage-summary{margin-top:16px}.sleep-detail-page{display:flex;flex-direction:column;gap:20px}.sleep-detail-section{background:var(--z3-content, var(--bg-card));border-radius:var(--module-radius);border:1px solid var(--border);padding:24px}.sleep-detail-section-title{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-secondary);font-weight:500;margin-bottom:16px}.sleep-detail-hypnogram-section{padding-bottom:20px}.sleep-detail-headline{display:flex;align-items:baseline;gap:12px;margin-bottom:12px;flex-wrap:wrap}.sleep-detail-date{font-size:11px;letter-spacing:.1em;color:var(--text-tertiary);text-transform:uppercase}.sleep-detail-big{font-family:var(--font-serif);font-size:2rem;color:var(--text-primary);line-height:1}.sleep-detail-sub{font-size:13px;color:var(--text-secondary)}.sleep-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:700px){.sleep-detail-grid{grid-template-columns:1fr}}.sleep-detail-metrics{display:flex;flex-direction:column}.sleep-detail-metric-row{display:flex;align-items:center;gap:12px;padding:10px 0}.sleep-detail-metric-row+.sleep-detail-metric-row{border-top:1px solid var(--border)}.sleep-detail-metric-label{font-size:12px;color:var(--text-secondary);letter-spacing:.03em;min-width:90px;flex-shrink:0}.sleep-detail-metric-value{font-family:var(--font-serif);font-size:14px;color:var(--text-primary);font-variant-numeric:tabular-nums;flex:1}.sleep-detail-metric-target{font-size:11px;color:var(--accent);white-space:nowrap}.sleep-detail-chart-container{width:100%;min-height:200px}.sleep-detail-legend{display:flex;gap:20px;margin-top:12px;justify-content:center}.sleep-detail-legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-secondary);letter-spacing:.04em}.sleep-detail-legend-dot{width:8px;height:8px;border-radius:50%}.sleep-toolbar-center{display:flex;align-items:center;gap:8px}.sleep-time-range-tabs{display:flex;gap:4px}.sleep-time-range-tab{padding:5px 10px;background:transparent;border:1px solid var(--border);border-radius:999px;color:var(--text-secondary);font-size:11px;font-weight:500;letter-spacing:.06em;cursor:pointer;transition:background .15s,border-color .15s,color .15s;font-family:inherit;line-height:1}.sleep-time-range-tab:hover{background:var(--bg-hover);border-color:var(--text-tertiary);color:var(--text-primary)}.sleep-time-range-tab.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.sleep-calendar-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:background .15s,border-color .15s,color .15s;position:relative}.sleep-calendar-btn:hover{background:var(--bg-hover);border-color:var(--text-tertiary);color:var(--text-primary)}.sleep-calendar-btn svg{width:16px;height:16px}@media(max-width:600px){.sleep-time-range-tab{padding:4px 7px;font-size:10px}.sleep-toolbar-center{gap:4px}}.hypnogram-tooltip{position:absolute;top:0;transform:translate(-50%,-100%);background:var(--bg-secondary, #161b22);border:1px solid var(--border, #30363d);border-radius:8px;padding:8px 12px;pointer-events:none;z-index:20;box-shadow:0 4px 12px #00000040;font-size:11px;color:var(--text-primary);white-space:nowrap;text-align:center}.ht-stage{font-weight:600;font-size:12px;margin-bottom:2px}.ht-times{color:var(--text-tertiary);font-size:10px}.ht-duration{font-weight:600;font-size:13px;margin-top:4px;color:var(--text-primary)}.sleep-report{display:flex;flex-direction:column;gap:12px;padding:0 24px 24px;max-width:900px;width:100%;margin:0 auto}.sleep-report-header{padding-bottom:12px}.sleep-report-title{font-size:13px;font-weight:600;letter-spacing:.18em;color:var(--text-primary);margin-bottom:6px}.sleep-report-meta{font-size:10px;color:var(--text-tertiary);letter-spacing:.06em}.sleep-report-divider{margin:0 8px;opacity:.35}.sleep-report-separator{display:none}.sleep-report-section{background:var(--bg-card);border-radius:var(--module-radius, 16px);border:1px solid var(--accent-a06);box-shadow:var(--module-shadow);padding:20px 24px;position:relative}.sleep-report-section-title{font-size:10px;font-weight:600;letter-spacing:.15em;color:var(--accent);margin-bottom:12px}.sleep-report-stage-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;vertical-align:middle}.sleep-report-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}.sleep-report-table thead th{font-size:9px;font-weight:500;letter-spacing:.12em;color:var(--text-tertiary);text-align:left;padding:0 8px 8px 0;border-bottom:1px solid rgba(255,255,255,.06);white-space:nowrap}.sleep-report-table tbody td{padding:7px 8px 7px 0;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.025);white-space:nowrap;vertical-align:middle}.sleep-report-table tbody tr:last-child td{border-bottom:none}.sleep-report-table td.value{color:var(--text-primary);font-weight:500;font-family:var(--font-mono, monospace);font-size:12px}.sleep-report-table td.secondary{color:var(--text-tertiary);font-size:11px}.sleep-report-table td.ref,.sleep-report-table td.secondary.ref{color:var(--text-tertiary);opacity:.7;font-size:10px;font-style:italic}.sleep-report-table td.delta{font-family:var(--font-mono, monospace);font-size:11px;color:var(--text-tertiary);opacity:.6}.sleep-report-table td.delta.positive{color:var(--accent);opacity:1}.sleep-report-table td.delta.negative{color:#8cb40099;opacity:1}.sleep-report-table td.status{font-size:10px;font-weight:600;letter-spacing:.1em}.sleep-report-table td.date{font-size:10px;color:var(--text-tertiary);opacity:.5}.sleep-report-footer{padding:12px 0 4px;font-size:9px;color:var(--text-tertiary);letter-spacing:.1em;opacity:.6}[data-theme=light] .sleep-report-section{box-shadow:var(--module-shadow),inset 0 1px #ffffff80,inset 0 -1px #ffffff59}[data-theme=light] .sleep-report-table thead th{border-bottom-color:#0000000f}[data-theme=light] .sleep-report-table tbody td{border-bottom-color:#0000000a}@media(max-width:600px){.sleep-report{padding:0 12px 16px}.sleep-report-section{padding:16px}.sleep-report-table{font-size:11px}.sleep-report-table thead th{font-size:8px}.sleep-report-table td.value{font-size:11px}}.sleep-health-report{display:flex;flex-direction:column;gap:12px;padding:0 24px 24px;max-width:900px;width:100%;margin:0 auto}.sleep-hero{display:flex;flex-direction:column;align-items:center;padding:28px 24px 20px;text-align:center}.sleep-hero-value{font-family:var(--font-serif);font-size:48px;font-weight:400;color:var(--text-primary);line-height:1;letter-spacing:-.02em}.sleep-hero-label{font-size:10px;font-weight:600;letter-spacing:.15em;color:var(--text-tertiary);margin-top:6px;text-transform:uppercase}.sleep-hero-meta{font-size:11px;color:var(--text-tertiary);margin-top:8px;letter-spacing:.04em}.sleep-hero-meta span{margin:0 6px;opacity:.4}.sleep-chart-section{padding:16px 20px 20px}.sleep-chart-section .sleep-detail-legend{margin-top:8px}.sleep-metrics-rows{display:flex;flex-direction:column;padding:6px 20px 2px}.sleep-metric-header,.sleep-metric-row{display:grid;grid-template-columns:110px 72px 62px 44px 52px 54px 72px;align-items:baseline;column-gap:6px}.sleep-metric-header{padding-bottom:5px;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent)}.sleep-metric-header>*{font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);opacity:.5}.sleep-metric-row{padding:7px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent)}.sleep-metric-row:last-child{border-bottom:none}.sleep-stage-dot{width:6px;height:6px;border-radius:50%;display:inline-block;margin-right:6px;position:relative;top:-1px}.smr-name{font-size:11px;color:var(--text-secondary)}.smr-value{font-weight:600;font-size:12px;color:var(--text-primary);font-variant-numeric:tabular-nums}.smr-prev{font-size:10px;color:var(--text-tertiary);font-variant-numeric:tabular-nums;opacity:.6}.smr-pct{font-size:10px;color:var(--text-tertiary);text-align:right;font-variant-numeric:tabular-nums}.smr-delta{font-size:10px;text-align:right;font-variant-numeric:tabular-nums;font-weight:500}.smr-delta.positive{color:var(--accent)}.smr-delta.negative{color:#f85149}.smr-delta.neutral{color:var(--text-tertiary);opacity:.5}.smr-target{font-size:9px;color:var(--text-tertiary);text-align:right;opacity:.5}.smr-status{font-size:9px;font-weight:600;letter-spacing:.08em;text-align:right}.sleep-schedule-tooltip{position:absolute;top:0;transform:translate(-50%,-100%);background:var(--bg-secondary, #161b22);border:1px solid var(--border, #30363d);border-radius:10px;padding:10px 14px;pointer-events:none;z-index:20;min-width:160px;box-shadow:0 4px 16px #00000040;font-size:11px;color:var(--text-primary);white-space:nowrap}.sst-date{font-weight:600;font-size:12px;margin-bottom:2px}.sst-times{color:var(--text-tertiary);font-size:10px;margin-bottom:8px;letter-spacing:.02em}.sst-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:2px 0}.sst-row+.sst-row{border-top:1px solid var(--border, #30363d);padding-top:3px;margin-top:1px}.sst-total{font-weight:600;font-size:12px}.sst-eff{color:var(--text-secondary);margin-bottom:4px}.sst-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:6px;vertical-align:middle}[data-theme=light] .sleep-health-report .sleep-report-section{box-shadow:var(--module-shadow),inset 0 1px #ffffff80,inset 0 -1px #ffffff59}@media(max-width:600px){.sleep-health-report{padding:0 12px 16px}.sleep-hero-value{font-size:38px}.sleep-stage-rows{padding:8px 16px 16px}.sleep-sub-tabs{padding:8px 12px}}.activity-overview-chart{background:var(--bg-hover);border-radius:14px;padding:16px}.activity-overview-chart-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.activity-trend-toggles{display:flex;gap:6px;margin-bottom:12px}.activity-trend-chip{padding:5px 12px;border-radius:14px;font-size:11px;font-weight:600;border:1px solid rgba(255,255,255,.1);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;font-family:inherit}.activity-trend-chip:hover{border-color:#fff3}.activity-trend-chip.active{background:var(--accent);color:#0d1117;border-color:var(--accent)}.activity-trend-chart{height:160px}.meditation-section-header{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);padding:0 4px 10px;margin-top:4px}.meditation-section-header:not(:first-child){margin-top:8px}.meditation-card{background:var(--bg-card, #161b22);border-radius:var(--module-radius);padding:20px;margin-bottom:14px;box-shadow:var(--module-shadow);border:1px solid var(--accent-a06)}.meditation-card-table{background:var(--bg-hover);border-radius:14px;overflow:hidden}.meditation-divider{height:1px;background:#ffffff0f;margin:0 16px}.meditation-empty{color:var(--text-tertiary);font-size:12px;text-align:center;padding:24px 0}.meditation-card .meditation-overview-chart{background:transparent;padding:0}.meditation-trend-toggles{display:flex;gap:6px;margin-bottom:14px}.meditation-trend-chip{padding:5px 12px;border-radius:14px;font-size:11px;font-weight:600;border:1px solid rgba(255,255,255,.1);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;font-family:inherit}.meditation-trend-chip:hover{border-color:#fff3}.meditation-trend-chip.active{background:var(--accent);color:#0d1117;border-color:var(--accent)}.meditation-section-label{font-size:10px;letter-spacing:.12em;color:color-mix(in srgb,var(--accent) 50%,transparent);text-transform:uppercase;margin-bottom:12px;font-weight:500}.meditation-summary-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.meditation-summary-stat{text-align:center;padding:8px 0}.meditation-summary-value{font-size:18px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.meditation-summary-label{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin-top:4px}.meditation-session-row{display:flex;align-items:center;gap:12px;padding:14px 16px}.meditation-session-icon{width:18px;height:18px;color:var(--accent);flex-shrink:0}.meditation-session-info{flex:1;min-width:0}.meditation-session-name{font-size:14px;font-weight:500;color:var(--text-primary)}.meditation-session-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text-tertiary);margin-top:2px}.meditation-session-duration{font-size:14px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.meditation-practice-row{display:flex;align-items:center;gap:12px;padding:14px 16px}.meditation-practice-info{flex:1;min-width:0}.meditation-practice-name{font-size:14px;font-weight:500;color:var(--text-primary)}.meditation-practice-meta{font-size:12px;color:var(--text-tertiary);margin-top:2px}.meditation-practice-duration{font-size:14px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.meditation-hrv-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:16px}.meditation-hrv-stat{text-align:center}.meditation-hrv-value{font-size:18px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.meditation-hrv-value.positive{color:#22c55e}.meditation-hrv-value.negative{color:#ef4444}.meditation-hrv-label{font-size:10px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);margin-top:4px;display:block}.meditation-hrv-chart{height:140px}.meditation-overview-chart{background:var(--bg-hover);border-radius:14px;padding:16px}.meditation-overview-chart-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.meditation-trend-chart{height:160px}@media(max-width:600px){.meditation-summary-grid,.meditation-hrv-summary{grid-template-columns:1fr 1fr}}.longevity-card{display:flex;flex-direction:column;gap:12px;height:100%;font-family:SF Mono,Fira Code,JetBrains Mono,monospace}.longevity-header{display:flex;align-items:center;gap:16px}.longevity-ring-container{position:relative;width:88px;height:88px;flex-shrink:0}.longevity-ring-svg{width:100%;height:100%;transform:rotate(-90deg)}.longevity-ring-bg{fill:none;stroke:#ffffff0f;stroke-width:6}.longevity-ring-progress{fill:none;stroke-width:6;stroke-linecap:round;transition:stroke-dashoffset 1.2s cubic-bezier(.4,0,.2,1),stroke .6s ease}.longevity-ring-score{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.longevity-score-number{font-size:22px;font-weight:700;letter-spacing:-.5px}.longevity-score-label{font-size:8px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted, #8b949e);margin-top:2px}.longevity-stats{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.longevity-stat-row{display:flex;align-items:baseline;gap:6px}.longevity-stat-value{font-size:16px;font-weight:600;color:var(--color-text, #e6edf3);white-space:nowrap}.longevity-stat-label{font-size:10px;color:var(--color-muted, #8b949e);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.longevity-stat-unit{font-size:10px;color:var(--color-muted, #8b949e)}.longevity-age-row{display:flex;align-items:center;gap:8px;padding:6px 0}.longevity-age-bar{flex:1;height:4px;background:#ffffff0f;border-radius:2px;position:relative;overflow:visible}.longevity-age-marker{position:absolute;top:50%;width:8px;height:8px;border-radius:50%;transform:translate(-50%,-50%);border:1.5px solid var(--color-bg, #0d1117)}.longevity-age-marker--chrono{background:var(--color-muted, #8b949e)}.longevity-age-marker--bio{background:var(--marker-color, #22c55e)}.longevity-age-labels{display:flex;justify-content:space-between;font-size:9px;color:var(--color-muted, #8b949e);margin-top:2px}.longevity-trajectory{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:500;padding:2px 6px;border-radius:4px;background:#ffffff0a}.longevity-trajectory--improving{color:#22c55e}.longevity-trajectory--stable{color:#eab308}.longevity-trajectory--declining{color:#ef4444}.longevity-trajectory-arrow{font-size:12px;line-height:1}.longevity-risks{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto}.longevity-risk-pill{display:inline-flex;align-items:center;gap:3px;font-size:9px;padding:2px 6px;border-radius:3px;border:1px solid;white-space:nowrap}.longevity-risk-pill--critical{color:#ef4444;border-color:#ef44444d;background:#ef444414}.longevity-risk-pill--warning{color:#eab308;border-color:#eab3084d;background:#eab30814}.longevity-risk-pill--attention{color:#f97316;border-color:#f973164d;background:#f9731614}.longevity-risk-dot{width:4px;height:4px;border-radius:50%;flex-shrink:0}.longevity-risk-pill--critical .longevity-risk-dot{background:#ef4444}.longevity-risk-pill--warning .longevity-risk-dot{background:#eab308}.longevity-risk-pill--attention .longevity-risk-dot{background:#f97316}.longevity-lev-row{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--color-muted, #8b949e)}.longevity-lev-value{font-size:13px;font-weight:600;color:#06b6d4}.longevity-coverage{font-size:9px;color:var(--color-muted, #8b949e);opacity:.7;text-align:right}.longevity-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;color:var(--color-muted, #8b949e);font-size:11px}.longevity-loading-spinner{width:24px;height:24px;border:2px solid rgba(255,255,255,.08);border-top-color:#06b6d4;border-radius:50%;animation:longevity-spin .8s linear infinite}@keyframes longevity-spin{to{transform:rotate(360deg)}}.longevity-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;height:100%;color:var(--color-muted, #8b949e);font-size:11px;text-align:center;padding:12px}.longevity-metric-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin-top:8px}.longevity-metric-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:6px}.longevity-metric-bar{width:3px;height:24px;border-radius:1.5px;flex-shrink:0}.longevity-metric-info{flex:1;min-width:0}.longevity-metric-name{font-size:10px;color:var(--color-muted, #8b949e);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.longevity-metric-value{font-size:12px;font-weight:600;color:var(--color-text, #e6edf3)}.longevity-metric-score{font-size:11px;font-weight:600;flex-shrink:0}.console-container{width:100%;max-width:900px;margin:0;font-variant-numeric:tabular-nums}.console-header{margin-bottom:20px;display:flex;align-items:center;gap:10px}.console-back-btn{background:none;border:none;cursor:pointer;padding:4px;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;border-radius:4px;transition:color .2s}.console-back-btn:hover{color:var(--text-primary)}.console-title{font-family:var(--font-serif);font-size:24px;font-style:normal;font-weight:400;color:var(--text-primary);letter-spacing:.01em}.console-description{font-size:13px;color:var(--text-secondary);margin-top:4px;margin-bottom:16px}.console-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}.console-tab{padding:8px 16px;background:transparent;border:1px solid var(--border);border-radius:20px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;font-weight:500}.console-tab:hover{background:var(--bg-hover);border-color:var(--text-tertiary);color:var(--text-primary)}.console-tab.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.console-divider{color:var(--border);margin:16px 0;border-bottom:1px solid var(--border);height:0;overflow:hidden}.console-entries{display:flex;flex-direction:column;gap:10px}.console-entry{display:flex;align-items:baseline;gap:16px;line-height:1.5;padding:4px 0}.console-entry.clickable{cursor:pointer;padding:8px 12px;margin:0 -12px;border-radius:var(--radius-xs);transition:all .2s ease}.console-entry.clickable:hover{background:var(--bg-hover);color:var(--accent)}.console-entry.clickable.selected{background:var(--accent-light);color:var(--accent)}.entry-label{color:var(--text-secondary);font-size:12px;letter-spacing:.04em;min-width:52px;flex-shrink:0;font-weight:500}.entry-value{color:var(--text-primary);font-size:14px}.entry-value.live{color:var(--accent);font-weight:600}.entry-unit{color:var(--text-tertiary);font-size:12px}.entry-secondary{color:var(--text-tertiary);font-size:13px}.entry-source{color:var(--text-tertiary);font-size:11px;margin-left:8px}.entry-target{color:var(--accent);margin-left:16px;font-size:12px;font-weight:500}.console-footer{display:flex;gap:32px;flex-wrap:wrap;margin-top:24px;padding-top:16px;border-top:1px solid var(--border)}.footer-entry{font-size:12px;color:var(--text-tertiary)}.hearing-charts{display:flex;flex-direction:column;gap:8px}.hearing-chart-section{margin-bottom:8px}.hearing-section-header{font-size:13px;color:var(--text-secondary);font-weight:500;margin-bottom:12px}.hearing-legend{display:flex;gap:20px;margin-bottom:12px}.hearing-legend-item{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:12px}.hearing-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.hearing-collapsible-toggle{display:flex;align-items:center;gap:8px;background:none;border:none;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;padding:8px 0;transition:color .2s ease;width:100%;text-align:left}.hearing-collapsible-toggle:hover{color:var(--accent)}.hearing-chevron{color:var(--accent);font-size:1.3em;width:16px;text-align:center}.hearing-raw-data{max-height:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease;opacity:0}.hearing-raw-data.expanded{max-height:800px;opacity:1;padding-top:12px}.hearing-click-hint{text-align:center;color:var(--text-tertiary);font-size:11px;margin-top:8px}.sleep-hypnogram{margin:8px 0}.sleep-time-headline{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}.sleep-time-big{font-family:var(--font-serif);font-size:1.8rem;color:var(--text-primary);font-style:normal}.sleep-time-label{color:var(--text-secondary);font-size:12px;font-weight:500}.sleep-stage-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px;margin:4px 0}.sleep-stage-item{display:flex;align-items:center;gap:8px}.sleep-stage-label{color:var(--text-secondary);font-size:12px;min-width:50px}.sleep-stage-value{color:var(--text-primary);font-size:13px;font-variant-numeric:tabular-nums}.voice-recorder-bar{display:flex;align-items:center;gap:12px;margin-bottom:16px}.voice-rec-btn{background:transparent;border:1px solid var(--border);color:var(--text-secondary);font-size:12px;font-weight:500;padding:8px 18px;border-radius:var(--radius-xs);cursor:pointer;transition:all .2s ease}.voice-rec-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.voice-rec-btn.recording{border-color:var(--accent-rose);color:var(--accent-rose);background:var(--accent-rose-light);animation:rec-pulse 1.5s ease-in-out infinite}.voice-rec-btn:disabled{opacity:.4;cursor:default}@keyframes rec-pulse{0%,to{border-color:var(--accent-rose)}50%{border-color:var(--accent-rose);box-shadow:var(--accent-glow-md)}}.voice-rec-error{color:var(--accent-rose);font-size:12px;cursor:pointer}.voice-rec-error:hover{color:var(--text-primary)}.doctor-panel{display:flex;min-height:500px;max-height:calc(100vh - 200px);border:1px solid var(--border);border-radius:var(--module-radius);overflow:hidden;margin-top:16px}.doctor-sidebar{width:220px;min-width:220px;border-right:1px solid var(--border);overflow-y:auto;padding:0;display:flex;flex-direction:column}.doctor-sidebar-header{padding:10px 14px;border-bottom:1px solid var(--border)}.doctor-chat{flex:1;display:flex;flex-direction:column;min-width:0}.doctor-messages{flex:1;display:flex;flex-direction:column;gap:16px;overflow-y:auto;padding:20px 24px}.doctor-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;flex:1;padding:40px 20px;text-align:center}.doctor-empty-text{font-size:12px;color:var(--accent-a30);max-width:320px;line-height:1.5}.doctor-message{display:flex;flex-direction:column;gap:4px}.doctor-message-header{display:flex;align-items:center;gap:8px}.doctor-message-role{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--text-tertiary)}.doctor-message.assistant .doctor-message-role{color:var(--accent)}.doctor-message-time{font-size:10px;color:var(--text-tertiary);opacity:.5}.doctor-message-content{font-size:13px;color:var(--text-primary);line-height:1.6;word-break:break-word}.doctor-message.user .doctor-message-content{color:var(--text-secondary);padding-left:8px;border-left:2px solid var(--border);white-space:pre-wrap}.doctor-message-content .doctor-p{margin:0 0 8px}.doctor-message-content .doctor-p:last-child{margin-bottom:0}.doctor-message-content .doctor-h2{font-size:14px;font-weight:600;color:var(--accent);margin:16px 0 6px;letter-spacing:.02em}.doctor-message-content .doctor-h3{font-size:13px;font-weight:600;color:var(--text-primary);margin:14px 0 4px;letter-spacing:.02em}.doctor-message-content .doctor-h2:first-child,.doctor-message-content .doctor-h3:first-child{margin-top:0}.doctor-message-content .doctor-hr{border:none;border-top:1px solid var(--border);margin:12px 0}.doctor-message-content .doctor-ul{list-style:none;padding:0;margin:4px 0 8px}.doctor-message-content .doctor-ul li{position:relative;padding-left:16px;margin-bottom:4px}.doctor-message-content .doctor-ul li:before{content:"—";position:absolute;left:0;color:var(--text-tertiary)}.doctor-message-content .doctor-ul .doctor-li-sub{padding-left:28px;color:var(--text-secondary)}.doctor-message-content .doctor-ul .doctor-li-sub:before{left:14px;content:"·"}.doctor-message-content .doctor-inline-code{background:var(--accent-a06);border:1px solid var(--accent-a12);padding:1px 5px;border-radius:3px;font-size:12px}.doctor-message-content strong{color:var(--accent);font-weight:600}.doctor-typing{color:var(--accent);opacity:.6}.doctor-dots span{animation:doctor-dot-pulse 1.4s ease-in-out infinite}.doctor-dots span:nth-child(2){animation-delay:.2s}.doctor-dots span:nth-child(3){animation-delay:.4s}@keyframes doctor-dot-pulse{0%,80%,to{opacity:.2}40%{opacity:1}}.doctor-tool-steps{padding:4px 0 6px;display:flex;flex-direction:column;gap:3px}.doctor-tool-step{color:var(--accent-a30, rgba(255, 51, 51, .3));font-size:.75rem;font-family:var(--font-mono);line-height:1.4}.doctor-tool-step.status,.doctor-tool-step.calling,.doctor-tool-step.done{color:var(--accent-a30, rgba(255, 51, 51, .3))}.doctor-tool-check{margin-right:2px}.doctor-tool-summary{opacity:.7}.doctor-suggestions{display:flex;flex-wrap:wrap;gap:6px;padding:8px 0}.doctor-suggestion-btn{background:transparent;border:1px solid var(--border);color:var(--text-secondary);font-size:12px;padding:6px 12px;border-radius:16px;cursor:pointer;transition:all .15s}.doctor-suggestion-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-a04)}.doctor-input-form{display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid var(--border)}.doctor-input{flex:1;background:transparent;border:1px solid var(--border);border-radius:8px;outline:none;color:var(--text-primary);font-size:13px;font-family:inherit;padding:10px 14px;transition:border-color .15s}.doctor-input:focus{border-color:var(--accent-a30)}.doctor-input::placeholder{color:var(--text-tertiary)}.doctor-send-btn{background:var(--accent-a10);border:1px solid var(--accent-a20);color:var(--accent-a70);padding:8px 10px;border-radius:8px;cursor:pointer;transition:all .15s;flex-shrink:0;display:flex;align-items:center}.doctor-send-btn:hover:not(:disabled){background:var(--accent-a15);color:var(--accent-a90)}.doctor-send-btn:disabled{opacity:.3;cursor:default}.doctor-fullpage{height:100%;display:flex;flex-direction:column}.doctor-fullpage-chat{display:flex;flex-direction:column;height:calc(100vh - 100px);max-width:800px;width:100%}.doctor-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 0 12px;flex-shrink:0}.doctor-topbar-title{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doctor-topbar-btn{background:none;border:1px solid var(--border);color:var(--text-tertiary);width:32px;height:32px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s,border-color .15s}.doctor-topbar-btn:hover{color:var(--accent-a70);border-color:var(--accent-a20)}.doctor-history-popover{position:absolute;top:100%;right:0;margin-top:6px;width:300px;max-height:400px;overflow-y:auto;background:var(--z1-card, #1c2128);border:1px solid var(--border-medium, var(--border));border-radius:12px;box-shadow:0 8px 32px #0000004d;z-index:100;padding:6px 0;scrollbar-width:none}.doctor-history-popover::-webkit-scrollbar{display:none}.doctor-history-empty{padding:20px;text-align:center;color:var(--text-tertiary);font-size:12px}.doctor-history-item{display:flex;flex-direction:column;gap:2px;width:100%;padding:10px 14px;border:none;background:none;cursor:pointer;text-align:left;transition:background .1s}.doctor-history-item:hover{background:var(--bg-hover, rgba(255,255,255,.04))}.doctor-history-item.active{background:var(--accent-a06)}.doctor-history-time{font-size:10px;color:var(--accent-a50)}.doctor-history-title{font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doctor-messages-full{flex:1;display:flex;flex-direction:column;gap:20px;overflow-y:auto;padding:0 0 20px;scrollbar-width:none}.doctor-messages-full::-webkit-scrollbar{display:none}.doctor-empty-full{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;flex:1;text-align:center}.doctor-empty-icon{opacity:.4;margin-bottom:8px}.doctor-suggestions-center{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:8px 0}.doctor-input-full{display:flex;align-items:center;gap:10px;padding:16px 0 0;border-top:1px solid var(--border);flex-shrink:0}.doctor-input-full .doctor-input{flex:1;padding:12px 16px;border-radius:999px;background:#c8c8c814;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.doctor-input-full .doctor-send-btn{border-radius:50%;width:40px;height:40px;padding:0;justify-content:center}@media(max-width:600px){.console-entry{flex-wrap:wrap;gap:8px}.entry-target{margin-left:0;width:100%;padding-left:68px}.console-footer{flex-direction:column;gap:8px}.console-tabs{flex-direction:column}}.diary-sidebar-toolbar{display:flex;align-items:center;gap:6px;padding:0 12px 8px;justify-content:flex-end}.diary-toolbar-btn,.diary-new-btn{width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:none;color:var(--accent-a40);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.diary-toolbar-btn:hover,.diary-toolbar-btn.active,.diary-new-btn:hover{color:var(--accent-a90);border-color:var(--accent-a25);background:var(--accent-a06)}.diary-search-wrapper{position:relative}.diary-search-popup{position:absolute;top:calc(100% + 6px);left:0;width:240px;display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--accent-a25);background:var(--bg-card, #161b22);box-shadow:0 8px 24px #0006;z-index:20}.diary-search-popup-input{flex:1;background:none;border:none;outline:none;color:var(--accent-a90);font-size:12px;font-family:var(--font-sans);min-width:0}.diary-search-popup-input::placeholder{color:var(--accent-a30)}.diary-search-clear{background:none;border:none;color:var(--accent-a40);cursor:pointer;display:flex;align-items:center;padding:2px;transition:color .15s}.diary-search-clear:hover{color:var(--accent-a80)}.diary-sort-wrapper{position:relative}.diary-sort-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:160px;background:var(--bg-card, #161b22);border:1px solid var(--border);border-radius:8px;padding:4px;z-index:20;box-shadow:0 8px 24px #0006}.diary-sort-option{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:7px 10px;border:none;border-radius:5px;background:none;color:var(--accent-a60);font-size:11.5px;font-family:var(--font-sans);cursor:pointer;text-align:left;transition:background .1s}.diary-sort-option:hover{background:var(--accent-a06);color:var(--accent-a90)}.diary-sort-option.active{color:var(--accent, #4ec9b0)}.diary-quick-input{display:flex;align-items:center;gap:6px;padding:0 12px 10px;margin-bottom:4px}.diary-quick-input input{flex:1;padding:9px 14px;border-radius:999px;border:1px solid var(--border);background:#c8c8c80a;color:var(--accent-a80);font-size:11.5px;font-family:var(--font-sans);outline:none;transition:border-color .15s}.diary-quick-input input:focus{border-color:var(--accent-a30)}.diary-quick-input input::placeholder{color:var(--accent-a25)}.diary-quick-send{width:24px;height:24px;border-radius:50%;border:none;background:var(--accent-a10);color:var(--accent-a60);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.diary-quick-send:hover{color:var(--accent-a90);background:var(--accent-a20)}.diary-notes-nav{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.08) transparent}.diary-notes-nav::-webkit-scrollbar{width:4px}.diary-notes-nav::-webkit-scrollbar-track{background:transparent}.diary-notes-nav::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:2px}.diary-sidebar-empty{padding:24px 16px;color:var(--accent-a30);font-size:11px;letter-spacing:.06em}.diary-date-heading{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-a40);padding:12px 14px 4px;font-weight:500}.diary-note-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 14px;background:none;border:none;cursor:pointer;text-align:left;transition:background .1s;font-family:var(--font-sans)}.diary-note-item:hover{background:var(--accent-a04)}.diary-note-item.active{background:var(--accent-a08)}.diary-note-time{font-size:9px;color:var(--accent-a35);font-family:var(--font-mono);letter-spacing:.04em;flex-shrink:0;min-width:50px}.diary-note-title{font-size:11.5px;color:var(--accent-a60);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.diary-note-item.active .diary-note-title{color:var(--accent-a90)}.diary-note-item.observation .diary-note-title{font-style:italic}.diary-content-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--accent-a20);font-size:12px;letter-spacing:.06em}.diary-view{display:flex;flex-direction:column;flex:1}.diary-view-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.diary-view-title{font-size:18px;font-weight:500;color:var(--accent-a90);margin:0;font-family:var(--font-sans)}.diary-view-date{font-size:11px;color:var(--accent-a40);margin-top:4px;display:block}.diary-view-actions{display:flex;gap:6px;margin-left:auto;flex-shrink:0}.diary-view-action-btn{background:none;border:1px solid var(--border);border-radius:6px;padding:5px 7px;cursor:pointer;color:var(--accent-a40);display:flex;align-items:center;transition:all .15s}.diary-view-action-btn:hover{color:var(--accent-a80);border-color:var(--accent-a25)}.diary-view-action-btn.delete:hover{color:#f85149;border-color:#f851494d}.diary-view-content{font-size:13.5px;line-height:1.8;color:var(--accent-a80);white-space:pre-wrap}.diary-editor{display:flex;flex-direction:column;flex:1}.diary-editor-title{width:100%;background:none;border:none;border-bottom:1px solid var(--border);color:var(--accent-a90);font-size:18px;font-weight:500;padding:0 0 12px;margin-bottom:16px;outline:none;font-family:var(--font-sans)}.diary-editor-title::placeholder{color:var(--accent-a25)}.diary-editor-content{width:100%;flex:1;background:none;border:none;color:var(--accent-a80);font-size:13.5px;line-height:1.8;resize:none;outline:none;font-family:var(--font-sans);min-height:300px}.diary-editor-content::placeholder{color:var(--accent-a25)}.diary-editor-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--border);margin-top:16px}.diary-save-btn{background:var(--accent-a10);border:1px solid var(--accent-a20);border-radius:6px;padding:5px 16px;cursor:pointer;color:var(--accent-a90);font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-family:var(--font-sans);transition:all .15s}.diary-save-btn:hover{background:var(--accent-a15)}.diary-save-btn:disabled{opacity:.5;cursor:default}.diary-cancel-btn{background:none;border:1px solid var(--border);border-radius:6px;padding:5px 16px;cursor:pointer;color:var(--accent-a50);font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-family:var(--font-sans);transition:all .15s}.diary-cancel-btn:hover{color:var(--accent-a80);border-color:var(--accent-a20)}.health-categories{max-width:900px;padding:0}.health-categories-list{background:var(--bg-card);border:1px solid var(--accent-a06);border-radius:var(--module-radius);box-shadow:var(--module-shadow);overflow:hidden;margin-top:24px}.health-category-row{display:flex;align-items:center;padding:13px 20px;text-decoration:none;color:var(--text, #e6edf3);border-bottom:1px solid var(--accent-a06);transition:transform .2s,background .2s,border-color .2s;cursor:pointer}.health-category-row:last-child{border-bottom:none}.health-category-row:hover{background:#ffffff08;border-color:var(--accent-a12)}.health-category-icon{width:32px;height:32px;flex-shrink:0;margin-right:16px;display:flex;align-items:center;justify-content:center}.health-category-icon svg{width:24px;height:24px}.health-category-label{flex:1;font-size:12.5px;font-weight:500;letter-spacing:.02em;font-family:var(--font-sans)}.health-category-chevron{color:var(--accent-a30, #8b949e);flex-shrink:0;display:flex;align-items:center}.health-insights-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}@media(max-width:700px){.health-insights-grid{grid-template-columns:1fr}}.health-insight-card{background:var(--bg-card);border:1px solid var(--accent-a06);border-radius:var(--module-radius);box-shadow:var(--module-shadow);overflow:hidden;transition:transform .2s,border-color .2s}.health-insight-card:hover{transform:translateY(-2px);border-color:var(--accent-a12)}.health-insight-accent{display:none}.health-insight-body{padding:16px 18px 18px}.health-insight-icon{margin-bottom:10px;opacity:.8}.health-insight-title{font-size:12.5px;font-weight:600;color:var(--text, #e6edf3);margin-bottom:6px;letter-spacing:.01em;line-height:1.3}.health-insight-desc{font-size:11.5px;color:var(--text-secondary, #8b949e);line-height:1.55;letter-spacing:.005em}.module-card{background:var(--bg-card);border-radius:var(--module-radius);border:1px solid var(--accent-a06);box-shadow:var(--module-shadow);overflow:visible;position:relative;cursor:pointer;transition:transform .3s,border-color .3s,box-shadow .3s;min-width:0}.module-card:hover:not(.edit-mode):not(.dragging){transform:translateY(-4px);border-color:var(--accent-a12);box-shadow:0 6px 20px #0000004d}.module-card-inner{padding:var(--module-padding)}.module-title{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--accent-a70);font-weight:500;margin-bottom:14px;font-family:var(--font-sans);display:flex;align-items:center;gap:6px}.module-title-icon{width:12px;height:12px;stroke:var(--accent-a70);flex-shrink:0}.module-size-small{grid-column:span 1;height:var(--widget-sm)}.module-size-small>.module-card-inner{height:100%;display:flex;flex-direction:column;overflow:hidden}.module-size-small .metric-chart-container{margin-top:auto;flex:1;min-height:80px}.module-size-medium{grid-column:span 1;min-height:var(--widget-sm)}.module-size-large{grid-column:span 2;min-height:var(--widget-sm)}.module-size-large>.module-card-inner{display:flex;flex-direction:column}.module-size-large:has(.metric-chart-container){height:var(--widget-sm)}.module-size-large:has(.metric-chart-container)>.module-card-inner{height:100%;overflow:hidden}.module-size-large .metric-chart-container{margin-top:auto;flex:1;min-height:80px}.module-card.edit-mode{border-color:var(--accent-a10);cursor:grab}.module-card.edit-mode .module-card-inner{animation:jiggle .25s ease-in-out infinite alternate}.module-card.edit-mode:nth-child(2n) .module-card-inner{animation-delay:.12s;animation-duration:.28s}.module-card.edit-mode:nth-child(3n) .module-card-inner{animation-delay:.06s;animation-duration:.22s}.module-card.edit-mode.dragging .module-card-inner{animation:none}.module-card.edit-mode.dragging{cursor:grabbing}.module-card.dragging{box-shadow:0 20px 60px #0006;border-color:var(--accent-a20);z-index:100;transition:none}@keyframes jiggle{0%{transform:rotate(-.5deg)}to{transform:rotate(.5deg)}}.module-select-indicator{position:absolute;top:-6px;left:-6px;z-index:10;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 1px 3px rgba(0,0,0,.5));transition:transform .15s}.module-select-indicator:hover{transform:scale(1.15)}.module-card.selected{border-color:var(--accent, #4ec9b0);box-shadow:0 0 0 2px var(--accent-a20, rgba(78, 201, 176, .2))}.module-resize-handle{position:absolute;right:-6px;top:50%;transform:translateY(-50%);z-index:10;background:none;border:none;cursor:ew-resize;padding:12px 8px;display:flex;align-items:center;justify-content:center;transition:opacity .2s;opacity:.5;touch-action:none}.module-resize-handle:hover{opacity:1}.resize-handle-bar{width:4px;height:28px;border-radius:2px;background:var(--accent-a50);box-shadow:var(--accent-glow-sm);transition:background .2s,height .2s}.module-resize-handle:hover .resize-handle-bar{background:var(--accent-a80);height:36px}.module-card.resizing{border-color:var(--accent-a30);box-shadow:var(--accent-shadow-glow);overflow:visible}.module-card.resizing .module-card-inner{animation:none}.module-card.resizing .module-resize-handle{opacity:1}.module-card.resizing .resize-handle-bar{background:var(--accent);height:40px;box-shadow:var(--accent-glow-lg)}.module-metric-rows{display:flex;flex-direction:column}.module-metric-row{display:flex;align-items:center;gap:10px;padding:8px 0}.module-metric-row .metric-icon{flex-shrink:0}.module-metric-row .metric-icon svg{width:16px;height:16px}.module-metric-label{font-size:12px;font-weight:500;flex:1}.module-metric-value{font-family:var(--font-serif);font-size:14px;text-align:right;font-variant-numeric:tabular-nums}.module-metric-unit{font-size:11px;color:var(--text-secondary);font-weight:400}.module-divider{height:1px;background:var(--border)}.vitality-card-inner{display:flex;align-items:center;gap:28px}.insight-card-inner{position:relative;overflow:hidden;border-radius:var(--module-radius);background:linear-gradient(145deg,#0d1117,#161b22 60%,#1c2128);margin:0 calc(var(--module-padding) * -1) calc(var(--module-padding) * -1);padding:var(--module-padding)}.insight-card-inner .insight-content{position:relative;z-index:2;display:flex;flex-direction:column;min-height:180px;justify-content:space-between}.insight-card-inner .insight-glow{position:absolute;top:-60px;right:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,var(--accent-a15) 0%,transparent 65%)}.insight-card-inner .insight-glow-2{position:absolute;bottom:-40px;left:-40px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,rgba(210,153,34,.1) 0%,transparent 65%)}.sleep-analysis-inner{display:flex;flex-direction:column;gap:16px}.sleep-total{display:flex;align-items:baseline;gap:8px}.sleep-total-value{font-family:var(--font-serif);font-size:28px}.sleep-total-label{font-size:12px;color:var(--text-secondary)}.sleep-stages{display:flex;gap:16px}.sleep-stage{display:flex;align-items:center;gap:6px;font-size:12px}.sleep-stage-dot{width:8px;height:8px;border-radius:50%}.sleep-stage-label{color:var(--text-secondary)}.sleep-stage-value{font-weight:500}.sleep-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;gap:2px}.sleep-bar-segment{border-radius:4px;transition:width .6s ease-out}.module-card .sleep-stage-summary{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;padding:0 2px}.module-card .sleep-stage-summary.sleep-stage-overlay{position:absolute;top:var(--module-padding, 20px);right:var(--module-padding, 20px);z-index:2;padding:0;margin:0}.module-card .sleep-stage-summary .sleep-stage-item{display:flex;align-items:center;gap:5px;white-space:nowrap}.module-card .sleep-stage-summary .sleep-stage-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.module-card .sleep-stage-summary .sleep-stage-text{font-family:var(--font-mono, monospace);font-size:10px;color:var(--text-secondary);letter-spacing:.02em}.glucose-card-inner{display:flex;flex-direction:column;gap:12px}.glucose-header{display:flex;justify-content:space-between;align-items:flex-start}.glucose-value{font-family:var(--font-serif);font-size:32px;line-height:1}.glucose-unit{font-size:12px;color:var(--text-secondary);margin-top:2px}.glucose-status{font-size:11px;font-weight:500;padding:4px 10px;border-radius:20px;letter-spacing:.03em}.glucose-chart{height:50px}.glucose-chart svg{width:100%;height:100%}.medical-id-inner{display:flex;flex-direction:column;gap:6px}.medical-id-header{display:flex;align-items:center;gap:8px;color:var(--accent)}.medical-id-title{font-size:11px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.nutrition-summary-inner{display:flex;flex-direction:column;gap:14px}.nutrition-macro-row{display:flex;flex-direction:column;gap:6px}.nutrition-macro-header{display:flex;justify-content:space-between;align-items:center}.nutrition-macro-label{font-size:13px;font-weight:500}.nutrition-macro-progress{font-size:12px;color:var(--text-secondary)}[data-theme=light] .module-card{box-shadow:var(--module-shadow)}@media(max-width:1024px){.module-size-large{grid-column:span 1}.vitality-card-inner{flex-direction:column;align-items:flex-start}}.module-bulk-bar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--bg-card, #161b22);border:1px solid var(--border, rgba(255, 255, 255, .08));border-radius:12px;box-shadow:0 8px 32px #00000080;z-index:100}.module-bulk-count{font-size:12px;color:var(--text-secondary, #8b949e);font-family:var(--font-sans);padding-right:6px;border-right:1px solid var(--border);margin-right:2px}.module-bulk-btn{padding:6px 14px;border-radius:8px;border:1px solid var(--accent-a20);background:var(--accent-a08);color:var(--accent, #4ec9b0);font-size:12px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all .15s}.module-bulk-btn:hover{background:var(--accent-a15)}.module-bulk-btn.danger{border-color:#f851494d;background:#f851491a;color:#f85149}.module-bulk-btn.danger:hover{background:#f8514933}.page-layout{display:flex;gap:0;width:100%;height:100%;position:relative}.page-layout.resizing{-webkit-user-select:none;user-select:none}.portal-content-body:has(.page-layout){padding:0;overflow:hidden}.page-sidebar{flex-shrink:0;border-right:none;padding:0 0 20px;position:relative;height:100%;overflow-y:auto;scrollbar-width:none;display:flex;flex-direction:column;gap:0}.page-sidebar::-webkit-scrollbar{display:none}.page-sidebar-title{font-family:var(--font-serif);font-size:24px;font-style:normal;font-weight:400;color:var(--text-primary);letter-spacing:.01em;padding:20px 12px 20px 28px}.page-resize-handle{width:8px;margin-left:-4px;margin-right:-4px;cursor:col-resize;flex-shrink:0;position:relative;z-index:3}.page-resize-handle:hover+.page-main,.page-layout.resizing .page-main{border-color:var(--accent-a30)}.page-main{flex:1;min-width:0;margin:8px 8px 8px 0;background:#0e0e1280;border-radius:var(--module-radius, 16px);border:1px solid rgba(255,255,255,.04);overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s}[data-theme=light] .page-main{background:#f2f0e880;border:1px solid rgba(0,0,0,.05)}.page-main-scroll{flex:1;overflow-y:auto;padding:40px 40px 60px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent}.page-main-scroll::-webkit-scrollbar{width:5px}.page-main-scroll::-webkit-scrollbar-track{background:transparent}.page-main-scroll::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}@media(max-width:768px){.page-layout{flex-direction:column}.page-sidebar{width:100%!important;height:auto;max-height:200px;border-right:none;border-bottom:1px solid var(--border, rgba(255, 255, 255, .06));padding:8px 0}.page-resize-handle{display:none}.page-main{margin:0;border-radius:0;border:none}.page-main-scroll{padding:20px 16px 48px}}.longevity-sidebar-nav{display:flex;flex-direction:column;gap:2px}.longevity-sidebar-item{display:flex;align-items:center;gap:10px;padding:13px 20px;width:100%;font-size:13px;font-weight:400;font-family:var(--font-sans);color:var(--text-secondary, #8b949e);background:none;border:none;cursor:pointer;text-align:left;transition:none;white-space:nowrap}.longevity-sidebar-item:hover{color:var(--text-primary, #e6edf3);background:var(--accent-a04, rgba(78, 201, 176, .04))}.longevity-sidebar-item.active{color:var(--accent, #4ec9b0);background:var(--accent-a08, rgba(78, 201, 176, .08))}.longevity-sidebar-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0}.longevity-sidebar-icon svg{width:100%;height:100%}.longevity-sidebar-label{flex:1;min-width:0}.longevity-sidebar-count{font-size:10px;color:var(--text-tertiary, #6e7681);font-weight:500;flex-shrink:0;opacity:.6}.longevity-sidebar-group{display:flex;flex-direction:column}.longevity-sidebar-subitems{display:flex;flex-direction:column;gap:0}.longevity-sidebar-subitem{display:flex;align-items:center;gap:8px;padding:8px 20px 8px 48px;width:100%;font-size:12px;font-weight:400;font-family:var(--font-sans);color:var(--text-secondary, #8b949e);background:none;border:none;cursor:pointer;text-align:left;transition:none}.longevity-sidebar-subitem:hover{color:var(--text-primary, #e6edf3);background:var(--accent-a04, rgba(78, 201, 176, .04))}.longevity-sidebar-subitem.active{color:var(--accent, #4ec9b0);background:var(--accent-a08, rgba(78, 201, 176, .08))}.longevity-sidebar-subitem-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;text-transform:capitalize}.longevity-sidebar-subitem-count{font-size:10px;color:var(--text-tertiary, #6e7681);font-weight:500;flex-shrink:0;opacity:.6}.longevity-sidebar-subitem.active .longevity-sidebar-subitem-count{color:var(--accent, #4ec9b0);opacity:.7}@media(max-width:768px){.longevity-layout{flex-direction:column}.longevity-sidebar{width:100%!important;height:auto;max-height:120px;border-right:none;border-bottom:1px solid var(--border, rgba(255, 255, 255, .06));padding:8px 0;flex-direction:row;overflow-x:auto;overflow-y:hidden}.longevity-sidebar-nav{flex-direction:row;gap:0;padding:0 12px}.longevity-sidebar-item{padding:6px 12px;font-size:12px;border-radius:16px}.longevity-sidebar-group{flex-direction:row;align-items:center}.longevity-sidebar-subitems,.longevity-resize-handle{display:none}.longevity-main{margin:0;border-radius:0;border:none}.longevity-main-scroll{padding:20px 16px 48px}}.lev-detail{display:flex;flex-direction:column;gap:28px;width:100%;font-family:SF Mono,Fira Code,JetBrains Mono,monospace}.lev-section{background:var(--surface, #161b22);border:1px solid var(--border, #30363d);border-radius:12px;padding:24px}.lev-section-header{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-secondary, #8b949e);font-weight:600;margin-bottom:20px;display:flex;align-items:center;gap:8px}.lev-section-header svg{width:14px;height:14px;opacity:.5}.lev-section-header:after{content:"";flex:1;height:1px;background:var(--border, #30363d);margin-left:8px}.lev-overview{display:flex;align-items:flex-start;gap:32px}.lev-overview-left{display:flex;flex-direction:column;align-items:center;gap:12px;flex-shrink:0}.lev-ring-large{position:relative;width:200px;height:200px}.lev-ring-large svg{width:100%;height:100%;transform:rotate(-90deg)}.lev-ring-large .ring-bg{fill:none;stroke:#ffffff0a}.lev-ring-large .ring-progress{fill:none;stroke-linecap:round;transition:stroke-dashoffset 1.4s cubic-bezier(.4,0,.2,1),stroke .6s ease;filter:drop-shadow(0 0 8px var(--ring-color, #06b6d4))}.lev-ring-large .ring-glow{fill:none;stroke-linecap:round;opacity:.15;filter:blur(4px)}.lev-ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.lev-ring-score{font-size:48px;font-weight:700;letter-spacing:-1px}.lev-ring-label{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary, #8b949e);margin-top:4px}.lev-grade-badge{font-size:14px;font-weight:700;padding:4px 14px;border-radius:6px;letter-spacing:.5px}.lev-grade-badge--aplus,.lev-grade-badge--a{color:#22c55e;background:#22c55e1a;border:1px solid rgba(34,197,94,.25)}.lev-grade-badge--bplus,.lev-grade-badge--b{color:#3b82f6;background:#3b82f61a;border:1px solid rgba(59,130,246,.25)}.lev-grade-badge--c{color:#eab308;background:#eab3081a;border:1px solid rgba(234,179,8,.25)}.lev-grade-badge--d,.lev-grade-badge--f{color:#ef4444;background:#ef44441a;border:1px solid rgba(239,68,68,.25)}.lev-overview-right{flex:1;display:flex;flex-direction:column;gap:16px;min-width:0}.lev-overview-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lev-stat-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}.lev-stat-card-label{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary, #8b949e)}.lev-stat-card-value{font-size:24px;font-weight:600;font-variant-numeric:tabular-nums}.lev-stat-card-sub{font-size:10px;color:var(--text-secondary, #8b949e)}.lev-age-compare{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:16px}.lev-age-bar-container{margin-top:12px;position:relative}.lev-age-bar-track{width:100%;height:6px;background:#ffffff0f;border-radius:3px;position:relative}.lev-age-bar-fill{position:absolute;top:0;height:6px;border-radius:3px;opacity:.3}.lev-age-marker-group{position:absolute;transform:translate(-50%);display:flex;flex-direction:column;align-items:center}.lev-age-marker-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--surface, #161b22);margin-top:-4px}.lev-age-marker-label{font-size:9px;margin-top:6px;white-space:nowrap;color:var(--text-secondary, #8b949e)}.lev-age-marker-value{font-size:11px;font-weight:600;white-space:nowrap}.lev-age-bar-labels{display:flex;justify-content:space-between;margin-top:28px;font-size:9px;color:var(--text-secondary, #8b949e);opacity:.5}.lev-trajectory-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;padding:4px 10px;border-radius:5px;background:#ffffff0a}.lev-trajectory-badge--improving{color:#22c55e}.lev-trajectory-badge--stable{color:#eab308}.lev-trajectory-badge--declining{color:#ef4444}.lev-trajectory-arrow{font-size:14px;line-height:1}.lev-tier-group{margin-bottom:20px}.lev-tier-group:last-child{margin-bottom:0}.lev-tier-label{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-secondary, #8b949e);margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.04)}.lev-tier-label span{font-weight:500}.lev-metrics-grid{display:flex;flex-direction:column;gap:6px}.lev-metric-row{display:grid;grid-template-columns:1fr 80px 100px 72px 64px;align-items:center;gap:12px;padding:10px 14px;background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:8px;transition:background .15s ease,border-color .15s ease}.lev-metric-row:hover{background:#ffffff0a;border-color:#ffffff14}.lev-metric-info{display:flex;flex-direction:column;gap:2px;min-width:0}.lev-metric-name{font-size:12px;font-weight:500;color:var(--text-primary, #e6edf3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lev-metric-weight{font-size:9px;color:var(--text-secondary, #8b949e)}.lev-metric-current{font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-primary, #e6edf3);text-align:right}.lev-metric-current span{font-size:9px;font-weight:400;color:var(--text-secondary, #8b949e);margin-left:2px}.lev-metric-score-bar{display:flex;align-items:center;gap:8px}.lev-metric-bar-track{flex:1;height:4px;background:#ffffff0f;border-radius:2px;overflow:hidden}.lev-metric-bar-fill{height:100%;border-radius:2px;transition:width .8s cubic-bezier(.4,0,.2,1)}.lev-metric-score-num{font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;min-width:26px;text-align:right}.lev-status-badge{font-size:8px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 6px;border-radius:3px;text-align:center;white-space:nowrap}.lev-status--excellent{color:#22c55e;background:#22c55e1a;border:1px solid rgba(34,197,94,.2)}.lev-status--good{color:#3b82f6;background:#3b82f61a;border:1px solid rgba(59,130,246,.2)}.lev-status--fair{color:#eab308;background:#eab3081a;border:1px solid rgba(234,179,8,.2)}.lev-status--poor{color:#f97316;background:#f973161a;border:1px solid rgba(249,115,22,.2)}.lev-status--critical{color:#ef4444;background:#ef44441a;border:1px solid rgba(239,68,68,.2)}.lev-trend{font-size:11px;font-weight:500;text-align:center}.lev-trend--up{color:#22c55e}.lev-trend--down{color:#ef4444}.lev-trend--flat{color:var(--text-secondary, #8b949e)}.lev-equation-block{background:#0000004d;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:20px;margin-bottom:20px;overflow-x:auto}.lev-equation-code{font-family:SF Mono,Fira Code,JetBrains Mono,monospace;font-size:12px;line-height:1.8;color:var(--text-primary, #e6edf3);white-space:pre}.lev-eq-keyword{color:#ff7b72}.lev-eq-function{color:#d2a8ff}.lev-eq-number{color:#79c0ff}.lev-eq-comment{color:#8b949e;font-style:italic}.lev-eq-string{color:#a5d6ff}.lev-sigmoid-visual{margin-top:20px;padding:16px;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px}.lev-sigmoid-svg{width:100%;height:120px}.lev-sigmoid-label{font-size:10px;text-align:center;color:var(--text-secondary, #8b949e);margin-top:8px}.lev-citations{display:flex;flex-direction:column;gap:8px;margin-top:16px}.lev-citation{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:6px;transition:background .15s ease}.lev-citation:hover{background:#ffffff0a}.lev-citation-metric{font-size:10px;font-weight:600;color:#06b6d4;min-width:90px;flex-shrink:0;white-space:nowrap}.lev-citation-text{font-size:11px;line-height:1.6;color:var(--text-primary, #e6edf3);opacity:.8}.lev-citation-journal{color:var(--text-secondary, #8b949e);font-style:italic}.lev-citation-finding{font-size:10px;color:var(--text-secondary, #8b949e);margin-top:4px;line-height:1.5}.lev-bio-explanation{font-size:13px;line-height:1.7;color:var(--text-primary, #e6edf3);opacity:.85;margin-bottom:20px}.lev-bio-numberline{position:relative;padding:24px 0 40px}.lev-bio-track{width:100%;height:3px;border-radius:1.5px;position:relative}.lev-bio-track-gradient{width:100%;height:100%;border-radius:1.5px;background:linear-gradient(90deg,#22c55e,#eab308,#ef4444);opacity:.3}.lev-bio-zero-marker{position:absolute;top:-6px;width:1px;height:15px;background:#fff3}.lev-bio-zero-label{position:absolute;top:16px;transform:translate(-50%);font-size:8px;color:var(--text-secondary, #8b949e);white-space:nowrap}.lev-bio-offset-marker{position:absolute;top:-10px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center}.lev-bio-offset-dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--surface, #161b22);box-shadow:0 0 12px var(--dot-color, #06b6d4)}.lev-bio-offset-value{font-size:12px;font-weight:600;margin-top:8px;white-space:nowrap}.lev-bio-offset-label{font-size:9px;color:var(--text-secondary, #8b949e);margin-top:2px}.lev-bio-numberline-labels{display:flex;justify-content:space-between;margin-top:8px;font-size:9px;color:var(--text-secondary, #8b949e);opacity:.5}.lev-bio-contributors{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin-top:20px}.lev-bio-contributor{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:6px}.lev-bio-contributor-bar{width:3px;height:20px;border-radius:1.5px;flex-shrink:0}.lev-bio-contributor-name{font-size:10px;color:var(--text-secondary, #8b949e);flex:1}.lev-bio-contributor-impact{font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.lev-projection-text{font-size:13px;line-height:1.7;color:var(--text-primary, #e6edf3);opacity:.85;margin-bottom:20px}.lev-projection-params{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.lev-projection-param{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:4px}.lev-projection-param-label{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary, #8b949e)}.lev-projection-param-value{font-size:20px;font-weight:600;font-variant-numeric:tabular-nums;color:#06b6d4}.lev-projection-param-unit{font-size:10px;color:var(--text-secondary, #8b949e)}.lev-projection-chart{background:#0003;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:16px;overflow:hidden}.lev-projection-svg{width:100%;height:200px}.lev-projection-legend{display:flex;gap:20px;margin-top:12px;justify-content:center}.lev-projection-legend-item{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--text-secondary, #8b949e)}.lev-projection-legend-line{width:16px;height:2px;border-radius:1px}.lev-recs{display:flex;flex-direction:column;gap:10px}.lev-rec-card{display:flex;gap:14px;padding:14px 16px;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;transition:background .15s ease}.lev-rec-card:hover{background:#ffffff0a}.lev-rec-priority{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;color:#0d1117}.lev-rec-priority--1{background:#ef4444}.lev-rec-priority--2{background:#f97316}.lev-rec-priority--3{background:#eab308}.lev-rec-priority--4{background:#3b82f6}.lev-rec-priority--5{background:var(--text-secondary, #8b949e)}.lev-rec-content{flex:1;min-width:0}.lev-rec-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.lev-rec-metric{font-size:12px;font-weight:600;color:var(--text-primary, #e6edf3)}.lev-rec-impact{font-size:9px;color:var(--text-secondary, #8b949e);padding:1px 5px;border:1px solid rgba(255,255,255,.06);border-radius:3px}.lev-rec-text{font-size:12px;line-height:1.6;color:var(--text-primary, #e6edf3);opacity:.75}.lev-about-content{display:flex;flex-direction:column;gap:16px}.lev-about-text{font-size:13px;line-height:1.7;color:var(--text-primary, #e6edf3);opacity:.85}.lev-about-highlight{padding:16px 20px;background:#06b6d40f;border-left:3px solid #06b6d4;border-radius:0 8px 8px 0;font-size:13px;line-height:1.7;color:var(--text-primary, #e6edf3);font-style:italic}.lev-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:300px;color:var(--text-secondary, #8b949e);font-size:12px}.lev-loading-spinner{width:32px;height:32px;border:2px solid rgba(255,255,255,.08);border-top-color:#06b6d4;border-radius:50%;animation:lev-spin .8s linear infinite}@keyframes lev-spin{to{transform:rotate(360deg)}}.lev-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:200px;color:var(--text-secondary, #8b949e);font-size:12px;text-align:center}@media(max-width:640px){.lev-overview{flex-direction:column;align-items:center}.lev-overview-stats{grid-template-columns:1fr}.lev-metric-row{grid-template-columns:1fr 60px 80px 56px}.lev-metric-weight{display:none}.lev-projection-params,.lev-bio-contributors{grid-template-columns:1fr}}.ctx-menu-backdrop{position:fixed;inset:0;z-index:999}.ctx-menu{position:fixed;z-index:1000;min-width:180px;background:var(--bg-card, #161b22);border:1px solid var(--border, rgba(255, 255, 255, .08));border-radius:10px;padding:4px;box-shadow:0 8px 32px #00000080}.ctx-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;border-radius:6px;background:none;color:var(--text-secondary, #c9d1d9);font-size:12.5px;font-family:var(--font-sans);cursor:pointer;text-align:left;transition:background .1s}.ctx-menu-item:hover{background:var(--accent-a06, rgba(78, 201, 176, .06));color:var(--text-primary, #e6edf3)}.ctx-menu-item.danger{color:#f85149}.ctx-menu-item.danger:hover{background:#f851491a;color:#ff6e66}.ctx-menu-icon{display:flex;align-items:center;width:16px;height:16px;flex-shrink:0}.ctx-modal-backdrop{position:fixed;inset:0;z-index:1001;background:#0009;display:flex;align-items:center;justify-content:center}.ctx-modal{background:var(--bg-card, #161b22);border:1px solid var(--border, rgba(255, 255, 255, .08));border-radius:14px;padding:24px;min-width:340px;max-width:420px;box-shadow:0 16px 48px #0009}.ctx-modal-title{font-size:15px;font-weight:600;color:var(--text-primary, #e6edf3);margin-bottom:8px;font-family:var(--font-sans)}.ctx-modal-message{font-size:12.5px;color:var(--text-secondary, #8b949e);line-height:1.6;margin-bottom:20px;font-family:var(--font-sans)}.ctx-modal-actions{display:flex;gap:8px;justify-content:flex-end}.ctx-modal-btn{padding:7px 16px;border-radius:8px;font-size:12px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all .15s;letter-spacing:.02em}.ctx-modal-btn.cancel{background:none;border:1px solid var(--border, rgba(255, 255, 255, .08));color:var(--text-secondary, #8b949e)}.ctx-modal-btn.cancel:hover{color:var(--text-primary);border-color:var(--text-tertiary)}.ctx-modal-btn.primary{background:var(--accent-a10);border:1px solid var(--accent-a20);color:var(--accent, #4ec9b0)}.ctx-modal-btn.primary:hover{background:var(--accent-a15)}.ctx-modal-btn.danger{background:#f8514926;border:1px solid rgba(248,81,73,.3);color:#f85149}.ctx-modal-btn.danger:hover{background:#f8514940;color:#ff6e66}.custom-note-card{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0}.custom-note-textarea{flex:1;min-height:80px;resize:none;background:var(--bg-card-alt, rgba(255, 255, 255, .03));border:1px solid var(--accent-a06, rgba(255, 255, 255, .06));border-radius:6px;padding:10px 12px;color:var(--text-primary, #fff);font-family:var(--font-mono, monospace);font-size:12px;line-height:1.6;outline:none;transition:border-color .2s}.custom-note-textarea:focus{border-color:var(--accent-a20, rgba(255, 255, 255, .2))}.custom-note-textarea::placeholder{color:var(--text-tertiary, rgba(255, 255, 255, .3))}.custom-note-footer{display:flex;justify-content:flex-end}.custom-note-timestamp{font-size:10px;color:var(--text-tertiary, rgba(255, 255, 255, .3));letter-spacing:.05em}.custom-tracker-card{display:flex;flex-direction:column;gap:8px}.custom-tracker-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.custom-tracker-log-btn{background:none;border:1px solid;border-radius:4px;padding:4px 10px;font-family:var(--font-mono, monospace);font-size:11px;font-weight:500;cursor:pointer;letter-spacing:.05em;transition:opacity .2s;white-space:nowrap}.custom-tracker-log-btn:hover{opacity:.8}.custom-tracker-form{display:flex;gap:6px;align-items:center}.custom-tracker-input{flex:1;background:var(--bg-card-alt, rgba(255, 255, 255, .03));border:1px solid var(--accent-a06, rgba(255, 255, 255, .06));border-radius:4px;padding:6px 10px;color:var(--text-primary, #fff);font-family:var(--font-mono, monospace);font-size:12px;outline:none;min-width:0}.custom-tracker-input:focus{border-color:var(--accent-a20, rgba(255, 255, 255, .2))}.custom-tracker-input::placeholder{color:var(--text-tertiary, rgba(255, 255, 255, .3))}.custom-tracker-input::-webkit-outer-spin-button,.custom-tracker-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.custom-tracker-input[type=number]{-moz-appearance:textfield}.custom-tracker-save-btn{border:none;border-radius:4px;padding:6px 12px;color:#0d1117;font-family:var(--font-mono, monospace);font-size:11px;font-weight:600;cursor:pointer;transition:opacity .2s;white-space:nowrap}.custom-tracker-save-btn:hover{opacity:.85}.custom-tracker-sparkline{margin-top:auto;margin-left:-8px;margin-right:-8px}.custom-checklist-card{display:flex;flex-direction:column;gap:8px}.custom-checklist-status{font-family:var(--font-mono, monospace);font-size:12px;color:var(--text-secondary, rgba(255, 255, 255, .6))}.custom-checklist-count{font-weight:600;color:var(--text-primary, #fff);font-size:14px}.custom-checklist-label{color:var(--text-tertiary, rgba(255, 255, 255, .3))}.custom-checklist-progress-track{height:3px;background:var(--accent-a06, rgba(255, 255, 255, .06));border-radius:2px;overflow:hidden}.custom-checklist-progress-fill{height:100%;background:var(--accent, #4ec9b0);border-radius:2px;transition:width .3s ease}.custom-checklist-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.custom-checklist-item{display:flex;align-items:center;gap:8px;padding:5px 4px;border-radius:4px;cursor:pointer;transition:background .15s;-webkit-user-select:none;user-select:none}.custom-checklist-item:hover{background:var(--bg-card-alt, rgba(255, 255, 255, .03))}.custom-checklist-checkbox{flex-shrink:0;display:flex;align-items:center;justify-content:center}.custom-checklist-text{font-family:var(--font-mono, monospace);font-size:12px;color:var(--text-primary, #fff);transition:opacity .2s}.custom-checklist-item.checked .custom-checklist-text{opacity:.4;text-decoration:line-through}.health-sidebar{padding-bottom:76px}.health-sidebar-show-hidden{display:block;padding:10px 20px;font-size:11px;color:var(--accent-a40);background:none;border:none;cursor:pointer;text-align:left;font-family:var(--font-sans)}.health-sidebar-show-hidden:hover{color:var(--accent, #4ec9b0)}.health-sidebar-toolbar{display:flex;align-items:center;gap:6px;padding:0 12px 12px}.health-sort-wrap{position:relative;flex-shrink:0}.health-sort-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--border, rgba(255,255,255,.06));background:var(--accent-a04);color:var(--text-tertiary);cursor:pointer}.health-sort-btn:hover,.health-sort-btn.active{color:var(--text-primary);background:var(--accent-a08)}.health-sort-backdrop{position:fixed;inset:0;z-index:9}.health-sort-dropdown{position:absolute;top:40px;right:0;z-index:10;min-width:140px;background:#161b22f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border, rgba(255,255,255,.08));border-radius:10px;padding:4px;box-shadow:0 8px 24px #0006}.health-sort-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;font-size:12px;font-family:var(--font-sans);color:var(--text-secondary);background:none;border:none;border-radius:6px;cursor:pointer;text-align:left}.health-sort-option:hover{background:var(--accent-a06);color:var(--text-primary)}.health-sort-option.active{color:var(--accent, #4ec9b0)}.health-sidebar-search{display:flex;align-items:center;gap:8px;flex:1;min-width:0;padding:8px 14px;border-radius:999px;background:var(--accent-a04);border:1px solid var(--border, rgba(255,255,255,.06));color:var(--text-tertiary)}.health-sidebar-search-input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:12px;font-family:var(--font-sans)}.health-sidebar-search-input::placeholder{color:var(--text-tertiary)}.health-sidebar-nav{display:flex;flex-direction:column;gap:2px}.health-sidebar-item{display:flex;align-items:center;gap:10px;padding:13px 20px;width:100%;font-size:13px;font-weight:400;font-family:var(--font-sans);color:var(--text-secondary);background:none;border:none;cursor:pointer;text-align:left;transition:none;white-space:nowrap}.health-sidebar-item:hover{color:var(--text-primary);background:var(--accent-a04)}.health-sidebar-item.active{color:var(--accent, #4ec9b0);background:var(--accent-a08)}.health-sidebar-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0}.health-sidebar-icon svg{width:100%;height:100%}.health-sidebar-label{flex:1;min-width:0}.health-sidebar-count{font-size:11px;color:var(--text-tertiary);font-weight:500;margin-left:auto;opacity:.6}.health-sidebar-item.active .health-sidebar-count{color:var(--accent, #4ec9b0);opacity:.7}.health-sidebar-fab{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;border:none;background:var(--accent, #4ec9b0);color:#0a0a0e;cursor:pointer;position:absolute;bottom:20px;left:20px;z-index:3;transition:transform .15s,box-shadow .15s;box-shadow:0 2px 8px #4ec9b04d}.health-sidebar-fab:hover{transform:translateY(-1px);box-shadow:0 4px 16px #4ec9b066}.health-sidebar-modules{display:flex;flex-direction:column;padding-left:48px;gap:0}.health-sidebar-module{display:block;padding:5px 16px 5px 0;font-size:12px;font-family:var(--font-sans);color:var(--text-tertiary);background:none;border:none;cursor:pointer;text-align:left;white-space:nowrap}.health-sidebar-module:hover{color:var(--text-primary)}.modules-page{width:100%}.modules-page-header{margin-bottom:24px}.modules-page-title{font-family:var(--font-serif);font-size:24px;font-weight:400;color:var(--text-primary);letter-spacing:.01em;margin:0}.modules-page-subtitle{font-size:11px;color:var(--accent-a30);letter-spacing:.1em;text-transform:uppercase;margin-top:4px}.modules-search-row{margin-bottom:16px}.modules-search-box{display:flex;align-items:center;gap:8px;max-width:320px;background:var(--accent-a04);border:1px solid var(--accent-a08);border-radius:20px;padding:8px 16px;transition:border-color .2s}.modules-search-box:focus-within{border-color:var(--accent-a25)}.modules-search-icon{width:16px;height:16px;color:var(--accent-a30);flex-shrink:0}.modules-search-input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:13px;font-family:var(--font-sans);letter-spacing:.02em}.modules-search-input::placeholder{color:var(--accent-a20)}.modules-search-clear{background:none;border:none;cursor:pointer;padding:2px;color:var(--accent-a30);display:flex;align-items:center;transition:color .2s}.modules-search-clear:hover{color:var(--accent-a60)}.modules-tag-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}.modules-pill{padding:7px 14px;border-radius:20px;font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--accent-a10);cursor:pointer;white-space:nowrap;transition:all .2s;font-family:var(--font-sans);background:transparent;color:var(--accent-a40)}.modules-pill:hover{border-color:var(--accent-a25);color:var(--accent-a70)}.modules-pill.active{background:var(--accent-a90);border-color:var(--accent-a90);color:#0d1117}.modules-pill-count{margin-left:6px;font-size:10px;font-weight:600;opacity:.45}.modules-pill.active .modules-pill-count{opacity:.6}.modules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--widget-sm),1fr));gap:12px;max-width:1700px}@media(max-width:768px){.modules-grid{grid-template-columns:1fr}}.modules-tile{background:var(--bg-card);border:1px solid var(--accent-a06);border-radius:var(--module-radius);padding:20px;cursor:pointer;transition:all .3s ease;text-align:left;font-family:var(--font-sans);display:flex;flex-direction:column;gap:6px;min-height:100px}.modules-tile:hover{border-color:var(--accent-a15);box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.modules-tile-category{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:var(--accent-a30)}.modules-tile-name{font-size:14px;font-weight:500;color:var(--text-primary)}.modules-tile-desc{font-size:11px;color:var(--text-tertiary);line-height:1.4}.modules-tile-realized{padding:0;min-height:auto}.modules-tile-widget{width:100%;padding:var(--module-padding);display:flex;flex-direction:column;pointer-events:none}.modules-tile-widget.module-size-small{height:var(--widget-sm);overflow:hidden}.modules-tile-widget.module-size-medium,.modules-tile-widget.module-size-large{min-height:180px}.modules-tile-realized:has(.module-size-large){grid-column:span 2}.modules-tile-widget.module-size-small .metric-chart-container{margin-top:auto;flex:1;min-height:0}.add-module-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:0;z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.add-module-overlay.closing{animation:fadeOut .25s ease-in forwards}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.add-module-sheet{background:#161b22b8;backdrop-filter:blur(40px) saturate(1.4);-webkit-backdrop-filter:blur(40px) saturate(1.4);border-radius:var(--module-radius);border:1px solid var(--accent-a08);box-shadow:0 24px 80px #00000080,0 0 1px var(--accent-a10),inset 0 1px #ffffff0a;width:680px;max-width:90vw;max-height:70vh;display:flex;flex-direction:column;overflow:hidden;animation:sheetSlideUp .3s ease-out;min-height:50vh}@keyframes sheetSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.add-module-sheet.closing{animation:sheetSlideDown .25s ease-in forwards}@keyframes sheetSlideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}.add-module-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid var(--accent-a06)}.add-module-title{font-family:var(--font-serif);font-size:18px;font-weight:500;margin:0}.add-module-create{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--accent);background:var(--accent-a08);border:1px solid var(--accent-a15);cursor:pointer;font-family:var(--font-sans);padding:6px 14px;border-radius:999px;margin-left:auto}.add-module-create:hover{background:var(--accent-a15)}.add-module-done{font-size:13px;font-weight:500;color:var(--accent);background:none;border:none;cursor:pointer;font-family:var(--font-sans);padding:4px 12px;border-radius:6px}.add-module-done:hover{background:var(--accent-light)}.add-module-search{display:flex;align-items:center;gap:8px;margin:12px 24px 0;background:var(--accent-a04);border:1px solid var(--accent-a08);border-radius:20px;padding:8px 16px;transition:border-color .2s}.add-module-search:focus-within{border-color:var(--accent-a25)}.add-module-search-icon{width:15px;height:15px;color:var(--accent-a30);flex-shrink:0}.add-module-search-input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:13px;font-family:var(--font-sans);letter-spacing:.02em}.add-module-search-input::placeholder{color:var(--accent-a20)}.add-module-search-clear{background:none;border:none;cursor:pointer;padding:2px;color:var(--accent-a30);display:flex;align-items:center;transition:color .2s}.add-module-search-clear:hover{color:var(--accent-a60)}.category-pills{display:flex;gap:8px;padding:16px 24px;overflow-x:auto;flex-shrink:0;-webkit-overflow-scrolling:touch}.category-pills::-webkit-scrollbar{display:none}.category-pill{padding:7px 14px;border-radius:20px;font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;border:none;cursor:pointer;white-space:nowrap;transition:all .2s;font-family:var(--font-sans);background:#ffffff0d;color:var(--text-secondary)}.category-pill:hover{color:var(--text-primary);background:#ffffff14}.category-pill.active{background:var(--accent);color:#0d1117}.category-pill-count{margin-left:6px;font-size:10px;font-weight:600;opacity:.45}.category-pill.active .category-pill-count{opacity:.6}.module-list{overflow-y:auto;flex:1;padding:0 24px 24px}.module-list-item{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--accent-a04);cursor:pointer;transition:opacity .2s}.module-list-item:last-child{border-bottom:none}.module-list-item:hover{opacity:.8}.module-list-icon{width:36px;height:36px;border-radius:10px;background:var(--accent-a06);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.module-list-icon svg{width:18px;height:18px}.module-list-info{flex:1;min-width:0}.module-list-name{font-size:14px;font-weight:500;display:flex;align-items:center;gap:6px}.module-instance-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--accent-a15);color:var(--accent);font-size:10px;font-weight:600}.module-list-desc{font-size:11px;color:var(--text-tertiary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.module-list-toggle{flex-shrink:0;display:flex;align-items:center}.module-list-toggle svg{transition:transform .2s}.module-list-item.active .module-list-toggle svg{transform:scale(1.1)}@media(max-width:768px){.add-module-overlay{inset:0}}.custom-builder{display:flex;flex-direction:column;flex:1;min-height:0;padding:20px 24px;overflow:hidden}.custom-builder-header{display:flex;align-items:center;gap:12px;padding:0 0 20px;flex-shrink:0}.custom-builder-back{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;background:var(--accent-a06);color:var(--text-secondary);cursor:pointer}.custom-builder-back:hover{color:var(--text-primary);background:var(--accent-a10)}.custom-builder-title{font-size:16px;font-weight:600;color:var(--text-primary);font-family:var(--font-sans)}.custom-builder-types{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 4px}.custom-type-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;border-radius:16px;border:1px solid var(--border, rgba(255,255,255,.06));background:var(--accent-a04);color:var(--text-primary);cursor:pointer;text-align:center;transition:border-color .15s,background .15s}.custom-type-card:hover{border-color:var(--accent-a25);background:var(--accent-a08)}.custom-type-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--accent-a10);color:var(--accent, #4ec9b0)}.custom-type-label{font-size:14px;font-weight:600;font-family:var(--font-sans)}.custom-type-desc{font-size:11px;color:var(--text-tertiary);font-family:var(--font-sans)}.custom-builder-form{display:flex;flex-direction:column;gap:20px;overflow-y:auto;flex:1;padding:0 4px 20px}.custom-field{display:flex;flex-direction:column;gap:6px}.custom-field-label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);font-family:var(--font-sans)}.custom-field-input{padding:10px 14px;border-radius:16px;border:1px solid var(--border, rgba(255,255,255,.08));background:var(--accent-a04);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);outline:none;width:100%}.custom-field-input:focus{border-color:var(--accent-a30)}select.custom-field-input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236a6560' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.custom-data-sources{display:flex;flex-direction:column;max-height:200px;overflow-y:auto;border:1px solid var(--border, rgba(255,255,255,.06));border-radius:16px;scrollbar-width:thin}.custom-data-source{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font-size:12px;font-family:var(--font-sans);color:var(--text-secondary);background:none;border:none;border-bottom:1px solid var(--border, rgba(255,255,255,.04));cursor:pointer;text-align:left}.custom-data-source:last-child{border-bottom:none}.custom-data-source:hover{background:var(--accent-a04);color:var(--text-primary)}.custom-data-source.active{background:var(--accent-a10);color:var(--accent, #4ec9b0)}.custom-data-unit{font-size:10px;color:var(--text-tertiary);opacity:.6}.custom-chart-types{display:flex;gap:6px;position:relative;overflow:visible}.custom-chart-type-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 12px;border-radius:16px;border:1px solid var(--border, rgba(255,255,255,.08));background:none;color:var(--text-secondary);font-size:12px;font-family:var(--font-sans);cursor:pointer;transition:none;position:relative}.custom-tooltip-fixed{position:fixed;transform:translate(-50%);padding:8px 12px;background:#161b22;border:1px solid #30363d;border-radius:8px;color:var(--text-primary, #e8e4dc);font-size:11px;font-family:var(--font-sans);line-height:1.4;max-width:240px;text-align:center;pointer-events:none;z-index:9999;box-shadow:0 4px 12px #0006}.custom-chart-type-btn:hover{border-color:var(--accent-a25);color:var(--text-primary)}.custom-chart-type-btn.active{background:var(--accent-a15);border-color:var(--accent-a30);color:var(--accent, #4ec9b0)}.custom-color-row{display:flex;gap:8px;flex-wrap:wrap}.custom-color-swatch{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .1s}.custom-color-swatch:hover{transform:scale(1.15)}.custom-color-swatch.active{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--accent-a30)}.custom-checklist-row{display:flex;gap:8px;align-items:center}.custom-checklist-row .custom-field-input{flex:1}.custom-checklist-remove{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:10px;border:none;background:none;color:var(--text-tertiary);cursor:pointer;flex-shrink:0}.custom-checklist-remove:hover{color:#ef4444}.custom-checklist-add{padding:8px;border:1px dashed var(--border, rgba(255,255,255,.1));border-radius:12px;background:none;color:var(--text-tertiary);font-size:12px;font-family:var(--font-sans);cursor:pointer;margin-top:4px}.custom-checklist-add:hover{border-color:var(--accent-a25);color:var(--accent, #4ec9b0)}.custom-category-row{display:flex;align-items:center;gap:8px}.custom-category-row .custom-field-input{flex:1}.custom-icon-picker-btn{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;border:1px solid var(--border, rgba(255,255,255,.08));background:var(--accent-a06);color:var(--accent, #4ec9b0);cursor:pointer;flex-shrink:0}.custom-icon-picker-btn:hover:not(.locked){background:var(--accent-a12);border-color:var(--accent-a25)}.custom-icon-picker-btn.locked{cursor:default}.custom-cat-icon-svg{width:18px;height:18px;display:flex}.custom-cat-icon-svg svg{width:100%;height:100%}.custom-category-select-wrap{flex:1;position:relative}.custom-category-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;cursor:pointer;text-align:left;border-radius:999px}.custom-cat-backdrop{position:fixed;inset:0;z-index:9}.custom-cat-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:10;max-height:280px;overflow-y:auto;background:#161b22f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border, rgba(255,255,255,.08));border-radius:12px;padding:4px;box-shadow:0 8px 24px #0006;scrollbar-width:thin}.custom-cat-option{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;font-size:13px;font-family:var(--font-sans);color:var(--text-secondary);background:none;border:none;border-radius:8px;cursor:pointer;text-align:left}.custom-cat-option:hover{background:var(--accent-a06);color:var(--text-primary)}.custom-cat-option.active{color:var(--accent, #4ec9b0);background:var(--accent-a08)}.custom-cat-option-icon{width:18px;height:18px;display:flex;flex-shrink:0}.custom-cat-option-icon svg{width:100%;height:100%}.custom-cat-divider{height:1px;background:var(--border, rgba(255,255,255,.06));margin:4px 8px}.custom-cat-new-row{padding:4px}.custom-cat-new-input{width:100%;padding:8px 14px;border-radius:999px;border:1px solid var(--border, rgba(255,255,255,.08));background:var(--accent-a04);color:var(--text-primary);font-size:12px;font-family:var(--font-sans);outline:none}.custom-cat-new-input::placeholder{color:var(--text-tertiary)}.custom-cat-new-input:focus{border-color:var(--accent-a30)}.custom-icon-modal-overlay{position:fixed;inset:0;background:#00000080;z-index:2000;display:flex;align-items:center;justify-content:center}.custom-icon-modal{background:#161b22f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border, rgba(255,255,255,.08));border-radius:var(--module-radius, 24px);width:400px;max-width:90vw;max-height:60vh;display:flex;flex-direction:column;box-shadow:0 24px 80px #00000080}.custom-icon-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px}.custom-icon-modal-header h4{font-size:16px;font-weight:600;color:var(--text-primary);font-family:var(--font-sans);margin:0}.custom-icon-modal-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:none;background:var(--accent-a06);color:var(--text-secondary);cursor:pointer}.custom-icon-modal-close:hover{color:var(--text-primary);background:var(--accent-a12)}.custom-icon-modal-search{display:flex;align-items:center;gap:8px;margin:0 16px 12px;padding:8px 14px;border-radius:999px;background:var(--accent-a04);border:1px solid var(--border, rgba(255,255,255,.06));color:var(--text-tertiary)}.custom-icon-modal-search input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:12px;font-family:var(--font-sans)}.custom-icon-modal-search input::placeholder{color:var(--text-tertiary)}.custom-icon-modal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:4px;padding:0 16px 16px;overflow-y:auto;flex:1;scrollbar-width:thin}.custom-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:4px;padding:8px;margin-top:6px;max-height:160px;overflow-y:auto;border:1px solid var(--border, rgba(255,255,255,.06));border-radius:12px;background:var(--accent-a04);scrollbar-width:thin}.custom-icon-option{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;border:none;background:none;color:var(--text-secondary);cursor:pointer}.custom-icon-option:hover{background:var(--accent-a10);color:var(--text-primary)}.custom-icon-option.active{background:var(--accent-a20);color:var(--accent, #4ec9b0)}.custom-metric-selected{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:16px;background:var(--accent-a08);border:1px solid var(--accent-a20)}.custom-metric-selected-name{font-size:14px;font-weight:500;color:var(--accent, #4ec9b0);font-family:var(--font-sans)}.custom-metric-selected-unit{font-size:11px;color:var(--text-tertiary);font-family:var(--font-sans)}.custom-metric-change{margin-left:auto;font-size:11px;color:var(--text-tertiary);background:none;border:none;cursor:pointer;font-family:var(--font-sans);padding:2px 8px;border-radius:8px}.custom-metric-change:hover{color:var(--text-primary);background:var(--accent-a06)}.custom-biomarker-cats{display:flex;gap:4px;overflow-x:auto;padding-bottom:6px;margin-bottom:4px;scrollbar-width:none}.custom-biomarker-cats::-webkit-scrollbar{display:none}.custom-biomarker-cats .custom-chart-type-btn{flex:none;flex-direction:row;padding:5px 10px;font-size:10px;white-space:nowrap}.custom-create-btn{padding:12px 24px;border-radius:16px;border:none;background:var(--accent, #4ec9b0);color:#0a0a0e;font-size:14px;font-weight:600;font-family:var(--font-sans);cursor:pointer;margin-top:8px;transition:transform .1s,box-shadow .1s}.custom-create-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #4ec9b04d}.custom-create-btn:disabled{opacity:.4;cursor:not-allowed}.sleep-calendar-overlay{position:fixed;inset:0;z-index:999}.sleep-calendar-popover{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:8px;z-index:1000;background:var(--bg-card);border:1px solid var(--accent-a06);border-radius:var(--module-radius, 16px);box-shadow:var(--module-shadow),0 12px 40px #0006;padding:16px;min-width:280px;-webkit-user-select:none;user-select:none}.sleep-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sleep-calendar-month{font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--text-primary)}.sleep-calendar-nav{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px 8px;border-radius:6px;font-size:14px;line-height:1;transition:background .15s,color .15s}.sleep-calendar-nav:hover{background:var(--bg-hover);color:var(--text-primary)}.sleep-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.sleep-calendar-weekday{font-size:9px;font-weight:500;letter-spacing:.1em;color:var(--text-tertiary);text-align:center;padding:4px 0}.sleep-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.sleep-calendar-day{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;font-size:12px;color:var(--text-secondary);background:none;border:none;border-radius:50%;cursor:pointer;transition:background .15s,color .15s}.sleep-calendar-day:hover:not(.disabled):not(.empty){background:var(--bg-hover);color:var(--text-primary)}.sleep-calendar-day.has-data:after{content:"";position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--accent)}.sleep-calendar-day.selected{background:var(--accent);color:var(--bg-card);font-weight:600}.sleep-calendar-day.selected:after{display:none}.sleep-calendar-day.today{border:1px solid var(--accent)}.sleep-calendar-day.disabled{color:var(--text-tertiary);opacity:.3;cursor:default}.sleep-calendar-day.empty{cursor:default}[data-theme=light] .sleep-calendar-popover{box-shadow:var(--module-shadow),0 8px 30px #0000001f}.set-sheet-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:setSheetFadeIn .2s ease-out}.set-sheet-overlay.closing{animation:setSheetFadeOut .25s ease-in forwards}@keyframes setSheetFadeIn{0%{opacity:0}to{opacity:1}}@keyframes setSheetFadeOut{0%{opacity:1}to{opacity:0}}.set-sheet{background:#161b22d9;backdrop-filter:blur(40px) saturate(1.4);-webkit-backdrop-filter:blur(40px) saturate(1.4);border-radius:20px;border:1px solid var(--accent-a08);box-shadow:0 24px 80px #00000080,0 0 1px var(--accent-a10),inset 0 1px #ffffff0a;width:440px;max-width:90vw;display:flex;flex-direction:column;overflow:visible;animation:setSheetSlideUp .3s ease-out}.set-sheet.closing{animation:setSheetSlideDown .25s ease-in forwards}@keyframes setSheetSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes setSheetSlideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}.set-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid rgba(255,255,255,.06)}.set-sheet-exercise-name{font-size:16px;font-weight:600;color:var(--text-primary);letter-spacing:.01em}.set-sheet-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;background:#ffffff0f;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.set-sheet-close:hover{background:#ffffff1a;color:var(--text-primary)}.set-sheet-inputs{display:flex;align-items:flex-start;gap:0;padding:28px 24px 24px}.set-sheet-value-group{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.set-sheet-value{font-size:42px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums;cursor:text;line-height:1;min-width:60px;text-align:center;transition:color .15s ease}.set-sheet-value:hover{color:var(--accent)}.set-sheet-value-input{width:100px;font-size:42px;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums;text-align:center;background:transparent;border:none;border-bottom:2px solid var(--accent);outline:none;font-family:inherit;line-height:1;-moz-appearance:textfield}.set-sheet-value-input::-webkit-outer-spin-button,.set-sheet-value-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.set-sheet-value-label{font-size:13px;color:var(--text-tertiary);font-weight:500;letter-spacing:.02em;margin-top:2px}.set-sheet-divider{width:1px;height:80px;background:#ffffff14;align-self:center;margin:0 8px}.set-sheet-steppers{display:flex;align-items:center;gap:8px;margin-top:12px}.set-sheet-step-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;font-size:13px;font-weight:600;padding:0}.set-sheet-step-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-a06)}.set-sheet-step-btn:active{transform:scale(.92)}.set-sheet-step-btn.small{width:auto;min-width:40px;height:32px;border-radius:16px;padding:0 10px;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.set-sheet-chips{display:flex;gap:8px;padding:0 24px 16px;flex-wrap:wrap}.set-sheet-chip-wrapper{position:relative}.set-sheet-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:20px;font-size:12px;font-weight:500;letter-spacing:.03em;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all .15s ease;font-family:inherit}.set-sheet-chip:hover{border-color:#fff3;color:var(--text-primary)}.set-sheet-chip.has-value{border-color:var(--accent-a20);color:var(--text-primary)}.set-sheet-chip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.set-sheet-picker,.set-sheet-label-picker{position:absolute;top:calc(100% + 8px);left:0;min-width:200px;background:#161b22f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 12px 40px #00000080;z-index:10;padding:8px 0;animation:setSheetFadeIn .15s ease-out}.set-sheet-picker-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px 10px;border-bottom:1px solid rgba(255,255,255,.06)}.set-sheet-picker-title{font-size:14px;font-weight:600;color:var(--text-primary);letter-spacing:.01em;flex:1;text-align:center}.set-sheet-picker-nav{width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.set-sheet-picker-nav:hover{background:#ffffff0f;color:var(--text-primary)}.set-sheet-picker-footer{display:flex;justify-content:center;padding:8px 12px 4px;border-top:1px solid rgba(255,255,255,.06)}.set-sheet-picker-footer-btn{background:transparent;border:none;color:var(--accent);font-size:12px;font-weight:600;cursor:pointer;padding:6px 16px;border-radius:14px;transition:background .15s ease;font-family:inherit}.set-sheet-picker-footer-btn:hover{background:var(--accent-a08)}.set-sheet-date-picker{width:280px}.set-sheet-cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);padding:8px 10px 4px}.set-sheet-cal-wd{font-size:10px;font-weight:600;color:var(--text-tertiary);text-align:center;letter-spacing:.06em;text-transform:uppercase}.set-sheet-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:4px 10px 8px}.set-sheet-cal-day{width:34px;height:34px;border-radius:50%;border:none;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;margin:0 auto;transition:all .12s ease;font-variant-numeric:tabular-nums;font-family:inherit}.set-sheet-cal-day:hover:not(:disabled){background:#ffffff0f;color:var(--text-primary)}.set-sheet-cal-day.selected{background:var(--accent);color:#0d1117;font-weight:700}.set-sheet-cal-day.empty{visibility:hidden}.set-sheet-time-picker{width:220px}.set-sheet-time-columns{display:flex;gap:0}.set-sheet-time-col{flex:1;display:flex;flex-direction:column}.set-sheet-time-col+.set-sheet-time-col{border-left:1px solid rgba(255,255,255,.06)}.set-sheet-time-col-label{font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--text-tertiary);text-transform:uppercase;text-align:center;padding:8px 0 4px}.set-sheet-time-scroll{max-height:200px;overflow-y:auto;padding:2px 0}.set-sheet-time-scroll::-webkit-scrollbar{width:3px}.set-sheet-time-scroll::-webkit-scrollbar-track{background:transparent}.set-sheet-time-scroll::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.set-sheet-time-cell{display:flex;align-items:center;justify-content:center;width:100%;height:36px;background:transparent;border:none;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .12s ease;font-family:inherit;font-variant-numeric:tabular-nums}.set-sheet-time-cell:hover{background:#ffffff0a;color:var(--text-primary)}.set-sheet-time-cell.selected{background:var(--accent-a12);color:var(--accent);font-weight:700}.set-sheet-label-add-row{padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.06)}.set-sheet-label-add-input{width:100%;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:13px;font-family:inherit;padding:4px 0}.set-sheet-label-add-input::placeholder{color:var(--text-tertiary)}.set-sheet-color-palette{display:flex;gap:6px;align-items:center;margin-top:8px;flex-wrap:wrap}.set-sheet-color-swatch{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .15s ease;padding:0}.set-sheet-color-swatch.active{border-color:#fff;transform:scale(1.15)}.set-sheet-label-confirm{width:24px;height:24px;border-radius:50%;border:none;background:var(--accent);color:#0d1117;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-left:auto}.set-sheet-label-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 16px;background:transparent;border:none;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease;font-family:inherit;text-align:left}.set-sheet-label-option:hover{background:#ffffff0a}.set-sheet-label-option.active{color:var(--text-primary)}.set-sheet-label-check{margin-left:auto;color:var(--accent)}.set-sheet-label-divider{height:1px;background:#ffffff0f;margin:4px 0}.set-sheet-notes{padding:0 24px 16px}.set-sheet-notes-input{width:100%;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.08);outline:none;color:var(--text-primary);font-size:13px;font-family:inherit;padding:8px 0;transition:border-color .2s ease}.set-sheet-notes-input:focus{border-color:var(--accent-a30)}.set-sheet-notes-input::placeholder{color:var(--text-tertiary)}.set-sheet-actions{display:flex;align-items:center;gap:12px;padding:12px 24px 20px}.set-sheet-delete{background:transparent;border:1px solid rgba(239,83,80,.3);border-radius:20px;color:#ef5350;font-size:11px;font-weight:600;letter-spacing:.08em;padding:10px 20px;cursor:pointer;transition:all .15s ease;font-family:inherit}.set-sheet-delete:hover{background:#ef53501a;border-color:#ef5350}.set-sheet-save{flex:1;display:flex;align-items:center;justify-content:center;height:44px;border-radius:22px;border:none;background:var(--accent);color:#0d1117;cursor:pointer;transition:all .2s ease;font-weight:600;font-size:14px}.set-sheet-save:hover{transform:scale(1.02);box-shadow:var(--accent-shadow-btn)}.set-sheet-save:active{transform:scale(.98)}@media(max-width:500px){.set-sheet{width:calc(100vw - 32px);border-radius:16px}.set-sheet-value{font-size:36px}.set-sheet-value-input{font-size:36px;width:80px}.set-sheet-step-btn.small{min-width:36px;padding:0 8px;font-size:10px}}.gym-subview~.placeholder-never-matches,.module-page:has(.gym-subview)>.module-page-header{display:none}.gym-header-row{display:flex;align-items:center;gap:12px;margin-bottom:16px}.gym-header-row .gym-back-btn{margin-bottom:0}.gym-header-row .gym-history-title{margin:0}.gym-header-row .gym-rename-input{margin-bottom:0}.gym-back-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:50%;color:var(--text-secondary);cursor:pointer;padding:0;margin-bottom:16px;transition:all .15s ease}.gym-back-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-a06)}.gym-edit-menu-anchor{position:relative;margin-left:auto;flex-shrink:0}.gym-edit-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid var(--accent-a12);color:var(--accent-a40);cursor:pointer;transition:all .2s;padding:0}.gym-edit-btn:hover{border-color:var(--accent-a30);color:var(--accent-a80);background:var(--accent-a05)}.gym-edit-popover{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:#161b22f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 12px 40px #00000080;z-index:20;padding:6px 0;animation:gymPopoverFadeIn .15s ease-out}@keyframes gymPopoverFadeIn{0%{opacity:0;transform:translateY(-4px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.gym-edit-popover-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:transparent;border:none;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:background .12s ease;text-align:left;font-family:inherit}.gym-edit-popover-item:hover{background:#ffffff0f}.gym-edit-popover-item svg{color:var(--text-tertiary);flex-shrink:0}.gym-edit-popover-item.danger{color:#ef5350}.gym-edit-popover-item.danger svg{color:#ef5350}.gym-edit-popover-divider{height:1px;background:#ffffff0f;margin:4px 12px}.gym-title-group{flex:1;min-width:0}.gym-title-group .gym-history-title{margin:0}.gym-exercise-desc{font-size:13px;color:var(--text-tertiary);margin:4px 0 0;line-height:1.4}.gym-edit-name-group{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.gym-edit-name-group .gym-rename-input{margin-bottom:0}.gym-desc-input{font-size:13px;color:var(--text-primary);background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.15);outline:none;padding:4px 0;font-family:inherit;transition:border-color .2s ease}.gym-desc-input:focus{border-bottom-color:var(--accent)}.gym-desc-input::placeholder{color:var(--text-tertiary)}.gym-edit-actions{display:flex;gap:8px;justify-content:flex-end}.gym-edit-actions .console-tab{border-radius:20px;padding:8px 20px}.gym-header-row .gym-history-title.gym-editable{margin-bottom:0;padding:0}.gym-header-row:has(.gym-edit-name-group){align-items:flex-start}.gym-header-row:has(.gym-edit-name-group) .gym-back-btn{margin-top:4px}.gym-section-header{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);padding:0 4px 10px;margin-top:4px}.gym-section-header:not(:first-child){margin-top:8px}.gym-main-toolbar{display:flex;justify-content:flex-end;margin-bottom:4px}.gym-edit-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-a08)}.gym-routine-row.edit-mode{cursor:grab}.gym-routine-row.edit-mode .gym-exercise-info{cursor:pointer}.gym-routine-row.dragging{opacity:.3}.gym-routine-row.drag-over{box-shadow:0 -2px 0 var(--accent) inset}.gym-edit-delete-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;padding:0;flex-shrink:0;transition:all .15s ease}.gym-edit-delete-btn:hover{color:#ef5350;background:#ef53501a}.gym-edit-inline{display:flex;flex-direction:column;gap:8px;padding:12px 16px}.gym-edit-inline-input{font-size:14px;font-weight:500;color:var(--text-primary);background:transparent;border:none;border-bottom:1px solid var(--accent);outline:none;padding:4px 0;font-family:inherit}.gym-edit-inline-desc{font-size:13px;color:var(--text-primary);background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.15);outline:none;padding:4px 0;font-family:inherit;transition:border-color .2s ease}.gym-edit-inline-desc:focus{border-bottom-color:var(--accent)}.gym-edit-inline-desc::placeholder,.gym-edit-inline-input::placeholder{color:var(--text-tertiary)}.gym-edit-inline-actions{display:flex;gap:8px;justify-content:flex-end}.gym-edit-inline-actions .console-tab{border-radius:20px;padding:6px 16px;font-size:12px}.gym-fab-section{position:relative;display:flex;justify-content:center;margin-top:-22px;padding-bottom:4px;z-index:2}.gym-fab-section .gym-fab-add{position:relative;bottom:auto;left:auto;transform:none}.gym-fab-section .gym-fab-add:hover{transform:scale(1.1)}.gym-exercise-group-header{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-a35);padding:14px 16px 4px}.gym-card{background:var(--bg-card, #161b22);border-radius:var(--module-radius);padding:20px;margin-bottom:12px;box-shadow:var(--module-shadow);border:1px solid var(--accent-a06)}.gym-card-table{background:var(--bg-hover);border-radius:14px;overflow:hidden}.gym-divider{height:1px;background:#ffffff0f;margin:0 16px}.gym-row-btn{display:flex;align-items:center;gap:10px;width:100%;padding:14px 16px;background:transparent;border:none;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease;text-align:left}.gym-row-btn:hover{background:var(--bg-hover)}.gym-row-btn.accent{color:var(--accent)}.gym-row-btn.accent svg{color:var(--accent)}.gym-routine-row{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;transition:background .15s ease}.gym-routine-row:hover{background:var(--bg-hover)}.gym-routine-icon{width:18px;height:18px;color:var(--accent);flex-shrink:0}.gym-routine-name{flex:1;color:var(--text-primary);font-size:14px;font-weight:500}.gym-routine-badge{color:var(--text-tertiary);font-size:13px;font-variant-numeric:tabular-nums}.gym-new-routine-dialog{padding:16px;display:flex;flex-direction:column;gap:12px}.gym-new-routine-actions{display:flex;gap:8px;justify-content:flex-end}.gym-suggestions{display:flex;flex-direction:column;padding:4px 0}.gym-suggestion-row{display:flex;align-items:center;gap:10px;padding:8px 16px;background:transparent;border:none;color:var(--text-secondary);font-size:13px;cursor:pointer;transition:background .15s ease;text-align:left;width:100%}.gym-suggestion-row:hover{background:var(--bg-hover);color:var(--text-primary)}.gym-suggestion-row svg{color:var(--text-tertiary)}.gym-log-view{display:flex;flex-direction:column;gap:12px}.gym-log-top{display:flex;gap:10px;align-items:center;margin-bottom:4px}.gym-log-name-input{flex:1;background:var(--bg-card, #161b22);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-primary);font-size:14px;padding:10px 12px;font-family:inherit;outline:none;transition:border-color .2s ease}.gym-log-name-input:focus{border-color:var(--accent)}.gym-log-name-input::placeholder{color:var(--text-tertiary)}.gym-log-exercise-card{background:var(--bg-card, #161b22);border-radius:var(--radius-xs);padding:14px 16px;box-shadow:0 2px 4px #0000004d}.gym-log-exercise-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.gym-log-exercise-name{color:var(--accent);font-size:13px;font-weight:600;letter-spacing:.08em}.gym-log-set-header{display:flex;align-items:center;padding:0 0 6px;font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--text-tertiary)}.gym-log-col-set{width:36px;flex-shrink:0;text-align:left;font-size:inherit;color:inherit}.gym-log-col-reps{width:100px;text-align:center;font-size:inherit;color:inherit}.gym-log-col-weight{width:120px;text-align:center;font-size:inherit;color:inherit}.gym-log-col-spacer{flex:1}.gym-log-set-row{display:flex;align-items:center;padding:4px 0}.gym-log-set-row .gym-log-col-set{color:var(--text-secondary);font-size:13px;font-weight:500}.gym-log-set-row .gym-set-remove{opacity:0;transition:opacity .15s ease}.gym-log-set-row:hover .gym-set-remove{opacity:1}.gym-add-set-btn{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:8px;margin-top:6px;background:var(--accent-a08);border:none;border-radius:var(--radius-xs);color:var(--accent);font-size:11px;font-weight:600;letter-spacing:.08em;cursor:pointer;transition:background .15s ease}.gym-add-set-btn:hover{background:var(--accent-a15)}.gym-add-exercise-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;background:var(--bg-card, #161b22);border:1px dashed var(--accent-a30);border-radius:var(--radius-xs);color:var(--accent);font-size:12px;font-weight:600;letter-spacing:.08em;cursor:pointer;transition:all .15s ease}.gym-add-exercise-btn:hover{background:var(--accent-a06);border-color:var(--accent)}.gym-add-exercise-input{display:flex;gap:8px;align-items:center;padding:12px 16px}.gym-exercise-row{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;transition:background .15s ease,opacity .15s ease}.gym-exercise-row:hover{background:var(--bg-hover)}.gym-drag-handle{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0;cursor:grab;opacity:.3;transition:opacity .15s ease}.gym-exercise-row:hover .gym-drag-handle{opacity:.6}.gym-exercise-row.dragging{opacity:.3}.gym-exercise-row.drag-over{box-shadow:0 -2px 0 var(--accent) inset}.gym-sort-indicator{width:8px;height:8px;border-radius:50%;border:1.5px solid var(--text-tertiary);flex-shrink:0}.gym-sort-indicator.active{background:var(--accent);border-color:var(--accent)}.gym-exercise-info{flex:1;min-width:0}.gym-exercise-name{color:var(--text-primary);font-size:14px;font-weight:500}.gym-exercise-meta{color:var(--text-tertiary);font-size:12px;margin-top:2px}.gym-exercise-chevron{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0}.gym-exercise-history{width:100%}.gym-history-header{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.gym-history-title{font-family:var(--font-serif);font-size:18px;font-weight:400;color:var(--text-primary);margin:0;letter-spacing:.01em}.gym-history-title.gym-editable{cursor:text;padding:4px 0;margin-bottom:12px;border-bottom:1px solid transparent;transition:border-color .2s ease}.gym-history-title.gym-editable:hover{border-bottom-color:#ffffff26}.gym-rename-input{font-family:var(--font-serif);font-size:18px;font-weight:400;color:var(--text-primary);letter-spacing:.01em;background:transparent;border:none;border-bottom:1px solid var(--accent);outline:none;padding:4px 0;margin-bottom:12px;width:100%}.gym-history-count{color:var(--text-tertiary);font-size:12px}.gym-sessions-list{display:flex;flex-direction:column;gap:16px}.gym-session-card{background:var(--bg-card, #161b22);border-radius:var(--module-radius);padding:20px;box-shadow:var(--module-shadow);border:1px solid var(--accent-a06)}.gym-session-card.latest{border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.gym-session-header{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}.gym-session-date{color:var(--text-primary);font-size:14px;font-weight:600;letter-spacing:.02em}.gym-session-date-full{color:var(--text-tertiary);font-size:11px}.gym-comparison-card{background:var(--bg-hover);border-radius:14px;padding:16px;margin-bottom:14px}.gym-comparison-header{font-size:10px;letter-spacing:.12em;color:color-mix(in srgb,var(--accent) 50%,transparent);text-transform:uppercase;margin-bottom:10px;font-weight:500}.gym-comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gym-comparison-stat{padding:6px 0}.gym-comparison-value{font-size:18px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.gym-comparison-label{font-size:11px;color:var(--text-tertiary);letter-spacing:.04em;margin-top:1px}.gym-comparison-delta{font-size:11px;color:var(--text-tertiary);margin-top:2px;font-variant-numeric:tabular-nums}.gym-comparison-delta.positive{color:var(--accent)}.gym-comparison-delta.negative{color:var(--accent-rose, #d29922)}.gym-trend-section{margin-bottom:14px}.gym-trend-toggles{display:flex;gap:6px;margin-bottom:12px}.gym-trend-chip{padding:5px 12px;border-radius:14px;font-size:11px;font-weight:600;border:1px solid rgba(255,255,255,.1);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;font-family:inherit}.gym-trend-chip:hover{border-color:#fff3}.gym-trend-chip.active{background:var(--accent);color:#0d1117;border-color:var(--accent)}.gym-trend-chart{height:160px}.gym-overview-chart{background:var(--bg-hover);border-radius:14px;padding:16px;margin-bottom:14px}.gym-overview-chart-header{margin-bottom:10px}.gym-overview-chart-label{font-size:10px;letter-spacing:.12em;color:color-mix(in srgb,var(--accent) 50%,transparent);text-transform:uppercase;font-weight:500}.gym-overview-chart-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.gym-comparison-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle;flex-shrink:0}.gym-sets-table{background:var(--bg-hover);border-radius:14px;overflow:hidden}.gym-set-row-wrapper{border-bottom:1px solid rgba(255,255,255,.06)}.gym-set-row-wrapper:last-child{border-bottom:none}.gym-set-pill{display:flex;align-items:center;gap:36px;padding:14px 20px;font-variant-numeric:tabular-nums;background:transparent}.gym-set-pill.clickable{cursor:pointer;transition:background .15s ease}.gym-set-pill.clickable:hover{background:#ffffff0a}.gym-set-actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.gym-set-action-btn{width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:transparent;color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;padding:0}.gym-set-action-btn.delete:hover{border-color:#ef5350;color:#ef5350;background:#ef53501a}.gym-set-action-btn.duplicate:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-a08)}.gym-set-chevron{color:var(--text-tertiary);flex-shrink:0;opacity:.4}.gym-set-num{color:var(--accent);font-size:13px;font-weight:600;width:20px;flex-shrink:0}.gym-set-detail{color:var(--text-primary);font-size:14px;min-width:72px}.gym-set-time{color:var(--text-tertiary);font-size:12px;min-width:80px;font-variant-numeric:tabular-nums;white-space:nowrap}.gym-set-empty{color:var(--text-tertiary);opacity:.4}.gym-set-remove{background:transparent;border:none;color:var(--text-tertiary);font-size:16px;cursor:pointer;padding:0 4px;margin-left:auto;transition:color .2s ease}.gym-set-remove:hover{color:var(--accent-rose, #ef5350)}.gym-set-remove.small{font-size:14px;padding:0 2px}.gym-stepper{display:flex;align-items:center;gap:4px}.gym-stepper-btn{width:26px;height:26px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;padding:0;line-height:1}.gym-stepper-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.gym-stepper-value{min-width:36px;text-align:center;font-size:14px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.gym-stepper-label{font-size:11px;color:var(--text-tertiary);margin-left:2px;min-width:24px}.gym-add-entry{background:var(--bg-card, #161b22);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:var(--module-radius);padding:20px;margin-bottom:16px;box-shadow:var(--module-shadow)}.gym-add-entry-header{font-size:11px;letter-spacing:.1em;color:var(--text-secondary);margin-bottom:12px;font-weight:500}.gym-add-entry-actions{display:flex;gap:8px;margin-top:12px;align-items:center}.gym-latest-card-wrapper{position:relative;padding-bottom:22px}.gym-fab-add{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:44px;height:44px;border-radius:50%;border:none;background:var(--accent);color:#0d1117;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--accent-shadow-btn);transition:all .2s ease;z-index:2}.gym-fab-add:hover{transform:translate(-50%) scale(1.1);box-shadow:var(--accent-shadow-btn-hover)}.gym-set-note{padding:2px 20px 10px 56px;font-size:12px;color:var(--text-tertiary);font-style:italic}.gym-set-label-badge{font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:10px;background:var(--accent-a08);color:var(--text-secondary);white-space:nowrap}.gym-empty-row{display:flex;align-items:center;justify-content:center;padding:20px 16px}.gym-empty-text{font-size:13px;font-style:italic;font-weight:400;color:var(--text-tertiary)}.gym-exercises-wrapper{position:relative;padding-bottom:22px}.gym-exercises-wrapper .gym-fab-add{bottom:10px}.exercise-picker-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:exercisePickerOverlayIn .2s ease-out}.exercise-picker-overlay.closing{animation:exercisePickerOverlayOut .25s ease-in forwards}@keyframes exercisePickerOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes exercisePickerOverlayOut{0%{opacity:1}to{opacity:0}}@keyframes exercisePickerSlideUp{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes exercisePickerSlideDown{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(20px) scale(.97)}}.exercise-picker{background:#161b22d9;backdrop-filter:blur(40px) saturate(1.4);-webkit-backdrop-filter:blur(40px) saturate(1.4);border-radius:20px;border:1px solid var(--accent-a08);box-shadow:0 24px 80px #00000080,0 0 1px var(--accent-a10),inset 0 1px #ffffff0a;width:620px;max-width:92vw;max-height:50vh;display:flex;flex-direction:column;overflow:hidden;animation:exercisePickerSlideUp .3s ease-out}.exercise-picker.closing{animation:exercisePickerSlideDown .25s ease-in forwards}.exercise-picker-search{display:flex;align-items:center;gap:10px;padding:16px 16px 14px;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.exercise-picker-search-icon{color:var(--text-tertiary);flex-shrink:0}.exercise-picker-search-input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:15px;font-family:inherit;min-width:0}.exercise-picker-search-input::placeholder{color:var(--text-tertiary)}.exercise-picker-clear{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:none;background:#ffffff14;color:var(--text-tertiary);cursor:pointer;padding:0;flex-shrink:0;transition:all .15s ease}.exercise-picker-clear:hover{background:#ffffff1f;color:var(--text-secondary)}.exercise-picker-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;background:#ffffff14;color:var(--text-secondary);cursor:pointer;padding:0;flex-shrink:0;transition:all .15s ease}.exercise-picker-close:hover{background:#ffffff24;color:var(--text-primary)}.exercise-picker-list{overflow-y:auto;flex:1;padding:4px 0}.exercise-picker-list::-webkit-scrollbar{width:4px}.exercise-picker-list::-webkit-scrollbar-track{background:transparent}.exercise-picker-list::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.exercise-picker-section{font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--accent);padding:14px 16px 6px}.exercise-picker-row{display:flex;align-items:center;gap:12px;width:100%;padding:13px 16px;background:transparent;border:none;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:background .12s ease;text-align:left;font-family:inherit}.exercise-picker-row:hover{background:#ffffff0a}.exercise-picker-row svg:first-child{color:var(--accent);flex-shrink:0}.exercise-picker-row.custom{color:var(--text-primary);font-weight:600}.exercise-picker-row.added{color:var(--text-secondary)}.exercise-picker-row-name{flex:1;min-width:0}.exercise-picker-divider{height:1px;background:#ffffff0f;margin:0 16px}.exercise-picker-empty{padding:32px 16px;text-align:center;color:var(--text-tertiary);font-size:13px}.new-workout-modal{background:#161b22d9;backdrop-filter:blur(40px) saturate(1.4);-webkit-backdrop-filter:blur(40px) saturate(1.4);border-radius:20px;border:1px solid var(--accent-a08);box-shadow:0 24px 80px #00000080,0 0 1px var(--accent-a10),inset 0 1px #ffffff0a;width:620px;max-width:92vw;max-height:50vh;display:flex;flex-direction:column;overflow:hidden;animation:exercisePickerSlideUp .3s ease-out}.new-workout-modal.closing{animation:exercisePickerSlideDown .25s ease-in forwards}.new-workout-modal-header{padding:20px 20px 0;font-size:17px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.new-workout-modal-body{padding:16px 20px 8px;display:flex;flex-direction:column}.new-workout-modal-label{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:6px}.new-workout-modal-input{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px;font-size:15px;font-family:inherit;color:var(--text-primary);outline:none;transition:border-color .15s ease}.new-workout-modal-input:focus{border-color:var(--accent-a30)}.new-workout-modal-input::placeholder{color:var(--text-tertiary)}.new-workout-modal-textarea{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px;font-size:14px;font-family:inherit;color:var(--text-primary);outline:none;resize:vertical;min-height:60px;transition:border-color .15s ease}.new-workout-modal-textarea:focus{border-color:var(--accent-a30)}.new-workout-modal-textarea::placeholder{color:var(--text-tertiary)}.new-workout-modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:12px 20px 20px}.new-workout-modal-btn{padding:10px 22px;border-radius:10px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;border:none;transition:background .15s ease,opacity .15s ease}.new-workout-modal-btn.cancel{background:#ffffff0f;color:var(--text-secondary)}.new-workout-modal-btn.cancel:hover{background:#ffffff1a}.new-workout-modal-btn.create{background:var(--accent);color:#000}.new-workout-modal-btn.create:hover{background:var(--accent-hover, #d4ff33)}.new-workout-modal-btn.create:disabled{opacity:.35;cursor:not-allowed}@media(max-width:600px){.gym-comparison-grid{gap:8px}.gym-comparison-value{font-size:16px}.gym-stepper-value{min-width:28px;font-size:13px}.gym-log-col-reps{width:80px}.gym-log-col-weight{width:100px}}.cardio-subview~.placeholder-never-matches,.module-page:has(.cardio-subview)>.module-page-header{display:none}.cardio-section-header{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);padding:0 4px 10px;margin-top:4px}.cardio-section-header:not(:first-child){margin-top:8px}.cardio-card{background:var(--bg-card, #161b22);border-radius:var(--module-radius);padding:20px;margin-bottom:14px;box-shadow:var(--module-shadow);border:1px solid var(--accent-a06)}.cardio-card-table{background:var(--bg-hover);border-radius:14px;overflow:hidden}.cardio-divider{height:1px;background:#ffffff0f;margin:0 16px}.cardio-overview-chart{background:var(--bg-hover);border-radius:14px;padding:16px}.cardio-card .cardio-overview-chart{background:transparent;padding:0}.cardio-overview-chart-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.cardio-trend-section{margin-bottom:14px}.cardio-trend-toggles{display:flex;gap:6px;margin-bottom:12px}.cardio-trend-chip{padding:5px 12px;border-radius:14px;font-size:11px;font-weight:600;border:1px solid rgba(255,255,255,.1);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;font-family:inherit}.cardio-trend-chip:hover{border-color:#fff3}.cardio-trend-chip.active{background:var(--accent);color:#0d1117;border-color:var(--accent)}.cardio-trend-chart{height:160px}.cardio-back-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:50%;color:var(--text-secondary);cursor:pointer;padding:0;margin-bottom:16px;transition:all .15s ease}.cardio-back-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-a06)}.cardio-header-row{display:flex;align-items:center;gap:12px;margin-bottom:16px}.cardio-header-row .cardio-back-btn{margin-bottom:0}.cardio-header-row .cardio-history-title{margin:0}.cardio-header-row .cardio-rename-input{margin-bottom:0}.cardio-header-row:has(.cardio-edit-name-group){align-items:flex-start}.cardio-header-row:has(.cardio-edit-name-group) .cardio-back-btn{margin-top:4px}.cardio-history-title{font-family:var(--font-serif);font-size:18px;font-weight:400;color:var(--text-primary);margin:0;letter-spacing:.01em}.cardio-history-title.cardio-editable{cursor:text;padding:4px 0;margin-bottom:12px;border-bottom:1px solid transparent;transition:border-color .2s ease}.cardio-history-title.cardio-editable:hover{border-bottom-color:#ffffff26}.cardio-rename-input{font-family:var(--font-serif);font-size:18px;font-weight:400;color:var(--text-primary);letter-spacing:.01em;background:transparent;border:none;border-bottom:1px solid var(--accent);outline:none;padding:4px 0;margin-bottom:12px;width:100%}.cardio-title-group{flex:1;min-width:0}.cardio-title-group .cardio-history-title{margin:0}.cardio-exercise-desc{font-size:13px;color:var(--text-tertiary);margin:4px 0 0;line-height:1.4}.cardio-edit-name-group{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.cardio-edit-name-group .cardio-rename-input{margin-bottom:0}.cardio-desc-input{font-size:13px;color:var(--text-primary);background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.15);outline:none;padding:4px 0;font-family:inherit;transition:border-color .2s ease}.cardio-desc-input:focus{border-bottom-color:var(--accent)}.cardio-desc-input::placeholder{color:var(--text-tertiary)}.cardio-edit-actions{display:flex;gap:8px;justify-content:flex-end}.cardio-edit-actions .console-tab{border-radius:20px;padding:8px 20px}.cardio-edit-menu-anchor{position:relative;margin-left:auto;flex-shrink:0}.cardio-edit-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid var(--accent-a12);color:var(--accent-a40);cursor:pointer;transition:all .2s;padding:0}.cardio-edit-btn:hover{border-color:var(--accent-a30);color:var(--accent-a80);background:var(--accent-a05)}.cardio-edit-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-a08)}.cardio-edit-popover{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:#161b22f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 12px 40px #00000080;z-index:20;padding:6px 0;animation:cardioPopoverFadeIn .15s ease-out}@keyframes cardioPopoverFadeIn{0%{opacity:0;transform:translateY(-4px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.cardio-edit-popover-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:transparent;border:none;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:background .12s ease;text-align:left;font-family:inherit}.cardio-edit-popover-item:hover{background:#ffffff0f}.cardio-edit-popover-item svg{color:var(--text-tertiary);flex-shrink:0}.cardio-edit-popover-item.danger{color:#ef5350}.cardio-edit-popover-item.danger svg{color:#ef5350}.cardio-edit-popover-divider{height:1px;background:#ffffff0f;margin:4px 12px}.cardio-main-toolbar{display:flex;justify-content:flex-end;margin-bottom:4px}.cardio-routine-row.edit-mode{cursor:grab}.cardio-routine-row.edit-mode .cardio-routine-info{cursor:pointer}.cardio-routine-row.dragging{opacity:.3}.cardio-routine-row.drag-over{box-shadow:0 -2px 0 var(--accent) inset}.cardio-edit-delete-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;padding:0;flex-shrink:0;transition:all .15s ease}.cardio-edit-delete-btn:hover{color:#ef5350;background:#ef53501a}.cardio-edit-inline{display:flex;flex-direction:column;gap:8px;padding:12px 16px}.cardio-edit-inline-input{font-size:14px;font-weight:500;color:var(--text-primary);background:transparent;border:none;border-bottom:1px solid var(--accent);outline:none;padding:4px 0;font-family:inherit}.cardio-edit-inline-desc{font-size:13px;color:var(--text-primary);background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.15);outline:none;padding:4px 0;font-family:inherit;transition:border-color .2s ease}.cardio-edit-inline-desc:focus{border-bottom-color:var(--accent)}.cardio-edit-inline-desc::placeholder,.cardio-edit-inline-input::placeholder{color:var(--text-tertiary)}.cardio-edit-inline-actions{display:flex;gap:8px;justify-content:flex-end}.cardio-edit-inline-actions .console-tab{border-radius:20px;padding:6px 16px;font-size:12px}.cardio-drag-handle{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0;cursor:grab;opacity:.3;transition:opacity .15s ease}.cardio-routine-row:hover .cardio-drag-handle{opacity:.6}.cardio-routine-row{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;transition:background .15s ease}.cardio-routine-row:hover{background:var(--bg-hover)}.cardio-routine-icon{width:18px;height:18px;color:var(--accent);flex-shrink:0}.cardio-routine-info{flex:1;min-width:0}.cardio-routine-name{flex:1;color:var(--text-primary);font-size:14px;font-weight:500}.cardio-routine-meta{color:var(--text-tertiary);font-size:12px;margin-top:2px}.cardio-routine-badge{color:var(--text-tertiary);font-size:13px;font-variant-numeric:tabular-nums}.cardio-routine-chevron{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0}.cardio-activity-row{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;transition:background .15s ease}.cardio-activity-row:hover{background:var(--bg-hover)}.cardio-activity-group-header{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-a35);padding:14px 16px 4px}.cardio-activities-wrapper{position:relative;padding-bottom:22px}.cardio-activities-wrapper .cardio-fab-add{bottom:10px}.cardio-fab-section{position:relative;display:flex;justify-content:center;margin-top:-22px;padding-bottom:4px;z-index:2}.cardio-fab-section .cardio-fab-add{position:relative;bottom:auto;left:auto;transform:none}.cardio-fab-section .cardio-fab-add:hover{transform:scale(1.1)}.cardio-fab-add{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:44px;height:44px;border-radius:50%;border:none;background:var(--accent);color:#0d1117;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--accent-shadow-btn);transition:all .2s ease;z-index:2}.cardio-fab-add:hover{transform:translate(-50%) scale(1.1);box-shadow:var(--accent-shadow-btn-hover)}.cardio-empty-row{display:flex;align-items:center;justify-content:center;padding:20px 16px}.cardio-empty-text{font-size:13px;font-style:italic;font-weight:400;color:var(--text-tertiary)}.cardio-marker-row{display:flex;align-items:center;padding:12px 0;gap:12px}.cardio-marker-icon{width:18px;height:18px;color:var(--accent);flex-shrink:0}.cardio-marker-info{flex:1;min-width:0}.cardio-marker-label{font-size:13px;font-weight:500;color:var(--text-primary)}.cardio-marker-chart{height:80px;margin-top:6px}.cardio-marker-value{font-size:14px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.cardio-marker-unit{font-size:11px;font-weight:400;color:var(--text-tertiary);margin-left:3px}.cardio-marker-trend{font-size:11px;font-weight:600;margin-left:6px}.cardio-marker-trend.up{color:#22c55e}.cardio-marker-trend.down{color:#ef4444}.cardio-marker-trend.flat{color:var(--text-tertiary)}.cardio-zone-chart{height:180px;margin-bottom:12px}.cardio-zone-legend{display:flex;flex-direction:column;gap:6px}.cardio-zone-legend-row{display:flex;align-items:center;gap:8px;font-size:11px}.cardio-zone-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.cardio-zone-name{flex:1;color:var(--text-secondary);font-weight:500}.cardio-zone-hr{color:var(--text-tertiary);font-variant-numeric:tabular-nums}.cardio-zone-time{color:var(--text-primary);font-weight:600;font-variant-numeric:tabular-nums;min-width:48px;text-align:right}.cardio-zone-empty{color:var(--text-tertiary);font-size:12px;text-align:center;padding:24px 0}.cardio-zone-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:700;letter-spacing:.04em;color:#0d1117}.cardio-comparison-card{background:var(--bg-hover);border-radius:14px;padding:16px;margin-bottom:14px}.cardio-comparison-header{font-size:10px;letter-spacing:.12em;color:color-mix(in srgb,var(--accent) 50%,transparent);text-transform:uppercase;margin-bottom:10px;font-weight:500}.cardio-comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cardio-comparison-stat{padding:6px 0}.cardio-comparison-value{font-size:18px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.cardio-comparison-label{font-size:11px;color:var(--text-tertiary);letter-spacing:.04em;margin-top:1px}.cardio-comparison-delta{font-size:11px;color:var(--text-tertiary);margin-top:2px;font-variant-numeric:tabular-nums}.cardio-comparison-delta.positive{color:var(--accent)}.cardio-comparison-delta.negative{color:var(--accent-rose, #d29922)}.cardio-comparison-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle;flex-shrink:0}.cardio-session-card{background:var(--bg-card, #161b22);border-radius:var(--module-radius);padding:20px;box-shadow:var(--module-shadow);border:1px solid var(--accent-a06)}.cardio-session-card.latest{border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.cardio-session-header-bar{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}.cardio-session-date-label{color:var(--text-primary);font-size:14px;font-weight:600;letter-spacing:.02em}.cardio-sessions-list{display:flex;flex-direction:column;gap:16px}.cardio-latest-card-wrapper{position:relative;padding-bottom:22px}.cardio-sets-table{background:var(--bg-hover);border-radius:14px;overflow:hidden}.cardio-set-row-wrapper{border-bottom:1px solid rgba(255,255,255,.06)}.cardio-set-row-wrapper:last-child{border-bottom:none}.cardio-set-pill{display:flex;align-items:center;gap:36px;padding:14px 20px;font-variant-numeric:tabular-nums;background:transparent}.cardio-set-pill.clickable{cursor:pointer;transition:background .15s ease}.cardio-set-pill.clickable:hover{background:#ffffff0a}.cardio-set-num{color:var(--accent);font-size:13px;font-weight:600;width:20px;flex-shrink:0}.cardio-set-time{color:var(--text-tertiary);font-size:12px;min-width:80px;font-variant-numeric:tabular-nums;white-space:nowrap}.cardio-set-detail{color:var(--text-primary);font-size:14px;min-width:72px}.cardio-set-empty{color:var(--text-tertiary);opacity:.4}.cardio-set-note{padding:2px 20px 10px 56px;font-size:12px;color:var(--text-tertiary);font-style:italic}.cardio-set-actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.cardio-set-action-btn{width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:transparent;color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;padding:0}.cardio-set-action-btn.delete:hover{border-color:#ef5350;color:#ef5350;background:#ef53501a}.cardio-set-action-btn.duplicate:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-a08)}.cardio-set-chevron{color:var(--text-tertiary);flex-shrink:0;opacity:.4}.cardio-set-remove{background:transparent;border:none;color:var(--text-tertiary);font-size:16px;cursor:pointer;padding:0 4px;margin-left:auto;transition:color .2s ease}.cardio-set-remove:hover{color:var(--accent-rose, #ef5350)}.cardio-exercise-history{width:100%}.cardio-session-row{display:flex;align-items:center;gap:12px;padding:12px 0;cursor:default}.cardio-session-icon{width:18px;height:18px;color:var(--accent);flex-shrink:0}.cardio-session-info{flex:1;min-width:0}.cardio-session-name{font-size:14px;font-weight:500;color:var(--text-primary)}.cardio-session-date{font-size:11px;color:var(--text-tertiary);margin-top:2px}.cardio-session-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text-secondary);font-variant-numeric:tabular-nums;margin-top:3px}.cardio-session-meta span{white-space:nowrap}.cardio-session-empty{color:var(--text-tertiary);font-size:12px;text-align:center;padding:24px 0}.cardio-log-view{display:flex;flex-direction:column;gap:12px}.cardio-log-top{display:flex;gap:10px;align-items:center;margin-bottom:4px}.cardio-log-name-input{flex:1;background:var(--bg-card, #161b22);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-primary);font-size:14px;padding:10px 12px;font-family:inherit;outline:none;transition:border-color .2s ease}.cardio-log-name-input:focus{border-color:var(--accent)}.cardio-log-name-input::placeholder{color:var(--text-tertiary)}.cardio-log-activity-card{background:var(--bg-card, #161b22);border-radius:var(--radius-xs);padding:14px 16px;box-shadow:0 2px 4px #0000004d}.cardio-log-activity-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.cardio-log-activity-name{color:var(--accent);font-size:13px;font-weight:600;letter-spacing:.08em}.cardio-log-fields{display:flex;flex-direction:column;gap:10px}.cardio-log-field{display:flex;align-items:center;gap:10px}.cardio-log-field-label{font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--text-tertiary);min-width:64px}.cardio-log-field-unit{font-size:11px;color:var(--text-tertiary);min-width:24px}.cardio-stepper{display:flex;align-items:center;gap:4px}.cardio-stepper-btn{width:26px;height:26px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;padding:0;line-height:1}.cardio-stepper-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.cardio-stepper-value{min-width:36px;text-align:center;font-size:14px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.cardio-summary-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.cardio-summary-stat{text-align:center;padding:8px 0}.cardio-summary-value{font-size:18px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.cardio-summary-label{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin-top:4px}.cardio-subview{padding:0}@media(max-width:600px){.cardio-comparison-grid{gap:8px}.cardio-comparison-value{font-size:16px}.cardio-stepper-value{min-width:28px;font-size:13px}.cardio-set-pill{gap:16px;padding:12px 14px}}.timescale-container{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.timescale-buttons{display:flex;gap:4px}.timescale-btn{padding:8px 16px;background:transparent;border:1px solid var(--border);border-radius:20px;font-size:12px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.timescale-btn:hover{background:var(--bg-hover);border-color:var(--text-tertiary);color:var(--text-primary)}.timescale-btn.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.timescale-range{display:flex;align-items:center;gap:12px}.range-start,.range-end{font-size:12px;color:var(--text-tertiary);min-width:50px}.range-start{text-align:right}.range-end{text-align:left}.range-line{flex:1;max-width:200px;height:2px;position:relative}.range-track{position:absolute;top:0;left:0;right:0;height:100%;background:var(--border)}.range-indicator{position:absolute;top:-3px;right:0;width:8px;height:8px;background:var(--accent);border-radius:50%;box-shadow:var(--accent-glow-sm)}@media(max-width:600px){.timescale-buttons{flex-wrap:wrap}.timescale-btn{padding:6px 12px}.timescale-btn:first-child,.timescale-btn:last-child{border-radius:20px}.timescale-range{display:none}}.medical-id-page{width:100%;max-width:720px}.medical-id-header{display:flex;align-items:center;gap:20px;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--border)}.medical-id-star svg{width:64px;height:64px;flex-shrink:0}.medical-id-patient-info{display:flex;flex-direction:column;gap:4px}.medical-id-patient-name{font-family:var(--font-serif);font-size:22px;font-weight:400;color:var(--text-primary);letter-spacing:.01em}.medical-id-patient-dob{font-size:13px;color:var(--text-secondary)}.medical-id-section{margin-bottom:28px}.medical-id-section-header{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border)}.medical-id-section-icon{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0}.medical-id-section-title{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary);font-weight:500}.medical-id-rows{display:flex;flex-direction:column;gap:10px}.medical-id-row{display:flex;align-items:baseline;gap:16px;line-height:1.5;padding:4px 0}.medical-id-row-label{color:var(--text-secondary);font-size:12px;letter-spacing:.04em;min-width:160px;flex-shrink:0;font-weight:500}.medical-id-row-value{color:var(--text-primary);font-size:14px;font-variant-numeric:tabular-nums}.medical-id-row-value.empty{color:var(--text-tertiary)}.ice-placeholder{display:flex;align-items:center;gap:10px;padding:16px;border:1px dashed var(--border);border-radius:var(--radius-xs);color:var(--text-tertiary);font-size:13px}.ice-placeholder svg{width:16px;height:16px;flex-shrink:0;opacity:.5}.medical-id-ice-contact{display:flex;flex-direction:column;gap:2px;padding:8px 0;border-bottom:1px solid var(--border)}.medical-id-ice-contact:last-child{border-bottom:none}.medical-id-ice-name{color:var(--text-primary);font-size:14px}.medical-id-ice-phone{color:var(--text-secondary);font-size:13px;font-variant-numeric:tabular-nums}.medical-id-conditions-list{display:flex;flex-direction:column;gap:6px}.medical-id-condition-item{display:flex;align-items:center;gap:10px;padding:4px 0;font-size:13px}.medical-id-condition-status{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--text-tertiary)}.medical-id-condition-status.chronic{background:#f59e0b}.medical-id-condition-status.acute{background:#ef4444}.medical-id-condition-status.resolved{background:#22c55e}.medical-id-condition-status.family_history{background:#8b5cf6}.medical-id-condition-label{color:var(--text-primary);flex:1}.medical-id-condition-system{color:var(--text-tertiary);font-size:11px;text-transform:uppercase;letter-spacing:.04em}@media(max-width:600px){.medical-id-header{flex-direction:column;align-items:flex-start;gap:12px}.medical-id-star svg{width:48px;height:48px}.medical-id-row{flex-wrap:wrap;gap:4px}.medical-id-row-label{min-width:120px}}.raw-data-table-wrap{display:flex;flex-direction:column;gap:12px}.raw-data-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.raw-data-filters{display:flex;align-items:center;gap:8px}.raw-data-date-range{display:flex;align-items:center;gap:4px}.raw-data-date-input{padding:5px 8px;border-radius:8px;border:1px solid var(--border, rgba(255,255,255,.06));background:var(--accent-a04);color:var(--text-secondary);font-size:11px;font-family:var(--font-sans);outline:none;color-scheme:dark}.raw-data-date-input:focus{border-color:var(--accent-a30)}.raw-data-date-sep{color:var(--text-tertiary);font-size:11px}.raw-data-count{font-size:11px;color:var(--text-tertiary);font-family:var(--font-sans);white-space:nowrap}.raw-data-search{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--accent-a04);border:1px solid var(--border, rgba(255,255,255,.06));color:var(--text-tertiary);max-width:200px}.raw-data-search input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:11px;font-family:var(--font-sans);min-width:0}.raw-data-search input::placeholder{color:var(--text-tertiary)}.raw-data-scroll{overflow-x:auto;border-radius:12px;border:1px solid var(--border, rgba(255,255,255,.06))}.raw-data-table{width:100%;border-collapse:collapse;font-family:var(--font-sans);font-size:12px}.raw-data-th{padding:10px 14px;text-align:left;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);background:var(--accent-a04);border-bottom:1px solid var(--border, rgba(255,255,255,.06));white-space:nowrap;position:sticky;top:0}.raw-data-th.sortable{cursor:pointer}.raw-data-th.sortable:hover{color:var(--text-primary)}.raw-data-th.right,.raw-data-td.right{text-align:right}.raw-data-row{transition:none}.raw-data-row:hover{background:var(--accent-a04)}.raw-data-td{padding:8px 14px;border-bottom:1px solid rgba(255,255,255,.03);color:var(--text-secondary);white-space:nowrap}.raw-data-td.date{color:var(--text-primary);font-weight:500}.raw-data-td.time{color:var(--text-tertiary);font-size:11px}.raw-data-td.value{color:var(--text-primary);font-weight:500;font-family:var(--font-sans)}.raw-data-unit{color:var(--text-tertiary);font-weight:400;font-size:10px}.raw-data-td.source{color:var(--text-tertiary);font-size:11px}.raw-data-load-more{padding:10px 20px;border-radius:10px;border:1px solid var(--border, rgba(255,255,255,.08));background:var(--accent-a04);color:var(--text-secondary);font-size:12px;font-family:var(--font-sans);cursor:pointer;text-align:center;width:100%}.raw-data-load-more:hover{background:var(--accent-a08);color:var(--text-primary)}.raw-data-th-actions{width:40px;min-width:40px}.raw-data-td-actions{width:40px;min-width:40px;position:relative}.raw-data-row-menu-wrap{position:relative}.raw-data-row-menu-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;border-radius:6px;color:var(--text-tertiary);cursor:pointer;padding:0;opacity:0;transition:opacity .1s}.raw-data-row:hover .raw-data-row-menu-btn,.raw-data-row-menu-btn:focus{opacity:1}.raw-data-row-menu-btn:hover{background:var(--accent-a08);color:var(--text-primary)}.raw-data-row-dropdown{position:absolute;right:0;top:100%;z-index:100;min-width:120px;padding:4px 0;background:#161b22;border:1px solid #30363d;border-radius:8px;box-shadow:0 8px 24px #0006}.raw-data-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;color:var(--text-secondary);font-size:12px;font-family:var(--font-sans);cursor:pointer;text-align:left}.raw-data-dropdown-item:hover{background:var(--accent-a08);color:var(--text-primary)}.raw-data-dropdown-delete{color:#ef4444}.raw-data-dropdown-delete:hover{background:#ef44441a;color:#ef4444}.raw-data-edit-input{width:100px;padding:4px 8px;border-radius:6px;border:1px solid var(--accent-a30, rgba(78, 201, 176, .3));background:var(--accent-a04);color:var(--text-primary);font-size:12px;font-family:var(--font-mono, "SF Mono", "Fira Code", monospace);font-weight:500;outline:none;text-align:right}.raw-data-edit-input:focus{border-color:var(--accent, #4ec9b0)}.raw-data-edit-actions{display:flex;gap:4px}.raw-data-edit-save,.raw-data-edit-cancel{padding:3px 8px;border-radius:5px;font-size:10px;font-weight:500;font-family:var(--font-sans);cursor:pointer;border:none;white-space:nowrap}.raw-data-edit-save{background:var(--accent, #4ec9b0);color:#0a0a0e}.raw-data-edit-save:hover:not(:disabled){opacity:.85}.raw-data-edit-save:disabled{opacity:.4;cursor:not-allowed}.raw-data-edit-cancel{background:none;border:1px solid var(--border, rgba(255, 255, 255, .08));color:var(--text-secondary)}.raw-data-edit-cancel:hover:not(:disabled){color:var(--text-primary);border-color:var(--text-tertiary)}.raw-data-delete-confirm{display:flex;align-items:center;gap:6px;white-space:nowrap}.raw-data-delete-prompt{font-size:11px;color:#ef4444;font-family:var(--font-sans);font-weight:500}.raw-data-confirm-yes,.raw-data-confirm-no{padding:3px 8px;border-radius:5px;font-size:10px;font-weight:500;font-family:var(--font-sans);cursor:pointer;border:none;white-space:nowrap}.raw-data-confirm-yes{background:#ef4444;color:#fff}.raw-data-confirm-yes:hover:not(:disabled){opacity:.85}.raw-data-confirm-no{background:none;border:1px solid var(--border, rgba(255, 255, 255, .08));color:var(--text-secondary)}.raw-data-confirm-no:hover:not(:disabled){color:var(--text-primary);border-color:var(--text-tertiary)}.raw-data-row.editing{background:var(--accent-a04)}.raw-data-row.deleting{background:#ef44440a}.raw-data-loading,.raw-data-empty{display:flex;align-items:center;justify-content:center;padding:40px 20px;color:var(--text-tertiary);font-size:12px;font-family:var(--font-sans)}.metric-detail-page{display:flex;flex-direction:column;gap:24px;width:100%}.metric-detail-view-toggle{display:flex;gap:4px;background:var(--accent-a04);border-radius:12px;padding:3px;align-self:flex-end;border:1px solid var(--border, rgba(255,255,255,.06))}.metric-detail-view-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:9px;border:none;background:none;color:var(--text-tertiary);font-size:12px;font-family:var(--font-sans);cursor:pointer;transition:none}.metric-detail-view-btn:hover{color:var(--text-primary)}.metric-detail-view-btn.active{background:var(--accent-a15);color:var(--accent, #4ec9b0)}.metric-detail-chart-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px}.metric-detail-chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.metric-detail-chart-title{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);font-weight:500}.metric-detail-summary{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.metric-detail-value{font-size:36px;font-weight:300;font-variant-numeric:tabular-nums;color:var(--text-primary);line-height:1.1;font-family:var(--font-mono)}.metric-detail-unit-label{font-size:12px;color:var(--text-secondary);font-family:var(--font-mono)}.metric-detail-chart-container{width:calc(100% + 28px);margin-left:-16px;margin-right:-12px;height:300px;margin-top:8px}.metric-detail-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.metric-detail-stat{display:flex;flex-direction:column;gap:2px}.metric-detail-stat-label{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary)}.metric-detail-stat-value{font-size:16px;font-weight:400;font-variant-numeric:tabular-nums;color:var(--text-primary);font-family:var(--font-mono)}.metric-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:12px;color:var(--text-secondary)}.metric-detail-empty-icon{width:48px;height:48px;opacity:.3}.metric-detail-empty-text{font-size:13px;text-align:center;max-width:300px;line-height:1.5}.metric-detail-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:640px){.metric-detail-info-grid{grid-template-columns:1fr}.metric-detail-stats{grid-template-columns:repeat(2,1fr)}}.metric-detail-info-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px}.metric-detail-info-header{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);font-weight:500;margin-bottom:12px;display:flex;align-items:center;gap:8px}.metric-detail-info-header svg{width:14px;height:14px;opacity:.6}.metric-detail-about-text{font-size:13px;line-height:1.65;color:var(--text-primary);opacity:.85}.metric-detail-insights-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.metric-detail-insights-list li{font-size:12px;line-height:1.6;color:var(--text-primary);opacity:.8;padding-left:16px;position:relative}.metric-detail-insights-list li:before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:.4}.date-nav{display:flex;align-items:center;gap:4px;background:transparent;border:none;padding:6px 0;margin-bottom:8px;max-width:900px;width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box}.date-nav-arrow{width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .15s,background .15s}.date-nav-arrow:hover:not(:disabled){color:var(--text-primary);background:var(--accent-a05)}.date-nav-arrow:disabled{opacity:.25;cursor:default}.date-nav-strip{display:flex;gap:6px;flex:1;justify-content:center;overflow:hidden}.date-nav-pill{display:flex;flex-direction:column;align-items:center;gap:1px;padding:6px 12px;min-width:48px;border-radius:10px;border:1px solid var(--accent-a06);background:var(--bg-card);box-shadow:var(--shadow, 0 1px 2px rgba(0,0,0,.05));cursor:pointer;transition:all .15s ease;flex-shrink:0}.date-nav-pill:hover{border-color:var(--accent-a20);background:var(--bg-card);box-shadow:var(--shadow-hover, 0 2px 8px rgba(0,0,0,.08))}.date-nav-pill.active{background:var(--accent-light);border-color:var(--accent-a30);box-shadow:var(--shadow-hover, 0 2px 8px rgba(0,0,0,.08))}.date-nav-dow{font-size:8px;letter-spacing:.1em;color:var(--text-tertiary);font-weight:500}.date-nav-pill.active .date-nav-dow{color:var(--accent)}.date-nav-day{font-family:var(--font-serif);font-size:16px;color:var(--text-primary);line-height:1.1}.date-nav-pill.active .date-nav-day{color:var(--accent)}.date-nav-month{font-size:8px;letter-spacing:.08em;color:var(--text-tertiary);font-weight:500}.date-nav-pill.active .date-nav-month{color:var(--accent-a70)}.node-dot-wrap{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;cursor:default;position:relative;flex-shrink:0}.node-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-a60);border:1px solid var(--accent-a30);transition:background .15s,box-shadow .15s}.node-dot-wrap:hover .node-dot{background:var(--accent);box-shadow:var(--accent-glow-sm)}.node-dot-tooltip{position:fixed;z-index:9999;pointer-events:none;transform:translateY(-100%);background:#161b22;border:1px solid #30363d;border-radius:6px;padding:6px 10px;min-width:200px;display:flex;flex-direction:column;gap:3px}.node-dot-tooltip-row{display:flex;align-items:baseline;gap:8px}.node-dot-tooltip-label{font-size:9px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);min-width:34px;flex-shrink:0}.node-dot-tooltip-value{font-size:11px;color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}th.node-col,td.node-col{width:22px;max-width:22px;padding-right:0!important}.nutrition-report{display:flex;flex-direction:column;gap:0;padding:20px 24px 24px;max-width:900px;width:100%;margin:0 auto}.nutrition-report-header{padding-bottom:12px}.nutrition-report-meta{font-size:10px;color:var(--text-tertiary);letter-spacing:.06em}.nutrition-report-divider{margin:0 8px;opacity:.35}.nutrition-report-separator{height:1px;background:var(--border);margin:4px 0}.nutrition-report-section{padding:14px 0 10px}.nutrition-report-section-title{font-size:10px;font-weight:600;letter-spacing:.15em;color:var(--accent);margin-bottom:10px}.nutrition-report-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}.nutrition-report-table thead th{font-size:9px;font-weight:500;letter-spacing:.12em;color:var(--text-tertiary);text-align:left;padding:0 8px 8px 0;border-bottom:1px solid rgba(255,255,255,.06);white-space:nowrap}.nutrition-report-table tbody td{padding:7px 8px 7px 0;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.025);white-space:nowrap;vertical-align:middle}.nutrition-report-table tbody tr:last-child td{border-bottom:none}.nutrition-report-table td.value{color:var(--text-primary);font-weight:500;font-family:var(--font-mono, monospace);font-size:12px}.nutrition-report-table td.secondary{color:var(--text-tertiary);font-size:11px}.nutrition-report-table td.ref,.nutrition-report-table td.secondary.ref{color:var(--text-tertiary);opacity:.7;font-size:10px;font-style:italic}.nutrition-report-table td.status{font-size:10px;font-weight:600;letter-spacing:.1em}.nutrition-report-delta{font-size:9px;margin-left:6px;opacity:.6}.nutrition-report-delta.positive{color:var(--accent);opacity:1}.nutrition-report-delta.negative{color:#8cb40099;opacity:1}.nutrition-report-footer{padding:12px 0 4px;font-size:9px;color:var(--text-tertiary);letter-spacing:.1em;opacity:.6}@media(max-width:600px){.nutrition-report{padding:14px 12px 16px}.nutrition-report-table{font-size:11px}.nutrition-report-table thead th{font-size:8px}.nutrition-report-table td.value{font-size:11px}}.perf-workout-block{margin-bottom:16px}.perf-workout-block:last-child{margin-bottom:0}.perf-workout-header{display:flex;align-items:baseline;gap:12px;margin-bottom:8px;padding:8px 0 4px;border-bottom:1px solid var(--border)}.perf-workout-type{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.perf-workout-meta{font-size:11px;color:var(--text-tertiary);letter-spacing:.04em}.perf-exercise-table{margin-top:4px}.dashboard-stream-view{width:100%;display:flex;justify-content:center}.dashboard-stream-column{width:100%;max-width:900px}.dashboard-widget-grid{width:100%}.dashboard-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg)}.dashboard-tabs{display:flex;align-items:center;gap:8px}.dashboard-tab-pill{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:50%;font-size:13px;font-weight:500;letter-spacing:.05em;border:1px solid var(--accent-a12);cursor:pointer;transition:all .2s;font-family:var(--font-sans);background:transparent;color:var(--accent-a40);position:relative}.dashboard-tab-pill:hover{color:var(--accent-a80);border-color:var(--accent-a30);background:var(--accent-a05)}.dashboard-tab-pill.active,.dashboard-tab-pill.active:hover{background:var(--accent-a12);color:var(--accent-a90);border-color:var(--accent-a30)}.dashboard-add-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid var(--accent-a12);color:var(--accent-a40);cursor:pointer;transition:all .2s}.dashboard-add-btn:hover{border-color:var(--accent-a30);color:var(--accent-a80);background:var(--accent-a05)}.dashboard-tab-delete{position:absolute;top:-6px;right:-6px;cursor:pointer;z-index:1;line-height:0;transition:transform .15s}.dashboard-tab-delete:hover{transform:scale(1.25)}.dashboard-tab-pill.dragging{cursor:grabbing;box-shadow:0 4px 12px #0006;border-color:var(--accent-a50)}.dashboard-grid-wrapper{transition:opacity .2s ease,transform .2s ease}.dashboard-grid-wrapper.fade-out-right{opacity:0;transform:translate(-20px)}.dashboard-grid-wrapper.fade-out-left{opacity:0;transform:translate(20px)}.dashboard-grid-wrapper.fade-in{opacity:1;transform:translate(0)}.dashboard-toolbar-right{display:flex;align-items:center;gap:8px}.add-module-toolbar-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid var(--accent-a12);color:var(--accent-a40);cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #0003}.add-module-toolbar-btn:hover{border-color:var(--accent-a30);color:var(--accent-a80);background:var(--accent-a05);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.edit-mode-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid var(--accent-a12);color:var(--accent-a40);cursor:pointer;transition:all .2s}.edit-mode-btn:hover{border-color:var(--accent-a30);color:var(--accent-a80);background:var(--accent-a05)}.edit-mode-btn.active{background:var(--accent-a12);color:var(--accent-a90);border-color:var(--accent-a30)}.module-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--widget-sm),1fr));gap:var(--module-gap);align-items:start;max-width:1700px}@media(max-width:768px){.module-grid{grid-template-columns:1fr}}.add-module-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:140px;border:2px dashed var(--accent-a15);border-radius:var(--module-radius);background:transparent;cursor:pointer;transition:all .2s;color:var(--accent-a35);font-family:var(--font-sans);gap:8px}.add-module-placeholder:hover{border-color:var(--accent-a30);color:var(--accent-a70);background:var(--accent-a04)}.add-module-plus{font-size:32px;line-height:1;font-weight:300}.add-module-label{font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:500}.ring-container{position:relative;width:140px;height:140px;flex-shrink:0}.ring-svg{width:100%;height:100%;transform:rotate(-90deg)}.ring-bg{fill:none;stroke:var(--border);stroke-width:5}.ring-progress{fill:none;stroke:var(--accent);stroke-width:5;stroke-linecap:round;stroke-dasharray:408;stroke-dashoffset:408;transition:stroke-dashoffset 1.4s ease-out}.ring-inner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.ring-number{font-family:var(--font-serif);font-size:42px;line-height:1;letter-spacing:-.03em}.ring-unit{font-size:12px;color:var(--text-tertiary);margin-top:2px;letter-spacing:.04em}.vitality-info{flex:1}.vitality-title{font-family:var(--font-serif);font-size:22px;margin-bottom:8px}.vitality-desc{font-size:12px;color:var(--text-secondary);line-height:1.6;margin-bottom:14px;max-width:280px}.vitality-badges{display:flex;gap:8px;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;font-size:11px;font-weight:500;letter-spacing:.02em}.badge svg{width:13px;height:13px}.badge.green{background:var(--accent-light);color:var(--accent)}.badge.warm{background:var(--accent-warm-light);color:var(--accent-warm)}.insight-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#ffffff59;font-weight:500;margin-bottom:16px;display:flex;align-items:center;gap:8px}.insight-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.insight-text{font-family:var(--font-serif);font-size:20px;line-height:1.4;color:#ffffffe6;margin-bottom:20px}.insight-actions{display:flex;gap:10px}.insight-btn{padding:8px 18px;border-radius:8px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;font-family:var(--font-sans);border:none}.insight-btn.primary{background:var(--accent);color:#0d1117}.insight-btn.primary:hover{opacity:.85}.insight-btn.ghost{background:#ffffff14;color:#fff9;border:1px solid rgba(255,255,255,.1)}.insight-btn.ghost:hover{background:#ffffff1f;color:#fff}.metric-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.metric-icon{width:36px;height:36px;border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center}.metric-icon svg{width:18px;height:18px}.metric-icon.green{background:var(--accent-light);color:var(--accent)}.metric-icon.warm{background:var(--accent-warm-light);color:var(--accent-warm)}.metric-icon.rose{background:var(--accent-rose-light);color:var(--accent-rose)}.metric-icon.blue{background:var(--accent-blue-light);color:var(--accent-blue)}.metric-trend{font-size:11px;font-weight:500;display:flex;align-items:center;gap:3px;padding:3px 8px;border-radius:20px}.metric-trend svg{width:12px;height:12px}.metric-trend.up{color:var(--accent);background:var(--accent-light)}.metric-trend.down{color:var(--accent-rose);background:var(--accent-rose-light)}.metric-trend.flat{color:var(--text-tertiary);background:var(--bg-card-alt)}.metric-label{font-size:12px;color:var(--text-secondary);letter-spacing:.02em}.metric-value{font-family:var(--font-serif);font-size:30px;letter-spacing:-.02em;margin:4px 0 2px}.metric-unit{font-size:11px;color:var(--text-tertiary)}.metric-chart-container{flex:1;min-height:0;margin-top:8px}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.chart-title{font-family:var(--font-serif);font-size:18px}.chart-toggle{display:flex;gap:4px;background:var(--bg-card-alt);border-radius:8px;padding:3px}.toggle-btn{font-size:11px;padding:5px 12px;border:none;background:none;border-radius:6px;cursor:pointer;color:var(--text-secondary);font-family:var(--font-sans);font-weight:500;transition:all .2s}.toggle-btn.active{background:var(--bg-card);color:var(--text-primary);box-shadow:0 1px 3px #0000000f}.chart-area{display:flex;align-items:flex-end;gap:8px;height:160px;padding-bottom:24px}.chart-bar-group{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px}.chart-bar{width:100%;max-width:36px;border-radius:8px 8px 4px 4px;transition:height .6s ease-out;min-height:4px;cursor:pointer;position:relative}.chart-bar:hover{opacity:.85}.chart-bar.accent{background:var(--accent)}.chart-bar.muted{background:var(--border)}.chart-bar.today{background:var(--accent);box-shadow:var(--accent-shadow-chart)}.chart-day{font-size:10px;color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase}.chart-day.today-label{color:var(--accent);font-weight:600}.chart-summary{display:flex;gap:20px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border);flex-wrap:wrap}.chart-stat-label{font-size:11px;color:var(--text-secondary)}.chart-stat-value{font-family:var(--font-serif);font-size:18px;margin-top:2px}.bodymap-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.bodymap-title{font-family:var(--font-serif);font-size:18px}.bodymap-list{display:flex;flex-direction:column;gap:4px}.bodymap-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);transition:background .2s;cursor:pointer}.bodymap-item:hover{background:var(--bg-hover)}.bodymap-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.bodymap-dot.green{background:var(--accent)}.bodymap-dot.warm{background:var(--accent-warm)}.bodymap-dot.rose{background:var(--accent-rose)}.bodymap-dot.blue{background:var(--accent-blue)}.bodymap-name{font-size:13px;font-weight:500;flex:1}.bodymap-val{font-size:12px;color:var(--text-secondary)}.bodymap-status{font-size:10px;font-weight:500;padding:3px 9px;border-radius:20px;letter-spacing:.03em}.bodymap-status.optimal{background:var(--accent-light);color:var(--accent)}.bodymap-status.elevated{background:var(--accent-warm-light);color:var(--accent-warm)}.bodymap-status.low{background:var(--accent-rose-light);color:var(--accent-rose)}.log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.log-title{font-family:var(--font-serif);font-size:18px}.log-see-all{font-size:12px;color:var(--accent);cursor:pointer;font-weight:500;border:none;background:none;font-family:var(--font-sans)}.log-see-all:hover{text-decoration:underline}.dash-log-list{display:flex;flex-direction:column}.log-item{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--border);cursor:pointer;transition:opacity .2s}.log-item:last-child{border-bottom:none}.log-item:hover{opacity:.7}.log-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.log-dot.green{background:var(--accent)}.log-dot.warm{background:var(--accent-warm)}.log-dot.rose{background:var(--accent-rose)}.log-dot.blue{background:var(--accent-blue)}.log-content{flex:1}.log-entry-title{font-size:13px;font-weight:500}.log-entry-meta{font-size:11px;color:var(--text-secondary);margin-top:2px}.log-time{font-size:11px;color:var(--text-tertiary);flex-shrink:0}.goal-item{padding:12px 0;border-bottom:1px solid var(--border)}.goal-item:last-child{border-bottom:none}.goal-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.goal-name{font-size:13px;font-weight:500}.goal-progress-text{font-size:11px;color:var(--text-secondary)}.goal-bar-bg{width:100%;height:6px;background:var(--bg-card-alt);border-radius:3px;overflow:hidden}.goal-bar-fill{height:100%;border-radius:3px;transition:width 1s ease-out}.goal-bar-fill.green{background:var(--accent)}.goal-bar-fill.warm{background:var(--accent-warm)}.goal-bar-fill.rose{background:var(--accent-rose)}.goal-bar-fill.blue{background:var(--accent-blue)}.upcoming-item{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--border);cursor:pointer;transition:opacity .2s}.upcoming-item:last-child{border-bottom:none}.upcoming-item:hover{opacity:.7}.upcoming-time-block{width:42px;text-align:center;flex-shrink:0}.upcoming-hour{font-family:var(--font-serif);font-size:16px}.upcoming-ampm{font-size:10px;color:var(--text-tertiary);text-transform:uppercase}.upcoming-info{flex:1}.upcoming-name{font-size:13px;font-weight:500}.upcoming-desc{font-size:11px;color:var(--text-secondary);margin-top:2px}.upcoming-tag{font-size:10px;font-weight:500;padding:3px 9px;border-radius:20px;align-self:center}.upcoming-tag.green{background:var(--accent-light);color:var(--accent)}.upcoming-tag.warm{background:var(--accent-warm-light);color:var(--accent-warm)}.upcoming-tag.blue{background:var(--accent-blue-light);color:var(--accent-blue)}@media(max-width:1024px){.vitality-card-inner{flex-direction:column;align-items:flex-start}.ring-container{width:110px;height:110px}.ring-number{font-size:34px}.chart-summary{gap:14px}}.body-view-toggle{display:flex;gap:3px;padding:3px;background:var(--accent-a04);border:1px solid var(--accent-a10);border-radius:8px}.body-toggle-btn{width:30px;height:28px;border-radius:5px;border:none;background:transparent;color:var(--accent-a35);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.body-toggle-btn:hover{color:var(--accent-a70);background:var(--accent-a05)}.body-toggle-btn.active{color:var(--accent-a95);background:var(--accent-a10)}.module-page{width:100%;max-width:900px}.module-page-header{margin-bottom:28px}.module-page-header-row{display:flex;align-items:center;gap:12px}.module-page-back{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;background:transparent;border:1px solid var(--border);border-radius:50%;color:var(--text-secondary);cursor:pointer;padding:0;transition:all .15s ease}.module-page-back:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-a06)}.module-page-title-row{display:flex;align-items:center;gap:12px}.module-page-title{font-family:var(--font-serif);font-size:24px;font-weight:400;color:var(--text-primary);letter-spacing:.01em;margin:0}.module-page-category{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-a40);border:1px solid var(--accent-a10);padding:3px 8px;border-radius:3px}.module-page-view-toggle{display:flex;gap:3px;background:var(--accent-a04);border-radius:10px;padding:3px;margin-left:auto;border:1px solid var(--border, rgba(255,255,255,.06));flex-shrink:0}.module-page-view-btn{display:flex;align-items:center;gap:5px;padding:5px 12px;border-radius:7px;border:none;background:none;color:var(--text-tertiary);font-size:11px;font-family:var(--font-sans);cursor:pointer}.module-page-view-btn:hover{color:var(--text-primary)}.module-page-view-btn.active{background:var(--accent-a15);color:var(--accent, #4ec9b0)}.module-page-add{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;background:var(--accent, #4ec9b0);border:none;border-radius:50%;color:#0a0a0e;cursor:pointer;padding:0;transition:opacity .15s ease}.module-page-add:hover{opacity:.85}.module-page-desc{font-size:13px;color:var(--text-secondary);margin-top:6px;margin-left:48px}.module-page-content{width:100%}.nutrition-deviation-wrap{display:flex;flex-direction:column;gap:0}.nutrition-deviation-container{width:100%;height:58vh;min-height:320px;position:relative;overflow:hidden;border-radius:0;background:var(--bg-card, #161b22)}.nutrition-deviation-canvas{width:100%;height:100%;display:block}.nutrition-deviation-legend{position:absolute;top:12px;left:12px;font-size:12px;color:var(--text-secondary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.8}.nutrition-deviation-legend-item{display:flex;align-items:center;gap:8px}.nutrition-deviation-legend-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.nutrition-deviation-legend-label{font-size:9px;letter-spacing:.1em;text-transform:uppercase}.nutrition-deviation-stats{position:absolute;bottom:12px;left:12px;font-size:10px;color:var(--text-tertiary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.8;letter-spacing:.05em}.nutrition-deviation-tooltip{position:fixed;pointer-events:none;font-size:13px;color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xs);padding:8px 12px;white-space:nowrap;transform:translate(-50%,-120%);z-index:10;box-shadow:var(--shadow)}.nutrition-deviation-tooltip-metric{color:var(--text-tertiary);font-size:11px;font-weight:500;margin-bottom:2px;text-transform:uppercase}.nutrition-deviation-tooltip-date{color:var(--text-tertiary);font-size:10px}.nutrition-deviation-tooltip-zscore{font-size:11px;margin-top:2px;font-weight:500}.nutrition-deviation-tooltip-zscore.normal{color:#4dff66}.nutrition-deviation-tooltip-zscore.notable{color:#ffd933}.nutrition-deviation-tooltip-zscore.outlier{color:#ff4033}.nutrition-deviation-scrubber{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-card, #161b22);border-top:1px solid var(--border)}.nutrition-deviation-scrubber-label{font-size:9px;color:var(--text-tertiary);letter-spacing:.05em;white-space:nowrap;min-width:70px;font-family:var(--font-mono, monospace)}.nutrition-deviation-scrubber-current{font-size:10px;color:var(--accent, #caff00);letter-spacing:.05em;white-space:nowrap;min-width:90px;text-align:right;font-family:var(--font-mono, monospace);font-weight:500}.nutrition-deviation-slider{flex:1;-webkit-appearance:none;appearance:none;height:3px;background:#ffffff14;border-radius:2px;outline:none;cursor:pointer}.nutrition-deviation-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent, #caff00);cursor:grab;box-shadow:var(--accent-shadow-drag);transition:transform .1s}.nutrition-deviation-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.2)}.nutrition-deviation-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent, #caff00);border:none;cursor:grab;box-shadow:var(--accent-shadow-drag)}.nutrition-deviation-slider::-moz-range-track{height:3px;background:#ffffff14;border-radius:2px}.nutrition-deviation-filters{display:flex;flex-wrap:wrap;gap:6px;padding:10px 14px;background:var(--bg-card, #161b22);border-radius:var(--module-radius) var(--module-radius) 0 0;border-bottom:1px solid var(--border)}.nutrition-deviation-filter-tag{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:transparent;color:var(--text-tertiary);font-size:9px;font-family:var(--font-mono, monospace);letter-spacing:.08em;cursor:pointer;transition:all .15s ease;white-space:nowrap}.nutrition-deviation-filter-tag:hover{border-color:#fff3;color:var(--text-secondary)}.nutrition-deviation-filter-tag.active{border-color:var(--accent, #caff00);color:var(--accent, #caff00);background:var(--accent-a06)}.nutrition-deviation-filter-count{font-size:8px;opacity:.5}.nutrition-deviation-summary{padding:14px;background:var(--bg-card, #161b22);border-top:1px solid var(--border);border-radius:0 0 var(--module-radius) var(--module-radius)}.nutrition-deviation-summary-title{font-size:10px;font-weight:600;letter-spacing:.12em;color:var(--text-secondary);margin-bottom:10px;font-family:var(--font-mono, monospace)}.nutrition-deviation-summary-table{width:100%;border-collapse:collapse;font-size:11px;font-family:var(--font-mono, monospace)}.nutrition-deviation-summary-table thead th{font-size:9px;letter-spacing:.08em;color:var(--text-tertiary);font-weight:500;text-align:left;padding:4px 8px;border-bottom:1px solid var(--border);white-space:nowrap}.nutrition-deviation-summary-table tbody td{padding:3px 8px;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.03);white-space:nowrap}.nutrition-deviation-summary-table tbody td.value{color:var(--text-primary);font-weight:500}.nutrition-deviation-summary-table tbody td.secondary{color:var(--text-tertiary)}.nutrition-deviation-summary-cluster-label{font-size:9px;letter-spacing:.12em;color:var(--accent, #caff00);font-weight:600;padding:10px 8px 4px!important;border-bottom:1px solid var(--accent-a10)!important;text-transform:uppercase}.nutrition-deviation-summary-table td.zscore.normal{color:#4dff66}.nutrition-deviation-summary-table td.zscore.notable{color:#ffd933}.nutrition-deviation-summary-table td.zscore.outlier{color:#ff4033}.nutrition-deviation-summary-table td.status.normal{color:#4dff66}.nutrition-deviation-summary-table td.status.notable{color:#ffd933}.nutrition-deviation-summary-table td.status.outlier{color:#ff4033}.nutrition-deviation-summary-table td.status{font-size:9px;letter-spacing:.08em;font-weight:600}.body-deviation-wrap{display:flex;flex-direction:column;gap:0}.body-deviation-container{width:100%;height:58vh;min-height:320px;position:relative;overflow:hidden;border-radius:0;background:var(--bg-card, #161b22)}.body-deviation-canvas{width:100%;height:100%;display:block}.body-deviation-legend{position:absolute;top:12px;left:12px;font-size:12px;color:var(--text-secondary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.8}.body-deviation-legend-item{display:flex;align-items:center;gap:8px}.body-deviation-legend-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.body-deviation-legend-label{font-size:9px;letter-spacing:.1em;text-transform:uppercase}.body-deviation-stats{position:absolute;bottom:12px;left:12px;font-size:10px;color:var(--text-tertiary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.8;letter-spacing:.05em}.body-deviation-tooltip{position:fixed;pointer-events:none;font-size:13px;color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xs);padding:8px 12px;white-space:nowrap;transform:translate(-50%,-120%);z-index:10;box-shadow:var(--shadow)}.body-deviation-tooltip-metric{color:var(--text-tertiary);font-size:11px;font-weight:500;margin-bottom:2px;text-transform:uppercase}.body-deviation-tooltip-date{color:var(--text-tertiary);font-size:10px}.body-deviation-tooltip-zscore{font-size:11px;margin-top:2px;font-weight:500}.body-deviation-tooltip-zscore.normal{color:#4dff66}.body-deviation-tooltip-zscore.notable{color:#ffd933}.body-deviation-tooltip-zscore.outlier{color:#ff4033}.body-deviation-scrubber{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-card, #161b22);border-top:1px solid var(--border)}.body-deviation-scrubber-label{font-size:9px;color:var(--text-tertiary);letter-spacing:.05em;white-space:nowrap;min-width:70px;font-family:var(--font-mono, monospace)}.body-deviation-scrubber-current{font-size:10px;color:var(--accent, #caff00);letter-spacing:.05em;white-space:nowrap;min-width:90px;text-align:right;font-family:var(--font-mono, monospace);font-weight:500}.body-deviation-slider{flex:1;-webkit-appearance:none;appearance:none;height:3px;background:#ffffff14;border-radius:2px;outline:none;cursor:pointer}.body-deviation-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent, #caff00);cursor:grab;box-shadow:var(--accent-shadow-drag);transition:transform .1s}.body-deviation-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.2)}.body-deviation-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent, #caff00);border:none;cursor:grab;box-shadow:var(--accent-shadow-drag)}.body-deviation-slider::-moz-range-track{height:3px;background:#ffffff14;border-radius:2px}.body-deviation-filters{display:flex;flex-wrap:wrap;gap:6px;padding:10px 14px;background:var(--bg-card, #161b22);border-radius:var(--module-radius) var(--module-radius) 0 0;border-bottom:1px solid var(--border)}.body-deviation-filter-tag{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:transparent;color:var(--text-tertiary);font-size:9px;font-family:var(--font-mono, monospace);letter-spacing:.08em;cursor:pointer;transition:all .15s ease;white-space:nowrap}.body-deviation-filter-tag:hover{border-color:#fff3;color:var(--text-secondary)}.body-deviation-filter-tag.active{border-color:var(--accent, #caff00);color:var(--accent, #caff00);background:var(--accent-a06)}.body-deviation-filter-count{font-size:8px;opacity:.5}.body-deviation-summary{padding:14px;background:var(--bg-card, #161b22);border-top:1px solid var(--border);border-radius:0 0 var(--module-radius) var(--module-radius)}.body-deviation-summary-title{font-size:10px;font-weight:600;letter-spacing:.12em;color:var(--text-secondary);margin-bottom:10px;font-family:var(--font-mono, monospace)}.body-deviation-summary-table{width:100%;border-collapse:collapse;font-size:11px;font-family:var(--font-mono, monospace)}.body-deviation-summary-table thead th{font-size:9px;letter-spacing:.08em;color:var(--text-tertiary);font-weight:500;text-align:left;padding:4px 8px;border-bottom:1px solid var(--border);white-space:nowrap}.body-deviation-summary-table tbody td{padding:3px 8px;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.03);white-space:nowrap}.body-deviation-summary-table tbody td.value{color:var(--text-primary);font-weight:500}.body-deviation-summary-table tbody td.secondary{color:var(--text-tertiary)}.body-deviation-summary-table td.zscore.normal{color:#4dff66}.body-deviation-summary-table td.zscore.notable{color:#ffd933}.body-deviation-summary-table td.zscore.outlier{color:#ff4033}.body-deviation-summary-table td.status.normal{color:#4dff66}.body-deviation-summary-table td.status.notable{color:#ffd933}.body-deviation-summary-table td.status.outlier{color:#ff4033}.body-deviation-summary-table td.status{font-size:9px;letter-spacing:.08em;font-weight:600}.body-report{display:flex;flex-direction:column;gap:0;padding:20px 24px 24px;max-width:900px;width:100%;margin:0 auto}.body-report-header{padding-bottom:12px}.body-report-title{font-size:13px;font-weight:600;letter-spacing:.18em;color:var(--text-primary);margin-bottom:6px}.body-report-meta{font-size:10px;color:var(--text-tertiary);letter-spacing:.06em}.body-report-divider{margin:0 8px;opacity:.35}.body-report-separator{height:1px;background:var(--border);margin:4px 0}.body-report-section{padding:14px 0 10px}.body-report-section-title{font-size:10px;font-weight:600;letter-spacing:.15em;color:var(--accent);margin-bottom:10px}.body-report-section-meta{font-size:10px;color:var(--text-tertiary);letter-spacing:.05em;margin-bottom:10px}.body-report-subsection-title{font-size:9px;font-weight:600;letter-spacing:.14em;color:var(--text-tertiary);margin:14px 0 8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.04)}.body-report-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}.body-report-table thead th{font-size:9px;font-weight:500;letter-spacing:.12em;color:var(--text-tertiary);text-align:left;padding:0 8px 8px 0;border-bottom:1px solid rgba(255,255,255,.06);white-space:nowrap}.body-report-table tbody td{padding:7px 8px 7px 0;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.025);white-space:nowrap;vertical-align:middle}.body-report-table tbody tr:last-child td{border-bottom:none}.body-report-table td.value{color:var(--text-primary);font-weight:500;font-family:var(--font-mono, monospace);font-size:12px}.body-report-table td.secondary{color:var(--text-tertiary);font-size:11px}.body-report-table td.ref,.body-report-table td.secondary.ref{color:var(--text-tertiary);opacity:.7;font-size:10px;font-style:italic}.body-report-table td.delta{font-family:var(--font-mono, monospace);font-size:11px;color:var(--text-tertiary);opacity:.6}.body-report-table td.delta.positive{color:var(--accent);opacity:1}.body-report-table td.delta.negative{color:#8cb40099;opacity:1}.body-report-table td.status{font-size:10px;font-weight:600;letter-spacing:.1em}.body-report-table td.date{font-size:10px;color:var(--text-tertiary);opacity:.5}.body-report-footer{padding:12px 0 4px;font-size:9px;color:var(--text-tertiary);letter-spacing:.1em;opacity:.6}@media(max-width:600px){.body-report{padding:14px 12px 16px}.body-report-table{font-size:11px}.body-report-table thead th{font-size:8px}.body-report-table td.value{font-size:11px}}.measurements-page-wrap{display:flex;flex-direction:column;gap:0;width:100%}.measurements-3d-container{width:100%;height:65vh;min-height:400px;position:relative;overflow:hidden;border-radius:var(--module-radius) var(--module-radius) 0 0;background:#060a0f}.measurements-canvas{width:100%;height:100%;display:block;touch-action:none}.measurements-scan-info{position:absolute;top:14px;left:14px;font-size:10px;color:var(--text-tertiary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.8;letter-spacing:.08em}.measurements-scan-info-source{color:var(--accent);font-weight:500}.measurements-stats{position:absolute;bottom:14px;left:14px;font-size:10px;color:var(--text-tertiary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.8;letter-spacing:.05em}.measurement-label{position:absolute;pointer-events:none;transform:translate(-50%,-100%);text-align:center;white-space:nowrap;z-index:5;padding:4px 8px;background:#060a0fd9;border:1px solid var(--accent-a20);border-radius:3px;transition:opacity .2s ease}.measurement-label-name{display:block;font-size:8px;color:var(--text-tertiary);letter-spacing:.12em;text-transform:uppercase;margin-bottom:1px}.measurement-label-value{display:block;font-size:11px;color:var(--accent);font-weight:600}.measurement-label-sub{display:block;font-size:9px;color:var(--text-tertiary);font-weight:400}.measurement-label-delta{display:block;font-size:8px;font-weight:400;margin-top:1px}.measurement-label-delta.positive{color:var(--accent-a80)}.measurement-label-delta.negative{color:#8cb40080}.measurements-timeline{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--bg-card, #161b22);border-top:1px solid var(--border)}.measurements-timeline-label{font-size:9px;color:var(--text-tertiary);letter-spacing:.1em;text-transform:uppercase;margin-right:4px;white-space:nowrap}.scan-pill{padding:5px 12px;background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text-secondary);font-size:10px;letter-spacing:.05em;cursor:pointer;transition:all .15s ease;font-family:inherit;white-space:nowrap}.scan-pill:hover{background:var(--bg-hover);border-color:var(--text-tertiary);color:var(--text-primary)}.scan-pill.active{background:var(--accent-a08);border-color:var(--accent);color:var(--accent);font-weight:500}.scan-pill-badge{font-size:8px;color:var(--accent);margin-left:6px;font-weight:600;letter-spacing:.1em}.measurements-ratios{display:flex;flex-wrap:wrap;gap:0;padding:0;background:var(--bg-card, #161b22);border-top:1px solid var(--border);border-radius:0 0 var(--module-radius) var(--module-radius)}.measurements-ratio-item{flex:1 1 0;min-width:60px;text-align:center;padding:10px 4px}.measurements-ratio-item+.measurements-ratio-item{border-left:1px solid var(--border)}.measurements-ratio-label{font-size:9px;color:var(--text-tertiary);letter-spacing:.1em;margin-bottom:3px}.measurements-ratio-value{font-size:13px;color:var(--accent);font-weight:600}.measurements-back{position:absolute;top:12px;right:14px;z-index:10;width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:#060a0fb3;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.measurements-back:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent)}@media(max-width:600px){.measurements-3d-container{height:55vh;min-height:300px}.measurements-timeline{flex-wrap:wrap}}.sleep-insights{display:flex;flex-direction:column;gap:12px;padding:0 24px 24px;max-width:900px;width:100%;margin:0 auto}.sleep-highlights-grid{display:flex;flex-direction:column;gap:10px}.sleep-highlight-card{padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--bg-card) 80%,transparent);border:1px solid color-mix(in srgb,var(--border) 40%,transparent)}.highlight-category{font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}.highlight-body{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.highlight-text{font-size:13px;line-height:1.5;color:var(--text-primary);flex:1}.highlight-chart{flex-shrink:0;height:48px;display:flex;align-items:flex-end}.highlight-sparkline{display:block}.highlight-comparison{display:flex;gap:24px;margin-top:10px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--border) 30%,transparent)}.highlight-comp-item{display:flex;flex-direction:column;gap:2px}.highlight-comp-label{font-size:9px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);opacity:.6}.highlight-comp-value{font-size:14px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.sleep-correlations-list{display:flex;flex-direction:column;gap:16px}.sleep-correlation-card{padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--bg-card) 80%,transparent);border:1px solid color-mix(in srgb,var(--border) 40%,transparent)}.correlation-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.correlation-title{font-size:12px;font-weight:600;color:var(--text-primary);letter-spacing:.02em}.correlation-r{font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;font-family:var(--font-mono, monospace)}.correlation-r-label{font-size:9px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin-left:6px;opacity:.7}.correlation-chart{height:180px;margin:0 -8px}.correlation-interpretation{font-size:11px;color:var(--text-secondary);line-height:1.4;margin-top:8px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--border) 30%,transparent)}.sleep-scatter-tooltip{background:var(--bg-secondary, #161b22);border:1px solid var(--border, #30363d);border-radius:8px;padding:8px 12px;font-size:11px;color:var(--text-primary);box-shadow:0 4px 16px #00000040;white-space:nowrap;line-height:1.6}.sleep-advice-list{display:flex;flex-direction:column;gap:10px}.sleep-advice-card{padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--bg-card) 80%,transparent);border:1px solid color-mix(in srgb,var(--border) 40%,transparent)}.advice-title{font-size:11px;font-weight:600;color:var(--accent);letter-spacing:.06em;margin-bottom:6px}.advice-text{font-size:12px;line-height:1.55;color:var(--text-secondary)}.sleep-insights-empty{font-size:12px;color:var(--text-tertiary);padding:12px 0;opacity:.6}[data-theme=light] .sleep-insights .sleep-report-section{box-shadow:var(--module-shadow),inset 0 1px #ffffff80,inset 0 -1px #ffffff59}@media(max-width:600px){.sleep-insights{padding:0 12px 16px}.highlight-body{flex-direction:column}.highlight-chart{align-self:flex-start}.correlation-chart{height:150px}}.sleep-deviation-wrap{display:flex;flex-direction:column;gap:0}.sleep-deviation-container{width:100%;height:58vh;min-height:320px;position:relative;overflow:hidden;border-radius:0;background:var(--bg-card, #161b22)}.sleep-deviation-canvas{width:100%;height:100%;display:block}.sleep-deviation-legend{position:absolute;top:12px;left:12px;font-size:12px;color:var(--text-secondary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.8}.sleep-deviation-legend-item{display:flex;align-items:center;gap:8px}.sleep-deviation-legend-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.sleep-deviation-legend-label{font-size:9px;letter-spacing:.1em;text-transform:uppercase}.sleep-deviation-stats{position:absolute;bottom:12px;left:12px;font-size:10px;color:var(--text-tertiary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.8;letter-spacing:.05em}.sleep-deviation-tooltip{position:fixed;pointer-events:none;font-size:13px;color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xs);padding:8px 12px;white-space:nowrap;transform:translate(-50%,-120%);z-index:10;box-shadow:var(--shadow)}.sleep-deviation-tooltip-metric{color:var(--text-tertiary);font-size:11px;font-weight:500;margin-bottom:2px;text-transform:uppercase}.sleep-deviation-tooltip-date{color:var(--text-tertiary);font-size:10px}.sleep-deviation-tooltip-zscore{font-size:11px;margin-top:2px;font-weight:500}.sleep-deviation-tooltip-zscore.normal{color:#4dff66}.sleep-deviation-tooltip-zscore.notable{color:#ffd933}.sleep-deviation-tooltip-zscore.outlier{color:#ff4033}.sleep-deviation-scrubber{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-card, #161b22);border-top:1px solid var(--border)}.sleep-deviation-scrubber-label{font-size:9px;color:var(--text-tertiary);letter-spacing:.05em;white-space:nowrap;min-width:70px;font-family:var(--font-mono, monospace)}.sleep-deviation-scrubber-current{font-size:10px;color:var(--accent, #caff00);letter-spacing:.05em;white-space:nowrap;min-width:90px;text-align:right;font-family:var(--font-mono, monospace);font-weight:500}.sleep-deviation-slider{flex:1;-webkit-appearance:none;appearance:none;height:3px;background:#ffffff14;border-radius:2px;outline:none;cursor:pointer}.sleep-deviation-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent, #caff00);cursor:grab;box-shadow:var(--accent-shadow-drag);transition:transform .1s}.sleep-deviation-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.2)}.sleep-deviation-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent, #caff00);border:none;cursor:grab;box-shadow:var(--accent-shadow-drag)}.sleep-deviation-slider::-moz-range-track{height:3px;background:#ffffff14;border-radius:2px}.sleep-deviation-filters{display:flex;flex-wrap:wrap;gap:6px;padding:10px 14px;background:var(--bg-card, #161b22);border-radius:var(--module-radius) var(--module-radius) 0 0;border-bottom:1px solid var(--border)}.sleep-deviation-filter-tag{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:transparent;color:var(--text-tertiary);font-size:9px;font-family:var(--font-mono, monospace);letter-spacing:.08em;cursor:pointer;transition:all .15s ease;white-space:nowrap}.sleep-deviation-filter-tag:hover{border-color:#fff3;color:var(--text-secondary)}.sleep-deviation-filter-tag.active{border-color:var(--accent, #caff00);color:var(--accent, #caff00);background:var(--accent-a06)}.sleep-deviation-filter-count{font-size:8px;opacity:.5}.sleep-deviation-summary{padding:14px;background:var(--bg-card, #161b22);border-top:1px solid var(--border);border-radius:0 0 var(--module-radius) var(--module-radius)}.sleep-deviation-summary-title{font-size:10px;font-weight:600;letter-spacing:.12em;color:var(--text-secondary);margin-bottom:10px;font-family:var(--font-mono, monospace)}.sleep-deviation-summary-table{width:100%;border-collapse:collapse;font-size:11px;font-family:var(--font-mono, monospace)}.sleep-deviation-summary-table thead th{font-size:9px;letter-spacing:.08em;color:var(--text-tertiary);font-weight:500;text-align:left;padding:4px 8px;border-bottom:1px solid var(--border);white-space:nowrap}.sleep-deviation-summary-table tbody td{padding:3px 8px;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.03);white-space:nowrap}.sleep-deviation-summary-table tbody td.value{color:var(--text-primary);font-weight:500}.sleep-deviation-summary-table tbody td.secondary{color:var(--text-tertiary)}.sleep-deviation-summary-cluster-label{font-size:9px;letter-spacing:.12em;color:var(--accent, #caff00);font-weight:600;padding:10px 8px 4px!important;border-bottom:1px solid var(--accent-a10)!important;text-transform:uppercase}.sleep-deviation-summary-table td.zscore.normal{color:#4dff66}.sleep-deviation-summary-table td.zscore.notable{color:#ffd933}.sleep-deviation-summary-table td.zscore.outlier{color:#ff4033}.sleep-deviation-summary-table td.status.normal{color:#4dff66}.sleep-deviation-summary-table td.status.notable{color:#ffd933}.sleep-deviation-summary-table td.status.outlier{color:#ff4033}.sleep-deviation-summary-table td.status{font-size:9px;letter-spacing:.08em;font-weight:600}.doctor-sidebar{gap:8px}.doctor-new-chat-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;border-radius:10px;border:1px solid var(--accent-a20);background:var(--accent-a08);color:var(--accent, #4ec9b0);font-size:13px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:background .15s,border-color .15s;flex-shrink:0}.doctor-new-chat-btn:hover{background:var(--accent-a15);border-color:var(--accent-a30)}.doctor-sidebar-toolbar{display:flex;align-items:center;gap:6px;padding:0 12px 12px;flex-shrink:0}.doctor-sidebar-search{display:flex;align-items:center;gap:8px;flex:1;min-width:0;padding:8px 14px;border-radius:999px;background:var(--accent-a04);border:1px solid var(--border, rgba(255,255,255,.06));color:var(--text-tertiary)}.doctor-sidebar-search-input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:12px;font-family:var(--font-sans);min-width:0}.doctor-sidebar-search-input::placeholder{color:var(--text-tertiary)}.doctor-new-chat-round{display:flex;align-items:center;justify-content:center;width:34px;height:34px;min-width:34px;border-radius:50%;border:1px solid var(--border, rgba(255,255,255,.06));background:var(--accent-a04);color:var(--text-tertiary);cursor:pointer;flex-shrink:0}.doctor-new-chat-round:hover{color:var(--accent, #4ec9b0);border-color:var(--accent-a25);background:var(--accent-a08)}.doctor-session-list{display:flex;flex-direction:column;gap:2px;flex:1;min-height:0}.doctor-session-item{display:flex;align-items:center;gap:4px;width:100%;padding:10px 12px;border:none;border-radius:8px;background:none;cursor:pointer;text-align:left;transition:background .1s;font-family:var(--font-sans)}.doctor-session-item:hover{background:var(--accent-a04)}.doctor-session-item.active{background:var(--accent-a08)}.doctor-session-item-content{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.doctor-session-title{font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doctor-session-item.active .doctor-session-title{color:var(--accent, #4ec9b0)}.doctor-session-time{font-size:10px;color:var(--text-tertiary)}.doctor-session-delete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:6px;background:none;color:var(--text-tertiary);cursor:pointer;opacity:0;transition:opacity .15s,color .15s,background .15s;flex-shrink:0}.doctor-session-item:hover .doctor-session-delete{opacity:.6}.doctor-session-delete:hover{opacity:1!important;color:#f55;background:#ff55551a}.doctor-session-delete.confirm{opacity:1!important;color:#f33;background:#ff333326}.doctor-session-empty{padding:20px 12px;text-align:center;color:var(--text-tertiary);font-size:12px;font-family:var(--font-sans)}.doctor-chat-panel{display:flex;flex-direction:column;height:100%;max-width:800px;width:100%;margin:0 auto}.doctor-chat-panel .doctor-messages-full{flex:1;display:flex;flex-direction:column;gap:20px;overflow-y:auto;padding:32px 24px 16px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent}.doctor-chat-panel .doctor-messages-full::-webkit-scrollbar{width:5px}.doctor-chat-panel .doctor-messages-full::-webkit-scrollbar-track{background:transparent}.doctor-chat-panel .doctor-messages-full::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}.doctor-suggestions-bottom{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:4px 24px 8px;flex-shrink:0}.doctor-input-bar{display:flex;align-items:center;gap:10px;padding:16px 24px 24px;flex-shrink:0}.doctor-attach-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--border, rgba(255,255,255,.08));background:#c8c8c80f;color:var(--text-tertiary);cursor:pointer;flex-shrink:0}.doctor-attach-btn:hover{color:var(--accent, #4ec9b0);border-color:var(--accent-a25);background:var(--accent-a06)}.doctor-attach-wrap{position:relative;flex-shrink:0}.doctor-attach-backdrop{position:fixed;inset:0;z-index:9}.doctor-attach-menu{position:absolute;bottom:calc(100% + 8px);left:0;z-index:10;min-width:160px;padding:4px;background:#161b22;border:1px solid #30363d;border-radius:12px;box-shadow:0 8px 24px #0006}.doctor-attach-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;background:none;border:none;color:var(--text-secondary);font-size:13px;font-family:var(--font-sans);cursor:pointer;border-radius:8px;text-align:left}.doctor-attach-option:hover{background:var(--accent-a08);color:var(--text-primary)}.doctor-attached-files{display:flex;gap:6px;flex-wrap:wrap;padding:0 24px 4px;flex-shrink:0}.doctor-attached-file{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:8px;background:var(--accent-a08);border:1px solid var(--accent-a15);font-size:11px;color:var(--text-secondary);font-family:var(--font-sans)}.doctor-attached-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doctor-attached-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;background:none;color:var(--text-tertiary);cursor:pointer;padding:0}.doctor-attached-remove:hover{color:#ef4444}.doctor-attached-thumb{width:28px;height:28px;object-fit:cover;border-radius:4px;flex-shrink:0}.doctor-msg-attachments{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 4px}.doctor-msg-image{max-width:300px;max-height:240px;border-radius:8px;border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:opacity .15s;object-fit:contain}.doctor-msg-image:hover{opacity:.85}.doctor-msg-file-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:8px;background:var(--accent-a06);border:1px solid var(--accent-a15);font-size:11px;color:var(--text-secondary);font-family:var(--font-sans)}.doctor-msg-file-pill svg{color:var(--accent, #4ec9b0);flex-shrink:0}.doctor-input-bar .doctor-input{flex:1;padding:14px 20px;border-radius:999px;background:#c8c8c80f;border:1px solid var(--border, rgba(255, 255, 255, .08));outline:none;color:var(--text-primary);font-size:14px;font-family:inherit;transition:border-color .15s}.doctor-input-bar .doctor-input:focus{border-color:var(--accent-a30)}.doctor-input-bar .doctor-input::placeholder{color:var(--text-tertiary)}.doctor-input-bar .doctor-send-btn{border-radius:50%;width:40px;height:40px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--accent-a10);border:1px solid var(--accent-a20);color:var(--accent-a70);cursor:pointer;transition:all .15s;flex-shrink:0}.doctor-input-bar .doctor-send-btn:hover:not(:disabled){background:var(--accent-a15);color:var(--accent-a90)}.doctor-input-bar .doctor-send-btn:disabled{opacity:.3;cursor:default}[data-theme=light] .doctor-input-bar .doctor-input{background:#0000000a}[data-theme=light] .doctor-msg-image{border-color:#0000001a}[data-theme=light] .doctor-msg-file-pill{background:#0000000a;border-color:#0000001a;color:var(--text-secondary)}@media(max-width:768px){.doctor-new-chat-btn{width:auto;padding:6px 12px;font-size:12px}.doctor-session-list{flex-direction:row;gap:4px}.doctor-session-item{padding:6px 10px;border-radius:16px;white-space:nowrap}.doctor-session-time{display:none}}.graph-container{width:100%;height:calc(100vh - 80px);position:relative;overflow:hidden}.graph-canvas{width:100%;height:100%;display:block}.graph-legend{position:absolute;top:16px;left:16px;font-size:12px;color:var(--text-secondary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.6}.graph-legend-item{display:flex;align-items:center;gap:6px}.graph-legend-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.graph-stats{position:absolute;bottom:16px;left:16px;font-size:12px;color:var(--text-tertiary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.8}.graph-tooltip{position:absolute;pointer-events:none;font-size:13px;color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xs);padding:8px 12px;white-space:nowrap;transform:translate(-50%,-120%);z-index:10;box-shadow:var(--shadow)}.graph-tooltip-domain{color:var(--text-tertiary);font-size:11px;font-weight:500}.graph2-container{width:100%;height:calc(100vh - 80px);position:relative;overflow:hidden}.graph2-canvas{width:100%;height:100%;display:block}.graph2-legend{position:absolute;top:16px;left:16px;font-size:12px;color:var(--text-secondary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.8}.graph2-legend-item{display:flex;align-items:center;gap:8px}.graph2-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.graph2-legend-label{font-size:10px;letter-spacing:.1em;text-transform:none}.graph2-stats{position:absolute;bottom:16px;left:16px;font-size:12px;color:var(--text-tertiary);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.8}.graph2-tooltip{position:absolute;pointer-events:none;font-size:13px;color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xs);padding:8px 12px;white-space:nowrap;transform:translate(-50%,-120%);z-index:10;box-shadow:var(--shadow)}.graph2-tooltip-metric{color:var(--text-tertiary);font-size:11px;font-weight:500;margin-bottom:2px}.graph2-tooltip-zscore{font-size:11px;margin-top:2px;font-weight:500}.graph2-tooltip-zscore.normal{color:#4dff66}.graph2-tooltip-zscore.notable{color:#ffd933}.graph2-tooltip-zscore.outlier{color:#ff4033}.landing{background:var(--bg, #0d1117);font-family:var(--font-sans);overflow-y:auto;overflow-x:hidden;height:100vh;scroll-behavior:smooth}.landing-hero{height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.landing-hero .organism-bg{transform:translateY(-120px)}.landing-content{display:flex;flex-direction:column;align-items:center;text-align:center;z-index:10;position:relative;animation:fadeUp .6s ease-out;margin-top:180px}.landing-title{font-family:var(--font-serif);font-size:28px;font-weight:400;font-style:normal;letter-spacing:.2em;color:var(--text-primary, #e6edf3);margin:0;line-height:1.1;text-transform:uppercase}.landing-subtitle{font-size:15px;font-weight:400;color:var(--text-tertiary);letter-spacing:.12em;text-transform:uppercase;margin:14px 0 0}.landing-enter{margin-top:32px;background:transparent;border:1px solid var(--accent-a30);color:var(--accent-a70);font-family:var(--font-sans);font-size:10px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;padding:18px 40px;border-radius:20px;cursor:pointer;transition:all .3s ease}.landing-enter:hover{background:var(--accent-a10);border-color:var(--accent-a50);color:var(--accent-a90)}.landing-chevron{position:absolute;bottom:32px;left:50%;transform:translate(-50%);background:none;border:none;color:var(--accent-a40);cursor:pointer;padding:8px;z-index:10;animation:chevronBounce 2s ease-in-out infinite}.landing-chevron:hover{color:var(--accent-a70)}@keyframes chevronBounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(6px)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.landing-fade{height:200px;background:linear-gradient(to bottom,transparent,var(--bg, #0d1117));position:relative;z-index:5;margin-top:-200px;pointer-events:none}.landing-tiers{max-width:720px;margin:0 auto;padding:100px 32px 120px;position:relative;z-index:6;background:var(--bg, #0d1117)}.landing-tiers-intro{text-align:center;margin-bottom:80px}.landing-tiers-label{font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--accent, #4ec9b0);margin:0 0 16px}.landing-tiers-heading{font-family:var(--font-serif);font-size:24px;font-weight:400;color:var(--text-primary, #e6edf3);letter-spacing:.02em;line-height:1.5;margin:0}.landing-tier{display:flex;gap:32px;padding:48px 0;border-top:1px solid rgba(255,255,255,.04)}.landing-tier:first-of-type{border-top:none}.landing-tier-num{font-family:var(--font-serif);font-size:36px;font-weight:400;line-height:1;flex-shrink:0;width:48px;opacity:.7}.landing-tier-body{flex:1}.landing-tier-title{font-size:11px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;margin:0 0 8px}.landing-tier-headline{font-family:var(--font-serif);font-size:20px;font-weight:400;color:var(--text-primary, #e6edf3);margin:0 0 12px;letter-spacing:.01em}.landing-tier-desc{font-size:13px;line-height:1.8;color:var(--text-secondary, #8b949e);margin:0 0 20px}.landing-tier-points{display:flex;flex-wrap:wrap;gap:8px}.landing-tier-point{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-tertiary, #6e7681);letter-spacing:.04em;padding:4px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.06)}.landing-tier-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}.landing-tiers-cta{text-align:center;padding-top:80px}.landing-tiers-cta-text{font-family:var(--font-serif);font-size:18px;font-weight:400;color:var(--text-secondary, #8b949e);letter-spacing:.02em;margin:0 0 24px;font-style:italic}@media(max-width:600px){.landing-tiers{padding:60px 20px 80px}.landing-tier{flex-direction:column;gap:12px}.landing-tier-num{width:auto;font-size:28px}.landing-tiers-heading{font-size:20px}}.user-profile{display:flex;flex-direction:column;align-items:center;padding:40px 20px;gap:32px;max-width:800px;margin:0 auto}.profile-identity{text-align:center}.profile-username{font-family:var(--font-serif);font-size:18px;font-weight:500;font-style:normal;color:var(--text-secondary);margin:0}.profile-id{font-size:12px;color:var(--text-tertiary);margin-top:8px}.profile-stats{display:flex;gap:40px;justify-content:center;flex-wrap:wrap}.profile-stat{display:flex;flex-direction:column;align-items:center;gap:6px}.profile-stat-value{font-family:var(--font-serif);font-size:24px;font-style:normal;color:var(--text-primary)}.profile-stat-label{font-size:11px;color:var(--text-tertiary);font-weight:500}.profile-meta{display:flex;flex-direction:column;gap:8px;width:100%;max-width:400px;border-top:1px solid var(--border);padding-top:24px}.profile-meta-row{display:flex;justify-content:space-between;align-items:baseline}.profile-meta-key{font-size:12px;color:var(--text-tertiary);font-weight:500}.profile-meta-val{font-size:13px;color:var(--text-secondary)}.profile-section-header{font-size:11px;font-weight:600;letter-spacing:.15em;color:var(--text-tertiary);margin-bottom:16px}.profile-action-btn{width:100%;padding:12px 16px;border-radius:6px;font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:.1em;cursor:pointer;transition:all .2s ease}.profile-settings-section{width:100%;max-width:400px;border-top:1px solid var(--border);padding-top:24px}.profile-setting-row{display:flex;justify-content:space-between;align-items:center}.profile-setting-label{font-size:12px;color:var(--text-tertiary);font-weight:500}.theme-toggle-btn{display:flex;align-items:center;gap:10px;background:none;border:none;cursor:pointer;padding:4px}.theme-toggle-track{position:relative;width:36px;height:20px;border-radius:10px;background:var(--accent-a20);border:1px solid var(--accent-a30);transition:all .3s ease}[data-theme=light] .theme-toggle-track{background:#4a7a0026;border-color:#4a7a004d}.theme-toggle-thumb{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--accent);transition:transform .3s ease}[data-theme=light] .theme-toggle-thumb{transform:translate(16px)}.theme-toggle-label{font-size:11px;font-weight:500;letter-spacing:.1em;color:var(--text-secondary)}.profile-logout-section{width:100%;max-width:400px;border-top:1px solid var(--border);padding-top:24px}.profile-action-btn.logout{background:none;border:1px solid var(--border);color:var(--text-tertiary)}.profile-action-btn.logout:hover{border-color:#e5534b;color:#e5534b}.profile-sync-section{width:100%;max-width:400px;border-top:1px solid var(--border);padding-top:24px}.profile-sync-summary{display:flex;gap:8px;margin-bottom:20px}.profile-sync-stat{flex:1;display:flex;flex-direction:column;align-items:center;padding:14px 8px 10px;background:var(--accent-a04);border-radius:10px;border:1px solid var(--accent-a06);transition:border-color .2s}.profile-sync-stat:hover{border-color:var(--accent-a15)}.profile-sync-stat-value{font-family:var(--font-mono, monospace);font-size:17px;font-weight:600;color:var(--text-primary);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.profile-sync-stat-label{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:var(--accent-a30);margin-top:4px;font-weight:500}.sync-val-synced{color:var(--accent-a40)}.sync-val-pending{color:var(--accent-a70)}.sync-val-pull{color:var(--accent-blue, #58a6ff)}.profile-sync-table-container{max-height:360px;overflow-y:auto;margin-bottom:16px;border-radius:8px;border:1px solid var(--accent-a06);scrollbar-width:thin;scrollbar-color:var(--accent-a10) transparent}.profile-sync-table-container::-webkit-scrollbar{width:3px}.profile-sync-table-container::-webkit-scrollbar-track{background:transparent}.profile-sync-table-container::-webkit-scrollbar-thumb{background:var(--accent-a10);border-radius:2px}.profile-sync-metric-table{width:100%;border-collapse:collapse;font-family:var(--font-mono, monospace);font-size:11px}.profile-sync-metric-table thead th{text-align:left;font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:var(--accent-a30);padding:8px 10px;border-bottom:1px solid var(--accent-a08);position:sticky;top:0;background:var(--bg-primary, #0d1117);z-index:1;font-weight:500}.profile-sync-metric-table thead th:not(:first-child){text-align:right}.profile-sync-metric-table tbody td{padding:3px 10px;color:var(--accent-a50);border-bottom:1px solid var(--accent-a04)}.profile-sync-metric-table tbody td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.profile-sync-metric-table tbody tr:hover td{background:var(--accent-a04)}.profile-sync-metric-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--accent-a60)}.profile-sync-category-row td{border-bottom:none!important;background:none!important}.profile-sync-category-header{font-size:9px;letter-spacing:.2em;color:var(--accent-a20);padding-top:14px!important;padding-bottom:4px!important;font-weight:500}.profile-sync-progress-section{padding:24px 0;text-align:center;margin-bottom:16px}.profile-sync-progress-label{font-family:var(--font-mono, monospace);font-size:11px;color:var(--accent-a40);margin-bottom:12px}.profile-sync-progress-track{height:6px;background:var(--accent-a08);border-radius:3px;overflow:hidden;margin-bottom:10px}.profile-sync-progress-bar{height:100%;border-radius:3px;transition:width .4s ease}.profile-sync-progress-bar.push{background:var(--accent, #CAFF00);box-shadow:0 0 12px #caff004d}.profile-sync-progress-bar.pull{background:var(--accent-blue, #58a6ff);box-shadow:0 0 12px #58a6ff4d}.profile-sync-progress-count{font-family:var(--font-mono, monospace);font-size:10px;color:var(--accent-a25)}.profile-sync-actions{display:flex;gap:8px}.profile-sync-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;border-radius:8px;border:1px solid var(--accent-a10);background:var(--accent-a04);font-family:var(--font-mono, monospace);font-size:10px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all .2s}.profile-sync-action-btn.push{color:var(--accent-a70)}.profile-sync-action-btn.push:hover:not(:disabled){border-color:var(--accent-a30);background:var(--accent-a08);color:var(--accent-a90);box-shadow:0 0 20px #caff000f}.profile-sync-action-btn.pull{color:#58a6ffb3}.profile-sync-action-btn.pull:hover:not(:disabled){border-color:#58a6ff4d;background:#58a6ff0f;color:#58a6ffe6;box-shadow:0 0 20px #58a6ff0f}.profile-sync-action-btn:disabled{opacity:.3;cursor:not-allowed}.profile-sync-progress-actions{display:flex;justify-content:center;gap:12px;margin-top:16px}.profile-sync-stop-btn,.profile-sync-cancel-btn{background:none;border:1px solid var(--accent-a10);border-radius:6px;padding:5px 14px;font-family:var(--font-mono, monospace);font-size:9px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all .2s}.profile-sync-stop-btn{color:var(--accent-a40)}.profile-sync-stop-btn:hover{color:var(--accent-a70);border-color:var(--accent-a25);background:var(--accent-a04)}.profile-sync-cancel-btn{color:#ff444480}.profile-sync-cancel-btn:hover{color:#f44;border-color:#ff44444d;background:#ff44440a}.profile-sync-expunge-section{margin-top:12px;padding-top:12px;border-top:1px solid var(--accent-a06)}.profile-sync-expunge-btn{display:inline-flex;align-items:center;gap:5px;background:none;border:1px solid transparent;border-radius:6px;padding:5px 10px;font-family:var(--font-mono, monospace);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-a25);cursor:pointer;transition:all .2s}.profile-sync-expunge-btn:hover:not(:disabled){color:#f44;border-color:#f443;background:#ff44440a}.profile-sync-expunge-btn:disabled{opacity:.3;cursor:not-allowed}.profile-sync-expunge-confirm{display:flex;flex-direction:column;gap:8px}.profile-sync-expunge-warn{font-family:var(--font-mono, monospace);font-size:10px;color:#f44;letter-spacing:.02em}.profile-sync-expunge-confirm-btns{display:flex;gap:8px}.profile-sync-expunge-btn.confirm{color:#f44;border-color:#ff44444d;background:#ff44440f}.profile-sync-expunge-btn.confirm:hover{background:#ff44441f;border-color:#ff444480}.profile-sync-expunge-btn.cancel{color:var(--accent-a40);border-color:var(--accent-a10)}.profile-sync-expunge-btn.cancel:hover{border-color:var(--accent-a20);background:var(--accent-a04)}.profile-sync-error{font-family:var(--font-mono, monospace);font-size:10px;color:#f44;padding:8px 0;margin-bottom:8px;letter-spacing:.02em}.profile-sync-loading{text-align:center;padding:32px 16px;font-family:var(--font-mono, monospace);font-size:11px;color:var(--accent-a25)}.profile-import-zone{position:relative;border:1px dashed var(--accent-a15);border-radius:10px;padding:18px 16px;margin-bottom:16px;text-align:center;cursor:pointer;transition:all .2s;background:transparent}.profile-import-zone:hover{border-color:var(--accent-a30);background:var(--accent-a04)}.profile-import-zone.drag-active{border-color:var(--accent-a50);background:var(--accent-a08);box-shadow:0 0 20px #caff0014}.profile-import-zone.uploading{border-style:solid;border-color:var(--accent-a20);cursor:wait}.profile-import-label{display:flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-mono, monospace);font-size:10px;letter-spacing:.04em;color:var(--accent-a40)}.profile-import-label.success{color:#3fb950}.profile-import-label.error{color:#f44}.profile-import-hint{font-family:var(--font-mono, monospace);font-size:9px;color:var(--accent-a20);margin-top:4px}.profile-import-file-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.profile-import-zone.uploading .profile-import-file-input{pointer-events:none}[data-theme=light] .profile-sync-stat{background:#4a7a000a;border-color:#4a7a0014}[data-theme=light] .profile-sync-stat:hover{border-color:#4a7a0029}[data-theme=light] .profile-sync-stat-label{color:#8a9a6a}[data-theme=light] .profile-sync-table-container{border-color:#0000000f;scrollbar-color:rgba(0,0,0,.1) transparent}[data-theme=light] .profile-sync-table-container::-webkit-scrollbar-thumb{background:#0000001a}[data-theme=light] .profile-sync-metric-table thead th{background:var(--bg-primary, #fff);color:#8a9a6a;border-bottom-color:#0000000f}[data-theme=light] .profile-sync-metric-table tbody td{color:#5a6e3a;border-bottom-color:#00000008}[data-theme=light] .profile-sync-metric-table tbody tr:hover td{background:#4a7a000a}[data-theme=light] .profile-sync-metric-name{color:#3d5a1a}[data-theme=light] .profile-sync-category-header{color:#8a9a6a}[data-theme=light] .sync-val-synced{color:#5a8a2a}[data-theme=light] .sync-val-pending{color:#b07d00}[data-theme=light] .sync-val-pull{color:#1a6dcc}[data-theme=light] .profile-sync-action-btn{border-color:#4a7a001f;background:#4a7a000a}[data-theme=light] .profile-sync-action-btn.push{color:#4a7a00}[data-theme=light] .profile-sync-action-btn.push:hover:not(:disabled){border-color:#4a7a004d;background:#4a7a0014;color:#3d6800}[data-theme=light] .profile-sync-action-btn.pull{color:#1a6dcc}[data-theme=light] .profile-sync-action-btn.pull:hover:not(:disabled){border-color:#1a6dcc4d;background:#1a6dcc0f;color:#155ab0}[data-theme=light] .profile-sync-progress-bar.push{background:#4a7a00;box-shadow:none}[data-theme=light] .profile-sync-progress-bar.pull{background:#1a6dcc;box-shadow:none}[data-theme=light] .profile-sync-progress-track{background:#0000000f}[data-theme=light] .profile-sync-progress-label{color:#5a6e3a}[data-theme=light] .profile-sync-progress-count{color:#8a9a6a}[data-theme=light] .profile-sync-error{color:#c22}[data-theme=light] .profile-sync-loading{color:#8a9a6a}[data-theme=light] .profile-sync-stop-btn{color:#5a6e3a;border-color:#00000014}[data-theme=light] .profile-sync-stop-btn:hover{color:#3d5a1a;border-color:#00000026;background:#00000008}[data-theme=light] .profile-sync-cancel-btn{color:#cc222280}[data-theme=light] .profile-sync-cancel-btn:hover{color:#c22;border-color:#cc22224d;background:#cc22220a}[data-theme=light] .profile-sync-expunge-section{border-top-color:#0000000f}[data-theme=light] .profile-sync-expunge-btn{color:#8a9a6a}[data-theme=light] .profile-sync-expunge-btn:hover:not(:disabled){color:#c22;border-color:#c223;background:#cc22220a}[data-theme=light] .profile-sync-expunge-warn{color:#c22}[data-theme=light] .profile-sync-expunge-btn.confirm{color:#c22;border-color:#cc22224d;background:#cc22220f}[data-theme=light] .profile-sync-expunge-btn.confirm:hover{background:#cc22221f;border-color:#cc222280}[data-theme=light] .profile-sync-expunge-btn.cancel{color:#5a6e3a;border-color:#00000014}[data-theme=light] .profile-sync-expunge-btn.cancel:hover{border-color:#00000026;background:#00000008}[data-theme=light] .profile-import-zone{border-color:#4a7a0026}[data-theme=light] .profile-import-zone:hover{border-color:#4a7a004d;background:#4a7a000a}[data-theme=light] .profile-import-zone.drag-active{border-color:#4a7a0080;background:#4a7a0014;box-shadow:none}[data-theme=light] .profile-import-zone.uploading{border-color:#4a7a0033}[data-theme=light] .profile-import-label{color:#5a6e3a}[data-theme=light] .profile-import-label.success{color:#2da44e}[data-theme=light] .profile-import-label.error{color:#c22}[data-theme=light] .profile-import-hint{color:#8a9a6a}@media(max-width:600px){.profile-username{font-size:22px}.profile-stats{gap:24px}.profile-stat-value{font-size:18px}.profile-sync-summary{flex-wrap:wrap}.profile-sync-stat{min-width:calc(50% - 4px)}}.source-priority-list{display:flex;flex-direction:column;gap:2px}.source-priority-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:var(--accent-a04);cursor:grab}.source-priority-item:hover{background:var(--accent-a08)}.source-priority-handle{color:var(--text-tertiary);display:flex;flex-shrink:0}.source-priority-rank{font-size:11px;font-weight:600;color:var(--text-tertiary);width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.source-priority-rank.preferred{background:var(--accent-a20);color:var(--accent, #4ec9b0)}.source-priority-name{font-size:13px;color:var(--text-primary);font-family:var(--font-sans)}.source-priority-badge{margin-left:auto;font-size:10px;color:var(--accent, #4ec9b0);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.source-priority-input{flex:1;padding:8px 12px;border-radius:10px;border:1px solid var(--border, rgba(255,255,255,.08));background:var(--accent-a04);color:var(--text-primary);font-size:12px;font-family:var(--font-sans);outline:none}.source-priority-input:focus{border-color:var(--accent-a30)}.profile-railbar-mode-btn{padding:5px 12px;border-radius:6px;border:1px solid var(--border);background:none;color:var(--text-tertiary);font-size:11px;font-family:var(--font-sans);cursor:pointer;font-weight:500;letter-spacing:.02em}.profile-railbar-mode-btn:hover{color:var(--text-primary);border-color:var(--text-tertiary)}.profile-railbar-mode-btn.active{background:var(--accent-a10);border-color:var(--accent-a20);color:var(--accent, #4ec9b0)}.add-data-tab{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:12px 16px;gap:14px}.add-data-tab::-webkit-scrollbar{width:4px}.add-data-tab::-webkit-scrollbar-track{background:transparent}.add-data-tab::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.add-data-chips{display:flex;flex-wrap:wrap;gap:6px}.add-data-chip{background:var(--accent-light);border:1px solid transparent;border-radius:10px;padding:6px 12px;font-size:11px;font-family:inherit;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-weight:500}.add-data-chip:hover{color:var(--accent);border-color:var(--accent-a30)}.add-data-chip.active{background:var(--accent);color:#0d1117;border-color:var(--accent);font-weight:600}.add-data-form{display:flex;flex-direction:column;gap:12px}.add-data-stage-grid{display:flex;flex-direction:column;gap:2px;border:1px solid var(--border);border-radius:12px;overflow:hidden}.stage-entry{border-bottom:1px solid var(--border)}.stage-entry:last-child{border-bottom:none}.stage-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:9px 14px;background:none;border:none;font-family:inherit;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.stage-toggle:hover{background:var(--accent-light)}.stage-toggle.active{color:var(--text-primary);font-weight:600}.stage-label{font-weight:inherit}.stage-indicator{width:32px;height:18px;border-radius:9px;background:var(--border);position:relative;transition:background .2s;flex-shrink:0}.stage-indicator:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--bg-card);transition:transform .2s}.stage-indicator.on{background:var(--accent)}.stage-indicator.on:after{transform:translate(14px)}.stage-times{display:flex;flex-direction:column;gap:4px;padding:6px 14px 10px;background:var(--accent-light);animation:stage-expand .15s ease-out}@keyframes stage-expand{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:80px}}.stage-time-row{display:flex;align-items:center;gap:6px}.stage-time-row .range-label{font-size:11px;color:var(--text-tertiary);min-width:32px;font-weight:500}.add-data-date.compact,.add-data-time.compact{padding:4px 8px;font-size:11px;border-radius:8px;flex:1}.add-data-value-row{display:flex;align-items:center;gap:12px;justify-content:center}.add-data-stepper{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--bg-card);color:var(--accent);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0;font-family:inherit}.add-data-stepper:hover:not(:disabled){border-color:var(--accent);background:var(--accent-light)}.add-data-stepper:disabled{opacity:.3;cursor:not-allowed}.add-data-value-display{display:flex;align-items:baseline;gap:6px;flex:1;justify-content:center}.add-data-value-input{background:transparent;border:none;border-bottom:1px solid var(--border);color:var(--text-primary);font-family:inherit;font-size:28px;font-weight:600;text-align:center;width:140px;outline:none;padding:4px 0;transition:border-color .2s;-moz-appearance:textfield}.add-data-value-input::-webkit-outer-spin-button,.add-data-value-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.add-data-value-input:focus{border-bottom-color:var(--accent)}.add-data-value-input::placeholder{color:var(--text-tertiary);font-weight:400}.add-data-unit{font-size:13px;color:var(--text-tertiary);font-weight:500}.add-data-datetime-row{display:flex;gap:8px}.add-data-date,.add-data-time{flex:1;background:var(--accent-light);border:1px solid var(--border);border-radius:10px;padding:8px 12px;font-size:12px;font-family:inherit;color:var(--text-primary);outline:none;transition:border-color .2s}.add-data-date:focus,.add-data-time:focus{border-color:var(--accent)}.add-data-note{background:transparent;border:1px solid var(--border);border-radius:10px;padding:8px 12px;font-size:12px;font-family:inherit;color:var(--text-primary);outline:none;transition:border-color .2s}.add-data-note:focus{border-color:var(--accent)}.add-data-note::placeholder{color:var(--text-tertiary)}.add-data-error{font-size:11px;color:#f44;padding:0 2px}.add-data-save{width:100%;padding:10px;border:none;border-radius:12px;background:var(--accent);color:#0d1117;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s;letter-spacing:.04em}.add-data-save:hover:not(:disabled){filter:brightness(1.15)}.add-data-save:disabled{opacity:.4;cursor:not-allowed}.add-data-save.saved{background:#22c55e;color:#fff}.oracle-button{position:fixed;bottom:28px;right:28px;width:48px;height:48px;border-radius:50%;background:#c8c8c81f;border:1px solid var(--border);cursor:pointer;z-index:1000;display:flex;align-items:center;justify-content:center;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0003;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.oracle-button:hover{background:#c8c8c82e}[data-theme=light] .oracle-button{background:#c8c8c833}.oracle-icon{font-size:24px;font-weight:300;color:#fff;line-height:1;transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:1}.oracle-button.open .oracle-icon{transform:rotate(45deg)}.oracle-button:hover{background:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-lg);backdrop-filter:none;-webkit-backdrop-filter:none}.oracle-button.open{background:var(--accent);backdrop-filter:none;-webkit-backdrop-filter:none}.oracle-panel{position:fixed;bottom:96px;right:24px;width:380px;max-width:calc(100vw - 48px);height:500px;max-height:calc(100vh - 140px);background:#1e1e198c;backdrop-filter:blur(40px) saturate(1.4);-webkit-backdrop-filter:blur(40px) saturate(1.4);border:1px solid var(--accent-a08);border-radius:var(--module-radius);z-index:999;display:flex;flex-direction:column;font-family:var(--font-sans);box-shadow:0 24px 80px #00000059,0 0 1px var(--accent-a10),inset 0 1px #ffffff0a;animation:oracle-appear .25s ease-out;overflow:hidden}[data-theme=light] .oracle-panel{background:#f5f5f0b8;box-shadow:0 24px 80px #0000001f,0 0 1px var(--accent-a10),inset 0 1px #ffffff80}@keyframes oracle-appear{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.oracle-panel.closing{animation:oracle-disappear .2s ease-in forwards}@keyframes oracle-disappear{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(20px) scale(.95)}}.oracle-tabs{display:flex;border-bottom:1px solid var(--border)}.oracle-tab{flex:1;padding:8px 12px;background:none;border:none;border-bottom:2px solid transparent;font-family:inherit;font-size:12px;font-weight:500;color:var(--text-tertiary);cursor:pointer;letter-spacing:.04em;transition:all .2s}.oracle-tab:hover{color:var(--text-secondary)}.oracle-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.oracle-panel.dragging{transition:none!important;-webkit-user-select:none;user-select:none}.oracle-panel .oracle-message{cursor:text;-webkit-user-select:text;user-select:text}.oracle-panel .oracle-input-form{cursor:default;-webkit-user-select:text;user-select:text}.oracle-thread-panel{flex:1;min-height:0;margin:10px 10px 0;background:none;border:none;border-radius:14px;display:flex;flex-direction:column;overflow:hidden}[data-theme=light] .oracle-thread-panel{background:#ffffff73;border-color:#0000000f}.oracle-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.oracle-messages::-webkit-scrollbar{width:4px}.oracle-messages::-webkit-scrollbar-track{background:transparent}.oracle-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.oracle-message{display:flex;gap:8px;font-size:13px;line-height:1.6}.oracle-message.user{color:var(--text-primary)}.oracle-message.assistant{color:var(--text-secondary)}.message-prefix{flex-shrink:0;opacity:.6;color:var(--accent);font-weight:600}.message-content{word-break:break-word}.oracle-message.loading .typing span{animation:blink 1.4s infinite both;color:var(--accent)}.oracle-message.loading .typing span:nth-child(2){animation-delay:.2s}.oracle-message.loading .typing span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:0}40%{opacity:1}}.oracle-suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px}.oracle-suggestion{background:var(--accent-light);border:1px solid transparent;border-radius:10px;padding:6px 12px;font-size:12px;color:var(--accent);cursor:pointer;font-family:inherit;transition:all .2s;font-weight:500}.oracle-suggestion:hover{background:var(--accent);color:#0d1117}.oracle-input-form{display:flex;align-items:center;gap:8px;padding:14px 16px;margin:0 12px 12px;background:#ffffff0f;border:1px solid var(--border);border-radius:var(--module-radius);flex-shrink:0}.input-prefix{color:var(--accent);font-size:14px;font-weight:600}.oracle-input{flex:1;background:transparent;border:none;color:var(--text-primary);font-family:inherit;font-size:13px;outline:none}.oracle-input::placeholder{color:var(--text-tertiary)}.oracle-input:disabled{opacity:.5}.oracle-send{background:none;border:none;color:var(--accent);font-size:16px;cursor:pointer;padding:4px 8px;opacity:.7;transition:opacity .2s}.oracle-send:hover:not(:disabled){opacity:1}.oracle-send:disabled{opacity:.3;cursor:not-allowed}@media(max-width:480px){.oracle-button{bottom:20px;right:20px;width:44px;height:44px}.oracle-panel{bottom:80px;right:16px;left:16px;width:auto;height:calc(100vh - 120px);max-height:none}}.add-data-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1100;display:flex;align-items:center;justify-content:center;animation:addDataFadeIn .2s ease-out}@keyframes addDataFadeIn{0%{opacity:0}to{opacity:1}}.add-data-overlay.closing{animation:addDataFadeOut .25s ease-in forwards}@keyframes addDataFadeOut{0%{opacity:1}to{opacity:0}}.add-data-sheet{background:#161b22b8;backdrop-filter:blur(40px) saturate(1.4);-webkit-backdrop-filter:blur(40px) saturate(1.4);border-radius:var(--module-radius, 16px);border:1px solid var(--accent-a08);box-shadow:0 24px 80px #00000080,0 0 1px var(--accent-a10),inset 0 1px #ffffff0a;width:480px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;animation:addDataSlideUp .3s ease-out}@keyframes addDataSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.add-data-sheet.closing{animation:addDataSlideDown .25s ease-in forwards}@keyframes addDataSlideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}.add-data-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid var(--accent-a06)}.add-data-title{font-family:var(--font-serif, Georgia, serif);font-size:18px;font-weight:500;margin:0;color:var(--text-primary)}.add-data-close{font-size:13px;font-weight:500;color:var(--accent, #4ec9b0);background:none;border:none;cursor:pointer;font-family:var(--font-sans);padding:4px 12px;border-radius:6px}.add-data-close:hover{background:var(--accent-light, rgba(78, 201, 176, .08))}.add-data-form{display:flex;flex-direction:column;gap:20px;padding:24px;overflow-y:auto;flex:1}.add-data-field{display:flex;flex-direction:column;gap:6px}.add-data-field-label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);font-family:var(--font-sans)}.add-data-field-input{padding:10px 14px;border-radius:10px;border:1px solid var(--border, rgba(255, 255, 255, .08));background:var(--accent-a04);color:var(--text-primary);font-size:13px;font-family:var(--font-mono, "SF Mono", "Fira Code", monospace);outline:none;width:100%;box-sizing:border-box}.add-data-field-input:focus{border-color:var(--accent-a30, rgba(78, 201, 176, .3))}.add-data-field-input::placeholder{color:var(--text-tertiary);opacity:.5}.add-data-value-row{display:flex;align-items:center;gap:10px}.add-data-value-row .add-data-field-input{flex:1}.add-data-unit-badge{font-size:11px;font-weight:500;color:var(--accent, #4ec9b0);background:var(--accent-a08);padding:8px 14px;border-radius:10px;border:1px solid var(--accent-a15);white-space:nowrap;font-family:var(--font-mono, "SF Mono", "Fira Code", monospace)}.add-data-datetime-row{display:flex;gap:10px}.add-data-datetime-row .add-data-field{flex:1}.add-data-field-textarea{padding:10px 14px;border-radius:10px;border:1px solid var(--border, rgba(255, 255, 255, .08));background:var(--accent-a04);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);outline:none;width:100%;box-sizing:border-box;min-height:60px;resize:vertical}.add-data-field-textarea:focus{border-color:var(--accent-a30, rgba(78, 201, 176, .3))}.add-data-field-textarea::placeholder{color:var(--text-tertiary);opacity:.5}.add-data-source{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;background:var(--accent-a04);border:1px solid var(--border, rgba(255, 255, 255, .06))}.add-data-source-dot{width:8px;height:8px;border-radius:50%;background:var(--accent, #4ec9b0)}.add-data-source-text{font-size:12px;font-family:var(--font-sans);color:var(--text-secondary)}.add-data-metric-path{font-size:11px;font-family:var(--font-mono, "SF Mono", "Fira Code", monospace);color:var(--text-tertiary);padding:6px 12px;background:var(--accent-a04);border-radius:8px;border:1px solid var(--border, rgba(255, 255, 255, .04))}.add-data-submit{padding:12px 24px;border-radius:12px;border:none;background:var(--accent, #4ec9b0);color:#0a0a0e;font-size:14px;font-weight:600;font-family:var(--font-sans);cursor:pointer;margin-top:4px;transition:transform .1s,opacity .1s}.add-data-submit:hover:not(:disabled){transform:translateY(-1px)}.add-data-submit:disabled{opacity:.4;cursor:not-allowed}.add-data-success{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;background:#4ec9b014;border:1px solid rgba(78,201,176,.2);color:var(--accent, #4ec9b0);font-size:12px;font-family:var(--font-sans)}.add-data-error{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;background:#ef444414;border:1px solid rgba(239,68,68,.2);color:#ef4444;font-size:12px;font-family:var(--font-sans)}.add-data-metric-search{display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--accent-a04);border:1px solid var(--border, rgba(255, 255, 255, .08));border-radius:10px;transition:border-color .2s}.add-data-metric-search:focus-within{border-color:var(--accent-a30)}.add-data-metric-search input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:13px;font-family:var(--font-sans)}.add-data-metric-search input::placeholder{color:var(--text-tertiary);opacity:.5}.add-data-metric-list{display:flex;flex-direction:column;max-height:200px;overflow-y:auto;border:1px solid var(--border, rgba(255, 255, 255, .06));border-radius:10px;scrollbar-width:thin}.add-data-metric-option{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font-size:12px;font-family:var(--font-sans);color:var(--text-secondary);background:none;border:none;border-bottom:1px solid var(--border, rgba(255, 255, 255, .04));cursor:pointer;text-align:left}.add-data-metric-option:last-child{border-bottom:none}.add-data-metric-option:hover{background:var(--accent-a04);color:var(--text-primary)}.add-data-metric-option.active{background:var(--accent-a10);color:var(--accent, #4ec9b0)}.add-data-metric-unit{font-size:10px;color:var(--text-tertiary);opacity:.6}@media(max-width:768px){.add-data-sheet{width:95vw;max-height:90vh}.add-data-datetime-row{flex-direction:column}}.add-data-tabs{display:flex;gap:3px;background:var(--accent-a04);border-radius:10px;padding:3px;margin:0 20px 16px;border:1px solid var(--border, rgba(255,255,255,.06))}.add-data-tab{flex:1;padding:8px 16px;border-radius:7px;border:none;background:none;color:var(--text-tertiary);font-size:12px;font-family:var(--font-sans);font-weight:500;cursor:pointer;text-align:center}.add-data-tab:hover{color:var(--text-primary)}.add-data-tab.active{background:var(--accent-a15);color:var(--accent, #4ec9b0)}.add-data-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:40px 20px;border:2px dashed var(--border, rgba(255,255,255,.1));border-radius:16px;cursor:pointer;transition:border-color .15s,background .15s}.add-data-dropzone:hover{border-color:var(--accent-a30);background:var(--accent-a04)}.add-data-dropzone.active{border-color:var(--accent, #4ec9b0);background:var(--accent-a08)}.add-data-dropzone-text{font-size:13px;color:var(--text-secondary);font-family:var(--font-sans);text-align:center}.add-data-dropzone-hint{font-size:11px;color:var(--text-tertiary);font-family:var(--font-sans)}.add-data-import-preview{font-size:12px;color:var(--text-secondary);font-family:var(--font-sans);padding:8px 12px;background:var(--accent-a04);border-radius:8px}.portal-view{min-height:100vh;background:var(--bg);display:flex;position:relative}.organism-bg{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:0;pointer-events:none}.scanlines{display:block;position:fixed;inset:0;pointer-events:none;z-index:9999;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.03) 2px,rgba(0,0,0,.03) 4px)}.vignette{display:block;position:fixed;inset:0;pointer-events:none;z-index:9998;display:none}.portal-sidebar{display:none}.portal-railbar{width:72px;background:transparent;position:fixed;left:0;top:0;bottom:0;display:flex;flex-direction:column;padding:16px 0;z-index:50;overflow:visible;transition:width .2s ease}.portal-railbar.railbar-auto:hover{width:200px}.portal-railbar.railbar-auto:hover~.portal-content{left:200px;right:-124px}.portal-railbar.railbar-collapsed{width:72px}.portal-railbar.railbar-collapsed .railbar-nav-label,.portal-railbar.railbar-collapsed .railbar-logo-text{display:none}.portal-railbar.railbar-expanded{width:200px}.portal-railbar.railbar-expanded .railbar-nav-label,.portal-railbar.railbar-expanded .railbar-logo-text{opacity:1;pointer-events:auto}.portal-railbar.railbar-expanded~.portal-content{left:200px}.railbar-logo{display:flex;align-items:center;gap:6px;width:100%;height:64px;flex-shrink:0;text-decoration:none;padding:0 12px 0 16px;overflow:hidden}.railbar-logo-text{font-size:16px;font-weight:400;font-family:var(--font-sans);color:var(--text-primary);letter-spacing:.08em;white-space:nowrap;opacity:0;transition:opacity .15s ease .05s}.portal-railbar:hover .railbar-logo-text{opacity:1}.railbar-nav{display:flex;flex-direction:column;align-items:stretch;gap:0;flex:1;padding:0}.railbar-nav-item{display:flex;align-items:center;gap:12px;height:44px;padding:0 18px;border-radius:0;width:100%;color:var(--text-tertiary);text-decoration:none;cursor:pointer;white-space:nowrap;overflow:hidden;border:none;background:none;font:inherit}.railbar-nav-item,.railbar-nav-item:hover,.railbar-nav-item.active{transition:none}.railbar-nav-item:hover{color:var(--accent-a70);background:var(--accent-a06)}.railbar-nav-item.active{color:var(--accent-a70)}.railbar-nav-item.active .railbar-icon-wrap{background:var(--accent-a10)}.railbar-icon-wrap{display:flex;align-items:center;justify-content:center;width:36px;height:36px;min-width:36px;border-radius:10px}.railbar-icon-wrap svg{width:20px;height:20px}.railbar-nav-label{font-size:13px;font-family:var(--font-sans);font-weight:400;opacity:0;transition:opacity .15s ease .05s;pointer-events:none}.portal-railbar:hover .railbar-nav-label{opacity:1;pointer-events:auto}.railbar-spacer{flex:1}.search-modal-backdrop{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:999;animation:search-modal-fade-in .15s ease-out}.search-modal{position:fixed;top:20%;left:50%;transform:translate(-50%);width:560px;max-width:calc(100vw - 48px);background:var(--z1-card, #1c2128);border:1px solid var(--border-medium, var(--border));border-radius:16px;box-shadow:0 16px 64px #0006,0 4px 16px #0003;z-index:1000;overflow:hidden;animation:search-modal-slide-in .15s ease-out}[data-theme=light] .search-modal{background:var(--z3-content, #faf7f2);border-color:#e8e0d4;box-shadow:0 16px 64px #2a2a2a2e,0 4px 16px #2a2a2a1a}.search-modal-input-wrapper{display:flex;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border);gap:10px}.search-modal-input-icon{color:var(--text-tertiary);flex-shrink:0}.search-modal-input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:15px;font-family:var(--font-sans)}.search-modal-input::placeholder{color:var(--text-tertiary)}.search-modal-shortcut{font-size:10px;font-family:var(--font-sans);color:var(--text-tertiary);background:#ffffff0f;border:1px solid var(--border);border-radius:4px;padding:2px 6px;flex-shrink:0}.search-modal-results{max-height:380px;overflow-y:auto;scrollbar-width:none}.search-modal-results::-webkit-scrollbar{display:none}@keyframes search-modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes search-modal-slide-in{0%{opacity:0;transform:translate(-50%) translateY(-8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.floating-chat-bar{position:fixed;bottom:24px;left:240px;right:100px;height:57px;display:flex;align-items:center;gap:12px;padding:0 24px;background:#c8c8c81a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:999px;box-shadow:0 4px 20px #00000040;z-index:900;transition:border-color .2s,box-shadow .2s}.floating-chat-bar:hover{border-color:var(--border-medium, rgba(255,255,255,.12));box-shadow:0 6px 24px #0000004d}.floating-chat-bar:focus-within{border-color:var(--accent-a30);box-shadow:0 0 0 2px var(--accent-a08),0 6px 24px #0000004d}.chat-blur-overlay{position:fixed;inset:0;background:linear-gradient(to bottom,transparent 0%,transparent 50%,rgba(0,0,0,.7) 100%);pointer-events:none;opacity:0;transition:opacity .3s ease;z-index:89}.chat-blur-overlay:after{content:"";position:absolute;inset:0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);mask-image:linear-gradient(to bottom,transparent 0%,transparent 40%,black 80%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,transparent 40%,black 80%)}.chat-blur-overlay.active{opacity:1}.chat-messages-overlay{position:fixed;bottom:80px;left:0;right:0;max-height:calc(100vh - 120px);z-index:90;display:flex;flex-direction:column;justify-content:flex-end;pointer-events:none;opacity:0;transition:opacity .3s ease}.chat-messages-overlay.active{opacity:1;pointer-events:auto}.chat-messages-overlay .oracle-input-form{display:none}.chat-messages-overlay .oracle-thread-panel{background:none;border:none;margin:0;border-radius:0}.chat-messages-overlay .oracle-messages{max-width:700px;width:100%;margin:0 auto;padding:20px 24px;display:flex;flex-direction:column;justify-content:flex-end;overflow-y:auto;mask-image:linear-gradient(to bottom,transparent 0%,black 15%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 15%)}.floating-chat-bar-icon{color:var(--text-tertiary);flex-shrink:0}.floating-chat-bar-input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:14px;font-family:var(--font-sans)}.floating-chat-bar-input::placeholder{color:var(--text-tertiary)}.floating-chat-bar-hint{font-size:11px;font-family:var(--font-sans);color:var(--text-tertiary);background:#ffffff0f;border:1px solid var(--border);border-radius:4px;padding:2px 8px;flex-shrink:0}[data-theme=light] .floating-chat-bar{background:#faf7f28c;border-color:#d9d0c459;box-shadow:0 4px 20px #2a2a2a1a}[data-theme=light] .floating-chat-bar:focus-within{background:#faf7f2b3;border-color:#7a9b7a;box-shadow:0 0 0 2px #3d5a3d0f}@media(max-width:768px){.floating-chat-bar{left:16px;right:16px;bottom:16px}}.profile-modal-backdrop{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:999;animation:search-modal-fade-in .15s ease-out}.profile-modal{position:fixed;top:5%;left:50%;transform:translate(-50%);width:680px;max-width:calc(100vw - 48px);max-height:90vh;background:var(--z1-card, #1c2128);border:1px solid var(--border-medium, var(--border));border-radius:20px;box-shadow:0 16px 64px #0006,0 4px 16px #0003;z-index:1000;overflow:hidden;display:flex;flex-direction:column;animation:search-modal-slide-in .15s ease-out}[data-theme=light] .profile-modal{background:var(--z3-content, #faf7f2);border-color:#e8e0d4;box-shadow:0 16px 64px #2a2a2a2e,0 4px 16px #2a2a2a1a}.profile-modal-close{position:absolute;top:16px;right:16px;z-index:2;background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.profile-modal-close:hover{color:var(--text-primary);background:#ffffff0f}.profile-modal-body{overflow-y:auto;padding:24px;flex:1;scrollbar-width:none}.profile-modal-body::-webkit-scrollbar{display:none}.profile-modal-body .console-container{padding:0;max-width:none}.portal-content{position:fixed;inset:8px 8px 8px 72px;transition:left .2s ease,right .2s ease;display:flex;flex-direction:column;background:#0e0e12b3;border-radius:var(--module-radius);border:1px solid rgba(255,255,255,.06);overflow:hidden;z-index:51;box-shadow:0 4px 24px #0006}[data-theme=light] .portal-content{background:#f2f0e8b3;border:1px solid rgba(0,0,0,.08);box-shadow:0 4px 24px #00000014}.portal-content.oracle-page{padding:0;overflow:hidden}.portal-content-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:40px 40px 60px;opacity:0;animation:fadeUp .6s ease-out forwards;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent}.portal-content-body::-webkit-scrollbar{width:5px}.portal-content-body::-webkit-scrollbar-track{background:transparent}.portal-content-body::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}.portal-content-body::-webkit-scrollbar-thumb:hover{background:#ffffff40}.mobile-menu-toggle{display:none;position:fixed;top:16px;left:16px;z-index:200;background:none;border:none;cursor:pointer;padding:8px}.hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:20px;height:16px}.hamburger span{display:block;width:100%;height:2px;background:var(--accent-a50);transition:all .3s ease;border-radius:1px;transform-origin:center center}.hamburger.open span:nth-child(1){transform:translateY(3.5px) rotate(45deg)}.hamburger.open span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu-overlay{display:none}.section-label{font-size:9px;text-transform:uppercase;letter-spacing:.2em;color:var(--accent-a30);font-weight:500;margin-bottom:12px}.card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--accent-a06);box-shadow:var(--shadow);transition:box-shadow .3s,transform .3s,border-color .3s;overflow:hidden}.card:hover{box-shadow:var(--shadow-hover);border-color:var(--accent-a12)}.card-body{padding:28px}.row{display:grid;gap:16px;margin-bottom:16px}.row-hero{grid-template-columns:1fr 1fr}.row-metrics{grid-template-columns:repeat(4,1fr)}.row-charts{grid-template-columns:2fr 1fr}.row-bottom{grid-template-columns:1fr 1fr 1fr}@media(max-width:1024px){.row-hero{grid-template-columns:1fr}.row-metrics{grid-template-columns:repeat(2,1fr)}.row-charts,.row-bottom{grid-template-columns:1fr}}@media(max-width:768px){.mobile-menu-toggle,.mobile-menu-overlay{display:block}.portal-railbar{width:100%;background:var(--bg-sidebar-mobile);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:100;align-items:center;justify-content:center;padding-top:80px}.portal-railbar.mobile-open{opacity:1;pointer-events:auto}.portal-content{inset:52px 0 0;border-radius:0;border:none;box-shadow:none}.portal-content-body{padding:20px 16px 48px}}@media(max-width:600px){.row-metrics{grid-template-columns:1fr}}.paradigm-sync-btn:hover:not(:disabled){border-color:var(--text-secondary)!important;color:var(--text-primary)!important}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-theme=light] .scanlines,[data-theme=light] .vignette{display:none}[data-theme=light] .portal-content{background:#f2f0e8b3;border:1px solid rgba(0,0,0,.08)}[data-theme=light] .portal-content-body{scrollbar-color:rgba(0,0,0,.1) transparent}[data-theme=light] .portal-content-body::-webkit-scrollbar-thumb{background:#0000001a}[data-theme=light] .portal-content-body::-webkit-scrollbar-thumb:hover{background:#0003}[data-theme=light] .doctor-suggestion-btn:hover,[data-theme=light] .doctor-new-chat-btn:hover{background:#4a7a000f}[data-theme=light] .doctor-session-dropdown{background:var(--bg-card);box-shadow:0 4px 16px #0000001a}[data-theme=light] .doctor-message-content .doctor-inline-code{background:#4a7a000f;border-color:#4a7a001f}.glass-svg-filters{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}.portal-content:before,.portal-content:after{content:"";position:absolute;left:0;right:0;height:36px;pointer-events:none;z-index:10;opacity:0;transition:opacity .4s cubic-bezier(.4,0,.2,1);will-change:opacity;contain:layout style}.portal-content:before{top:0;border-radius:var(--module-radius) var(--module-radius) 0 0;mask-image:linear-gradient(to bottom,black 0%,rgba(0,0,0,.5) 10%,rgba(0,0,0,.1) 20%,transparent 30%);-webkit-mask-image:linear-gradient(to bottom,black 0%,rgba(0,0,0,.5) 10%,rgba(0,0,0,.1) 20%,transparent 30%)}.portal-content:after{bottom:0;border-radius:0 0 var(--module-radius) var(--module-radius);mask-image:linear-gradient(to top,black 0%,rgba(0,0,0,.5) 10%,rgba(0,0,0,.1) 20%,transparent 30%);-webkit-mask-image:linear-gradient(to top,black 0%,rgba(0,0,0,.5) 10%,rgba(0,0,0,.1) 20%,transparent 30%)}.portal-content.glass-edge-top:before{opacity:1;backdrop-filter:url(#glass-refraction-top);-webkit-backdrop-filter:url(#glass-refraction-top);background:linear-gradient(to bottom,rgba(120,160,120,.03),transparent)}.portal-content.glass-edge-bottom:after{opacity:1;backdrop-filter:url(#glass-refraction-bottom);-webkit-backdrop-filter:url(#glass-refraction-bottom);background:linear-gradient(to top,rgba(120,160,120,.03),transparent)}[data-theme=dark] .portal-content.glass-edge-top{box-shadow:0 3px 8px #0000004d,0 6px 20px #0003,inset 0 1px #fff5e626,inset 0 12px 20px -10px #0003}[data-theme=dark] .portal-content.glass-edge-bottom{box-shadow:0 3px 8px #0000004d,0 6px 20px #0003,inset 0 -1px #fff5e61a,inset 0 -12px 20px -10px #00000026}[data-theme=dark] .portal-content.glass-edge-top.glass-edge-bottom{box-shadow:0 3px 8px #0000004d,0 6px 20px #0003,inset 0 1px #fff5e626,inset 0 12px 20px -10px #0003,inset 0 -1px #fff5e61a,inset 0 -12px 20px -10px #00000026}.portal-content.glass-edge-top{box-shadow:0 3px 8px #2a2a2a0f,0 6px 20px #2a2a2a0a,inset 0 1px #ffffff80,inset 0 12px 20px -10px #0000000f}.portal-content.glass-edge-bottom{box-shadow:0 3px 8px #2a2a2a0f,0 6px 20px #2a2a2a0a,inset 0 -1px #ffffff59,inset 0 -12px 20px -10px #0000000a}.portal-content.glass-edge-top.glass-edge-bottom{box-shadow:0 3px 8px #2a2a2a0f,0 6px 20px #2a2a2a0a,inset 0 1px #ffffff80,inset 0 12px 20px -10px #0000000f,inset 0 -1px #ffffff59,inset 0 -12px 20px -10px #0000000a}[data-theme=light] .portal-content.glass-edge-top:before{background:linear-gradient(to bottom,rgba(80,120,80,.04),transparent)}[data-theme=light] .portal-content.glass-edge-bottom:after{background:linear-gradient(to top,rgba(80,120,80,.04),transparent)}.portal-content.resizing:before,.portal-content.resizing:after{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;opacity:0!important;transition:none!important}
