.quote-app{background:#f4f5f1}.quote-header{height:85px;background:#fff;padding:0 30px;display:flex;align-items:center;gap:35px;border-bottom:1px solid var(--line)}.quote-header .brand{font-size:27px}.quote-header .brand span{font-size:9px}.quote-header nav{justify-content:flex-start;margin-left:30px}.workspace-badge{font-size:11px;color:#76806c;border:1px solid #d7ddce;padding:5px 10px}.workspace-toolbar{height:64px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;background:#fcfcfa;border-bottom:1px solid var(--line);gap:20px}.workspace-toolbar>div:first-child{display:flex;gap:15px;align-items:center;min-width:0}.workspace-toolbar strong{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}#save-state{font-size:11px;color:var(--muted);white-space:nowrap}.toolbar-buttons{display:flex;gap:18px;align-items:center;white-space:nowrap}.toolbar-buttons button{font-size:12px;padding:5px}.toolbar-buttons .button{padding:9px 20px;min-height:36px}.quote-workspace{display:grid;grid-template-columns:47% 53%;min-height:calc(100vh - 149px)}.product-library{padding:28px;border-right:1px solid var(--line);background:#fafbf8}.library-heading{display:flex;justify-content:space-between;align-items:flex-end}.library-heading h1{font:600 24px/1.4 var(--sans);margin-top:5px}.library-heading>span{font-size:11px;color:var(--muted)}.library-note{font-size:11px;color:var(--muted);margin:12px 0 16px}.library-search{display:flex;align-items:center;gap:10px;border:1px solid #dfe3d9;background:white;padding:0 12px}.library-search input{border:0;margin:0;padding:12px 0;background:transparent;font-size:12px}.library-search svg{width:17px}.library-filters{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:16px 0;border-bottom:1px solid var(--line)}.library-filters label{font-size:10px;color:var(--muted)}.library-filters select{display:block;width:100%;background:white;border:1px solid var(--line);margin-top:5px;padding:8px;color:var(--ink)}.bulk-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin:18px 0}.bulk-toolbar .checkbox,.line-tools .checkbox{margin:0;font-size:11px}.bulk-toolbar>span{font-size:10px;color:var(--muted)}.bulk-toolbar .button{font-size:11px;min-height:34px;padding:7px 10px;gap:8px}.bulk-toolbar .button span{font-size:14px}.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.library-card{background:#fff;border:1px solid #e1e4da;position:relative}.library-card.chosen{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}.library-card>label{position:absolute;top:9px;left:9px;z-index:1;padding:3px;display:flex;background:#ffffffde}.library-card input[type=checkbox]{margin:0;width:16px;height:16px;accent-color:var(--green)}.library-card>img{width:100%;aspect-ratio:1.5;object-fit:cover;background:#e9e7df}.library-card>div{padding:12px}.library-card h3{font-size:12px;font-weight:500}.library-card p{font-size:9px;color:var(--muted);margin:4px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-card .library-card-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.library-card strong{font-weight:500;font-size:14px}.library-card button{width:28px;height:28px;border:1px solid var(--line);font-size:20px;display:grid;place-items:center;line-height:1}.plan-workspace{padding:25px;background:#f1f3ed;min-width:0}.plan-metadata>label{font-size:10px;color:var(--muted)}.plan-metadata>div{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:10px}.plan-metadata>div label{font-size:10px;color:var(--muted)}.plan-metadata input{padding:8px 10px;font-size:12px;margin-top:4px;background:white}.space-toolbar{display:flex;gap:8px;margin-top:23px;align-items:center}.space-tabs{display:flex;gap:8px;overflow-x:auto;flex:1;padding:2px}.space-tab{display:flex;flex-direction:column;min-width:110px;padding:10px 12px;border:1px solid #d8ddcf;text-align:left;background:#f9faf6}.space-tab.active{border-color:var(--green);background:#fff;box-shadow:0 0 0 1px var(--green)}.space-tab strong{font-size:12px;font-weight:500;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.space-tab span{font-size:10px;color:var(--muted);margin-top:4px}.add-space{font-size:11px;padding:10px;white-space:nowrap}.space-heading{display:flex;justify-content:space-between;gap:10px;padding:17px 0 13px;align-items:center}.space-heading>div{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.space-heading b{font-size:12px;font-weight:500}.space-heading button{font-size:9px;color:var(--muted);padding:0}.space-heading>span{font-size:13px}.line-tools{display:flex;gap:18px;align-items:center;padding:12px;background:#e4e9dd}.line-tools button{font-size:10px}.line-tools button:last-child{margin-left:auto}.line-list{min-height:190px;background:#fafbf8}.quote-line{padding:15px 12px;border-bottom:1px solid var(--line);background:white;display:grid;grid-template-columns:17px 54px minmax(0,1fr);column-gap:9px;row-gap:10px}.quote-line>input[type=checkbox]{width:15px;height:15px;accent-color:var(--green);margin-top:3px}.quote-line>img{width:54px;height:62px;object-fit:cover}.line-description input{padding:3px 0;margin:0;border:0;background:transparent;font-size:11px}.line-description input:first-child{font-weight:600}.line-description input+input{font-size:10px;color:var(--muted);margin-top:2px}.line-description input:focus{background:#f3f4ee}.line-numbers{grid-column:2/4;display:grid;grid-template-columns:55px 1fr 1fr 22px;gap:10px;align-items:end}.line-numbers label{font-size:9px;color:var(--muted);margin:0}.line-numbers input{padding:6px 7px;font-size:12px;margin-top:3px;background:#fafbf7}.line-numbers .line-subtotal{text-align:right;font-size:12px;padding-bottom:5px;white-space:nowrap}.line-numbers .line-subtotal small{display:block;font-size:9px;color:var(--muted);margin-bottom:9px}.line-delete{font-size:18px;padding:3px;color:var(--muted)}.line-empty{display:flex;min-height:230px;align-items:center;justify-content:center;flex-direction:column;color:var(--muted);font-size:12px;gap:8px}.line-empty svg{width:35px;height:35px;opacity:.4;margin-bottom:5px}.line-empty small{font-size:10px}.price-adjustments{padding:20px 0}.price-adjustments h3{font-size:12px;font-weight:500;display:flex;justify-content:space-between;gap:12px}.price-adjustments h3 span{font-size:9px;color:var(--muted);font-weight:400}.adjustment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.adjustment-grid label{font-size:10px;color:var(--muted)}.adjustment-grid input{font-size:12px;padding:7px;margin-top:5px}.price-adjustments>p{font-size:9px;color:var(--muted);margin-top:10px}.plan-footer{border-top:1px solid #cbd2bf;padding-top:18px}.quote-total{display:flex;align-items:center;justify-content:space-between}.quote-total>span{font-size:12px}.quote-total small{color:var(--muted);font-size:10px;display:block;margin-top:3px}.quote-total strong{font-size:27px;color:var(--green);font-weight:500}.totals-breakdown{font-size:10px;color:var(--muted);margin:9px 0 17px}.plan-actions{display:grid;grid-template-columns:1fr .8fr 1fr;gap:8px}.plan-actions .button{min-height:42px;font-size:11px;padding:8px;gap:7px}.plan-footer>p{font-size:10px;margin-top:13px}.small-dialog{max-width:470px}.small-dialog h2{margin-bottom:20px}.small-dialog>p{margin-bottom:18px}.small-dialog .confirm-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:25px}.quote-preview-dialog{width:min(1050px,calc(100% - 28px));padding:25px;background:#e9ece4}.preview-controls{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px;font-size:12px}.preview-controls>div{display:flex;gap:10px}.preview-controls .button{font-size:11px;min-height:38px;padding:7px 14px}.quote-settings{display:grid;grid-template-columns:1fr 1fr 100px;gap:12px;margin-bottom:20px}.quote-settings label{font-size:11px;color:var(--muted)}.quote-settings input,.quote-settings textarea{font-size:12px;padding:8px}.quote-settings .quote-note{grid-column:1/-1}.quote-settings textarea{min-height:50px}.quote-sheet{background:#fff;padding:45px;color:#222;font-size:12px}.quote-sheet header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #344a3a;padding-bottom:24px}.quote-sheet h1{font:500 28px/1.5 var(--sans);letter-spacing:4px}.quote-sheet header p{font-size:10px;color:#777}.quote-sheet .sheet-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:23px 0;font-size:11px}.quote-sheet table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:10px}.quote-sheet th{background:#edf0e7;font-weight:500}.quote-sheet th,.quote-sheet td{padding:9px 6px;border:1px solid #d7ddce;text-align:left;overflow-wrap:anywhere}.quote-sheet .space-row td{background:#f7f8f4;font-weight:600}.quote-sheet td img{width:40px;height:38px;object-fit:cover;float:left;margin:0 6px 4px 0}.quote-sheet td small{display:block;color:#777;font-size:9px}.quote-sheet .sheet-totals{margin:20px 0 0 auto;width:280px}.sheet-totals>div{display:flex;justify-content:space-between;padding:5px 0;font-size:11px}.sheet-totals .sheet-grand{border-top:1px solid #8b9a7e;padding:10px 0;font-size:17px;font-weight:600;color:#344a3a}.sheet-note{padding-top:20px;border-top:1px solid #ddd;font-size:10px;white-space:pre-line;line-height:1.9}.sheet-footer{display:flex;justify-content:space-between;margin-top:25px;padding-top:15px;border-top:1px solid #ddd;font-size:10px;color:#777}.saved-plan{border-bottom:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:15px}.saved-plan h3{font-size:14px;font-weight:500}.saved-plan p{font-size:11px;color:var(--muted);margin-top:5px}.saved-plan button{font-size:12px;text-decoration:underline;white-space:nowrap}
@media(min-width:1500px){.quote-workspace{grid-template-columns:48% 52%}.library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-library,.plan-workspace{padding:30px}.line-numbers{grid-column:3;grid-template-columns:65px 1fr 1fr 24px}.quote-line>img{grid-row:1/3;height:80px;width:65px}.quote-line{grid-template-columns:18px 65px 1fr}}
@media(max-width:900px){.workspace-badge{display:none}.quote-header nav{margin:0;gap:20px}.quote-workspace{grid-template-columns:43% 57%}.product-library{padding:20px 14px}.plan-workspace{padding:20px 15px}.library-filters{grid-template-columns:1fr 1fr}.library-filters label:last-child{display:none}.library-grid{gap:10px}.library-card>div{padding:9px}.library-card h3{font-size:11px}.bulk-toolbar{flex-wrap:wrap}.bulk-toolbar .button{width:100%}.toolbar-buttons{gap:10px}.workspace-toolbar{padding:0 20px}.workspace-toolbar strong{max-width:160px}.workspace-toolbar>div:first-child{gap:10px}.space-heading>div{gap:8px}.adjustment-grid{gap:7px}.adjustment-grid label{font-size:9px}}
@media(max-width:650px){.quote-header{padding:0 18px;height:75px}.quote-header .brand{font-size:24px}.quote-header nav{display:flex;margin-left:auto;gap:16px;flex:0}.quote-header nav a{font-size:10px}.quote-header nav a:last-child{display:none}.workspace-toolbar{height:auto;min-height:88px;flex-direction:column;align-items:stretch;padding:13px 18px;gap:11px}.workspace-toolbar strong{max-width:240px;font-size:12px}.toolbar-buttons{justify-content:space-between}.toolbar-buttons button{font-size:11px}.toolbar-buttons .button{min-height:30px;padding:5px 14px}.quote-workspace{grid-template-columns:1fr}.product-library{padding:24px 18px;border-right:0;border-bottom:1px solid var(--line)}.library-filters{grid-template-columns:repeat(3,1fr)}.library-filters label:last-child{display:block}.library-grid{grid-template-columns:repeat(2,1fr);gap:13px;max-height:470px;overflow:auto}.library-card>img{aspect-ratio:1.7}.library-card p{font-size:9px}.bulk-toolbar{flex-wrap:nowrap}.bulk-toolbar .button{width:auto}.plan-workspace{padding:24px 18px}.plan-actions .button{font-size:11px}.quote-preview-dialog{padding:12px;max-height:95dvh}.quote-settings{grid-template-columns:1fr 1fr}.quote-settings label:nth-child(3){grid-column:1}.quote-sheet{padding:22px 12px;min-width:600px}.quote-preview-dialog #print-sheet{overflow:auto}.preview-controls{gap:8px}.preview-controls .button{font-size:10px;padding:6px 8px}.preview-controls>div{gap:6px}}
@page{size:A4;margin:12mm}
@media print{html,body{background:white!important}body>*{display:none!important}body>#preview-dialog[open]{display:block!important;position:static!important;width:100%!important;max-width:none!important;max-height:none!important;overflow:visible!important;padding:0!important;margin:0!important;box-shadow:none!important;background:white!important}#preview-dialog .preview-controls,#preview-dialog .quote-settings{display:none!important}#print-sheet{overflow:visible!important}.quote-sheet{padding:0!important;min-width:0!important;font-size:10pt!important}.quote-sheet table{font-size:8pt!important}.quote-sheet tr{break-inside:avoid}.quote-sheet thead{display:table-header-group}.quote-sheet .sheet-totals,.sheet-note,.sheet-footer{break-inside:avoid}dialog::backdrop{display:none}a{color:inherit}}

.library-card>img{object-fit:contain;aspect-ratio:1.25;background:#f6f7f3}.quote-line>img,.quote-sheet td img{object-fit:contain}.library-card h3{min-height:34px;line-height:1.5}.library-filters select{max-width:100%}.line-numbers input::placeholder{color:#9a7650}
.library-card button.library-photo{display:block;width:100%;height:auto;padding:0;border:0;aspect-ratio:1.25;background:#f6f7f3}.library-photo img{width:100%;height:100%;object-fit:contain}.library-card button.library-name{width:auto;height:auto;display:block;text-align:left;border:0;font:inherit;line-height:1.5}.library-card .library-card-bottom button{width:auto;min-width:28px;padding:4px 8px;font-size:11px}.library-variant-label{display:block;min-width:0;color:var(--muted);font-size:9px;margin:7px 0}.library-variant-label select{display:block;width:100%;max-width:100%;padding:6px 2px;font-size:10px;border:1px solid #dfe3d8;background:white;color:var(--ink);margin-top:4px;overflow:hidden;text-overflow:ellipsis}.library-card .library-card-bottom{gap:8px}.library-card h3{font-size:12px}.library-card label{min-width:0}.library-photo:focus-visible,.library-name:focus-visible{outline:2px solid var(--green);outline-offset:2px}

/* Series navigation and an independently scrollable procurement workspace. */
.quote-workspace{grid-template-columns:150px minmax(0,1fr) minmax(0,1fr)}
.series-sidebar{min-width:0;min-height:0;overflow:hidden;background:#fff;border-right:1px solid var(--line);padding:22px 10px 14px;display:flex;flex-direction:column;gap:12px}
.series-sidebar-head{padding:0 7px}.series-sidebar-head h2{font:600 14px/1.5 var(--sans)}.series-sidebar-head span{font-size:10px;color:var(--muted)}
.series-search input{padding:8px;font-size:11px;margin:0;min-width:0;background:#fafbf8}
.series-list{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;margin:0;gap:3px;overflow-y:auto;min-height:0;overscroll-behavior:contain}
.series-link{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:9px 8px;text-align:left;font-size:12px;line-height:1.5;border:1px solid transparent;border-radius:3px;flex-shrink:0}
.series-link>span{min-width:0;overflow-wrap:anywhere}.series-link small{font-size:9px;color:var(--muted);flex-shrink:0}.series-link:hover{background:#f3f5ee}.series-link.active{background:#e8eee2;border-color:#d6dfcd;color:var(--green);font-weight:600}
.product-library,.plan-workspace{padding:24px;min-width:0}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.library-series-heading{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:10px;border-bottom:1px solid #d6ddcf;padding:10px 0 12px;margin-top:5px}
.library-series-heading h2{font:600 17px/1.5 var(--sans)}.library-series-heading span{font-size:10px;color:var(--muted)}.library-series-heading button{margin-left:auto;font-size:10px;color:var(--green)}
.quote-line{grid-template-columns:18px 200px minmax(0,1fr);column-gap:14px;row-gap:12px;padding:18px 14px;min-height:210px;align-items:start}
.line-photo{grid-column:2;grid-row:1/3;position:relative;width:200px;height:170px;padding:0;border:1px solid #e3e7dc;background:#fff;overflow:hidden;cursor:zoom-in}
.line-photo img{display:block;width:100%;height:100%;object-fit:contain}.line-photo span{position:absolute;bottom:6px;left:50%;transform:translateX(-50%);font-size:9px;white-space:nowrap;background:#f2f5edeb;padding:3px 7px;color:var(--green)}
.line-description{grid-column:3;min-width:0}.line-description input{font-size:13px;line-height:1.6}.line-description input+input{font-size:11px}.line-model,.line-material{display:block;font-size:10px;color:var(--muted);line-height:1.6;overflow-wrap:anywhere;margin-top:4px}
.line-numbers{grid-column:3;grid-row:2;grid-template-columns:65px minmax(90px,1fr) minmax(70px,1fr) 24px;gap:10px;min-width:0}.line-numbers label{font-size:10px}.line-numbers input{font-size:13px;min-width:0}.line-numbers .line-subtotal{font-size:13px}
.line-image-dialog{width:min(1000px,calc(100% - 32px));padding:30px;background:#fff}.line-image-dialog h2{font:500 18px/1.6 var(--sans);padding-right:30px}.line-image-dialog>img{display:block;width:100%;max-height:70dvh;object-fit:contain;margin:15px auto;background:#fff}.line-image-dialog>p{font-size:12px;color:var(--muted);line-height:1.8;overflow-wrap:anywhere}
@media(min-width:1181px){.quote-workspace{height:calc(100dvh - 149px);min-height:0;grid-template-rows:minmax(0,1fr)}.product-library,.plan-workspace{overflow-y:auto;overscroll-behavior:contain;min-height:0}.series-list{flex:1}}
@media(min-width:1800px){.library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1599px){.quote-line{grid-template-columns:18px 160px minmax(0,1fr)}.line-photo{width:160px;height:150px;grid-row:1}.line-description{min-height:150px}.line-numbers{grid-column:2/4;grid-row:2}}
@media(min-width:651px) and (max-width:1180px){.quote-workspace{grid-template-columns:minmax(0,44%) minmax(0,56%)}.product-library,.plan-workspace{max-height:calc(100dvh - 270px);min-height:450px;overflow-y:auto}.product-library,.plan-workspace{padding:20px 15px}.library-filters{grid-template-columns:1fr 1fr}.library-filters label:last-child{display:none}}
@media(max-width:1180px){.series-sidebar{grid-column:1/-1;display:grid;grid-template-columns:130px minmax(0,1fr);gap:8px 14px;padding:12px 18px;border-bottom:1px solid var(--line)}.series-sidebar-head{grid-column:1;grid-row:1;padding:0}.series-search{grid-column:1;grid-row:2}.series-list{grid-column:2;grid-row:1/3;flex-direction:row;align-items:center;gap:5px;overflow-x:auto;overflow-y:hidden}.series-link{gap:8px;white-space:nowrap;padding:9px 11px}.series-link>span{overflow-wrap:normal}}
@media(max-width:650px){.quote-workspace{grid-template-columns:minmax(0,1fr);height:auto}.product-library,.plan-workspace{padding:22px 16px}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:540px}.series-sidebar{grid-template-columns:100px minmax(0,1fr);padding:12px 16px;gap:7px 10px}.series-link{font-size:11px}.quote-line{grid-template-columns:16px 130px minmax(0,1fr);column-gap:10px;padding:14px 10px;min-height:190px}.line-photo{width:130px;height:125px}.line-description{min-height:125px}.line-description input{font-size:12px}.line-description input+input{font-size:10px}.line-numbers{grid-column:2/4;grid-template-columns:55px minmax(65px,1fr) 68px 20px;gap:7px}.line-numbers input{font-size:12px;padding:6px}.line-model,.line-material{font-size:9px}.line-image-dialog{padding:22px 14px}.line-image-dialog>img{max-height:65dvh}.library-series-heading{gap:8px}.library-series-heading h2{font-size:15px}}

.source-stock{color:#717a6b;font-size:12px}.line-tools{flex-wrap:wrap;gap:8px}.price-adjustments h3{display:flex;flex-wrap:wrap;align-items:center;gap:12px}#overall-price{border:1px solid #aab8a3;background:#fff;padding:6px 12px;color:#334b3a;font-size:12px}.adjustment-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
