.editor-shell{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.editor-shell .topbar{flex-shrink:0;height:56px;min-height:56px;padding:8px 22px}.editor-shell .brand-mark{border-radius:9px;width:32px;height:32px}.editor-shell .topbar h1{font-size:1.1rem}.editor-shell button{cursor:pointer}.editor-shell button:disabled{cursor:not-allowed;opacity:.5}.editor-shell button:focus-visible,.editor-shell summary:focus-visible{outline-offset:3px;outline:3px solid #6559db}.document-toolbar{background:#fff;border-bottom:1px solid #dce1e8;flex-shrink:0;align-items:center;gap:20px;min-height:84px;padding:12px 22px;display:flex}.document-navigation,.document-save,.zoom-controls{align-items:center;gap:8px;display:flex}.document-navigation button,.zoom-controls button,.editor-dialog button,.editor-panel button:not([role=tab]),.mobile-view-toggle button{color:#263247;background:#fff;border:1px solid #cdd4df;border-radius:8px;padding:9px 12px;font-size:.8rem;line-height:1.3}.document-identity{flex:1;gap:4px;min-width:0;display:grid}.document-identity strong{overflow-wrap:anywhere;font-size:.95rem}.document-identity span{color:#526075;font-size:.75rem}.document-save{flex-direction:column;flex-shrink:0;align-items:stretch;gap:3px}.document-save>span{color:#49576b;text-align:center;font-size:.7rem}.document-save .save-button{min-height:36px;padding:8px 16px;font-size:.8rem}.editor-shell .workspace--editor{flex:1;grid-template-columns:minmax(360px,400px) minmax(0,1fr);gap:14px;width:100%;max-width:none;min-height:0;margin:0;padding:12px 16px}.editor-shell .workspace--editor .editor-panel{grid-area:1/1}.editor-shell .editor-panel{align-self:stretch;height:100%;max-height:none;padding:0;overflow:auto}.editor-shell .form-tabs{z-index:2;background:#f3f5f8;border-bottom:1px solid #dce1e8;border-radius:14px 14px 0 0;margin:0;padding:10px;display:flex;position:sticky;top:0}.editor-shell .form-tabs button{flex:1;padding:8px 4px;font-size:.76rem}.editor-shell .editor-panel form{padding:18px}.editor-shell .editor-panel fieldset{min-inline-size:0;min-width:0}.editor-shell .editor-panel .editor-fields{border:0;margin:0;padding:0}.editor-shell .editor-panel legend{margin-bottom:12px;font-size:.9rem}.editor-shell .editor-panel h3{margin:8px 0 0;font-size:.9rem}.editor-shell .editor-field{min-width:0}.editor-shell .editor-field>span,.editor-shell .municipality-combobox>label{color:#445269;font-size:.78rem}.editor-shell .editor-field input,.editor-shell .editor-field select{width:100%;min-width:0;min-height:40px;font-size:.9rem}.editor-shell .field-help,.editor-shell .save-feedback,.editor-shell .provenance-line{color:#526075;font-size:.78rem;line-height:1.5}.editor-shell .save-feedback--error,.field-error{color:#a02822}.form-error-summary{color:#942f28;background:#fff0ee;border-radius:8px;margin:12px 16px 0;padding:12px;font-size:.84rem;line-height:1.5}.editor-shell input[aria-invalid=true]{border-color:#a02822}.editor-shell .candidate-editor{border-bottom:1px solid #e6eaf0;grid-template-columns:minmax(0,1fr) 90px;padding:12px 0}.editor-shell .candidate-editor>strong{grid-column:1/-1;margin-bottom:3px;font-size:.85rem}.editor-shell .candidate-number-input{font-variant-numeric:tabular-nums;font-family:inherit;font-size:1rem}.blank-choice{color:#465369;grid-column:1/-1;align-items:flex-start;gap:8px;font-size:.78rem;line-height:1.5;display:flex}.blank-choice input{accent-color:#0a009e;min-width:16px;height:16px;margin:3px 0 0;width:16px!important}.municipality-identity{background:#f2f4f8;border-radius:8px;gap:8px;padding:12px;display:grid}.municipality-identity strong{font-size:.9rem}.municipality-identity button{justify-self:start}.editor-shell .municipality-options{top:66px}.editor-shell .municipality-options button[data-active=true]{background:#eeecff;outline:1px solid #8d83d9}.editor-shell .municipality-options button span{font-size:.88rem}.administrative-fields,.review-panel details{border:1px solid #dce1e8;border-radius:9px;padding:12px}.administrative-fields[open]{gap:12px;display:grid}.editor-shell summary{cursor:pointer;font-size:.84rem;font-weight:650}.review-notice{color:#6e4b10;background:#fff7e5;border-radius:8px;padding:12px;font-size:.8rem;line-height:1.5}.review-panel{gap:12px;font-size:.82rem;line-height:1.5;display:grid}.review-panel ul{margin:0;padding-left:18px}.review-panel li{margin:8px 0}.review-panel li button{text-align:left}.editor-shell .photo-placement-heading,.editor-shell .photo-placement-heading>div:last-child{flex-wrap:wrap}.editor-shell .photo-placement-heading small{max-width:290px;font-size:.73rem}.editor-shell .photo-range>span{font-size:.78rem}.editor-shell .photo-controls-grid{margin-top:12px}.editor-shell .workspace--editor .editor-stage{flex-direction:column;grid-area:1/2;gap:10px;height:100%;min-height:0;padding:14px;display:flex}.preview-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.preview-toolbar .view-toggle button{min-height:36px;font-size:.8rem}.zoom-controls{flex-wrap:wrap;gap:4px}.zoom-controls button{min-height:34px;padding:6px 8px;font-size:.74rem}.zoom-controls output{text-align:center;min-width:40px;font-size:.75rem}.preview-viewport{color:#e0e6ef;background:#1a2230;border-radius:10px;flex:1;min-height:0;display:grid;position:relative;overflow:auto;container-type:size}.preview-viewport:fullscreen{width:100vw;height:100dvh}.exit-fullscreen{color:#263247;display:none}.preview-viewport:fullscreen .exit-fullscreen{z-index:5;background:#fff;border:1px solid #cdd4df;border-radius:8px;padding:10px 16px;display:block;position:fixed;top:16px;right:16px}.preview-viewport>p{text-align:center;align-self:center;padding:24px}.digital-preview{width:calc(min(100cqw - 24px, (100cqh - 24px) * 966 / 924) * var(--preview-zoom));aspect-ratio:966/924;flex-shrink:0;margin:auto}.digital-preview>svg{width:100%;height:100%;display:block}.pdf-preview{border:0;width:100%;height:100%;min-height:0}.named-pdf-preview{width:100%;height:100%;min-height:0;position:relative}.named-pdf-preview>p{padding:20px}.pdf-delivery-loading{pointer-events:none;background:#1a2230;margin:0;position:absolute;inset:0}.preview-caption{overflow-wrap:anywhere;color:#526075;font-size:.72rem;line-height:1.4}.photo-preview-area{flex-direction:column;align-items:center;gap:8px;width:100%;padding:10px;font-size:.78rem;display:flex}.photo-drag-surface{width:calc(min(100cqw - 30px, (100cqh - 100px) * 5 / 9) * var(--preview-zoom));aspect-ratio:5/9;touch-action:none;cursor:move;flex-shrink:0}.photo-drag-surface .scene-page{width:100%;height:100%}.photo-preview-area button,.photo-preview-area select{color:#263247;background:#fff;border:1px solid #cdd4df;border-radius:6px;padding:6px 10px}.editor-shell .editor-output-bar{gap:10px;margin:0;display:flex}.editor-output-bar>button{text-align:left;background:#f7f8fc;border:1px solid #cdd4df;border-radius:8px;flex:1;gap:4px;padding:10px;font-size:.84rem;font-weight:700;display:grid}.editor-output-bar small{font-size:.72rem;font-weight:400}.editor-shell .export-feedback{min-height:0;margin:0;padding:7px 10px;font-size:.75rem}.editor-dialog{color:#172031;border:1px solid #cdd4df;border-radius:16px;width:min(600px,100vw - 24px);max-height:85dvh;padding:22px;box-shadow:0 24px 90px #10182755}.editor-dialog::backdrop{background:#10182788}.editor-dialog header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.editor-dialog h2{font-size:1.1rem}.editor-dialog p{margin:10px 0;font-size:.86rem;line-height:1.5}.editor-dialog .navigator-panel{max-height:none;box-shadow:none;border:0;padding:0;overflow:visible}.editor-dialog .variant-result{text-align:left;background:#f7f8fb;border:1px solid #dce1e8;grid-template-columns:minmax(0,1fr)}.editor-dialog .variant-result b{overflow-wrap:anywhere;width:fit-content;min-width:70px;max-width:100%;height:auto;padding:5px;font-size:.75rem}.editor-dialog .search-field select{color:#263247;background:#f9fafb;border:1px solid #cdd4df;border-radius:8px;width:100%;min-width:0;padding:9px 10px}.editor-dialog .variant-results{max-height:42dvh;overflow-y:auto}.editor-dialog .variant-result strong{font-size:.9rem}.editor-dialog .variant-result small,.editor-dialog .variant-result em{font-size:.75rem}.dialog-actions{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.mobile-view-toggle{display:none}@media (width<=1100px) and (width>=841px){.editor-shell .workspace--editor{grid-template-columns:360px minmax(0,1fr)}.document-toolbar{gap:10px;padding-inline:16px}.document-navigation{flex-wrap:wrap;max-width:220px}}@media (width<=840px){.editor-shell .topbar{align-items:center;height:48px;min-height:48px;padding:8px 14px}.editor-shell .topbar h1{font-size:.96rem}.document-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:8px;min-height:auto;padding:8px 12px;display:grid}.document-navigation{grid-column:1/-1;gap:6px}.document-navigation button{flex:1;padding:8px 5px;font-size:.76rem}.document-identity strong{font-size:.8rem}.document-identity span{font-size:.7rem}.document-save .save-button{padding:8px;font-size:.74rem}.document-save>span{font-size:.64rem}.mobile-view-toggle{background:#eef1f5;flex-shrink:0;gap:6px;padding:6px 12px;display:flex}.mobile-view-toggle button{flex:1;min-height:34px;padding:6px}.mobile-view-toggle [aria-pressed=true]{color:#fff;background:#0a009e;border-color:#0a009e}.editor-shell .workspace--editor{grid-template-columns:minmax(0,1fr);gap:0;padding:0 10px 10px}.editor-shell .workspace--editor .editor-panel,.editor-shell .workspace--editor .editor-stage{grid-area:1/1}.editor-shell[data-mobile-view=edit] .editor-stage,.editor-shell[data-mobile-view=preview] .editor-panel{display:none}.editor-shell .editor-panel form{padding:14px}.editor-shell .candidate-editor{grid-template-columns:minmax(0,1fr) 86px}.editor-shell .editor-stage{gap:6px;padding:10px}.preview-toolbar{gap:4px}.zoom-controls button{min-height:30px;padding:4px 6px;font-size:.68rem}.preview-toolbar .view-toggle button{min-height:30px;font-size:.76rem}.preview-caption{font-size:.65rem}.editor-output-bar>button{padding:8px;font-size:.72rem}.editor-output-bar small{font-size:.65rem}}.catalog-main{max-width:1800px;margin:auto;padding:24px}.catalog-shell .topbar{min-height:64px;padding:10px 24px}.catalog-shell .topbar h1{font-size:20px}.catalog-shell .brand-mark{border-radius:9px;width:34px;height:34px}.catalog-panel>p{margin:14px 0;line-height:1.5}.catalog-gallery p,.catalog-gallery h3{margin:10px 0;line-height:1.4}.editor-dialog.catalog-dialog{width:min(900px,100vw - 24px)}.catalog-heading,.catalog-header-actions,.catalog-filters,.catalog-selection,.catalog-filter-chip,.catalog-pagination{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.catalog-heading{justify-content:space-between;margin-bottom:20px}.catalog-heading h2{margin:0;font-size:28px}.catalog-heading p{margin:8px 0}.catalog-shell button,.catalog-form button{color:#142039;font:inherit;cursor:pointer;background:#fff;border:1px solid #bcc8d9;border-radius:8px;padding:10px 14px}.catalog-shell button:disabled,.catalog-form button:disabled{opacity:.5;cursor:not-allowed}.catalog-shell .catalog-primary,.editor-dialog .catalog-primary{color:#102018;background:#abff00;border:1px solid #88ce00;font-weight:700}.catalog-tabs{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.catalog-tabs button[aria-pressed=true]{color:#fff;background:#1400a3;border-color:#1400a3}.catalog-panel{background:#fff;border:1px solid #d4dce8;border-radius:16px;min-width:0;padding:20px}.catalog-filters label,.catalog-form label{gap:7px;font-weight:600;display:grid}.catalog-filters label:first-child{flex:260px}.catalog-filters input,.catalog-filters select,.catalog-form input:not([type=checkbox]),.catalog-form select{box-sizing:border-box;color:#142039;width:100%;min-width:0;font:inherit;background:#f8fafc;border:1px solid #b5c2d5;border-radius:8px;padding:10px}.catalog-form fieldset{border:0;gap:16px;min-width:0;padding:0;display:grid}.catalog-form{margin:20px 0}.catalog-selection{border-block:1px solid #d4dce8;margin-bottom:12px;padding:12px 0}.catalog-filter-chip{background:#f0eeff;border-radius:8px;margin-top:12px;padding:10px}.catalog-table-scroll{max-height:65vh;overflow:auto}.catalog-table-scroll table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.catalog-table-scroll caption{text-align:left;padding:12px 0;font-weight:700}.catalog-table-scroll th,.catalog-table-scroll td{vertical-align:top;overflow-wrap:anywhere;border-bottom:1px solid #dce2eb;min-width:110px;max-width:330px;padding:12px}.catalog-table-scroll thead th{z-index:1;background:#f1f4f9;position:sticky;top:0}.catalog-table-scroll small{margin-top:4px;font-weight:400;line-height:1.45;display:block}.catalog-table-scroll td button{white-space:nowrap;margin-bottom:8px;display:block}.catalog-table-scroll input[type=checkbox],.catalog-check input{accent-color:#1400a3;width:20px;height:20px}.catalog-thumb{object-fit:contain;background:#e6e8ed;border-radius:4px;width:64px;height:80px}.catalog-gallery{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;display:grid}.catalog-gallery article{overflow-wrap:anywhere;border:1px solid #d4dce8;border-radius:12px;padding:12px}.catalog-gallery img{object-fit:contain;background:repeating-conic-gradient(#e7e8ec 0% 25%,#fafafa 0% 50%) 50%/20px 20px;width:100%;height:180px}.catalog-gallery h3{font-size:15px}.catalog-gallery button{width:100%;margin-top:8px}.catalog-pagination{justify-content:center;padding-top:20px}.catalog-photo-preview{object-fit:contain;background:#e6e8ed;width:160px;height:160px}.catalog-check{align-items:center;gap:10px;margin:20px 0;display:flex}.catalog-results{max-height:220px;padding-left:20px;overflow:auto}.catalog-results li{overflow-wrap:anywhere;margin-bottom:10px}@media (width<=600px){.catalog-main,.catalog-panel{padding:12px}.catalog-header-actions{gap:6px}.catalog-header-actions button{padding:8px;font-size:12px}.catalog-shell .topbar{flex-wrap:wrap;gap:12px}.catalog-filters label{width:100%}.catalog-gallery{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.catalog-selection button{flex-grow:1}}@font-face{font-family:NeulisAuthorized;src:url(/fonts/authorized/Neulis-Regular.otf)format("opentype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:NeulisCursiveAuthorized;src:url(/fonts/authorized/NeulisCursive-Bold.otf)format("opentype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:GalanoAuthorized;src:url(/fonts/authorized/GalanoGrotesque-Regular.otf)format("opentype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:GalanoAuthorized;src:url(/fonts/authorized/GalanoGrotesque-Bold.otf)format("opentype");font-style:normal;font-weight:700;font-display:swap}:root{color:#172031;font-synthesis:none;text-rendering:optimizelegibility;background:#eef1f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{color:inherit}h1,h2,p,figure,dl,dd{margin:0}.app-shell{min-height:100vh}.login-shell{background:radial-gradient(circle at 15% 20%,#a6ff0024,#0000 30%),radial-gradient(circle at 85% 80%,#ff63002e,#0000 34%),#101827;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border:1px solid #ffffff2e;border-radius:22px;width:min(430px,100%);padding:clamp(28px,6vw,46px);box-shadow:0 30px 80px #00000057}.brand-mark--login{margin-bottom:26px}.login-card h1{color:#101827;font-size:clamp(1.8rem,6vw,2.45rem);line-height:1.05}.login-copy{color:#667085;margin:14px 0 26px;line-height:1.55}.login-card form{gap:10px;display:grid}.login-card label{color:#344054;font-size:.78rem;font-weight:800}.login-card input{color:#101827;background:#f8fafc;border:1px solid #cfd6e1;border-radius:10px;outline:none;width:100%;min-height:50px;padding:0 14px}.login-card input:focus{border-color:#0a009e;box-shadow:0 0 0 4px #0a009e1a}.login-card form button{color:#101827;cursor:pointer;background:#a6ff00;border:0;border-radius:10px;min-height:50px;margin-top:4px;font-weight:900}.login-card form button:disabled{cursor:wait;opacity:.65}.login-feedback{color:#667085;min-height:22px;margin-top:12px;font-size:.76rem}.login-feedback--error{color:#a22b24}.login-card>small{color:#8a94a4;margin-top:22px;font-size:.68rem;display:block}.auth-loading{color:#dce4ef;font-size:.84rem;font-weight:750}.topbar{color:#fff;background:#101827;border-bottom:3px solid #ff6300;justify-content:space-between;align-items:center;min-height:82px;padding:16px clamp(20px,4vw,58px);display:flex}.brand-lockup,.topbar-status,.panel-heading,.font-gate__status,.page-preview figcaption,.scene-contract{align-items:center;display:flex}.brand-lockup{gap:13px}.brand-mark{color:#101827;background:#a6ff00;border-radius:12px;place-items:center;width:43px;height:43px;font-size:1.2rem;font-weight:900;display:grid}.topbar h1{font-size:clamp(1.22rem,2vw,1.65rem);line-height:1.1}.eyebrow,.panel-kicker{color:#7b8799;letter-spacing:.13em;text-transform:uppercase;margin-bottom:5px;font-size:.68rem;font-weight:800}.topbar .eyebrow{color:#9ca9bc}.topbar-status{color:#cbd4e2;background:#1b2638;border:1px solid #2b394d;border-radius:999px;gap:8px;padding:8px 12px;font-size:.76rem;font-weight:700}.logout-button{color:#fff;cursor:pointer;background:0 0;border:1px solid #46556a;border-radius:999px;margin-left:4px;padding:4px 8px;font-size:.68rem;font-weight:800}.logout-button:hover{border-color:#a6ff00}.live-dot,.warning-dot{background:#79d900;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #79d9001f}.workspace{grid-template-columns:248px minmax(550px,1fr) 270px;gap:18px;width:min(1530px,100%);margin:0 auto;padding:20px;display:grid}.panel,.stage{background:#fff;border:1px solid #dce1e8;border-radius:16px;min-width:0;box-shadow:0 12px 34px #1720310f}.panel{align-self:start;padding:20px}.panel h2,.stage h2{font-size:1.08rem}.panel-heading{justify-content:space-between;gap:12px}.variant-badge{color:#fff;background:#0a009e;border-radius:9px;place-items:center;width:32px;height:32px;font-size:.82rem;font-weight:900;display:grid}.mayor-card{background:#f1f3f7;border-radius:12px;grid-template-columns:62px 1fr;gap:12px;margin:20px 0;padding:12px;display:grid;overflow:hidden}.mayor-card img{object-fit:contain;object-position:center top;background:#0a009e;border-radius:8px;width:62px;height:68px}.mayor-card div{flex-direction:column;justify-content:center;min-width:0;display:flex}.mayor-card span,.candidate-row span,.source-card span{color:#7a8493;font-size:.68rem}.mayor-card strong,.candidate-row strong{text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.82rem;overflow:hidden}.mayor-card small{color:#596579;text-transform:uppercase;margin-top:3px;font-size:.7rem;font-weight:700}.candidate-list{border-top:1px solid #e5e8ed}.candidate-row{border-bottom:1px solid #e5e8ed;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;display:flex}.candidate-row div{gap:2px;min-width:0;display:grid}.candidate-row b{color:#0a009e;font-family:NeulisCursiveAuthorized,sans-serif;font-size:1.02rem}.source-card{background:#f8f9fb;border:1px solid #e5e8ed;border-radius:10px;gap:5px;margin-top:18px;padding:13px;display:grid}.source-card strong{font-size:.76rem}.source-card code{color:#667085;font-size:.66rem}.stage{padding:20px;overflow:hidden}.stage-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.view-toggle{background:#edf0f4;border-radius:10px;gap:4px;padding:4px;display:flex}.view-toggle button{color:#657084;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 10px;font-size:.72rem;font-weight:750}.view-toggle button[aria-pressed=true]{color:#172031;background:#fff;box-shadow:0 2px 8px #1720311a}.scene-board{background-color:#1a2230;background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:13px;justify-content:center;align-items:flex-start;gap:clamp(20px,5vw,58px);min-height:603px;padding:26px clamp(20px,4vw,44px) 32px;display:flex;overflow:auto}.page-preview{flex:0 0 250px}.page-preview figcaption{color:#d4dae3;letter-spacing:.08em;justify-content:space-between;margin-bottom:9px;font-size:.66rem;font-weight:800}.page-preview figcaption small{color:#8c98aa;letter-spacing:0;font-weight:600}.scene-page{background:#fff;width:250px;height:450px;display:block;overflow:hidden;box-shadow:0 24px 55px #00000057}.scene-contract{color:#727d8e;flex-wrap:wrap;justify-content:center;gap:9px;padding-top:15px;font-size:.67rem;font-weight:750}.scene-contract i{background:#cfd5de;width:18px;height:1px}.export-panel h2{margin-bottom:18px}.font-gate{color:#5e420f;background:#fff8e8;border:1px solid #f3db9f;border-radius:11px;padding:14px}.font-gate__status{gap:9px;font-size:.78rem}.warning-dot{background:#f0a000;box-shadow:0 0 0 4px #f0a0001f}.font-gate p{color:#765e31;margin-top:8px;font-size:.7rem;line-height:1.45}.font-gate>span{color:#9b4b16;text-transform:uppercase;background:#ffe8cf;border-radius:5px;margin-top:9px;padding:4px 7px;font-size:.62rem;font-weight:850;display:inline-flex}.font-gate--authorized{color:#23531f;background:#f0f9ed;border-color:#c9e8c3}.font-gate--authorized p{color:#4e704a}.font-gate--authorized>span{color:#2d6827;background:#dff2da}.export-actions{gap:10px;margin:16px 0;display:grid}.export-button{color:#263247;cursor:pointer;text-align:left;background:#fff;border:1px solid #dce1e8;border-radius:11px;grid-template-columns:42px 1fr;gap:11px;width:100%;padding:12px;transition:border-color .14s,transform .14s,box-shadow .14s;display:grid}.export-button:hover:not(:disabled){border-color:#9ba7b8;transform:translateY(-1px);box-shadow:0 8px 20px #17203114}.export-button:disabled{cursor:wait;opacity:.62}.export-button>span{color:#fff;background:#303b4d;border-radius:8px;place-items:center;height:38px;font-size:.66rem;font-weight:900;display:grid}.export-button--primary>span{color:#101827;background:#a6ff00}.export-button div{gap:3px;min-width:0;display:grid}.export-button strong{font-size:.76rem}.export-button small{color:#748093;font-size:.65rem}.export-feedback{color:#687385;background:#f5f7f9;border-radius:9px;min-height:52px;padding:11px;font-size:.69rem;line-height:1.4}.export-feedback--success{color:#275c21;background:#eff9ec}.export-feedback--error{color:#8a2d27;background:#fff0ee}.technical-facts{gap:10px;margin-top:18px;display:grid}.technical-facts div{justify-content:space-between;gap:12px;font-size:.69rem;display:flex}.technical-facts dt{color:#818b9a}.technical-facts dd{color:#3b4658;text-align:right;font-weight:750}.workspace--editor{grid-template-columns:300px minmax(0,1fr);width:100%;max-width:none;padding-inline:clamp(14px,2vw,30px)}.workspace--editor .navigator-panel{grid-area:1/1}.workspace--editor .editor-panel{grid-area:2/1}.navigator-panel,.editor-panel{max-height:calc(100vh - 122px);overflow:auto}.new-variant-button{color:#fff;cursor:pointer;background:#0a009e;border:0;border-radius:8px;padding:7px 10px;font-size:.7rem;font-weight:850}.search-field{gap:7px;margin:18px 0 12px;display:grid}.search-field span,.editor-field span,.municipality-combobox>label{color:#687385;font-size:.67rem;font-weight:750}.search-field input,.editor-field input,.editor-field select,.candidate-editor input{color:#1d2939;background:#f9fafb;border:1px solid #d7dde6;border-radius:8px;outline:none;min-width:0;padding:9px 10px}.search-field input:focus,.editor-field input:focus,.editor-field select:focus,.candidate-editor input:focus{border-color:#0a009e;box-shadow:0 0 0 3px #0a009e17}.variant-results{gap:8px;display:grid}.variant-result{color:#273245;cursor:pointer;text-align:left;background:#f8f9fb;border:1px solid #e2e6ec;border-radius:10px;grid-template-columns:1fr auto;gap:7px 10px;width:100%;padding:11px;display:grid}.variant-result[data-selected=true]{background:#f1f0ff;border-color:#9e99dc}.variant-result span{gap:3px;min-width:0;display:grid}.variant-result strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.variant-result small{color:#778295;text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;overflow:hidden}.variant-result b{color:#fff;background:#0a009e;border-radius:7px;place-items:center;width:27px;height:27px;font-size:.7rem;display:grid}.variant-result em{color:#667085;letter-spacing:.05em;text-transform:uppercase;grid-column:1/-1;font-size:.58rem;font-style:normal;font-weight:800}.empty-results,.editor-placeholder p{color:#7b8493;padding:18px 0;font-size:.75rem;line-height:1.45}.editor-panel{align-self:start}.editor-panel-heading{margin-bottom:18px}.form-tabs{background:#edf0f4;border-radius:10px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:16px;padding:4px;display:grid}.form-tabs button{color:#667085;cursor:pointer;background:0 0;border:0;border-radius:7px;min-height:34px;padding:6px 8px;font-size:.67rem;font-weight:800}.form-tabs button[aria-selected=true]{color:#172031;background:#fff;box-shadow:0 2px 8px #1720311a}.version-badge{color:#155b25;background:#e9f8e8;border-radius:7px;padding:5px 8px;font-size:.65rem;font-weight:850}.editor-panel form,.editor-panel fieldset,.editor-field{display:grid}.editor-panel form{gap:16px}.form-tab-panel{gap:16px;display:grid}.municipality-combobox{position:relative}.municipality-options{z-index:20;background:#fff;border:1px solid #ccd3dd;border-radius:10px;max-height:276px;padding:5px;display:grid;position:absolute;top:58px;left:0;right:0;overflow:auto;box-shadow:0 16px 35px #1720312e}.municipality-options button{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;min-height:34px;padding:7px 9px;display:flex}.municipality-options button:hover,.municipality-options button[aria-selected=true]{background:#f1f0ff}.municipality-options button span{color:#273245;font-size:.72rem}.municipality-options button small{color:#8791a1;font-size:.6rem}.municipality-options>p{color:#7b8493;padding:12px 9px;font-size:.7rem}.derived-municipality-data{background:#f8f9fb;border:1px solid #e2e6ec;border-radius:9px;gap:3px;padding:11px;display:grid}.derived-municipality-data span,.derived-municipality-data small{color:#778295;font-size:.62rem}.derived-municipality-data strong{font-size:.76rem}.editor-panel fieldset{border:0;border-bottom:1px solid #e5e8ed;gap:10px;margin:0;padding:0 0 16px}.editor-panel legend{color:#2f3b4e;margin-bottom:11px;padding:0;font-size:.74rem;font-weight:900}.editor-field{gap:5px}.form-grid{gap:9px;display:grid}.form-grid--two{grid-template-columns:1fr 78px}.form-grid--party{grid-template-columns:1fr 92px}.candidate-editor-list{gap:9px;display:grid}.candidate-editor{grid-template-columns:1fr 82px;gap:5px 7px;display:grid}.candidate-editor>span{color:#687385;grid-column:1/-1;font-size:.63rem;font-weight:800}.candidate-editor input{width:100%;padding-block:8px;font-size:.73rem}.candidate-number-input{text-align:center;font-family:NeulisCursiveAuthorized,sans-serif;font-weight:700}.field-help{color:#7b8493;margin:-3px 0 1px;font-size:.64rem;line-height:1.45}.photo-upload-row{grid-template-columns:1fr 1fr;gap:9px;display:grid}.photo-upload-button{color:#fff;cursor:pointer;background:#0a009e;border:0;border-radius:8px;grid-column:1/-1;min-height:38px;font-size:.7rem;font-weight:850}.photo-upload-button:disabled{cursor:not-allowed;opacity:.48}.photo-placement-card{background:#f7f8fb;border:1px solid #e1e5ec;border-radius:9px;gap:11px;padding:11px;display:grid}.photo-placement-heading,.photo-placement-heading>div:first-child{display:flex}.photo-placement-heading{justify-content:space-between;align-items:flex-start;gap:8px}.photo-placement-heading>div:first-child{flex-direction:column;gap:3px;min-width:0}.photo-placement-heading strong{color:#2f3b4e;font-size:.7rem}.photo-placement-heading small{color:#7b8493;text-overflow:ellipsis;white-space:nowrap;max-width:175px;font-size:.58rem;overflow:hidden}.photo-placement-heading>div:last-child{gap:5px;display:flex}.photo-placement-heading button{color:#485469;cursor:pointer;background:#fff;border:1px solid #d7dde6;border-radius:6px;padding:5px 6px;font-size:.57rem;font-weight:800}.photo-controls-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.photo-range{gap:3px;display:grid}.photo-range>span{color:#687385;justify-content:space-between;font-size:.59rem;font-weight:750;display:flex}.photo-range b{color:#0a009e}.photo-range input{accent-color:#0a009e;width:100%}.legal-fields{background:#f8f9fb;border-radius:9px;padding:11px}.legal-fields summary{color:#4a5568;cursor:pointer;font-size:.7rem;font-weight:850}.legal-fields[open]{gap:10px;display:grid}.legal-fields[open] summary{margin-bottom:2px}.provenance-line{color:#7b8493;font-size:.64rem;line-height:1.4}.save-button{color:#101827;cursor:pointer;background:#a6ff00;border:0;border-radius:9px;min-height:44px;font-size:.75rem;font-weight:900}.save-button:disabled{cursor:wait;opacity:.62}.save-feedback{color:#687385;min-height:20px;font-size:.68rem;line-height:1.4}.save-feedback--success{color:#276024}.save-feedback--error{color:#942f28}.editor-stage{grid-area:1/2/span 2;align-self:start}.scene-board--editor{justify-content:space-evenly;gap:clamp(18px,3vw,48px);min-height:0;padding:22px clamp(18px,3vw,42px) 28px}.scene-board--editor .page-preview{flex:1 1 0;max-width:430px}.scene-board--editor .scene-page{aspect-ratio:5/9;width:100%;height:auto}.editor-output-bar{margin-top:14px}.export-actions--inline{grid-template-columns:1fr 1fr;margin:0}.editor-stage>.export-feedback{margin-top:10px}@media (width<=1180px){.workspace{grid-template-columns:230px minmax(520px,1fr)}.export-panel{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:16px;display:grid}.export-panel>.panel-kicker,.export-panel>h2{grid-column:1/-1}.export-actions,.technical-facts{margin:0}.workspace--editor{grid-template-columns:270px minmax(560px,1fr)}.workspace--editor .editor-stage{grid-area:1/2/span 2}}@media (width<=840px){.workspace{grid-template-columns:1fr;padding:14px}.export-panel{grid-column:auto}.case-panel{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.case-panel>.panel-heading,.case-panel>.source-card{grid-column:1/-1}.scene-board{justify-content:flex-start}.workspace--editor{grid-template-columns:1fr}.workspace--editor .editor-stage{grid-area:auto}.navigator-panel,.editor-panel{max-height:none}}@media (width<=560px){.topbar{align-items:flex-start;gap:12px;padding-inline:16px}.brand-mark{display:none}.topbar-status{white-space:normal;border-radius:10px;max-width:120px}.case-panel,.export-panel{display:block}.stage-heading{flex-direction:column;align-items:stretch}.view-toggle button{flex:1}.scene-board{gap:24px;min-height:520px;padding:20px}.page-preview{flex-basis:220px}.scene-page{width:220px;height:396px}.scene-contract{justify-content:flex-start}.font-gate,.export-actions,.export-feedback,.technical-facts{margin-top:16px}.editor-output-bar,.export-actions--inline{grid-template-columns:1fr}}
