*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--brand:#4e7280;--brand-dark:#334e59;--brand-mid:#6a8f9c;--brand-light:#b8caca;--brand-pale:#eaf0f0;--stone:#3a3530;--stone-light:#7a746e;--stone-pale:#e8e4e0;--stone-bg:#f5f3f0;--white:#fff;--red:#c0392b;--green:#27ae60;--border:#d0d8da;--radius:6px;--shadow:0 1px 3px #0000001f, 0 1px 2px #00000014;--shadow-md:0 4px 12px #0000001f}body{color:var(--stone);background:var(--stone-bg);min-height:100vh;font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;border-radius:var(--radius);border:none;font-family:inherit;font-size:14px;font-weight:500;transition:background .15s,opacity .15s}button:disabled{opacity:.55;cursor:not-allowed}input,select{border:1px solid var(--border);border-radius:var(--radius);background:var(--white);width:100%;color:var(--stone);outline:none;padding:8px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}input:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #4e72802e}label{color:var(--stone-light);margin-bottom:4px;font-size:13px;font-weight:500;display:block}.card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.btn-primary{background:var(--brand);color:var(--white);padding:9px 20px}.btn-primary:hover:not(:disabled){background:var(--brand-dark)}.btn-secondary{background:var(--stone-pale);color:var(--stone);padding:9px 20px}.btn-secondary:hover:not(:disabled){background:var(--border)}.btn-danger{background:var(--red);color:var(--white);padding:6px 14px;font-size:13px}.btn-danger:hover:not(:disabled){background:#a93226}.btn-sm{padding:5px 12px;font-size:12px}.error-msg{color:var(--red);border-radius:var(--radius);background:#fdf3f2;border:1px solid #f0c4c0;padding:8px 12px;font-size:13px}.success-msg{color:#1a6b38;border-radius:var(--radius);background:#f0faf4;border:1px solid #b8e6cc;padding:8px 12px;font-size:13px}.nav{background:var(--brand-dark);color:var(--white);z-index:100;align-items:center;gap:20px;height:56px;padding:0 24px;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #00000040}.nav-logo{align-items:center;height:36px;display:flex}.nav-logo img{width:auto;height:28px;display:block}.nav-divider{background:#fff3;width:1px;height:28px}.nav-label{color:#fff9;letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:500}.nav-space{flex:1}.nav-user{color:#ffffffa6;font-size:13px}.nav-btn{color:var(--white);border-radius:var(--radius);background:#ffffff1f;border:1px solid #ffffff2e;padding:6px 14px;font-size:13px}.nav-btn:hover{background:#ffffff38}.page{max-width:1400px;margin:0 auto;padding:24px}.price-table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:13px}.price-table th{text-align:left;color:#444;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;background:#f4f5f6;border-top:1px solid #ecedf0;border-bottom:2px solid #dde0e3;padding:9px 12px;font-size:11px;font-weight:600}.price-table-sticky-head{z-index:10;background:#f4f5f6;position:sticky;top:56px}.price-table td{vertical-align:middle;border-bottom:1px solid #f2f2f2;padding:10px 12px}.price-table tr:last-child td{border-bottom:none}.price-table tbody tr:nth-child(2n) td{background:#fafafa}.price-table tbody tr:hover td{background:#f0f5f7}.price-table .price{color:var(--stone);font-variant-numeric:tabular-nums;font-weight:400}.price-table .price-secondary{color:var(--brand);font-size:12px}.price-table .dim{color:var(--stone);white-space:normal;word-break:break-word;font-size:13px}.price-table .badge{background:var(--stone-pale);color:var(--stone-light);border-radius:10px;padding:2px 7px;font-size:11px;font-weight:600;display:inline-block}.stone-type-header{color:var(--white);border-radius:var(--radius) var(--radius) 0 0;letter-spacing:.2em;text-transform:uppercase;background:#1a2830;align-items:center;gap:12px;margin-top:0;padding:13px 24px;font-size:11px;font-weight:700;display:flex}.range-block{border-top:1px solid #ecedf0}.range-block:first-of-type{border-top:none}.range-header{background:var(--brand-pale);border-left:3px solid var(--brand);color:#1a2830;letter-spacing:.01em;align-items:center;gap:10px;padding:11px 20px 11px 17px;font-size:13px;font-weight:600;display:flex}.range-header .count{color:#aaa;background:0 0;border-radius:0;padding:0;font-size:12px;font-weight:400}.profile-block{border-top:1px solid var(--brand-light)}.profile-block:first-of-type{border-top:none}.profile-subheader{background:var(--brand-pale);color:var(--brand-dark);text-transform:uppercase;letter-spacing:.09em;border-bottom:1px solid var(--brand-light);align-items:center;gap:8px;padding:7px 20px;font-size:11px;font-weight:700;display:flex}.profile-subheader .count{background:var(--brand-light);color:var(--brand-dark);border-radius:10px;padding:1px 8px;font-size:10px;font-weight:600}.price-table th:nth-child(7),.price-table td:nth-child(7){border-left:1px solid #e8eaec}mark.search-hl{color:inherit;background:#fff3cd;border-radius:2px;padding:0 1px}.filter-bar{flex-wrap:wrap;align-items:center;gap:12px;padding:16px 0;display:flex}.filter-bar input,.filter-bar select{width:auto;font-size:13px}.filter-bar input[type=search]{min-width:220px}.filter-bar select{min-width:150px}.filter-count{color:var(--stone-light);font-size:13px}.effective-date{color:var(--stone-light);white-space:nowrap;margin-left:auto;font-size:12px;font-style:italic}.admin-grid{grid-template-columns:320px 1fr;align-items:start;gap:24px;display:grid}@media (max-width:1000px){.admin-grid{grid-template-columns:1fr}}.admin-lists{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}@media (max-width:1180px){.admin-lists{grid-template-columns:1fr}}.form-group{margin-bottom:14px}.users-table{border-collapse:collapse;table-layout:fixed;width:100%}.users-table th,.users-table td{text-align:left;padding:9px 10px}.users-table th{background:var(--brand-pale);text-transform:uppercase;letter-spacing:.05em;color:var(--brand-dark);font-size:12px;font-weight:700}.users-table td{border-top:1px solid var(--stone-pale);font-size:13px}.users-table .u-ellip{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.u-data-row td{padding-bottom:4px}.u-actions-row td{border-top:none;padding-top:0;padding-bottom:12px}.u-data-row:hover td,.u-data-row:hover+.u-actions-row td{background:var(--brand-pale)}.user-actions{flex-wrap:wrap;gap:8px;display:flex}.pricelist-note{color:var(--stone-light);border:1px solid #ecedf0;border-left:3px solid var(--brand-light);border-radius:var(--radius);background:#fafbfc;margin-bottom:16px;padding:9px 14px;font-size:12px}.pricelist-note p{margin:0 0 6px}.pricelist-note ul{margin:0;padding-left:18px}.pricelist-note ul li{margin-bottom:3px}.pricelist-note a{color:var(--brand);text-decoration:none}.pricelist-note a:hover{text-decoration:underline}@media (max-width:600px){.page{padding:12px}.nav{padding:0 12px}.price-table th:nth-child(n+5),.price-table td:nth-child(n+5){display:none}}.print-title-page,.print-br{display:none}@page{size:A4 portrait;margin:10mm 8mm}@media print{.nav,.filter-bar,.no-print{display:none!important}body{background:#fff;font-size:10.5px}.page{max-width:none;padding:0}.card{box-shadow:none!important;border:none!important;margin-bottom:4px!important;overflow:visible!important}.stone-type-header{break-after:avoid;page-break-after:avoid}.range-block{break-inside:avoid;page-break-inside:avoid}.stone-type-header{-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:0!important;padding:6px 16px!important}.range-header{-webkit-print-color-adjust:exact;print-color-adjust:exact;border-left:3px solid var(--brand)!important;padding:5px 14px 5px 12px!important}.price-table-sticky-head{position:static!important}.price-table tbody tr:nth-child(2n) td{-webkit-print-color-adjust:exact;print-color-adjust:exact}.price-table{table-layout:fixed!important;width:100%!important;font-size:10px!important}.price-table th,.price-table td{overflow:hidden;padding:3px 5px!important;line-height:1.2!important}.price-table th{white-space:normal!important;word-break:break-word!important;font-size:9px!important}.print-br{display:inline!important}.price-table .dim{white-space:normal;word-break:break-word;font-size:9.5px!important}.price-table col:first-child{width:17%!important}.price-table col:nth-child(2){width:21%!important}.price-table col:nth-child(3){width:13%!important}.price-table col:nth-child(4){width:9%!important}.price-table col:nth-child(5){width:8%!important}.price-table col:nth-child(6){width:6%!important}.price-table col:nth-child(7),.price-table col:nth-child(8){width:13%!important}.price-table-scroll{overflow:visible!important}.print-title-page{text-align:center;page-break-after:always;break-after:page;box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:20mm 15mm;display:flex!important}.print-title-logo{width:220px;height:auto;margin-bottom:20mm}.print-title-heading{color:#1a1a1a;letter-spacing:-.5px;margin:0 0 8mm;font-size:26px;font-weight:700}.print-title-prepared{color:#444;margin:0 0 4mm;font-size:16px}.print-title-date{color:#888;margin:0 0 12mm;font-size:12px}.print-title-divider{background:var(--brand);-webkit-print-color-adjust:exact;print-color-adjust:exact;width:60px;height:3px;margin:0 auto 12mm}.print-title-contact{color:#333;text-align:center;margin-top:auto;margin-bottom:6mm;font-size:13px;line-height:1.9}.print-title-contact p{margin:0}.print-title-terms{color:#666;text-align:left;border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;width:100%;margin:0 0 10mm;padding:6mm 0;font-size:9px;line-height:1.8;list-style:none}.print-title-terms li{margin:0}.print-title-confidential{color:#aaa;margin:0;font-size:8.5px;font-style:italic}.pricelist-note{display:none!important}}.stock-page{flex-direction:column;gap:16px;display:flex}.stock-layout{grid-template-columns:1fr 2fr;gap:16px;display:grid}@media (max-width:900px){.stock-layout{grid-template-columns:1fr}}.stock-panel{border:1px solid var(--border);background:#fff;border-radius:6px;flex-direction:column;min-height:260px;padding:16px;display:flex}.stock-panel h2{color:var(--stone);margin:0 0 12px;font-size:14px;font-weight:700}.stock-chart-panel{min-height:340px}.stock-chart-panel>div:last-child{flex:1}.stock-picker-panel{min-height:340px;max-height:480px}.stock-picker{flex-direction:column;height:100%;min-height:0;display:flex}.stock-picker label{flex:none;margin-bottom:4px}.stock-picker-list{border:1px solid var(--border);border-radius:4px;flex:1;min-height:0;overflow-y:auto}.stock-picker-list ul{margin:0;padding:4px;list-style:none}.stock-picker-item{text-align:left;width:100%;color:var(--stone);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.stock-picker-item:hover{background:var(--stone-bg)}.stock-picker-item.active{background:var(--stone-pale);font-weight:600}.stock-picker-radio{border:1px solid var(--stone-light);border-radius:50%;flex:none;place-items:center;width:16px;height:16px;display:grid}.stock-picker-radio.active{border-color:var(--stone)}.stock-picker-radio-dot{background:var(--stone);border-radius:50%;width:8px;height:8px}.stock-picker-item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.stock-picker-empty{color:var(--stone-light);padding:8px 10px;font-size:13px}.stock-stats{border:1px solid var(--border);background:#fff;border-radius:6px;grid-template-columns:repeat(3,1fr);gap:16px;padding:16px 0;display:grid}.stock-stat{flex-direction:column;align-items:center;gap:4px;display:flex}.stock-stat-value{color:var(--stone);font-variant-numeric:tabular-nums;font-size:28px;font-weight:300}.stock-stat-label{color:var(--stone-light);font-size:13px}.stock-freshness{color:var(--stone-light);text-align:center;font-size:13px}.stock-freshness.stale{color:#8a5a00;background:#fff4dc;border:1px solid #f0d9a0;border-radius:6px;padding:8px 12px}.stock-table{border-collapse:collapse;width:100%;font-size:13px}.stock-table th{text-align:left;color:var(--stone-light);border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 8px;font-weight:600}.stock-table td{border-bottom:1px solid var(--stone-pale);white-space:nowrap;padding:5px 8px}.stock-table th.num,.stock-table td.num{text-align:right;font-variant-numeric:tabular-nums}.stock-table-total td{border-top:2px solid var(--stone-light);border-bottom:none;font-weight:700}.status-badge{background:var(--stone-pale);color:var(--stone-light);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-block}.stock-empty{color:var(--stone-light);text-align:center;padding:12px 0;font-size:13px}.m-stock{background:var(--stone-bg);min-height:100vh;padding-bottom:24px}.m-stock-header{z-index:10;border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex;position:sticky;top:0}.m-stock-header-title{color:var(--stone);font-size:16px;font-weight:700;line-height:1.2}.m-stock-btn{border:1px solid var(--border);color:var(--stone);background:#fff;border-radius:4px;padding:8px 12px;font-size:14px;text-decoration:none}.m-stock-link{cursor:pointer;color:var(--stone-light);background:0 0;border:none;padding:0;font-size:12px;font-weight:400;text-decoration:underline}.m-stock-body{flex-direction:column;gap:12px;padding:12px;display:flex}.m-stock-card{border:1px solid var(--border);background:#fff;border-radius:4px;padding:12px}.m-stock-card h2{color:var(--stone);margin:0 0 8px;font-size:14px;font-weight:700}.m-stock-picker-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.m-stock-picker-head .m-stock-link{font-size:14px}.m-stock-input{width:100%;margin-bottom:8px;font-size:16px}.m-stock-list{max-height:60vh;margin:0;padding:0;list-style:none;overflow-y:auto}.m-stock-list li+li{border-top:1px solid var(--stone-pale)}.m-stock-part{text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:2px;width:100%;padding:12px 4px;display:flex}.m-stock-part-no{color:var(--stone);font-size:15px}.m-stock-part-name{color:var(--stone-light);font-size:12px}.m-stock-selected{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;width:100%;display:flex}.m-stock-selected-label{color:var(--stone-light);font-size:12px;display:block}.m-stock-selected-value{color:var(--stone);word-break:break-all;font-size:16px;font-weight:600;display:block}.m-stock-stats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.m-stock-stat{border:1px solid var(--border);text-align:center;background:#fff;border-radius:4px;padding:12px 4px}.m-stock-stat-value{color:var(--stone);font-variant-numeric:tabular-nums;font-size:20px;font-weight:300}.m-stock-stat-label{color:var(--stone-light);font-size:12px}.m-stock-chart{height:256px}.m-stock-section{color:var(--stone);justify-content:space-between;align-items:baseline;margin:4px 0 -4px;font-size:14px;font-weight:700;display:flex}.m-stock-section span{color:var(--stone-light);font-size:12px;font-weight:400}.m-stock-line{color:var(--stone);flex-direction:column;gap:4px;font-size:14px;display:flex}.m-stock-line-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.m-stock-line-sub{color:var(--stone-light);font-variant-numeric:tabular-nums;font-size:13px}.m-stock-trunc{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.m-stock-muted{color:var(--stone-light);font-size:13px}.m-stock-empty{color:var(--stone-light);text-align:center;padding:16px 12px;font-size:13px}.m-stock-footer{text-align:center;color:var(--stone-light);padding:0 12px;font-size:12px}.status-badge.grey{color:#475569;background:#f1f5f9}.status-badge.amber{color:#92400e;background:#fef3c7}.status-badge.blue{color:#1e40af;background:#dbeafe}.status-badge.green{color:#065f46;background:#d1fae5}
