@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800&display=swap");:root{--surface-bg:#000000;--surface-card:#111111;--surface-card-hover:#1c1c1e;--ink-white:#ffffff;--ink-muted:#8e8e93;--neon-green:#32d74b;--neon-amber:#ff9f0a;--neon-red:#ff453a;--neon-blue:#0a84ff;--neon-green-dim:rgba(50,215,75,0.15);--neon-amber-dim:rgba(255,159,10,0.15);--neon-red-dim:rgba(255,69,58,0.15);--border-subtle:#2c2c2e;--font:"Inter","Helvetica Neue",Helvetica,Arial,sans-serif}*{box-sizing:border-box}html{color:var(--ink-white);font-family:var(--font)}body,html{background:var(--surface-bg)}body{margin:0;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select{font:inherit}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--neon-blue);outline-offset:2px}.shell{min-height:100vh;display:grid;grid-template-columns:300px minmax(0,1fr);grid-gap:24px;gap:24px;padding:24px;max-width:1600px;margin:0 auto}.sidebar{background:var(--surface-card);border-radius:24px;border:1px solid var(--border-subtle);padding:32px 24px;display:flex;flex-direction:column;justify-content:space-between;gap:32px;position:-webkit-sticky;position:sticky;top:24px;height:calc(100vh - 48px)}.brand{display:grid;grid-gap:8px;gap:8px}.folio{color:var(--ink-muted);font-size:72px;line-height:.85;opacity:.3}.brand h1,.folio{font-weight:800;letter-spacing:-.02em}.brand h1{margin:0;font-size:42px;line-height:.92;white-space:nowrap}.brand p,.empty,.muted{margin:0;color:var(--ink-muted);line-height:1.4;font-size:14px}.nav{display:grid;grid-gap:8px;gap:8px}.nav a{min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-radius:12px;text-transform:uppercase;font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--ink-muted);transition:background-color .2s,color .2s}.nav a:hover{background:var(--surface-card-hover);color:var(--ink-white)}.nav a[aria-current=page]{background:var(--surface-card-hover);color:var(--neon-blue);box-shadow:inset 2px 0 0 var(--neon-blue)}.content{display:grid;grid-gap:24px;gap:24px;align-content:start}.topbar{min-height:64px;justify-content:space-between;gap:16px;padding:16px 24px;background:var(--surface-card);border-radius:16px;border:1px solid var(--border-subtle)}.actions,.topbar{display:flex;align-items:flex-end}.actions{gap:12px;flex-wrap:wrap;justify-content:flex-end}.topbar-note{margin:6px 0 0;color:var(--ink-muted);font-size:13px;line-height:1.25}.date-form{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.date-form label{color:var(--ink-muted);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.date-form select{border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-bg);padding:0 36px 0 12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%238e8e93%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:right 12px top 50%;background-size:10px auto}.button,.date-form select{min-height:40px;color:var(--ink-white)}.button{border:1px solid var(--border-subtle);border-radius:99px;background:var(--surface-card-hover);padding:0 16px;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s ease}.button.primary{background:var(--neon-blue);border-color:var(--neon-blue);color:#fff}.button:hover{background:#2c2c2e}.button.primary:hover{background:#0070e0;border-color:#0070e0;transform:translateY(-1px);box-shadow:0 4px 12px rgba(10,132,255,.3)}.button:active{transform:translateY(1px)}.button svg{width:16px;height:16px}.grid{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:16px;gap:16px}.panel{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:20px;padding:24px;min-height:180px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}.panel:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.4)}.panel.metric:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:transparent}.panel.metric[data-state=good]:before{background:var(--neon-green)}.panel.metric[data-state=watch]:before{background:var(--neon-amber)}.panel.metric[data-state=low]:before{background:var(--neon-red)}.panel.metric[data-state=good] .value{color:var(--neon-green)}.panel.metric[data-state=watch] .value{color:var(--neon-amber)}.panel.metric[data-state=low] .value{color:var(--neon-red)}.panel.metric[data-state=missing]{opacity:.5}.panel.metric[data-state=neutral] .value{color:var(--ink-white)}.metric-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;z-index:1}.state-label{max-width:180px;font-size:13px;line-height:1.25;text-align:right;font-weight:500}.label,.state-label{color:var(--ink-muted)}.label{text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.05em}.metric-desc{font-size:13px;color:var(--ink-muted);line-height:1.4;margin-top:auto;padding-top:12px;border-top:1px solid var(--border-subtle)}.value{font-size:clamp(36px,6vw,72px);line-height:.9;font-weight:800;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.value.small{font-size:clamp(24px,3vw,36px);color:var(--ink-white)}.unit{color:var(--ink-muted);font-size:18px;font-weight:600;margin-left:6px}.decision{min-height:132px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,var(--surface-card),#161618)}.decision h2{margin:8px 0 16px;font-size:36px;line-height:1.1;letter-spacing:-.02em;font-weight:800;color:var(--ink-white)}.decision p{margin:0;max-width:68ch;color:var(--ink-muted);line-height:1.5;font-size:15px}.drivers{justify-content:flex-start}.driver-list{display:grid;grid-gap:12px;gap:12px;margin-top:8px}.driver{display:grid;grid-template-columns:1fr auto;grid-gap:16px;gap:16px;padding:12px 16px;background:var(--surface-card-hover);border-radius:12px;align-items:center}.driver span{color:var(--ink-muted);font-size:14px;font-weight:600}.driver strong{font-weight:700;font-size:15px;color:var(--ink-white);text-align:right}.sleep-session{display:grid;grid-template-columns:minmax(180px,1fr) repeat(5,minmax(80px,1fr));grid-gap:16px;gap:16px;padding:16px;background:var(--surface-card-hover);border-radius:12px;align-items:center;margin-bottom:8px}.sleep-session div{display:grid;grid-gap:4px;gap:4px}.sleep-session span{color:var(--ink-muted);font-size:12px;text-transform:uppercase;font-weight:700;letter-spacing:.02em}.sleep-session strong{font-weight:700;font-size:15px;color:var(--ink-white)}.chart{display:grid;grid-template-columns:repeat(30,1fr);align-items:end;grid-gap:6px;gap:6px;min-height:140px;margin-top:auto}.bar{min-height:4px;background:var(--border-subtle);border-radius:99px;transition:height .3s ease,background .3s ease}.bar:hover{background:var(--ink-muted)}.bar.accent{background:var(--neon-blue);box-shadow:0 0 10px rgba(10,132,255,.4)}.panel.metric[data-state=good] .bar.accent{background:var(--neon-green);box-shadow:0 0 10px rgba(50,215,75,.4)}.panel.metric[data-state=watch] .bar.accent{background:var(--neon-amber);box-shadow:0 0 10px rgba(255,159,10,.4)}.panel.metric[data-state=low] .bar.accent{background:var(--neon-red);box-shadow:0 0 10px rgba(255,69,58,.4)}.table{width:100%;border-collapse:separate;border-spacing:0 8px}.table th{font-size:12px;text-transform:uppercase;color:var(--ink-muted);font-weight:700;letter-spacing:.05em;padding:0 16px 8px;text-align:left;border-bottom:1px solid var(--border-subtle)}.table td{padding:16px;background:var(--surface-card);text-align:left;vertical-align:middle;color:var(--ink-white)}.table td:first-child{border-top-left-radius:12px;border-bottom-left-radius:12px}.table td:last-child{border-top-right-radius:12px;border-bottom-right-radius:12px}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-6{grid-column:span 6}.span-8{grid-column:span 8}.span-12{grid-column:span 12}.login{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr}.hero{padding:48px;display:flex;flex-direction:column;justify-content:space-between;background:var(--surface-bg);background-image:radial-gradient(circle at top right,rgba(10,132,255,.1),transparent 50%)}.hero h1{margin:0;font-size:clamp(48px,5vw,82px);line-height:1;letter-spacing:-.03em;font-weight:800;max-width:100%}.login-panel{padding:48px;display:flex;flex-direction:column;justify-content:center;gap:32px;background:var(--surface-card);border-left:1px solid var(--border-subtle)}.login-panel h2{font-size:32px;margin:0 0 12px;font-weight:800}.login-panel svg{color:var(--neon-blue)}.disclosure{border-top:1px solid var(--border-subtle);padding-top:24px;color:var(--ink-muted);line-height:1.5;font-size:13px}@media (max-width:1024px){.shell{grid-template-columns:1fr;padding:16px;gap:16px}.sidebar{height:auto;position:relative;top:0;flex-direction:row;align-items:center;padding:24px}.nav,.sidebar{flex-wrap:wrap}.nav{display:flex;flex:1 1}.nav a{flex:1 1;justify-content:center}.nav a span:last-child{display:none}.span-3,.span-4,.span-6,.span-8{grid-column:span 12}.decision{grid-template-columns:1fr}}@media (max-width:640px){.login{grid-template-columns:1fr}.hero{min-height:40vh}.hero,.login-panel{padding:32px 24px}.topbar{flex-direction:column;align-items:flex-start;padding:16px}.actions,.date-form{width:100%}.date-form select{flex:1 1}.panel{padding:20px;min-height:148px}.metric-head{flex-direction:column;gap:8px}.state-label{text-align:left}.driver{grid-template-columns:1fr;gap:4px}.driver strong{text-align:left;font-size:20px}.sleep-session{grid-template-columns:1fr 1fr}.folio{font-size:48px}.brand h1{font-size:32px}.value{font-size:48px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}