.dev-divider[data-v-aa4ef191]{width:100%;margin:24px 0 14px;border-top:1px solid #e2e8f0;color:#94a3b8;font-size:12px}.dev-divider span[data-v-aa4ef191]{position:relative;top:-9px;padding-right:10px;background:#fff}.dev-login-form[data-v-aa4ef191]{width:100%}.dev-code-row[data-v-aa4ef191]{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 12px}.dev-code-chip[data-v-aa4ef191]{border:1px solid #dbe7df;border-radius:999px;padding:7px 12px;background:#fff;color:#475569;font-weight:700;cursor:pointer}.dev-code-chip.active[data-v-aa4ef191]{border-color:#00b050;background:#e8f5ee;color:#00843d}.secondary-button[data-v-aa4ef191]{width:100%;border:1px solid #cfe8d8;border-radius:14px;padding:13px 16px;background:#f8fffb;color:#007a38;font-weight:800;cursor:pointer}.callback-card[data-v-060a12ad]{min-height:360px}.level-title-with-help[data-v-424783f5]{display:inline-flex;align-items:center;gap:6px}.level-help-button[data-v-424783f5],.level-help-close[data-v-424783f5]{border:0;cursor:pointer}.level-help-button[data-v-424783f5]{width:20px;height:20px;padding:0;border:1px solid #00b050;border-radius:50%;color:#00863d;background:#fff;font-size:12px;font-weight:800}.level-help-overlay[data-v-424783f5]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;place-items:center;padding:24px;background:#0f172a75}.level-help-dialog[data-v-424783f5]{width:min(620px,100%);max-height:min(720px,88vh);overflow:hidden;border-radius:8px;background:#fff;box-shadow:0 18px 48px #0f172a33}.level-help-header[data-v-424783f5]{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:20px 22px 14px;border-bottom:1px solid #e5e7eb}.level-help-header h3[data-v-424783f5],.level-help-header p[data-v-424783f5]{margin:0}.level-help-header h3[data-v-424783f5]{color:#17211b;font-size:18px}.level-help-header p[data-v-424783f5]{margin-top:4px;color:#68736d;font-size:13px}.level-help-close[data-v-424783f5]{width:32px;height:32px;border-radius:50%;color:#68736d;background:#f3f6f4;font-size:21px}.level-help-list[data-v-424783f5]{max-height:56vh;overflow-y:auto;padding:6px 22px}.level-help-item[data-v-424783f5]{display:flex;align-items:flex-start;gap:12px;padding:11px 0;border-bottom:1px solid #edf0ee}.level-help-item>strong[data-v-424783f5]{width:30px;height:30px;flex:none;border-radius:50%;display:grid;place-items:center;color:#fff;background:#00b050;font-size:13px}.level-help-item span[data-v-424783f5],.level-help-item b[data-v-424783f5],.level-help-item small[data-v-424783f5]{display:block}.level-help-item b[data-v-424783f5]{color:#17211b;font-size:14px}.level-help-item small[data-v-424783f5]{margin-top:3px;color:#68736d;font-size:12px;line-height:1.5}.level-help-footnote[data-v-424783f5]{margin:0;padding:12px 22px 16px;color:#8a948f;font-size:12px}.constraint-tags[data-v-e1e816d2]{display:flex;flex-wrap:wrap;gap:4px;min-width:150px}.constraint-tags span[data-v-e1e816d2]{padding:3px 6px;border-radius:6px;background:#eef7f2;color:#08783b;font-size:12px;white-space:nowrap}.participant-constraint-dialog[data-v-e1e816d2]{display:grid;gap:12px}.participant-constraint-dialog p[data-v-e1e816d2]{margin:0}.participant-constraint-dialog label[data-v-e1e816d2]{display:grid;gap:6px;color:#244b36;font-size:13px;font-weight:700}.participant-constraint-dialog input[data-v-e1e816d2]{width:100%;height:42px;padding:0 12px;border:1px solid #dceee2;border-radius:8px;background:#f8fbf9;color:#173c29;box-sizing:border-box}.checkin-header-panel[data-v-c2ff8246]{margin-bottom:14px}.checkin-controls[data-v-c2ff8246]{display:grid;grid-template-columns:minmax(280px,1fr) 180px 200px auto;gap:12px;align-items:end;margin-bottom:14px}.checkin-search[data-v-c2ff8246]{min-width:0}.checkin-filter[data-v-c2ff8246]{display:grid;gap:6px}.checkin-result-count[data-v-c2ff8246]{align-self:center;color:var(--muted);white-space:nowrap}.checkin-result-count strong[data-v-c2ff8246]{color:var(--text)}.checkin-table th[data-v-c2ff8246]:first-child{width:24%}.checkin-table th[data-v-c2ff8246]:nth-child(2){width:19%}.checkin-table th[data-v-c2ff8246]:nth-child(3){width:14%}.checkin-table th[data-v-c2ff8246]:nth-child(4){width:31%}.checkin-event-list[data-v-c2ff8246],.roll-call-chips[data-v-c2ff8246]{display:flex;flex-wrap:wrap;gap:6px}.checkin-event-list span[data-v-c2ff8246]{padding:4px 8px;border-radius:6px;background:#f2f6f3;color:#355a45;font-size:12px}.roll-call-chips button[data-v-c2ff8246]{min-height:30px;padding:4px 9px;border:1px solid #d7e2da;border-radius:6px;background:#fff;color:#557063;cursor:pointer}.roll-call-chips button.active[data-v-c2ff8246]{border-color:#00a94f;background:#e8f7ee;color:#008a40;font-weight:700}.roll-call-chips button[data-v-c2ff8246]:disabled{cursor:wait;opacity:.6}.checkin-time[data-v-c2ff8246]{display:block;margin-top:6px;color:var(--muted)}.muted-text[data-v-c2ff8246]{color:var(--muted);font-size:12px}.avatar-team[data-v-c2ff8246]{background:#e8f3ff;color:#2563a9}.avatar-player[data-v-c2ff8246]{background:#e7f7ed;color:#008a40}@media (max-width: 980px){.checkin-controls[data-v-c2ff8246]{grid-template-columns:1fr 1fr}.checkin-result-count[data-v-c2ff8246]{justify-self:end}.checkin-table-panel[data-v-c2ff8246]{overflow-x:auto}.checkin-table[data-v-c2ff8246]{min-width:900px}}*{box-sizing:border-box}:root{color:#163525;background:#eef8f0;font-family:PingFang SC,Microsoft YaHei,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--primary: #00b050;--primary-dark: #008a3d;--primary-soft: #e7f7ec;--surface: #ffffff;--line: #dceee2;--text: #163525;--muted: #6e8377;--danger: #e74c3c;--warning: #f39c12;--shadow: 0 14px 42px rgba(0, 92, 42, .09)}body{margin:0;min-width:1280px;overflow-x:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid rgba(0,176,80,.2);outline-offset:2px}.admin-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-width:1280px;min-height:100vh;background:radial-gradient(circle at top left,rgba(0,176,80,.12),transparent 34%),linear-gradient(175deg,#d4edda 3.67%,#e8f5e9 54.63%,#f0f7f0 96.33%)}.admin-sidebar{position:sticky;top:0;width:248px;min-width:248px;height:100vh;min-height:100vh;padding:24px 18px;overflow-y:auto;background:#ffffffb8;border-right:1px solid rgba(220,238,226,.9);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{display:flex;gap:12px;align-items:center;margin-bottom:28px}.brand strong{display:block;font-size:18px}.brand small{color:var(--muted)}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;color:#fff;font-weight:800;background:linear-gradient(145deg,#00b050,#47c96f);box-shadow:0 12px 24px #00b05038}.brand-mark.large{width:64px;height:64px;border-radius:20px;font-size:30px}.sidebar-nav{display:grid;gap:8px}.sidebar-nav a{display:flex;align-items:center;min-height:44px;padding:12px 14px;border-radius:12px;color:var(--muted);font-weight:700}.sidebar-nav a.router-link-active,.sidebar-nav a:hover{color:var(--primary-dark);background:var(--primary-soft)}.sidebar-nav .is-disabled{cursor:not-allowed;opacity:.58}.admin-main{min-width:0;overflow:hidden}.admin-topbar{display:flex;align-items:center;justify-content:space-between;padding:24px 32px 12px}.admin-topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;max-width:1560px;margin-right:auto;margin-left:auto}.admin-topbar h1,.dashboard-hero h2,.login-card h1,.login-form h2{margin:0}.eyebrow{margin:0 0 6px;color:var(--primary-dark);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.account{display:flex;align-items:center;gap:12px;padding:8px;border:1px solid var(--line);border-radius:999px;background:#ffffffdb}.admin-content{padding:12px 32px 40px}.admin-content>.panel,.admin-content>.tournament-list-toolbar,.admin-content>.tournament-grid,.admin-content>.empty-state,.admin-content>.dashboard-hero,.admin-content>.metric-grid,.admin-content>.dashboard-columns,.admin-content>.module-grid,.admin-content>.review-header-panel,.admin-content>.review-controls,.admin-content>.bulk-panel,.admin-content>.roster-toolbar,.admin-content>.toolbar,.admin-content>.notice,.admin-content>.schedule-workspace,.admin-content>.phase-progress-panel,.admin-content>.bracket-workspace,.admin-content>.venue-layout,.admin-content>.monitor-grid,.admin-content>.announcement-workspace,.admin-content>.export-layout,.admin-content>.create-layout,.admin-content>.table-panel{width:100%;max-width:1560px;margin-right:auto;margin-left:auto}.toolbar{display:flex;justify-content:space-between;gap:18px;margin-bottom:18px}.tournament-list-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 204px;gap:20px;align-items:stretch;margin-bottom:18px}.filter-panel{flex:1;min-width:0;padding:14px 16px 12px;border:1px solid rgba(220,238,226,.88);border-radius:12px;background:#ffffffd1;box-shadow:0 8px 22px #005c2a0d}.filter-panel-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.filter-panel-header>div:first-child{display:flex;align-items:baseline;gap:8px;min-width:0}.filter-eyebrow{color:var(--primary-dark);font-size:12px;font-weight:900}.filter-panel-header strong{color:var(--text);font-size:15px;font-weight:900;white-space:nowrap}.filter-count{display:inline-flex;align-items:baseline;justify-content:flex-end;gap:4px;color:var(--muted);font-size:12px;font-weight:900;white-space:nowrap}.filter-count span:first-child{color:var(--text)}.filter-main-row{display:grid;grid-template-columns:minmax(252px,1fr) minmax(140px,.44fr) minmax(140px,.44fr) minmax(156px,.38fr);column-gap:12px;align-items:end}.list-search-box{grid-column:1;grid-row:1;height:56px;min-height:56px;border-radius:12px;box-shadow:none}.date-range{display:contents}.date-range .date-field:nth-of-type(1){grid-column:2;grid-row:1}.date-range .date-field:nth-of-type(2){grid-column:3;grid-row:1}.date-field,.status-filter{display:grid;gap:6px;min-width:0}.status-filter{grid-column:4;grid-row:1}.date-field span,.status-filter span{color:var(--muted);font-size:12px;font-weight:900}.date-field input,.status-filter select{width:100%;height:56px;padding:0 10px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:#fff;outline:0;font-weight:800}.date-field input:focus,.status-filter select:focus{border-color:#00b0506b;box-shadow:0 0 0 4px #00b0501a}.filter-meta-row{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px;color:var(--muted);font-size:13px;font-weight:800}.text-button{height:32px;padding:0 10px;border:0;border-radius:999px;color:var(--primary-dark);background:var(--primary-soft);cursor:pointer;font-weight:900}.toolbar-action-zone{display:flex;flex:0 0 auto;align-items:stretch;align-self:start;justify-content:flex-end;justify-self:end;width:204px;height:56px}.tournament-create-action{flex:1;gap:10px;width:204px;min-width:204px;height:auto;min-height:100%;font-size:15px;white-space:nowrap}.search-box{display:flex;align-items:center;gap:12px;flex:1;min-height:52px;padding:0 18px;border:1px solid var(--line);border-radius:18px;background:#ffffffe6;box-shadow:var(--shadow)}.search-box span{color:var(--primary-dark);font-weight:800;white-space:nowrap}.search-box input{width:100%;border:0;outline:0;background:transparent}.primary-button,.ghost-button,.danger-button{height:44px;padding:0 20px;border:0;border-radius:999px;font-weight:800;cursor:pointer}.primary-button{color:#fff;background:var(--primary);box-shadow:0 10px 22px #00b05038}.primary-button.danger{background:var(--danger);box-shadow:0 10px 22px #e74c3c2e}.primary-button.save-button{background:var(--danger);box-shadow:0 10px 22px #e74c3c33}.primary-button.tournament-create-action{height:auto;min-height:100%;border-radius:12px;background:var(--danger);box-shadow:0 14px 28px #e74c3c3d}.primary-button.tournament-create-action:hover{background:#d94434;transform:translateY(-1px)}.button-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:#ffffff2e;font-size:18px;font-weight:900;line-height:1}.primary-button:disabled{cursor:not-allowed;opacity:.6}.primary-button.compact{min-width:112px}.create-link,.empty-action{display:inline-flex;align-items:center;justify-content:center}.empty-action{width:fit-content;margin-top:14px}.ghost-button{color:var(--primary-dark);background:var(--primary-soft)}.danger-button{color:#fff;background:var(--danger);box-shadow:0 10px 22px #e74c3c2e}.danger-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.58}.notice,.empty-state,.panel,.tournament-card,.metric-card,.module-card,.dashboard-hero{border:1px solid rgba(220,238,226,.88);border-radius:18px;background:#ffffffe6;box-shadow:var(--shadow)}.notice,.empty-state{padding:28px}.notice.error,.form-error{color:var(--danger)}.notice.success{color:var(--primary-dark);border-color:#27ae6042;background:#e8f5e9d1}.notice.warning{color:#9a5f00;border-color:#f39c1247;background:#fff8e6e6}.text-stress-target{min-width:0!important;overflow-wrap:anywhere;word-break:break-word;white-space:normal!important}.confirm-dialog-overlay{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#0b1f155c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-dialog{width:min(420px,100%);padding:22px;border:1px solid rgba(220,238,226,.92);border-radius:22px;background:#fffffffa;box-shadow:0 24px 70px #005c2a33}.confirm-dialog header,.confirm-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.confirm-dialog header strong{color:var(--text);font-size:18px}.confirm-dialog p{margin:14px 0 20px;color:#446353;line-height:1.7}.confirm-close{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:999px;color:var(--muted);background:var(--primary-soft);cursor:pointer;font-size:24px;line-height:1}.confirm-dialog footer{justify-content:flex-end}.tournament-grid{display:grid;grid-template-columns:repeat(3,minmax(300px,1fr));gap:16px}.tournament-card{overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.tournament-card:hover{transform:translateY(-2px);box-shadow:0 18px 52px #005c2a21}.card-cover{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;height:108px;padding:16px;background:linear-gradient(135deg,#00b050e6,#52c278ad),repeating-linear-gradient(90deg,rgba(255,255,255,.2) 0 1px,transparent 1px 48px);background-position:center;background-size:cover}.card-cover.has-cover-image{background-color:#0f3d24}.card-cover-badge{flex:none;padding:6px 12px;border-radius:999px;color:#fff;background:#00000024;font-size:14px;font-weight:800;line-height:1.2}.card-body{padding:16px}.card-title-row,.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-title-row h2{margin:0;font-size:17px}.status-pill{flex:none;padding:6px 12px;border-radius:999px;color:var(--primary-dark);background:var(--primary-soft);font-size:14px;font-weight:800;line-height:1.2}.status-pill.big{padding:8px 16px;font-size:14px}.status-draft{color:#697586;background:#eef2f6}.status-pending_registration{color:#be6b00;background:#fff4dd}.status-registration_closed,.status-finished{color:#667085;background:#f2f4f7}.status-in_progress{color:#d92d20;background:#fff1f0}.meta-row{display:flex;justify-content:space-between;gap:12px;margin-top:14px;color:var(--muted);font-size:13px}.metric-row{display:flex;align-items:baseline;justify-content:flex-start;gap:6px;margin-top:14px;color:var(--muted);font-size:13px}.metric-row strong{color:var(--primary-dark);font-size:inherit;font-weight:800;line-height:1.2}.dashboard-hero{display:flex;align-items:center;justify-content:space-between;padding:24px;margin-bottom:16px}.dashboard-hero p{margin:8px 0 0;color:var(--muted)}.operation-progress-detail{padding:10px 12px;border-radius:12px;color:#8a4b12;background:#fff7e8;font-size:13px;font-weight:700}.operation-progress-rail{position:fixed;z-index:35;top:118px;right:22px;width:58px;height:58px;filter:drop-shadow(0 18px 42px rgba(0,92,42,.16))}.operation-progress-rail.is-open{width:336px;height:auto}.operation-rail-dot{position:relative;z-index:2;display:grid;place-items:center;width:58px;height:58px;margin-left:auto;border:3px solid #fff;border-radius:999px;color:#fff;background:var(--primary);box-shadow:0 12px 28px #00b05038;cursor:pointer;letter-spacing:0}.operation-rail-dot span{max-width:42px;font-size:13px;font-weight:900;line-height:1.12;text-align:center}.operation-rail-dot:focus-visible{outline:3px solid rgba(0,176,80,.26);outline-offset:3px}.operation-rail-panel{position:absolute;top:68px;right:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;width:336px;max-height:calc(100vh - 190px);min-height:0;padding:18px;border:1px solid rgba(220,238,226,.92);border-radius:18px;background:#fffffffa;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(-6px) scale(.98);transform-origin:top right;transition:opacity .18s ease,transform .18s ease}.operation-progress-rail.is-open .operation-rail-panel{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.operation-rail-header{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:10px;align-items:start}.operation-rail-header h3{margin:4px 0 6px;color:var(--text);font-size:20px}.operation-rail-header p{grid-column:1 / -1;margin:0 0 12px;color:var(--muted);line-height:1.65}.operation-rail-header .primary-button{grid-column:1 / -1}.operation-rail-close{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:#fff;cursor:pointer;font-size:18px;font-weight:900;line-height:1}.operation-rail-timeline{display:grid;gap:8px;min-height:0;padding:2px 2px 2px 0;margin:0;overflow-y:auto;list-style:none}.operation-rail-step{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:10px;border:1px solid #e4efe8;border-radius:14px;background:#f8fbf9}.operation-rail-step span{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;color:#6a7f72;background:#ecf4ef;font-size:13px;font-weight:900}.operation-rail-step strong,.operation-rail-step small{display:block;min-width:0;overflow-wrap:anywhere}.operation-rail-step strong{color:var(--text);font-size:14px;line-height:1.35}.operation-rail-step small{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.45}.operation-rail-step.done{border-color:#00b0502e;background:#f2faf5}.operation-rail-step.done span{color:#fff;background:var(--primary)}.operation-rail-step.current{border-color:#d92d2052;background:#fff7f6;box-shadow:0 10px 28px #d92d2014}.operation-rail-step.current span{color:#fff;background:#d92d20}.operation-rail-step.upcoming{opacity:.72}.metric-grid,.module-grid,.dashboard-columns{display:grid;gap:16px;margin-bottom:16px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card,.module-card,.panel{padding:18px}.metric-card span,.metric-card small,.module-card small,.phase-row span,.announcement-row span,.task-list span{color:var(--muted)}.metric-card strong{display:block;margin:10px 0 4px;color:var(--primary-dark);font-size:34px}.dashboard-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.panel-header{margin-bottom:14px}.panel-header h3{margin:0}.panel-header span{color:var(--primary-dark);font-weight:800}.task-list{display:grid;gap:10px;padding:0;margin:0;list-style:none}.task-list li,.phase-row,.announcement-row{display:grid;gap:5px;padding:12px;border-radius:12px;background:#f7fbf8}.task-list li{grid-template-columns:minmax(0,1fr) auto;align-items:center}.task-list a{display:grid;gap:5px;color:inherit}.task-list em{padding:4px 9px;border-radius:999px;font-size:12px;font-style:normal;font-weight:800}.priority-urgent{color:#c0392b;background:#fdecea}.priority-important{color:#b66a00;background:#fff4de}.priority-normal{color:var(--primary-dark);background:var(--primary-soft)}.soft-empty{padding:18px;color:var(--muted);border-radius:12px;background:#f7fbf8}.module-grid{grid-template-columns:repeat(4,minmax(220px,1fr))}.module-card{position:relative;display:grid;gap:8px;min-height:130px;transition:transform .18s ease,box-shadow .18s ease}a.module-card:hover{transform:translateY(-2px);box-shadow:0 18px 52px #005c2a21}.module-card.is-disabled{cursor:not-allowed;opacity:.7}.module-card>span{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;color:#fff;background:var(--primary);font-weight:900}.module-card em{position:absolute;top:16px;right:16px;color:var(--warning);font-size:12px;font-style:normal;font-weight:800}.module-card:not(.is-disabled) em{color:var(--primary-dark)}.phase-list,.announcement-list{display:grid;gap:10px}.export-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.export-preview div{display:grid;gap:5px;padding:14px;text-align:center;border-radius:12px;background:#f7fbf8}.export-preview strong{color:var(--primary-dark);font-size:24px}.login-page{display:grid;place-items:center;min-height:100vh;padding:40px;background:radial-gradient(circle at 22% 18%,rgba(0,176,80,.16),transparent 34%),linear-gradient(175deg,#d4edda 3.67%,#e8f5e9 54.63%,#f0f7f0 96.33%)}.login-card{display:grid;grid-template-columns:minmax(0,1fr) 420px;width:min(960px,100%);overflow:hidden;border:1px solid var(--line);border-radius:28px;background:#ffffffe0;box-shadow:var(--shadow)}.login-visual,.login-form{padding:44px}.login-visual{color:#fff;background:linear-gradient(135deg,#007a38eb,#00b050c7),repeating-linear-gradient(90deg,rgba(255,255,255,.22) 0 1px,transparent 1px 72px)}.login-visual p{max-width:360px;line-height:1.8}.login-form{display:grid;align-content:center;gap:18px}.login-form label{display:grid;gap:8px;color:var(--muted);font-weight:700}.login-form input{height:48px;padding:0 14px;border:1px solid var(--line);border-radius:14px;outline:0}.login-form input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #00b0501f}.form-hint{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.review-header-panel{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:18px;align-items:center;padding:24px;margin-bottom:16px;border:1px solid rgba(220,238,226,.88);border-radius:18px;background:#ffffffeb;box-shadow:var(--shadow)}.review-header-panel h2{margin:8px 0;font-size:24px}.review-header-panel p{max-width:70ch;margin:0;color:var(--muted);line-height:1.7}.back-link{color:var(--primary-dark);font-weight:800}.review-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.review-summary div{display:grid;gap:5px;min-height:82px;padding:14px;text-align:center;border-radius:14px;background:#f7fbf8}.review-summary strong{color:var(--primary-dark);font-size:28px}.review-summary span{color:var(--muted)}.review-controls{display:grid;gap:14px;margin-bottom:14px}.bracket-action-row{align-items:flex-start;flex-wrap:wrap}.bracket-action-row>.segmented{flex:1 1 520px;min-width:0}.bracket-action-row>.row-actions{flex:0 1 auto;justify-content:flex-end}.bracket-phase-tabs{width:100%;overflow-x:auto}.search-box.flat{box-shadow:none}.control-row,.bulk-panel,.bulk-meta,.check-label,.row-actions{display:flex;align-items:center}.control-row,.bulk-panel{justify-content:space-between;gap:14px}.segmented{display:inline-flex;flex-wrap:wrap;gap:8px;padding:6px;border:1px solid var(--line);border-radius:16px;background:#ffffffc7}.segmented button{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 13px;border:1px solid transparent;border-radius:12px;color:var(--muted);background:transparent;cursor:pointer;font-weight:800}.segmented button.active{color:var(--primary-dark);border-color:#00b05047;background:var(--primary-soft)}.segmented small{color:inherit;opacity:.72}.compact-tabs button{font-weight:700}.bulk-panel{padding:14px 16px;margin-bottom:14px;border:1px solid var(--line);border-radius:18px;background:#ffffffe0}.bulk-meta{gap:10px}.check-label{gap:10px;color:var(--text);font-weight:800}.check-label input,.review-table input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary)}.table-panel{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fffffff0;box-shadow:var(--shadow)}.review-table{width:100%;border-collapse:collapse;table-layout:fixed}.review-table th,.review-table td{padding:14px 12px;border-bottom:1px solid #edf5ef;text-align:left;vertical-align:middle}.review-table th{color:#446353;background:#f4fbf6;font-size:13px;font-weight:900}.review-table tr:last-child td{border-bottom:0}.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-top:1px solid #edf5ef;background:#fbfdfb}.pagination-info{color:var(--muted);font-size:13px;font-weight:800}.pagination-actions{display:flex;align-items:center;gap:10px}.pagination-actions label{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:800}.pagination-actions select{height:32px;padding:0 28px 0 10px;border:1px solid var(--line);border-radius:10px;color:var(--text);background:#fff;font-weight:800}.review-table tr.muted{background:#fbfdfb}.select-col{width:66px}.action-col{width:150px}.action-col.wide{width:260px}.applicant-cell{display:flex;align-items:center;gap:10px;min-width:0}.applicant-cell strong,.project-cell strong{display:block;overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.applicant-cell small,.project-cell small,.done-text{display:block;margin-top:4px;color:var(--muted);font-size:12px}.avatar-dot{display:inline-flex;flex:none;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;color:#fff;background:var(--primary);font-weight:900}.avatar-dot.female{background:#e66aa8}.avatar-dot.male{background:#2f80ed}.avatar-dot.unknown{background:#7a8a80}.type-pill,.review-status{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:900}.type-pill{color:var(--primary-dark);background:var(--primary-soft)}.review-status-pending{color:#be6b00;background:#fff4dd}.review-status-approved{color:var(--primary-dark);background:var(--primary-soft)}.review-status-rejected{color:#c0362c;background:#fff1f0}.row-actions{gap:8px}.row-actions.wrap{flex-wrap:wrap}.mini-button{height:32px;padding:0 12px;border:1px solid transparent;border-radius:999px;cursor:pointer;font-weight:900}.mini-button.approve{color:#fff;background:var(--primary)}.mini-button.save-button{color:#fff;border-color:transparent;background:var(--danger)}.mini-button.reject{color:var(--danger);border-color:#e74c3c40;background:#fff5f4}.mini-button.neutral{color:#446353;border-color:var(--line);background:#f7fbf8}.mini-button:disabled{cursor:not-allowed;opacity:.58}.seed-hint{display:inline-flex;align-items:center;min-height:50px;padding:0 16px;border:1px solid var(--line);border-radius:16px;color:var(--muted);background:#ffffffc7;font-weight:800}.seed-hint.active{color:var(--primary-dark);border-color:#00b05033;background:var(--primary-soft)}.participant-table th:first-child{width:250px}.seed-rank{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;color:#a15c00;background:#fff4dd;font-size:12px;font-weight:900}.roster-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--line);border-radius:18px;background:#ffffffe6;box-shadow:var(--shadow)}.number-field{display:inline-flex;align-items:center;gap:10px;color:var(--text);font-weight:900}.number-field input{width:88px;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:#fff;outline:0;font-weight:900}.roster-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:16px}.pool-panel,.teams-panel{min-width:0}.pool-panel{align-self:start;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fffffff0;box-shadow:var(--shadow)}.compact-search{min-height:44px;margin-bottom:12px;padding:0 12px;border-radius:14px}.pool-player-card{display:grid;gap:10px;padding:12px;border-bottom:1px solid #edf5ef}.pool-player-card:last-child{border-bottom:0}.pool-player-card select{height:36px;padding:0 10px;border:1px solid var(--line);border-radius:10px;color:var(--text);background:#fff;outline:0}.teams-panel{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:14px;align-content:start}.team-column{min-height:220px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fffffff0;box-shadow:var(--shadow)}.team-column.ready{border-color:#00b05052;background:#fbfffc}.team-column-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.team-column-header strong{display:block;font-size:16px}.team-column-header span{display:block;margin-top:4px;color:var(--muted);font-size:12px}.team-column-header em{flex:none;padding:5px 9px;border-radius:999px;color:var(--primary-dark);background:var(--primary-soft);font-size:12px;font-style:normal;font-weight:900}.team-member-row{display:grid;gap:10px;padding:12px 0;border-top:1px solid #edf5ef}.schedule-workspace{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}.create-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.admin-content>.create-layout{max-width:1720px}.create-main-panel,.create-team-panel{min-width:0}.create-side-panel{position:sticky;top:24px;min-width:0}.create-team-panel,.create-submit-panel,.create-layout>.notice{grid-column:1 / -1}.create-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.create-form-grid .wide-field{grid-column:span 2}.create-form-grid>.registration-rules-panel{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}.refund-policy-note{grid-column:1 / -1;margin:0;padding:10px 12px;border-left:3px solid var(--primary);color:var(--primary-strong);background:var(--primary-soft);font-size:13px;line-height:1.6}.registration-rules-panel>.rule-settings-card{grid-column:auto}@media (min-width: 1700px){.create-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 1280px){.create-form-grid>.registration-rules-panel{grid-template-columns:1fr}}.description-field textarea{min-height:110px;padding:0;border:0;color:var(--text);background:transparent;outline:0;resize:vertical;line-height:1.7}.venue-picker-field{align-content:start}.venue-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.venue-location-meta{display:flex;flex-wrap:wrap;gap:6px 12px;min-height:20px;color:var(--muted);font-size:12px;font-weight:800}.venue-location-meta strong{overflow:hidden;max-width:100%;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.description-rich-editor{min-height:168px;max-height:360px;overflow:auto;padding:12px;border:1px solid rgba(0,176,80,.18);border-radius:14px;color:var(--text);background:#fff;outline:0;font-size:15px;font-weight:700;line-height:1.75}.description-rich-editor:focus{border-color:#00b05075;box-shadow:0 0 0 3px #00b05014}.description-rich-editor:empty:before{content:attr(data-placeholder);color:var(--muted)}.description-rich-editor img{display:block;max-width:100%;max-height:360px;margin:10px 0;border-radius:12px;box-shadow:0 8px 18px #1038261a}.description-editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;font-weight:800}.cover-upload-field{align-content:start}.field-help{margin-top:-4px;color:var(--muted);font-size:12px;font-weight:700;line-height:1.4}.cover-upload-row{display:grid;grid-template-columns:minmax(180px,1fr);gap:12px;align-items:center}.cover-upload-row.has-cover-actions{grid-template-columns:minmax(180px,1fr) auto}.cover-upload-trigger{position:relative;display:flex;align-items:center;justify-content:center;min-height:96px;overflow:hidden;border:1px dashed rgba(0,176,80,.34);border-radius:14px;padding:12px;color:var(--muted);background:linear-gradient(135deg,#00b05014,#52c2781f),repeating-linear-gradient(90deg,rgba(0,176,80,.1) 0 1px,transparent 1px 36px);background-position:center;background-size:cover;font-size:13px;font-weight:800;text-align:center;cursor:pointer}.cover-upload-trigger:hover,.cover-upload-trigger:focus-visible{border-color:#00b0509e;box-shadow:0 0 0 3px #00b05014}.cover-upload-trigger:disabled{cursor:wait}.cover-upload-trigger.has-cover-image{border-style:solid}.share-image-trigger{min-height:112px}.cover-upload-overlay,.cover-upload-hover{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;background:#07160f6b;font-size:14px;font-weight:900}.cover-upload-hover{opacity:0;transition:opacity .18s ease}.cover-upload-trigger:hover .cover-upload-hover,.cover-upload-trigger:focus-visible .cover-upload-hover{opacity:1}.cover-upload-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.visually-hidden-file{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.danger-text-button{color:var(--danger);background:#fff1f0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px;background:#07160f6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-panel{max-width:min(1040px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;border:1px solid rgba(255,255,255,.7);border-radius:18px;background:#fff;box-shadow:0 24px 60px #07160f3d}.modal-handle{width:52px;height:5px;margin:12px auto 4px;border-radius:999px;background:#07160f24}.venue-picker-panel{width:min(980px,calc(100vw - 48px));padding:0 18px 18px}.venue-picker-header,.venue-picker-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}.venue-picker-header strong,.venue-picker-header span,.venue-picker-footer strong,.venue-picker-footer span{display:block}.venue-picker-header strong,.venue-picker-footer strong{color:var(--text);font-size:18px}.venue-picker-header span,.venue-picker-footer span{margin-top:4px;color:var(--muted);font-size:12px;font-weight:800}.venue-picker-body{display:grid;grid-template-columns:minmax(420px,1fr) 300px;gap:16px;align-items:stretch}.venue-picker-map-shell{position:relative;min-height:438px;overflow:hidden;border:1px solid rgba(0,176,80,.2);border-radius:18px;background:linear-gradient(135deg,#00b05024,#3498db1f),linear-gradient(45deg,#ffffffc7,#ffffff61)}.venue-picker-map{position:absolute;top:0;right:0;bottom:0;left:0;min-height:100%;background:#edf6f2}.venue-picker-map.is-fallback{cursor:crosshair}.venue-map-fallback{position:absolute;top:0;right:0;bottom:0;left:0;cursor:crosshair}.venue-map-grid{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.62;background:linear-gradient(90deg,rgba(0,176,80,.12) 1px,transparent 1px),linear-gradient(0deg,rgba(52,152,219,.12) 1px,transparent 1px),radial-gradient(circle at 28% 32%,rgba(255,255,255,.92),transparent 16%),radial-gradient(circle at 68% 62%,rgba(255,255,255,.72),transparent 20%);background-size:46px 46px,46px 46px,auto,auto}.venue-map-pin{position:absolute;width:28px;height:28px;transform:translate(-50%,-100%);z-index:2}.venue-map-pin span{display:block;width:28px;height:28px;border:3px solid #fff;border-radius:50% 50% 50% 0;background:var(--danger);box-shadow:0 10px 24px #e74c3c4d;transform:rotate(-45deg)}.venue-map-caption{position:absolute;z-index:4;right:16px;bottom:16px;left:16px;padding:14px;border:1px solid rgba(255,255,255,.72);border-radius:14px;background:#ffffffe0;box-shadow:0 12px 28px #1038261f}.venue-map-caption strong,.venue-map-caption span{display:block}.venue-map-caption span{margin-top:4px;color:var(--muted);font-size:12px;font-weight:800}.venue-map-state{position:absolute;z-index:5;top:16px;left:16px;max-width:calc(100% - 32px);padding:8px 12px;border:1px solid rgba(0,176,80,.22);border-radius:999px;color:var(--primary-dark);background:#ffffffeb;box-shadow:0 8px 20px #1038261a;font-size:12px;font-weight:900}.venue-map-state.warning{border-color:#f39c1240;color:#9a5f00}.venue-picker-list{display:grid;gap:10px;align-content:start}.venue-search-row{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:8px;align-items:stretch}.venue-search-row .field-card{min-width:0}.venue-search-button{min-height:56px;padding-inline:12px}.venue-search-status{margin:-2px 0 0;color:var(--muted);font-size:12px;font-weight:800}.venue-option{display:grid;gap:4px;width:100%;padding:12px;border:1px solid var(--line);border-radius:14px;color:var(--text);background:#fff;text-align:left;cursor:pointer}.venue-option strong,.venue-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.venue-option span{color:var(--muted);font-size:12px;font-weight:800}.venue-option.active{border-color:#00b05073;background:var(--primary-soft)}.event-editor-list{display:grid;gap:12px}.event-editor-card{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fbfffc}.event-editor-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px}.team-config-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.create-submit-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border:1px solid rgba(0,176,80,.16);border-radius:18px;background:#ffffffeb;box-shadow:var(--shadow)}.create-submit-panel strong,.create-submit-panel span{display:block}.create-submit-panel span{margin-top:4px;color:var(--muted);font-size:13px;font-weight:800}.phase-sidebar{position:sticky;top:24px}.phase-stack{display:grid;gap:10px}.phase-card{display:grid;gap:6px;width:100%;padding:14px;border:1px solid var(--line);border-radius:16px;color:var(--text);background:#fff;text-align:left;cursor:pointer}.phase-card strong{font-size:16px}.phase-card span{color:var(--muted);font-size:13px;font-weight:700}.phase-card.active{border-color:#00b0506b;background:var(--primary-soft);box-shadow:0 10px 24px #00b0501f}.schedule-editor{display:grid;gap:18px}.schedule-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.field-card{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fbfffc}.field-card span{color:var(--muted);font-size:12px;font-weight:900}.field-card input,.field-card select{width:100%;height:38px;padding:0;border:0;color:var(--text);background:transparent;outline:0;font-size:16px;font-weight:900}.input-with-unit{display:flex;align-items:center;gap:8px}.input-with-unit input{min-width:0;flex:1}.input-with-unit span{flex-shrink:0}.checkbox-field{align-content:center}.check-row{display:flex;align-items:center;gap:10px;min-height:38px;color:var(--text)}.check-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary)}.check-row strong{font-size:15px;font-weight:900}.rule-settings-card{grid-column:1 / -1;gap:22px;padding:22px;border-color:#00b0502e;background:#fff;box-shadow:0 8px 22px #002d140f}.rule-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.rule-card-title strong{color:var(--text);font-size:16px;font-weight:900}.rule-badge{display:inline-grid;place-items:center;min-height:26px;padding:0 12px;border-radius:999px;color:var(--primary-dark);background:var(--primary-soft);font-size:12px;font-weight:900}.rule-hint{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 14px;border-radius:14px;color:var(--primary-dark);background:#00b05014;font-size:13px;font-weight:800}.rule-hint i{display:inline-grid;place-items:center;width:16px;height:16px;border:1px solid currentColor;border-radius:999px;font-style:normal;font-size:11px;font-weight:900}.qualification-grid{display:grid;gap:18px}.rule-field{display:grid;gap:10px;align-content:start;min-height:0;padding:0;border:0;border-radius:0;background:transparent}.level-rule-field{gap:16px;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:#fbfffc}.rule-field>span{color:var(--muted);font-size:12px;font-weight:900}.rule-field-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.rule-field-title span{color:var(--muted);font-size:12px;font-weight:900}.rule-field-title strong{display:inline-grid;place-items:center;min-height:24px;padding:0 10px;border-radius:999px;color:var(--primary-dark);background:var(--primary-soft);font-size:12px;font-weight:900}.rule-field small{color:var(--primary-dark);font-size:12px;font-weight:800}.level-range-row{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;gap:12px;align-items:center}.range-row{display:grid;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr);gap:10px;align-items:center}.level-range-row input,.range-row input,.stepper-control input,.rule-field select{height:40px;padding:0 10px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:15px;font-weight:900}.level-range-row input{width:34px;height:28px;padding:0;border:0;color:var(--primary-dark);background:transparent;text-align:center;font-size:18px}.range-row em{color:var(--muted);font-style:normal;font-weight:900;text-align:center}.level-range-track{position:relative;height:8px;overflow:hidden;border-radius:999px;background:#e4eee8}.level-range-track i{position:absolute;top:0;bottom:0;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--primary-dark))}.stepper-control{display:grid;grid-template-columns:36px minmax(62px,1fr) 36px auto;gap:8px;align-items:center}.stepper-control button{width:36px;height:36px;border:1px solid rgba(0,176,80,.28);border-radius:999px;color:var(--primary-dark);background:var(--primary-soft);cursor:pointer;font-size:18px;font-weight:900}.stepper-control strong{color:var(--muted);font-size:13px;font-weight:900}.rules-switch-list{display:grid;gap:16px}.rule-switch-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:82px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;color:var(--text);background:#fbfffc;cursor:pointer;font:inherit;text-align:left}.rule-switch-card.featured{display:grid;gap:16px;padding:18px}.rule-switch-card.active{border-color:#00b05057;background:var(--primary-soft);box-shadow:0 10px 24px #00b0501a}.rule-switch-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0;border:0;color:inherit;background:transparent;cursor:pointer;font:inherit;text-align:left}.rule-switch-card span,.rule-switch-head span{display:grid;gap:4px;color:inherit}.rule-switch-card strong,.rule-switch-head strong{color:var(--text);font-size:17px;font-weight:900}.rule-switch-card small,.rule-switch-head small{color:var(--muted);font-size:12px;font-weight:700}.rule-toggle{position:relative;flex:0 0 auto;display:block;width:52px;height:28px;border-radius:999px;overflow:hidden;color:transparent;background:#d9e2dc;font-style:normal}.rule-toggle:after{content:"";position:absolute;top:4px;left:4px;width:20px;height:20px;border-radius:999px;background:#fff;box-shadow:0 2px 6px #002d142e;transition:transform .18s ease}.active>.rule-toggle,.active>.rule-switch-head .rule-toggle{background:var(--primary)}.active>.rule-toggle:after,.active>.rule-switch-head .rule-toggle:after{transform:translate(24px)}.rule-switch-extra{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:16px;border-top:1px solid rgba(0,176,80,.12)}.compact-stepper{flex:0 0 204px;grid-template-columns:36px minmax(56px,1fr) 36px auto}.schedule-rule-band{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,110px);gap:12px;align-items:center;padding:14px;border:1px solid rgba(0,176,80,.16);border-radius:16px;background:var(--primary-soft)}.schedule-rule-band strong,.schedule-rule-band span{display:block}.schedule-rule-band span{margin-top:4px;color:var(--muted);font-size:12px}.schedule-rule-band label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:900}.schedule-rule-band input{height:38px;padding:0 10px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:#fff;outline:0;font-weight:900}.schedule-switch-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.switch-row{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 12px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--text);font-weight:900}.switch-row input{width:18px;height:18px;accent-color:var(--primary)}.compact-header{margin-bottom:10px}.phase-progress-panel{display:grid;gap:14px;padding:18px;margin-bottom:16px;border:1px solid rgba(0,176,80,.14);border-radius:18px;background:#ffffffe6;box-shadow:var(--shadow)}.phase-result-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.phase-result-header h3{margin:3px 0 0;font-size:18px;line-height:1.25}.section-kicker{display:block;color:var(--muted);font-size:12px;font-weight:800}.phase-result-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.phase-result-metrics span{min-width:0;padding:12px 14px;border:1px solid rgba(220,238,226,.88);border-radius:14px;background:#f8fcf9}.phase-result-metrics small,.phase-result-metrics strong{display:block;min-width:0}.phase-result-metrics small{margin-bottom:6px;color:var(--muted);font-size:12px;font-weight:800}.phase-result-metrics strong{color:var(--primary-dark);font-size:18px;line-height:1.25}.phase-blockers,.advancement-list{display:grid;gap:8px}.phase-blockers span{padding:9px 12px;border-radius:12px;color:#8a5b00;background:#fff7e6;font-weight:700}.phase-blockers.warning span{color:#b23b2d;background:#fdecea}.advancement-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(168px,auto);gap:10px;align-items:center;padding:11px 12px;border-radius:12px;background:#f7fbf8}.advancement-main{display:grid;gap:3px;min-width:0}.advancement-main strong,.advancement-main span{min-width:0;overflow-wrap:anywhere}.advancement-main span{color:var(--muted);font-size:12px;font-weight:700}.advancement-row em{justify-self:start;white-space:nowrap;padding:5px 10px;border-radius:999px;color:var(--muted);background:#eef2f0;font-style:normal;font-weight:800}.advancement-row em.qualified{color:var(--primary-dark);background:var(--primary-soft)}.advancement-row em.pending{color:#b66a00;background:#fff4de}.advancement-actions{justify-content:flex-end;min-width:0}.advancement-actions.empty{visibility:hidden}.bracket-workspace{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(560px,1.8fr);gap:16px;align-items:start}.bracket-pool-list{display:grid;gap:8px;max-height:min(620px,calc(100vh - 360px));min-height:220px;overflow:auto;padding-right:4px}.bracket-pool-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:14px;background:#fff}.bracket-pool-row strong{min-width:0;overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.bracket-pool-row span{flex:none;padding:4px 8px;border-radius:999px;color:var(--primary-dark);background:var(--primary-soft);font-size:12px;font-weight:900}.bracket-preview-panel{display:grid;gap:16px;min-width:0;overflow:hidden}.bracket-stage-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.bracket-stage-metrics span{min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:14px;color:var(--muted);background:#fff;font-size:12px;font-weight:800}.bracket-stage-metrics strong{margin-right:4px;color:var(--primary-dark);font-size:18px}.bracket-block-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}.bracket-preview-sections,.bracket-preview-section{display:grid;gap:14px}.bracket-preview-sections{gap:20px}.bracket-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:2px}.bracket-section-title h4{margin:0;color:var(--text);font-size:16px;font-weight:900}.bracket-section-title span{flex:none;padding:5px 10px;border-radius:999px;color:var(--primary-dark);background:var(--primary-soft);font-size:12px;font-weight:900}.bracket-block{min-width:0;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fbfffc}.bracket-block header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.bracket-block header strong{font-size:16px}.bracket-block header span{color:var(--muted);font-size:12px;font-weight:900}.bracket-team-strip{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.bracket-group-block .bracket-team-strip{margin-bottom:0}.bracket-match-block{background:#fff}.bracket-group-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 0 4px}.bracket-group-tabs button{flex:none;display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 12px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:#fff;font-weight:900;cursor:pointer}.bracket-group-tabs button.active{color:var(--primary-dark);border-color:#00b0503d;background:var(--primary-soft)}.bracket-group-tabs small{font-size:11px;font-weight:900}.bracket-tree{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,1fr);gap:14px;overflow-x:auto;padding-bottom:4px}.bracket-tree-round{position:relative;display:grid;align-content:start;gap:12px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff}.bracket-tree-round+.bracket-tree-round:before{position:absolute;top:50%;left:-15px;width:14px;height:1px;background:var(--line);content:""}.bracket-tree-round header{display:flex;align-items:center;justify-content:space-between;gap:12px}.bracket-tree-round header strong{color:var(--text);font-size:15px}.bracket-tree-round header span{color:var(--muted);font-size:12px;font-weight:900}.bracket-tree-match-list{display:grid;gap:12px}.bracket-tree-match{position:relative;display:grid;grid-template-rows:minmax(34px,auto) 22px minmax(34px,auto);gap:4px;padding:10px;border:1px solid #edf5ef;border-radius:14px;background:#fbfffc}.bracket-tree-match span{min-width:0;overflow:hidden;padding:8px 10px;border-radius:10px;background:#fff;text-overflow:ellipsis;white-space:nowrap;font-weight:900}.bracket-tree-match em{color:var(--muted);font-size:12px;font-style:normal;font-weight:900;line-height:22px;text-align:center}.bracket-team-strip span{max-width:100%;padding:6px 10px;border-radius:999px;color:#426050;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:900}.bracket-team-strip span.seed{color:#a15c00;background:#fff4dd;border-color:#ffe0a6}.bracket-match-list{display:grid;gap:8px}.bracket-match-row{display:grid;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);align-items:center;gap:8px;min-height:42px;padding:0 10px;border:1px solid #edf5ef;border-radius:12px;background:#fff}.bracket-match-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:900}.bracket-match-row span:last-child{text-align:right}.bracket-match-row em{color:var(--muted);font-size:12px;font-style:normal;font-weight:900;text-align:center}@media (min-width: 1600px){.bracket-workspace{grid-template-columns:minmax(320px,.65fr) minmax(760px,2fr)}.bracket-block-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}}@media (max-width: 1360px){.bracket-workspace{grid-template-columns:1fr}.bracket-pool-list{max-height:280px}}@media (max-width: 960px){.phase-result-header,.advancement-row{grid-template-columns:1fr}.phase-result-header{display:grid}.phase-result-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.advancement-actions{justify-content:flex-start}.advancement-actions.empty{display:none}}.bracket-page-hero{position:relative;overflow:hidden;grid-template-columns:minmax(0,1fr) minmax(440px,520px);border-color:#00b05033;background:linear-gradient(135deg,#fffffff5,#f7fcf8eb),repeating-linear-gradient(90deg,transparent 0 74px,rgba(0,176,80,.07) 74px 75px),repeating-linear-gradient(0deg,transparent 0 48px,rgba(52,152,219,.06) 48px 49px)}.bracket-page-hero:after{position:absolute;right:26px;bottom:-42px;width:220px;height:132px;border:2px solid rgba(0,176,80,.14);border-radius:50%;content:""}.bracket-page-hero>*{position:relative;z-index:1}.bracket-page-hero h2{font-size:30px;letter-spacing:0}.bracket-page-hero p{max-width:76ch}.bracket-summary div{position:relative;overflow:hidden;min-height:92px;border:1px solid rgba(220,238,226,.95);background:linear-gradient(180deg,#fff,#f6fbf7);text-align:left}.bracket-summary div:before{position:absolute;inset:0 auto 0 0;width:4px;background:var(--primary);content:""}.bracket-summary div:nth-child(2):before{background:#f39c12}.bracket-summary div:nth-child(3):before{background:#3498db}.bracket-summary div:nth-child(4):before{background:#e74c3c}.bracket-summary strong{font-size:30px;line-height:1}.bracket-control-panel{position:sticky;z-index:6;top:0;padding:12px;border:1px solid rgba(220,238,226,.9);border-radius:18px;background:#ffffffdb;box-shadow:0 14px 34px #005c2a14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bracket-control-panel .segmented{border-radius:14px;background:#f7fbf8}.bracket-control-panel .segmented button{min-width:92px;justify-content:center}.bracket-control-panel .segmented button.active{box-shadow:0 8px 18px #00b0501f}.bracket-workspace{grid-template-columns:minmax(300px,.58fr) minmax(720px,1.8fr);gap:18px}.bracket-pool-panel{position:sticky;top:104px;border-color:#00b05029;background:linear-gradient(180deg,#fffffffa,#f9fdfaf0)}.bracket-pool-panel .panel-header h3,.bracket-board-panel .panel-header h3{font-size:18px}.bracket-pool-list{gap:10px;max-height:min(680px,calc(100vh - 390px));padding-right:6px}.bracket-pool-row{min-height:50px;padding:0 12px 0 14px;border-color:#dceee2f0;border-left:4px solid rgba(0,176,80,.36);box-shadow:0 6px 18px #005c2a0a}.bracket-pool-row:hover{border-color:#00b0504d;background:#fbfffc}.bracket-board-panel{position:relative;overflow:hidden;padding:20px;border-color:#00b0502e;background:linear-gradient(180deg,#fffffff5,#fafdfbf5),linear-gradient(90deg,transparent 49.8%,rgba(0,176,80,.08) 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.6%,rgba(52,152,219,.07) 50%,transparent 50.4%)}.bracket-board-panel:before{position:absolute;top:86px;right:20px;bottom:22px;left:20px;border:1px solid rgba(0,176,80,.08);border-radius:20px;pointer-events:none;content:""}.bracket-board-panel>*{position:relative;z-index:1}.bracket-board-panel .panel-header{align-items:flex-start;padding-bottom:14px;border-bottom:1px solid rgba(220,238,226,.85)}.bracket-stage-metrics span{padding:14px;border-left:4px solid rgba(0,176,80,.42);background:#ffffffe0}.bracket-stage-metrics span:nth-child(2){border-left-color:#3498db80}.bracket-stage-metrics span:nth-child(3){border-left-color:#f39c129e}.bracket-preview-section{padding:16px;border:1px solid rgba(220,238,226,.78);border-radius:18px;background:#ffffffbd}.bracket-section-title{min-height:34px;border-bottom:1px solid rgba(220,238,226,.7);padding-bottom:12px}.bracket-section-title h4{font-size:17px}.bracket-block{border-color:#dceee2e6;background:#fffffff0;box-shadow:0 10px 26px #005c2a0d}.bracket-group-block{position:relative;overflow:hidden;padding-top:18px}.bracket-group-block:before{position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--primary),#3498db);content:""}.bracket-team-strip{gap:9px}.bracket-team-strip span{border-radius:12px;background:#f9fcfa}.bracket-team-strip span.seed{color:#8a5200;background:#fff6e6;box-shadow:inset 0 0 0 1px #f39c1229}.bracket-group-tabs{padding-bottom:8px}.bracket-group-tabs button{min-height:38px;border-radius:12px}.bracket-match-block{padding:16px;background:#fbfffc}.bracket-match-list{gap:10px}.bracket-match-row{grid-template-columns:minmax(0,1fr) 46px minmax(0,1fr);gap:10px;min-height:60px;padding:8px;border-color:#dceee2eb;border-radius:16px;background:linear-gradient(90deg,#00b0500a,#3498db0a)}.bracket-match-row .match-side{display:flex;align-items:center;min-height:42px;padding:0 12px;border:1px solid rgba(220,238,226,.92);border-radius:12px;background:#fff}.bracket-match-row .match-side:last-child{justify-content:flex-end;text-align:right}.bracket-match-row em,.bracket-tree-match em{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:28px;border-radius:999px;color:#537061;background:#eef7f1}.bracket-tree{grid-auto-columns:minmax(520px,.86fr);gap:22px;padding:4px 8px 12px 2px}.bracket-tree-round{overflow:visible;padding:16px;border-color:#dceee2f0;background:linear-gradient(180deg,#fff,#f8fcf9)}.bracket-tree-round+.bracket-tree-round:before{left:-23px;width:22px;background:#00b0503d}.bracket-tree-round header{min-height:34px;padding-bottom:10px;border-bottom:1px solid rgba(220,238,226,.78)}.bracket-tree-match-list{gap:18px}.bracket-tree-match{grid-template-rows:minmax(40px,auto) 28px minmax(40px,auto);gap:6px;padding:12px;border-color:#dceee2f0;border-radius:16px;background:linear-gradient(180deg,#ffffffeb,#f7fbf8f0);box-shadow:0 8px 22px #005c2a0d}.bracket-tree-match:after{position:absolute;top:50%;right:-23px;width:22px;height:1px;background:#00b05033;content:""}.bracket-tree-round:last-child .bracket-tree-match:after{display:none}.bracket-tree-match .match-side{min-height:40px;border:1px solid rgba(220,238,226,.92);box-shadow:inset 4px 0 #00b05033}.bracket-tree-match .match-side:last-child{box-shadow:inset 4px 0 #3498db42}.bracket-add-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:12px}.bracket-add-row input,.bracket-select,.bracket-match-row select.match-side,.bracket-tree-match select.match-side{min-width:0;border:1px solid rgba(220,238,226,.92);color:var(--text);background:#fff;outline:0;font-weight:900}.bracket-add-row input{height:36px;padding:0 12px;border-radius:12px}.bracket-select{width:100%;height:36px;padding:0 10px;margin-bottom:10px;border-radius:12px}.bracket-team-strip span{display:inline-flex;align-items:center;gap:6px}.bracket-team-strip span button{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:0;border-radius:999px;color:#667085;background:#eef2f0;cursor:pointer;font-weight:900;line-height:1}.mini-button.reject.subtle{color:#9a3a32;border-color:#e74c3c2e;background:#fff8f7}.bracket-match-edit-row{grid-template-columns:minmax(0,1fr) 46px minmax(0,1fr) auto}.bracket-match-row select.match-side,.bracket-tree-match select.match-side{width:100%;min-height:42px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.bracket-tree-edit-match{grid-template-rows:minmax(40px,auto) 28px minmax(40px,auto) 32px}.bracket-tree-edit-match .mini-button{justify-self:end}.compact-match-row,.bracket-tree-match.compact-match-row{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr) auto;grid-template-rows:none;gap:8px;align-items:center;min-height:48px;padding:8px 10px}.compact-match-row select.match-side,.bracket-tree-match.compact-match-row select.match-side{width:100%;min-height:36px;padding:0 12px;border-radius:12px;box-shadow:none}.compact-match-row em,.bracket-tree-match.compact-match-row em{min-width:32px;min-height:24px}.compact-match-row .mini-button,.bracket-tree-match.compact-match-row .mini-button{justify-self:end;white-space:nowrap}@media (min-width: 1600px){.bracket-workspace{grid-template-columns:minmax(340px,.52fr) minmax(880px,1.9fr)}.bracket-tree{grid-auto-columns:minmax(520px,.8fr)}}@media (max-width: 1360px){.bracket-page-hero{grid-template-columns:minmax(0,1fr)}.bracket-control-panel,.bracket-pool-panel{position:static}.bracket-workspace{grid-template-columns:1fr}.bracket-pool-list{max-height:300px}}@media (max-width: 720px){.compact-match-row,.bracket-tree-match.compact-match-row{grid-template-columns:1fr 32px 1fr}.compact-match-row .mini-button,.bracket-tree-match.compact-match-row .mini-button{grid-column:3}}.venue-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}.court-status-grid{display:grid;gap:10px}.court-manage-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:12px}.court-manage-form input{min-width:0;height:36px;padding:0 12px;border:1px solid var(--line);border-radius:12px;outline:0;font-weight:800}.court-status-card{display:grid;gap:6px;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff}.court-card-title{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.court-status-card strong,.court-status-card span,.court-status-card small{display:block}.court-card-title strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.court-status-card strong{color:var(--text);font-size:16px}.court-status-card span{color:var(--primary-dark);font-size:13px;font-weight:900}.court-status-card small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.court-status-card.assigned{border-color:#3498db38;background:#f4fbff}.court-status-card.ongoing{border-color:#f39c1238;background:#fffaf0}.venue-table-panel{min-width:0;overflow-x:auto}.venue-table th:first-child{width:230px}.venue-table th:nth-child(2){width:300px}.venue-table th:nth-child(3),.venue-table th:nth-child(4){width:190px}.venue-table select{width:100%;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:#fff;outline:0;font-weight:800}.venue-sides{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);gap:8px;align-items:center}.venue-sides span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:900}.venue-sides span:last-child{text-align:right}.venue-sides em{color:var(--muted);font-size:12px;font-style:normal;font-weight:900;text-align:center}.venue-status-note{display:block;margin-top:6px;color:var(--muted);font-size:12px;font-weight:800}.monitor-hero{align-items:center}.monitor-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;margin-top:16px}.monitor-grid.wide{grid-template-columns:380px minmax(0,1fr)}.court-board{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:10px}.court-board-card{display:grid;gap:6px;min-height:112px;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff}.court-board-card strong,.court-board-card span,.court-board-card small{display:block}.court-board-card span{width:fit-content;padding:4px 8px;border-radius:999px;color:var(--primary-dark);background:var(--primary-soft);font-size:12px;font-weight:900}.court-board-card small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.court-board-card.assigned{border-color:#3498db38;background:#f4fbff}.court-board-card.ongoing{border-color:#f39c1238;background:#fffaf0}.issue-list{display:grid;gap:10px}.issue-row{display:grid;gap:4px;padding:12px;border:1px solid rgba(231,76,60,.16);border-radius:14px;background:#fff7f6}.issue-row span{color:#a5362c;font-size:13px;font-weight:900}.live-match-grid{display:grid;gap:12px}.live-match-card{display:grid;gap:14px;padding:16px;border:1px solid rgba(0,176,80,.18);border-radius:18px;background:#fbfffc}.live-match-card header,.live-match-card footer{display:flex;justify-content:space-between;gap:12px}.live-match-card header span,.live-match-card footer{color:var(--muted);font-size:13px;font-weight:800}.live-sides{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center}.live-sides span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:950}.live-sides span:last-child{text-align:right}.live-sides em{min-width:82px;padding:8px 12px;border-radius:12px;color:var(--primary-dark);background:var(--primary-soft);font-style:normal;font-weight:950;text-align:center}.monitor-table th:first-child{width:230px}.monitor-table th:nth-child(2){width:300px}.announcement-workspace{display:grid;grid-template-columns:340px minmax(0,1fr);gap:16px;align-items:start}.announcement-list-panel{position:sticky;top:24px}.announcement-admin-list{display:grid;gap:10px}.announcement-admin-item{display:grid;gap:6px;width:100%;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff;text-align:left;cursor:pointer}.announcement-admin-item strong{overflow:hidden;color:var(--text);font-size:15px;text-overflow:ellipsis;white-space:nowrap}.announcement-admin-item span{color:var(--muted);font-size:12px;font-weight:800}.announcement-admin-item.active{border-color:#00b05057;background:var(--primary-soft)}.announcement-admin-item.pinned strong:before{content:"置顶 · ";color:var(--primary-dark)}.announcement-editor{display:grid;gap:18px}.announcement-form-grid{grid-template-columns:minmax(0,1fr) 180px 180px}.wide-field{min-width:0}.announcement-pin-row{align-self:stretch;min-height:auto}.announcement-content-field{display:grid;gap:10px}.announcement-content-field span{color:var(--muted);font-size:12px;font-weight:900}.announcement-content-field textarea{min-height:260px;padding:14px;border:1px solid var(--line);border-radius:16px;color:var(--text);background:#fff;outline:0;resize:vertical;font:inherit;line-height:1.7}.announcement-actions{display:flex;justify-content:flex-end;gap:10px}.export-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}.export-scope-panel{position:sticky;top:24px}.export-scope-list{display:grid;gap:10px}.export-scope-card{display:grid;gap:6px;width:100%;padding:14px;border:1px solid var(--line);border-radius:16px;color:var(--text);background:#fff;text-align:left;cursor:pointer}.export-scope-card strong{font-size:16px}.export-scope-card span{color:var(--muted);font-size:13px;line-height:1.5}.export-scope-card.active{border-color:#00b0505c;background:var(--primary-soft);box-shadow:0 12px 26px #00b0501f}.export-preview-panel{min-width:0;overflow:hidden}.export-preview-header{align-items:flex-start}.export-result-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;margin-bottom:14px;border:1px solid rgba(0,176,80,.22);border-radius:16px;background:var(--primary-soft)}.export-result-card strong,.export-result-card span,.export-result-card a{display:block}.export-result-card span{margin-top:4px;color:var(--muted);font-size:13px;font-weight:800}.export-result-card a{max-width:580px;margin-top:6px;overflow:hidden;color:var(--primary-dark);font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.export-table th:first-child{width:160px}.export-table th:nth-child(3),.export-table th:nth-child(4),.export-table th:nth-child(5){width:150px}
