:root{font-family:Segoe UI,Arial,sans-serif;color:#172235;background:#f3f5f7;line-height:1.45;font-synthesis:none;--navy:#0c2847;--navy2:#173f68;--gold:#b88a24;--blue:#1b4f8c;--line:#d7dee7;--muted:#637083;--danger:#9e2a2b;--warning:#8b5c00;--success:#1e6a43;--surface:#fff;--shadow:0 12px 32px rgba(12,40,71,.1)}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #6aa7df;outline-offset:2px}.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 28px;background:var(--navy);color:#fff;box-shadow:0 2px 10px #0003}.brand{display:flex;align-items:center;gap:12px;background:none;border:0;color:#fff;text-align:left;cursor:pointer}.brand img{width:44px;height:44px;object-fit:contain}.brand span{display:grid}.topbar nav{display:flex;align-items:center;gap:4px}.topbar nav>button:not(.btn){border:0;background:transparent;color:#dbe6f0;padding:11px 10px;border-radius:8px;cursor:pointer}.topbar nav>button:hover{background:#ffffff15}.btn{min-height:44px;border-radius:8px;border:1px solid transparent;padding:10px 18px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--gold);color:#152033}.btn-primary:hover{background:#cca03b}.btn-secondary{background:#fff;border-color:#b9c5d3;color:var(--navy)}.btn-danger{background:var(--danger);color:#fff}.btn-ghost{background:transparent;color:var(--navy)}.global-runtime-warning{background:#fff2cc;color:#654800;padding:9px 28px;border-bottom:1px solid #d7b85c}.page,.workspace,.new-proposal-page,.preview-shell,.issued-shell{max-width:1440px;margin:0 auto;padding:32px}.loading-page,.loading{min-height:70vh;display:grid;place-items:center;color:var(--muted)}.eyebrow{font-size:.73rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--blue)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.8rem,3vw,3rem);line-height:1.12;color:var(--navy)}h2{color:var(--navy)}.page-head,.preview-toolbar,.workspace-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px}.hero-action{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:42px;border-radius:18px;background:linear-gradient(120deg,var(--navy),var(--navy2));color:#fff;box-shadow:var(--shadow);margin-bottom:32px}.hero-action h1{color:#fff;max-width:850px}.hero-action p{color:#dbe6f0;max-width:760px}.dashboard-group{background:var(--surface);border:1px solid var(--line);border-radius:14px;margin:18px 0;overflow:hidden}.dashboard-group>header{display:flex;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line)}.dashboard-group h2{font-size:1.1rem;margin:0}.dashboard-group>header span{background:#edf2f7;padding:3px 10px;border-radius:99px}.proposal-row{display:grid;grid-template-columns:minmax(260px,2fr) minmax(180px,1fr) minmax(190px,1fr) auto;gap:20px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line)}.proposal-row:last-child{border-bottom:0}.proposal-row h3{margin:4px 0}.proposal-row p,.proposal-row small{color:var(--muted);margin:0}.proposal-meta{display:flex;gap:6px;flex-wrap:wrap}.proposal-meta span,.export-tag{font-size:.76rem;background:#eef2f6;border-radius:99px;padding:4px 8px}.proposal-row>div:nth-child(3){display:grid}.mono,code{font-family:Consolas,Courier New,monospace}.empty{text-align:center;padding:44px;color:var(--muted)}.empty h3{color:var(--navy)}.page-intro{max-width:780px;margin-bottom:24px}.new-proposal-form{display:grid;gap:20px}.initial-card,.settings-card,.proposal-section,.next-stage-card,.documents-history{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:0 4px 14px #0c28470d}.section-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}.section-heading>span{width:34px;height:34px;display:grid;place-items:center;background:var(--navy);color:#fff;border-radius:50%;font-weight:800}.section-heading h2{margin:0}.section-heading p{color:var(--muted);margin:4px 0}.segmented{display:flex;gap:6px;padding:4px;background:#eef2f6;border-radius:10px;width:max-content;max-width:100%;flex-wrap:wrap;margin-bottom:18px}.segmented button,.segmented label{border:0;background:transparent;border-radius:7px;padding:9px 13px;cursor:pointer;color:var(--navy)}.segmented input{position:absolute;opacity:0}.segmented .selected{background:#fff;box-shadow:0 2px 7px #0001;font-weight:700}.segmented.compact{margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid.compact{margin-top:16px}.field{display:grid;gap:6px;min-width:0}.field.full,.full{grid-column:1/-1}.field label{font-weight:700;color:#29384c}.field input,.field textarea,.field select,.content-block textarea,.input-table input{width:100%;border:1px solid #adb9c8;border-radius:8px;padding:11px 12px;background:#fff;color:#152033}.field textarea,.content-block textarea{min-height:110px;resize:vertical}.helper{color:var(--muted)}.field-error{color:var(--danger)}.confirm-line{display:flex;align-items:center;gap:8px;margin-top:14px;color:var(--muted)}.registry-picker{display:grid;grid-template-columns:minmax(220px,.8fr) 1.2fr;gap:18px}.picker-list{display:grid;gap:8px;max-height:300px;overflow:auto}.picker-list label{display:grid;gap:2px;border:1px solid var(--line);padding:12px;border-radius:9px;cursor:pointer;position:relative}.picker-list label.selected{border-color:var(--blue);background:#eef6ff}.picker-list input{position:absolute;right:12px;top:12px}.picker-list span{color:var(--muted);font-size:.88rem}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.service-option{position:relative;display:grid;grid-template-columns:auto 1fr;column-gap:10px;row-gap:4px;border:1px solid var(--line);border-radius:12px;padding:17px;cursor:pointer}.service-option.selected{border:2px solid var(--blue);background:#f0f7ff;padding:16px}.service-option input{position:absolute;right:15px;top:15px}.service-option strong,.service-option>span:not(.service-code),.service-option small{grid-column:2}.service-code{grid-row:1/5;width:38px;height:38px;display:grid;place-items:center;border-radius:8px;background:var(--navy);color:#fff;font-weight:800}.service-option small{color:var(--muted)}.sticky-action{position:sticky;bottom:14px;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;background:#fffd;border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;box-shadow:var(--shadow)}.sticky-action div{display:grid}.sticky-action span{color:var(--muted)}.notice{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:14px 16px;border-radius:10px;margin:14px 0;border-left:5px solid}.notice strong{white-space:nowrap}.notice-info{background:#edf6ff;border-color:var(--blue)}.notice-warning{background:#fff5d8;border-color:#d39900}.notice-danger{background:#ffeded;border-color:var(--danger)}.notice-success{background:#e9f8ef;border-color:var(--success)}.workspace-header{padding:22px;background:#fff;border:1px solid var(--line);border-radius:14px}.workspace-header h1{font-size:1.75rem;margin:4px 0}.workspace-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.journey-stepper{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:20px 0}.journey-stepper button{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;color:var(--muted);padding:11px;border-radius:9px;cursor:pointer}.journey-stepper button span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#eef2f6}.journey-stepper button.current{border-color:var(--blue);color:var(--navy);font-weight:800}.journey-stepper button.current span{background:var(--blue);color:#fff}.journey-stepper button.complete span{background:var(--success);color:#fff}.complete-nav{display:flex;gap:8px;overflow-x:auto;background:#fff;border:1px solid var(--line);padding:8px;border-radius:10px;margin-bottom:16px}.complete-nav button{white-space:nowrap;border:0;background:transparent;padding:10px 14px;border-radius:7px}.complete-nav button.active{background:var(--navy);color:#fff}.construction-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:start}.construction-form{min-width:0}.flow-head{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;margin-bottom:18px}.flow-head h2{margin:6px 0}.flow-head p{color:var(--muted)}.proposal-section{margin-bottom:16px}.proposal-section>header{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:18px}.proposal-section>header h2{font-size:1.18rem;margin:0}.proposal-section>header p{color:var(--muted);margin:5px 0}.answer-list{display:grid;gap:9px}.radio-list,.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.answer-list label{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);padding:12px;border-radius:9px;cursor:pointer}.answer-list label.selected{border-color:var(--blue);background:#f0f7ff}.answer-list span{display:grid}.answer-list small{color:var(--muted)}.table-scroll{overflow-x:auto;margin-bottom:14px}.input-table{width:100%;border-collapse:collapse;min-width:850px}.input-table th,.input-table td{padding:9px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.input-table th{font-size:.76rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.input-table input{min-width:90px;padding:8px}.input-table td:first-child input{min-width:160px}.subinput{margin-top:5px;font-size:.85rem}.mono-small{font-family:Consolas,monospace;font-size:.79rem}.switch{display:grid;gap:3px}.icon-button{width:34px;height:34px;border:1px solid var(--line);border-radius:7px;background:#fff;cursor:pointer}.flow-footer{display:flex;justify-content:flex-end;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;position:sticky;bottom:12px;z-index:10}.live-summary{position:sticky;top:92px;background:var(--navy);color:#fff;border-radius:14px;padding:20px;box-shadow:var(--shadow);max-height:calc(100vh - 110px);overflow:auto}.summary-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff30;padding-bottom:12px}.summary-title span{font-size:.75rem;letter-spacing:.1em}.summary-title strong{background:var(--gold);color:#132034;padding:5px 8px;border-radius:6px}.live-summary dl{display:grid;grid-template-columns:1fr auto;gap:8px 14px}.live-summary dt{color:#c6d6e4}.live-summary dd{margin:0;text-align:right;font-weight:700}.summary-price{color:#f2c860;font-size:1.15rem}.live-summary .notice{color:#172235}.live-summary .btn{width:100%;margin-top:10px}.text-action{border:0;background:transparent;color:#d9b14b;text-decoration:underline;padding:8px 0;cursor:pointer}.memory-panel{margin-top:14px;border-top:1px solid #ffffff30;padding-top:12px}.memory-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.75rem}.memory-panel article{background:#fff;color:#172235;border-radius:9px;padding:12px;margin:10px 0}.memory-panel article header{display:flex;gap:10px}.memory-panel pre{white-space:pre-wrap;word-break:break-word;background:#eef2f6;padding:8px;border-radius:6px;font-size:.72rem}.memory-result{font-weight:800;color:var(--blue)}.inline-save{color:var(--success);font-size:.85rem;margin:8px 0}.content-editor{max-width:1000px;margin:0 auto}.editor-toolbar{display:flex;justify-content:flex-end;gap:10px;position:sticky;top:80px;z-index:15;background:#f3f5f7e8;padding:10px 0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.content-blocks{display:grid;gap:14px}.content-block{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px}.content-block.has-conflict{border-color:#d39900}.content-block>header{display:flex;justify-content:space-between;gap:16px;margin-bottom:12px}.content-block h3{margin:4px 0}.content-block small{color:var(--muted)}.block-type{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--blue)}.block-controls{display:flex;gap:5px;flex-wrap:wrap}.block-controls button{border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 8px;cursor:pointer}.content-block textarea{min-height:140px}.content-block footer{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px;font-size:.82rem;color:var(--muted)}.content-block footer label{display:flex;gap:6px;align-items:center}.conflict-panel{background:#fff5d8;border-radius:9px;padding:14px;margin-bottom:12px}.conflict-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.conflict-columns>div{background:#fff;padding:10px;border-radius:7px}.conflict-panel .btn{margin-right:8px}.modal-backdrop{position:fixed;inset:0;z-index:100;background:#081624aa;display:grid;place-items:center;padding:20px}.modal{width:min(600px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;padding:26px;box-shadow:0 20px 70px #0007}.modal .field{margin:14px 0}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.emission-modal dl{display:grid;grid-template-columns:1fr 1.5fr;gap:8px;border:1px solid var(--line);border-radius:9px;padding:14px}.emission-modal dt{color:var(--muted)}.emission-modal dd{margin:0;font-weight:700}.compare-price{display:grid;grid-template-columns:1fr 1fr;gap:10px}.compare-price span{display:grid;background:#eef2f6;padding:12px;border-radius:8px}.subtabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin:-8px -8px 20px;padding:8px}.subtabs button{border:0;background:transparent;padding:10px;border-radius:7px}.subtabs button.active{background:var(--navy);color:#fff}.upload-form{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:end}.document-list,.generation-list,.registry-table{display:grid;gap:8px;margin-top:18px}.document-list article,.generation-list article,.registry-table article{display:flex;justify-content:space-between;gap:18px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:13px;background:#fff}.document-list article>div,.generation-list article{display:grid}.document-list span,.generation-list span,.registry-table span{color:var(--muted)}.document-list code,.generation-list code{font-size:.68rem;max-width:45%;overflow:hidden;text-overflow:ellipsis}.timeline{border-left:2px solid var(--line);margin-left:12px;padding-left:20px}.timeline article{position:relative;margin-bottom:18px}.timeline article:before{content:"";position:absolute;left:-27px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--blue)}.timeline span{font-size:.78rem;color:var(--muted)}.version-actions{display:flex;gap:10px}.preview-toolbar{background:#fff;border:1px solid var(--line);padding:20px;border-radius:13px;position:sticky;top:78px;z-index:20}.toolbar-actions{display:flex;gap:10px;align-items:center}.a4-preview{background:#d9dee5;padding:28px;border-radius:12px;min-height:700px}.a4-preview iframe{display:block;width:min(100%,1000px);height:calc(100vh - 190px);min-height:720px;margin:0 auto;border:0;background:#fff;box-shadow:0 8px 30px #0003}.hash-panel{background:var(--navy);color:#fff;padding:13px 18px;border-radius:9px;margin:12px 0;display:flex;gap:18px;align-items:center}.hash-panel code{word-break:break-all;color:#f0c75d}.registry-table{background:#fff;padding:14px;border:1px solid var(--line);border-radius:12px}.settings-card{max-width:760px;display:grid;gap:14px}.next-stage-card{text-align:center;padding:60px}.section-status{font-size:.78rem;border-radius:99px;padding:5px 9px;background:#eef2f6}.section-status.complete{background:#e9f8ef;color:var(--success)}.section-status.blocked{background:#ffeded;color:var(--danger)}@media(max-width:1100px){.topbar{align-items:flex-start}.topbar nav{flex-wrap:wrap;justify-content:flex-end}.construction-grid{grid-template-columns:1fr}.live-summary{position:static;max-height:none;order:-1}.proposal-row{grid-template-columns:1.5fr 1fr auto}.proposal-row>div:nth-child(3){display:none}.service-grid{grid-template-columns:1fr}.upload-form{grid-template-columns:1fr 1fr}.upload-form .field:first-child{grid-column:1/-1}.journey-stepper button{font-size:.8rem}}@media(max-width:760px){.topbar{position:static;display:grid;padding:12px 16px}.topbar nav{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.topbar nav button,.topbar nav .btn{font-size:.78rem;padding:8px}.page,.workspace,.new-proposal-page,.preview-shell,.issued-shell{padding:16px}.hero-action{padding:24px;display:grid}.page-head,.preview-toolbar,.workspace-header{display:grid}.proposal-row{grid-template-columns:1fr}.proposal-meta{order:2}.form-grid,.registry-picker,.radio-list,.checkbox-grid,.conflict-columns,.compare-price{grid-template-columns:1fr}.service-option{grid-template-columns:auto 1fr}.journey-stepper{display:flex;overflow-x:auto}.journey-stepper button{min-width:130px}.editor-toolbar{top:0;overflow-x:auto;justify-content:flex-start}.content-block>header{display:grid}.upload-form{grid-template-columns:1fr}.toolbar-actions{flex-wrap:wrap}.a4-preview{padding:8px}.a4-preview iframe{min-height:600px;height:75vh}.sticky-action,.flow-footer{position:static;display:grid}.modal{padding:18px}.document-list article,.generation-list article,.registry-table article{align-items:flex-start;display:grid}.document-list code,.generation-list code{max-width:100%}}.compact-floor-table th,.compact-floor-table td{vertical-align:middle}.compact-floor-table td:first-child{min-width:190px}.row-note-action{display:block;margin-top:6px;border:0;background:transparent;color:var(--blue);padding:2px 0;font-size:.78rem;cursor:pointer}.row-observation td{background:#f7f9fb}.row-observation textarea{min-height:74px}.floor-actions{margin:14px 0}.equivalent-memory{border:1px solid var(--line);border-radius:10px;background:#f8fafc;margin:16px 0;padding:0 14px}.equivalent-memory summary{cursor:pointer;font-weight:700;color:var(--navy);padding:14px 0}.equivalent-memory article{border-top:1px solid var(--line);padding:14px 0;display:grid;gap:6px}.equivalent-memory h4,.equivalent-memory p{margin:0}.equivalent-line{display:flex;justify-content:space-between;gap:16px}.equivalent-line code{white-space:nowrap}.money-help{display:block;color:var(--muted);margin-top:5px}.price-token-note{font-size:.8rem;color:var(--muted);margin-top:6px}.content-block[data-block-key=price] textarea{font-family:Segoe UI,Arial,sans-serif}@media(max-width:900px){.compact-floor-table{min-width:980px}.equivalent-line{display:grid;gap:2px}.equivalent-line code{white-space:normal}}.linked-commercial-value{margin-top:.75rem;padding:.8rem 1rem;border-left:3px solid var(--gold,#b88a24);background:#b88a2414;border-radius:.35rem}.linked-commercial-value strong{display:block;margin-bottom:.35rem}.linked-commercial-value p,.linked-commercial-value pre{margin:.25rem 0;white-space:pre-wrap;font:inherit}.linked-commercial-value small{display:block;color:var(--muted,#5f6b78)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.brand small{color:#bfd0df}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.proposal-row{grid-template-columns:minmax(250px,2fr) minmax(170px,1fr) minmax(180px,1fr) minmax(230px,auto)}.journey-stepper{grid-template-columns:repeat(3,1fr)}.state-pill{padding:7px 11px;border-radius:999px;font-size:.8rem;font-weight:700}.state-pill.draft{background:#eef6ff;color:var(--blue)}.state-pill.issued{background:#e9f8ef;color:var(--success)}.registry-picker.vertical{display:block}.registry-picker.vertical h3{font-size:.95rem;margin:18px 0 8px}.picker-list button{display:grid;gap:3px;text-align:left;border:1px solid var(--line);border-radius:9px;padding:12px;background:#fff;color:inherit;cursor:pointer}.picker-list button.selected{border:2px solid var(--blue);background:#eef6ff;padding:11px}.service-option{appearance:none;text-align:left;background:#fff;color:inherit}.service-option input{display:none}.financial-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.financial-summary span{display:grid;background:#eef2f6;border-radius:8px;padding:12px}.wide-modal{width:min(820px,100%)}.emission-reference{font:700 1.25rem Consolas,monospace;background:#eef2f6;padding:12px;border-radius:8px;margin:12px 0}.management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.management-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:20px;display:grid;align-content:start;gap:10px}.management-card.full{grid-column:1/-1}.management-actions{display:flex;gap:8px;flex-wrap:wrap}.document-row{display:grid;gap:4px;border-bottom:1px solid var(--line);padding:8px 0}.document-row code{font-size:.72rem;word-break:break-all}.timeline>div{padding:10px 0;border-bottom:1px solid var(--line)}.timeline>div span{color:var(--muted);font-size:.78rem}.answer-list small{display:none}.live-summary dt:nth-of-type(n+6),.live-summary dd:nth-of-type(n+6){display:none}.input-table select{min-width:150px;border:1px solid #adb9c8;border-radius:8px;padding:8px;background:#fff}.compact-floor-table{min-width:940px}.compact-floor-table th:nth-child(4),.compact-floor-table td:nth-child(4){text-align:center}.content-block small{font-size:.8rem}.preview-toolbar{top:78px}.app-shell .topbar .brand+nav{min-width:0}@media(max-width:900px){.management-grid,.financial-summary{grid-template-columns:1fr}.proposal-row{grid-template-columns:1fr 1fr}.proposal-row>div:nth-child(3){display:grid}.compact-floor-table{min-width:0}.compact-floor-table thead{display:none}.compact-floor-table,.compact-floor-table tbody,.compact-floor-table tr,.compact-floor-table td{display:block;width:100%}.compact-floor-table tr{border:1px solid var(--line);border-radius:10px;padding:12px;margin-bottom:12px;background:#fff}.compact-floor-table td{border:0;padding:6px 0;display:grid;grid-template-columns:minmax(130px,.8fr) 1.2fr;align-items:center;gap:10px}.compact-floor-table td:before{content:attr(data-label);font-size:.76rem;text-transform:uppercase;color:var(--muted);font-weight:700}.compact-floor-table .row-observation{padding:0;border:0}.compact-floor-table .row-observation td{display:block}.compact-floor-table .row-observation td:before{display:none}}@media(max-width:760px){.proposal-row{grid-template-columns:1fr}.row-actions,.toolbar-actions{display:grid;grid-template-columns:1fr}.row-actions .btn,.toolbar-actions .btn{width:100%}.topbar nav{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:1fr}.management-card.full{grid-column:auto}.compact-floor-table td{grid-template-columns:1fr}.preview-toolbar{position:static}}.contract-data-form{display:grid;gap:18px}.role-grid-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.role-fieldset{display:grid;gap:10px;border:1px solid var(--line);border-radius:10px;padding:14px;min-width:0}.role-fieldset legend{padding:0 7px;font-weight:800;color:var(--navy)}@media(max-width:900px){.role-grid-editor{grid-template-columns:1fr}}.rule-description{display:block;margin-top:6px;color:var(--muted);font-size:.76rem;line-height:1.35;max-width:280px}.extra-wide-modal{width:min(1120px,96vw);max-height:94vh}.modal-heading{margin-bottom:18px}.modal-heading h2{margin-bottom:5px}.modal-heading p,.section-help{margin:0;color:var(--muted)}.pricing-flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 18px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#f8fafc;font-size:.8rem}.pricing-flow span{font-weight:700;color:var(--navy)}.pricing-flow b{color:var(--gold)}.financial-summary.detailed{grid-template-columns:1fr;gap:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.financial-row{display:flex;justify-content:space-between;gap:24px;padding:10px 14px;border-bottom:1px solid var(--line);align-items:center}.financial-row:last-child{border-bottom:0}.financial-row strong{font-size:1rem}.financial-row.emphasis{background:#eef6ff;color:var(--navy)}.modal-section{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.modal-section>h3{margin:0 0 5px}.toggle-card{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f8fafc;cursor:pointer}.toggle-card input{margin-top:4px}.toggle-card span{display:grid;gap:3px}.toggle-card small{color:var(--muted)}.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.action-field{align-self:end}.payment-builder{display:grid;gap:14px}.installment-list{display:grid;gap:12px}.installment-card{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff}.installment-card>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.installment-card>header h4{margin:0}.installment-card .form-grid{margin:0}.input-with-suffix{display:flex;align-items:center;border:1px solid #adb9c8;border-radius:8px;background:#fff;overflow:hidden}.input-with-suffix input{border:0;border-radius:0;min-width:0}.input-with-suffix span{padding:0 10px;color:var(--muted);font-weight:700}.moment-composite{display:grid;grid-template-columns:120px minmax(180px,1fr);gap:12px}.moment-summary{align-self:end}.moment-summary strong{display:block;padding:10px 0}.payment-validation-summary{padding:10px 12px;border-radius:8px;background:#fff7e6;color:#745a1b}.price-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.live-summary .commercial-price-highlight{background:#eef6ff;border:1px solid #c8dcf4;border-radius:8px;padding:10px}.live-summary .commercial-price-highlight dt{color:var(--navy);font-weight:800}.live-summary .commercial-price-highlight dd{font-size:1.05rem;font-weight:800;color:var(--navy)}@media(max-width:900px){.three-columns,.moment-composite{grid-template-columns:1fr}.extra-wide-modal{width:100%;max-height:96vh}.pricing-flow b{display:none}.pricing-flow span{width:100%;padding:3px 0}.financial-row{align-items:flex-start}.installment-card .form-grid{grid-template-columns:1fr}.price-modal-actions{display:grid;grid-template-columns:1fr}.price-modal-actions .btn{width:100%}}.automatic-block-view{display:grid;gap:12px}.generated-copy{white-space:pre-line;background:#f7f8fa;border:1px solid var(--line,#d9dee6);border-radius:8px;padding:14px}.generated-copy p{margin:.25rem 0}.memory-panel section{border-top:1px solid #dfe4ea;padding:12px 0}.memory-panel dl{display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,auto);gap:6px 14px}.memory-panel dt{color:#536071}.memory-panel dd{margin:0;font-weight:600;text-align:right}.flow-head:focus{outline:none}.price-mode-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.price-mode-selector label{display:flex;gap:10px;border:1px solid var(--line);border-radius:10px;padding:14px;background:#fff;cursor:pointer}.price-mode-selector label.selected{border:2px solid var(--blue);padding:13px;background:#eef6ff}.price-mode-selector span{display:grid;gap:3px}.price-mode-selector small{color:var(--muted)}.grossup-builder{display:grid;gap:16px}.grossup-summary{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.grossup-profile-settings{margin-top:24px}.grossup-profile-settings header h2{margin:.2rem 0}.grossup-profile-settings header p{color:var(--muted)}.profile-json-editor{min-height:520px;font-family:Consolas,Courier New,monospace;font-size:.82rem;line-height:1.45;white-space:pre;tab-size:2}.memory-panel dd{overflow-wrap:anywhere}@media(max-width:900px){.price-mode-selector{grid-template-columns:1fr}.profile-json-editor{min-height:420px}}.financial-reference dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 14px}.financial-reference dt,.financial-reference dd{display:block!important}.financial-reference dd{margin:0;text-align:right;font-weight:700}.financial-reference .summary-confirmed{font-size:1.25rem;color:var(--navy);font-weight:900}.financial-reference .confirmed{font-weight:900;color:var(--navy)}.financial-reference .summary-gross{font-size:1.08rem;color:var(--blue)}.financial-reference .summary-net{color:#42576f}.financial-reference .summary-technical{color:#536071}.financial-loading{padding:18px;border:1px solid #c8dcf4;background:#eef6ff;border-radius:9px;color:var(--navy);font-weight:800}.summary-alert{display:grid;gap:3px;padding:10px 12px;margin:9px 0;border-left:4px solid var(--gold);background:#fff7e6;border-radius:7px}.summary-alert span{font-size:.78rem;color:var(--muted)}.composition-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.composition-selector label{display:flex;gap:10px;border:1px solid var(--line);padding:14px;border-radius:10px;cursor:pointer}.composition-selector label.selected{border:2px solid var(--blue);padding:13px;background:#eef6ff}.composition-selector span{display:grid}.composition-selector small{color:var(--muted)}.custom-composition{display:grid;gap:14px;border:1px solid var(--line);border-radius:12px;padding:18px;background:#fafbfd}.custom-composition>header{display:flex;justify-content:space-between;gap:16px}.custom-composition h3,.custom-composition h4{margin:0}.profile-section{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.profile-section>h3,.profile-section>h4{margin-bottom:12px}.four-columns{grid-template-columns:repeat(4,minmax(0,1fr))}.difference-summary{display:grid;gap:5px;padding:14px;border-radius:9px;background:#eef6ff}.difference-summary>div{display:flex;justify-content:space-between;gap:18px;font-size:.82rem}.price-controls,.payment-builder{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.profile-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px}.profile-toolbar>.field{min-width:min(520px,100%)}.profile-actions,.profile-bottom-actions{display:flex;gap:9px;align-items:end;flex-wrap:wrap}.bracket-table{display:grid;margin-top:12px;border:1px solid var(--line);border-radius:9px;overflow:hidden}.bracket-head,.bracket-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px 10px}.bracket-head{background:#eef2f6;font-size:.77rem;font-weight:800;text-transform:uppercase}.bracket-row{border-top:1px solid var(--line)}.bracket-row input{width:100%;border:1px solid #adb9c8;border-radius:7px;padding:8px}.profile-history>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.technical-json pre{max-height:520px;overflow:auto;background:#172235;color:#e8edf4;padding:14px;border-radius:9px;font-size:.78rem}.file-action{position:relative;overflow:hidden;cursor:pointer}.file-action input{position:absolute;inset:0;opacity:0;cursor:pointer}.live-summary{position:sticky;top:92px;max-height:calc(100vh - 112px);overflow:auto}.proposal-section#price-payment{overflow:visible}@media(max-width:1100px){.four-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-toolbar{display:grid}.profile-actions{justify-content:flex-start}}@media(max-width:900px){.composition-selector,.four-columns{grid-template-columns:1fr}.custom-composition>header,.profile-history>div{display:grid}.live-summary{position:static;max-height:none}.profile-bottom-actions{display:grid;grid-template-columns:1fr}.profile-bottom-actions .btn,.profile-bottom-actions .field,.profile-bottom-actions .file-action{width:100%}}.financial-column{display:flex;flex-direction:column;gap:12px;min-width:0}.financial-empty{padding:22px 0;color:var(--text-muted,#667085);font-weight:600}.financial-adjust-card{width:100%;text-align:left;border:1px solid var(--border,#d8dde5);border-radius:12px;background:#fff;padding:14px 16px;cursor:pointer;display:flex;flex-direction:column;gap:4px}.financial-adjust-card:hover,.financial-adjust-card:focus-visible{border-color:var(--gold,#b88a24);box-shadow:0 0 0 3px #b88a241f}.financial-adjust-card span{font-size:.84rem;color:var(--text-muted,#667085)}.modal-backdrop{position:fixed;inset:0;background:#08142294;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.financial-modal{width:min(920px,100%);max-height:calc(100vh - 48px);background:#fff;border-radius:16px;box-shadow:0 24px 80px #00000047;display:flex;flex-direction:column}.financial-modal>header,.financial-modal>footer{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #e4e7ec}.financial-modal>footer{border-bottom:0;border-top:1px solid #e4e7ec;justify-content:flex-end;gap:10px}.financial-modal-body{padding:18px 22px;overflow:auto}.financial-modal-body label{display:flex;gap:8px;align-items:flex-start;margin:8px 0}.financial-modal-body label small{display:block;color:#667085}.parameter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.summary-confirmed{font-size:1.12rem;font-weight:800;color:var(--navy,#163b63)}@media(max-width:700px){.modal-backdrop{padding:0;align-items:stretch}.financial-modal{border-radius:0;max-height:100vh;width:100%}.parameter-grid{grid-template-columns:1fr}.financial-modal>header,.financial-modal>footer,.financial-modal-body{padding:14px}.construction-grid{grid-template-columns:1fr}.financial-column{order:-1}}.payment-editor-list{display:flex;flex-direction:column;gap:10px;margin:12px 0}.payment-editor-row{display:grid;grid-template-columns:1.1fr .7fr 1.4fr;gap:10px;padding:12px;border:1px solid #e4e7ec;border-radius:10px;background:#fafbfc}@media(max-width:700px){.payment-editor-row{grid-template-columns:1fr}}@media(min-width:901px){.financial-column{position:sticky;top:92px;max-height:calc(100vh - 108px);display:flex;overflow:hidden}.financial-column .live-summary{position:static;min-height:0;max-height:none;overflow:auto;flex:1 1 auto}.financial-adjust-card{position:sticky;bottom:0;z-index:3;flex:0 0 auto;box-shadow:0 -8px 18px #0c284714}}.notice-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.travel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parameter-readonly{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}.parameter-readonly dt{color:var(--muted)}.parameter-readonly dd{margin:0;font-weight:700;text-align:right}.composition-differences{padding:14px;border-radius:10px;background:#eef6ff}.composition-differences ul{margin:8px 0 0}.payment-editor-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px}.financial-modal-body>.proposal-section{box-shadow:none}.financial-modal label{display:flex;gap:9px;align-items:flex-start}.financial-modal label small{display:block;color:var(--muted)}@media(max-width:900px){.payment-editor-row,.travel-grid{grid-template-columns:1fr}}.field-help{margin:.55rem 0 1rem;color:var(--muted);font-size:.9rem}.read-only-field{display:grid;gap:.35rem;padding:.75rem;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted,#f7f8fa)}.read-only-field span{font-size:.82rem;color:var(--muted)}.read-only-field.emphasis{border-width:2px}.technical-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.technical-service-card{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:12px}.technical-service-card h4{margin:0}.editable-rows{display:grid;gap:8px;margin-bottom:16px}.editable-rows-head,.editable-row{display:grid;grid-template-columns:2fr 1fr auto;gap:8px;align-items:center}.editable-rows-head{font-size:.8rem;font-weight:700;color:var(--muted)}.technical-defaults-table{display:grid;gap:6px;overflow-x:auto}.technical-defaults-head,.technical-defaults-row{display:grid;grid-template-columns:70px repeat(5,minmax(110px,1fr));gap:8px;align-items:center;min-width:760px}.technical-defaults-head{font-size:.78rem;font-weight:700;color:var(--muted)}.technical-matrix{border:1px solid var(--line);border-radius:12px;margin:10px 0;padding:0 14px 14px}.technical-matrix summary{cursor:pointer;font-weight:700;padding:14px 0}.matrix-points-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.matrix-ranges{display:grid;gap:7px;margin-bottom:14px}.matrix-range-row{display:grid;grid-template-columns:110px 110px 1fr 120px;gap:8px}.matrix-range-row input,.technical-defaults-row input,.editable-row input{min-width:0}.technical-matrix textarea{width:100%;resize:vertical}.grossup-profile-settings .notice{margin-bottom:14px}@media(max-width:1100px){.technical-service-grid,.matrix-points-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.technical-service-grid,.matrix-points-grid{grid-template-columns:1fr}.editable-rows-head{display:none}.editable-row{grid-template-columns:1fr}.matrix-range-row{grid-template-columns:1fr 1fr}.matrix-range-row input:nth-child(n+3){grid-column:1/-1}}.live-summary.financial-reference{background:linear-gradient(150deg,#0c2847,#173f68);color:#fff;border:0;border-radius:14px;padding:18px;box-shadow:0 12px 28px #0c28472e;overflow:visible}.live-summary .summary-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.22)}.live-summary .summary-title span{font-size:.7rem;letter-spacing:.09em;color:#d9e6f2;font-weight:800}.live-summary .summary-title strong{color:#fff}.financial-reference dl{grid-template-columns:minmax(190px,1fr) minmax(110px,auto);gap:8px 16px;margin:0;align-items:baseline}.financial-reference dt{color:#d9e6f2!important;font-weight:600;white-space:normal;word-break:normal;overflow-wrap:normal;line-height:1.25}.financial-reference dd{color:#fff!important;white-space:nowrap;word-break:normal;overflow-wrap:normal;line-height:1.25}.financial-reference .summary-confirmed{font-size:1.34rem!important;color:#fff!important;font-weight:900}.financial-reference .confirmed,.financial-reference .summary-gross,.financial-reference .summary-net,.financial-reference .summary-technical{color:#fff!important}.financial-reference dt.confirmed,.financial-reference dd.summary-confirmed{margin-top:5px;padding-top:11px;border-top:1px solid rgba(255,255,255,.24)}.financial-loading{background:#ffffff1f;border-color:#ffffff40;color:#fff}.financial-empty{color:#d9e6f2}.financial-actions{display:grid;gap:10px;flex:0 0 auto}.financial-actions>.btn{width:100%}.financial-adjust-card{min-height:76px}.financial-adjust-card.is-primary{background:var(--gold);border-color:var(--gold);color:#152033}.financial-adjust-card.is-primary span{color:#3e3522}.financial-adjust-card.is-secondary{background:#fff;border-color:#b9c5d3;color:var(--navy)}.discount-single-field{max-width:320px}.construction-memory{margin:18px 0;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 16px}.construction-memory>summary{cursor:pointer;padding:15px 0;font-weight:800;color:var(--navy)}.construction-memory .memory-panel{border-top:1px solid var(--line);padding:16px 0}.price-readonly-note{padding:10px 12px;border-radius:8px;background:#eef6ff;color:#42576f;margin:10px 0}.not-applicable{display:inline-block;padding:8px 0;color:var(--muted)}@media(min-width:901px){.financial-column{position:sticky;top:92px;max-height:calc(100vh - 108px);display:flex;overflow:hidden}.financial-column .live-summary{position:static;min-height:0;max-height:none;overflow:auto;flex:1 1 auto}.financial-actions{position:sticky;bottom:0;z-index:3;padding-top:10px;background:#f3f5f7;box-shadow:0 -8px 18px #0c28470f}}@media(max-width:1100px){.construction-grid{grid-template-columns:minmax(0,1fr) 330px}.financial-reference dl{grid-template-columns:minmax(155px,1fr) auto}}@media(max-width:900px){.construction-grid{grid-template-columns:1fr}.financial-column{position:static;max-height:none;overflow:visible;order:0}.financial-reference dl{grid-template-columns:minmax(180px,1fr) auto}.financial-actions{grid-template-columns:1fr 1fr}.financial-actions .financial-adjust-card{min-height:64px}}@media(max-width:520px){.workspace,.page,.new-proposal-page,.preview-shell,.issued-shell{padding:16px}.financial-reference dl{grid-template-columns:minmax(0,1fr) auto;gap:9px 12px}.financial-reference dt{font-size:.86rem}.financial-reference dd{font-size:.9rem}.financial-reference .summary-confirmed{font-size:1.12rem!important}.financial-actions{grid-template-columns:1fr}.financial-modal>footer{position:sticky;bottom:0;background:#fff}.payment-editor-row{padding:10px}.live-summary.financial-reference{padding:15px}}.financial-column,.live-summary.financial-reference,.financial-reference dl,.financial-reference dt,.financial-reference dd,.live-summary .summary-title,.live-summary .summary-title>*{min-width:0;max-width:100%}.live-summary.financial-reference{width:100%;overflow-x:hidden}.financial-reference dl{width:100%;grid-template-columns:minmax(0,1fr) minmax(0,44%);gap:8px 12px}.financial-reference dt,.financial-reference dd{white-space:normal;word-break:normal;overflow-wrap:break-word}.financial-reference dd{text-align:right}.live-summary .summary-title{flex-wrap:wrap}.live-summary .summary-title strong{margin-left:auto;text-align:right;overflow-wrap:anywhere}@media(min-width:901px){.financial-column .live-summary{overflow-y:auto;overflow-x:hidden}}@media(max-width:1100px){.financial-reference dl{grid-template-columns:minmax(0,1fr) minmax(0,42%)}}@media(max-width:520px){.financial-reference dl{grid-template-columns:minmax(0,1fr) minmax(0,45%);gap:9px 10px}.financial-reference dd{overflow-wrap:anywhere}}body:has(.login-page) .skip-link{position:fixed;top:8px;left:8px;z-index:100;transform:translateY(-160%);padding:8px 12px;border-radius:6px;background:#fff;color:#061d32;font-weight:700}body:has(.login-page) .skip-link:focus{transform:translateY(0)}.login-page{min-height:100svh;display:grid;place-items:center;padding:clamp(20px,5vh,48px) 20px;background:#061d32;color:#f5f9fd;overflow-x:hidden}.login-card{width:min(430px,100%);display:flex;flex-direction:column;align-items:stretch;padding:36px 34px 28px;background:#092741;border:1px solid #315a78;border-radius:18px;box-shadow:0 18px 50px #000a1638}.login-logo{width:70px;height:70px;display:block;margin:0 auto 18px;border-radius:14px;object-fit:cover}.login-heading{text-align:center}.login-heading h1{margin:0;color:#fff;font-size:1.55rem;line-height:1.2}.login-heading p{max-width:330px;margin:10px auto 28px;color:#d5e5f2;font-size:.94rem;line-height:1.5}.login-form{display:grid;gap:18px}.login-field{display:grid;gap:7px}.login-field label{color:#fff;font-size:.9rem;font-weight:700}.login-field input{width:100%;min-height:46px;padding:10px 12px;border:1px solid #416985;border-radius:10px;background:#061f35;color:#fff;caret-color:#fff}.login-field input:hover{border-color:#668aa2}.login-field input:focus-visible{border-color:#87b6d6;outline:3px solid rgba(135,182,214,.32);outline-offset:2px}.login-error{margin:-3px 0 0;padding:10px 12px;border:1px solid #d98b8b;border-radius:8px;background:#4a2028;color:#fff1f1;font-size:.88rem}.login-submit{width:100%;min-height:48px;margin-top:2px;border:1px solid #e2edf7;border-radius:10px;background:#e5f0fa;color:#06213a;font-weight:800;cursor:pointer}.login-submit:hover:not(:disabled){background:#fff}.login-submit:disabled{opacity:.7;cursor:wait}.login-submit:focus-visible{outline-color:#fff}.login-footer{margin-top:50px;text-align:center;color:#83add0;font-size:.78rem}@media(max-width:520px){.login-page{padding:18px 16px}.login-card{padding:28px 22px 24px;border-radius:16px}.login-logo{width:64px;height:64px;margin-bottom:16px}.login-heading p{margin-bottom:24px}.login-footer{margin-top:38px}}@media(max-height:650px){.login-page{place-items:start center;padding-top:18px;padding-bottom:18px}.login-card{padding-top:24px;padding-bottom:20px}.login-logo{width:56px;height:56px;margin-bottom:12px}.login-heading p{margin:7px auto 18px}.login-form{gap:13px}.login-footer{margin-top:24px}}
