:root{
  --ink:#1d2b27;--muted:#71807a;--green:#183f36;--green-2:#2d6556;--mint:#dcebe4;
  --cream:#f5f1e8;--paper:#fffdf8;--line:#e6e2d9;--rose:#f5e2df;--blue:#e3ecf5;
  --shadow:0 16px 45px rgba(28,52,44,.08);--radius:18px
}
*{box-sizing:border-box}
html{font-family:Tahoma,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#f6f5f1}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 85% 0,#e8f0e9 0,transparent 28%),#f6f5f1;font-size:14px}
button,input,select,textarea{font:inherit}
button,a{transition:.2s ease}
a{color:var(--green-2);text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,p{margin-top:0}
h1{font-size:27px;margin-bottom:0;letter-spacing:-.5px}
h2{font-size:19px;margin-bottom:0}
small,.muted{color:var(--muted)}
.block{display:block;margin-top:4px}
.hidden{display:none!important}
.mobile-only{display:none!important}
.app-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}
.sidebar{background:linear-gradient(160deg,#153b32,#102e27);color:#fff;padding:24px 16px;display:flex;flex-direction:column;position:fixed;inset:0 0 0 auto;width:245px;z-index:20;box-shadow:-8px 0 30px rgba(15,45,38,.12)}
.sidebar-brand{display:flex;gap:11px;align-items:center;padding:0 6px 25px;border-bottom:1px solid rgba(255,255,255,.11)}
.sidebar-brand strong{display:block;font-size:15px;max-width:155px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-brand small{display:block;color:#9cc0b5;margin-top:5px}
.brand-mark{width:43px;height:43px;display:inline-grid;place-items:center;border-radius:14px;background:#f0c670;color:#173c33;font-weight:900;font-size:25px;box-shadow:inset 0 -2px rgba(0,0,0,.1);flex:0 0 auto}
.brand-mark.large{width:66px;height:66px;border-radius:22px;font-size:38px}
.sidebar nav{display:flex;flex-direction:column;gap:4px;padding:19px 0;overflow-y:auto}
.sidebar nav a{color:#bad0c9;display:flex;align-items:center;gap:12px;padding:10px 13px;border-radius:11px}
.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.11);color:#fff}
.sidebar nav a.active:after{content:"";margin-right:auto;width:5px;height:5px;background:#efc66f;border-radius:50%}
.nav-icon{font-size:19px;width:22px;text-align:center}
.sidebar-user{margin-top:auto;border-top:1px solid rgba(255,255,255,.11);padding:17px 3px 0;display:flex;align-items:center;gap:9px}
.sidebar-user .avatar{background:#315d52}
.sidebar-user strong{display:block;font-size:13px}.sidebar-user small{color:#99b8af}.sidebar-user a{margin-right:auto;color:#d8e5e0;font-size:21px}
.avatar{width:37px;height:37px;border-radius:12px;background:var(--mint);color:var(--green);display:grid;place-items:center;font-weight:800;flex:0 0 auto}
.main{grid-column:2;padding:28px 32px 60px;min-width:0}
.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:15px}
.eyebrow{text-transform:none;letter-spacing:.3px;color:#7b8a84;font-size:11px;margin-bottom:6px}
.top-actions{display:flex;gap:8px}
.btn{border:0;border-radius:11px;padding:10px 17px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:var(--green);color:#fff;box-shadow:0 8px 18px rgba(24,63,54,.18)}
.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}
.btn.danger{background:#a7473d;color:#fff}
.btn.wide{width:100%}.btn.checkout{padding:14px}
.icon-btn{border:0;background:#fff;width:42px;height:42px;border-radius:12px}
.text-btn{border:0;background:none;cursor:pointer}.text-btn.danger,.danger{color:#aa463e}
.page-actions{display:flex;gap:9px;margin-bottom:16px;flex-wrap:wrap}
.panel{background:rgba(255,253,248,.93);border:1px solid var(--line);border-radius:var(--radius);padding:19px;box-shadow:var(--shadow);min-width:0}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}
.panel-head a{font-size:12px;font-weight:700}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.stat-card{border-radius:17px;padding:18px;min-height:126px;display:flex;flex-direction:column;border:1px solid rgba(0,0,0,.04)}
.stat-card span{font-weight:700;color:#51625c}.stat-card strong{font-size:24px;margin:17px 0 7px}.stat-card small{font-size:11px}
.stat-card.green{background:var(--green);color:#fff}.stat-card.green span,.stat-card.green small{color:#c8dcd5}
.stat-card.cream{background:#f3e9d2}.stat-card.rose{background:var(--rose)}.stat-card.blue{background:var(--blue)}
.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}.span-2{grid-column:auto}
.dashboard-grid .panel:nth-child(3){grid-column:1}.dashboard-grid .panel:nth-child(4){grid-column:2}
.alert{border-radius:12px;padding:13px 16px;margin:0 0 16px;border:1px solid}
.alert.error{background:#fff0ee;border-color:#ecc0bb;color:#8c3029}.alert.success{background:#e5f4ea;border-color:#b6ddc4;color:#245d3a}.alert.warning{background:#fff4d8;border-color:#ecd18a;color:#765a10}
.table-wrap{overflow:auto;border-radius:12px}
table{width:100%;border-collapse:collapse;min-width:700px}
th{font-size:11px;color:#71817b;font-weight:700;background:#f5f3ed;text-align:right;padding:11px 12px;white-space:nowrap}
td{padding:12px;border-bottom:1px solid #eeebe4;vertical-align:middle;white-space:nowrap}
tbody tr:hover{background:#faf9f4}
.empty{text-align:center;color:var(--muted);padding:30px!important}
.badge{display:inline-flex;border:0;border-radius:999px;padding:5px 9px;font-size:11px;white-space:nowrap;cursor:default}
.badge.green{background:#def0e5;color:#236044}.badge.red{background:#f8e1de;color:#993d35}.badge.blue{background:#deebf5;color:#295b82}.badge.orange{background:#fae8d2;color:#925719}.badge.purple{background:#ece1f7;color:#694393}.badge.indigo{background:#e1e5f7;color:#4156a0}.badge.gray{background:#ececea;color:#6d736f}
.rank-list>div,.payment-list>div{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid var(--line)}
.rank-list b{width:29px;height:29px;border-radius:9px;background:#f1eadb;display:grid;place-items:center}.rank-list span{display:flex;flex-direction:column}.rank-list strong{margin-right:auto;font-size:12px}
.payment-list span{color:var(--muted)}.payment-list strong{margin-right:auto}
.bar-chart{height:250px;display:flex;align-items:flex-end;gap:12px;padding:25px 8px 0;border-bottom:1px solid var(--line)}
.chart-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:7px;min-width:20px}
.chart-col .bar{width:min(46px,70%);background:linear-gradient(#447969,#183f36);border-radius:9px 9px 3px 3px;min-height:3px;position:relative}
.chart-col .bar:hover:after{content:attr(data-value);position:absolute;top:-30px;right:50%;transform:translateX(50%);background:#182a25;color:#fff;padding:4px 7px;border-radius:6px;font-size:10px;white-space:nowrap}
.chart-col small{font-size:10px}
label{display:flex;flex-direction:column;gap:7px;color:#53635d;font-size:12px;font-weight:700}
input,select,textarea{width:100%;border:1px solid #dedaD2;background:#fff;border-radius:10px;padding:10px 11px;color:var(--ink);outline:none}
input:focus,select:focus,textarea:focus{border-color:#5d887c;box-shadow:0 0 0 3px rgba(60,115,99,.1)}
textarea{resize:vertical}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-grid .full{grid-column:1/-1}.form-grid.compact{gap:9px}.form-grid.compact input,.form-grid.compact select,.form-grid.compact textarea{padding:8px}
.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:17px;align-items:start}
.pos-catalog{min-width:0}.catalog-tools{background:#fffdf8;border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:14px;box-shadow:var(--shadow)}
.search-box{display:flex;align-items:center;gap:8px;background:#f5f3ed;border:1px solid #e7e3da;border-radius:11px;padding:0 11px;min-width:230px}.search-box input{border:0;background:transparent;box-shadow:none;padding:10px 0}
.category-tabs{display:flex;gap:7px;margin-top:12px;overflow:auto;padding-bottom:2px}.category-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 13px;white-space:nowrap;cursor:pointer}.category-tabs button.active{background:var(--green);color:#fff;border-color:var(--green)}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.product-card{position:relative;border:1px solid var(--line);background:var(--paper);border-radius:16px;padding:13px;text-align:right;cursor:pointer;display:flex;gap:12px;min-height:111px;box-shadow:0 6px 18px rgba(32,55,48,.05)}
.product-card:hover{border-color:#83a89d;transform:translateY(-2px);box-shadow:var(--shadow)}
.product-image{width:58px;height:58px;border-radius:15px;background:#f2eadb;display:grid;place-items:center;font-size:30px;flex:0 0 auto;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover}
.product-info{display:flex;flex-direction:column;gap:5px;min-width:0}.product-info small{font-size:9px}.product-info strong{font-size:13px}.product-info b{color:var(--green-2);font-size:12px;margin-top:auto}
.add-mark{position:absolute;bottom:9px;left:9px;width:27px;height:27px;background:var(--mint);color:var(--green);border-radius:8px;display:grid;place-items:center}
.cart-panel{position:sticky;top:15px;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow);max-height:calc(100vh - 30px);overflow:auto}
.cart-head{display:flex;align-items:center;justify-content:space-between}.cart-head h2{font-size:20px}
.segmented{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;background:#f1efe8;padding:5px;border-radius:11px;margin:14px 0}.segmented input{display:none}.segmented span{display:block;text-align:center;padding:7px;border-radius:8px;cursor:pointer;font-size:11px}.segmented input:checked+span{background:#fff;box-shadow:0 3px 9px rgba(0,0,0,.07);color:var(--green);font-weight:800}
.cart-items{min-height:165px;border-block:1px solid var(--line);padding:8px 0}
.empty-cart{text-align:center;display:flex;align-items:center;flex-direction:column;gap:7px;padding:30px}.empty-cart span{font-size:31px}.empty-cart small{color:var(--muted)}
.cart-row{display:grid;grid-template-columns:1fr auto;gap:7px;border-bottom:1px solid #efede7;padding:9px 2px}.cart-row:last-child{border:0}.cart-row-head{display:flex;gap:7px;align-items:center}.cart-row-title{font-weight:700;font-size:12px}.cart-row-options{font-size:10px;color:var(--muted);display:block;margin-top:4px;white-space:normal}.cart-row-actions{display:flex;gap:5px;margin-top:7px}.cart-row-actions button{border:0;background:#f0eee8;border-radius:7px;font-size:10px;padding:5px 7px;cursor:pointer}.qty-control{display:flex;align-items:center;gap:5px}.qty-control button{border:0;width:25px;height:25px;border-radius:7px;background:#ebe8df;cursor:pointer}.qty-control b{min-width:19px;text-align:center}.cart-row-price{font-size:11px;text-align:left}
.order-details{border-bottom:1px solid var(--line);padding:11px 0}.order-details summary{cursor:pointer;font-weight:700;color:#40564f;margin-bottom:10px}
.totals-inputs{margin:12px 0}.cart-totals{background:#f3f1ea;border-radius:12px;padding:10px 12px;margin-bottom:11px}.cart-totals div{display:flex;justify-content:space-between;padding:4px 0;font-size:11px}.cart-totals .grand{border-top:1px dashed #c9c5bb;margin-top:5px;padding-top:10px;font-size:15px}.cart-totals .grand strong{color:var(--green)}
.modal{position:fixed;inset:0;background:rgba(10,28,23,.48);z-index:60;display:none;place-items:center;padding:18px}.modal.open{display:grid}.modal-card,dialog{width:min(520px,100%);border:0;border-radius:18px;background:var(--paper);padding:20px;box-shadow:0 25px 80px rgba(15,35,29,.3)}.modal-card{max-height:90vh;overflow:auto}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.modal-head button{border:0;background:#efede7;width:32px;height:32px;border-radius:9px;font-size:20px;cursor:pointer}
.option-group{margin-bottom:15px}.option-group h4{margin:0 0 7px}.option-check{display:flex;flex-direction:row;align-items:center;gap:9px;padding:9px;background:#f5f3ed;border-radius:9px;margin-bottom:6px}.option-check input{width:auto}.option-check b{margin-right:auto}
dialog::backdrop{background:rgba(10,28,23,.5)}.dialog-form{display:flex;flex-direction:column;gap:13px;max-height:82vh;overflow:auto;padding:2px}.dialog-form fieldset{border:1px solid var(--line);border-radius:12px}
.filter-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.filter-bar .search-box{flex:1}.filter-bar>input,.filter-bar>select{width:auto;min-width:140px}
.row-menu{position:relative}.row-menu summary{list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:8px;padding:5px 8px}.row-menu>div{position:absolute;left:0;top:32px;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);z-index:10;width:190px;padding:8px;display:flex;flex-direction:column;gap:6px}.row-menu a,.row-menu button{display:block;border:0;background:#f6f4ee;padding:8px;border-radius:7px;width:100%;text-align:right;cursor:pointer}.row-menu form{display:flex;flex-direction:column;gap:5px}.row-menu select{padding:6px}
.product-cell{display:flex;align-items:center;gap:9px}.product-cell>span{width:37px;height:37px;border-radius:10px;background:#f2eadb;display:grid;place-items:center;font-size:21px;overflow:hidden}.product-cell img{width:100%;height:100%;object-fit:cover}.product-cell div{display:flex;flex-direction:column}.product-cell small{max-width:220px;overflow:hidden;text-overflow:ellipsis}
.table-btn{border:1px solid var(--line);background:#fff;padding:5px 8px;border-radius:7px;font-size:11px;cursor:pointer}.inline{display:inline-block}
.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.simple-list>div{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.simple-list>div:last-child{border:0}.simple-list span:nth-child(2){display:flex;flex-direction:column}.simple-list form,.simple-list>div>b,.simple-list>div>span:last-child{margin-right:auto}.big-emoji{font-size:24px}.scroll-list{max-height:420px;overflow:auto}
.summary-strip,.shift-live{background:var(--green);color:#fff;border-radius:17px;padding:18px 21px;display:flex;align-items:center;gap:14px;margin-bottom:16px;box-shadow:var(--shadow)}.summary-strip strong{font-size:22px}.summary-strip .btn,.shift-live .btn{margin-right:auto;background:#f0c66e;color:#173c33}.shift-live p{margin:0 0 4px;color:#bcd2cb}
.inventory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stock-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:15px}.stock-card.low{border-color:#e6a49d;background:#fff8f7}.stock-card>div{display:flex;justify-content:space-between}.stock-icon{width:34px;height:34px;background:#e5eee9;border-radius:9px;display:grid;place-items:center}.stock-card h3{margin:14px 0 8px}.stock-card>strong{font-size:21px}.stock-card>strong small{font-size:11px}.stock-card p{color:var(--muted);font-size:11px;margin:7px 0 0}
.supplier-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.supplier-cards article{border:1px solid var(--line);border-radius:13px;padding:12px;display:flex;gap:10px;align-items:center}.supplier-cards h3{font-size:13px;margin:0 0 5px}.supplier-cards p{font-size:10px;color:var(--muted);margin:0}.supplier-cards>article>strong{margin-right:auto;display:flex;flex-direction:column;text-align:left;font-size:12px}
.permission-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.permission-grid label,.toggle-grid label{display:flex;flex-direction:row;align-items:center;background:#f4f2ec;border-radius:9px;padding:9px}.permission-grid input,.toggle-grid input{width:auto}
.pulse{width:13px;height:13px;border-radius:50%;background:#67d39a;box-shadow:0 0 0 6px rgba(103,211,154,.15)}.shift-live>div{display:flex;flex-direction:column}
.report-links{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.report-links a{border:1px solid var(--line);background:#f8f6f0;padding:13px;border-radius:10px;font-weight:700}
.settings-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:16px}.settings-grid>div{display:flex;flex-direction:column;gap:16px}.settings-form{display:flex;flex-direction:column;gap:17px}.toggle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.button-stack{display:flex;flex-direction:column;gap:9px}.button-stack form{display:flex;flex-direction:column;gap:8px}.file-box{border:1px dashed #b8b4ab;border-radius:10px;padding:13px;text-align:center;cursor:pointer}.file-box input{margin-top:7px}.inline-add{display:flex;gap:7px;margin-top:12px}
.login-body,.install-body{display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#163d34 0,#163d34 46%,#f4f0e6 46%)}
.login-shell{width:min(1000px,100%);display:grid;grid-template-columns:1.1fr .9fr;background:var(--paper);border-radius:25px;overflow:hidden;box-shadow:0 30px 100px rgba(9,34,27,.28);min-height:590px}
.login-brand{background:linear-gradient(155deg,rgba(14,53,42,.98),rgba(34,84,69,.96));color:#fff;padding:70px 55px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.login-brand:after{content:"";position:absolute;width:280px;height:280px;border:60px solid rgba(255,255,255,.04);border-radius:50%;left:-120px;bottom:-120px}.login-brand .eyebrow{color:#efcc83;margin-top:28px}.login-brand h1{font-size:38px;margin-bottom:20px}.login-brand>p:not(.eyebrow){line-height:1.9;color:#c5dbd3;max-width:450px}
.login-features{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.login-features span{border:1px solid rgba(255,255,255,.17);border-radius:999px;padding:7px 11px;font-size:11px;color:#d6e5e0}
.login-card{padding:70px 50px;display:flex;flex-direction:column;justify-content:center}.login-card h2{font-size:27px;margin-bottom:10px}.login-card form{display:flex;flex-direction:column;gap:15px;margin-top:24px}.login-card .hint{text-align:center;margin-top:17px}
.hint{color:var(--muted);font-size:11px;line-height:1.7}
.install-shell{width:min(840px,100%)}.install-hero{display:flex;gap:15px;align-items:center;color:#fff;margin-bottom:18px}.install-hero h1{margin-bottom:7px}.install-hero p{margin:0;color:#bed4cc}.install-card{background:var(--paper);border-radius:22px;padding:27px;box-shadow:0 25px 70px rgba(8,29,23,.22)}.install-card h2{margin:22px 0 14px;padding-bottom:10px;border-bottom:1px solid var(--line)}.requirements{display:flex;gap:8px;flex-wrap:wrap}.requirements span{border-radius:999px;padding:7px 10px;font-size:11px}.requirements .ok{background:#ddf0e4;color:#235b3a}.requirements .bad{background:#f8dfdc;color:#973d34}.success-card{text-align:center;max-width:570px;margin:auto}.success-card .big-icon{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:#dff1e5;color:#277049;font-size:36px;margin:0 auto 18px}
@media(max-width:1180px){.product-grid{grid-template-columns:repeat(2,1fr)}.inventory-grid{grid-template-columns:repeat(3,1fr)}.supplier-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){
  .mobile-only{display:inline-grid!important}.app-shell{display:block}.sidebar{transform:translateX(105%);transition:.25s}.sidebar.open{transform:translateX(0)}.main{padding:20px 16px}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.settings-grid{grid-template-columns:1fr}.dashboard-grid .panel:nth-child(3),.dashboard-grid .panel:nth-child(4){grid-column:auto}.pos-layout{grid-template-columns:1fr}.cart-panel{position:relative;top:0;max-height:none}.two-columns{grid-template-columns:1fr}.inventory-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  body{font-size:13px}.main{padding:14px 10px 45px}.topbar{margin-bottom:16px}.topbar h1{font-size:21px}.top-actions .btn{font-size:0;padding:10px}.top-actions .btn:after{content:"＋";font-size:20px}.stats-grid{gap:8px}.stat-card{min-height:108px;padding:13px}.stat-card strong{font-size:18px;margin:13px 0 5px}.product-grid{grid-template-columns:1fr 1fr;gap:8px}.product-card{min-height:125px;display:block;padding:10px}.product-image{width:47px;height:47px;font-size:24px;margin-bottom:7px}.add-mark{width:24px;height:24px}.cart-panel{padding:12px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.inventory-grid,.supplier-cards{grid-template-columns:1fr 1fr}.report-links{grid-template-columns:1fr}.permission-grid,.toggle-grid{grid-template-columns:1fr}.filter-bar{align-items:stretch}.filter-bar>*{width:100%!important}.search-box{min-width:0}.summary-strip,.shift-live{align-items:flex-start;flex-wrap:wrap}.summary-strip .btn,.shift-live .btn{margin-right:0;width:100%}.login-body,.install-body{background:#163d34;padding:12px}.login-shell{grid-template-columns:1fr;min-height:0}.login-brand{padding:30px 24px}.login-brand h1{font-size:27px}.login-brand>p:not(.eyebrow),.login-features{display:none}.login-card{padding:34px 24px}.install-card{padding:18px}.install-hero h1{font-size:22px}.inventory-grid{grid-template-columns:1fr}
}
@media print{.sidebar,.topbar,.page-actions,.filter-bar,.btn,.alert{display:none!important}.app-shell{display:block}.main{padding:0}.panel{box-shadow:none;border:0}.table-wrap{overflow:visible}body{background:#fff}}
