@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";:root,[data-theme=dark]{--bg-base:#11141a;--bg-surface-1:#161b24;--bg-surface-2:#1d2330;--bg-surface-3:#242c3c;--bg-surface-hover:#2b3447;--border-subtle:#2b3548;--border-active:#475569;--border-highlight:#94a3b8;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--text-muted:#64748b;--text-dim:#475569;--accent-cyan:#0284c7;--accent-emerald:#059669;--accent-amber:#d97706;--accent-purple:#7c3aed;--accent-rose:#e11d48;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-heading:"Outfit", sans-serif;--font-mono:"JetBrains Mono", monospace;--radius-sm:2px;--radius-md:2px;--radius-lg:3px;--radius-full:2px;--transition:all .15s ease}[data-theme=light]{--bg-base:#f1f5f9;--bg-surface-1:#fff;--bg-surface-2:#f8fafc;--bg-surface-3:#e2e8f0;--bg-surface-hover:#cbd5e1;--border-subtle:#cbd5e1;--border-active:#94a3b8;--border-highlight:#475569;--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#64748b;--text-dim:#94a3b8;--accent-cyan:#0369a1;--accent-emerald:#047857;--accent-amber:#b45309;--accent-purple:#6d28d9;--accent-rose:#be123c}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.5;transition:background-color .2s,color .2s;overflow-x:hidden}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:var(--bg-surface-1)}::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--border-active)}.app-shell{max-width:1480px;margin:0 auto;padding:20px 28px 60px}.app-header{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;padding-bottom:18px;display:flex}.brand-section{align-items:center;gap:12px;display:flex}.brand-badge{background:var(--bg-surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);justify-content:center;align-items:center;width:38px;height:38px;display:flex}.brand-title{font-family:var(--font-heading);letter-spacing:-.2px;color:var(--text-primary);font-size:19px;font-weight:800}.brand-subtitle{color:var(--text-muted);font-size:11px}.geo-switch-bar{background:var(--bg-surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);align-items:center;gap:4px;padding:3px 4px;display:flex}.geo-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;padding:0 8px;font-size:10px;font-weight:700}.geo-btn{color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);background:0 0;border:1px solid #0000;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:600;display:flex}.geo-btn:hover{color:var(--text-primary);background:var(--bg-surface-2)}.geo-btn.active{background:var(--bg-surface-3);color:var(--text-primary);border:1px solid var(--border-active);font-weight:700}.nav-bar{border-bottom:1px solid var(--border-subtle);gap:6px;margin-bottom:20px;padding-bottom:6px;display:flex}.nav-item{color:var(--text-muted);font-family:var(--font-heading);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;display:flex}.nav-item:hover{color:var(--text-primary);background:var(--bg-surface-1)}.nav-item.active{color:var(--text-primary);background:var(--bg-surface-2);border:1px solid var(--border-subtle)}.card-panel{background:var(--bg-surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:20px}.card-panel-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.card-title{font-family:var(--font-heading);color:var(--text-primary);align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.card-subtitle{color:var(--text-muted);font-size:11px}.input-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:4px;font-size:10px;font-weight:700;display:block}.text-field{background:var(--bg-surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-size:12px;font-family:var(--font-sans);transition:var(--transition);outline:none;padding:6px 10px}.text-field:focus{border-color:var(--border-active)}.select-field{background:var(--bg-surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-size:12px;font-family:var(--font-sans);cursor:pointer;appearance:none;transition:var(--transition);background-image:url("data:image/svg2+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;outline:none;padding:6px 26px 6px 10px}.select-field:focus{border-color:var(--border-active)}.select-field option{background:var(--bg-surface-1);color:var(--text-primary)}.score-box{border-radius:var(--radius-sm);background:var(--bg-surface-2);border:1px solid var(--border-subtle);box-sizing:border-box;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:74px;min-width:74px;max-width:74px;height:56px;min-height:56px;max-height:56px;padding:2px 4px;display:inline-flex}.score-box-val{font-family:var(--font-heading);font-size:16px;font-weight:800;line-height:1.1}.score-box-label{text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;text-overflow:ellipsis;width:100%;margin-top:2px;font-size:8px;font-weight:700;overflow:hidden}.badge{border-radius:var(--radius-sm);letter-spacing:.3px;text-transform:uppercase;align-items:center;gap:4px;padding:2px 6px;font-size:10px;font-weight:700;display:inline-flex}.badge-crusade{color:#fb7185;background:#e11d481f;border:1px solid #e11d484d}.badge-derby{color:#34d399;background:#0596691f;border:1px solid #0596694d}.badge-neutral{background:var(--bg-surface-2);color:var(--text-secondary);border:1px solid var(--border-subtle)}.badge-purple{color:#c084fc;background:#7c3aed1f;border:1px solid #7c3aed4d}.badge-green{color:#34d399;background:#0596691f;border:1px solid #0596694d}.badge-rose{color:#fb7185;background:#e11d481f;border:1px solid #e11d484d}.btn-black{background:var(--bg-surface-2);border:1px solid var(--border-subtle);color:var(--text-primary);font-family:var(--font-sans);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.btn-black:hover{background:var(--bg-surface-3);border-color:var(--border-active)}.btn-primary{background:var(--accent-cyan);border:1px solid var(--accent-cyan);color:#fff;font-family:var(--font-sans);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex}.btn-primary:hover{opacity:.92}.data-table-wrapper{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface-1);overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}.data-table th{background:var(--bg-surface-2);font-family:var(--font-sans);color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border-subtle);padding:10px 14px;font-size:11px;font-weight:700}.data-table td{border-bottom:1px solid var(--border-subtle);padding:12px 14px}.data-table tr.clickable-row{cursor:pointer;transition:var(--transition)}.data-table tr.clickable-row:hover td{background:var(--bg-surface-hover)}.modal-overlay,.modal-backdrop{-webkit-backdrop-filter:blur(6px);z-index:2000;background:#0a0d12d9;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal-dialog,.modal-card,.modal-container{background:var(--bg-surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-md);z-index:2001;flex-direction:column;width:100%;max-width:860px;max-height:90vh;animation:.15s modalScaleUp;display:flex;position:relative;overflow-y:auto;box-shadow:0 24px 48px #000000a6}.modal-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface-1);z-index:5;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.modal-title{font-family:var(--font-heading);color:var(--text-primary);margin:0;font-size:16px;font-weight:800}.modal-body{padding:20px;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-subtle);background:var(--bg-surface-1);z-index:5;align-items:center;padding:14px 20px;display:flex;position:sticky;bottom:0}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.35}}.skeleton-box{background:var(--bg-surface-3);border-radius:var(--radius-sm);animation:1.4s ease-in-out infinite skeleton-pulse}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.status-dot{vertical-align:middle;border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.status-dot-green{background-color:#10b981;box-shadow:0 0 6px #10b981b3}.status-dot-rose{background-color:#f43f5e;box-shadow:0 0 6px #f43f5eb3}.status-dot-neutral{background-color:#71717a}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}
