:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#172720;background:#f5f7f4;font-synthesis:none;text-rendering:optimizeLegibility;--ink:#172720;--muted:#65756d;--green:#245b43;--green-light:#e4eee7;--border:#dce4dd;--paper:#fff;--danger:#a53b36;--warning:#8a6118}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{min-height:100vh}.topbar{height:66px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:var(--paper);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:2}.brand{display:flex;align-items:center;gap:11px;font-weight:750;letter-spacing:-.03em}.brand-mark{width:33px;height:33px;border-radius:11px;background:var(--green);color:white;display:grid;place-items:center;font-size:15px}.top-actions{display:flex;align-items:center;gap:12px}.company-select{max-width:280px;padding:9px 34px 9px 12px;border:1px solid var(--border);border-radius:9px;background:white;color:var(--ink)}.user-chip{font-size:13px;color:var(--muted)}.layout{display:grid;grid-template-columns:226px minmax(0,1fr);min-height:calc(100vh - 66px)}.sidebar{background:#fbfcfa;border-right:1px solid var(--border);padding:19px 13px}.nav-label{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#7e8e84;padding:12px}.nav-item{display:flex;align-items:center;width:100%;gap:11px;text-align:left;border:0;background:transparent;color:#46574d;padding:10px 12px;margin:2px 0;border-radius:9px;font-size:13px}.nav-item:hover,.nav-item.active{background:var(--green-light);color:var(--green);font-weight:650}.main{max-width:1380px;width:100%;padding:30px 36px;margin:0 auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.page-title{font-size:26px;letter-spacing:-.04em;margin:0 0 5px}.page-subtitle{font-size:13px;color:var(--muted);margin:0}.card{background:var(--paper);border:1px solid var(--border);border-radius:13px;padding:20px;margin-bottom:18px;box-shadow:0 2px 8px #14282008}.card h2{font-size:15px;margin:0 0 16px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.stat{font-size:28px;font-weight:720;letter-spacing:-.04em;margin:8px 0}.muted{color:var(--muted);font-size:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--green);color:white;border:1px solid var(--green);padding:9px 14px;border-radius:8px;font-weight:620;font-size:13px;min-height:38px}.button:hover{background:#1c4834}.button.secondary{background:white;color:#34463b;border-color:var(--border)}.button.ghost{background:transparent;color:#45584c;border-color:transparent}.button.danger{background:#fff;color:var(--danger);border-color:#e6c5c2}.button:disabled{opacity:.5;cursor:not-allowed}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#506156}.field input,.field select,.field textarea{width:100%;border:1px solid var(--border);border-radius:8px;background:#fff;padding:10px 11px;color:var(--ink);outline:none}.field input:focus,.field select:focus{border-color:#67977b;box-shadow:0 0 0 3px #245b4316}.field.full{grid-column:1/-1}.form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:9px;margin-top:4px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.search{max-width:320px;width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:white}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:10px;background:white}table{width:100%;border-collapse:collapse;min-width:600px}th,td{padding:12px 14px;text-align:left;border-bottom:1px solid #edf0ed;font-size:12px;white-space:nowrap}th{background:#fafbf9;color:#728076;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:650}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafcf9}.badge{display:inline-flex;border-radius:99px;padding:4px 8px;background:#eef1ee;color:#4f6256;font-size:10px;font-weight:650}.badge.green{background:#e4eee7;color:#245b43}.badge.orange{background:#fff2d9;color:#805a15}.badge.red{background:#fae8e6;color:#9d3832}.notice{padding:11px 13px;border-radius:8px;background:#edf4ee;color:#315c40;font-size:13px;margin-bottom:16px}.notice.error{background:#faeae8;color:#993d35}.empty{padding:38px 15px;text-align:center;color:var(--muted);font-size:13px}.actions{display:flex;gap:7px}.inline{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.checkline{display:flex;align-items:center;gap:8px;font-size:13px;color:#425248}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}.metric{font-size:12px;color:var(--muted)}.metric strong{display:block;color:var(--ink);font-size:20px;margin-top:5px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 12% 0,#e3eee5 0,transparent 36%),#f5f7f4}.login-card{width:min(100%,420px);background:white;border:1px solid var(--border);border-radius:17px;padding:32px;box-shadow:0 18px 55px #17272012}.login-card h1{font-size:24px;letter-spacing:-.04em;margin:0 0 7px}.login-card p{color:var(--muted);font-size:13px;margin:0 0 22px}.login-card form{display:grid;gap:14px}.text-link{color:var(--green);font-size:12px;background:none;border:0;padding:8px 0;text-decoration:underline}.section-title{margin:26px 0 11px;font-size:13px}.divider{height:1px;background:var(--border);margin:15px 0}.overlay{position:fixed;inset:0;background:#10201788;display:grid;place-items:center;padding:18px;z-index:8}.dialog{width:min(100%,600px);max-height:90vh;overflow:auto;background:white;border-radius:14px;padding:22px}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.toast{position:fixed;right:22px;bottom:22px;background:#21392c;color:#fff;padding:12px 16px;border-radius:9px;box-shadow:0 8px 24px #14282033;z-index:10;font-size:13px}.skeleton{height:12px;border-radius:9px;background:#e9eee9;margin:8px 0}.mobile-menu{display:none}@media(max-width:850px){.layout{grid-template-columns:1fr}.sidebar{position:sticky;top:66px;z-index:1;display:flex;overflow:auto;gap:4px;padding:7px 10px;border-right:0;border-bottom:1px solid var(--border)}.nav-label{display:none}.nav-item{white-space:nowrap;width:auto;margin:0;padding:9px 11px}.main{padding:23px 18px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{padding:0 15px}.user-chip{display:none}}@media(max-width:560px){.topbar{height:60px}.layout{min-height:calc(100vh - 60px)}.company-select{max-width:145px;font-size:11px;padding:8px}.brand{font-size:13px}.brand-mark{width:29px;height:29px}.main{padding:19px 13px}.page-head{margin-bottom:18px}.page-title{font-size:22px}.grid,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.form-actions{grid-column:auto}.toolbar{align-items:stretch;flex-direction:column}.search{max-width:none}.login-card{padding:25px 21px}}
.selectable-card{text-align:left;border-color:var(--border)}.row-clickable{cursor:pointer}.negative-stock{color:var(--danger)}.invoice-row{margin-bottom:10px}
@media(max-width:850px){.layout{grid-template-rows:auto 1fr}}
.main,.card,.field,.form-grid>*{min-width:0}.admin-title{font-size:26px;margin:0 0 16px;letter-spacing:-.03em}.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}.admin-entry{margin-top:20px;border-top:1px solid var(--border)}.selection-group{min-inline-size:0;margin:0;padding:14px;border:1px solid var(--border);border-radius:9px;white-space:normal}.selection-group.full{grid-column:1/-1}.selection-group legend{font-size:13px;font-weight:650;padding:0 5px}.selection-group p{margin:0 0 10px}.selection-group p:last-child{margin:10px 0 0}.selection-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:6px;max-height:290px;overflow:auto}.selection-option{display:flex;align-items:flex-start;gap:9px;padding:9px;border-radius:7px;font-size:13px;cursor:pointer}.selection-option:hover{background:var(--green-light)}.selection-option input{width:17px;height:17px;flex-shrink:0;margin:1px 0 0;accent-color:var(--green)}.selection-option:has(input:checked){background:#edf4ee}.selection-option:has(input:disabled){cursor:default}.modules-cell{min-width:280px;width:340px}.modules-cell .selection-options{grid-template-columns:1fr;max-height:245px}.modules-cell .button{margin-top:8px}.company-logo{width:52px;height:52px;object-fit:contain;border-radius:8px}input:focus-visible,button:focus-visible{outline:2px solid var(--green);outline-offset:2px}@media(max-width:850px){.admin-entry{margin:0;border-top:0}.sidebar{align-items:center}}@media(max-width:560px){.selection-options{grid-template-columns:1fr}.top-actions{gap:6px}.brand{gap:6px}.topbar{gap:8px}.brand-mark{flex-shrink:0}}
.sidebar{min-width:0}.nav-content{display:flex;flex-direction:column;gap:4px}.nav-group{margin-top:10px}.nav-group-toggle{display:flex;gap:10px;align-items:center;width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;text-align:left;color:var(--muted);font-size:12px;font-weight:700}.nav-group-toggle:hover{background:#edf2ed}.nav-group.current>.nav-group-toggle{color:var(--green)}.nav-chevron{margin-left:auto}.nav-group-items{padding-left:18px;margin-left:15px;border-left:1px solid var(--border)}.nav-group-items .nav-item{font-size:12px}.section-context{font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--green);margin:0 0 12px}.page-actions{display:flex;gap:10px;margin-bottom:18px}.contact-type{border:0;padding:0;margin:0 0 6px;grid-column:1/-1;min-inline-size:0;display:flex;flex-wrap:wrap;gap:10px}.contact-type legend{font-size:12px;font-weight:650;margin-bottom:9px;color:#506156}.type-choice{display:flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:8px;padding:11px 18px;font-size:13px;cursor:pointer}.type-choice.active{background:var(--green-light);border-color:#78a18a;color:var(--green)}.type-choice input{accent-color:var(--green);width:16px;height:16px;margin:0}.mobile-nav-toggle{display:none}@media(min-width:851px){.sidebar{position:sticky;top:66px;align-self:start;max-height:calc(100vh - 66px);overflow-y:auto;min-height:calc(100vh - 66px)}}@media(max-width:850px){.sidebar{display:block;padding:8px 15px;overflow:visible}.mobile-nav-toggle{display:flex;align-items:center;gap:9px;width:100%;padding:9px 3px;background:transparent;border:0;text-align:left;color:var(--green);font-size:13px;font-weight:650}.sidebar .nav-content{display:none}.sidebar.menu-open .nav-content{display:flex;max-height:65vh;overflow-y:auto;padding-bottom:12px}.nav-group{margin-top:5px}.sidebar .nav-item{width:100%;margin:2px 0}.admin-entry{margin-top:14px!important;border-top:1px solid var(--border)}}@media(max-width:560px){.sidebar{top:60px}.type-choice{flex:1;justify-content:center}}
.master-overlay{padding:24px;background:#18291fb3;z-index:20}.master-dialog{width:min(100%,780px);padding:0;max-height:92vh;border:1px solid var(--border);box-shadow:0 24px 80px #0b211b33}.master-dialog>.dialog-head{position:sticky;top:0;z-index:1;background:#fff;border-bottom:1px solid var(--border);margin:0;padding:20px 28px}.master-dialog>.dialog-head h2{margin:0;font-size:23px;letter-spacing:-.03em}.master-dialog>.form-grid{padding:24px 28px;gap:18px}.master-dialog .field{font-size:13px}.master-dialog .field input,.master-dialog .field select,.master-dialog .field textarea{padding:12px;min-height:44px}.master-dialog .field textarea{resize:vertical}.master-dialog .field input:disabled,.master-dialog .field select:disabled,.master-dialog .field textarea:disabled{background:#f5f7f4;color:#5c6c61}.master-dialog .form-actions{padding-top:18px;margin-top:6px;border-top:1px solid var(--border)}.master-dialog .form-actions>.button{min-width:145px}.required-mark{color:var(--danger)}.lookup-action{justify-content:flex-end}.product-image-field{grid-column:1/-1;display:flex;align-items:center;gap:20px}.product-preview{width:100px;height:100px;object-fit:contain;border-radius:12px;border:1px solid var(--border);background:#fafcf9}.product-preview.placeholder{display:grid;place-items:center;font-size:32px;color:#82918a;border:2px dashed var(--border)}.product-thumb{width:36px;height:36px;object-fit:contain;border-radius:5px}.parameter-details summary{cursor:pointer;font-size:14px;font-weight:650;color:var(--green)}.parameter-details[open] summary{margin-bottom:18px}.parameter-form{display:grid;gap:12px}.inline-parameter{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px;background:#f4f7f3;border:1px solid var(--border);border-radius:9px}.inline-parameter>.button{grid-column:1/-1;justify-self:end}.master-dialog .notice{margin-bottom:0}.master-dialog .contact-type{gap:12px}.master-dialog .type-choice{flex:1;font-size:14px}.master-dialog .form-grid>p{margin:0;line-height:1.5}@media(max-width:560px){.master-overlay{padding:10px}.master-dialog{max-height:95vh}.master-dialog>.dialog-head{padding:16px 18px}.master-dialog>.dialog-head h2{font-size:20px}.master-dialog>.form-grid{padding:18px;gap:14px}.master-dialog .form-actions>.button{min-width:0;flex:1}.page-head{flex-wrap:wrap}.product-image-field{align-items:flex-start}.product-preview{width:70px;height:70px}.inline-parameter{grid-template-columns:1fr}}

.sales-entry .toolbar{align-items:flex-start;flex-wrap:wrap}.sales-entry .toolbar h2{margin-bottom:6px}.sales-entry .toolbar p{margin:0}.sales-fields{border:0;padding:0;margin:0;min-inline-size:0}.sales-lines{display:grid;gap:14px;margin:18px 0}.sales-line{border:1px solid var(--border);border-radius:10px;padding:16px;min-inline-size:0}.sales-line legend{padding:0 6px;font-size:13px;font-weight:650;color:var(--green)}.sales-line-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;font-size:13px}.sales-prerequisites{background:#fff8e9;padding:12px 16px;border-radius:9px;font-size:13px;line-height:1.6}.sales-prerequisites p{margin:0 0 6px}.sales-prerequisites .button{margin:5px}.sales-result{background:var(--green-light);padding:14px;border-radius:9px;font-size:13px;line-height:1.7}.sales-entry .form-actions{margin-top:18px}.sales-document-info{font-size:12px;margin:8px 0;white-space:normal;max-width:560px}.sales-document-info summary{cursor:pointer;color:var(--green);font-weight:600}.sales-document-info dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 12px}.sales-document-info dt{font-weight:600}.sales-document-info dd{margin:0;white-space:pre-wrap}.sales-document-info ul{padding-left:18px}.sales-fields textarea{width:100%;resize:vertical}.sales-entry .button:disabled{cursor:not-allowed;opacity:.55}
.product-image-field>div:not(.product-preview){min-width:0;flex:1}.product-image-field input[type=file]{max-width:100%}
.price-list-card + .price-list-card { border-top: 1px solid var(--border, #e5e7eb); margin-top: 18px; padding-top: 18px; }
.price-list-products { max-height: 350px; overflow: auto; margin-bottom: 16px; }
.price-list-products input[type="number"] { min-width: 135px; width: 100%; }
.price-list-products input[type="checkbox"] { width: 20px; height: 20px; }
.price-list-form { display: grid; gap: 14px; padding: 24px 28px; min-width: 0; }
.price-list-form > * { min-width: 0; }
.price-list-form > p { margin: 0; line-height: 1.5; }
.price-list-form .table-wrap { margin-bottom: 0; }
@media(max-width:560px) { .price-list-form { padding: 18px; } }

.document-actions{margin:16px 0 8px}.document-actions a{text-decoration:none}.document-data{display:grid;grid-template-columns:minmax(130px,max-content) 1fr;gap:10px 20px;font-size:13px;margin:20px 0}.document-data dt{font-weight:650;color:var(--muted)}.document-data dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.price-list-products input[inputmode=decimal]{min-width:150px;width:100%;padding:10px;border:1px solid var(--border);border-radius:8px}.field input[inputmode=decimal],.price-list-products input[inputmode=decimal]{font-variant-numeric:tabular-nums;text-align:right}.card>.table-wrap+.form-grid{margin-top:20px}.master-dialog>form:not(.form-grid):not(.price-list-form){padding:24px 28px}.master-dialog>p,.master-dialog>.form-actions{margin:20px 28px}.grid .metric+.metric{margin-top:16px}@media(max-width:560px){.document-data{grid-template-columns:1fr;gap:5px}.document-data dd{margin-bottom:10px}.document-actions>.button{flex:1}.master-dialog>form:not(.form-grid):not(.price-list-form){padding:18px}}
