:root{color-scheme:dark;--bg:#09131b;--side:#0c1821;--panel:#11212c;--line:#253640;--muted:#9cabb5;--text:#edf6f7;--accent:#65dbc2;--ink:#07251d;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.5}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button{border:0}input,select{min-height:44px;border:1px solid var(--line);border-radius:10px;background:#0b1923;color:var(--text);padding:9px 12px;max-width:100%}input[type=date]{width:165px}h1,h2,p{margin:0}h1{font-size:2.15rem;letter-spacing:-.055em;line-height:1.2;font-weight:620}h2{font-size:1.08rem;font-weight:600}strong{font-weight:600}.eyebrow{font-size:.76rem;letter-spacing:.13em;font-weight:650;color:var(--muted)}.muted,.footnote,.metric-note{color:var(--muted)}.footnote{font-size:.82rem;line-height:1.65}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.shell{display:flex;min-height:100vh}.sidebar{width:218px;background:var(--side);border-right:1px solid var(--line);padding:34px 22px;display:flex;flex-direction:column;position:fixed;height:100vh}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;font-weight:650;font-size:1.6rem;letter-spacing:.03em}.side-label{margin:60px 12px 15px}.nav-button{width:100%;background:transparent;color:var(--muted);text-align:left;display:flex;gap:15px;align-items:center;padding:12px 15px;border-radius:10px;margin-bottom:6px;font-size:.94rem}.nav-button span{font-size:1.45rem;line-height:1;width:20px}.nav-button:hover{background:#152631}.nav-button.active{color:var(--accent);background:#19352f}.sidebar-bottom{margin-top:auto;padding-top:40px}.sidebar-bottom .footnote{margin:19px 0}.text-button{color:var(--muted);padding:7px 0;background:none;font-size:.9rem}.text-button:hover{color:var(--accent)}.main{margin-left:218px;width:calc(100% - 218px);max-width:1640px;padding:43px 48px 25px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.page-header .eyebrow{margin-bottom:9px}.header-actions{display:flex;gap:15px;align-items:center}.sync-status{color:var(--muted);font-size:.85rem}.sync-status.fresh{color:var(--accent)}.secondary,.primary{border-radius:10px;min-height:44px;padding:10px 16px;font-size:.9rem;font-weight:550}.secondary{background:#172934;color:var(--text);border:1px solid #2b404c}.secondary:hover{background:#203541}.primary{background:var(--accent);color:var(--ink)}.primary:hover{background:#87e6d2}.full{width:100%}.controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:32px 0 25px}.period-control{display:flex;background:#10232d;padding:4px;border-radius:11px;gap:3px}.period-control button{background:none;color:var(--muted);padding:7px 17px;border-radius:8px;font-size:.9rem}.period-control button.selected{background:#2a444c;color:var(--text)}.timezone{font-size:.82rem;color:var(--muted);margin-left:auto}.metrics{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:18px;margin-bottom:25px}.metric{position:relative;overflow:hidden;padding:25px 27px 23px;border:1px solid var(--line);background:var(--panel);border-radius:17px;min-height:191px}.primary-metric{background:linear-gradient(125deg,#153b38,#132b34);border-color:#30544f}.primary-metric .eyebrow{color:#a4d7cc}.duration,.metric-number{font-size:3.15rem;font-weight:580;letter-spacing:-.065em;font-variant-numeric:tabular-nums;margin:13px 0 7px;line-height:1.1;position:relative;z-index:1}.duration{font-size:3.4rem}.metric-note{font-size:.82rem;position:relative;z-index:1}.metric-orbit{position:absolute;right:-45px;top:-44px;width:170px;height:170px;border:19px solid #62d5bc0b;border-radius:50%}.content-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:24px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:17px;padding:26px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.panel-heading .muted{font-size:.85rem}.small-tag{font-size:.65rem;color:var(--muted);letter-spacing:.12em}.site-row{width:100%;display:grid;grid-template-columns:36px 1fr auto;column-gap:14px;row-gap:11px;text-align:left;background:transparent;color:var(--text);padding:17px 0;border-bottom:1px solid #20333d}.site-row:last-child{border:0}.site-initial{height:35px;width:35px;border-radius:9px;background:#203943;color:var(--accent);display:flex;align-items:center;justify-content:center;grid-row:span 2}.site-name{font-size:.94rem;overflow-wrap:anywhere}.site-time{font-variant-numeric:tabular-nums;font-size:.9rem;color:#c3d4dc}.track{grid-column:2/4;height:4px;background:#223843;border-radius:4px;overflow:hidden}.track-fill{background:var(--accent);height:100%;border-radius:4px;min-width:2px}.site-row:hover .site-name{color:var(--accent)}.chart{height:225px;display:flex;gap:12px;align-items:flex-end;border-bottom:1px solid #39505c;padding:20px 5px 0;margin-bottom:19px;background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),#263a43 25%)}.bar-column{height:100%;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;min-width:0}.bar{width:100%;max-width:39px;min-height:2px;background:linear-gradient(to top,#3b9f8e,#6bdbc3);border-radius:6px 6px 0 0}.bar-value{font-size:.76rem;color:#b7d7cf;font-variant-numeric:tabular-nums}.bar-label{font-size:.76rem;color:var(--muted);padding:7px 0;background:var(--panel);width:100%;text-align:center}.empty{text-align:center;padding:40px 24px;margin-bottom:25px}.empty-clock{color:var(--accent);font-size:3rem;line-height:1;margin-bottom:12px}.empty p{color:var(--muted);max-width:460px;margin:12px auto 21px}.empty h2{font-size:1.3rem}.report-footer{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:.8rem;color:var(--muted);margin-top:28px;padding-top:15px;border-top:1px solid var(--line)}.address-row{display:flex;gap:18px;justify-content:space-between;border-top:1px solid var(--line);padding:19px 0;align-items:flex-start}.address-row p{font-size:.93rem;overflow-wrap:anywhere;white-space:pre-wrap}.address-row time{color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.9rem}.wrap{flex-wrap:wrap}#search{margin-left:auto;max-width:300px}.session{border-top:1px solid var(--line);padding:17px 0}.session summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;list-style:none}.session-title{font-weight:550}.session-meta{display:block;font-size:.82rem;color:var(--muted);margin-top:5px}.session-duration{color:var(--accent);font-size:1.2rem;font-variant-numeric:tabular-nums}.session[open] summary{margin-bottom:20px}.recovered{font-size:.82rem;color:#e1b77d;margin:10px 0}.error{padding:13px 16px;border:1px solid #795646;border-radius:10px;background:#30221d;color:#efc5ac;margin-bottom:20px}.login-body{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(ellipse at 15% 0%,#153734 0%,transparent 55%),var(--bg)}.login-card{width:100%;max-width:430px;padding:34px;border:1px solid var(--line);background:#0e1d27;border-radius:24px;box-shadow:0 30px 100px #0003}.login-card h1{font-size:2.6rem;margin:16px 0;line-height:1.12}.login-card .eyebrow{margin-top:25px;color:var(--accent)}.login-card form{margin-top:25px}.login-card label,dialog label{display:block;font-size:.9rem;margin:17px 0 7px}.login-card input{width:100%}.login-card .primary{margin-top:24px;display:flex;justify-content:space-between;align-items:center}.login-card .footnote{margin-top:24px}.login-card .error{margin:20px 0 0}dialog{background:var(--panel);color:var(--text);border:1px solid #35505a;border-radius:22px;width:calc(100% - 32px);max-width:500px;padding:28px;max-height:90vh}dialog::backdrop{background:#02080ed9}.dialog-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.icon-button{background:none;color:var(--muted);font-size:1.8rem;line-height:1;padding:5px 8px}.dialog-header h2{font-size:1.4rem}dialog p{font-size:.92rem}dialog input{width:100%;font-size:.85rem}.pair-code{font-family:ui-monospace,SFMono-Regular,monospace;color:var(--accent);font-size:1.65rem;letter-spacing:.04em;padding:25px 0 12px;overflow-wrap:anywhere}dialog .footnote{margin:20px 0}dialog .secondary{margin-top:5px}
@media(min-width:1500px){.main{padding-left:65px;padding-right:65px}}@media(max-width:1150px){.sidebar{width:185px;padding:30px 16px}.main{margin-left:185px;width:calc(100% - 185px);padding:32px 27px}.metrics{gap:12px;grid-template-columns:1.25fr 1fr 1fr}.metric{padding:23px 20px}.duration{font-size:2.8rem}.metric-number{font-size:2.8rem}.small-tag{display:none}.panel{padding:23px}.header-actions{gap:8px}.sync-status{max-width:155px}.content-grid{gap:18px;grid-template-columns:1fr 1fr}}@media(max-width:800px){.sidebar{position:static;width:100%;height:auto;padding:17px 20px;flex-direction:row;align-items:center;gap:20px;border-right:0;border-bottom:1px solid var(--line);flex-wrap:wrap}.shell{display:block}.brand{font-size:1.3rem}.brand img{width:30px;height:30px}.side-label,.sidebar-bottom{display:none}.sidebar nav{display:flex;gap:5px;margin-left:auto}.nav-button{padding:9px 10px;font-size:.85rem;margin:0}.nav-button span{display:none}.main{margin:0;width:100%;padding:26px 22px}.metrics{grid-template-columns:1fr 1fr}.primary-metric{grid-column:1/3}.duration{font-size:3.5rem}.metric{min-height:155px}.primary-metric{min-height:195px}.content-grid{grid-template-columns:1fr}.timezone{margin:0}.sync-status{font-size:.76rem}.header-actions .secondary span{display:none}.header-actions .secondary{min-width:42px;padding:9px}.page-header{align-items:flex-start}.page-header h1{font-size:1.85rem}.controls{gap:8px}.controls select{flex:1;max-width:220px}#search{max-width:100%;width:100%;margin:0}.report-footer{font-size:.76rem}.metric-note{font-size:.78rem}.panel{padding:21px}.chart{height:190px}}@media(max-width:400px){.sidebar{gap:10px;padding:14px}.nav-button{padding:9px 8px;font-size:.8rem}.main{padding:25px 15px}.metric{padding:21px 17px}.metric .eyebrow{font-size:.69rem}.login-card{padding:26px}.pair-code{font-size:1.35rem}}

@media(max-width:800px){.page-header{flex-wrap:wrap}.header-actions{width:100%;flex-wrap:wrap}.header-actions .sync-status{margin-left:auto}.header-actions #pair-header{padding:9px 13px;min-height:42px}.report-footer form{margin-left:auto}}
