:root{color-scheme:dark;--surface-0: #06080b;--surface-1: #0b0e12;--surface-2: #0f1318;--surface-3: #151a20;--surface-4: #1c222a;--border-subtle: #1d232b;--border-strong: #2c343f;--text-primary: #f3f5f8;--text-secondary: #c5ccd5;--text-muted: #8a939f;--brand-gold: #f2b53a;--brand-gold-soft: #f7c95d;--brand-gold-deep: #b8841f;--series-1: #f5c542;--series-2: #2ec4b6;--series-3: #f08a3e;--series-4: #9b7df0;--series-5: #e5566b;--series-6: #3dcc6e;--series-7: #3fa9f5;--series-8: #7d8591;--series-1-text: #ffd966;--series-2-text: #5fe0d3;--series-3-text: #ffab6b;--series-4-text: #b9a3ff;--series-5-text: #ff8597;--series-6-text: #6be394;--series-7-text: #7cc4ff;--series-8-text: #b3bac4;--success: #3dcc6e;--success-text: #5fe08a;--danger: #e5484d;--danger-text: #ff7b7f;--info: #3fa9f5;--info-text: #7cc4ff;--font-sans: "Segoe UI", "Inter", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-serif: "Playfair Display", Georgia, "Times New Roman", serif;--font-mono: "JetBrains Mono", ui-monospace, Consolas, "Courier New", monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--layout-max: 1720px;--ease-out: cubic-bezier(.22, 1, .36, 1);--motion-fast: .16s;--motion-base: .28s;--motion-slow: .55s;--shadow-raised: 0 1px 2px rgb(0 0 0 / .5), 0 4px 12px rgb(0 0 0 / .35);--shadow-pressed: inset 0 2px 5px rgb(0 0 0 / .55)}*{padding:0;margin:0;border:0;box-sizing:border-box}body{background-color:var(--surface-0);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit;background:none;color:inherit}.tab-body{display:flex;flex-direction:column;gap:var(--space-4)}.grid{display:grid;gap:var(--space-4)}.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid--5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid--duo-wide{grid-template-columns:minmax(0,.9fr) minmax(0,1fr)}.grid--main-side{grid-template-columns:minmax(0,2.4fr) minmax(0,1fr)}.grid--side-main{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr)}.stack{display:grid;gap:var(--space-4);align-content:start}@media(max-width:1440px){.grid--5{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1200px){.grid--4,.grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}.grid--3>:nth-child(3):last-child{grid-column:1 / -1}.grid--duo-wide,.grid--main-side,.grid--side-main{grid-template-columns:minmax(0,1fr)}}@media(max-width:900px){.grid--2,.grid--3{grid-template-columns:minmax(0,1fr)}.grid--5{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.grid--4,.grid--5{grid-template-columns:minmax(0,1fr)}}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.875rem;font-variant-numeric:tabular-nums}.table th{padding:.5rem .625rem;border-bottom:1px solid var(--border-subtle);color:var(--text-muted);font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-align:left;text-transform:uppercase;white-space:nowrap}.table td{padding:.5rem .625rem;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary)}.table .num{text-align:right;white-space:nowrap}.table .mid{text-align:center;white-space:nowrap}.table tbody tr:hover td{background:color-mix(in srgb,var(--surface-4) 55%,transparent);color:var(--text-primary)}.table tfoot td{border-top:1px solid var(--border-strong);border-bottom:none;color:var(--text-primary);font-weight:700}.table--compact td{padding-block:.375rem}.table .strong{color:var(--text-primary);font-weight:600}.swatch{display:inline-block;flex:none;width:10px;height:10px;border-radius:3px}.cell-label{display:inline-flex;align-items:center;gap:var(--space-2)}@media(max-width:900px){.table{width:max-content;min-width:100%}}.meter{display:flex;align-items:center;gap:var(--space-2);min-width:8rem}.meter__track{flex:1;height:7px;border-radius:999px;background:var(--surface-4);overflow:hidden}.meter__fill{display:block;height:100%;border-radius:999px;background:var(--series-7);transition:width var(--motion-slow) var(--ease-out)}.meter__fill--ok{background:var(--success)}.meter__value{min-width:3.25rem;color:var(--text-primary);text-align:right}.badge{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;white-space:nowrap}.badge--teal{background:color-mix(in srgb,var(--series-2) 20%,transparent);color:var(--series-2-text)}.badge--orange{background:color-mix(in srgb,var(--series-3) 28%,transparent);color:var(--series-3-text)}.badge--danger{background:color-mix(in srgb,var(--danger) 22%,transparent);color:var(--danger-text)}.t-danger{color:var(--danger-text)!important;font-weight:700}.t-muted{color:var(--text-muted)}.info-box{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4);border:1px solid color-mix(in srgb,var(--info) 32%,var(--border-subtle));border-radius:var(--radius-lg);background:linear-gradient(135deg,color-mix(in srgb,var(--info) 12%,var(--surface-2)),var(--surface-1));color:var(--text-secondary);font-size:.875rem;line-height:1.5}.info-box__icon{flex:none;margin-top:1px;color:var(--info-text)}.info-box__title{margin-bottom:var(--space-2);color:var(--text-primary);font-size:1rem;font-weight:700}.info-box ul{display:grid;gap:var(--space-2);padding-left:1.1rem}.hl{color:var(--info-text)}.hl-gold{color:var(--brand-gold-soft);font-weight:600}.empty{padding:var(--space-5) var(--space-3);color:var(--text-muted);text-align:center}.board-wrap{container-type:inline-size;flex:1}.board{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(0,1.4fr);align-items:center;gap:var(--space-5);height:100%}.board>app-donut-chart{width:100%}@container (max-width: 420px){.board{grid-template-columns:minmax(0,1fr)}}.board__note{color:var(--text-muted);font-size:.75rem;line-height:1.45}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:40px;padding:0 1rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-3);color:var(--text-secondary);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;cursor:pointer}.btn:hover:not(:disabled){border-color:var(--text-muted);color:var(--text-primary)}.btn--gold{border-color:var(--brand-gold);background:color-mix(in srgb,var(--brand-gold) 7%,transparent);color:var(--brand-gold-soft)}.btn--gold:hover:not(:disabled){border-color:var(--brand-gold-soft);color:var(--brand-gold-soft)}.btn--solid{border-color:transparent;background:var(--brand-gold);color:#1a1400}.btn--solid:hover:not(:disabled){border-color:transparent;background:var(--brand-gold-soft);color:#1a1400}.btn--sm{height:32px;padding:0 .75rem;font-size:.6875rem}.btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn{display:grid;flex:none;place-items:center;width:40px;height:40px;border:1px solid var(--border-subtle);border-radius:50%;color:var(--text-secondary);cursor:pointer}.icon-btn:hover:not(:disabled){border-color:var(--border-strong);color:var(--text-primary)}.icon-btn--on{border-color:var(--brand-gold);color:var(--brand-gold-soft)}.icon-btn:disabled{opacity:.5;cursor:progress}.control{height:40px;min-width:0;padding:0 .75rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-primary);font-size:.875rem}.control:hover{border-color:var(--text-muted)}select.control{padding-right:2.25rem;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23c5ccd5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;cursor:pointer}select.control option{background:var(--surface-2);color:var(--text-primary)}input[type=date].control{color-scheme:dark}.control--sm{height:32px;padding-inline:.5rem;font-size:.8125rem}select.control--sm{padding-right:2rem}.filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.search{display:flex;flex:1 1 360px;gap:var(--space-2)}.search__input{flex:1 1 220px}.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:.8125rem}.pager__nav{display:flex;gap:var(--space-2)}@media(max-width:560px){.search{flex-wrap:wrap}}.link{display:inline-flex;align-items:center;gap:4px;color:var(--text-primary);text-decoration:none}.link:hover{color:var(--brand-gold-soft)}.sr-only{position:absolute;overflow:hidden;width:1px;height:1px;clip-path:inset(50%);white-space:nowrap}.dots{display:inline-flex;align-items:flex-end;gap:3px;margin-left:5px;height:1em;padding-bottom:.25em}.dots__dot{width:4px;height:4px;border-radius:50%;background:currentColor;animation:dots-bounce 1.05s infinite ease-in-out}.dots__dot:nth-child(2){animation-delay:.15s}.dots__dot:nth-child(3){animation-delay:.3s}@keyframes dots-bounce{0%,75%,to{transform:translateY(0);opacity:.5}35%{transform:translateY(-5px);opacity:1}}button,[role=button],a.session__link,.btn,.icon-btn,.tab{transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease,opacity var(--motion-fast) ease}.btn:active:not(:disabled),.icon-btn:active:not(:disabled){transform:translateY(1px) scale(.985);box-shadow:var(--shadow-pressed);transition-duration:.06s}:focus-visible{outline:2px solid var(--brand-gold);outline-offset:2px;border-radius:var(--radius-sm)}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.enter{animation:rise-in var(--motion-base) var(--ease-out) both;animation-delay:var(--enter-delay, 0s)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.dots__dot{animation:none;opacity:.8}}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border:2px solid transparent;background-clip:padding-box;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--brand-gold-deep);background-clip:padding-box}::selection{background:color-mix(in srgb,var(--brand-gold) 35%,transparent);color:var(--text-primary)}
