:root{--u:1px;--bg:#f6f7f9;--surface:#fff;--border:#e3e6ea;--text:#1a1d21;--muted:#667085;--accent:#2f6fed;--danger:#c0392b;--on-accent:#fff;--border-field:#868e9c;--accent-soft:#eaf0fe;--accent-disabled:#a9bff2;--accent-hover:#2a64d5;--accent-strong:#285ec9;--success:#1f7a45;--success-soft:#e4efe9;--warning:#c47f17;--warning-strong:#935f11;--warning-soft:#f7eddf;--danger-soft:#f9ebea;--chart-grid:#eef0f3;--chart-blue:#9db8f5;--chart-orange:#e08a3c;--chart-purple:#8e5bd0;--chart-teal:#0f8ea8;--chart-gray:#9aa3ad;--space-1:calc(4 * var(--u));--space-2:calc(8 * var(--u));--space-3:calc(12 * var(--u));--space-4:calc(16 * var(--u));--space-5:calc(20 * var(--u));--space-6:calc(24 * var(--u));--space-8:calc(32 * var(--u));--space-10:calc(40 * var(--u));--radius-xs:calc(4 * var(--u));--radius-sm:calc(6 * var(--u));--radius:calc(10 * var(--u));--radius-pill:999px;--shadow-pop:0 calc(8 * var(--u)) calc(24 * var(--u)) #1a1d2129;--text-xs:calc(12 * var(--u));--text-sm:calc(13 * var(--u));--text-md:calc(14 * var(--u));--text-lg:calc(16 * var(--u));--text-xl:calc(22 * var(--u))}*{box-sizing:border-box}h1,h2,h3,h4{color:var(--text);margin:0;font-weight:600}h1{font-size:var(--text-xl);line-height:calc(28 * var(--u))}h2{font-size:var(--text-lg);line-height:calc(24 * var(--u))}h3{font-size:var(--text-md);line-height:calc(20 * var(--u))}h4{font-size:var(--text-sm);line-height:calc(20 * var(--u))}p{margin:0}a{color:var(--accent)}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}button,.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:calc(36 * var(--u));padding:var(--space-2) var(--space-4);font:inherit;font-weight:500;line-height:calc(20 * var(--u));color:var(--on-accent);background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-sm);cursor:pointer;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}button:hover:not(:disabled),.button:hover{color:var(--on-accent);background:var(--accent-hover);border-color:var(--accent-hover)}button.secondary,.button.secondary{color:var(--text);background:var(--surface);border-color:var(--border)}button.secondary:hover:not(:disabled),.button.secondary:hover{color:var(--text);background:var(--bg);border-color:var(--muted)}button.secondary:disabled{color:var(--muted);background:var(--bg);border-color:var(--border)}button.ghost{color:var(--accent-strong);background:0 0;border-color:#0000}button.ghost:hover:not(:disabled){color:var(--accent-strong);background:var(--accent-soft);border-color:#0000}button:disabled,button[aria-disabled=true],button[aria-disabled=true]:hover:not(:disabled),button.secondary[aria-disabled=true],button.secondary[aria-disabled=true]:hover:not(:disabled),button.ghost[aria-disabled=true],button.ghost[aria-disabled=true]:hover:not(:disabled){color:var(--muted);background:var(--bg);border-color:var(--border);cursor:default}.icon-button,button.icon-button{min-height:0;padding:var(--space-1);color:var(--muted);background:0 0;border-color:#0000}button.icon-button:hover:not(:disabled){color:var(--text);background:var(--bg);border-color:#0000}button.icon-button:disabled,button.icon-button[aria-disabled=true],button.icon-button[aria-disabled=true]:hover:not(:disabled){color:var(--muted);opacity:.6;background:0 0;border-color:#0000}.range-picker{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.range-picker button{min-height:calc(32 * var(--u));white-space:nowrap;padding:var(--space-1) var(--space-3);font-size:var(--text-sm);color:var(--muted);background:var(--surface);border-color:var(--border)}.range-picker button:hover:not(:disabled){color:var(--text);background:var(--bg);border-color:var(--muted)}.range-picker button.active,.range-picker button[aria-pressed=true]{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.range-picker button.active:hover:not(:disabled),.range-picker button[aria-pressed=true]:hover:not(:disabled){color:var(--on-accent);background:var(--accent-hover);border-color:var(--accent-hover)}.range-picker .divider{width:1px;height:calc(20 * var(--u));margin:0 var(--space-1);background:var(--border)}.badge{align-items:center;gap:var(--space-1);padding:calc(2 * var(--u)) var(--space-2);font-size:var(--text-xs);font-weight:500;line-height:calc(16 * var(--u));color:var(--on-accent);white-space:nowrap;background:var(--muted);border-radius:var(--radius-pill);display:inline-flex}.badge.good,.badge.success{background:var(--success)}.badge.bad,.badge.danger{background:var(--danger)}.badge.warning{background:var(--warning-strong)}.badge.accent{background:var(--accent)}.badge.neutral{color:var(--muted);background:var(--bg);box-shadow:inset 0 0 0 1px var(--border)}.skeleton{background:linear-gradient(90deg, var(--border) 25%, var(--bg) 50%, var(--border) 75%) 0 0 / 200% 100%;border-radius:var(--radius-sm);max-width:100%;animation:1.4s ease-in-out infinite skeleton-shimmer;display:block}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.markdown{overflow-wrap:anywhere}.markdown p{margin:var(--space-2) 0}.markdown h3,.markdown h4{margin:var(--space-4) 0 var(--space-2)}.markdown ul,.markdown ol{margin:var(--space-2) 0;padding-left:var(--space-5)}.markdown li{margin:var(--space-1) 0}.markdown hr{margin:var(--space-4) 0;border:none;border-top:1px solid var(--border)}.markdown code{padding:0 var(--space-1);font-size:var(--text-sm);background:var(--bg);border-radius:var(--radius-xs)}@property --u{syntax:"<length>";inherits:true;initial-value:1px}:root{--u:clamp(1px, calc(.5px + 100vw / 3200), 2px);--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:var(--text-md);color:var(--text);line-height:1.5}html{-webkit-text-size-adjust:100%}body{background:var(--bg);margin:0}[hidden]{display:none!important}input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:calc(36 * var(--u));padding:var(--space-2) var(--space-3);font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-field);border-radius:var(--radius-sm);transition:border-color .15s,box-shadow .15s}input:not([type=checkbox]):not([type=radio]):hover,select:hover,textarea:hover{border-color:var(--muted)}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 calc(3 * var(--u)) var(--accent-soft);outline:none}input:disabled,select:disabled,textarea:disabled{color:var(--muted);background:var(--bg);cursor:default}input::placeholder,textarea::placeholder{color:var(--muted)}select{text-overflow:ellipsis;min-width:0;max-width:100%}label:has(>select){min-width:0;max-width:100%}input[type=checkbox],input[type=radio]{width:calc(16 * var(--u));height:calc(16 * var(--u));accent-color:var(--accent);cursor:pointer;margin:0}textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-sm);resize:vertical}.field{gap:var(--space-1);margin-bottom:var(--space-3);color:var(--muted);font-size:var(--text-sm);flex-direction:column;display:flex}.field input,.field select,.field textarea{font-size:var(--text-md)}.error{color:var(--danger)}.layout{min-height:100dvh;display:flex}.skip-link{top:var(--space-2);left:var(--space-2);z-index:100;padding:var(--space-2) var(--space-3);background:var(--surface);border-radius:var(--radius-sm);position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:none}.sidebar{gap:var(--space-6);width:calc(220 * var(--u));height:100dvh;padding:var(--space-5) var(--space-4);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-top{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.brand{font-size:var(--text-lg);color:var(--text);font-weight:600;text-decoration:none}a.brand:hover{color:var(--text)}.menu-toggle{display:none}.sidebar-menu{gap:var(--space-6);flex-direction:column;flex:1;display:flex}.sidebar nav{gap:calc(2 * var(--u));flex-direction:column;display:flex}.sidebar nav a{padding:var(--space-2) var(--space-3);color:var(--muted);border-radius:var(--radius-sm);text-decoration:none;transition:background-color .15s,color .15s}.sidebar nav a:hover{color:var(--text);background:var(--bg)}.sidebar nav a.active{color:var(--accent-strong);background:var(--accent-soft);font-weight:500}.sidebar-footer{align-items:flex-start;gap:var(--space-2);color:var(--muted);flex-direction:column;margin-top:auto;display:flex}.sidebar-user{overflow-wrap:anywhere;flex-direction:column;display:flex}.sidebar-role{font-size:var(--text-xs)}.content{min-width:0;padding:var(--space-6);flex:1}.content:focus{outline:none}.centered{min-height:100dvh;padding:var(--space-4);justify-content:center;align-items:center;display:flex}.starting-up{align-items:center;gap:var(--space-3);color:var(--muted);flex-direction:column;display:flex}.page{gap:var(--space-5);flex-direction:column;display:flex}.page-header{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-heading{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.page-title{align-items:center;gap:var(--space-2);display:flex}.page-description{color:var(--muted)}.page-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.card{min-width:0;padding:var(--space-5) var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.card h2{margin:0 0 var(--space-3)}.card>.page-header{margin-bottom:var(--space-3)}.card .page-header h2{margin:0}.card:has(>table){overflow-x:auto}.subtle{color:var(--muted);font-size:var(--text-sm)}.range-picker .search{min-width:calc(200 * var(--u))}.tiles{grid-template-columns:repeat(auto-fit, minmax(min(calc(170 * var(--u)), 100%), 1fr));gap:var(--space-3);display:grid}.tile{gap:var(--space-1);min-width:0;padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;display:flex}.tile-label{color:var(--muted);font-size:var(--text-xs)}.tile-label-tail{white-space:nowrap}.tile-label .hint{margin-left:var(--space-1)}.tile-value{font-size:var(--text-xl);font-weight:600;line-height:calc(28 * var(--u));font-variant-numeric:tabular-nums;white-space:nowrap}.tile-change{font-size:var(--text-xs)}.tile-change.good{color:var(--success)}.tile-change.bad{color:var(--danger)}.tile-change.neutral{color:var(--muted)}.tile-hint{color:var(--muted);font-size:var(--text-xs)}.table-wrap{background:linear-gradient(to right, var(--surface) 30%, transparent) left center / calc(24 * var(--u)) 100% no-repeat local, linear-gradient(to left, var(--surface) 30%, transparent) right center / calc(24 * var(--u)) 100% no-repeat local, linear-gradient(to right, #0000001f, transparent) left center / calc(10 * var(--u)) 100% no-repeat scroll, linear-gradient(to left, #0000001f, transparent) right center / calc(10 * var(--u)) 100% no-repeat scroll;max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}th,td{padding:var(--space-2) var(--space-3);text-align:left;vertical-align:top;border-bottom:1px solid var(--border)}th{color:var(--muted);white-space:nowrap;font-weight:500}tbody tr{transition:background-color .15s}tbody tr:hover{background:var(--bg)}tbody tr:last-child td{border-bottom:none}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.error-cell{max-width:calc(320 * var(--u));color:var(--danger);font-size:var(--text-xs);overflow-wrap:anywhere}@media (width>=1280px){th,th.num{white-space:normal}}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip,button.chip{min-height:calc(28 * var(--u));padding:var(--space-1) var(--space-3);font-size:var(--text-xs);color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);white-space:nowrap}button.chip:hover:not(:disabled){color:var(--text);background:var(--bg);border-color:var(--muted)}.chip.on,.chip[aria-pressed=true],button.chip.on:hover:not(:disabled),button.chip[aria-pressed=true]:hover:not(:disabled){color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.state{align-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-6);text-align:center;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);flex-direction:column;display:flex}.state-icon{color:var(--muted)}.state-title{font-weight:600}.state-text{max-width:calc(520 * var(--u));color:var(--muted);font-size:var(--text-sm)}.state .button,.state button{margin-top:var(--space-2)}.state-error{border-style:solid}.state-error .state-icon{color:var(--danger)}.centered .state{width:min(calc(440 * var(--u)), 100%)}.tile .skeleton+.skeleton,.skeleton-card .skeleton+.skeleton{margin-top:var(--space-2)}.skeleton-card{flex-direction:column;display:flex}.hint{vertical-align:middle;display:inline-flex}button.hint-trigger{width:calc(18 * var(--u));height:calc(18 * var(--u));min-height:0;font-size:calc(11 * var(--u));color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);padding:0;font-weight:600;line-height:1}@media (pointer:coarse){button.hint-trigger{position:relative}button.hint-trigger:after{content:"";position:absolute;inset:-12px}.table-wrap{scroll-padding-inline:16px}.table-wrap th{padding-block:12px}.table-wrap th:last-child{padding-right:24px}}button.hint-trigger:hover:not(:disabled){color:var(--accent-strong);background:var(--accent-soft);border-color:var(--accent-strong)}.hint-bubble{z-index:60;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--on-accent);text-align:left;white-space:normal;background:var(--text);border-radius:var(--radius-sm);box-shadow:var(--shadow-pop);font-weight:400;line-height:1.45;position:fixed}.toaster{right:var(--space-6);bottom:var(--space-6);z-index:70;gap:var(--space-2);width:min(calc(380 * var(--u)), calc(100vw - 2 * var(--space-4)));pointer-events:none;flex-direction:column;display:flex;position:fixed}.toaster-group{gap:var(--space-2);flex-direction:column;display:flex}.toast{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--border);border-left:calc(4 * var(--u)) solid var(--success);border-radius:var(--radius-sm);box-shadow:var(--shadow-pop);pointer-events:auto;animation:.2s ease-out toast-in;display:flex}.toast>svg{margin-top:calc(2 * var(--u));color:var(--success);flex-shrink:0}.toast-error{border-left-color:var(--danger)}.toast-error>svg{color:var(--danger)}.toast-text{flex:1}@keyframes toast-in{0%{opacity:0;transform:translateY(calc(8 * var(--u)))}to{opacity:1;transform:none}}.login{gap:var(--space-4);width:min(calc(360 * var(--u)), 100%);flex-direction:column;display:flex}.login .field{margin-bottom:0}.login-footer{text-align:center}.week-label{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.rating-list{gap:var(--space-3);flex-direction:column;display:flex}.rating{padding:var(--space-4)}.rating.bad{border-left:calc(3 * var(--u)) solid var(--danger)}.rating-header{align-items:center;gap:var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.rating-comment{margin:var(--space-3) 0}.rating-controls{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.rating-controls .notes{min-width:min(calc(220 * var(--u)), 100%);flex:1}.source{padding-bottom:var(--space-4)}.source table{margin-top:var(--space-2)}.banner{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.banner button{margin-left:auto}.problems{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.problems li{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.content .markdown{max-width:calc(760 * var(--u))}.digest{grid-template-columns:minmax(calc(280 * var(--u)), 1fr) minmax(calc(320 * var(--u)), 1.2fr);gap:var(--space-4);align-items:start;display:grid}.digest-text{width:100%;margin-bottom:var(--space-3)}@media (width<=900px){.digest{grid-template-columns:minmax(0,1fr)}}@media (width<=1023px){.layout{flex-direction:column}.sidebar{z-index:40;width:auto;height:auto;max-height:100dvh;padding:var(--space-2) var(--space-4);border-right:none;border-bottom:1px solid var(--border);gap:0}.menu-toggle{display:inline-flex}.sidebar-menu{padding:var(--space-2) 0 var(--space-3);display:none}.sidebar[data-open=true] .sidebar-menu{gap:var(--space-4);display:flex}.sidebar-footer{flex-direction:row;justify-content:space-between;align-items:center;width:100%}}@media (width<=767px){.content,.card{padding:var(--space-4)}.state{padding:var(--space-8) var(--space-4)}.range-picker .search{flex:1 1 calc(160 * var(--u));min-width:0}.toaster{right:var(--space-4);bottom:var(--space-4);left:var(--space-4);width:auto}}@media (pointer:coarse){:root button:not(.hint-trigger),.button,.sidebar nav a{min-height:max(44px, calc(36 * var(--u)))}.sidebar nav a{align-items:center;display:flex}.icon-button{min-width:44px}input:not([type=checkbox]):not([type=radio]),select,textarea,.field select,.field textarea{font-size:max(16px, var(--text-md))}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
