:root{font-family:'Segoe UI',Tahoma,sans-serif;color:#203348;font-size:14px;--navy:#142f50;--yellow:#f4c938;--border:#e1e7ed;--muted:#7c8b9d}*{box-sizing:border-box}body{margin:0;background:#f4f6f9}button,input,select,textarea{font:inherit}button,a{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #2f7bd2;outline-offset:3px}button,.button{border:1px solid #d9e1eb;background:#fff;color:#28425d;border-radius:6px;padding:10px 14px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:40px;font-size:12px}button:hover,.button:hover{border-color:#718ba6}button.primary,.primary{background:var(--navy);border-color:var(--navy);color:#fff;font-weight:600}button.primary:hover{background:#264c77}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}input,textarea,select{width:100%;min-width:0;padding:11px;border:1px solid #dbe3ec;border-radius:5px;background:white;color:#203348;font-size:14px}input:focus,textarea:focus,select:focus{outline:2px solid #4b83b4;outline-offset:1px}label{display:flex;flex-direction:column;gap:7px;font-size:12px;margin-bottom:18px;font-weight:500}textarea{resize:vertical;line-height:1.7}h1,h2,h3,p{margin-top:0}h1{font-size:29px;line-height:1.5;letter-spacing:-.7px;font-weight:600;margin-bottom:8px}h2{font-size:18px;font-weight:600}h3{font-size:13px;line-height:1.7}.environment{background:#fff5cf;color:#786029;padding:8px 24px;font-size:10px;letter-spacing:.3px}.workspace{display:flex;min-height:calc(100vh - 30px)}aside{background:var(--navy);color:#fff;width:236px;padding:32px 20px;display:flex;flex-direction:column;flex-shrink:0}.wordmark{display:flex;gap:12px;align-items:center;font-weight:700;font-size:18px;letter-spacing:1.4px}.wordmark>span{background:var(--yellow);color:var(--navy);font-size:32px;font-weight:900;width:42px;height:45px;display:flex;align-items:center;padding-left:7px;letter-spacing:-7px}.bolt{font-size:20px;align-self:flex-start;padding-top:4px}.wordmark small{display:block;letter-spacing:2px;font-size:7px;color:#a9bfd5;margin-top:4px}.sidebar-caption{font-size:10px;color:#8fa9c3;margin:44px 12px 16px}nav{display:grid;gap:9px}nav button{background:none;border:0;color:#b4c7da;text-align:left;justify-content:flex-start;padding:13px 14px;font-size:12px}nav button.active{color:var(--yellow);background:#ffffff10}nav button:hover{background:#ffffff0c}.sidebar-note{font-size:10px;border-top:1px solid #ffffff1c;padding-top:22px;margin:42px 12px 0;color:#bed0e1}.sidebar-note p{line-height:1.8;font-size:10px;margin-top:10px;color:#8da6c0}.sidebar-note small{font-size:9px;color:#d2bc73}.current-user{margin-top:auto;padding-top:60px;font-size:11px;line-height:1.8;overflow-wrap:anywhere}.text-button{background:transparent;border:0;color:#8fa8c2;font-size:10px;padding:4px 0;display:block}.main{flex:1;min-width:0}.topbar{background:#fff;height:76px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;gap:15px;align-items:center;padding:0 38px;font-size:11px;color:var(--muted)}.topbar b{color:#53667c;font-weight:500}.badge{font-size:9px;letter-spacing:1px;color:#71859a}.content{padding:36px 38px;max-width:1500px;margin:auto}.page-heading{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-bottom:30px}.page-heading p{font-size:12px;color:var(--muted);margin:0}.eyebrow{font-size:9px;letter-spacing:2.4px;color:#95a3b3;font-weight:700;margin-bottom:9px}.page-heading>button{white-space:nowrap}.metrics{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:20px;margin-bottom:28px}.metrics>div{background:white;border:1px solid var(--border);border-radius:7px;padding:22px}.metrics span{font-size:11px;color:var(--muted);display:block;margin-bottom:12px}.metrics strong{font-size:31px;font-weight:600}.metrics .small-stat{font-size:17px;color:#8a7534;line-height:2.2}.card{background:white;border:1px solid var(--border);border-radius:8px;overflow:hidden}.section-heading{padding:22px 24px;display:flex;gap:16px;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f4}.section-heading h2,.section-heading h3{margin:0}.search-label{margin:0;max-width:270px;flex:1}.search-label input{font-size:11px;background:#f8fafc}.data-row{display:flex;gap:16px;padding:20px 24px;align-items:center;border-bottom:1px solid #edf0f4}.data-row:last-child{border:0}.row-icon{width:42px;height:45px;background:#eff3f8;color:#7289a1;display:grid;place-items:center;flex-shrink:0;font-weight:600;font-size:17px;border-radius:5px}.row-main{flex:1;min-width:0}.row-main h3{margin:0 0 3px;overflow-wrap:anywhere}.row-main p{color:#7c8d9f;font-size:11px;margin:0;line-height:1.8}.row-main small{font-size:9px;color:#9aabbb;display:block;margin-top:3px}.row-value{text-align:right;white-space:nowrap}.row-value strong{font-size:16px}.row-value small{font-size:9px;color:#8597aa;display:block;margin-top:4px}.row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.row-actions button,.row-actions .button{font-size:10px;padding:8px 10px;min-height:34px}.empty{text-align:center;padding:65px 20px;color:#8394a7}.empty h3{font-size:16px;font-weight:500;color:#566d87;margin-bottom:10px}.empty p{font-size:12px;line-height:1.8}.empty small{font-size:10px;color:#9dabb9}.empty-icon{font-size:39px;color:#bac9d8;margin-bottom:16px}.tag{background:#f1f5f9;color:#8b9caf;font-size:9px;border-radius:4px;padding:6px 9px}.muted{font-size:11px;color:#8293a6;line-height:1.8}.inset{padding:17px 24px 0}.auth-shell{max-width:430px;margin:9vh auto;background:#fff;padding:36px;border:1px solid var(--border);border-radius:9px}.auth-shell .wordmark{color:var(--navy);margin-bottom:35px}.auth-shell h1{font-size:25px}.auth-shell>p{font-size:12px;color:#8598aa;margin-bottom:26px;line-height:1.8}.auth-shell .primary{width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}dialog{border:1px solid #dbe3ed;border-radius:9px;padding:28px;width:550px;max-width:calc(100vw - 24px);max-height:90vh;color:#203348;overflow:auto}dialog::backdrop{background:#11274088;backdrop-filter:blur(3px)}.wide-dialog{width:1000px}.dialog-heading{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:24px}.dialog-heading h2{margin:0;font-size:22px}.dialog-heading>button{font-size:25px;border:0;padding:0;min-height:35px;min-width:35px;color:#97a6b6}.notice{font-size:11px;color:#8b7338;background:#fff9e4;line-height:1.8;border-left:3px solid #e8c351;padding:12px 14px;margin-bottom:22px}.quote-line{border:1px solid #e1e7ee;border-radius:6px;padding:20px;margin:20px 0;background:#fbfcfd}.quote-line legend{font-size:10px;color:#8ba0b6;padding:0 8px}.quote-line .form-grid:last-child label{margin-bottom:0}.line-tools{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.line-tools>label{max-width:390px;flex:1}.danger{color:#aa584b;font-size:10px}.draft-summary{background:#eef3f8;border:1px solid #e0e8f0;border-radius:5px;padding:18px;display:flex;gap:15px;justify-content:space-between;align-items:center}.draft-summary p{font-size:11px;color:#667e97;line-height:1.9;margin:0}.draft-summary strong{white-space:nowrap;font-size:20px}.dialog-footer{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-top:23px}.dialog-footer>p{font-size:11px;color:#b55449;line-height:1.8;margin:0}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 30px);padding:14px 22px;background:#244d3e;color:#fff;border-radius:6px;box-shadow:0 8px 25px #122a3b25;z-index:100;font-size:12px;line-height:1.8}.toast.error{background:#914d3c}.print-page{background:#eef1f5;padding:24px}.print-actions{max-width:900px;margin:0 auto 22px;display:flex;gap:20px;align-items:center;font-size:12px}.document{max-width:900px;background:#fff;padding:40px;margin:auto;font-size:12px}.document header{display:flex;justify-content:space-between;gap:20px;border-bottom:3px solid #e6c54c;padding-bottom:18px;margin-bottom:24px}.document header h1{font-size:22px;letter-spacing:1px}.document header h2{font-size:19px}.document p{line-height:1.9}.draft-banner{background:#fff5cf;padding:11px;text-align:center;margin-bottom:26px;font-size:12px;color:#8e6b28}.document table{width:100%;border-collapse:collapse;margin:25px 0}.document th,.document td{padding:12px 8px;border-bottom:1px solid #dce4ed;text-align:right;vertical-align:top}.document th{background:#eaf0f7;font-size:11px}.document td:first-child,.document th:first-child{text-align:left;max-width:350px;overflow-wrap:anywhere}.document-totals{display:grid;grid-template-columns:1fr auto;margin:25px 0 25px auto;gap:12px 35px;max-width:360px}.document-totals dd{margin:0;text-align:right}.preserve-lines{white-space:pre-line}.document footer{font-size:10px;color:#8f9dad;border-top:1px solid #dee5ec;padding-top:20px;margin-top:40px}
@media(max-width:1150px){aside{width:200px;padding:30px 16px}.wordmark{font-size:15px;gap:9px}.wordmark>span{width:35px;height:40px;font-size:28px}.wordmark small{font-size:6px}.content{padding:30px 25px}.topbar{padding:0 25px}.data-row{flex-wrap:wrap}.row-main{min-width:180px}.row-actions{width:100%;padding-left:58px;justify-content:flex-start}.form-grid.four{grid-template-columns:1fr 1fr}.metrics{gap:12px}.metrics>div{padding:18px}}
@media(max-width:700px){.workspace{display:block}aside{width:100%;padding:20px}.sidebar-caption,.sidebar-note{display:none}nav{display:flex;gap:4px;overflow-x:auto;margin-top:22px}nav button{flex-shrink:0;padding:10px 12px;font-size:11px}.current-user{padding:15px 0 0;display:flex;justify-content:space-between;gap:12px}.text-button{font-size:11px}.topbar{height:58px;padding:0 20px}.badge{display:none}.content{padding:25px 18px}.page-heading{align-items:flex-start;flex-direction:column;gap:15px}.page-heading h1{font-size:25px}.page-heading p{font-size:11px}.metrics{grid-template-columns:1fr 1fr;gap:12px}.metrics>div:last-child{grid-column:1/-1;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px}.metrics>div:last-child span{margin:0}.metrics strong{font-size:27px}.metrics .small-stat{font-size:14px}.section-heading{padding:18px;flex-wrap:wrap}.search-label{min-width:160px;max-width:none}.data-row{padding:17px;gap:12px}.row-main{min-width:150px}.row-actions{padding-left:0}.row-value{margin-left:auto}.row-value strong{font-size:15px}.empty{padding:40px 18px}.form-grid,.form-grid.four{grid-template-columns:1fr;gap:0}dialog{padding:21px;max-height:94vh}.dialog-heading h2{font-size:20px}.line-tools{gap:10px}.line-tools>label{min-width:0}.quote-line{padding:15px}.draft-summary{flex-direction:column;align-items:flex-start}.dialog-footer{align-items:stretch;flex-direction:column}.auth-shell{margin:35px 16px;padding:28px;max-width:none}.environment{font-size:9px;padding:8px 15px}.document{padding:20px}.document header{flex-direction:column}.document table{font-size:10px}.document th,.document td{padding:9px 5px}.print-page{padding:14px}}
@media print{.print-page{background:white;padding:0}.print-actions{display:none}.document{padding:0;max-width:none}.document table{break-inside:auto}.document tr{break-inside:avoid}.document thead{display:table-header-group}.draft-banner{border:1px solid #947c39;background:white;color:#4e4530}@page{size:A4;margin:15mm}}

#user-dialog { width:min(720px, calc(100% - 24px)); padding:0; overflow:hidden; }
#user-form { display:flex; flex-direction:column; max-height:calc(100dvh - 32px); gap:0; }
#user-form .dialog-heading, #user-form .user-actions { flex:none; padding:16px 22px; margin:0; }
#user-form .user-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 16px; overflow:auto; min-height:0; padding:8px 22px 18px; }
#user-form .user-fields label { min-width:0; margin:0; }
#user-form #user-active:not([hidden]) { display:flex; flex-direction:row; align-items:center; align-self:end; min-height:44px; gap:8px; cursor:pointer; }
#user-form #user-active input { appearance:auto; width:18px; height:18px; margin:0; padding:0; }
#user-form .user-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; border-top:1px solid #e2e8f0; }
@media (max-width:520px) { #user-form .user-fields { grid-template-columns:1fr; } }

#imported-product-dialog { width:min(740px, calc(100% - 24px)); padding:0; overflow:hidden; }
#imported-product-form { display:flex; flex-direction:column; max-height:calc(100dvh - 40px); gap:0; }
#imported-product-form .dialog-heading, #imported-product-form .imported-edit-actions { padding:14px 20px; margin:0; flex:none; }
#imported-product-form .imported-edit-fields { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:10px 14px; min-height:0; overflow:auto; padding:6px 20px 16px; }
#imported-product-form .imported-edit-fields > * { grid-column:1/-1; margin:0; min-width:0; overflow-wrap:anywhere; }
#imported-product-form .imported-edit-fields > label:has([name="name"]), #imported-product-form .imported-edit-fields > label:has([name="unit"]) { grid-column:auto; }
#imported-product-preview { max-width:160px; max-height:120px; }
#imported-product-form .imported-edit-actions { justify-content:flex-end; border-top:1px solid #e2e8f0; }
@media (max-width:520px) { #imported-product-form .imported-edit-fields { grid-template-columns:minmax(0,1fr); } }
