.app{min-height:100dvh;padding:max(12px,env(safe-area-inset-top)) 12px max(16px,env(safe-area-inset-bottom));background:#0d1117;color:#e6edf3;display:flex;flex-direction:column;gap:12px}.app a{color:#8ab4ff}.message{align-items:center;justify-content:center;text-align:center;font-size:18px}.home{padding-inline:max(12px,calc((100vw - 480px)/2))}.home h1{font-size:24px;margin:8px 0}.home form{display:flex;flex-direction:column;gap:14px}.control-top{display:flex;justify-content:space-between;align-items:center;font-size:15px}.status{display:inline-flex;align-items:center;gap:8px;font-weight:600}.status-dot{width:12px;height:12px;border-radius:50%;background:currentColor}.status--ok{color:#3fb950}.status--busy{color:#d29922}.status--bad{color:#f85149}.alert{background:#3d1418;border:1px solid #f85149;color:#ffd7d5;border-radius:10px;padding:10px 12px;font-size:15px}.teams{display:grid;grid-template-columns:1fr 1fr;gap:10px}.team{display:flex;flex-direction:column;gap:8px;padding:10px;background:#161b22;border:1px solid #30363d;border-radius:14px;min-width:0}.team-label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#8b949e;text-transform:uppercase;letter-spacing:.04em}.team-name{width:100%;font-size:17px;font-weight:700;padding:10px;border-radius:8px;border:1px solid #30363d;background:#0d1117;color:#e6edf3}.team-points{font-size:72px;font-weight:800;text-align:center;line-height:1;font-variant-numeric:tabular-nums}.team-sets{text-align:center;font-size:16px;color:#ffc83d}.team-sets strong{font-size:22px}.team-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.btn{font:inherit;font-weight:700;border:0;border-radius:12px;color:#fff;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.btn:active:not(:disabled){transform:scale(.97);filter:brightness(1.2)}.btn:disabled{opacity:.35}.btn-add{background:#238636;font-size:32px;min-height:88px}.btn-sub{background:#6e2c2c;font-size:20px;min-height:52px}.btn-set{background:#5a4a12;font-size:17px;min-height:52px}.btn-undo{background:#1f6feb;font-size:20px;min-height:60px}.control-resets{display:grid;grid-template-columns:1fr 1fr;gap:10px}.btn-reset{background:#30363d;font-size:15px;min-height:48px;padding:6px 8px}.btn-reset--armed{background:#b62324;font-size:13px}.links{display:flex;flex-direction:column;gap:10px;margin-top:8px;padding-top:12px;border-top:1px solid #30363d}.link{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#8b949e}.link-row{display:flex;gap:6px}.link-row input{flex:1;min-width:0;font-size:16px;padding:8px;border-radius:8px;border:1px solid #30363d;background:#0d1117;color:#e6edf3}.btn-copy{background:#30363d;padding:0 14px;font-size:15px}.sb{--sb-height: 8vw;--sb-radius: .7vw;--sb-panel: rgba(8, 12, 20, .85);--sb-sets-bg: rgba(20, 28, 42, .92);--sb-sets-text: #ffc83d;--sb-points-bg: #f4f6f8;--sb-points-text: #0b0f17;--sb-name-text: #ffffff;display:flex;gap:.5vw;width:100vw;padding:.5vw;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.sb-side{flex:1 1 0;min-width:0;display:flex;height:var(--sb-height);border-radius:var(--sb-radius);overflow:hidden;background:var(--sb-panel)}.sb-name{flex:1 1 auto;min-width:0;display:flex;align-items:center;padding:0 1.6vw;color:var(--sb-name-text);font-size:3.4vw;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-side--home .sb-name{justify-content:flex-end;text-align:right}.sb-name--md{font-size:2.6vw}.sb-name--sm{font-size:2vw}.sb-sets,.sb-points{flex:0 0 auto;display:flex;align-items:center;justify-content:center}.sb-sets{width:6vw;background:var(--sb-sets-bg);color:var(--sb-sets-text);font-size:4vw}.sb-points{width:10vw;background:var(--sb-points-bg);color:var(--sb-points-text);font-size:5.8vw}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:transparent}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased}
