.nav-glyph{font-size:22px;line-height:1;width:24px;display:inline-block;text-align:center}.prose{max-width:900px}.prose p{font-size:15px;line-height:1.9;color:#506759}.prose h3{margin-top:26px}.vote-entry{display:grid;grid-template-columns:1fr 120px 42px;align-items:center;gap:12px;margin:16px 0}.vote-entry .field{margin-bottom:0}.file-card{border:1px solid #dbe4d5;padding:16px;border-radius:10px;margin:12px 0}.file-card>small{display:block;margin:8px 0}.file-card details{font-size:12px;overflow-wrap:anywhere}#form-error,.upload-error{color:#a44727}.actions{margin-top:16px}.action-card:before{width:calc(100% + 40px)}.bottom-nav button{font-size:10px}.photo-controls .btn{min-width:38px;color:white;background:transparent;border-color:#ffffff40}.photo-controls>span{font-size:11px}.panel .btn{margin-right:5px}.btn:disabled{opacity:.5;cursor:wait}.nav{gap:0}.nav button{padding:11px 12px}.photo-slide{pointer-events:none}.photo-gallery .photo-stage{min-height:360px}.welcome-copy .btn{margin:10px 0}.sidebar{padding-top:25px}.sidebar .brand{margin-bottom:23px}.field textarea{font-size:16px}.field input,.field select{font-size:16px}.notice{line-height:1.8}.pagehead p{line-height:1.75}.menu-item{min-height:65px}.tablewrap td{max-width:220px;overflow-wrap:anywhere}@media(max-width:600px){.vote-entry{grid-template-columns:1fr 75px 35px;gap:8px}.vote-entry .field{font-size:12px}.vote-entry input{padding:10px 8px}.action-card:before{width:calc(100% + 28px)}.photo-gallery .photo-stage{min-height:330px}.prose p{font-size:14px}.bottom-nav{gap:3px}.bottom-nav button{padding:6px 2px}.mobile-brand{font-size:18px}.demo{line-height:1.7}.menu-trigger{font-size:12px}.panel .btn{margin-bottom:7px}}
.scan-box{margin:20px 0 26px;padding:24px;border:1px solid #b6d7ca;border-radius:18px;background:#f4faf6}.scan-heading{display:flex;gap:15px;align-items:flex-start}.scan-heading h2{margin:0 0 8px}.scan-icon{font-size:32px;color:#17674f}.scan-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:18px 0}.scan-toolbar[hidden],.scan-grid[hidden],[data-pdf-controls][hidden],.scan-confirm[hidden],[data-output][hidden]{display:none}.scan-toolbar input{width:70px;padding:8px}.scan-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}.scan-grid>*{min-width:0}.scan-preview canvas{display:block;width:100%;max-height:600px;object-fit:contain;background:white;border:1px solid #ddd}.scan-preview small{display:block;margin-top:8px}.scan-box textarea{width:100%;font:14px/1.5 monospace;resize:vertical;padding:12px;border:1px solid #c7d8cf;border-radius:8px}.scan-box progress{width:100%}.scan-box ul{padding-left:20px;color:#804600}.scan-filled{background:#fff6cf!important;border-color:#c99936!important}.scan-confirm{margin-top:20px;padding:16px;background:#fff6cf;border-radius:12px;display:flex;gap:10px;align-items:flex-start}.scan-box [hidden]{display:none!important}@media(max-width:760px){.scan-grid{grid-template-columns:1fr}.scan-box{padding:16px}.scan-toolbar .btn{flex-grow:1}}
.directory-box{padding:20px;margin:20px 0;border:1px solid #c9dcd2;border-radius:14px;background:#f8fcf9}.directory-box [hidden],#directory-slot [hidden],#location-fields[hidden]{display:none!important}#directory-slot select{max-width:100%;text-overflow:ellipsis}#directory-slot .notice{overflow-wrap:anywhere}
.scan-numbers{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 12px;margin:14px 0}.scan-numbers dt,.scan-numbers dd{min-width:0;overflow-wrap:anywhere;white-space:normal;line-height:1.5;padding:10px 8px;margin:0;border-bottom:1px solid #dbe8df}.scan-numbers dd{font-variant-numeric:tabular-nums;font-weight:700;color:#155b44}
.ec8a-region{position:absolute;border:2px solid #196e59;background:#54d5a21f;pointer-events:none;box-sizing:border-box}.scan-grid>*{min-width:0}.scan-preview canvas{max-height:none;cursor:crosshair}[data-ec8a-controls]{margin-top:18px;padding:14px;border:1px solid #c9dcd2;border-radius:12px}[data-ec8a-controls] textarea{font-family:inherit}.ec-summary{margin:18px 0;padding:16px;background:#f4f8f5;border-radius:12px}.ec-summary summary{cursor:pointer;font-weight:600}

/* Stack detected labels and values on phones, including long election headings. */
@media(max-width:760px){.scan-numbers{grid-template-columns:minmax(0,1fr);gap:0}.scan-numbers dt{padding:12px 8px 2px;border-bottom:0;color:#50675b;font-size:.9rem}.scan-numbers dd{padding:2px 8px 12px;font-size:1.05rem}}

/* Snap & Scan mobile camera capture */
.snap-capture{border:2px solid #147054;border-radius:16px;background:#eaf4ef;padding:16px;margin:14px 0;}
.snap-capture input[type=file]{display:block;width:100%;max-width:100%;margin-top:9px;font-size:1rem;}
.snap-help{font-size:.92rem;line-height:1.5;margin:8px 0 0;color:#31584d;}
