:root{--pup-maroon:maroon;--pup-maroon-dark:#5b0c0e;--pup-gold:#d4af37;--text:#0f172a;--muted:#6b7280;--bg-0:#eaedf1;--bg-1:#dde1e8;--surface-frosted:#fffffff5;--focus-ring:#007aff;--safe-area-bottom:env(safe-area-inset-bottom,0px);--motion-fast:.14s;--motion-medium:.22s;--motion-smooth:cubic-bezier(.2, .8, .2, 1);--card:#fff;--card-strong:#fff;--border:#0000001f;--border-soft:#00000012;--shadow:0 1px 3px #00000014, 0 4px 12px #0000000a;--shadow-soft:0 1px 2px #0000000f;--radius:8px;--ops-surface:#fff;--ops-surface-2:#f8fafc;--ops-line:#0000001a;--ops-success:#15803d;--ops-warning:#b7791f;--ops-danger:#b91c1c;--ops-info:#1d4ed8;--ops-focus:0 0 0 3px #8000002e}[data-theme=dark]{--text:#e5e7eb;--muted:#9ca3af;--bg-0:#0b1220;--bg-1:#0f172a;--card:#0f172ae6;--card-strong:#0f172af5;--border:#94a3b83d;--border-soft:#94a3b82e;--shadow:0 18px 50px #0206178c;--shadow-soft:0 10px 26px #02061766}html,body,#__next{width:100%;height:100%;margin:0;padding:0}.admin-shell{background:var(--bg-0);box-sizing:border-box;width:100vw;min-height:100vh;color:var(--text);flex-direction:column;font-family:Public Sans,Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;display:flex;overflow-x:hidden}.admin-shell-compact .btn{padding:8px 10px;font-size:12px}.admin-shell-compact .kpi,.admin-shell-compact .panel-body{padding:10px}.admin-shell-compact .table-wrapper{max-height:300px!important}.admin-wrap{flex:1;width:100%;min-height:100vh;display:flex}.admin-wrap [data-slot=card]{border-radius:8px}.admin-rail.legacy-admin-rail{display:none!important}.admin-rail{width:240px;height:100vh;transition:width var(--motion-medium) var(--motion-smooth), transform var(--motion-medium) var(--motion-smooth), box-shadow var(--motion-medium) ease;z-index:10;-webkit-backdrop-filter:blur(22px)saturate(1.24);background:#ffffffc2;border-right:1px solid #ffffff94;flex-direction:column;flex-shrink:0;align-self:flex-start;display:flex;position:sticky;top:0;overflow:hidden auto;box-shadow:18px 0 60px #0f172a17}.admin-rail.is-collapsed{width:64px}.admin-mobile-sidebar-overlay{z-index:80;-webkit-backdrop-filter:blur(10px);background:#0f172a52;display:none;position:fixed;inset:0}.admin-mobile-sidebar-panel{width:min(84vw,330px);height:100%;padding:10px 0 calc(10px + var(--safe-area-bottom))}.admin-rail-mobile{border-right:1px solid #ffffff9e;border-radius:0 28px 28px 0;width:100%;max-width:none;height:100%;position:relative;top:auto;box-shadow:28px 0 80px #0f172a38}.rail-logo{border-bottom:1px solid var(--border-soft);align-items:center;gap:10px;min-height:68px;padding:16px 14px;display:flex}.rail-logo-img{object-fit:cover;border:1.5px solid #7b11132e;border-radius:9px;flex-shrink:0;width:36px;height:36px;box-shadow:0 2px 8px #7b11131a}.rail-logo-text{flex:1;min-width:0;overflow:hidden}.rail-logo-title{color:var(--pup-maroon);white-space:nowrap;text-overflow:ellipsis;letter-spacing:.01em;font-size:13.5px;font-weight:900;display:block;overflow:hidden}.rail-logo-sub{color:var(--muted);white-space:nowrap;margin-top:1px;font-size:11px;display:block}.rail-collapse-btn{border:1px solid var(--border);cursor:pointer;width:26px;height:26px;color:var(--pup-maroon);box-shadow:none;background:#7b11130a;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,box-shadow .15s;display:flex}.rail-collapse-btn:hover{box-shadow:none;background:#7b11131a;transform:none}.rail-nav{flex-direction:column;flex:1;gap:2px;padding:12px 10px;display:flex}.rail-section-label{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);white-space:nowrap;padding:4px 8px 8px;font-size:10px;font-weight:700;overflow:hidden}.rail-nav-item{cursor:pointer;color:#374151;text-align:left;white-space:nowrap;width:100%;box-shadow:none;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:9px 10px;font-size:13.5px;font-weight:600;transition:background .15s,color .15s;display:flex;overflow:hidden}.rail-nav-item:hover{color:var(--pup-maroon);box-shadow:none;background:#7b11130d;transform:none}.rail-nav-item.is-active{color:var(--pup-maroon);border-left:3px solid var(--pup-maroon);background:#7b111314;padding-left:7px;font-weight:700}.rail-nav-item-icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.rail-nav-item-label{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.rail-divider{background:var(--border-soft);flex-shrink:0;height:1px;margin:4px 12px}.rail-sub-section{flex-shrink:0;padding:10px}.rail-metrics-section{flex-direction:column;gap:5px;padding-bottom:16px;display:flex}.rail-select{width:100%;font-size:12.5px}.rail-pill{background:#7b11130a;border:1px solid #7b111314;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;font-size:12px;display:flex}.rail-pill .k{color:var(--muted)}.rail-pill .v{color:var(--pup-maroon-dark);font-weight:900}.admin-sidebar-dark{background:#1c0808!important;border-right-color:#2d0a0a!important}.admin-sidebar-dark .separator,.admin-sidebar-dark [data-slot=separator]{background:#ffffff14!important}.admin-sidebar-dark [data-slot=button][data-variant=default]{color:#d4af37!important;background:#d4af3726!important;border-left:2px solid #d4af37!important;border-radius:4px!important}.admin-sidebar-dark [data-slot=button][data-variant=ghost]{color:#fff9!important}.admin-sidebar-dark [data-slot=button][data-variant=ghost]:hover{color:#ffffffe6!important;background:#ffffff0f!important}.admin-sidebar-dark p,.admin-sidebar-dark span:not([data-slot=button] span),.admin-sidebar-dark .truncate{color:#fff9}.admin-sidebar-dark select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#ffffffb3!important;background:#ffffff0f!important;border-color:#ffffff1f!important}.admin-card{flex-direction:column;height:100vh;display:flex;overflow:hidden auto;width:auto!important;min-width:0!important;max-width:none!important;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;flex:1!important}.admin-topbar{border-bottom:1px solid var(--border);z-index:20;box-sizing:border-box;background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;width:100%;height:60px;min-height:60px;padding:0 24px;display:flex;position:sticky;top:0}.admin-mobile-menu-btn{width:42px;height:42px;color:var(--pup-maroon);cursor:pointer;background:#ffffffe0;border:1px solid #80000024;border-radius:15px;flex-shrink:0;place-items:center;gap:4px;padding:10px;display:none;box-shadow:0 10px 28px #0f172a14}.admin-mobile-menu-btn span{background:currentColor;border-radius:999px;width:18px;height:2px;display:block}.topbar-left{align-items:center;gap:12px;min-width:0;display:flex}.topbar-title-wrap{flex-direction:column;gap:1px;display:flex}.topbar-title{color:var(--pup-maroon);white-space:nowrap;margin:0;font-size:17px;font-weight:900;line-height:1.2}.topbar-sub{color:var(--muted);white-space:nowrap;font-size:11.5px}.topbar-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.topbar-election{background:#ffffffd6;border:1px solid #0f172a14;border-radius:14px;align-items:center;gap:6px;height:34px;padding:0 10px;display:flex}.topbar-select{color:var(--text);cursor:pointer;background:0 0;border:none;outline:none;max-width:180px;font-size:12.5px;font-weight:600}.topbar-btn-group{background:#ffffff8f;border:1px solid #0f172a0f;border-radius:14px;align-items:center;gap:1px;padding:2px;display:flex}.topbar-btn{cursor:pointer;color:#4b5563;min-width:36px;height:32px;transition:background var(--motion-fast) ease, color var(--motion-fast) ease, box-shadow var(--motion-medium) ease, transform var(--motion-fast) var(--motion-smooth);white-space:nowrap;box-shadow:none;background:0 0;border:none;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:600;display:inline-flex}.topbar-btn:hover{color:var(--pup-maroon);background:#fff;transform:translateY(-1px);box-shadow:0 8px 22px #0f172a14}.topbar-btn.topbar-btn-active{color:var(--pup-maroon);background:#fff;box-shadow:0 1px 4px #00000014}.topbar-btn-label{font-size:12.5px}.topbar-btn.topbar-btn-primary{background:linear-gradient(180deg, #941014, var(--pup-maroon));color:#fff;border-radius:12px;box-shadow:0 12px 24px #80000038}.topbar-btn.topbar-btn-primary:hover{background:var(--pup-maroon-dark);color:#fff;transform:none;box-shadow:0 4px 12px #7b11134d}.topbar-btn.topbar-btn-warn{color:#7a4f00;box-shadow:none;background:#f1b9421f;border:1px solid #f1b94266;border-radius:8px}.topbar-btn.topbar-btn-warn:hover{color:#5a3900;box-shadow:none;background:#f1b94238;transform:none}.topbar-profile-wrap{position:relative}.topbar-avatar{border:1px solid var(--border);cursor:pointer;box-shadow:none;background:#fff;border-radius:999px;align-items:center;gap:5px;padding:4px 8px 4px 4px;transition:box-shadow .15s,border-color .15s;display:flex}.topbar-avatar:hover{border-color:#7b11134d;transform:none;box-shadow:0 2px 8px #00000014}.topbar-avatar-initials{background:linear-gradient(135deg, var(--pup-maroon), #a8262a);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:flex}.topbar-dropdown{border:1px solid var(--border);z-index:9999;background:#fff;border-radius:14px;min-width:200px;animation:.15s cubic-bezier(.16,1,.3,1) dropdownIn;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 16px 48px #00000024}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.topbar-dropdown-header{align-items:center;gap:10px;padding:14px 14px 12px;display:flex}.topbar-dropdown-avatar{background:linear-gradient(135deg, var(--pup-maroon), #a8262a);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:800;display:flex}.topbar-dropdown-name{color:var(--text);font-size:13.5px;font-weight:800}.topbar-dropdown-role{color:var(--muted);margin-top:1px;font-size:11.5px}.topbar-dropdown-divider{background:var(--border-soft);height:1px;margin:0 10px}.topbar-dropdown-item{cursor:pointer;color:#374151;text-align:left;width:100%;box-shadow:none;background:0 0;border:none;align-items:center;gap:9px;padding:10px 14px;font-size:13px;font-weight:600;transition:background .12s;display:flex}.topbar-dropdown-item:hover{background:var(--bg-1);box-shadow:none;transform:none}.topbar-dropdown-logout{color:#b91c1c;padding-bottom:12px}.topbar-dropdown-logout:hover{background:#b91c1c0d}.actions{flex-wrap:wrap;gap:8px;display:flex}.btn{border:1px solid var(--ops-line);background:var(--ops-surface);cursor:pointer;letter-spacing:0;min-width:44px;min-height:44px;color:var(--text);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:850;line-height:1.1;transition:transform .14s,box-shadow .18s,background .18s,border-color .18s,color .18s,filter .18s;display:inline-flex;box-shadow:0 1px 2px #0206170f}.btn:hover{border-color:#7b111347;transform:translateY(-1px);box-shadow:0 8px 18px #0206171c}.btn:active{transform:translateY(0)scale(.99);box-shadow:inset 0 1px 2px #0206171f}.btn:focus-visible{box-shadow:var(--ops-focus), 0 8px 18px #0206171f;outline:none}.btn:disabled{opacity:.58;cursor:not-allowed;filter:grayscale(.15);box-shadow:none!important;transform:none!important}.btn-primary{color:#fff;background:linear-gradient(180deg, #8f1618, var(--pup-maroon));border:1px solid #7b111394;box-shadow:0 8px 18px #7b111338}.btn-primary:hover{filter:saturate(1.06)brightness(1.02)}.btn-outline,.btn-secondary{background:var(--ops-surface);color:var(--pup-maroon);border:1px solid #7b11133d}.btn-outline:hover,.btn-secondary:hover{background:#7b11130f;border-color:#7b111357}.btn-warn{color:#4b2b00;background:#f1b94233;border:1px solid #b7791f5c}.btn-danger{color:var(--ops-danger);background:#b91c1c1a;border:1px solid #b91c1c4d;box-shadow:0 6px 14px #b91c1c1f}.btn-danger:hover{background:#b91c1c24;border-color:#b91c1c70}.btn-loading,.btn[aria-busy=true]{cursor:progress;position:relative}.btn-loading:before,.btn[aria-busy=true]:before{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:12px;height:12px;animation:.8s linear infinite btnSpin}@keyframes btnSpin{to{transform:rotate(360deg)}}.icon{width:16px;height:16px;display:inline-block}.admin-body{box-sizing:border-box;flex:1;width:100%;padding:22px 28px 36px}.error-banner{color:#991b1b;background:#ef444414;border:1px solid #ef444424;border-radius:14px;margin:0 0 12px;padding:10px 12px;font-size:13px;font-weight:700}.kpi-row{grid-template-columns:1fr 1fr 1.2fr 1.6fr;gap:12px;margin-bottom:14px;display:grid}.kpi-strip{margin-bottom:14px;scroll-margin-top:90px}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.kpi{transition:box-shadow var(--motion-medium) ease, transform var(--motion-medium) var(--motion-smooth);background:linear-gradient(#fffffff0,#f9f9f7d1);border:1px solid #ffffff94;border-radius:10px;align-items:center;gap:10px;padding:18px 20px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 48px #0f172a17}.kpi:hover{transform:translateY(-2px);box-shadow:0 26px 60px #0f172a21}.kpi-card{justify-content:space-between;min-height:96px}.kpi-card:before{content:"";background:var(--pup-maroon);width:4px;position:absolute;inset:0 auto 0 0}.kpi-gold:before{background:var(--pup-gold)}.kpi-green:before{background:#16a34a}.kpi-blue:before{background:#1d4ed8}.kpi-maroon:before{background:var(--pup-maroon)}.kpi .label{color:var(--muted);font-size:12px}.kpi .value{color:var(--pup-maroon);margin-top:8px;font-size:30px;font-weight:950;line-height:1}.kpi-meta,.kpi-trend{color:var(--muted);margin-top:6px;font-size:12px;font-weight:800}.kpi-trend{color:#065f46;background:#10b9811a;border:1px solid #10b9812e;border-radius:999px;align-self:flex-start;padding:4px 8px}.kpi-visual{justify-items:end;gap:8px;min-width:88px;display:grid}.kpi-sparkline{width:84px;height:34px;overflow:visible}.kpi-sparkline path{fill:none;stroke:var(--pup-maroon);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.kpi-sparkline-gold path,.kpi-sparkline-green path,.kpi-sparkline-blue path{stroke:var(--pup-maroon)}.kpi-gold .value{color:#4b2b00}.kpi-leader{grid-column:span 2}.leader-mark{color:#4b2b00;background:#f1b94233;border:1px solid #f1b9424d;border-radius:12px;place-items:center;width:42px;height:42px;font-weight:950;display:grid}.live-status{color:var(--muted);align-items:center;gap:8px;margin-top:10px;font-size:12px;font-weight:800;display:inline-flex}.live-dot{background:#16a34a;border-radius:50%;width:8px;height:8px;animation:1.8s ease-in-out infinite livePulse;box-shadow:0 0 0 5px #16a34a1f}@keyframes livePulse{0%,to{box-shadow:0 0 0 4px #16a34a1f}50%{box-shadow:0 0 0 8px #16a34a0a}}.leader{align-items:center;gap:12px;display:flex}.leader .thumb{border:1px solid var(--border-soft);border-radius:14px;flex:none;width:48px;height:48px;overflow:hidden;box-shadow:0 10px 22px #02061714}.leader .thumb img{object-fit:cover;width:100%;height:100%}.leader .name{color:var(--pup-maroon-dark);font-size:14px;font-weight:950;line-height:1.15}.leader .meta{color:var(--muted);margin-top:2px;font-size:12px}.leaderVotes{text-align:right;margin-left:auto}.leaderVotes .num{color:#4b2b00;font-size:18px;font-weight:950}.leaderVotes .txt{color:var(--muted);margin-top:2px;font-size:12px}.leader-progress{background:#02061714;border-radius:999px;width:96px;height:7px;margin-top:8px;overflow:hidden}.leader-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--pup-maroon), var(--pup-gold));height:100%;display:block}.leader-gap{color:var(--muted);margin-top:5px;font-size:11px;font-weight:900}.grid{grid-template-columns:1fr 1.25fr;gap:14px;display:grid}.panel{transition:border-color var(--motion-medium) ease, box-shadow var(--motion-medium) ease, transform var(--motion-medium) var(--motion-smooth);-webkit-backdrop-filter:blur(18px)saturate(1.2);background:#ffffffd1;border:1px solid #ffffff94;border-radius:24px;position:relative;overflow:hidden;box-shadow:0 20px 58px #0f172a1a}.panel:hover{border-color:#8000002e;transform:translateY(-1px);box-shadow:0 28px 70px #0f172a21}.panel:before{content:"";background:var(--pup-maroon);height:3px;position:absolute;inset:0 0 auto}.panel--primary:before{background:var(--pup-maroon)}.panel--analytics:before{background:var(--ops-info)}.panel--danger:before{background:var(--ops-danger)}.panel--dense .panel-body{padding:12px 14px}.panel--danger{background:linear-gradient(#b91c1c09,#fff 90px);border-color:#b91c1c33}.panel-head{background:linear-gradient(#fffffff0,#f9f9f7b8);border-bottom:1px solid #0f172a0f;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px 13px;display:flex}.panel-head h3{color:#111827;letter-spacing:0;margin:0;font-size:13.5px;font-weight:800}.panel-head-main{gap:4px;min-width:0;display:grid}.panel-meta-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.panel-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.status-badge{border:1px solid var(--ops-line);min-height:26px;color:var(--muted);background:#fff;border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-size:11px;font-weight:900;display:inline-flex}.status-badge:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.status-badge-live{color:var(--ops-success);background:#15803d14;border-color:#15803d38}.status-badge-info{color:var(--ops-info);background:#1d4ed814;border-color:#1d4ed833}.status-badge-warn{color:#7a4f00;background:#f1b9422e;border-color:#b7791f3d}.status-badge-danger{color:var(--ops-danger);background:#b91c1c14;border-color:#b91c1c3d}.panel-body{padding:16px 18px}.admin-toolbar,.panel-toolbar,.filter-toolbar,.action-toolbar,.modal-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-toolbar,.panel-toolbar,.filter-toolbar{background:#ffffffad;border:1px solid #0f172a12;border-radius:18px;padding:10px}.filter-toolbar{grid-template-columns:minmax(220px,1.4fr) minmax(160px,1fr) minmax(160px,1fr) auto;display:grid}.toolbar-summary{color:var(--muted);white-space:nowrap;align-self:center;font-size:12px;font-weight:850}.modal-actions{justify-content:flex-end;padding-top:4px}.form-section-title{color:var(--pup-maroon);letter-spacing:0;font-size:12.5px;font-weight:950}.admin-command-stack{background:#ffffffad;border:1px solid #0f172a12;border-radius:18px;padding:10px}.admin-subpanel,.candidate-control-stack{gap:10px;margin-top:12px;display:grid}.position-card-list{gap:8px;max-height:180px;padding-right:2px;display:grid;overflow-y:auto}.position-card-row{background:#ffffffe6;border:1px solid #0f172a12;border-radius:18px;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:8px 10px;display:flex}.position-card-name{color:#111827;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:850;overflow:hidden}.btn-compact{min-height:36px;padding:7px 10px;font-size:12px}.leader-command-card{border:1px solid var(--border-soft);cursor:pointer;text-align:left;background:#fff;border-radius:8px;width:100%;min-height:72px;padding:12px;scroll-margin-top:90px;transition:border-color .16s,box-shadow .16s,transform .16s}.leader-command-card:hover,.leader-command-card:focus-visible{border-color:#7b11133d;outline:none;transform:translateY(-1px);box-shadow:0 8px 18px #02061717}.danger-zone{background:linear-gradient(#b91c1c14,#b91c1c0a);border:1px solid #b91c1c3d;border-radius:18px;padding:12px}.danger-zone-title{color:#991b1b;letter-spacing:0;font-size:12px;font-weight:950}.danger-zone-help{color:#7f1d1d;margin-top:4px;font-size:12px}.danger-actions{margin-top:10px}.modal-detail-grid{gap:10px;padding:14px;display:grid}.form-grid{gap:10px;display:grid}.input{background:#fffffffa;border:1px solid #0f172a1a;border-radius:12px;outline:none;width:100%;padding:11px 12px;font-size:14px;transition:box-shadow .12s,border-color .12s}.input:focus{border-color:#7b111373;box-shadow:0 0 0 4px #7b11131a}.simple-list{max-height:240px;margin:0;padding:0;list-style:none;overflow:auto}.simple-list li{border-bottom:1px solid #0206170d;justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.list-title{color:var(--pup-maroon-dark);font-size:13px;font-weight:900}.list-sub{color:var(--muted);margin-top:2px;font-size:12px}.muted{color:var(--muted);font-size:13px}.pos-dropdown{z-index:50;background:#fffffffa;border:1px solid #0f172a1a;border-radius:12px;max-height:220px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden auto;box-shadow:0 14px 28px #0206171f}.pos-item{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:10px 12px;display:flex}.pos-item:hover{background:#7b11130f}.pos-name{color:var(--pup-maroon-dark);font-size:13px;font-weight:900}.pos-empty{color:var(--muted);padding:10px 12px;font-size:12px}.hint{color:var(--muted);margin-top:-4px;font-size:12px}.course-card{background:#fffffff2;border:1px solid #0f172a14;border-radius:16px;overflow:hidden}.course-head{color:var(--pup-maroon);cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(90deg,#7b11130f,#f1b9420f);border-bottom:1px solid #0f172a0f;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-weight:950;display:flex}.course-chevron{justify-content:center;align-items:center;width:18px;height:18px;transition:transform .15s;display:inline-flex}.course-chevron.open{transform:rotate(180deg)}.course-count{color:var(--muted);font-size:12px;font-weight:900}.table-wrapper{border-radius:0 0 14px 14px;overflow:auto}table.simple-table{border-collapse:collapse;width:100%;font-size:13px}table.simple-table thead th{z-index:2;text-align:left;border-bottom:1px solid var(--border-soft);letter-spacing:.05em;text-transform:uppercase;color:#6b7280;background:#f9fafb;padding:11px 16px;font-size:11.5px;font-weight:700;position:sticky;top:0}table.simple-table tbody td{vertical-align:middle;color:#374151;border-bottom:1px solid #0206170a;padding:12px 16px}table.simple-table tbody tr:last-child td{border-bottom:none}table.simple-table tbody tr:hover td{background:#7b111308}table.simple-table tbody tr:nth-child(2n) td{background:#f9fafbb3}table.simple-table tbody tr:nth-child(2n):hover td{background:#7b111308}.audit-timeline{border-bottom:1px solid var(--border-soft);margin-bottom:12px;padding-bottom:2px}.audit-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.audit-title{color:var(--pup-maroon);font-size:13px;font-weight:950}.audit-subtitle{color:var(--muted);margin-top:3px;font-size:12px}.audit-row td:first-child{padding-left:28px;position:relative}.audit-row td:first-child:before{content:"";background:#7b111324;width:1px;position:absolute;top:0;bottom:0;left:12px}.audit-node{background:var(--pup-gold);border:2px solid #fff;border-radius:50%;width:9px;height:9px;position:absolute;top:50%;left:8px;transform:translateY(-50%);box-shadow:0 0 0 2px #7b111324}.audit-actions,.audit-bulk-actions{flex-wrap:wrap;gap:8px;display:flex}.audit-actions{margin-top:6px}.audit-actions .btn,.audit-bulk-actions .btn{padding:7px 10px;font-size:12px}.audit-bulk-actions{align-items:center;margin:10px 0}.badge-id{color:#111827;background:#fffffffa;border:1px solid #02061714;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:950;display:inline-flex}.badge-votes{color:#4b2b00;background:linear-gradient(90deg,#f1b942f2,#f1b942bf);border:1px solid #f1b94273;border-radius:999px;align-items:center;margin-left:8px;padding:6px 10px;font-weight:950;display:inline-flex}.candidate-table-viewport{background:#ffffffe0;border:1px solid #0f172a12;border-radius:22px;overflow:auto}.candidate-table-head,.vc-row{align-items:center;gap:12px;min-width:760px;padding:0 14px;display:grid}.candidate-table-head{z-index:4;border-bottom:1px solid var(--border-soft);color:#6b7280;letter-spacing:.05em;text-transform:uppercase;background:#f9f9f7f0;grid-template-columns:34px minmax(220px,2.1fr) minmax(130px,1.2fr) minmax(78px,.7fr) minmax(130px,1fr);min-height:44px;font-size:11.5px;font-weight:800;position:sticky;top:0}.candidate-sort{color:inherit;cursor:pointer;font:inherit;text-transform:inherit;letter-spacing:inherit;box-shadow:none;background:0 0;border:0;align-items:center;gap:5px;padding:0;display:inline-flex}.candidate-sort:after{content:"";opacity:.35;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0}.candidate-sort.sort-up:after{opacity:.9;border-bottom:5px solid}.candidate-sort.sort-down:after{opacity:.9;border-top:5px solid}.candidate-sort.sort-idle:after{border-top:5px solid}.vc-row{transition:background var(--motion-fast) ease, transform var(--motion-fast) var(--motion-smooth);border-bottom:1px solid #0206170d}.candidate-avatar{color:#fff;background:linear-gradient(135deg, var(--pup-maroon), #1d4ed8);border-radius:13px;flex:none;place-items:center;width:34px;height:34px;font-size:11px;font-weight:950;display:grid}.candidate-name-button{color:var(--pup-maroon-dark);cursor:pointer;text-align:left;max-width:100%;box-shadow:none;background:0 0;border:0;padding:0;font-size:13.5px;font-weight:950}.candidate-name-button span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.candidate-subtext,.candidate-cell{min-width:0;color:var(--muted);font-size:12px}.candidate-cell>div{text-overflow:ellipsis;white-space:nowrap;color:#374151;font-weight:800;overflow:hidden}.candidate-status{border-radius:999px;margin-top:5px;padding:3px 7px;font-size:10.5px;font-weight:950;display:inline-flex}.status-leading{color:#065f46;background:#10b9811f}.status-tied{color:#7a4f00;background:#f1b94233}.status-no-votes{color:#64748b;background:#64748b1f}.status-chasing{color:#1d4ed8;background:#1d4ed81a}.candidate-vote-cell{justify-items:end;gap:7px;min-width:0;display:grid}.candidate-vote-row{align-items:center;gap:8px;display:inline-flex;position:relative}.candidate-vote-progress{background:#02061714;border-radius:999px;width:min(118px,100%);height:6px;overflow:hidden}.candidate-vote-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--pup-maroon), var(--pup-gold));height:100%;display:block}.candidate-actions{position:relative}.row-menu-btn{width:30px;height:28px;color:var(--muted);cursor:pointer;opacity:0;background:#fffffff0;border:1px solid #0f172a14;border-radius:8px;transition:opacity .12s,color .12s}.vc-row:hover .row-menu-btn,.vc-row:focus-within .row-menu-btn{opacity:1}.candidate-row-menu{border:1px solid var(--border);opacity:0;pointer-events:none;z-index:8;background:#fff;border-radius:10px;min-width:150px;padding:5px;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 6px);right:0;transform:translateY(-4px);box-shadow:0 16px 34px #02061724}.candidate-actions:hover .candidate-row-menu,.candidate-actions:focus-within .candidate-row-menu{opacity:1;pointer-events:auto;transform:translateY(0)}.candidate-row-menu button{color:#991b1b;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;width:100%;padding:8px 9px;font-size:12px;font-weight:900}.candidate-table-empty{color:var(--muted);text-align:center;padding:26px 14px;font-size:13px}.candidate-mobile-list{gap:12px;display:grid}.candidate-mobile-card{background:#ffffffeb;border:1px solid #0f172a14;border-radius:22px;gap:12px;padding:14px;display:grid;box-shadow:0 14px 36px #0f172a14}.candidate-mobile-card.is-selected{border-color:#8000003d;box-shadow:0 0 0 3px #80000014,0 18px 42px #0f172a1a}.candidate-mobile-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.candidate-mobile-select{align-items:center;gap:8px;display:inline-flex}.candidate-mobile-meta{color:var(--muted);background:#f9f9f7db;border-radius:15px;justify-content:space-between;gap:12px;padding:10px;font-size:12px;display:flex}.candidate-mobile-meta b{color:var(--text);text-align:right}.candidate-mobile-votes{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.candidate-mobile-delete{width:100%}.danger-link{width:36px;height:36px;color:var(--pup-maroon);cursor:pointer;background:#7b111314;border:1px solid #7b11132e;border-radius:12px;justify-content:center;align-items:center;margin-left:10px;transition:transform .12s,box-shadow .12s;display:inline-flex;box-shadow:0 10px 18px #7b11131a}.danger-link:hover{transform:translateY(-1px);box-shadow:0 14px 22px #7b111329}.vc-row:hover{background:#7b11130d!important}.vc-row.is-selected{background:#7b11131a!important}.bar{background:#0206170f;border-radius:999px;height:8px;margin-top:6px;overflow:hidden}.bar>div{background:linear-gradient(90deg, var(--pup-gold), #f1b942);border-radius:999px;height:100%}.stats-dashboard{grid-template-columns:minmax(230px,.8fr) minmax(260px,1.2fr);gap:12px;display:grid}.turnout-gauge-card{background:linear-gradient(135deg,#8000000d,#d4af371f);border:1px solid #0f172a12;border-radius:24px;align-items:center;gap:12px;padding:12px;display:flex;box-shadow:0 14px 36px #0f172a14}.turnout-gauge{flex:none;width:110px;height:110px;position:relative}.turnout-gauge svg{width:110px;height:110px;transform:rotate(-90deg)}.turnout-track,.turnout-arc{fill:none;stroke-width:11px}.turnout-track{stroke:#02061714}.turnout-arc{stroke:var(--pup-maroon);stroke-linecap:round;transition:stroke-dashoffset .3s}.turnout-gauge-value{text-align:center;align-content:center;place-items:center;display:grid;position:absolute;inset:0}.turnout-gauge-value b{color:var(--pup-maroon-dark);font-size:22px;line-height:1}.turnout-gauge-value span,.stats-card-label,.stats-card-copy{color:var(--muted);font-size:11.5px;font-weight:800}.stats-card-title{color:var(--pup-maroon-dark);margin-top:4px;font-size:17px;font-weight:950}.stats-card-copy{margin-top:4px;line-height:1.35}.course-breakdown-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.course-mini-card{background:#ffffffe6;border:1px solid #0f172a12;border-radius:20px;min-height:88px;padding:12px;box-shadow:0 12px 30px #0f172a12}.course-mini-card.is-empty{color:var(--muted);text-align:center;place-items:center;font-size:12px;display:grid}.course-mini-code{color:var(--pup-maroon);font-size:11px;font-weight:950}.course-mini-voters{color:#111827;margin-top:3px;font-size:16px;font-weight:950}.course-mini-label{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:11px;line-height:1.25;display:-webkit-box;overflow:hidden}.course-mini-bar{background:#02061714;border-radius:999px;height:5px;margin-top:8px;overflow:hidden}.course-mini-bar span{border-radius:inherit;background:linear-gradient(90deg, #1d4ed8, var(--pup-gold));height:100%;display:block}.stats-bars-list li{border-radius:10px}.course-leader-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;display:grid}.leader-command-card{background:linear-gradient(135deg,#7b111312,#0000 45%),linear-gradient(#fff,#f8fafc);border:1px solid #7b11131f;border-radius:8px;min-height:118px;padding:14px;box-shadow:inset 4px 0 #7b1113d1,0 10px 22px #0206170f}.leader-command-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.leader-command-name,.leader-row-name{color:var(--pup-maroon-dark);font-size:15px;font-weight:950;line-height:1.2}.leader-command-meta,.leader-row-position{color:#475569;margin-top:6px;font-size:12px;font-weight:800}.leader-command-label{color:#64748b;margin-top:8px;font-size:11px;line-height:1.35}.leader-course-stack{gap:12px;max-height:500px;padding-right:6px;display:grid;overflow-y:auto}.leader-course-block{background:#fff;border:1px solid #0f172a1a;border-radius:8px;scroll-margin-top:90px;overflow:hidden;box-shadow:0 12px 28px #0206170f}.course-head{background:linear-gradient(90deg, #7b1113f5, #5b0c0eeb), var(--pup-maroon);color:#fff;border-bottom:0;min-height:44px;padding:11px 14px}.course-head-main{align-items:center;gap:10px;font-weight:950;display:flex}.course-head-main:before{content:"";background:var(--pup-gold);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #f1b94229}.course-count{color:#fff;background:#ffffff1f;border:1px solid #ffffff3d;border-radius:8px;min-height:24px;padding:4px 8px}.leader-row-list{background:#0f172a0d;gap:1px;display:grid}.leader-row-card{background:#fff;grid-template-columns:minmax(190px,1.5fr) minmax(84px,.55fr) auto;align-items:center;gap:12px;padding:14px;transition:background .16s,transform .16s;display:grid}.leader-row-card:hover{background:#fff8e1;transform:translate(2px)}.leader-row-course{min-height:28px;color:var(--ops-info);background:#1d4ed814;border-radius:8px;justify-self:start;padding:5px 9px;font-size:11px;font-weight:950}.leader-row-votes{text-align:right;white-space:nowrap}.admin-command-stack{background:linear-gradient(135deg,#7b11130b,#0000 42%),#f8fafc;border-color:#0f172a1c;gap:12px;padding:14px}.panel-toolbar{background:#fff;border-style:dashed;justify-content:space-between;min-height:62px}.position-card-list{border:1px solid var(--border-soft);background:#f8fafc;border-radius:8px;gap:6px;max-height:210px;padding:6px}.position-card-row{border-left:4px solid var(--pup-maroon);min-height:56px;box-shadow:0 1px 2px #0206170a}.position-card-name{align-items:center;gap:10px;font-size:14px;display:flex}.position-card-name:before{content:"";background:linear-gradient(135deg,#7b1113f2,#1d4ed8d9);border-radius:7px;width:22px;height:22px;box-shadow:inset 0 1px #ffffff38}.audit-timeline{background:#fff;border:1px solid #0f172a14;border-radius:8px;padding:12px}.audit-head{margin-bottom:12px}.audit-title{font-size:14px}.audit-timeline .table-wrapper{border:1px solid var(--border-soft);background:#fff;border-radius:8px}.audit-row td{background:#fff}.audit-row:nth-child(2n) td{background:#fff7f7!important}.audit-row:hover td{background:#fff8e1!important}.audit-actions .btn,.audit-bulk-actions .btn{border-radius:8px;min-height:40px;font-weight:950}.audit-bulk-actions{border-top:1px dashed #0f172a1f;margin:12px 0 0;padding-top:12px}.danger-zone{background:linear-gradient(135deg,#b91c1c1c,#0000 52%),#fff7f7;border-color:#b91c1c52;box-shadow:inset 4px 0 #b91c1cc7}.candidate-table-viewport{border-color:#0f172a1f;border-radius:8px;box-shadow:0 14px 30px #0206170f}.candidate-table-head{color:#475569;background:#f1f5f9;border-bottom:1px solid #0f172a1a;min-height:52px}.vc-row{background:#fff}.vc-row-leading{box-shadow:inset 3px 0 #15803dd1}.vc-row-no-votes{box-shadow:inset 3px 0 #64748b73}.candidate-avatar{background:radial-gradient(circle at 30% 20%, #f1b94273, transparent 30%), linear-gradient(135deg, var(--pup-maroon), var(--ops-info));border-radius:8px;width:38px;height:38px}.candidate-status{border-radius:8px}.candidate-vote-progress{width:min(136px,100%);height:8px}.row-menu-btn{opacity:1;min-width:32px}.stats-dashboard{grid-template-columns:minmax(260px,.8fr) minmax(280px,1.2fr);gap:10px}.turnout-gauge-card,.course-mini-card{background:linear-gradient(135deg,#f1b9421f,#0000 48%),#fff;border-color:#0f172a1a;border-radius:8px}.course-mini-card{min-height:108px;box-shadow:inset 0 -3px #1d4ed82e}.live-stats-filter{border:1px solid var(--border-soft);background:#f8fafc;border-radius:8px;grid-template-columns:auto minmax(240px,520px);align-items:center;gap:10px;margin-top:14px;padding:10px;display:grid}.live-stats-heading{color:var(--pup-maroon);margin-top:12px;font-size:15px;font-weight:950}.stats-bars-list{border:1px solid var(--border-soft);background:#f8fafc;border-radius:8px;gap:6px;display:grid;max-height:360px!important;padding:6px!important}.stats-bar-row{min-height:62px;box-shadow:inset 3px 0 0 var(--pup-maroon);background:#fff;border:0!important}.stats-bar-meter{text-align:right;min-width:180px}.stats-bar-value{color:#4b2b00;font-size:16px;font-weight:950}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px}.break-all{word-break:break-all}@media (max-width:1100px){.admin-rail{width:64px}.kpi-row{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}.kpi-leader{grid-column:span 1}.stats-dashboard{grid-template-columns:1fr}.filter-toolbar{grid-template-columns:1fr 1fr}.toolbar-summary{grid-column:1/-1}}@media (max-width:560px){.admin-rail{display:none}.admin-mobile-sidebar-overlay{display:flex}.admin-rail-mobile{width:100%;display:flex}.admin-mobile-menu-btn{display:grid}.admin-topbar{flex-direction:column;align-items:stretch;gap:12px;min-height:auto;padding:12px}.topbar-left{width:100%}.topbar-title-wrap{min-width:0}.topbar-title,.topbar-sub{text-overflow:ellipsis;overflow:hidden}.actions{justify-content:stretch}.btn{justify-content:center;width:100%;min-height:44px}.topbar-btn{min-height:44px}.panel-head,.panel-head-actions,.action-toolbar,.modal-actions{flex-direction:column;align-items:stretch}.filter-toolbar{grid-template-columns:1fr}.position-card-row{flex-direction:column;align-items:stretch}.btn-compact{min-height:44px}.kpi-row{grid-template-columns:1fr}.admin-body{padding:14px}.kpi-grid{grid-template-columns:1fr}.turnout-gauge-card{flex-direction:column;align-items:flex-start}.admin-row{transition:background-color .15s,transform .12s}.admin-row:hover{background:#7b11130a;transform:translate(2px)}button{transition:transform .12s,box-shadow .12s}button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000014}select{transition:box-shadow .12s,border-color .12s}.card{transition:box-shadow .15s,transform .15s}.card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0000000f}}@keyframes toastbar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast{z-index:10050;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border:1px solid #0f172a1f;border-radius:16px;width:min(420px,100vw - 36px);animation:.26s cubic-bezier(.16,1,.3,1) toastIn;position:fixed;top:18px;right:18px;overflow:hidden;box-shadow:0 22px 60px #02061738}@keyframes toastIn{0%{opacity:0;transform:translateY(-10px)translate(10px)scale(.98)}to{opacity:1;transform:translateY(0)translate(0)scale(1)}}.toast-row{align-items:flex-start;gap:12px;padding:12px;display:flex}.toast-icon{border:1px solid #0f172a14;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;display:grid}.toast-title{color:#111827;margin:0;font-size:13px;font-weight:950}.toast-msg{color:#0f172ab8;margin:4px 0 0;font-size:12.5px;line-height:1.35}.toast-actions{gap:6px;margin-left:auto;display:flex}.toast-x{cursor:pointer;background:#ffffffb3;border:1px solid #0f172a14;border-radius:12px;width:34px;height:34px}.toast-success .toast-icon{color:#065f46;background:#10b9811f}.toast-error .toast-icon{color:#991b1b;background:#ef44441a}.toast-warn .toast-icon{color:#4b2b00;background:#f1b94229}.toast-bar{background:#0f172a0f;height:3px;overflow:hidden}.toast-bar>div{transform-origin:0;background:linear-gradient(90deg, var(--pup-maroon), var(--pup-gold));width:100%;height:100%;animation:4s linear forwards toastProgress}@keyframes toastProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.modal-overlay{animation:.16s ease-out modalFade}.modal-card{transform-origin:50%;animation:.22s cubic-bezier(.16,1,.3,1) modalPop;border-radius:8px!important}@keyframes modalFade{0%{opacity:0}to{opacity:1}}@keyframes modalPop{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.pill{background:#ffffffe6;border:1px solid #0f172a1a;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:950;display:inline-flex}.pill-ok{color:#065f46;background:#10b9811a;border-color:#10b98133}.pill-bad{color:#991b1b;background:#ef44441a;border-color:#ef444433}.pill-warn{color:#4b2b00;background:#f1b94229;border-color:#f1b9423d}.pill-info{color:#1f2937;background:#0206170a;border-color:#0206171a}.section-kicker{color:var(--pup-maroon);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:900}.readiness-command{border:1px solid #7b111329;border-left:5px solid var(--pup-maroon);box-shadow:var(--shadow-soft);background:linear-gradient(#fffffffa,#f8fafcf5);border-radius:8px;margin:14px 0;overflow:hidden}.readiness-brief,.readiness-footer{justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.readiness-brief h3{color:var(--text);margin:0;font-size:20px;font-weight:950}.readiness-copy{color:var(--muted);margin:4px 0 0;font-size:13px}.readiness-score{align-items:center;gap:10px;min-width:190px;display:flex}.readiness-score-ring{background:radial-gradient(circle at center, #fff 56%, transparent 58%), conic-gradient(var(--ops-success) var(--score), #0f172a1f 0);border:1px solid var(--border);border-radius:50%;place-items:center;width:62px;height:62px;display:grid}.readiness-score-ring span{color:var(--text);font-size:15px;font-weight:950}.readiness-score-label{color:var(--pup-maroon);text-transform:uppercase;font-size:12px;font-weight:950}.readiness-score-meta{color:var(--muted);font-size:12px;font-weight:800}.readiness-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;padding:0 14px 14px;display:grid}.readiness-check{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:34px minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px;display:grid}.readiness-check-icon{border:1px solid;border-radius:8px;place-items:center;width:28px;height:28px;font-size:10px;font-weight:950;display:grid}.readiness-pass .readiness-check-icon,.readiness-priority.readiness-pass{color:var(--ops-success)}.readiness-warn .readiness-check-icon,.readiness-priority.readiness-warn{color:var(--ops-warning)}.readiness-fail .readiness-check-icon,.readiness-priority.readiness-fail{color:var(--ops-danger)}.readiness-check-title{color:var(--text);font-size:13px;font-weight:950}.readiness-check p{color:var(--muted);margin:2px 0 0;font-size:12px;line-height:1.35}.readiness-link,.race-card-foot button{border:1px solid var(--border);min-height:34px;color:var(--pup-maroon);cursor:pointer;background:#fff;border-radius:8px;font-size:12px;font-weight:900}.readiness-link:hover,.race-card-foot button:hover{background:#7b11130f;border-color:#7b111359}.readiness-footer{border-top:1px solid var(--border);background:#f8fafcd6}.readiness-priority{color:var(--muted);font-size:12.5px;font-weight:800}.readiness-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.race-monitor{margin:14px 0}.race-filter{min-width:220px}.race-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;padding:14px;display:grid}.race-empty{color:var(--muted);font-size:13px;font-weight:800}.race-card{border:1px solid #0f172a14;border-top:4px solid var(--ops-info);background:#ffffffe6;border-radius:22px;gap:10px;padding:14px;display:grid;box-shadow:0 12px 34px #0f172a14}.race-close,.race-tie{border-top-color:var(--ops-warning)}.race-empty,.race-quiet{border-top-color:#6b7280a6}.race-card-head,.race-card-foot,.audit-command-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.race-position{color:var(--text);font-size:14px;font-weight:950}.race-meta{color:var(--muted);font-size:12px;font-weight:750}.race-status{color:var(--ops-info);background:#1d4ed814;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:950}.race-leader{width:100%;min-height:58px;color:var(--text);cursor:pointer;text-align:left;background:#7b11130a;border:1px solid #7b111324;border-radius:18px;justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.race-leader:disabled{cursor:default;opacity:.72}.race-leader b,.race-leader small{display:block}.race-leader small{color:var(--muted);margin-top:2px;font-size:12px;font-weight:750}.race-leader strong{background:var(--pup-gold);color:#3f2500;border-radius:50%;place-items:center;min-width:38px;min-height:38px;font-size:14px;font-weight:950;display:grid}.race-meter{background:#0f172a1a;border-radius:999px;height:8px;overflow:hidden}.race-meter span{border-radius:inherit;background:linear-gradient(90deg, var(--pup-maroon), var(--pup-gold));height:100%;display:block}.race-card-foot{color:var(--muted);font-size:12px;font-weight:850}.audit-command-row{flex-wrap:wrap;margin:12px 0}.audit-command-row .input{flex:260px}.audit-filter-tabs{flex-wrap:wrap;gap:8px;display:flex}.verify-summary-grid{grid-template-columns:repeat(4,minmax(110px,1fr));gap:8px;margin:10px 0 12px;display:grid}.verify-stat{border:1px solid var(--border);background:#ffffffe6;border-radius:18px;padding:9px 10px}.verify-stat span,.verify-stat b{display:block}.verify-stat span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.verify-stat b{color:var(--text);margin-top:3px;font-size:17px;font-weight:950}.verify-ok b{color:var(--ops-success)}.verify-bad b{color:var(--ops-danger)}.audit-row-problem td{background:#b91c1c0f!important}.audit-problem-pill{margin-left:8px}.command-overlay{z-index:10000;background:#02061780;justify-content:center;align-items:flex-start;padding:72px 16px 16px;display:flex;position:fixed;inset:0}.command-card{background:#fff;border:1px solid #0f172a24;border-radius:8px;grid-template-rows:auto auto minmax(0,1fr);width:min(720px,100%);max-height:min(680px,100vh - 96px);display:grid;overflow:hidden;box-shadow:0 30px 80px #02061752}.command-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.command-head h3{color:var(--text);margin:0;font-size:18px;font-weight:950}.command-input{width:calc(100% - 28px);margin:12px 14px}.command-list{padding:0 8px 10px;overflow:auto}.command-item{width:100%;min-height:54px;color:var(--text);cursor:pointer;text-align:left;background:#fff;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.command-item:hover,.command-item:focus-visible{background:#7b11130d;border-color:#7b111338;outline:none}.command-item b,.command-item small{display:block}.command-item small{color:var(--muted);margin-top:2px;font-size:12px;font-weight:750}.command-item em{color:var(--pup-maroon);text-transform:uppercase;flex:none;font-size:11px;font-style:normal;font-weight:950}.command-empty{color:var(--muted);padding:16px;font-size:13px;font-weight:800}@media (max-width:760px){.readiness-brief,.readiness-footer,.race-card-head,.race-card-foot,.audit-command-row{flex-direction:column;align-items:stretch}.readiness-score,.race-filter,.readiness-actions,.readiness-actions .btn,.audit-filter-tabs,.audit-filter-tabs .btn{width:100%}.verify-summary-grid{grid-template-columns:1fr 1fr}.command-overlay{padding-top:24px}.audit-timeline .table-wrapper{overflow:visible}.audit-timeline table.simple-table,.audit-timeline table.simple-table tbody,.audit-timeline table.simple-table tr,.audit-timeline table.simple-table td{width:100%;display:block}.audit-timeline table.simple-table thead{display:none}.audit-timeline table.simple-table tbody{gap:10px;display:grid}.audit-timeline table.simple-table tbody tr{background:#ffffffeb;border:1px solid #0f172a14;border-radius:20px;overflow:hidden;box-shadow:0 12px 34px #0f172a14}.audit-timeline table.simple-table tbody td{border-bottom:1px solid #0f172a0f;grid-template-columns:92px minmax(0,1fr);gap:12px;padding:11px 12px;display:grid}.audit-timeline table.simple-table tbody td:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:950}.audit-row td:first-child{padding-left:12px}.audit-row td:first-child:before{background:0 0;width:auto;position:static}.audit-node{display:none}}.admin-shell-command-deck{--bg-0:#111827;--bg-1:#f8fafc;--card:#fffffffa;--border:#0f172a21}.admin-shell-command-deck .admin-card{background:#f8fafc}.admin-shell-command-deck .admin-topbar,.admin-shell-command-deck .admin-rail{color:#f8fafc;background:#101820;border-color:#ffffff1f}.admin-shell-command-deck .topbar-title,.admin-shell-command-deck .rail-logo-title,.admin-shell-command-deck .rail-nav-item,.admin-shell-command-deck .rail-section-label{color:#f8fafc}.admin-shell-command-deck .topbar-sub,.admin-shell-command-deck .rail-logo-sub,.admin-shell-command-deck .rail-pill .k{color:#f8fafcad}.admin-shell-command-deck .rail-nav-item.is-active,.admin-shell-command-deck .topbar-btn-active{color:#fff7dd;background:#f1b9422e}.topbar-btn-alert{color:#7f1d1d!important;background:#b91c1c14!important;border-color:#b91c1c47!important}.admin-v2-overlay,.admin-v2-alerts-layer{z-index:10020;position:fixed;inset:0}.admin-v2-overlay,.admin-v2-alerts-backdrop{background:#02061785}.admin-v2-dialog,.admin-v2-drawer,.admin-v2-alerts-drawer{background:#fff;border:1px solid #0f172a24;box-shadow:0 30px 90px #02061752}.admin-v2-dialog{width:min(920px,100vw - 28px);max-height:calc(100vh - 36px);margin:18px auto;overflow:auto}.admin-v2-drawer,.admin-v2-alerts-drawer{border-radius:0;width:min(560px,100vw);height:100%;position:absolute;top:0;right:0;overflow:auto}.admin-v2-alerts-backdrop{position:absolute;inset:0}.admin-v2-alerts-head,.admin-v2-audit-evidence-head,.admin-v2-receipts-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.admin-v2-alerts-title,.admin-v2-audit-evidence-title,.admin-v2-receipts h3{color:var(--text);margin:0;font-size:19px;font-weight:950}.admin-v2-alerts-kicker,.admin-v2-audit-evidence-kicker{color:var(--pup-maroon);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:950}.admin-v2-alerts-body{padding:14px}.admin-v2-alerts-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.admin-v2-alert-item{border:1px solid var(--border);border-left:4px solid var(--ops-info);background:#fff;border-radius:8px;padding:12px}.admin-v2-alert-item--danger{border-left-color:var(--ops-danger)}.admin-v2-alert-item--warn{border-left-color:var(--ops-warning)}.admin-v2-alert-item--success{border-left-color:var(--ops-success)}.admin-v2-alert-item-head,.admin-v2-alert-item-title-wrap{justify-content:space-between;align-items:center;gap:8px;display:flex}.admin-v2-alert-item-title-wrap{justify-content:flex-start}.admin-v2-alert-tone,.admin-v2-election-timeline-badge{text-transform:uppercase;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:950}.admin-v2-alert-tone--danger{color:#991b1b;background:#b91c1c1a}.admin-v2-alert-tone--warn{color:#854d0e;background:#f1b94233}.admin-v2-alert-tone--success{color:#166534;background:#15803d1a}.admin-v2-alert-tone--info{color:#1d4ed8;background:#1d4ed814}.admin-v2-alert-item-title{color:var(--text);font-size:13px;font-weight:950}.admin-v2-alert-item-detail,.admin-v2-audit-evidence-copy{color:var(--muted);margin:6px 0 0;font-size:12.5px;line-height:1.45}.admin-v2-alert-item-meta{color:var(--muted);font-size:11px;font-weight:800}.admin-v2-alert-item-action{margin-top:10px}.admin-v2-election-timeline{border:1px solid var(--border);box-shadow:var(--shadow-soft);background:#fff;border-radius:8px;margin:14px 0;padding:12px}.admin-v2-election-timeline-list{grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.admin-v2-election-timeline-step{border:1px solid var(--border);background:#fff;border-top:4px solid #6b728073;border-radius:8px;padding:10px;position:relative}.admin-v2-election-timeline-step--complete{border-top-color:var(--ops-success)}.admin-v2-election-timeline-step--active{border-top-color:var(--ops-info)}.admin-v2-election-timeline-step--blocked{border-top-color:var(--ops-danger)}.admin-v2-election-timeline-step--watch{border-top-color:var(--ops-warning)}.admin-v2-election-timeline-top,.admin-v2-audit-evidence-section-head,.ballot-preview-position-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.admin-v2-election-timeline-label{color:var(--text);font-size:13px;font-weight:950}.admin-v2-election-timeline-detail,.admin-v2-election-timeline-meta{color:var(--muted);font-size:12px}.admin-v2-election-timeline-detail{margin:6px 0 0}.admin-v2-audit-evidence-panel,.admin-v2-receipts{border:1px solid var(--border);box-shadow:var(--shadow-soft);background:#fff;border-radius:8px;margin:14px 0;overflow:hidden}.admin-v2-audit-evidence-actions,.csv-repair-actions,.ballot-preview-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-v2-field{gap:4px;min-width:170px;display:grid}.admin-v2-label{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:950}.admin-v2-audit-evidence-summary,.ballot-preview-summary,.position-drawer-summary,.csv-repair-summary{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;padding:12px 14px;display:grid}.admin-v2-audit-evidence-card{border:1px solid var(--border);background:#f8fafce6;border-radius:8px;padding:10px}.admin-v2-audit-evidence-card span,.admin-v2-audit-evidence-card b{display:block}.admin-v2-audit-evidence-card span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.admin-v2-audit-evidence-card b{color:var(--text);margin-top:4px;font-size:20px;font-weight:950}.admin-v2-audit-evidence-card--good b{color:var(--ops-success)}.admin-v2-audit-evidence-card--bad b{color:var(--ops-danger)}.admin-v2-audit-evidence-body{grid-template-columns:minmax(0,1.5fr) minmax(240px,.7fr);gap:12px;padding:0 14px 14px;display:grid}.admin-v2-audit-evidence-votes,.admin-v2-audit-evidence-side{border:1px solid var(--border);border-radius:8px;min-width:0;padding:12px}.admin-v2-audit-evidence-section-title{color:var(--text);margin:0;font-size:14px;font-weight:950}.admin-v2-audit-evidence-note{color:var(--muted);margin:10px 0;font-size:12.5px;line-height:1.45}.admin-v2-audit-evidence-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.admin-v2-audit-evidence-list li{border-top:1px solid var(--border-soft);color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding-top:8px;font-size:12px;font-weight:850;display:flex}.admin-v2-audit-evidence-list b{color:var(--text)}.admin-v2-receipts-list{gap:8px;padding:12px 14px 14px;display:grid}.admin-v2-receipt{border:1px solid var(--border);border-left:4px solid var(--ops-info);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.admin-v2-receipt--success{border-left-color:var(--ops-success)}.admin-v2-receipt--warning{border-left-color:var(--ops-warning)}.admin-v2-receipt--danger{border-left-color:var(--ops-danger)}.admin-v2-receipt b,.admin-v2-receipt p{display:block}.admin-v2-receipt b{color:var(--text);font-size:13px}.admin-v2-receipt p,.admin-v2-receipt time{color:var(--muted);margin:2px 0 0;font-size:12px}.ballot-preview-body,.position-drawer-body,.csv-repair-body{gap:12px;display:grid}.ballot-preview-list,.position-drawer-list{gap:10px;display:grid}.ballot-preview-position,.position-drawer-row,.position-drawer-leader{border:1px solid var(--border);background:#fff;border-radius:8px;padding:12px}.ballot-preview-position-name,.position-drawer-leader-name,.position-drawer-row-name{color:var(--text);font-size:14px;font-weight:950}.ballot-preview-candidate-list{gap:8px;margin-top:10px;display:grid}.ballot-preview-candidate,.position-drawer-row-main{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.ballot-preview-candidate{border:1px solid var(--border-soft);background:#f8fafce6;border-radius:8px;padding:10px}.ballot-preview-candidate-name{color:var(--pup-maroon);font-weight:950}.ballot-preview-candidate-meta,.position-drawer-row-meta,.position-drawer-leader-meta{margin-top:2px;font-size:12px}.position-drawer-row-main{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.position-drawer-row.is-leader{border-left:4px solid var(--pup-gold)}.position-drawer-row-votes{background:var(--pup-gold);color:#3f2500;border-radius:50%;place-items:center;min-width:54px;min-height:54px;display:grid}.position-drawer-row-votes strong,.position-drawer-row-votes span{line-height:1;display:block}.position-drawer-row-votes strong{font-size:16px}.position-drawer-row-votes span{font-size:10px;font-weight:900}.csv-repair-panel{margin-top:12px}.csv-repair-table-wrapper{max-height:320px}.csv-repair-input{min-width:140px}.csv-repair-note,.csv-repair-action-label{margin-top:5px;font-size:11px}.csv-repair-row-actions{gap:5px;display:grid}@media (max-width:1100px){.admin-v2-election-timeline-list{grid-template-columns:repeat(3,minmax(160px,1fr))}.admin-v2-audit-evidence-body{grid-template-columns:1fr}}@media (max-width:640px){.admin-v2-dialog{width:calc(100vw - 16px);margin:8px auto}.admin-v2-drawer,.admin-v2-alerts-drawer{width:100vw}.admin-v2-election-timeline-list{grid-template-columns:1fr}.admin-v2-alerts-head,.admin-v2-audit-evidence-head,.admin-v2-receipts-head,.admin-v2-receipt,.ballot-preview-candidate,.position-drawer-row-main{flex-direction:column;align-items:stretch}.admin-v2-audit-evidence-actions,.admin-v2-audit-evidence-actions .btn,.csv-repair-actions,.csv-repair-actions .btn,.ballot-preview-actions,.ballot-preview-actions .btn{width:100%}}.dark{--bg-0:#0f1117;--bg-1:#161821;--card:#1a1b23;--card-strong:#1f2030;--border:#ffffff1a;--border-soft:#ffffff0f;--text:#e2e8f0;--muted:#94a3b8;--ops-surface:#1a1b23;--ops-surface-2:#161821;--ops-line:#ffffff1a;--shadow:0 4px 24px #00000080;--shadow-soft:0 2px 12px #0006}.dark .admin-topbar{background:#1a1b23!important;border-bottom-color:#ffffff14!important}.dark .topbar-select{color:#e2e8f0}.dark .topbar-election{background:#1f2030!important;border-color:#ffffff1a!important}.dark .topbar-btn-group{background:#1f2030cc!important;border-color:#ffffff0f!important}.dark .topbar-btn{color:#94a3b8}.dark .topbar-btn:hover{box-shadow:none;color:#e2e8f0!important;background:#1f2030!important}.dark .topbar-avatar{background:#1f2030!important;border-color:#ffffff1f!important}.dark .topbar-dropdown{background:#1a1b23!important;border-color:#ffffff1a!important;box-shadow:0 16px 40px #00000080!important}.dark .topbar-dropdown-name{color:#e2e8f0}.dark .topbar-dropdown-role{color:#94a3b8}.dark .topbar-dropdown-divider{background:#ffffff14}.dark .topbar-dropdown-item{color:#e2e8f0!important}.dark .topbar-dropdown-item:hover{background:#1f2030!important}.dark .topbar-dropdown-logout{color:#f87171!important}.dark .kpi{background:linear-gradient(#1a1b23,#161821)!important;border-color:#ffffff14!important;box-shadow:0 4px 16px #0000004d!important}.dark .kpi .label{color:#94a3b8!important}.dark .panel{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#1a1b23fa!important;border-color:#ffffff14!important}.dark .panel-head{background:linear-gradient(#1f2030,#1a1b23)!important;border-bottom-color:#ffffff0f!important}.dark .panel-head h3{color:#e2e8f0!important}.dark .panel-body{color:#e2e8f0}.dark .btn{color:#e2e8f0!important;background:#1f2030!important;border-color:#ffffff1f!important}.dark .btn:hover{border-color:#80000066!important;box-shadow:0 4px 14px #0000004d!important}.dark .btn-primary{color:#fff!important;background:linear-gradient(#8f1618,maroon)!important;border-color:#7b111399!important}.dark .btn-outline,.dark .btn-secondary{color:#c07070!important;background:0 0!important;border-color:#80000066!important}.dark .btn-danger{color:#f87171!important;background:#b91c1c24!important;border-color:#b91c1c4d!important}.dark .input{color:#e2e8f0!important;background:#1f2030!important;border-color:#ffffff1f!important}.dark .input:focus{border-color:#80000080!important;box-shadow:0 0 0 3px #80000026!important}.dark table.simple-table thead th{color:#94a3b8!important;background:#161821!important;border-bottom-color:#ffffff14!important}.dark table.simple-table tbody td{color:#e2e8f0!important;border-bottom-color:#ffffff0a!important}.dark table.simple-table tbody tr:nth-child(2n) td{background:#ffffff05!important}.dark table.simple-table tbody tr:hover td{background:#80000014!important}.dark .candidate-table-viewport{background:#1a1b23!important;border-color:#ffffff14!important}.dark .candidate-table-head{color:#94a3b8!important;background:#161821!important;border-bottom-color:#ffffff14!important}.dark .vc-row{background:#1a1b23!important}.dark .vc-row:hover{background:#8000001a!important}.dark .candidate-cell>div{color:#e2e8f0!important}.dark .row-menu-btn{color:#94a3b8!important;background:#1f2030!important;border-color:#ffffff1a!important}.dark .candidate-row-menu{background:#1a1b23!important;border-color:#ffffff1a!important}.dark .leader-command-card{background:linear-gradient(135deg,#7b11131f,#0000 45%),#1a1b23!important;border-color:#ffffff14!important;box-shadow:inset 4px 0 #7b1113d1,0 4px 16px #0000004d!important}.dark .leader-command-name{color:#e2a0a0!important}.dark .leader-command-meta{color:#94a3b8!important}.dark .leader-command-label{color:#64748b!important}.dark .leader-course-block{background:#1a1b23!important;border-color:#ffffff14!important}.dark .leader-row-card{background:#1a1b23!important}.dark .leader-row-card:hover{background:#8000001f!important}.dark .leader-row-name{color:#e2e8f0!important}.dark .leader-row-position{color:#94a3b8!important}.dark .admin-toolbar,.dark .panel-toolbar,.dark .filter-toolbar{background:#1f2030!important;border-color:#ffffff0f!important}.dark .admin-command-stack{background:linear-gradient(135deg,#7b111314,#0000 42%),#1f2030!important;border-color:#ffffff0f!important}.dark .position-card-row{background:#1f2030!important;border-color:#ffffff0f!important}.dark .position-card-name{color:#e2e8f0!important}.dark .position-card-list{background:#161821!important;border-color:#ffffff0f!important}.dark .danger-zone{background:linear-gradient(135deg,#b91c1c24,#0000 52%),#1a1b23!important;border-color:#b91c1c52!important}.dark .pos-dropdown{background:#1a1b23!important;border-color:#ffffff1a!important;box-shadow:0 14px 28px #00000080!important}.dark .pos-item:hover{background:#7b11131f!important}.dark .pos-name{color:#e2a0a0!important}.dark .course-mini-card{background:linear-gradient(135deg,#d4af370f,#0000 48%),#1a1b23!important;border-color:#ffffff0f!important}.dark .course-mini-voters{color:#e2e8f0!important}.dark .live-stats-filter,.dark .stats-bars-list{background:#1f2030!important;border-color:#ffffff0f!important}.dark .stats-bar-row{background:#1a1b23!important}.dark .stats-bar-value{color:#d4af37!important}.dark .live-stats-heading{color:#c07070!important}.dark .status-badge{background:#1f2030!important;border-color:#ffffff1a!important}.dark .race-card{background:#1a1b23!important;border-color:#ffffff14!important;box-shadow:0 4px 16px #0000004d!important}.dark .race-position{color:#e2e8f0!important}.dark .race-leader{color:#e2e8f0!important;background:#7b111314!important;border-color:#7b111333!important}.dark .readiness-command{background:linear-gradient(#1a1b23,#161821)!important;border-color:#ffffff0f!important}.dark .readiness-check{background:#1f2030!important;border-color:#ffffff14!important}.dark .readiness-footer{background:#161821!important;border-top-color:#ffffff0f!important}.dark .readiness-link,.dark .race-card-foot button{background:#1f2030!important;border-color:#ffffff1a!important}.dark .command-card{background:#1a1b23!important;border-color:#ffffff1a!important}.dark .command-item{color:#e2e8f0!important;background:#1a1b23!important}.dark .command-item:hover{background:#7b11131f!important}.dark .toast{background:#1a1b23f5!important;border-color:#ffffff1a!important}.dark .toast-title{color:#e2e8f0!important}.dark .toast-msg{color:#e2e8f0b8!important}.dark .toast-x{color:#e2e8f0!important;background:#1f2030!important;border-color:#ffffff14!important}.dark .verify-stat{background:#1f2030!important;border-color:#ffffff14!important}.dark .verify-stat b{color:#e2e8f0!important}.dark .admin-v2-dialog,.dark .admin-v2-drawer,.dark .admin-v2-alerts-drawer{background:#1a1b23!important;border-color:#ffffff1a!important}.dark .admin-v2-alert-item,.dark .admin-v2-receipt,.dark .admin-v2-audit-evidence-card{background:#1f2030!important;border-color:#ffffff14!important}.dark .admin-v2-election-timeline{background:#1a1b23!important;border-color:#ffffff14!important}.dark .admin-v2-election-timeline-step{background:#1f2030!important;border-color:#ffffff0f!important}.dark .ballot-preview-position,.dark .position-drawer-row,.dark .position-drawer-leader{background:#1f2030!important;border-color:#ffffff14!important}.dark .ballot-preview-candidate{background:#161821!important;border-color:#ffffff0f!important}.dark .site-copyright{color:#e2e8f099!important;background:#1a1b23e6!important;border-color:#ffffff1a!important}.dark .error-banner{background:#ef44441f!important}
