:root{--pine:#123a2a;--pine-deep:#0c271c;--brass:#b08a3a;--brass-bright:#c9a24e;--paper:#f5f6f3;--card:#fff;--ink:#17211c;--ink-soft:#55605a;--ink-faint:#8a938d;--line:#14281e21;--good:#1c5a3e;--good-bg:#123a2a17;--warn:#8a5a12;--warn-bg:#c88c1e21;--danger:#9b2c2c;--radius:10px;--serif:Georgia, "Times New Roman", serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}@media (prefers-color-scheme:dark){:root{--pine:#163527;--paper:#0e1512;--card:#15201a;--ink:#eaf0eb;--ink-soft:#a9b4ad;--ink-faint:#718077;--line:#e6f0e821;--good:#7fd0a0;--good-bg:#78c8961f;--warn:#e0b25e;--warn-bg:#c8962829;--danger:#e88b8b}}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}h1,h2,h3{margin:0;font-weight:500}a{color:var(--good)}.topbar{background:var(--pine);color:#f3efe4;justify-content:space-between;align-items:center;gap:16px;padding:14px 22px;display:flex}.brand{font-family:var(--serif);color:#f5efdf;font-size:19px}.brand small{font-family:var(--sans);color:#bfc7bc;letter-spacing:.04em;font-size:12px;display:block}.topbar .who{color:#cfd6cd;align-items:center;gap:12px;font-size:13px;display:flex}.wrap{max-width:940px;margin:0 auto;padding:26px 20px 60px}.panel{background:var(--card);border:1px solid var(--line);border-radius:12px;margin-bottom:16px;padding:18px 20px}.panel h2{margin-bottom:4px;font-size:16px}.muted{color:var(--ink-soft);font-size:13.5px}.faint{color:var(--ink-faint);font-size:12.5px}label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:5px;font-size:12px;display:block}input,select{width:100%;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:9px 11px;font-size:14px}input:focus,select:focus{outline:2px solid var(--brass);outline-offset:1px}.grid{gap:12px;display:grid}.grid.cols4{grid-template-columns:1.4fr 1fr 1fr 1fr}@media (width<=760px){.grid.cols4{grid-template-columns:1fr}}button{font:inherit;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;padding:9px 15px;font-size:14px;font-weight:500}button:hover:not(:disabled){border-color:var(--brass)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--pine);border-color:var(--pine);color:#f5efdf}button.primary:hover:not(:disabled){background:var(--pine-deep)}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.tlist{flex-direction:column;gap:10px;display:flex}.titem{background:var(--card);border:1px solid var(--line);border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.titem.active{border-color:color-mix(in srgb, var(--brass) 45%, var(--line))}.tname{font-size:15.5px;font-weight:500}.pill{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:500;display:inline-block}.pill.active{background:var(--good-bg);color:var(--good)}.pill.scheduled{background:var(--warn-bg);color:var(--warn)}.pill.closed{color:var(--ink-faint);background:#80808024}.stats{color:var(--ink-soft);flex-wrap:wrap;gap:14px;margin-top:4px;font-size:12.5px;display:flex}.stats b{color:var(--ink);font-weight:500}.review-flag{color:var(--warn);font-weight:500}.tabs{gap:6px;display:flex}.tabs button{border-radius:999px;padding:7px 14px}.tabs button.on{background:var(--pine);border-color:var(--pine);color:#f5efdf}ol.board{flex-direction:column;gap:7px;margin:0;padding:0;list-style:none;display:flex}.brow{background:var(--card);border:1px solid var(--line);border-radius:12px;grid-template-columns:40px 1fr auto auto;align-items:center;gap:14px;padding:11px 15px;display:grid}.brow.top{border-color:color-mix(in srgb, var(--brass) 42%, var(--line))}.brow .rank{font-family:var(--serif);text-align:center;color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:19px}.brow .medal{width:32px;height:32px;font-family:var(--serif);border-radius:50%;justify-content:center;align-items:center;margin:0 auto;font-size:15px;display:flex}.brow .m1{color:#3a2c07;background:#c9a24e}.brow .m2{color:#20262a;background:#b9bfc4}.brow .m3{color:#2c1608;background:#c08a5a}.brow .who{min-width:0}.brow .name{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:500;overflow:hidden}.brow .handle{color:var(--ink-faint);font-size:12.5px}.brow .pts{color:var(--ink-soft);background:var(--good-bg);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:7px;padding:4px 10px;font-size:12.5px;font-weight:500}.brow .par{text-align:right;min-width:56px}.brow .par b{color:var(--good);font-variant-numeric:tabular-nums;font-size:19px;font-weight:500}.brow .par span{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);font-size:10.5px;display:block}@media (width<=520px){.brow{grid-template-columns:34px 1fr auto}.brow .pts{display:none}}.review{grid-template-columns:260px 1fr;align-items:start;gap:20px;display:grid}@media (width<=820px){.review{grid-template-columns:1fr}}.shot img{border-radius:var(--radius);border:1px solid var(--line);width:100%;display:block}.grid-tbl{border-collapse:collapse;width:100%;margin-top:14px}.grid-tbl th,.grid-tbl td{padding:2px}.grid-tbl thead th{color:var(--ink-faint);text-align:center;padding-bottom:4px;font-size:11px;font-weight:500}.rowlabel{color:var(--ink-soft);text-align:left;white-space:nowrap;padding-right:8px;font-size:12px;font-weight:500}input.cell{text-align:center;font-variant-numeric:tabular-nums;border-radius:6px;width:100%;min-width:34px;padding:6px 2px;font-size:13px}input.cell.out{background:var(--card);border-color:var(--brass);font-weight:500}.ck{text-align:center;font-variant-numeric:tabular-nums;width:34px;font-size:13px;font-weight:500}.center{justify-content:center;align-items:center;min-height:70vh;padding:20px;display:flex}.login{text-align:center;width:100%;max-width:380px}.login .crown{color:var(--brass-bright);margin-bottom:10px}.login h1{font-family:var(--serif);margin-bottom:6px;font-size:27px}.notice{border-radius:var(--radius);margin-top:12px;padding:10px 12px;font-size:13.5px}.notice.ok{background:var(--good-bg);color:var(--good)}.notice.err{color:var(--danger);background:#b43c3c1f}
