:root{--bg:#f6f7f9;--surface:#ffffff;--surface-soft:#eef6fb;--ink:#17212b;--muted:#687684;--line:#d9e1e8;--line-strong:#b9c6d1;--blue:#0073b5;--blue-dark:#00598f;--teal:#0f8f85;--green:#16734a;--amber:#a36500;--red:#b42318;--button-radius:12px;--container-radius:12px;--shadow:0 14px 34px rgba(20,35,51,0.08)}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;letter-spacing:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;min-width:0}button{cursor:pointer}.auth-page{align-items:center;display:grid;min-height:100vh;padding:32px}.auth-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--container-radius);box-shadow:var(--shadow);margin:0 auto;max-width:430px;padding:28px;width:100%}.auth-page-content{margin-inline:auto;max-width:430px;width:100%}.auth-page-content .auth-panel{margin:0}.auth-back-link{align-items:center;color:var(--blue-dark);display:inline-flex;font-size:15px;font-weight:700;gap:6px;margin:0 0 14px}.auth-back-link:hover{color:var(--blue);text-decoration:underline}.brand-mark{align-items:center;display:flex;gap:10px;margin-bottom:24px}.brand-logo{height:48px;object-fit:contain;width:48px}.brand-logo.compact{height:40px;width:40px}.brand-title{font-size:17px;font-weight:700}.brand-caption{color:var(--muted);font-size:13px;margin-top:2px}.form-stack{display:grid;grid-gap:14px;gap:14px}.password-requirements{background:#f4f8fb;border-left:3px solid var(--blue);color:var(--muted);font-size:13px;line-height:1.45;padding:10px 12px}.password-requirements strong{color:var(--ink)}.password-requirements ul{margin:5px 0 0;padding-left:18px}.password-field{position:relative}.password-field input{padding-right:46px}.password-visibility-toggle{align-items:center;background:transparent;border:0;border-radius:var(--button-radius);color:var(--muted);display:inline-flex;height:34px;justify-content:center;position:absolute;right:5px;top:25px;width:34px}.password-visibility-toggle:hover:not(:disabled){background:#edf4f8;color:var(--blue)}.auth-security-note{align-items:center;color:var(--muted);display:flex;font-size:13px;gap:7px;justify-content:center}.auth-security-note svg{color:var(--green);flex:0 0 auto}.field label,.field>span{color:var(--muted);display:block;font-size:12px;font-weight:700;margin-bottom:6px;text-transform:uppercase}.field{min-width:0}.field input,.field select,.field textarea{background:#fff;border:1px solid var(--line-strong);border-radius:6px;color:var(--ink);min-height:42px;min-width:0;padding:9px 11px;width:100%}.field input[type=file]{max-width:100%;overflow:hidden}.field textarea{min-height:90px;resize:vertical}.field-invalid .device-picker-trigger,.field-invalid input,.field-invalid select,.field-invalid textarea{background:#fff7f7;border-color:var(--red);box-shadow:0 0 0 3px rgba(180,35,24,.1)}.field-error{color:var(--red);line-height:1.4}.field-error,.field-hint{font-size:12px;margin:6px 0 0}.field-hint{color:var(--muted);line-height:1.35}.error-list{margin:8px 0 0;padding-left:18px}.device-picker{position:relative;width:100%}.device-picker-trigger{align-items:center;background:#fff;border:1px solid var(--line-strong);border-radius:var(--button-radius);color:var(--ink);display:flex;font:inherit;justify-content:space-between;min-height:42px;padding:9px 11px;text-align:left;width:100%}.device-picker-trigger:after{border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--muted);content:"";flex:0 0 auto;margin-left:10px}.device-picker-trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-picker-trigger.is-out-of-stock{background:#fff1f2;border-color:#fca5a5;color:#991b1b}.device-picker-menu{background:#fff;border:1px solid var(--line-strong);border-radius:10px;box-sizing:border-box;box-shadow:0 18px 42px rgb(15 23 42/18%);display:flex;flex-direction:column;height:var(--device-picker-height,380px);left:var(--device-picker-left,12px);overflow:hidden;padding:10px;position:fixed;top:var(--device-picker-top,12px);width:var(--device-picker-width,min(440px,calc(100vw - 24px)));z-index:60}.device-picker-menu.opens-upward{bottom:auto}.device-picker-search{border:1px solid var(--line-strong);border-radius:7px;color:var(--ink);font:inherit;min-height:38px;padding:8px 10px 8px 36px;width:100%}.device-picker-search-wrap{margin-bottom:10px;position:relative}.device-picker-search-icon{color:#5f7084;height:18px;left:11px;pointer-events:none;position:absolute;top:10px;width:18px}.device-picker-list{display:grid;flex:1 1 auto;grid-gap:0;gap:0;min-height:0;overflow-y:auto;padding-right:1px}.device-picker-toolbar{align-items:center;color:var(--muted);display:flex;font-size:12px;gap:10px;justify-content:space-between;margin:0 0 10px}.device-picker-filter{display:grid;grid-gap:5px;gap:5px}.device-picker-filter>span{color:var(--ink);font-weight:700}.device-picker-filter-options{display:inline-flex;max-width:100%}.device-picker-filter-options button{background:#fff;border:1px solid var(--line-strong);color:#405269;font:inherit;min-height:32px;padding:5px 12px;white-space:nowrap}.device-picker-filter-options button+button{border-left:0}.device-picker-filter-options button:first-child{border-radius:var(--button-radius) 0 0 var(--button-radius)}.device-picker-filter-options button:last-child{border-radius:0 var(--button-radius) var(--button-radius) 0}.device-picker-filter-options button.is-active{background:var(--blue);border-color:var(--blue);color:#fff}.device-picker-option{background:#fff;border:1px solid var(--line);border-radius:0;color:var(--ink);display:grid;font:inherit;grid-gap:10px;gap:10px;grid-template-columns:42px minmax(140px,1fr) max-content;min-height:64px;padding:7px 9px;text-align:left;width:100%}.device-picker-option:first-child{border-radius:7px 7px 0 0}.device-picker-option+.device-picker-option{border-top:0}.device-picker-option:last-child{border-radius:0 0 7px 7px}.device-picker-option.is-selected,.device-picker-option:hover{background:var(--surface-soft);border-color:var(--line)}.device-picker-option.is-out-of-stock{background:#fff1f2;border-color:#fecdd3;color:#991b1b}.device-picker-option.is-out-of-stock.is-selected,.device-picker-option.is-out-of-stock:hover{background:#ffe4e6;border-color:#fca5a5}.device-picker-option-title{display:block;font-weight:700;line-height:1.25;min-width:0;overflow-wrap:break-word;word-break:normal}.device-picker-option-copy{align-self:center;min-width:0}.device-picker-option-image{background:#f1f5f9;border:1px solid #d7e0ea;border-radius:4px;height:48px;object-fit:contain;width:42px}.device-picker-option-image-frame{align-self:center;height:48px;overflow:hidden;position:relative;width:42px}.device-picker-option-image.is-focal-source{height:80px;max-width:none;object-fit:fill;transform:translateY(-2px);width:142px}.device-picker-option-sku{color:var(--muted);display:block;font-size:12px;margin-top:2px;overflow-wrap:break-word;word-break:normal}.device-picker-option-meta{align-self:center;color:var(--muted);font-size:12px;font-weight:700;text-align:right;white-space:nowrap}.device-picker-option.is-out-of-stock .device-picker-option-meta{color:#b91c1c}.device-picker-empty{color:var(--muted);margin:0;padding:12px 6px}.device-picker-placement-note{border-top:1px solid var(--line);color:#58708c;font-size:12px;margin:9px 0 0;padding:9px 3px 0}@media (max-width:560px){.device-picker-toolbar{align-items:flex-start;flex-direction:column;gap:7px}.device-picker-filter-options button{font-size:11px;padding-inline:8px}.device-picker-list{min-height:0}.device-picker-option{gap:8px;grid-template-columns:36px minmax(0,1fr)}.device-picker-option-image,.device-picker-option-image-frame{height:42px;width:36px}.device-picker-option-image.is-focal-source{height:70px;width:124px}.device-picker-option-meta{grid-column:2;text-align:left;white-space:normal}}.btn{align-items:center;border:1px solid transparent;border-radius:var(--button-radius);display:inline-flex;font-weight:700;gap:8px;justify-content:center;min-height:40px;padding:9px 13px}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-dark)}.btn-primary:disabled{background:#5f9fc2;color:#fff;opacity:1}.btn-success,.btn-success:disabled{background:#e5f4ed;border-color:#abd9bf;color:var(--green)}.btn-success:disabled{opacity:1}.btn-secondary{background:#fff;border-color:var(--line-strong);color:var(--ink)}.btn-compact{font-size:12px;min-height:34px;padding:7px 10px;white-space:nowrap}.btn-meta{color:var(--muted);font-size:11px;font-weight:700}.btn-meta-inverted{color:rgba(255,255,255,.78)}.btn-ghost{background:transparent;border-color:transparent;color:var(--blue-dark);padding-left:0}.btn:disabled,.icon-btn:disabled{cursor:not-allowed;opacity:.45}.icon-btn{align-items:center;background:#fff;border:1px solid var(--line-strong);border-radius:var(--button-radius);color:var(--blue-dark);display:inline-flex;height:40px;justify-content:center;width:40px}.icon-btn:hover{background:var(--surface-soft)}.icon-btn.danger{color:var(--red)}.app-shell{align-items:start;display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh;transition:grid-template-columns .18s ease}.sidebar{background:#101820;border-radius:22px;color:#e9f0f6;display:flex;flex-direction:column;height:100vh;overflow-y:auto;padding:20px 14px;position:-webkit-sticky;position:sticky;top:0;transition:transform .18s ease,width .18s ease;z-index:30}.sidebar .brand-mark{margin:0 8px 22px;padding-right:48px}.sidebar .brand-mark>div{min-width:0}.sidebar .brand-caption{color:#9db0bf}.nav{display:grid;grid-gap:4px;gap:4px}.mobile-menu-close,.mobile-menu-trigger,.sidebar-toggle{align-items:center;border:0;border-radius:var(--button-radius);cursor:pointer;display:inline-flex;height:36px;justify-content:center;width:36px}.sidebar-toggle{background:transparent;color:#d6e1ea;position:absolute;right:10px;top:18px}.sidebar-toggle:hover{background:rgba(255,255,255,.1);color:#fff}.mobile-menu-close:hover{background:#1f3345;color:#fff}.mobile-menu-close,.mobile-menu-drag-handle,.mobile-menu-trigger,.sidebar-backdrop{display:none}.app-shell.sidebar-collapsed{grid-template-columns:60px minmax(0,1fr)}.app-shell.sidebar-collapsed .sidebar{overflow:hidden;padding:14px 8px}.app-shell.sidebar-collapsed .sidebar-toggle{left:50%;right:auto;top:14px;transform:translateX(-50%)}.app-shell.sidebar-collapsed .sidebar>:not(.sidebar-toggle):not(.mobile-menu-close){opacity:0;pointer-events:none;visibility:hidden}.nav-link{align-items:center;border-radius:var(--button-radius);color:#d6e1ea;display:flex;font-size:14px;gap:10px;min-height:38px;padding:9px 10px}.nav-link.active,.nav-link:hover{background:#1f3345;color:#fff}.sidebar-footer{color:#9db0bf;font-size:12px;margin-top:16px;padding:16px 8px 0}.session-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--container-radius);color:#e9f0f6;display:grid;grid-gap:3px;gap:3px;margin-bottom:12px;min-width:0;padding:10px}.session-card-trigger{align-items:center;cursor:pointer;font:inherit;grid-template-columns:minmax(0,1fr) auto;text-align:left;width:100%;border-radius:var(--button-radius)}.session-card-trigger:hover{background:rgba(255,255,255,.1);border-color:rgba(122,196,255,.45)}.session-card-copy{display:grid;grid-gap:3px;gap:3px;min-width:0}.account-menu-chevron{color:#c9d8e4;transition:transform .16s ease}.account-menu-chevron.open{transform:rotate(180deg)}.session-name{font-weight:800;overflow-wrap:anywhere}.session-meta{color:#9db0bf;font-size:12px}.account-menu{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--container-radius);display:grid;grid-gap:2px;gap:2px;margin-top:6px;padding:5px}.account-menu-item{align-items:center;background:transparent;border:0;border-radius:var(--button-radius);color:#d6e1ea;cursor:pointer;display:flex;font:inherit;font-size:14px;gap:10px;min-height:38px;padding:9px 10px;text-align:left;width:100%}.account-menu-item:hover:not(:disabled){background:#1f3345;color:#fff}.account-menu-item:disabled{color:#8da0af;cursor:not-allowed}.account-logout{border-top:1px solid rgba(255,255,255,.18);margin-top:20px;padding-top:16px}.account-logout .nav-link{border:1px solid rgba(0,115,181,.85);color:#87c9f3}.account-logout .nav-link:hover{background:rgba(0,115,181,.14);color:#c8eaff}.nav-button{background:transparent;border:0;color:inherit;font:inherit;text-align:left;width:100%}.main{min-height:100vh;min-width:0;padding:24px;position:relative}.proposal-navigation-loading{align-items:flex-start;background:var(--bg);display:flex;inset:0;justify-content:center;padding:56px 24px 24px;position:absolute;z-index:40}.proposal-navigation-loading .page-loading{margin:0}.validation-action{white-space:nowrap}.page-header{align-items:flex-start;display:flex;gap:18px;justify-content:space-between;margin-bottom:20px}.edit-back-link{align-items:center;border:1px solid var(--line-strong);border-radius:var(--button-radius);color:var(--blue-dark);display:inline-flex;font-size:14px;font-weight:800;gap:7px;margin-bottom:12px;min-height:38px;padding:8px 12px;text-decoration:none}.edit-back-link:hover{background:#eef7fd;border-color:var(--blue)}.profile-overview{display:grid;grid-gap:56px;gap:56px;grid-template-columns:minmax(280px,.86fr) minmax(360px,1.14fr);margin-top:56px;max-width:1040px}.profile-page .page-header h1{font-size:46px;margin-bottom:12px}.profile-page .page-header .subtle{font-size:18px}.profile-account,.profile-permissions{background:var(--surface);border:1px solid var(--line);border-radius:var(--container-radius);min-width:0;padding:40px}.profile-account{align-items:center;text-align:center}.profile-account,.profile-permissions{display:flex;flex-direction:column}.profile-account h2,.profile-permissions h2{align-self:stretch;font-size:21px;margin-bottom:28px;text-align:left}.profile-avatar{align-items:center;background:#edf2f7;border-radius:50%;color:#718096;display:flex;height:144px;justify-content:center;margin-bottom:20px;width:144px}.profile-identity{display:grid;grid-gap:8px;gap:8px;justify-items:center}.profile-identity strong{font-size:24px;line-height:1.2}.profile-identity>span:not(.profile-role){color:var(--muted);font-size:16px;overflow-wrap:anywhere}.profile-role{background:#e7f0ff;border:1px solid #c7d8fb;border-radius:6px;color:#1458a6;font-size:14px;font-weight:800;justify-self:center;margin-top:6px;padding:6px 10px}.profile-status{align-items:center;border-top:1px solid var(--line);color:var(--muted);display:flex;font-size:16px;gap:9px;margin-top:28px;justify-content:center;width:100%;padding-top:24px}.profile-permission-check,.profile-status.active{color:#168448}.profile-permission-list{display:grid;flex:1 1}.profile-permission{align-items:center;border-bottom:1px solid var(--line);display:grid;font-size:17px;grid-gap:16px;gap:16px;grid-template-columns:32px minmax(0,1fr) 28px;min-height:108px}.profile-permission:last-child{border-bottom:0}.profile-support-note{align-items:center;border-top:1px solid var(--line);color:var(--muted);display:flex;font-size:16px;gap:12px;margin:56px 0 0;max-width:1040px;padding-top:28px}.profile-support-note svg{color:var(--blue);flex:0 0 auto}.eyebrow{color:var(--blue-dark);font-size:12px;font-weight:800;letter-spacing:0;margin:0 0 6px;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{font-size:28px;line-height:1.18;margin-bottom:6px}h2{font-size:19px;line-height:1.25;margin-bottom:12px}h3{font-size:15px;line-height:1.3;margin-bottom:8px}.subtle{color:var(--muted);line-height:1.55;overflow-wrap:anywhere}.grid{display:grid;grid-gap:16px;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--container-radius);box-shadow:0 1px 0 rgba(16,24,32,.03);min-width:0;padding:18px;overflow-wrap:anywhere}.panel-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px;min-width:0}.metric{display:grid;grid-gap:5px;gap:5px}.metric-label{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.metric-value{font-size:26px;font-weight:800}.metric-note{color:var(--muted);font-size:13px}.table-wrap{overflow-x:auto}.proposal-history-cards{display:grid;grid-gap:0;gap:0}.proposal-history-empty{display:block;margin:0}.proposal-history-card{border-bottom:1px solid var(--line);display:grid;grid-gap:14px;gap:14px;padding:16px 0}.proposal-history-card:first-child{padding-top:0}.proposal-history-card:last-child{border-bottom:0;padding-bottom:0}.proposal-history-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.proposal-history-card-data dt,.proposal-history-card-id{color:var(--muted);display:block;font-size:11px;font-weight:800;text-transform:uppercase}.proposal-history-card-company{font-size:16px;font-weight:800;line-height:1.3;margin:4px 0 0}.proposal-history-card-data{display:grid;grid-gap:12px 18px;gap:12px 18px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.proposal-history-card-data div{min-width:0}.proposal-history-card-data dd{font-size:14px;line-height:1.35;margin:4px 0 0;overflow-wrap:break-word}.proposal-history-card-data dd.proposal-history-card-value{font-size:16px;font-weight:800}.proposal-history-card-actions{border-top:1px solid var(--line);padding-top:14px}.proposal-history-card-actions .export-actions-stack{align-items:flex-start;display:flex;flex-wrap:wrap;gap:8px}.proposal-history-card-actions .export-link-group{flex:1 1 100%}.proposal-history-card .approval-notes{border-top:1px solid var(--line);margin-top:2px;padding-top:14px}.table-note{display:inline-block;min-width:120px}table{border-collapse:collapse;min-width:720px;width:100%}td,th{border-bottom:1px solid var(--line);font-size:13px;padding:11px 10px;text-align:left;vertical-align:middle;overflow-wrap:anywhere}th{color:var(--muted);font-size:11px;text-transform:uppercase}.status,th{font-weight:800}.status{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;min-height:26px;padding:4px 9px}.status-good{background:#e5f4ed;color:var(--green)}.status-warn{background:#fff4df;color:var(--amber)}.status-bad{background:#fde8e7;color:var(--red)}.status-info{background:#e6f2fb;color:var(--blue-dark)}.upload-zone{align-items:flex-start;border:1px dashed var(--line-strong);border-radius:var(--container-radius);display:grid;grid-template-columns:24px minmax(0,1fr);grid-gap:12px;gap:12px;min-height:86px;padding:16px;min-width:0}.upload-zone>div{flex:1 1 220px;min-width:0}.upload-zone svg{color:var(--blue);flex:0 0 auto}.file-control{align-items:center;display:grid;grid-gap:8px;gap:8px;grid-template-columns:max-content minmax(0,1fr);max-width:100%;min-width:0}.file-input-hidden{clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.file-button{min-width:0;white-space:nowrap}.file-name{color:var(--ink);font-size:13px;min-width:0;overflow-wrap:anywhere}.upload-control-stack{display:grid;grid-gap:8px;gap:8px;min-width:0}.image-map-form{display:grid;grid-gap:14px;gap:14px}.image-map-actions,.image-map-summary{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.image-map-results{border:1px solid var(--line);border-radius:var(--container-radius);overflow:hidden}.image-map-results-header{align-items:center;background:#f8fafc;border-bottom:1px solid var(--line);color:var(--muted);display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px;text-transform:none}.image-map-results-header strong{color:var(--ink)}.image-map-list{display:grid;max-height:320px;overflow:auto}.image-map-option{align-items:center;background:#fff;border:0;border-bottom:1px solid var(--line);color:var(--ink);display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) max-content;padding:10px;text-align:left;width:100%}.image-map-option:last-child{border-bottom:0}.image-map-option.selected,.image-map-option:hover{background:var(--surface-soft)}.image-map-check{align-items:center;border:1px solid var(--border-strong);border-radius:3px;display:inline-flex;height:16px;justify-content:center;margin-right:8px;vertical-align:-2px;width:16px}.image-map-option.selected .image-map-check{background:var(--blue);border-color:var(--blue);color:white}.batch-details summary{color:var(--text);cursor:pointer;font-weight:600}.batch-details ul{margin:8px 0 0;padding-left:18px}.batch-details li{margin:3px 0;overflow-wrap:anywhere}.info-tooltip{align-items:center;color:var(--blue);cursor:help;display:inline-flex;margin-left:6px;vertical-align:middle}.bulk-actions-bar{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.sr-only{clip:rect(0,0,0,0);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media (max-width:680px){.bulk-actions-bar{align-items:stretch;flex-direction:column}}.image-map-option.selected{box-shadow:inset 3px 0 0 var(--blue)}.image-map-option small{color:var(--muted);display:block;font-size:12px;margin-top:3px;overflow-wrap:anywhere}.image-map-empty{color:var(--muted);padding:12px;text-transform:none}.upload-feedback{font-size:12px;line-height:1.35;margin:0}.upload-feedback.success{color:var(--green)}.upload-feedback.error{color:var(--red)}.process-import-control{align-items:flex-end;display:grid;grid-gap:8px;gap:8px;justify-items:end;min-width:min(100%,220px)}.check-list{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0}.check-list li{align-items:center;display:flex;gap:9px;list-style:none}.inline-alert{border-left:4px solid var(--blue);border-radius:6px;padding:12px 14px}.inline-alert.warning{background:#fff8ed;border-color:var(--amber)}.inline-alert.success{background:#eef9f3;border-color:var(--green)}.inline-alert.critical{background:#fff0ef;border-color:var(--red)}.proposal-alert{align-items:flex-start;display:flex;gap:2px}.proposal-alert p{margin:5px 0 0}.proposal-alert-action{color:var(--ink);font-weight:600}.alert-focus-link{background:transparent;border:0;color:var(--blue-dark);cursor:pointer;font:inherit;font-size:12px;font-weight:800;margin-top:8px;padding:0;text-decoration:underline}.approval-notes{border-top:1px solid var(--line);display:grid;grid-gap:8px;gap:8px;margin-top:16px;padding-top:14px}.approval-notes.compact{border-top:0;margin-top:0;padding-top:0}.approval-note{background:#f7fafc;border:1px solid var(--line);border-radius:var(--container-radius);display:grid;grid-gap:4px;gap:4px;padding:10px 12px}.approval-note p{margin:0}.approval-note span{color:var(--muted);font-size:12px}.adjustment-chat{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.adjustment-chat-title{align-items:flex-end;display:flex;justify-content:space-between;margin-bottom:12px}.adjustment-chat-title .eyebrow{margin-bottom:2px}.adjustment-chat-title h3{font-size:18px;margin:0}.adjustment-topic-list{display:grid;grid-gap:10px;gap:10px}.adjustment-topic{background:#fff;border:1px solid var(--line);border-radius:var(--container-radius);overflow:hidden}.adjustment-topic.is-open{border-color:#87b9e7;box-shadow:0 3px 16px rgba(19,72,122,.08)}.adjustment-topic-header{align-items:center;background:#fff;border:0;color:var(--ink);cursor:pointer;display:grid;grid-gap:10px;gap:10px;grid-template-columns:auto minmax(120px,1fr) auto minmax(160px,auto) auto;padding:13px 14px;text-align:left;width:100%}.adjustment-topic-header:hover{background:#f8fbfe}.adjustment-avatar,.adjustment-topic-icon{align-items:center;background:#e8f3ff;border:1px solid #cce2f8;border-radius:50%;color:var(--blue-dark);display:inline-flex;flex:0 0 auto;height:34px;justify-content:center;width:34px}.adjustment-avatar{background:#edf5e9;border-color:#d5e7ce;color:#28703f;font-size:12px;font-weight:800}.adjustment-message.is-outgoing .adjustment-avatar{background:#e8f3ff;border-color:#cce2f8;color:var(--blue-dark)}.adjustment-topic-summary,.adjustment-topic-summary span{display:grid;grid-gap:2px;gap:2px}.adjustment-topic-summary strong{font-size:15px}.adjustment-topic-latest,.adjustment-topic-summary span{color:var(--muted);font-size:12px}.adjustment-topic-latest{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adjustment-topic-status{background:#fff0d5;border-radius:999px;color:#955700;font-size:12px;font-weight:800;padding:5px 9px;white-space:nowrap}.adjustment-topic-status.is-answered{background:#dff4e5;color:#1c7342}.adjustment-topic-status.is-resubmitted{background:#e7f2ff;color:#0d5e9c}.adjustment-topic-body{border-top:1px solid var(--line)}.adjustment-message-list{display:grid;grid-gap:12px;gap:12px;padding:16px}.adjustment-message{align-items:flex-start;display:flex;gap:9px;max-width:86%}.adjustment-message.is-outgoing{justify-self:end;text-align:right}.adjustment-message-content{background:#f9fafb;border:1px solid #d8e0e7;border-radius:7px;padding:10px 12px}.adjustment-message.is-outgoing .adjustment-message-content{background:#f0f7ff;border-color:#9fcbf5}.adjustment-message-meta{align-items:baseline;display:flex;flex-wrap:wrap;gap:6px}.adjustment-message.is-outgoing .adjustment-message-meta{justify-content:flex-end}.adjustment-message-meta span{color:var(--muted);font-size:12px}.adjustment-message-content p,.adjustment-private-message p{margin:7px 0 0;overflow-wrap:anywhere}.adjustment-private-message{align-items:flex-start;background:#faf8ff;border:1px solid #d7ceff;border-radius:7px;display:flex;gap:11px;padding:13px}.adjustment-private-message>svg{color:#5543b8;flex:0 0 auto;margin-top:2px}.adjustment-private-message div{display:grid;grid-gap:3px;gap:3px}.adjustment-private-message small,.adjustment-private-message span{color:#655b8d;font-size:12px}.adjustment-composer{background:#fbfdff;border-top:1px solid var(--line);display:grid;grid-gap:9px;gap:9px;padding:14px 16px}.adjustment-composer-label{color:var(--muted);font-size:13px}.adjustment-composer-row{align-items:stretch;display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) auto}.adjustment-composer textarea,.adjustment-private-composer textarea{min-height:58px;resize:vertical}.adjustment-private-trigger{align-items:center;background:transparent;border:1px dashed #b8b0e8;border-radius:var(--button-radius);color:#4e3ca7;cursor:pointer;display:inline-flex;font:inherit;font-size:13px;font-weight:700;gap:7px;justify-self:start;padding:8px 10px}.adjustment-private-composer{background:#faf8ff;border:1px solid #d7ceff;border-radius:6px;display:grid;grid-gap:9px;gap:9px;padding:12px}.adjustment-chat-closed{margin:0;padding:13px 16px}@media (max-width:720px){.adjustment-topic-header{align-items:start;grid-template-columns:auto minmax(0,1fr) auto}.adjustment-topic-status{grid-column:2;justify-self:start}.adjustment-topic-latest{grid-column:2/-1;white-space:normal}.adjustment-message{max-width:100%}.adjustment-composer-row{grid-template-columns:1fr}.adjustment-composer-row .btn{justify-content:center}}.spinner{animation:spin .8s linear infinite;border:3px solid rgba(0,115,181,.2);border-top:3px solid var(--blue);border-radius:999px;display:inline-block;height:24px;width:24px}.spinner-inline{border-width:2px;height:16px;width:16px}.spin-icon{animation:spin .8s linear infinite}.error-text{color:var(--red)}.export-actions-stack{display:grid;grid-gap:8px;gap:8px;justify-items:start}.working-overlay{align-items:center;background:rgba(246,247,249,.72);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;inset:0;justify-items:center;padding:24px;position:fixed;z-index:80}.page-loading,.working-card{align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--container-radius);box-shadow:var(--shadow);display:flex;gap:12px;padding:16px 18px}.working-card{flex-direction:column;max-width:360px;text-align:center}.working-card span:last-child{color:var(--muted);font-size:13px}.page-loading{margin:32px auto;max-width:320px}@keyframes spin{to{transform:rotate(1turn)}}.builder-layout{align-items:start;display:grid;grid-gap:18px;gap:18px;grid-template-columns:minmax(0,1fr) minmax(320px,.42fr);min-width:0}.form-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.line-item{align-items:center;display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) 96px}.quote-lines-panel{position:relative}.quote-lines{display:grid;grid-gap:12px;gap:12px}.quote-line{border:1px solid var(--line);border-radius:var(--container-radius);display:grid;grid-gap:10px;gap:10px;padding:14px;position:relative}.quote-line-index{align-items:center;background:var(--blue);border-radius:999px;color:#fff;display:flex;font-size:12px;font-weight:800;height:24px;justify-content:center;left:14px;position:absolute;top:14px;width:24px}.quote-line-grid{align-items:end;display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(82px,92px) 40px;min-width:0;padding-left:34px}.quote-line-grid.without-device{grid-template-columns:minmax(0,1fr) minmax(82px,92px) 40px}.quote-line-meta{color:var(--muted);display:flex;flex-wrap:wrap;font-size:12px;gap:8px;padding-left:34px}.quote-line-meta.standalone{padding-left:0}.quote-line-authorization{margin-left:34px;max-width:330px}.summary-row-emphasis{border-top:1px solid var(--line);margin-top:6px;padding-top:10px}.quote-line-meta span{background:var(--surface-soft);border-radius:999px;padding:5px 8px}.check-grid{display:flex;flex-wrap:wrap;gap:8px}.check-option{align-items:center;background:var(--surface-soft);border:1px solid #c8dfed;border-radius:6px;color:var(--blue-dark);display:inline-flex;font-size:13px;font-weight:700;gap:7px;min-height:42px;padding:8px 10px}.field .check-option input{min-height:0;width:auto}.floating-add{display:flex;justify-content:flex-end;margin-top:14px}.image-map-row{align-items:end;display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) auto;margin-top:12px;min-width:0}.row-actions{display:flex;gap:8px;justify-content:flex-end}.summary-row{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:9px 0}.summary-row strong{font-size:17px}.pill-grid{display:flex;flex-wrap:wrap;gap:8px}.pill{background:var(--surface-soft);border:1px solid #c8dfed;border-radius:999px;color:var(--blue-dark);font-size:12px;font-weight:800;padding:6px 9px}.section-actions{display:flex;flex-wrap:wrap;gap:10px}.section-actions .btn{flex:1 1 190px}.export-link-group{display:flex;flex-wrap:wrap;gap:8px}.export-kind-badge{border-radius:999px;font-size:10px;font-weight:800;padding:3px 6px}.export-kind-badge.preliminary{background:#fff7ed;color:#9a3412}.export-kind-badge.final{background:#e8f7ee;color:#0f766e}.modal-backdrop{align-items:center;background:rgba(8,18,28,.54);display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:50}.modal-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--container-radius);box-shadow:var(--shadow);max-height:min(760px,calc(100vh - 48px));max-width:620px;overflow-y:auto;padding:20px;width:min(100%,620px)}.modal-panel-wide{max-height:min(900px,calc(100vh - 32px));max-width:1120px;width:min(100%,1120px)}.modal-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.pdf-preview-frame{background:#fff;border:1px solid var(--line);border-radius:6px;height:min(760px,calc(100vh - 170px));min-height:520px;width:100%}.modal-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:18px}@media (max-width:1280px){.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.image-map-row{grid-template-columns:1fr}}@media (max-width:1450px){.builder-layout{grid-template-columns:1fr}}@media (max-width:1180px){.quote-line-grid:not(.without-device){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.quote-line-grid:not(.without-device)>.field:nth-of-type(3){grid-column:1;max-width:160px}.quote-line-grid:not(.without-device)>.icon-btn{grid-column:2;justify-self:end}}@media (max-width:1050px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar{border-radius:0 0 22px 22px;box-shadow:0 18px 34px rgba(8,18,28,.24);height:auto;left:0;max-height:calc(100dvh - 20px);max-width:none;min-height:0;overflow-y:auto;overscroll-behavior:contain;position:fixed;right:0;top:0;transform:translateY(-104%);width:100%;z-index:60}.app-shell.mobile-sidebar-open .sidebar{transform:translateY(0)}.app-shell.sidebar-collapsed .sidebar{overflow-y:auto;padding:20px 14px}.app-shell.sidebar-collapsed .sidebar>:not(.sidebar-toggle):not(.mobile-menu-close){opacity:1;pointer-events:auto;visibility:visible}.sidebar-toggle{display:none}.mobile-menu-trigger{background:var(--blue);box-shadow:0 5px 14px rgba(0,89,143,.22);color:#fff;display:inline-flex;left:auto;position:fixed;right:16px;top:14px;z-index:45}.mobile-menu-trigger:hover{background:var(--blue-dark)}.mobile-menu-close{background:rgba(255,255,255,.06);color:#d6e1ea;display:inline-flex;position:absolute;right:12px;top:14px}.mobile-menu-drag-handle{align-items:center;background:transparent;border:0;cursor:-webkit-grab;cursor:grab;display:flex;flex:0 0 34px;justify-content:center;margin:8px 0 0;padding:0;touch-action:none;width:100%}.mobile-menu-drag-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.mobile-menu-drag-handle span{background:rgba(214,225,234,.62);border-radius:999px;display:block;height:4px;width:58px}.sidebar-backdrop{background:rgba(8,18,28,.45);border:0;display:block;inset:0;position:fixed;z-index:50}.builder-layout,.grid-2,.grid-4,.nav{grid-template-columns:1fr}.proposal-history-card-data{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-overview{gap:28px;grid-template-columns:1fr;margin-top:32px}.profile-permissions{padding:28px}.main{padding-top:68px}}@media (max-width:900px){.quote-line{padding:14px}.quote-line-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding-left:34px}.quote-line-grid.without-device{grid-template-columns:minmax(0,1fr) minmax(82px,120px)}.quote-line-grid .icon-btn{justify-self:end}.quote-line-grid>.field:nth-of-type(3){max-width:140px}}@media (max-width:720px){.form-grid,.grid-3{grid-template-columns:1fr}}@media (max-width:640px){.main{padding:16px}.page-header{display:grid}.edit-back-link{background:var(--blue);border-color:var(--blue);border-radius:12px;color:#fff;justify-content:center;margin-bottom:14px;min-height:44px;padding:0;width:44px}.edit-back-link:hover{background:var(--blue-dark);border-color:var(--blue-dark)}.edit-back-link span{display:none}.file-control,.form-grid,.image-map-row,.line-item,.nav,.quote-line-grid{grid-template-columns:1fr}.quote-line-grid,.quote-line-meta{padding-left:0;padding-top:28px}.quote-line-authorization{margin-left:0}.quote-line-index{left:14px}.quote-line-grid>.field:nth-of-type(3){max-width:none}.floating-add,.section-actions{display:grid}.proposal-history-card-header{align-items:stretch;flex-direction:column}.proposal-history-card-header .status{align-self:flex-start}.proposal-history-card-data{grid-template-columns:1fr}.proposal-history-card-actions .btn,.proposal-history-card-actions .export-link-group .btn{flex:1 1 100%;width:100%}.profile-avatar{height:112px;width:112px}.profile-account,.profile-permissions{padding:24px}.profile-page .page-header h1{font-size:34px}.profile-page .page-header .subtle{font-size:16px}.profile-identity strong{font-size:21px}.profile-permission{font-size:16px;min-height:90px}.profile-support-note{align-items:flex-start;font-size:15px;margin-top:32px}}@media (min-width:1200px){.builder-layout{grid-template-columns:minmax(0,1fr) minmax(300px,360px)}.builder-layout>aside{position:-webkit-sticky;position:sticky;top:20px}}@media (min-width:1200px) and (max-width:1450px){.app-shell{grid-template-columns:224px minmax(0,1fr)}.sidebar{padding-inline:12px}.main{padding:20px}}@media (min-width:1051px) and (max-width:1199px){.app-shell{grid-template-columns:216px minmax(0,1fr)}.sidebar{padding-inline:10px}.main{padding:20px}.builder-layout{grid-template-columns:1fr}.builder-layout>aside{position:static}}@media (max-width:1050px){.table-wrap{-webkit-overflow-scrolling:touch}}