@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@500;600;700&family=IBM+Plex+Sans:wght@400;500;600;700;750&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary:#1d3096;--primary-dark:#172777;--secondary:#5b6ea6;--ink:#171b29;--muted:#667086;--line:#dfe5f0;--soft-line:#eef2f7;--canvas:#f7f8fb;--surface:#fff;--surface-blue:#f8f9fe;--danger:#b42318;--success:#087443;--warning:#9a5b00;--container:1360px;--radius:5px;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:IBM Plex Sans,Segoe UI Variable,Segoe UI,Aptos,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100dvh;color:var(--ink);background:var(--canvas);margin:0;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.56}input,select,textarea{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-height:40px;color:var(--ink);background:#fff;outline:none;padding:9px 11px;transition:border-color .18s,box-shadow .18s,background-color .18s}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--primary) 50%), linear-gradient(135deg, var(--primary) 50%, transparent 50%);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:34px}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1d30961f}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}label{color:var(--ink);gap:6px;font-size:12px;font-weight:650;display:grid}table{border-collapse:collapse;width:100%;font-size:14px}th,td{border-bottom:1px solid var(--soft-line);text-align:left;vertical-align:middle;padding:11px 10px}th{color:#59647a;letter-spacing:.02em;text-transform:uppercase;font-size:11px;font-weight:650}code,time,.metric strong,.result-box dd,.bar-row code{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,Cascadia Code,JetBrains Mono,Consolas,monospace}.app-loading{min-height:100dvh;color:var(--primary);place-items:center;padding:24px;font-weight:750;display:grid}.loading-title{color:var(--primary);letter-spacing:0;text-align:center;font-size:clamp(26px,5vw,44px);font-weight:750;line-height:1.05}.app-loading-error{text-align:center;gap:16px;padding:24px}.app-loading-error h1{margin:8px 0 0;font-size:24px}.app-loading-error p{max-width:520px;color:var(--muted);margin:0}.auth-page{background:var(--canvas);place-items:center;min-height:100dvh;padding:clamp(18px,4vw,52px);display:grid}.auth-card{border:1px solid var(--line);border-top:3px solid var(--primary);background:#fff;border-radius:7px;grid-template-columns:minmax(260px,.78fr) minmax(340px,1fr);align-items:start;gap:clamp(22px,4vw,40px);width:min(920px,100%);padding:clamp(22px,4vw,34px);display:grid}.auth-copy{border-right:1px solid var(--soft-line);align-content:start;align-self:stretch;gap:26px;padding-right:clamp(20px,4vw,34px);display:grid}.auth-brand{justify-content:flex-start}.auth-copy h1{max-width:420px;color:var(--ink);letter-spacing:-.01em;text-wrap:balance;margin:10px 0 12px;font-size:clamp(34px,4vw,48px);font-weight:700;line-height:1.02}.auth-copy p{max-width:420px;color:var(--muted);margin:0;font-size:15px;line-height:1.6}.app-shell{grid-template-rows:auto 1fr;min-height:100dvh;display:grid}.sidebar{z-index:5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 22px;min-height:88px;padding:10px 32px 0;display:grid;position:sticky;top:0}.brand,.session-card{align-items:center;gap:12px;display:flex}.brand{grid-area:1/1}.brand strong{color:var(--primary);letter-spacing:0;font-size:16px;font-weight:750;display:block}.brand span{color:var(--muted);font-size:12px;display:block}.brand-logo{border-radius:var(--radius);object-fit:contain;width:38px;height:38px;display:block}.brand-logo.large{width:64px;height:64px}.nav-list{border-top:1px solid var(--soft-line);grid-area:2/1/auto/-1;justify-content:flex-start;align-items:center;gap:12px;min-width:0;padding:0;display:flex;overflow-x:auto}.nav-item,.ghost-button,.primary-button,.small-button{border-radius:var(--radius);letter-spacing:0;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:8px 10px;font-weight:650;transition:transform .12s,background-color .16s,border-color .16s,color .16s;display:inline-flex}.nav-item{color:#586276;white-space:nowrap;background:0 0;position:relative}.nav-item:hover,.ghost-button:hover{border-color:var(--soft-line);background:#f8f9fc}.nav-item.active{color:var(--primary);background:0 0}.nav-item.active:after{content:"";background:var(--primary);height:2px;position:absolute;bottom:4px;left:12px;right:12px}.nav-item:active,.ghost-button:active,.primary-button:active,.small-button:active,.mode-button:active{transform:translateY(1px)}.session-card{grid-area:1/2;justify-content:flex-end;min-width:0}.session-card>strong{text-overflow:ellipsis;white-space:nowrap;max-width:190px;overflow:hidden}.login-panel,.auth-window{gap:14px;width:100%;display:grid}.auth-window{justify-self:end;max-width:760px}.auth-card .auth-window{place-self:center stretch;max-width:none}.auth-card .auth-form{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-card .auth-form .primary-button{grid-column:1/-1;justify-self:stretch}.auth-tabs{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcff;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;padding:2px;display:grid}.auth-tabs button{color:#465170;background:0 0;border:0;border-radius:3px;min-height:36px;font-size:13px;font-weight:650}.auth-tabs button.active{background:var(--primary);color:#fff}.voter-form{gap:12px;display:grid}.voter-form.compact{gap:10px}.otp-note{border:1px solid var(--soft-line);border-radius:var(--radius);background:#fff;gap:4px;padding:11px;display:grid}.otp-note strong{color:var(--ink);font-size:17px}.otp-note small{color:var(--muted);line-height:1.45}.auth-secondary{color:var(--muted);justify-content:center;align-items:center;gap:8px;font-size:13px;display:inline-flex}.auth-secondary button{color:var(--primary);background:0 0;border:0;padding:0;font-weight:650}.auth-secondary button:hover{text-underline-offset:3px;text-decoration:underline}.auth-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.register-form{grid-template-columns:repeat(2,minmax(0,1fr))}.register-form .primary-button{grid-column:1/-1;justify-self:start}.main-panel{min-width:0;padding:30px 32px 48px}.topbar{max-width:var(--container);justify-content:space-between;align-items:flex-start;gap:22px;margin:0 auto 28px;display:flex}.topbar h1,.section-heading h2,.project-cover h2,.scan-intro h2{color:var(--ink);letter-spacing:-.005em;margin:4px 0 0;line-height:1.12}.topbar h1{font-size:28px;font-weight:700}.section-heading h2,.project-cover h2{font-size:19px;font-weight:700}.section-heading{gap:4px;margin-bottom:14px;display:grid}.section-heading.row{justify-content:space-between;align-items:center;gap:14px;display:flex}.eyebrow{color:var(--secondary);letter-spacing:.035em;text-transform:uppercase;font-size:10px;font-weight:700}.status-strip{border:1px solid var(--line);border-radius:var(--radius);color:#35405a;background:#fff;align-items:center;gap:8px;min-height:34px;padding:7px 11px;font-size:12px;font-weight:650;display:inline-flex}.status-dot{background:var(--success);border-radius:50%;width:8px;height:8px}.panel,.metric{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.panel{padding:14px}.primary-button{background:var(--primary);color:#fff;border-color:var(--primary);text-decoration:none}.primary-button:hover{background:var(--primary-dark)}.ghost-button,.small-button{color:var(--primary);border-color:var(--line);background:#fff}.small-button{min-height:34px;padding:6px 9px;font-size:12px}.wide{width:100%}.notice{max-width:var(--container);border-radius:var(--radius);color:#075e37;background:#f1fbf6;border:1px solid #0874433d;align-items:center;gap:10px;margin:0 auto 22px;padding:10px 12px;font-weight:650;display:flex}.access-panel{border-left:4px solid var(--primary);grid-template-columns:minmax(220px,320px) minmax(0,760px);justify-content:space-between;align-items:center;gap:24px;max-width:1480px;margin:0 auto 16px;display:grid}.access-panel h2{color:var(--ink);margin:4px 0 0;font-size:18px;line-height:1.15}.access-panel .auth-window{justify-self:end}.notice button{color:inherit;background:0 0;border:0;margin-left:auto;font-weight:800}.field-error{color:var(--danger);margin:0;font-size:13px;font-weight:700}.scan-layout,.detail-layout,.reports-layout,.users-layout,.project-layout,.results-layout{max-width:var(--container);gap:22px;margin:0 auto;display:grid}.scan-layout{grid-template-columns:minmax(320px,390px) minmax(0,1fr);align-items:start}.scan-intro{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:0 0;grid-column:1/-1;grid-template-columns:minmax(260px,1fr) auto;align-items:center;gap:22px;padding:18px 0;display:grid}.scan-intro h2{font-size:23px;font-weight:700}.scan-stage-list{border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(4,auto);align-items:center;gap:0;display:grid;overflow:hidden}.scan-stage-list button{border-right:1px solid var(--line);min-height:34px;color:var(--primary);cursor:pointer;background:#fff;border-top:0;border-bottom:0;border-left:0;justify-content:center;align-items:center;padding:7px 11px;font-size:11px;font-weight:650;transition:background .15s,color .15s;display:inline-flex}.scan-stage-list button:hover,.scan-stage-list button:focus-visible{background:#f2f5ff}.scan-stage-list button.active{background:var(--primary);color:#fff}.scan-stage-list button:last-child{border-right:0}.scan-process-panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-column:1/-1;grid-template-columns:minmax(0,.78fr) minmax(260px,1fr);gap:16px;padding:14px 16px;display:grid}.scan-process-panel h3{margin-top:5px;font-size:17px;font-weight:750}.scan-process-panel p{color:var(--muted);margin-top:6px;line-height:1.55}.scan-process-panel ol{color:var(--ink);gap:8px;margin:0;padding-left:20px;display:grid}.scan-process-panel li{padding-left:3px;line-height:1.45}.form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.virtual-qr-panel{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcff;grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:12px;padding:11px;display:grid}.virtual-qr-panel strong,.virtual-qr-panel small{display:block}.virtual-qr-panel strong{margin-top:3px;font-weight:700}.virtual-qr-panel small{color:var(--muted);margin-top:4px;line-height:1.4}.virtual-qr-panel>img{border:1px solid var(--soft-line);background:#fff;width:92px;height:92px;padding:5px}.qr-actions{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.qr-actions .ghost-button{min-height:32px;padding:6px 9px;font-size:12px;text-decoration:none}.qr-modal{justify-items:center;width:min(460px,100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto}.qr-modal img{aspect-ratio:1;border:1px solid var(--line);background:#fff;width:min(300px,100vw - 84px,100dvh - 252px);min-width:210px;height:auto;padding:10px}.qr-modal code{white-space:normal;overflow-wrap:anywhere;max-width:100%;color:var(--secondary)}.scan-form{border-left:2px solid var(--primary);align-content:start;gap:14px;display:grid}.scan-mode{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.mode-button{border:1px solid var(--line);border-radius:var(--radius);color:#4a5570;background:#fff;min-height:40px;font-weight:650;transition:transform .12s,border-color .16s,background-color .16s,color .16s}.mode-button:hover{background:#f6f8fd;border-color:#1d309657}.mode-button.active{border-color:var(--primary);background:var(--primary);color:#fff}.candidate-list{gap:7px;display:grid}.candidate-option{border:1px solid var(--line);border-radius:var(--radius);text-align:left;background:#fff;grid-template-columns:12px 1fr;align-items:center;gap:4px 10px;padding:9px 10px;display:grid}.candidate-option>span{border-radius:3px;grid-row:span 2;width:10px;height:34px}.candidate-option strong{font-size:14px;font-weight:650}.candidate-option small{color:var(--muted)}.candidate-option.selected{border-color:var(--primary);background:#f8f9ff}.button-row,.filters,.modal-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.scanner-preview{border-color:var(--line);background:#fff;grid-template-columns:minmax(360px,1fr) 280px;align-items:start;gap:14px;min-width:0;display:grid}.preview-frame{border-radius:var(--radius);background-color:#fbfcff;background-image:linear-gradient(90deg,#1d309607 1px,#0000 1px),linear-gradient(#1d309607 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #d9dfeb;place-items:center;min-height:510px;display:grid;position:relative;overflow:hidden}.preview-frame img{object-fit:contain;max-width:min(94%,620px);max-height:455px}.corner{border-color:var(--ink);width:24px;height:24px;position:absolute}.top-left{border-top:2px solid;border-left:2px solid;top:22px;left:22px}.top-right{border-top:2px solid;border-right:2px solid;top:22px;right:22px}.bottom-left{border-bottom:2px solid;border-left:2px solid;bottom:22px;left:22px}.bottom-right{border-bottom:2px solid;border-right:2px solid;bottom:22px;right:22px}.result-box,.trace{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:12px}.result-box dl,.project-cover dl{gap:9px;margin:12px 0 0;display:grid}.result-box div,.project-cover dl div{border-top:1px solid var(--soft-line);justify-content:space-between;gap:12px;padding-top:9px;display:flex}dt{color:var(--muted)}dd{text-align:right;margin:0;font-weight:650}.trace{grid-column:1/-1;gap:8px;display:grid}.trace-row{color:var(--primary);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.trace-row small{color:var(--muted)}.process-button{min-height:46px;font-size:15px}.metric-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.metric{background:0 0;padding:12px}.metric span{color:var(--muted);font-size:12px;font-weight:650;display:block}.metric strong{color:var(--primary);margin-top:4px;font-size:24px;font-weight:700;display:block}.chart-panel,.wide-panel,.requirements-panel{min-width:0}.bar-chart{gap:12px;display:grid}.bar-row{grid-template-columns:46px minmax(170px,.8fr) minmax(160px,1fr) 58px 52px;align-items:center;gap:12px;display:grid}.bar-row>div strong,.bar-row>div span{display:block}.bar-row>div span{color:var(--muted);font-size:12px}.bar-track{background:#edf1f8;border-radius:3px;height:8px;overflow:hidden}.bar-fill{height:100%;display:block}.responsive-table{width:100%;overflow-x:auto}.detail-layout{grid-template-columns:minmax(0,1fr) 320px}.audit-side{align-self:start}.incidence-list,.timeline,.member-list{gap:8px;display:grid}.incidence-item,.member-row,.timeline-row{border:1px solid var(--soft-line);border-radius:var(--radius);align-items:center;gap:8px;padding:10px;display:grid}.incidence-item{grid-template-columns:auto 1fr}.incidence-item svg{color:var(--secondary)}.incidence-item span,.timeline-row span{color:var(--muted);font-size:12px;display:block}.badge{border-radius:var(--radius);min-height:26px;color:var(--primary);background:#1d309612;border:1px solid #1d309629;align-items:center;padding:3px 9px;font-size:12px;font-weight:650;display:inline-flex}.badge.danger{color:var(--danger);background:#b4231812;border-color:#b423182e}.badge.success{color:var(--success);background:#08744314;border-color:#0874432e}.reports-layout{grid-template-columns:.8fr 1.2fr}.report-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.users-layout{grid-template-columns:360px minmax(0,1fr)}.users-layout form{align-content:start;gap:10px;display:grid}.timeline-row{grid-template-columns:auto 1fr minmax(120px,auto) minmax(150px,auto)}.project-layout{grid-template-columns:.9fr 1.1fr}.project-cover{align-content:start;justify-items:start;gap:10px;display:grid}.project-cover p{color:var(--muted);margin:0}.member-row{grid-template-columns:1fr auto}.requirements-panel{grid-column:1/-1}.requirements-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.requirement-group{border:1px solid var(--soft-line);border-radius:var(--radius);align-content:start;gap:8px;padding:10px;display:grid}.requirement-group strong{color:var(--primary);font-weight:650}.requirement-group span{color:#465068;align-items:flex-start;gap:7px;font-size:13px;display:flex}.requirement-group svg{color:var(--success);flex:none;margin-top:1px}.empty-state{min-height:120px;color:var(--muted);text-align:center;border:1px dashed var(--line);border-radius:var(--radius);place-items:center;gap:10px;padding:16px;display:grid}.empty-state span{background:var(--secondary);border-radius:999px;width:34px;height:4px}.empty-state p{margin:0;font-weight:650}.modal-backdrop{z-index:30;background:#151b2d6b;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal-panel{z-index:31;border:1px solid var(--line);background:#fff;border-radius:7px;gap:14px;width:min(520px,100%);padding:18px;display:grid;position:relative}.vote-page{background:var(--canvas);place-items:center;min-height:100dvh;padding:clamp(14px,4vw,42px);display:grid}.citizen-page{background:var(--canvas);place-items:center;min-height:100dvh;padding:clamp(16px,4vw,44px);display:grid}.citizen-shell{border:1px solid var(--line);border-top:3px solid var(--primary);background:#fff;border-radius:7px;gap:28px;width:min(640px,100%);padding:clamp(18px,4vw,30px);display:grid}.citizen-copy{border-top:1px solid var(--soft-line);gap:12px;padding-top:22px;display:grid}.citizen-copy h1{max-width:12ch;color:var(--ink);letter-spacing:-.01em;margin:0;font-size:clamp(34px,7vw,54px);line-height:.96}.citizen-copy p{max-width:52ch;color:var(--muted);margin:0;line-height:1.7}.citizen-qr-card{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcff;grid-template-columns:minmax(0,1fr) 184px;align-items:center;gap:16px;padding:14px;display:grid}.citizen-qr-card strong,.citizen-qr-card small{display:block}.citizen-qr-card strong{color:var(--ink);margin-top:5px;font-weight:700}.citizen-qr-card small{color:var(--muted);margin-top:6px;line-height:1.45}.citizen-qr-card img,.qr-placeholder{border:1px solid var(--soft-line);background:#fff;width:184px;height:184px;padding:8px}.qr-placeholder{display:block}.citizen-qr-card .primary-button,.citizen-qr-card .ghost-button,.citizen-qr-card code,.citizen-qr-card .field-error{grid-column:1/-1}.citizen-qr-card code{overflow-wrap:anywhere;border:1px solid var(--soft-line);border-radius:var(--radius);max-width:100%;color:var(--muted);background:#fff;padding:8px;font-size:11px;display:block}.citizen-account{border-top:1px solid var(--soft-line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding-top:16px;display:grid}.citizen-account span{color:var(--muted);font-size:12px}.citizen-account strong{overflow-wrap:anywhere;min-width:0}.citizen-account .ghost-button{grid-row:span 2}.vote-shell{border:1px solid var(--line);border-top:3px solid var(--primary);background:#fff;border-radius:7px;gap:20px;width:min(720px,100%);padding:clamp(18px,4vw,30px);display:grid}.results-public-shell{width:min(980px,100%)}.vote-header{border-bottom:1px solid var(--soft-line);gap:28px;padding-bottom:18px;display:grid}.vote-header h1{letter-spacing:-.01em;margin:6px 0 8px;font-size:clamp(30px,6vw,46px);line-height:1}.vote-header p,.vote-auth-panel p{color:var(--muted);margin:0}.voter-location-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;gap:12px;padding:14px;display:grid}.voter-location-card>div:first-child{border-bottom:1px solid var(--soft-line);justify-content:space-between;align-items:end;gap:12px;padding-bottom:10px;display:flex}.voter-location-card>div:first-child strong{color:var(--ink);font-size:15px}.voter-location-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin:0;display:grid}.voter-location-card dl>div{min-width:0}.voter-location-card dt{color:var(--muted);text-transform:uppercase;margin:0 0 3px;font-size:11px;font-weight:700}.voter-location-card dd{color:var(--ink);overflow-wrap:anywhere;margin:0;font-weight:700}.vote-auth-panel,.virtual-ballot{gap:14px;display:grid}.vote-auth-panel{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcff;padding:16px}.vote-auth-panel h2{margin:0;font-size:22px}.vote-auth-panel.success{background:#f7fcf9;border-color:#08744347;justify-items:start}.vote-auth-panel.success svg{color:var(--success)}.vote-email-receipt{border-radius:var(--radius);background:#fff;border:1px solid #1d309629;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;width:100%;padding:12px;display:grid}.vote-email-receipt span,.vote-email-receipt small{display:block}.vote-email-receipt span{color:var(--muted);font-size:12px}.vote-email-receipt strong{overflow-wrap:anywhere;margin-top:3px;display:block}.vote-email-receipt small{color:var(--muted);margin-top:5px;line-height:1.45}.candidate-media{width:50px;height:42px;display:inline-block;position:relative}.candidate-media.compact{width:42px;height:36px}.party-logo,.candidate-photo{border:1px solid var(--line);background:#fff;place-items:center;display:grid;position:absolute;overflow:hidden}.party-logo{border-radius:4px;width:25px;height:25px;top:0;left:0}.candidate-photo{border-radius:50%;width:32px;height:32px;bottom:0;right:0}.candidate-media.compact .party-logo{width:22px;height:22px}.candidate-media.compact .candidate-photo{width:28px;height:28px}.party-logo img,.candidate-photo img{object-fit:cover;width:100%;height:100%}.party-logo span,.candidate-photo span{color:var(--primary);font-size:9px;font-weight:750}.candidate-photo span{font-size:10px}.virtual-candidate-list{gap:9px;display:grid}.virtual-candidate{border:1px solid var(--line);border-radius:var(--radius);text-align:left;background:#fff;grid-template-columns:44px 5px minmax(0,1fr) 30px;align-items:center;gap:4px 12px;padding:11px;display:grid}.virtual-candidate>.candidate-color{grid-area:1/2/span 2;width:5px;height:42px}.virtual-candidate .candidate-media{grid-area:1/1/span 2}.virtual-candidate strong{overflow-wrap:anywhere;grid-area:1/3;font-weight:650;line-height:1.16}.virtual-candidate small{color:var(--muted);overflow-wrap:anywhere;grid-area:2/3;line-height:1.25}.virtual-candidate i{box-sizing:border-box;border:2px solid var(--primary);background:#fff;grid-area:1/4/span 2;place-self:center end;width:26px;height:26px;position:relative}.virtual-candidate.selected{border-color:var(--primary);background:#f8f9ff}.virtual-candidate.selected i:after{content:"";background:var(--primary);transform-origin:50%;width:13px;height:3px;position:absolute;top:10px;left:5px;transform:rotate(-45deg)}.virtual-candidate.selected i:before{content:"";background:var(--primary);transform-origin:50%;width:13px;height:3px;position:absolute;top:10px;left:5px;transform:rotate(45deg)}.virtual-summary{border-top:1px solid var(--soft-line);grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding-top:12px;display:grid}.virtual-summary span{color:var(--muted)}.virtual-summary strong{color:var(--primary)}.onpe-panel{border-radius:var(--radius);background:#fff;border:1px solid #1d30962e;gap:14px;width:100%;padding:14px;display:grid}.onpe-panel-head{border-bottom:1px solid var(--soft-line);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;padding-bottom:12px;display:grid}.onpe-panel-head h3{margin:4px 0;font-size:21px;line-height:1.1}.onpe-panel-head p{max-width:56ch;color:var(--muted);margin:0}.onpe-update{border:1px solid var(--soft-line);border-radius:var(--radius);gap:3px;min-width:150px;padding:9px 10px;display:grid}.onpe-update span{color:var(--muted);font-size:11px;font-weight:650}.onpe-update strong{font-size:12px}.onpe-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.onpe-stats .metric{padding:10px}.onpe-chart{gap:9px;display:grid}.onpe-row{border:1px solid var(--soft-line);border-radius:var(--radius);grid-template-columns:26px 52px minmax(0,1fr) minmax(130px,.75fr) 112px;align-items:center;gap:10px;padding:10px;display:grid}.onpe-rank{color:var(--primary);font-family:IBM Plex Mono,Consolas,monospace;font-weight:700}.onpe-name strong,.onpe-name span,.onpe-count strong,.onpe-count span,.onpe-count small{display:block}.onpe-name strong{font-size:13px;line-height:1.25}.onpe-name span,.onpe-count span,.onpe-count small{color:var(--muted);font-size:11px}.onpe-bars{gap:5px;display:grid}.onpe-main-bar,.onpe-reference-bar{background:#edf1f8;border-radius:3px;overflow:hidden}.onpe-main-bar{height:10px}.onpe-reference-bar{opacity:.65;height:4px}.onpe-main-bar span,.onpe-reference-bar span{height:100%;display:block}.onpe-count{text-align:right}.onpe-count strong{color:var(--primary);font-size:17px}@media (width<=1180px){.auth-card{grid-template-columns:1fr;min-height:auto}.auth-copy{border-right:0;border-bottom:1px solid var(--soft-line);align-content:start;padding-bottom:24px;padding-right:0}.auth-copy h1,.auth-copy p{max-width:720px}.sidebar{grid-template-columns:1fr;padding:16px;position:static}.brand{grid-area:1/1;justify-content:center}.session-card{grid-area:2/1;justify-content:center;min-width:0}.nav-list{grid-area:3/1;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.nav-item span{display:none}.auth-window{justify-self:stretch;max-width:none}.access-panel{grid-template-columns:1fr;align-items:stretch}.scan-layout,.detail-layout,.reports-layout,.users-layout,.project-layout{grid-template-columns:1fr}.requirements-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.auth-page{align-items:start;padding:14px}.auth-card{gap:18px;padding:18px}.auth-copy{gap:18px;padding-bottom:18px}.auth-copy h1{font-size:32px}.auth-copy p{font-size:14px}.citizen-account,.citizen-qr-card{grid-template-columns:1fr}.citizen-qr-card img,.qr-placeholder{aspect-ratio:1;justify-self:center;width:min(220px,100%);height:auto}.citizen-account .ghost-button{grid-row:auto;justify-self:stretch}.main-panel{padding:14px}.topbar{flex-direction:column}.topbar h1{font-size:25px}.nav-list{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid,.virtual-qr-panel,.scanner-preview,.metric-strip,.onpe-stats,.report-summary,.requirements-grid,.scan-mode,.scan-intro{grid-template-columns:1fr}.scan-stage-list{grid-template-columns:repeat(2,minmax(0,1fr))}.scan-process-panel,.auth-card .auth-form,.auth-form,.register-form{grid-template-columns:1fr}.register-form .primary-button{justify-self:stretch}.bar-row{grid-template-columns:1fr;align-items:start}.onpe-panel-head,.onpe-row{grid-template-columns:1fr}.onpe-count{text-align:left}.voter-location-card>div:first-child,.voter-location-card dl{grid-template-columns:1fr}.voter-location-card>div:first-child{align-items:start;display:grid}.preview-frame{min-height:330px}.filters,.button-row{flex-direction:column;align-items:stretch}.timeline-row,.member-row{grid-template-columns:1fr}.section-heading.row{flex-direction:column;align-items:stretch}.virtual-qr-panel>img{width:140px;height:140px}.virtual-summary{grid-template-columns:1fr;align-items:stretch}}
