:root{font-family:Montserrat,Segoe UI,Arial,sans-serif;color:#1d2326;background:#f6f8f8;--brand: #3bbfad;--brand-dark: #008080;--ink: #1d2326;--muted: #667075;--line: #dfe6e8;--panel: #ffffff;--soft: #f2f6f6;--gray: #53565a;--danger: #a64040;--shadow: 0 16px 42px rgba(29, 35, 38, .08)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--soft)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--soft)}.auth-panel{width:min(420px,100%);display:grid;gap:18px;padding:28px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:var(--shadow)}.auth-logo{width:180px;height:auto}.auth-panel h1{margin:0;font-size:24px;letter-spacing:0}.auth-form{display:grid;gap:14px}.auth-error{margin:0;color:var(--danger);font-size:13px}button,input,select{font:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;min-height:40px;padding:0 14px;background:var(--brand-dark);color:#fff;font-size:13px;font-weight:700;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button.secondary{background:var(--brand);color:#073b38}button.ghost{background:#eef3f3;color:var(--ink);border:1px solid var(--line)}button.danger{background:var(--danger);color:#fff}input,select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:8px;padding:0 11px;background:#fff;color:var(--ink);outline-color:var(--brand)}label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.app-shell{min-height:100vh;display:grid;grid-template-columns:264px minmax(0,1fr);transition:grid-template-columns .18s ease}.app-shell.sidebar-collapsed{grid-template-columns:78px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:18px;padding:18px;border-right:1px solid var(--line);background:#fff;transition:padding .18s ease}.brand-lockup{display:flex;align-items:center;min-height:54px}.brand-logo{display:block;width:176px;height:auto;object-fit:contain}.brand-mark{display:none;width:42px;height:42px;object-fit:contain}.sidebar-toggle{width:100%;min-height:36px;background:#eef3f3;color:var(--ink);border:1px solid var(--line);padding:0}.nav-list{display:grid;gap:6px}.nav-list button{justify-content:flex-start;width:100%;background:transparent;color:var(--gray);font-weight:700;white-space:nowrap}.nav-list button.active{background:#e6f8f5;color:#005457}.sidebar-collapsed .sidebar{padding:14px}.sidebar-collapsed .brand-lockup{justify-content:center}.sidebar-collapsed .brand-logo,.sidebar-collapsed .nav-list button span{display:none}.sidebar-collapsed .brand-mark{display:block}.sidebar-collapsed .brand-mark{width:40px;height:40px}.sidebar-collapsed .nav-list button{justify-content:center;width:50px;min-height:44px;padding:0}.sidebar-collapsed .sidebar-toggle{width:50px}.workspace{min-width:0;padding:18px 22px 36px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.topbar h1,.page-header h2{margin:0;color:var(--ink);letter-spacing:0}.topbar h1{font-size:24px}.topbar p,.page-header p{margin:4px 0 0;color:var(--muted);font-size:13px}.global-search{width:min(360px,100%);position:relative}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:min(460px,100%)}.language-select select{min-width:74px;height:40px}.global-search svg,.input-with-icon svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--muted)}.global-search input,.input-with-icon input{padding-left:36px}.page-grid{display:grid;gap:14px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.panel{min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:var(--shadow);padding:16px}.filters{display:grid;grid-template-columns:220px minmax(0,1fr);gap:12px;align-items:end}.filters.three{grid-template-columns:minmax(260px,1fr) 180px 180px}.material-search-primary{max-width:980px;margin:0 auto 16px}.material-search-primary .input-with-icon input{min-height:48px;font-size:15px}.material-search-filters{grid-template-columns:220px minmax(320px,520px);justify-content:center;align-items:start}.input-with-icon{position:relative}.hint-line{margin-top:10px;color:var(--muted);font-size:12px}.muted{color:var(--muted)}.combo-stack{position:relative;display:grid;gap:6px}.multi-select-list{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;max-height:132px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff;padding:4px;box-shadow:var(--shadow)}.compact-check{min-height:30px;padding:4px 6px;border-radius:6px;font-size:12px;color:var(--text)}.compact-check:hover{background:var(--soft)}.empty-option{padding:10px;color:var(--muted);font-size:12px}.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.table-panel{padding:0;overflow:visible}.table-toolbar{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line)}.tenant-units-toolbar{border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.tenant-units-toolbar .panel-note{margin:3px 0 0}.pagination{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;font-weight:700}.icon-button{width:34px;min-height:34px;padding:0;background:#eef3f3;color:var(--ink);border:1px solid var(--line)}.icon-button.danger{color:var(--danger);background:#fff2f2;border-color:#a6404047}.source-link-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:72px;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#eef3f3;color:var(--ink);font-size:12px;font-weight:800;white-space:nowrap}.data-state{display:flex;align-items:center;gap:8px;margin:14px;min-height:42px;border:1px dashed var(--line);border-radius:8px;padding:10px 12px;color:var(--muted);font-size:13px}.data-state.error{color:var(--danger);border-color:#a6404052}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.data-table-wrap{overflow-x:auto;overflow-y:visible;max-height:none}.data-table-wrap.tall,.data-table-wrap.medium{max-height:none}.data-table-wrap.salary-tax-wrap{max-height:none;overflow-x:auto;overflow-y:visible}.panel-note{margin:-4px 0 12px;color:var(--muted);font-size:12px;line-height:1.45}.data-table{width:100%;min-width:1180px;border-collapse:collapse;table-layout:fixed}.data-table th{position:sticky;top:0;z-index:1;background:#f8fbfb;color:var(--gray);font-size:11px;text-transform:uppercase}.data-table th,.data-table td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top;font-size:12px;word-break:break-word}.data-table td strong,.data-table td span{display:block}.data-table td span{margin-top:4px;color:var(--muted);font-size:11px}.data-table tr.selected-row td{background:#e6f8f5}.data-table tr.stale-row td{background:#fff8e8}.button-row{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.row-actions{display:flex;align-items:center;gap:8px}.breadcrumbs{display:flex;align-items:center;gap:8px;margin-bottom:18px;color:var(--muted);font-size:13px}.breadcrumbs button{min-height:36px;border-radius:8px;background:#eef8f6;color:#005457;border:1px solid transparent;padding:0 14px}.breadcrumbs button:hover{border-color:#3bbfad73;background:#e4f7f4}.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(184px,184px));gap:14px;align-items:stretch}.folder-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;width:184px;min-height:150px;border:1px solid var(--line);background:#fbfdfd;color:var(--ink);text-align:center;padding:18px 14px;box-shadow:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}.folder-tile.selected{border-color:var(--brand-dark);box-shadow:inset 0 0 0 1px var(--brand-dark),0 12px 28px #0080801f}.folder-tile:hover{transform:translateY(-1px);border-color:#3bbfada6;background:#fff;box-shadow:0 14px 30px #1d232614}.folder-icon{width:42px;height:34px;display:grid;place-items:center;color:var(--ink)}.folder-tile.with-logo{min-height:172px;padding-top:16px}.folder-tile.with-logo .folder-icon{width:96px;height:62px}.folder-logo{width:92px;height:58px;object-fit:contain;border-radius:6px;border:1px solid var(--line);background:#fff;padding:5px}.folder-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;min-height:34px;color:var(--ink);font-size:14px;font-weight:800;line-height:1.25}.folder-meta{color:var(--muted);font-size:12px;font-weight:700}.modal-backdrop{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:20px;background:#1d232661}.modal-panel{width:min(760px,100%);max-height:88vh;overflow:auto;border-radius:8px;background:#fff;box-shadow:var(--shadow)}.modal-panel.small{width:min(520px,100%)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}.form-grid.one{grid-template-columns:1fr}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:0 14px 14px}.check-row{display:flex;min-height:40px;align-items:center;gap:8px}.check-row input{width:18px;min-height:18px}.split-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:14px}.technical-card-layout{grid-template-columns:minmax(420px,.8fr) minmax(0,1.2fr)}.technical-card-detail{display:grid;gap:14px;align-content:start}.technical-detail-page{gap:16px}.technical-detail-page .page-header{align-items:center}.compact-nav-button{width:fit-content;min-height:34px;margin-bottom:10px}.technical-detail-grid{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start}.technical-summary{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px}.technical-summary.rich{grid-template-columns:repeat(4,minmax(170px,1fr))}.technical-summary .metric-card{border:1px solid var(--line);border-radius:8px;padding:12px;background:#f8fbfb}.technical-summary h3{margin:0 0 8px;font-size:14px}.technical-summary p{display:flex;justify-content:space-between;gap:12px;margin:8px 0 0}.technical-summary span,.technical-summary strong{display:block}.technical-summary span{color:var(--muted);font-size:11px;font-weight:700}.technical-summary strong{margin-top:6px;font-size:14px}.technical-line-tools{display:grid;grid-template-columns:minmax(160px,1fr) minmax(220px,1.4fr) 92px auto;gap:10px;align-items:end;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fbfdfd}.technical-search-block{display:grid;gap:10px;border:2px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:8px;background:#f4fbfb;overflow:hidden;box-shadow:inset 4px 0 0 var(--accent)}.technical-search-block .table-toolbar{min-height:auto;align-items:end;border-bottom:1px solid var(--line);background:#eef8f8;padding:16px}.technical-search-block .table-toolbar strong{font-size:18px}.technical-result-list{display:grid;gap:8px;padding:0 12px 12px}.technical-result-row{display:grid;grid-template-columns:minmax(0,1fr) 90px 130px 40px;gap:10px;align-items:center;min-height:48px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#fff;font-size:12px}.technical-result-row strong,.technical-result-row span{display:block}.technical-result-row span{color:var(--muted);font-size:11px}.technical-percentage-panel{padding:0;overflow:hidden}.technical-percentage-panel .form-grid{padding:14px}.technical-lines{display:grid;gap:10px;overflow:auto;padding-top:8px}.technical-lines .data-table{min-width:1100px;table-layout:fixed}.technical-lines .data-table th:first-child,.technical-lines .data-table td:first-child{width:280px}.technical-line-name{display:grid;gap:5px;max-width:100%;line-height:1.25}.technical-line-name strong,.technical-line-name span{white-space:normal;overflow-wrap:break-word}.technical-line-supplier{width:fit-content;max-width:100%;border:1px solid var(--line);border-radius:6px;background:#eef8f7;color:var(--muted);padding:2px 6px;font-size:12px;font-weight:600}.labor-mode-dialog{display:grid;gap:12px;padding:14px}.labor-mode-title{display:grid;gap:4px}.labor-mode-title span{color:var(--muted);font-size:12px}.labor-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.labor-mode-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.labor-mode-tabs button.active{border-color:var(--accent);background:#e9f7f6;color:var(--ink)}.labor-mode-tabs button:not(.active):hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:#f7fbfb}.technical-card-list-table{min-width:1480px}.link-button{border:0;background:transparent;color:var(--accent);padding:0;min-height:auto;font:inherit;text-align:left;cursor:pointer}.muted-cell{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-weight:600}.compact-form{padding-left:0;padding-right:0}.compact-table{margin-top:12px}.checkout-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.firm-name-link{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;max-width:100%;color:var(--ink)}.firm-name-link:hover strong{color:var(--accent)}.firm-logo{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:6px;background:#fff;overflow:hidden;color:var(--brand-dark);font-size:11px;font-weight:800;flex:0 0 auto}.firm-logo img{width:100%;height:100%;object-fit:contain;padding:2px}.firm-logo-placeholder{background:#e8f6f4}.table-link strong,.table-link span{display:block}.material-detail-summary{margin-bottom:4px}.data-table.compact{min-width:620px}.mapping-list{display:grid;gap:8px;padding:14px}.mapping-row{display:grid;grid-template-columns:180px minmax(0,1fr) 80px;gap:8px;border:1px solid var(--line);border-radius:8px;padding:8px;font-size:12px}.quote-table input{min-height:34px}.quote-workbook-page{min-height:calc(100vh - 116px);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:14px;color:var(--ink);font-family:Montserrat,Segoe UI,Arial,sans-serif}.quote-workbook-toolbar{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.quote-breadcrumb{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--muted);font-size:13px;font-weight:700}.quote-breadcrumb a,.quote-breadcrumb span{display:inline-flex;align-items:center;gap:7px;min-height:30px;color:var(--ink);text-decoration:none}.quote-breadcrumb a:after{content:"/";margin-left:6px;color:#9aa8a8}.quote-breadcrumb a:hover{color:var(--brand-dark)}.quote-ribbon{display:grid;grid-template-rows:auto 1fr;gap:8px;min-height:94px;padding:8px 10px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);overflow:visible}.quote-ribbon-tabs{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--line)}.quote-ribbon-tabs button{min-height:30px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);padding:0 10px;font-size:12px;font-weight:900}.quote-ribbon-tabs button.active{color:#005457;border-bottom-color:var(--brand)}.quote-ribbon-panel{display:flex;align-items:stretch;gap:12px}.ribbon-section{display:flex;align-items:center;min-width:max-content;padding:0;border-right:0}.ribbon-section:first-child{padding-left:0}.ribbon-section:last-of-type{border-right:0}.ribbon-controls{display:flex;align-items:center;gap:6px}.ribbon-checks{display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:940px}.ribbon-checks label{display:inline-flex;align-items:center;gap:5px;color:var(--ink);font-size:12px;font-weight:800;white-space:nowrap}.ribbon-button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:7px;padding:0 8px;background:transparent;color:var(--ink);font-size:12px;font-weight:800;text-decoration:none;white-space:nowrap}.ribbon-button:hover:not(:disabled),.ribbon-button.active{border-color:#00808040;background:#e6f8f5;color:#005457}.ribbon-button:disabled{color:#98a5a5;cursor:not-allowed}.ribbon-button.toggle.active{background:var(--brand-dark);color:#fff}.ribbon-select,.ribbon-number{height:34px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 9px;color:var(--ink);font-size:12px;font-weight:800}.ribbon-select{width:130px}.ribbon-number{width:52px}.quote-ribbon .workbook-filter{width:min(320px,100%);margin-left:auto}.quote-toolbar-grouped{align-items:stretch;flex-wrap:wrap}.quote-toolbar-section{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-right:10px;border-right:1px solid var(--line)}.quote-toolbar-section:last-of-type{border-right:0}.overhead-toolbar-section{border-right:0}.overhead-toolbar-section select,.overhead-toolbar-section input{height:36px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 10px;font-weight:700}.overhead-toolbar-section select{min-width:190px}.overhead-toolbar-section input{width:74px}.workbook-button{min-height:38px;display:inline-flex;align-items:center;gap:8px;border-radius:8px;padding:0 12px;background:var(--brand-dark);color:#fff;text-decoration:none;font-size:13px;font-weight:700}.workbook-button.active{background:#e6f8f5;color:#005457;border:1px solid rgba(0,128,128,.25)}.workbook-button.ghost{background:#eef3f3;color:var(--ink);border:1px solid var(--line)}.workbook-filter{width:min(460px,100%);display:flex;align-items:center;gap:10px}.workbook-filter input{min-width:240px;border-color:var(--line);border-radius:8px}.workbook-filter span,.workbook-footer{color:var(--muted);font-size:13px}.workbook-grid-wrap{height:calc(100vh - 248px);overflow-y:auto;overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.workbook-grid{min-width:1960px;width:100%;border-collapse:collapse;table-layout:fixed}.workbook-grid th,.workbook-grid td{border:1px solid #d7d7d7;padding:7px;vertical-align:top;font-size:12px;overflow-wrap:anywhere;white-space:normal}.workbook-grid th{position:sticky;top:0;z-index:2;background:#e7f4f2;text-align:left;font-weight:700;color:var(--gray)}.workbook-grid input{min-height:36px;border:1px solid var(--line);border-radius:6px;padding:0 7px}.workbook-grid td.num input{text-align:right;font-variant-numeric:tabular-nums}.workbook-grid td.readonly-money{text-align:right;color:var(--gray);font-variant-numeric:tabular-nums;background:#f6fbfa}.workbook-grid tr.section td{background:#dff8f4;font-weight:700}.workbook-grid tr.section.level-0 td{background:#c7fff3}.workbook-grid tr.section.level-1 td{background:#e1f3f0}.workbook-grid tr.section.level-2 td{background:#f3f6f6}.workbook-grid tr.item td{background:#fffefb}.workbook-grid tr.item:hover td{background:#f7fbfb}.workbook-grid tr.collapsed-child{display:none}.workbook-grid .row-index{color:var(--muted);text-align:right}.workbook-grid .outline-toggle{width:24px;min-height:24px;height:24px;border:1px solid var(--line);border-radius:3px;padding:0;background:#fff;color:var(--brand-dark);margin-right:8px}.work-cell{min-height:36px;line-height:1.45}.technical-card-search-cell{position:relative;min-width:150px}.technical-card-search-cell input{min-height:36px;padding-left:34px;padding-right:10px}.technical-card-search-cell .input-with-icon svg:first-child{left:12px;pointer-events:none}.technical-card-detail-link,.technical-card-clear-button{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:22px;height:22px;border-radius:6px;color:var(--brand-dark);text-decoration:none}.technical-card-detail-link{right:8px}.technical-card-clear-button{right:34px;min-height:22px;border:0;background:transparent;padding:0;color:#8a2d2d}.technical-card-detail-link:hover,.technical-card-clear-button:hover{background:#e6f8f5}.selected-card-full-label{display:block;margin-top:5px;color:var(--ink);font-size:12px;line-height:1.35;overflow-wrap:anywhere}.technical-card-search-menu{position:absolute;z-index:6;top:calc(100% + 4px);right:0;width:min(360px,88vw);max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 14px 32px #1d232629;padding:6px}.technical-card-search-option{width:100%;min-height:46px;justify-content:flex-start;display:grid;gap:3px;border-radius:6px;padding:8px 10px;background:transparent;color:var(--ink);text-align:left}.technical-card-search-option:hover{background:#e6f8f5}.technical-card-search-option strong,.technical-card-search-option span,.stale-card-label{display:block}.technical-card-search-option strong{font-size:12px}.technical-card-search-option span,.technical-card-search-option.muted,.stale-card-label{color:var(--muted);font-size:11px}.technical-card-search-option.muted{cursor:default}.stale-card-label{margin-top:4px;color:#8a5a00}.technical-card-selected-cell{position:relative;display:grid;gap:6px;min-width:220px}.technical-card-tag{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--line);border-radius:6px;padding:6px;font-weight:700;line-height:1.25}.technical-card-tag-label{flex:1;padding-left:3px;overflow-wrap:anywhere}.technical-card-tag-actions{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto}.technical-card-icon-button,.technical-card-color-menu button{display:grid;place-items:center;width:26px;min-height:26px;height:26px;border:1px solid rgba(0,0,0,.16);border-radius:5px;color:inherit;background:#ffffff9e;text-decoration:none;padding:0}.technical-card-icon-button:hover{background:#ffffffdb}.technical-card-icon-button.danger{color:inherit}.technical-card-color-menu{position:absolute;z-index:7;top:calc(100% + 5px);right:0;display:flex;gap:6px;padding:7px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 28px #1d232629}.technical-card-color-menu button{width:24px;min-height:24px;height:24px;background:transparent}.technical-card-color-menu button.active{border-color:var(--brand);box-shadow:0 0 0 2px #0084842e}.workbook-grid col.select{width:3%}.workbook-grid col.sheet{width:6%}.workbook-grid col.row{width:4%}.workbook-grid col.work{width:24%}.workbook-grid col.unit{width:4%}.workbook-grid col.qty{width:5%}.workbook-grid col.money{width:5.5%}.workbook-grid col.card{width:20%}.quote-settings-panel{padding:0;overflow:hidden}.quote-settings-panel.project-info-panel{overflow:visible}.quote-settings-panel .form-grid{padding:14px}.tabs{display:flex;flex-wrap:wrap;gap:6px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px;box-shadow:var(--shadow)}.tabs button{min-height:34px;border:1px solid transparent;background:transparent;color:var(--muted)}.tabs button.active{border-color:var(--line);background:var(--soft);color:var(--ink)}.wide-field{grid-column:1 / -1}.form-note{padding:0 14px 14px;margin:0}.logo-field{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.logo-upload-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.upload-button{position:relative;width:fit-content;min-height:40px;display:inline-flex;align-items:center;gap:8px;border-radius:8px;padding:0 14px;background:var(--brand-dark);color:#fff;cursor:pointer}.upload-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.logo-preview,.logo-placeholder{width:64px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff}.logo-preview img{max-width:58px;max-height:36px;object-fit:contain}.upload-filename{color:var(--muted);font-size:12px}.project-info-sections{display:grid;gap:14px;padding:14px}.project-info-compact{display:grid;gap:10px;padding:12px;overflow:visible}.project-info-linked{display:grid;grid-template-columns:42px minmax(220px,1.1fr) minmax(220px,1fr) minmax(140px,.6fr);gap:10px;align-items:end;border:1px solid var(--line);border-radius:8px;background:linear-gradient(90deg,#f2fbfa,#fff 54%,#f8fbfb);padding:10px}.project-info-brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#e6f8f5;color:#005457}.linked-summary{display:grid;gap:4px;min-height:40px;align-content:center;border-left:1px solid var(--line);padding-left:10px}.linked-summary span{color:var(--muted);font-size:11px;font-weight:800}.linked-summary strong{color:var(--ink);font-size:13px}.project-info-section{border:1px solid var(--line);border-radius:8px;background:#fbfdfd;overflow:visible}.project-info-section.compact{background:#fff}.project-info-section h3{margin:0;padding:10px 12px;border-bottom:1px solid var(--line);border-radius:8px 8px 0 0;background:#e6f8f5;color:#005457;font-size:13px;font-weight:800}.project-info-section .form-grid{padding:12px}.compact-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.compact-form-grid .wide-field{grid-column:span 2}.radio-row{display:flex;gap:10px;flex-wrap:wrap}.radio-row label{display:inline-flex;align-items:center;gap:6px;min-height:36px;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:#fff;color:var(--ink)}.radio-row input{width:16px;min-height:16px}.checkbox-dropdown-field{position:relative;display:grid;gap:8px;padding:12px;color:var(--muted);font-size:12px;font-weight:700}.field-label{display:inline-block}.checkbox-dropdown{position:relative}.checkbox-dropdown>button{width:100%;justify-content:flex-start}.checkbox-dropdown-menu{position:absolute;z-index:8;top:calc(100% + 6px);left:0;right:0;min-width:min(760px,calc(100vw - 48px));max-height:min(560px,calc(100vh - 190px));overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);padding:6px}.checkbox-dropdown-tools{position:sticky;top:0;z-index:1;display:grid;grid-template-columns:minmax(280px,1fr) auto auto;gap:6px;padding:4px;border-bottom:1px solid var(--line);background:#fff}.checkbox-dropdown-tools button{min-height:36px;white-space:nowrap}.checkbox-dropdown-menu label{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start;min-height:34px;padding:7px;border-radius:6px;color:var(--ink)}.checkbox-dropdown-menu label:hover{background:var(--soft)}.checkbox-dropdown-menu input{width:16px;min-height:16px;margin-top:2px}.checkbox-dropdown-menu small{display:block;margin-top:2px;color:var(--muted)}.mini-chip{display:inline-flex;align-items:center;gap:5px;min-height:26px;border:1px solid var(--line);border-radius:999px;padding:0 7px 0 9px;background:#eef8f6;color:#005457;font-size:12px;font-weight:800}.mini-chip.removable button{width:18px;min-height:18px;height:18px;padding:0;border:0;border-radius:999px;background:#0054571f;color:#005457}.mini-chip.removable button:hover{background:#00545733}.work-items-section{overflow:visible}.work-items-section .checkbox-dropdown-field{padding-top:10px}.selected-work-items{max-height:118px;overflow:auto;padding-right:4px}.dictionary-select{width:220px}.project-option-table{min-width:1500px}.quote-calculation-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:14px}.overhead-layout,.quote-overheads-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:start}.overhead-list-panel,.overhead-detail-panel{min-width:0}.overhead-template-list{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.overhead-template-list button{justify-content:flex-start;flex:0 0 min(280px,76vw);min-height:52px;padding:10px;background:#fff;color:var(--ink);border:1px solid var(--line);text-align:left}.overhead-template-list button.active{background:#e6f8f5;border-color:#00808052}.overhead-template-list button span{display:grid;gap:3px;min-width:0}.overhead-template-list button small{color:var(--muted);font-size:11px}.overhead-header-form{margin:12px 0 14px}.overhead-lines-table{min-width:1120px}.labor-hour-lines-table{min-width:980px}.overhead-lines-table input,.overhead-lines-table select{min-height:34px}.overhead-lines-table th:nth-child(1),.overhead-lines-table td:nth-child(1){width:96px}.overhead-lines-table th:nth-child(2),.overhead-lines-table td:nth-child(2){width:24%}.profit-controls{display:grid;grid-template-columns:92px minmax(72px,1fr);gap:6px}.static-chip{display:inline-flex;align-items:center;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#f4f8f8;color:var(--muted);font-size:12px;font-weight:700}.overhead-total-strip{grid-template-columns:repeat(3,minmax(120px,1fr));border:1px solid var(--line);border-radius:8px;background:#f8fbfb;margin:12px 0}.labor-hour-total-strip{grid-template-columns:repeat(6,minmax(110px,1fr))}.overhead-total-strip span{display:grid;gap:3px}.overhead-total-strip small{color:var(--muted);font-size:11px;font-weight:700}.template-copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:12px}.overhead-allocation-panel{margin-top:14px;border-top:1px solid var(--line);padding-top:14px}.salary-brackets{display:grid;gap:6px;min-width:0}.salary-bracket-row{display:grid;grid-template-columns:minmax(130px,1fr) 132px;gap:8px;align-items:center}.salary-rate-control{display:grid;grid-template-columns:minmax(70px,1fr) 34px;gap:6px;align-items:center}.salary-tax-table{min-width:0}.salary-tax-table th:nth-child(1),.salary-tax-table td:nth-child(1){width:64px;text-align:center}.salary-tax-table th:nth-child(2),.salary-tax-table td:nth-child(2){width:200px}.salary-tax-table th:nth-child(3),.salary-tax-table td:nth-child(3){width:250px}.salary-tax-table th:nth-child(4),.salary-tax-table td:nth-child(4){width:108px}.salary-tax-table th:nth-child(5),.salary-tax-table td:nth-child(5){width:140px}.salary-tax-table th:nth-child(6),.salary-tax-table td:nth-child(6){width:auto;padding-right:18px}.salary-tax-table th:nth-child(7),.salary-tax-table td:nth-child(7){width:96px;text-align:center;padding-left:18px}.salary-tax-table input[type=checkbox]{width:22px;min-height:22px}.salary-rule-actions{display:flex;justify-content:center;align-items:flex-start;min-height:34px}.mini-button{min-height:30px;padding:0 10px;justify-self:start}.metric-list.compact{margin-top:12px;padding:0}.secondary-page-header{margin-top:8px;padding-top:14px;border-top:1px solid var(--line)}.metric-list{display:grid;gap:8px;padding:14px}.metric-list span{color:var(--muted);font-size:12px;font-weight:700}.metric-list strong{font-size:18px}.metric-list p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.workbook-footer{padding:8px 14px}.compact-field{width:min(360px,100%)}.status-pill{border-radius:999px;background:#e6f8f5;color:#005457;padding:7px 10px;font-size:12px;font-weight:800}.empty-module{min-height:420px;display:grid;place-items:center}.module-map{width:min(520px,90%);display:grid;grid-template-columns:1fr 1fr;gap:10px}.module-map span{min-height:120px;border-radius:8px;background:linear-gradient(135deg,#e6f8f5,#f8fbfb);border:1px solid var(--line)}@media(max-width:920px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar,.page-header{align-items:stretch;flex-direction:column}.topbar-actions{justify-content:stretch;min-width:0}.language-select select{width:100%}.filters,.filters.three,.form-grid,.split-grid,.technical-line-tools,.technical-summary,.quote-calculation-grid,.overhead-layout,.quote-overheads-grid,.project-info-linked,.compact-form-grid{grid-template-columns:1fr}.compact-form-grid .wide-field{grid-column:1}.checkbox-dropdown-menu{min-width:100%}.checkbox-dropdown-tools{grid-template-columns:1fr}}.system-admin-shell{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr);background:var(--soft)}.system-admin-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:18px;padding:20px 18px;border-right:1px solid var(--line);background:#fff}.system-admin-sidebar .brand-lockup{text-decoration:none}.system-admin-workspace{min-width:0;padding:22px 26px 38px}.system-admin-header{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.system-admin-header h1{margin:0;color:var(--ink);font-size:25px;letter-spacing:0}.system-admin-header p{margin:5px 0 0;color:var(--muted);font-size:13px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px}.system-metric{display:grid;grid-template-columns:36px minmax(0,1fr);gap:5px 10px;align-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);padding:14px}.system-metric svg{grid-row:span 2;color:var(--brand-dark)}.system-metric span{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.system-metric strong{font-size:24px;color:var(--ink)}.system-admin-checklist{display:grid;gap:10px;padding:14px}.system-admin-checklist div{display:flex;align-items:center;gap:9px;min-height:38px;color:var(--ink);font-size:13px}.system-admin-checklist svg{flex:0 0 auto;color:var(--brand-dark)}.system-supplier-table{min-width:1160px}.connection-badge{display:inline-flex;align-items:center;max-width:180px;min-height:26px;border:1px solid var(--line);border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;line-height:1.15;white-space:normal}.connection-badge.good{border-color:#86efac;background:#f0fdf4;color:#166534}.connection-badge.warn{border-color:#fde68a;background:#fffbeb;color:#92400e}.connection-badge.slow{border-color:#fecaca;background:#fef2f2;color:#991b1b}.connection-badge.neutral{background:var(--soft);color:var(--muted)}.supplier-modal{width:min(900px,100%)}.supplier-detail-panel{overflow:hidden}.supplier-detail-panel .table-toolbar p{margin:4px 0 0}.supplier-detail-summary{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px;margin:14px;box-shadow:none}.detail-tabs{display:flex;flex-wrap:wrap;gap:6px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;padding:10px 14px}.detail-tabs button{min-height:34px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);padding:7px 11px;font-size:13px;font-weight:800}.detail-tabs button.active{border-color:var(--line);background:var(--soft);color:var(--ink)}.supplier-tab-body{margin-top:14px}.supplier-search-empty{margin:14px;min-height:42px;border:1px dashed var(--line);border-radius:8px;padding:12px 14px}.supplier-ops-panel{margin:14px;box-shadow:none}.ops-controls{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;align-items:end;padding:0 14px 12px}.ops-controls label{display:grid;gap:6px;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.ops-snapshot{display:flex;flex-wrap:wrap;gap:8px;padding:0 14px 12px}.ops-snapshot span{border:1px solid var(--line);border-radius:999px;background:var(--soft);padding:6px 9px;color:var(--muted);font-size:12px;font-weight:700}.ops-preview{max-height:260px;overflow:auto;margin:0 14px 14px;border:1px solid var(--line);border-radius:8px;background:#0f172a;color:#e2e8f0;padding:12px;font:12px/1.5 Consolas,monospace}@media(max-width:920px){.system-admin-shell{grid-template-columns:1fr}.system-admin-sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.system-admin-header{align-items:stretch;flex-direction:column}.metric-grid,.supplier-detail-summary,.ops-controls{grid-template-columns:1fr}}
