:root{--navy:#112f4a;--navy-deep:#092238;--teal:#087d87;--teal-bright:#39c4c8;--teal-soft:#e7f6f5;--ink:#183449;--muted:#647889;--line:#dce6ec;--canvas:#f2f6f8;--white:#fff;--green:#16735b;--red:#b9474b;--amber:#916307;--radius:18px;--shadow:0 10px 34px #173c5410;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;font-size:15px;line-height:1.5}a{color:var(--teal);text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #24a5b0;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(25px,2.5vw,35px);line-height:1.2;letter-spacing:-.035em;margin-bottom:10px}h2{font-size:19px;letter-spacing:-.02em;margin-bottom:16px}h3{font-size:16px;margin-bottom:7px}p{margin-bottom:14px}small{font-size:12px}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.topbar{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 32px;background:var(--white);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:18px;min-width:0;color:var(--navy)}.brand img{object-fit:contain;width:132px;height:50px}.brand-divider{height:34px;width:1px;background:var(--line)}.brand-label{font-size:17px;font-weight:800;letter-spacing:.14em}.brand-label small{display:block;font-size:10px;font-weight:500;letter-spacing:.02em;color:var(--muted)}.topbar-end{display:flex;align-items:center;gap:18px}.back-link{font-size:13px;color:var(--muted);white-space:nowrap}.page-shell{max-width:1370px;margin:0 auto;padding:40px 32px}.page-heading,.desk-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:26px}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:800;color:var(--teal);margin-bottom:10px;text-transform:uppercase}.muted,.help-text{color:var(--muted)}.lead{font-size:17px;color:var(--muted);line-height:1.6}.pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:99px;font-size:11px;font-weight:700;background:var(--teal-soft);color:var(--teal);white-space:nowrap}.pill.small{font-size:9px;padding:3px 7px;letter-spacing:.06em}.pill.neutral{background:#eef2f5;color:var(--muted)}.pill.approved{background:#e4f4ed;color:var(--green)}.pill.rejected{background:#fbeaec;color:var(--red)}.panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:19px}.panel-heading h2{margin:0}.panel-heading p{font-size:12px;margin:5px 0 0}.index-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:26px;align-items:start}.assembly-list{display:grid;gap:12px}.assembly-card{display:flex;align-items:center;gap:18px;padding:22px;border:1px solid var(--line);border-radius:12px;color:var(--ink);transition:.2s}.assembly-card:hover{border-color:var(--teal);background:#f8fcfc;transform:translateY(-1px)}.assembly-card strong{display:block;font-size:17px}.assembly-card small{display:block;color:var(--muted);margin-top:5px}.assembly-symbol{display:grid;place-items:center;width:46px;height:46px;flex:none;background:var(--teal-soft);border-radius:12px;color:var(--teal);font-weight:800}.arrow{margin-left:auto;font-size:24px;color:var(--teal)}.empty-state{text-align:center;padding:40px 20px;color:var(--muted)}.empty-state h1,.empty-state h3{color:var(--ink)}.empty-state p{max-width:420px;margin:10px auto}.empty-symbol{font-size:54px;color:var(--teal)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:11px 18px;border:1px solid transparent;border-radius:10px;font-size:13px;font-weight:700;text-align:center;line-height:1.35;transition:background .15s,box-shadow .15s}.btn.primary{background:var(--teal);color:#fff}.btn.primary:hover{background:#056873}.btn.secondary{background:var(--white);border-color:var(--line);color:var(--navy)}.btn.secondary:hover{background:var(--canvas);border-color:#b7c9d4}.btn.compact{padding:8px 11px;min-height:37px;font-size:12px}.btn.large{padding:17px 20px;min-height:58px;font-size:17px}.btn.danger{background:var(--red);color:white}.btn.danger-outline{background:#fff;border-color:#ebcdd0;color:var(--red)}.button-row{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.text-button{border:0;background:transparent;color:var(--teal);padding:0;font-weight:700;text-decoration:underline;text-underline-offset:3px}.stack-form{display:flex;flex-direction:column;gap:15px}.stack-form p{margin:0}.stack-form label,.stack-form p:has(input),.stack-form p:has(select){display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:650}.stack-form input:not([type=checkbox]):not([type=hidden]),.stack-form textarea,.stack-form select{display:block;width:100%;min-height:44px;border:1px solid #cad9e2;border-radius:9px;padding:10px 12px;background:#fff;color:var(--ink);font-size:14px;font-weight:400}.stack-form input::placeholder,.stack-form textarea::placeholder{color:#899ba8}.stack-form textarea{resize:vertical}.stack-form .check-row{display:flex;flex-direction:row;align-items:flex-start;gap:10px;font-size:13px;font-weight:400;line-height:1.5}.check-row input{width:19px;height:19px;flex:none;accent-color:var(--teal);margin:1px 0 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.stack-form .help-text,.help-text{font-size:12px;font-weight:400;line-height:1.6}.errorlist,.field-error{color:var(--red);font-size:13px;padding:0;list-style:none}.notice{padding:15px 17px;border-radius:12px;font-size:13px;margin-bottom:18px;line-height:1.6}.notice p{margin:6px 0 0}.notice.warning{background:#fff6df;color:#79520a;border:1px solid #eadab0}.notice.subtle{background:#eaf2f5;color:#4b677b;border:1px solid #d9e7ed}.notice.success{background:#e7f5ee;color:var(--green)}.server-messages{max-width:1400px;margin:18px auto;padding:0 30px}.connection{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);white-space:nowrap}.connection i,.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#2ba686}.connection.offline i{background:#c7892f}.live-dot{margin-right:7px;box-shadow:0 0 0 4px #25a88813}.toast,.global-error{position:fixed;z-index:1000;bottom:24px;left:50%;transform:translateX(-50%);max-width:min(620px,90vw);padding:14px 22px;border-radius:12px;color:#fff;box-shadow:0 8px 32px #0002}.toast{background:var(--navy)}.global-error{background:#9f3039;bottom:85px}.desk-shell{max-width:1800px;margin:auto;padding:28px 30px}.desk-heading h1{font-size:27px}.desk-heading .muted{font-size:12px;margin:0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.metric{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px}.metric strong{font-size:25px;line-height:1.1;font-weight:750;letter-spacing:-.04em}.metric span{font-size:11px;color:var(--muted);display:block}.metric.accent{background:var(--navy);color:#fff;border-color:var(--navy)}.metric.accent span{color:#b1cbdc}.desk-grid{display:grid;grid-template-columns:minmax(290px,.9fr) minmax(490px,1.6fr);gap:23px;align-items:start}.live-column{position:sticky;top:20px}.live-panel{padding:23px;margin-bottom:16px;border-top:3px solid var(--teal)}.live-panel h2{font-size:13px}.live-panel .current-title{font-size:23px;line-height:1.25;letter-spacing:-.03em;margin:12px 0}.item-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;color:#4d6679;font-size:14px;max-height:240px;overflow:auto;scrollbar-width:thin;padding-right:7px}.live-panel .item-text{border-left:2px solid #d9eeee;padding-left:13px}.current-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.countdown{font-variant-numeric:tabular-nums;font-size:32px;line-height:1;font-weight:750;color:var(--navy);letter-spacing:-.05em}.countdown.urgent{color:var(--red)}.countdown-label{font-size:10px;color:var(--muted);display:block;margin-top:5px;text-align:right}.progress-block{margin:22px 0}.progress-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:12px;color:var(--muted);margin-bottom:9px}.progress-heading strong{color:var(--ink);font-size:16px}.progress-track{height:9px;background:#e8eff3;border-radius:99px;overflow:hidden}.progress-fill{height:100%;background:var(--teal);border-radius:99px;transition:width .5s}.result-bars{display:grid;gap:12px;margin:22px 0}.result-bar{display:grid;grid-template-columns:62px 34px 1fr;align-items:center;gap:12px;font-size:12px}.result-bar strong{text-align:right;font-variant-numeric:tabular-nums}.result-bar .bar{height:9px;border-radius:99px;background:#edf2f5;overflow:hidden}.result-bar .bar span{display:block;height:100%;min-width:0;background:var(--green);transition:width .4s}.result-bar.against .bar span{background:var(--red)}.result-bar.abstain .bar span{background:#c79838}.workspace{padding:0;overflow:hidden;min-height:580px}.tabs{display:flex;overflow:auto;border-bottom:1px solid var(--line);gap:2px;padding:0 17px;background:#fbfcfd;scrollbar-width:thin}.tab{flex:none;border:0;background:transparent;padding:19px 13px 16px;color:var(--muted);font-size:12px;font-weight:650;border-bottom:3px solid transparent;white-space:nowrap}.tab.active{color:var(--teal);border-color:var(--teal);background:#f1f8f8}.tab-panel{padding:25px}.program-list{display:grid;gap:11px}.program-item{display:grid;grid-template-columns:29px 1fr;gap:12px;padding:17px;border:1px solid var(--line);border-radius:12px}.program-item.current{border-color:var(--teal);background:#f2fafa}.item-order{font-size:12px;color:var(--muted);padding-top:4px}.program-item h3{font-size:14px;margin:4px 0 7px}.program-item .button-row{margin-top:11px}.program-item .button-row .btn{min-height:33px;padding:6px 9px;font-size:11px}.editor{margin-top:21px;border:1px solid var(--line);border-radius:12px;background:#fbfcfd}.editor summary{cursor:pointer;padding:16px;font-size:13px;font-weight:650;color:var(--navy)}.editor[open] summary{border-bottom:1px solid var(--line)}.editor .stack-form{padding:18px}.mini-metrics{display:flex;gap:12px;margin:20px 0;flex-wrap:wrap}.mini-metric{padding:13px 17px;background:var(--canvas);border-radius:10px;flex:1;min-width:90px}.mini-metric strong{display:block;font-size:22px}.mini-metric span{font-size:11px;color:var(--muted)}.attendance-row,.access-row,.candidate-row{padding:14px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px}.attendance-row strong,.candidate-row strong{font-size:13px}.attendance-row small,.candidate-row small{display:block;color:var(--muted);margin-top:4px}.attendance-row .status-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.election-card{padding:19px;border:1px solid var(--line);border-radius:12px;margin-bottom:16px}.election-card h3{margin-bottom:4px}.election-rules{font-size:12px;color:var(--muted);margin:8px 0 15px}.report-downloads{display:grid;gap:12px;margin:24px 0}.report-link{display:flex;align-items:center;gap:15px;padding:20px;border:1px solid var(--line);border-radius:12px;color:var(--navy)}.report-link small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.report-link>span:last-child{margin-left:auto;font-size:24px}.document-icon{background:var(--teal-soft);font-size:10px;font-weight:800;letter-spacing:.04em;padding:14px 10px;border-radius:9px;color:var(--teal)}.announcement-panel{background:var(--canvas);border-radius:12px;padding:20px;margin-top:24px}.announcement-panel p:not(.eyebrow){white-space:pre-wrap;font-size:14px;line-height:1.75}.result-row{border-bottom:1px solid var(--line);padding:16px 0}.result-row h3{font-size:14px}.result-row p{margin:8px 0 0;font-size:12px;color:var(--muted)}.voter-body{background:radial-gradient(ellipse at 50% 0,#e3f0f1 0,transparent 58%),var(--canvas)}.voter-body .topbar{padding:12px 24px;min-height:76px}.voter-body .brand img{width:110px;height:43px}.voter-body .brand-label{font-size:13px}.voter-body .brand-label small{display:none}.join-shell{max-width:510px;margin:54px auto;padding:0 20px}.join-panel{padding:34px}.join-symbol{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--teal-soft);color:var(--teal);font-size:28px;font-weight:500;margin-bottom:24px}.join-panel h1{font-size:28px}.join-panel .lead{font-size:15px}.join-panel .stack-form{margin-top:26px}.join-panel .stack-form label{font-size:14px}.join-panel input[type=password],.join-panel input[type=text]{font-size:22px;min-height:56px}.privacy-note{margin:24px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);line-height:1.7}.quiet-footer{text-align:center;font-size:11px;color:#78909e;line-height:1.6;margin:22px 0}.voter-shell{max-width:760px;padding:28px 20px 40px;margin:0 auto}.voter-intro{display:flex;gap:15px;justify-content:space-between;align-items:center;margin-bottom:20px}.voter-intro .eyebrow{max-width:65%;margin:0;font-size:11px;letter-spacing:.07em}.voter-panel{padding:27px}.voter-panel h1{font-size:27px;margin:18px 0}.voter-panel .item-text{max-height:none;overflow:visible;color:#476274;font-size:16px;line-height:1.7;padding:0}.voter-instruction{background:var(--teal-soft);color:#22636e;padding:16px;border-radius:11px;font-size:14px;line-height:1.6;margin:22px 0}.voter-instruction strong{display:block;font-size:16px;color:var(--navy);margin-bottom:3px}.vote-choices{display:grid;gap:13px;margin-top:25px}.choice-button{display:flex;align-items:center;text-align:left;gap:15px;border:2px solid var(--line);border-radius:13px;padding:21px 20px;background:#fff;color:var(--ink);font-size:19px;font-weight:700;min-height:75px}.choice-symbol{display:grid;place-items:center;width:35px;height:35px;flex:none;border-radius:50%;background:#edf5f2;color:var(--green);font-size:20px}.choice-button[data-choice=against] .choice-symbol{background:#f9eeee;color:var(--red)}.choice-button[data-choice=abstain] .choice-symbol{background:#fbf4e5;color:var(--amber)}.choice-button.selected{border-color:var(--teal);background:#f1fafa;box-shadow:0 0 0 1px var(--teal)}.choice-button.selected::after{content:'✓';margin-left:auto;color:var(--teal)}.candidate-options{display:grid;gap:12px;margin:20px 0}.candidate-option{display:flex;align-items:flex-start;gap:13px;padding:18px 17px;border:2px solid var(--line);border-radius:12px;cursor:pointer;background:#fff;min-height:74px}.candidate-option:has(input:checked){border-color:var(--teal);background:#f1fafa}.candidate-option input{width:23px;height:23px;flex:none;accent-color:var(--teal);margin:0}.candidate-option strong{display:block;font-size:16px;line-height:1.45}.candidate-option small{display:block;color:var(--muted);font-size:13px;margin-top:5px;line-height:1.5}.vote-bottom{position:sticky;bottom:0;background:#fffefef5;border-top:1px solid var(--line);padding:16px 0 max(10px,env(safe-area-inset-bottom));margin-top:24px;backdrop-filter:blur(10px);z-index:3}.vote-bottom .btn{width:100%;min-height:56px;font-size:16px}.selection-count{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--muted);margin-bottom:12px}.selection-count strong{color:var(--teal)}.scroll-cue{display:flex;justify-content:center;gap:8px;position:sticky;bottom:125px;z-index:2;pointer-events:none;font-size:12px;font-weight:700;color:var(--teal);background:linear-gradient(transparent,#fff 35%);padding:24px 8px 11px}.receipt{padding:48px 18px;text-align:center}.receipt-check{display:grid;place-items:center;width:74px;height:74px;border-radius:50%;background:#e5f4ed;color:var(--green);font-size:38px;margin:0 auto 23px}.receipt h1{font-size:27px}.receipt p{font-size:15px;color:var(--muted);max-width:400px;margin:12px auto}.waiting-ring{width:50px;height:50px;margin:8px auto 25px;border-radius:50%;border:3px solid #e2efef;border-top-color:var(--teal);animation:rotate 1.5s linear infinite}.modal-backdrop{position:fixed;inset:0;z-index:500;background:#092238ab;backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px;overflow:auto}.modal{background:#fff;border-radius:21px;padding:30px;max-width:530px;width:100%;max-height:90dvh;overflow:auto;box-shadow:0 25px 100px #0004}.modal h2{font-size:25px}.modal .button-row{margin-top:24px;display:grid;grid-template-columns:1fr 1fr}.confirm-selection{padding:17px;border-radius:12px;background:var(--teal-soft);font-size:16px;font-weight:650;margin:20px 0}.confirm-selection ul{margin:0;padding-left:20px}.confirm-selection li+li{margin-top:9px}.projector-body{background:var(--navy-deep);color:#fff;min-height:100vh}.projector-body .topbar{background:#fff;padding:20px 4vw;border:0}.projector-body .brand img{width:164px;height:60px}.projector-body .brand-label{font-size:21px}.projector-body .connection{font-size:12px}.projector-fullscreen{background:transparent;border:0;color:var(--navy);font-size:26px}.projector-shell{padding:24px 5vw;min-height:calc(100vh - 100px);display:flex;flex-direction:column}.projector-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#a7c2d3;font-size:clamp(15px,1.7vw,25px);margin-bottom:28px}.projector-meta p{margin:0}.projector-password{color:var(--navy);background:#d9f6f0;border-radius:11px;padding:10px 18px;font-size:20px;white-space:nowrap}.projector-password strong{font-size:30px;margin-left:9px}.projector-waiting{text-align:center;max-width:1100px;margin:10vh auto}.projector-waiting h1{font-size:clamp(42px,5.5vw,88px);font-weight:650}.projector-waiting p{font-size:28px;color:#a7c2d3}.projector-body .eyebrow{color:#5cdddd;font-size:13px}.projector-stage h1{font-size:clamp(36px,4vw,68px);font-weight:650;line-height:1.14;margin:17px 0 25px;max-width:1350px}.projector-stage .item-text{font-size:clamp(20px,2vw,31px);line-height:1.55;color:#c0d2df;max-height:31vh;max-width:1400px;scrollbar-color:#6b8da4 transparent}.projector-stage .current-meta{margin-bottom:0}.projector-stage .countdown{font-size:clamp(50px,6vw,90px);color:#fff}.projector-stage .countdown.urgent{color:#ffb1ad}.projector-stage .countdown-label{font-size:14px;color:#adc7d6}.projector-stage .pill{font-size:15px;background:#204459;color:#8aebdf;padding:8px 15px}.projector-stage .progress-heading{color:#aac6d7;font-size:19px}.projector-stage .progress-heading strong{font-size:30px;color:#fff}.projector-stage .progress-track{height:18px;background:#1d4058}.projector-stage .progress-fill{background:#4cd4c1}.projector-stage .result-bars{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:4vh 0}.projector-stage .result-bar{display:flex;position:relative;flex-wrap:wrap;justify-content:space-between;gap:12px;background:#15364c;border-radius:16px;padding:22px 26px;font-size:23px}.projector-stage .result-bar strong{font-size:48px;line-height:1.1}.projector-stage .result-bar .bar{width:100%;height:8px;order:3;background:#24455b}.projector-stage .result-bar .bar span{background:#4cd4c1}.projector-stage .result-bar.against .bar span{background:#ee7d83}.projector-stage .result-bar.abstain .bar span{background:#edc56d}.projector-stage .election-public-note{font-size:21px;color:#adc7d6;border-left:3px solid #49c3bd;padding-left:20px;margin-top:35px}.projector-footer{display:flex;justify-content:space-between;gap:20px;color:#7297ae;font-size:13px;padding-top:36px;margin-top:auto}.projector-result{display:flex;gap:15px;align-items:center;margin:25px 0;color:#9de5c9;font-size:25px}.projector-candidate{display:flex;justify-content:space-between;gap:15px;font-size:23px;border-bottom:1px solid #2c4a5e;padding:13px 0}.projector-candidate .pill{font-size:12px}.frozen-note{font-size:11px;color:var(--muted);margin:14px 0 0}.election-tally{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.election-tally strong{font-size:15px}.live-actions{padding-top:20px;border-top:1px solid var(--line);margin-top:20px}.danger-note{color:var(--red);font-size:12px}.role-pill{text-transform:capitalize}@keyframes rotate{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(min-width:1550px){.desk-grid{grid-template-columns:minmax(370px,1fr) minmax(700px,1.65fr)}.live-panel .current-title{font-size:28px}.tab{padding-left:18px;padding-right:18px}}
@media(max-width:1150px){.desk-shell{padding:22px 18px}.desk-grid{grid-template-columns:minmax(280px,.85fr) minmax(440px,1.3fr);gap:15px}.tab-panel{padding:20px}.tabs{padding:0 6px}.tab{padding-left:10px;padding-right:10px}.live-panel{padding:19px}.desk-heading h1{font-size:24px}.metric{padding:13px}.topbar{padding-left:22px;padding-right:22px}.role-pill{display:none}}
@media(max-width:820px){.topbar{padding:12px 18px;min-height:74px}.brand{gap:12px}.brand img{width:108px;height:44px}.brand-label small{display:none}.topbar-end{gap:10px}.connection{font-size:10px}.page-shell{padding:25px 20px}.page-heading{align-items:flex-start}.page-heading>.pill{display:none}.index-grid{grid-template-columns:1fr}.desk-heading{align-items:flex-start;flex-wrap:wrap;gap:13px}.desk-heading h1{font-size:23px}.desk-heading .btn{min-height:40px;font-size:12px;padding:9px 12px}.desk-grid{grid-template-columns:1fr}.live-column{position:static}.metrics{gap:8px;grid-template-columns:repeat(4,1fr)}.metric{padding:12px;display:block}.metric strong{font-size:22px}.metric span{font-size:10px;margin-top:4px}.workspace{min-height:400px}.live-column>.notice{display:none}.tabs{position:sticky;top:0;z-index:4}.back-link{font-size:11px}.brand-label{font-size:14px}.projector-meta{flex-wrap:wrap}.projector-stage .result-bars{gap:10px}.projector-stage .result-bar{padding:17px;font-size:18px}.projector-stage .result-bar strong{font-size:35px}}
@media(max-width:480px){.voter-body .topbar{padding:10px 16px;gap:10px}.voter-body .brand{gap:10px}.voter-body .brand img{width:93px;height:39px}.voter-body .brand-divider{height:26px}.voter-body .brand-label{font-size:11px}.voter-body .topbar-end{gap:0}.voter-shell{padding:23px 13px 25px}.voter-intro{gap:9px;margin-bottom:14px}.voter-intro .eyebrow{font-size:9px}.voter-intro .pill{font-size:9px;padding:5px 8px}.voter-panel{padding:22px 18px;border-radius:16px}.voter-panel h1{font-size:25px}.voter-panel .item-text{font-size:15px}.voter-panel .countdown{font-size:30px}.choice-button{font-size:19px;padding:18px 16px;min-height:74px}.join-shell{padding:0 14px;margin-top:28px}.join-panel{padding:26px 22px}.join-panel h1{font-size:26px}.form-grid{grid-template-columns:1fr}.modal{padding:25px 21px}.modal .button-row{grid-template-columns:1fr}.modal .button-row .primary{order:-1}.modal .btn{min-height:51px}.candidate-option{padding:17px 14px}.candidate-option strong{font-size:16px}.voter-panel .current-meta{gap:12px}.metrics{grid-template-columns:1fr 1fr}.panel-heading{flex-wrap:wrap}.tab-panel{padding:17px}.attendance-row{align-items:flex-start}.report-link{padding:15px}.back-link{display:none}.projector-body .brand img{width:125px}.projector-footer span:first-child{display:none}}
@media print{.topbar{border-bottom:1px solid #ccc}.topbar-end,.tabs,.button-row,.btn,.editor,.toast,.global-error{display:none!important}body{background:white}.panel{box-shadow:none}.desk-grid{display:block}.live-column{position:static}.workspace{overflow:visible}.tab-panel[hidden]{display:block!important}.projector-body{color:#111;background:#fff}}

/* The control room keeps the programme and actual projection visible together. */
.main-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin-bottom:24px}.main-tabs .tab{font-size:13px;padding:15px 20px;background:transparent}.main-tabs .tab.active{background:#e8f3f4;border-radius:10px 10px 0 0}.control-grid{display:grid;grid-template-columns:minmax(350px,.92fr) minmax(500px,1.35fr);gap:24px;align-items:start}.projection-column{position:sticky;top:20px}.projection-console{padding:18px}.projection-console .panel-heading{margin:4px 3px 17px}.projection-console h2{font-size:13px}.projection-console .live-actions{display:grid;gap:12px;margin-top:17px;padding-top:17px}.projection-console .live-actions:empty{display:none}.projection-console .live-actions>.btn{width:100%;min-height:51px;font-size:15px}.organ-switcher{display:flex;gap:8px}.organ-switcher .btn{flex:1}.programme-navigation{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0}.programme-navigation .btn{font-size:11px;padding:10px}.projection-column>.help-text{text-align:center;font-size:11px}.workspace-v2{min-width:0}.workspace-v2>.tab-panel{padding:0}.programme-panel,.extraordinary-panel{padding:23px}.extraordinary-panel{margin-top:22px;border-top:3px solid var(--teal)}.extraordinary-panel .panel-heading{align-items:flex-start}.extraordinary-panel h2{margin-bottom:0}.extraordinary-panel .eyebrow{margin-bottom:5px}.programme-panel .program-item+.program-item{margin-top:11px}.program-item-body{min-width:0}.programme-kind{display:flex;gap:8px;align-items:center}.programme-children{margin-top:15px;padding:4px 0 0;border-top:1px solid var(--line)}.resolution-row{display:flex;justify-content:space-between;gap:10px;padding:12px 0;align-items:center;border-bottom:1px solid #e7eef2;font-size:12px}.resolution-row.current{background:#e6f4ef;margin:0 -8px;padding:12px 8px}.resolution-row strong{color:var(--teal)}.resolution-row small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.resolution-row .button-row{margin-top:0;flex-wrap:nowrap}.programme-children>.text-button{margin-top:13px;font-size:12px}.programme-election-polls{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.programme-modal{max-width:580px}.programme-modal h2{margin:0}.programme-modal .panel-heading{margin-bottom:25px}.settings-layout{display:grid;grid-template-columns:230px 1fr;gap:24px;align-items:start}.settings-nav{display:grid;gap:7px;position:sticky;top:25px}.settings-nav button{display:flex;align-items:center;gap:13px;border:1px solid transparent;background:transparent;border-radius:10px;padding:14px;text-align:left;font-size:11px;color:var(--muted)}.settings-nav button span{font-size:13px;font-weight:650}.settings-nav button.active{color:var(--teal);background:var(--teal-soft);border-color:#c5e5e4}.settings-content{min-width:0}.settings-section{padding:30px;max-width:980px}.settings-section>.muted{font-size:14px}.settings-section .stack-form{max-width:720px}.settings-section #registration-login-link{margin-top:22px}.settings-section .access-row{margin-bottom:13px}.settings-section details>summary{cursor:pointer;margin-bottom:15px;font-weight:650;font-size:13px}.current-password{padding:21px 25px;border-radius:12px;background:var(--navy);color:#fff;display:flex;flex-direction:column;gap:8px;margin:22px 0}.current-password small{color:#bad3de;font-size:12px}.current-password strong{font-size:31px;letter-spacing:.03em;overflow-wrap:anywhere}.desk-v2:has(#tab-settings:not([hidden])) .control-grid{display:block}.desk-v2:has(#tab-settings:not([hidden])) .projection-column{display:none}.people-picker{display:grid;gap:9px;padding:17px;border-radius:12px;background:#f5f8fa;border:1px solid var(--line)}.people-picker select{max-width:100%}.election-settings-card{border:1px solid var(--line);border-radius:13px;padding:22px;margin-bottom:20px;background:#fbfcfd}.election-settings-card .panel-heading{margin-bottom:20px}.election-settings-card .candidate-list{margin:15px 0}.election-settings-card .candidate-row:last-child{border:0}.election-settings-card .stack-form{gap:12px}.election-settings-card .candidate-row{align-items:flex-start}.settings-section #candidate-form{padding:23px;border:2px solid var(--teal);border-radius:14px;background:#f5fbfb;margin-top:24px}.projection-mini{background:var(--navy-deep);color:white;border-radius:12px;overflow:hidden;min-height:330px}.mini-projection-header{display:flex;align-items:center;gap:10px;padding:11px 13px;background:white;color:var(--navy);font-size:10px}.mini-projection-header img{width:52px;height:28px;object-fit:contain}.mini-projection-header>span:nth-child(2){font-weight:700;flex:1;line-height:1.3}.mini-projection-header small{display:block;color:var(--muted);font-size:8px;margin-top:2px;font-weight:400}.mini-projection-header>span:last-child{font-size:10px;white-space:nowrap}.mini-password{padding:10px 15px 0;color:#89c8cd;font-size:9px;text-align:right}.mini-password strong{font-size:12px;color:#bdeee9;margin-left:4px}.projection-mini .projection-content{padding:18px 18px 21px;min-height:220px}.projection-mini .projection-content h1{font-size:23px;margin:14px 0 20px;color:white;text-align:center;line-height:1.3;letter-spacing:-.025em}.projection-mini .projection-content .eyebrow{font-size:8px;color:#62d4cf;text-align:center;margin-bottom:10px}.projection-mini .projection-lead{font-size:13px;text-align:center;color:#b0cbd9;line-height:1.6;margin:10px 0}.mini-next{padding:11px 14px;font-size:9px;text-align:center;color:#88adbf;background:#113147}.projection-mini .item-text{font-size:11px;color:#c4d8e4;max-height:125px;text-align:left}.projection-mini .projection-voting-grid{display:grid;grid-template-columns:1fr 2fr;gap:20px;margin-top:19px;align-items:center}.projection-mini .countdown{color:#fff;font-size:41px}.projection-mini .countdown-label{font-size:8px;color:#8bb0c4;text-align:left}.projection-mini .result-bars{gap:10px;margin:0}.projection-mini .result-bar{grid-template-columns:45px 30px 1fr;gap:6px;font-size:9px;color:#c4d8e4}.projection-mini .result-bar .bar{height:7px;background:#24465d}.projection-mini .result-bar strong{font-size:15px;color:white}.projection-mini .progress-block{margin:22px 0 4px}.projection-mini .progress-heading{font-size:9px;color:#94b7c8}.projection-mini .progress-heading strong{font-size:12px;color:white}.projection-mini .progress-track{height:7px;background:#214359}.projection-mini .progress-fill{background:#3dbaad}.projection-mini .election-public-note{font-size:10px;color:#a7cbdc;text-align:center;line-height:1.6;margin:17px 0 0}.projection-mini .projection-closed-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:17px;align-items:center}.projection-mini .numeric-result strong{font-size:23px;color:white}.projection-mini .numeric-result span{font-size:8px;color:#afc9d7}.projection-mini .numeric-results{gap:13px 10px}.projection-mini .approval-result{font-size:14px;color:#a8e8d0;display:grid;gap:8px;text-align:center}.projection-mini .approval-result>span{font-size:31px}.projection-mini .approval-result.no{color:#f2c6c6}.projection-mini .election-public-progress{gap:20px;margin:20px 0}.projection-mini .election-public-progress strong{font-size:32px}.projection-mini .election-public-progress span{font-size:9px}.projection-mini .resolution-summary>div{padding:8px 0;font-size:11px}.projection-mini .resolution-summary .pill{font-size:8px;padding:3px 7px}.numeric-results{display:grid;grid-template-columns:1fr 1fr;gap:24px}.numeric-result strong{display:block;font-variant-numeric:tabular-nums;font-size:38px;font-weight:750;color:var(--ink)}.numeric-result span{display:block;font-size:11px;font-weight:650;color:var(--muted);letter-spacing:.07em}.voter-panel .numeric-results{padding:20px 0}.voter-panel .numeric-result{background:var(--canvas);border-radius:12px;padding:15px}.resolution-summary{max-width:1000px;margin:30px auto}.resolution-summary>div{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:16px 0;border-bottom:1px solid #315267}.election-public-progress{display:flex;justify-content:center;gap:10vw;text-align:center;margin:5vh 0}.election-public-progress strong{display:block;font-size:80px;line-height:1.1;color:#fff;font-weight:650;letter-spacing:-.04em}.election-public-progress span{display:block;color:#aac9da;margin-top:10px;font-size:22px}.projector-v2 .topbar{padding:18px 3vw;gap:32px;min-height:105px}.projector-v2 .topbar-end{flex:1;min-width:0;justify-content:space-between;gap:25px}.projection-header-info{display:flex;flex-direction:column;gap:7px;color:var(--navy);min-width:0}.projection-header-info strong{font-size:clamp(18px,1.5vw,29px);line-height:1.25}.projection-header-info span{font-size:15px;color:var(--muted)}.projection-header-stats{display:flex;gap:24px;color:var(--muted);font-size:13px;white-space:nowrap;align-items:center;margin-left:auto}.projection-header-stats>span{display:flex;flex-direction:column;gap:4px}.projection-header-stats strong{color:var(--navy);font-size:25px;line-height:1.2;font-variant-numeric:tabular-nums}.projector-v2 .projector-shell{padding:18px 4vw 22px;min-height:calc(100dvh - 105px);gap:0}.projection-password-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.projection-password-row .connection{color:#a6c4d5}.projector-v2 .projector-password{font-size:16px;background:#dff8f0;padding:8px 16px}.projector-v2 .projector-password strong{font-size:25px}.projector-v2 #projector-stage{flex:1;display:flex;flex-direction:column;justify-content:center}.projector-v2 .projection-content{padding:32px 0;text-align:center;max-width:1600px;width:100%;margin:0 auto}.projector-v2 .projection-content h1{font-size:clamp(38px,4.4vw,80px);line-height:1.14;margin:17px auto 35px;font-weight:650;letter-spacing:-.04em;max-width:1500px}.projector-v2 .projection-content .eyebrow{font-size:13px;color:#62d4cf}.projector-v2 .projection-lead,.projector-v2 .election-public-note{font-size:clamp(22px,2vw,34px);color:#b7d0df;line-height:1.5;margin:28px auto}.projector-v2 .election-public-note{font-size:22px}.projector-v2 .projection-content .item-text{color:#c7dbe7;font-size:clamp(20px,1.85vw,30px);line-height:1.5;max-height:27vh;max-width:1400px;margin:0 auto;text-align:left;overflow:auto;scrollbar-color:#668ba3 transparent}.projector-v2 .projection-content.voting-open h1,.projector-v2 .projection-content.voting-closed h1{font-size:clamp(29px,2.8vw,49px);margin-bottom:25px}.projector-v2 .projection-voting-grid{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:6vw;max-width:1250px;margin:35px auto 0}.projector-v2 .projection-timer{text-align:center}.projector-v2 .countdown{font-size:clamp(85px,10vw,160px);color:#fff;letter-spacing:-.06em;font-weight:650}.projector-v2 .countdown.urgent{color:#ffb8b5}.projector-v2 .countdown-label{font-size:17px;color:#98b8cb;text-align:center;margin-top:12px}.projector-v2 .result-bars{display:grid;gap:25px;margin:0}.projector-v2 .result-bar{grid-template-columns:115px 90px 1fr;gap:25px;font-size:23px;text-align:left;text-transform:uppercase}.projector-v2 .result-bar strong{font-size:45px;color:#fff}.projector-v2 .result-bar .bar{height:18px;background:#29495e}.projector-v2 .result-bar .bar span{background:#46c6ab}.projector-v2 .result-bar.against .bar span{background:#e9858b}.projector-v2 .result-bar.abstain .bar span{background:#e9c270}.projector-v2 .progress-block{max-width:1400px;margin:30px auto 0;text-align:left}.projector-v2 .progress-heading{color:#a6c5d7;font-size:17px}.projector-v2 .progress-heading strong{color:white;font-size:26px}.projector-v2 .progress-track{height:13px;background:#284a60}.projector-v2 .progress-fill{background:#3dbbae}.projector-v2 .projection-closed-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;max-width:1200px;margin:42px auto 10px;text-align:left}.projector-v2 .numeric-results{gap:28px 40px}.projector-v2 .numeric-result strong{font-size:clamp(50px,6vw,90px);line-height:1.1;color:#fff;font-weight:650}.projector-v2 .numeric-result span{font-size:16px;color:#b7d0df;margin-top:7px}.projector-v2 .approval-result{display:flex;align-items:center;gap:26px;font-size:clamp(30px,3vw,49px);line-height:1.2;color:#a6e4cc;letter-spacing:-.03em}.projector-v2 .approval-result>span{font-size:80px;font-weight:400}.projector-v2 .approval-result.no{color:#f1b9bc}.projector-v2 .projector-footer{padding-top:16px;font-size:12px;align-items:center}.projector-v2 #projector-next{color:#b2cbd9;font-size:16px;text-align:center;max-width:70%}.projector-v2 .resolution-summary .pill{font-size:20px;padding:8px 14px}.projector-v2 .resolution-summary>div{font-size:27px}.projector-v2 .brand-label small{display:none}.registration-shell{max-width:1550px;margin:auto;padding:28px}.registration-shell h1{font-size:26px}.registration-shell .desk-heading .muted{font-size:13px;max-width:700px}.registration-grid{display:grid;grid-template-columns:minmax(330px,1fr) minmax(400px,1.2fr);gap:23px;align-items:start}.registration-count{display:flex;align-items:center;gap:12px;padding:14px 20px;border-radius:12px;background:var(--navy);color:white;flex:none}.registration-count strong{font-size:33px}.registration-count span{font-size:12px;color:#bfd6e1}.search-label{display:block;font-size:12px;font-weight:650;margin-bottom:11px}.large-search{width:100%;padding:15px 17px;border:1px solid #c9d9e2;border-radius:11px;font-size:17px;color:var(--ink);background:#fafdfe;min-height:54px}.member-search-panel>.help-text{margin:14px 0}.member-result{display:flex;flex-direction:column;gap:8px;width:100%;padding:18px;border:1px solid var(--line);border-radius:12px;margin-top:11px;background:#fff;text-align:left;color:var(--ink);min-height:108px}.member-result:hover,.member-result:focus-visible{border-color:var(--teal);background:#f4fbfb}.member-result.registered{background:#f8fcfa}.member-result-top,.member-result-bottom{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}.member-result-top strong{font-size:15px;line-height:1.4}.member-result>small{font-size:11px;color:var(--muted);line-height:1.5}.member-result-bottom .pill{font-size:10px}.registration-detail{position:sticky;top:20px}.registration-person-heading{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px}.registration-person-heading>.pill{margin:0 6px 14px 0}.registration-person-heading h2{font-size:24px;margin-bottom:8px;line-height:1.3}.registration-person-heading p{font-size:12px;color:var(--muted);margin:0}.registration-detail .stack-form{gap:19px}.registration-detail .stack-form label{font-size:13px}.registration-detail .stack-form input:not([type=checkbox]):not([type=hidden]),.registration-detail .stack-form select{min-height:49px;font-size:16px}.registration-detail .check-row{font-size:14px;line-height:1.5}.registration-detail .check-row input{width:22px;height:22px}.registration-detail #registration-delegate{display:grid;gap:17px;background:#f3f8fa;padding:18px;border-radius:12px}.registration-detail #registration-delegate h3{margin:0;font-size:14px}.registration-detail #registration-signed{margin-top:20px;margin-bottom:0}.signature-modal{max-width:900px;width:100%;padding:30px}.signature-modal h2{font-size:26px;margin-bottom:22px}.signature-identity{display:grid;grid-template-columns:1fr 1fr;gap:15px 30px;padding:20px;background:#f3f7f9;border-radius:13px;margin-bottom:22px}.signature-identity small{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.signature-identity strong{font-size:17px;line-height:1.4}.signature-label{display:flex;justify-content:space-between;gap:20px;margin-bottom:11px;align-items:center;font-size:14px}.signature-label .text-button{font-size:12px}.signature-surface{position:relative;border:2px solid #b1c7d4;border-radius:12px;background:#fff;height:230px;overflow:hidden;touch-action:none}.signature-surface canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.signature-surface>span{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;font-size:17px;color:#9bafbb}.signature-surface::after{content:'';position:absolute;bottom:47px;left:35px;right:35px;border-top:1px dashed #c7d7df;pointer-events:none}.attendee-confirmation{display:flex;align-items:flex-start;gap:13px;font-size:16px;font-weight:600;line-height:1.5;margin:23px 0}.attendee-confirmation input{width:25px;height:25px;flex:none}.signature-modal .button-row{display:grid;grid-template-columns:1fr 1.7fr;gap:15px}.signature-modal .button-row .btn{font-size:16px;min-height:57px}.registration-body .topbar-end form{margin:0}.registration-body .topbar{padding-left:28px;padding-right:28px}.registration-body .brand-label small{display:none}
@media(max-width:1280px){.control-grid{grid-template-columns:minmax(330px,.9fr) minmax(470px,1.2fr);gap:18px}.settings-layout{grid-template-columns:205px 1fr;gap:20px}.projector-v2 .topbar{gap:25px;padding:14px 3vw;min-height:91px}.projector-v2 .brand img{width:118px;height:49px}.projector-v2 .brand-label{font-size:16px}.projector-v2 .brand{gap:12px}.projection-header-stats{gap:18px}.projection-header-stats strong{font-size:20px}.projection-header-stats>span{font-size:11px}.projection-header-info strong{font-size:19px}.projection-header-info span{font-size:12px}.projector-v2 .projector-shell{min-height:calc(100dvh - 91px);padding:14px 4vw 17px}.projector-v2 .projection-content{padding:20px 0}.projector-v2 .projection-content h1{font-size:47px;margin-bottom:22px}.projector-v2 .projection-content.voting-open h1,.projector-v2 .projection-content.voting-closed h1{font-size:33px;margin-bottom:18px}.projector-v2 .projection-content .item-text{font-size:21px;max-height:23vh}.projector-v2 .projection-voting-grid{margin-top:25px;gap:5vw}.projector-v2 .countdown{font-size:104px}.projector-v2 .result-bar{grid-template-columns:98px 80px 1fr;gap:17px;font-size:18px}.projector-v2 .result-bar strong{font-size:34px}.projector-v2 .result-bars{gap:17px}.projector-v2 .projection-closed-grid{margin-top:25px;gap:6vw}.projector-v2 .numeric-result strong{font-size:61px}.projector-v2 .numeric-result span{font-size:12px}.projector-v2 .approval-result{font-size:35px}.projector-v2 .approval-result>span{font-size:56px}.election-public-progress strong{font-size:65px}.election-public-progress span{font-size:18px}.projector-v2 .projector-footer{font-size:11px}.projector-v2 #projector-next{font-size:14px}}
@media(max-width:1050px){.desk-shell{padding:23px 18px}.control-grid{grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);gap:15px}.programme-panel,.extraordinary-panel{padding:19px}.settings-layout{grid-template-columns:185px 1fr;gap:18px}.settings-section{padding:23px}.settings-nav button{padding:13px 10px;gap:9px}.settings-nav button span{font-size:12px}.extraordinary-panel .pill{display:none}.registration-shell{padding:22px 18px}.registration-grid{grid-template-columns:minmax(310px,.95fr) minmax(360px,1.15fr);gap:17px}.registration-grid .panel{padding:20px}.registration-shell .desk-heading{flex-wrap:nowrap;gap:20px}.registration-shell h1{font-size:22px}.registration-shell .desk-heading .muted{font-size:11px}.signature-modal{padding:22px;max-height:95dvh}.signature-modal h2{font-size:23px;margin-bottom:16px}.signature-modal .eyebrow{margin-bottom:5px}.signature-identity{padding:15px 18px;margin-bottom:15px;gap:11px 25px}.signature-identity strong{font-size:16px}.signature-surface{height:170px}.attendee-confirmation{font-size:15px;margin:16px 0}.signature-modal .button-row .btn{min-height:49px;font-size:14px}.signature-modal .button-row{margin-top:16px}}
@media(max-width:820px){.control-grid{grid-template-columns:1fr}.projection-column{position:static}.settings-layout{display:block}.settings-nav{position:static;display:flex;gap:5px;overflow:auto;margin-bottom:18px}.settings-nav button{white-space:nowrap;flex:none}.settings-nav button span{font-size:11px}.projection-mini{min-height:280px}.programme-navigation{max-width:none}.registration-grid{grid-template-columns:1fr}.registration-detail{position:static}.registration-shell .desk-heading{flex-wrap:wrap}.member-search-panel{max-height:550px;overflow:auto}.registration-body .topbar .brand-label{display:none}.registration-body .topbar .brand-divider{display:none}.registration-body .topbar-end{gap:8px}.registration-count{padding:10px 16px}.registration-count strong{font-size:28px}.signature-modal .button-row{grid-template-columns:1fr}.signature-modal .button-row .primary{order:-1}.signature-identity{grid-template-columns:1fr 1fr}.main-tabs .tab{padding:13px 12px;font-size:12px}.programme-panel .panel-heading{align-items:flex-start}}
@media(max-width:480px){.signature-modal{padding:20px 16px}.signature-identity{gap:12px;padding:13px}.signature-identity strong{font-size:14px}.signature-identity small{font-size:10px}.signature-modal h2{font-size:22px}.signature-surface{height:160px}.attendee-confirmation{font-size:14px}.registration-shell{padding:22px 13px}.registration-body .topbar{padding:12px 15px}.registration-body .connection{display:none}.settings-section{padding:20px}.election-settings-card{padding:17px}.projection-mini .projection-content h1{font-size:21px}.programme-modal{padding:24px 20px}.resolution-row{flex-wrap:wrap}.settings-nav button{padding:12px}.extraordinary-panel .form-grid{grid-template-columns:1fr}}

.result-bar>.bar{order:2}.result-bar>strong{order:1}.ballot-organ{padding:12px 16px;border-left:4px solid var(--teal);background:var(--teal-soft);border-radius:0 10px 10px 0;margin:18px 0 22px;text-align:left}.ballot-organ strong{display:block;font-size:21px;line-height:1.35;color:var(--navy)}.ballot-organ span{display:block;font-size:12px;color:var(--teal);margin-top:5px}.receipt .ballot-organ{max-width:400px;margin:20px auto}.staff-election-tally{order:20;border-top:1px solid var(--line);padding-top:14px}.staff-election-tally summary{font-size:12px;font-weight:650;margin-bottom:10px;cursor:pointer}.extraordinary-panel .form-grid:has([data-extra-code][hidden]){grid-template-columns:1fr}

/* Public display, password word bank and separate card generation. */
.public-projection-control{display:flex;align-items:center;justify-content:space-between;gap:15px;background:var(--canvas);border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:18px}.public-projection-control>div{min-width:0}.public-projection-control strong{display:block;font-size:13px;color:var(--navy)}.public-projection-control small{display:block;font-size:11px;color:var(--muted);margin-top:4px;line-height:1.5}.public-projection-control .btn{flex:none}.projection-mini>.projection-content{padding-top:30px}.password-words{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:25px}.password-word{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;background:var(--canvas);border:1px solid var(--line);border-radius:10px}.password-word>strong{font-size:14px;font-weight:650;overflow-wrap:anywhere}.password-word>div{display:flex;align-items:center;gap:13px;flex:none}.password-word .text-button{font-size:11px}.word-delete{border:0;background:none;color:var(--red);font-size:21px;padding:0 2px;line-height:1}.word-delete:disabled{color:var(--muted)}.card-dataset-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:22px 0 14px}.card-dataset-actions form{margin:0}.legacy-password-note{display:block;color:var(--amber);font-size:11px;margin-top:5px}#registration-cards-form{margin:15px 0}#registration-cards-help:not(:empty){padding:12px 14px;background:#fff7e6;border-radius:9px;color:#785608}#cards-password-modal .modal{max-width:580px}#cards-password-modal .button-row{justify-content:flex-end}.public-ous-body{min-height:100dvh;background:#f3f7f9}.public-ous-body .topbar{padding:23px 5vw;min-height:105px}.public-ous-body .brand img{width:126px;height:52px}.public-ous-body .topbar-end{color:var(--navy)}#public-brand-name{font-size:15px;font-weight:600;letter-spacing:.015em}.public-landing{max-width:1360px;margin:auto;padding:82px 48px 25px}.public-welcome{max-width:770px;margin-bottom:58px}.public-welcome .eyebrow{font-size:11px;letter-spacing:.18em;margin-bottom:19px}.public-welcome h1{color:var(--navy);font-size:clamp(46px,5.6vw,78px);line-height:1.08;font-weight:700;letter-spacing:-.05em;margin-bottom:24px}.public-welcome>p:last-child{max-width:600px;color:var(--muted);font-size:18px;line-height:1.7;margin:0}.public-destinations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.public-destination{position:relative;display:flex;flex-direction:column;gap:24px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;color:var(--navy);min-height:258px;box-shadow:0 10px 35px #1b485308;transition:transform .2s,border-color .2s,box-shadow .2s}.public-destination:hover{transform:translateY(-4px);border-color:#50aaa8;box-shadow:0 14px 40px #194d5713}.destination-number{font-size:12px;font-weight:750;letter-spacing:.1em;color:var(--teal)}.public-destination h2{font-size:21px;margin-bottom:12px;line-height:1.3}.public-destination p{font-size:14px;line-height:1.65;color:var(--muted);margin-bottom:24px}.destination-domain{display:block;color:var(--teal);font-size:13px;font-weight:700}.destination-arrow{position:absolute;top:22px;right:27px;font-size:26px;line-height:1;color:var(--teal)}.public-landing-footer{color:#8094a1;font-size:11px;margin-top:48px;padding-top:20px;border-top:1px solid var(--line)}.public-ous-body.projector-body{background:var(--navy-deep)}.public-ous-body.projector-v2 .topbar{padding:18px 3vw}.public-ous-body.projector-v2 .topbar-end{flex:1}.public-ous-body.projector-v2 .brand img{width:126px;height:52px}
@media(max-width:1280px){.password-words{grid-template-columns:repeat(2,minmax(0,1fr))}.public-projection-control{align-items:flex-start;flex-direction:column}.public-projection-control .btn{width:100%}.public-landing{padding-top:57px;padding-bottom:24px}.public-welcome{margin-bottom:40px}.public-welcome h1{font-size:60px}.public-destination{padding:23px;min-height:246px}.public-destination h2{font-size:19px}.public-landing-footer{margin-top:32px}.public-ous-body.projector-v2 .topbar{padding:14px 3vw}.public-ous-body.projector-v2 .brand img{width:118px;height:49px}}
@media(max-width:760px){.public-ous-body .topbar{padding:16px 24px;min-height:85px}.public-ous-body .brand img{width:100px;height:45px}#public-brand-name{font-size:11px;max-width:130px;text-align:right}.public-landing{padding:42px 24px 24px}.public-welcome h1{font-size:47px}.public-welcome>p:last-child{font-size:16px}.public-destinations{grid-template-columns:1fr;gap:14px}.public-destination{min-height:0;gap:13px;padding:22px}.public-destination p{margin-bottom:15px}.public-welcome{margin-bottom:32px}.public-landing-footer{margin-top:30px}.card-dataset-actions{align-items:stretch;flex-direction:column}.card-dataset-actions .btn{width:100%}}

@media(max-width:760px){.password-words{grid-template-columns:1fr}}

/* Automatic card handoff retains votes and ends stale browser tabs explicitly. */
.card-use-instructions{margin-top:24px;margin-bottom:0}.card-use-instructions p{line-height:1.7}.card-audit-report{border-top:1px solid var(--line);margin-top:24px;padding-top:23px;margin-bottom:28px}.card-audit-report h3{font-size:17px}.card-audit-report .notice{margin-bottom:0}.session-takeover-notice{border:1px solid #b6dcd3;background:#ebf7f3;color:#205b52;padding:18px 20px;font-size:14px;line-height:1.65}.session-takeover-notice>strong{display:block;font-size:15px;line-height:1.45}.session-takeover-notice>p{margin:9px 0 0}.session-ended{border-color:#dccd9f}.session-ended-symbol{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:#fff3d6;color:#927029;font-size:32px;margin-bottom:24px}.session-ended .eyebrow{color:#8b661d;font-size:10px;line-height:1.7}.session-ended h1{font-size:29px;line-height:1.22;margin-bottom:18px}.session-ended>p{font-size:16px;line-height:1.65}.session-ended .voter-instruction{margin:24px 0;background:#fff6e1;color:#73551b}.session-ended .help-text{font-size:13px;color:var(--muted);margin-bottom:0}

.voter-badges{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:none}.voter-intro .voter-card-number{font-size:14px;padding:8px 12px;border-radius:9px;background:var(--navy);color:#fff;letter-spacing:.025em}
