:root{color-scheme:light;--bg: #f6f3ee;--surface: #ffffff;--surface-strong: #fffaf2;--text: #251f18;--muted: #6e665b;--line: #ded6ca;--accent: #b51f2a;--accent-dark: #7e1420;--ok: #1e7a45;--warn: #a45d00;--shadow: 0 18px 45px rgba(35, 28, 19, .1);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(180deg,rgba(181,31,42,.08),transparent 240px),var(--bg)}button,input,select{font:inherit}button{min-height:42px;border:1px solid var(--accent);border-radius:6px;background:var(--accent);color:#fff;padding:0 16px;font-weight:700;cursor:pointer}button:hover{background:var(--accent-dark);border-color:var(--accent-dark)}button:disabled{cursor:not-allowed;opacity:.45}button.secondary{background:#fff;color:var(--text);border-color:var(--line)}button.secondary:hover,.view-switch button:hover,.tabs button:hover{border-color:var(--accent);color:var(--accent-dark);background:var(--surface-strong)}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(181,31,42,.25);outline-offset:2px}input,select{min-height:42px;width:100%;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--text);padding:0 12px}label span{display:block;margin-bottom:6px;color:var(--muted);font-size:.82rem;font-weight:700}.shell{width:min(1120px,calc(100% - 24px));margin:0 auto;padding:18px 0 34px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;margin-bottom:16px}.topbar strong{display:block;font-size:1.18rem}.eyebrow{display:block;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.view-switch,.tabs{display:flex;gap:6px;flex-wrap:wrap}.view-switch button,.tabs button{min-height:38px;background:#fff;color:var(--text);border-color:var(--line)}.view-switch button.active,.tabs button.active{color:#fff;border-color:var(--accent);background:var(--accent)}.notice{border-radius:6px;padding:12px 14px;margin-bottom:14px;font-weight:700}.notice.error{color:#7a101a;background:#ffe8e9;border:1px solid #f4b8bd}.notice.success{color:#145f35;background:#e6f5ec;border:1px solid #a8d7b9}.panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:18px}.auth-panel{max-width:440px;margin:46px auto 0}.panel+.panel,.tabs+.panel{margin-top:12px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}h1{margin:0;font-size:1.45rem;line-height:1.18}h2{margin:18px 0 10px;font-size:1rem;line-height:1.2}p{margin:4px 0 0;color:var(--muted)}.stack{display:grid;gap:14px;margin-top:18px}.inline-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,1fr) auto;gap:12px;align-items:end;margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-strong)}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.metrics div{min-height:72px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fff}.metrics span{display:block;color:var(--muted);font-size:.8rem;font-weight:800}.metrics strong{display:block;margin-top:2px;font-size:1.7rem}.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:8px}.compact-table{margin-top:8px}table{width:100%;min-width:560px;border-collapse:collapse}.score-table{min-width:0}th,td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:middle}th{background:#f3ede4;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase}tr:last-child td{border-bottom:0}td input{min-width:150px}.rank{width:78px;color:var(--muted);font-weight:800}.number{text-align:right}.points{text-align:right;font-size:1.35rem;font-weight:900;color:var(--accent-dark)}.empty{border:1px dashed var(--line);border-radius:8px;padding:22px;color:var(--muted);background:#fffdf8}.archive-controls{max-width:260px;margin-bottom:16px}@media(max-width:720px){.shell{width:min(100% - 16px,1120px);padding-top:10px}.topbar,.panel-head{display:grid}.view-switch,.tabs{width:100%}.view-switch button,.tabs button{flex:1 1 128px}.panel{padding:14px}.inline-form,.metrics{grid-template-columns:1fr}.inline-form button,.panel-head button{width:100%}h1{font-size:1.25rem}.score-table th,.score-table td{padding:10px 8px}.score-table .rank{width:54px}}
