.competition-shell { display:grid; grid-template-columns:minmax(260px, 330px) minmax(0,1fr); gap:18px; align-items:start; }
.stack { display:grid; gap:12px; }
.panel-card { background:var(--panel); border:1px solid var(--border); border-radius:12px; padding:18px; backdrop-filter:var(--glass-blur); }
.panel-card h2,.panel-card h3 { margin:0; }
.panel-card .sub { color:var(--muted); margin:5px 0 0; }
.toolbar { display:flex; flex-wrap:wrap; gap:8px; align-items:center; justify-content:space-between; margin-bottom:14px; }
.toolbar-left,.toolbar-right { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.entity-list { display:grid; gap:8px; }
.entity-item { width:100%; text-align:left; display:grid; gap:4px; padding:12px 13px; border:1px solid var(--border); border-radius:9px; background:rgba(255,255,255,.025); color:var(--text); cursor:pointer; }
.entity-item:hover,.entity-item.selected { border-color:color-mix(in srgb, var(--ui-accent) 55%, transparent); background:color-mix(in srgb, var(--ui-accent) 7%, transparent); }
.entity-item strong { font-size:14px; }
.entity-meta { display:flex; gap:8px; flex-wrap:wrap; color:var(--muted); font-size:11px; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.form-grid .full { grid-column:1/-1; }
label.comp-field { display:grid; gap:6px; color:#d9d9dd; font-size:12px; font-weight:600; }
.comp-field textarea { min-height:90px; resize:vertical; }
.comp-field small { color:var(--muted); font-weight:400; }
.split-title { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:11px; margin-bottom:12px; border-bottom:1px solid var(--border); }
.split-title p { margin:3px 0 0; color:var(--muted); font-size:12px; }
.comp-table { width:100%; border-collapse:collapse; }
.comp-table th,.comp-table td { text-align:left; }



.table-wrap { overflow:auto; }
.empty-box { padding:24px; text-align:center; color:var(--muted); border:1px dashed var(--border); border-radius:10px; }
.inline-form { display:flex; flex-wrap:wrap; gap:8px; align-items:end; }
.inline-form > * { flex:1 1 140px; }
.inline-form button { flex:0 0 auto; }
.team-logo { width:34px; height:34px; border-radius:7px; object-fit:contain; background:rgba(255,255,255,.06); border:1px solid var(--border); }
.team-row { display:flex; align-items:center; gap:10px; }
.chip-list { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px; }
.chip { display:inline-flex; align-items:center; gap:6px; border:1px solid var(--border); border-radius:999px; padding:5px 6px 5px 12px; font-size:12px; background:rgba(255,255,255,.035); }
.chip button { border:0; background:transparent; color:var(--muted); cursor:pointer; font-size:14px; line-height:1; padding:2px 4px; }
.chip button:hover { color:#ff9aa2; }
#staffRoles .split-title { padding-bottom:8px; margin-bottom:10px; }
#staffRoles h3 { font-size:15px; margin:0; }
#staffRoles .comp-table input { color:var(--text); padding:6px 8px; width:100%; }
.kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:12px 0 18px; }
.kpi { border:1px solid var(--border); border-radius:10px; padding:12px; background:rgba(255,255,255,.025); }
.kpi span { display:block; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.8px; }
.kpi strong { display:block; font:700 22px 'Oxanium',sans-serif; margin-top:4px; }
.section-tabs { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:14px; }
.section-tabs button { min-height:34px; padding:7px 11px; }
.section-tabs button.active { border-color:rgba(255,255,255,.12); background:rgba(255,255,255,.055); }
.control-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:18px; }
.control-buttons { display:flex; flex-wrap:wrap; gap:8px; }
.control-button.green { border-color:rgba(86,215,160,.5); color:#aaf0cb; background:rgba(86,215,160,.08); }
.control-button.yellow { border-color:rgba(233,184,95,.5); color:#f4cf86; background:rgba(233,184,95,.08); }
.control-button.red { border-color:rgba(238,52,60,.6); color:#ff9aa2; background:rgba(238,52,60,.1); }
.control-button.purple { border-color:rgba(182,152,248,.5); color:#d8c7ff; background:rgba(182,152,248,.08); }
.control-feed { display:grid; gap:7px; max-height:310px; overflow:auto; }
.control-event { border-left:3px solid rgba(255,255,255,.13); padding:8px 10px; background:rgba(255,255,255,.025); }
.control-event strong { font-size:11px; }
.control-event span { color:var(--muted); font-size:10px; margin-left:8px; }
.notice { padding:10px 12px; border-radius:8px; border:1px solid rgba(233,184,95,.3); color:#f4cf86; background:rgba(233,184,95,.07); }
.success { color:#aaf0cb; }
.error-text { color:#ff9aa2; }
.mini-actions { display:flex; flex-wrap:wrap; gap:5px; }
.mini-actions button { min-height:28px; padding:4px 8px; font-size:11px; }
@media (max-width:1050px){ .competition-shell,.control-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,1fr)} }
@media (max-width:650px){ .form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.kpi-grid{grid-template-columns:1fr 1fr}.panel-card{padding:14px} }
