.quote-intro{display:flex;align-items:center;gap:18px;padding:24px;background:#ecf5f1;border:1px solid #dcebe5;border-radius:12px;margin-bottom:24px;color:#315e51}.quote-intro-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;background:white;border-radius:12px}.quote-intro-icon svg{width:24px;height:24px}.quote-intro>div{flex:1}.quote-intro p,.quote-help,.quote-footnote,.quote-formula p{font-size:12px;line-height:1.85;color:#688174;margin:6px 0 0}.quote-intro strong{font-size:16px}.quote-profile-table{min-width:1040px}.quote-profile-table small,.quote-history-table small{display:block;font-size:11px;line-height:1.6;color:#789084;margin-top:5px}.quote-profile-table td,.quote-history-table td{vertical-align:middle}.quote-status{padding:4px 9px;border-radius:5px;background:#e5f3ed;color:#167a65;font-size:11px;white-space:nowrap}.quote-status.paused{background:#f0f2f4;color:#7e8790}.quote-available{margin:28px 0 18px}.quote-available h2{font-size:14px;margin:0 0 14px}.quote-country-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.quote-country-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px;border:1px solid #e1e9e5;border-radius:10px;background:#fff}.quote-country-card small{display:block;color:#809087;font-size:11px;margin-top:6px}.quote-footnote a{color:#177965;text-decoration:underline;margin:0 4px}.quote-empty{padding:48px 24px;text-align:center;color:#77877e}.quote-empty>svg,.quote-result-placeholder svg{height:30px;width:30px;color:#6b9787;margin-bottom:12px}.quote-empty h2,.quote-empty h3{color:#35463f;font-size:16px;margin:8px 0}.quote-empty p{font-size:12px;line-height:1.8;margin:10px auto 18px;max-width:420px}.quote-empty.small{padding:22px}.quote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.quote-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.quote-grid .field{margin:0;min-width:0}.quote-grid select,.quote-grid input,.quote-source select,.quote-product-source select,.quote-history select{width:100%;min-width:0;min-height:40px}.quote-grid .field small{line-height:1.6;display:block;min-height:0}.quote-source{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;background:#f2f8f5;border:1px dashed #bfd5ca;border-radius:9px;padding:16px;margin:22px 0}.quote-source>.field{flex:1;margin:0;min-width:200px}.quote-source p{flex:0 0 100%;font-size:11px;color:#688174;margin:0;line-height:1.7}.quote-help{margin:14px 0 18px}.quote-fee-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0 26px}.quote-fee{border:1px solid #dce7e0;border-radius:9px;padding:16px;min-width:0;background:#fbfdfc}.quote-fee legend{font-weight:650;font-size:13px;color:#326452;padding:0 7px}.quote-fee .field label{font-size:11px}.quote-fee [hidden],.quotation-dialog [hidden],.quote-workbench [hidden]{display:none!important}.quote-section-title{font-size:14px;margin:26px 0 16px}.quotation-dialog{width:min(1000px,calc(100vw - 32px));max-width:1000px}.quotation-dialog .modal-body{padding:24px}.quotation-dialog .modal-footer{border-top:1px solid #e1e8e4}.quote-workbench{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);gap:22px;align-items:start}.quote-step{font-size:12px;font-weight:700;color:#9ab7a9;letter-spacing:2px}.quote-input-panel form{padding:22px}.quote-product-import{margin:16px 0 22px;border:1px solid #e0e9e4;border-radius:7px;padding:12px 14px;color:#497461}.quote-product-import summary{cursor:pointer;font-size:12px}.quote-product-source{display:flex;gap:12px;align-items:flex-end;padding-top:14px}.quote-product-source .field{flex:1;margin:0;min-width:0}.quote-form-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #e7eee9;padding-top:20px;margin-top:22px}.quote-form-footer>span{color:#819189;font-size:11px;line-height:1.7}.quote-form-footer .button{flex-shrink:0}.quote-output-panel{position:sticky;top:24px}.quote-price-hero{padding:28px 26px;background:#f0f8f4;color:#356651}.quote-price-hero>span{font-size:12px}.quote-price-hero>strong{display:block;font-size:42px;letter-spacing:-1.2px;color:#127b66;margin:12px 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.quote-price-hero strong small{font-size:13px;font-weight:500;letter-spacing:0;margin-left:9px;color:#5f7e6f}.quote-price-hero p{margin:0;font-size:12px}.quote-price-hero p b{margin-left:8px}.quote-result-metrics{display:grid;grid-template-columns:1fr 1fr;padding:22px 26px;gap:22px 18px}.quote-result-metrics span{font-size:11px;color:#829087;display:block;margin-bottom:7px}.quote-result-metrics strong{font-size:21px;font-variant-numeric:tabular-nums;color:#2e423a}.quote-result-rate{font-size:11px;line-height:1.8;color:#82968b;padding:0 26px 20px;margin:0}.quote-breakdown{border-top:1px solid #e3eae6}.quote-breakdown summary{padding:18px 24px;cursor:pointer;font-size:12px;font-weight:600;color:#3e6755;display:flex;justify-content:space-between;gap:10px;list-style:revert}.quote-breakdown summary span{font-size:11px;font-weight:400;color:#708b7d}.quote-breakdown dl{margin:0;padding:0 24px 22px}.quote-breakdown dl>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #edf1ee;font-size:12px}.quote-breakdown dt small{display:block;font-size:10px;line-height:1.7;color:#83978a;margin-top:4px}.quote-breakdown dd{margin:0;white-space:nowrap;color:#375244;font-variant-numeric:tabular-nums}.quote-breakdown .quote-total{border:0;font-weight:700;padding-top:18px}.quote-error{background:#fff4f2;border:1px solid #f2d1ca;border-radius:6px;color:#aa5145;font-size:12px;padding:12px;margin-top:16px}.quote-formula{display:flex;gap:20px;align-items:baseline;padding:20px 4px;margin-bottom:10px}.quote-formula strong{flex-shrink:0;color:#4c6d5d;font-size:12px}.quote-formula p{margin:0}.quote-history .panel-heading>.field{margin:0;max-width:220px}.quote-history .panel-heading{gap:20px}.quote-history-table{min-width:1120px}.quote-history .table-foot .button{min-height:30px;font-size:11px;padding:5px 12px}.quote-snapshot-meta{margin-bottom:20px}.quote-snapshot-meta p{color:#7b9082;font-size:12px;line-height:1.8}.quotation-dialog .quote-price-hero{border-radius:8px}.quotation-dialog .quote-result-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.quote-profile-panel .row-actions,.quote-history .row-actions{white-space:nowrap}.quote-workbench .panel{overflow:hidden}
@media(min-width:1500px){.quote-workbench{grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr)}.quote-input-panel form{padding:26px}.quote-input-panel .quote-grid{gap:18px 22px}}
.quote-profile-table th:last-child,.quote-profile-table td:last-child{position:sticky;right:0;background:#fff;box-shadow:-1px 0 #e1e9e5;min-width:112px}.quote-profile-table th:last-child{background:#f5f8f7}
.quote-history-table th:last-child,.quote-history-table td:last-child{position:sticky;right:0;background:#fff;box-shadow:-1px 0 #e1e9e5;min-width:112px}.quote-history-table th:last-child{background:#f5f8f7}.quote-profile-panel .table-wrap,.quote-history .table-wrap{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#91ad9e #f2f6f3}.quote-profile-panel .table-wrap::-webkit-scrollbar,.quote-history .table-wrap::-webkit-scrollbar{height:9px}.quote-profile-panel .table-wrap::-webkit-scrollbar-track,.quote-history .table-wrap::-webkit-scrollbar-track{background:#f2f6f3}.quote-profile-panel .table-wrap::-webkit-scrollbar-thumb,.quote-history .table-wrap::-webkit-scrollbar-thumb{background:#91ad9e;border-radius:8px}
@media(max-width:1120px){.quote-workbench{grid-template-columns:minmax(0,1fr)}.quote-output-panel{position:static}.quote-country-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-result-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.quote-grid,.quote-grid.three,.quote-fee-grid,.quote-country-grid{grid-template-columns:1fr}.quote-intro{align-items:flex-start;flex-wrap:wrap}.quote-intro>.button{margin-left:62px}.quote-formula{display:block}.quote-formula p{margin-top:8px}.quote-result-metrics,.quotation-dialog .quote-result-metrics{grid-template-columns:1fr 1fr}.quote-price-hero>strong{font-size:34px}.quote-history .panel-heading{flex-wrap:wrap}.quote-input-panel form,.quotation-dialog .modal-body{padding:18px}.quote-form-footer{flex-wrap:wrap}.quote-product-source{flex-wrap:wrap}.quote-product-source .field{flex-basis:100%}.quote-breakdown summary{flex-wrap:wrap}}

/* Daily-use quote workbench: readable inputs and a distinct result band. */
.quote-sheet{--quote-ink:#213e35;--quote-muted:#536b60;--quote-line:#cddbd4;--quote-accent:#126b55;overflow:hidden;min-width:0;border-color:#cbdcd3;border-top:4px solid var(--quote-accent);box-shadow:0 4px 18px #183c3308}
.quote-sheet [hidden]{display:none!important}
.quote-sheet-toolbar{display:flex;align-items:center;gap:28px;padding:24px;flex-wrap:wrap;background:#fff}
.quote-country-select{flex:0 0 250px}
.quote-country-select .field{margin:0}
#quote-sheet .field>label{font-size:14px;font-weight:650;color:var(--quote-ink);margin-bottom:9px}
#quote-sheet select,#quote-sheet .unified-select-trigger{min-height:46px;font-size:15px;color:var(--quote-ink);border-color:#9fb9ab;border-radius:7px}
#quote-sheet .unified-select-trigger{padding:10px;gap:6px}
#quote-sheet .unified-select-trigger>svg{color:#3e6e5c}
.quote-active-rule{display:flex;flex-direction:column;gap:6px;flex:1;min-width:200px;color:var(--quote-muted);font-size:13px;line-height:1.65;border-left:1px solid var(--quote-line);padding-left:28px}
.quote-active-rule>strong{font-size:20px;color:var(--quote-accent);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.3px}
.quote-active-rule details{position:relative}
.quote-active-rule summary{cursor:pointer;color:var(--quote-accent);width:max-content;padding:5px 0}
.quote-active-rule details .field{margin:10px 0 0;max-width:340px}
.quote-sheet-buttons{display:flex;align-items:center;gap:10px;margin-left:auto}
#quote-sheet .quote-sheet-buttons .button{min-height:46px;padding:11px 18px;font-size:14px;white-space:nowrap;border-color:#b7c9bf;color:#365346}
#quote-sheet .quote-sheet-buttons .primary{background:var(--quote-accent);border-color:var(--quote-accent);color:#fff;box-shadow:0 2px 4px #126b5518}
#quote-sheet .quote-sheet-buttons .primary:hover{background:#0e5745}
.quote-sheet-hint{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px 20px;padding:14px 24px;background:#eff6f2;border-top:1px solid #d7e4dc;border-bottom:1px solid #cddbd4;color:var(--quote-muted);font-size:13px;line-height:1.7}
.quote-sheet-hint strong{color:var(--quote-ink);font-size:15px;white-space:nowrap}
.quote-sheet-scroll{width:100%;overflow:auto;max-height:620px;scrollbar-width:thin;scrollbar-color:#6b9482 #e8f0eb;overscroll-behavior-x:contain}
.quote-sheet-scroll::-webkit-scrollbar{height:12px;width:10px}
.quote-sheet-scroll::-webkit-scrollbar-track{background:#e8f0eb}
.quote-sheet-scroll::-webkit-scrollbar-thumb{background:#6b9482;border:2px solid #e8f0eb;border-radius:9px}
.quote-sheet-scroll:focus-visible{outline:2px solid var(--quote-accent);outline-offset:-2px}
#main-content .quote-sheet .quote-sheet-table{width:100%;min-width:1722px;table-layout:fixed;border-collapse:separate;border-spacing:0}
#main-content .quote-sheet .quote-sheet-table th,#main-content .quote-sheet .quote-sheet-table td{padding:18px 10px;border-right:1px solid var(--quote-line);border-bottom:1px solid var(--quote-line);vertical-align:middle;font-size:15px;overflow-wrap:anywhere;line-height:1.5}
#main-content .quote-sheet .quote-sheet-table th{position:sticky;top:0;z-index:3;background:#dfece4;color:#294c3c;text-align:left;font-size:15px;font-weight:700;height:84px;white-space:normal}
#main-content .quote-sheet .quote-sheet-table th small{display:block;color:#4d695a;font-size:12px;font-weight:500;margin-top:5px;line-height:1.5}
#main-content .quote-sheet .quote-sheet-table td{background:#fff;height:100px}
#main-content .quote-sheet .quote-sheet-table .quote-data-row:nth-of-type(even)>td{background:#f5f8f6}
#main-content .quote-sheet .quote-sheet-table .quote-data-row:focus-within>td{background:#f0f7f3}
#main-content .quote-sheet .quote-sheet-table th:first-child,#main-content .quote-sheet .quote-sheet-table .quote-row-number{position:sticky;left:0;z-index:2;text-align:center;color:var(--quote-muted);font-weight:600}
#main-content .quote-sheet .quote-sheet-table th:nth-child(2),#main-content .quote-sheet .quote-sheet-table .quote-name-cell{position:sticky;left:48px;z-index:2;box-shadow:1px 0 #b8cdc0}
#main-content .quote-sheet .quote-sheet-table th:last-child,#main-content .quote-sheet .quote-sheet-table .quote-row-actions{position:sticky;right:0;z-index:2;border-right:0;box-shadow:-1px 0 #b8cdc0;text-align:center}
#main-content .quote-sheet .quote-sheet-table thead th:first-child,#main-content .quote-sheet .quote-sheet-table thead th:nth-child(2),#main-content .quote-sheet .quote-sheet-table thead th:last-child{z-index:4}
#quote-sheet .quote-cell-input{display:block;width:100%;min-width:0;height:46px;border:1px solid #a9beb1;border-radius:7px;background:#fff;padding:10px;margin:0;font-size:16px;color:var(--quote-ink);font-variant-numeric:tabular-nums;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}
#quote-sheet .quote-cell-input:hover{border-color:#65947b}
#quote-sheet .quote-cell-input:focus{outline:2px solid var(--quote-accent);outline-offset:2px;border-color:var(--quote-accent);box-shadow:0 0 0 4px #126b5510}
#quote-sheet .quote-cell-input::placeholder{color:#687d70;font-size:14px;opacity:1}
#quote-sheet .quote-name-cell>.quote-cell-input{font-size:15px;font-weight:600}
#main-content .quote-sheet .quote-sheet-table .quote-name-cell>small{display:block;font-size:12px;line-height:1.6;white-space:normal;color:var(--quote-muted);margin-top:8px}
#main-content .quote-sheet .quote-sheet-table .quote-name-cell>small:empty{display:none}
#main-content .quote-sheet .quote-sheet-table .quote-data-row.has-error>.quote-name-cell{background:#fff0eb;box-shadow:inset 3px 0 #bd4536,1px 0 #b8cdc0}
#main-content .quote-sheet .quote-sheet-table .quote-data-row.has-error .quote-row-message{color:#a33326}
#main-content .quote-sheet .quote-sheet-table .quote-data-row.is-calculated>.quote-row-number{color:var(--quote-accent);box-shadow:inset 3px 0 var(--quote-accent)}
#main-content .quote-sheet .quote-sheet-table td.quote-result-cell{text-align:right;font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.5;color:#2e473b}
#main-content .quote-sheet .quote-sheet-table .quote-data-row>td.quote-suggested{background:#eaf6ee;color:#0d6349}
#main-content .quote-sheet .quote-sheet-table .quote-data-row>td[data-quote-result="foreignPrice"]{background:#dff1e7;color:#084d39}
#main-content .quote-sheet .quote-sheet-table .quote-data-row:focus-within>td.quote-suggested{background:#daf0e3}
#main-content .quote-sheet .quote-sheet-table th.quote-result-cell{background:#205b49;color:#fff;text-align:right;border-color:#3d715f}
#main-content .quote-sheet .quote-sheet-table th.quote-suggested{background:#126b55}
#main-content .quote-sheet .quote-sheet-table th[data-quote-heading="foreignPrice"]{background:#0d5d48}
#main-content .quote-sheet .quote-sheet-table th.quote-result-cell small{color:#d4eadf}
#main-content .quote-sheet .quote-sheet-table .quote-result-cell strong{font-size:21px;font-weight:750;letter-spacing:-.4px}
.quote-pending{color:#698274;font-weight:400;font-size:18px}
.quote-ad-input,.quote-loss-input{position:relative}
#quote-sheet .quote-ad-input input{padding-right:35px}
.quote-ad-currency{position:absolute;right:8px;top:50%;transform:translateY(-50%);color:#526e5f;font-size:11px;pointer-events:none}
.quote-row-actions>div{display:flex;align-items:center;justify-content:space-between;gap:4px}
#quote-sheet .quote-row-actions .table-link{min-height:44px;min-width:44px;font-size:14px;font-weight:650;padding:0;white-space:nowrap;color:var(--quote-accent)}
#quote-sheet .quote-row-actions .table-link:disabled{color:#8b9991;cursor:default}
#quote-sheet .quote-delete{display:grid;place-items:center;height:44px;width:44px;min-width:44px;border-radius:7px;color:#61776a;padding:0}
#quote-sheet .quote-delete svg{height:18px;width:18px}
#quote-sheet .quote-delete:hover{color:#a33326;background:#ffede7}
#quote-sheet .quote-row-actions button:focus-visible{outline:2px solid var(--quote-accent);outline-offset:1px}
/* Goods type and loss rate stay together, directly editable on each row. */
.quote-goods-loss{display:grid;grid-template-columns:minmax(0,1fr) 60px;gap:8px;align-items:center}
#quote-sheet .quote-goods-loss select{width:100%;min-width:0;height:46px;background:#fff;padding:10px;font-size:15px}
#quote-sheet .quote-loss-input input{padding:10px 20px 10px 8px}
.quote-loss-input>span{position:absolute;right:7px;top:50%;transform:translateY(-50%);font-size:13px;color:#526e5f;pointer-events:none}
.quote-sheet-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:18px 24px;font-size:13px;color:var(--quote-muted);line-height:1.8;border-top:1px solid #d7e4dc;background:#fff}
#quote-sheet-status{padding:4px 12px;border-radius:6px;background:#e6f2eb;color:#28523d;font-variant-numeric:tabular-nums}
#quote-sheet-status strong{font-size:18px;margin:0 3px;color:var(--quote-accent)}
.quote-sheet-footer>div{display:flex;align-items:center;flex-wrap:wrap;gap:16px}
#quote-sheet .quote-sheet-footer .table-link{font-size:13px;min-height:44px}
.quote-sheet+.quote-formula{padding:18px 4px;gap:16px}
.quote-sheet+.quote-formula strong,.quote-sheet+.quote-formula p{font-size:13px;color:#536b60;line-height:1.8}
/* Match the supporting breakdown to the larger working table. */
.quotation-dialog .quote-price-hero>span,.quotation-dialog .quote-price-hero p,.quotation-dialog .quote-result-metrics span,.quotation-dialog .quote-breakdown summary,.quotation-dialog .quote-breakdown dl>div{font-size:14px}
.quotation-dialog .quote-result-rate,.quotation-dialog .quote-breakdown dt small,.quotation-dialog .quote-breakdown summary span{font-size:12px;color:#526a5c}
@media(max-width:700px){.quote-sheet-toolbar{padding:18px;gap:18px}.quote-country-select{flex:1 1 100%}.quote-active-rule{flex:1 1 100%;padding-left:0;border-left:0}.quote-sheet-buttons{width:100%;margin:0}.quote-sheet-buttons .button{flex:1}.quote-sheet-hint{padding:14px 18px;gap:5px}.quote-sheet-footer{padding:16px 18px;align-items:flex-start;flex-direction:column;gap:8px}.quote-sheet-footer>div{gap:8px}}
@media(prefers-reduced-motion:reduce){#quote-sheet .quote-cell-input{transition:none}}
