/* Bocheeto V4: full existing business controls, white interface theme only. */
:root{--surface:#fff;--surface-muted:#faf9fc;--ink:#27232d;--ink-muted:#726a7b;--line:#e7e2ec;--line-strong:#d8cfdf;--accent:#29232f;--accent-soft:#f1ebf8;--danger:#b13e50;--font:"Inter","Arial","Microsoft YaHei",sans-serif}
body{background:#fff;line-height:1.6;font-size:14px}
button,input,select,textarea{transition:border-color .16s,background .16s,box-shadow .16s}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #9578bd;outline-offset:3px}
[data-view="geo"],[data-go="geo"],.role-switch,#logoutBtn{display:none!important}
#appShell{max-width:1600px;margin:auto;min-width:0}
.topbar{padding:27px 38px 24px;align-items:center;border-bottom:1px solid #ece8f1;background:#fff;gap:20px}
.topbar h1{font-size:29px;letter-spacing:-1px;line-height:1.3;font-weight:730}
.topbar .eyebrow{color:#83718f;font-size:11px;letter-spacing:.4px;margin-bottom:8px;font-weight:500}
.top-actions{align-items:center}.user-summary{min-width:0;font-size:12px}.user-summary span{font-size:10px;color:#80748a}
.tool-nav{border:1px solid #ece7f1;background:#faf9fc;border-radius:50px;padding:5px;gap:4px;margin:22px 38px 0;display:inline-flex;max-width:calc(100% - 76px)}
.tool-nav button{border:0;border-radius:30px;min-height:42px;padding:0 20px;background:transparent;font-size:12px;color:#71657e;white-space:nowrap}
.tool-nav button.active{background:#29232f;color:#fff;box-shadow:0 3px 7px #211a3020}
.tool-nav button:hover:not(.active){background:#f0ebf5;color:#483752}
main{padding:21px 38px 48px;min-width:0}
.restore-notice{color:#80718c;font-size:11px;margin:0 0 20px;padding:0}
.view,.grid,.section-stack,.calculator-flow,.quote-flow,.catalog-layout,.panel,.panel-body,.form-grid,.field,.grid>*{min-width:0}
.home-tools{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:12px 0 25px}
.tool-entry{position:relative;background:#fff;border:1px solid #e8e1ee;border-radius:22px;padding:28px;min-height:272px;box-shadow:0 3px 14px #281a3604;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s,box-shadow .2s}
.tool-entry:hover{transform:translateY(-3px);border-color:#c8b5dc;box-shadow:0 13px 28px #30203f0b}
.tool-entry .number{display:grid;place-items:center;width:55px;height:55px;border-radius:17px;color:#8c6ba9;background:#f0e9fa;font-size:20px;letter-spacing:-1px;font-weight:600;margin:0 0 27px}
.tool-entry[data-go="quote"] .number{background:#fff4cd;color:#8a742e}.tool-entry[data-go="container"] .number{background:#edf4f3;color:#527670}
.tool-entry h2{font-size:23px;font-weight:650;letter-spacing:-.6px;line-height:1.5}
.tool-entry p{color:#7e708a;font-size:12px;line-height:1.8;margin-bottom:23px}
.tool-entry .primary{margin-top:auto;display:inline-flex;align-items:center;min-height:39px;font-size:11px;padding:0 17px}
h2{font-size:22px;font-weight:650;line-height:1.5}h3{font-size:16px;line-height:1.5;font-weight:650;margin-bottom:0}
.panel{border:1px solid #e7dfef;border-radius:18px;background:#fff;box-shadow:0 3px 12px #2d1b3903;overflow:hidden}
.panel-header{padding:19px 23px;gap:15px;border-bottom:1px solid #eee8f3;background:#fff;flex-wrap:wrap}
.panel-header h3{margin:0;color:#372c40}.panel-body{padding:22px 23px;overflow-x:auto}
.calculator-flow,.quote-flow,.database-flow{gap:23px;width:100%;grid-template-columns:minmax(0,1fr)}
#calculatorView .grid,#calculatorView .section-stack{grid-template-columns:minmax(0,1fr)}
.section-stack{gap:23px}.form-grid{gap:18px 20px}
.field{gap:8px}.field label{font-size:12px;color:#73647e;line-height:1.5}
.field input,.field select,.field textarea{min-width:0;min-height:44px;border:1px solid #d8cce3;border-radius:10px;background:#fff;padding:10px 12px;font-size:13px;max-width:100%;color:#36273f}
.field input:hover,.field select:hover,.field textarea:hover{border-color:#b59acb}.field textarea{min-height:100px;line-height:1.7}
.inline-field{grid-template-columns:minmax(0,1fr) auto;gap:7px}
.primary,.secondary,.plain,.danger{border-radius:30px;min-height:42px;padding:0 17px;border:1px solid #dbd1e4;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:7px}
.primary{background:#29232f;border-color:#29232f;color:#fff}.primary:hover{background:#44354e;border-color:#44354e}.secondary{background:#f5effb;color:#765589;border-color:#e6d9ef}.secondary:hover{background:#eee2f7}.plain{background:#fff;color:#75617f}.plain:hover{background:#faf6fd}.danger{background:#fff5f6;color:#ac3850;border-color:#f0dce0}
.segmented{border:1px solid #e4dae9;background:#faf7fd;border-radius:30px;padding:4px;gap:3px;max-width:100%;overflow:auto}
.segmented button{border:0;border-radius:24px;min-height:36px;padding:0 17px;background:transparent;font-size:12px;color:#786083;white-space:nowrap}
.segmented button.active{background:#eee3f8;color:#674582;font-weight:600}
.section-control{border:1px solid #e9dff1;border-left:3px solid #bd9cda;border-radius:12px;background:#fbf8fd;padding:13px 15px;grid-template-columns:100px minmax(150px,280px) minmax(0,1fr)}
.section-control label{font-size:12px;font-weight:600}.section-control select{border:1px solid #d8c9e2;border-radius:9px;min-height:40px;padding:7px 10px;min-width:0;max-width:100%}.section-control span{font-size:11px;color:#80658e}
.spring-controls{gap:17px}.spring-controls .section-control{grid-template-columns:75px minmax(0,1fr)}.spring-controls .section-control span{grid-column:1/-1}
table{font-size:12px}th,td{border-color:#e8deef;padding:11px 12px;line-height:1.55;vertical-align:middle}
th{background:#faf7fd;color:#745785;font-weight:600;font-size:11px}td{color:#42314c}
td input,td select{border:1px solid #d8c9e4;border-radius:8px;min-height:40px;padding:8px 9px;max-width:100%;min-width:0;background:#fff;color:#463250}
tfoot td,tfoot th{background:#faf7fd;border-color:#e5d9ed}.formula-cell{font-size:11px;color:#80648f}
.material-choice-table{min-width:570px}.material-choice-table.sales-material-table col:nth-child(1){width:23%}.material-choice-table.sales-material-table col:nth-child(2){width:59%}.material-choice-table.sales-material-table col:nth-child(3){width:18%}
.material-choice-table.admin-material-table{min-width:900px}.quote-matrix-wrap{min-width:0;max-width:100%;overflow-x:auto}.quote-matrix{min-width:760px}
.quote-matrix .current-size-row th,.quote-matrix .current-size-row td{background:#f0e6fa;border-color:#dac7e9;color:#65467f}
.matrix-note{font-size:11px;color:#796784;line-height:1.8}.summary-grid{gap:13px;min-width:0}.summary-cell{border-color:#e6d8ef;border-radius:13px;padding:17px}.summary-cell strong{font-size:28px;color:#392843;margin-top:9px}.summary-cell span{font-size:11px;color:#83688f}
.retail-floor{background:#faf6fe;border-color:#d8c0e9}.sales-note,.database-note{border:1px solid #e6d8ef;border-radius:10px;background:#f9f4fd;color:#82628f;padding:12px 15px;font-size:11px;line-height:1.8}
.dimension-warning{border:1px solid #edd9b4;background:#fffbef;color:#816426;border-radius:10px;font-weight:500;font-size:12px;padding:12px 15px}
.status-pill{border:1px solid #e0cdeb;border-radius:20px;background:#f7effd;color:#755087;padding:5px 11px;font-size:11px}
.catalog-layout{gap:21px;grid-template-columns:280px minmax(0,1fr)}.product-option{border-radius:13px;border-color:#e1d5e9;padding:12px}.product-option.active{border-color:#b794cc;outline:2px solid #f1e8f8}.product-option strong{font-size:12px}.product-option span{font-size:11px;color:#886a95}.product-option img,.quote-image{border-radius:8px;border-color:#eadff1}
.quote-paper{background:#fff;border-color:#e3d5ed;box-shadow:none;min-width:760px}.print-panel .panel-body{padding:24px;overflow-x:auto}.quote-title{border-color:#34233e}.quote-title h2{font-size:25px;color:#30223a}.quote-paper th{background:#faf7fd}.quote-meta div{border-color:#eadff0}.quote-notice{background:#fffaf0;color:#7d693c;border-color:#f0e5ca}.quote-paper td,.quote-paper th{border-color:#e1d7e9}.quote-cell-edit{border-radius:4px}.quote-paper .quote-cell-edit{min-height:0}
.payment-config,.payment-paper{border-color:#e4d8ed;border-radius:12px;background:#fcfafe}.payment-qr-row{gap:20px}.qr-preview,.payment-qr-row img{border-color:#e6dced}.quote-controls .muted{font-size:11px;color:#826890}.history-delete{white-space:nowrap}
.container-tool-frame{border:1px solid #e8dfee;border-radius:18px;min-height:calc(100vh - 160px);width:100%}
.save-status{color:#80618e;font-size:11px}.checkline{display:flex;align-items:center;gap:9px}.checkline input{width:17px!important;height:17px;min-height:17px;accent-color:#8766a7}.button-row{gap:9px}
@media(max-width:1080px){.topbar{padding:25px 26px}.tool-nav{margin:20px 26px 0;max-width:calc(100% - 52px)}main{padding:20px 26px 40px}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-tools{gap:17px}.tool-entry{padding:23px;min-height:275px}.tool-entry h2{font-size:21px}.catalog-layout{grid-template-columns:minmax(0,1fr)}.grid.two{grid-template-columns:minmax(0,1fr)}}
@media(max-width:720px){.topbar{padding:22px 19px;grid-template-columns:minmax(0,1fr) auto;gap:12px}.topbar h1{font-size:24px}.topbar .eyebrow{font-size:9px}.user-summary{font-size:10px}.user-summary span{font-size:9px;max-width:125px}.tool-nav{display:flex;flex-wrap:nowrap;overflow-x:auto;margin:16px 18px 0;max-width:calc(100% - 36px);border-radius:30px;gap:3px}.tool-nav button{min-height:39px;font-size:11px;padding:0 15px;flex-shrink:0}main{padding:17px 18px 35px}.restore-notice{font-size:10px;line-height:1.8;margin-bottom:17px}.home-tools{grid-template-columns:minmax(0,1fr);gap:15px}.tool-entry{min-height:0;padding:22px;display:grid;grid-template-columns:55px minmax(0,1fr);column-gap:18px;align-items:start}.tool-entry .number{grid-row:1/4;margin:0;width:49px;height:49px;font-size:19px;border-radius:14px}.tool-entry h2{font-size:21px;margin-bottom:8px}.tool-entry p{font-size:12px;margin-bottom:16px}.tool-entry .primary{justify-self:start;grid-column:2;font-size:11px}.panel{border-radius:15px}.panel-header{padding:17px 18px;gap:12px}.panel-header h3{font-size:15px}.panel-body{padding:18px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 13px}.field label{font-size:11px}.field input,.field select,.field textarea{padding:10px;font-size:12px;min-height:44px}.primary,.secondary,.plain,.danger{font-size:11px;padding:0 14px;min-height:42px}.section-control{grid-template-columns:80px minmax(0,1fr);gap:9px;padding:12px}.section-control span{grid-column:1/-1}.spring-controls,.qr-upload-grid{grid-template-columns:minmax(0,1fr)}.material-choice-table{min-width:510px}th,td{padding:10px;font-size:11px}.quote-matrix{min-width:700px}.section-stack,.calculator-flow,.quote-flow{gap:18px}.segmented button{font-size:11px;padding:0 14px;min-height:34px}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-cell{padding:14px}.summary-cell strong{font-size:24px}.print-panel .panel-body{padding:15px}.container-tool-frame{border-radius:13px;min-height:1100px}.panel-header .button-row{width:100%}.panel-header .button-row>*{flex-grow:1}.quote-paper{min-width:760px}.payment-config{padding:14px}.button-row{gap:7px}}
@media(max-width:380px){.form-grid{grid-template-columns:minmax(0,1fr)}.topbar h1{font-size:22px}.user-summary{max-width:100px}.tool-entry{grid-template-columns:43px minmax(0,1fr);gap:14px}.tool-entry .number{width:42px;height:42px}.tool-entry h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}.tool-entry:hover{transform:none}}
@media print{.restore-notice{display:none!important}.panel{border:0;box-shadow:none;border-radius:0}.quote-paper{min-width:0;width:100%;border:0;box-shadow:none}.print-panel .panel-body{overflow:visible;padding:0}.quote-paper th,.quote-paper td{color:#111}.quote-title h2{color:#111}}
