:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:oklch(99.3% .002 255);--surface:oklch(100% 0 0);--surface-subtle:oklch(97% .006 255);--ink:oklch(20.5% .04 263);--muted:oklch(43% .03 263);--faint:oklch(65% .02 263);--rule:oklch(89% .013 258);--rule-strong:oklch(80% .022 258);--primary:oklch(55% .23 260);--primary-hover:oklch(47% .23 263);--primary-soft:oklch(94% .04 258);--positive:oklch(49% .14 158);--sport:oklch(45% .14 153);--sport-soft:oklch(93% .05 153);--warning:oklch(54% .17 48);--missing:oklch(48% .026 260);--radius-xl:1.35rem;--radius-lg:1.05rem;--radius-md:.82rem;--radius-sm:.68rem;--shadow-card:0 .8rem 2.4rem oklch(24% .05 263/.08);--shadow-button:0 .55rem 1.35rem oklch(43% .2 265/.3);color:var(--ink);background:var(--canvas);font-synthesis:none;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--canvas);min-width:320px;min-height:100svh;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}svg{display:block}h1,h2,p{margin-top:0}h1,h2{text-wrap:balance}h1{letter-spacing:-.045em;margin-bottom:0;font-size:2.55rem;font-weight:790;line-height:1.05}h2{letter-spacing:-.018em;margin-bottom:.35rem;font-size:1.1rem;line-height:1.28}p{color:var(--muted);text-wrap:pretty;font-size:.875rem;line-height:1.55}button,a,input,.date-picker-button{transition:color .17s,border-color .17s,background-color .17s,box-shadow .17s,transform .17s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid oklch(70% .18 255/.65)}button:active:not(:disabled){transform:translateY(1px)scale(.985)}.app-shell{min-height:100svh}.side-nav{z-index:20;width:15rem;min-height:100svh;color:var(--surface);background:radial-gradient(circle at 28% 18%,oklch(39% .18 267/.48),#0000 31%),radial-gradient(circle at 105% 64%,oklch(32% .15 286/.28),#0000 36%),linear-gradient(oklch(18% .06 258),oklch(13.5% .075 278) 58%,oklch(10.5% .045 260));flex-direction:column;padding:.85rem 1.05rem 1.4rem;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto;box-shadow:.6rem 0 2rem oklch(13% .07 268/.14)}.wordmark{width:fit-content;color:var(--surface);letter-spacing:-.018em;align-items:center;gap:.78rem;margin:0 .55rem 1.6rem;font-size:1rem;font-weight:760;text-decoration:none;display:inline-flex}.wordmark-mark{width:2.1rem;height:2.1rem;color:var(--surface);letter-spacing:-.045em;background:linear-gradient(145deg,oklch(67% .24 249),oklch(45% .27 280));border:1px solid oklch(84% .1 252/.65);border-radius:.75rem;place-items:center;font-size:.76rem;font-weight:880;display:grid;box-shadow:0 .55rem 1.25rem oklch(49% .23 267/.34),inset 0 1px oklch(100% 0 0/.28)}.wordmark-name{white-space:nowrap}.side-nav nav{gap:.75rem;display:grid}.side-nav nav :is(a,button){color:oklch(92% .015 252);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.9rem;align-items:center;gap:.9rem;min-height:2.75rem;padding:.75rem .9rem;font-size:.875rem;font-weight:660;text-decoration:none;display:flex}.side-nav nav :is(a,button) svg{stroke-width:1.75px;flex:none;width:1.3rem;height:1.3rem}.side-nav nav :is(a,button):hover{color:var(--surface);background:oklch(52% .12 265/.2);border-color:oklch(80% .08 257/.22)}.side-nav nav :is(a,button).active{color:var(--surface);background:linear-gradient(135deg,oklch(48% .25 255),oklch(36% .24 281));border-color:oklch(74% .15 252/.32);box-shadow:0 .65rem 1.4rem oklch(12% .08 270/.32),inset 0 1px oklch(100% 0 0/.18)}.side-nav :is(a,button):focus-visible{outline-color:oklch(90% .08 245/.9)}.privacy-note{color:oklch(92% .018 252);background:linear-gradient(135deg,oklch(70% .08 255/.12),oklch(54% .11 280/.08));border:1px solid oklch(84% .06 255/.25);border-radius:.95rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.62rem;min-height:3.25rem;margin:auto 0 0;padding:.5rem .65rem;display:grid;box-shadow:inset 0 1px oklch(100% 0 0/.08)}.privacy-icon{color:oklch(88% .07 248);background:oklch(68% .15 258/.16);border-radius:50%;place-items:center;width:1.8rem;height:1.8rem;display:grid}.privacy-icon svg,.privacy-settings{width:.95rem;height:.95rem}.privacy-settings{color:oklch(77% .025 252)}.privacy-note p{color:inherit;margin:0;font-size:.65rem;font-weight:590;line-height:1.35}main{min-width:0;min-height:100svh;margin-left:15rem;padding:.75rem clamp(1.5rem,2.8vw,2.5rem) 2.25rem}main>*{width:min(100%,92rem);margin-left:auto;margin-right:auto}.page-header{justify-content:space-between;align-items:center;gap:1.5rem;min-height:5rem;padding-bottom:1.1rem;display:flex}.section-label{color:var(--primary-hover);margin:0 0 .35rem;font-size:.76rem;font-weight:740}.header-actions,.date-controls,.date-controls button,.date-picker-button,.refresh-button,.add-device-button,.logout-button{align-items:center;display:flex}.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:.58rem}.date-controls{border:1px solid var(--rule-strong);border-radius:var(--radius-md);background:var(--surface);overflow:hidden;box-shadow:0 .35rem 1rem oklch(25% .04 260/.06)}.date-controls button,.date-picker-button,.logout-button{width:2.5rem;height:2.5rem;color:var(--ink);background:var(--surface);justify-content:center;padding:0}.date-controls button{border:0;border-right:1px solid var(--rule)}.date-controls button:last-child{border-right:0}.date-controls button:hover:not(:disabled),.date-picker-button:hover,.logout-button:hover:not(:disabled){color:var(--primary-hover);background:var(--primary-soft)}.date-controls button:disabled{color:var(--faint);background:var(--surface-subtle)}.date-controls svg,.date-picker-button>svg,.logout-button svg{width:1.05rem;height:1.05rem}.date-picker-button{border:1px solid var(--rule-strong);border-radius:var(--radius-md);cursor:pointer;position:relative;overflow:hidden;box-shadow:0 .35rem 1rem oklch(25% .04 260/.06)}.date-picker-button:focus-within{outline-offset:3px;outline:3px solid oklch(70% .18 255/.65)}.date-picker-button input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.date-picker-button:has(input:disabled){color:var(--faint);background:var(--surface-subtle);cursor:not-allowed}.date-picker-button input:disabled{cursor:not-allowed}.refresh-button{border-radius:var(--radius-md);min-height:2.5rem;color:var(--surface);box-shadow:var(--shadow-button);background:linear-gradient(135deg,oklch(59% .24 250),oklch(45% .25 278));border:1px solid oklch(59% .22 253);justify-content:center;gap:.48rem;padding:0 1.05rem;font-size:.79rem;font-weight:720}.refresh-button svg{width:1rem;height:1rem}.refresh-button:hover:not(:disabled){background:linear-gradient(135deg,oklch(54% .24 250),oklch(40% .25 278));border-color:oklch(55% .23 255);box-shadow:0 .7rem 1.65rem oklch(43% .22 265/.38)}.add-device-button{border:1px solid var(--rule-strong);border-radius:var(--radius-md);min-height:2.5rem;color:var(--primary-hover);background:var(--surface);padding:0 .95rem;font-size:.79rem;font-weight:720;box-shadow:0 .35rem 1rem oklch(25% .04 260/.06)}.add-device-button:hover:not(:disabled){background:var(--primary-soft);border-color:oklch(64% .16 257)}.add-device-button:disabled{color:var(--faint);border-color:var(--rule);background:var(--surface-subtle);box-shadow:none}.logout-button{border:1px solid var(--rule-strong);border-radius:var(--radius-md);width:auto;min-height:2.5rem;color:var(--primary-hover);justify-content:center;gap:.45rem;padding:0 .95rem;font-size:.79rem;font-weight:720;box-shadow:0 .35rem 1rem oklch(25% .04 260/.06)}.refresh-button:disabled,.logout-button:disabled{color:var(--faint);border-color:var(--rule);background:var(--surface-subtle);box-shadow:none}.logout-error{border-radius:var(--radius-md);color:oklch(42% .15 42);background:oklch(97% .025 75);border:1px solid oklch(75% .1 48);margin-top:-.35rem;margin-bottom:1rem;padding:.68rem .85rem;font-size:.8rem;font-weight:650}.dashboard-content,.analytics-content,.health-content{gap:1.25rem;display:grid}.location-content{border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-card);gap:1rem;padding:clamp(1rem,2.2vw,1.5rem);display:grid;container-type:inline-size}.location-tabs{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--surface-subtle);gap:.25rem;width:fit-content;padding:.25rem;display:flex}.location-tabs button{border-radius:calc(var(--radius-md) - .2rem);min-width:5.5rem;min-height:2.35rem;color:var(--muted);background:0 0;border:1px solid #0000;padding:0 .85rem;font-size:.78rem;font-weight:700}.location-tabs button:hover{color:var(--primary-hover)}.location-tabs button[aria-current=page]{border-color:var(--rule-strong);color:var(--ink);background:var(--surface);box-shadow:0 .2rem .6rem oklch(25% .04 260/.08)}.location-tab-panel,.sports-content{min-width:0}.sports-content{gap:1rem;display:grid}.sports-summary,.sports-trend,.sports-calendar,.location-places{border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);min-width:0;box-shadow:var(--shadow-card);padding:clamp(1rem,2.2vw,1.5rem)}.sports-summary-heading,.sports-trend-heading,.sports-calendar-heading,.location-places-heading{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.sports-summary-heading h2,.sports-trend-heading h2,.sports-calendar-heading h2,.location-places-heading h2{font-size:1.3rem}.sports-summary-heading>p,.sports-trend-heading>p,.sports-calendar-heading>p,.location-places-heading>p{max-width:48ch;margin:0}.sports-comparison{grid-template-columns:repeat(2,minmax(10rem,1fr)) minmax(12rem,1.25fr);align-items:stretch;margin:0;padding-top:1rem;display:grid}.sports-comparison>div{border-right:1px solid var(--rule);align-content:center;gap:.25rem;padding:.4rem 1.25rem;display:grid}.sports-comparison>div:first-child{padding-left:0}.sports-comparison dt{color:var(--muted);font-size:.72rem;font-weight:700}.sports-comparison dd{color:var(--ink);gap:.25rem;margin:0;font-size:.82rem;font-weight:680;display:grid}.sports-comparison dd strong{color:var(--sport);font-variant-numeric:tabular-nums;margin-right:.2rem;font-size:1.75rem;line-height:1}.sports-comparison .sports-range{color:var(--muted);font-size:.7rem}.sports-comparison>.sports-comparison-note{border-right:0;padding-right:0}.sports-comparison-note dd>span{color:oklch(33% .09 153);font-weight:700}.sports-trend-chart{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--surface-subtle);margin-top:1rem;padding:.9rem 1rem .75rem}.sports-trend-bars{grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch;gap:clamp(.2rem,1vw,.7rem);height:9rem;display:grid}.sports-trend-column{text-align:center;grid-template-rows:1.15rem minmax(0,1fr);gap:.3rem;min-width:0;display:grid}.sports-trend-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.68rem;font-weight:760}.sports-trend-track{border-bottom:1px solid var(--rule-strong);justify-content:center;align-items:flex-end;min-height:0;display:flex}.sports-trend-bar{background:oklch(67% .11 153);border-radius:.42rem .42rem .12rem .12rem;width:min(100%,2.2rem)}.sports-trend-bar.has-visits{min-height:.35rem}.sports-trend-bar.current{background:var(--sport)}.sports-trend-axis{color:var(--muted);text-align:center;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(.2rem,1vw,.7rem);margin-top:.45rem;font-size:.65rem;font-weight:680;display:grid}.sports-trend-axis time{min-width:0}.sports-trend-axis time:last-child{color:var(--sport)}.sports-calendar-heading{margin-bottom:.9rem}.sports-calendar-heading p{margin-bottom:0}.sports-empty,.location-places-empty{border:1px dashed var(--rule-strong);border-radius:var(--radius-md);background:var(--surface-subtle);margin-bottom:.9rem;padding:.85rem 1rem}.sports-empty strong,.location-places-empty strong{font-size:.84rem}.sports-empty p,.location-places-empty p{margin:.2rem 0 0}.sports-calendar-scroll{width:100%;min-width:0;max-width:100%;overflow-x:auto}.sports-calendar table{border-collapse:separate;border-spacing:0 .28rem;width:100%;min-width:43rem;font-size:.72rem}.sports-calendar th{color:var(--muted);font-weight:700}.sports-calendar thead th{text-align:center;padding:0 .35rem .35rem;font-size:.66rem}.sports-calendar thead th:first-child{text-align:left}.sports-calendar tbody tr{background:var(--surface-subtle)}.sports-calendar tbody tr.current{background:var(--sport-soft)}.sports-calendar tbody th{border-radius:var(--radius-sm) 0 0 var(--radius-sm);width:8.5rem;color:var(--ink);text-align:left;white-space:nowrap;padding:.5rem .65rem}.sports-calendar tbody th span{color:var(--sport);margin-bottom:.1rem;font-size:.62rem;display:block}.sports-calendar td{text-align:center;padding:.3rem}.sport-day{border:1px solid var(--rule);width:2rem;height:2rem;color:var(--muted);background:var(--surface);font-variant-numeric:tabular-nums;border-radius:.55rem;place-items:center;margin:auto;font-size:.7rem;font-weight:760;display:grid}.sport-day[data-level="1"]{color:oklch(31% .1 153);background:oklch(88% .09 153);border-color:oklch(76% .1 153)}.sport-day[data-level="2"]{color:var(--surface);background:oklch(55% .14 153);border-color:oklch(55% .14 153)}.sport-day[data-level="3"]{color:var(--surface);background:oklch(38% .13 153);border-color:oklch(38% .13 153)}.sport-day.future{color:var(--faint);background:0 0;border-style:dashed}.sports-calendar .sport-week-total{border-radius:0 var(--radius-sm) var(--radius-sm) 0;width:4rem;color:var(--ink);font-variant-numeric:tabular-nums;padding-right:.75rem;font-weight:800}.sports-calendar-note{margin:.75rem 0 0;font-size:.7rem}.location-places ul{margin:0;padding:0;list-style:none}.location-places li{border-bottom:1px solid var(--rule);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;min-height:4rem;padding:.65rem 0;display:grid}.location-places li:last-child{border-bottom:0}.location-place-icon{width:2.3rem;height:2.3rem;color:var(--sport);background:var(--sport-soft);border-radius:50%;place-items:center;display:grid}.location-place-icon svg{width:1.05rem;height:1.05rem}.location-places li strong{overflow-wrap:anywhere;min-width:0;font-size:.88rem}.location-places li>span:last-child{color:oklch(33% .1 153);background:var(--sport-soft);border-radius:999px;padding:.3rem .55rem;font-size:.68rem;font-weight:720}.location-heading{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.location-heading h2{font-size:1.3rem}.location-heading p:last-child{max-width:48ch;margin:0}.location-loading,.location-empty,.location-notice,.location-alert,.location-count{margin:0}.location-alert{color:oklch(42% .15 42);font-weight:650}.location-notice,.location-count{font-weight:650}.location-observation-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;display:flex}.location-map{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--surface-subtle);position:relative;overflow:hidden}.location-plot{width:100%;height:auto;max-height:18rem;color:var(--primary-hover);display:block}.location-plot circle{fill:var(--surface);stroke:currentColor;stroke-width:2.5px}.location-leaflet-map{height:clamp(14rem,40vw,22rem);color:var(--primary-hover)}.location-item-map{grid-column:1/-1;width:100%;min-width:0;margin-top:.25rem}.location-leaflet-map .leaflet-control-attribution{border-radius:var(--radius-sm) 0 0;color:var(--muted);background:oklch(100% 0 0/.9);padding:.2rem .4rem;font-size:.62rem;line-height:1.3}.location-leaflet-map .leaflet-control-attribution a:hover{color:var(--primary-hover)}.location-observations{border-top:1px solid var(--rule);margin:0;padding:0;list-style:none}.location-observations li{border-bottom:1px solid var(--rule);color:var(--muted);overflow-wrap:anywhere;grid-template-columns:5rem 8rem 8rem minmax(7rem,1fr) minmax(9rem,1fr) minmax(8rem,1fr) minmax(10rem,auto);align-items:start;gap:.5rem;padding:.75rem 0;font-size:.78rem;display:grid}.location-observations strong{color:var(--ink)}.location-observations time{font-variant-numeric:tabular-nums}.location-place-actions{flex-wrap:wrap;align-items:center;gap:.45rem;min-width:0;display:flex}.location-place-summary{gap:.08rem;min-width:0;display:grid}.location-place-name{overflow-wrap:anywhere}.location-place-summary>span,.location-place-category>span{color:var(--muted);font-size:.68rem;font-weight:680}.location-place-actions button,.location-place-controls button,.location-sample-toggle{border:1px solid var(--rule-strong);border-radius:var(--radius-sm);min-height:2.35rem;color:var(--primary-hover);background:var(--surface);padding:.35rem .72rem;font-size:.74rem;font-weight:700}.location-place-actions button:hover:not(:disabled),.location-place-controls button:hover:not(:disabled),.location-sample-toggle:hover{background:var(--primary-soft);border-color:oklch(64% .16 257)}.location-place-form{border:1px solid var(--rule-strong);border-radius:var(--radius-md);background:var(--surface-subtle);grid-column:1/-1;grid-template-columns:minmax(12rem,1fr) minmax(6rem,auto) auto;align-items:end;gap:.65rem;padding:.8rem;display:grid}.location-place-field,.location-place-category{gap:.3rem;display:grid}.location-place-field label,.location-place-category>span{color:var(--muted);font-size:.68rem;font-weight:700}.location-place-field input{border:1px solid var(--rule-strong);border-radius:var(--radius-sm);width:100%;min-height:2.35rem;color:var(--ink);background:var(--surface);padding:0 .7rem}.location-place-field input:hover:not(:disabled){border-color:var(--faint)}.location-place-field input:disabled{color:var(--faint);background:var(--surface-subtle)}.location-place-category{align-content:center;min-height:2.35rem}.location-place-category strong{color:var(--ink);font-size:.78rem}.location-place-controls{flex-wrap:wrap;gap:.45rem;display:flex}.location-place-controls button[type=submit]{border-color:var(--primary);color:var(--surface);background:var(--primary)}.location-place-controls button[type=submit]:hover:not(:disabled){border-color:var(--primary-hover);background:var(--primary-hover)}.location-place-controls .location-place-remove{color:oklch(42% .15 42);border-color:oklch(72% .11 48)}.location-place-controls button:disabled,.location-place-actions button:disabled{color:var(--faint);border-color:var(--rule);background:var(--surface-subtle);cursor:not-allowed}.location-place-error,.location-place-status{grid-column:1/-1;margin:0;font-size:.75rem;font-weight:650}.location-place-error{color:oklch(42% .15 42)}.location-place-status{color:var(--muted)}.health-controls{flex:1;justify-content:flex-end;align-items:center;gap:.58rem;display:flex}.health-search{border:1px solid var(--rule-strong);border-radius:var(--radius-md);width:min(22rem,36vw);min-height:2.5rem;color:var(--ink);background:var(--surface);padding:0 .85rem;font-size:.82rem;box-shadow:0 .35rem 1rem oklch(25% .04 260/.06)}.health-search::placeholder{color:var(--muted)}.health-search:disabled{color:var(--faint);background:var(--surface-subtle);box-shadow:none}.health-section{border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-card);padding:clamp(1rem,2.2vw,1.5rem)}.health-section>h2{margin-bottom:.8rem}.health-section>p{margin-bottom:0}.health-alert{color:oklch(42% .15 42);font-weight:650}.health-notice{color:var(--muted);font-weight:650}.health-loading{color:var(--muted);padding:1rem 0}.health-labs{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.health-labs details{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.health-labs summary{min-height:3.6rem;color:var(--ink);background:var(--surface-subtle);cursor:pointer;grid-template-columns:minmax(9rem,1fr) auto minmax(7rem,auto);align-items:center;gap:1rem;padding:.7rem 2.75rem .7rem .9rem;list-style:none;display:grid;position:relative}.health-labs summary::-webkit-details-marker{display:none}.health-labs summary:after{border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);content:"";width:.48rem;height:.48rem;transition:transform .17s;position:absolute;right:1rem;transform:rotate(45deg)translateY(-2px)}.health-labs details[open] summary:after{transform:rotate(225deg)translate(-2px,-2px)}.health-labs summary:hover{background:oklch(95.5% .012 258)}.health-summary-marker{font-size:.9rem;font-weight:740}.health-summary-result{font-variant-numeric:tabular-nums;font-size:.9rem;font-weight:720}.health-summary-date{color:var(--muted);text-align:right;font-size:.75rem}.health-history{border-top:1px solid var(--rule);gap:1rem;padding:1rem .9rem .9rem;display:grid}.health-trend{width:100%;height:7rem;color:var(--primary-hover)}.health-trend path{stroke:var(--rule-strong);stroke-width:1px}.health-trend polyline{fill:none;stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.health-trend circle{fill:var(--surface);stroke:currentColor;stroke-width:2.5px}.health-table-scroll{max-width:100%;overflow-x:auto}.health-table-scroll table{border-collapse:collapse;width:100%;min-width:46rem;color:var(--ink);text-align:left;font-size:.76rem}.health-table-scroll th{border-bottom:1px solid var(--rule-strong);color:var(--muted);padding:0 .7rem .55rem;font-size:.68rem;font-weight:720}.health-table-scroll td{border-bottom:1px solid var(--rule);vertical-align:top;padding:.7rem}.health-table-scroll tbody tr:last-child td{border-bottom:0}.health-table-scroll td:first-child,.health-table-scroll td:nth-child(2){white-space:nowrap}.health-provenance{color:var(--muted);margin:0;font-size:.75rem}.health-source{width:fit-content;color:var(--primary-hover);font-size:.78rem;font-weight:680}.health-source:hover{text-decoration-thickness:2px}.health-records{gap:0;margin:0;padding:0;list-style:none;display:grid}.health-records li{border-top:1px solid var(--rule);color:var(--muted);flex-wrap:wrap;gap:.35rem .8rem;padding:.9rem 0;font-size:.78rem;display:flex}.health-records li:first-child{border-top:0;padding-top:0}.health-records li>strong{color:var(--ink);font-size:.9rem}.health-records .health-provenance,.health-records .health-source{flex-basis:100%}.analytics-topics{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--surface-subtle);gap:.35rem;padding:.28rem;display:flex}.analytics-topics button{border-radius:calc(var(--radius-md) - .2rem);min-height:2.3rem;color:var(--muted);background:0 0;border:1px solid #0000;padding:0 .8rem;font-size:.78rem;font-weight:700}.analytics-topics button:hover{color:var(--primary-hover)}.analytics-topics button[aria-pressed=true]{border-color:var(--rule-strong);color:var(--ink);background:var(--surface);box-shadow:0 .2rem .6rem oklch(25% .04 260/.08)}.application-categorization{border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-card);padding:clamp(1rem,2.2vw,1.7rem)}.categorization-heading{border-bottom:1px solid var(--rule);padding-bottom:1rem}.categorization-heading p,.categorization-empty,.categorization-error{margin-bottom:0}.categorization-error{color:oklch(42% .15 42);margin-top:.8rem;font-size:.78rem;font-weight:650}.categorization-list{gap:.75rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.categorization-list li{border-top:1px solid var(--rule);flex-wrap:wrap;align-items:end;gap:.7rem 1rem;padding-top:.75rem;display:flex}.categorization-list li:first-child{border-top:0;padding-top:0}.categorization-list strong{min-width:10rem;padding-bottom:.45rem;font-size:.84rem}.categorization-list label{min-width:8.5rem;color:var(--muted);gap:.3rem;font-size:.68rem;font-weight:650;display:grid}.categorization-list select{border:1px solid var(--rule-strong);border-radius:var(--radius-sm);min-height:2.25rem;color:var(--ink);background:var(--surface);padding:0 .55rem}.categorization-list select:disabled{color:var(--faint);background:var(--surface-subtle)}.work-life-work{--application-ink:oklch(38% .17 251);background:oklch(93% .05 250)}.work-life-life{--application-ink:oklch(34% .12 157);background:oklch(93% .055 157)}.application-distribution{border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-card);padding:clamp(1rem,2.2vw,1.7rem)}.distribution-heading{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:1.5rem;padding-bottom:1.25rem;display:flex}.distribution-heading h2{margin-bottom:.35rem;font-size:1.15rem}.distribution-heading p{max-width:64ch;margin-bottom:0}.application-legend{max-width:36rem;color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:.55rem 1rem;margin:.2rem 0 0;padding:0;font-size:.7rem;font-weight:630;list-style:none;display:flex}.application-legend li{white-space:nowrap;align-items:center;gap:.4rem;display:inline-flex}.application-swatch{border:1px solid oklch(72% .05 260/.35);border-radius:.2rem;flex:none;width:.68rem;height:.68rem}.distribution-chart{gap:.2rem;padding-top:1.4rem;display:grid}.distribution-row{grid-template-columns:7.75rem minmax(0,1fr) 4.5rem;align-items:center;gap:.9rem;min-height:2.7rem;display:grid}.distribution-row time,.distribution-total{color:var(--muted);font-size:.72rem;font-weight:650}.distribution-row time{color:var(--ink)}.distribution-total{text-align:right;white-space:nowrap}.distribution-track{background:var(--surface-subtle);border:1px solid oklch(82% .02 260);border-radius:.72rem;min-width:0;height:1.1rem;display:flex;overflow:hidden;box-shadow:inset 0 1px oklch(100% 0 0/.28)}.distribution-track.empty{background:oklch(97.5% .004 260);border-style:dashed;justify-content:center;align-items:center}.distribution-empty-label{color:var(--muted);font-size:.68rem;font-weight:620}.distribution-segment{min-width:2px;color:var(--application-ink);text-overflow:ellipsis;white-space:nowrap;justify-content:center;align-items:center;padding:0 .55rem;font-size:.67rem;font-weight:720;display:flex;overflow:hidden;box-shadow:inset -1px 0 oklch(65% .04 260/.22)}.application-color-0{--application-ink:oklch(40% .17 302);background:oklch(93% .055 303)}.application-color-1{--application-ink:oklch(38% .17 251);background:oklch(93% .05 250)}.application-color-2{--application-ink:oklch(34% .12 157);background:oklch(93% .055 157)}.application-color-3{--application-ink:oklch(42% .14 48);background:oklch(94% .055 68)}.application-color-4{--application-ink:oklch(38% .17 277);background:oklch(93% .05 277)}.application-color-5{--application-ink:oklch(38% .03 260);background:oklch(91% .018 260)}.analytics-unavailable{margin-top:0}.overview{gap:1.2rem;display:grid}.summary-banner{isolation:isolate;border-radius:var(--radius-xl);background:linear-gradient(112deg,oklch(90% .065 298) 0%,oklch(91% .055 264) 47%,oklch(91% .055 180) 100%);border:1px solid oklch(84% .045 267);grid-template-columns:minmax(0,1fr) minmax(15.5rem,16rem);align-items:center;gap:1.5rem;min-height:11.5rem;padding:1.3rem 1.5rem;display:grid;position:relative;overflow:hidden;box-shadow:0 1rem 2.8rem oklch(39% .08 270/.12)}.summary-banner:before{z-index:-1;content:"";background:radial-gradient(at 55% 80%,#0000 0 41%,oklch(100% 0 0/.48) 41.4% 41.9%,#0000 42.3% 49%),radial-gradient(at 55% 80%,#0000 0 53%,oklch(100% 0 0/.34) 53.4% 54%,#0000 54.4% 62%),radial-gradient(at 55% 80%,#0000 0 66%,oklch(100% 0 0/.22) 66.4% 67%,#0000 67.4%);border-radius:50%;position:absolute;inset:-40% -8% -70% 18%;transform:rotate(-7deg)}.summary-banner:after{z-index:-1;content:"";background:radial-gradient(circle at 8% 12%,oklch(100% 0 0/.3),#0000 24%),radial-gradient(circle at 88% 28%,oklch(100% 0 0/.34),#0000 30%);position:absolute;inset:0}.overview-heading,.current-device{z-index:1;position:relative}.overview-heading{flex-direction:column;align-items:flex-start;gap:.75rem;min-width:0;display:flex}.summary-icon{color:oklch(48% .22 280);background:oklch(100% 0 0/.82);border:1px solid oklch(100% 0 0/.82);border-radius:50%;place-items:center;width:2.5rem;height:2.5rem;display:grid;box-shadow:0 .65rem 1.5rem oklch(39% .12 275/.14),inset 0 1px oklch(100% 0 0/.9)}.summary-icon svg{width:1.15rem;height:1.15rem}.summary-copy h2{color:oklch(35% .07 278);margin-bottom:.5rem;font-size:.8rem;font-weight:720}.summary-statement{max-width:32ch;color:var(--ink);letter-spacing:-.035em;margin:0;font-size:1.4rem;font-weight:790;line-height:1.22}.current-device{background:oklch(100% 0 0/.74);border:1px solid oklch(100% 0 0/.78);border-radius:1.15rem;align-items:center;gap:.85rem;min-width:15.5rem;min-height:5.75rem;padding:.85rem;display:flex;box-shadow:0 1rem 2.5rem oklch(32% .08 265/.13),inset 0 1px oklch(100% 0 0/.88)}.current-device-icon{color:oklch(43% .15 162);background:oklch(91% .06 158);border-radius:50%;flex:none;place-items:center;width:3.25rem;height:3.25rem;display:grid;position:relative;box-shadow:inset 0 0 0 1px oklch(75% .08 158/.35)}.current-device-icon svg{stroke-width:1.8px;width:1.4rem;height:1.4rem}.current-device strong,.current-device p{display:block}.current-device strong{color:var(--ink);font-size:.9rem;font-weight:760;line-height:1.3}.current-device p{color:oklch(39% .032 263);overflow-wrap:anywhere;max-width:17rem;margin:.35rem 0 0;font-size:.75rem;line-height:1.45}.state-marker{border:3px solid oklch(96% .015 160);border-radius:50%;width:.65rem;height:.65rem;position:absolute;bottom:.18rem;right:.1rem}.state-marker.live{background:var(--positive)}.state-marker.quiet{background:var(--missing)}.state-marker.unavailable{background:var(--warning)}.metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:1.2rem;margin:0;display:grid}.metric{--metric-color:var(--primary-hover);--metric-tint:var(--primary-soft);border:1px solid var(--rule);background:var(--surface);min-width:0;min-height:11.3rem;box-shadow:var(--shadow-card);border-radius:1.08rem;padding:1rem}.metric-purple{--metric-color:oklch(51% .22 302);--metric-tint:oklch(93% .055 303)}.metric-balance-card{--metric-color:oklch(56% .25 275);--metric-tint:oklch(94% .045 290);min-height:12rem;padding:.875rem 1.25rem;position:relative}.metric-balance-card dt{gap:.55rem;font-size:.86rem}.metric-balance-card .metric-icon{width:2.15rem;height:2.15rem}.metric-blue{--metric-color:oklch(50% .22 251);--metric-tint:oklch(93% .05 250)}.metric-sleep{--metric-color:oklch(67% .13 195);--metric-tint:oklch(96% .028 195)}.metric-green{--metric-color:oklch(47% .16 157);--metric-tint:oklch(93% .055 157)}.metric-indigo{--metric-color:oklch(48% .22 277);--metric-tint:oklch(93% .05 277)}.metric dt{min-width:0;color:var(--ink);flex-direction:row;align-items:center;gap:.7rem;font-size:.8rem;font-weight:720;line-height:1.3;display:flex}.metric-icon{width:2.6rem;height:2.6rem;color:var(--metric-color);background:var(--metric-tint);border-radius:50%;place-items:center;display:grid;box-shadow:inset 0 0 0 1px oklch(72% .08 260/.16)}.metric-icon svg{stroke-width:1.85px;width:1.2rem;height:1.2rem}.metric-sleep .metric-icon{color:var(--metric-color);background:var(--metric-tint);box-shadow:inset 0 0 0 1px oklch(67% .08 195/.12)}.metric-sleep .metric-icon svg{stroke-width:1.9px;width:1.3rem;height:1.3rem}.metric .metric-value{color:var(--ink);letter-spacing:-.05em;margin:.9rem 0 .15rem;font-size:1.75rem;font-weight:790;line-height:1}.metric-sleep .metric-value{margin-top:.9rem;font-size:2rem}.metric-sleep .metric-note{color:var(--muted);margin-top:2rem}.metric-sleep .provenance-dot.inferred{background:var(--metric-color)}.metric-balance{flex-direction:column;margin:.75rem 0 0;display:flex}.metric-balance-score{color:var(--muted);font-variant-numeric:tabular-nums;align-items:baseline;gap:.35rem;font-size:.95rem;font-weight:650;display:flex}.metric-balance-score strong{color:var(--metric-color);letter-spacing:-.055em;font-size:2.15rem;font-weight:820;line-height:.95}.metric-balance-label{color:var(--muted);margin-top:.35rem;font-size:.75rem;font-weight:620}.metric-balance-meter{background:linear-gradient(to right, oklch(73% .17 305/.55) 0, oklch(56% .25 275/.82) var(--balance-score), var(--surface-subtle) var(--balance-score) 100%);border-radius:999px;height:.48rem;margin-top:1.2rem;position:relative;box-shadow:inset 0 0 0 1px oklch(80% .04 285/.18)}.metric-balance-meter:before{border-radius:inherit;content:"";clip-path:inset(0 calc(100% - var(--balance-score)) 0 0);background:repeating-linear-gradient(90deg,#0000 0 calc(12.5% - 1px),oklch(42% .19 302/.55) calc(12.5% - 1px) 12.5%);position:absolute;inset:-.12rem 0}.metric-balance-knob{z-index:1;left:clamp(.55rem, var(--balance-score), calc(100% - .55rem));border:2px solid var(--surface);background:var(--metric-color);border-radius:50%;width:1.1rem;height:1.1rem;display:block;position:relative;transform:translate(-50%,-.31rem);box-shadow:0 .2rem .55rem oklch(42% .18 302/.3)}.metric-balance-meter.empty:before,.metric-balance-meter.empty .metric-balance-knob{display:none}.metric-balance-axis{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:.55rem;font-size:.64rem;font-weight:650;display:flex}.metric-decoration{height:1.85rem;color:var(--metric-color);margin:.1rem 0 .25rem}.metric-decoration svg{width:100%;height:100%;overflow:visible}.metric-decoration path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.1px;vector-effect:non-scaling-stroke}.metric-note{color:var(--muted);align-items:flex-start;gap:.34rem;margin:0;font-size:.72rem;line-height:1.38;display:flex}.provenance-dot{border-radius:50%;flex:none;width:.43rem;height:.43rem;margin-top:.28rem;display:inline-block}.provenance-dot.measured{background:var(--primary)}.provenance-dot.inferred{background:var(--positive)}.provenance-dot.missing{border:1px solid var(--missing);background:var(--surface)}.timeline-section{border:1px solid var(--rule);background:var(--surface);box-shadow:var(--shadow-card);border-radius:1.2rem;padding:.7rem 1.05rem .75rem;scroll-margin-top:1rem}.section-heading{justify-content:space-between;align-items:flex-start;gap:1.25rem;display:flex}.section-heading h2{margin-bottom:.2rem;font-size:1rem;font-weight:770}.section-heading>div>p{margin-bottom:0;font-size:.8rem;line-height:1.4}.legend{max-width:37rem;color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:.4rem .9rem;margin:.15rem 0 0;padding:0;font-size:.65rem;list-style:none;display:flex}.legend li{white-space:nowrap;align-items:center;gap:.34rem;display:inline-flex}.legend-mark{background:var(--primary);border-radius:.13rem;flex:none;width:.72rem;height:.45rem}.legend-mark.afk{background:var(--missing)}.legend-mark.missing{border:1px dashed var(--missing);background:var(--surface)}.timeline{--timeline-label-width:12.5rem;margin-top:.5rem;position:relative}.timeline-hours{grid-template-columns:var(--timeline-label-width) repeat(4, minmax(0, 1fr));min-height:1.2rem;color:var(--muted);padding:0 1px .3rem;font-size:.6rem;display:grid}.timeline-hours>span{text-align:right;grid-column:auto;justify-content:flex-end;align-items:center;gap:.28rem;display:flex}.timeline-hours>span:first-child{grid-area:1/2;justify-content:flex-start}.timeline-hours>span:nth-child(2){grid-area:1/2}.timeline-hours>span:nth-child(3){grid-area:1/3}.timeline-hours>span:nth-child(4){grid-area:1/4}.timeline-hours>span:nth-child(5){grid-area:1/5}.timeline-hours svg{color:oklch(48% .15 278);width:.78rem;height:.78rem}.timeline-hours .timeline-noon svg{color:oklch(56% .13 62)}.timeline-row{grid-template-columns:var(--timeline-label-width) minmax(0, 1fr);border:1px solid var(--rule);background:var(--surface);border-radius:.9rem;height:2.7rem;margin-bottom:.2rem;display:grid;overflow:hidden}.timeline-row:last-child{margin-bottom:0}.timeline-label{border-right:1px solid var(--rule);min-width:0;color:var(--ink);background:oklch(97.5% .006 258);align-items:center;gap:.5rem;padding:.4rem .65rem;display:flex}.timeline-device-icon{width:1.6rem;height:1.6rem;color:var(--primary-hover);background:var(--primary-soft);border-radius:.72rem;flex:none;place-items:center;display:grid}.timeline-device-icon svg{width:.9rem;height:.9rem}.timeline-device-copy{gap:.14rem;min-width:0;display:grid}.timeline-device-copy strong,.timeline-device-copy span{overflow-wrap:anywhere;min-width:0}.timeline-device-copy strong{font-size:.72rem;line-height:1.25}.timeline-device-copy span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.6rem;line-height:1.25;overflow:hidden}.timeline-track{background-color:var(--surface);background-image:linear-gradient(to right, var(--rule) 1px, transparent 1px);background-size:25% 100%;min-width:0;position:relative;overflow:hidden}.timeline-event{z-index:1;background:oklch(58% .23 258);border-radius:.2rem;min-width:3px;height:1.1rem;position:absolute;top:.8rem}.timeline-event.afk{box-shadow:none;background:oklch(55% .025 260)}.timeline-inspector{z-index:3;inset:0 1px 0 calc(var(--timeline-label-width) + 1px);cursor:crosshair;touch-action:pan-y;position:absolute}.timeline-inspector:focus-visible{outline-offset:-2px;outline:2px solid oklch(70% .18 255/.65)}.timeline-inspector-guide{background:var(--primary-hover);pointer-events:none;width:1px;position:absolute;inset-block:0}.timeline-inspector-label{min-width:max-content;color:var(--surface);background:var(--ink);font-variant-numeric:tabular-nums;pointer-events:none;border-radius:.3rem;padding:.16rem .34rem;font-size:.6rem;font-weight:700;line-height:1.2;position:absolute;top:0;transform:translate(-50%)}.timeline-inspector-label[data-edge=start]{transform:none;left:0!important}.timeline-inspector-label[data-edge=end]{right:0;transform:none;left:auto!important}.quality{border:1px solid var(--rule);background:var(--surface);min-height:4.6rem;box-shadow:var(--shadow-card);border-radius:1.05rem;justify-content:space-between;align-items:center;gap:1.3rem;padding:.65rem .95rem;scroll-margin-top:1rem;display:flex}.quality h2{margin-bottom:.42rem;font-size:.95rem}.provenance-list{max-width:51rem;color:var(--muted);flex-wrap:wrap;gap:.35rem .85rem;margin:0;padding:0;font-size:.69rem;line-height:1.4;list-style:none;display:flex}.provenance-list li{align-items:flex-start;gap:.32rem;display:inline-flex}.data-freshness{border:1px solid var(--rule-strong);border-radius:var(--radius-md);min-width:13rem;color:var(--muted);background:var(--surface);flex:none;align-items:center;gap:.65rem;padding:.58rem .72rem;font-size:.69rem;display:flex}.freshness-icon{color:oklch(43% .16 155);background:oklch(90% .06 155);border-radius:50%;flex:none;place-items:center;width:1.65rem;height:1.65rem;display:grid}.freshness-icon svg{stroke-width:2px;width:1.05rem;height:1.05rem}.freshness-copy{gap:.1rem;display:grid}.data-freshness strong{color:var(--ink);font-size:.76rem}.data-freshness.attention{background:oklch(97% .03 75);border-color:oklch(72% .11 48)}.data-freshness.attention .freshness-icon{color:oklch(48% .17 45);background:oklch(91% .075 67)}.all-unavailable,.unavailable-panel,.empty-panel{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--surface-subtle);padding:.95rem 1.05rem}.all-unavailable{background:oklch(97.5% .02 75);border-color:oklch(72% .1 48)}.all-unavailable strong,.unavailable-panel strong,.empty-panel strong{font-size:.84rem}.all-unavailable p,.unavailable-panel p,.empty-panel p{margin:.25rem 0 0}.unavailable-panel,.empty-panel{margin-top:1rem}.unavailable-inline{background:oklch(98% .02 75/.86);border-color:oklch(78% .07 48)}.session-connect{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);max-width:43rem;box-shadow:var(--shadow-card);margin-top:.5rem;padding:1.3rem}.session-intro{align-items:flex-start;gap:.85rem;display:flex}.session-icon{width:2.7rem;height:2.7rem;color:var(--primary-hover);background:var(--primary-soft);border-radius:50%;flex:none;place-items:center;display:grid}.session-icon svg{width:1.2rem;height:1.2rem}.session-intro p{max-width:62ch;margin-bottom:1rem}.session-submit{border:1px solid var(--primary);border-radius:var(--radius-sm);min-height:2.65rem;color:var(--surface);box-shadow:var(--shadow-button);background:linear-gradient(135deg,oklch(59% .24 250),oklch(45% .25 278));padding:0 1.05rem;font-size:.78rem;font-weight:700}.session-submit:hover:not(:disabled){background:linear-gradient(135deg,oklch(54% .24 250),oklch(40% .25 278))}.session-submit:disabled{color:var(--faint);border-color:var(--rule);background:var(--surface-subtle);box-shadow:none}.session-error{color:oklch(42% .15 42);margin:.15rem 0 0;font-size:.78rem;font-weight:650}.add-device-dialog{border-radius:var(--radius-xl);background:var(--surface);border:1px solid oklch(78% .06 260);width:min(100% - 2rem,31rem);max-height:calc(100svh - 2rem);margin:auto;padding:1.35rem;overflow-y:auto;box-shadow:0 1.5rem 4rem oklch(16% .06 267/.28)}.add-device-dialog::backdrop{background:oklch(16% .05 268/.38)}.add-device-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.add-device-heading .section-label{margin-bottom:.25rem}.add-device-heading h2{font-size:1.25rem}.add-device-close{border:1px solid var(--rule-strong);width:2.25rem;height:2.25rem;color:var(--muted);background:var(--surface);border-radius:50%;flex:none;place-items:center;font-size:1.35rem;line-height:1;display:grid}.add-device-close:hover:not(:disabled){color:var(--primary-hover);background:var(--primary-soft)}.add-device-intro{margin:.65rem 0 1.1rem}.add-device-form{gap:.42rem;display:grid}.add-device-form label{margin-top:.35rem;font-size:.78rem;font-weight:680}.add-device-form input{border:1px solid var(--rule-strong);border-radius:var(--radius-sm);min-width:0;min-height:2.65rem;color:var(--ink);background:var(--surface);padding:0 .75rem}.add-device-form input:hover:not(:disabled){border-color:var(--faint)}.add-device-form input:disabled{color:var(--faint);background:var(--surface-subtle)}.add-device-form input[aria-invalid=true]{border-color:var(--warning);box-shadow:0 0 0 1px var(--warning)}.add-device-help,.add-device-error,.add-device-success{margin:0;font-size:.75rem}.add-device-help{color:var(--muted)}.add-device-error{color:oklch(42% .15 42);margin-top:.45rem;font-weight:650}.add-device-success{color:oklch(32% .12 155);margin-top:.45rem;font-weight:650}.add-device-actions{justify-content:flex-end;gap:.55rem;margin-top:1rem;display:flex}.add-device-cancel,.add-device-submit{border-radius:var(--radius-sm);min-height:2.5rem;padding:0 .95rem;font-size:.78rem;font-weight:700}.add-device-cancel{border:1px solid var(--rule-strong);color:var(--ink);background:var(--surface)}.add-device-cancel:hover:not(:disabled){background:var(--surface-subtle)}.add-device-submit{border:1px solid var(--primary);color:var(--surface);box-shadow:var(--shadow-button);background:linear-gradient(135deg,oklch(59% .24 250),oklch(45% .25 278))}.add-device-submit:hover:not(:disabled){background:linear-gradient(135deg,oklch(54% .24 250),oklch(40% .25 278))}.add-device-cancel:disabled,.add-device-submit:disabled{color:var(--faint);border-color:var(--rule);background:var(--surface-subtle);box-shadow:none}.settings-page-header,.settings-content{width:min(100%,68rem)}.settings-page-header{min-height:6rem}.settings-content{gap:1rem;display:grid}.settings-section{border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-card);overflow:hidden}.settings-section-heading{border-bottom:1px solid var(--rule);align-items:flex-start;gap:.9rem;padding:1.25rem 1.35rem;display:flex}.settings-section-heading h2{margin-bottom:.25rem;font-size:1.15rem}.settings-section-heading p{max-width:64ch;margin:0}.settings-section-icon,.settings-load-error-icon{width:2.65rem;height:2.65rem;color:var(--primary-hover);background:var(--primary-soft);border-radius:50%;flex:none;place-items:center;display:grid;box-shadow:inset 0 0 0 1px oklch(72% .08 260/.16)}.settings-section-icon svg,.settings-load-error-icon svg{width:1.2rem;height:1.2rem}.settings-section-body{padding:1.35rem}.settings-timezone{grid-template-columns:minmax(0,1fr) minmax(14rem,19rem);align-items:center;gap:1rem 2rem;display:grid}.settings-timezone label,.settings-time-field label{color:var(--ink);font-size:.8rem;font-weight:700}.settings-timezone p,.settings-time-field p{margin:.25rem 0 0;font-size:.75rem}.settings-timezone input,.settings-time-field input{border:1px solid var(--rule-strong);border-radius:var(--radius-sm);width:100%;min-width:0;min-height:2.75rem;color:var(--ink);background:var(--surface);font-variant-numeric:tabular-nums;padding:0 .78rem}.settings-timezone input[readonly]{color:var(--muted);background:var(--surface-subtle);cursor:default}.settings-time-field input:hover:not(:disabled){border-color:var(--faint)}.settings-time-field input:disabled{color:var(--faint);background:var(--surface-subtle)}.settings-time-field input[aria-invalid=true]{border-color:var(--warning);box-shadow:0 0 0 1px var(--warning)}.settings-explanation{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);max-width:72ch;color:var(--muted);margin:1.25rem 0;padding:1rem 0}.settings-form fieldset{border:0;min-width:0;margin:0;padding:0}.settings-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem;display:grid}.settings-time-field{min-width:0}.settings-time-field input{margin-top:.42rem}.settings-time-field .settings-field-error,.settings-range-error{color:oklch(42% .15 42);font-weight:650}.settings-range-error{margin:.85rem 0 0;font-size:.75rem}.settings-form-footer{border-top:1px solid var(--rule);background:var(--surface-subtle);justify-content:space-between;align-items:center;gap:1rem;min-height:4.8rem;margin:1.35rem -1.35rem -1.35rem;padding:.95rem 1.35rem;display:flex}.settings-save-state p{margin:0;font-size:.78rem;font-weight:650}.settings-save-error{color:oklch(42% .15 42)}.settings-saved{color:oklch(32% .12 155);align-items:center;gap:.4rem;display:inline-flex}.settings-saved svg{width:1rem;height:1rem}.settings-save-button,.settings-load-error button{border:1px solid var(--primary);border-radius:var(--radius-sm);min-height:2.65rem;color:var(--surface);box-shadow:var(--shadow-button);background:linear-gradient(135deg,oklch(59% .24 250),oklch(45% .25 278));padding:0 1.05rem;font-size:.78rem;font-weight:700}.settings-save-button:hover:not(:disabled),.settings-load-error button:hover{background:linear-gradient(135deg,oklch(54% .24 250),oklch(40% .25 278))}.settings-save-button:disabled{color:var(--faint);border-color:var(--rule);background:var(--surface-subtle);box-shadow:none}.settings-load-error{border-radius:var(--radius-lg);background:oklch(97.5% .02 75);border:1px solid oklch(75% .1 48);align-items:flex-start;gap:.9rem;max-width:44rem;padding:1.25rem;display:flex}.settings-load-error-icon{color:oklch(48% .17 45);background:oklch(91% .075 67)}.settings-load-error h2{margin-bottom:.3rem}.settings-load-error p{color:oklch(42% .15 42);margin-bottom:.85rem}.settings-authentication{max-width:43rem}.settings-authentication-error{color:oklch(42% .15 42);margin-bottom:.8rem;font-weight:650}.settings-authentication .session-connect{margin-top:0}.settings-loading{border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-card);padding:1.35rem}.settings-skeleton-heading{width:min(24rem,72%);height:3.6rem}.settings-skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem;display:grid}.settings-skeleton-field{height:5.6rem}.settings-skeleton-action{width:8rem;height:2.65rem;margin-left:auto}.loading-content{gap:1rem;display:grid}.skeleton{border-radius:var(--radius-lg);background:var(--surface-subtle);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(100deg,#0000 20%,oklch(100% 0 0/.76) 50%,#0000 80%);animation:1.2s ease-in-out infinite shimmer;position:absolute;inset:0}.skeleton.heading{width:15rem;height:2.6rem}.skeleton.status{width:100%;height:15rem}.skeleton.metrics{height:15rem}.skeleton.timeline{height:14rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@container (width<=60rem){.location-observations li{grid-template-columns:5rem minmax(0,1fr);gap:.35rem .75rem}.location-place-actions,.location-place-form{grid-column:1/-1}}@supports not (container-type:inline-size){@media (width>=601px) and (width<=1280px){.location-observations li{grid-template-columns:5rem minmax(0,1fr);gap:.35rem .75rem}.location-place-actions,.location-place-form{grid-column:1/-1}}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (width<=1120px) and (width>=981px){.summary-banner{grid-template-columns:minmax(0,1fr) minmax(18rem,20rem);gap:1.2rem}.summary-statement{font-size:1.4rem}.current-device{min-width:18rem;padding:1.1rem}.metric{padding-inline:.95rem}}@media (width<=980px){.side-nav{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem;width:100%;min-height:auto;padding:.7rem clamp(1rem,4vw,2rem);display:grid;position:sticky;inset:0 0 auto;overflow:visible}.wordmark{margin:0}.wordmark-mark{border-radius:.62rem;width:2rem;height:2rem}.side-nav nav{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex}.side-nav nav :is(a,button){min-height:2.45rem;padding:.5rem .7rem;font-size:.78rem}.side-nav nav :is(a,button) svg{width:1.05rem;height:1.05rem}.privacy-note{display:none}main{margin-left:0;padding:1.3rem clamp(1rem,4vw,2rem) 2.8rem}.timeline-section,.quality{scroll-margin-top:5.5rem}}@media (width<=820px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{min-height:13.5rem}.section-heading{flex-direction:column;align-items:stretch;gap:.7rem}.legend{justify-content:flex-start;max-width:none}.distribution-heading{flex-direction:column;align-items:stretch;gap:.8rem}.application-legend{justify-content:flex-start}.analytics-topics{width:fit-content}}@media (width<=720px){h1{font-size:2.15rem}.page-header,.quality{flex-direction:column;align-items:stretch}.page-header{gap:1rem}.settings-timezone,.settings-time-grid,.settings-skeleton-grid{grid-template-columns:1fr}.settings-form-footer{flex-direction:column;align-items:stretch}.settings-save-button{width:100%}.health-controls{justify-content:flex-start;width:100%}.location-heading,.sports-summary-heading,.sports-trend-heading,.sports-calendar-heading,.location-places-heading{flex-direction:column}.sports-comparison{grid-template-columns:repeat(2,minmax(0,1fr))}.sports-comparison>div:nth-child(2){border-right:0;padding-right:0}.sports-comparison>.sports-comparison-note{border-top:1px solid var(--rule);grid-column:1/-1;margin-top:.8rem;padding:.8rem 0 0}.health-search{flex:1;width:auto;min-width:0}.header-actions{justify-content:flex-start}.summary-banner{grid-template-columns:1fr;gap:1.3rem;min-height:auto}.current-device{width:100%;min-width:0;min-height:8.5rem}.health-labs summary{grid-template-columns:1fr auto;gap:.25rem .75rem}.health-summary-date{text-align:left;grid-column:1/-1}.quality{gap:.85rem}.data-freshness{min-width:0}.timeline{--timeline-label-width:8.5rem}}@media (width<=600px){.side-nav{grid-template-columns:1fr;gap:.55rem;padding:.62rem .75rem .72rem}.wordmark-name{font-size:.86rem}.side-nav nav{justify-content:stretch}.side-nav nav :is(a,button){flex:auto;justify-content:center;gap:.4rem;padding-inline:.4rem;font-size:.7rem}main{padding-inline:.75rem}.page-header{min-height:0}.header-actions{grid-template-columns:auto auto minmax(0,1fr) auto;gap:.42rem;width:100%;display:grid}.header-actions.no-date{grid-template-columns:minmax(0,1fr) auto auto}.date-controls button,.date-picker-button,.logout-button{width:2.55rem;height:2.55rem}.refresh-button,.add-device-button{min-width:0;min-height:2.55rem;padding-inline:.7rem}.summary-banner,.settings-section-heading,.settings-section-body,.application-distribution,.application-categorization,.timeline-section,.quality,.session-connect,.sports-summary,.sports-trend,.sports-calendar,.location-places{padding:.9rem}.settings-form-footer{margin:.9rem -.9rem -.9rem;padding-inline:.9rem}.summary-statement{font-size:1.35rem}.provenance-list{display:grid}.location-content{padding:.9rem}.location-tabs{width:100%}.location-tabs button{flex:1 1 0;min-width:0}.location-observations li{grid-template-columns:5rem minmax(0,1fr);gap:.35rem .75rem}.location-place-actions,.location-place-form{grid-column:1/-1}.location-place-form{grid-template-columns:1fr}.location-place-controls button{flex:7rem}}@media (width<=520px){h1{font-size:1.9rem}.metrics{grid-template-columns:1fr}.metric{min-height:13rem}.header-actions{grid-template-columns:auto auto 2.55rem minmax(0,1fr) 2.55rem}.header-actions .refresh-button{width:2.55rem;padding:0}.header-actions :is(.refresh-button,.logout-button) span{display:none}.header-actions .add-device-button{white-space:nowrap}.distribution-row{grid-template-columns:5.4rem minmax(0,1fr);gap:.45rem .65rem}.analytics-topics{width:100%}.analytics-topics button{flex:1 1 0;padding-inline:.45rem}.categorization-list li{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.categorization-list strong{grid-column:1/-1;padding:0}.categorization-list label{min-width:0}.distribution-row time{font-size:.65rem}.distribution-track{height:2rem}.distribution-segment{padding:0;font-size:0}.distribution-total{text-align:left;grid-column:2;font-size:.65rem}.session-submit{width:100%}.add-device-actions{flex-direction:column-reverse}.add-device-cancel,.add-device-submit{width:100%}.timeline{--timeline-label-width:5rem}.timeline-hours{min-height:2.2rem;font-size:.56rem}.timeline-hours>span{flex-direction:column;gap:.08rem}.timeline-hours svg{width:.65rem;height:.65rem}.timeline-row{height:4.2rem}.timeline-label{gap:.25rem;padding-inline:.38rem}.timeline-device-icon{display:none}.timeline-device-copy strong{font-size:.62rem}.timeline-device-copy span{font-size:.55rem}.timeline-event{height:2rem;top:1.05rem}}@media (width<=360px){.side-nav nav :is(a,button){min-width:0;padding-inline:.3rem}.side-nav nav :is(a,button) svg{width:.92rem;height:.92rem}.header-actions{grid-template-columns:auto auto minmax(0,1fr) auto}.summary-icon{width:2.85rem;height:2.85rem}.current-device{align-items:flex-start;padding:1rem}.current-device-icon{width:3.25rem;height:3.25rem}.timeline-section{padding-inline:.65rem}.timeline{--timeline-label-width:4.65rem}}.widget-mode{min-height:100svh;overflow-x:hidden}.widget-mode .widget-main{min-height:100svh;margin-left:0;padding:.9rem clamp(.9rem,3vw,1.5rem) 1.4rem}.widget-mode .widget-main>*{width:min(100%,52rem)}.widget-mode .page-header{gap:1rem;min-height:0;padding-bottom:.85rem}.widget-mode .header-actions{gap:.45rem}.widget-mode .dashboard-content,.widget-mode .overview{gap:.9rem}.widget-mode .summary-banner{border-radius:1rem;grid-template-columns:minmax(0,1fr) minmax(13rem,15rem);gap:1rem;min-height:0;padding:1rem 1.1rem}.widget-mode .overview-heading{flex-direction:row;gap:.65rem}.widget-mode .summary-icon{flex:none;width:2.2rem;height:2.2rem}.widget-mode .summary-copy h2{margin-bottom:.35rem;font-size:.78rem}.widget-mode .summary-statement{max-width:30ch;font-size:1.18rem}.widget-mode .current-device{min-width:0;min-height:4.75rem;padding:.7rem}.widget-mode .current-device-icon{width:2.55rem;height:2.55rem}.widget-mode .metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.widget-mode .metric,.widget-mode .metric-balance-card{min-height:9.6rem;padding:.8rem}.widget-mode .metric-icon{width:2.2rem;height:2.2rem}.widget-mode .metric .metric-value{margin-top:.7rem;font-size:1.6rem}.widget-mode .metric-sleep .metric-value{font-size:1.8rem}.widget-mode .metric-sleep .metric-note{margin-top:1rem}.widget-mode .timeline-section,.widget-mode .quality{border-radius:.95rem}.widget-mode .timeline-section{padding:.8rem .9rem}.widget-mode .timeline-row{height:2.55rem}.widget-mode .quality{min-height:0;padding:.8rem .9rem}.widget-mode .data-freshness{min-width:0;padding:.5rem .6rem}.widget-mode .loading-content{gap:.75rem}.widget-mode .skeleton.heading{width:10rem;height:2.1rem}.widget-mode .skeleton.status,.widget-mode .skeleton.metrics,.widget-mode .skeleton.timeline{height:9rem}.widget-mode .session-connect{max-width:none;margin-top:0;padding:1.1rem}.widget-mode .all-unavailable,.widget-mode .unavailable-panel,.widget-mode .empty-panel{padding:.8rem .9rem}@media (width<=720px){.widget-mode .page-header{flex-direction:column;align-items:stretch;gap:.75rem}.widget-mode .header-actions{justify-content:flex-start;width:100%}}@media (width<=600px){.widget-mode .widget-main{padding-inline:.75rem}.widget-mode .summary-banner{grid-template-columns:1fr;gap:.8rem;padding:.9rem}.widget-mode .summary-statement{font-size:1.1rem}}@media (width<=520px){.widget-mode .header-actions{grid-template-columns:auto auto 2.55rem}.widget-mode .header-actions .refresh-button{width:2.55rem;padding:0}.widget-mode .header-actions .refresh-button span{display:none}.widget-mode .metrics{grid-template-columns:1fr}.widget-mode .metric,.widget-mode .metric-balance-card{min-height:9rem}.widget-mode .timeline-row{height:4.2rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.skeleton:after{display:none}}
