:root {
  color-scheme: dark;
  --bg: #080b16;
  --bg-soft: #101528;
  --panel: rgba(18, 23, 42, 0.68);
  --panel-strong: rgba(20, 26, 47, 0.91);
  --panel-light: rgba(255, 255, 255, 0.075);
  --stroke: rgba(255, 255, 255, 0.115);
  --stroke-bright: rgba(255, 255, 255, 0.22);
  --text: #f7f8ff;
  --muted: #9aa4bc;
  --muted-2: #67728b;
  --violet: #8b7cff;
  --violet-2: #6f5cf7;
  --cyan: #55d8ff;
  --mint: #5ee1bb;
  --amber: #ffbe66;
  --danger: #ff6f91;
  --ambient-a: #5c42ff;
  --ambient-b: #00b9e8;
  --ambient-c: #ff4fa2;
  --body-bg:
    radial-gradient(circle at 20% 0%, rgba(104, 79, 255, 0.16), transparent 30%),
    radial-gradient(circle at 95% 15%, rgba(42, 190, 255, 0.12), transparent 34%),
    linear-gradient(145deg, #080a13 0%, #0b1020 48%, #080b16 100%);
  --radius-xl: 28px;
  --radius-lg: 22px;
  --radius-md: 16px;
  --shadow: 0 25px 70px rgba(0, 0, 0, 0.36);
  --font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html, body { min-height: 100%; }
body {
  margin: 0;
  min-width: 1180px;
  min-height: 100vh;
  overflow: hidden;
  font-family: var(--font);
  color: var(--text);
  background: var(--body-bg);
  transition: background .35s ease, color .25s ease;
}

button, input { font: inherit; }
button { color: inherit; }
svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.ambient {
  position: fixed;
  border-radius: 999px;
  filter: blur(90px);
  opacity: .35;
  pointer-events: none;
  animation: drift 16s ease-in-out infinite alternate;
  transition: background .35s ease, opacity .35s ease;
}
.ambient-a { width: 340px; height: 340px; background: var(--ambient-a); left: 12%; top: -160px; }
.ambient-b { width: 300px; height: 300px; background: var(--ambient-b); right: -110px; top: 21%; animation-delay: -5s; }
.ambient-c { width: 240px; height: 240px; background: var(--ambient-c); left: 48%; bottom: -180px; opacity: .18; animation-delay: -9s; }
@keyframes drift { to { transform: translate3d(24px, 18px, 0) scale(1.08); } }

.glass-panel {
  background: linear-gradient(145deg, rgba(255,255,255,.095), rgba(255,255,255,.025)), var(--panel);
  border: 1px solid var(--stroke);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), var(--shadow);
  backdrop-filter: blur(24px) saturate(135%);
  -webkit-backdrop-filter: blur(24px) saturate(135%);
  transition: background .3s ease, border-color .3s ease, box-shadow .3s ease;
}

.pos-shell {
  position: relative;
  display: grid;
  grid-template-columns: 86px minmax(650px, 1fr) 388px;
  gap: 18px;
  width: 100%;
  height: 100vh;
  padding: 18px;
  z-index: 1;
}

.sidebar {
  border-radius: var(--radius-xl);
  padding: 15px 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 0;
}
.brand-mark {
  width: 54px; height: 54px;
  position: relative;
  border: 0;
  border-radius: 18px;
  background: linear-gradient(145deg, #9a8cff, #5d4ae5);
  box-shadow: 0 12px 28px rgba(105, 82, 244, .42), inset 0 1px 1px rgba(255,255,255,.5);
  cursor: pointer;
  font-weight: 900;
  font-size: 20px;
  isolation: isolate;
}
.brand-mark::after { content:""; position:absolute; inset:7px; border:1px solid rgba(255,255,255,.4); border-radius:13px; }
.brand-orbit { position:absolute; width:18px; height:18px; border:1px solid rgba(255,255,255,.75); border-radius:50%; left:11px; top:9px; transform:rotate(-20deg); }
.brand-mark span:last-child { position:relative; z-index:1; }
.sidebar-nav { display:flex; flex-direction:column; gap:9px; width:100%; margin-top:36px; }
.nav-button {
  position:relative;
  min-height:56px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  border:1px solid transparent;
  border-radius:18px;
  background:transparent;
  color:var(--muted-2);
  cursor:pointer;
  transition:.22s ease;
}
.nav-button svg { width:21px; height:21px; }
.nav-button span { font-size:10px; font-weight:700; letter-spacing:.02em; }
.nav-button:hover { color:var(--text); background:rgba(255,255,255,.055); transform:translateY(-1px); }
.nav-button.active { color:#fff; background:linear-gradient(145deg, rgba(139,124,255,.28), rgba(96,76,236,.13)); border-color:rgba(151,137,255,.28); box-shadow:inset 0 1px rgba(255,255,255,.1), 0 8px 20px rgba(79,61,204,.17); }
.nav-button.active::before { content:""; position:absolute; left:-11px; width:3px; height:24px; border-radius:5px; background:linear-gradient(var(--cyan),var(--violet)); box-shadow:0 0 13px var(--violet); }
.sidebar-bottom { margin-top:auto; display:flex; flex-direction:column; gap:12px; width:100%; }
.avatar-button { width:48px;height:48px;margin:auto;border:1px solid rgba(255,255,255,.18);border-radius:17px;background:linear-gradient(145deg,#24304d,#151b31);cursor:pointer;position:relative;font-weight:800;font-size:12px; }
.avatar-button i { position:absolute; width:11px;height:11px;border-radius:50%;background:var(--mint);border:2px solid #111728;right:-1px;bottom:1px;box-shadow:0 0 10px rgba(94,225,187,.7); }

.workspace { min-width:0; min-height:0; display:grid; grid-template-rows:82px 92px minmax(0,1fr); gap:14px; }
.topbar { min-width:0; border-radius:var(--radius-xl); padding:13px 16px 13px 22px; display:grid; grid-template-columns:minmax(200px,.75fr) minmax(330px,1.1fr) auto; align-items:center; gap:16px; }
.eyebrow { margin:0 0 4px; font-size:10px; text-transform:uppercase; letter-spacing:.16em; color:var(--muted-2); font-weight:800; }
.welcome-block h1 { margin:0; font-size:21px; line-height:1.15; letter-spacing:-.035em; }
.welcome-block h1 span { color:#b6acff; }
.search-control { height:52px; min-width:0; display:grid; grid-template-columns:20px minmax(0,1fr) auto; align-items:center; gap:10px; padding:0 12px 0 15px; border-radius:19px; border:1px solid rgba(255,255,255,.12); background:rgba(3,6,15,.34); box-shadow:inset 0 1px 1px rgba(255,255,255,.04); transition:.2s ease; }
.search-control:focus-within { border-color:rgba(139,124,255,.6); box-shadow:0 0 0 4px rgba(139,124,255,.1), inset 0 1px rgba(255,255,255,.06); background:rgba(3,6,15,.48); }
.search-control svg { width:20px; height:20px; color:var(--muted); }
.search-control input { width:100%; border:0; outline:0; color:var(--text); background:transparent; min-width:0; font-size:13px; }
.search-control input::placeholder { color:#707b94; }
kbd { border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.055); color:var(--muted); border-radius:7px; padding:4px 7px; font-size:9px; font-weight:800; box-shadow:inset 0 -1px rgba(0,0,0,.25); white-space:nowrap; }
.top-actions { display:flex; gap:9px; }
.icon-button { position:relative; width:45px;height:45px;border:1px solid var(--stroke);border-radius:16px;background:rgba(255,255,255,.055);display:grid;place-items:center;cursor:pointer; }
.icon-button svg { width:19px;height:19px; }
.notification-dot { position:absolute; right:-6px; top:-7px; z-index:4; min-width:20px; height:20px; border-radius:999px; display:grid; place-items:center; padding:0 4px; pointer-events:none; font-style:normal; background:linear-gradient(145deg,#ff7b9b,#f33e70); color:#fff; border:2px solid var(--panel-strong); box-shadow:0 0 0 1px rgba(255,255,255,.16),0 5px 14px rgba(243,62,112,.45); font-size:9px; line-height:1; font-weight:900; }

.liquid { overflow:hidden; isolation:isolate; transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.liquid::before { content:""; position:absolute; z-index:-1; width:70%; height:180%; left:-85%; top:-40%; transform:rotate(20deg); background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent); transition:left .45s ease; }
.liquid:hover { transform:translateY(-1px); border-color:var(--stroke-bright); box-shadow:inset 0 1px rgba(255,255,255,.12), 0 10px 25px rgba(0,0,0,.22); }
.liquid:hover::before { left:120%; }
.top-actions .icon-button.liquid { overflow:visible; }
.top-actions .icon-button.liquid::before { display:none; }
.liquid:active { transform:translateY(1px) scale(.985); }

.signal-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.signal-card { border-radius:22px; padding:15px 16px; display:grid; grid-template-columns:44px minmax(0,1fr) auto; gap:12px; align-items:center; min-width:0; }
.signal-icon { width:43px;height:43px;border-radius:15px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.13); }
.signal-icon svg { width:20px;height:20px; }
.accent-violet { background:rgba(139,124,255,.18); color:#b4aaff; }
.accent-cyan { background:rgba(85,216,255,.13); color:#77e2ff; }
.accent-amber { background:rgba(255,190,102,.14); color:#ffca82; }
.signal-card div:nth-child(2) { min-width:0; }
.signal-card span { display:block; color:var(--muted); font-size:10px; font-weight:700; margin-bottom:4px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.signal-card strong { font-size:17px; letter-spacing:-.025em; }
.signal-card em { font-style:normal; font-size:9px; font-weight:900; color:var(--mint); background:rgba(94,225,187,.1); border:1px solid rgba(94,225,187,.15); padding:5px 6px; border-radius:8px; }

.catalog { min-height:0; border-radius:var(--radius-xl); padding:20px; display:flex; flex-direction:column; overflow:hidden; }
.catalog-header { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; flex:none; }
.catalog-header h2, .cart-header h2, .dialog-card h2 { margin:0; font-size:22px; letter-spacing:-.04em; }
.catalog-meta { display:flex; align-items:center; gap:9px; }
.live-pill { height:34px; padding:0 11px; border-radius:12px; display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px;font-weight:800;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08); }
.live-pill i { width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 10px rgba(94,225,187,.8); }
.sort-button { position:relative;height:34px;border:1px solid var(--stroke);border-radius:12px;background:rgba(255,255,255,.055);padding:0 10px 0 12px;display:flex;align-items:center;gap:7px;cursor:pointer;color:var(--muted);font-size:10px;font-weight:800; }
.sort-button svg { width:14px;height:14px; }
.category-row { display:flex; gap:7px; padding:16px 0 15px; overflow:hidden; flex:none; }
.category-chip { position:relative; height:37px; flex:0 0 auto; border:1px solid rgba(255,255,255,.09); border-radius:13px; padding:0 13px; background:rgba(255,255,255,.035); color:var(--muted); font-size:10px; font-weight:800; cursor:pointer; transition:.18s ease; }
.category-chip:hover { color:var(--text); border-color:rgba(255,255,255,.18); }
.category-chip.active { color:#fff;background:linear-gradient(145deg,rgba(139,124,255,.34),rgba(83,64,214,.22));border-color:rgba(154,140,255,.39);box-shadow:0 8px 18px rgba(82,60,206,.16),inset 0 1px rgba(255,255,255,.14); }
.product-grid { min-height:0; overflow:auto; padding:1px 4px 6px 1px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; align-content:start; scrollbar-width:thin; scrollbar-color:rgba(255,255,255,.15) transparent; }
.product-card { position:relative; min-width:0; min-height:238px; display:flex; flex-direction:column; border:1px solid rgba(255,255,255,.085); border-radius:20px; background:linear-gradient(145deg,rgba(255,255,255,.068),rgba(255,255,255,.024)); padding:10px 10px 14px; cursor:pointer; transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease; overflow:hidden; }
.product-card:hover { transform:translateY(-3px);border-color:rgba(159,145,255,.35);background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.035));box-shadow:0 15px 28px rgba(0,0,0,.2); }
.product-card:focus-visible { outline:2px solid var(--violet); outline-offset:2px; }
.product-visual { height:126px; flex:none; border-radius:15px; position:relative; overflow:hidden; display:grid;place-items:center;background:var(--product-bg); }
.product-visual::before { content:""; position:absolute;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,.13);filter:blur(16px);top:-36px;right:-25px; }
.product-visual::after { content:""; position:absolute; inset:auto -8px -30px 32%; height:55px; border-radius:50%; background:rgba(0,0,0,.17); filter:blur(10px); transform:rotate(-6deg); }
.product-symbol { position:relative;z-index:1;width:64px;height:64px;filter:drop-shadow(0 13px 11px rgba(0,0,0,.28)); }
.product-badge { position:absolute;top:8px;left:8px;z-index:2;border:1px solid rgba(255,255,255,.24);background:rgba(7,10,18,.32);backdrop-filter:blur(12px);border-radius:8px;padding:4px 7px;font-size:7px;font-weight:900;letter-spacing:.08em;text-transform:uppercase; }
.add-button { position:absolute;right:8px;bottom:8px;z-index:3;width:29px;height:29px;border:1px solid rgba(255,255,255,.25);border-radius:10px;background:rgba(255,255,255,.15);display:grid;place-items:center;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.16); }
.add-button svg { width:15px;height:15px; }
.product-info { flex:1; min-width:0; display:flex; flex-direction:column; padding:14px 4px 8px; }
.product-info h3 { margin:0; font-size:12px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.product-footer { margin-top:auto; padding-top:14px; padding-bottom:5px; display:flex;justify-content:space-between;align-items:center;gap:8px; }
.product-footer strong { font-size:12px; color:#fff; }
.rating { display:flex;align-items:center;gap:4px;color:#ffcc72;font-size:8px;font-weight:900; }
.rating .star { width:11px;height:11px;display:inline-block;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 93%,50% 71%,21% 93%,32% 57%,2% 35%,39% 35%);background:linear-gradient(145deg,#ffe292,#ffad45);filter:drop-shadow(0 0 5px rgba(255,180,70,.35)); }
.empty-state { flex:1; min-height:250px; display:grid; place-items:center; align-content:center; text-align:center; color:var(--muted); }
.empty-state[hidden] { display:none; }
.empty-state h3 { margin:12px 0 4px;color:var(--text); }
.empty-state p { margin:0 0 15px;font-size:12px; }
.empty-orbit { width:48px;height:48px;border:1px solid rgba(139,124,255,.45);border-radius:50%;box-shadow:0 0 0 9px rgba(139,124,255,.07),0 0 30px rgba(139,124,255,.2);position:relative; }
.empty-orbit::after { content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:var(--cyan);right:-3px;top:6px;box-shadow:0 0 12px var(--cyan); }

.cart-panel { min-width:0; min-height:0; border-radius:var(--radius-xl); padding:20px; display:flex; flex-direction:column; overflow:hidden; }
.cart-header { display:flex;justify-content:space-between;align-items:center;flex:none; }
.cart-header h2 span { color:#a99eff; }
.customer-card { margin-top:17px; flex:none; height:61px; width:100%; border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(255,255,255,.035);display:grid;grid-template-columns:39px minmax(0,1fr) 18px;gap:11px;align-items:center;text-align:left;padding:10px 12px;cursor:pointer;transition:.18s ease; }
.customer-card:hover { border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.055); }
.customer-avatar { width:39px;height:39px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(85,216,255,.26),rgba(139,124,255,.2));border:1px solid rgba(127,214,255,.24);font-size:10px;font-weight:900; }
.customer-card small { display:block;color:var(--muted-2);font-size:9px;font-weight:700;margin-bottom:3px; }
.customer-card strong { display:block;font-size:11px; }
.customer-card svg { width:17px;height:17px;color:var(--muted-2); }
.cart-divider { flex:none;display:flex;justify-content:space-between;align-items:center;padding:17px 2px 11px;color:var(--muted-2);font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;border-bottom:1px solid rgba(255,255,255,.06); }
.cart-divider strong { color:var(--muted);font-size:9px; }
.cart-items { min-height:0;overflow:auto;display:flex;flex-direction:column;gap:9px;padding:10px 3px 5px 0;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.13) transparent; }
.cart-item { display:grid;grid-template-columns:45px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px;border:1px solid rgba(255,255,255,.07);border-radius:16px;background:rgba(255,255,255,.027); }
.cart-item-visual { width:45px;height:45px;border-radius:13px;background:var(--product-bg);display:grid;place-items:center;overflow:hidden; }
.cart-item-visual svg { width:30px;height:30px;filter:drop-shadow(0 7px 7px rgba(0,0,0,.25)); }
.cart-item-info { min-width:0; }
.cart-item-info h4 { margin:0 0 4px;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.cart-item-info strong { font-size:10px;color:#c0b8ff; }
.qty-control { display:grid;grid-template-columns:25px 25px 25px;align-items:center;border:1px solid rgba(255,255,255,.08);border-radius:11px;overflow:hidden;background:rgba(0,0,0,.14); }
.qty-control button { height:26px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-weight:800;font-size:13px; }
.qty-control button:hover { background:rgba(255,255,255,.07);color:var(--text); }
.qty-control span { text-align:center;font-size:9px;font-weight:900; }
.cart-empty { flex:1;display:grid;place-items:center;align-content:center;text-align:center;color:var(--muted-2);min-height:150px; }
.cart-empty[hidden] { display:none; }
.cart-empty-icon { width:54px;height:54px;border-radius:19px;display:grid;place-items:center;background:rgba(139,124,255,.09);border:1px solid rgba(139,124,255,.16);color:#9184ea;margin-bottom:12px; }
.cart-empty-icon svg { width:25px;height:25px; }
.cart-empty h3 { margin:0 0 4px;color:var(--muted);font-size:13px; }
.cart-empty p { margin:0;font-size:10px; }
.totals-card { flex:none;border-top:1px solid rgba(255,255,255,.075);padding:13px 2px 8px;display:flex;flex-direction:column;gap:9px; }
.totals-card > div { display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:10px; }
.totals-card strong { color:var(--text);font-size:10px; }
.inline-link { border:0;background:transparent;color:#a89dff;font-size:9px;font-weight:900;cursor:pointer;padding:0 0 0 5px; }
.total-line { margin-top:3px;padding-top:12px;border-top:1px dashed rgba(255,255,255,.12); }
.totals-card .total-line span { color:var(--text);font-size:13px;font-weight:800; }
.totals-card .total-line strong { font-size:20px;letter-spacing:-.04em; }
.cart-actions { flex:none;display:grid;grid-template-columns:100px minmax(0,1fr);gap:9px;padding-top:7px; }
.secondary-action { position:relative;height:55px;border:1px solid rgba(255,255,255,.12);border-radius:17px;background:rgba(255,255,255,.055);display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-size:10px;font-weight:900; }
.secondary-action svg { width:17px;height:17px; }
.secondary-action kbd { margin-left:2px;padding:3px 5px; }
.checkout-button { position:relative;min-height:55px;border:1px solid rgba(180,169,255,.4);border-radius:17px;background:linear-gradient(145deg,#8d7eff,#6350e5);box-shadow:0 14px 30px rgba(94,74,220,.3),inset 0 1px rgba(255,255,255,.3);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px 8px 16px;cursor:pointer;text-align:left; }
.checkout-button:disabled { opacity:.42;filter:saturate(.4);cursor:not-allowed;box-shadow:none; }
.checkout-button span small { display:block;font-size:8px;text-transform:uppercase;letter-spacing:.08em;opacity:.76;margin-bottom:2px;font-weight:800; }
.checkout-button span strong { display:block;font-size:13px; }
.checkout-button svg { width:18px;height:18px; }
.checkout-button kbd { background:rgba(0,0,0,.12);color:rgba(255,255,255,.75);border-color:rgba(255,255,255,.16); }
.register-status { flex:none;display:flex;justify-content:space-between;color:var(--muted-2);font-size:8px;font-weight:700;padding:12px 2px 0; }
.register-status span:first-child { display:flex;gap:6px;align-items:center; }
.register-status i { width:6px;height:6px;background:var(--mint);border-radius:50%;box-shadow:0 0 8px rgba(94,225,187,.7); }

.toast-region { position:fixed;right:416px;bottom:27px;z-index:50;display:flex;flex-direction:column;gap:8px;pointer-events:none; }
.toast { min-width:250px;max-width:340px;padding:12px 14px;border:1px solid rgba(255,255,255,.14);border-radius:15px;background:rgba(19,24,43,.93);backdrop-filter:blur(20px);box-shadow:0 16px 38px rgba(0,0,0,.35);font-size:10px;color:var(--muted);animation:toast-in .22s ease; }
.toast strong { display:block;color:var(--text);font-size:11px;margin-bottom:2px; }
@keyframes toast-in { from { opacity:0;transform:translateY(8px) scale(.98); } }

.app-dialog { border:0;padding:0;background:transparent;overflow:visible;color:var(--text); }
.app-dialog::backdrop { background:rgba(3,5,12,.7);backdrop-filter:blur(12px); }
.dialog-card { width:520px;border-radius:28px;padding:21px; }
.dialog-card > header { display:flex;align-items:center;justify-content:space-between;margin-bottom:17px; }
.payment-total { border:1px solid rgba(255,255,255,.1);border-radius:20px;background:linear-gradient(145deg,rgba(139,124,255,.17),rgba(85,216,255,.06));padding:17px;display:flex;align-items:center;justify-content:space-between;margin-bottom:17px; }
.payment-total span { color:var(--muted);font-size:11px;font-weight:800; }
.payment-total strong { font-size:26px;letter-spacing:-.04em; }
.payment-methods { border:0;padding:0;margin:0;display:grid;gap:8px; }
.payment-methods legend { color:var(--muted-2);font-size:9px;text-transform:uppercase;letter-spacing:.13em;font-weight:900;margin-bottom:8px; }
.payment-option { position:relative;height:61px;border:1px solid rgba(255,255,255,.08);border-radius:17px;background:rgba(255,255,255,.03);display:grid;grid-template-columns:37px minmax(0,1fr) 16px;gap:11px;align-items:center;padding:10px 13px;cursor:pointer; }
.payment-option input { position:absolute;opacity:0; }
.payment-option.selected { border-color:rgba(139,124,255,.42);background:rgba(139,124,255,.1);box-shadow:inset 0 1px rgba(255,255,255,.06); }
.payment-icon { width:37px;height:37px;border-radius:12px;background:rgba(255,255,255,.06);display:grid;place-items:center; }
.payment-icon svg { width:18px;height:18px; }
.payment-option strong,.payment-option small { display:block; }
.payment-option strong { font-size:11px;margin-bottom:3px; }
.payment-option small { color:var(--muted);font-size:9px; }
.payment-option > i { width:14px;height:14px;border-radius:50%;border:1px solid rgba(255,255,255,.25); }
.payment-option.selected > i { border:4px solid var(--violet);background:#fff; }
.dialog-actions { display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px;margin-top:18px; }
.held-dialog-card { width:560px; }
.held-orders-list { max-height:400px;overflow:auto;display:flex;flex-direction:column;gap:9px; }
.held-order { border:1px solid rgba(255,255,255,.09);border-radius:17px;padding:13px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;background:rgba(255,255,255,.035); }
.held-order h3 { margin:0 0 4px;font-size:11px; }
.held-order p { margin:0;color:var(--muted);font-size:9px; }
.held-order-actions { display:flex;gap:7px; }
.held-order-actions button { height:34px;border-radius:11px;padding:0 10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);cursor:pointer;font-size:9px;font-weight:900; }
.held-order-actions .resume { background:rgba(139,124,255,.18);border-color:rgba(139,124,255,.3); }
.no-held { text-align:center;color:var(--muted);padding:30px 10px;font-size:11px; }
.desktop-notice { display:none; }

body[data-theme="lumen"] {
  color-scheme: light;
  --bg: #e7f0f7;
  --bg-soft: #dce8f1;
  --panel: rgba(255, 255, 255, 0.78);
  --panel-strong: rgba(255, 255, 255, 0.97);
  --panel-light: rgba(19, 42, 67, 0.055);
  --stroke: rgba(28, 54, 82, 0.16);
  --stroke-bright: rgba(28, 54, 82, 0.29);
  --text: #102035;
  --muted: #52677d;
  --muted-2: #718398;
  --violet: #6555ed;
  --violet-2: #4938d0;
  --cyan: #147fa5;
  --mint: #087c63;
  --amber: #a95d00;
  --danger: #d72d60;
  --ambient-a: #8a7cff;
  --ambient-b: #65c9e9;
  --ambient-c: #ff9cc1;
  --body-bg:
    radial-gradient(circle at 15% -5%, rgba(109, 89, 238, 0.19), transparent 34%),
    radial-gradient(circle at 96% 15%, rgba(63, 184, 220, 0.20), transparent 36%),
    linear-gradient(145deg, #f5f9fc 0%, #e9f2f8 50%, #dfeaf3 100%);
  --shadow: 0 20px 55px rgba(58, 78, 101, 0.18);
}
body[data-theme="lumen"] .glass-panel {
  background: linear-gradient(145deg, rgba(255,255,255,.94), rgba(240,247,252,.72)), var(--panel);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.95), var(--shadow);
}
body[data-theme="lumen"] .sidebar { background:linear-gradient(160deg,rgba(255,255,255,.94),rgba(226,238,248,.82)); }
body[data-theme="lumen"] .brand-mark { color:#fff;background:linear-gradient(145deg,#7a6af5,#4b39d6);box-shadow:0 12px 28px rgba(83,65,213,.28),inset 0 1px 1px rgba(255,255,255,.55); }
body[data-theme="lumen"] .nav-button:hover,
body[data-theme="lumen"] .icon-button,
body[data-theme="lumen"] .sort-button,
body[data-theme="lumen"] .live-pill,
body[data-theme="lumen"] .secondary-action { background:rgba(255,255,255,.58); }
body[data-theme="lumen"] .nav-button.active { color:#fff;background:linear-gradient(145deg,#7364ee,#5140d2);border-color:rgba(76,57,207,.3);box-shadow:0 9px 22px rgba(77,58,204,.2); }
body[data-theme="lumen"] .search-control { background:rgba(255,255,255,.78);box-shadow:inset 0 1px 1px rgba(255,255,255,.9); }
body[data-theme="lumen"] .search-control input::placeholder { color:#8190a1; }
body[data-theme="lumen"] kbd { background:rgba(22,44,70,.06);border-color:rgba(22,44,70,.13);color:#607286;box-shadow:none; }
body[data-theme="lumen"] .signal-card em { color:#086b56;background:rgba(10,139,109,.09);border-color:rgba(10,139,109,.15); }
body[data-theme="lumen"] .category-chip { background:rgba(255,255,255,.55);border-color:rgba(30,52,76,.11); }
body[data-theme="lumen"] .category-chip.active { color:#fff;background:linear-gradient(145deg,#7566ee,#5141d1);border-color:rgba(75,57,203,.33);box-shadow:0 8px 18px rgba(78,59,205,.18); }
body[data-theme="lumen"] .product-card { background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(232,241,248,.72));border-color:rgba(31,53,78,.12);box-shadow:0 10px 24px rgba(52,72,94,.08); }
body[data-theme="lumen"] .product-card:hover { background:#fff;border-color:rgba(91,74,226,.34);box-shadow:0 16px 32px rgba(52,72,94,.14); }
body[data-theme="lumen"] .product-footer strong { color:var(--text); }
body[data-theme="lumen"] .customer-card,
body[data-theme="lumen"] .cart-item,
body[data-theme="lumen"] .payment-option,
body[data-theme="lumen"] .held-order { background:rgba(255,255,255,.56);border-color:rgba(31,53,78,.11); }
body[data-theme="lumen"] .customer-card:hover { background:#fff;border-color:rgba(31,53,78,.19); }
body[data-theme="lumen"] .cart-empty-icon { background:rgba(101,85,237,.09);border-color:rgba(101,85,237,.16);color:#6555ed; }
body[data-theme="lumen"] .qty-control { background:rgba(28,48,71,.055);border-color:rgba(28,48,71,.11); }
body[data-theme="lumen"] .qty-control button:hover { background:rgba(101,85,237,.1); }
body[data-theme="lumen"] .totals-card,
body[data-theme="lumen"] .cart-divider { border-color:rgba(28,49,72,.11); }
body[data-theme="lumen"] .checkout-button { color:#fff;background:linear-gradient(145deg,#7464ef,#4c3ad0);border-color:rgba(74,55,204,.35);box-shadow:0 14px 30px rgba(78,59,205,.24),inset 0 1px rgba(255,255,255,.3); }
body[data-theme="lumen"] .welcome-block h1 span,
body[data-theme="lumen"] .cart-header h2 span,
body[data-theme="lumen"] .cart-item-info strong,
body[data-theme="lumen"] .inline-link { color:#5947dc; }
body[data-theme="lumen"] .notification-dot { border-color:#fff;box-shadow:0 0 0 1px rgba(160,31,72,.12),0 5px 14px rgba(215,45,96,.28); }
body[data-theme="lumen"] .register-status i,
body[data-theme="lumen"] .live-pill i,
body[data-theme="lumen"] .avatar-button i { border-color:#fff; }
body[data-theme="lumen"] .avatar-button { color:#fff;background:linear-gradient(145deg,#41516b,#26354e); }
body[data-theme="lumen"] .app-dialog::backdrop { background:rgba(22,34,48,.35); }
body[data-theme="lumen"] .dialog-card { background:rgba(250,253,255,.96); }
body[data-theme="lumen"] .payment-total { background:linear-gradient(145deg,rgba(101,85,237,.12),rgba(20,127,165,.07));border-color:rgba(31,53,78,.12); }
body[data-theme="lumen"] .payment-option.selected { background:rgba(101,85,237,.09);border-color:rgba(101,85,237,.35); }
body[data-theme="lumen"] .toast { background:rgba(250,253,255,.97);border-color:rgba(31,53,78,.14);box-shadow:0 16px 38px rgba(52,72,94,.18); }

.brand-mark,
.checkout-button,
.category-chip,
.search-control,
.notification-dot,
.toast { transition:background .3s ease,border-color .3s ease,box-shadow .3s ease,color .3s ease; }

@media (max-width: 1320px) {
  .pos-shell { grid-template-columns:78px minmax(620px,1fr) 350px;gap:13px;padding:13px; }
  .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .welcome-block h1 { font-size:19px; }
  .cart-panel,.catalog { padding:17px; }
  .toast-region { right:372px; }
}

@media (max-width: 1179px) {
  body { min-width:0; overflow:auto; }
  .pos-shell { display:none; }
  .desktop-notice { min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:var(--muted); }
  .desktop-notice strong { color:var(--text);font-size:22px;margin-bottom:8px; }
}
