:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f6f8;--card:#fff;--card2:#e9edf2;--text:#14181d;--muted:#5a6572;--accent:#2b8a3e;--accent2:#1864ab;--accent2-text:#1864ab;--danger:#c92a2a;--warn:#9a6700;--border:#d6dce3;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-family:system-ui,-apple-system,Hiragino Sans,Noto Sans JP,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1419;--card:#1a212b;--card2:#232c38;--text:#e6edf3;--muted:#8b98a5;--accent:#2f9e44;--accent2:#1971c2;--accent2-text:#6cb6f5;--danger:#ff6b6b;--warn:#ffd43b;--border:#2d3744}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;touch-action:manipulation;margin:0}:focus-visible{outline:2px solid var(--accent2-text);outline-offset:2px}.container{max-width:720px;padding:16px;padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right));margin:0 auto}h1{font-size:1.5rem}h2{margin:0 0 8px;font-size:1rem}.setup{flex-direction:column;gap:16px;padding-top:48px;display:flex}.lead{color:var(--muted);margin:0}.setup label{justify-content:space-between;align-items:center;font-weight:600;display:flex}.number-input{align-items:center;gap:8px;display:inline-flex}.number-input input{text-align:center;border:1px solid var(--border);background:var(--card);width:64px;height:48px;color:var(--text);appearance:textfield;border-radius:8px;padding:8px;font-size:1.2rem}.number-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-input button{width:48px;height:48px;min-height:48px;padding:0;font-size:1.3rem}button{cursor:pointer;border:1px solid var(--border);background:var(--card2);min-height:44px;color:var(--text);touch-action:manipulation;-webkit-user-select:none;user-select:none;border-radius:8px;justify-content:center;align-items:center;padding:8px 16px;font-size:1rem;display:inline-flex}button:disabled{opacity:.4;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}button.ghost{background:0 0}button.big{min-height:52px;padding:16px 18px;font-size:1.1rem}button.mini{min-height:40px;padding:6px 14px;font-size:.9rem}button.mini.accent{background:var(--accent2);border-color:var(--accent2);color:#fff}button.mini.danger{color:var(--danger)}.topbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.topbar>div:first-child{flex-direction:column;display:flex}.round-badge{font-size:1.3rem;font-weight:800}.sub{color:var(--muted);white-space:nowrap;font-size:.9rem}.table-wrap{margin-bottom:16px;overflow-x:auto}table.matches{border-collapse:collapse;width:100%}table.matches th{text-align:left;color:var(--muted);white-space:nowrap;padding:4px 8px;font-size:.8rem}table.matches th:first-child{text-align:center}table.matches td{border-top:1px solid var(--border);padding:12px 6px}td.court{text-align:center;width:44px;color:var(--accent2-text);font-size:1.5rem;font-weight:800}td.pair{white-space:nowrap}td.vs{color:var(--muted);text-align:center;padding:0 2px;font-size:.9rem}table.matches .chip{min-width:46px;height:46px;font-size:1.4rem}.chip{background:var(--card2);border:1px solid var(--border);border-radius:8px;justify-content:center;align-items:center;min-width:34px;height:34px;margin:2px;padding:0 6px;font-size:1.05rem;font-weight:700;display:inline-flex}.chip.muted{color:var(--muted);background:0 0;font-weight:500}.resting{flex-wrap:wrap;align-items:center;gap:2px;min-height:38px;margin-bottom:16px;display:flex}.resting .label{color:var(--muted);margin-right:6px;font-size:.9rem}.resting .none{color:var(--muted);font-size:.9rem}.actions{z-index:5;background:linear-gradient(to top, var(--bg) 70%, transparent);padding:12px 16px;padding-bottom:max(12px, env(safe-area-inset-bottom));gap:10px;margin:0 -16px 16px;display:flex;position:sticky;bottom:0}.actions .big{flex:1}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;margin-bottom:16px;padding:14px}.warn{color:var(--warn)}.roster-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.roster-head h2{margin:0}.roster-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.roster-item{border-radius:8px;align-items:center;gap:10px;padding:4px 2px;display:flex}.roster-item .games{color:var(--muted);margin-right:auto;font-size:.85rem}.roster-item.status-resting{opacity:.6}.roster-item.status-resting .chip{background:0 0}.stepper{align-items:center;gap:16px;display:flex}.stepper .value{text-align:center;min-width:24px;font-size:1.4rem;font-weight:800}.history ul{margin:0;padding:0;font-size:.85rem;list-style:none}.history li{border-top:1px solid var(--border);gap:10px;padding:4px 0;display:flex}.hround{color:var(--accent2-text);min-width:32px;font-weight:700}.hmatches{color:var(--muted)}.settings{padding:16px 0;padding-bottom:max(16px, env(safe-area-inset-bottom));border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:10px;margin-top:8px;display:flex}.setting-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;display:flex}.setting-label{color:var(--muted);font-size:.85rem}.setting-options{gap:8px;display:flex}.setting-options .selected{background:var(--accent2);border-color:var(--accent2);color:#fff;font-weight:700}@media (width<=380px){table.matches .chip{min-width:38px;height:38px;font-size:1.15rem}table.matches td{padding:12px 4px}td.court{width:32px;font-size:1.3rem}}@media (width>=600px){.round-badge{font-size:1.6rem}td.court{width:64px;font-size:1.8rem}table.matches .chip{min-width:56px;height:56px;font-size:1.7rem}table.matches td{padding:16px 8px}}
