/* Forma / Obsidian Material — restrained chromatic light on graphite. */
:root{color-scheme:dark;--bg:#090c12;--card:#121720;--surface:#171e29;--surface-raised:#1c2432;--surface-inset:#0d121b;--ink:#edf1fa;--muted:#9ba8bf;--subtle:#78859d;--line:#ffffff0d;--green:#b7a5ff;--lime:#b7a5ff;--dark:#0b0f17;--red:#ff95a8;--orange:#eecb83;--accent:#b7a5ff;--accent-cyan:#7dded9;--positive:#78e0b1;--negative:#ff95a8;--steady:#9bc4ff;--radius:18px;--spectrum:linear-gradient(105deg,#7dded9 0%,#83afff 20%,#b7a5ff 40%,#efabdc 60%,#f3c98d 80%,#7dded9 100%);--ease:cubic-bezier(.22,1,.36,1)}
::selection{background:#b7a5ff42;color:#fff}html{scroll-padding-top:100px}body{background:radial-gradient(ellipse at 20% -10%,#61559e17,transparent 45%),radial-gradient(ellipse at 100% 50%,#3459680b,transparent 40%),var(--bg);color:var(--ink)}body::before{content:"";position:fixed;inset:-25% 0 auto 15%;height:650px;background:radial-gradient(ellipse,#7765c90a,transparent 65%);filter:blur(35px);pointer-events:none;z-index:-1;animation:ambient-drift 36s ease-in-out infinite alternate}
button,input,textarea,select{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:4px}button:disabled{cursor:default;opacity:.5}input,select,textarea{color-scheme:dark}input::placeholder,textarea::placeholder{color:var(--subtle)}select option{background:#171e29;color:var(--ink)}input[type=checkbox]{accent-color:var(--accent)}input::-webkit-calendar-picker-indicator{opacity:.7}
.sidebar{background:linear-gradient(165deg,#10141d,#0b0f17 70%);border-right:1px solid var(--line);padding-top:30px}.sidebar::before{content:"";position:absolute;top:0;left:24px;right:24px;height:1px;background:var(--spectrum);background-size:300% 100%;opacity:.65;animation:rainbow-flow 32s linear infinite}.brand{color:var(--ink);font-weight:650;letter-spacing:-1.5px}.brand img{box-shadow:0 0 22px #a78bfa14;border-radius:10px}.brand-dot{background:var(--spectrum);background-size:300% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:rainbow-flow 28s linear infinite}.nav-caption{color:#7f8aa0;letter-spacing:1.8px;margin-top:48px}.sidebar nav a{color:#9ca8bf;border:1px solid transparent;transition:background .25s,color .25s,border-color .25s,transform .3s var(--ease)}.sidebar nav a:hover{color:#e5e8f4;background:#ffffff04;transform:translateX(2px)}.sidebar nav a.active{color:#dfd5ff;background:linear-gradient(110deg,#a88bee1a,#7dded908);border-color:#b7a5ff24;box-shadow:inset 3px 0 #b7a5ff,0 6px 20px #0000000c}.sidebar nav a.active i{color:#c3b1ff;filter:drop-shadow(0 0 7px #b7a5ff35)}.private-tag{color:#94a5a7;border-color:var(--line)}.status-dot{background:var(--positive);box-shadow:0 0 9px #78e0b126}.profile small{color:#7e8aa0}.profile b{color:#cad3e4}.avatar{background:#a394cc16;border:1px solid #b7a5ff20;color:#d4c8fa}.profile .icon-btn{color:#8592aa}
.topbar{position:sticky;top:0;z-index:12;background:#0c1019df;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border-bottom:1px solid #ffffff09;transition:background .35s,box-shadow .35s}.is-scrolled .topbar{background:#0d111bf2;box-shadow:0 10px 34px #00000025}.breadcrumb{color:#79859c;letter-spacing:1.3px}.breadcrumb span{color:#435069}.breadcrumb b{color:#c5cde0}.today-label{color:#8c98ae}.top-actions{gap:17px}.motion-toggle{display:flex;gap:7px;align-items:center;background:none;border:1px solid #ffffff0c;border-radius:20px;padding:6px 10px;color:#9ba8bf;font-size:10px;white-space:nowrap;transition:border-color .25s,color .25s}.motion-toggle:hover{border-color:#b7a5ff44;color:#d2c7fa}.motion-symbol{font-size:17px;line-height:1;color:var(--accent)}.scroll-progress{position:fixed;top:0;left:0;width:100%;height:2px;transform:scaleX(0);transform-origin:left;z-index:40;pointer-events:none;background:var(--spectrum);background-size:300% 100%;box-shadow:0 0 12px #b7a5ff33;animation:rainbow-flow 30s linear infinite}
main{padding-top:37px}h1{font-size:32px;letter-spacing:-1.25px;font-weight:580;color:#eef1fb}h2{color:#e2e7f3;font-weight:570}h3{color:#d8dfed}.eyebrow{color:#a89ac8;letter-spacing:1.8px;font-size:9px}.subtitle{color:#94a0b6;font-size:12px}.page-heading{margin-bottom:26px}.rangebar{background:#101620;border:1px solid #ffffff0b;box-shadow:inset 0 1px 3px #00000015}.rangebar button{color:#8b98b0;padding:8px 11px;transition:background .3s,color .3s,box-shadow .3s}.rangebar button:hover{color:#d5c8fd;background:#ffffff03}.rangebar button.selected{background:#292238;color:#dfd1ff;box-shadow:0 2px 8px #00000025,inset 0 0 0 1px #b7a5ff21}.date-control{color:#8d9bb3}.date-control input{background:#111721;border-color:#ffffff0d;color:#aab5ca}.coverage{color:#a3aec3;font-size:10px;letter-spacing:.1px}.coverage .status-dot{background:var(--positive)}.coverage span:last-child{color:#7f8ca4}.coverage::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,#ffffff0a,transparent);max-width:120px;order:1}
.button{color:#d6dff0;background:#1a2230;border-color:#ffffff10;border-radius:9px;box-shadow:0 2px 4px #00000012;transition:background .25s,border-color .25s,transform .3s var(--ease),box-shadow .3s}.button:hover{color:#f1edff;background:#242b3a;border-color:#b7a5ff33;transform:translateY(-1px);box-shadow:0 6px 18px #00000020}.button.primary{background:#b8a6f7;color:#171326;border:1px solid #cfbfff66;box-shadow:0 3px 14px #a588e516,inset 0 1px #ffffff2b;font-weight:650;position:relative;overflow:hidden}.button.primary:hover{background:#c5b5ff;box-shadow:0 6px 26px #ac91e52b,inset 0 1px #ffffff2b;color:#171326}.button.primary::after{content:"";position:absolute;inset:auto 0 0;height:2px;background:var(--spectrum);background-size:300% 100%;animation:rainbow-flow 30s linear infinite;opacity:.75;pointer-events:none}.button.dark{background:#b7a5ff;color:#181326;border-color:#d7cbff33}.button.soft{background:#b7a5ff0e;border-color:#b7a5ff1c;color:#c3b3ee}.button.danger{background:#ff95a809;color:#ffafba;border-color:#ff95a824}.button:active{transform:translateY(1px);box-shadow:none}.icon-btn{color:#8593ae;transition:color .2s,background .2s}.icon-btn:hover{background:#b7a5ff0d;color:#d3c4ff}.text-button{color:#bba9f1;font-size:11px}.text-button:hover{color:#d9caff;text-decoration-color:#b7a5ff66;text-underline-offset:4px}
.card,.stat{position:relative;isolation:isolate;background:linear-gradient(135deg,#171d28 0%,#121822 100%);border:1px solid #ffffff0c;box-shadow:0 6px 22px #00000013,inset 0 1px #ffffff03;transition:border-color .4s,box-shadow .4s,transform .5s var(--ease);overflow:hidden}.card::before,.stat::before{content:"";position:absolute;inset:0 20px auto;height:1px;background:var(--spectrum);background-size:300% 100%;opacity:.2;z-index:2;pointer-events:none;animation:rainbow-flow 36s linear infinite}.card::after,.stat::after,.signal-tile::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(340px circle at var(--pointer-x,50%) var(--pointer-y,0%),#b7a5ff07,transparent 70%);opacity:0;transition:opacity .5s;z-index:-1}.card:hover,.stat:hover{border-color:#b7a5ff20;box-shadow:0 12px 35px #00000020,inset 0 1px #ffffff05}.card:hover::after,.stat:hover::after,.signal-tile:hover::after{opacity:1}.card:hover::before{opacity:.55}.stat{min-height:144px;padding:22px}.stat::before{opacity:.5}.stat label{color:#a7b2c9;font-size:11px}.stat label i{color:#b7a5ff;opacity:.8}.stat-value{color:#ecf0ff;font-size:34px;font-weight:570;font-variant-numeric:tabular-nums;letter-spacing:-1.1px}.stat-value small{color:#8191ae;font-size:11px}.stat-note{color:#8997b1;font-size:11px;line-height:1.5}.stat.featured{background:radial-gradient(ellipse at 20% 0%,#9c80de16,transparent 80%),linear-gradient(140deg,#1e2232,#171c28);border-color:#b7a5ff26}.stat.featured .stat-value{color:#d1c4ff;text-shadow:0 0 30px #b7a5ff20}.stat:nth-child(2) label i{color:#7dded9}.stat:nth-child(3) label i{color:#e9b8db}.stat:nth-child(4) label i{color:#edc48e}.card-head{padding-top:24px}.card-head p{color:#8d9bb5;font-size:11px}.card-head select{background:#101722;color:#b9c4da;border-color:#ffffff0d;font-size:11px;padding:8px 10px}.card-body{position:relative}.legend{color:#90a0b9;font-size:10px}.legend b{background:var(--accent-cyan);box-shadow:0 0 8px #7dded926}.legend .gray{background:#354157}.chart-summary{gap:20px;flex-wrap:wrap;margin-bottom:16px}.chart-summary strong{color:#ecf0ff;font-weight:550;font-variant-numeric:tabular-nums;font-size:28px}.chart-summary span{color:#8a99b3;font-size:11px}.chart-note{color:#8e9bb4;font-size:11px;line-height:1.75;margin-top:12px}.chart svg text{fill:#91a0bb}.chart svg line{stroke:#ffffff09}.chart svg circle{stroke:#141b27}.chart .chart-line{stroke-width:2.4;filter:drop-shadow(0 0 4px currentColor)}.chart .chart-last-point{stroke-width:3;stroke:#1d2939;filter:drop-shadow(0 0 5px currentColor)}.chart .chart-point{transition:r .25s,opacity .25s}.chart .chart-point:hover{r:5;opacity:1}.chart .chart-area{opacity:.8}.activity-chart{border-color:var(--line)}.activity-column .bar{background:linear-gradient(0deg,#38324b,#77618e);border:1px solid #cbb3ff10;border-bottom:0;box-shadow:0 -2px 12px #b7a5ff04;transition:filter .3s,transform .4s var(--ease);transform-origin:bottom}.activity-column:hover .bar{filter:brightness(1.4)}.activity-column:last-child .bar{background:linear-gradient(0deg,#6c62a1,#b7a5ff);box-shadow:0 0 15px #b7a5ff14}.activity-key,.activity-column small{color:#8694ae}.insight{background:linear-gradient(125deg,#b7a5ff0b,#7dded904);border-color:#b7a5ff17}.insight i{color:#b7a5ff}.insight strong{color:#c6b9e8;font-size:12px}.insight p{color:#98a6bf;font-size:11px;line-height:1.75}.badge{background:#b7a5ff13;color:#cbbbf9;border:1px solid #b7a5ff1a;font-size:10px;line-height:1.4}.badge.neutral{background:#8e9cb510;color:#99a9c3;border-color:#b7c3df12}.badge.down{background:#ff95a810;color:#ffadba;border-color:#ff95a821}.badge.warn{background:#eecb8310;color:#e8c68a;border-color:#eecb8320}
table{font-size:12px}th{background:#111720;color:#8c9cb7;font-size:9px;letter-spacing:1px;padding-top:14px;padding-bottom:14px;border-top:1px solid #ffffff04}td{color:#bac5db;border-color:#ffffff07;padding-top:17px;padding-bottom:17px}td strong{color:#d3dcef;font-weight:550}td small{color:#8090ab;font-size:10px;margin-top:4px}tbody tr{transition:background .25s}tbody tr:hover{background:#b7a5ff04}tbody tr[data-trend=improving]{box-shadow:inset 2px 0 #78e0b12e}tbody tr[data-trend=stable]{box-shadow:inset 2px 0 #9bc4ff26}tbody tr[data-trend=declining]{box-shadow:inset 2px 0 #ff95a82e}tbody tr[data-trend=improving]:hover{background:#78e0b105}tbody tr[data-trend=declining]:hover{background:#ff95a805}.set-tag{color:#b4c4dd;border-color:#ffffff0b;background:#0e1620;font-variant-numeric:tabular-nums}.empty{color:#8f9eb6;background:radial-gradient(ellipse,#b7a5ff04,transparent 75%)}.notice{background:#eecb8309;border-color:#eecb8321;color:#d7bd8e}.muted{color:var(--muted)}.search,.table-filter{background:#111823;color:#c6d2e9;border-color:#ffffff0e;box-shadow:inset 0 2px 5px #00000013}.search:focus,.table-filter:focus{border-color:#b7a5ff55}.exercise-list{background:#101620}.exercise-item,.exercise-item small{color:#9aa9c0}.exercise-item small{color:#7e8ea9}.exercise-item:hover{background:#b7a5ff07;color:#d5c6fc}.exercise-item.active{background:linear-gradient(110deg,#b7a5ff16,#7dded907);color:#d2c2ff;box-shadow:inset 2px 0 #b7a5ff}.metric-pair{background:#0e151f;border:1px solid #ffffff08;gap:18px}.metric-pair small{color:#8b9bb7}.metric-pair b{color:#dbe1f2;font-size:18px}.metric-pair p{color:#8697b2}.metric-pair .arrow{color:#796b99}.small-label,.subheading,.draft-note,.week-note{color:#91a0bb}.settings-grid p,.padded p,.fact-list li{color:#9ba9c0}.fact-list li{border-color:var(--line)}.fact-list strong{color:#d2dced}.field,.inline-check{color:#a8b5cd}.field input,.field select,.field textarea,.auth-panel input{background:#0d141f;border-color:#ffffff0d;color:#d3dcef;box-shadow:inset 0 2px 4px #00000013;transition:border-color .25s,box-shadow .25s}.field input:focus,.field select:focus,.field textarea:focus,.auth-panel input:focus{border-color:#b7a5ff55;box-shadow:0 0 0 3px #b7a5ff0a}.field small{color:#7e90ac}.error,.auth-panel .error{color:#ffacb9}.success{color:var(--positive)}footer{color:#73829b;border-top:1px solid #ffffff04;margin-top:12px}footer span{color:#60718e;letter-spacing:1.5px}
dialog{background:#101722;border-color:#ffffff13;box-shadow:0 40px 160px #00000088,0 0 0 1px #b7a5ff08;color:var(--ink);border-radius:20px}dialog::backdrop{background:#03060cb3;backdrop-filter:blur(9px)}.modal-head,.modal-footer{background:#151c29f5;border-color:#ffffff0b;backdrop-filter:blur(12px)}.modal-head{border-top:2px solid #b7a5ff33}.modal-head p{color:#8b9db8}.modal-body{background:linear-gradient(135deg,#121a26,#101722)}.exercise-block{background:#151f2c;border-color:#ffffff0c;border-radius:13px;box-shadow:inset 0 1px #ffffff03}.exercise-block h3{color:#dce4f4}.exercise-block .previous{color:#8395b1}.set-head{color:#8194b2}.set-row input,.set-row select{background:#101824;color:#c7d6ee;border-color:#ffffff0c}.set-row input:focus,.set-row select:focus{border-color:#b7a5ff66}.set-row .index{color:#8c9fbc}.set-row.completed{border-color:#78e0b1;background:#78e0b105;border-radius:5px}.set-row.completed .complete-set{color:#78e0b1;filter:drop-shadow(0 0 5px #78e0b133)}.add-exercise input{background:#0e1723;border-color:#ffffff0f;color:#d0dff4}.rest-timer{color:#a7d8d7;background:#7dded90a;border-color:#7dded923}.detail-source{background:#0b121c;color:#96a6c1;border:1px solid #ffffff08}.confirmation p{color:#a5b3cb}#toast{color:#dfd6ff;background:#292337f5;border:1px solid #b7a5ff28;box-shadow:0 8px 40px #00000060;backdrop-filter:blur(14px)}
.auth-shell{background:#090d14}.auth-art{background:radial-gradient(ellipse at 80% 15%,#8471c91e,transparent 55%),linear-gradient(150deg,#121824,#090d14);border-right:1px solid #ffffff08}.auth-art::after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--spectrum);background-size:300% 100%;animation:rainbow-flow 32s linear infinite}.auth-art h1{color:#edf0fa;font-weight:450}.auth-art em{background:var(--spectrum);background-size:300% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:rainbow-flow 36s linear infinite}.auth-art p{color:#8e9cb5}.auth-art small{color:#6c7f9e}.eyebrow.light{color:#a99acb}.auth-lines{opacity:.27}.auth-lines span{border-color:#b7a5ff33;background:linear-gradient(0deg,#b7a5ff04,transparent);animation:auth-float 18s ease-in-out infinite alternate}.auth-lines span:nth-child(2n){border-color:#7dded92b;animation-delay:-6s}.auth-lines span:nth-child(3n){border-color:#efabdc28;animation-delay:-12s}.auth-panel{background:radial-gradient(ellipse at 80% 80%,#7dded904,transparent 60%),#0d121c}.auth-panel h2{color:#e7eaf6;font-weight:500}.auth-panel p,.auth-note{color:#91a0bb}.auth-panel label{color:#b0bdd5}.pill{color:#bca8ef;background:#b7a5ff0d;border:1px solid #b7a5ff17;letter-spacing:1.5px}.auth-panel .button{padding:15px 17px}.auth-panel form{position:relative}
.signal-section{margin:0 0 23px}.signal-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.signal-heading h2{font-size:14px;margin:0}.signal-heading p{margin:5px 0 0;color:#8192ad;font-size:11px}.signal-reset{color:#ab99da;font-size:10px;background:none;border:0;padding:7px}.signal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.signal-tile{--signal:var(--accent);position:relative;isolation:isolate;text-align:left;border:1px solid #ffffff0c;border-radius:13px;background:linear-gradient(140deg,#18202b,#121924);padding:16px 18px;color:#c7d2e7;overflow:hidden;transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}.signal-tile:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--signal) 30%,transparent);box-shadow:0 9px 25px #00000025}.signal-tile.is-active{border-color:color-mix(in srgb,var(--signal) 45%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--signal) 8%,#141b26),#121924)}.signal-tile::before{content:"";position:absolute;left:17px;right:17px;top:0;height:1px;background:var(--signal);opacity:.55}.signal-tile.improving{--signal:var(--positive)}.signal-tile.stable{--signal:var(--steady)}.signal-tile.declining{--signal:var(--negative)}.signal-tile.unknown{--signal:#a39ab7}.signal-label{font-size:11px;font-weight:550;color:var(--signal);display:flex;align-items:center;gap:7px}.signal-value{font-size:29px;font-weight:550;font-variant-numeric:tabular-nums;letter-spacing:-1px;margin-top:11px;color:#e7eefb;line-height:1}.signal-detail{font-size:10px;color:#8293ad;margin-top:7px}.signal-glyph{position:absolute;right:19px;bottom:18px;width:49px;height:33px;display:flex;align-items:flex-end;gap:5px;opacity:.6;pointer-events:none}.signal-glyph i{display:block;flex:1;border-radius:3px 3px 0 0;background:linear-gradient(0deg,color-mix(in srgb,var(--signal) 10%,transparent),var(--signal));height:40%;transform-origin:bottom}.signal-glyph i:nth-child(2){height:64%}.signal-glyph i:nth-child(3){height:89%}.improving .signal-glyph i{animation:signal-rise 6s ease-in-out infinite}.improving .signal-glyph i:nth-child(2){animation-delay:.4s}.improving .signal-glyph i:nth-child(3){animation-delay:.8s}.declining .signal-glyph i:first-child{height:89%}.declining .signal-glyph i:nth-child(3){height:40%}.declining .signal-glyph i{animation:signal-settle 8s ease-in-out infinite}.declining .signal-glyph i:nth-child(2){animation-delay:.4s}.declining .signal-glyph i:nth-child(3){animation-delay:.8s}.stable .signal-glyph{align-items:center}.stable .signal-glyph i{height:3px;border-radius:2px;background:var(--steady);animation:steady-breathe 8s ease-in-out infinite}.stable .signal-glyph i:nth-child(2){animation-delay:.7s}.stable .signal-glyph i:nth-child(3){animation-delay:1.4s}.unknown .signal-glyph i{height:6px;border-radius:50%;opacity:.5}.signal-footnote{color:#8292ad;font-size:10px;line-height:1.7;margin:12px 1px 0}.trend-badge{--signal:#9ca8bd;display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:8px;position:relative;background:color-mix(in srgb,var(--signal) 7%,#111823);border:1px solid color-mix(in srgb,var(--signal) 18%,transparent);color:var(--signal);min-width:100px}.trend-badge>span{display:flex;flex-direction:column;gap:2px}.trend-badge b{font-weight:550;font-size:10px;color:var(--signal)}.trend-badge small{font-size:9px!important;color:var(--signal)!important;opacity:.8;margin:0!important;line-height:1.5}.trend-badge .trend-arrow{width:15px;height:15px;flex:none;opacity:.9}.trend-improving{--signal:var(--positive)}.trend-stable{--signal:var(--steady)}.trend-declining{--signal:var(--negative)}.trend-unknown{--signal:#9da8bd}.trend-improving .trend-arrow{animation:arrow-lift 6s ease-in-out infinite}.trend-declining .trend-arrow{animation:arrow-fall 8s ease-in-out infinite}.trend-stable .trend-arrow{animation:steady-breathe 7s ease-in-out infinite}.chart-summary .trend-badge span{color:var(--signal)}
[data-motion=on] .fx-reveal{opacity:0;transform:translateY(14px);transition:opacity .75s var(--ease),transform .75s var(--ease),border-color .4s,box-shadow .4s;transition-delay:var(--reveal-delay,0ms)}[data-motion=on] .fx-reveal.is-visible{opacity:1;transform:translateY(0)}[data-motion=on] .fx-reveal.is-visible .chart-line{animation:chart-appear 1.6s var(--ease) both}[data-motion=on] .fx-reveal.is-visible .activity-column .bar{animation:bar-arrive 1s var(--ease) both}[data-paused=true] *,[data-paused=true] *::before,[data-paused=true] *::after{animation-play-state:paused!important}[data-motion=off] *,[data-motion=off] *::before,[data-motion=off] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}[data-motion=off] .fx-reveal{opacity:1!important;transform:none!important}
@keyframes rainbow-flow{0%{background-position:0% 50%}100%{background-position:300% 50%}}@keyframes ambient-drift{from{transform:translate3d(-4%,-3%,0)}to{transform:translate3d(9%,5%,0)}}@keyframes auth-float{from{transform:translateY(0)}to{transform:translateY(-18px)}}@keyframes signal-rise{0%,100%{transform:scaleY(.84);opacity:.65}50%{transform:scaleY(1);opacity:1}}@keyframes signal-settle{0%,100%{opacity:.55;transform:scaleY(1)}50%{opacity:.85;transform:scaleY(.85)}}@keyframes steady-breathe{0%,100%{opacity:.6}50%{opacity:1}}@keyframes arrow-lift{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes arrow-fall{0%,100%{transform:translateY(0)}50%{transform:translateY(2px)}}@keyframes chart-appear{from{opacity:.1;filter:blur(2px)}to{opacity:1;filter:blur(0)}}@keyframes bar-arrive{from{transform:scaleY(.35);opacity:.4}to{transform:scaleY(1);opacity:1}}
@media(hover:none){.card::after,.stat::after,.signal-tile::after{display:none}.card:hover,.stat:hover{border-color:#ffffff0c;box-shadow:0 6px 22px #00000013}.signal-tile:hover{transform:none}.sidebar nav a:hover{transform:none}}
@media(max-width:1200px){.top-actions{gap:10px}.motion-toggle{font-size:9px;padding:5px 8px}.signal-tile{padding:14px}.signal-glyph{width:37px;right:13px;bottom:18px}.signal-value{font-size:27px}}
@media(max-width:950px){.sidebar{padding:25px 12px}.topbar{height:76px}.signal-grid{gap:10px}.signal-detail{font-size:9px}.signal-glyph{width:30px;opacity:.4}.signal-tile{padding:13px}.signal-label{font-size:10px}.signal-value{font-size:25px}main{padding-top:29px}}
@media(max-width:640px){.sidebar{background:#0d131ff5;border:1px solid #ffffff0b;border-bottom:0;backdrop-filter:blur(18px);padding:4px 9px}.sidebar::before{left:15px;right:15px;opacity:.5}.sidebar nav a.active{box-shadow:inset 0 2px #b7a5ff;border-color:#b7a5ff1c;background:#b7a5ff15}.topbar{height:67px}.motion-toggle{width:30px;height:30px;padding:3px;justify-content:center;border-radius:50%}.motion-toggle>span:last-child{display:none}.top-actions{gap:8px}.top-actions .button{padding:10px 12px}.breadcrumb{letter-spacing:.7px}.breadcrumb span{margin:0 7px}.stat{padding:17px;min-height:132px}.stat-value{font-size:30px}.stat-note{font-size:10px;line-height:1.6}.stat label{font-size:10px}.signal-grid{grid-template-columns:repeat(2,1fr);gap:10px}.signal-tile{padding:15px 16px;min-height:118px}.signal-value{font-size:28px}.signal-glyph{width:40px;right:15px;bottom:18px}.signal-label{font-size:11px}.signal-detail{font-size:10px}.signal-footnote{font-size:10px}.signal-heading p{max-width:240px;font-size:10px}.chart-summary{gap:12px}.chart-summary strong{font-size:24px}.chart-summary .trend-badge{margin-left:auto}.card-head{padding-top:21px}.card-head p{font-size:10px;line-height:1.6}.card-head select{font-size:10px}.trend-badge{min-width:95px;padding:6px 7px}.metric-pair{flex-wrap:wrap}.metric-pair>div:last-child{min-width:100%;display:flex;align-items:center;gap:13px;border-top:1px solid #ffffff09;padding-top:13px}.metric-pair>div:last-child>small{max-width:90px;margin:0;line-height:1.7}.metric-pair>div:last-child>p{margin:0;font-size:9px}.chart-note{font-size:10px}.auth-art{background:radial-gradient(ellipse at 80% 0%,#b7a5ff11,transparent 70%),#0f1520;min-height:145px}.auth-panel{min-height:calc(100vh - 145px);align-items:flex-start;padding-top:38px}h1{font-size:29px}table{font-size:11px}td{padding-top:15px;padding-bottom:15px}.scroll-progress{height:2px}dialog{border-radius:16px}footer{margin-bottom:5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.fx-reveal{opacity:1!important;transform:none!important}}
.stat.featured{border:1px solid transparent;background:linear-gradient(135deg,#1e2232,#171c28) padding-box,var(--spectrum) border-box;background-size:100% 100%,300% 100%;animation:featured-spectrum 36s linear infinite}.card[data-performance=improving] .legend b{background:var(--positive)}.card[data-performance=stable] .legend b{background:var(--steady)}.card[data-performance=declining] .legend b{background:var(--negative)}footer span{color:#8192ad}@keyframes featured-spectrum{from{background-position:0 0,0% 50%}to{background-position:0 0,300% 50%}}@keyframes chart-appear{from{opacity:.1;filter:blur(2px)}to{opacity:1;filter:drop-shadow(0 0 4px currentColor)}}
@media(prefers-contrast:more){:root{--muted:#c2cce0;--line:#ffffff35}.card,.stat,.signal-tile{border-color:#ffffff35}.chart-note,.card-head p,.stat-note,.subtitle,.signal-detail,.signal-footnote,td small,.legend{color:#bbc8df}.chart svg text{fill:#c9d5e9}.button{border-color:#ffffff44}}
