:root{
  --ink:#17221d;--ink-soft:#52615a;--muted:#7b8982;--line:#dfe7e2;--line-soft:#ebf0ed;
  --paper:#ffffff;--canvas:#f4f7f5;--canvas-2:#edf3ef;--sidebar:#0b1712;--sidebar-2:#11231b;
  --green:#1f7654;--green-dark:#15563d;--green-soft:#ddf5e7;--mint:#79dca2;--lime:#b8eb72;
  --orange:#e78a3e;--orange-soft:#fff0e2;--blue:#5475e8;--blue-soft:#e8edff;--red:#d95454;--red-soft:#fdeaea;
  --purple:#7864d7;--purple-soft:#eeeaff;--shadow:0 18px 45px rgba(21,42,32,.08);--shadow-sm:0 8px 24px rgba(21,42,32,.07);
  --radius:20px;--radius-sm:13px;--sidebar-width:268px;--topbar-height:88px;
}
*{box-sizing:border-box}
html{font-size:16px;scroll-behavior:smooth}
body{margin:0;font-family:"Segoe UI",system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
::selection{background:var(--mint);color:#092016}
::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#c8d4cd;border-radius:20px}

/* App shell */
.app-shell{min-height:100vh;overflow-x:hidden}
.ambient{position:fixed;border-radius:50%;filter:blur(1px);pointer-events:none;opacity:.45;z-index:-1}
.ambient-one{width:420px;height:420px;right:-170px;top:-180px;background:radial-gradient(circle,rgba(121,220,162,.22),transparent 68%)}
.ambient-two{width:340px;height:340px;left:22%;bottom:-220px;background:radial-gradient(circle,rgba(84,117,232,.12),transparent 70%)}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);background:linear-gradient(180deg,var(--sidebar) 0%,#0d1d16 100%);padding:24px 18px 18px;display:flex;flex-direction:column;color:#dce9e2;z-index:1035;border-right:1px solid rgba(255,255,255,.04);box-shadow:10px 0 35px rgba(6,20,13,.08)}
.brand{display:flex;align-items:center;gap:12px;padding:0 8px;margin-bottom:25px}
.brand-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;color:#0a2317;background:linear-gradient(145deg,var(--lime),var(--mint));box-shadow:0 9px 24px rgba(121,220,162,.25);font-size:1rem;transform:rotate(-2deg)}
.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.26rem;letter-spacing:-.045em;color:#fff}.brand-copy strong span{color:var(--mint)}.brand-copy small{font-size:.62rem;text-transform:uppercase;letter-spacing:.17em;color:#6f8c7d;margin-top:7px;font-weight:700}
.workspace-chip{display:flex;align-items:center;gap:10px;padding:11px 12px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07);border-radius:14px;margin:0 2px 25px}.workspace-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(121,220,162,.1);color:var(--mint)}.workspace-chip>span:nth-child(2){display:flex;flex-direction:column;min-width:0;flex:1}.workspace-chip small{font-size:.58rem;text-transform:uppercase;letter-spacing:.12em;color:#6f8c7d}.workspace-chip strong{font-size:.77rem;color:#edf8f2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.workspace-chip>i{font-size:.65rem;color:#526c5f}
.side-nav{display:flex;flex-direction:column;gap:6px}.nav-caption{font-size:.6rem;text-transform:uppercase;letter-spacing:.17em;color:#526c5f;font-weight:700;padding:0 13px;margin:0 0 5px}
.side-link{height:48px;border-radius:13px;display:flex;align-items:center;gap:12px;padding:0 12px;color:#8fa69a;font-size:.82rem;font-weight:600;position:relative;transition:.22s ease}.side-link:hover{color:#e7f5ed;background:rgba(255,255,255,.045)}.side-link.active{color:#fff;background:linear-gradient(100deg,rgba(121,220,162,.18),rgba(121,220,162,.07));box-shadow:inset 0 0 0 1px rgba(121,220,162,.12)}.side-link.active:before{content:"";position:absolute;left:-18px;width:3px;height:25px;border-radius:0 4px 4px 0;background:var(--mint);box-shadow:0 0 13px rgba(121,220,162,.55)}
.side-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;color:#6f8c7d;transition:.2s}.side-link.active .side-icon{background:rgba(121,220,162,.13);color:var(--mint)}.nav-pill{margin-left:auto;font-size:.51rem;letter-spacing:.08em;padding:3px 6px;border-radius:5px;color:#092116;background:var(--mint);font-weight:800}
.sidebar-spacer{flex:1}.system-card{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.065);border-radius:15px;padding:12px;margin:10px 2px 14px}.system-card-head{display:flex;align-items:center;justify-content:space-between;font-size:.59rem;text-transform:uppercase;letter-spacing:.12em;color:#678174;font-weight:700;margin-bottom:10px}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(121,220,162,.09)}.system-row{display:flex;align-items:center;justify-content:space-between;font-size:.67rem;color:#81978c;padding:4px 0}.system-row i{font-size:.61rem;width:15px}.system-row strong{font-size:.59rem;color:#8fdbaf;text-transform:uppercase;letter-spacing:.05em}.system-row strong.fallback{color:#efb36f}
.profile-card{min-height:59px;border-radius:15px;display:flex;align-items:center;gap:10px;padding:9px 9px;background:rgba(255,255,255,.045);position:relative}.avatar,.top-avatar{display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#315f4a,#1d3b2e);color:#dff8e9;font-family:"Segoe UI",system-ui,sans-serif;font-size:.72rem;font-weight:800}.avatar{width:38px;height:38px}.profile-copy{display:flex;flex-direction:column;min-width:0;flex:1}.profile-copy strong{font-size:.73rem;color:#edf7f1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-copy small{text-transform:capitalize;font-size:.61rem;color:#718b7e;margin-top:3px}.icon-btn{border:0;background:transparent;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:var(--ink-soft);transition:.2s}.icon-btn:hover{background:var(--canvas-2);color:var(--ink)}.icon-btn.subtle{width:30px;height:30px;color:#5c7669}.icon-btn.subtle:hover{background:rgba(255,255,255,.07);color:#dff2e7}
.profile-popover{position:absolute;left:0;right:0;bottom:68px;background:#172a21;border:1px solid rgba(255,255,255,.1);padding:10px;border-radius:14px;box-shadow:0 15px 35px rgba(0,0,0,.24);opacity:0;transform:translateY(7px);visibility:hidden;transition:.18s}.profile-popover.show{opacity:1;transform:none;visibility:visible}.profile-popover>div{display:flex;flex-direction:column;padding:4px 5px 9px;border-bottom:1px solid rgba(255,255,255,.07)}.profile-popover small{font-size:.58rem;color:#70897c}.profile-popover strong{font-size:.7rem;color:#dbeee4;margin-top:2px}.profile-popover form{margin-top:5px}.profile-popover button{width:100%;border:0;background:transparent;color:#ff9c9c;display:flex;align-items:center;gap:8px;border-radius:8px;padding:8px;font-size:.72rem}.profile-popover button:hover{background:rgba(217,84,84,.1)}
.profile-popover button.account-action{color:#cfe8db;margin-top:4px}.profile-popover button.account-action:hover{color:#8ce5b1;background:rgba(121,220,162,.08)}.account-fields .field-wrap{margin-bottom:14px}.account-fields .info-callout{margin-top:17px}
.app-main{min-height:100vh;margin-left:var(--sidebar-width)}
.topbar{height:var(--topbar-height);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;background:rgba(244,247,245,.86);backdrop-filter:blur(16px);border-bottom:1px solid rgba(215,225,219,.7);z-index:1020}.topbar-left,.topbar-right{display:flex;align-items:center}.topbar-left{gap:13px}.topbar h1{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.22rem;letter-spacing:-.04em;margin:3px 0 0}.eyebrow{font-size:.59rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-weight:700}.menu-toggle{display:none}.topbar-right{gap:10px}.live-clock{height:42px;padding:0 13px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.65);display:grid;grid-template-columns:auto auto;column-gap:7px;align-items:center}.live-clock i{grid-row:1/3;color:var(--green);font-size:.76rem}.live-clock span{font-family:"Segoe UI",system-ui,sans-serif;font-size:.74rem;line-height:1;align-self:end}.live-clock small{font-size:.56rem;color:var(--muted);align-self:start}.notification-btn{position:relative;border:1px solid var(--line);background:rgba(255,255,255,.65)}.notification-btn span{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--orange);right:9px;top:8px;border:1px solid #fff}.top-avatar{width:40px;height:40px}.page-wrap{padding:28px 34px 46px;max-width:1680px;margin:auto}.page-section{animation:pageIn .35s ease both}@keyframes pageIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.mobile-overlay{display:none;position:fixed;inset:0;background:rgba(6,17,11,.58);backdrop-filter:blur(2px);z-index:1030}

/* Shared UI */
.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:22px}.page-intro h2{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.65rem;letter-spacing:-.055em;margin:8px 0 5px}.page-intro p{color:var(--muted);font-size:.82rem;margin:0}.section-kicker,.hero-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--green);font-size:.61rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.section-kicker i,.hero-kicker i{font-size:.68rem}.intro-actions,.overview-actions{display:flex;align-items:center;gap:9px}
.btn-primary-cf,.btn-secondary-cf,.btn-danger-cf{border:0;border-radius:12px;height:43px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.75rem;font-weight:700;transition:.2s;white-space:nowrap}.btn-primary-cf{color:#fff;background:linear-gradient(135deg,var(--green),var(--green-dark));box-shadow:0 9px 20px rgba(31,118,84,.19)}.btn-primary-cf:hover{color:#fff;transform:translateY(-1px);box-shadow:0 11px 24px rgba(31,118,84,.25)}.btn-secondary-cf{color:var(--ink);background:#fff;border:1px solid var(--line);box-shadow:0 4px 12px rgba(21,42,32,.03)}.btn-secondary-cf:hover{background:var(--canvas-2);border-color:#cad7cf}.btn-danger-cf{color:#fff;background:var(--red)}.btn-danger-cf:hover{background:#be4545}.btn-text{font-size:.72rem;color:var(--green);font-weight:700;display:flex;align-items:center;gap:7px}.btn-text:hover{color:var(--green-dark)}
.panel{background:rgba(255,255,255,.89);border:1px solid rgba(216,226,220,.86);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.panel-head.compact{align-items:center}.panel-head h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:1rem;letter-spacing:-.035em;margin:5px 0 3px}.panel-head p{font-size:.69rem;color:var(--muted);margin:0}.panel-kicker{font-size:.55rem;letter-spacing:.14em;color:var(--green);font-weight:800}.round-icon{width:38px;height:38px;border-radius:12px;background:var(--green-soft);color:var(--green);display:grid;place-items:center}.period-chip{font-size:.61rem;color:var(--ink-soft);border:1px solid var(--line-soft);background:var(--canvas);padding:7px 10px;border-radius:9px}.period-chip i{color:var(--green);margin-right:4px}
.search-field{height:44px;min-width:280px;display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 12px;transition:.2s}.search-field:focus-within{border-color:#9acdb1;box-shadow:0 0 0 3px rgba(31,118,84,.08)}.search-field i{font-size:.72rem;color:#8b9891}.search-field input{border:0;outline:0;background:transparent;min-width:0;flex:1;font-size:.77rem;color:var(--ink)}.search-field input::placeholder{color:#a0aba5}.search-field kbd{border:1px solid var(--line);background:var(--canvas);color:var(--muted);font-size:.56rem;border-radius:5px;padding:2px 5px;box-shadow:none}.search-field.compact{min-width:215px;height:40px}.select-field,.date-field{height:40px;border:1px solid var(--line);border-radius:11px;background:#fff;display:flex;align-items:center;padding:0 10px;gap:8px}.select-field i,.date-field i{font-size:.67rem;color:var(--muted)}.select-field select,.date-field input{border:0;outline:0;background:transparent;color:var(--ink-soft);font-size:.7rem}.date-field input{width:115px}
.filter-tabs{display:flex;align-items:center;gap:4px;padding:4px;background:var(--canvas);border-radius:12px}.filter-tabs button{height:34px;border:0;background:transparent;color:var(--muted);border-radius:9px;padding:0 12px;font-size:.68rem;font-weight:700;transition:.2s}.filter-tabs button span{font-size:.56rem;color:#96a39c;background:#e2e9e5;border-radius:10px;padding:2px 5px;margin-left:4px}.filter-tabs button.active{background:#fff;color:var(--green);box-shadow:0 3px 10px rgba(21,42,32,.08)}.filter-tabs button.active span{background:var(--green-soft);color:var(--green)}
.responsive-table{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:12px 16px;border-bottom:1px solid var(--line-soft);font-size:.56rem;letter-spacing:.09em;text-transform:uppercase;color:#8a9790;font-weight:800;white-space:nowrap}.data-table td{padding:14px 16px;border-bottom:1px solid var(--line-soft);font-size:.72rem;color:var(--ink-soft);vertical-align:middle}.data-table tbody tr{transition:.16s}.data-table tbody tr:hover{background:#f8faf9}.data-table tbody tr:last-child td{border-bottom:0}.data-table td strong{color:var(--ink)}.txn-id{font-family:"Segoe UI",system-ui,sans-serif;font-size:.68rem;color:var(--ink);background:var(--canvas);border:1px solid var(--line-soft);padding:5px 7px;border-radius:7px}.muted-cell{color:var(--muted);font-size:.68rem}.customer-cell{display:flex;align-items:center;gap:9px}.customer-cell>span{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-weight:800;font-size:.66rem}.customer-cell strong{font-size:.72rem;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-chip{display:inline-flex;align-items:center;gap:6px;border-radius:20px;padding:5px 8px;font-size:.57rem;font-weight:800;letter-spacing:.04em}.payment-chip.cash{background:var(--green-soft);color:var(--green-dark)}.payment-chip.qris{background:var(--purple-soft);color:var(--purple)}.payment-chip.transfer{background:var(--blue-soft);color:var(--blue)}
.table-loading,.empty-inline{display:flex;align-items:center;justify-content:center;gap:8px;min-height:80px;color:var(--muted);font-size:.7rem}.empty-inline i{font-size:1rem;color:#b3bfb8}.empty-inline.tall{min-height:170px;flex-direction:column}.empty-inline.tall i{font-size:1.7rem}.empty-inline.tall strong{color:var(--ink);font-family:"Segoe UI",system-ui,sans-serif}.empty-inline.tall span{font-size:.65rem}
.field-label{display:flex;justify-content:space-between;color:var(--ink-soft);font-size:.67rem;font-weight:700;margin-bottom:7px}.field-label span{font-weight:400;color:var(--muted)}.field-wrap{height:46px;border:1px solid rgba(255,255,255,.12);border-radius:12px;display:flex;align-items:center;gap:10px;padding:0 13px;transition:.2s}.field-wrap:focus-within{border-color:rgba(121,220,162,.62);box-shadow:0 0 0 3px rgba(121,220,162,.08)}.field-wrap i{color:#678275;font-size:.74rem}.field-wrap input,.field-wrap select{flex:1;min-width:0;border:0;outline:0;background:transparent;color:inherit;font-size:.78rem}.field-wrap.light{border-color:var(--line);background:#fff;color:var(--ink)}.field-wrap.light:focus-within{border-color:#9acdb1}.field-wrap.light select{appearance:none}.field-wrap.invalid{border-color:#f07b7b!important;box-shadow:0 0 0 3px rgba(217,84,84,.1)!important}
.toast-stack{position:fixed;right:24px;bottom:24px;z-index:2000;display:flex;flex-direction:column;gap:9px;max-width:370px}.cf-toast{min-width:290px;background:#12231b;color:#e8f4ed;border:1px solid rgba(255,255,255,.08);border-radius:14px;box-shadow:0 18px 45px rgba(6,22,14,.28);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px;animation:toastIn .25s ease both;font-size:.7rem}.cf-toast .toast-icon{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:rgba(121,220,162,.12);color:var(--mint)}.cf-toast.error .toast-icon{background:rgba(217,84,84,.13);color:#ff8989}.cf-toast.warning .toast-icon{background:rgba(231,138,62,.13);color:#f0a663}.cf-toast.info .toast-icon{background:rgba(84,117,232,.15);color:#8ca3ff}.cf-toast button{border:0;background:transparent;color:#71887c;width:25px;height:25px}.cf-toast button:hover{color:#fff}@keyframes toastIn{from{opacity:0;transform:translateY(9px) scale(.98)}to{opacity:1;transform:none}}

/* Dashboard */
.overview-banner{min-height:158px;border-radius:24px;position:relative;overflow:hidden;background:linear-gradient(115deg,#10291e 0%,#174532 65%,#1b5a3e 100%);display:flex;align-items:center;justify-content:space-between;padding:28px 31px;color:#fff;margin-bottom:21px;box-shadow:0 20px 45px rgba(18,64,43,.16)}.overview-banner:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:27px 27px;mask-image:linear-gradient(90deg,#000,transparent)}.overview-copy,.overview-actions{position:relative;z-index:2}.overview-copy .hero-kicker{color:#8de1b2}.overview-copy h2{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.62rem;letter-spacing:-.05em;margin:10px 0 4px}.overview-copy p{font-size:.73rem;color:#91ad9f;margin:0}.overview-actions .btn-primary-cf{color:#123021;background:linear-gradient(135deg,var(--lime),var(--mint));box-shadow:none}.overview-actions .btn-secondary-cf{color:#d9ebe1;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.13)}.overview-actions .btn-secondary-cf:hover{background:rgba(255,255,255,.1)}.banner-orb{position:absolute;width:185px;height:185px;border-radius:50%;right:31%;top:-66px;border:1px solid rgba(255,255,255,.07);display:grid;place-items:center;color:rgba(255,255,255,.035);font-size:4.2rem;box-shadow:inset 0 0 0 35px rgba(255,255,255,.018)}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:17px}.metric-card{background:rgba(255,255,255,.9);border:1px solid rgba(216,226,220,.87);border-radius:18px;padding:17px 18px 15px;box-shadow:var(--shadow-sm);min-height:151px;display:flex;flex-direction:column;position:relative;overflow:hidden}.metric-card:after{content:"";position:absolute;width:85px;height:85px;border-radius:50%;right:-35px;bottom:-45px;background:var(--card-glow)}.metric-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.metric-icon{width:37px;height:37px;border-radius:11px;display:grid;place-items:center;background:var(--card-bg);color:var(--card-color);font-size:.78rem}.metric-menu{color:#a4afa9;font-size:.7rem}.metric-label{font-size:.63rem;color:var(--muted);margin-bottom:3px}.metric-value{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.32rem;letter-spacing:-.045em;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-value.product-name{font-size:.95rem;padding:5px 0}.metric-foot{display:flex;align-items:center;gap:7px;margin-top:auto}.metric-foot small{font-size:.55rem;color:#9aa59f}.trend-badge{display:inline-flex;align-items:center;gap:4px;font-size:.55rem;font-weight:800;padding:4px 6px;border-radius:7px}.trend-badge.up{background:var(--green-soft);color:var(--green)}.trend-badge.down{background:var(--red-soft);color:var(--red)}.trend-badge.neutral{background:var(--canvas-2);color:var(--muted)}.trend-badge.info{background:var(--blue-soft);color:var(--blue)}.trend-badge.warm{background:var(--orange-soft);color:var(--orange)}.revenue-card{--card-bg:var(--green-soft);--card-color:var(--green);--card-glow:rgba(121,220,162,.1)}.orders-card{--card-bg:var(--blue-soft);--card-color:var(--blue);--card-glow:rgba(84,117,232,.08)}.products-card{--card-bg:var(--orange-soft);--card-color:var(--orange);--card-glow:rgba(231,138,62,.08)}.bestseller-card{--card-bg:var(--purple-soft);--card-color:var(--purple);--card-glow:rgba(120,100,215,.08)}
.skeleton-text{position:relative;color:transparent!important;background:linear-gradient(90deg,#ecf1ee 20%,#f7f9f8 50%,#ecf1ee 80%);background-size:200% 100%;border-radius:7px;width:70%;animation:skeleton 1.2s infinite}@keyframes skeleton{to{background-position:-200% 0}}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:17px;margin-bottom:17px}.revenue-panel,.payment-panel{padding:20px}.chart-total{margin:18px 0 9px;display:flex;align-items:flex-end;justify-content:space-between}.chart-total small{font-size:.58rem;color:var(--muted)}.chart-total strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1rem}.modern-bar-chart{height:204px;display:flex;align-items:stretch;gap:10px;padding:7px 3px 0;border-bottom:1px solid var(--line-soft);position:relative}.bar-column{flex:1;min-width:20px;display:flex;flex-direction:column;align-items:center;position:relative}.bar-track{width:min(32px,72%);flex:1;background:#eef3f0;border-radius:8px 8px 2px 2px;position:relative;overflow:hidden;display:flex;align-items:flex-end}.bar-track span{width:100%;display:block;background:linear-gradient(180deg,#75d89e,#2b825e);border-radius:8px 8px 2px 2px;transition:height .55s cubic-bezier(.2,.7,.2,1)}.bar-column.current .bar-track span{background:linear-gradient(180deg,var(--lime),var(--green))}.bar-column small{font-size:.55rem;color:var(--muted);margin-top:7px}.bar-tooltip{position:absolute;z-index:3;top:-15px;background:#15271e;color:#fff;border-radius:7px;padding:5px 6px;font-size:.52rem;white-space:nowrap;opacity:0;transform:translateY(5px);transition:.15s;pointer-events:none}.bar-column:hover .bar-tooltip{opacity:1;transform:none}.chart-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#a0ada6;gap:7px;font-size:.65rem}.chart-empty i{font-size:1.3rem}
.payment-donut-wrap{display:flex;align-items:center;gap:24px;padding:24px 3px 20px}.payment-donut{--cash-end:50;--qris-end:100;width:118px;height:118px;flex:0 0 118px;border-radius:50%;background:conic-gradient(var(--green) 0 calc(var(--cash-end)*1%),var(--purple) calc(var(--cash-end)*1%) calc(var(--qris-end)*1%),var(--orange) calc(var(--qris-end)*1%) 100%);position:relative;display:grid;place-items:center}.payment-donut:before{content:"";position:absolute;inset:13px;background:#fff;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line-soft)}.payment-donut>div{z-index:1;text-align:center;display:flex;flex-direction:column}.payment-donut strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.25rem}.payment-donut span{font-size:.51rem;color:var(--muted)}.payment-legend{display:flex;flex:1;flex-direction:column;gap:11px}.payment-legend>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-dot.cash{background:var(--green)}.legend-dot.qris{background:var(--purple)}.legend-dot.transfer{background:var(--orange)}.payment-legend p{margin:0;display:flex;flex-direction:column}.payment-legend small{font-size:.55rem;color:var(--muted)}.payment-legend strong{font-size:.63rem;color:var(--ink-soft)}.payment-legend b{font-family:"Segoe UI",system-ui,sans-serif;font-size:.7rem}.panel-link{border-top:1px solid var(--line-soft);padding-top:13px;display:flex;justify-content:space-between;align-items:center;color:var(--green);font-size:.66rem;font-weight:700}.recent-panel{padding:18px 4px 4px}.recent-panel>.panel-head{padding:0 16px 12px}

/* Catalogue */
.catalogue-toolbar{min-height:68px;padding:11px 13px;display:flex;align-items:center;gap:14px;margin-bottom:15px}.catalogue-toolbar .filter-tabs{margin-left:auto}.cache-indicator{display:flex;align-items:center;gap:6px;border-left:1px solid var(--line);padding-left:14px;font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.cache-indicator.online{color:var(--green)}.cache-indicator.fallback{color:var(--orange)}.cache-indicator i{font-size:.65rem}.catalogue-meta{display:flex;align-items:center;justify-content:space-between;margin:0 3px 10px}.catalogue-meta p,.catalogue-meta span{font-size:.62rem;color:var(--muted);margin:0}.catalogue-meta strong{color:var(--ink)}
.product-grid-modern{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.product-card-modern{background:#fff;border:1px solid var(--line-soft);border-radius:18px;overflow:hidden;box-shadow:0 7px 20px rgba(21,42,32,.05);transition:.24s;animation:cardIn .38s ease both;animation-delay:var(--delay)}@keyframes cardIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.product-card-modern:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(21,42,32,.1);border-color:#d3dfd8}.product-photo{height:168px;background:#dde7e1;position:relative;overflow:hidden}.product-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.product-card-modern:hover .product-photo img{transform:scale(1.045)}.photo-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(8,21,14,.35))}.product-photo.no-photo{display:grid;place-items:center;background:linear-gradient(145deg,#e4eee8,#cfe2d7)}.product-photo.no-photo>span{font-family:"Segoe UI",system-ui,sans-serif;font-size:3rem;color:#8eb09d}.category-badge{position:absolute;left:10px;top:10px;padding:6px 8px;border-radius:8px;background:rgba(255,255,255,.9);backdrop-filter:blur(7px);font-size:.54rem;font-weight:800;color:var(--green-dark);box-shadow:0 4px 10px rgba(0,0,0,.08)}.category-badge i{margin-right:5px}.category-badge.minuman{color:var(--blue)}.card-menu-btn{position:absolute;right:10px;top:10px;width:29px;height:29px;border:0;border-radius:8px;background:rgba(15,31,23,.7);backdrop-filter:blur(7px);color:#fff;font-size:.65rem}.product-card-body{padding:13px 14px 14px}.product-card-body>div:first-child{min-width:0}.product-card-body h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:.83rem;letter-spacing:-.025em;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-card-body p{font-size:.54rem;color:var(--muted);margin:4px 0 10px}.product-card-body>strong{display:block;color:var(--green);font-size:.83rem;margin-bottom:11px}.product-actions{display:grid;grid-template-columns:1fr 37px;gap:7px}.product-actions button{height:35px;border-radius:9px;border:1px solid var(--line);background:#fff;color:var(--ink-soft);font-size:.64rem;font-weight:700}.product-actions .edit-product:hover{border-color:#a5d2b8;color:var(--green);background:var(--green-soft)}.product-actions .delete-product:hover{border-color:#f0b0b0;color:var(--red);background:var(--red-soft)}.catalogue-empty{grid-column:1/-1;min-height:350px;border:1px dashed #cad7cf;border-radius:20px;background:rgba(255,255,255,.55);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px}.catalogue-empty>span{width:58px;height:58px;border-radius:18px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-size:1.2rem}.catalogue-empty h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:1rem;margin:15px 0 5px}.catalogue-empty p{font-size:.69rem;color:var(--muted);margin:0 0 16px}

/* Modals and product form */
.cf-modal .modal-content{border:0;border-radius:20px;box-shadow:0 30px 80px rgba(11,32,20,.24);overflow:hidden}.cf-modal .modal-header{padding:17px 20px;border-color:var(--line-soft)}.modal-title-group{display:flex;align-items:center;gap:11px}.modal-icon{width:38px;height:38px;border-radius:11px;background:var(--green-soft);color:var(--green);display:grid;place-items:center}.modal-title-group h5{font-family:"Segoe UI",system-ui,sans-serif;font-size:.89rem;margin:0}.modal-title-group p{font-size:.61rem;color:var(--muted);margin:3px 0 0}.cf-modal .btn-close{font-size:.65rem}.cf-modal .modal-body{padding:20px}.cf-modal .modal-footer{padding:14px 20px;border-color:var(--line-soft)}.product-form-layout{display:grid;grid-template-columns:245px 1fr;gap:22px}.image-dropzone{height:245px;border:1.5px dashed #b7c8be;border-radius:16px;background:#f8faf9;display:grid;place-items:center;position:relative;overflow:hidden;transition:.2s;cursor:pointer}.image-dropzone:hover,.image-dropzone.dragging{border-color:var(--green);background:var(--green-soft)}.drop-placeholder{display:flex;align-items:center;flex-direction:column;text-align:center}.drop-placeholder>span{width:45px;height:45px;border-radius:14px;background:#fff;color:var(--green);display:grid;place-items:center;box-shadow:0 6px 16px rgba(31,118,84,.09);font-size:.9rem}.drop-placeholder strong{font-size:.72rem;margin-top:12px}.drop-placeholder small{font-size:.57rem;color:var(--muted);margin-top:4px}.drop-placeholder b{font-size:.62rem;color:var(--green);margin-top:12px}.image-dropzone img{width:100%;height:100%;object-fit:cover}.remove-preview{position:absolute;right:9px;top:9px;width:28px;height:28px;border:0;border-radius:8px;background:rgba(15,29,22,.75);color:#fff}.product-fields{padding-top:23px}.product-fields>.field-wrap{margin-bottom:14px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}.price-field>span{font-size:.67rem;color:var(--green);font-weight:800}.form-tip{display:flex;align-items:flex-start;gap:9px;background:var(--orange-soft);color:#8d5c2e;border-radius:11px;padding:10px;margin-top:17px;font-size:.59rem;line-height:1.45}.form-tip i{margin-top:2px}.btn-primary-cf b,.pay-button b{display:none}.btn-primary-cf.loading span,.pay-button.loading span{display:none}.btn-primary-cf.loading b,.pay-button.loading b{display:inline}.confirm-modal .modal-content{padding:25px 20px;text-align:center}.confirm-visual{width:55px;height:55px;border-radius:17px;display:grid;place-items:center;margin:0 auto 13px;font-size:1.1rem}.confirm-visual.danger{background:var(--red-soft);color:var(--red)}.confirm-modal h5{font-family:"Segoe UI",system-ui,sans-serif;font-size:.95rem}.confirm-modal p{font-size:.65rem;color:var(--muted);line-height:1.55;margin:7px 0 18px}.confirm-modal p strong{color:var(--ink)}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}

/* Transactions */
.printer-connect .printer-dot{width:7px;height:7px;border-radius:50%;background:#aeb9b3}.printer-connect.connected .printer-dot{background:var(--mint);box-shadow:0 0 0 4px rgba(121,220,162,.13)}.printer-connect.connected{border-color:#aed7bd;color:var(--green)}
.transaction-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:17px;overflow:hidden;margin-bottom:15px;box-shadow:var(--shadow-sm)}.transaction-summary>div{min-height:78px;background:#fff;display:flex;align-items:center;gap:11px;padding:12px 16px}.summary-icon{width:37px;height:37px;border-radius:11px;display:grid;place-items:center;font-size:.75rem}.summary-icon.all{background:var(--blue-soft);color:var(--blue)}.summary-icon.revenue{background:var(--green-soft);color:var(--green)}.summary-icon.cash{background:var(--orange-soft);color:var(--orange)}.summary-icon.qris{background:var(--purple-soft);color:var(--purple)}.transaction-summary p{margin:0;display:flex;flex-direction:column}.transaction-summary small{font-size:.56rem;color:var(--muted)}.transaction-summary strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.89rem;margin-top:3px}.transaction-panel{overflow:hidden}.transaction-toolbar{padding:16px 17px;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-between;gap:15px}.transaction-toolbar h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:.95rem;margin:4px 0 0}.transaction-filters{display:flex;align-items:center;gap:7px}.transaction-identity{display:flex;flex-direction:column}.transaction-identity>span{font-family:"Segoe UI",system-ui,sans-serif;font-size:.67rem;color:var(--ink)}.transaction-identity small{font-size:.55rem;color:var(--muted);margin-top:3px}.row-actions{display:flex;justify-content:flex-end;gap:5px}.row-actions button{width:31px;height:31px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink-soft);font-size:.62rem}.row-actions button:hover{border-color:#9fcdb3;color:var(--green);background:var(--green-soft)}.row-actions button.danger:hover{border-color:#efb2b2;color:var(--red);background:var(--red-soft)}.table-footer{min-height:46px;border-top:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-between;padding:0 17px;color:var(--muted);font-size:.59rem}.table-footer>span{color:var(--ink-soft);font-weight:700}.table-footer i{margin-right:4px}.print-status{font-size:.6rem;color:var(--muted);text-align:right;margin:8px 2px 0;min-height:10px}

/* POS fullscreen */
.pos-modal .modal-dialog{margin:0}.pos-modal .modal-content{border:0;border-radius:0;background:var(--canvas);height:100vh}.pos-header{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 22px}.pos-header>div{display:flex;align-items:center;gap:11px}.pos-logo{width:39px;height:39px;border-radius:12px;background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;display:grid;place-items:center}.pos-header h5{font-family:"Segoe UI",system-ui,sans-serif;font-size:.92rem;margin:0}.pos-header p{font-size:.59rem;color:var(--muted);margin:3px 0 0}.pos-close{width:37px;height:37px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink-soft)}.pos-close:hover{color:var(--red);background:var(--red-soft);border-color:#f1bcbc}.pos-body{height:calc(100vh - 72px);display:grid;grid-template-columns:minmax(0,1fr) 390px}.pos-products{padding:17px 19px;min-width:0;overflow:hidden;display:flex;flex-direction:column}.pos-product-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.pos-search{min-width:290px;max-width:430px;flex:1}.pos-tabs{flex:0 0 auto}.pos-product-grid{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:11px;overflow-y:auto;padding:1px 4px 18px 1px}.pos-product-card{background:#fff;border:1px solid var(--line-soft);border-radius:15px;overflow:hidden;position:relative;min-height:210px;box-shadow:0 5px 15px rgba(21,42,32,.045);transition:.18s;cursor:pointer}.pos-product-card:hover{transform:translateY(-2px);border-color:#b9d2c3;box-shadow:0 10px 23px rgba(21,42,32,.08)}.pos-product-card.selected{border-color:#7fc19c;box-shadow:0 0 0 2px rgba(31,118,84,.08)}.pos-product-card>img,.pos-no-image{width:100%;height:125px;object-fit:cover}.pos-no-image{background:linear-gradient(145deg,#e5efe9,#ccdfd4);display:grid;place-items:center;font-family:"Segoe UI",system-ui,sans-serif;font-size:2rem;color:#7aa08b}.pos-product-info{padding:10px 11px}.pos-product-info>span{font-size:.49rem;color:var(--green);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.pos-product-info h4{font-family:"Segoe UI",system-ui,sans-serif;font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:4px 0 5px}.pos-product-info strong{font-size:.7rem;color:var(--green)}.add-product{position:absolute;width:29px;height:29px;right:9px;bottom:9px;border:0;border-radius:9px;background:var(--green-soft);color:var(--green);font-size:.6rem}.add-product:hover{background:var(--green);color:#fff}.product-stepper{position:absolute;right:8px;bottom:8px;height:31px;border-radius:9px;background:#fff;border:1px solid #afd0bd;display:flex;align-items:center;overflow:hidden;box-shadow:0 5px 13px rgba(21,42,32,.1)}.product-stepper button{width:28px;height:100%;border:0;background:transparent;color:var(--green);font-size:.55rem}.product-stepper button:hover{background:var(--green-soft)}.product-stepper b{min-width:21px;text-align:center;font-size:.65rem}.pos-products.view-mode .pos-product-card{pointer-events:none;opacity:.75}.pos-empty{grid-column:1/-1;min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);gap:8px;font-size:.68rem}.pos-empty i{font-size:1.4rem;color:#b5c0ba}
.checkout-panel{background:#fff;border-left:1px solid var(--line);padding:17px 18px;display:flex;flex-direction:column;min-height:0}.checkout-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.checkout-head h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:.88rem;margin:4px 0 0}.cart-count{font-size:.57rem;font-weight:800;color:var(--green);padding:5px 8px;background:var(--green-soft);border-radius:8px}.checkout-customer{display:grid;grid-template-columns:1fr 135px;gap:8px;padding-bottom:13px;border-bottom:1px solid var(--line-soft)}.checkout-customer .field-wrap{height:41px}.cart-list{flex:1;min-height:120px;overflow-y:auto;padding:7px 2px}.cart-empty{height:100%;min-height:150px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.cart-empty>span{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:var(--canvas);color:#9ca8a1}.cart-empty strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.72rem;margin:10px 0 3px}.cart-empty p{max-width:190px;font-size:.56rem;color:var(--muted);line-height:1.4;margin:0}.cart-row{display:grid;grid-template-columns:42px 1fr auto auto;align-items:center;gap:9px;padding:8px 3px;border-bottom:1px solid var(--line-soft)}.cart-thumb{width:42px;height:42px;border-radius:10px;overflow:hidden;background:var(--green-soft);display:grid;place-items:center;color:var(--green);font-weight:800}.cart-thumb img{width:100%;height:100%;object-fit:cover}.cart-item-copy{display:flex;flex-direction:column;min-width:0}.cart-item-copy strong{font-size:.66rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-item-copy small{font-size:.55rem;color:var(--muted);margin-top:3px}.cart-row>b{font-size:.63rem}.cart-row>button{width:24px;height:24px;border:0;background:transparent;color:#a6b1ab;font-size:.55rem}.cart-row>button:hover{color:var(--red)}.checkout-bottom{border-top:1px solid var(--line);padding-top:12px}.checkout-total,.change-row{display:flex;justify-content:space-between;align-items:center}.checkout-total span,.change-row span{font-size:.65rem;color:var(--ink-soft)}.checkout-total strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.16rem;color:var(--green)}.payment-input-wrap{margin-top:10px}.paid-input{height:45px;border:1px solid var(--line);border-radius:11px;display:flex;align-items:center;padding:0 11px;background:var(--canvas)}.paid-input:focus-within{border-color:#8dc3a5;box-shadow:0 0 0 3px rgba(31,118,84,.07)}.paid-input span{font-size:.68rem;color:var(--green);font-weight:800}.paid-input input{flex:1;border:0;outline:0;background:transparent;text-align:right;font-family:"Segoe UI",system-ui,sans-serif;font-size:.9rem;color:var(--ink)}.quick-cash{display:flex;gap:5px;margin-top:6px}.quick-cash button{height:26px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--muted);font-size:.53rem;flex:1}.quick-cash button:hover{color:var(--green);border-color:#a4cfb6;background:var(--green-soft)}.change-row{padding:9px 0}.change-row strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.78rem}.change-row strong.positive{color:var(--green)}.auto-print{display:flex;align-items:center;justify-content:space-between;background:var(--canvas);border-radius:11px;padding:8px 10px;margin-bottom:9px;cursor:pointer}.auto-print>span{display:flex;align-items:center;gap:8px}.auto-print>span>i{color:var(--green);font-size:.72rem}.auto-print>span>span{display:flex;flex-direction:column}.auto-print strong{font-size:.59rem}.auto-print small{font-size:.5rem;color:var(--muted);margin-top:2px}.auto-print input{display:none}.auto-print>i{width:31px;height:18px;border-radius:20px;background:#cbd4cf;position:relative;transition:.2s}.auto-print>i:after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;left:2px;top:2px;background:#fff;transition:.2s}.auto-print input:checked+i{background:var(--green)}.auto-print input:checked+i:after{transform:translateX(13px)}.checkout-actions{display:grid;grid-template-columns:43px 1fr;gap:7px}.clear-cart,.pay-button{height:44px;border-radius:11px}.clear-cart{border:1px solid var(--line);background:#fff;color:var(--red)}.clear-cart:hover{background:var(--red-soft);border-color:#f1b4b4}.pay-button{border:0;background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;font-size:.69rem;font-weight:800;box-shadow:0 8px 18px rgba(31,118,84,.18)}.pay-button:disabled{opacity:.65;cursor:not-allowed}

/* Login */
.login-page{min-height:100vh;background:#07120d;color:#fff;overflow:hidden}.login-ambient{position:fixed;border-radius:50%;filter:blur(4px);pointer-events:none}.login-ambient.one{width:560px;height:560px;left:-260px;top:-270px;background:radial-gradient(circle,rgba(64,150,103,.24),transparent 68%)}.login-ambient.two{width:420px;height:420px;right:-250px;bottom:-200px;background:radial-gradient(circle,rgba(120,100,215,.16),transparent 70%)}.login-shell{width:100%;min-height:100vh;display:grid;grid-template-columns:minmax(0,1.22fr) minmax(420px,.78fr);position:relative}.login-showcase{padding:34px 48px 27px;display:flex;flex-direction:column;position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(11,29,20,.94),rgba(8,20,14,.95));border-right:1px solid rgba(255,255,255,.055)}.login-showcase:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(145deg,#000 20%,transparent 75%)}.showcase-top,.showcase-copy,.dashboard-preview,.showcase-footer{position:relative;z-index:1}.showcase-top{display:flex;justify-content:space-between;align-items:center}.login-brand{margin:0;padding:0}.secure-chip{display:flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.04);border-radius:20px;padding:7px 10px;color:#7f998c;font-size:.57rem;letter-spacing:.05em;text-transform:uppercase}.secure-chip i{color:var(--mint)}.showcase-copy{margin:auto 0 23px;max-width:650px}.showcase-copy .hero-kicker{color:var(--mint)}.showcase-copy h1{font-family:"Segoe UI",system-ui,sans-serif;font-size:clamp(2.4rem,4.3vw,4.65rem);line-height:.98;letter-spacing:-.073em;margin:18px 0;color:#f4fbf7}.showcase-copy h1 em{font-style:normal;color:transparent;background:linear-gradient(90deg,var(--lime),var(--mint));background-clip:text;-webkit-background-clip:text}.showcase-copy>p{font-size:.82rem;color:#789085;line-height:1.65;max-width:510px}.showcase-features{display:flex;flex-wrap:wrap;gap:8px;margin-top:19px}.showcase-features span{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:9px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);color:#89a095;font-size:.58rem}.showcase-features i{color:var(--mint)}.dashboard-preview{align-self:flex-end;width:min(570px,85%);border:1px solid rgba(255,255,255,.09);background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));backdrop-filter:blur(10px);border-radius:19px;padding:14px 16px 11px;box-shadow:0 25px 60px rgba(0,0,0,.24);transform:rotate(-1.1deg);margin-bottom:23px}.preview-head{display:flex;align-items:center;justify-content:space-between;color:#dcebe3;font-size:.64rem}.preview-head i{color:var(--mint);margin-right:5px}.preview-head small{font-size:.45rem;color:var(--mint);border:1px solid rgba(121,220,162,.2);border-radius:5px;padding:3px 5px}.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:11px 0}.preview-grid>div{background:rgba(255,255,255,.035);border-radius:10px;padding:9px;display:grid;grid-template-columns:1fr auto}.preview-grid small{font-size:.5rem;color:#71887c}.preview-grid strong{grid-column:1;font-family:"Segoe UI",system-ui,sans-serif;font-size:.83rem;margin-top:4px}.preview-grid span{grid-row:1/3;grid-column:2;align-self:center;font-size:.48rem;color:var(--mint)}.preview-chart{height:58px;display:flex;align-items:flex-end;gap:7px;padding:3px 4px}.preview-chart i{flex:1;background:linear-gradient(180deg,var(--mint),rgba(121,220,162,.18));border-radius:4px 4px 1px 1px}.showcase-footer{display:flex;justify-content:space-between;color:#50695c;font-size:.53rem;letter-spacing:.06em}.login-form-side{display:flex;align-items:center;justify-content:center;padding:35px 50px;background:#f6f9f7;color:var(--ink);position:relative}.login-card-new{width:min(390px,100%)}.login-heading .welcome-icon{display:inline-grid;place-items:center;width:41px;height:41px;border-radius:13px;background:var(--green-soft);font-size:1.05rem;margin-bottom:15px}.login-heading h2{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.48rem;letter-spacing:-.05em;margin:0 0 6px}.login-heading p{color:var(--muted);font-size:.72rem;margin:0 0 24px}.login-card-new .field-label{margin-top:14px}.login-card-new .field-wrap{height:49px;border-color:var(--line);background:#fff;color:var(--ink);box-shadow:0 4px 13px rgba(21,42,32,.025)}.login-card-new .field-wrap i{width:16px}.password-toggle{border:0;background:transparent;color:#8c9992;padding:4px}.field-error{display:none;color:var(--red);font-size:.56rem;margin-top:5px}.field-error.show{display:block}.remember-row{display:flex;align-items:center;gap:8px;color:var(--ink-soft);font-size:.61rem;margin:16px 0;cursor:pointer}.remember-row input{display:none}.remember-row>span{width:17px;height:17px;border:1px solid #bdc9c2;border-radius:5px;background:#fff;position:relative}.remember-row input:checked+span{background:var(--green);border-color:var(--green)}.remember-row input:checked+span:after{content:"✓";position:absolute;color:#fff;font-size:.58rem;left:3px;top:0}.login-submit{width:100%;height:49px;border:0;border-radius:12px;color:#fff;background:linear-gradient(135deg,var(--green),var(--green-dark));font-size:.72rem;font-weight:800;box-shadow:0 11px 24px rgba(31,118,84,.2);transition:.2s}.login-submit:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(31,118,84,.25)}.login-submit i{margin-left:6px}.button-loading{display:none}.login-submit.loading .button-label{display:none}.login-submit.loading .button-loading{display:inline}.login-alert{display:flex;align-items:center;gap:9px;border-radius:11px;padding:10px 11px;font-size:.62rem;margin:16px 0 4px}.login-alert.error{background:var(--red-soft);color:#a03c3c}.login-alert.success{background:var(--green-soft);color:var(--green-dark)}.login-help{display:flex;align-items:center;justify-content:center;gap:7px;color:#929f98;font-size:.57rem;margin-top:19px;padding-top:17px;border-top:1px solid var(--line-soft)}.mobile-login-brand{display:none}

/* Responsive */
@media(max-width:1320px){.product-grid-modern{grid-template-columns:repeat(3,minmax(0,1fr))}.pos-product-grid{grid-template-columns:repeat(3,minmax(130px,1fr))}.dashboard-preview{width:92%}.showcase-copy h1{font-size:3.4rem}}
@media(max-width:1140px){:root{--sidebar-width:238px}.sidebar{padding-left:14px;padding-right:14px}.side-link.active:before{left:-14px}.page-wrap{padding-left:25px;padding-right:25px}.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.payment-donut-wrap{justify-content:center}.product-grid-modern{grid-template-columns:repeat(3,1fr)}.transaction-summary{grid-template-columns:repeat(2,1fr)}.transaction-toolbar{align-items:flex-start;flex-direction:column}.transaction-filters{width:100%}.transaction-filters .search-field{flex:1}.pos-body{grid-template-columns:minmax(0,1fr) 355px}.login-showcase{padding-left:35px;padding-right:35px}.login-form-side{padding:30px}}
@media(max-width:900px){:root{--sidebar-width:268px}.sidebar{transform:translateX(-105%);transition:.25s ease;box-shadow:20px 0 60px rgba(0,0,0,.3)}.sidebar.open{transform:none}.mobile-overlay.show{display:block}.app-main{margin-left:0}.menu-toggle{display:grid}.topbar{padding:0 20px}.page-wrap{padding:22px 20px 40px}.product-grid-modern{grid-template-columns:repeat(2,1fr)}.pos-body{grid-template-columns:minmax(0,1fr) 335px}.pos-product-grid{grid-template-columns:repeat(2,minmax(130px,1fr))}.login-shell{grid-template-columns:1fr}.login-showcase{display:none}.login-form-side{min-height:100vh}.mobile-login-brand{display:flex;align-items:center;gap:9px;position:absolute;top:27px;left:30px;font-family:"Segoe UI",system-ui,sans-serif}.mobile-login-brand .brand-mark{width:35px;height:35px;border-radius:11px}.mobile-login-brand strong span{color:var(--green)}}
@media(max-width:720px){.topbar{height:75px}.topbar .eyebrow,.notification-btn,.top-avatar{display:none}.topbar h1{font-size:1rem}.live-clock{height:38px}.page-wrap{padding:17px 13px 35px}.page-intro{align-items:flex-start;flex-direction:column}.page-intro .btn-primary-cf{width:100%}.intro-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.overview-banner{padding:23px;min-height:210px;align-items:flex-start;flex-direction:column}.overview-copy h2{font-size:1.3rem}.overview-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.banner-orb{right:-40px;top:-40px}.metric-grid{grid-template-columns:1fr 1fr;gap:9px}.metric-card{padding:14px;min-height:145px}.metric-value{font-size:1.05rem}.dashboard-grid{gap:12px}.revenue-panel,.payment-panel{padding:16px}.payment-donut-wrap{gap:15px}.payment-donut{width:100px;height:100px;flex-basis:100px}.recent-panel{display:none}.catalogue-toolbar{align-items:stretch;flex-direction:column}.catalogue-toolbar .search-field{min-width:0;width:100%}.catalogue-toolbar .filter-tabs{margin-left:0;overflow:auto}.cache-indicator{border-left:0;border-top:1px solid var(--line);padding:9px 2px 0}.product-grid-modern{grid-template-columns:1fr 1fr;gap:9px}.product-photo{height:135px}.product-card-body{padding:10px}.product-actions{grid-template-columns:1fr 34px}.catalogue-meta span{display:none}.product-form-layout{grid-template-columns:1fr}.image-dropzone{height:200px}.product-fields{padding-top:0}.two-fields{grid-template-columns:1fr}.transaction-summary{grid-template-columns:1fr 1fr}.transaction-summary>div{padding:10px;min-height:69px}.transaction-summary strong{font-size:.72rem}.transaction-filters{display:grid;grid-template-columns:1fr 1fr}.transaction-filters .search-field{grid-column:1/-1;min-width:0}.date-field input{width:100%}.table-footer small{display:none}.transaction-table th:nth-child(5),.transaction-table td:nth-child(5){display:none}.pos-header{height:65px;padding:0 13px}.pos-body{height:calc(100vh - 65px);display:block;overflow-y:auto}.pos-products{height:auto;overflow:visible;padding:12px}.pos-product-toolbar{align-items:stretch;flex-direction:column}.pos-search{min-width:0;max-width:none}.pos-tabs{overflow:auto}.pos-product-grid{grid-template-columns:repeat(2,1fr);max-height:48vh;overflow-y:auto}.checkout-panel{border-left:0;border-top:1px solid var(--line);min-height:52vh}.checkout-customer{grid-template-columns:1fr 125px}.toast-stack{left:12px;right:12px;bottom:12px}.cf-toast{min-width:0;width:100%}.login-form-side{padding:90px 22px 30px}.login-heading h2{font-size:1.3rem}}
@media(max-width:440px){.metric-grid{grid-template-columns:1fr}.metric-card{min-height:125px}.overview-actions,.intro-actions{grid-template-columns:1fr}.product-grid-modern{grid-template-columns:1fr}.product-photo{height:185px}.transaction-summary{grid-template-columns:1fr 1fr}.summary-icon{display:none}.transaction-summary>div{padding:9px}.pos-product-grid{grid-template-columns:1fr 1fr;gap:7px}.pos-product-card{min-height:185px}.pos-product-card>img,.pos-no-image{height:105px}.checkout-customer{grid-template-columns:1fr}.modern-bar-chart{gap:5px}.bar-track{width:22px}.payment-donut-wrap{align-items:flex-start;flex-direction:column}.payment-donut{align-self:center}.login-card-new{width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* SaaS plans and premium workspace */
.workspace-plan{flex:0 0 auto;font-size:.46rem!important;letter-spacing:.08em!important;color:#9fb0a7!important;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:4px 5px;background:rgba(255,255,255,.04)}
.workspace-plan.premium{color:#183623!important;background:linear-gradient(135deg,var(--lime),var(--mint));border-color:transparent;font-weight:900}
.premium-caption{margin-top:18px}.side-link.locked{opacity:.67}.side-link.locked:hover{opacity:1}.nav-lock{margin-left:auto;font-size:.55rem;color:#667c70}.subscription-link{margin-top:7px;border:1px solid rgba(121,220,162,.08)}.nav-pill.pro{background:linear-gradient(135deg,var(--lime),var(--mint))}.premium-text{color:var(--lime)!important}
.premium-button{background:linear-gradient(135deg,#7157d8,#5035b4);box-shadow:0 9px 22px rgba(92,65,190,.23)}.premium-button:hover{box-shadow:0 12px 27px rgba(92,65,190,.3)}.modal-icon.premium{color:#644bca;background:var(--purple-soft)}
.register-callout{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:17px;font-size:.62rem;color:var(--muted)}.register-callout a{color:var(--green);font-weight:800}.register-callout a:hover{color:var(--green-dark)}

/* Register */
.register-page{overflow:auto}.register-shell{grid-template-columns:minmax(430px,.83fr) minmax(560px,1.17fr)}.register-showcase{padding-bottom:30px}.register-copy{margin:auto 0}.register-copy h1{font-size:clamp(2.3rem,4vw,4rem)}.register-copy>p{max-width:570px}.plan-mini-card{display:flex;align-items:center;gap:23px;border:1px solid rgba(255,255,255,.08);border-radius:17px;padding:15px 17px;margin-top:13px;max-width:580px;background:rgba(255,255,255,.035)}.plan-mini-card>div{display:flex;flex-direction:column;min-width:110px}.plan-mini-card>div span{font-size:.48rem;letter-spacing:.13em;font-weight:900;color:var(--mint)}.plan-mini-card>div strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.2rem;margin:4px 0 1px}.plan-mini-card>div small{font-size:.49rem;color:#668075}.plan-mini-card ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:7px 13px;color:#8ca095;font-size:.55rem}.plan-mini-card li i{color:var(--mint);margin-right:5px}.plan-mini-card.premium{border-color:rgba(184,235,114,.17);background:linear-gradient(105deg,rgba(184,235,114,.07),rgba(121,220,162,.025))}.plan-mini-card.premium>div span{color:var(--lime)}.register-form-side{align-items:flex-start;padding:38px 55px;overflow-y:auto}.register-card{width:min(680px,100%);margin:auto}.register-card .login-heading{display:grid;grid-template-columns:auto 1fr;column-gap:12px}.register-card .login-heading .welcome-icon{grid-row:1/3}.register-card .login-heading p{margin-bottom:18px}.register-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 13px}.field-span-2{grid-column:1/-1}.input-hint{display:block;color:var(--muted);font-size:.54rem;margin-top:5px}.terms-row{display:flex;align-items:flex-start;gap:9px;color:var(--ink-soft);margin:17px 0;cursor:pointer}.terms-row input{display:none}.terms-row>span{flex:0 0 18px;width:18px;height:18px;border:1px solid #bdc9c2;border-radius:5px;background:#fff;position:relative}.terms-row input:checked+span{background:var(--green);border-color:var(--green)}.terms-row input:checked+span:after{content:"✓";position:absolute;color:#fff;font-size:.6rem;left:3px;top:0}.terms-row small{font-size:.56rem;line-height:1.5}

/* Subscription */
.subscription-page{max-width:1180px;margin:auto}.subscription-hero{min-height:230px;padding:35px 40px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative;background:linear-gradient(120deg,#0c2117,#173d2c 58%,#244930);color:#fff;margin-bottom:17px}.subscription-hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 85% 35%,rgba(184,235,114,.18),transparent 25%),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:auto,30px 30px,30px 30px}.subscription-hero>div{position:relative;z-index:1}.subscription-hero .section-kicker{color:var(--mint)}.subscription-hero h2{font-family:"Segoe UI",system-ui,sans-serif;font-size:2.2rem;letter-spacing:-.06em;line-height:1.05;margin:13px 0 8px}.subscription-hero h2 em{font-style:normal;color:var(--lime)}.subscription-hero p{color:#91aa9e;font-size:.75rem;max-width:560px;line-height:1.55}.billing-orbit{width:150px;height:150px;flex:0 0 150px;border:1px solid rgba(255,255,255,.13);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:rgba(255,255,255,.045);box-shadow:inset 0 0 0 18px rgba(255,255,255,.018),0 20px 45px rgba(0,0,0,.12)}.billing-orbit>span{font-size:.6rem;color:#89a89a}.billing-orbit strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:2.1rem;color:var(--lime);line-height:1}.billing-orbit small{font-size:.55rem;color:#8aa397;margin-top:5px}.billing-orbit i{position:absolute;color:var(--lime);right:7px;top:15px}
.plan-status-banner{display:flex;align-items:center;gap:13px;border-radius:16px;padding:13px 16px;margin-bottom:17px}.plan-status-banner>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center}.plan-status-banner>div{flex:1}.plan-status-banner strong{font-size:.72rem}.plan-status-banner p{font-size:.61rem;margin:3px 0 0}.plan-status-banner>a,.plan-status-banner>b{font-size:.6rem;font-weight:800}.plan-status-banner.active{background:var(--green-soft);color:var(--green-dark);border:1px solid #c8ead6}.plan-status-banner.active>span{background:#fff;color:var(--green)}.plan-status-banner.pending{background:var(--orange-soft);color:#8a5629;border:1px solid #f3d4b7}.plan-status-banner.pending>span{background:#fff;color:var(--orange)}
.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.pricing-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:27px;box-shadow:var(--shadow-sm);position:relative}.pricing-card.current{box-shadow:inset 0 0 0 1px #b9d5c5,var(--shadow-sm)}.pricing-card.premium-plan{border-color:#bfb3ee;background:linear-gradient(160deg,#fff 55%,#f5f2ff)}.popular-ribbon{position:absolute;right:18px;top:-10px;padding:6px 10px;border-radius:8px;color:#fff;background:linear-gradient(135deg,#735ad5,#5135b4);font-size:.5rem;font-weight:900;letter-spacing:.08em;box-shadow:0 7px 16px rgba(80,53,180,.23)}.pricing-top{display:flex;align-items:center;justify-content:space-between}.plan-label{font-size:.55rem;letter-spacing:.16em;font-weight:900;color:var(--green)}.premium-plan .plan-label{color:#644bca}.current-badge{font-size:.5rem;font-weight:800;border-radius:7px;padding:5px 7px;background:var(--green-soft);color:var(--green)}.pricing-card h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.25rem;letter-spacing:-.04em;margin:13px 0 5px}.pricing-card>p{font-size:.66rem;color:var(--muted);line-height:1.5;margin:0}.pricing-card .price{display:flex;align-items:flex-end;gap:8px;margin:22px 0}.pricing-card .price strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.8rem;letter-spacing:-.05em}.premium-plan .price strong{color:#5a40c0}.pricing-card .price span{font-size:.55rem;color:var(--muted);padding-bottom:4px}.pricing-card ul{list-style:none;padding:18px 0;margin:0;border-top:1px solid var(--line-soft);display:flex;flex-direction:column;gap:12px}.pricing-card li{display:flex;align-items:flex-start;gap:9px;font-size:.65rem;color:var(--ink-soft)}.pricing-card li>i{color:var(--green);width:15px;margin-top:2px}.premium-plan li>i{color:#6b53cc;font-size:.8rem}.premium-plan li span{display:flex;flex-direction:column}.premium-plan li strong{font-size:.66rem}.premium-plan li small{font-size:.54rem;color:var(--muted);margin-top:3px;line-height:1.4}.plan-button{width:100%;height:45px;border:0;border-radius:12px;color:#fff;background:linear-gradient(135deg,#7157d8,#5035b4);font-size:.68rem;font-weight:800}.plan-button.muted{background:var(--canvas-2);color:var(--muted)}.plan-button.waiting{background:var(--orange-soft);color:#8c5b2d}.plan-button.active{background:linear-gradient(135deg,var(--green),var(--green-dark))}.billing-note{display:flex;align-items:center;gap:13px;padding:17px 20px;margin-top:17px}.billing-note>span{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;color:#644bca;background:var(--purple-soft)}.billing-note strong{font-size:.7rem}.billing-note p{font-size:.61rem;color:var(--muted);margin:3px 0 5px}.billing-note small{font-size:.55rem;color:#644bca}.upgrade-summary,.activation-total{display:flex;align-items:center;justify-content:space-between;border-radius:12px;background:var(--purple-soft);padding:12px 13px;margin-bottom:16px;color:#5841b4}.upgrade-summary span,.activation-total span{font-size:.66rem}.upgrade-summary strong,.activation-total strong{font-family:"Segoe UI",system-ui,sans-serif}.upgrade-summary small{font-family:"CF Sans";font-size:.52rem}.premium-textarea{border:1px solid var(--line);font-size:.7rem;min-height:90px;resize:vertical}.premium-textarea:focus{border-color:#9f91dc;box-shadow:0 0 0 3px rgba(100,75,202,.08)}

/* Platform */
.platform-metrics{grid-template-columns:repeat(3,1fr)}.platform-metrics .metric-card{min-height:105px;flex-direction:row;align-items:center;gap:13px}.platform-metrics .metric-icon{flex:0 0 42px;width:42px;height:42px}.metric-icon.green{background:var(--green-soft);color:var(--green)}.metric-icon.amber{background:var(--orange-soft);color:var(--orange)}.metric-icon.blue{background:var(--blue-soft);color:var(--blue)}.metric-icon.red{background:var(--red-soft);color:var(--red)}.platform-metrics .metric-card>div{display:flex;flex-direction:column}.platform-metrics small{font-size:.57rem;color:var(--muted)}.platform-metrics strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.15rem;margin:3px 0}.platform-metrics span{font-size:.52rem;color:var(--muted)}.data-panel{overflow:hidden}.panel-heading{min-height:72px;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line-soft)}.panel-heading h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:.92rem;margin:4px 0 0}.company-cell{display:flex;align-items:center;gap:10px}.company-cell>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--purple-soft);color:#644bca;font-weight:900}.company-cell>div{display:flex;flex-direction:column}.company-cell small{font-size:.55rem;color:var(--muted);margin-top:2px}.subscription-status{display:inline-flex;padding:5px 8px;border-radius:20px;font-size:.53rem;font-weight:900;text-transform:uppercase}.subscription-status.pending{background:var(--orange-soft);color:#9b5c26}.subscription-status.active{background:var(--green-soft);color:var(--green)}.subscription-status.expired{background:var(--canvas-2);color:var(--muted)}.subscription-status.cancelled{background:var(--red-soft);color:var(--red)}.row-actions button.approve{color:var(--green)}.row-actions button.approve:hover{background:var(--green-soft)}

/* Accounting */
.accounting-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:15px}.finance-summary{min-height:115px;border:1px solid var(--line);border-radius:17px;background:#fff;padding:16px;display:flex;gap:12px;align-items:flex-start;box-shadow:var(--shadow-sm)}.finance-summary>span{width:38px;height:38px;border-radius:11px;display:grid;place-items:center}.finance-summary.cash>span{color:var(--green);background:var(--green-soft)}.finance-summary.bank>span{color:var(--blue);background:var(--blue-soft)}.finance-summary.revenue>span{color:var(--orange);background:var(--orange-soft)}.finance-summary.profit>span{color:#644bca;background:var(--purple-soft)}.finance-summary>div{display:flex;flex-direction:column}.finance-summary small{font-size:.56rem;color:var(--muted)}.finance-summary strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1rem;margin:7px 0 3px}.finance-summary p{font-size:.5rem;color:var(--muted);margin:0}.accounting-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:15px}.chart-accounts-panel,.journal-panel{overflow:hidden}.live-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 7px;border-radius:8px;background:var(--green-soft);color:var(--green);font-size:.5rem;font-weight:900}.live-badge i{width:6px;height:6px;border-radius:50%;background:var(--green)}.account-list{max-height:570px;overflow-y:auto}.account-row{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;padding:12px 15px;border-bottom:1px solid var(--line-soft)}.account-code{font-family:"Segoe UI",system-ui,sans-serif;font-size:.6rem;padding:5px 6px;border-radius:7px;background:var(--canvas);color:var(--green);text-align:center}.account-row>div{display:flex;flex-direction:column}.account-row strong{font-size:.65rem}.account-row small{font-size:.52rem;color:var(--muted);margin-top:2px}.account-row>b{font-size:.63rem}.account-row>b.negative{color:var(--red)}.journal-table td{padding-top:12px;padding-bottom:12px}.account-chip{display:inline-flex;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:5px 7px;border-radius:7px;font-size:.52rem}.account-chip.debit{background:var(--green-soft);color:var(--green)}.account-chip.credit{background:var(--orange-soft);color:#9a602c}.journal-account-grid{display:grid;grid-template-columns:1fr 34px 1fr;gap:10px;align-items:end;margin-top:17px}.journal-side{border-radius:13px;padding:12px}.journal-side.debit{background:var(--green-soft)}.journal-side.credit{background:var(--orange-soft)}.journal-side>span{display:inline-block;font-size:.5rem;font-weight:900;letter-spacing:.12em;margin-bottom:9px}.journal-side.debit>span{color:var(--green)}.journal-side.credit>span{color:#9b5e28}.journal-side .field-label{margin-bottom:6px}.journal-side select{font-size:.65rem;border-color:rgba(0,0,0,.08)}.journal-balance-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--canvas);color:var(--muted);margin-bottom:14px}

/* Inventory */
.realtime-status,.live-preview-chip{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:20px;background:#fff;padding:8px 11px;color:var(--orange);font-size:.51rem;font-weight:900;letter-spacing:.06em}.realtime-status i,.live-preview-chip i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(231,138,62,.1)}.realtime-status.online,.live-preview-chip{color:var(--green)}.inventory-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px}.inventory-metrics>article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;display:flex;align-items:center;gap:11px;box-shadow:var(--shadow-sm)}.inventory-metrics .metric-icon{flex:0 0 38px}.inventory-metrics div{display:flex;flex-direction:column}.inventory-metrics small{font-size:.53rem;color:var(--muted)}.inventory-metrics strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1rem;margin-top:3px}.inventory-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:15px}.inventory-products-panel,.movements-panel{overflow:hidden}.stock-product-list{max-height:610px;overflow-y:auto}.stock-product-row{display:grid;grid-template-columns:46px minmax(0,1fr) 85px 34px;align-items:center;gap:11px;padding:11px 15px;border-bottom:1px solid var(--line-soft);position:relative}.stock-product-row:before{content:"";position:absolute;left:0;width:3px;height:30px;border-radius:0 4px 4px 0;background:var(--green)}.stock-product-row.low:before{background:var(--orange)}.stock-product-row.empty:before{background:var(--red)}.stock-product-row.off:before{background:#c1cbc5}.stock-product-image{width:46px;height:46px;border-radius:12px;overflow:hidden;background:var(--green-soft);display:grid;place-items:center;color:var(--green);font-weight:900}.stock-product-image img{width:100%;height:100%;object-fit:cover}.stock-product-copy{display:flex;flex-direction:column;min-width:0}.stock-product-copy strong{font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stock-product-copy small{font-size:.53rem;color:var(--muted);margin-top:3px}.stock-level{display:flex;align-items:flex-end;flex-direction:column}.stock-level strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.9rem}.stock-level span{font-size:.46rem;font-weight:900;color:var(--green);margin-top:3px}.stock-product-row.low .stock-level span{color:var(--orange)}.stock-product-row.empty .stock-level span{color:var(--red)}.stock-product-row.off .stock-level span{color:var(--muted)}.stock-adjust-button,.stock-config-link{width:32px;height:32px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--green);display:grid;place-items:center;font-size:.59rem}.movement-list{max-height:610px;overflow-y:auto}.movement-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto 42px;align-items:center;gap:9px;padding:11px 14px;border-bottom:1px solid var(--line-soft)}.movement-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;font-size:.58rem}.movement-icon.in{color:var(--green);background:var(--green-soft)}.movement-icon.out{color:var(--red);background:var(--red-soft)}.movement-row>div{display:flex;flex-direction:column;min-width:0}.movement-row strong{font-size:.63rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.movement-row small{font-size:.49rem;color:var(--muted);margin-top:2px}.movement-row em{font-size:.49rem;color:var(--ink-soft);font-style:normal;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.movement-row>b{font-size:.62rem}.movement-row>b.positive{color:var(--green)}.movement-row>b.negative{color:var(--red)}.movement-row>span:last-child{font-family:"Segoe UI",system-ui,sans-serif;font-size:.63rem;text-align:right}.stock-current-card{display:flex;align-items:baseline;justify-content:center;gap:6px;border-radius:14px;padding:14px;background:var(--canvas);margin-bottom:14px}.stock-current-card span{font-size:.59rem;color:var(--muted)}.stock-current-card strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.6rem;color:var(--green)}.stock-current-card small{font-size:.55rem;color:var(--muted)}.stock-direction{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:15px}.stock-direction button{height:40px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--muted);font-size:.62rem;font-weight:800}.stock-direction button.active{color:var(--green);border-color:#a8d0ba;background:var(--green-soft)}

/* Printer receipt studio */
.printer-studio{display:grid;grid-template-columns:minmax(420px,1fr) minmax(390px,.8fr);gap:18px;align-items:start}.printer-control-panel{padding:4px 22px 22px}.settings-section{padding:21px 0;border-bottom:1px solid var(--line-soft)}.settings-heading{display:flex;align-items:center;gap:10px;margin-bottom:15px}.settings-heading>span{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:var(--purple-soft);color:#644bca;font-family:"Segoe UI",system-ui,sans-serif;font-size:.58rem}.settings-heading>div{display:flex;flex-direction:column}.settings-heading strong{font-size:.7rem}.settings-heading small{font-size:.53rem;color:var(--muted);margin-top:2px}.settings-options{display:grid;gap:8px}.settings-options.two{grid-template-columns:1fr 1fr}.layout-options{margin-top:8px}.option-card input{display:none}.option-card>span{min-height:68px;border:1px solid var(--line);border-radius:12px;display:grid;grid-template-columns:31px 1fr;align-items:center;padding:10px;cursor:pointer;transition:.2s}.option-card>span>i{grid-row:1/3;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:var(--canvas);color:var(--muted)}.option-card strong{font-size:.63rem}.option-card small{font-size:.51rem;color:var(--muted)}.option-card input:checked+span{border-color:#9e90dd;background:var(--purple-soft);box-shadow:inset 0 0 0 1px rgba(100,75,202,.12)}.option-card input:checked+span>i{background:#fff;color:#644bca}.toggle-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.toggle-list label{min-height:43px;border:1px solid var(--line);border-radius:11px;padding:8px 10px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.toggle-list label>span{display:flex;align-items:center;gap:7px}.toggle-list label>span i{color:#644bca;font-size:.65rem}.toggle-list b{font-size:.57rem}.toggle-list input{display:none}.toggle-list label>i{width:30px;height:17px;border-radius:20px;background:#cad4ce;position:relative}.toggle-list label>i:after{content:"";position:absolute;width:13px;height:13px;left:2px;top:2px;border-radius:50%;background:#fff;transition:.2s}.toggle-list input:checked+i{background:#644bca}.toggle-list input:checked+i:after{transform:translateX(13px)}.column-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px}.column-picker label{cursor:pointer}.column-picker input{display:none}.column-picker span{height:38px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;justify-content:space-between;padding:0 11px;font-size:.58rem;color:var(--muted)}.column-picker input:checked+span{color:#5b43b8;border-color:#aa9ee2;background:var(--purple-soft);font-weight:800}.column-picker i{font-size:.48rem}.save-printer{width:100%;margin-top:20px}.receipt-preview-stage{position:sticky;top:110px;border-radius:22px;background:linear-gradient(145deg,#14251d,#09140f);padding:17px;box-shadow:0 25px 60px rgba(12,31,21,.18)}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;color:#dce9e2;font-size:.61rem;margin-bottom:13px}.preview-toolbar small{color:var(--mint);font-size:.52rem}.thermal-printer{background:linear-gradient(180deg,#26352e,#18261f);border-radius:18px;padding:23px 27px 0;min-height:600px;display:flex;align-items:center;flex-direction:column;overflow:hidden}.printer-slot{width:76%;height:11px;border-radius:10px;background:#07100c;box-shadow:inset 0 2px 5px rgba(0,0,0,.7);margin-bottom:-4px;z-index:2}.receipt-paper{width:270px;min-height:520px;background:#fffdf8;color:#161916;padding:25px 18px 30px;font-family:monospace;font-size:9px;box-shadow:0 15px 35px rgba(0,0,0,.35);transition:.25s;position:relative}.receipt-paper:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:7px;background:linear-gradient(135deg,transparent 4px,#fffdf8 0) 0 0/8px 8px repeat-x}.receipt-paper.wide{width:340px}.receipt-brand{text-align:center;font-weight:900;font-size:15px}.receipt-address{text-align:center;font-size:8px;margin:4px 0}.receipt-title{text-align:center;font-weight:900;margin:12px 0 4px}.receipt-header-text{text-align:center;font-size:8px;margin-bottom:8px}.receipt-meta,.receipt-optional,.receipt-payment-row{display:flex;justify-content:space-between;margin:3px 0}.receipt-meta{font-size:7px;color:#555}.receipt-divider{border-top:1px dashed #333;margin:8px 0}.receipt-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:6px;margin:5px 0;align-items:center}.receipt-item span{font-weight:700}.receipt-item small{font-size:7px}.receipt-total{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin:7px 0}.receipt-footer{text-align:center;margin:17px 0 7px}.receipt-barcode{text-align:center;letter-spacing:2px;font-size:12px}.receipt-paper.compact .receipt-header-text:empty,.receipt-paper.compact .receipt-item small{display:none}

/* Premium stock helpers in catalogue and POS */
.stock-config-box{border:1px solid #d8d2f2;background:#faf9ff;border-radius:13px;padding:11px;margin-top:12px}.stock-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.stock-toggle>span{display:flex;align-items:center;gap:9px}.stock-toggle>span>i{color:#644bca}.stock-toggle>span>span{display:flex;flex-direction:column}.stock-toggle strong{font-size:.62rem}.stock-toggle small{font-size:.51rem;color:var(--muted);margin-top:2px}.stock-toggle input{display:none}.stock-toggle>i{width:33px;height:19px;border-radius:20px;background:#cbd4cf;position:relative}.stock-toggle>i:after{content:"";position:absolute;width:15px;height:15px;left:2px;top:2px;border-radius:50%;background:#fff;transition:.2s}.stock-toggle input:checked+i{background:#644bca}.stock-toggle input:checked+i:after{transform:translateX(14px)}.stock-fields{margin-top:11px}.stock-fields.disabled{opacity:.42}.stock-edit-note{display:flex;align-items:center;gap:6px;color:#644bca;font-size:.53rem;margin-top:9px}.premium-inline-card{display:flex;align-items:center;gap:9px;border:1px solid #ddd7f5;background:var(--purple-soft);border-radius:12px;padding:10px;margin-top:12px}.premium-inline-card>span{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;background:#fff;color:#644bca}.premium-inline-card>div{display:flex;flex:1;flex-direction:column}.premium-inline-card strong{font-size:.6rem}.premium-inline-card small{font-size:.5rem;color:#7669ac;margin-top:2px}.premium-inline-card>i{color:#644bca;font-size:.6rem}.catalogue-stock{display:flex;align-items:center;gap:6px;color:var(--green);font-size:.55rem;margin:8px 0 0}.catalogue-stock.low{color:var(--orange)}.pos-product-card.out-of-stock{filter:grayscale(.4);opacity:.62;cursor:not-allowed}.sold-out-label{position:absolute;right:8px;bottom:9px;padding:5px 7px;border-radius:7px;background:var(--red-soft);color:var(--red);font-size:.49rem;font-weight:900}

@media(max-width:1220px){.accounting-summary-grid{grid-template-columns:1fr 1fr}.accounting-layout{grid-template-columns:300px minmax(0,1fr)}.inventory-layout{grid-template-columns:1fr}.movement-list{max-height:430px}.printer-studio{grid-template-columns:1fr}.receipt-preview-stage{position:relative;top:auto}.register-shell{grid-template-columns:430px minmax(0,1fr)}}
@media(max-width:900px){.register-shell{display:block}.register-showcase{display:none}.register-form-side{min-height:100vh;padding-top:90px}.pricing-grid{grid-template-columns:1fr}.subscription-hero{padding:28px}.accounting-layout{grid-template-columns:1fr}.chart-accounts-panel{max-height:none}.inventory-metrics{grid-template-columns:1fr 1fr}.platform-metrics{grid-template-columns:1fr 1fr}.printer-studio{grid-template-columns:1fr}.receipt-preview-stage{display:none}}
@media(max-width:720px){.subscription-hero{min-height:260px;align-items:flex-start}.billing-orbit{width:100px;height:100px;flex-basis:100px}.billing-orbit strong{font-size:1.4rem}.subscription-hero h2{font-size:1.55rem}.pricing-card{padding:21px}.plan-status-banner{align-items:flex-start}.plan-status-banner>a,.plan-status-banner>b{display:none}.accounting-summary-grid{grid-template-columns:1fr 1fr}.finance-summary{padding:12px;min-height:100px}.finance-summary>span{display:none}.inventory-layout{grid-template-columns:1fr}.stock-product-row{grid-template-columns:42px minmax(0,1fr) 65px 31px;padding-left:10px;padding-right:10px}.movement-row{grid-template-columns:31px minmax(0,1fr) auto}.movement-row>span:last-child{display:none}.journal-account-grid{grid-template-columns:1fr}.journal-balance-icon{margin:auto;transform:rotate(90deg)}.platform-metrics{grid-template-columns:1fr}.panel-heading{align-items:flex-start;gap:10px;flex-direction:column}.panel-heading .search-field{width:100%;min-width:0}.register-grid{grid-template-columns:1fr}.field-span-2{grid-column:auto}.register-form-side{padding-left:20px;padding-right:20px}.toggle-list,.column-picker{grid-template-columns:1fr}.settings-options.two{grid-template-columns:1fr 1fr}}
@media(max-width:440px){.subscription-hero{display:block}.billing-orbit{display:none}.accounting-summary-grid,.inventory-metrics{grid-template-columns:1fr}.printer-control-panel{padding-left:14px;padding-right:14px}.settings-options.two{grid-template-columns:1fr}.pricing-card .price strong{font-size:1.45rem}}

.retail-config-box{border-color:#bcdccc;background:linear-gradient(145deg,#f5fcf8,#fbfefd)}.retail-config-box .stock-edit-note{color:var(--green)}.retail-config-box .stock-toggle>span>i{color:var(--green)}.retail-sellable{align-self:end;min-height:42px;border:1px solid #d7e5dc;border-radius:11px;background:#fff;padding:7px 9px}.retail-sellable input:checked+i{background:var(--green)}.category-badge.barang{color:#7b5626}.category-badge.bahan_baku{color:#9b5e28}.category-badge.inventaris{color:#644bca}

/* Warehouse & retail barcode */
.warehouse-page{padding-bottom:42px}.warehouse-hero{position:relative;overflow:hidden;min-height:250px;border-radius:23px;padding:31px 34px;display:flex;align-items:center;justify-content:space-between;gap:30px;color:#f4fff9;background:radial-gradient(circle at 80% 15%,rgba(177,255,218,.18),transparent 28%),linear-gradient(125deg,#07140e 0%,#102b1e 58%,#174431 100%);box-shadow:0 24px 55px rgba(7,30,19,.18)}.warehouse-hero:after{content:"";position:absolute;right:-65px;bottom:-130px;width:340px;height:340px;border:1px solid rgba(201,255,229,.12);border-radius:50%;box-shadow:0 0 0 42px rgba(201,255,229,.035),0 0 0 88px rgba(201,255,229,.025)}.warehouse-hero-copy{position:relative;z-index:1;max-width:720px}.warehouse-hero .section-kicker{color:var(--mint)}.warehouse-hero h2{font-family:"Segoe UI",system-ui,sans-serif;font-size:2rem;line-height:1.12;margin:13px 0 10px;letter-spacing:-.03em}.warehouse-hero h2 em{font-style:normal;color:#a8e8c8}.warehouse-hero p{max-width:650px;margin:0;color:#b9cfc3;font-size:.68rem;line-height:1.65}.warehouse-hero-pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:19px}.warehouse-hero-pills span{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(213,255,235,.14);border-radius:20px;padding:7px 10px;background:rgba(255,255,255,.06);font-size:.52rem;font-weight:800;color:#d9eee3}.warehouse-hero-pills i{color:var(--mint)}.warehouse-hero-actions{position:relative;z-index:1;display:grid;gap:10px;flex:0 0 205px}.warehouse-primary-action,.warehouse-secondary-action{min-height:67px;border:0;border-radius:16px;padding:11px 14px;display:flex;align-items:center;gap:12px;text-align:left;transition:transform .18s,box-shadow .18s}.warehouse-primary-action:hover,.warehouse-secondary-action:hover{transform:translateY(-2px)}.warehouse-primary-action>i,.warehouse-secondary-action>i{width:36px;height:36px;border-radius:11px;display:grid;place-items:center}.warehouse-primary-action span,.warehouse-secondary-action span{display:flex;flex-direction:column;font-size:.68rem;font-weight:900}.warehouse-primary-action small,.warehouse-secondary-action small{font-size:.44rem;letter-spacing:.14em;margin-bottom:3px}.warehouse-primary-action{background:linear-gradient(135deg,#b9f5d8,#7edab0);color:#0d3b29;box-shadow:0 13px 28px rgba(75,190,136,.2)}.warehouse-primary-action>i{background:rgba(255,255,255,.55)}.warehouse-secondary-action{border:1px solid rgba(224,255,239,.14);background:rgba(255,255,255,.08);color:#effbf4}.warehouse-secondary-action>i{background:rgba(255,255,255,.08);color:#ffb784}.warehouse-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:15px 0}.warehouse-metrics article{min-height:92px;border:1px solid var(--line);border-radius:17px;padding:14px;background:#fff;display:flex;align-items:center;gap:11px;box-shadow:var(--shadow-sm)}.warehouse-metrics .metric-icon{flex:0 0 39px;width:39px;height:39px;border-radius:12px;display:grid;place-items:center}.warehouse-metrics article>div{display:flex;flex-direction:column;min-width:0}.warehouse-metrics small{font-size:.53rem;color:var(--muted)}.warehouse-metrics strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.12rem;line-height:1;margin:6px 0 3px}.warehouse-metrics em{font-size:.47rem;color:#91a097;font-style:normal}.warehouse-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) repeat(4,auto);align-items:center;gap:8px;padding:10px;margin-bottom:15px}.warehouse-scan-field{height:44px;border:1px solid #bfd4c7;border-radius:12px;background:#f8fcfa;display:grid;grid-template-columns:39px minmax(0,1fr) auto;align-items:center;overflow:hidden}.warehouse-scan-field>span{height:100%;display:grid;place-items:center;color:var(--green);background:var(--green-soft)}.warehouse-scan-field input{height:100%;min-width:0;border:0;outline:0;background:transparent;padding:0 11px;font-size:.63rem;color:var(--ink)}.warehouse-scan-field kbd{margin-right:9px;border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;padding:3px 6px;background:#fff;color:var(--muted);font-size:.43rem}.warehouse-tool-button{height:42px;border:1px solid var(--line);border-radius:11px;padding:0 11px;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#fff;color:var(--ink-soft);font-size:.55rem;font-weight:800;white-space:nowrap;transition:.18s}.warehouse-tool-button:hover{border-color:#a6c8b5;background:var(--green-soft);color:var(--green);transform:translateY(-1px)}.warehouse-tool-button i{color:var(--green)}.warehouse-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(330px,.75fr);gap:15px;align-items:start}.warehouse-products-panel,.warehouse-batch-panel,.warehouse-movement-panel{overflow:hidden}.warehouse-panel-heading .search-field{width:245px;min-width:200px}.panel-kicker{font-size:.45rem;font-weight:900;letter-spacing:.13em;color:var(--green)}.warehouse-table-wrap{overflow:auto;max-height:680px}.warehouse-table{width:100%;border-collapse:collapse;white-space:nowrap}.warehouse-table th{position:sticky;top:0;z-index:2;padding:10px 13px;background:#f8faf9;border-bottom:1px solid var(--line);color:var(--muted);font-size:.47rem;letter-spacing:.08em;text-transform:uppercase}.warehouse-table td{padding:12px 13px;border-bottom:1px solid var(--line-soft);font-size:.6rem;vertical-align:middle}.warehouse-table tbody tr{transition:.2s}.warehouse-table tbody tr:hover{background:#fbfdfc}.warehouse-table tbody tr.scan-hit{background:#e7f8ef;box-shadow:inset 3px 0 var(--green)}.warehouse-product-cell{display:flex;align-items:center;gap:9px;min-width:190px}.warehouse-product-cell>span{width:35px;height:35px;flex:0 0 35px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(145deg,var(--green-soft),#dff5e9);color:var(--green);font-family:"Segoe UI",system-ui,sans-serif;font-size:.72rem}.warehouse-product-cell>div,.warehouse-code-cell,.warehouse-stock-cell,.warehouse-batch-cell{display:flex;flex-direction:column}.warehouse-product-cell strong{max-width:175px;overflow:hidden;text-overflow:ellipsis}.warehouse-product-cell small,.warehouse-code-cell small,.warehouse-stock-cell small,.warehouse-batch-cell small{font-size:.48rem;color:var(--muted);margin-top:3px}.warehouse-code-cell code{width:max-content;max-width:170px;overflow:hidden;text-overflow:ellipsis;padding:4px 6px;border-radius:6px;background:#f2f5f3;color:#276146;font-size:.52rem}.warehouse-stock-cell strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.8rem;color:var(--green)}.warehouse-stock-cell small{font-size:.43rem;font-weight:900;color:var(--green)}.warehouse-stock-cell.low strong,.warehouse-stock-cell.low small{color:var(--orange)}.warehouse-batch-cell strong{font-size:.57rem}.warehouse-row-actions{justify-content:flex-end}.warehouse-row-actions button{color:var(--green)}.warehouse-row-actions button:nth-child(2){color:var(--orange)}.warehouse-row-actions button:nth-child(3){color:#644bca}.warehouse-side-stack{display:grid;gap:15px}.warehouse-batch-list,.warehouse-movement-list{max-height:306px;overflow-y:auto}.warehouse-batch-row{display:grid;grid-template-columns:35px minmax(0,1fr) auto;gap:9px;align-items:center;padding:11px 13px;border-bottom:1px solid var(--line-soft);position:relative}.warehouse-batch-row>span{grid-row:1/3;width:33px;height:33px;border-radius:10px;display:grid;place-items:center;background:var(--green-soft);color:var(--green)}.warehouse-batch-row>div{display:flex;flex-direction:column;min-width:0}.warehouse-batch-row strong{font-size:.6rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.warehouse-batch-row small{font-size:.47rem;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.warehouse-batch-row>b{font-family:"Segoe UI",system-ui,sans-serif;font-size:.65rem}.warehouse-batch-row>em{grid-column:2/4;font-style:normal;font-size:.43rem;color:var(--muted)}.warehouse-batch-row.expiring>span{background:var(--red-soft);color:var(--red)}.warehouse-batch-row.expiring>em{color:var(--red);font-weight:900}.warehouse-movement-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 13px;border-bottom:1px solid var(--line-soft)}.warehouse-movement-row>span{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-size:.55rem}.warehouse-movement-row.negative>span{background:var(--orange-soft);color:var(--orange)}.warehouse-movement-row>div{display:flex;flex-direction:column;min-width:0}.warehouse-movement-row strong{font-size:.58rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.warehouse-movement-row small{font-size:.45rem;color:var(--muted);margin-top:2px;text-transform:capitalize}.warehouse-movement-row>b{font-size:.58rem;color:var(--green)}.warehouse-movement-row.negative>b{color:var(--red)}.empty-inline{min-height:112px;padding:22px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;color:var(--muted);text-align:center}.empty-inline.tall{min-height:280px}.empty-inline i{font-size:1.2rem;color:#a9bab0}.empty-inline strong{font-size:.62rem}.empty-inline span{font-size:.5rem}.warehouse-modal .modal-content{border-radius:19px}.warehouse-modal .modal-header{background:linear-gradient(180deg,#fbfdfc,#fff)}.modal-icon.warehouse-in{background:var(--green-soft);color:var(--green)}.modal-icon.warehouse-out{background:var(--orange-soft);color:var(--orange)}.warehouse-form-body{background:#f8faf9;padding:15px}.warehouse-form-section{border:1px solid var(--line);border-radius:15px;background:#fff;padding:15px;margin-bottom:11px}.warehouse-form-section:last-child{margin-bottom:0}.warehouse-form-title{display:flex;align-items:center;gap:9px;margin-bottom:13px}.warehouse-form-title>span{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-family:"Segoe UI",system-ui,sans-serif;font-size:.54rem}.warehouse-form-title>div{display:flex;flex-direction:column}.warehouse-form-title strong{font-size:.65rem}.warehouse-form-title small{font-size:.49rem;color:var(--muted);margin-top:2px}.warehouse-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.warehouse-form-grid.four{grid-template-columns:repeat(4,1fr)}.warehouse-form-grid label{min-width:0}.warehouse-form-grid .field-span-2{grid-column:span 2}.warehouse-calculation{display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:10px;background:#edf8f2;padding:9px 11px;margin-top:10px;color:#28714d}.warehouse-calculation span{font-size:.51rem}.warehouse-calculation strong{font-size:.65rem}.barcode-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.barcode-choice-grid label,.label-methods label{cursor:pointer}.barcode-choice-grid input,.label-methods input{display:none}.barcode-choice-grid label>span,.label-methods label>span{height:76px;border:1px solid var(--line);border-radius:12px;padding:10px;display:grid;grid-template-columns:29px 1fr;align-items:center}.barcode-choice-grid label>span>i,.label-methods label>span>i{grid-row:1/3;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--canvas);color:var(--muted)}.barcode-choice-grid strong,.label-methods strong{font-size:.57rem}.barcode-choice-grid small,.label-methods small{font-size:.46rem;color:var(--muted)}.barcode-choice-grid input:checked+span,.label-methods input:checked+span{border-color:#8ec7a9;background:var(--green-soft);box-shadow:inset 0 0 0 1px rgba(45,137,94,.1)}.barcode-choice-grid input:checked+span>i,.label-methods input:checked+span>i{background:#fff;color:var(--green)}.barcode-manual-field{margin-top:9px}.warehouse-print-toggle{min-height:48px;display:grid;grid-template-columns:35px minmax(0,1fr) 70px;align-items:center;gap:9px;border-top:1px dashed var(--line);margin-top:11px;padding-top:11px;cursor:pointer}.warehouse-print-toggle>input:first-child{display:none}.warehouse-print-toggle>span{width:35px;height:20px;border-radius:20px;background:#cbd4cf;position:relative}.warehouse-print-toggle>span:after{content:"";position:absolute;width:16px;height:16px;left:2px;top:2px;border-radius:50%;background:#fff;transition:.2s}.warehouse-print-toggle>input:checked+span{background:var(--green)}.warehouse-print-toggle>input:checked+span:after{transform:translateX(15px)}.warehouse-print-toggle>div{display:flex;flex-direction:column}.warehouse-print-toggle strong{font-size:.58rem}.warehouse-print-toggle small{font-size:.47rem;color:var(--muted);margin-top:2px}.warehouse-print-toggle>input:last-child{height:34px;width:70px;border:1px solid var(--line);border-radius:9px;padding:0 8px;font-size:.6rem}.warehouse-scan-callout{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(180px,.8fr);align-items:center;gap:9px;border:1px solid #c7dfd1;border-radius:13px;background:var(--green-soft);padding:10px;margin-bottom:13px}.warehouse-scan-callout>i{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#fff;color:var(--green)}.warehouse-scan-callout>div{display:flex;flex-direction:column}.warehouse-scan-callout strong{font-size:.59rem}.warehouse-scan-callout small{font-size:.47rem;color:var(--muted);margin-top:2px}.warehouse-scan-callout input{height:37px;border:1px solid #b7d3c2;border-radius:9px;background:#fff;padding:0 10px;font-size:.58rem;outline:0}.supplier-manager{display:grid;grid-template-columns:300px minmax(0,1fr);gap:15px;background:#f8faf9}.supplier-editor,.supplier-list-panel{border:1px solid var(--line);border-radius:14px;background:#fff;padding:14px}.supplier-editor{display:flex;flex-direction:column;gap:9px}.supplier-editor h6{font-family:"Segoe UI",system-ui,sans-serif;font-size:.77rem;margin:0 0 3px}.supplier-editor textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:9px;font-size:.6rem;resize:vertical}.supplier-active{display:flex;align-items:center;gap:8px;font-size:.56rem;cursor:pointer}.supplier-active input{display:none}.supplier-active span{width:31px;height:18px;border-radius:20px;background:#cbd4cf;position:relative}.supplier-active span:after{content:"";position:absolute;width:14px;height:14px;left:2px;top:2px;border-radius:50%;background:#fff;transition:.2s}.supplier-active input:checked+span{background:var(--green)}.supplier-active input:checked+span:after{transform:translateX(13px)}.supplier-list-panel{padding:0;overflow:hidden}.supplier-list-head{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--line);font-size:.48rem;font-weight:900;letter-spacing:.1em;color:var(--muted)}.supplier-list-head b{min-width:24px;padding:4px 6px;border-radius:8px;background:var(--green-soft);color:var(--green);text-align:center}.supplier-list-row{display:grid;grid-template-columns:35px minmax(0,1fr) auto 31px 31px;align-items:center;gap:8px;padding:10px 13px;border-bottom:1px solid var(--line-soft)}.supplier-list-row>span{width:33px;height:33px;border-radius:9px;display:grid;place-items:center;background:var(--green-soft);color:var(--green)}.supplier-list-row>div{display:flex;flex-direction:column;min-width:0}.supplier-list-row strong{font-size:.6rem}.supplier-list-row small{font-size:.47rem;color:var(--muted);margin-top:2px}.supplier-list-row>b{font-size:.44rem;color:var(--green)}.supplier-list-row>button{width:29px;height:29px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-size:.52rem}.supplier-list-row>button:last-child{color:var(--red)}.supplier-list-row.inactive{opacity:.55}.label-studio{display:grid;grid-template-columns:minmax(310px,.85fr) minmax(390px,1.15fr);gap:17px;background:#f5f8f6}.label-controls,.label-preview-stage{border:1px solid var(--line);border-radius:15px;background:#fff;padding:16px}.label-controls{display:flex;flex-direction:column;gap:10px}.label-code-actions{display:flex;gap:7px}.label-code-actions button{flex:1}.label-methods{display:grid;grid-template-columns:1fr 1fr;gap:7px}.label-methods label>span{height:68px}.niimbot-control{border:1px solid #d8d2f2;border-radius:12px;background:var(--purple-soft);padding:9px;display:flex;align-items:center;gap:7px}.niimbot-control>div{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.niimbot-control>div>i{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;background:#fff;color:#644bca}.niimbot-control>div>span{display:flex;flex-direction:column;min-width:0}.niimbot-control strong{font-size:.55rem}.niimbot-control small{font-size:.44rem;color:#7568a7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.niimbot-control button{flex:0 0 auto}.label-preview-stage{padding:0;overflow:hidden;background:linear-gradient(145deg,#17261f,#07120d)}.label-preview-toolbar{height:45px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;color:#e6f2eb;font-size:.49rem;font-weight:900;letter-spacing:.09em}.label-preview-toolbar small{font-size:.45rem;color:var(--mint)}.retail-label-preview{width:360px;min-height:216px;margin:31px auto;padding:17px 21px;background:#fffefa;color:#111;display:flex;align-items:center;flex-direction:column;text-align:center;box-shadow:0 18px 38px rgba(0,0,0,.38);font-family:Arial,sans-serif}.retail-label-preview>strong{font-size:9px;letter-spacing:.12em}.retail-label-preview h4{max-width:100%;font-size:15px;font-weight:900;margin:7px 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.retail-label-preview>b{font-size:18px;margin-bottom:5px}.retail-label-preview svg{max-width:295px;height:58px}.retail-label-preview code{font-family:monospace;font-size:9px;color:#111;background:transparent;padding:0}.retail-label-preview small{font-size:8px;margin-top:3px}.camera-scanner-body{background:#07110c;color:#fff;text-align:center}.camera-viewport{position:relative;overflow:hidden;aspect-ratio:4/3;border-radius:15px;background:#020604}.camera-viewport video{width:100%;height:100%;object-fit:cover}.camera-viewport span{position:absolute;inset:24% 10%;border:2px solid var(--mint);border-radius:12px;box-shadow:0 0 0 999px rgba(0,0,0,.45)}.camera-viewport span:before,.camera-viewport span:after{content:"";position:absolute;left:8%;right:8%;height:1px;background:var(--mint);box-shadow:0 0 12px var(--mint)}.camera-viewport span:before{top:50%;animation:warehouseScan 2s ease-in-out infinite}.camera-viewport span:after{display:none}.camera-scanner-body p{font-size:.56rem;color:#c8dbd0;margin:12px 0 1px}@keyframes warehouseScan{0%,100%{transform:translateY(-36px);opacity:.4}50%{transform:translateY(36px);opacity:1}}.warehouse-print-root{display:none}

@media(max-width:1280px){.warehouse-toolbar{grid-template-columns:minmax(260px,1fr) repeat(2,auto)}.warehouse-tool-button:nth-of-type(3),.warehouse-tool-button:nth-of-type(4){display:none}.warehouse-layout{grid-template-columns:minmax(0,1.4fr) minmax(290px,.7fr)}.warehouse-form-grid.four{grid-template-columns:1fr 1fr}}
@media(max-width:1050px){.warehouse-hero{align-items:flex-start}.warehouse-metrics{grid-template-columns:1fr 1fr}.warehouse-layout{grid-template-columns:1fr}.warehouse-side-stack{grid-template-columns:1fr 1fr}.warehouse-batch-list,.warehouse-movement-list{max-height:330px}.warehouse-toolbar{grid-template-columns:minmax(260px,1fr) repeat(4,auto)}.warehouse-tool-button:nth-of-type(3),.warehouse-tool-button:nth-of-type(4){display:inline-flex}}
@media(max-width:820px){.warehouse-hero{padding:25px;display:block}.warehouse-hero h2{font-size:1.65rem}.warehouse-hero-actions{grid-template-columns:1fr 1fr;margin-top:22px}.warehouse-toolbar{grid-template-columns:1fr 1fr}.warehouse-scan-field{grid-column:1/-1}.warehouse-tool-button{width:100%}.warehouse-layout{display:block}.warehouse-side-stack{grid-template-columns:1fr;margin-top:15px}.warehouse-products-panel .panel-heading{display:block}.warehouse-panel-heading .search-field{width:100%;margin-top:10px}.warehouse-form-grid,.warehouse-form-grid.four{grid-template-columns:1fr 1fr}.barcode-choice-grid{grid-template-columns:1fr}.barcode-choice-grid label>span{height:62px}.supplier-manager,.label-studio{grid-template-columns:1fr}.label-preview-stage{min-height:310px}}
@media(max-width:560px){.warehouse-hero{padding:21px 18px;border-radius:18px}.warehouse-hero h2{font-size:1.4rem}.warehouse-hero p{font-size:.6rem}.warehouse-hero-actions{display:grid;grid-template-columns:1fr}.warehouse-primary-action,.warehouse-secondary-action{min-height:58px}.warehouse-metrics{grid-template-columns:1fr 1fr;gap:8px}.warehouse-metrics article{min-height:80px;padding:10px}.warehouse-metrics .metric-icon{display:none}.warehouse-toolbar{grid-template-columns:1fr 1fr}.warehouse-tool-button{padding:0 8px}.warehouse-tool-button span{font-size:.5rem}.warehouse-table th,.warehouse-table td{padding-left:9px;padding-right:9px}.warehouse-form-body{padding:9px}.warehouse-form-section{padding:12px}.warehouse-form-grid,.warehouse-form-grid.four{grid-template-columns:1fr}.warehouse-form-grid .field-span-2{grid-column:auto}.warehouse-print-toggle{grid-template-columns:35px minmax(0,1fr)}.warehouse-print-toggle>input:last-child{grid-column:2;width:100%}.warehouse-scan-callout{grid-template-columns:35px minmax(0,1fr)}.warehouse-scan-callout input{grid-column:1/-1}.supplier-manager{padding:9px}.supplier-list-row{grid-template-columns:33px minmax(0,1fr) 28px 28px}.supplier-list-row>b{display:none}.label-studio{padding:9px}.label-controls,.label-preview-stage{padding:12px}.label-preview-stage{padding:0;min-height:270px}.retail-label-preview{width:290px;min-height:174px;margin:28px auto;padding:12px 15px}.retail-label-preview svg{height:45px;max-width:250px}.label-methods{grid-template-columns:1fr}.niimbot-control{flex-wrap:wrap}.niimbot-control>div{flex-basis:100%}.label-code-actions{flex-direction:column}}

@media print{body.app-shell{background:#fff!important}.app-shell>*:not(.warehouse-print-root){display:none!important}.warehouse-print-root{display:flex!important;position:absolute;inset:0;align-content:flex-start;align-items:flex-start;flex-wrap:wrap;gap:0;background:#fff}.warehouse-print-label{box-sizing:border-box;width:50mm;height:30mm;overflow:hidden;page-break-inside:avoid;padding:2.3mm 3mm;display:flex;align-items:center;flex-direction:column;text-align:center;color:#000;background:#fff;font-family:Arial,sans-serif}.warehouse-print-label small{font-size:6pt;line-height:1;letter-spacing:.1em}.warehouse-print-label h2{width:100%;margin:1.1mm 0 .4mm;font-size:9pt;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.warehouse-print-label strong{font-size:10pt;line-height:1}.warehouse-print-label svg{width:41mm!important;height:10mm!important;margin:.5mm 0 0}.warehouse-print-label code{padding:0;background:none;color:#000;font-size:6.5pt;line-height:1}.warehouse-print-label p{margin:.6mm 0 0;font-size:5.5pt;line-height:1}@page{size:50mm 30mm;margin:0}}

/* E-Menu, table ordering, and operational bookkeeping */
.side-nav{min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:2px}.nav-pill.warm{background:#f2b865;color:#4f2b08}.btn-primary-cf.wide{width:100%;margin-top:18px}.round-icon.whatsapp{background:#dff8e9;color:#16a25b}.info-callout{display:flex;align-items:flex-start;gap:9px;border-radius:12px;background:#eef5f1;color:#50665a;padding:11px 12px;font-size:.61rem;line-height:1.5}.info-callout>i{color:var(--green);margin-top:2px}.settings-toggle{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;cursor:pointer}.settings-toggle>span{display:flex;align-items:center;gap:10px;min-width:0}.settings-toggle>span>i{width:37px;height:37px;border-radius:11px;background:var(--canvas-2);color:var(--green);display:grid;place-items:center}.settings-toggle>span>span{display:flex;flex-direction:column}.settings-toggle strong{font-size:.66rem}.settings-toggle small{font-size:.52rem;color:var(--muted);line-height:1.4;margin-top:3px}.settings-toggle>input{display:none}.settings-toggle>i{flex:0 0 39px;width:39px;height:22px;border-radius:999px;background:#cbd5cf;position:relative;transition:.2s}.settings-toggle>i:after{content:"";position:absolute;width:18px;height:18px;left:2px;top:2px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(20,40,30,.15);transition:.2s}.settings-toggle>input:checked+i{background:var(--green)}.settings-toggle>input:checked+i:after{transform:translateX(17px)}.settings-toggle>input:disabled+i{opacity:.45}.premium-textarea{min-height:92px;resize:vertical;border-color:var(--line);border-radius:12px;font-size:.72rem;padding:12px;margin-bottom:3px}.form-divider{height:1px;background:var(--line-soft);margin:20px 0}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:17px 18px;border-bottom:1px solid var(--line-soft)}.panel-heading.compact{padding:0;border:0;margin-bottom:12px}.panel-heading h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:.9rem;margin:4px 0 2px}.panel-heading p{font-size:.57rem;color:var(--muted);margin:0;line-height:1.45}

/* Dashboard ordering shortcuts */
.dashboard-order-hub{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:17px}.order-hub-card,.order-hub-date{min-height:94px;border:1px solid var(--line);border-radius:17px;background:#fff;padding:13px;display:grid;grid-template-columns:42px minmax(0,1fr) 25px;align-items:center;gap:10px;box-shadow:0 7px 20px rgba(21,42,32,.045);transition:.2s}.order-hub-card:hover{transform:translateY(-2px);border-color:#b7d3c3;box-shadow:0 12px 28px rgba(21,42,32,.08)}.order-hub-card>span,.order-hub-date>span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--green-soft);color:var(--green);position:relative}.order-hub-card.pending>span{background:var(--orange-soft);color:var(--orange)}.order-hub-card.emenu>span{background:var(--purple-soft);color:var(--purple)}.order-hub-card.qr>span{background:var(--blue-soft);color:var(--blue)}.order-hub-card>span b{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--red);border:2px solid #fff;color:#fff;font-size:.47rem;display:grid;place-items:center}.order-hub-card>div,.order-hub-date>div{display:flex;flex-direction:column;min-width:0}.order-hub-card small,.order-hub-date small{font-size:.45rem;letter-spacing:.1em;font-weight:900;color:var(--green)}.order-hub-card strong,.order-hub-date strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.68rem;margin:4px 0 2px}.order-hub-card p,.order-hub-date p{margin:0;color:var(--muted);font-size:.49rem;line-height:1.35}.order-hub-card>i{font-size:.57rem;color:#a2afa8}.order-hub-date>a{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;color:var(--muted);background:var(--canvas)}

/* POS additions */
.checkout-order-fields{border-bottom:1px solid var(--line-soft);padding-bottom:10px;margin-bottom:1px}.order-type-switch{display:grid;grid-template-columns:1fr 1fr;background:var(--canvas);border-radius:11px;padding:4px;margin-bottom:9px}.order-type-switch button{height:34px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:.59rem;font-weight:800}.order-type-switch button.active{background:#fff;color:var(--green);box-shadow:0 4px 12px rgba(21,42,32,.08)}.order-type-switch i{margin-right:5px}.checkout-order-fields>.field-wrap{height:40px;margin-bottom:2px}.checkout-customer{grid-template-columns:1fr 1fr;padding-bottom:8px;border-bottom:0}.checkout-customer .field-label small{font-size:.45rem;color:var(--muted)}.checkout-actions.split{grid-template-columns:43px minmax(96px,.8fr) minmax(125px,1.2fr)}.pending-button{height:44px;border:1px solid #edc995;border-radius:11px;background:#fff7eb;color:#9c6424;font-size:.61rem;font-weight:800}.pending-button:hover{background:#fce8cb}.pending-button:disabled{opacity:.55}.payment-chip.unpaid{background:var(--orange-soft);color:#a36527}.source-mini{display:inline-flex;margin-left:4px;border-radius:5px;padding:2px 4px;background:#e8eeea;color:#66776e;font-size:.42rem;font-weight:900;letter-spacing:.05em}.source-mini.emenu{background:var(--purple-soft);color:var(--purple)}.order-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:.49rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.order-status.pending{background:var(--orange-soft);color:#9b6024}.order-status.confirmed{background:var(--blue-soft);color:var(--blue)}.order-status.completed{background:var(--green-soft);color:var(--green)}.order-status.cancelled,.order-status.voided{background:var(--red-soft);color:var(--red)}.transaction-table tr.status-cancelled,.transaction-table tr.status-voided{opacity:.58}.customer-cell strong small{display:block;font-weight:400;color:var(--muted);font-size:.49rem;margin-top:2px}.row-actions a{width:31px;height:31px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--green);font-size:.62rem;display:grid;place-items:center}.settle-total{display:flex;align-items:center;justify-content:space-between;background:var(--green-soft);border-radius:13px;padding:13px;margin-bottom:15px}.settle-total span{font-size:.61rem;color:var(--green-dark)}.settle-total strong{font-family:"Segoe UI",system-ui,sans-serif;color:var(--green);font-size:1rem}

/* Pending order queue */
.pending-hero{min-height:118px;padding:24px 27px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(120deg,#fff,#f4fbf7);overflow:hidden}.pending-hero h2,.tables-hero h2,.emenu-admin-hero h2,.platform-settings-hero h2{font-family:"Segoe UI",system-ui,sans-serif;font-size:1.55rem;letter-spacing:-.05em;margin:8px 0 5px}.pending-hero p,.tables-hero p,.emenu-admin-hero p,.platform-settings-hero p{font-size:.66rem;color:var(--muted);margin:0;max-width:720px;line-height:1.5}.pending-live{display:flex;align-items:center;gap:10px;border:1px solid #cfe5d8;background:#fff;border-radius:14px;padding:10px 13px;box-shadow:var(--shadow-sm)}.pending-live>span{width:9px;height:9px;border-radius:50%;background:#34b676;box-shadow:0 0 0 5px rgba(52,182,118,.12);animation:livePulse 1.7s infinite}.pending-live div{display:flex;flex-direction:column}.pending-live strong{font-size:.61rem}.pending-live small{font-size:.49rem;color:var(--muted);margin-top:2px}@keyframes livePulse{50%{box-shadow:0 0 0 8px rgba(52,182,118,0)}}.pending-metrics,.table-management-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin:14px 0}.pending-metrics article,.table-management-metrics article{min-height:79px;border:1px solid var(--line);background:#fff;border-radius:15px;padding:12px 14px;display:flex;align-items:center;gap:11px;box-shadow:0 6px 18px rgba(21,42,32,.04)}.pending-metrics article>div,.table-management-metrics article>div{display:flex;flex-direction:column}.pending-metrics small,.table-management-metrics small{font-size:.5rem;color:var(--muted)}.pending-metrics strong,.table-management-metrics strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.95rem;margin:3px 0}.pending-metrics em{font-size:.45rem;color:#95a199;font-style:normal}.metric-icon.amber,.table-management-metrics .amber{background:var(--orange-soft);color:var(--orange)}.metric-icon.blue{background:var(--blue-soft);color:var(--blue)}.metric-icon.green,.table-management-metrics .green{background:var(--green-soft);color:var(--green)}.metric-icon.purple,.table-management-metrics .purple{background:var(--purple-soft);color:var(--purple)}.pending-board,.tables-panel{overflow:hidden}.pending-toolbar{display:flex;align-items:center;gap:8px}.pending-order-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:15px;min-height:170px}.pending-order-card{border:1px solid var(--line);border-radius:16px;background:#fff;padding:14px;box-shadow:0 5px 15px rgba(21,42,32,.04);position:relative;overflow:hidden}.pending-order-card.from-emenu:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--purple)}.pending-card-head,.pending-card-head>div{display:flex;align-items:center;justify-content:space-between;gap:5px}.pending-card-head>strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.62rem;color:var(--muted)}.source-badge{display:inline-flex;align-items:center;gap:4px;border-radius:6px;padding:4px 6px;font-size:.43rem;font-weight:900;letter-spacing:.07em;background:#e8eeea;color:#64766d}.source-badge.e_menu{background:var(--purple-soft);color:var(--purple)}.pending-customer{display:flex;align-items:center;gap:10px;margin:14px 0}.pending-customer>span{width:41px;height:41px;border-radius:13px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-family:"Segoe UI",system-ui,sans-serif}.pending-customer h4{font-family:"Segoe UI",system-ui,sans-serif;font-size:.72rem;margin:0}.pending-customer p{font-size:.52rem;color:var(--muted);margin:4px 0 0}.pending-note{min-height:35px;padding:8px 9px;border-radius:9px;background:#fff8ed;color:#8d6938;font-size:.5rem;line-height:1.35}.pending-note i{margin-right:6px}.pending-card-total{display:flex;align-items:end;justify-content:space-between;border-top:1px dashed var(--line);padding-top:11px;margin-top:11px}.pending-card-total span{font-size:.51rem;color:var(--muted)}.pending-card-total strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.82rem;color:var(--green)}.pending-card-actions{display:grid;grid-template-columns:repeat(4,auto);gap:5px;margin-top:11px}.pending-card-actions button{height:33px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink-soft);font-size:.49rem;font-weight:800}.pending-card-actions button:hover{border-color:#a9cdb9;background:var(--green-soft);color:var(--green)}.pending-card-actions button.pay{background:var(--green);border-color:var(--green);color:#fff}.pending-card-actions button.danger{width:33px;color:var(--red)}.pending-empty{grid-column:1/-1;min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.pending-empty>span{width:56px;height:56px;border-radius:18px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-size:1.1rem}.pending-empty strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.78rem;margin:12px 0 4px}.pending-empty p{font-size:.56rem;color:var(--muted);margin:0}.pending-detail-items>div{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line-soft)}.pending-detail-items span{display:flex;flex-direction:column}.pending-detail-items strong{font-size:.65rem}.pending-detail-items small{font-size:.52rem;color:var(--muted);margin-top:3px}.pending-detail-items b{font-size:.61rem}.pending-detail-total{display:flex;justify-content:space-between;padding:13px 0}.pending-detail-total span{font-size:.62rem;color:var(--muted)}.pending-detail-total strong{font-family:"Segoe UI",system-ui,sans-serif;color:var(--green)}

/* Table and QR manager */
.tables-hero,.emenu-admin-hero{min-height:135px;border-radius:21px;padding:25px 27px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#fff;background:linear-gradient(120deg,#102b20,#1b5c40);position:relative;overflow:hidden;box-shadow:0 18px 38px rgba(18,64,43,.14)}.tables-hero:after,.emenu-admin-hero:after{content:"";position:absolute;width:220px;height:220px;right:-65px;top:-110px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:inset 0 0 0 45px rgba(255,255,255,.02)}.tables-hero>div,.emenu-admin-hero>div{position:relative;z-index:1}.tables-hero .section-kicker,.emenu-admin-hero .section-kicker{color:var(--mint)}.tables-hero p,.emenu-admin-hero p{color:#91ad9f}.tables-hero .btn-secondary-cf,.emenu-admin-hero .btn-secondary-cf{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.15)}.table-management-metrics article>span{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue)}.table-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:16px;min-height:190px}.table-admin-card{border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,#fff,#fbfdfc);padding:15px;box-shadow:0 7px 18px rgba(21,42,32,.045);transition:.2s}.table-admin-card:hover{transform:translateY(-2px);box-shadow:0 12px 25px rgba(21,42,32,.08)}.table-admin-card.inactive{opacity:.58}.table-card-top{display:flex;align-items:center;justify-content:space-between}.table-number{width:44px;height:44px;border-radius:14px;background:var(--green);color:#fff;display:grid;place-items:center;font-family:"Segoe UI",system-ui,sans-serif;font-size:.85rem}.table-state{font-size:.44rem;font-weight:900;letter-spacing:.07em;color:var(--muted)}.table-state i{font-size:.4rem;margin-right:5px}.table-state.active{color:var(--green)}.table-qr-mini{height:78px;border-radius:14px;background:linear-gradient(135deg,#f0f6f2,#e8f1ec);margin:13px 0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:var(--green)}.table-qr-mini i{font-size:1.7rem}.table-qr-mini span{font-size:.49rem;color:var(--muted)}.table-qr-mini b{color:var(--orange)}.table-card-copy h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:.78rem;margin:0}.table-card-copy p{font-size:.5rem;color:var(--muted);margin:5px 0 12px}.table-card-copy p i{margin-right:4px;color:var(--green)}.table-card-copy p span{margin:0 5px}.table-card-actions{display:grid;grid-template-columns:1fr repeat(3,34px);gap:5px}.table-card-actions button{height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted);font-size:.51rem}.table-card-actions button.primary{color:#fff;background:var(--green);border-color:var(--green);font-weight:800}.table-empty{min-height:190px}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:0 11px}

/* E-Menu settings and phone preview */
.emenu-admin-actions{display:flex;gap:8px}.plan-status-banner{min-height:67px;margin:13px 0;border:1px solid #f0d4a8;border-radius:15px;background:#fff8ed;display:flex;align-items:center;gap:11px;padding:11px 15px}.plan-status-banner>span{width:37px;height:37px;border-radius:11px;background:#fff;color:var(--orange);display:grid;place-items:center}.plan-status-banner>div{display:flex;flex-direction:column;flex:1}.plan-status-banner strong{font-size:.64rem}.plan-status-banner p{font-size:.51rem;color:#8c7458;margin:3px 0 0}.plan-status-banner>b{font-size:.55rem;color:var(--orange);letter-spacing:.07em}.emenu-settings-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:15px;margin-top:15px;align-items:start}.operations-form{padding:19px}.operations-form>.panel-heading:first-child{padding:0 0 14px}.bookkeeping-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.bookkeeping-card{cursor:pointer}.bookkeeping-card input{display:none}.bookkeeping-card span{min-height:91px;border:1px solid var(--line);border-radius:14px;padding:12px;display:grid;grid-template-columns:35px 1fr;column-gap:9px}.bookkeeping-card span>i{grid-row:1/3;width:34px;height:34px;border-radius:10px;background:var(--canvas);color:var(--muted);display:grid;place-items:center}.bookkeeping-card strong{font-size:.63rem}.bookkeeping-card small{font-size:.5rem;color:var(--muted);line-height:1.45}.bookkeeping-card input:checked+span{border-color:#94c7aa;background:var(--green-soft);box-shadow:inset 0 0 0 1px rgba(31,118,84,.08)}.bookkeeping-card input:checked+span>i{background:#fff;color:var(--green)}.business-date-control{margin-top:10px;border:1px solid #cce1d4;background:#f5fbf7;border-radius:14px;padding:11px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.business-date-control>div:first-child p{font-size:.5rem;color:var(--muted);margin:3px 0 0}.business-date-control .field-label{margin:0}.business-date-control .field-wrap{width:165px;height:40px}.business-date-control.automatic{opacity:.55}.emenu-preview-column{display:grid;gap:14px}.emenu-readiness{padding:16px}.readiness-score{width:43px;height:43px;border-radius:13px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-family:"Segoe UI",system-ui,sans-serif;font-size:.66rem}.readiness-list{display:grid;gap:9px}.readiness-list>div{display:grid;grid-template-columns:32px 1fr;align-items:center;gap:9px;padding:9px;border:1px solid var(--line-soft);border-radius:11px}.readiness-list>div>i{width:31px;height:31px;border-radius:9px;background:var(--canvas);color:var(--muted);display:grid;place-items:center}.readiness-list>div.done>i{background:var(--green-soft);color:var(--green)}.readiness-list span{display:flex;flex-direction:column}.readiness-list strong{font-size:.59rem}.readiness-list small{font-size:.48rem;color:var(--muted);margin-top:2px}.phone-preview-shell{width:min(310px,100%);min-height:550px;margin:auto;border:8px solid #14241c;border-radius:35px;background:#f5f8f6;box-shadow:0 23px 50px rgba(11,32,20,.2);overflow:hidden}.phone-preview-top{height:37px;background:#10271d;color:#dceae2;display:flex;align-items:center;justify-content:space-between;padding:0 15px;font-size:.48rem}.phone-preview-top>span{width:40px;height:8px;border-radius:5px;background:#07120d}.phone-emenu-hero{padding:19px 16px;background:linear-gradient(135deg,#133b2c,#257551);color:#fff}.phone-emenu-hero>small{font-size:.45rem;color:#8bd8aa}.phone-emenu-hero h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:1rem;margin:8px 0 4px}.phone-emenu-hero p{font-size:.5rem;color:#b8cec2;line-height:1.45;min-height:30px}.phone-emenu-hero span{display:inline-flex;gap:5px;border-radius:999px;background:rgba(255,255,255,.1);padding:5px 8px;font-size:.46rem}.phone-category-row{display:flex;gap:6px;padding:10px;overflow:hidden}.phone-category-row>*{white-space:nowrap;border-radius:999px;background:#fff;padding:5px 8px;font-size:.43rem}.phone-category-row b{background:var(--green);color:#fff}.phone-menu-list{padding:0 10px;display:grid;gap:7px}.phone-menu-list>div{min-height:61px;background:#fff;border-radius:11px;padding:7px;display:grid;grid-template-columns:47px 1fr 25px;gap:8px;align-items:center}.phone-menu-list img,.phone-menu-list>div>span{width:47px;height:47px;border-radius:9px;object-fit:cover;background:var(--green-soft);color:var(--green);display:grid;place-items:center}.phone-menu-list p{display:flex;flex-direction:column;margin:0;min-width:0}.phone-menu-list strong{font-size:.49rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phone-menu-list small{font-size:.45rem;color:var(--green);margin-top:4px}.phone-menu-list>div>i{width:24px;height:24px;border-radius:7px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-size:.45rem}.phone-cart-bar{margin:12px 10px;background:#153d2f;color:#fff;border-radius:11px;padding:9px;display:flex;align-items:center;justify-content:space-between}.phone-cart-bar span{display:flex;flex-direction:column}.phone-cart-bar small{font-size:.4rem;color:#92b1a2}.phone-cart-bar strong{font-size:.57rem}.phone-cart-bar b{font-size:.48rem}

/* Platform WhatsApp settings */
.platform-settings-hero{min-height:135px;padding:25px 27px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;background:linear-gradient(125deg,#fff,#edfaf3)}.whatsapp-orb{width:82px;height:82px;border-radius:27px;background:#dff8e9;color:#17a45d;display:grid;place-items:center;font-size:2rem;transform:rotate(5deg);box-shadow:0 16px 28px rgba(23,164,93,.14)}.platform-settings-grid{display:grid;grid-template-columns:minmax(340px,.85fr) minmax(0,1.15fr);gap:15px;margin-top:15px;align-items:start}.platform-whatsapp-form{padding:19px}.platform-whatsapp-form>.panel-heading{padding:0 0 15px}.platform-whatsapp-form .field-wrap.large{height:50px}.platform-whatsapp-form .info-callout{margin-top:10px}.platform-notification-roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.platform-notification-roadmap article{min-height:245px;padding:18px;display:flex;flex-direction:column;position:relative;overflow:hidden}.roadmap-index{font-family:"Segoe UI",system-ui,sans-serif;font-size:2.4rem;line-height:1;color:#e7eeea;position:absolute;right:12px;top:10px}.platform-notification-roadmap article>i{width:42px;height:42px;border-radius:13px;background:var(--green-soft);color:var(--green);display:grid;place-items:center}.platform-notification-roadmap h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:.76rem;margin:18px 0 6px}.platform-notification-roadmap p{font-size:.52rem;color:var(--muted);line-height:1.55;margin:0}.roadmap-status{width:max-content;margin-top:auto;border-radius:6px;padding:5px 7px;font-size:.44rem;letter-spacing:.08em}.roadmap-status.ready{background:var(--green-soft);color:var(--green)}.roadmap-status.future{background:var(--canvas-2);color:var(--muted)}

@media(max-width:1280px){.dashboard-order-hub{grid-template-columns:1fr 1fr}.pending-order-grid,.table-card-grid{grid-template-columns:1fr 1fr}.platform-settings-grid{grid-template-columns:1fr}.platform-notification-roadmap article{min-height:190px}}
@media(max-width:960px){.emenu-settings-grid{grid-template-columns:1fr}.phone-preview-shell{margin-top:4px}.pending-metrics,.table-management-metrics{grid-template-columns:1fr 1fr}.pending-hero,.tables-hero,.emenu-admin-hero{align-items:flex-start;flex-direction:column}.pending-toolbar{width:100%}.panel-heading{align-items:flex-start;flex-direction:column}.panel-heading .search-field{width:100%}.platform-notification-roadmap{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.dashboard-order-hub{grid-template-columns:1fr}.overview-actions{grid-template-columns:1fr}.pending-hero,.tables-hero,.emenu-admin-hero,.platform-settings-hero{padding:20px}.pending-hero h2,.tables-hero h2,.emenu-admin-hero h2,.platform-settings-hero h2{font-size:1.25rem}.pending-live{width:100%}.pending-metrics,.table-management-metrics{grid-template-columns:1fr 1fr}.pending-order-grid,.table-card-grid{grid-template-columns:1fr;padding:10px}.pending-toolbar{align-items:stretch;flex-direction:column}.pending-toolbar .search-field{width:100%}.pending-card-actions{grid-template-columns:1fr 1fr 1fr 34px}.emenu-admin-actions,.tables-hero .intro-actions{width:100%;display:grid;grid-template-columns:1fr}.bookkeeping-options{grid-template-columns:1fr}.business-date-control{align-items:stretch;flex-direction:column}.business-date-control .field-wrap{width:100%}.platform-settings-hero .whatsapp-orb{display:none}.platform-notification-roadmap{grid-template-columns:1fr}.platform-notification-roadmap article{min-height:170px}.checkout-actions.split{grid-template-columns:40px 1fr}.checkout-actions.split .pay-button{grid-column:1/-1}.form-grid-2{grid-template-columns:1fr}}
@media(max-width:440px){.pending-metrics,.table-management-metrics{grid-template-columns:1fr 1fr;gap:7px}.pending-metrics article,.table-management-metrics article{padding:9px;min-height:70px}.pending-metrics .metric-icon,.table-management-metrics article>span{display:none}.table-card-actions{grid-template-columns:1fr repeat(3,32px)}.plan-status-banner>b{display:none}.phone-preview-shell{width:100%;border-width:5px}.platform-settings-hero{display:block}}

/* Local Print Agent and device routing */
.device-hero{min-height:205px;border-radius:23px;padding:30px 34px;color:#fff;background:radial-gradient(circle at 82% 20%,rgba(88,218,154,.17),transparent 30%),linear-gradient(120deg,#0a2017,#123b2a 57%,#164d36);display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative;box-shadow:0 22px 46px rgba(12,54,35,.18)}.device-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(90deg,transparent,#000)}.device-hero-copy{position:relative;z-index:1;max-width:720px}.device-hero .section-kicker{color:#75dda4}.device-hero h2{font-family:"Segoe UI",system-ui,sans-serif;font-size:2.1rem;letter-spacing:-.055em;margin:12px 0 8px}.device-hero p{max-width:650px;color:#a9c6b7;font-size:.68rem;line-height:1.65;margin:0}.device-hero-pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.device-hero-pills span{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(255,255,255,.06);padding:7px 10px;color:#c8ddd2;font-size:.5rem;font-weight:700}.device-hero-pills i{color:#76dda5}.device-signal-art{width:190px;height:150px;position:relative;display:grid;place-items:center;flex:0 0 190px;z-index:1}.device-signal-art span{position:relative;z-index:4;width:72px;height:72px;border-radius:23px;background:linear-gradient(145deg,#63d394,#31a969);color:#08271a;display:grid;place-items:center;font-size:1.55rem;box-shadow:0 18px 35px rgba(42,211,119,.2)}.device-signal-art span:after{content:"9100";position:absolute;bottom:-11px;border-radius:999px;background:#eafff1;padding:4px 8px;font-family:"Segoe UI",system-ui,sans-serif;font-size:.43rem}.device-signal-art>i{position:absolute;border:1px solid rgba(101,219,153,.2);border-radius:50%;animation:deviceSignal 2.8s infinite}.device-signal-art>i:nth-of-type(1){width:105px;height:105px}.device-signal-art>i:nth-of-type(2){width:145px;height:145px;animation-delay:.45s}.device-signal-art>i:nth-of-type(3){width:188px;height:188px;animation-delay:.9s}@keyframes deviceSignal{50%{border-color:rgba(101,219,153,.55);transform:scale(1.04)}}
.device-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin:14px 0}.device-metrics article{min-height:84px;border:1px solid var(--line);border-radius:16px;background:#fff;padding:13px 15px;display:flex;align-items:center;gap:11px;box-shadow:0 7px 20px rgba(21,42,32,.045)}.device-metric-icon{width:41px;height:41px;border-radius:13px;display:grid;place-items:center}.device-metric-icon.green{color:var(--green);background:var(--green-soft)}.device-metric-icon.blue{color:var(--blue);background:var(--blue-soft)}.device-metric-icon.amber{color:var(--orange);background:var(--orange-soft)}.device-metric-icon.purple{color:var(--purple);background:var(--purple-soft)}.device-metrics article>div{display:flex;flex-direction:column}.device-metrics small{font-size:.49rem;color:var(--muted)}.device-metrics strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:1rem;line-height:1;margin:4px 0}.device-metrics em{font-size:.44rem;color:#97a39c;font-style:normal}.device-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:14px;align-items:start}.device-main-column,.device-side-column{display:grid;gap:14px}.device-agent-panel,.discovery-panel,.configured-printers{overflow:hidden}.device-agent-panel .panel-heading p,.discovery-panel .panel-heading p,.configured-printers .panel-heading p{font-size:.51rem;color:var(--muted);margin:4px 0 0}.agent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:15px}.agent-card{min-height:190px;border:1px solid var(--line);border-radius:17px;padding:15px;background:linear-gradient(145deg,#fff,#fafcfb);position:relative;overflow:hidden}.agent-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#b5c1bb}.agent-card.online:before{background:#43bd79}.agent-card-top{display:flex;align-items:center;justify-content:space-between}.agent-machine{width:40px;height:40px;border-radius:12px;background:var(--canvas);color:var(--muted);display:grid;place-items:center;position:relative}.agent-card.online .agent-machine{background:var(--green-soft);color:var(--green)}.agent-machine b{position:absolute;width:8px;height:8px;border:2px solid #fff;background:#aebbb4;border-radius:50%;right:-1px;bottom:-1px}.agent-card.online .agent-machine b{background:#36b86f}.agent-state{display:flex;align-items:center;gap:5px;font-size:.42rem;font-weight:900;letter-spacing:.08em;color:#8b9991}.agent-state i,.route-health i{width:6px;height:6px;background:#aeb9b3;border-radius:50%}.agent-card.online .agent-state{color:var(--green)}.agent-card.online .agent-state i,.route-health.online i{background:#35b66f;box-shadow:0 0 0 4px rgba(53,182,111,.1)}.agent-card h4{font-family:"Segoe UI",system-ui,sans-serif;font-size:.76rem;margin:13px 0 4px}.agent-card>p{font-size:.48rem;color:var(--muted);margin:0}.agent-card-meta{display:flex;gap:7px;margin-top:10px}.agent-card-meta span{border-radius:7px;background:var(--canvas);padding:5px 7px;font-size:.43rem;color:var(--muted)}.agent-card-meta i{margin-right:4px}.agent-addresses{display:flex;gap:5px;margin-top:10px;min-height:21px;overflow:hidden}.agent-addresses code{border:1px solid var(--line);border-radius:6px;padding:3px 5px;color:var(--green);background:#fff;font-size:.43rem}.agent-addresses em{font-size:.44rem;color:var(--muted);font-style:normal}.agent-card footer{display:flex;align-items:center;justify-content:space-between;margin-top:12px;border-top:1px solid var(--line-soft);padding-top:9px}.agent-card footer>span{font-size:.43rem;color:var(--muted)}.agent-card footer button{width:29px;height:29px;border:0;border-radius:8px;background:#fff1ef;color:var(--red)}
.security-chip{border-radius:999px;padding:6px 9px;background:#eff8f3;color:var(--green);font-size:.45rem;font-weight:800}.security-chip i{margin-right:4px}.discovery-controls{display:grid;grid-template-columns:1fr 1.25fr auto;align-items:end;gap:9px;padding:15px;border-top:1px solid var(--line-soft);background:#fbfdfc}.discovery-controls .field-label{margin-top:0}.scan-button{height:42px;min-width:125px;border:0;border-radius:11px;background:var(--green);color:#fff;font-size:.54rem;font-weight:900;box-shadow:0 8px 17px rgba(31,118,84,.16)}.scan-button b,.scan-button.loading span{display:none}.scan-button.loading b{display:inline}.scan-progress{margin:0 15px 13px;border:1px solid #cce3d5;background:#f4fbf7;border-radius:14px;padding:11px 13px;display:flex;align-items:center;gap:10px}.scan-progress[hidden]{display:none}.scan-progress>span{width:36px;height:36px;border-radius:11px;background:#fff;color:var(--green);display:grid;place-items:center}.scan-progress>div:nth-child(2){display:flex;flex-direction:column;flex:1}.scan-progress strong{font-size:.57rem}.scan-progress small{font-size:.46rem;color:var(--muted);margin-top:3px}.scan-wave{display:flex;align-items:end;gap:3px;height:20px}.scan-wave i{width:3px;height:7px;border-radius:2px;background:#56bf82;animation:scanBar .8s infinite alternate}.scan-wave i:nth-child(2){height:14px;animation-delay:.2s}.scan-wave i:nth-child(3){height:20px;animation-delay:.4s}@keyframes scanBar{to{height:4px;opacity:.4}}.discovery-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 15px 15px}.discovered-printer{min-height:72px;border:1px solid #cde2d5;border-radius:14px;background:#fff;padding:11px;display:grid;grid-template-columns:39px 1fr auto;align-items:center;gap:9px}.discovered-printer>span{width:39px;height:39px;border-radius:12px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;position:relative}.discovered-printer>span b{position:absolute;width:8px;height:8px;border-radius:50%;background:#38b970;border:2px solid #fff;right:1px;bottom:1px}.discovered-printer>div{display:flex;flex-direction:column}.discovered-printer strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.59rem}.discovered-printer small{font-size:.44rem;color:var(--muted);margin-top:4px}.discovered-printer button{height:32px;border:0;border-radius:8px;background:var(--green);color:#fff;padding:0 9px;font-size:.45rem;font-weight:800}.device-empty{grid-column:1/-1;min-height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.device-empty.compact{min-height:115px}.device-empty>span{width:49px;height:49px;border-radius:15px;background:var(--canvas);color:var(--muted);display:grid;place-items:center;font-size:.92rem}.device-empty strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.68rem;margin:10px 0 3px}.device-empty p{font-size:.49rem;color:var(--muted);margin:0;max-width:310px;line-height:1.45}
.printer-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:15px}.printer-route-card{border:1px solid var(--line);border-radius:17px;background:#fff;padding:14px;box-shadow:0 5px 16px rgba(21,42,32,.035)}.printer-route-card.inactive{opacity:.56}.printer-card-head{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:9px}.printer-role-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--orange-soft);color:var(--orange)}.printer-role-icon.checker{background:var(--purple-soft);color:var(--purple)}.printer-card-head>div{min-width:0}.route-role{display:block;font-size:.39rem;font-weight:900;letter-spacing:.09em;color:var(--orange);text-transform:uppercase}.route-role.checker{color:var(--purple)}.printer-card-head h4{font-family:"Segoe UI",system-ui,sans-serif;font-size:.67rem;margin:3px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.route-health{display:flex;align-items:center;gap:5px;font-size:.39rem;font-weight:900;color:#9aa69f}.route-health.online{color:var(--green)}.printer-address{min-height:39px;border-radius:10px;background:var(--canvas);margin-top:12px;padding:8px 9px;display:flex;align-items:center;gap:6px}.printer-address>i{color:var(--green)}.printer-address code{font-size:.5rem;color:var(--ink);font-weight:800}.printer-address span{margin-left:auto;font-size:.43rem;color:var(--muted)}.route-categories{min-height:49px;display:flex;align-content:flex-start;flex-wrap:wrap;gap:5px;padding:9px 0}.route-categories span{border-radius:999px;background:var(--purple-soft);color:var(--purple);padding:5px 7px;font-size:.41rem;font-weight:800}.route-categories span.all{background:var(--canvas);color:var(--muted)}.cashier-route-note{min-height:49px;display:flex;align-items:center;color:var(--muted);font-size:.46rem}.cashier-route-note i{color:var(--green);margin-right:6px}.printer-route-card footer{border-top:1px solid var(--line-soft);padding-top:9px;display:flex;align-items:center;justify-content:space-between}.printer-route-card footer>span{font-size:.43rem;color:var(--muted)}.printer-route-card footer>span i{margin-right:5px}.printer-route-card footer>div{display:flex;gap:4px}.printer-route-card footer button{width:29px;height:29px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted)}.printer-route-card footer button:hover{background:var(--green-soft);color:var(--green)}.printer-route-card footer button.danger{color:var(--red)}
.device-side-column{position:sticky;top:84px}.device-flow-card{padding:18px}.device-flow-card h3,.recent-print-jobs h3{font-family:"Segoe UI",system-ui,sans-serif;font-size:.75rem;margin:7px 0 14px}.device-flow-card ol{list-style:none;padding:0;margin:0;display:grid;gap:11px}.device-flow-card li{display:grid;grid-template-columns:30px 1fr;gap:9px;position:relative}.device-flow-card li:not(:last-child):after{content:"";position:absolute;left:14px;top:31px;height:14px;border-left:1px dashed #bdd2c5}.device-flow-card li>span{width:29px;height:29px;border-radius:9px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-family:"Segoe UI",system-ui,sans-serif;font-size:.5rem}.device-flow-card li>div{display:flex;flex-direction:column}.device-flow-card strong{font-size:.56rem}.device-flow-card small{font-size:.45rem;color:var(--muted);line-height:1.45;margin-top:3px}.bluetooth-note{padding:15px;display:flex;gap:10px;background:linear-gradient(135deg,#f5f2ff,#fff)}.bluetooth-note>span{width:39px;height:39px;flex:0 0 39px;border-radius:12px;background:#e8e1ff;color:#6850c8;display:grid;place-items:center}.bluetooth-note strong{font-size:.58rem}.bluetooth-note p{font-size:.45rem;color:var(--muted);line-height:1.5;margin:4px 0 7px}.bluetooth-note a{font-size:.45rem;color:#6850c8;font-weight:800}.side-panel-heading{padding:15px 15px 4px;display:flex;align-items:center;justify-content:space-between}.side-panel-heading h3{margin-bottom:0}.side-panel-heading button{width:30px;height:30px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted)}.job-list{padding:9px 13px 14px}.job-row{min-height:53px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;border-bottom:1px solid var(--line-soft)}.job-row:last-child{border:0}.job-state{width:29px;height:29px;border-radius:9px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;font-size:.45rem}.job-state.printed{background:var(--green-soft);color:var(--green)}.job-state.failed{background:#fff0ed;color:var(--red)}.job-state.cancelled{background:var(--canvas);color:var(--muted)}.job-row>div{display:flex;flex-direction:column;min-width:0}.job-row strong{font-size:.52rem}.job-row small{font-size:.41rem;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.job-row>b{border-radius:6px;padding:4px 5px;background:var(--blue-soft);color:var(--blue);font-size:.38rem}.job-row>b.printed{background:var(--green-soft);color:var(--green)}.job-row>b.failed{background:#fff0ed;color:var(--red)}.job-row>b.cancelled{background:var(--canvas);color:var(--muted)}.job-empty{min-height:95px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);gap:7px;font-size:.47rem}.job-empty i{font-size:1rem;color:#b4c0ba}
.pairing-modal .modal-dialog{max-width:690px}.pairing-body{padding:20px 23px}.pairing-steps{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;margin-bottom:18px}.pairing-steps>div{display:flex;align-items:center;gap:6px;color:#a1aca6}.pairing-steps>div span{width:24px;height:24px;border-radius:8px;background:var(--canvas);display:grid;place-items:center;font-family:"Segoe UI",system-ui,sans-serif;font-size:.45rem}.pairing-steps>div strong{font-size:.48rem}.pairing-steps>div.active{color:var(--green)}.pairing-steps>div.active span{background:var(--green);color:#fff}.pairing-steps>i{height:1px;background:var(--line);margin:0 8px}.pair-name-row{display:grid;grid-template-columns:1fr auto;gap:8px}.pair-name-row .btn-primary-cf{min-width:105px}.pairing-result{margin-top:17px;border-top:1px solid var(--line);padding-top:16px}.pairing-result[hidden]{display:none}.pairing-code-card{border:1px solid #b9dbc7;border-radius:15px;background:linear-gradient(145deg,#f4fbf7,#eaf7ef);padding:14px;display:grid;grid-template-columns:1fr auto;align-items:center}.pairing-code-card small{grid-column:1/-1;font-size:.41rem;letter-spacing:.1em;color:var(--green);font-weight:900}.pairing-code-card strong{font-family:monospace;font-size:1.15rem;letter-spacing:.08em;margin-top:7px}.pairing-code-card button{border:0;border-radius:8px;background:#fff;color:var(--green);padding:7px 9px;font-size:.45rem;font-weight:800}.agent-install-tabs{display:flex;gap:6px;margin-top:13px}.agent-install-tabs button{height:31px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);padding:0 10px;font-size:.45rem;font-weight:800}.agent-install-tabs button.active{border-color:#9fcab0;background:var(--green-soft);color:var(--green)}.install-command{position:relative;margin-top:7px;border-radius:12px;background:#12271e;padding:11px 42px 11px 12px;color:#d6e8de;display:flex;flex-direction:column}.install-command span{font-size:.42rem;color:#8da99a;margin-bottom:6px}.install-command code{color:#a9e6c1;font-size:.48rem;white-space:normal;word-break:break-all}.install-command button{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:29px;height:29px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(255,255,255,.06);color:#d5e9df}.pairing-result .info-callout{margin-top:10px}
.printer-form-body{display:grid;gap:10px}.printer-form-body .field-label{margin-top:0}.locked-field{opacity:.72}.printer-role-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.printer-role-options input{display:none}.printer-role-options span{min-height:68px;border:1px solid var(--line);border-radius:12px;padding:10px;display:grid;grid-template-columns:32px 1fr;column-gap:8px;cursor:pointer}.printer-role-options span>i{grid-row:1/3;width:31px;height:31px;border-radius:9px;background:var(--canvas);color:var(--muted);display:grid;place-items:center}.printer-role-options b{font-size:.57rem}.printer-role-options small{font-size:.43rem;color:var(--muted);margin-top:2px}.printer-role-options input:checked+span{border-color:#9bc9ae;background:var(--green-soft)}.printer-role-options input:checked+span>i{background:#fff;color:var(--green)}.checker-category-field[hidden]{display:none}.checker-category-field .field-label{display:flex;justify-content:space-between}.checker-category-field .field-label em{font-size:.4rem;color:var(--purple);font-style:normal}.tag-editor{min-height:44px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:5px 7px;display:flex;align-items:center;flex-wrap:wrap;gap:5px}.tag-editor:focus-within{border-color:#93c5a8;box-shadow:0 0 0 3px rgba(31,118,84,.07)}.tag-editor>div{display:contents}.tag-editor span{height:28px;border-radius:8px;background:var(--purple-soft);color:var(--purple);display:flex;align-items:center;gap:5px;padding:0 5px 0 8px;font-size:.45rem;font-weight:800}.tag-editor span button{width:18px;height:18px;border:0;border-radius:5px;background:rgba(104,80,200,.1);color:var(--purple);padding:0;font-size:.4rem}.tag-editor input{height:29px;border:0;outline:0;flex:1;min-width:150px;font-size:.52rem;background:transparent}.field-help{display:block;font-size:.42rem;color:var(--muted);margin-top:4px}.switch-row{min-height:52px;border:1px solid var(--line);border-radius:12px;padding:9px 11px;display:flex;align-items:center;cursor:pointer}.switch-row>span{display:flex;flex-direction:column;flex:1}.switch-row strong{font-size:.55rem}.switch-row small{font-size:.43rem;color:var(--muted);margin-top:2px}.switch-row input{display:none}.switch-row>i{width:35px;height:20px;border-radius:999px;background:#c6cfca;position:relative}.switch-row>i:after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:#fff;left:3px;top:3px;transition:.2s}.switch-row input:checked+i{background:var(--green)}.switch-row input:checked+i:after{left:18px}
@media(max-width:1280px){.device-layout{grid-template-columns:minmax(0,1fr) 285px}.device-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1040px){.device-layout{grid-template-columns:1fr}.device-side-column{position:static;grid-template-columns:1fr 1fr}.recent-print-jobs{grid-column:1/-1}.job-list{display:grid;grid-template-columns:1fr 1fr;column-gap:15px}.agent-grid,.printer-route-grid,.discovery-results{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.device-hero{padding:23px;min-height:190px}.device-hero h2{font-size:1.55rem}.device-signal-art{display:none}.device-metrics{grid-template-columns:1fr 1fr}.device-layout{gap:11px}.agent-grid,.printer-route-grid,.discovery-results{grid-template-columns:1fr}.discovery-controls{grid-template-columns:1fr}.scan-button{width:100%}.device-side-column{grid-template-columns:1fr}.recent-print-jobs{grid-column:auto}.job-list{display:block}.pairing-code-card{grid-template-columns:1fr}.pairing-code-card button{margin-top:8px}.pairing-steps>div strong{display:none}}
@media(max-width:440px){.device-hero-pills span:nth-child(2){display:none}.device-metrics{gap:7px}.device-metrics article{min-height:72px;padding:9px}.device-metric-icon{display:none}.device-agent-panel .panel-heading .btn-primary-cf,.configured-printers .panel-heading .btn-secondary-cf{width:100%}.printer-card-head{grid-template-columns:37px 1fr}.route-health{grid-column:2}.form-grid-2,.printer-role-options{grid-template-columns:1fr}.pair-name-row{grid-template-columns:1fr}.pair-name-row .btn-primary-cf{width:100%}}
/* Receipt Studio v2.6.2: visualise the exact canonical ESC/POS receipt lines. */
.receipt-render-lines{font-family:"Courier New",Courier,monospace;font-variant-ligatures:none;width:100%}
.receipt-render-line{white-space:pre;line-height:1.34;min-height:1.34em;width:100%;overflow:hidden;font-size:9px;font-weight:400}
.receipt-render-line.align-center{text-align:center}.receipt-render-line.align-left{text-align:left}.receipt-render-line.bold{font-weight:900}
.receipt-paper.wide .receipt-render-line{font-size:9px}.receipt-paper.compact .receipt-render-line{line-height:1.25;min-height:1.25em}
.receipt-preview-note{margin:12px 4px 0;color:#bcd0c5;font-size:.53rem;line-height:1.45;display:flex;gap:7px;align-items:flex-start}.receipt-preview-note i{color:var(--mint);margin-top:2px}

/* 1.1.0 Hotfix 2: visual dining-table floor plan */
.table-layout-panel{overflow:hidden;margin-bottom:14px}.table-layout-heading{align-items:flex-start}.table-layout-heading p{font-size:.55rem;color:var(--muted);margin:5px 0 0}.table-layout-actions{display:flex;gap:8px}.table-layout-area-tabs{display:flex;gap:7px;overflow-x:auto;padding:0 16px 12px;scrollbar-width:thin}.table-layout-area-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;display:inline-flex;align-items:center;gap:7px;font-size:.52rem;font-weight:850;color:var(--ink-soft);white-space:nowrap}.table-layout-area-tabs button b{min-width:19px;height:19px;border-radius:999px;display:grid;place-items:center;background:#eef3f0;font-size:.44rem}.table-layout-area-tabs button.active{background:var(--green);border-color:var(--green);color:#fff}.table-layout-area-tabs button.active b{background:rgba(255,255,255,.16)}.table-layout-workspace{position:relative;margin:0 16px 16px;min-height:420px;border:1px solid #dfe8e3;border-radius:19px;overflow:hidden;background-color:#f8fbf9;background-image:linear-gradient(#eaf0ed 1px,transparent 1px),linear-gradient(90deg,#eaf0ed 1px,transparent 1px);background-size:24px 24px}.table-layout-canvas{position:absolute;inset:0;touch-action:none;user-select:none}.table-layout-object{position:absolute;min-width:54px;min-height:54px;border:2px solid #bdd8c9;border-radius:15px;background:#fff;box-shadow:0 8px 20px rgba(21,42,32,.08);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:7px;color:var(--green);cursor:grab;overflow:hidden;transition:box-shadow .15s,border-color .15s,transform .15s}.table-layout-object strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.8rem;line-height:1}.table-layout-object span{font-size:.48rem;font-weight:800;margin-top:5px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-layout-object small{font-size:.4rem;color:var(--muted);margin-top:3px;white-space:nowrap}.table-layout-object.shape-square{border-radius:12px}.table-layout-object.shape-circle{border-radius:999px}.table-layout-object.occupied{background:#fff7e8;border-color:#f2c67b;color:#a86d13}.table-layout-object.dragging{cursor:grabbing;z-index:30;box-shadow:0 15px 32px rgba(21,42,32,.18);transform:scale(1.025)}.table-layout-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);pointer-events:none}.table-layout-empty>span{width:54px;height:54px;border-radius:17px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-size:1.1rem}.table-layout-empty strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.76rem;color:var(--ink);margin:12px 0 4px}.table-layout-empty p{font-size:.52rem;margin:0}.table-layout-legend{display:flex;align-items:center;gap:14px;padding:0 16px 16px;font-size:.48rem;color:var(--muted)}.table-layout-legend span{display:flex;align-items:center;gap:6px}.table-layout-legend .dot{width:9px;height:9px;border-radius:3px;border:2px solid #bdd8c9;background:#fff}.table-layout-legend .dot.occupied{border-color:#f2c67b;background:#fff7e8}.table-layout-legend small{margin-left:auto;font-size:.46rem}.table-layout-actions .btn-primary-cf.loading span{display:none}.table-layout-actions .btn-primary-cf b{display:none}.table-layout-actions .btn-primary-cf.loading b{display:inline}
@media(max-width:720px){.table-layout-heading{gap:12px}.table-layout-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.table-layout-workspace{min-height:360px;margin:0 10px 12px}.table-layout-area-tabs{padding-left:10px;padding-right:10px}.table-layout-legend{padding:0 10px 12px;flex-wrap:wrap}.table-layout-legend small{width:100%;margin-left:0}}

/* Hotfix 13: vehicle-group transaction history + loyalty drilldown */
.vehicle-group-row{cursor:pointer;transition:background .15s ease}.vehicle-group-row:hover{background:#f8fbf9}.vehicle-plate-cell,.customer-cell strong{display:flex;flex-direction:column;gap:3px}.vehicle-plate-cell strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.76rem;letter-spacing:.04em}.vehicle-plate-cell small,.vehicle-sub{display:block;font-size:.48rem;color:var(--muted);font-weight:600;margin-top:3px}.vehicle-open{min-height:31px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--green);padding:0 10px;font-size:.5rem;font-weight:850;display:inline-flex;align-items:center;gap:6px}.vehicle-open:hover{background:var(--green-soft);border-color:#a8d0ba}.vehicle-history-modal .modal-dialog{max-width:920px}.vehicle-history-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}.vehicle-history-summary article{border:1px solid var(--line);background:#fff;border-radius:13px;padding:12px;display:flex;flex-direction:column;gap:4px}.vehicle-history-summary span{font-size:.48rem;color:var(--muted);font-weight:750}.vehicle-history-summary strong{font-family:"Segoe UI",system-ui,sans-serif;font-size:.85rem}.vehicle-history-member{margin-bottom:12px}.vehicle-member-badge{border:1px solid #f0d59a;background:#fff8e8;border-radius:13px;padding:10px 12px;display:flex;align-items:center;gap:10px}.vehicle-member-badge>i{width:34px;height:34px;border-radius:10px;background:#ffe8a9;color:#9b6913;display:grid;place-items:center}.vehicle-member-badge>div{display:flex;flex-direction:column}.vehicle-member-badge strong{font-size:.64rem}.vehicle-member-badge span{font-size:.5rem;color:#8b6d34;margin-top:2px}.vehicle-member-badge.neutral{background:var(--canvas);border-color:var(--line)}.vehicle-member-badge.neutral>i{background:#fff;color:var(--muted)}.vehicle-member-badge.neutral span{color:var(--muted)}
@media(max-width:760px){.vehicle-history-summary{grid-template-columns:1fr 1fr}.vehicle-history-modal .modal-dialog{margin:8px}.vehicle-open{padding:0 8px}.vehicle-group-row td:nth-child(4),.vehicle-group-row td:nth-child(5){display:none}}
