:root{--ink:#102c35;--muted:#72848b;--teal:#007b83;--teal-dark:#04606a;--line:#e7ecec;--bg:#f4f7f6;--white:#fff;--accent:#dcf6f2;--shadow:0 10px 36px rgba(10,42,48,.035)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,'Segoe UI',sans-serif;font-size:14px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}.app-shell{min-height:100vh;display:flex}.sidebar{width:250px;flex:0 0 250px;background:#102d36;color:#d6e7e8;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;padding:29px 16px}.brand{display:flex;align-items:center;gap:11px;margin:0 11px 57px}.brand-mark{width:38px;height:38px;border-radius:12px;background:#33c4b7;color:#0a4248;display:grid;place-items:center;font-size:32px;font-weight:800;line-height:1}.brand strong{display:block;font-size:18px;letter-spacing:-.8px;color:#fff;line-height:1.15}.brand span{display:block;font-size:11px;color:#87a6aa;margin-top:3px}.nav-label{font-size:10px;letter-spacing:1.7px;color:#699098;font-weight:800;margin:0 14px 15px}.sidebar nav{display:grid;gap:5px}.nav-item{width:100%;display:flex;align-items:center;gap:13px;text-align:left;border:0;background:transparent;color:#a9c2c4;padding:13px 15px;border-radius:10px;font-weight:700;transition:.2s}.nav-item:hover,.nav-item.active{background:#1d4650;color:#fff}.nav-item.active{box-shadow:inset 3px 0 #3ed0c0}.nav-icon{font-size:20px;line-height:1;width:24px;text-align:center;font-weight:400}.sidebar-foot{margin:auto 11px 0;padding:18px 0 4px;border-top:1px solid #31545c;display:flex;align-items:center;gap:9px;color:#89a8ac;font-size:11px}.status-dot,.live-dot{width:8px;height:8px;border-radius:50%;background:#44ceb8;display:inline-block;box-shadow:0 0 0 4px rgba(68,206,184,.12)}.main{min-width:0;flex:1}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 44px;color:#809198;font-size:12px;font-weight:700}.topbar-right{display:flex;align-items:center;gap:10px;color:#4a6c72}.mobile-brand,.mobile-nav{display:none}.page{max-width:1480px;padding:38px 44px 70px;margin:auto;display:none}.page.active{display:block}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.eyebrow{color:var(--teal);font-size:10px;letter-spacing:2.2px;font-weight:800;margin-bottom:9px}h1,h2,p{margin:0}h1{font-size:32px;line-height:1.2;letter-spacing:-1.4px;font-weight:800}h2{font-size:16px;letter-spacing:-.4px;font-weight:800}.page-heading p{color:var(--muted);margin-top:8px;font-size:13px}.btn{border:0;border-radius:9px;padding:11px 16px;font-weight:800;white-space:nowrap;transition:transform .15s,background .15s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--teal);color:#fff;box-shadow:0 7px 17px rgba(0,123,131,.15)}.btn-primary:hover{background:var(--teal-dark)}.btn-soft{color:var(--teal);background:#e6f6f3}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:20px}.stat-card{min-height:154px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:15px;padding:23px 24px;position:relative;overflow:hidden}.stat-card.teal{background:#006e76;border-color:#006e76;color:#fff;box-shadow:0 12px 25px rgba(0,102,110,.12)}.stat-card>span{font-size:10px;letter-spacing:1.1px;font-weight:800;color:#829498}.stat-card.teal>span{color:#a8e6de}.stat-card strong{display:block;font-size:27px;letter-spacing:-1.1px;line-height:1.25;margin:15px 0 3px;white-space:nowrap}.stat-card small{font-size:11px;color:#9aabb0}.stat-card.teal small{color:#b5e9e1}.stat-glyph{position:absolute;right:21px;bottom:13px;font-size:55px;line-height:1;color:#dceceb;font-family:DM Sans,sans-serif;font-weight:700;opacity:.7}.stat-card.teal .stat-glyph{color:#46a4a4;opacity:.4}.overview-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;margin-bottom:20px}.card{background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);overflow:hidden}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:21px 23px 17px}.card-head p{font-size:11px;color:#96a4a8;margin-top:4px}.text-link{border:0;background:transparent;color:var(--teal);font-size:12px;font-weight:800;padding:5px 0;white-space:nowrap}.text-link:hover{text-decoration:underline}.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;background:#f9fbfa;color:#94a2a7;font-size:10px;text-transform:uppercase;letter-spacing:.65px;font-weight:800;padding:11px 23px;border-top:1px solid #f0f3f2;border-bottom:1px solid #f0f3f2}td{padding:15px 23px;border-bottom:1px solid #f0f3f2;color:#53666c;font-size:14px;vertical-align:middle}tr:last-child td{border-bottom:0}td b{display:block;color:#19343c;font-size:14px;font-weight:800}td small{display:block;color:#98a6aa;margin-top:3px;max-width:320px;overflow:hidden;text-overflow:ellipsis}.right{text-align:right}.debt{color:#d66a39;font-weight:800}.muted{color:#98a6aa}.stock-pill{display:inline-block;border-radius:6px;background:#e7f5f1;color:#087a76;padding:5px 9px;font-weight:800}.empty{text-align:center;color:#9aa9ad;padding:31px 15px;font-size:12px}.empty-icon{color:#bad7d3;font-size:27px;margin-bottom:6px}.workspace-grid{display:grid;grid-template-columns:minmax(330px,420px) minmax(0,1fr);gap:20px;align-items:start}.form-card{padding-bottom:22px}.form-card form{padding:0 23px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid label{min-width:0}.form-grid .span-2{grid-column:1/-1}label{display:block;font-size:11px;color:#627780;font-weight:800;margin-bottom:0}input,select{display:block;width:100%;height:40px;border:1px solid #dfe7e8;border-radius:8px;background:#fff;color:#243e46;padding:0 10px;outline:none;margin-top:6px;font-size:14px}input:focus,select:focus{border-color:#40b7ac;box-shadow:0 0 0 3px rgba(64,183,172,.12)}input::placeholder{color:#b1bdc0}.form-card form>.btn{margin-top:20px;width:100%}.list-card{min-height:240px}.subheading{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.subheading strong{display:block;font-size:12px}.subheading span{display:block;color:#9aabb0;font-size:10px;margin-top:3px}.subheading .btn{font-size:11px;padding:8px 11px}.consumption-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 30px;gap:9px;align-items:end;margin-top:10px}.remove-row{height:40px;border:0;background:#fff1ee;color:#d56e5c;border-radius:8px;font-size:20px}.full-card{margin-top:20px}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.catalog-card{min-height:230px}.catalog-card .card-head{min-height:87px}.mini-form{padding:0 23px 18px;display:grid;gap:8px}.mini-form input{margin:0}.mini-form .btn{width:100%;margin-top:2px}.catalog-row{padding:11px 23px;border-top:1px solid #f0f3f2;display:flex;justify-content:space-between;align-items:center;gap:9px;font-size:14px}.catalog-row span{font-weight:800;min-width:0}.catalog-row small{display:block;color:#9aabb0;font-size:12px;margin-top:2px;font-weight:500}.catalog-row b{font-size:14px;white-space:nowrap}#toast{position:fixed;right:22px;bottom:22px;background:#12383e;color:#fff;border-radius:10px;padding:13px 17px;box-shadow:0 16px 34px rgba(8,35,39,.23);opacity:0;transform:translateY(15px);pointer-events:none;transition:.2s;z-index:20;font-size:12px;font-weight:700;max-width:360px}#toast.visible{opacity:1;transform:translateY(0)}#toast.error{background:#a94036}
@media(max-width:1150px){.sidebar{width:210px;flex-basis:210px}.page{padding:30px 28px 60px}.topbar{padding:0 28px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card strong{font-size:22px}}
@media(max-width:850px){.sidebar{display:none}.topbar{height:55px;padding:0 18px}.topbar #today{display:none}.mobile-brand{display:block;color:var(--teal);font-size:20px}.mobile-brand b{font-size:16px;color:var(--ink);margin-left:5px}.mobile-nav{display:flex;gap:3px;overflow:auto;background:#fff;border-bottom:1px solid var(--line);padding:8px 12px}.mobile-nav-item{border:0;background:transparent;color:#71868a;border-radius:7px;padding:9px 12px;white-space:nowrap;font-size:11px;font-weight:800}.mobile-nav-item.active{background:#e6f6f3;color:var(--teal)}.page{padding:25px 18px 50px}.overview-grid{grid-template-columns:1fr}.workspace-grid{grid-template-columns:1fr}.form-card{max-width:none}}
@media(max-width:600px){.page-heading{align-items:flex-start}.page-heading .btn{font-size:10px;padding:9px}.page-heading h1{font-size:26px}.page-heading p{line-height:1.5}.stats{grid-template-columns:1fr;gap:10px}.stat-card{min-height:108px;padding:17px 20px}.stat-card strong{font-size:25px;margin:8px 0 1px}.stat-glyph{font-size:42px}.catalog-grid{grid-template-columns:1fr}.card-head{padding:18px}.form-card form{padding:0 18px}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}td,th{padding-left:16px;padding-right:16px}}
.brand-logo{width:40px;height:40px;display:block;object-fit:contain;flex:none}
.mobile-brand{align-items:center;gap:7px}
.mobile-brand img{width:28px;height:28px;object-fit:contain}
@media(max-width:850px){.mobile-brand{display:flex}}
body.modal-open{overflow:hidden}
.receipt-overlay[hidden],.receipt-suggestions[hidden]{display:none}
.receipt-overlay{position:fixed;inset:0;z-index:30;background:rgba(12,35,40,.46);display:flex;align-items:center;justify-content:center;padding:20px}
.receipt-dialog{width:min(100%,1040px);max-height:min(92vh,900px);background:#fff;border-radius:13px;box-shadow:0 28px 80px rgba(7,29,34,.28);display:flex;flex-direction:column;overflow:hidden}
.receipt-titlebar{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--line)}
.receipt-titlebar h2{font-size:18px}.receipt-close{border:0;background:transparent;color:#829296;font-size:27px;line-height:1;padding:0 3px}
#receipt-form{min-height:0;display:flex;flex-direction:column}.receipt-body{overflow:auto;padding:20px 24px 0}.receipt-top{display:grid;grid-template-columns:1.35fr .7fr 1.35fr;gap:13px;margin-bottom:36px}.receipt-top label,.receipt-search-wrap label{font-size:11px;color:#78898b;font-weight:600}.receipt-top input,.receipt-search-wrap input{height:40px;margin-top:6px}.receipt-search-wrap{position:relative;margin-bottom:18px}.receipt-suggestions{position:absolute;z-index:2;top:100%;left:0;right:0;background:#fff;border:1px solid #dce5e4;border-radius:8px;box-shadow:0 12px 26px rgba(5,37,43,.12);max-height:260px;overflow:auto}.receipt-suggestions button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:0;border-bottom:1px solid #eef1f1;text-align:left;background:#fff;padding:11px 13px;color:#203f43}.receipt-suggestions button:hover{background:#eef9f6}.receipt-suggestions small{color:#8ba0a2}
.receipt-columns,.receipt-line{display:grid;grid-template-columns:minmax(190px,2.2fr) minmax(115px,1.1fr) minmax(92px,.85fr) minmax(116px,1fr) minmax(116px,1fr) minmax(95px,.9fr) 30px;gap:10px;align-items:center;min-width:880px}.receipt-columns{color:#889698;font-size:10px;margin-bottom:4px}.receipt-line{margin-bottom:10px}.receipt-line input,.receipt-line select{height:38px;margin-top:0}.receipt-line-total{text-align:right;font-weight:800;font-size:14px;white-space:nowrap}.receipt-line .remove-row{height:38px}.mobile-field-label{display:none}.btn-outline{background:#fff;border:1px solid #dfe7e8;color:#355059;box-shadow:none}.btn-outline:hover{background:#f7faf9}.receipt-body>#add-receipt-row{margin-top:4px;font-size:11px;padding:9px 12px}.receipt-total{text-align:right;font-size:18px;font-weight:800;margin:18px 0 17px}.receipt-total strong{margin-left:9px}.receipt-footer{border-top:1px solid var(--line);padding:14px 24px;display:flex;justify-content:flex-end;gap:9px}.btn-save{background:#1f705b;color:#fff}.btn-save:hover{background:#145d49}
.receipt-record{border-top:1px solid var(--line)}.receipt-record summary{list-style:none;display:grid;grid-template-columns:1.3fr 1.5fr 1fr 20px;gap:14px;align-items:center;padding:17px 23px;cursor:pointer;font-size:14px}.receipt-record summary::-webkit-details-marker{display:none}.receipt-record summary:hover{background:#fafcfc}.receipt-record-id{font-weight:800}.receipt-record small{display:block;color:#97a7a9;font-weight:500;margin-top:3px}.receipt-record-supplier{font-weight:700}.receipt-record strong{text-align:right}.receipt-chevron{text-align:right;font-size:18px;color:#98a9a9}.receipt-record[open] .receipt-chevron{transform:rotate(180deg)}.receipt-record .table-wrap{background:#fcfdfd}.receipt-note{padding:10px 23px 17px;color:#87999c;font-size:13px}
@media(max-width:900px){.receipt-dialog{width:min(100%,680px)}.receipt-top{grid-template-columns:1fr 1fr;margin-bottom:25px}.receipt-top label:first-child{grid-column:1/-1}.receipt-columns{display:none}.receipt-line{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr)) 32px;padding:13px;border:1px solid var(--line);border-radius:9px;position:relative}.receipt-material{grid-column:1/-1}.receipt-line label{min-width:0}.mobile-field-label{display:block;color:#829496;font-size:10px;margin-bottom:5px}.receipt-line-total{text-align:left;align-self:end;padding:0 0 10px}.receipt-line .remove-row{grid-column:3;grid-row:1;align-self:start}.receipt-record summary{grid-template-columns:1fr 1fr auto}.receipt-chevron{display:none}}
@media(max-width:600px){.receipt-overlay{padding:0}.receipt-dialog{width:100%;height:100%;max-height:none;border-radius:0}.receipt-body{padding:17px 16px 0}.receipt-titlebar,.receipt-footer{padding:15px 16px}.receipt-top{grid-template-columns:1fr;gap:12px;margin-bottom:22px}.receipt-top label:first-child{grid-column:auto}.receipt-line{grid-template-columns:1fr 1fr 30px;gap:8px}.receipt-line label:nth-child(2){grid-column:1/-1}.receipt-line-total{grid-column:1/3}.receipt-record summary{grid-template-columns:1fr auto;gap:7px}.receipt-record-supplier{grid-column:1;grid-row:2}.receipt-record strong{grid-column:2;grid-row:1/3}.receipt-footer .btn{font-size:11px;padding:10px}}
.day-picker{width:190px;flex:none}.day-picker input{margin-top:5px;background:#fff}.production-sheet table{min-width:460px}.production-sheet th:first-child,.production-sheet td:first-child{width:55%}.production-sheet th:nth-child(2),.production-sheet th:nth-child(3){width:22.5%;text-align:right}.production-sheet td:nth-child(2),.production-sheet td:nth-child(3){text-align:right}.sheet-input{display:inline-block;margin:0;width:150px;max-width:100%;text-align:right;font-size:17px;font-weight:800;background:#fbfdfc}.production-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 23px;border-top:1px solid var(--line)}.production-totals{color:#547078;font-size:14px;font-weight:800}.material-usage{border-top:1px solid var(--line)}.material-usage summary{padding:17px 23px;cursor:pointer;font-size:12px;font-weight:800;list-style:none}.material-usage summary::-webkit-details-marker{display:none}.material-usage summary:before{content:'▸';color:var(--teal);margin-right:9px}.material-usage[open] summary:before{content:'▾'}.material-usage summary span{color:#95a5aa;font-weight:500;margin-left:5px}.material-day-row{display:flex;align-items:center;gap:15px;justify-content:space-between;padding:10px 23px;border-top:1px solid #f1f4f3}.material-day-row span{min-width:0}.material-day-row small{display:block;font-weight:500;color:#9aabb0;margin-top:3px}.material-day-row input{width:150px;margin:0;text-align:right}.material-day-row em{font-style:normal;color:#84989a;min-width:20px}.production-sheet .empty{padding:30px}
@media(max-width:600px){.page-heading:has(.day-picker){display:block}.day-picker{margin-top:16px;width:190px}.production-actions{display:block;padding:15px}.production-actions .btn{width:100%;margin-top:12px}.production-sheet th,.production-sheet td{padding-left:12px;padding-right:12px}.sheet-input{width:100px}.material-usage summary span{display:block;margin:4px 0 0 23px}.material-day-row{padding:10px 15px}.material-day-row input{width:90px}}
.shipment-dialog{width:min(100%,820px)}.shipment-top{display:grid;grid-template-columns:180px 1fr;gap:14px;margin-bottom:30px}.shipment-top label{font-size:11px;color:#78898b;font-weight:600}.shipment-top input,.shipment-top select{margin-top:6px;height:40px}.shipment-columns,.shipment-line{display:grid;grid-template-columns:minmax(230px,2fr) minmax(110px,1fr) minmax(110px,1fr) minmax(125px,1.1fr) 30px;gap:10px;align-items:center}.shipment-columns{font-size:10px;color:#889698;margin-bottom:5px}.shipment-line{margin-bottom:10px}.shipment-line input,.shipment-line select{height:38px;margin-top:0}.shipment-line-total{text-align:right;font-size:14px;font-weight:800;white-space:nowrap}.shipment-line .remove-row{height:38px}.shipment-dialog #add-shipment-row{font-size:11px;padding:9px 12px;margin-top:4px}
.shipment-top{grid-template-columns:140px minmax(0,1fr) minmax(0,1fr)}
@media(max-width:700px){.shipment-dialog{width:min(100%,600px)}.shipment-columns{display:none}.shipment-line{grid-template-columns:repeat(2,minmax(0,1fr)) 30px;padding:12px;border:1px solid var(--line);border-radius:9px}.shipment-line label:first-child{grid-column:1/-1}.shipment-line-total{text-align:left;align-self:end;padding-bottom:10px}.shipment-line .remove-row{grid-column:3;grid-row:1}.shipment-top{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.shipment-top label:nth-child(3){grid-column:1/-1}}
@media(max-width:600px){.shipment-dialog{width:100%}.shipment-top{grid-template-columns:1fr;gap:12px;margin-bottom:20px}.shipment-line{grid-template-columns:1fr 1fr 30px}.shipment-line-total{grid-column:1/3}}
.partner-record{border-top:1px solid var(--line)}.partner-record summary{list-style:none;display:grid;grid-template-columns:minmax(120px,1.5fr) repeat(3,minmax(85px,1fr)) 15px;gap:9px;align-items:center;padding:15px 18px;cursor:pointer;font-size:13px}.partner-record summary::-webkit-details-marker{display:none}.partner-record summary:hover{background:#fafcfc}.partner-name{font-weight:800;font-size:14px;min-width:0}.partner-record small{display:block;color:#9aa9ad;font-size:11px;font-weight:600;margin-bottom:3px}.partner-name small{margin-top:3px;margin-bottom:0;font-weight:500}.partner-amount,.partner-record strong{text-align:right;white-space:nowrap}.partner-chevron{font-size:18px;color:#9aa9ad;text-align:right}.partner-record[open] .partner-chevron{transform:rotate(180deg)}.partner-ledger-body{overflow:auto;background:#fcfdfd;min-height:54px}.partner-ledger-body .empty{padding:20px}.partner-ledger-body table{font-size:11px}.partner-ledger-body th,.partner-ledger-body td{padding:10px 13px}.payment-credit{color:#0d8b78;font-weight:800}
@media(max-width:1100px){.partner-record summary{grid-template-columns:1.3fr 1fr 1fr 1fr 12px;padding:13px 12px;gap:5px;font-size:12px}.partner-name{font-size:13px}}
@media(max-width:600px){.partner-record summary{grid-template-columns:1fr 1fr 20px;gap:9px;padding:14px}.partner-name{grid-column:1/3}.partner-record strong{grid-column:2}.partner-amount:nth-child(2){grid-column:1}.partner-amount:nth-child(3){grid-column:1}.partner-chevron{grid-column:3;grid-row:1/3}}

.catalog-workspace{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:510px;align-items:stretch}
.catalog-nav{background:#f8fbfa;border-right:1px solid var(--line);padding:12px 0}
.catalog-tab{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:66px;padding:18px 22px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;color:#61777c;font-size:13px;font-weight:800;line-height:1.5}
.catalog-tab:last-child{border-bottom:0}.catalog-tab:hover{background:#eef6f3;color:var(--ink)}
.catalog-tab.active{background:#fff;color:var(--teal);box-shadow:inset 3px 0 var(--teal)}
.catalog-tab small{display:grid;place-items:center;min-width:25px;height:24px;border-radius:6px;background:#eaf0ee;color:#7f9296;padding:0 6px;font-size:10px;flex:none}
.catalog-tab.active small{background:#e1f3ef;color:var(--teal)}
.catalog-tab:focus-visible,.catalog-editor summary:focus-visible{outline:2px solid var(--teal);outline-offset:-4px}
.catalog-content{min-width:0}.catalog-panel{min-height:100%;outline-offset:-3px}.catalog-panel[hidden]{display:none}
.catalog-panel-head{padding:27px 26px 21px}.catalog-panel-head h2{font-size:21px;letter-spacing:-.6px}.catalog-panel-head p{color:var(--muted);font-size:12px;margin-top:7px;line-height:1.5}
.catalog-editor{margin:0 26px 24px}.catalog-editor summary{display:inline-block;list-style:none;cursor:pointer;background:#e6f6f3;color:var(--teal);font-weight:800;font-size:12px;padding:11px 16px;border-radius:8px}
.catalog-editor summary::-webkit-details-marker{display:none}.catalog-editor summary:hover{background:#d9efea}
.catalog-entry-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:15px;padding:20px;background:#f8fbfa;border:1px solid var(--line);border-radius:9px}
.catalog-entry-form label{min-width:0}.catalog-entry-form .catalog-wide{grid-column:1/-1}.catalog-entry-form .btn{grid-column:1/-1;justify-self:start;font-size:12px;margin-top:3px}
.catalog-content td,.catalog-content th{padding-left:26px;padding-right:18px}.catalog-content td:first-child{white-space:normal;min-width:145px}.catalog-content th:last-child,.catalog-content td:last-child{padding-right:26px}
.catalog-content .empty{padding:64px 30px;line-height:1.7;max-width:470px;margin:auto}.catalog-content .empty-icon{font-size:33px;margin-bottom:12px}
@media(max-width:1100px){.catalog-workspace{grid-template-columns:205px minmax(0,1fr)}.catalog-tab{padding:17px 17px;font-size:12px}.catalog-content td,.catalog-content th{padding-left:18px;padding-right:15px}}
@media(max-width:650px){.catalog-workspace{grid-template-columns:1fr;min-height:0}.catalog-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;border-right:0;border-bottom:1px solid var(--line)}.catalog-tab{min-height:58px;padding:12px 14px;border-right:1px solid var(--line);font-size:11px;gap:7px}.catalog-tab:nth-child(even){border-right:0}.catalog-tab:last-child{border-bottom:1px solid var(--line)}.catalog-panel{min-height:320px}.catalog-panel-head{padding:23px 18px 18px}.catalog-panel-head h2{font-size:19px}.catalog-editor{margin:0 18px 20px}.catalog-entry-form{grid-template-columns:1fr;padding:15px}.catalog-entry-form .catalog-wide{grid-column:auto}.catalog-content td,.catalog-content th{padding-left:18px;padding-right:14px}.catalog-content .empty{padding:42px 22px}}

[hidden]{display:none!important}
.receipt-columns,.receipt-line{grid-template-columns:minmax(200px,2fr) minmax(95px,.8fr) minmax(145px,1fr) minmax(145px,1fr) 30px;min-width:680px}
.receipt-search-hint{display:block;margin-top:7px;color:#84989b;font-size:10px}
.receipt-suggestions button.active{background:#dff3ed;box-shadow:inset 3px 0 var(--teal);color:#075e59}
.auth-pending .app-shell{display:none}.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px;background:#f0f6f3}.auth-card{width:100%;max-width:430px;background:#fff;padding:35px;border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow)}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:30px;font-size:20px}.auth-brand img{width:48px;height:48px;object-fit:contain}.auth-card h1{font-size:25px;letter-spacing:-.7px}.auth-card>p{font-size:12px;color:var(--muted);line-height:1.7;margin:12px 0 22px}.auth-card form{display:grid;gap:16px}.auth-card .btn{width:100%;margin-top:2px}.auth-error{color:#b53f35;font-size:12px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.auth-error:empty{display:none}.logout-button{border:1px solid #d9e4e2;border-radius:7px;background:#fff;padding:7px 10px;font-size:11px;color:var(--teal);margin-left:5px}.permission-note{color:var(--muted);font-size:12px;line-height:1.7;padding:0 23px 20px}.topbar #current-user{max-width:180px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
@media(max-width:900px){.receipt-columns{display:none}.receipt-line{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr)) 32px}.receipt-material{grid-column:1/3}.receipt-line label:nth-child(2){grid-column:1;grid-row:2}.receipt-line label:nth-child(3){grid-column:2;grid-row:2}.receipt-line-total{grid-column:1/3;grid-row:3;padding-bottom:0}.receipt-line .remove-row{grid-column:3;grid-row:1}}
@media(max-width:600px){.receipt-line{grid-template-columns:repeat(2,minmax(0,1fr)) 30px}.auth-card{padding:25px 22px}.auth-card h1{font-size:23px}.topbar #current-user{max-width:95px}.topbar-right{gap:5px;font-size:10px}}

/* Shared column headings and data typography across all sections. */
table thead th,table th.right,.production-sheet th:nth-child(2),.production-sheet th:nth-child(3){text-align:center}
.receipt-columns>span,.shipment-columns>span,.recipe-table-head>span{text-align:center}
td small{font-size:12px}
.receipt-suggestions button{font-size:16px}.receipt-suggestions small{font-size:14px}
.production-save-status{margin:0 23px 20px;padding:13px 16px;border:1px solid #b8e2dc;border-radius:8px;background:#edf9f6;color:#146f65;font-size:13px;line-height:1.7;overflow-wrap:anywhere}.production-save-status.is-error{border-color:#edcdc5;background:#fff5f1;color:#a54c3f}.production-save-status .text-link{display:block;margin-top:6px;white-space:normal}

.production-date-group{border-top:1px solid var(--line)}
.production-date-group>summary,.production-batch>summary{display:flex;align-items:center;gap:16px;list-style:none;cursor:pointer;padding:17px 23px;color:var(--ink)}
.production-date-group>summary::-webkit-details-marker,.production-batch>summary::-webkit-details-marker{display:none}
.production-date-group>summary{background:var(--aqua-soft,#f4fcfa)}
.production-date-group>summary:hover,.production-batch>summary:hover{background:var(--aqua-hover,#e3f8f4)}
.production-date-group>summary>span:not(.production-chevron),.production-batch>summary>span:not(.production-chevron){font-size:12px;color:var(--muted)}
.production-chevron{margin-left:auto;color:var(--teal);font-size:20px;line-height:1}
.production-date-group[open]>summary .production-chevron,.production-batch[open]>summary .production-chevron{transform:rotate(180deg)}
.production-date-documents{padding:14px 20px 20px;background:#fff;display:grid;gap:12px}
.production-batch{border:1px solid var(--line);border-radius:10px;overflow:hidden}
.production-batch>summary strong{font-size:14px;white-space:nowrap}
.production-batch-actions{padding:13px 23px;border-top:1px solid var(--line)}
.production-batch-actions .btn{font-size:12px}
.production-material-summary{padding:13px 23px;display:flex;flex-wrap:wrap;gap:8px 20px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);background:var(--aqua-soft,#f4fcfa)}
.production-material-summary>b{flex-basis:100%;color:var(--teal-dark)}
.production-history-defect{background:var(--aqua-soft,#f4fcfa)}
.production-legacy>p{padding:12px 23px;font-size:12px;color:var(--muted)}
.production-sheet .card-head p{line-height:1.6;max-width:740px}
@media(max-width:650px){.production-sheet .card-head{align-items:flex-start;flex-direction:column}.production-date-documents{padding:10px}.production-date-group>summary,.production-batch>summary{padding:14px;gap:9px;flex-wrap:wrap}.production-date-group>summary>span:not(.production-chevron),.production-batch>summary>span:not(.production-chevron){order:2;flex-basis:100%;line-height:1.6}.production-batch-actions,.production-material-summary{padding:13px 14px}.production-actions .btn{white-space:normal}}
