:root{--bg: #0f1116;--surface: #171a21;--surface-2: #1f232c;--border: #2c313c;--text: #eef0f4;--muted: #9aa2b1;--accent: #ff4655;--accent-hover: #ff606d;--on-accent: #16080a;--discord: #5865f2;--danger: #ff7a85;--ok: #52d49a;--warn: #e9c04f;--radius: 10px;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Pretendard Variable,Pretendard,system-ui,-apple-system,Malgun Gothic,sans-serif;font-size:15px;line-height:1.5;word-break:keep-all}h1,h2,h3,p{margin:0}ul,ol{list-style:none;margin:0;padding:0}button,input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--text);outline-offset:2px}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.app{max-width:860px;margin:0 auto;padding:0 16px 80px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0}.brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}.brand-logo{flex:none;width:96px;height:auto}.me{display:flex;align-items:center;gap:8px;min-width:0}.me-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;max-width:160px}.demo-banner{margin-bottom:16px;padding:10px 14px;border:1px solid #5a4b1f;border-radius:var(--radius);background:#2a2413;color:#f0d98c;font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);font-weight:600;white-space:nowrap;cursor:pointer;transition:background .12s,border-color .12s}.btn:hover:not(:disabled){background:#2a2f3a}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-small{min-height:32px;padding:0 10px;font-size:13px}.btn-primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent);font-weight:700}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-discord{border-color:var(--discord);background:var(--discord);color:#fff}.btn-discord:hover:not(:disabled){background:#6c78f5}.btn-danger{border-color:#b8323e;background:#b8323e;color:#fff}.btn-danger:hover:not(:disabled){background:#cc3b48}.btn-danger-ghost{color:var(--danger)}.icon-btn{width:30px;height:30px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--muted);font-size:10px;cursor:pointer}.icon-btn:hover:not(:disabled){color:var(--text);background:#2a2f3a}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.link-btn{padding:0;border:0;background:none;text-decoration:underline;cursor:pointer}.main-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:4px 0 28px}.action-btn{min-height:60px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-size:17px;font-weight:700;cursor:pointer;transition:background .12s,border-color .12s}.action-btn:hover{background:var(--surface-2)}.action-primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.action-primary:hover{background:var(--accent-hover)}.action-active{border-color:var(--text);background:var(--surface-2)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.section-head .section-title{margin-bottom:0}.section-title{margin-bottom:12px;font-size:16px;font-weight:700}.empty{padding:40px 16px;border:1px dashed var(--border);border-radius:var(--radius);color:var(--muted);text-align:center}.empty-small{padding:20px 16px;margin-top:14px}.load-error{margin-bottom:16px;padding:10px 14px;border:1px solid #6b2b32;border-radius:var(--radius);background:#2a1619;color:#ffc2c7}.gate{display:flex;flex-direction:column;align-items:center;gap:12px;padding:64px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--muted);text-align:center}.gate h2{color:var(--text);font-size:18px;font-weight:800}.gate .btn{margin-top:8px}.scrims{display:grid;gap:12px}.scrim{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.scrim-past{opacity:.7}.scrim-head{display:flex;align-items:center;gap:16px;padding:14px 16px}.scrim-when{display:flex;flex-direction:column;flex:none;width:104px}.scrim-time{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}.scrim-date{color:var(--muted);font-size:13px}.scrim-info{flex:1;min-width:0}.scrim-info h3{font-size:16px;font-weight:700;overflow-wrap:anywhere}.scrim-info p,.manage-head p{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:3px;font-size:13px}.scrim-side{display:flex;flex:none;align-items:center;gap:12px}.count{color:var(--muted);font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}.count b{color:var(--text);font-size:16px}.status{font-weight:700}.status-open{color:var(--ok)}.status-full,.status-closed{color:var(--warn)}.status-past{color:var(--muted)}.players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border-top:1px solid var(--border);background:var(--border);border-radius:0 0 var(--radius) var(--radius);overflow:hidden}.player{display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--surface);min-width:0}.players .player:last-child:nth-child(odd){grid-column:1 / -1}.player-me{background:#1e2029;box-shadow:inset 2px 0 0 var(--accent)}.player-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.player-tiers{display:flex;flex:none;gap:12px}.tier{display:flex;flex-direction:column;min-width:58px;line-height:1.3}.tier-label{color:var(--muted);font-size:11px}.tier-value{font-size:13px;font-weight:700;white-space:nowrap}.avatar{flex:none;border-radius:50%;object-fit:cover;background:var(--surface-2)}.avatar-fallback{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);font-weight:700}.past{margin-top:20px}.past summary{padding:8px 0;color:var(--muted);font-weight:600;cursor:pointer}.past .scrims{margin-top:8px}.manage-list{display:grid;gap:16px}.manage-card{padding:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.manage-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px}.manage-head h3{font-size:17px;font-weight:700;overflow-wrap:anywhere}.manage-actions{display:flex;flex-wrap:wrap;gap:8px}.sort-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:16px 0 8px;font-size:13px}.sort-bar select{min-height:34px;padding:0 8px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);font-size:13px}.manage-players{display:grid;gap:6px}.manage-player{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--bg);cursor:grab}.manage-player.dragging{opacity:.45}.manage-player.drag-over{border-color:var(--accent)}.grip{color:#5d6573}.order{width:18px;color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums;text-align:right}.row-actions{display:flex;flex:none;align-items:center;gap:4px}.modal{width:min(440px,calc(100vw - 32px));padding:0;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text)}.modal::backdrop{background:#050609b3}.modal-body{padding:22px}.modal h2{margin-bottom:16px;font-size:18px;font-weight:800}.modal-text{margin-bottom:16px;color:#cdd2db;overflow-wrap:anywhere}.modal-text strong{color:var(--text)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.field{display:flex;flex:1;flex-direction:column;gap:6px;min-width:0;margin-bottom:14px;font-size:13px;font-weight:600;color:#cdd2db}.field-row{display:flex;gap:12px}.field input,.field select{width:100%;min-height:42px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:15px;font-weight:400}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}.form-error{margin-top:2px;color:var(--danger);font-size:13px}.toast-region{position:fixed;bottom:20px;left:16px;right:16px;display:flex;justify-content:center;pointer-events:none}.toast{max-width:480px;padding:10px 16px;border:1px solid var(--border);border-radius:8px;background:#262b35;box-shadow:0 8px 24px #0006}@media(max-width:680px){.me-name{display:none}.brand{gap:6px;font-size:15px;white-space:normal}.brand-logo{width:64px}.scrim-head{flex-wrap:wrap;gap:10px 12px;padding:14px}.scrim-when{flex-direction:row;align-items:baseline;gap:8px;width:100%}.scrim-info{flex:1 1 100%}.scrim-side{width:100%;justify-content:space-between}.players{grid-template-columns:minmax(0,1fr)}.player{padding:10px 14px}.manage-player{flex-wrap:wrap}.grip{display:none}.manage-player .player-name{flex:1 1 calc(100% - 80px)}.manage-player .player-tiers,.manage-actions .btn{flex:1}}
