#coala-apps{display:grid;gap:6px;padding:8px 4px 12px;border-bottom:1px solid rgba(255,255,255,.16)}
#coala-apps button{width:100%;text-align:left}
.coala-electoral #coala-apps button.active{background:transparent;color:#866200;border-color:transparent;font-weight:600}
.module-switcher-label{display:block;padding:0 6px;color:inherit;opacity:.72;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.module-switcher-empty{display:block;padding:6px;color:inherit;opacity:.72}
.coala-electoral #shell,.coala-electoral #modal{--blue:#866200;--ink:#40371f;--dark:#463817;--muted:#746644;--line:#e8ddb7;--bg:#fffdf4;--choice-hover:#fff0b2;--choice-hover-border:#c39a2e;--choice-selected:#f5dd75;--choice-selected-border:#aa7b00}
.coala-electoral #shell{background:#f8f9f7;color:#40371f}
.coala-electoral aside{color:#514416;border-top-color:#e3b51f}
.coala-electoral nav button,.coala-electoral nav .nav-catalog summary{color:#58471e}
.coala-electoral nav button:hover{background:transparent;color:#866200}
.coala-electoral nav button.active{background:transparent;color:#866200;border-left-color:transparent;font-weight:600}
.coala-electoral #station-badge{color:#6d5925;border-color:#e6d496}
.coala-electoral #main button:not(.secondary):not(.danger):not(.small),.coala-electoral #modal button:not(.secondary):not(.danger):not(.small){background:#e3b51f;color:#352a10}
#electoral-nav{display:flex;align-items:center;gap:8px}
.coala-electoral input:focus,.coala-electoral select:focus,.coala-electoral button:focus-visible{outline:2px solid #aa7b00;outline-offset:2px}
.coala-electoral #coala-apps{border-bottom-color:#eadfb9}.coala-electoral .module-switcher-label{color:#81714a;opacity:1}.electoral-main-nav{padding-top:8px}.electoral-flow{border-left:4px solid #d7aa18}.electoral-flow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.electoral-flow-grid button{display:flex;flex-direction:column;gap:6px;min-height:92px;padding:16px;text-align:left;background:#fff;border:1px solid #e8ddb7;color:#40371f}.electoral-flow-grid button:hover{background:#fff9e2;border-color:#c39a2e}.electoral-flow-grid button span{color:#746644;font-weight:400}.electoral-sync-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.electoral-sync-steps span{display:flex;align-items:center;gap:8px;padding:12px;border:1px solid #e8ddb7;border-radius:8px;background:#fff}.electoral-sync-steps strong{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#f5dd75;color:#42330d}
.electoral-grid-block{border:1px solid #e8ddb7;border-radius:10px;overflow:hidden;margin:16px 0}
.electoral-grid-block h3,.electoral-grid-block summary{margin:0;padding:8px 12px;background:#fff0b2;font-weight:600}
.electoral-grid-block summary{cursor:pointer}.electoral-block-times{margin-left:14px;font-weight:400;font-size:12px}
.electoral-slot{display:grid;grid-template-columns:30px minmax(140px,1fr) minmax(150px,1.3fr) 100px auto;gap:8px;padding:6px 12px;align-items:center;background:#fffdf4;border-top:1px solid #ede6cd;font-size:12px}
.electoral-slot:nth-child(odd){background:#fff9e2}
.electoral-slot small{display:block;margin-top:2px;color:#746644;font-size:11px}
.electoral-slot-material{border:1px dashed #c4b686;border-radius:4px;padding:4px 8px;min-width:0;overflow-wrap:anywhere}
.electoral-slot.ready .electoral-slot-material{border-style:solid;border-color:#b7caa2;background:#f1f8e9}
.electoral-grid-summary{display:flex;gap:18px;flex-wrap:wrap;margin:16px 0}
@media(max-width:760px){.electoral-slot{grid-template-columns:30px 1fr}.electoral-slot-material,.electoral-slot-time,.electoral-slot .actions{grid-column:2}.electoral-block-times{display:block;margin:4px 0 0}.electoral-flow-grid,.electoral-sync-steps{grid-template-columns:1fr}}


.electoral-station-map{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px;align-items:start}.electoral-station-map .block{break-inside:avoid;margin:0}.electoral-station-map .entry{cursor:default}.electoral-station-map .entry.electoral-managed{color:#725100;border-left:3px solid #d7aa18}.electoral-station-map .entry.reserved{font-style:italic;color:#746644}.electoral-test-warning{white-space:pre-wrap}@media(max-width:1100px){.electoral-station-map{grid-template-columns:repeat(2,minmax(200px,1fr))}}@media(max-width:760px){.electoral-station-map{grid-template-columns:1fr}}

