@font-face{font-family:Local;src:local('Segoe UI')}*{box-sizing:border-box}body{margin:0;background:#f7f6f2;color:#27382f;font:14px Local,'Segoe UI',Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit}button{border:0}h1,h2,h3,p{margin-top:0}h1{font-size:29px;letter-spacing:-1px;font-weight:650;margin-bottom:8px}h2{font-size:18px;font-weight:650;letter-spacing:-.3px}h3{font-size:15px}p{line-height:1.65}.muted,small{color:#748078}small{font-size:12px}.skip{position:absolute;top:-80px}.skip:focus{top:4px;background:white;z-index:90;padding:12px}.layout{display:grid;grid-template-columns:234px 1fr;min-height:100vh}.sidebar{background:#173d32;color:#d5dfd5;padding:32px 19px;position:fixed;inset:0 auto 0 0;width:234px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:10px;align-items:center;color:#fff;text-decoration:none;padding:0 10px 35px}.brand img{width:35px;height:35px}.brand strong{font-size:20px;letter-spacing:-.8px}.brand small{display:block;color:#9cb6a6;font-size:9px;letter-spacing:2px;text-transform:uppercase;margin-top:4px}.nav-label{font-size:9px;letter-spacing:1.8px;color:#88a596;padding:10px 14px}.nav{display:flex;flex-direction:column;gap:5px}.nav a{padding:11px 14px;display:flex;gap:12px;align-items:center;text-decoration:none;font-size:13px;border-radius:7px;color:#b9cbbd}.nav a:hover{background:#234b3e;color:#fff}.nav a.active{background:#eff1e5;color:#173d32;font-weight:650}.nav svg{width:18px;height:18px;flex-shrink:0}.side-bottom{margin-top:auto;padding:25px 10px 0}.side-card{border:1px solid #3a5c4c;padding:14px;border-radius:8px;font-size:11px;color:#afc3b4;line-height:1.65}.side-card strong{color:#e5ecdd;display:block;font-size:12px;margin-bottom:4px}.side-card button{background:none;padding:8px 0 0;color:#efc9a5;text-align:left;font-size:11px}.side-footer{font-size:10px;color:#87a18f;margin-top:17px}.workspace{grid-column:2;min-width:0}.topbar{height:78px;padding:0 38px;border-bottom:1px solid #e5e7df;display:flex;align-items:center;justify-content:space-between;background:#fbfbf8;gap:12px}.topbar-left{font-size:12px;color:#7b857d}.topbar-left strong{color:#37473c;font-weight:500}.topbar-right{display:flex;align-items:center;gap:18px;font-size:11px}.status{display:inline-flex;gap:7px;align-items:center}.dot{width:6px;height:6px;border-radius:100%;background:#7d9b65;display:inline-block}.dot.orange{background:#d98750}.avatar{width:33px;height:33px;border-radius:50%;background:#e9ece2;display:grid;place-items:center;color:#48603d;font-size:11px;font-weight:bold}.mobile-toggle{display:none;background:none;font-size:22px;color:#173d32}.main{padding:33px 38px 26px;max-width:1600px;margin:auto}.pagehead{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:25px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:#9c7252;text-transform:uppercase;margin-bottom:9px;font-weight:650}.subtitle{color:#7c857d;font-size:12px;margin:0}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;gap:7px;align-items:center;justify-content:center;padding:11px 16px;border:1px solid #dfe2d8;background:#fff;border-radius:6px;font-size:12px;color:#344b3c;font-weight:550;text-decoration:none;white-space:nowrap}.btn:hover{background:#f0f1e9}.btn.primary{background:#204a39;border-color:#204a39;color:#fff}.btn.primary:hover{background:#2a6049}.btn.accent{background:#d97952;border-color:#d97952;color:#fff}.btn.danger{color:#a94736;border-color:#e9cfc6;background:#fff9f6}.btn.small{padding:7px 10px;font-size:11px}.btn svg{width:15px;height:15px}.banner{background:#eeeede;border:1px solid #e4e3cc;border-radius:8px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:25px}.banner strong{font-size:13px;font-weight:600}.banner p{margin:4px 0 0;color:#7d8066;font-size:12px}.banner.warn{background:#fff4e7;border-color:#f2dfc4}.banner.demo{background:#eaf1f5;border-color:#d5e3ed}.grid{display:grid;gap:18px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:25px}.card{background:#fff;border:1px solid #e4e7de;border-radius:9px;padding:22px;min-width:0}.stat{position:relative;padding:21px}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#7c867c;font-size:11px;margin-bottom:17px}.stat-icon{width:30px;height:30px;border-radius:7px;background:#f0f2e8;display:grid;place-items:center;color:#73845c}.stat-icon svg{width:16px;height:16px}.stat strong{font-size:25px;letter-spacing:-.9px;font-weight:650;display:block;white-space:nowrap}.stat small{font-size:10px;display:block;margin-top:9px;color:#8a9388}.stat.featured{background:#204a39;border-color:#204a39;color:#fff}.stat.featured .stat-top,.stat.featured small{color:#c0d1bd}.stat.featured .stat-icon{background:#37604a;color:#d2dfb9}.dashboard-grid{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);margin-bottom:20px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:22px}.card-head h2{margin-bottom:5px;font-size:15px}.card-head p{font-size:11px;color:#8a9386;margin:0}.link{background:none;color:#9b795b;font-size:11px;text-decoration:none;padding:3px 0}.chart{height:165px;display:flex;align-items:flex-end;gap:10px;border-bottom:1px solid #e5e9df;padding:10px 0 0;margin-top:28px}.bar-group{flex:1;min-width:0;height:100%;display:flex;align-items:flex-end;gap:4px;position:relative;justify-content:center}.bar{width:14px;min-height:2px;background:#375d48;border-radius:3px 3px 0 0}.bar.second{background:#d9b89b}.chart-labels{display:flex;margin-top:9px;gap:10px;text-align:center;font-size:10px;color:#939b90}.chart-labels span{flex:1}.legend{display:flex;gap:16px;margin-top:20px;font-size:10px;color:#87907f}.legend i{display:inline-block;width:7px;height:7px;background:#375d48;margin-right:5px;border-radius:2px}.legend i.second{background:#d9b89b}.account{display:flex;gap:12px;align-items:center;margin:19px 0}.account-icon{background:#f3f3eb;padding:10px;border-radius:7px;display:grid;place-items:center}.account-icon svg{width:18px;height:18px;color:#778268}.account-info{flex:1}.account-info b{display:block;font-size:12px;font-weight:500}.account-info small{font-size:10px}.account strong{font-size:13px;font-weight:600}.account-total{border-top:1px dashed #dfe3d7;padding-top:16px;display:flex;justify-content:space-between;font-size:11px;color:#7c8775}.account-total strong{color:#294b35;font-size:15px}.lower-grid{grid-template-columns:1.8fr 1fr}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;white-space:nowrap}.table th{font-size:9px;letter-spacing:.8px;text-transform:uppercase;color:#879180;font-weight:550;padding:13px 12px;border-bottom:1px solid #e8ebdf;background:#fbfcf8}.table td{padding:15px 12px;border-bottom:1px solid #eef0e8}.table tr:last-child td{border:0}.table td small{display:block;margin-top:4px;font-size:10px}.table .right{text-align:right}.badge{display:inline-block;font-size:10px;padding:5px 8px;border-radius:4px;background:#edf2e7;color:#627e4f}.badge.warn{background:#faf0e0;color:#a27a3f}.badge.bad{background:#fbece7;color:#b35b41}.stock-row{display:flex;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #eef0e8}.stock-row:last-child{border:0}.item-icon{width:35px;height:35px;border-radius:8px;background:#f2ede4;color:#b18d62;display:grid;place-items:center;flex-shrink:0;font-size:17px}.stock-row .info{flex:1}.stock-row b{font-size:12px;font-weight:550;display:block}.stock-row small{font-size:10px}.stock-row strong{font-size:11px;color:#b47e46}.footnote{margin-top:23px;display:flex;justify-content:space-between;color:#9aa08f;font-size:10px;gap:12px;line-height:1.5}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.input,input,select,textarea{border:1px solid #dfe3d7;border-radius:6px;padding:10px 12px;background:#fff;color:#304332;min-width:0}input:focus,select:focus,textarea:focus{border-color:#699367;outline:2px solid #dfe9d9}.toolbar input{min-width:220px;font-size:12px}.toolbar select{font-size:12px}.empty{padding:36px 15px;text-align:center;color:#8d9788;white-space:normal}.empty strong{display:block;font-size:15px;color:#4f644d;margin-bottom:8px}.empty p{font-size:12px;max-width:350px;margin:0 auto 15px}.two-col{grid-template-columns:1.5fr 1fr}.section-space{margin-top:20px}.list-summary{display:flex;gap:12px;align-items:center}.product-tile{background:white;border:1px solid #e2e6d9;border-radius:9px;text-align:left;padding:18px;min-height:145px;display:flex;flex-direction:column;gap:8px;color:#334c36;transition:transform .15s,border-color .15s}.product-tile:hover{transform:translateY(-2px);border-color:#7c9d73}.product-tile .tile-art{height:43px;display:flex;align-items:center;justify-content:space-between}.product-tile .tile-art span{background:#f2ecdf;color:#9a7959;padding:8px 11px;border-radius:7px;font-size:19px}.product-tile .tile-art small{font-size:9px}.product-tile b{font-size:13px}.product-tile strong{font-size:15px}.products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pos-layout{display:grid;grid-template-columns:1fr 350px;gap:22px;align-items:start}.cart{position:sticky;top:20px}.cart-line{padding:15px 0;border-bottom:1px solid #ecefe4}.cart-line-top{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:10px}.qty{display:flex;align-items:center;gap:12px;font-size:12px}.qty button{width:26px;height:26px;border:1px solid #e1e5d9;border-radius:4px;background:white;color:#49613e}.cart-line-bottom{display:flex;align-items:center;justify-content:space-between}.cart-line-bottom strong{font-size:12px}.totals{margin:18px 0}.totals div{display:flex;justify-content:space-between;font-size:12px;margin:12px 0;color:#7d8974}.totals div:last-child{border-top:1px dashed #dce2d0;padding-top:15px;font-size:18px;color:#284b34;font-weight:650}.wide{width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px}.field.full{grid-column:1/-1}.field small{font-size:10px;line-height:1.5}.field label{color:#617256}.field textarea{min-height:70px;resize:vertical}.form-section{border-top:1px solid #e8eade;padding-top:18px;margin-top:20px}.form-section h3{margin-bottom:8px}.form-section p{font-size:11px;color:#8a9380}.recipe-row,.purchase-row{display:grid;grid-template-columns:1fr 100px 32px;gap:8px;margin:9px 0}.purchase-row{grid-template-columns:1fr 90px 130px 32px}.recipe-row input,.recipe-row select,.purchase-row input,.purchase-row select{font-size:12px;width:100%}.remove-row{background:#f8eee8;color:#ab725a;border-radius:5px}dialog{border:1px solid #dee3d6;border-radius:12px;padding:0;max-width:680px;width:calc(100% - 32px);max-height:90vh;color:#31462f;box-shadow:0 24px 100px #183c3240}dialog::backdrop{background:#102a2465;backdrop-filter:blur(3px)}.modal-head{padding:25px 27px 20px;display:flex;align-items:start;justify-content:space-between;border-bottom:1px solid #e7eade}.modal-head h2{margin:0;font-size:21px}.modal-head p{margin:7px 0 0;font-size:11px;color:#8a947f}.close{background:#f4f5ef;color:#718166;border-radius:50%;width:29px;height:29px;font-size:20px}.modal-body{padding:24px 27px}.modal-footer{padding:18px 27px;border-top:1px solid #e7eade;display:flex;justify-content:flex-end;gap:10px;background:#fafbf7}.form-error{color:#a74835;background:#fff0e9;padding:10px 14px;border-radius:5px;font-size:12px;line-height:1.6;margin:0 27px 15px}.form-error:empty{display:none}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(100px);opacity:0;transition:.2s;background:#193e31;color:#fff;padding:14px 23px;border-radius:8px;box-shadow:0 6px 25px #173d3230;z-index:100;max-width:90%;font-size:12px}#toast.show{transform:translateX(-50%) translateY(0);opacity:1}.help-list{font-size:13px;line-height:1.8;padding-left:20px}.help-list li{margin-bottom:10px}.metric-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #ecefe5;gap:15px;font-size:12px}.metric-row.total{font-size:18px;color:#264d33;font-weight:650;border:0}.cost-big{font-size:40px;letter-spacing:-1.5px;color:#254e34;font-weight:650;margin:17px 0}.cost-big small{font-size:12px;letter-spacing:0;font-weight:400}.segmented{display:flex;gap:6px;background:#eeefe6;padding:4px;border-radius:7px;margin-bottom:18px}.segmented button{flex:1;background:none;padding:9px;color:#849276;font-size:11px;border-radius:5px}.segmented button.active{background:#fff;color:#355735;box-shadow:0 1px 4px #183c3210}.boot{display:grid;place-items:center;min-height:100vh;color:#66815d}.receipt{font-family:monospace;font-size:12px;max-width:330px;margin:auto;line-height:1.6}.receipt h2{text-align:center}.receipt .metric-row{font-family:monospace;font-size:12px}.receipt hr{border:0;border-top:1px dashed #ccc}.receipt-foot{text-align:center;margin-top:20px}.mobile-shade{display:none}.inline-note{font-size:11px;line-height:1.7;color:#89957e;margin:12px 0 0}.about-version{font-size:10px;padding:5px 8px;border:1px solid #e2e6d7;border-radius:4px;color:#8c977e}.csv-preview{max-height:260px;overflow:auto}.error-box{max-width:600px;margin:80px auto;background:white;padding:35px;border-radius:12px;border:1px solid #e5ddd2}.checkbox{display:flex;gap:8px;align-items:center;font-size:12px;line-height:1.6}.checkbox input{width:16px;height:16px}details{border:1px solid #e5e9dc;padding:14px;border-radius:7px;margin:12px 0;font-size:12px;line-height:1.8}summary{cursor:pointer;font-weight:600}.search-icon{color:#909c83}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
svg{width:20px;height:20px;flex-shrink:0}.card-head>svg{width:22px;height:22px;color:#748369}.item-icon svg{width:18px;height:18px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media(min-width:1500px){.main{padding-top:40px}.stats{gap:22px}.stat strong{font-size:30px}.chart{height:210px}}
@media(max-width:1180px){.main{padding:25px}.topbar{padding:0 25px}.stat strong{font-size:21px}.stats{gap:12px}.stat{padding:17px}.dashboard-grid,.lower-grid{grid-template-columns:1.5fr 1fr}.pos-layout{grid-template-columns:1fr 300px}.products-grid{grid-template-columns:repeat(2,1fr)}.sidebar{width:210px;padding:28px 14px}.layout{grid-template-columns:210px 1fr}.brand strong{font-size:18px}}
@media(max-width:940px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.lower-grid{grid-template-columns:1fr}.two-col{grid-template-columns:1fr}.pos-layout{grid-template-columns:1fr}.cart{position:static}.products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar-right .date{display:none}.pagehead{align-items:flex-start}.pagehead .actions{justify-content:flex-end}.main{padding:24px}.banner{align-items:flex-start}.account{margin:15px 0}}
@media(max-width:700px){.layout{display:block}.sidebar{transform:translateX(-100%);transition:transform .2s;width:234px}.menu-open .sidebar{transform:translateX(0)}.menu-open .mobile-shade{display:block;position:fixed;inset:0;background:#183c3270;z-index:19}.mobile-toggle{display:block}.topbar{height:65px;padding:0 18px}.topbar-left{display:none}.topbar-right{gap:10px;font-size:10px}.main{padding:24px 17px}.pagehead{flex-direction:column;gap:16px}.pagehead .actions{justify-content:flex-start}h1{font-size:27px}.stats{gap:10px;margin-bottom:18px}.stat{padding:15px}.stat strong{font-size:22px}.stat-top{margin-bottom:12px;font-size:10px}.stat-icon{width:24px;height:24px}.stat small{font-size:9px}.banner{padding:15px;flex-direction:column;gap:10px}.card{padding:18px}.products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.modal-head,.modal-body{padding:20px}.modal-footer{padding:16px 20px}.form-error{margin:0 20px 15px}.purchase-row{grid-template-columns:1fr 70px 90px 27px}.recipe-row{grid-template-columns:1fr 80px 27px}.footnote{flex-direction:column}.toolbar input{min-width:150px}.cost-big{font-size:35px}.table td{padding:13px 9px}.table th{padding:12px 9px}}
@media print{body{background:white}.layout,#toast,.modal-head,.modal-footer,.form-error{display:none!important}dialog{position:static;display:block!important;border:0;box-shadow:none;max-height:none;width:100%;max-width:none;margin:0}.modal-body{padding:0}.receipt{color:#000}dialog:not([open]){display:none!important}}

/* The workspace menu can be hidden on desktop without resetting the current page. */
.mobile-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;border-radius:6px;padding:0;line-height:1}
.mobile-toggle:hover{background:#edf0e6}.topbar-left{margin-right:auto}
@media(min-width:701px){body.sidebar-collapsed .layout{grid-template-columns:0 minmax(0,1fr)}body.sidebar-collapsed .sidebar{transform:translateX(-100%);visibility:hidden;pointer-events:none}body.sidebar-collapsed .main{max-width:none}}
@media(max-width:700px){.sidebar{visibility:hidden}.menu-open .sidebar{visibility:visible}}

/* Purchase packaging stays attached to its own transaction row. */
.purchase-row{grid-template-columns:minmax(140px,1fr) 80px 80px 110px 30px}.purchase-conversion,.purchase-pack{grid-column:1/-1}.purchase-conversion{font-size:10px;line-height:1.6;color:#75856a}.purchase-pack{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#f6f8f0;padding:10px;border-radius:6px;font-size:11px}.purchase-pack input{max-width:110px}.purchase-pack select{max-width:90px}[hidden]{display:none!important}
@media(max-width:700px){.purchase-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 30px}.purchase-row>[name="purchase-item"]{grid-column:1/3}.purchase-row>.remove-row{grid-column:3;grid-row:1}.purchase-row>[name="purchase-total"]{grid-column:1/3}.purchase-row>[name="purchase-qty"],.purchase-row>[name="purchase-unit"]{grid-row:2}.purchase-row>[name="purchase-unit"]{grid-column:2}.purchase-pack input{max-width:90px}}

.profit-row{background:#edf4eb;border-radius:6px;padding:14px 12px;margin-top:8px;color:#245337}.profit-row strong{font-size:18px;overflow-wrap:anywhere;text-align:right}.profit-negative{color:#a94736}.delete-section{border-color:#e9cfc6}.delete-section>p{max-width:800px;font-size:12px}
@media(max-width:700px){.profit-row strong{font-size:16px}.delete-section .actions{align-items:stretch;flex-direction:column}.delete-section .btn{white-space:normal}}
