/* Braves Seating Phase 2 Polish Pass */
:root{--braves-gold:#d6a51f;--braves-black:#050505;--braves-panel:#161616;--braves-panel-2:#202020;--braves-border:#343434;--braves-good:#31a24c;--braves-warn:#f57c00;--braves-bad:#c62828}
*{box-sizing:border-box}
body{background:radial-gradient(circle at top left,rgba(214,165,31,.12),transparent 34rem),linear-gradient(180deg,#0b0b0b,#111);color:#fff}
header{box-shadow:0 12px 36px rgba(0,0,0,.35)}
header h1{text-shadow:0 2px 12px rgba(214,165,31,.18)}
button,.button,.btn,.tool{transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}
button:hover,.button:hover,.btn:hover,.tool:hover{transform:translateY(-1px);filter:brightness(1.08);box-shadow:0 7px 20px rgba(0,0,0,.28)}
.card,.dash-card,.event-card,.scanner-card,.panel,.ticket-card,.report-card,.fast-item,.heatmap-card{box-shadow:0 12px 32px rgba(0,0,0,.28)}
.dash-card,.card,.event-card,.scanner-card,.panel{background:linear-gradient(180deg,var(--braves-panel-2),var(--braves-panel));border:1px solid var(--braves-border)}
.braves-system-ribbon{background:#0a0a0a;border-bottom:1px solid #2b2b2b;padding:8px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;color:#ddd;font-size:13px}
.braves-system-ribbon b{color:var(--braves-gold)}
.braves-system-ribbon .pill{display:inline-flex;align-items:center;gap:6px;background:#1f1f1f;border:1px solid #3a3a3a;border-radius:999px;padding:5px 9px;font-weight:bold}
.braves-system-ribbon .dot{width:9px;height:9px;border-radius:50%;background:var(--braves-good);display:inline-block}
#bravesLoading{position:fixed;inset:0;z-index:99998;background:rgba(5,5,5,.72);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;flex-direction:column;color:#fff;font-family:Arial}
#bravesLoading .spinner{width:54px;height:54px;border-radius:50%;border:5px solid rgba(214,165,31,.22);border-top-color:var(--braves-gold);animation:spin .8s linear infinite}
#bravesLoading .text{margin-top:14px;color:var(--braves-gold);font-weight:900}
@keyframes spin{to{transform:rotate(360deg)}}
#bravesToastWrap{position:fixed;right:18px;top:18px;z-index:99999;display:grid;gap:10px}
.braves-toast{min-width:240px;max-width:360px;background:#111;color:#fff;border:1px solid #444;border-left:6px solid var(--braves-gold);border-radius:12px;padding:12px 14px;box-shadow:0 14px 36px rgba(0,0,0,.45);animation:toastIn .18s ease}
.braves-toast.good{border-left-color:var(--braves-good)}.braves-toast.warn{border-left-color:var(--braves-warn)}.braves-toast.bad{border-left-color:var(--braves-bad)}
@keyframes toastIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.braves-footer{color:#999;background:#050505;border-top:1px solid #2b2b2b;padding:14px 18px;text-align:center;font-size:13px}.braves-footer b{color:var(--braves-gold)}
input:focus,select:focus,textarea:focus{border-color:var(--braves-gold)!important;box-shadow:0 0 0 3px rgba(214,165,31,.16);outline:none}
@media(max-width:800px){header{padding:14px!important}header h1{font-size:24px!important}.toolbar,.actions,.ops-actions,.ticket-actions,.controls{width:100%;justify-content:flex-start!important}.dashboard,.stats,.report-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:520px){.dashboard,.stats,.report-grid,.state-grid{grid-template-columns:1fr!important}}
@media print{.braves-system-ribbon,.braves-footer,#bravesToastWrap,#bravesLoading{display:none!important}}
