/* Match the original quotation sheet; business logic stays in the shared model. */
[hidden] { display:none !important; }
.access-pending .app-header-actions,.access-pending .classic-tabs,.auth-required .app-header-actions,.auth-required .classic-tabs,.auth-required .workspace { display:none; }
.access-panel { padding:48px 20px; }
.access-card { max-width:440px; margin:0 auto; padding:28px; border:1px solid #c7d3df; border-radius:8px; background:#fff; }
.access-card h1 { margin:0 0 12px; font-size:21px; color:#234f72; }
.access-card p { line-height:1.7; color:#697987; }
.access-card .field { margin-top:22px; }
.access-card input { font-size:18px; letter-spacing:.06em; }
.access-card .access-error { color:#a83232; min-height:24px; }
.access-card .access-note { margin-bottom:0; font-size:12px; }
.sharing-fields { display:grid; gap:18px; }
.sharing-row { display:flex; gap:8px; align-items:center; }
.sharing-row input { flex:1; min-width:0; font-family:Consolas,"Microsoft YaHei",sans-serif; }
.sharing-help { margin:16px 0 0; line-height:1.7; color:#697987; }
.customer-sales-page { display:grid; gap:16px; }
.customer-sales-page .classic-toolbar { margin-bottom:0; }
.customer-intro { margin:0; color:#607587; font-size:13px; line-height:1.7; }
.customer-meta .form-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px 18px; }
.customer-meta textarea { min-height:64px; }
.customer-meta .field>span { font-size:12px; }
.customer-meta input,.customer-meta textarea { font-size:13px; }
.customer-products .panel-header { gap:10px; flex-wrap:wrap; }
.customer-sales-table { border-collapse:collapse; width:100%; min-width:1120px; table-layout:fixed; color:#263849; background:#fff; }
.customer-sales-table th { background:#e5edf4; color:#244c6d; font-size:12px; line-height:1.7; font-weight:600; border:1px solid #b8cad9; padding:9px 6px; }
.customer-sales-table td { border:1px solid #c7d3df; padding:12px 8px; vertical-align:middle; text-align:center; font-size:12px; line-height:1.7; overflow-wrap:anywhere; }
.customer-sales-table th small { font-size:10px; font-weight:400; color:#647c8f; }
.customer-sales-table .cs-image { width:12%; }.customer-sales-table .cs-code { width:8%; }.customer-sales-table .cs-product { width:14%; }.customer-sales-table .cs-color { width:7%; }.customer-sales-table .cs-size { width:12%; }.customer-sales-table .cs-area { width:12%; }.customer-sales-table .cs-price { width:9%; }.customer-sales-table .cs-amount { width:9%; }.customer-sales-table .cs-detail { width:17%; }
.customer-sales-table tbody tr:nth-child(even) { background:#f9fbfd; }
.customer-diagram { display:block; width:100%; height:110px; object-fit:contain; margin:0 auto 10px; background:white; }
.customer-no-diagram { display:flex; align-items:center; justify-content:center; min-height:90px; color:#8393a0; border:1px dashed #cad5de; border-radius:3px; margin-bottom:10px; background:#fbfcfd; }
.customer-text-button { display:block; padding:4px; border:0; background:none; color:#667e91; text-decoration:underline; font-size:11px; margin:4px auto 0; cursor:pointer; }
.customer-sales-table .customer-product-name { text-align:left; font-size:13px; font-weight:500; }
.customer-product-name small,.customer-dimensions small { display:block; color:#768999; font-size:11px; font-weight:400; margin-top:6px; }
.customer-dimensions { font-variant-numeric:tabular-nums; }
.customer-window-number { display:block; margin-top:5px; color:#768999; font-size:10px; }
.customer-price-field { display:block; }
.customer-price-field>span { display:block; color:#758596; font-size:10px; margin-bottom:5px; }
.customer-price-field input { width:100%; min-width:0; padding:7px 5px; font-size:14px; border:1px solid #b5cadd; border-radius:3px; text-align:right; background:#fffdf1; font-variant-numeric:tabular-nums; }
.customer-price-field input::placeholder { font-size:10px; }
.customer-sales-table [data-customer-area] { display:block; margin-top:6px; font-size:10px; color:#6a7f91; }
.customer-sales-table .customer-amount { font-weight:600; color:#244c6d; font-variant-numeric:tabular-nums; }
.customer-details-cell small { display:block; text-align:left; font-size:10px; color:#667b8d; margin-top:4px; }
.customer-details-cell .customer-issue { color:#9a601b; }
.customer-notes { display:block; text-align:left; margin-top:10px; }.customer-notes>span { color:#768999; font-size:10px; }.customer-notes textarea { margin-top:4px; display:block; width:100%; min-height:48px; font-size:11px; padding:5px; }
.customer-sales-table tfoot td { padding:14px 12px; background:#e5edf4; font-size:16px; font-weight:600; color:#244c6d; text-align:right; }
.customer-calculation-note { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:12px 16px; font-size:12px; color:#687e90; }
.customer-calculation-message:empty { display:none; }.customer-calculation-message:not(:empty) { padding:12px; }
.customer-bottom-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }.customer-bottom-actions>span { font-size:12px; color:#718495; }
.customer-preview-dialog { width:min(1150px,96vw) !important; max-width:96vw !important; }
.customer-preview-body { padding:12px !important; }.customer-print-frame { width:100%; height:65vh; min-height:300px; border:1px solid #c7d3df; background:#fff; }
@media(max-width:900px) { .customer-meta .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:520px) { .customer-meta .form-grid { grid-template-columns:1fr; }.customer-preview-dialog .modal-footer { flex-wrap:wrap; } }
:root { --blue:#447fb2; --blue-dark:#356a99; --blue-pale:#edf3fb; --ink:#202a33; --muted:#697987; --line:#c7d3df; --shadow:none; }
html,body { background:#f1f3f5; color:#202a33; font-size:13px; }
body { min-width:360px; }
button,input,select,textarea { font-family:"Microsoft YaHei UI","Microsoft YaHei",sans-serif; }
.app-header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; min-height:48px; padding:8px 16px; background:#fff; border-bottom:1px solid #d4dee7; }
.app-title { font-size:16px; font-weight:600; color:#234f72; white-space:nowrap; }
.app-title span { font-size:13px; font-weight:400; }
.app-header-actions { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.app-header .save-state { font-size:12px; color:#697987; margin-right:8px; }
.app-header .save-state.dirty { color:#976826; }
.classic-tabs { display:flex; align-items:stretch; gap:0; padding:0 16px; min-height:39px; border-bottom:1px solid #bfcfdf; background:#e8eef4; }
.classic-tabs .nav-item { display:inline-flex; width:auto; justify-content:center; gap:7px; margin:0; padding:9px 23px; font-size:13px; color:#4a6072; border:0; border-right:1px solid #d4dfe8; border-radius:0; background:transparent; }
.classic-tabs .nav-item.active { color:#1b5483; background:#fff; box-shadow:inset 0 3px #5b9bd5; font-weight:600; }
.classic-tabs .nav-item:hover { background:#f8fbfe; }
.classic-tabs .nav-item svg { width:15px; height:15px; }
.classic-tabs .nav-item>span { display:inline; }
.classic-tabs .nav-number { color:#6985a0; background:transparent; padding:0; }
.workspace { margin:0; min-height:calc(100vh - 88px); display:block; }
.workspace main { max-width:1600px; margin:0 auto; width:100%; padding:12px 16px 24px; }
.btn { border-radius:3px; padding:6px 12px; font-size:13px; line-height:1.5; min-height:31px; box-shadow:none; border-color:#b8c8d7; color:#344f65; gap:5px; }
.btn:hover { border-color:#7e9eba; background:#eef5fb; }
.btn-primary { background:#5b9bd5; color:white; border-color:#4b87bc; box-shadow:none; }
.btn-primary:hover { background:#477fad; color:#fff; border-color:#477fad; }
.btn-soft { background:#f7fafe; color:#315f87; border-color:#c5d5e3; }
.btn-sm { font-size:12px; min-height:28px; padding:4px 10px; }
.btn svg { width:14px; height:14px; }
.icon-button { border-radius:2px; }
.classic-toolbar { position:sticky; top:0; z-index:30; display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; margin-bottom:9px; padding:8px 0; background:#f1f3f5; box-shadow:0 1px 0 #d4dee7; overflow:visible; }
.toolbar-left,.toolbar-right { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.classic-toolbar .toolbar-left { min-width:0; max-width:100%; }
.classic-toolbar .toolbar-right { margin-left:auto; }
.classic-toolbar>h1,.classic-toolbar h2 { font-size:16px; margin:0; font-weight:600; }
.classic-toolbar .actions { flex-wrap:wrap; gap:6px; }
.classic-heading { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:10px; }
.classic-heading h1 { margin:0; font-size:16px; font-weight:600; }
.classic-heading p { margin:5px 0 0; color:#697c8b; font-size:12px; }
.sheet-extra-menu { position:relative; display:inline-block; }
.sheet-extra-menu>summary { list-style:none; cursor:pointer; }
.sheet-extra-menu>summary::-webkit-details-marker { display:none; }
.sheet-extra-menu[open] { z-index:20; }
.sheet-extra-menu .menu-items,.sheet-extra-menu>div { position:absolute; right:0; top:100%; display:grid; min-width:168px; padding:5px; gap:3px; background:#fff; border:1px solid #aebfd0; box-shadow:0 3px 10px #25445c20; }
.sheet-extra-menu>div .btn { justify-content:flex-start; border-color:transparent; background:#fff; }
.sheet-extra-menu>div .btn:hover { background:#edf3fb; }
.classic-sheet { background:white; border:1px solid #95b3cf; overflow:visible; }
.sheet-brand { min-height:88px; display:flex; align-items:center; justify-content:center; gap:14px; padding:8px; background:#deecf7; border-bottom:1px solid #aecbf1; }
.sheet-brand .brand-logo,.sheet-brand img[src*="brand-logo"] { width:325px; max-width:60%; height:auto; max-height:75px; object-fit:contain; }
.sheet-brand .brand-mascot,.sheet-brand img[src*="brand-mascot"] { width:55px; height:66px; object-fit:contain; }
.sheet-title { text-align:center; font-size:17px; font-weight:600; color:#004898; margin:0; }
.sheet-meta { display:flex; align-items:center; justify-content:center; gap:6px 14px; flex-wrap:wrap; min-height:38px; padding:5px 10px; color:#3c7bb1; background:#fff; border-bottom:1px solid #aecbf1; font-family:SimSun,"宋体",serif; }
.sheet-meta label { display:flex; align-items:center; gap:4px; font-size:13px; }
.sheet-meta .field { display:flex; flex-direction:row; align-items:center; gap:4px; }
.sheet-meta .field>span { white-space:nowrap; font-size:13px; color:#3c7bb1; }
.sheet-meta input { font-size:13px; font-family:SimSun,"宋体",serif; padding:3px 4px; border:0; border-bottom:1px solid #c5d8e9; background:transparent; color:#1d4568; border-radius:0; min-width:50px; max-width:240px; width:150px; height:26px; }
.sheet-meta input[type=date] { min-height:26px; width:126px; }
.sheet-meta .quote-meta-more { font-family:"Microsoft YaHei UI",sans-serif; font-size:12px; }
.sheet-meta-field>span { white-space:nowrap; }
.sheet-note { padding:6px 10px; border-top:1px solid #aecbf1; font:13px SimSun,"宋体",serif; }
.sheet-note label { display:flex; align-items:center; gap:5px; }
.sheet-note input { flex:1; min-width:0; padding:4px; border:0; border-bottom:1px solid #d4e1ed; border-radius:0; font:inherit; background:transparent; }
.sheet-note input:focus { outline:1px solid #5b9bd5; }
.sheet-hint { margin:3px 0 8px; color:#697c8b; font-size:12px; }
.classic-sheet .table-wrap,.sheet-table-wrap { overflow:auto; scrollbar-width:thin; scrollbar-color:#9cb0c2 #eef2f6; }
.quote-sheet-table { width:100%; min-width:1000px; table-layout:fixed; border-collapse:collapse; background:#fff; font-family:SimSun,"宋体","Microsoft YaHei",serif; font-size:13px; color:#111; }
.quote-sheet-table col:nth-child(1) { width:15%; }
.quote-sheet-table col:nth-child(2) { width:3.5%; }
.quote-sheet-table col:nth-child(3) { width:19%; }
.quote-sheet-table col:nth-child(4),.quote-sheet-table col:nth-child(5) { width:5.5%; }
.quote-sheet-table col:nth-child(6) { width:9%; }
.quote-sheet-table col:nth-child(7) { width:4.5%; }
.quote-sheet-table col:nth-child(8) { width:6.5%; }
.quote-sheet-table col:nth-child(9) { width:7.5%; }
.quote-sheet-table col:nth-child(10) { width:7.5%; }
.quote-sheet-table col:nth-child(11) { width:16.5%; }
.quote-sheet-table th { font-family:SimSun,"宋体",serif; font-size:13px; color:white; background:#5b9bd5; text-align:center; font-weight:bold; border:1px solid #fff; padding:7px 3px; height:34px; line-height:1.35; white-space:normal; position:sticky; top:0; z-index:2; }
.quote-sheet-table td { border:1px solid #aecbf1; padding:3px 4px; height:34px; line-height:1.4; text-align:center; vertical-align:middle; overflow-wrap:anywhere; }
.quote-sheet-table td.sheet-has-diagram { position:relative; padding:3px 6px; }
.sheet-diagram-gallery { font-family:"Microsoft YaHei",sans-serif; }
.sheet-diagram-cards { display:grid; grid-template-columns:minmax(0,1fr); gap:6px; max-height:260px; overflow:auto; scrollbar-width:thin; }
.sheet-diagram-cards.has-multiple { grid-template-columns:repeat(2,minmax(0,1fr)); }
.sheet-diagram-card { margin:0; min-width:0; display:flex; flex-direction:column; align-items:center; }
.sheet-diagram-image { display:block; width:100%; max-width:160px; height:88px; border:1px solid #d2dfeb; border-radius:2px; background:white; padding:3px; cursor:zoom-in; }
.has-multiple .sheet-diagram-image { height:70px; }
.sheet-diagram-image img { width:100%; height:100%; object-fit:contain; }
.sheet-diagram-image.is-missing { height:60px; cursor:pointer; border-style:dashed; color:#8195a6; font-size:11px; }
.sheet-diagram-card figcaption { width:100%; padding-top:2px; font-size:11px; color:#617b90; line-height:1.4; }
.sheet-diagram-card figcaption strong,.sheet-diagram-card figcaption small { display:block; }
.sheet-diagram-card figcaption strong { color:#315f83; font-size:11px; font-weight:400; }
.quote-sheet-table td small.sheet-diagram-warning { color:#996320; font-size:10px; }
.sheet-zone-label { margin-top:3px; }
.sheet-zone-label.is-collapsed { display:none; }
.sheet-zone-edit { position:absolute; top:3px; right:3px; display:flex; align-items:center; justify-content:center; width:19px; height:19px; padding:1px; border:0; border-radius:3px; background:#ffffffd9; color:#7d91a3; cursor:pointer; }
.sheet-zone-edit[hidden] { display:none; }
.sheet-zone-edit:hover,.sheet-zone-edit:focus-visible { color:#245f94; background:#e2edf9; outline:1px solid #aecbf1; }
.sheet-zone-label input:placeholder-shown:not(:focus) { color:#6c8194; }
.sheet-has-diagram .sheet-zone-label input { height:25px; min-height:25px; padding:2px; font-size:12px; }
#modal.sheet-diagram-dialog { width:min(1100px,94vw); }
.sheet-diagram-view { text-align:center; }
.sheet-diagram-view img { max-width:100%; max-height:65vh; object-fit:contain; }
.sheet-diagram-view p { color:#657f94; margin-top:10px; }
.quote-image-stage { position:fixed; left:-24000px; top:0; width:1300px; pointer-events:none; z-index:-1; }
.quote-image-sheet { width:1300px; margin:0; background:#fff; }
.quote-image-sheet .sheet-table-wrap { overflow:visible; }
.quote-image-sheet .quote-sheet-table { min-width:0; width:100%; }
.quote-image-sheet .quote-sheet-table th { position:static; }
.quote-image-sheet .sheet-diagram-cards { max-height:none; overflow:visible; }
.quote-image-sheet .sheet-diagram-image { display:flex; align-items:center; justify-content:center; }
.quote-image-sheet .sheet-diagram-image img { display:block; flex:0 0 auto; max-width:none; max-height:none; object-fit:fill; }
.quote-image-sheet .sheet-cell-text { display:block; min-height:25px; padding:3px 2px; font:13px/1.4 SimSun,"宋体",serif; white-space:pre-wrap; overflow-wrap:anywhere; }
.quote-image-sheet .sheet-zone-label .sheet-cell-text { min-height:0; padding:2px; font-size:12px; }
.quote-image-sheet .quote-image-value { display:inline-block; max-width:360px; white-space:pre-wrap; overflow-wrap:anywhere; }
.quote-image-sheet .sheet-note .quote-image-value { flex:1; max-width:none; min-height:18px; }
.quote-image-sheet .sheet-meta label { min-width:0; }
.quote-image-sheet .sheet-diagram-image.is-missing { display:flex; align-items:center; justify-content:center; }
.download-result.image-downloads { flex-wrap:wrap; }
.image-downloads a { margin-right:12px; overflow-wrap:anywhere; }
.quote-sheet-table td[rowspan] { vertical-align:middle; }
.quote-sheet-table tr.sheet-group-alt,.quote-sheet-table tr.group-alt,.quote-sheet-table tr[data-group-tone="1"] { background:#edf3fb; }
.quote-sheet-table tr.sheet-group-even { background:#fff; }
.quote-sheet-table tr.sheet-group-odd { background:#edf3fb; }
.quote-sheet-table tr.sheet-row-selected { box-shadow:inset 0 0 0 2px #5b9bd5; }
.quote-sheet-table tr.sheet-row-selected td:not([rowspan]) { background:#e2edf9; }
.quote-sheet-table td.sheet-product,.quote-sheet-table td.sheet-notes,.quote-sheet-table td.notes-cell { text-align:left; }
.quote-sheet-table td.sheet-col-name,.quote-sheet-table td.sheet-col-notes { text-align:left; }
.quote-sheet-table .sheet-col-amount,.quote-sheet-table .sheet-col-subtotal { font-variant-numeric:tabular-nums; }
.quote-sheet-table .sheet-editable { cursor:text; }
.quote-sheet-table .sheet-empty-row td { height:38px; color:#8b9baa; }
.quote-sheet-table td .muted,.quote-sheet-table td small { color:#647b8e; font-size:11px; }
.quote-sheet-table td.sheet-readonly { cursor:default; }
.quote-sheet-table td.sheet-readonly[data-detail],.quote-sheet-table td.sheet-product { cursor:pointer; }
.sheet-cell-input { width:100%; min-width:0; padding:3px 2px; margin:0; min-height:25px; border:1px solid transparent; border-radius:0; color:#111; background:transparent; font-family:SimSun,"宋体",serif; font-size:13px; line-height:1.4; box-shadow:none; text-align:inherit; }
.sheet-cell-input[type=number] { appearance:textfield; -moz-appearance:textfield; text-align:right; }
.sheet-cell-input::-webkit-inner-spin-button,.sheet-cell-input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.sheet-cell-input::placeholder { color:#9caab5; font-size:11px; }
.sheet-cell-input:hover { border-color:#b9d0e6; background:#fffef2; }
.sheet-cell-input:focus { outline:1px solid #2d78b8; outline-offset:0; border-color:#2d78b8; background:#fffef2; box-shadow:none; }
.sheet-total { background:#deecf7; font-weight:bold; color:#143e61; }
.quote-sheet-table tfoot td { height:38px; border-color:#aecbf1; font-size:14px; }
.sheet-status { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; padding:8px 2px; color:#61778b; font-size:12px; }
.sheet-status .checkbox { font-size:12px; color:#526779; }
.sheet-status .totals-inline strong { font-size:18px; }
.sheet-status .preview-indicator { font-size:12px; color:#526779; }
.sheet-status .hint { color:#7b858e; font-size:11px; }
.classic-hint { font-size:12px; color:#697c8b; margin:8px 0; }
.classic-summary { display:flex; justify-content:space-between; padding:8px; background:#f6f9fc; border:1px solid #c7d3df; }
.compact-query { border:1px solid #bdcddd; background:#fff; padding:12px; margin-bottom:10px; }
.compact-query form,.compact-query .query-main { display:flex; align-items:flex-end; gap:8px; flex-wrap:wrap; }
.compact-query .field { gap:4px; }
.compact-query .field input,.compact-query .field select { min-height:31px; height:31px; padding:4px 7px; font-size:13px; }
.compact-query .keyword-field { flex:1; min-width:180px; }
.compact-query form { display:block; }
.compact-query .query-keyword { flex:1; min-width:200px; }
.compact-query .query-dates { display:flex; gap:8px; flex-wrap:wrap; }
.compact-query .query-options { flex-basis:100%; margin-top:7px; }
.query-options { color:#61778b; font-size:12px; }
.query-options>summary { cursor:pointer; padding:4px 0; }
.query-options .field { display:inline-flex; margin-right:10px; margin-top:5px; }
.query-options input { width:150px; }
.classic-page .panel { border-radius:1px; box-shadow:none; margin-bottom:10px; }
.panel { border-radius:2px; box-shadow:none; }
.panel-header { padding:10px 12px; gap:8px; background:#edf3fb; }
.panel-header h2 { font-size:14px; }
.panel-body { padding:12px; }
.page-heading { margin-bottom:12px; }
.page-heading h1 { font-size:18px; font-weight:600; letter-spacing:0; }
.eyebrow { display:none; }
.page-subtitle { font-size:12px; margin-top:3px; }
.data-table th { color:#fff; background:#5b9bd5; font-size:12px; padding:7px 9px; border:1px solid #e3eef7; }
.data-table td { padding:8px 9px; font-size:13px; border:1px solid #c7d8e7; }
.data-table tbody tr:nth-child(even) { background:#edf3fb; }
.table-footer { font-size:12px; padding:7px 10px; }
.empty-state { padding:28px 12px; text-align:center; }
.empty-state .empty-icon { display:none; }
.empty-state h3 { font-size:14px; margin-bottom:7px; font-weight:500; }
.empty-state p { font-size:12px; color:#6d8091; max-width:600px; }
.empty-state .actions { margin-top:12px; }
.alert { font-size:12px; border-radius:2px; padding:7px 10px; margin-bottom:9px; line-height:1.6; }
.alert ul { margin:0; }
.badge,.count-chip { border-radius:2px; font-size:11px; }
.field>span,.field>label { font-size:12px; color:#556b7d; }
.field input,.field select,.field textarea { border-radius:2px; font-size:13px; padding:6px 8px; }
.form-grid { gap:12px; }
.field small { font-size:11px; }
.draft-card-grid { gap:10px; }
.draft-card { padding:12px; border-radius:2px; }
.draft-top { margin-bottom:8px; }
.draft-icon { display:none; }
.draft-card h3 { font-size:14px; }
.draft-card p,.draft-card small { font-size:12px; margin:6px 0; }
.pricing-grid { gap:12px; }
.quiet-card { padding:12px; }
.quiet-card p { font-size:12px; margin:6px 0 12px; }
.settings-details { border-radius:2px; }
.settings-details>summary { font-size:13px; padding:9px; }
.settings-details>summary>span { font-size:11px; }
.modal { border-radius:3px; border-color:#9cb4c9; box-shadow:0 8px 30px #243e5a35; }
#modal.quick-price-dialog { width:min(640px,calc(100vw - 28px)); }
.quick-price-fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:14px; margin:20px 0 12px; }
.quick-price-count { margin:12px 0; padding:10px 12px; background:#edf5fd; color:#285980; font-weight:600; font-size:13px; }
.quick-price-help { color:#667b8b; font-size:12px; line-height:1.8; margin:8px 0; }
.quick-price-warning { color:#8c652b; background:#fff6e6; padding:9px; font-size:12px; }
.quick-price-items { margin-top:20px; border-top:1px solid #e0e7ed; padding-top:12px; font-size:12px; }
.quick-price-items summary { cursor:pointer; color:#426c8d; }
.quick-price-items>div { max-height:200px; overflow:auto; }
.quick-price-items label { display:flex; gap:8px; padding:7px 0; align-items:center; }
#modal.customer-fee-dialog { width:min(740px,calc(100vw - 28px)); }
.customer-fee-dialog .modal-body { padding:16px 22px; }
.customer-fee-dialog .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 18px; }
.simple-fee-spec { color:#5b7283; font-size:12px; margin-bottom:17px; }
.simple-fee-section { margin-bottom:18px; }
.simple-fee-section h3 { font-size:14px; color:#263e50; margin-bottom:9px; }
.simple-fee-help { color:#758594; font-size:12px; margin:6px 0; }
.simple-fee-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(160px,.8fr); align-items:center; gap:18px; padding:8px 0; border-bottom:1px solid #e8edf2; }
.simple-fee-row strong { display:block; font-size:13px; font-weight:600; color:#314a5c; overflow-wrap:anywhere; }
.simple-fee-row small { display:block; margin-top:3px; color:#798994; font-size:12px; }
.simple-fee-row .field { margin:0; }
.simple-fee-row .field>span { font-size:12px; }
.simple-fee-disclosure { margin-top:9px; }
.simple-fee-disclosure>summary { cursor:pointer; color:#627d94; padding:7px 0; font-size:12px; }
.simple-fee-disclosure>summary small { color:#8796a3; margin-left:6px; }
.simple-fee-disclosure .form-grid { padding:7px 0 10px; }
.simple-fee-more { border-top:1px solid #dfe7ee; padding-top:5px; }
.simple-fee-section-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.simple-fee-section-head h3 { margin:0; }
.simple-fee-pending { background:#fff8e9; color:#956715; border-radius:4px; padding:8px 10px; font-size:12px; margin:10px 0; }
.simple-fee-confirm { margin-top:14px; font-size:12px; }
.simple-addition { padding-bottom:3px; }
@media(max-width:520px) { .customer-fee-dialog .modal-body { padding:13px; }.simple-fee-row { gap:10px;grid-template-columns:minmax(0,1fr) 145px; }.customer-fee-dialog .form-grid { gap:10px; } }
.modal::backdrop { background:#19354b45; backdrop-filter:none; }
.modal-header { padding:13px 16px; background:#edf3fb; }
.modal-header h2 { font-size:16px; }
.modal-header p { font-size:12px; margin-top:4px; }
.modal-body { padding:15px 16px; }
.modal-footer { padding:10px 16px; }
.modal .form-grid { gap:11px; }
.detail-information { font-size:12px; border-radius:2px; padding:8px; }
.addition-card { border-radius:2px; padding:10px; }
.addition-head { font-size:12px; }
.addition-grid .field input,.addition-grid .field select,.addition-grid .field>span { font-size:12px; }
.toast { border-radius:3px; font-size:13px; }
.download-result { padding:8px 10px; border-radius:2px; font-size:12px; margin:8px 0; }
.boot-loading { min-height:220px; font-size:13px; }
.glass-table { min-width:900px; }
.glass-table td { font-size:12px; }
.glass-table .note-cell { font-size:12px; }
@media(max-width:820px) {
  .app-header { padding:7px 10px; }
  .app-header .save-state { display:none; }
  .app-title { font-size:15px; }
  .app-title span { font-size:12px; }
  .classic-tabs { padding:0 10px; }
  .classic-tabs .nav-item { padding:9px 16px; font-size:13px; }
  .workspace main { padding:10px; }
  .classic-toolbar .btn { font-size:12px; padding:5px 9px; }
  .sheet-brand { min-height:78px; padding:6px; }
  .sheet-brand img[src*="brand-logo"] { width:290px; }
  .sheet-brand img[src*="brand-mascot"] { width:48px; height:58px; }
  .sheet-meta { justify-content:flex-start; gap:5px 10px; }
  .sheet-meta input { width:135px; }
  .modal .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:560px) {
  .app-header { gap:7px; }
  .app-header-actions { gap:4px; }
  .app-title span { display:none; }
  .app-header .btn { padding:4px 7px; font-size:12px; }
  .classic-tabs .nav-item { flex:1; padding:9px 5px; gap:4px; font-size:12px; }
  .classic-tabs .nav-item svg { display:none; }
  .classic-toolbar { align-items:flex-start; }
  .toolbar-right { justify-content:flex-start; }
  .compact-query .field { flex:1; }
  .compact-query .keyword-field { flex-basis:100%; }
  .sheet-status { align-items:flex-start; }
  .classic-sheet .sheet-meta { font-size:12px; }
  .modal .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .modal .field>span,.modal .field input,.modal .field select { font-size:12px; }
}
