:root {
  color-scheme: dark;
  --bg: #11100f;
  --panel: #1b1a18;
  --panel-2: #24221f;
  --panel-3: #2d2a26;
  --line: #403b35;
  --gold: #d6ad5c;
  --gold-light: #f1d18b;
  --text: #f5f1e8;
  --muted: #aaa39a;
  --green: #42b883;
  --orange: #f59f43;
  --red: #ef6a6a;
  --blue: #66a9e8;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html, body { min-height: 100%; margin: 0; background: var(--bg); color: var(--text); }
body { overflow-x: hidden; }
button, input, select, textarea { font: inherit; }
button { color: inherit; cursor: pointer; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid rgba(214,173,92,.35); outline-offset: 2px; }
.muted { color: var(--muted); }
.eyebrow { color: var(--gold-light); font-size: 13px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }

.login-page { min-height: 100vh; display: grid; place-items: center; padding: 24px; background: radial-gradient(circle at 20% 20%,rgba(214,173,92,.12),transparent 32%),radial-gradient(circle at 82% 82%,rgba(214,173,92,.06),transparent 30%),var(--bg); }
.login-card { width: min(430px,100%); padding: 34px; border: 1px solid rgba(214,173,92,.45); border-radius: 27px; background: linear-gradient(145deg,rgba(40,37,33,.98),rgba(23,22,20,.99)); box-shadow: 0 25px 75px rgba(0,0,0,.35); }
.brand { display: flex; align-items: center; gap: 13px; }
.brand-mark { width: 50px; height: 50px; display: grid; place-items: center; border: 1px solid var(--gold); border-radius: 14px; color: var(--gold-light); font-size: 19px; font-weight: 900; background: rgba(214,173,92,.08); }
.brand h1 { margin: 0; font-size: 23px; letter-spacing: -.035em; }
.brand p { margin: 3px 0 0; color: var(--muted); font-size: 14px; }
.login-copy { margin: 29px 0 17px; }
.login-copy h2 { margin: 0 0 7px; font-size: 25px; }
.login-copy p { margin: 0; color: var(--muted); line-height: 1.5; }
.pin-display { width: 100%; height: 58px; margin-bottom: 12px; border: 1px solid var(--line); border-radius: 14px; background: #100f0e; color: var(--text); text-align: center; font-size: 27px; font-weight: 850; letter-spacing: .34em; }
.pin-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.pin-key { min-height: 57px; border: 1px solid var(--line); border-radius: 13px; background: var(--panel-2); font-size: 19px; font-weight: 800; }
.pin-key:active { transform: scale(.97); background: var(--panel-3); }
.pin-key.primary { border-color: var(--gold); background: var(--gold); color: #211b11; }
.login-note { min-height: 20px; margin-top: 16px; color: var(--muted); text-align: center; font-size: 14px; }
.login-branch { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 4px 12px; margin-top: 23px; padding: 13px 14px; border: 1px solid rgba(214,173,92,.42); border-radius: 13px; background: rgba(214,173,92,.08); }
.login-branch span { grid-column: 1/-1; color: var(--muted); font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.login-branch strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; font-size: 18px; }
.login-branch code { align-self: center; color: var(--gold-light); font-size: 13px; font-weight: 900; }
.login-branch + .login-copy { margin-top: 19px; }
.version-card { width: min(560px,100%); }
.version-card .login-copy p { font-size: 16px; }
.version-reload { width: 100%; margin-top: 14px; font-size: 16px; }

.app-layout { min-height: 100vh; display: grid; grid-template-columns: 225px minmax(0,1fr); }
.sidebar { position: sticky; top: 0; height: 100vh; display: flex; flex-direction: column; padding: 20px 15px; border-right: 1px solid var(--line); background: #171614; }
.sidebar .brand { padding: 0 5px 19px; }
.sidebar .brand-mark { width: 41px; height: 41px; border-radius: 11px; font-size: 16px; }
.sidebar .brand h1 { font-size: 18px; }
.branch-chip { margin: 1px 5px 18px; padding: 11px 12px; border: 1px solid rgba(214,173,92,.3); border-radius: 12px; background: rgba(214,173,92,.07); }
.branch-chip strong, .branch-chip span { display: block; }
.branch-chip strong { font-size: 15px; }
.branch-chip span { margin-top: 3px; color: var(--muted); font-size: 12px; }
.nav-list { min-height: 0; display: grid; gap: 6px; overflow-y: auto; }
.nav-section { margin: 10px 12px 1px; color: #777168; font-size: 10px; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.nav-section:first-child { margin-top: 0; }
.nav-button { width: 100%; min-height: 45px; display: flex; align-items: center; gap: 10px; padding: 0 12px; border: 1px solid transparent; border-radius: 11px; background: transparent; color: var(--muted); text-align: left; font-weight: 750; }
.nav-button:hover, .nav-button.active { border-color: rgba(214,173,92,.3); background: rgba(214,173,92,.08); color: var(--text); }
.nav-icon { width: 21px; text-align: center; font-size: 17px; }
.sidebar-footer { margin-top: auto; }
.connection { display: flex; align-items: center; gap: 8px; margin: 15px 7px; color: var(--muted); font-size: 13px; }
.connection i { width: 8px; height: 8px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 4px rgba(66,184,131,.12); }
.user-card { display: flex; align-items: center; gap: 9px; padding: 11px 6px 0; border-top: 1px solid var(--line); }
.avatar { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; background: var(--panel-3); color: var(--gold-light); font-weight: 850; }
.user-meta { min-width: 0; flex: 1; }
.user-meta strong, .user-meta span { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.user-meta strong { font-size: 14px; }
.user-meta span { margin-top: 2px; color: var(--muted); font-size: 12px; }
.logout { width: 38px; height: 38px; border: 1px solid var(--line); border-radius: 10px; background: transparent; font-size: 18px; }

.main { min-width: 0; padding: 21px; }
.topbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.page-title { margin: 3px 0 0; font-size: clamp(24px,3vw,37px); letter-spacing: -.045em; }
.top-actions { display: flex; align-items: center; gap: 9px; }
.clock, .shift-pill { padding: 9px 12px; border: 1px solid var(--line); border-radius: 11px; background: var(--panel); }
.clock { min-width: 90px; text-align: center; font-weight: 850; font-variant-numeric: tabular-nums; }
.shift-pill { display: inline-flex; align-items: center; gap: 7px; color: var(--muted); font-size: 13px; font-weight: 750; }
.shift-pill::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--green); }
.shift-pill.closed::before { background: var(--red); }
.profile-switch { min-height: 43px; display: inline-flex; align-items: center; gap: 8px; padding: 0 13px; border: 1px solid rgba(214,173,92,.45); border-radius: 11px; background: rgba(214,173,92,.08); color: var(--gold-light); font-size: 14px; font-weight: 800; white-space: nowrap; }
.profile-switch:hover { background: rgba(214,173,92,.14); }
.profile-switch > span:first-child { font-size: 18px; }

.operations-strip { display: flex; gap: 8px; margin: -5px 0 16px; overflow-x: auto; scrollbar-width: thin; }
.operation-chip { min-width: 145px; min-height: 49px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 11px; border: 1px solid var(--line); border-radius: 11px; background: #181715; color: var(--muted); white-space: nowrap; }
button.operation-chip:hover { border-color: rgba(214,173,92,.45); background: rgba(214,173,92,.07); }
.operation-chip span { font-size: 12px; font-weight: 800; }
.operation-chip strong { min-width: 29px; height: 29px; display: grid; place-items: center; border-radius: 8px; background: var(--panel-3); color: var(--text); font-size: 15px; }
.operation-chip.ready strong { background: rgba(66,184,131,.17); color: #9be1c4; }
.operation-chip.unpaid strong { background: rgba(239,106,106,.15); color: #ffb3b3; }
.operation-chip.future strong { background: rgba(102,169,232,.15); color: #b9d9f6; }

.card { border: 1px solid var(--line); border-radius: 17px; background: var(--panel); box-shadow: 0 12px 34px rgba(0,0,0,.12); }
.padded { padding: 17px; }
.section-head { display: flex; align-items: center; justify-content: space-between; gap: 13px; margin-bottom: 13px; }
.section-head h2, .section-head h3 { margin: 0; }
.section-head p { margin: 4px 0 0; color: var(--muted); font-size: 14px; }
.order-workspace { display: grid; grid-template-columns: minmax(460px,1fr) 385px; gap: 15px; }
.menu-panel { min-width: 0; padding: 15px; }
.menu-tools-sticky { position: sticky; top: 8px; z-index: 9; margin: -4px -4px 10px; padding: 4px 4px 1px; border-radius: 13px; background: rgba(31,29,27,.97); box-shadow: 0 12px 24px rgba(0,0,0,.28); backdrop-filter: blur(12px); }
.menu-tools-sticky .tabs { margin-bottom: 8px; }
.menu-tools-sticky .search-wrap { margin-bottom: 7px; }
.menu-category-heading { min-height:52px; display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; padding:0 14px; border:1px solid var(--line); border-radius:11px; background:var(--panel-2); }
.menu-category-heading strong { font-size:17px; }
.menu-category-heading small { color:var(--muted); font-weight:750; }
.menu-back-categories { width:100%; min-height:54px; margin-bottom:8px; border:2px solid rgba(214,173,92,.62); border-radius:12px; background:rgba(214,173,92,.11); color:var(--gold-light); font-size:15px; font-weight:950; letter-spacing:.025em; }
.menu-back-categories:hover,.menu-back-categories:focus-visible { background:rgba(214,173,92,.2); }
.tabs { display: flex; gap: 7px; margin: 0 -3px 12px; padding: 3px; overflow-x: auto; }
.tab { flex: 0 0 auto; min-height: 40px; padding: 0 14px; border: 1px solid var(--line); border-radius: 11px; background: var(--panel-2); color: var(--muted); font-weight: 750; }
.tab.active { border-color: var(--gold); background: rgba(214,173,92,.12); color: var(--gold-light); }
.search, .field input, .field select, .field textarea { width: 100%; border: 1px solid #4d473f; border-radius: 11px; background: #12110f; color: var(--text); }
.search-wrap { position: relative; margin-bottom: 12px; }
.search { height: 48px; padding: 0 52px 0 15px; font-size: 18px; font-weight: 800; letter-spacing: .04em; }
.search-clear { position: absolute; top: 6px; right: 6px; width: 36px; height: 36px; display: grid; place-items: center; padding: 0; border: 1px solid var(--line); border-radius: 9px; background: var(--panel-3); color: var(--muted); font-size: 25px; line-height: 1; }
.search-clear:hover { border-color: rgba(214,173,92,.55); color: var(--text); }
.search-clear[hidden] { display: none; }
.locked-order-rule { min-height: 44px; display: flex; align-items: center; padding: 0 12px; border: 1px solid rgba(214,173,92,.4); border-radius: 11px; background: rgba(214,173,92,.08); color: var(--gold-light); font-weight: 850; }
.menu-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; }
.menu-category-tile { position:relative; min-height:150px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:7px; padding:18px; border:2px solid var(--line); border-radius:15px; background:linear-gradient(145deg,rgba(214,173,92,.10),var(--panel-2)); color:var(--text); text-align:left; }
.menu-category-tile:hover,.menu-category-tile:focus-visible { border-color:var(--gold); background:linear-gradient(145deg,rgba(214,173,92,.19),var(--panel-2)); transform:translateY(-1px); }
.menu-category-tile span { color:var(--muted); font-size:10px; font-weight:950; letter-spacing:.09em; }
.menu-category-tile strong { font-size:23px; line-height:1.1; }
.menu-category-tile small { color:var(--muted); font-weight:800; }
.menu-category-tile em { position:absolute; right:15px; bottom:14px; color:var(--gold-light); font-size:12px; font-style:normal; font-weight:900; }
.menu-item { position: relative; min-height: 116px; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 9px; padding: 12px; border: 1px solid var(--line); border-radius: 13px; background: linear-gradient(150deg,var(--panel-2),#1d1b19); text-align: left; }
.menu-item:hover { border-color: rgba(214,173,92,.55); transform: translateY(-1px); }
.menu-item.selected-in-cart { border-color: rgba(214,173,92,.68); background: linear-gradient(150deg,rgba(214,173,92,.14),#211e1a); }
.menu-selected-count { position: absolute; top: 8px; right: 8px; min-width: 31px; height: 31px; display: grid; place-items: center; padding: 0 7px; border-radius: 9px; background: var(--gold); color: #211b11; box-shadow: 0 7px 18px rgba(0,0,0,.28); font-size: 14px; font-weight: 950; }
.menu-item.selected-in-cart .menu-code { padding-right: 34px; }
.menu-code { color: var(--gold-light); font-size: 13px; font-weight: 850; }
.menu-name { flex: 1; font-size: 16px; font-weight: 750; line-height: 1.3; }
.menu-bottom { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 5px; }
.station-mini { color: var(--muted); font-size: 11px; text-transform: uppercase; }
.menu-price { font-size: 15px; font-weight: 850; }

.cart { position: sticky; top: 21px; align-self: start; max-height: calc(100vh - 42px); display: flex; flex-direction: column; overflow: hidden; }
.cart-head { flex-shrink: 0; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 15px 17px 12px; border-bottom: 1px solid var(--line); }
.cart-head h2 { margin: 0; font-size: 20px; }
.cart-head > div { min-width: 0; display: flex; align-items: center; gap: 8px; }
.cart-head [data-cart-head-count] { padding: 5px 8px; border-radius: 8px; background: var(--panel-3); color: var(--gold-light); font-size: 12px; font-weight: 900; white-space: nowrap; }
.cart-expand-button { min-height: 38px; display: flex; align-items: center; gap: 6px; padding: 0 9px; border: 1px solid rgba(214,173,92,.4); border-radius: 9px; background: rgba(214,173,92,.08); color: var(--gold-light); font-size: 11px; font-weight: 900; }
.cart-expand-button:hover { background: rgba(214,173,92,.14); }
.cart-expand-button svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.cart-items { min-height: 110px; padding: 9px 13px; overflow-y: auto; }
.cart-empty { padding: 26px 10px; color: var(--muted); text-align: center; line-height: 1.5; }
.cart-line { display: grid; grid-template-columns: 1fr auto; gap: 9px; padding: 9px 0; border-bottom: 1px solid rgba(64,59,53,.7); }
.cart-line:last-child { border-bottom: 0; }
.cart-line strong, .cart-line span { display: block; }
.cart-line strong { font-size: 14px; }
.cart-line span { margin-top: 3px; color: var(--muted); font-size: 12px; }
.qty { display: flex; align-items: center; gap: 6px; }
.qty button { width: 29px; height: 29px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel-3); }
.qty b { min-width: 19px; text-align: center; }
.order-form { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; padding: 12px 13px; border-top: 1px solid var(--line); overflow-y: auto; }
.field { display: grid; gap: 5px; }
.field.full, .wide { grid-column: 1/-1; }
.field label { color: var(--muted); font-size: 13px; font-weight: 750; }
.field input, .field select { height: 40px; padding: 0 10px; }
.field textarea { min-height: 57px; padding: 9px 10px; resize: vertical; }
.total { flex-shrink: 0; display: flex; align-items: baseline; justify-content: space-between; padding: 13px 17px 0; border-top: 1px solid var(--line); background: var(--panel); }
.total span { color: var(--muted); font-size: 14px; }
.total strong { font-size: 26px; letter-spacing: -.04em; }

.primary, .secondary, .danger, .success { min-height: 43px; padding: 0 15px; border-radius: 11px; font-weight: 800; }
.primary { border: 1px solid var(--gold); background: var(--gold); color: #211b11; }
.secondary { border: 1px solid var(--line); background: var(--panel-2); }
.danger { border: 1px solid rgba(239,106,106,.55); background: rgba(239,106,106,.12); color: #ffb3b3; }
.success { border: 1px solid rgba(66,184,131,.55); background: rgba(66,184,131,.14); color: #9be1c4; }
button:disabled { opacity: .44; cursor: not-allowed; }
.submit-order { position: relative; z-index: 2; flex-shrink: 0; min-height: 52px; margin: 11px 13px 13px; font-size: 16px; }

.floating-cart-button { position: fixed; right: 22px; bottom: 22px; z-index: 38; min-width: 196px; min-height: 62px; display: none; align-items: center; gap: 11px; padding: 8px 14px 8px 9px; border: 1px solid rgba(214,173,92,.68); border-radius: 18px; background: linear-gradient(145deg,#d6ad5c,#b88936); color: #211b11; box-shadow: 0 18px 45px rgba(0,0,0,.46),0 0 0 4px rgba(214,173,92,.1); text-align: left; }
.floating-cart-button.is-empty { border-color: #5b544a; background: linear-gradient(145deg,#2b2925,#211f1c); color: var(--text); }
.floating-cart-button:hover { transform: translateY(-2px); box-shadow: 0 22px 52px rgba(0,0,0,.52),0 0 0 5px rgba(214,173,92,.13); }
.floating-cart-icon { position: relative; width: 44px; height: 44px; flex: 0 0 44px; display: grid; place-items: center; border-radius: 13px; background: rgba(24,19,12,.15); }
.floating-cart-button.is-empty .floating-cart-icon { background: var(--panel-3); }
.floating-cart-icon svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.floating-cart-icon b { position: absolute; top: -6px; right: -7px; min-width: 23px; height: 23px; display: grid; place-items: center; padding: 0 5px; border: 2px solid #211b11; border-radius: 999px; background: #171513; color: var(--gold-light); font-size: 11px; font-weight: 950; }
.floating-cart-button.is-empty .floating-cart-icon b { border-color: #2b2925; color: var(--muted); }
.floating-cart-copy strong, .floating-cart-copy em { display: block; }
.floating-cart-copy strong { font-size: 16px; }
.floating-cart-copy em { margin-top: 2px; font-size: 11px; font-style: normal; font-weight: 800; opacity: .78; }
.floating-cart-button.cart-pulse { animation: cart-pulse .28s ease-out; }
@keyframes cart-pulse { 50% { transform: scale(1.055); } }

.cart-review-modal { width: min(680px,100%); max-height: min(86vh,820px); max-height: min(86dvh,820px); display: flex; flex-direction: column; padding: 0; overflow: hidden; }
.cart-review-scroll { min-height: 180px; overflow-y: auto; padding: 8px 21px 15px; }
.cart-review-scroll .cart-line { min-height: 68px; align-items: center; padding: 13px 2px; }
.cart-review-scroll .cart-line strong { font-size: 16px; }
.cart-review-scroll .cart-line span { font-size: 14px; }
.cart-review-scroll .qty button { width: 39px; height: 39px; font-size: 20px; }
.cart-review-scroll .qty b { min-width: 27px; font-size: 17px; }
.cart-review-empty { min-height: 210px; display: grid; place-items: center; }
.cart-review-footer { flex-shrink: 0; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 15px 21px 18px; border-top: 1px solid var(--line); background: #171614; }
.cart-review-footer > div:first-child span, .cart-review-footer > div:first-child strong { display: block; }
.cart-review-footer > div:first-child span { color: var(--muted); font-size: 12px; font-weight: 800; }
.cart-review-footer > div:first-child strong { margin-top: 4px; color: var(--gold-light); font-size: 28px; }
.cart-review-footer .modal-actions { flex: 1; margin: 0; }
.cart-review-footer .modal-actions button { flex: 1; }

.group-title { display: flex; align-items: center; gap: 9px; margin: 20px 0 10px; font-size: 18px; }
.group-title:first-child { margin-top: 0; }
.count { min-width: 26px; height: 26px; display: inline-grid; place-items: center; border-radius: 7px; background: var(--panel-3); color: var(--muted); font-size: 12px; }
.ticket-grid { display: grid; grid-template-columns: repeat(3,minmax(250px,1fr)); gap: 12px; }
.ticket { position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--panel); }
.ticket::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--blue); }
.ticket.urgent::before { background: var(--orange); }
.ticket.overdue::before { background: var(--red); }
.ticket.ready::before { background: var(--green); }
.ticket.future-order { border-color: rgba(214,173,92,.48); }
.ticket.future-order::before { background: var(--gold); }
.ticket.future-order .time-badge { border: 1px solid rgba(214,173,92,.4); background: rgba(214,173,92,.12); color: var(--gold-light); }
.ticket-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 9px; padding: 14px 14px 11px 17px; border-bottom: 1px solid var(--line); }
.ticket-number { font-size: 22px; font-weight: 900; letter-spacing: -.03em; }
.ticket-time { display: block; margin-top: 4px; color: var(--gold-light); font-size: 14px; font-weight: 800; }
.time-badge { padding: 6px 8px; border-radius: 8px; background: var(--panel-3); color: var(--muted); font-size: 12px; font-weight: 800; white-space: nowrap; }
.time-badge.overdue { background: rgba(239,106,106,.14); color: #ffb3b3; }
.joint { display: inline-flex; margin: 11px 14px 0 17px; padding: 6px 8px; border: 1px solid rgba(214,173,92,.35); border-radius: 8px; background: rgba(214,173,92,.09); color: var(--gold-light); font-size: 12px; font-weight: 850; }
.ticket-meta { display: flex; flex-wrap: wrap; gap: 7px 13px; padding: 11px 14px 0 17px; color: var(--muted); font-size: 13px; }
.ticket-meta strong { color: var(--text); }
.admin-external-order-id { margin: 10px 14px 0 17px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; display:flex; align-items:center; justify-content:space-between; gap:12px; background: var(--panel-2, rgba(255,255,255,.035)); }
.admin-external-order-id span { color: var(--muted); font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.admin-external-order-id strong { color: var(--text); font-size: 20px; line-height: 1; letter-spacing: .03em; overflow-wrap:anywhere; text-align:right; }
.payment-state.pending, .payment-state.pending strong { color: #f6c992; }
.ticket-items { display: grid; gap: 7px; padding: 12px 14px 12px 17px; }
.ticket-item { display: flex; align-items: baseline; justify-content: space-between; gap: 11px; font-size: 15px; }
.ticket-item strong { color: var(--gold-light); }
.receipt-position { padding: 8px 0; border-bottom: 1px solid rgba(64,59,53,.7); }
.receipt-position:last-child { border-bottom: 0; }
.receipt-position > span { min-width: 0; }
.receipt-position small { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; }
.receipt-position > b { white-space: nowrap; }
.admin-items { display: grid; gap: 3px; margin: 0 14px 13px 17px; padding: 11px 12px; border: 1px solid rgba(102,169,232,.42); border-radius: 11px; background: rgba(102,169,232,.09); }
.admin-items-title { margin-bottom: 3px; color: #b9d9f6; font-size: 13px; font-weight: 900; text-transform: uppercase; }
.receipt-total { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 14px 13px 17px; padding: 12px; border: 1px solid rgba(214,173,92,.38); border-radius: 11px; background: rgba(214,173,92,.08); }
.receipt-total span { color: var(--gold-light); font-size: 14px; font-weight: 800; }
.receipt-total strong { font-size: 22px; white-space: nowrap; }
.ticket-note { margin: 0 14px 12px 17px; padding: 9px; border-radius: 9px; background: rgba(245,159,67,.09); color: #f6c992; font-size: 14px; line-height: 1.45; }
.stations { display: flex; flex-wrap: wrap; gap: 5px; padding: 0 14px 12px 17px; }
.station-state { padding: 6px 8px; border: 1px solid var(--line); border-radius: 7px; color: var(--muted); font-size: 12px; font-weight: 800; }
.station-state.ready { border-color: rgba(66,184,131,.35); color: #8bd8b6; }
.station-state.cooking { border-color: rgba(245,159,67,.35); color: #f6c992; }
.payment-picker { display: grid; gap: 7px; padding: 12px 14px 13px 17px; border-top: 1px solid var(--line); background: rgba(245,159,67,.055); }
.payment-picker label { color: #f6c992; font-size: 13px; font-weight: 800; }
.payment-picker > div { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 7px; }
.payment-picker select { min-width: 0; height: 43px; padding: 0 9px; border: 1px solid #5a5146; border-radius: 10px; background: #12110f; color: var(--text); }
.ticket-actions { display: flex; gap: 7px; padding: 11px 14px 13px 17px; border-top: 1px solid var(--line); }
.ticket-actions button { flex: 1; }
.admin-ticket-actions { flex-wrap: wrap; }
.admin-ticket-actions button { min-width: 125px; }
.return-kitchen-button { border-color: rgba(245,159,67,.5); background: rgba(245,159,67,.1); color: #f6c992; }
.kitchen-ready-actions button:disabled { min-height: 54px; color: var(--gold-light); }
.kitchen-group-title { font-size: 22px; }
.kitchen-ticket { border-width: 2px; }
.kitchen-ticket .ticket-head { padding: 17px 17px 14px 20px; }
.kitchen-ticket .ticket-number { font-size: 30px; }
.kitchen-ticket .ticket-time { font-size: 18px; }
.kitchen-ticket .time-badge { padding: 11px 15px; font-size: 20px; line-height: 1.05; font-weight: 950; letter-spacing: .01em; border: 1px solid transparent; box-shadow: 0 0 0 1px rgba(255,255,255,.02) inset; }
.kitchen-ticket .time-badge.kitchen-ok { background: rgba(66,184,131,.18); border-color: rgba(66,184,131,.55); color: #b9f5d7; }
.kitchen-ticket .time-badge.kitchen-critical { background: rgba(239,106,106,.22); border-color: rgba(239,106,106,.72); color: #ffd0d0; box-shadow: 0 0 0 1px rgba(239,106,106,.08) inset, 0 0 18px rgba(239,106,106,.08); }
@media (min-width: 1200px) { .kitchen-ticket .time-badge { font-size: 22px; padding: 12px 17px; } }
.kitchen-ticket .joint { width: calc(100% - 37px); display: flex; margin: 14px 17px 0 20px; padding: 10px 12px; font-size: 18px; line-height: 1.35; }
.kitchen-ticket .ticket-items { gap: 12px; padding: 17px 17px 17px 20px; }
.kitchen-ticket .ticket-item { align-items: flex-start; font-size: 21px; line-height: 1.3; }
.kitchen-ticket .kitchen-position { min-height: 74px; align-items: center; padding: 13px 14px; border: 2px solid rgba(214,173,92,.62); border-radius: 13px; background: linear-gradient(145deg,rgba(214,173,92,.13),rgba(214,173,92,.055)); }
.kitchen-ticket .ticket-item strong { font-size: 23px; }
.kitchen-ticket .ticket-item b { font-size: 22px; }
.kitchen-ticket .qty-badge { min-width: 64px; padding: 8px 10px; border-radius: 10px; background: var(--gold); color: #211b11; text-align: center; font-size: 25px; line-height: 1; }
.prepared-items { display: grid; gap: 10px; margin: 0 17px 17px 20px; padding: 13px; border: 2px solid rgba(239,106,106,.58); border-radius: 14px; background: rgba(239,106,106,.09); }
.prepared-title { color: #ffb3b3; font-size: 16px; font-weight: 950; letter-spacing: .045em; }
.kitchen-ticket .prepared-items .prepared-position { min-height: 62px; border-color: rgba(239,106,106,.45); background: rgba(239,106,106,.08); color: #cfaaa5; opacity: .72; text-decoration: line-through; }
.kitchen-ticket .prepared-items .prepared-position strong { color: #efadad; }
.kitchen-ticket .prepared-items .qty-badge { background: rgba(239,106,106,.24); color: #ffd0d0; }
.prepared-items.done { border-color: rgba(66,184,131,.35); background: rgba(66,184,131,.06); }
.prepared-items.done .prepared-title { color: #9be1c4; }
.kitchen-ticket .prepared-items.done .prepared-position { border-color: rgba(66,184,131,.25); background: rgba(66,184,131,.05); color: var(--muted); text-decoration: none; }
.kitchen-ticket .prepared-items.done .prepared-position strong { color: #9be1c4; }
.kitchen-ticket .prepared-items.done .qty-badge { background: rgba(66,184,131,.22); color: #b7edd5; }
.kitchen-ticket .ticket-note { margin: 0 17px 15px 20px; padding: 12px; font-size: 18px; }
.kitchen-ticket .stations { gap: 8px; padding: 0 17px 15px 20px; }
.kitchen-ticket .station-state { padding: 8px 10px; font-size: 16px; }
.kitchen-ticket .station-state.new,
.kitchen-ticket .station-state.accepted,
.kitchen-ticket .station-state.cooking { border-color: rgba(245,159,67,.42); background: rgba(245,159,67,.08); color: #f6c992; }
.kitchen-ticket .ticket-actions { padding: 14px 17px 17px 20px; }
.kitchen-ticket .ticket-actions button { min-height: 60px; font-size: 20px; }
.kitchen-ticket .success:disabled { opacity: 1; }
.empty { grid-column: 1/-1; padding: 48px 18px; border: 1px dashed var(--line); border-radius: 16px; color: var(--muted); text-align: center; }

.metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 11px; margin-bottom: 15px; }
.metric { padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--panel); }
.metric span { display: block; color: var(--muted); font-size: 13px; font-weight: 750; }
.metric strong { display: block; margin-top: 7px; font-size: 24px; letter-spacing: -.04em; }
.owner-overview-card { overflow: hidden; border-color: rgba(214,173,92,.34); background: radial-gradient(circle at 88% -20%,rgba(214,173,92,.19),transparent 36%),linear-gradient(145deg,#211f1c,var(--panel)); }
.owner-overview-card .section-head { margin-bottom: 17px; }
.owner-overview-card h2 { font-size: 27px; }
.owner-overview-metrics { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 9px; }
.owner-overview-metrics button { min-width: 0; min-height: 105px; display: block; padding: 13px; border: 1px solid var(--line); border-radius: 13px; background: rgba(17,16,14,.64); color: var(--text); text-align: left; }
.owner-overview-metrics button:hover { border-color: rgba(214,173,92,.48); background: rgba(214,173,92,.07); }
.owner-overview-metrics span, .owner-overview-metrics strong, .owner-overview-metrics small { display: block; }
.owner-overview-metrics span { color: var(--muted); font-size: 12px; font-weight: 800; }
.owner-overview-metrics strong { margin-top: 7px; font-size: 25px; letter-spacing: -.04em; }
.owner-overview-metrics small { margin-top: 5px; color: #8e887f; font-size: 10px; }
.owner-overview-metrics button.ready { border-color: rgba(66,184,131,.35); }
.owner-overview-metrics button.ready strong { color: #9be1c4; }
.owner-overview-metrics button.danger { border-color: rgba(239,106,106,.48); background: rgba(239,106,106,.08); }
.owner-overview-metrics button.danger strong { color: #ffb3b3; }
.owner-overview-metrics button.warning { border-color: rgba(245,159,67,.42); background: rgba(245,159,67,.07); }
.owner-overview-metrics button.warning strong { color: #f6c992; }
.owner-dashboard-grid { display: grid; grid-template-columns: minmax(0,1.12fr) minmax(360px,.88fr); gap: 15px; margin-top: 15px; }
.owner-lower-grid { grid-template-columns: minmax(0,1.2fr) minmax(340px,.8fr); }
.owner-attention-list { display: grid; gap: 8px; }
.owner-attention-row { width: 100%; min-height: 64px; display: grid; grid-template-columns: 10px minmax(0,1fr) auto 18px; align-items: center; gap: 11px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel-2); color: var(--text); text-align: left; }
.owner-attention-row:hover { border-color: rgba(214,173,92,.5); transform: translateX(2px); }
.owner-attention-mark { width: 8px; height: 36px; border-radius: 999px; background: var(--muted); }
.owner-attention-row strong, .owner-attention-row small { display: block; }
.owner-attention-row small { margin-top: 4px; color: var(--muted); font-size: 11px; }
.owner-attention-row > b { min-width: 35px; height: 35px; display: grid; place-items: center; padding: 0 7px; border-radius: 9px; background: var(--panel-3); font-size: 14px; }
.owner-attention-row > em { color: var(--muted); font-size: 18px; font-style: normal; }
.owner-attention-row.danger .owner-attention-mark { background: var(--red); }
.owner-attention-row.danger > b { background: rgba(239,106,106,.15); color: #ffb3b3; }
.owner-attention-row.warning .owner-attention-mark { background: var(--orange); }
.owner-attention-row.warning > b { background: rgba(245,159,67,.14); color: #f6c992; }
.owner-attention-row.good .owner-attention-mark { background: var(--green); }
.owner-attention-row.good > b { background: rgba(66,184,131,.14); color: #9be1c4; }
.owner-attention-row.info .owner-attention-mark { background: var(--blue); }
.owner-all-clear { min-height: 78px; display: flex; align-items: center; gap: 13px; padding: 13px; border: 1px solid rgba(66,184,131,.33); border-radius: 12px; background: rgba(66,184,131,.07); }
.owner-all-clear > span { width: 39px; height: 39px; display: grid; place-items: center; border-radius: 50%; background: rgba(66,184,131,.18); color: #9be1c4; font-size: 20px; font-weight: 950; }
.owner-all-clear strong, .owner-all-clear small { display: block; }
.owner-all-clear small { margin-top: 4px; color: var(--muted); }
.owner-quick-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.owner-quick-action { min-height: 68px; display: grid; grid-template-columns: 35px minmax(0,1fr) 15px; align-items: center; gap: 9px; padding: 9px 10px; border: 1px solid var(--line); border-radius: 11px; background: var(--panel-2); color: var(--text); text-align: left; }
.owner-quick-action:hover { border-color: rgba(214,173,92,.5); background: rgba(214,173,92,.07); }
.owner-quick-action > b { width: 35px; height: 35px; display: grid; place-items: center; border-radius: 9px; background: rgba(214,173,92,.11); color: var(--gold-light); font-size: 17px; }
.owner-quick-action strong, .owner-quick-action small { display: block; }
.owner-quick-action small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.owner-quick-action > em { color: var(--muted); font-style: normal; }
.owner-station-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.owner-station-card { min-height: 94px; display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 13px; padding: 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel-2); color: var(--text); text-align: left; }
.owner-station-card:hover { border-color: rgba(214,173,92,.5); }
.owner-station-card.has-overdue { border-color: rgba(239,106,106,.46); background: rgba(239,106,106,.065); }
.owner-station-card > div span, .owner-station-card > div em { display: block; }
.owner-station-card > div span { font-size: 15px; font-weight: 900; }
.owner-station-card > div em { margin-top: 4px; color: var(--muted); font-size: 10px; font-style: normal; }
.owner-station-card.has-overdue > div em { color: #ffb3b3; }
.owner-station-card > strong { min-width: 48px; text-align: center; font-size: 21px; }
.owner-station-card > strong small { display: block; margin-top: 3px; color: var(--muted); font-size: 9px; font-weight: 700; }
.owner-station-card > i { grid-column: 1/-1; height: 5px; overflow: hidden; border-radius: 999px; background: #11100e; }
.owner-station-card > i b { display: block; height: 100%; border-radius: inherit; background: var(--gold); }
.owner-station-card.has-overdue > i b { background: var(--red); }
.owner-payment-list { display: grid; gap: 7px; }
.owner-payment-row { min-height: 49px; display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 12px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 10px; background: var(--panel-2); }
.owner-payment-row span { color: var(--muted); font-size: 12px; font-weight: 800; }
.owner-payment-row strong { font-size: 12px; }
.owner-payment-row b { color: var(--gold-light); }
.owner-payment-empty { padding: 28px 12px; color: var(--muted); text-align: center; }
.two-column { display: grid; grid-template-columns: 1.08fr .92fr; gap: 15px; }
.form-stack { display: grid; gap: 11px; }
.settings-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }
.payment-method-list { display: grid; gap: 9px; }
.payment-method-option { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 12px; min-height: 72px; padding: 11px 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel-2); }
.payment-method-option:has(.payment-main-toggle input:checked) { border-color: rgba(214,173,92,.52); background: rgba(214,173,92,.09); }
.payment-method-option input { width: 22px; height: 22px; accent-color: var(--gold); }
.payment-main-toggle { min-width: 0; display: flex; align-items: center; gap: 12px; cursor: pointer; }
.payment-main-toggle > span { min-width: 0; flex: 1; }
.payment-method-option span, .payment-method-option strong, .payment-method-option small { display: block; }
.payment-method-option small { margin-top: 4px; color: var(--muted); }
.payment-method-option em { padding: 4px 7px; border: 1px solid rgba(102,169,232,.35); border-radius: 7px; color: #b9d9f6; font-size: 11px; font-style: normal; font-weight: 850; }
.delivery-toggle { display: flex; align-items: center; gap: 7px; padding: 8px 9px; border: 1px solid var(--line); border-radius: 9px; color: var(--muted); font-size: 12px; font-weight: 800; cursor: pointer; }
.delivery-toggle input { width: 18px; height: 18px; }
.delivery-toggle:has(input:checked) { border-color: rgba(66,184,131,.45); background: rgba(66,184,131,.08); color: #9be1c4; }
.delivery-toggle.locked { color: #777168; cursor: default; }
.payment-rules-note { margin-top: 10px; }
.modal-check { display: flex; align-items: flex-start; gap: 10px; margin-top: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: var(--panel-2); cursor: pointer; }
.modal-check input { width: 21px; height: 21px; flex: 0 0 auto; accent-color: var(--gold); }
.modal-check strong, .modal-check small { display: block; }
.modal-check small { margin-top: 4px; color: var(--muted); line-height: 1.4; }
.add-payment-button { flex: 0 0 auto; }
.branches-layout { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr); gap: 15px; }
.branch-list { display: grid; gap: 10px; }
.branch-card { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px; border: 1px solid var(--line); border-radius: 13px; background: var(--panel-2); }
.branch-card h3 { margin: 7px 0 4px; font-size: 19px; }
.branch-card code { color: var(--gold-light); font-size: 14px; font-weight: 850; }
.branch-card p { margin: 7px 0 0; color: var(--muted); font-size: 13px; }
.branch-type { display: inline-flex; padding: 4px 7px; border: 1px solid rgba(102,169,232,.34); border-radius: 7px; color: #b9d9f6; font-size: 10px; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.branch-type.local { border-color: rgba(66,184,131,.35); color: #9be1c4; }
.branch-type.active { border-color: rgba(66,184,131,.35); color: #9be1c4; }
.branch-type.waiting { border-color: rgba(245,159,67,.4); color: #f6c992; }
.branch-network-hero { margin-bottom: 15px; }
.branch-card-main { min-width: 0; }
.branch-status-line { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.branch-address { color: var(--muted); font-size: 12px; }
.branch-copy-options { display: grid; gap: 8px; }
.branch-copy-options label { display: flex; align-items: flex-start; gap: 11px; padding: 11px; border: 1px solid var(--line); border-radius: 11px; background: var(--panel-2); cursor: pointer; }
.branch-copy-options input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--gold); }
.branch-copy-options span, .branch-copy-options strong, .branch-copy-options small { display: block; }
.branch-copy-options strong { font-size: 14px; }
.branch-copy-options small { margin-top: 3px; color: var(--muted); font-size: 12px; }
.branch-copy-summary { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin-bottom: 12px; }
.branch-copy-summary span { padding: 9px; border: 1px solid var(--line); border-radius: 9px; background: var(--panel-2); color: var(--muted); font-size: 12px; text-align: center; }
.branch-copy-summary strong { display: block; margin-top: 3px; color: var(--text); font-size: 18px; }
.activation-panel { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 6px 12px; margin: 13px 0; padding: 15px; border: 1px solid rgba(214,173,92,.55); border-radius: 13px; background: rgba(214,173,92,.1); }
.activation-panel span, .activation-panel small { grid-column: 1; color: var(--muted); font-size: 12px; }
.activation-panel strong { grid-column: 1; color: var(--gold-light); font-size: 34px; letter-spacing: .18em; }
.activation-panel button { grid-column: 2; grid-row: 1/4; }
.initial-pins { margin: 13px 0; padding-top: 12px; border-top: 1px solid var(--line); }
.initial-pins h4 { margin: 0 0 8px; }
.initial-pins > div { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 9px; padding: 8px 0; border-bottom: 1px solid rgba(255,255,255,.06); }
.initial-pins code { color: var(--gold-light); font-size: 18px; font-weight: 900; letter-spacing: .08em; }
.devices-card { margin-top: 15px; }
.devices-layout { display: grid; grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr); gap: 16px; }
.device-pairing-form { display: grid; align-content: start; gap: 10px; padding: 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--panel-2); }
.device-list { display: grid; gap: 8px; }
.device-row { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 11px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel-2); }
.device-row.revoked { opacity: .58; }
.device-icon { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid rgba(214,173,92,.35); border-radius: 11px; background: rgba(214,173,92,.09); color: var(--gold-light); font-weight: 950; }
.device-row strong, .device-row span, .device-row small { display: block; }
.device-row span { margin-top: 2px; color: var(--gold-light); font-size: 12px; font-weight: 800; }
.device-row small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.device-offline { color: var(--muted) !important; font-size: 11px !important; text-transform: uppercase; }
.protection-status { padding: 7px 9px; border: 1px solid rgba(245,159,67,.35); border-radius: 8px; color: #f6c992; font-size: 11px; font-weight: 850; }
.protection-status.enabled { border-color: rgba(66,184,131,.35); color: #9be1c4; }
.login-device { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 13px; padding: 11px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel-2); text-align: left; }
.login-device.connected { border-color: rgba(66,184,131,.35); background: rgba(66,184,131,.07); }
.login-device.required { border-color: rgba(245,159,67,.4); background: rgba(245,159,67,.07); }
.login-device span, .login-device strong, .login-device small { display: block; }
.login-device span { color: var(--muted); font-size: 10px; font-weight: 850; text-transform: uppercase; }
.login-device strong { margin-top: 3px; font-size: 13px; }
.login-device small { margin-top: 2px; color: var(--muted); font-size: 11px; }
.login-device button { min-height: 38px; flex: 0 0 auto; padding-inline: 10px; }
.device-pair-icon { width: 52px; height: 52px; display: grid; place-items: center; margin: 0 auto 11px; border: 1px solid rgba(214,173,92,.45); border-radius: 15px; background: rgba(214,173,92,.1); color: var(--gold-light); font-size: 24px; }
.device-pair-modal h3, .device-pair-modal > p, .device-code-modal h3, .device-code-modal > p { text-align: center; }
.activation-code { margin: 14px 0 8px; color: var(--gold-light); font-size: clamp(38px,8vw,56px); font-weight: 950; letter-spacing: .2em; text-align: center; }
.copy-code-button { width: 100%; margin-bottom: 12px; }
.unlink-button { width: 100%; margin-top: 12px; }
.report-filters { display: flex; align-items: end; gap: 9px; }
.report-filters .field { min-width: 190px; }
.reports-summary { margin-bottom: 15px; }
.report-calendar-card { margin-bottom: 15px; }
.report-weekdays, .report-calendar { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 7px; }
.report-weekdays { margin-bottom: 7px; }
.report-weekdays span { padding: 5px; color: var(--muted); text-align: center; font-size: 12px; font-weight: 850; text-transform: uppercase; }
.report-calendar-day, .report-calendar-empty { min-height: 105px; border-radius: 12px; }
.report-calendar-day { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 5px; padding: 10px; border: 1px solid var(--line); background: #151412; color: var(--muted); text-align: left; }
.report-calendar-day:disabled { opacity: .52; cursor: default; }
.report-calendar-day.has-data { border-color: rgba(214,173,92,.32); background: linear-gradient(145deg,var(--panel-2),#1c1a18); color: var(--text); }
.report-calendar-day.has-data:hover { border-color: rgba(214,173,92,.65); transform: translateY(-1px); }
.report-calendar-day.selected { border-color: var(--gold); box-shadow: inset 0 0 0 1px var(--gold),0 10px 28px rgba(0,0,0,.2); background: rgba(214,173,92,.12); }
.report-calendar-day.has-late::after { content: ""; position: absolute; top: 9px; right: 9px; width: 8px; height: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 4px rgba(239,106,106,.12); }
.calendar-day-number { color: var(--gold-light); font-size: 20px; font-weight: 950; }
.report-calendar-day strong { margin-top: auto; font-size: 13px; }
.report-calendar-day small { font-size: 11px; }
.report-calendar-day em { color: #ffb3b3; font-size: 10px; font-style: normal; font-weight: 850; }
.report-day-detail { margin-bottom: 15px; }
.report-day-metrics { margin-bottom: 17px; }
.report-payment-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 18px 0 10px; }
.report-payment-head h3, .report-orders-head h3 { margin: 0; }
.report-quick-filters { display: flex; flex-wrap: wrap; gap: 7px; }
.report-filter-chip { min-height: 37px; padding: 0 11px; border: 1px solid var(--line); border-radius: 9px; background: var(--panel-2); color: var(--muted); font-size: 12px; font-weight: 850; }
.report-filter-chip.active { border-color: var(--gold); color: var(--gold-light); background: rgba(214,173,92,.1); }
.report-filter-chip.late.active { border-color: rgba(239,106,106,.6); color: #ffb3b3; background: rgba(239,106,106,.1); }
.report-payment-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(165px,1fr)); gap: 9px; }
.report-payment-card { min-height: 96px; display: flex; flex-direction: column; align-items: flex-start; gap: 5px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel-2); text-align: left; }
.report-payment-card:hover, .report-payment-card.active { border-color: var(--gold); background: rgba(214,173,92,.1); }
.report-payment-card span { color: var(--muted); font-size: 12px; font-weight: 800; }
.report-payment-card strong { margin-top: auto; font-size: 19px; }
.report-payment-card em { color: var(--gold-light); font-size: 14px; font-style: normal; font-weight: 850; }
.report-orders-head { margin-top: 21px; padding-top: 16px; border-top: 1px solid var(--line); }
.report-orders-head > strong { min-width: 37px; height: 37px; display: grid; place-items: center; border-radius: 10px; background: var(--panel-3); color: var(--gold-light); }
.report-orders-table { min-width: 1180px; }
.report-order-row { cursor: pointer; }
.report-order-row:hover, .report-order-row:focus { outline: none; background: rgba(214,173,92,.09); }
.report-order-preview { max-width: 320px; overflow: hidden; text-overflow: ellipsis; }
.connection-modal { width: min(650px,100%); }
.connection-secret { display: grid; grid-template-columns: 1fr auto; gap: 5px 10px; margin-bottom: 9px; padding: 11px; border: 1px solid var(--line); border-radius: 11px; background: #12110f; }
.connection-secret span { grid-column: 1/-1; color: var(--muted); font-size: 12px; font-weight: 750; }
.connection-secret code { min-width: 0; align-self: center; overflow-wrap: anywhere; color: var(--gold-light); font-size: 14px; }
.connection-secret button { min-height: 36px; padding-inline: 10px; font-size: 12px; }
.table { width: 100%; border-collapse: collapse; }
.table th, .table td { padding: 11px 8px; border-bottom: 1px solid var(--line); text-align: right; font-size: 14px; }
.table th:first-child, .table td:first-child { text-align: left; }
.table th { color: var(--muted); font-size: 11px; text-transform: uppercase; }
.table-wrap { width: 100%; overflow-x: auto; }
.control-toolbar { margin-bottom: 15px; }
.control-toolbar .section-head .field { min-width: 240px; }
.compact-metrics { margin-bottom: 0; }
.control-table { min-width: 930px; }
.control-table th, .control-table td { text-align: left; white-space: nowrap; }
.control-table .late-row { background: rgba(239,106,106,.055); }
.table .late-row { background: rgba(239,106,106,.055); }
.timing-badge { display: inline-flex; padding: 6px 8px; border: 1px solid var(--line); border-radius: 8px; font-size: 12px; font-weight: 900; }
.late-badge { border-color: rgba(239,106,106,.45); background: rgba(239,106,106,.12); color: #ffb3b3; }
.ontime-badge { border-color: rgba(66,184,131,.4); background: rgba(66,184,131,.1); color: #9be1c4; }
.pending-badge { border-color: rgba(245,159,67,.4); background: rgba(245,159,67,.09); color: #f6c992; }
.muted-badge { color: var(--muted); }
.table-total td { border-top: 2px solid rgba(214,173,92,.38); color: var(--gold-light); font-weight: 850; }
.month-close-button { width: 100%; margin-top: 13px; }
.notice { padding: 12px 13px; border: 1px solid rgba(102,169,232,.35); border-radius: 11px; background: rgba(102,169,232,.08); color: #b9d9f6; font-size: 14px; line-height: 1.5; }
.settings-note { font-size: 14px; line-height: 1.55; }
.notice.warning { border-color: rgba(245,159,67,.35); background: rgba(245,159,67,.08); color: #f6c992; }
.notice.good { border-color: rgba(66,184,131,.35); background: rgba(66,184,131,.08); color: #9be1c4; }

.modal-backdrop { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; padding: 17px; background: rgba(0,0,0,.72); backdrop-filter: blur(8px); }
.modal { width: min(470px,100%); max-height:calc(100dvh - 34px); padding: 19px; border: 1px solid rgba(214,173,92,.4); border-radius: 19px; background: var(--panel); box-shadow: 0 24px 70px rgba(0,0,0,.45); overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; scrollbar-gutter:stable; touch-action:pan-y; }
.modal h3 { margin: 0 0 7px; }
.modal p { margin: 0 0 14px; color: var(--muted); font-size: 14px; line-height: 1.5; }
.modal .notice { margin-bottom: 13px; }
.add-items-modal-backdrop { padding: 17px; }
.add-item-modal { width: min(1220px,100%); height: min(790px,calc(100dvh - 34px)); display: flex; flex-direction: column; padding: 0; overflow: hidden; }
.add-modal-header { flex-shrink: 0; display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 18px 20px 14px; border-bottom: 1px solid var(--line); }
.add-modal-header h3 { margin: 4px 0; font-size: 25px; }
.add-modal-header p { margin: 0; }
.add-items-workspace { min-height: 0; flex: 1; display: grid; grid-template-columns: minmax(0,1fr) 380px; }
.add-items-catalog { min-width: 0; display: flex; flex-direction: column; padding: 14px; overflow: hidden; }
.add-items-category-tabs { flex: 0 0 auto; margin-bottom: 9px; }
.add-items-search-wrap { flex: 0 0 auto; }
.add-items-menu-grid { min-height: 0; grid-template-columns: repeat(3,minmax(0,1fr)); padding: 2px 2px 12px; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.add-items-menu-grid .menu-item { min-height: 108px; }
.add-items-cart-panel { min-height: 0; display: flex; flex-direction: column; padding: 15px; border-left: 1px solid var(--line); background: rgba(15,14,13,.35); }
.add-items-current-total, .add-items-summary > div { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.add-items-current-total { margin-bottom: 11px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: var(--panel-2); }
.add-items-current-total span, .add-items-summary span { color: var(--muted); font-size: 13px; font-weight: 800; }
.add-items-current-total strong { font-size: 20px; }
.add-modal-cart-lines { min-height: 90px; flex: 1; margin: 10px 0; padding-right: 3px; overflow-y: auto; }
.add-modal-cart-line { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 9px; padding: 10px 2px; border-bottom: 1px solid var(--line); }
.add-modal-cart-line strong, .add-modal-cart-line span { display: block; }
.add-modal-cart-line strong { line-height: 1.35; }
.add-modal-cart-line span { margin-top: 3px; color: var(--muted); font-size: 12px; }
.add-items-summary { flex: 0 0 auto; display: grid; gap: 8px; padding: 12px; border: 1px solid rgba(214,173,92,.4); border-radius: 11px; background: rgba(214,173,92,.08); }
.add-items-summary strong { font-size: 19px; }
.add-items-summary .new-check-total { padding-top: 8px; border-top: 1px solid rgba(214,173,92,.28); }
.add-items-summary .new-check-total span { color: var(--gold-light); }
.add-items-summary .new-check-total strong { font-size: 24px; }
.add-items-modal-actions { flex: 0 0 auto; }
.add-items-modal-actions button { min-height: 48px; flex: 1; }
.report-modal-backdrop { place-items: stretch end; padding: 0; }
.report-order-modal { width: min(720px,100%); height: 100dvh; max-height: 100dvh; display: flex; flex-direction: column; padding: 0; overflow: hidden; border-radius: 24px 0 0 24px; }
.report-modal-header { flex-shrink: 0; display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 21px 22px 16px; border-bottom: 1px solid var(--line); background: var(--panel); }
.report-modal-header h3 { margin: 4px 0; font-size: 25px; }
.report-modal-header p { margin: 0; }
.report-modal-close { width: 44px; height: 44px; flex: 0 0 auto; display: grid; place-items: center; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: var(--panel-3); color: var(--muted); font-size: 28px; line-height: 1; }
.report-modal-scroll { min-height: 0; flex: 1; padding: 19px 22px 25px; overflow-y: auto; }
.report-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.report-detail-row { min-height: 62px; display: flex; flex-direction: column; justify-content: center; gap: 5px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: #151412; }
.report-detail-row span, .report-order-note span { color: var(--muted); font-size: 12px; font-weight: 750; }
.report-detail-row strong { overflow-wrap: anywhere; font-size: 14px; }
.report-detail-row.late-value { border-color: rgba(239,106,106,.42); background: rgba(239,106,106,.07); }
.report-detail-row.late-value strong { color: #ffb3b3; }
.report-order-note { display: grid; gap: 6px; margin-top: 11px; padding: 12px; border: 1px solid rgba(245,159,67,.36); border-radius: 10px; background: rgba(245,159,67,.07); }
.report-order-note strong { color: #f6c992; line-height: 1.45; }
.report-receipt { margin-top: 18px; }
.report-receipt h4 { margin: 0 0 9px; font-size: 18px; }
.report-receipt-line { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding: 13px 2px; border-bottom: 1px solid var(--line); }
.report-receipt-line > div { min-width: 0; }
.report-receipt-line strong, .report-receipt-line small { display: block; }
.report-receipt-line strong { font-size: 15px; line-height: 1.4; }
.report-receipt-line small { margin-top: 4px; color: var(--muted); }
.report-receipt-line > b { flex: 0 0 auto; color: var(--gold-light); }
.report-modal-stations { padding: 15px 0 0; }
.report-modal-total { display: flex; align-items: baseline; justify-content: space-between; gap: 15px; margin-top: 18px; padding: 16px; border: 1px solid rgba(214,173,92,.45); border-radius: 12px; background: rgba(214,173,92,.1); }
.report-modal-total span { color: var(--gold-light); font-weight: 800; }
.report-modal-total strong { font-size: 25px; }
.modal-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 14px; }
.toasts { position: fixed; z-index: 80; right: 17px; bottom: 17px; display: grid; gap: 7px; pointer-events: none; }
.toast { min-width: 250px; max-width: 380px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 11px; background: #26231f; box-shadow: 0 18px 55px rgba(0,0,0,.3); font-size: 14px; }
.toast.error { border-color: rgba(239,106,106,.5); color: #ffb3b3; }
.toast.good { border-color: rgba(66,184,131,.5); color: #9be1c4; }

@media (max-width: 1180px) {
  .app-layout { grid-template-columns: 84px minmax(0,1fr); }
  .sidebar { padding-inline: 9px; }
  .sidebar .brand { justify-content: center; }
  .sidebar .brand > div:last-child, .branch-chip, .nav-label, .nav-section, .user-meta, .connection span { display: none; }
  .nav-button { justify-content: center; padding: 0; }
  .user-card { justify-content: center; padding-inline: 0; }
  .logout { display: none; }
  .order-workspace { grid-template-columns: minmax(0,1fr) 345px; }
  .menu-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .add-items-menu-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ticket-grid { grid-template-columns: repeat(2,minmax(250px,1fr)); }
  .owner-overview-metrics { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 1000px) {
  .owner-dashboard-grid, .owner-lower-grid { grid-template-columns: 1fr; }
}

@media (min-width: 821px) {
  .cart { height: calc(100vh - 42px); height: calc(100dvh - 42px); }
  .cart-items { flex: 0 1 auto; min-height: 92px; max-height: min(230px,28vh); }
  #order-form { min-height: 0; flex: 1 1 auto; display: flex; flex-direction: column; overflow: hidden; }
  #order-form .order-form { min-height: 0; flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
}

@media (max-width: 820px) {
  .app-layout { display: block; padding-bottom: 82px; }
  .sidebar { position: fixed; inset: auto 0 0; z-index: 30; width: auto; height: 74px; display: block; padding: 7px 9px calc(7px + env(safe-area-inset-bottom)); border-top: 1px solid var(--line); border-right: 0; }
  .sidebar .brand, .branch-chip, .sidebar-footer, .nav-section { display: none; }
  .nav-list { grid-auto-flow: column; grid-auto-columns: minmax(76px,1fr); gap: 4px; overflow-x: auto; overscroll-behavior-inline: contain; }
  .nav-button { min-height: 52px; display: grid; place-items: center; gap: 1px; padding: 3px; font-size: 12px; }
  .nav-icon { font-size: 19px; }
  .nav-label { display: block; font-size: 11px; }
  .main { padding: 13px; }
  .operations-strip { margin-top: -2px; }
  .operation-chip { min-width: 132px; }
  .topbar { align-items: flex-start; }
  .shift-pill { display: none; }
  .order-workspace, .two-column, .branches-layout { grid-template-columns: 1fr; }
  .devices-layout { grid-template-columns: 1fr; }
  .cart { position: static; max-height: none; }
  .ticket-grid { grid-template-columns: 1fr; }
  .metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .payment-method-option { grid-template-columns: 1fr; }
  .control-toolbar .section-head { align-items: stretch; flex-direction: column; }
  .control-toolbar .section-head .field { min-width: 0; }
  .report-filters { width: 100%; align-items: stretch; }
  .report-filters .field { min-width: 0; flex: 1; }
  .report-calendar-day, .report-calendar-empty { min-height: 88px; }
  .report-calendar-day { padding: 7px; }
  .report-calendar-day strong { font-size: 11px; }
  .report-calendar-day small { font-size: 10px; }
  .report-calendar-day em { display: none; }
  .add-items-modal-backdrop { padding: 6px; }
  .add-item-modal { height: calc(100dvh - 12px); }
  .add-items-workspace { grid-template-columns: minmax(0,1fr) 300px; }
  .add-items-cart-panel { padding: 11px; }
  .floating-cart-button { right: 13px; bottom: calc(88px + env(safe-area-inset-bottom)); display: flex; }
  .menu-tools-sticky { top: 4px; }
}

@media (max-width: 520px) {
  .login-page { padding: 13px; }
  .login-card { padding: 23px 17px; }
  .main { padding: 9px; }
  .clock { min-width: 76px; padding-inline: 7px; }
  .profile-switch { width: 43px; justify-content: center; padding: 0; }
  .profile-switch-label { display: none; }
  .menu-grid { grid-template-columns: 1fr 1fr; gap: 7px; }
  .menu-item { min-height: 101px; padding: 10px; }
  .order-form, .settings-grid { grid-template-columns: 1fr; }
  .field.full, .wide { grid-column: auto; }
  .admin-ticket-actions button { min-width: 100%; }
  .section-head { align-items: stretch; flex-direction: column; }
  .add-payment-button { width: 100%; }
  .branch-card { align-items: stretch; flex-direction: column; }
  .branch-copy-summary { grid-template-columns: 1fr; }
  .activation-panel { grid-template-columns: 1fr; }
  .activation-panel span, .activation-panel small, .activation-panel strong, .activation-panel button { grid-column: 1; grid-row: auto; }
  .activation-panel button { width: 100%; }
  .initial-pins > div { grid-template-columns: minmax(0,1fr) auto; }
  .initial-pins > div button { grid-column: 1/-1; }
  .device-row { grid-template-columns: 42px minmax(0,1fr); }
  .device-row > button, .device-row > .device-offline { grid-column: 1/-1; width: 100%; }
  .report-filters { display: grid; }
  .connection-secret { grid-template-columns: 1fr; }
  .connection-secret span { grid-column: auto; }
  .report-calendar-card { padding-inline: 9px; }
  .report-weekdays, .report-calendar { gap: 3px; }
  .report-weekdays span { padding-inline: 0; font-size: 9px; }
  .report-calendar-day, .report-calendar-empty { min-height: 68px; border-radius: 8px; }
  .report-calendar-day { gap: 2px; padding: 5px; }
  .calendar-day-number { font-size: 15px; }
  .report-calendar-day strong { font-size: 9px; }
  .report-calendar-day small { display: none; }
  .report-payment-head { align-items: stretch; flex-direction: column; }
  .report-payment-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .report-detail-grid { grid-template-columns: 1fr; }
  .report-order-modal { border-radius: 0; }
  .report-modal-header, .report-modal-scroll { padding-inline: 14px; }
  .report-modal-total { align-items: flex-start; flex-direction: column; }
  .add-item-modal { border-radius: 12px; }
  .add-modal-header { padding: 13px; }
  .add-modal-header h3 { font-size: 20px; }
  .add-modal-header p { display: none; }
  .add-items-workspace { display: grid; grid-template-columns: 1fr; grid-template-rows: minmax(330px,1fr) minmax(270px,.8fr); overflow-y: auto; }
  .add-items-catalog { min-height: 330px; }
  .add-items-cart-panel { min-height: 270px; border-top: 1px solid var(--line); border-left: 0; }
  .add-modal-cart-lines { max-height: 150px; }
  .floating-cart-button { min-width: 184px; min-height: 58px; padding-right: 11px; border-radius: 16px; }
  .floating-cart-icon { width: 40px; height: 40px; flex-basis: 40px; }
  .floating-cart-copy strong { font-size: 15px; }
  .cart-review-backdrop { padding: 0; }
  .cart-review-modal { width: 100vw; height: 100dvh; max-height: none; border-radius: 0; }
  .cart-review-footer { align-items: stretch; flex-direction: column; gap: 10px; padding: 13px 14px calc(14px + env(safe-area-inset-bottom)); }
  .cart-review-footer .modal-actions { width: 100%; }
  .cart-review-footer .modal-actions button { min-width: 0; padding-inline: 9px; }
  .owner-overview-card h2 { font-size: 23px; }
  .owner-overview-card .section-head > button { width: 100%; }
  .owner-overview-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .owner-overview-metrics button { min-height: 94px; }
  .owner-quick-grid, .owner-station-grid { grid-template-columns: 1fr; }
  .owner-attention-row { grid-template-columns: 8px minmax(0,1fr) auto; }
  .owner-attention-row > em { display: none; }
}

@media (orientation: portrait) and (max-width: 1180px) {
  .kitchen-ticket-grid { grid-template-columns: 1fr; }
}

@media (orientation: landscape) and (max-height: 900px) {
  .kitchen-ticket-grid { display: flex; flex-wrap: nowrap; gap: 14px; padding: 2px 2px 13px; overflow-x: auto; scroll-snap-type: x proximity; overscroll-behavior-inline: contain; -webkit-overflow-scrolling: touch; }
  .kitchen-ticket-grid .kitchen-ticket { flex: 0 0 clamp(380px,43vw,520px); scroll-snap-align: start; }
  .kitchen-ticket-grid .empty { flex: 1 0 100%; }
  .kitchen-ticket .ticket-items { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .kitchen-ticket .prepared-items { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .kitchen-ticket .prepared-title { grid-column: 1/-1; }
}

/* v0.11 beta: предзаказы, финансовый контроль и резервные копии */
.preorder-toolbar, .preorder-calendar-card { margin-bottom: 15px; }
.calendar-month-actions { display: flex; align-items: center; gap: 10px; }
.calendar-month-actions button { min-width: 45px; min-height: 43px; padding: 0; }
.calendar-month-actions strong { min-width: 170px; color: var(--gold-light); text-align: center; text-transform: capitalize; }
.preorder-calendar { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 7px; }
.preorder-calendar-day, .preorder-calendar-empty { min-height: 116px; border-radius: 12px; }
.preorder-calendar-day { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; padding: 10px; border: 1px solid var(--line); background: #151412; color: var(--muted); text-align: left; }
.preorder-calendar-day > span { color: var(--gold-light); font-size: 21px; font-weight: 950; }
.preorder-calendar-day strong { margin-top: auto; color: var(--text); }
.preorder-calendar-day small { font-size: 11px; }
.preorder-calendar-day em { color: #f6c992; font-size: 10px; font-style: normal; font-weight: 850; }
.preorder-calendar-day.has-orders { border-color: rgba(214,173,92,.38); background: linear-gradient(145deg,var(--panel-2),#1c1a18); }
.preorder-calendar-day:hover, .preorder-calendar-day.selected { border-color: var(--gold); background: rgba(214,173,92,.1); }
.preorder-calendar-day.today { box-shadow: inset 0 0 0 1px rgba(102,169,232,.58); }
.preorder-calendar-day.selected { box-shadow: inset 0 0 0 2px var(--gold); }
.preorder-day-section { margin-bottom: 18px; }

.reconciliation-form { display: grid; gap: 9px; }
.reconciliation-entry { display: grid; grid-template-columns: minmax(0,1fr) 145px 130px; align-items: center; gap: 10px; padding: 11px; border: 1px solid var(--line); border-radius: 11px; background: var(--panel-2); }
.reconciliation-entry > div strong, .reconciliation-entry > div span { display: block; }
.reconciliation-entry > div span { margin-top: 4px; color: var(--muted); font-size: 12px; }
.reconciliation-entry input { text-align: right; font-weight: 900; }
.difference-output { padding: 7px 8px; border: 1px solid var(--line); border-radius: 8px; text-align: center; font-size: 12px; font-weight: 900; }
.difference-output.neutral { color: #9be1c4; }
.difference-output.positive, .difference-output.negative { border-color: rgba(239,106,106,.45); background: rgba(239,106,106,.1); color: #ffb3b3; }
.settings-divider { margin-top: 7px; padding-top: 15px; border-top: 1px solid var(--line); }
.settings-divider h3 { margin: 0 0 5px; }
.settings-divider p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
.settings-divider code { color: var(--gold-light); overflow-wrap: anywhere; }
.emergency-cleanup-card { margin-top: 15px; border-color: rgba(239,106,106,.46); background: linear-gradient(145deg,rgba(45,24,24,.5),var(--panel) 48%); }
.danger-eyebrow { color: #ff9f9f; }
.emergency-ready, .emergency-not-ready { display: inline-flex; padding: 7px 10px; border-radius: 9px; font-size: 11px; font-weight: 900; text-transform: uppercase; }
.emergency-ready { border: 1px solid rgba(66,184,131,.4); background: rgba(66,184,131,.1); color: #9be1c4; }
.emergency-not-ready { border: 1px solid rgba(239,106,106,.45); background: rgba(239,106,106,.1); color: #ffb3b3; }
.emergency-cleanup-layout { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(260px,.55fr); gap: 15px; align-items: start; }
.emergency-custom-smtp { display: grid; grid-template-columns: 1fr 140px 1.1fr; gap: 10px; padding: 12px; border: 1px dashed rgba(214,173,92,.32); border-radius: 12px; background: rgba(214,173,92,.04); }
.emergency-custom-smtp .field { margin: 0; }
.emergency-custom-smtp .modal-check { margin: 0; }
.emergency-action-panel { display: grid; gap: 12px; padding: 18px; border: 1px solid rgba(239,106,106,.52); border-radius: 14px; background: rgba(239,106,106,.075); }
.emergency-action-panel > strong { color: #ffb3b3; font-size: 19px; }
.emergency-action-panel p, .emergency-action-panel small { margin: 0; color: var(--muted); line-height: 1.45; }
.emergency-wipe-button { min-height: 58px; border-color: var(--red); background: rgba(239,106,106,.18); font-size: 16px; font-weight: 950; }
.emergency-modal-backdrop { background: rgba(20,0,0,.84); }
.emergency-cleanup-modal { width: min(520px,100%); border-color: rgba(239,106,106,.7); text-align: center; }
.emergency-cleanup-modal h3 { color: #ffb3b3; font-size: 27px; }
.emergency-cleanup-modal p { color: var(--text); font-size: 15px; }
.emergency-cleanup-modal .field { text-align: left; }
.emergency-cleanup-modal .field input { height: 58px; text-align: center; font-size: 25px; font-weight: 900; letter-spacing: .28em; }
.emergency-cleanup-modal .modal-actions button { min-height: 49px; flex: 1; }
.emergency-modal-icon { width: 58px; height: 58px; display: grid; place-items: center; margin: 0 auto 13px; border: 2px solid var(--red); border-radius: 50%; background: rgba(239,106,106,.12); color: #ffb3b3; font-size: 34px; font-weight: 950; }
.emergency-complete-card { text-align: center; }
.emergency-complete-mark { width: 64px; height: 64px; display: grid; place-items: center; margin: 0 auto; border-radius: 50%; background: rgba(66,184,131,.16); color: #9be1c4; font-size: 35px; font-weight: 950; }

.report-calendar-day.has-difference { border-color: rgba(239,106,106,.48); }
.report-calendar-day.has-difference::before { content: "!"; position: absolute; top: 6px; right: 24px; width: 18px; height: 18px; display: grid; place-items: center; border-radius: 50%; background: var(--red); color: #140e0e; font-size: 11px; font-weight: 950; }
.report-control-block { margin-top: 21px; padding-top: 17px; border-top: 1px solid var(--line); }
.reconciliation-report-table th, .reconciliation-report-table td { text-align: right; }
.reconciliation-report-table th:first-child, .reconciliation-report-table td:first-child { text-align: left; }
.reconciliation-report-table .difference-row { background: rgba(239,106,106,.08); color: #ffb3b3; }
.discrepancy-reasons { margin-top: 11px; }

.report-control-details { padding-top: 0; }
.report-control-details > summary { display: grid; grid-template-columns: minmax(0,1fr) auto 26px; align-items: center; gap: 12px; padding: 17px 4px 12px; cursor: pointer; list-style: none; user-select: none; }
.report-control-details > summary::-webkit-details-marker { display: none; }
.report-control-details > summary span strong, .report-control-details > summary span small { display: block; }
.report-control-details > summary span strong { color: var(--text); font-size: 18px; }
.report-control-details > summary span small { margin-top: 4px; color: var(--muted); line-height: 1.4; }
.report-control-details > summary b { min-width: 34px; padding: 6px 9px; border: 1px solid var(--line); border-radius: 9px; background: var(--panel-2); color: var(--gold-light); text-align: center; }
.report-control-details > summary i { color: var(--gold-light); font-size: 22px; font-style: normal; text-align: center; transition: transform .18s ease; }
.report-control-details[open] > summary i { transform: rotate(180deg); }
.report-control-details-body { padding-top: 5px; }
.emergency-mail-help { line-height: 1.5; }

.audit-control-table { min-width: 850px; }
.report-order-audit { padding-top: 4px; }
.report-order-audit-row { display: grid; grid-template-columns: 165px minmax(0,1fr); gap: 12px; padding: 11px 2px; border-bottom: 1px solid var(--line); }
.report-order-audit-row time { color: var(--muted); font-size: 12px; }
.report-order-audit-row strong, .report-order-audit-row small { display: block; }
.report-order-audit-row small { margin-top: 4px; color: var(--muted); line-height: 1.4; }

.backup-summary { margin-bottom: 15px; }
.backup-path { display: grid; gap: 5px; margin-top: 15px; padding: 11px 13px; border: 1px solid var(--line); border-radius: 11px; background: #12110f; }
.backup-path span { color: var(--muted); font-size: 12px; font-weight: 800; }
.backup-path code { color: var(--gold-light); overflow-wrap: anywhere; }
.backup-list { display: grid; gap: 9px; }
.backup-row { display: flex; align-items: center; justify-content: space-between; gap: 13px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: var(--panel-2); }
.backup-row-head { display: flex; align-items: center; gap: 8px; }
.backup-row p { margin: 7px 0 3px; color: var(--muted); font-size: 13px; }
.backup-row small { color: var(--muted); overflow-wrap: anywhere; }
.backup-row-actions { flex:0 0 auto; display:flex; align-items:center; gap:8px; }
.backup-status { display: inline-flex; padding: 4px 7px; border: 1px solid var(--line); border-radius: 7px; font-size: 10px; font-weight: 950; text-transform: uppercase; }
.backup-status.verified { border-color: rgba(66,184,131,.4); background: rgba(66,184,131,.1); color: #9be1c4; }
.backup-status.failed { border-color: rgba(239,106,106,.45); background: rgba(239,106,106,.1); color: #ffb3b3; }
.backup-status.creating { color: #f6c992; }
.recovery-card ol { margin: 0 0 16px; padding-left: 22px; }
.recovery-card li { margin-bottom: 10px; color: var(--muted); line-height: 1.5; }
.recovery-card code { color: var(--gold-light); }

@media (max-width: 820px) {
  .preorder-calendar-day, .preorder-calendar-empty { min-height: 91px; }
  .preorder-calendar-day { padding: 7px; }
  .preorder-calendar-day > span { font-size: 17px; }
  .preorder-calendar-day strong { font-size: 11px; }
  .preorder-calendar-day small, .preorder-calendar-day em { font-size: 9px; }
  .reconciliation-entry { grid-template-columns: minmax(0,1fr) 125px; }
  .difference-output { grid-column: 1/-1; }
}

@media (max-width: 520px) {
  .calendar-month-actions { width: 100%; justify-content: space-between; }
  .calendar-month-actions strong { min-width: 0; }
  .preorder-calendar { gap: 3px; }
  .preorder-calendar-day, .preorder-calendar-empty { min-height: 67px; border-radius: 8px; }
  .preorder-calendar-day { gap: 2px; padding: 5px; }
  .preorder-calendar-day > span { font-size: 14px; }
  .preorder-calendar-day strong { font-size: 9px; }
  .preorder-calendar-day small, .preorder-calendar-day em { display: none; }
  .reconciliation-entry { grid-template-columns: 1fr; }
  .reconciliation-entry input { text-align: left; }
  .difference-output { grid-column: auto; }
  .backup-row { align-items: stretch; flex-direction: column; }
  .backup-row button { width: 100%; }
  .backup-row-actions { display:grid; grid-template-columns:1fr 1fr; }
  .report-order-audit-row { grid-template-columns: 1fr; gap: 5px; }
}

/* v0.12 beta: динамический каталог, варианты и синхронизация сайта */
.hidden { display: none !important; }
.menu-item.configurable { position: relative; border-color: rgba(214,173,92,.44); }
.menu-config-badge { display: inline-flex; padding: 4px 7px; border-radius: 7px; background: rgba(214,173,92,.14); color: var(--gold-light); font-size: 10px; font-weight: 900; }
.configured-cart-line small { display: block; margin-top: 5px; color: var(--gold-light); font-size: 11px; line-height: 1.35; }
.ticket-modifiers { display: block !important; margin-top: 6px !important; color: var(--gold-light) !important; font-size: .72em !important; font-weight: 800; line-height: 1.35; }
.kitchen-ticket .ticket-modifiers { margin-top: 8px !important; font-size: 19px !important; line-height: 1.42 !important; font-weight: 850; letter-spacing: .005em; white-space: normal; overflow-wrap: anywhere; }

.item-configurator { width: min(720px,calc(100vw - 28px)); max-height: min(820px,calc(100vh - 28px)); display: flex; flex-direction: column; padding: 0; overflow: hidden; }
.item-configurator .report-modal-header { padding: 20px 22px; border-bottom: 1px solid var(--line); }
.item-configurator-scroll { min-height: 0; display: grid; gap: 13px; padding: 18px 22px; overflow-y: auto; }
.configurator-group { min-width: 0; margin: 0; padding: 14px; border: 1px solid var(--line); border-radius: 13px; background: #151412; }
.configurator-group legend { padding: 0 7px; font-size: 16px; font-weight: 900; }
.configurator-group legend em { margin-left: 6px; color: var(--gold-light); font-size: 10px; font-style: normal; text-transform: uppercase; }
.configurator-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.configurator-option { min-width: 0; display: flex; align-items: center; gap: 10px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: var(--panel-2); cursor: pointer; }
.configurator-option:has(input:checked) { border-color: var(--gold); background: rgba(214,173,92,.12); }
.configurator-option input { width: 21px; height: 21px; flex: 0 0 auto; accent-color: var(--gold); }
.configurator-option span, .configurator-option strong, .configurator-option small { display: block; min-width: 0; }
.configurator-option small { margin-top: 4px; color: var(--muted); }
.configurator-rule { display: block; margin-top: 9px; color: var(--muted); }
.configurator-footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 15px 22px; border-top: 1px solid var(--line); background: #171614; }
.configurator-footer > div:first-child span, .configurator-footer > div:first-child strong { display: block; }
.configurator-footer > div:first-child span { color: var(--muted); font-size: 12px; }
.configurator-footer > div:first-child strong { margin-top: 2px; color: var(--gold-light); font-size: 23px; }

.catalog-hero, .catalog-items-card, .website-sync-card { margin-bottom: 15px; }
.catalog-main-actions, .catalog-row-actions { display: flex; align-items: center; gap: 7px; }
.catalog-two-column { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; margin-bottom: 15px; }
.catalog-small-list { display: grid; gap: 8px; }
.catalog-small-card { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px; border: 1px solid var(--line); border-radius: 11px; background: var(--panel-2); }
.catalog-small-card.archived, .catalog-archived-row { opacity: .58; }
.catalog-small-card strong, .catalog-small-card span { display: block; }
.catalog-small-card span { margin-top: 4px; color: var(--muted); font-size: 12px; }
.catalog-lock { margin: 0 !important; padding: 5px 7px; border: 1px solid var(--line); border-radius: 7px; font-size: 10px !important; font-weight: 900; text-transform: uppercase; }
.catalog-table { min-width: 970px; }
.catalog-table td { vertical-align: middle; }
.catalog-table td:nth-child(2) { min-width: 220px; }
.catalog-table td strong, .catalog-table td small { display: block; }
.catalog-table td small { margin-top: 4px; color: var(--muted); }
.catalog-search-panel { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-bottom: 13px; padding: 13px; border: 1px solid rgba(214,173,92,.3); border-radius: 12px; background: rgba(214,173,92,.055); }
.catalog-search-panel > div > span { display: block; margin-bottom: 7px; color: var(--muted); font-size: 12px; font-weight: 850; }
.catalog-search-wrap { position: relative; }
.catalog-search-wrap input { width: 100%; height: 46px; padding: 0 48px 0 13px; border: 1px solid #4d473f; border-radius: 10px; background: #12110f; color: var(--text); font-size: 17px; font-weight: 850; }
.catalog-search-wrap button { position: absolute; top: 5px; right: 5px; width: 36px; height: 36px; padding: 0; border: 1px solid var(--line); border-radius: 8px; background: var(--panel-3); color: var(--muted); font-size: 23px; }
[data-catalog-search-row][hidden], [data-catalog-search-empty][hidden], .catalog-search-wrap button[hidden] { display: none !important; }
.external-id { color: var(--gold-light) !important; font-family: ui-monospace,monospace; }
.catalog-status { display: inline-flex; padding: 5px 8px; border: 1px solid var(--line); border-radius: 7px; color: var(--muted); font-size: 11px; font-weight: 900; }
.catalog-status.active { border-color: rgba(66,184,131,.42); background: rgba(66,184,131,.1); color: #9be1c4; }

.website-sync-counts { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 13px; }
.website-sync-counts span { padding: 8px 10px; border: 1px solid var(--line); border-radius: 9px; background: var(--panel-2); color: var(--muted); font-size: 12px; }
.website-sync-counts strong { margin-left: 5px; color: var(--text); }
.website-import-defaults { display: grid; grid-template-columns: minmax(0,1fr) 220px 220px; align-items: end; gap: 12px; margin-bottom: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: #151412; }
.website-import-defaults p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.45; }
.website-sync-list { max-height: 510px; display: grid; gap: 7px; overflow-y: auto; }
.website-sync-row { display: grid; grid-template-columns: 24px 65px minmax(230px,1fr) 190px 160px; align-items: center; gap: 10px; padding: 10px 11px; border: 1px solid var(--line); border-radius: 10px; background: var(--panel-2); }
.website-sync-row.changed { border-color: rgba(214,173,92,.4); }
.website-sync-row.conflict { border-color: rgba(239,106,106,.58); background: rgba(239,106,106,.045); }
.website-sync-row input { width: 19px; height: 19px; accent-color: var(--gold); }
.website-sync-row strong, .website-sync-row small { display: block; }
.website-sync-row small { margin-top: 3px; color: var(--muted); }
.website-sync-row em { color: var(--gold-light); font-size: 11px; font-style: normal; font-weight: 900; text-align: right; }
.website-sync-check { display: grid; place-items: center; cursor: pointer; }
.website-sync-state { display: grid; justify-items: end; gap: 6px; }
.website-resolve-button { min-height: 34px; padding: 0 12px; border-color: rgba(239,106,106,.5); color: #ffd0d0; }
.website-sync-code { color: var(--gold-light); font-weight: 950; }
.website-price-change { font-variant-numeric: tabular-nums; font-weight: 850; text-align: right; }
.website-sync-footer { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 13px; }
.website-sync-footer .notice { flex: 1; }

.website-conflict-modal { width: min(1120px,calc(100vw - 28px)); height: min(850px,calc(100dvh - 28px)); display: flex; flex-direction: column; padding: 0; overflow: hidden; }
.website-conflict-modal .report-modal-header { padding: 18px 21px; }
.website-conflict-scroll { min-height: 0; flex: 1; padding: 17px 21px 22px; overflow-y: auto; }
.website-conflict-scroll > .notice { margin-bottom: 14px; }
.website-conflict-columns { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(290px,.75fr); align-items: start; gap: 14px; }
.website-conflict-panel { display: grid; gap: 12px; padding: 15px; border: 1px solid var(--line); border-radius: 14px; background: #151412; }
.website-conflict-panel-head h4 { margin: 8px 0 5px; font-size: 18px; }
.website-conflict-panel-head p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.45; }
.step-badge { display: inline-flex; padding: 4px 7px; border-radius: 7px; background: rgba(214,173,92,.16); color: var(--gold-light); font-size: 10px; font-weight: 950; text-transform: uppercase; }
.website-conflict-searches { display: grid; grid-template-columns: minmax(0,1fr) 180px; gap: 8px; }
.website-conflict-searches label > span { display: block; margin-bottom: 6px; color: var(--muted); font-size: 11px; font-weight: 850; }
.website-conflict-searches input { width: 100%; min-height: 43px; padding: 0 11px; border: 1px solid #4d473f; border-radius: 9px; background: #12110f; color: var(--text); font-size: 15px; }
.website-conflict-candidates { max-height: 385px; display: grid; gap: 6px; padding-right: 3px; overflow-y: auto; }
.website-conflict-candidate { display: grid; grid-template-columns: 22px 65px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 10px; border: 1px solid var(--line); border-radius: 10px; background: var(--panel-2); cursor: pointer; }
.website-conflict-candidate:has(input:checked) { border-color: var(--gold); background: rgba(214,173,92,.1); }
.website-conflict-candidate[hidden] { display: none; }
.website-conflict-candidate.unavailable { opacity: .55; cursor: not-allowed; }
.website-conflict-candidate input { width: 19px; height: 19px; accent-color: var(--gold); }
.website-conflict-candidate > b { color: var(--gold-light); }
.website-conflict-candidate strong, .website-conflict-candidate small { display: block; }
.website-conflict-candidate small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.website-conflict-candidate em { color: var(--muted); font-size: 10px; font-style: normal; font-weight: 850; text-align: right; }
.website-create-panel .field { margin: 0; }
.website-create-summary { padding: 12px; border: 1px solid rgba(214,173,92,.35); border-radius: 10px; background: rgba(214,173,92,.07); }
.website-create-summary span, .website-create-summary strong, .website-create-summary small { display: block; }
.website-create-summary span { color: var(--muted); font-size: 10px; font-weight: 900; text-transform: uppercase; }
.website-create-summary strong { margin-top: 6px; }
.website-create-summary small { margin-top: 5px; color: var(--gold-light); }

.catalog-item-modal { width: min(980px,calc(100vw - 28px)); height: min(900px,calc(100vh - 28px)); display: flex; flex-direction: column; padding: 0; overflow: hidden; }
.catalog-item-modal .report-modal-header { padding: 19px 21px; border-bottom: 1px solid var(--line); }
.catalog-item-scroll { min-height: 0; padding: 18px 21px; overflow-y: auto; }
.catalog-basic-grid { display: grid; grid-template-columns: 170px minmax(260px,1fr) 210px 210px; gap: 12px; }
.catalog-name-field { grid-column: span 2; }
.catalog-active-check { grid-column: span 2; align-self: end; margin: 0; }
.catalog-bundle-editor, .catalog-builder-editor, .catalog-modifiers-editor { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.catalog-feature-toggle { display: flex; align-items: center; gap: 11px; cursor: pointer; }
.catalog-feature-toggle input { width: 23px; height: 23px; accent-color: var(--gold); }
.catalog-feature-toggle strong, .catalog-feature-toggle small { display: block; }
.catalog-feature-toggle small { margin-top: 4px; color: var(--muted); }
.catalog-bundle-fields { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 11px; margin-top: 13px; padding: 13px; border: 1px solid rgba(214,173,92,.32); border-radius: 12px; background: rgba(214,173,92,.06); }
.catalog-modifier-group { margin-top: 10px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: #151412; }
.catalog-modifier-head { display: grid; grid-template-columns: minmax(220px,1fr) 125px 170px auto; align-items: center; gap: 9px; }
.catalog-modifier-head > input, .catalog-modifier-head label, .catalog-modifier-option input { min-height: 42px; border: 1px solid #4d473f; border-radius: 9px; background: #12110f; color: var(--text); }
.catalog-modifier-head > input { padding: 0 11px; }
.catalog-modifier-head label { display: flex; align-items: center; justify-content: center; gap: 7px; padding: 0 8px; color: var(--muted); font-size: 12px; }
.catalog-modifier-head label input[type="checkbox"] { width: 18px; height: 18px; min-height: 0; accent-color: var(--gold); }
.catalog-modifier-head label input[type="number"] { width: 50px; min-height: 30px; padding: 0 5px; }
.catalog-modifier-options { display: grid; gap: 7px; margin-top: 10px; }
.catalog-modifier-option { padding: 9px; border: 1px solid rgba(255,255,255,.08); border-radius: 11px; background: #11100e; }
.catalog-option-main { display: grid; grid-template-columns: minmax(180px,1fr) 145px 42px; gap: 8px; }
.catalog-option-main > input { padding: 0 11px; }
.price-input { position: relative; }
.price-input span { position: absolute; top: 11px; left: 10px; color: var(--muted); }
.price-input input { width: 100%; padding: 0 8px 0 27px; }
.icon-danger { min-height: 42px; border: 1px solid rgba(239,106,106,.38); border-radius: 9px; background: rgba(239,106,106,.08); color: #ffb3b3; }
.compact-button { min-height: 36px; margin-top: 9px; padding-block: 0; }
.builder-fields { margin-top: 13px; padding: 14px; border: 1px solid rgba(214,173,92,.38); border-radius: 12px; background: rgba(214,173,92,.06); }
.builder-fields .section-head { margin-bottom: 10px; }
.base-writeoff-components, .option-writeoff-components { display: grid; gap: 7px; }
.catalog-option-writeoff { margin-top: 9px; padding: 10px; border: 1px dashed rgba(214,173,92,.34); border-radius: 10px; background: rgba(214,173,92,.04); }
.writeoff-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 9px; }
.writeoff-head strong, .writeoff-head small { display: block; }
.writeoff-head small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.writeoff-head label { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 12px; white-space: nowrap; }
.writeoff-head input[type="checkbox"] { width: 18px; height: 18px; min-height: 0; accent-color: var(--gold); }
.writeoff-component { display: grid; grid-template-columns: 130px minmax(180px,1fr) 105px 90px 42px; gap: 7px; }
.writeoff-component input { width: 100%; min-height: 40px; padding: 0 9px; border: 1px solid #4d473f; border-radius: 8px; background: #12110f; color: var(--text); }
.builder-configurator { width: min(820px,calc(100vw - 28px)); }
.configurator-step { display: inline-flex; margin-right: 8px; padding: 4px 7px; border-radius: 7px; background: var(--gold); color: #17120a; font-size: 11px; font-weight: 950; }
.report-writeoff { color: #9be1c4 !important; }
.catalog-item-footer { display: flex; justify-content: flex-end; gap: 9px; padding: 14px 21px; border-top: 1px solid var(--line); background: #171614; }

@media (max-width: 1100px) {
  .catalog-two-column { grid-template-columns: 1fr; }
  .website-import-defaults { grid-template-columns: 1fr 1fr; }
  .website-import-defaults p { grid-column: 1/-1; }
  .website-sync-row { grid-template-columns: 24px 55px minmax(200px,1fr) 170px; }
  .website-sync-state { grid-column: 3/-1; justify-items: start; }
  .website-sync-row em { text-align: left; }
  .website-conflict-columns { grid-template-columns: 1fr; }
  .catalog-basic-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .catalog-name-field, .catalog-active-check { grid-column: auto; }
  .catalog-bundle-fields { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .catalog-modifier-head { grid-template-columns: 1fr 125px 170px; }
  .catalog-modifier-head .icon-danger { grid-column: 1/-1; }
  .writeoff-component { grid-template-columns: 120px minmax(160px,1fr) 90px 75px 42px; }
  .emergency-cleanup-layout { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
  .configurator-options, .catalog-basic-grid, .catalog-bundle-fields, .website-import-defaults, .catalog-search-panel { grid-template-columns: 1fr; }
  .configurator-footer, .website-sync-footer { align-items: stretch; flex-direction: column; }
  .configurator-footer .modal-actions, .configurator-footer .modal-actions button, .website-sync-footer button { width: 100%; }
  .catalog-main-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .catalog-main-actions .primary { grid-column: 1/-1; }
  .catalog-small-card { align-items: stretch; flex-direction: column; }
  .website-sync-row { grid-template-columns: 24px 52px minmax(0,1fr); }
  .website-price-change, .website-sync-state { grid-column: 3; text-align: left; }
  .website-sync-state { justify-items: start; }
  .website-conflict-modal { width: 100vw; height: 100dvh; border-radius: 0; }
  .website-conflict-modal .report-modal-header, .website-conflict-scroll { padding-inline: 13px; }
  .website-conflict-searches, .website-conflict-candidate { grid-template-columns: 1fr; }
  .website-conflict-candidate input { position: absolute; opacity: 0; }
  .website-conflict-candidate em { text-align: left; }
  .emergency-custom-smtp { grid-template-columns: 1fr; }
  .emergency-cleanup-card .section-head { align-items: flex-start; flex-direction: column; }
  .catalog-modifier-head, .catalog-option-main, .writeoff-component { grid-template-columns: 1fr; }
  .catalog-modifier-head .icon-danger { grid-column: auto; }
  .writeoff-head { align-items: flex-start; flex-direction: column; }
  .catalog-item-modal { width: 100vw; height: 100vh; max-height: none; border-radius: 0; }
}

/* v0.13 beta.6.0 · live branches, catalog sync and payment correction */
.payment-change-button { border-color: rgba(214,173,92,.48); }
.live-network-card { overflow: hidden; }
.live-branch-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(340px,1fr)); gap: 14px; }
.live-branch-card { padding: 16px; border: 1px solid var(--line); border-radius: 15px; background: #161513; box-shadow: inset 3px 0 0 rgba(255,255,255,.12); }
.live-branch-card.online { box-shadow: inset 3px 0 0 #6fd5a8; }
.live-branch-card.stale { box-shadow: inset 3px 0 0 #d6ad5c; }
.live-branch-card.offline { opacity: .78; }
.live-branch-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.live-branch-head h3 { margin: 6px 0 2px; }
.live-branch-head code, .live-branch-head > small { color: var(--muted); font-size: 11px; }
.live-branch-head > small { text-align: right; }
.live-status { display: inline-flex; align-items: center; gap: 7px; color: var(--muted); font-size: 11px; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
.live-status i { width: 8px; height: 8px; border-radius: 50%; background: #777; box-shadow: 0 0 0 4px rgba(255,255,255,.04); }
.online .live-status i { background: #6fd5a8; }
.stale .live-status i { background: #d6ad5c; }
.live-branch-metrics { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 8px; margin: 14px 0; }
.live-branch-metrics > div { min-width: 0; padding: 9px; border: 1px solid rgba(255,255,255,.07); border-radius: 10px; background: #11100e; }
.live-branch-metrics span, .live-branch-metrics strong { display: block; }
.live-branch-metrics span { overflow: hidden; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.live-branch-metrics strong { margin-top: 5px; font-size: 15px; }
.live-branch-metrics .danger strong { color: #ff9b9b; }
.live-branch-metrics .warning strong { color: #e8c77f; }
.live-orders { display: grid; gap: 7px; }
.live-order-row { display: grid; grid-template-columns: 54px minmax(150px,1fr) minmax(85px,auto) auto; align-items: center; gap: 9px; padding: 9px 10px; border: 1px solid rgba(255,255,255,.07); border-radius: 10px; background: #11100e; }
.live-order-row.ready { border-color: rgba(111,213,168,.34); }
.live-order-row span strong, .live-order-row span small { display: block; }
.live-order-row span small { margin-top: 2px; color: var(--muted); font-size: 10px; }
.live-order-row em { color: var(--muted); font-size: 11px; font-style: normal; text-align: right; }
.live-order-row > strong:last-child { text-align: right; }
.live-more { color: var(--muted); text-align: right; }
.catalog-sync-card { border-color: rgba(214,173,92,.28); }
.catalog-sync-card .notice { margin-top: 4px; }
.empty.compact { padding: 14px; }

@media (max-width: 820px) {
  .live-branch-grid { grid-template-columns: 1fr; }
  .live-branch-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .live-branch-metrics > div:first-child { grid-column: 1/-1; }
  .live-order-row { grid-template-columns: 48px minmax(0,1fr) auto; }
  .live-order-row em { grid-column: 2; text-align: left; }
  .live-order-row > strong:last-child { grid-column: 3; grid-row: 1/3; }
}

@media (max-width: 520px) {
  .live-branch-head { flex-direction: column; }
  .live-branch-head > small { text-align: left; }
}
.live-orders-details { border-top: 1px solid rgba(255,255,255,.07); }
.live-orders-details summary { padding: 10px 4px 2px; color: var(--gold); cursor: pointer; font-size: 12px; font-weight: 900; }
.live-extra-orders { display: grid; gap: 7px; margin-top: 8px; }

/* Beta.6.5 · компактные подсказки и заметная рабочая навигация администратора */
.order-hint.full { grid-column: 1/-1; }
.order-hint { min-height: 34px; display: flex; align-items: center; gap: 8px; padding: 7px 10px; border: 1px solid rgba(214,173,92,.3); border-radius: 9px; background: rgba(214,173,92,.055); color: var(--muted); font-size: 11px; line-height: 1.25; }
.order-hint strong { flex: 0 0 auto; color: var(--gold-light); font-size: 11px; text-transform: uppercase; letter-spacing: .045em; }
.order-hint span { min-width: 0; }
.order-hint.platform-hint { border-color: rgba(66,184,131,.34); background: rgba(66,184,131,.07); }
.order-hint.platform-hint strong { color: #9be1c4; }
.role-admin .nav-button.nav-hot { border-color: rgba(214,173,92,.36); background: linear-gradient(135deg,rgba(214,173,92,.13),rgba(214,173,92,.055)); color: #f4d994; box-shadow: inset 3px 0 0 rgba(214,173,92,.58); }
.role-admin .nav-button.nav-hot .nav-icon { color: #ffd87d; font-weight: 950; }
.role-admin .nav-button.nav-hot:hover { border-color: rgba(241,209,139,.72); background: rgba(214,173,92,.2); color: #fff4d5; }
.role-admin .nav-button.nav-hot.active { border-color: #f1d18b; background: linear-gradient(135deg,#e1b95f,#b98228); color: #1d1509; box-shadow: 0 8px 22px rgba(214,173,92,.24), inset 0 0 0 1px rgba(255,255,255,.2); }
.role-admin .nav-button.nav-hot.active .nav-icon { color: #1d1509; }
.website-sync-row.invalid { border-color: rgba(239,106,106,.58); background: rgba(239,106,106,.045); }
.website-code-error { display: block; max-width: 220px; color: #ffb3b3; font-size: 10px; line-height: 1.3; text-align: right; }
@media (max-width: 820px) {
  .role-admin .nav-button.nav-hot { box-shadow: inset 0 3px 0 rgba(214,173,92,.58); }
  .role-admin .nav-button.nav-hot.active { box-shadow: 0 0 0 2px rgba(241,209,139,.28), 0 7px 18px rgba(0,0,0,.28); }
  .order-hint { align-items: flex-start; flex-direction: column; gap: 3px; }
}

/* Beta.6.6 — массовое обновление сайта и выгрузка продаж в Invent */
.website-select-all-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 14px 0 10px;
  padding: 12px 14px;
  border: 1px solid rgba(245, 190, 70, .48);
  border-radius: 14px;
  background: rgba(245, 190, 70, .08);
}
.website-select-all-bar label {
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
}
.website-select-all-bar input {
  width: 23px;
  height: 23px;
  accent-color: #f5be46;
  flex: 0 0 auto;
}
.website-select-all-bar span {
  display: grid;
  gap: 2px;
}
.website-select-all-bar small {
  color: var(--muted);
}
.website-select-all-bar b {
  white-space: nowrap;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.07);
}

.invent-export-backdrop {
  z-index: 1200;
}
.invent-export-modal {
  width: min(1180px, calc(100vw - 32px));
  max-height: min(92vh, 980px);
  padding: 0;
  overflow: hidden;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}
.invent-export-modal .report-modal-header {
  padding: 22px 24px 18px;
  border-bottom: 1px solid var(--line);
}
.invent-export-scroll {
  overflow: auto;
  padding: 20px 24px 24px;
  display: grid;
  gap: 18px;
}
.invent-group-name-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.invent-payment-assign-table select {
  min-width: 220px;
}
.invent-export-preview {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.invent-export-preview-card {
  min-width: 0;
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255,255,255,.025);
}
.invent-export-preview-card.ready {
  border-color: rgba(245, 190, 70, .42);
  background: linear-gradient(145deg, rgba(245,190,70,.09), rgba(255,255,255,.02));
}
.invent-export-preview-card > div:first-child {
  display: grid;
  gap: 3px;
}
.invent-export-preview-card > div:first-child > span {
  color: var(--muted);
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.invent-export-preview-card h4 {
  margin: 0;
  font-size: 1.12rem;
}
.invent-export-preview-card small {
  color: var(--muted);
}
.invent-export-stats {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.invent-export-stats strong {
  font-size: 1.8rem;
  color: #ffd976;
}
.invent-export-stats small {
  margin-left: auto;
}
.invent-export-preview-card code {
  display: block;
  max-height: 92px;
  overflow: auto;
  padding: 12px;
  border-radius: 10px;
  background: #0d0d0d;
  color: #f4f0e7;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.55;
}
.invent-export-card-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: auto;
}
.invent-export-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 15px 24px;
  border-top: 1px solid var(--line);
  background: rgba(0,0,0,.18);
}
.invent-export-footer span {
  color: var(--muted);
  font-size: .9rem;
}

@media (max-width: 760px) {
  .website-select-all-bar,
  .invent-export-footer {
    align-items: stretch;
    flex-direction: column;
  }
  .website-select-all-bar b {
    align-self: flex-start;
  }
  .invent-group-name-grid,
  .invent-export-preview {
    grid-template-columns: 1fr;
  }
  .invent-export-scroll {
    padding: 16px;
  }
  .invent-payment-assign-table select {
    min-width: 170px;
  }
  .invent-export-card-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}


/* Beta 6.7: multi-day Invent export */
.invent-days-panel {
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 14px;
  background: rgba(255,255,255,.025);
}
.invent-days-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}
.invent-days-head h4 { margin: 0 0 3px; }
.invent-days-head p { margin: 0; color: var(--muted); font-size: .88rem; }
.invent-days-actions,
.invent-footer-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.invent-days-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(92px, 1fr));
  gap: 8px;
}
.invent-day-chip {
  display: grid;
  gap: 2px;
  position: relative;
  padding: 10px 11px;
  border: 1px solid var(--line);
  border-radius: 12px;
  cursor: pointer;
  background: rgba(0,0,0,.14);
  transition: border-color .15s ease, background .15s ease, transform .15s ease;
}
.invent-day-chip:hover { transform: translateY(-1px); }
.invent-day-chip.selected {
  border-color: var(--gold);
  background: rgba(211,171,92,.13);
}
.invent-day-chip input {
  position: absolute;
  inset: 8px 8px auto auto;
  width: 17px;
  height: 17px;
  accent-color: var(--gold);
}
.invent-day-chip span { font-weight: 800; padding-right: 22px; }
.invent-day-chip small { color: var(--muted); }
@media (max-width: 720px) {
  .invent-days-head { align-items: stretch; flex-direction: column; }
  .invent-days-actions > button,
  .invent-footer-actions > button { flex: 1 1 auto; }
  .invent-footer-actions { width: 100%; }
}

/* Beta 6.8: persistent sales accounting rules */
.sales-export-settings-card {
  margin-bottom: 18px;
  border-color: rgba(211,171,92,.42);
  box-shadow: 0 0 0 1px rgba(211,171,92,.05) inset;
}
.sales-export-settings-card .eyebrow { color: var(--gold); }
.sales-export-settings-card td small {
  display: block;
  margin-top: 3px;
}
.report-head-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
@media (max-width: 720px) {
  .report-head-actions { width: 100%; }
  .report-head-actions > button { flex: 1 1 auto; }
}

/* Beta 6.9 — simplified owner UI */
.top-emergency-button { min-height: 43px; display: inline-flex; align-items: center; gap: 8px; padding: 0 12px; border: 1px solid rgba(239,106,106,.72); border-radius: 11px; background: linear-gradient(135deg,rgba(168,43,43,.98),rgba(104,26,26,.98)); color: #fff2f2; font-weight: 900; box-shadow: 0 8px 20px rgba(119,27,27,.24); }
.top-emergency-button:hover { border-color: #ffb3b3; background: linear-gradient(135deg,#c63c3c,#7d2020); }
.top-emergency-button > span { width: 23px; height: 23px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.14); font-size: 15px; }
.owner-emergency-strip { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 13px 0 15px; padding: 13px 15px; border: 1px solid rgba(239,106,106,.55); border-radius: 14px; background: linear-gradient(135deg,rgba(101,25,25,.42),rgba(41,23,23,.64)); }
.owner-emergency-strip > div { min-width: 0; display: flex; align-items: center; gap: 11px; }
.owner-emergency-strip > div > b { width: 37px; height: 37px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 10px; background: rgba(239,106,106,.15); color: #ffb3b3; font-size: 23px; }
.owner-emergency-strip strong, .owner-emergency-strip small { display: block; }
.owner-emergency-strip small { margin-top: 3px; color: #c9aaa7; }
.owner-emergency-strip > button { flex: 0 0 auto; min-height: 43px; font-weight: 900; }
.owner-more-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.owner-more-item { min-height: 82px; display: grid; grid-template-columns: 44px minmax(0,1fr) 18px; align-items: center; gap: 11px; padding: 12px 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--panel-2); color: var(--text); text-align: left; }
.owner-more-item:hover { border-color: rgba(214,173,92,.52); background: rgba(214,173,92,.07); }
.owner-more-item > b { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 11px; background: rgba(214,173,92,.11); color: var(--gold-light); font-size: 20px; }
.owner-more-item strong, .owner-more-item small { display: block; }
.owner-more-item small { margin-top: 4px; color: var(--muted); line-height: 1.35; }
.owner-more-item > em { color: var(--muted); font-style: normal; }
.settings-hub { margin-bottom: 15px; border-color: rgba(214,173,92,.35); background: linear-gradient(145deg,rgba(41,37,31,.92),var(--panel)); }
.settings-hub-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 9px; }
.settings-hub-grid > button { min-width: 0; min-height: 86px; display: grid; grid-template-columns: 34px minmax(0,1fr); align-items: center; gap: 9px; padding: 11px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel-2); color: var(--text); text-align: left; }
.settings-hub-grid > button:hover { border-color: rgba(214,173,92,.55); background: rgba(214,173,92,.07); }
.settings-hub-grid > button > b { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; background: rgba(214,173,92,.12); color: var(--gold-light); }
.settings-hub-grid strong, .settings-hub-grid small { display: block; }
.settings-hub-grid small { margin-top: 3px; color: var(--muted); font-size: 11px; line-height: 1.3; }
.settings-hub-grid > button.danger-card { border-color: rgba(239,106,106,.45); }
.settings-hub-grid > button.danger-card > b { background: rgba(239,106,106,.14); color: #ffb3b3; }
.platform-order-settings-card { margin-bottom: 15px; border-color: rgba(102,169,232,.34); }
.platform-mode-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.platform-mode-card { position: relative; display: block; min-height: 118px; padding: 14px; border: 1px solid var(--line); border-radius: 13px; background: var(--panel-2); cursor: pointer; }
.platform-mode-card:hover { border-color: rgba(102,169,232,.5); }
.platform-mode-card.selected { border-color: #79b8ef; background: rgba(102,169,232,.1); box-shadow: inset 0 0 0 1px rgba(102,169,232,.16); }
.platform-mode-card input { position: absolute; opacity: 0; pointer-events: none; }
.platform-mode-card span { display: grid; grid-template-columns: 42px minmax(0,1fr); column-gap: 11px; align-items: center; }
.platform-mode-card span > b { grid-row: 1 / span 2; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 11px; background: rgba(102,169,232,.12); color: #b9d9f6; font-size: 19px; }
.platform-mode-card strong { font-size: 16px; }
.platform-mode-card small { margin-top: 4px; color: var(--muted); line-height: 1.4; }
.platform-order-settings-card .primary { align-self: flex-start; }
.emergency-cleanup-card { scroll-margin-top: 12px; }
[data-settings-section] { scroll-margin-top: 12px; }

@media (max-width: 1180px) {
  .settings-hub-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .top-emergency-button b { display: none; }
  .top-emergency-button { padding-inline: 9px; }
}
@media (max-width: 820px) {
  .topbar { gap: 8px; }
  .top-actions { gap: 5px; }
  .top-emergency-button { min-width: 43px; padding: 0 8px; }
  .clock { min-width: 68px; padding-inline: 8px; }
  .profile-switch { padding-inline: 9px; }
  .profile-switch-label { display: none; }
  .owner-emergency-strip { align-items: stretch; flex-direction: column; }
  .owner-emergency-strip > button { width: 100%; }
  .owner-more-grid, .platform-mode-grid { grid-template-columns: 1fr; }
  .settings-hub-grid { grid-template-columns: 1fr; }
}
.platform-mode-card:has(input:checked) { border-color: #79b8ef; background: rgba(102,169,232,.1); box-shadow: inset 0 0 0 1px rgba(102,169,232,.16); }

/* Beta 6.10 — global extras */
.cart-line-main { min-width: 0; }
.cart-extra-summary { display: block !important; margin-top: 5px !important; color: var(--gold-light) !important; font-weight: 800; line-height: 1.35; }
.cart-extra-button { margin-top: 8px; min-height: 34px; padding: 0 11px; border: 1px solid rgba(214,173,92,.5); border-radius: 9px; background: rgba(214,173,92,.1); color: var(--gold-light); font-weight: 800; cursor: pointer; }
.cart-extra-button:hover { background: rgba(214,173,92,.17); }
.extras-hero { border-color: rgba(214,173,92,.28); }
.extras-table td small { display: block; margin-top: 4px; color: var(--muted); }
.extra-owner-modal { width: min(920px, calc(100vw - 24px)); max-height: min(900px, calc(100vh - 24px)); }
.extra-owner-scroll { overflow: auto; padding: 18px; display: grid; gap: 16px; }
.extra-basic-grid, .extra-writeoff-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; }
.extra-writeoff-grid { grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 12px; }
.extra-scope-card { padding: 14px; border: 1px solid var(--line); border-radius: 13px; background: var(--panel-2); }
.extra-scope-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 13px; transition: opacity .15s ease; }
.extra-scope-grid.disabled { opacity: .42; }
.extra-scope-grid > div > strong { display: block; margin-bottom: 8px; }
.extra-scope-options { display: flex; flex-wrap: wrap; gap: 7px; }
.extra-scope-option { display: inline-flex; align-items: center; gap: 7px; min-height: 36px; padding: 0 10px; border: 1px solid var(--line); border-radius: 9px; background: #12110f; cursor: pointer; }
.extra-scope-option input { width: 17px; height: 17px; accent-color: var(--gold); }
.extra-writeoff-details { border: 1px solid var(--line); border-radius: 13px; background: #151412; padding: 12px 14px; }
.extra-writeoff-details summary { cursor: pointer; font-weight: 800; color: var(--gold-light); }
.extra-writeoff-details > p { margin: 9px 0 0; color: var(--muted); font-size: 12px; }
.extra-selection-modal { width: min(700px, calc(100vw - 24px)); max-height: min(820px, calc(100vh - 24px)); }
.extra-selection-scroll { overflow: auto; padding: 16px; }
.extra-choice-list { display: grid; gap: 9px; }
.extra-choice-row { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 14px; min-height: 72px; padding: 11px 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel-2); }
.extra-choice-row strong, .extra-choice-row small { display: block; }
.extra-choice-row small { margin-top: 4px; color: var(--muted); }
.extra-stepper { display: grid; grid-template-columns: 42px 48px 42px; align-items: center; }
.extra-stepper button { height: 42px; border: 1px solid rgba(214,173,92,.42); background: rgba(214,173,92,.1); color: var(--gold-light); font-size: 22px; font-weight: 900; cursor: pointer; }
.extra-stepper button:first-child { border-radius: 9px 0 0 9px; }
.extra-stepper button:last-child { border-radius: 0 9px 9px 0; }
.extra-stepper input { width: 48px; height: 42px; padding: 0; border-block: 1px solid rgba(214,173,92,.42); border-inline: 0; border-radius: 0; background: #11100e; color: var(--text); text-align: center; font-weight: 900; }

@media (max-width: 820px) {
  .extra-basic-grid, .extra-writeoff-grid, .extra-scope-grid { grid-template-columns: 1fr; }
  .extra-choice-row { grid-template-columns: 1fr; }
  .extra-stepper { justify-content: start; }
}

/* Beta 6.11 — POS workspace */
@media (min-width:821px){
.order-workspace.pos-workspace{grid-template-columns:minmax(330px,34%) minmax(520px,66%);grid-template-areas:"cart menu";gap:12px;align-items:start}.pos-workspace>.cart{grid-area:cart;top:14px;height:calc(100dvh - 28px)}.pos-workspace>.menu-panel{grid-area:menu}.pos-workspace .cart-head{min-height:64px;background:linear-gradient(180deg,rgba(214,173,92,.10),rgba(214,173,92,.02))}.pos-workspace .cart-head h2{font-size:24px}.pos-workspace .cart-items{max-height:min(310px,34vh);padding:8px 14px}.pos-workspace .configured-cart-line{padding:11px 0}.pos-workspace .qty button{width:36px;height:36px;font-size:20px;font-weight:900}.pos-workspace .qty b{min-width:24px;font-size:17px}.pos-workspace .total strong{font-size:32px;color:var(--gold-light)}.pos-workspace .submit-order{min-height:58px;margin:10px 13px 13px;font-size:17px;letter-spacing:.02em}.pos-workspace .menu-tools-sticky{top:7px;padding:7px;background:rgba(25,23,21,.98)}.pos-workspace .tabs{gap:8px;margin-bottom:8px}.pos-workspace .tab{min-height:52px;padding-inline:18px;border-width:2px;font-size:15px;font-weight:900}.pos-workspace .tab.active{background:var(--gold);color:#211b11;box-shadow:0 8px 20px rgba(0,0,0,.22)}.pos-workspace .search{height:54px;font-size:21px}.pos-workspace .menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pos-workspace .menu-item{min-height:142px;padding:14px;border-width:2px;border-radius:14px}.pos-workspace .menu-code{font-size:24px;line-height:1;font-weight:950;color:var(--gold-light)}.pos-workspace .menu-name{font-size:17px;font-weight:850}.pos-workspace .menu-price{font-size:18px;font-weight:950;color:var(--text)}.pos-workspace .station-mini{font-size:10px}.pos-workspace .menu-selected-count{min-width:36px;height:36px;font-size:16px}}
@media (min-width:1350px){.order-workspace.pos-workspace{grid-template-columns:minmax(360px,32%) minmax(650px,68%)}.pos-workspace .menu-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:820px){.order-workspace.pos-workspace{display:flex;flex-direction:column}.pos-workspace>.menu-panel{order:1}.pos-workspace>.cart{order:2}.pos-workspace .tab{min-height:48px;font-weight:900}.pos-workspace .menu-code{font-size:19px;font-weight:950}.pos-workspace .menu-name{font-size:15px}.pos-workspace .submit-order{min-height:56px;font-size:16px}}

/* Beta 6.12 — per-device administrator themes */
.admin-theme-control { display:flex; align-items:center; gap:7px; padding:5px 7px 5px 10px; border:1px solid var(--line); border-radius:12px; background:var(--panel); }
.admin-theme-control span { color:var(--muted); font-size:12px; font-weight:850; text-transform:uppercase; letter-spacing:.05em; }
.admin-theme-control select { width:auto; min-width:122px; height:34px; padding:0 30px 0 9px; border-radius:9px; font-size:13px; font-weight:800; }
html[data-admin-theme="light"] { color-scheme:light; --bg:#f2f1ed; --panel:#ffffff; --panel-2:#f8f6f0; --panel-3:#ece8df; --line:#cfc8bb; --gold:#b98527; --gold-light:#8b641f; --text:#1d1b18; --muted:#6f6a61; --green:#27865e; --orange:#bd6c1d; --red:#c94c4c; --blue:#367ebd; }
html[data-admin-theme="light"] body, html[data-admin-theme="light"] .main { background:var(--bg); }
html[data-admin-theme="light"] .sidebar { background:#fff; box-shadow:4px 0 18px rgba(38,31,21,.07); }
html[data-admin-theme="light"] .card, html[data-admin-theme="light"] .cart, html[data-admin-theme="light"] .menu-tools-sticky { background:rgba(255,255,255,.98); }
html[data-admin-theme="light"] input, html[data-admin-theme="light"] select, html[data-admin-theme="light"] textarea { background:#fff; color:var(--text); }
html[data-admin-theme="light"] .nav-button.nav-hot { background:#fff8e7; border-color:#d8b56d; }
html[data-admin-theme="light"] .nav-button.active, html[data-admin-theme="light"] .pos-workspace .tab.active { background:var(--gold); color:#fff; }
html[data-admin-theme="light"] .menu-item { background:#fff; box-shadow:0 5px 16px rgba(38,31,21,.07); }
html[data-admin-theme="contrast"] { color-scheme:dark; --bg:#050505; --panel:#101010; --panel-2:#191919; --panel-3:#242424; --line:#6a6254; --gold:#ffc84d; --gold-light:#ffe08a; --text:#ffffff; --muted:#d3d0c9; --green:#4fe09c; --orange:#ffad4a; --red:#ff6464; --blue:#65b8ff; }
html[data-admin-theme="contrast"] .role-admin .nav-button.nav-hot { border:2px solid var(--gold); background:#211b0c; color:#fff; }
html[data-admin-theme="contrast"] .role-admin .nav-button.active, html[data-admin-theme="contrast"] .pos-workspace .tab.active { background:var(--gold); color:#090909; box-shadow:0 0 0 2px #000,0 0 0 4px var(--gold); }
html[data-admin-theme="contrast"] .role-admin button.primary, html[data-admin-theme="contrast"] .role-admin .submit-order { background:var(--gold); color:#090909; border-color:#fff; font-weight:950; }
html[data-admin-theme="contrast"] .menu-item { border-color:#777; }
@media(max-width:820px){ .admin-theme-control span{display:none}.admin-theme-control select{min-width:105px}.admin-theme-control{padding:4px} }

/* Beta 6.13 — admin POS navigation + delivery form */
.delivery-address-meta { grid-column: 1 / -1; display:flex; gap:8px; align-items:baseline; flex-wrap:wrap; }
.delivery-address-meta small { color:var(--muted); }
.owner-kitchen-readonly { justify-content:flex-start; border-top:1px dashed var(--line); padding-top:10px; }
@media (min-width: 821px) {
  .app-layout.role-admin { display:block; padding-bottom:86px; }
  .app-layout.role-admin > .sidebar { position:fixed; left:0; right:0; bottom:0; top:auto; width:auto; height:76px; min-height:0; z-index:80; display:flex; align-items:center; padding:8px 14px; border-right:0; border-top:1px solid var(--gold-line); background:rgba(20,19,17,.98); box-shadow:0 -12px 30px rgba(0,0,0,.28); }
  .app-layout.role-admin > .sidebar .brand, .app-layout.role-admin > .sidebar .branch-chip, .app-layout.role-admin > .sidebar .nav-section, .app-layout.role-admin > .sidebar .connection { display:none; }
  .app-layout.role-admin > .sidebar .nav-list { display:grid; grid-template-columns:repeat(4,minmax(150px,1fr)); gap:9px; flex:1; max-width:980px; margin:0 auto; }
  .app-layout.role-admin > .sidebar .nav-button { min-height:56px; margin:0; border:2px solid var(--gold-line); border-radius:14px; display:flex; align-items:center; justify-content:center; gap:10px; font-size:15px; font-weight:900; }
  .app-layout.role-admin > .sidebar .nav-button.active { background:var(--gold); color:#211b11; border-color:var(--gold-light); }
  .app-layout.role-admin > .sidebar .nav-icon { font-size:21px; }
  .app-layout.role-admin > .sidebar .sidebar-footer { width:auto; border:0; padding:0 0 0 12px; margin:0; }
  .app-layout.role-admin > .sidebar .user-card { min-width:58px; padding:7px; border:1px solid var(--line); border-radius:12px; }
  .app-layout.role-admin > .sidebar .user-meta { display:none; }
  .app-layout.role-admin > .main { width:100%; margin:0; padding-bottom:18px; }
}
html[data-admin-theme="light"] .app-layout.role-admin > .sidebar { background:rgba(255,255,255,.98); box-shadow:0 -10px 25px rgba(38,31,21,.12); }
html[data-admin-theme="light"] .app-layout.role-admin > .sidebar .user-card { background:#fff; }
html[data-admin-theme="contrast"] .app-layout.role-admin > .sidebar { background:#050505; border-top-color:var(--gold); }


/* Beta 6.14 — comfortable administrator POS layout */
.app-layout.role-admin { display:block; min-height:100dvh; padding-bottom:0; }
.app-layout.role-admin > .main { width:100%; min-width:0; margin:0; overflow-x:hidden; }
.admin-pos-nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:0 0 11px; padding:7px; border:1px solid var(--line); border-radius:14px; background:var(--panel); box-shadow:0 8px 24px rgba(0,0,0,.10); }
.admin-pos-nav .nav-section { display:none; }
.admin-pos-nav .nav-button { min-width:0; min-height:50px; justify-content:center; gap:9px; margin:0; padding:0 12px; border:2px solid rgba(214,173,92,.30); border-radius:11px; background:rgba(214,173,92,.055); color:var(--gold-light); text-align:center; font-size:14px; font-weight:900; }
.admin-pos-nav .nav-button:hover { border-color:rgba(214,173,92,.62); background:rgba(214,173,92,.12); color:var(--text); }
.admin-pos-nav .nav-button.active { border-color:var(--gold-light); background:var(--gold); color:#211b11; box-shadow:0 7px 18px rgba(0,0,0,.16); }
.admin-pos-nav .nav-icon { width:auto; font-size:20px; }
.admin-pos-nav .nav-label { display:block; white-space:nowrap; }

@media (min-width: 821px) {
  .app-layout.role-admin { padding-bottom:0; }
  .app-layout.role-admin > .sidebar { display:none !important; }
  .app-layout.role-admin > .main { padding:14px 16px 20px; }
  .role-admin .topbar { margin-bottom:10px; }
  .role-admin .page-title { font-size:clamp(25px,2.2vw,31px); }
  .role-admin .topbar .eyebrow { font-size:11px; letter-spacing:.10em; }
  .role-admin .operations-strip { margin:0 0 11px; gap:7px; }
  .role-admin .operation-chip { min-width:132px; min-height:43px; padding:6px 10px; }
  .role-admin .operation-chip strong { min-width:27px; height:27px; }

  .order-workspace.pos-workspace {
    width:100%; min-width:0;
    grid-template-columns:minmax(610px,42%) minmax(0,1fr);
    grid-template-areas:"cart menu";
    gap:14px; align-items:start;
  }
  .pos-workspace > .cart {
    grid-area:cart; position:sticky; top:10px;
    height:calc(100dvh - 210px); min-height:620px; max-height:none;
    overflow:hidden;
  }
  .pos-workspace > .menu-panel { grid-area:menu; min-width:0; overflow:hidden; }
  .pos-workspace .cart-head { min-height:58px; padding:12px 16px 10px; }
  .pos-workspace .cart-head h2 { font-size:22px; }
  .pos-workspace .cart-items { flex:0 0 auto; min-height:88px; max-height:145px; padding:7px 15px; overflow-y:auto; }
  .pos-workspace .configured-cart-line { padding:9px 0; }
  .pos-workspace .configured-cart-line strong { font-size:15px; line-height:1.3; }
  .pos-workspace .qty button { width:38px; height:38px; font-size:21px; }
  .pos-workspace .qty b { min-width:26px; font-size:17px; }
  .pos-workspace .cart > form { flex:1; min-height:0; display:flex; flex-direction:column; }
  .pos-workspace .order-form { flex:1; min-height:0; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:11px 14px; padding:13px 15px; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
  .pos-workspace .field { min-width:0; gap:6px; }
  .pos-workspace .field label { font-size:13px; font-weight:850; }
  .pos-workspace .field input, .pos-workspace .field select { height:48px; padding:0 12px; font-size:16px; }
  .pos-workspace .field textarea { min-height:72px; padding:11px 12px; font-size:15px; }
  .pos-workspace .locked-order-rule { min-height:48px; padding:0 12px; }
  .pos-workspace .order-hint { min-height:42px; padding:8px 11px; }
  .pos-workspace .total { min-height:55px; padding:11px 17px 5px; }
  .pos-workspace .total strong { font-size:31px; }
  .pos-workspace .submit-order { min-height:57px; margin:8px 13px 12px; font-size:16px; }

  .pos-workspace .menu-tools-sticky { top:8px; margin:-4px -4px 9px; padding:6px; }
  .pos-workspace .tabs { margin-bottom:7px; }
  .pos-workspace .tab { min-height:48px; padding-inline:16px; font-size:14px; }
  .pos-workspace .search { height:52px; font-size:20px; }
  .pos-workspace .menu-grid { grid-template-columns:repeat(auto-fit,minmax(205px,1fr)); gap:10px; }
  .pos-workspace .menu-item { min-width:0; min-height:137px; padding:13px; }
  .pos-workspace .menu-code { font-size:22px; }
  .pos-workspace .menu-name { font-size:16px; }
  .pos-workspace .menu-price { font-size:17px; }
}

@media (min-width: 821px) and (max-width: 1350px) {
  .order-workspace.pos-workspace { grid-template-columns:minmax(540px,47%) minmax(0,1fr); }
  .pos-workspace .menu-grid { grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); }
  .admin-pos-nav .nav-button { font-size:13px; }
}

html[data-admin-theme="light"] .admin-pos-nav { background:#fff; box-shadow:0 8px 22px rgba(38,31,21,.08); }
html[data-admin-theme="light"] .admin-pos-nav .nav-button { background:#fff8e7; border-color:#d8b56d; color:#72531b; }
html[data-admin-theme="light"] .admin-pos-nav .nav-button.active { background:var(--gold); color:#fff; }
html[data-admin-theme="contrast"] .admin-pos-nav { background:#090909; border-color:#6a6254; }
html[data-admin-theme="contrast"] .admin-pos-nav .nav-button { border-color:var(--gold); background:#181306; color:#fff; }
html[data-admin-theme="contrast"] .admin-pos-nav .nav-button.active { background:var(--gold); color:#090909; }

@media (max-width: 820px) {
  .app-layout.role-admin { display:block; padding-bottom:84px; }
  .app-layout.role-admin > .sidebar { display:none !important; }
  .app-layout.role-admin > .main { padding-bottom:16px; }
  .admin-pos-nav { position:fixed; z-index:80; left:0; right:0; bottom:0; grid-template-columns:repeat(4,minmax(76px,1fr)); gap:4px; margin:0; padding:6px 8px calc(6px + env(safe-area-inset-bottom)); border-width:1px 0 0; border-radius:0; background:rgba(20,19,17,.98); box-shadow:0 -10px 24px rgba(0,0,0,.28); }
  .admin-pos-nav .nav-button { min-height:54px; display:grid; place-items:center; gap:1px; padding:3px; border-width:1px; font-size:11px; }
  .admin-pos-nav .nav-icon { font-size:19px; }
  .admin-pos-nav .nav-label { font-size:11px; }
  .order-workspace.pos-workspace { display:flex; flex-direction:column; }
  .pos-workspace > .menu-panel { order:1; }
  .pos-workspace > .cart { order:2; position:static; height:auto; min-height:0; max-height:none; overflow:visible; }
  .pos-workspace .cart > form { display:block; }
  .pos-workspace .order-form { overflow:visible; }
}
/* Keep checkout hints compact so the client fields remain visible. */
@media (min-width:821px){
  .pos-workspace .order-hint { min-height:34px; padding:6px 9px; font-size:11px; }
}


/* Beta 6.16 — two-step POS: basket first, checkout second */
@media (min-width: 821px) {
  .order-workspace.pos-stage-one {
    grid-template-columns: minmax(430px, 40%) minmax(0, 60%) !important;
    grid-template-areas: "cart menu" !important;
    height: calc(100dvh - 190px);
    min-height: 590px;
    align-items: stretch !important;
  }
  .pos-stage-one > .cart-stage-one {
    grid-area: cart;
    position: sticky;
    top: 8px;
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
  .pos-stage-one > .menu-panel { grid-area: menu; min-width: 0; overflow: auto; }
  .cart-stage-one .cart-head { flex: 0 0 auto; padding: 16px 19px; }
  .cart-stage-one .cart-head > div { display: grid; grid-template-columns: auto auto; gap: 3px 10px; align-items: center; }
  .cart-stage-one .cart-head .checkout-step { grid-column: 1 / -1; }
  .cart-stage-one .cart-head h2 { font-size: 28px; line-height: 1.05; }
  .cart-stage-one .cart-items {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 8px 18px 18px !important;
    overflow-y: auto;
  }
  .cart-stage-one .configured-cart-line {
    min-height: 84px;
    padding: 13px 0 !important;
    align-items: center;
  }
  .cart-stage-one .configured-cart-line strong { font-size: 17px !important; line-height: 1.3; }
  .cart-stage-one .configured-cart-line small { font-size: 13px; line-height: 1.35; }
  .cart-stage-one .configured-cart-line .cart-line-main > span { font-size: 15px; margin-top: 4px; }
  .cart-stage-one .cart-extra-button {
    min-height: 36px;
    margin-top: 7px;
    padding: 7px 12px;
    border: 1px solid var(--gold-border);
    background: var(--gold-soft);
    color: var(--gold-light);
    font-size: 13px;
    font-weight: 950;
  }
  .cart-stage-one .qty { gap: 8px; }
  .cart-stage-one .qty button { width: 44px !important; height: 44px !important; font-size: 24px !important; }
  .cart-stage-one .qty b { min-width: 30px !important; font-size: 20px !important; }
  .cart-stage-footer {
    flex: 0 0 auto;
    padding: 14px 17px 17px;
    border-top: 1px solid var(--line);
    background: var(--panel-2);
  }
  .cart-stage-total { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 11px; }
  .cart-stage-total span { color: var(--muted); font-weight: 800; }
  .cart-stage-total strong { font-size: 32px; color: var(--gold-light); line-height: 1; }
  .cart-next-button { width: 100%; min-height: 58px; font-size: 16px; font-weight: 950; letter-spacing: .02em; }
}

.checkout-step { color: var(--gold-light); font-size: 11px; font-weight: 950; letter-spacing: .12em; }
.order-checkout-backdrop { z-index: 2500; padding: 22px; }
.order-checkout-modal {
  width: min(900px, calc(100vw - 36px));
  max-height: min(880px, calc(100dvh - 36px));
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: 0;
}
.checkout-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 24px 16px;
  border-bottom: 1px solid var(--line);
}
.checkout-head h3 { margin: 4px 0 3px; font-size: 29px; }
.checkout-head p { margin: 0; color: var(--muted); font-weight: 800; }
.checkout-scroll { flex: 1 1 auto; min-height: 0; overflow-y: auto; padding: 18px 22px; }
.checkout-fields { border: 0; padding: 0; overflow: visible; grid-template-columns: 1fr 1fr; gap: 14px 16px; }
.checkout-fields .field label { font-size: 13px; font-weight: 900; }
.checkout-fields .field input, .checkout-fields .field select { height: 52px; font-size: 16px; }
.checkout-fields .field textarea { min-height: 92px; font-size: 15px; }
.checkout-fields .locked-order-rule { min-height: 52px; }
.checkout-footer {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: auto 1fr minmax(260px, 1.2fr);
  align-items: center;
  gap: 14px;
  padding: 15px 22px 18px;
  border-top: 1px solid var(--line);
  background: var(--panel-2);
}
.checkout-back { min-height: 52px; }
.checkout-total { display: flex; flex-direction: column; align-items: flex-end; padding-inline: 8px; }
.checkout-total span { color: var(--muted); font-size: 12px; font-weight: 800; }
.checkout-total strong { font-size: 27px; color: var(--gold-light); }
.checkout-footer .submit-order { min-height: 56px; margin: 0; font-size: 16px; }

@media (max-width: 1100px) and (min-width: 821px) {
  .order-workspace.pos-stage-one { grid-template-columns: minmax(390px, 44%) minmax(0, 56%) !important; }
  .pos-stage-one .menu-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}

@media (max-width: 820px) {
  .order-workspace.pos-stage-one { display: flex !important; flex-direction: column; height: auto; min-height: 0; }
  .pos-stage-one > .menu-panel { order: 1; }
  .pos-stage-one > .cart-stage-one { order: 2; position: static; height: auto; max-height: none; }
  .cart-stage-one .cart-items { max-height: 48vh !important; }
  .cart-stage-footer { position: sticky; bottom: 74px; z-index: 20; }
  .checkout-fields { grid-template-columns: 1fr; }
  .checkout-footer { grid-template-columns: 1fr 1fr; }
  .checkout-total { align-items: flex-start; }
  .checkout-footer .submit-order { grid-column: 1 / -1; }
}


/* Beta 6.16 — modal wheel/extra visibility fixes */
.order-checkout-modal {
  height: min(880px, calc(100dvh - 36px));
}
.checkout-scroll {
  min-height: 0;
  max-height: none;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  touch-action: pan-y;
}
.extra-owner-modal {
  height: min(900px, calc(100dvh - 24px));
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.extra-owner-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  touch-action: pan-y;
}
.cart-stage-one .cart-extra-button,
.cart-extra-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 210px;
  min-height: 46px !important;
  margin-top: 10px !important;
  padding: 9px 15px !important;
  border: 2px solid var(--gold) !important;
  border-radius: 11px !important;
  background: rgba(214,173,92,.16) !important;
  color: var(--gold-light) !important;
  font-size: 14px !important;
  font-weight: 950 !important;
  letter-spacing: .02em;
  text-transform: uppercase;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.025);
}
.cart-extra-button:hover {
  background: rgba(214,173,92,.26) !important;
}
.cart-extra-button.has-extra {
  background: var(--gold) !important;
  color: #1b160d !important;
}
.kitchen-extras-alert {
  display: grid;
  gap: 4px;
  margin-top: 10px;
  padding: 10px 12px;
  border: 2px solid #efb84d;
  border-radius: 10px;
  background: #4b3410;
  color: #fff3cc;
  line-height: 1.25;
  text-decoration: none !important;
}
.kitchen-extras-alert strong {
  color: #ffd166 !important;
  font-size: 15px !important;
  letter-spacing: .08em;
}
.kitchen-extras-alert span {
  display: block;
  color: #fff7df;
  font-size: 18px;
  font-weight: 950;
}
.receipt-extra-summary {
  display: block !important;
  margin-top: 6px !important;
  padding: 5px 7px;
  border-left: 3px solid var(--gold);
  background: rgba(214,173,92,.10);
  color: var(--gold-light) !important;
  font-weight: 900 !important;
}
html[data-admin-theme="light"] .cart-extra-button {
  background: #fff3d0 !important;
}
html[data-admin-theme="light"] .cart-extra-button.has-extra {
  background: var(--gold) !important;
  color: #fff !important;
}
@media (max-width: 820px) {
  .order-checkout-modal,
  .extra-owner-modal {
    width: 100vw;
    height: 100dvh;
    max-height: none;
    border-radius: 0;
  }
  .cart-extra-button {
    width: 100%;
    min-width: 0;
  }
}


/* Beta 6.17 — full-width kitchen positions + self-PIN cancellation */
.kitchen-ticket .kitchen-pending-items,
.kitchen-ticket .prepared-items {
  grid-template-columns: 1fr !important;
}
.kitchen-ticket .kitchen-position {
  width: 100%;
  box-sizing: border-box;
}
.kitchen-ticket .kitchen-position > span {
  min-width: 0;
  flex: 1 1 auto;
}
.kitchen-ticket .kitchen-extras-alert {
  width: 100%;
  box-sizing: border-box;
}
.cancel-order-modal textarea { min-height: 110px; }
.cancel-order-modal input[name="cancelPin"] {
  height: 58px;
  text-align: center;
  font-size: 24px;
  font-weight: 950;
  letter-spacing: .24em;
}


/* Beta 6.18 — stability/diagnostics additions */
.kitchen-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.kitchen-sound-toggle{min-height:44px;font-weight:850;white-space:nowrap}
.system-health-item b{color:var(--green)}
.system-status-modal{width:min(880px,calc(100vw - 28px));max-height:min(86vh,850px);display:flex;flex-direction:column;overflow:hidden}
.system-status-loading{padding:34px;font-size:18px;color:var(--muted)}
.system-status-scroll{overflow:auto;padding:18px 24px 24px;display:grid;gap:10px;overscroll-behavior:contain}
.system-status-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:13px 15px;background:rgba(255,255,255,.025)}
.system-status-row i{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;font-style:normal;font-weight:950;background:rgba(80,190,135,.14);color:var(--green)}
.system-status-row.bad i{background:rgba(220,85,85,.14);color:var(--red)}
.system-status-row span{min-width:0;display:grid;gap:3px}
.system-status-row span strong{font-size:15px}.system-status-row span small{color:var(--muted);line-height:1.35}
.system-status-row>b{font-size:14px;text-align:right;max-width:220px;overflow-wrap:anywhere}
.system-addresses{display:grid;gap:7px;border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-top:4px}.system-addresses span{font-weight:850}.system-addresses code{font-size:13px;overflow-wrap:anywhere;color:var(--gold-light)}
@media(max-width:700px){.system-status-row{grid-template-columns:36px 1fr}.system-status-row>b{grid-column:2;text-align:left;max-width:none}.kitchen-head-actions{width:100%;justify-content:flex-start}.kitchen-sound-toggle{width:100%}}

/* Beta 6.19 — branch analytics, learned cooking norms and peak forecast */
.admin-peak-forecast{
  display:flex;align-items:center;gap:14px;margin:0 0 12px;padding:10px 14px;
  border:1px solid rgba(214,173,92,.45);border-radius:14px;background:rgba(214,173,92,.08);
}
.admin-peak-forecast span{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}
.admin-peak-forecast strong{font-size:18px;color:var(--gold-light)}
.admin-peak-forecast small{margin-left:auto;color:var(--muted);font-size:12px}
.kds-item-norm{display:block;margin-top:8px;padding:7px 10px;border-radius:9px;border:1px solid rgba(214,173,92,.34);background:rgba(214,173,92,.08);font-size:12px;font-weight:850;color:var(--gold-light)}
.kds-item-norm.soon{border-color:#e5a43b;background:rgba(229,164,59,.16);color:#ffd07c}
.kds-item-norm.late{border-color:#d95f59;background:rgba(217,95,89,.17);color:#ff9e99;font-size:13px}
.kds-item-norm.learning{border-style:dashed;color:var(--muted);background:transparent}
.kds-item-norm.done{opacity:.72}
.analytics-card{margin-top:16px}
.analytics-two-column{display:grid;grid-template-columns:1fr 1.25fr;gap:16px;margin-top:16px}
.heatmap-scroll{width:100%;overflow-x:auto;padding-bottom:6px}
.heatmap-grid{display:grid;grid-template-columns:58px repeat(7,72px);grid-auto-rows:44px;gap:4px;width:max-content;min-width:0}
.heatmap-corner,.heatmap-day,.heatmap-hour{display:flex;align-items:center;justify-content:center;min-height:0;height:44px;font-weight:900;color:var(--muted);font-size:11px}
.heatmap-day{color:var(--text)}
.heatmap-cell{width:72px;height:44px;min-height:44px;padding:3px 4px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.025);color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;cursor:pointer;transition:.15s transform,.15s border-color,.15s background}
.heatmap-cell:hover{transform:translateY(-1px);border-color:var(--gold)}
.heatmap-cell strong{font-size:15px;line-height:1.05}.heatmap-cell small{font-size:8px;line-height:1.05;color:var(--muted)}
.heatmap-cell.cool{background:rgba(77,133,170,calc(.08 + var(--heat)*.18))}
.heatmap-cell.warm{background:rgba(218,163,64,calc(.10 + var(--heat)*.22));border-color:rgba(218,163,64,.45)}
.heatmap-cell.hot{background:rgba(202,77,69,calc(.14 + var(--heat)*.26));border-color:rgba(231,101,91,.62)}
.heatmap-cell.hot strong{color:#ffaaa4}
.analytics-kitchen-list{display:grid;gap:9px}
.analytics-kitchen-row{display:grid;grid-template-columns:minmax(120px,1.2fr) 1fr 1fr auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.025)}
.analytics-kitchen-row strong{color:var(--gold-light)}.analytics-kitchen-row span,.analytics-kitchen-row small{font-size:12px;color:var(--muted)}
.heatmap-modal{width:min(900px,94vw);max-height:88vh;overflow:hidden}
.heatmap-modal-body{padding:20px;overflow:auto;max-height:calc(88vh - 100px)}
.heatmap-detail-list{display:grid;gap:7px;margin-top:8px}
.heatmap-detail-list>div{display:flex;justify-content:space-between;gap:18px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}
@media(max-width:980px){.analytics-two-column{grid-template-columns:1fr}.admin-peak-forecast{flex-wrap:wrap}.admin-peak-forecast small{width:100%;margin-left:0}.heatmap-grid{grid-template-columns:54px repeat(7,66px);grid-auto-rows:42px}.heatmap-cell{width:66px;height:42px;min-height:42px}.heatmap-corner,.heatmap-day,.heatmap-hour{height:42px}.analytics-kitchen-row{grid-template-columns:1fr 1fr}.analytics-kitchen-row small{grid-column:1/-1}}

/* Beta 6.20 — compact analytics and one-step issue flow */
.admin-issue-state{border-color:rgba(102,169,232,.55)!important;background:rgba(102,169,232,.12)!important;color:#c9e4ff!important}
.issue-order-modal{width:min(620px,94vw);overflow:hidden}
.issue-order-body{padding:18px;display:grid;gap:16px}
.issue-payment-title{font-size:18px;font-weight:950;color:var(--gold-light)}
.issue-payment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.issue-payment-option{display:block;cursor:pointer}
.issue-payment-option input{position:absolute;opacity:0;pointer-events:none}
.issue-payment-option span{min-height:58px;border:2px solid var(--line);border-radius:13px;display:flex;align-items:center;justify-content:center;padding:10px;font-size:17px;font-weight:950;background:rgba(255,255,255,.025)}
.issue-payment-option input:checked + span{border-color:var(--gold);background:rgba(214,173,92,.18);color:var(--gold-light);box-shadow:0 0 0 2px rgba(214,173,92,.08)}
.issue-admin-reminder{display:grid;gap:7px;padding:13px 14px;border:1px solid rgba(102,169,232,.5);border-radius:13px;background:rgba(102,169,232,.09)}
.issue-admin-reminder>strong{color:#c9e4ff;text-transform:uppercase;font-size:12px;letter-spacing:.04em}
.issue-admin-reminder span{display:flex;align-items:center;gap:6px;font-size:14px}
.issue-admin-reminder em{margin-left:auto;font-style:normal;font-weight:950;color:var(--gold-light)}
.issue-order-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid var(--line)}
.issue-order-footer button{min-height:52px;min-width:180px}
.issue-order-button{min-width:210px!important}
@media(max-width:620px){.issue-payment-grid{grid-template-columns:1fr}.issue-order-footer{display:grid;grid-template-columns:1fr}.issue-order-footer button{width:100%;min-width:0}}


/* Beta 6.22 — calendar heatmap + fast timing */
.load-calendar-scroll{overflow-x:auto;padding-bottom:8px}
.load-calendar{display:grid;grid-template-columns:repeat(7,minmax(126px,1fr));gap:8px;min-width:920px}
.load-day-column{min-width:0}.load-day-column>header{height:34px;display:flex;align-items:center;justify-content:center;font-weight:950;color:var(--gold-light);letter-spacing:.06em}
.load-day-cards{display:grid;gap:6px}
.load-card{min-height:68px;padding:8px 9px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.025);color:var(--text);text-align:left;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:8px;cursor:pointer;transition:.15s transform,.15s border-color,.15s background}
.load-card:hover{transform:translateY(-1px);border-color:var(--gold)}.load-card>span{font-size:10px;font-weight:850;color:var(--muted)}.load-card>strong{grid-row:1/3;grid-column:2;font-size:24px;align-self:center;color:var(--gold-light)}.load-card>small{font-size:9px;color:var(--muted)}
.load-card.cool{background:rgba(77,133,170,calc(.07 + var(--heat)*.16))}.load-card.warm{background:rgba(218,163,64,calc(.09 + var(--heat)*.22));border-color:rgba(218,163,64,.42)}.load-card.hot{background:rgba(202,77,69,calc(.13 + var(--heat)*.28));border-color:rgba(231,101,91,.66)}.load-card.hot>strong{color:#ffaaa4}.load-card.empty{opacity:.42}
.checkout-timing{border:1px solid var(--line);border-radius:16px;padding:14px;background:rgba(255,255,255,.025);display:grid;gap:12px}
.checkout-timing-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.checkout-timing-head>div{display:grid;gap:3px}.checkout-timing-head strong{font-size:17px}.checkout-timing-head small{font-size:11px;color:var(--muted)}
.preorder-toggle{min-height:44px;padding:0 16px;border:1px solid var(--gold);border-radius:11px;background:transparent;color:var(--gold-light);font-weight:950}.preorder-toggle.active{background:var(--gold);color:#17130d}
.timing-normal{display:grid;gap:12px}.timing-quick-row{display:flex;gap:8px;flex-wrap:wrap}.timing-quick{min-height:42px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--text);font-weight:900}.timing-quick.active{border-color:var(--gold);background:rgba(214,173,92,.17);color:var(--gold-light)}
.timing-custom{display:grid;grid-template-columns:110px 110px minmax(220px,1fr);gap:10px;align-items:end}.timing-custom label,.checkout-preorder-date{display:grid;gap:5px}.timing-custom label>span,.checkout-preorder-date>span{font-size:11px;font-weight:850;color:var(--muted)}.timing-custom input,.checkout-preorder-date input{min-height:48px}
.timing-result{min-height:58px;border:1px solid rgba(214,173,92,.38);border-radius:11px;padding:8px 12px;display:grid;grid-template-columns:1fr auto;align-items:center;background:rgba(214,173,92,.07)}.timing-result span{font-size:11px;color:var(--muted)}.timing-result strong{font-size:22px;color:var(--gold-light)}.timing-result small{grid-column:1/-1;font-size:9px;color:var(--muted)}
.checkout-preorder-date{max-width:520px}
@media(max-width:760px){.checkout-timing-head{align-items:stretch;flex-direction:column}.preorder-toggle{width:100%}.timing-custom{grid-template-columns:1fr 1fr}.timing-result{grid-column:1/-1}.load-calendar{grid-template-columns:repeat(7,112px);min-width:820px}.load-card{min-height:62px;padding:7px}.load-card>strong{font-size:20px}}

/* Beta 6.22 — delivery card readable in courier screenshots */
.delivery-contact-card { margin: 11px 14px 4px 17px; padding: 13px; border: 2px solid rgba(102,169,232,.62); border-radius: 13px; background: linear-gradient(145deg,rgba(102,169,232,.14),rgba(102,169,232,.055)); }
.delivery-contact-title { margin-bottom: 10px; color: #b9d9f6; font-size: 13px; font-weight: 950; letter-spacing: .045em; }
.delivery-contact-main, .delivery-contact-details { padding: 10px 11px; border-radius: 10px; background: rgba(7,14,20,.46); }
.delivery-contact-details { margin-top: 7px; }
.delivery-contact-main span, .delivery-contact-details span, .delivery-contact-row span { display: block; margin-bottom: 4px; color: #92bfe5; font-size: 10px; font-weight: 950; letter-spacing: .055em; }
.delivery-contact-main strong { display: block; color: #fff; font-size: 21px; line-height: 1.25; overflow-wrap: anywhere; }
.delivery-contact-details strong { display: block; color: #fff2d2; font-size: 16px; line-height: 1.3; overflow-wrap: anywhere; }
.delivery-contact-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 8px; }
.delivery-contact-row > div { min-width: 0; padding: 9px 11px; border: 1px solid rgba(102,169,232,.28); border-radius: 10px; background: rgba(7,14,20,.32); }
.delivery-contact-row strong { display: block; color: #fff; font-size: 17px; line-height: 1.25; overflow-wrap: anywhere; }
@media (max-width: 620px) { .delivery-contact-row { grid-template-columns: 1fr; } .delivery-contact-main strong { font-size: 19px; } }


/* Beta 6.23 — hard branch-delivery validation + kitchen priority marker */
.delivery-required-note {
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
  padding:10px 12px; border:1px solid rgba(214,173,92,.42); border-radius:11px;
  background:rgba(214,173,92,.08);
}
.delivery-required-note strong { color:var(--gold-light); font-size:13px; }
.delivery-required-note span { color:var(--muted); font-size:12px; }
.kitchen-ticket.own-delivery-order { box-shadow: inset 5px 0 0 var(--gold), 0 12px 30px rgba(0,0,0,.18); }
.own-delivery-kitchen-flag {
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  margin:12px 17px 0 20px; padding:11px 13px; border:2px solid var(--gold); border-radius:12px;
  background:linear-gradient(135deg,rgba(214,173,92,.24),rgba(214,173,92,.08));
}
.own-delivery-kitchen-flag span { color:var(--gold-light); font-size:20px; font-weight:950; letter-spacing:.025em; }
.own-delivery-kitchen-flag strong { color:var(--text); font-size:14px; text-align:right; }
@media (max-width:620px) {
  .own-delivery-kitchen-flag { align-items:flex-start; flex-direction:column; gap:3px; }
  .own-delivery-kitchen-flag strong { text-align:left; }
}
/* Beta.6.25 — owner simplification, recommendation and order history */
.timing-recommendation{width:100%;display:grid;grid-template-columns:1fr auto;gap:3px 14px;text-align:left;padding:14px 16px;margin:0 0 12px;border:2px solid #d4a63a;border-radius:14px;background:rgba(212,166,58,.10);color:inherit}.timing-recommendation span{font-size:11px;font-weight:900;letter-spacing:.08em}.timing-recommendation strong{grid-row:1/3;grid-column:2;font-size:24px;align-self:center}.timing-recommendation small{font-size:12px;opacity:.75}.timing-learning-note{padding:10px 12px;margin-bottom:10px;border-radius:10px;background:rgba(255,255,255,.05);font-size:12px;opacity:.75}.order-history-modal{width:min(720px,94vw);max-height:88vh;overflow:hidden}.order-history-list{padding:16px 20px 24px;overflow:auto;max-height:68vh}.order-history-row{display:grid;grid-template-columns:145px 1fr;gap:14px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.09)}.order-history-row time{font-size:12px;opacity:.7}.order-history-row span{display:grid;gap:3px}.order-history-row strong{font-size:15px}.order-history-row small{font-size:12px;opacity:.72}.role-owner .sidebar{width:220px}.role-owner .nav-list{gap:4px}.role-owner .nav-button{min-height:44px}.role-owner .nav-section{margin-top:10px}

/* Beta 6.27 — admin language selector + VIP 1+1 */
.admin-language-control { display:flex; align-items:center; gap:7px; padding:5px 7px 5px 10px; border:1px solid var(--line); border-radius:12px; background:var(--panel); }
.admin-language-control span { color:var(--muted); font-size:12px; font-weight:850; text-transform:uppercase; letter-spacing:.05em; }
.admin-language-control select { width:auto; min-width:112px; height:34px; padding:0 30px 0 9px; border-radius:9px; font-size:13px; font-weight:800; }
.vip-toggle { min-width:156px; min-height:52px; padding:7px 11px; border:1px solid rgba(221,175,74,.45); border-radius:12px; background:rgba(221,175,74,.09); color:var(--gold-light); display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:2px; text-align:left; }
.vip-toggle b { font-size:15px; font-weight:950; letter-spacing:.03em; }
.vip-toggle small { color:var(--muted); font-size:10px; font-weight:800; line-height:1.2; }
.vip-toggle.active { background:linear-gradient(135deg,#f1c75d,#c99428); color:#241a08; border-color:#f5d983; box-shadow:0 8px 22px rgba(201,148,40,.24); }
.vip-toggle.active small { color:rgba(36,26,8,.76); }
.cart-vip-summary { display:block; width:max-content; max-width:100%; margin-top:5px; padding:5px 8px; border-radius:8px; background:rgba(224,178,70,.13); color:var(--gold-light)!important; font-weight:900!important; }
.vip-order-flag { margin:10px 0 0; padding:10px 13px; border:2px solid #e0b246; border-radius:11px; background:linear-gradient(90deg,rgba(224,178,70,.18),rgba(224,178,70,.06)); display:flex; align-items:center; justify-content:space-between; gap:12px; }
.vip-order-flag strong { color:var(--gold-light); font-size:16px; font-weight:1000; white-space:nowrap; }
.vip-order-flag span { color:var(--text); font-size:12px; font-weight:850; text-align:right; }
.vip-settings-card { border-color:rgba(224,178,70,.42); }
.vip-settings-state { padding:7px 11px; border-radius:999px; font-size:11px; font-weight:950; letter-spacing:.08em; }
.vip-settings-state.enabled { background:rgba(79,180,104,.16); color:#9be5ad; border:1px solid rgba(79,180,104,.32); }
.vip-settings-state.disabled { background:var(--panel-3); color:var(--muted); border:1px solid var(--line); }
.vip-owner-toggle { margin:0; }
html[data-admin-theme="light"] .vip-toggle:not(.active), html[data-admin-theme="light"] .cart-vip-summary { color:#7a5713; }
html[data-admin-theme="light"] .vip-order-flag strong { color:#76530d; }
@media(max-width:1180px) and (min-width:821px){
  .admin-language-control span,.admin-theme-control span{display:none}
  .admin-language-control,.admin-theme-control{padding:4px}
  .admin-language-control select{min-width:94px}
  .admin-theme-control select{min-width:100px}
}
@media(max-width:820px){
  .admin-language-control span{display:none}.admin-language-control select{min-width:92px}.admin-language-control{padding:4px}
  .cart-stage-one .cart-head { align-items:flex-start; }
  .vip-toggle { min-width:132px; min-height:48px; }
  .vip-order-flag { align-items:flex-start; flex-direction:column; }
  .vip-order-flag span { text-align:left; }
}


/* Beta 6.28 — manual actual totals for Wolt/Bolt */
.platform-price-note{display:flex;gap:10px;align-items:center;padding:12px 14px;border:1px solid rgba(255,199,74,.38);border-radius:12px;background:rgba(255,199,74,.07)}
.platform-price-note strong{color:var(--gold-light);white-space:nowrap}.platform-price-note span{color:var(--muted);font-size:13px;line-height:1.35}
.checkout-total small{display:block;color:var(--muted);font-size:11px;margin-top:2px;text-align:right}
@media(max-width:820px){.platform-price-note{align-items:flex-start;flex-direction:column;gap:4px}.platform-price-note strong{white-space:normal}}

.platform-add-total{display:flex;flex-direction:column;gap:6px;width:100%;padding:10px 0}.platform-add-total span{font-weight:800;color:var(--gold-light)}.platform-add-total input{min-height:48px;font-size:20px;font-weight:850}.platform-add-total small{color:var(--muted);line-height:1.35}
/* Beta 6.33 — temperature journal */
.temperature-owner-settings { margin-bottom:18px; }
.temperature-month-journal { margin-bottom:18px; }
.temperature-month-head { align-items:flex-end; }
.temperature-month-head > label { display:grid; gap:5px; min-width:190px; }
.temperature-month-head > label span { color:var(--muted); font-size:12px; font-weight:850; }
.temperature-month-head input { width:100%; height:43px; padding:0 10px; border:1px solid var(--line); border-radius:10px; background:var(--panel-2); color:var(--text); }
.temperature-month-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; align-items:start; }
.temperature-month-columns .temperature-matrix { min-width:380px; }
.temperature-matrix-title { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; }
.temperature-matrix-title h3 { margin:0; }
.temperature-matrix-title > span { color:var(--muted); font-size:12px; font-weight:850; }
.temperature-matrix-scroll { max-width:100%; overflow:auto; border:1px solid var(--line); border-radius:12px; background:var(--panel-2); }
.temperature-matrix { width:100%; min-width:680px; border-collapse:separate; border-spacing:0; table-layout:fixed; }
.temperature-matrix th, .temperature-matrix td { min-width:138px; padding:8px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); vertical-align:top; }
.temperature-matrix thead th { position:sticky; top:0; z-index:2; background:var(--panel); text-align:left; }
.temperature-matrix thead th strong, .temperature-matrix thead th small { display:block; }
.temperature-matrix thead th strong { font-size:13px; }
.temperature-matrix thead th small { margin-top:3px; color:var(--muted); font-size:10px; }
.temperature-matrix th:first-child { position:sticky; left:0; z-index:3; min-width:74px; width:74px; background:var(--panel); }
.temperature-matrix tbody tr.selected th, .temperature-matrix tbody tr.selected td { background:rgba(214,173,92,.08); }
.temperature-matrix tbody th button { width:100%; display:grid; justify-items:center; gap:1px; padding:4px; border:0; background:transparent; color:var(--text); }
.temperature-matrix tbody th button b { font-size:19px; }
.temperature-matrix tbody th button small { color:var(--muted); text-transform:uppercase; }
.temperature-matrix-value { display:grid; grid-template-columns:1fr; align-items:center; gap:2px 7px; min-height:39px; padding:5px 7px; border-radius:8px; background:rgba(255,255,255,.025); }
.temperature-matrix-value + .temperature-matrix-value { margin-top:5px; }
.temperature-matrix-value small { color:var(--muted); font-size:10px; }
.temperature-matrix-value b { justify-self:end; font-size:16px; }
.temperature-matrix-value em { grid-column:1/-1; width:max-content; padding:2px 6px; border:1px solid rgba(83,181,238,.5); border-radius:999px; color:#83d2ff; font-size:9px; font-style:normal; font-weight:900; }
.temperature-matrix-value.ok b { color:#73d7aa; }
.temperature-matrix-value.warning b { color:#f1bb64; }
.temperature-matrix-value.deviation b { color:#ff9292; }
.temperature-matrix-empty { display:block; padding:10px 5px; color:var(--muted); text-align:center; }
.temperature-rule-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.temperature-rule-grid .wide { grid-column:1/-1; }
.temperature-equipment-managers { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-bottom:17px; }
.temperature-equipment-manager { min-width:0; padding:13px; border:1px solid var(--line); border-radius:14px; background:var(--panel-2); }
.temperature-equipment-manager > header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }
.temperature-equipment-manager > header > div { display:grid; gap:2px; }
.temperature-equipment-manager > header span { color:var(--muted); font-size:10px; font-weight:950; letter-spacing:.08em; }
.temperature-equipment-manager > header strong { font-size:19px; }
.temperature-equipment-manager > header small { color:var(--muted); }
.temperature-equipment-manager > header button { min-height:45px; }
.temperature-owner-settings .temperature-rule-grid { padding-top:17px; border-top:1px solid var(--line); }
.temperature-form-title { display:grid; gap:3px; }
.temperature-form-title span { color:var(--muted); font-size:10px; font-weight:950; letter-spacing:.08em; }
.temperature-form-title strong { font-size:22px; }
.temperature-form-actions { display:flex; gap:10px; }
.temperature-time-field { display:grid; gap:8px; }
.temperature-time-field > span { color:var(--muted); font-size:12px; font-weight:850; }
.temperature-time-field > small { color:var(--muted); line-height:1.35; }
.temperature-times-list { min-height:45px; display:flex; align-items:center; gap:8px; flex-wrap:wrap; padding:7px 9px; border:1px dashed var(--line); border-radius:11px; background:var(--panel-2); }
.temperature-times-empty { color:var(--muted); }
.temperature-time-chip { min-height:37px; display:inline-flex; align-items:center; gap:9px; padding:0 5px 0 12px; border:1px solid rgba(214,173,92,.46); border-radius:10px; background:rgba(214,173,92,.10); color:var(--gold-light); }
.temperature-time-chip b { font-size:17px; }
.temperature-time-chip button { width:30px; height:30px; padding:0; border:0; border-radius:8px; background:transparent; color:inherit; font-size:22px; }
.temperature-time-chip button:hover { background:rgba(255,255,255,.08); }
.temperature-time-add { display:grid; grid-template-columns:minmax(170px,280px) minmax(220px,1fr); gap:10px; }
.temperature-time-add input { min-height:50px; }
.temperature-time-add button { min-height:50px; }
.temperature-range-help { padding:10px 12px; border:1px solid rgba(214,173,92,.28); border-radius:10px; background:rgba(214,173,92,.06); color:var(--muted); font-size:12px; line-height:1.4; }
.temperature-auto-toggle { border-color:rgba(83,181,238,.46); background:rgba(83,181,238,.07); }
.temperature-saved-rules { margin-top:20px; padding-top:17px; border-top:1px solid var(--line); }
.temperature-saved-rules h3 { margin:0 0 10px; }
.temperature-saved-rule { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:11px 13px; border:1px solid var(--line); border-radius:11px; background:var(--panel-2); }
.temperature-saved-rule + .temperature-saved-rule { margin-top:8px; }
.temperature-saved-rule > div { display:grid; gap:3px; }
.temperature-saved-rule span, .temperature-saved-rule small { color:var(--muted); font-size:12px; }
.temperature-saved-rule-values { text-align:right; }
.temperature-saved-rule-values b { color:var(--gold-light); }
.temperature-rule-actions { display:flex; justify-content:flex-end; gap:6px; margin-top:5px; }
.temperature-rule-actions button { min-height:34px; padding:5px 9px; font-size:11px; }
.temperature-rule-mode, .temperature-source-badge { width:max-content; display:inline-flex; align-items:center; min-height:23px; padding:3px 8px; border:1px solid rgba(83,181,238,.58); border-radius:999px; background:rgba(83,181,238,.12); color:#83d2ff; font-size:10px; font-style:normal; font-weight:900; letter-spacing:.04em; }
.temperature-rule-mode.manual { border-color:var(--line); background:transparent; color:var(--muted); }
.temperature-journal-head { align-items:flex-end; }
.temperature-journal-toolbar { display:flex; align-items:flex-end; gap:9px; }
.temperature-journal-toolbar label { display:grid; gap:5px; min-width:170px; }
.temperature-journal-toolbar label span { color:var(--muted); font-size:12px; font-weight:850; }
.temperature-journal-toolbar input { width:100%; height:43px; padding:0 10px; border:1px solid var(--line); border-radius:10px; background:var(--panel-2); color:var(--text); }
.temperature-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; margin-bottom:14px; }
.temperature-summary > div { min-height:66px; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 13px; border:1px solid var(--line); border-radius:12px; background:var(--panel-2); }
.temperature-summary span { color:var(--muted); font-size:12px; font-weight:850; }
.temperature-summary strong { font-size:23px; }
.temperature-summary .ok strong { color:#73d7aa; }
.temperature-summary .warning strong { color:#f1bb64; }
.temperature-summary .deviation strong { color:#ff9292; }
.temperature-reading-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(330px,1fr)); gap:14px; }
.temperature-reading-card { border:1px solid var(--line); border-radius:16px; padding:16px; background:var(--panel); display:grid; gap:12px; }
.temperature-reading-card.ok { border-color:#2d805d; }
.temperature-reading-card.warning { border-color:#b87b2d; box-shadow:inset 4px 0 #b87b2d; }
.temperature-reading-card.deviation { border-color:#b94b4b; box-shadow:inset 4px 0 #b94b4b; }
.temperature-reading-head { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.temperature-reading-head div { display:grid; gap:4px; }
.temperature-reading-head span { font-size:12px; font-weight:900; letter-spacing:.08em; color:var(--muted); }
.temperature-reading-head .temperature-source-badge { color:#83d2ff; }
.temperature-reading-head strong { font-size:20px; }
.temperature-reading-head > b { font-size:23px; color:var(--gold-light); }
.temperature-range { font-size:13px; color:var(--muted); }
.temperature-entry { display:grid; grid-template-columns:110px 1fr auto; gap:9px; }
.temperature-entry input { min-height:50px; }
.temperature-entry input[name=temperature] { font-size:22px; font-weight:900; text-align:center; }
.temperature-status { display:flex; justify-content:space-between; align-items:center; gap:12px; padding-top:9px; border-top:1px solid var(--line); }
.temperature-status strong { flex:0 0 auto; font-size:21px; }
.temperature-status span { color:var(--muted); font-size:12px; text-align:right; }
.temperature-reading-card.warning .temperature-status { color:#f1bb64; }
.temperature-reading-card.deviation .temperature-status { color:#ff9a9a; }

@media (max-width:820px) {
  .temperature-equipment-managers,.temperature-month-columns { grid-template-columns:1fr; }
  .temperature-saved-rule { align-items:flex-start; flex-direction:column; }
  .temperature-saved-rule-values { width:100%; text-align:left; }
  .temperature-rule-actions { justify-content:flex-start; }
}

/* Beta 6.33 — five destinations and compact landscape tablet workflow */
.admin-pos-nav { grid-template-columns:repeat(5,minmax(0,1fr)); }

@media (min-width:821px) and (max-height:760px) {
  .app-layout.role-admin > .main { padding:8px 10px 10px; }
  .role-admin .topbar { min-height:39px; margin-bottom:5px; }
  .role-admin .topbar .eyebrow { display:none; }
  .role-admin .page-title { margin:0; font-size:21px; }
  .role-admin .top-actions { gap:5px; }
  .role-admin .shift-pill { display:none; }
  .role-admin .clock, .role-admin .profile-switch { min-height:36px; height:36px; }
  .role-admin .admin-language-control select, .role-admin .admin-theme-control select { height:32px; }
  .admin-pos-nav { gap:5px; margin-bottom:5px; padding:4px; }
  .admin-pos-nav .nav-button { min-height:42px; gap:6px; font-size:12px; }
  .admin-pos-nav .nav-icon { font-size:17px; }
  .role-admin .operations-strip { margin:0 0 5px; gap:5px; }
  .role-admin .operation-chip { min-width:112px; min-height:36px; padding:4px 8px; }
  .role-admin .operation-chip strong { min-width:25px; height:25px; }
  .order-workspace.pos-stage-one { height:calc(100dvh - 157px); min-height:0; gap:9px; }
  .pos-stage-one > .cart-stage-one { top:0; }
  .cart-stage-one .cart-head { padding:9px 12px; }
  .cart-stage-one .cart-head h2 { font-size:22px; }
  .cart-stage-one .cart-items { padding:5px 12px 9px !important; }
  .cart-stage-one .configured-cart-line { min-height:64px; padding:8px 0 !important; }
  .cart-stage-one .configured-cart-line strong { font-size:14px !important; }
  .cart-stage-one .configured-cart-line small { font-size:11px; }
  .cart-stage-one .qty button { width:38px !important; height:38px !important; font-size:21px !important; }
  .cart-stage-footer { padding:9px 11px 11px; }
  .cart-stage-total { margin-bottom:7px; }
  .cart-stage-total strong { font-size:26px; }
  .cart-next-button { min-height:48px; }
  .pos-stage-one > .menu-panel { padding:8px; }
  .pos-workspace .menu-tools-sticky { top:0; margin:-2px -2px 6px; padding:4px; }
  .pos-workspace .tabs { margin-bottom:4px; }
  .pos-workspace .tab { min-height:39px; padding-inline:12px; font-size:12px; }
  .pos-workspace .search { height:43px; font-size:18px; }
  .pos-workspace .menu-grid { gap:7px; }
  .pos-workspace .menu-item { min-height:106px; padding:10px; }
  .pos-workspace .menu-code { font-size:18px; }
  .pos-workspace .menu-name { font-size:14px; }
  .pos-workspace .menu-price { font-size:15px; }
}

@media (max-width:820px) {
  .admin-pos-nav { grid-template-columns:repeat(5,minmax(0,1fr)); }
  .admin-pos-nav .nav-button { min-width:0; }
  .admin-pos-nav .nav-label { overflow:hidden; text-overflow:ellipsis; }
  .temperature-journal-head { align-items:stretch; flex-direction:column; }
  .temperature-month-head { align-items:stretch; flex-direction:column; }
  .temperature-month-head > label { min-width:0; width:100%; }
  .temperature-journal-toolbar { width:100%; }
  .temperature-journal-toolbar label { min-width:0; flex:1; }
  .temperature-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .temperature-reading-grid { grid-template-columns:1fr; }
  .temperature-entry, .temperature-rule-grid { grid-template-columns:1fr; }
  .temperature-rule-grid .wide { grid-column:auto; }
  .temperature-time-add { grid-template-columns:1fr; }
  .temperature-saved-rule { align-items:flex-start; flex-direction:column; gap:9px; }
  .temperature-saved-rule-values { text-align:left; }
}

@media (orientation:landscape) and (min-width:700px) and (max-width:820px) and (max-height:700px) {
  .app-layout.role-admin { padding-bottom:66px; }
  .app-layout.role-admin > .main { padding:7px 9px 8px; }
  .role-admin .topbar { min-height:38px; margin-bottom:5px; }
  .role-admin .topbar .eyebrow { display:none; }
  .role-admin .page-title { margin:0; font-size:20px; }
  .role-admin .top-actions { gap:4px; }
  .role-admin .clock, .role-admin .profile-switch { min-height:34px; height:34px; }
  .role-admin .admin-language-control select { min-width:86px; height:31px; }
  .role-admin .admin-theme-control select { min-width:92px; height:31px; }
  .admin-pos-nav { padding:4px 6px calc(4px + env(safe-area-inset-bottom)); gap:4px; }
  .admin-pos-nav .nav-button { min-height:50px; font-size:10px; }
  .admin-pos-nav .nav-label { font-size:10px; }
  .role-admin .operations-strip { margin:0 0 5px; gap:4px; }
  .role-admin .operation-chip { min-width:108px; min-height:35px; padding:3px 7px; }
  .role-admin .operation-chip strong { min-width:24px; height:24px; }
  .order-workspace.pos-stage-one { display:grid !important; grid-template-columns:minmax(300px,40%) minmax(0,60%) !important; grid-template-areas:"cart menu" !important; gap:8px; height:calc(100dvh - 157px); min-height:0; align-items:stretch !important; }
  .pos-stage-one > .cart-stage-one { grid-area:cart; order:initial; position:sticky; top:0; height:100%; min-height:0; overflow:hidden; }
  .pos-stage-one > .menu-panel { grid-area:menu; order:initial; min-width:0; padding:7px; overflow:auto; }
  .cart-stage-one .cart-head { padding:8px 10px; }
  .cart-stage-one .cart-head h2 { font-size:21px; }
  .cart-stage-one .cart-items { flex:1 1 auto !important; min-height:0 !important; max-height:none !important; padding:5px 10px !important; }
  .cart-stage-one .configured-cart-line { min-height:61px; padding:7px 0 !important; }
  .cart-stage-one .configured-cart-line strong { font-size:13px !important; }
  .cart-stage-one .configured-cart-line small { font-size:10px; }
  .cart-stage-one .qty { gap:4px; }
  .cart-stage-one .qty button { width:36px !important; height:36px !important; font-size:20px !important; }
  .cart-stage-footer { position:static; padding:8px 10px 9px; }
  .cart-stage-total { margin-bottom:6px; }
  .cart-stage-total strong { font-size:25px; }
  .cart-next-button { min-height:46px; font-size:13px; }
  .pos-workspace .menu-tools-sticky { top:0; margin:-2px -2px 5px; padding:3px; }
  .pos-workspace .tabs { margin-bottom:3px; }
  .pos-workspace .tab { min-height:37px; padding-inline:11px; font-size:11px; }
  .pos-workspace .search { height:41px; font-size:17px; }
  .pos-stage-one .menu-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:6px; }
  .pos-workspace .menu-item { min-height:98px; padding:9px; }
  .pos-workspace .menu-code { font-size:17px; }
  .pos-workspace .menu-name { font-size:13px; }
  .pos-workspace .menu-price { font-size:14px; }
  .floating-cart-button { display:none; }
  .order-checkout-modal { width:calc(100vw - 18px); height:calc(100dvh - 18px); max-height:none; }
  .checkout-head { padding:11px 14px 9px; }
  .checkout-head h3 { font-size:22px; }
  .checkout-scroll { padding:10px 13px; }
  .checkout-fields { grid-template-columns:1fr 1fr; gap:9px 11px; }
  .checkout-fields .field input, .checkout-fields .field select { height:46px; }
  .checkout-footer { grid-template-columns:auto 1fr minmax(230px,1.2fr); gap:9px; padding:9px 13px 10px; }
  .checkout-footer .submit-order { grid-column:auto; min-height:49px; }
}

/* Beta 6.38 — one-question tablet checkout wizard */
.checkout-wizard-modal {
  width:min(920px,calc(100vw - 28px));
  height:min(760px,calc(100dvh - 28px));
  max-height:none;
}
.checkout-wizard-modal .checkout-head { padding:19px 22px 13px; }
.checkout-wizard-modal .checkout-head h3 { margin-top:3px; font-size:30px; line-height:1.08; }
.checkout-wizard-modal .checkout-head p { max-width:680px; margin-top:5px; font-size:14px; }
.checkout-wizard-progress { flex:0 0 auto; display:grid; grid-auto-flow:column; grid-auto-columns:1fr; gap:7px; padding:0 22px 12px; border-bottom:1px solid var(--line); }
.checkout-wizard-progress i { height:5px; border-radius:999px; background:rgba(255,255,255,.09); }
.checkout-wizard-progress i.done { background:rgba(78,214,166,.62); }
.checkout-wizard-progress i.current { background:var(--gold); box-shadow:0 0 0 2px rgba(214,173,92,.12); }
.checkout-wizard-body { min-height:0; flex:1 1 auto; padding:18px 22px; overflow-y:auto; overscroll-behavior:contain; background:linear-gradient(180deg,rgba(214,173,92,.035),transparent 45%); }
.checkout-wizard-question { width:100%; min-height:100%; display:flex; flex-direction:column; justify-content:center; gap:16px; margin:0 auto; }
.checkout-choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; width:100%; }
.checkout-choice { min-height:104px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:6px; padding:18px 20px; border:2px solid var(--line); border-radius:17px; background:var(--panel-2); color:var(--text); text-align:left; box-shadow:none; }
.checkout-choice:hover,.checkout-choice:focus-visible { border-color:rgba(214,173,92,.72); background:rgba(214,173,92,.08); }
.checkout-choice.active { border-color:var(--gold); background:rgba(214,173,92,.15); box-shadow:0 0 0 3px rgba(214,173,92,.08); }
.checkout-choice.recommended { border-color:rgba(78,214,166,.65); background:rgba(78,214,166,.08); }
.checkout-choice strong { font-size:23px; line-height:1.12; }
.checkout-choice small { color:var(--muted); font-size:13px; font-weight:750; line-height:1.3; }
.timing-choice-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.timing-choice-grid .checkout-choice { min-height:86px; padding-block:13px; }
.timing-choice-grid .checkout-choice.recommended { grid-column:1/-1; min-height:78px; }
.checkout-persons-step { display:grid; grid-template-columns:minmax(210px,.72fr) minmax(340px,1.28fr); align-items:center; gap:28px; max-width:760px; }
.checkout-persons-display { min-height:220px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:18px; border:2px solid rgba(214,173,92,.5); border-radius:22px; background:rgba(214,173,92,.09); text-align:center; }
.checkout-persons-display span { color:var(--muted); font-size:14px; font-weight:900; }
.checkout-persons-display strong { color:var(--gold-light); font-size:92px; line-height:1; }
.checkout-persons-display small { margin-top:10px; color:var(--muted); font-size:12px; font-weight:800; }
.checkout-persons-display .checkout-money-value { font-size:50px; white-space:nowrap; }
.checkout-persons-display .checkout-order-number-value { max-width:100%; overflow-wrap:anywhere; font-size:58px; }
.checkout-keypad { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.checkout-keypad button { min-height:64px; padding:8px; border:1px solid var(--line); border-radius:14px; background:var(--panel-2); color:var(--text); font-size:27px; font-weight:950; }
.checkout-keypad button:hover,.checkout-keypad button:focus-visible { border-color:var(--gold); background:rgba(214,173,92,.12); }
.checkout-keypad .keypad-command { color:var(--muted); font-size:15px; }
.checkout-focused-time { max-width:650px; align-items:stretch; }
.checkout-inline-back { align-self:flex-start; min-height:42px; padding:8px 13px; background:transparent; color:var(--gold-light); }
.wizard-main-field,.wizard-custom-time label { display:grid; gap:8px; }
.wizard-main-field span,.wizard-custom-time span { color:var(--muted); font-size:13px; font-weight:900; }
.wizard-main-field input { min-height:68px; font-size:22px; }
.wizard-custom-time { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.wizard-custom-time input { min-height:78px; text-align:center; font-size:30px; font-weight:950; }
.wizard-ready-preview { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 20px; border:1px solid rgba(214,173,92,.45); border-radius:16px; background:rgba(214,173,92,.08); }
.wizard-ready-preview span { color:var(--muted); font-weight:850; }
.wizard-ready-preview strong { color:var(--gold-light); font-size:34px; }
.wizard-time-note { color:var(--muted); text-align:center; }
.wizard-details-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px 15px; }
.wizard-details-grid .field { min-width:0; }
.wizard-details-grid .field.full { grid-column:1/-1; }
.wizard-details-grid .field label { font-size:13px; font-weight:900; }
.wizard-details-grid .field input { min-height:57px; font-size:18px; }
.wizard-details-grid .field textarea { min-height:82px; font-size:16px; resize:vertical; }
.wizard-detail-hint { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 15px; border:1px solid var(--line); border-radius:13px; background:rgba(255,255,255,.025); }
.wizard-detail-hint strong { flex:0 0 auto; color:var(--gold-light); }
.wizard-detail-hint span { color:var(--muted); font-size:12px; text-align:right; }
.checkout-review-step { justify-content:flex-start; }
.checkout-review-list { display:grid; gap:8px; }
.checkout-review-list button { min-height:56px; display:grid; grid-template-columns:120px minmax(0,1fr) auto; align-items:center; gap:12px; padding:11px 14px; border:1px solid var(--line); border-radius:12px; background:var(--panel-2); color:var(--text); text-align:left; }
.checkout-review-list button:hover,.checkout-review-list button:focus-visible { border-color:var(--gold); }
.checkout-review-list span { color:var(--muted); font-size:12px; font-weight:850; }
.checkout-review-list strong { overflow-wrap:anywhere; }
.checkout-review-list em { color:var(--gold-light); font-size:12px; font-style:normal; font-weight:900; }
.checkout-review-total { display:flex; align-items:baseline; justify-content:flex-end; gap:12px; margin-top:8px; padding:15px 17px; border:1px solid rgba(214,173,92,.5); border-radius:14px; background:rgba(214,173,92,.1); }
.checkout-review-total span,.checkout-review-total small { color:var(--muted); }
.checkout-review-total strong { color:var(--gold-light); font-size:31px; }
.checkout-wizard-footer { grid-template-columns:auto minmax(110px,.45fr) minmax(280px,1fr); padding:13px 22px 16px; }
.checkout-wizard-footer .checkout-back { min-width:128px; }
.checkout-wizard-footer .submit-order { min-height:62px; font-size:17px; }

@media (max-width:820px) {
  .order-checkout-backdrop { padding:0; }
  .checkout-wizard-modal { width:100vw; height:100dvh; border-radius:0; }
  .checkout-wizard-modal .checkout-head { padding:14px 16px 10px; }
  .checkout-wizard-modal .checkout-head h3 { font-size:26px; }
  .checkout-wizard-progress { padding:0 16px 9px; }
  .checkout-wizard-body { padding:13px 16px; }
  .checkout-choice { min-height:92px; }
  .checkout-wizard-footer { grid-template-columns:auto minmax(90px,.35fr) minmax(220px,1fr); gap:9px; padding:10px 14px calc(11px + env(safe-area-inset-bottom)); }
  .checkout-wizard-footer .submit-order { grid-column:auto; min-height:58px; }
}

@media (max-width:640px) {
  .checkout-wizard-modal .checkout-head h3 { font-size:23px; }
  .checkout-wizard-modal .checkout-head p { font-size:12px; }
  .checkout-persons-step { grid-template-columns:1fr; gap:13px; }
  .checkout-persons-display { min-height:100px; flex-direction:row; gap:18px; }
  .checkout-persons-display strong { font-size:58px; }
  .checkout-keypad button { min-height:57px; }
  .checkout-choice-grid { gap:9px; }
  .checkout-choice { min-height:82px; padding:13px; }
  .checkout-choice strong { font-size:18px; }
  .checkout-choice small { font-size:11px; }
  .wizard-details-grid { grid-template-columns:1fr; }
  .wizard-details-grid .field.full { grid-column:auto; }
  .wizard-detail-hint { align-items:flex-start; flex-direction:column; gap:4px; }
  .wizard-detail-hint span { text-align:left; }
  .checkout-review-list button { grid-template-columns:86px minmax(0,1fr); }
  .checkout-review-list em { display:none; }
  .checkout-wizard-footer { grid-template-columns:minmax(96px,.55fr) minmax(0,1.45fr); }
  .checkout-wizard-footer .checkout-total { display:none; }
}

@media (orientation:landscape) and (min-width:700px) and (max-width:1100px) and (max-height:700px) {
  .order-checkout-backdrop { padding:0; }
  .checkout-wizard-modal { width:100vw; height:100dvh; border-radius:0; }
  .checkout-wizard-modal .checkout-head { padding:10px 14px 8px; }
  .checkout-wizard-modal .checkout-head h3 { font-size:22px; }
  .checkout-wizard-modal .checkout-head p { margin-top:2px; font-size:11px; }
  .checkout-wizard-progress { padding:0 14px 7px; }
  .checkout-wizard-body { padding:9px 14px; }
  .checkout-wizard-question { gap:9px; }
  .checkout-choice-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  .order-type-choice-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .checkout-choice { min-height:72px; padding:10px 13px; }
  .checkout-choice strong { font-size:18px; }
  .checkout-choice small { font-size:11px; }
  .timing-choice-grid .checkout-choice { min-height:61px; }
  .timing-choice-grid .checkout-choice.recommended { grid-column:1/-1; min-height:54px; }
  .checkout-persons-step { grid-template-columns:minmax(170px,.6fr) minmax(330px,1.4fr); max-width:690px; gap:18px; }
  .checkout-persons-display { min-height:174px; }
  .checkout-persons-display strong { font-size:72px; }
  .checkout-keypad { gap:6px; }
  .checkout-keypad button { min-height:47px; font-size:22px; }
  .wizard-details-grid { gap:8px 11px; }
  .wizard-details-grid .field input { min-height:45px; font-size:16px; }
  .wizard-details-grid .field textarea { min-height:55px; }
  .wizard-detail-hint { padding:8px 11px; }
  .checkout-review-list { gap:5px; }
  .checkout-review-list button { min-height:43px; padding:7px 11px; }
  .checkout-review-total { margin-top:3px; padding:8px 12px; }
  .checkout-review-total strong { font-size:25px; }
  .checkout-wizard-footer { grid-template-columns:auto minmax(95px,.35fr) minmax(240px,.9fr); padding:7px 13px 8px; }
  .checkout-wizard-footer .checkout-back,.checkout-wizard-footer .submit-order { min-height:49px; }
}

/* Beta 6.40 — alphanumeric platform codes and chopsticks guard */
.checkout-keypad-letters { grid-template-columns:repeat(7,minmax(0,1fr)); }
.checkout-keypad-letters button { min-height:48px; font-size:18px; }
.checkout-keypad-reset { min-height:42px; margin-top:14px; padding:7px 18px; border:1px solid var(--line); border-radius:11px; background:transparent; color:var(--muted); font-weight:900; }
.checkout-keypad-reset:hover,.checkout-keypad-reset:focus-visible { border-color:var(--gold); color:var(--text); }
.checkout-chopsticks-step { max-width:820px; }
.chopsticks-warning-card { padding:22px; border:2px solid rgba(214,173,92,.58); border-radius:18px; background:rgba(214,173,92,.09); }
.chopsticks-warning-card > span { color:var(--muted); font-size:11px; font-weight:950; letter-spacing:.09em; }
.chopsticks-warning-card > strong { display:block; margin-top:6px; color:var(--gold-light); font-size:30px; }
.chopsticks-warning-card p { margin:10px 0 0; color:var(--muted); font-size:16px; line-height:1.4; }
.chopsticks-warning-card p b { color:var(--text); }
.chopsticks-charge { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:18px; padding-top:14px; border-top:1px solid var(--line); }
.chopsticks-charge span { color:var(--muted); font-weight:850; }
.chopsticks-charge strong { color:var(--gold-light); font-size:28px; }
.chopsticks-choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.chopsticks-choice-grid .checkout-choice { min-height:100px; }
.chopsticks-settings-card { margin-bottom:14px; }
.chopsticks-owner-rule { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.7fr); gap:16px; align-items:end; padding:16px; border:1px solid rgba(214,173,92,.38); border-radius:14px; background:rgba(214,173,92,.06); }
.chopsticks-owner-rule > div:first-child { display:grid; gap:4px; }
.chopsticks-owner-rule > div:first-child span { color:var(--muted); font-size:12px; font-weight:900; }
.chopsticks-owner-rule > div:first-child strong { color:var(--gold-light); font-size:23px; }
.chopsticks-owner-rule > div:first-child small { color:var(--muted); line-height:1.4; }

@media (max-width:640px) {
  .checkout-keypad-letters { grid-template-columns:repeat(6,minmax(0,1fr)); gap:6px; }
  .checkout-keypad-letters button { min-height:43px; font-size:16px; }
  .chopsticks-choice-grid,.chopsticks-owner-rule { grid-template-columns:1fr; }
  .chopsticks-warning-card { padding:16px; }
  .chopsticks-warning-card > strong { font-size:24px; }
}
/* BETA 6.41 · подсказки по посуде и упаковке */
.packaging-intro{border-color:#745d26}.packaging-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.packaging-steps>div{display:grid;grid-template-columns:38px 1fr;gap:2px 9px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}.packaging-steps b{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--gold);color:#16130d;font-size:18px}.packaging-steps strong{font-size:15px}.packaging-steps small{color:var(--muted);line-height:1.25}.packaging-owner-list{display:grid;gap:9px}.packaging-owner-card{display:grid;grid-template-columns:minmax(0,1fr) 92px auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}.packaging-owner-card.inactive{opacity:.55}.packaging-owner-card>div{display:grid;gap:4px}.packaging-owner-card span{color:var(--accent-soft);font-size:12px;font-weight:900;letter-spacing:.06em}.packaging-owner-card strong{font-size:18px}.packaging-owner-card small{color:var(--muted)}.packaging-owner-card>b{display:grid;text-align:center;font-size:20px;color:var(--accent-soft)}.packaging-owner-card>b small{font-size:11px}.packaging-edit-modal{width:min(760px,calc(100vw - 28px))}.packaging-edit-body{padding:22px;display:grid;gap:15px;overflow:auto}.packaging-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.packaging-edit-grid .wide{grid-column:1/-1}.packaging-edit-body textarea{min-height:90px}.catalog-packing-editor{padding:18px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,199,74,.035)}.packing-plan{margin:13px 0;padding:14px;border:2px solid #826a31;border-radius:15px;background:#18160f}.packing-plan-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.packing-plan-title b{color:#ffd66e;letter-spacing:.05em}.packing-plan-title span{color:var(--muted);font-size:12px}.packing-plan section{padding-top:9px;border-top:1px solid rgba(255,255,255,.1)}.packing-plan section+section{margin-top:10px}.packing-plan h5{margin:0 0 5px;font-size:14px;color:#fff}.packing-plan p{margin:0 0 7px;color:var(--muted);font-size:12px}.packing-plan ol,.packing-plan ul{margin:0;padding-left:23px;display:grid;gap:7px}.packing-plan li strong,.packing-plan li span,.packing-plan li small{display:block}.packing-plan li span,.packing-plan li small{color:var(--muted);font-size:12px;margin-top:2px}.packing-warning{margin-top:8px;padding:8px 10px;border:1px solid #8e473f;border-radius:9px;color:#ffaaa1;background:#281a18}.packing-plan.compact{max-height:330px;overflow:auto}
@media(max-width:900px){.packaging-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.packaging-owner-card{grid-template-columns:minmax(0,1fr) 72px}.packaging-owner-card button{grid-column:1/-1}.packing-edit-grid{grid-template-columns:1fr}.packing-edit-grid .wide{grid-column:auto}.packing-plan-title{align-items:flex-start;flex-direction:column}}

/* BETA 6.42 · явное подключение меню к группам упаковки */
.packaging-group-card{grid-template-columns:minmax(0,1fr) 150px minmax(190px,240px)}
.packaging-group-counters{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.packaging-group-counters b{display:grid;text-align:center;padding:8px;border:1px solid var(--line);border-radius:10px;color:var(--accent-soft);font-size:20px}
.packaging-group-counters small{font-size:10px;text-transform:uppercase;letter-spacing:.05em}
.packaging-owner-card-actions{display:grid!important;gap:7px}
.packaging-owner-card-actions button{width:100%;min-height:43px}
.catalog-packing-summary{display:grid;gap:7px;margin:12px 0 0;padding:0;list-style:none}
.catalog-packing-summary li{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2)}
.catalog-packing-summary span{color:var(--muted);font-size:12px}
.packaging-menu-modal{width:min(1120px,calc(100vw - 24px));height:min(850px,calc(100dvh - 24px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
.packaging-menu-body{min-height:0;overflow:auto;padding:18px 22px;overscroll-behavior:contain}
.packaging-menu-search{display:grid;gap:6px;margin:14px 0 10px}
.packaging-menu-search span{color:var(--muted);font-size:12px;font-weight:850}
.packaging-menu-search input{width:100%;min-height:52px;font-size:17px}
.packaging-menu-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:10px 13px;border:1px solid rgba(214,173,92,.45);border-radius:11px;background:rgba(214,173,92,.07)}
.packaging-menu-summary span{color:var(--muted);font-weight:800}
.packaging-menu-summary strong{color:var(--gold-light);font-size:23px}
.packaging-menu-list{display:grid;gap:8px}
.packaging-menu-row{display:grid;grid-template-columns:42px minmax(190px,1fr) 132px minmax(210px,.85fr);gap:11px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2);transition:border-color .15s,background .15s}
.packaging-menu-row.selected{border-color:#9c7a2f;background:rgba(214,173,92,.08)}
.packaging-menu-check{display:grid;place-items:center;height:42px;margin:0}
.packaging-menu-check input{width:25px;height:25px;accent-color:var(--gold)}
.packaging-menu-identity{display:grid;gap:3px;min-width:0}
.packaging-menu-identity span{color:var(--accent-soft);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.packaging-menu-identity strong{overflow-wrap:anywhere;font-size:16px}
.packaging-menu-identity small{color:var(--muted)}
.packaging-menu-units,.packaging-menu-note{display:grid;gap:4px;min-width:0}
.packaging-menu-units span,.packaging-menu-note span{color:var(--muted);font-size:10px;font-weight:850}
.packaging-menu-units input,.packaging-menu-note input{width:100%;min-width:0;min-height:44px}
.packaging-menu-row input:disabled{opacity:.42}
.packaging-menu-footer{box-shadow:0 -12px 32px rgba(0,0,0,.32)}
.packaging-menu-no-results{margin-top:12px}
@media(max-width:900px){.packaging-group-card{grid-template-columns:minmax(0,1fr) 130px}.packaging-owner-card-actions{grid-column:1/-1!important;grid-template-columns:1fr 1fr}.packaging-menu-row{grid-template-columns:42px minmax(0,1fr) 120px}.packaging-menu-note{grid-column:2/4}.packaging-menu-modal{width:calc(100vw - 12px);height:calc(100dvh - 12px)}}
@media(max-width:620px){.packaging-group-card{grid-template-columns:1fr}.packaging-group-counters{grid-column:1}.packaging-owner-card-actions{grid-template-columns:1fr}.packaging-menu-body{padding:12px}.packaging-menu-row{grid-template-columns:38px minmax(0,1fr)}.packaging-menu-units,.packaging-menu-note{grid-column:2}.packaging-menu-footer{grid-template-columns:1fr}.packaging-menu-footer button{width:100%}}

/* BETA 6.43 · категории и выбор филиалов для упаковки */
.packaging-scope-label{display:inline-flex;width:max-content;max-width:100%;margin-top:4px;padding:4px 8px;border:1px solid rgba(214,173,92,.42);border-radius:999px;color:var(--gold-light);font-size:11px;font-style:normal;font-weight:900;overflow-wrap:anywhere}
.packaging-group-counters{grid-template-columns:repeat(3,minmax(0,1fr))}
.packaging-group-settings-modal{width:min(820px,calc(100vw - 24px));max-height:calc(100dvh - 24px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
.packaging-branch-scope{display:grid;gap:12px;padding:15px;border:1px solid rgba(214,173,92,.42);border-radius:14px;background:rgba(214,173,92,.05)}
.packaging-branch-scope>div:first-child{display:grid;gap:4px}.packaging-branch-scope>div:first-child small{color:var(--muted);line-height:1.35}
.packaging-scope-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.packaging-scope-mode{position:relative;display:block;margin:0}.packaging-scope-mode input{position:absolute;opacity:0;pointer-events:none}
.packaging-scope-mode span{display:grid;gap:3px;min-height:72px;padding:12px;border:2px solid var(--line);border-radius:12px;background:var(--panel-2);cursor:pointer}
.packaging-scope-mode.selected span{border-color:var(--gold);background:rgba(214,173,92,.1)}
.packaging-scope-mode small{color:var(--muted)}
.packaging-branch-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:250px;overflow:auto;transition:opacity .15s}
.packaging-branch-list.disabled{opacity:.45}
.packaging-branch-option{display:flex;align-items:center;gap:10px;margin:0;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2)}
.packaging-branch-option input{width:23px;height:23px;flex:0 0 auto;accent-color:var(--gold)}
.packaging-branch-option span{display:grid;gap:2px;min-width:0}.packaging-branch-option small{color:var(--muted)}
.packaging-category-section,.packaging-position-section{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.018)}
.packaging-position-section{margin-top:14px}
.packaging-category-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.packaging-category-head h4{margin:0;font-size:19px}.packaging-category-head p{margin:3px 0 0;color:var(--muted);font-size:12px}.packaging-category-head>div:last-child{display:flex;gap:7px;flex-wrap:wrap}
.packaging-category-list{display:grid;gap:8px}
.packaging-category-row{display:grid;grid-template-columns:42px minmax(190px,1fr) 150px minmax(210px,.8fr);gap:11px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}
.packaging-category-row.selected{border-color:#9c7a2f;background:rgba(214,173,92,.08)}
.packaging-menu-row.inherited{border-style:dashed}.packaging-inherited-badge{color:#72d7ae!important;font-weight:900}
@media(max-width:900px){.packaging-category-row{grid-template-columns:42px minmax(0,1fr) 130px}.packaging-category-row .packaging-menu-note{grid-column:2/4}.packaging-group-counters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.packaging-scope-modes,.packaging-branch-list{grid-template-columns:1fr}.packaging-category-head{flex-direction:column}.packaging-category-row{grid-template-columns:38px minmax(0,1fr)}.packaging-category-row .packaging-menu-units,.packaging-category-row .packaging-menu-note{grid-column:2}.packaging-group-counters{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* BETA 6.44 · компактная раскрывающаяся комплектация заказа */
.packing-plan{
  margin:14px 0;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(214,173,92,.44);
  border-radius:13px;
  background:var(--panel-2);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.ticket>.packing-plan{margin-left:17px;margin-right:14px}
.packing-plan-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:60px;
  margin:0;
  padding:11px 13px 11px 15px;
  list-style:none;
  cursor:pointer;
  user-select:none;
  transition:background .15s,border-color .15s;
}
.packing-plan-title::-webkit-details-marker{display:none}
.packing-plan-title:hover{background:rgba(214,173,92,.055)}
.packing-plan-title:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}
.packing-plan-heading{display:grid;gap:4px;min-width:0}
.packing-plan-title .packing-plan-heading b{color:var(--gold-light);font-size:15px;letter-spacing:.045em}
.packing-plan-title .packing-plan-heading small{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:0}
.packing-plan-toggle{display:flex;align-items:center;gap:8px;flex:0 0 auto;color:var(--gold-light);font-size:12px;font-weight:900}
.packing-plan-toggle em{font-style:normal}
.packing-plan-toggle i{display:grid;place-items:center;width:29px;height:29px;border:1px solid rgba(214,173,92,.38);border-radius:9px;font-size:17px;font-style:normal;transition:transform .18s,background .15s}
.packing-close-label{display:none}
.packing-plan[open] .packing-open-label{display:none}
.packing-plan[open] .packing-close-label{display:inline}
.packing-plan[open] .packing-plan-toggle i{transform:rotate(180deg);background:rgba(214,173,92,.09)}
.packing-plan-body{padding:0 15px 15px;border-top:1px solid rgba(214,173,92,.2)}
.packing-plan-help{margin:10px 0 8px!important;color:var(--muted)!important;font-size:12px!important}
.packing-plan h5{color:var(--text)}
.packing-plan.compact{max-height:none;overflow:hidden}
.packing-plan.compact[open] .packing-plan-body{max-height:300px;overflow:auto;overscroll-behavior:contain}
@media(max-width:900px){
  .packing-plan-title{align-items:center;flex-direction:row}
}
@media(max-width:460px){
  .packing-plan-title{padding-left:12px}
  .packing-plan-toggle em{display:none!important}
}

/* BETA 6.45 · простая комплектация, правильная прокрутка модалей и общий ввод температур */
body:has(> .modal-backdrop){overflow:hidden}
.packing-admin-list{display:grid;gap:8px;padding-top:13px}
.packing-admin-row{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 13px;border:2px solid rgba(214,173,92,.42);border-radius:11px;background:rgba(214,173,92,.045)}
.packing-admin-row strong{font-size:16px;line-height:1.2}
.packing-admin-row b{flex:0 0 auto;color:var(--gold-light);font-size:22px}
.packing-admin-row.supply{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.025)}
.packing-plan.compact[open] .packing-plan-body{max-height:none;overflow:visible}
.issue-order-modal{height:min(760px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);display:flex;flex-direction:column;padding:0}
.issue-order-body{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;touch-action:pan-y}
.issue-order-footer{flex:0 0 auto;background:var(--panel)}
.temperature-month-actions{display:flex;align-items:flex-end;gap:10px}
.temperature-month-actions label{display:grid;gap:5px;min-width:190px}
.temperature-month-actions label span{color:var(--muted);font-size:12px;font-weight:850}
.temperature-month-actions button{min-height:43px;white-space:nowrap}
.temperature-entry-backdrop{z-index:2600}
.temperature-entry-modal{width:min(720px,calc(100vw - 24px));height:min(780px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);display:flex;flex-direction:column;padding:0;overflow:hidden}
.temperature-entry-modal-body{min-height:0;flex:1 1 auto;display:grid;align-content:start;gap:9px;padding:16px 19px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;touch-action:pan-y}
.temperature-entry-row{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:14px;align-items:center;margin:0;padding:12px 13px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}
.temperature-entry-equipment{display:grid;gap:3px;min-width:0}
.temperature-entry-equipment small{color:var(--muted);font-size:10px;font-weight:950;letter-spacing:.07em}
.temperature-entry-equipment strong{font-size:18px;overflow-wrap:anywhere}
.temperature-entry-equipment em{color:var(--muted);font-size:12px;font-style:normal}
.temperature-entry-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}
.temperature-entry-input input{min-width:0;height:55px;padding-inline:12px;text-align:center;font-size:24px;font-weight:950}
.temperature-entry-input b{font-size:18px}
.temperature-entry-footer{flex:0 0 auto;display:grid;grid-template-columns:auto minmax(250px,1fr);gap:10px;padding:13px 19px;border-top:1px solid var(--line);background:var(--panel)}
.temperature-entry-footer button{min-height:52px}
@media(max-width:720px){
  .temperature-month-head{align-items:stretch;flex-direction:column}
  .temperature-month-actions{align-items:stretch;display:grid;grid-template-columns:1fr}
  .temperature-month-actions label{min-width:0}
  .temperature-entry-row{grid-template-columns:minmax(0,1fr) 120px;padding:10px}
  .temperature-entry-modal-body{padding:11px}
  .temperature-entry-footer{grid-template-columns:1fr 1fr;padding:10px}
}

/* Beta 6.46 · единый планшетный интерфейс администратора */
.role-admin,
.role-admin :where(.main,.card,.topbar,.top-actions,.admin-pos-nav,.nav-button,.operations-strip,.operation-chip,.order-workspace,.cart,.cart-head,.cart-items,.cart-line,.cart-line-main,.menu-panel,.menu-tools-sticky,.menu-grid,.menu-item,.menu-bottom) {
  min-width:0;
  max-width:100%;
}
.role-admin :where(h1,h2,h3,h4,h5,p,strong,small,span,em,label,button),
.order-checkout-backdrop :where(h1,h2,h3,h4,p,strong,small,span,em,label,button),
.cart-review-backdrop :where(h1,h2,h3,h4,p,strong,small,span,em,label,button),
.preorder-opening-backdrop :where(h1,h2,h3,h4,p,strong,small,span,em,label,button) {
  overflow-wrap:anywhere;
  word-break:normal;
}
.role-admin button,
.order-checkout-backdrop button,
.cart-review-backdrop button,
.preorder-opening-backdrop button {
  max-width:100%;
  white-space:normal;
  line-height:1.18;
}
.role-admin input,.role-admin select,.role-admin textarea,
.order-checkout-backdrop input,.order-checkout-backdrop select,.order-checkout-backdrop textarea {
  min-width:0;
  max-width:100%;
  font-size:max(16px,1em);
}
.role-admin .topbar>div:first-child,.checkout-head>div,.report-modal-header>div { min-width:0; }
.role-admin .admin-pos-nav .nav-label { white-space:normal; overflow:visible; text-overflow:clip; line-height:1.12; }
.role-admin .operation-chip { flex:0 0 auto; }
.shift-opening-card { display:grid; gap:13px; }
.shift-opening-card .primary { width:min(360px,100%); min-height:58px; }

.configured-cart-line { grid-template-columns:minmax(0,1fr) auto; align-items:center; }
.configured-cart-line .cart-line-main { min-width:0; }
.configured-cart-line .cart-line-main>strong,
.configured-cart-line .cart-line-main>small,
.configured-cart-line .cart-line-main>span { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.cart-stage-one .cart-extra-button,.cart-extra-button {
  width:100%;
  min-width:0 !important;
  max-width:100%;
  height:auto;
  white-space:normal;
}
.cart-stage-one .qty { flex:0 0 auto; }
.cart-stage-one .cart-head { align-items:flex-start; flex-wrap:wrap; }
.cart-stage-one .cart-head>div { flex:1 1 130px; min-width:0; }
.cart-stage-one .vip-toggle { flex:0 1 175px; min-width:0; max-width:56%; }
.cart-stage-one .cart-stage-total { min-width:0; flex-wrap:wrap; }
.cart-stage-one .cart-stage-total strong { flex:0 0 auto; white-space:nowrap; }
.cart-stage-one .cart-next-button { height:auto; padding:12px 14px; }
.pos-workspace .menu-item>* { min-width:0; max-width:100%; }
.pos-workspace .menu-name,.pos-workspace .station-mini { white-space:normal; overflow-wrap:anywhere; }
.pos-workspace .menu-bottom { flex-wrap:wrap; }

.modal-backdrop { overscroll-behavior:contain; }
.modal-backdrop>.modal { min-width:0; max-width:100%; }
.order-checkout-backdrop { padding:8px; overflow:hidden; touch-action:none; }
.checkout-wizard-modal {
  width:min(960px,calc(100vw - 16px));
  height:min(780px,calc(100dvh - 16px));
  max-width:calc(100vw - 16px);
  max-height:calc(100dvh - 16px);
  touch-action:auto;
}
.checkout-wizard-modal .checkout-head { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; }
.checkout-wizard-modal .checkout-head h3,.checkout-wizard-modal .checkout-head p { max-width:100%; overflow-wrap:anywhere; }
.checkout-wizard-modal .report-modal-close { flex:0 0 auto; }
.checkout-wizard-progress { min-width:0; }
.checkout-wizard-body { min-width:0; scrollbar-gutter:auto; touch-action:pan-y; }
.checkout-wizard-question,.checkout-choice-grid,.checkout-choice { min-width:0; max-width:100%; }
.checkout-choice { height:auto; white-space:normal; }
.checkout-choice strong,.checkout-choice small { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.checkout-persons-display { min-width:0; }
.checkout-persons-display strong { max-width:100%; overflow-wrap:anywhere; }
.checkout-persons-display .checkout-money-value { font-size:clamp(34px,6vw,50px); }
.checkout-persons-display .checkout-order-number-value { font-size:clamp(34px,7vw,58px); }
.checkout-keypad,.checkout-keypad button { min-width:0; }
.checkout-keypad button { height:auto; white-space:normal; }
.wizard-details-grid { min-width:0; }
.wizard-details-grid .customer-name-field { grid-column:1/-1; }
.wizard-details-grid .customer-name-field .customer-name-input {
  min-height:68px !important;
  padding-inline:16px;
  font-size:clamp(23px,3.2vw,31px) !important;
  font-weight:900;
  letter-spacing:.015em;
}
.wizard-detail-hint { min-width:0; }
.wizard-detail-hint>* { min-width:0; max-width:100%; }
.checkout-review-list button {
  width:100%;
  grid-template-columns:minmax(86px,120px) minmax(0,1fr) minmax(56px,auto);
}
.checkout-review-list button>* { min-width:0; max-width:100%; }
.checkout-review-list strong { white-space:normal; overflow-wrap:anywhere; }
.checkout-review-list em { white-space:normal; text-align:right; }
.checkout-review-total { min-width:0; flex-wrap:wrap; }
.checkout-review-total strong { white-space:nowrap; }
.checkout-wizard-footer { min-width:0; }
.checkout-wizard-footer>* { min-width:0; max-width:100%; }
.checkout-wizard-footer button { height:auto; padding:11px 14px; }
.checkout-total strong { white-space:nowrap; }
.cart-review-modal { width:min(720px,calc(100vw - 16px)); height:min(760px,calc(100dvh - 16px)); max-height:calc(100dvh - 16px); }
.cart-review-scroll { min-height:0; flex:1 1 auto; overscroll-behavior:contain; touch-action:pan-y; }
.cart-review-footer { min-width:0; }
.cart-review-footer>* { min-width:0; }

.preorder-opening-backdrop { z-index:3100; padding:8px; background:rgba(12,4,2,.88); touch-action:none; }
.preorder-opening-modal {
  width:min(760px,calc(100vw - 16px));
  height:min(700px,calc(100dvh - 16px));
  max-height:calc(100dvh - 16px);
  display:flex;
  flex-direction:column;
  padding:0;
  overflow:hidden;
  border:2px solid rgba(239,106,106,.72);
  box-shadow:0 24px 80px rgba(0,0,0,.62),0 0 0 5px rgba(239,106,106,.09);
  touch-action:auto;
}
.preorder-opening-head { flex:0 0 auto; display:grid; grid-template-columns:58px minmax(0,1fr); gap:15px; align-items:center; padding:20px 22px 16px; border-bottom:1px solid rgba(239,106,106,.34); background:linear-gradient(135deg,rgba(239,106,106,.16),rgba(214,173,92,.06)); }
.preorder-opening-head>div:last-child { min-width:0; }
.preorder-opening-head h3 { margin:4px 0 5px; font-size:clamp(24px,4vw,34px); line-height:1.08; }
.preorder-opening-head p { margin:0; color:var(--muted); line-height:1.4; }
.preorder-alarm-icon { width:56px; height:56px; display:grid; place-items:center; border:2px solid var(--red); border-radius:50%; background:rgba(239,106,106,.17); color:#ffd0d0; font-size:30px; font-weight:950; animation:preorder-alert-pulse 1s ease-in-out 3; }
@keyframes preorder-alert-pulse { 50% { transform:scale(1.08); box-shadow:0 0 0 9px rgba(239,106,106,.08); } }
.preorder-opening-summary { flex:0 0 auto; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 22px; border-bottom:1px solid var(--line); }
.preorder-opening-summary span { color:var(--gold-light); font-weight:900; }
.preorder-opening-summary strong { text-align:right; }
.preorder-opening-list { min-height:0; flex:1 1 auto; display:grid; align-content:start; gap:8px; padding:12px 22px; overflow-y:auto; overscroll-behavior:contain; touch-action:pan-y; }
.preorder-opening-row { min-width:0; display:grid; grid-template-columns:64px minmax(0,1fr) auto; gap:12px; align-items:center; padding:12px 14px; border:1px solid var(--line); border-radius:12px; background:var(--panel-2); }
.preorder-opening-row strong { color:var(--gold-light); font-size:20px; }
.preorder-opening-row span { min-width:0; font-weight:800; }
.preorder-opening-row small { color:var(--muted); white-space:nowrap; }
.preorder-opening-more { padding:9px; color:var(--muted); text-align:center; font-weight:800; }
.preorder-opening-wait { flex:0 0 auto; min-height:36px; display:grid; place-items:center; padding:7px 15px; border-top:1px solid var(--line); color:var(--muted); font-weight:850; text-align:center; }
.preorder-opening-actions { flex:0 0 auto; display:grid; grid-template-columns:minmax(150px,.7fr) minmax(240px,1.3fr); gap:10px; padding:12px 22px 18px; background:var(--panel); }
.preorder-opening-actions button { min-height:58px; padding:10px 16px; font-size:16px; }

@media (max-width:820px) {
  .role-admin .topbar { min-width:0; }
  .role-admin .top-actions { min-width:0; flex-wrap:wrap; justify-content:flex-end; }
  .admin-pos-nav .nav-button { height:auto; padding:5px 3px; }
  .cart-review-footer { display:grid; grid-template-columns:minmax(110px,.55fr) minmax(0,1.45fr); }
  .cart-review-footer .modal-actions { min-width:0; flex-wrap:wrap; }
  .cart-review-footer .modal-actions button { min-width:130px; }
}

@media (max-width:640px) {
  .checkout-wizard-modal { width:100vw; height:100dvh; max-width:100vw; max-height:100dvh; }
  .wizard-details-grid { grid-template-columns:1fr; }
  .wizard-details-grid .customer-name-field { grid-column:auto; }
  .checkout-review-list button { grid-template-columns:minmax(72px,92px) minmax(0,1fr); }
  .checkout-review-list em { display:none; }
  .cart-stage-one .vip-toggle { flex:1 1 100%; max-width:100%; }
  .preorder-opening-backdrop { padding:0; }
  .preorder-opening-modal { width:100vw; height:100dvh; max-width:100vw; max-height:100dvh; border-radius:0; }
  .preorder-opening-head { grid-template-columns:44px minmax(0,1fr); gap:10px; padding:14px; }
  .preorder-alarm-icon { width:42px; height:42px; font-size:23px; }
  .preorder-opening-summary { align-items:flex-start; flex-direction:column; padding:10px 14px; }
  .preorder-opening-summary strong { text-align:left; }
  .preorder-opening-list { padding:10px 14px; }
  .preorder-opening-row { grid-template-columns:55px minmax(0,1fr); gap:8px; }
  .preorder-opening-row small { grid-column:2; }
  .preorder-opening-actions { grid-template-columns:1fr; padding:10px 14px calc(12px + env(safe-area-inset-bottom)); }
}

@media (orientation:landscape) and (min-width:700px) and (max-width:1100px) and (max-height:700px) {
  .checkout-wizard-footer { grid-template-columns:minmax(105px,.42fr) minmax(88px,.32fr) minmax(215px,1.26fr); }
  .checkout-wizard-footer .checkout-back,.checkout-wizard-footer .submit-order { min-width:0; }
  .wizard-details-grid .customer-name-field .customer-name-input { min-height:58px !important; font-size:24px !important; }
  .preorder-opening-head { padding:12px 16px 10px; }
  .preorder-opening-head h3 { font-size:25px; }
  .preorder-opening-summary { padding:9px 16px; }
  .preorder-opening-list { padding:9px 16px; }
  .preorder-opening-row { padding:9px 12px; }
  .preorder-opening-actions { padding:9px 16px 11px; }
  .preorder-opening-actions button { min-height:50px; }
}

/* Beta 6.47 · планшет в портретном режиме: одна корзина и без горизонтального сдвига */
@media (orientation:portrait) and (max-width:1366px) {
  html,body { width:100%; max-width:100%; overflow-x:hidden; }
  .app-layout.role-admin,
  .app-layout.role-owner,
  .app-layout.role-admin>.main,
  .app-layout.role-owner>.main { width:100%; min-width:0; max-width:100vw; }
  .role-admin .operations-strip,
  .role-owner .operations-strip {
    width:100%;
    max-width:100%;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scrollbar-width:none;
  }
  .role-admin .operations-strip::-webkit-scrollbar,
  .role-owner .operations-strip::-webkit-scrollbar { display:none; }
  .order-workspace.pos-stage-one {
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  .pos-stage-one>.cart-stage-one { display:none !important; }
  .pos-stage-one>.menu-panel {
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:auto !important;
    overflow:visible !important;
  }
  .pos-stage-one .menu-grid {
    width:100%;
    min-width:0;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .pos-stage-one .menu-item { width:100%; min-width:0; }
  .floating-cart-button {
    display:flex !important;
    right:12px;
    bottom:calc(84px + env(safe-area-inset-bottom));
    width:auto;
    min-width:min(224px,calc(100vw - 24px));
    max-width:calc(100vw - 24px);
  }
  .cart-review-backdrop { padding:8px; }
  .cart-review-modal {
    width:calc(100vw - 16px);
    height:calc(100dvh - 16px);
    max-width:calc(100vw - 16px);
    max-height:calc(100dvh - 16px);
  }
}

/* Beta 7.3 — единый модульный кабинет владельца в архитектуре Invent. */
.app-layout.role-owner {
  --owner-bg:#090d13;
  --owner-panel:#111721;
  --owner-panel-2:#171e29;
  --owner-line:#2b3442;
  --owner-gold:#d9ad26;
  grid-template-columns:252px minmax(0,1fr);
  background:radial-gradient(circle at 82% -10%,rgba(217,173,38,.08),transparent 28%),var(--owner-bg);
}
.role-owner>.sidebar {
  width:auto;
  border-right-color:var(--owner-line);
  background:linear-gradient(180deg,#111720 0%,#0c1118 100%);
  box-shadow:12px 0 36px rgba(0,0,0,.24);
}
.role-owner>.sidebar .brand-mark { border-color:var(--owner-gold);background:rgba(217,173,38,.11);color:#f2d879; }
.role-owner>.sidebar .brand h1 { letter-spacing:.025em; }
.role-owner>.sidebar .branch-chip { border-color:rgba(217,173,38,.34);background:rgba(217,173,38,.075); }
.role-owner>.sidebar .nav-list { gap:4px; }
.role-owner>.sidebar .nav-section { margin-top:14px;color:#788292; }
.role-owner>.sidebar .nav-button { min-height:43px;border-radius:10px;color:#aab2bf; }
.role-owner>.sidebar .nav-button:hover { border-color:#394352;background:#181f2a;color:#f4f6f8; }
.role-owner>.sidebar .nav-button.active { border-color:rgba(217,173,38,.5);background:rgba(217,173,38,.12);color:#f5d86f;box-shadow:inset 3px 0 0 var(--owner-gold); }
.role-owner>.main { min-width:0;padding:22px 24px 36px; }
.role-owner>.main>.topbar { padding-bottom:16px;border-bottom:1px solid var(--owner-line); }
.role-owner>.main .card { border-color:var(--owner-line);background:var(--owner-panel);box-shadow:0 12px 32px rgba(0,0,0,.22); }

.owner-module-hub { margin-bottom:16px;padding:20px;border:1px solid rgba(217,173,38,.28);border-radius:20px;background:linear-gradient(145deg,#151b24,#0f141c);box-shadow:0 18px 45px rgba(0,0,0,.25); }
.owner-module-hub-head { display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:17px; }
.owner-module-hub-head h2 { margin:4px 0 5px;font-size:30px;letter-spacing:-.035em; }
.owner-module-hub-head p { margin:0;color:var(--muted); }
.owner-module-hub-grid { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px; }
.owner-module-hub-grid>button { min-width:0;min-height:132px;display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-rows:1fr auto;gap:10px 11px;padding:15px;border:1px solid var(--owner-line);border-radius:15px;background:linear-gradient(180deg,#171e29,#121822);color:var(--text);text-align:left;transition:transform .16s,border-color .16s,background .16s; }
.owner-module-hub-grid>button:hover { transform:translateY(-2px);border-color:rgba(217,173,38,.5);background:#1a2230; }
.owner-module-hub-grid>button>b { width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:rgba(217,173,38,.1);color:#f0cf67;font-size:21px; }
.owner-module-hub-grid>button>span { min-width:0; }
.owner-module-hub-grid strong,.owner-module-hub-grid small { display:block;overflow-wrap:anywhere; }
.owner-module-hub-grid strong { font-size:15px;line-height:1.2; }
.owner-module-hub-grid small { margin-top:6px;color:#8f99a8;font-size:11px;line-height:1.4; }
.owner-module-hub-grid em { grid-column:1/-1;justify-self:end;color:#778292;font-style:normal; }

.invent-owner-shell { min-width:0;display:grid;gap:14px; }
.invent-owner-hero { min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px;border:1px solid rgba(217,173,38,.32);border-radius:20px;background:linear-gradient(145deg,#151c26,#0e141c);box-shadow:0 18px 48px rgba(0,0,0,.27); }
.invent-owner-hero>div:first-child { min-width:0; }
.invent-owner-hero h2 { margin:5px 0 7px;font-size:clamp(27px,3vw,40px);letter-spacing:-.04em;overflow-wrap:anywhere; }
.invent-owner-hero p { margin:0;color:#98a2b0;line-height:1.45; }
.invent-owner-hero-actions { min-width:min(360px,42%);display:grid;justify-items:end;gap:10px; }
.invent-owner-hero-actions label { width:100%;display:grid;gap:5px; }
.invent-owner-hero-actions label span { color:#8f99a8;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em; }
.invent-owner-hero-actions select { width:100%;min-height:44px;padding:0 12px;border:1px solid #3a4554;border-radius:11px;background:#0d1219;color:#f4f6f8;font-weight:750; }
.invent-owner-status { display:inline-flex;align-items:center;justify-content:center;min-height:31px;padding:5px 9px;border:1px solid;border-radius:8px;font-size:10px;font-weight:950;letter-spacing:.07em; }
.invent-owner-status.pending { border-color:rgba(245,159,67,.46);background:rgba(245,159,67,.1);color:#f6c992; }
.invent-owner-status.ready { border-color:rgba(66,184,131,.46);background:rgba(66,184,131,.1);color:#9be1c4; }
.invent-owner-module-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.invent-owner-module-card { position:relative;min-width:0;min-height:150px;display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:1fr auto;gap:10px 13px;padding:18px;border:1px solid var(--owner-line);border-radius:17px;background:linear-gradient(180deg,#151c26,#10161e);color:var(--text);text-align:left;box-shadow:0 10px 25px rgba(0,0,0,.18); }
.invent-owner-module-card:hover { transform:translateY(-2px);border-color:rgba(217,173,38,.5); }
.invent-owner-module-card.connected { border-color:rgba(66,184,131,.28); }
.invent-owner-module-icon { width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:rgba(217,173,38,.1);font-size:25px; }
.invent-owner-module-card span:nth-child(2) { min-width:0; }
.invent-owner-module-card strong,.invent-owner-module-card small { display:block;overflow-wrap:anywhere; }
.invent-owner-module-card strong { font-size:19px; }
.invent-owner-module-card small { margin-top:7px;color:#909aa8;font-size:13px;line-height:1.4; }
.invent-owner-module-card em { grid-column:1/-1;justify-self:start;padding:4px 7px;border-radius:7px;background:#202834;color:#9aa4b1;font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase;letter-spacing:.05em; }
.invent-owner-module-card.connected em { background:rgba(66,184,131,.12);color:#9be1c4; }
.invent-owner-module-nav { display:flex;gap:7px;padding:8px;border:1px solid var(--owner-line);border-radius:14px;background:#10161e;overflow-x:auto;scrollbar-width:thin; }
.invent-owner-module-nav button { flex:0 0 auto;min-height:39px;padding:0 12px;border:1px solid #303a48;border-radius:9px;background:#171e29;color:#9fa9b7;font-weight:800;white-space:nowrap; }
.invent-owner-module-nav button:first-child { color:#ead078;border-color:rgba(217,173,38,.38); }
.invent-owner-module-nav button.active { border-color:var(--owner-gold);background:rgba(217,173,38,.12);color:#f1d477; }
.invent-owner-content { min-width:0;display:grid;gap:14px; }
.invent-owner-panel-grid { min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.invent-owner-table-wrap { width:100%;max-width:100%;overflow:auto; }
.invent-owner-table { min-width:700px; }
.invent-owner-table .number-cell { text-align:right;font-variant-numeric:tabular-nums; }
.invent-owner-empty { min-height:230px;display:flex;align-items:center;justify-content:center;gap:18px;text-align:left; }
.invent-owner-empty>span { width:65px;height:65px;display:grid;place-items:center;border:1px solid rgba(217,173,38,.4);border-radius:17px;background:rgba(217,173,38,.08);color:#f1d477;font-size:34px; }
.invent-owner-empty h3 { margin:0 0 6px;font-size:24px; }
.invent-owner-empty p { max-width:720px;margin:0 0 14px;color:var(--muted);line-height:1.5; }
.invent-owner-footer { display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:12px 15px;border:1px solid var(--owner-line);border-radius:13px;background:#0f151d;color:#8f99a7;font-size:12px; }
.invent-owner-footer span:first-child { margin-right:auto; }
.invent-owner-footer i { width:8px;height:8px;display:inline-block;margin-right:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(66,184,131,.1); }
.invent-owner-footer .warning { color:#f6c992; }
.invent-batch-state,.invent-link-state { display:inline-flex;padding:4px 7px;border:1px solid;border-radius:7px;font-size:10px;font-weight:900;white-space:nowrap; }
.invent-batch-state.ok,.invent-link-state.linked { border-color:rgba(66,184,131,.4);background:rgba(66,184,131,.09);color:#9be1c4; }
.invent-batch-state.review,.invent-link-state.waiting { border-color:rgba(245,159,67,.4);background:rgba(245,159,67,.08);color:#f6c992; }

@media (max-width:1450px) {
  .owner-module-hub-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:1180px) and (min-width:821px) {
  .app-layout.role-owner { grid-template-columns:84px minmax(0,1fr); }
  .role-owner>.sidebar { width:auto; }
  .invent-owner-module-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .owner-module-hub-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .invent-owner-panel-grid { grid-template-columns:1fr; }
}
@media (max-width:820px) {
  .app-layout.role-owner { display:block;padding-bottom:82px; }
  .role-owner>.sidebar { width:auto; }
  .role-owner>.sidebar .nav-button { display:none; }
  .role-owner>.sidebar .nav-button[data-view="dashboard"],
  .role-owner>.sidebar .nav-button[data-view="new"],
  .role-owner>.sidebar .nav-button[data-view="queue"],
  .role-owner>.sidebar .nav-button[data-view="invent"],
  .role-owner>.sidebar .nav-button[data-view="reports"] { display:grid; }
  .role-owner>.sidebar .nav-list { grid-template-columns:repeat(5,minmax(72px,1fr));grid-auto-flow:initial;grid-auto-columns:auto; }
  .role-owner>.main { padding:13px 12px 24px; }
  .owner-module-hub { padding:15px; }
  .owner-module-hub-head,.invent-owner-hero { align-items:stretch;flex-direction:column; }
  .invent-owner-hero { padding:17px; }
  .invent-owner-hero-actions { width:100%;min-width:0;justify-items:stretch; }
  .invent-owner-module-grid,.owner-module-hub-grid { grid-template-columns:1fr 1fr; }
  .owner-module-hub-grid>button { min-height:112px; }
}
@media (max-width:560px) {
  .invent-owner-module-grid,.owner-module-hub-grid { grid-template-columns:1fr; }
  .invent-owner-module-card { min-height:128px; }
  .invent-owner-empty { align-items:flex-start;flex-direction:column; }
  .invent-owner-footer span { width:100%; }
}

@media (orientation:portrait) and (max-width:560px) {
  .pos-stage-one .menu-grid { grid-template-columns:1fr !important; }
}

/* Beta 7.0 · кабинет единой системы, ревизии Invent и фактическая выдача */
.integration-hero { overflow:hidden; background:linear-gradient(135deg,rgba(233,196,106,.12),rgba(50,211,165,.06) 58%,transparent); }
.integration-foundation-badge,.integration-import-state { flex:0 0 auto; display:inline-flex; align-items:center; min-height:34px; padding:7px 12px; border:1px solid rgba(233,196,106,.48); border-radius:999px; color:var(--gold-light); background:rgba(233,196,106,.09); font-size:12px; font-weight:950; letter-spacing:.06em; text-align:center; }
.integration-columns { display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,.85fr); gap:16px; }
.integration-account-list,.integration-review-list { display:grid; gap:10px; }
.integration-account-row { min-width:0; display:grid; grid-template-columns:minmax(170px,.9fr) minmax(180px,1.1fr) auto; align-items:center; gap:12px; padding:13px; border:1px solid var(--line); border-radius:14px; background:var(--panel-2); }
.integration-account-row.disabled { opacity:.58; }
.integration-account-main,.integration-account-access { min-width:0; display:grid; gap:4px; }
.integration-account-main strong,.integration-account-main code,.integration-account-access small { min-width:0; overflow-wrap:anywhere; }
.integration-role { width:max-content; max-width:100%; padding:3px 7px; border-radius:999px; background:rgba(50,211,165,.12); color:var(--green); font-size:11px; font-weight:950; text-transform:uppercase; }
.integration-account-access small { color:var(--muted); }
.integration-account-form { margin-top:14px; }
.integration-access-details { border:1px solid var(--line); border-radius:12px; background:var(--panel-2); overflow:hidden; }
.integration-access-details summary { cursor:pointer; padding:12px 14px; font-weight:900; }
.integration-check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:0 12px 12px; }
.integration-check { min-width:0; display:flex; align-items:center; gap:9px; padding:10px; border:1px solid var(--line); border-radius:10px; background:var(--panel); }
.integration-check input { flex:0 0 auto; width:20px; height:20px; }
.integration-check span { min-width:0; overflow-wrap:anywhere; }
.integration-check span:has(strong) { display:grid; gap:2px; }
.integration-check small { color:var(--muted); }
.integration-review-row { min-width:0; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px; border:1px solid rgba(239,106,106,.42); border-radius:14px; background:rgba(239,106,106,.08); }
.integration-review-row>div { min-width:0; display:grid; gap:4px; }
.integration-review-row span { color:#ffb2b2; font-size:12px; font-weight:950; letter-spacing:.04em; }
.integration-review-row small { color:var(--muted); overflow-wrap:anywhere; }
.integration-batch-status { display:inline-flex; padding:4px 8px; border-radius:999px; font-size:12px; font-weight:900; }
.integration-batch-status.ok { color:var(--green); background:rgba(50,211,165,.12); }
.integration-batch-status.review { color:#ffb2b2; background:rgba(239,106,106,.13); }
.integration-ledger-card .table td small { display:block; color:var(--muted); }
.integration-import-card .section-head { align-items:flex-start; }
.integration-import-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:center; margin:14px 0; }
.integration-import-form input[type="file"] { min-width:0; width:100%; min-height:48px; padding:9px; border:1px solid var(--line); border-radius:12px; background:var(--panel-2); }
.fulfillment-correction-backdrop { padding:12px; overflow:hidden; }
.fulfillment-correction-modal { width:min(760px,100%); max-height:calc(100dvh - 24px); display:flex; flex-direction:column; overflow:hidden; }
.fulfillment-correction-body { min-height:0; flex:1 1 auto; display:grid; align-content:start; gap:12px; padding:18px 22px; overflow-y:auto; overscroll-behavior:contain; touch-action:pan-y; }
.fulfillment-correction-head,.fulfillment-correction-row { min-width:0; display:grid; grid-template-columns:minmax(150px,1fr) minmax(120px,.45fr) auto; gap:10px; align-items:center; }
.fulfillment-correction-head { color:var(--muted); font-size:12px; font-weight:900; }
#fulfillment-correction-rows { display:grid; gap:8px; }
.fulfillment-correction-row input { width:100%; min-width:0; }
.fulfillment-correction-modal .catalog-item-footer { flex:0 0 auto; }

@media (max-width:900px) {
  .integration-columns { grid-template-columns:1fr; }
  .integration-account-row { grid-template-columns:minmax(0,1fr) auto; }
  .integration-account-access { grid-column:1 / -1; grid-row:2; }
}

@media (max-width:640px) {
  .integration-hero .section-head,.integration-import-card .section-head,.integration-review-row { align-items:stretch; flex-direction:column; }
  .integration-foundation-badge,.integration-import-state { width:max-content; max-width:100%; }
  .integration-check-grid { grid-template-columns:1fr; }
  .integration-account-row { grid-template-columns:1fr; }
  .integration-account-access { grid-column:auto; grid-row:auto; }
  .integration-account-row button,.integration-review-row button { width:100%; }
  .integration-import-form { grid-template-columns:1fr; }
  .fulfillment-correction-backdrop { padding:0; }
  .fulfillment-correction-modal { width:100vw; height:100dvh; max-height:100dvh; border-radius:0; }
  .fulfillment-correction-body { padding:14px; }
  .fulfillment-correction-head { display:none; }
  .fulfillment-correction-row { grid-template-columns:minmax(0,1fr) 92px; }
  .fulfillment-correction-row button { grid-column:1 / -1; width:100%; }
}

/* Beta 7.3 · нейтральный Local Control, выдвижная навигация, WOK и внутренний учёт */
@media (min-width:821px) {
  .app-layout.role-owner { grid-template-columns:72px minmax(0,1fr) !important; }
  .role-owner>.sidebar {
    width:72px !important; min-width:72px; max-width:300px; z-index:120;
    overflow:visible; padding:14px 10px 12px; transition:width .2s ease, box-shadow .2s ease;
    box-shadow:8px 0 28px rgba(0,0,0,.16);
  }
  .role-owner>.sidebar.sidebar-expanded { width:300px !important; box-shadow:18px 0 44px rgba(0,0,0,.42); }
  .role-owner>.sidebar .brand { min-height:52px; margin-top:8px; white-space:nowrap; overflow:hidden; }
  .role-owner>.sidebar .brand>div:last-child,
  .role-owner>.sidebar .branch-chip,
  .role-owner>.sidebar .nav-label,
  .role-owner>.sidebar .nav-section,
  .role-owner>.sidebar .connection span,
  .role-owner>.sidebar .user-meta { opacity:0; visibility:hidden; width:0; pointer-events:none; }
  .role-owner>.sidebar.sidebar-expanded .brand>div:last-child,
  .role-owner>.sidebar.sidebar-expanded .branch-chip,
  .role-owner>.sidebar.sidebar-expanded .nav-label,
  .role-owner>.sidebar.sidebar-expanded .nav-section,
  .role-owner>.sidebar.sidebar-expanded .connection span,
  .role-owner>.sidebar.sidebar-expanded .user-meta { opacity:1; visibility:visible; width:auto; pointer-events:auto; }
  .role-owner>.sidebar:not(.sidebar-expanded) .brand { justify-content:center; }
  .role-owner>.sidebar:not(.sidebar-expanded) .brand-mark { margin:0; }
  .role-owner>.sidebar:not(.sidebar-expanded) .nav-button { width:50px; min-width:50px; padding:0; justify-content:center; margin-inline:auto; }
  .role-owner>.sidebar:not(.sidebar-expanded) .nav-icon { width:auto; min-width:0; font-size:20px; }
  .role-owner>.sidebar:not(.sidebar-expanded) .sidebar-footer { padding-inline:0; }
  .role-owner>.sidebar:not(.sidebar-expanded) .connection { justify-content:center; }
  .role-owner>.sidebar:not(.sidebar-expanded) .user-card { justify-content:center; padding:8px 3px; }
  .role-owner>.sidebar:not(.sidebar-expanded) .logout { display:none; }
  .role-owner>.sidebar .nav-list { overflow-y:auto; overflow-x:hidden; padding-right:2px; scrollbar-gutter:stable; }
}
.sidebar-toggle { width:100%; min-height:42px; display:flex; align-items:center; justify-content:center; gap:9px; margin:0 0 5px; border:1px solid rgba(217,173,38,.35); border-radius:12px; background:rgba(217,173,38,.08); color:var(--gold-light); font-weight:900; }
.sidebar-toggle span { font-size:20px; line-height:1; }
.sidebar-toggle b { font-size:13px; }
@media (max-width:820px) { .sidebar-toggle { display:none; } }

.context-help { margin:0 0 14px; padding:13px 15px; display:flex; align-items:center; justify-content:space-between; gap:14px; border:1px solid rgba(72,157,255,.3); border-radius:14px; background:rgba(72,157,255,.07); }
.context-help>div:first-child { display:flex; align-items:flex-start; gap:11px; min-width:0; }
.context-help>div:first-child>span { flex:0 0 30px; width:30px; height:30px; display:grid; place-items:center; border-radius:50%; background:rgba(72,157,255,.17); font-weight:950; }
.context-help strong { display:block; margin-bottom:2px; }
.context-help p { margin:0; color:var(--muted); font-size:13px; line-height:1.45; }
.context-help-links { display:flex; flex-wrap:wrap; gap:7px; flex:0 0 auto; }
.context-help-links button { min-height:34px; padding:6px 10px; border-radius:9px; border:1px solid var(--line); background:var(--panel-2); color:inherit; font-weight:800; }

.wok-hero { background:linear-gradient(135deg,rgba(217,173,38,.12),rgba(50,211,165,.06)); }
.wok-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0 0 14px; }
.wok-flow article { min-width:0; display:grid; grid-template-columns:42px 1fr; gap:3px 11px; padding:15px; border:1px solid var(--line); border-radius:15px; background:var(--panel); }
.wok-flow b { grid-row:1/3; width:38px; height:38px; display:grid; place-items:center; border-radius:11px; background:rgba(217,173,38,.13); color:var(--gold-light); font-size:18px; }
.wok-flow strong { font-size:16px; }
.wok-flow span { color:var(--muted); font-size:12px; line-height:1.4; }
.wok-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.wok-card { padding:16px; border:1px solid var(--line); border-radius:16px; background:var(--panel); }
.wok-card.ready { border-color:rgba(50,211,165,.35); }
.wok-card.warning { border-color:rgba(236,176,58,.42); }
.wok-card header { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.wok-card header>div { min-width:0; }
.wok-card code { color:var(--gold-light); font-weight:900; }
.wok-card h3 { margin:3px 0 0; font-size:19px; overflow-wrap:anywhere; }
.wok-card header>span { flex:0 0 auto; padding:5px 8px; border-radius:999px; background:rgba(50,211,165,.11); color:var(--green); font-size:10px; font-weight:950; }
.wok-card.warning header>span { background:rgba(236,176,58,.12); color:var(--gold-light); }
.wok-card>p { color:var(--muted); font-size:12px; }
.wok-card ul { list-style:none; padding:0; margin:12px 0; display:grid; gap:6px; }
.wok-card li { display:flex; justify-content:space-between; gap:10px; padding:8px 10px; border-radius:9px; background:var(--panel-2); font-size:12px; }
.wok-card li span { color:var(--muted); }

.internal-source-banner { margin-bottom:12px; }
.internal-source-banner .internal-choice { width:100%; border-color:rgba(111,194,255,.48); background:rgba(72,157,255,.08); }
.internal-source-banner .internal-choice.active { border-color:#6fc2ff; box-shadow:0 0 0 2px rgba(111,194,255,.14) inset; }
.wizard-detail-hint.internal { border-color:rgba(111,194,255,.32); background:rgba(72,157,255,.07); }
.internal-order-flag { margin:10px 0; padding:11px 13px; border:2px solid rgba(111,194,255,.55); border-radius:12px; background:rgba(72,157,255,.09); display:grid; gap:2px; }
.internal-order-flag strong { color:#8ed1ff; font-size:13px; letter-spacing:.05em; }
.internal-order-flag span { font-size:12px; color:var(--muted); }
.payment-state.internal { border-color:rgba(111,194,255,.3); }
.internal-issue-note { font-size:14px; line-height:1.5; }
.invent-aux-note { margin:0 20px 14px; }

.branch-type-help { line-height:1.45; }
.branch-type.auxiliary { border-color:rgba(111,194,255,.4); color:#8ed1ff; }

html[data-ui-density="compact"] .card.padded { padding:14px; }
html[data-ui-density="compact"] .nav-button { min-height:40px; }
html[data-ui-density="compact"] .ticket { padding:12px; }
html[data-ui-font="large"] body { font-size:17px; }
html[data-ui-font="large"] .nav-button { font-size:16px; }
html[data-ui-font="large"] .muted, html[data-ui-font="large"] small { font-size:13px; }
html[data-ui-motion="off"] *, html[data-ui-motion="off"] *::before, html[data-ui-motion="off"] *::after { scroll-behavior:auto !important; transition:none !important; animation:none !important; }

@media (max-width:900px) {
  .wok-flow,.wok-grid { grid-template-columns:1fr; }
  .context-help { align-items:stretch; flex-direction:column; }
  .context-help-links { width:100%; }
  .context-help-links button { flex:1 1 120px; }
}

/* Beta 7.3 · Контроль Keeper, проверка WOK и расходники по персонам */
.keeper-control-hero {
  display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:14px;padding:22px;
  border:1px solid rgba(217,173,38,.34);border-radius:20px;background:linear-gradient(145deg,#171e28,#0f151d);
  box-shadow:0 16px 42px rgba(0,0,0,.24);
}
.keeper-control-hero h2 { margin:5px 0 7px;font-size:clamp(30px,3vw,42px);letter-spacing:-.04em; }
.keeper-control-hero p { max-width:840px;margin:0;color:#9ca6b4;line-height:1.5; }
.keeper-control-live { flex:0 0 auto;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end; }
.keeper-control-live span { min-width:112px;padding:10px 12px;border:1px solid var(--owner-line);border-radius:12px;background:#101720;color:#99a3b1;font-size:11px;font-weight:800;text-align:center; }
.keeper-control-live b { display:block;margin-bottom:2px;color:#f0d06c;font-size:22px; }
.keeper-data-flow { display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:8px;margin-bottom:14px; }
.keeper-data-flow>div { min-width:0;padding:14px;border:1px solid var(--owner-line);border-radius:14px;background:#121923; }
.keeper-data-flow>div>b { width:28px;height:28px;display:grid;place-items:center;margin-bottom:7px;border-radius:8px;background:rgba(217,173,38,.12);color:#f0d06c; }
.keeper-data-flow strong,.keeper-data-flow small { display:block; }
.keeper-data-flow small { margin-top:5px;color:#8e98a6;line-height:1.4; }
.keeper-data-flow>i { align-self:center;color:#707b89;font-size:22px;font-style:normal; }
.keeper-control-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
.keeper-control-card { min-width:0;min-height:148px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:13px;align-items:start;padding:18px;border:1px solid var(--owner-line);border-radius:17px;background:linear-gradient(180deg,#161d27,#111720);color:var(--text);text-align:left;box-shadow:0 10px 26px rgba(0,0,0,.18); }
.keeper-control-card:hover { border-color:rgba(217,173,38,.5);transform:translateY(-2px); }
.keeper-control-card>b { width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:rgba(217,173,38,.11);color:#f1d474;font-size:22px; }
.keeper-control-card span { min-width:0; }
.keeper-control-card strong,.keeper-control-card small,.keeper-control-card em { display:block;overflow-wrap:anywhere; }
.keeper-control-card strong { font-size:20px;line-height:1.2; }
.keeper-control-card small { margin-top:7px;color:#929caa;line-height:1.45; }
.keeper-control-card em { width:max-content;max-width:100%;margin-top:10px;padding:4px 8px;border-radius:999px;background:#202936;color:#b4becb;font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase;letter-spacing:.05em; }
.keeper-control-card>i { color:#7b8593;font-style:normal;font-size:20px; }
.owner-main-modules .owner-module-hub-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }

.wok-card-actions { display:flex;gap:8px;flex-wrap:wrap;margin-top:13px; }
.wok-mapping-details { margin:12px 0;border:1px solid var(--line);border-radius:12px;background:#0f151d;overflow:hidden; }
.wok-mapping-details>summary { cursor:pointer;padding:11px 13px;color:#e4c96d;font-size:12px;font-weight:900; }
.wok-base-map,.wok-map-step { padding:12px 13px;border-top:1px solid var(--line); }
.wok-base-map>strong { display:block;margin-bottom:7px;font-size:12px; }
.wok-map-step header { display:flex;justify-content:flex-start;align-items:center;gap:9px;margin-bottom:8px; }
.wok-map-step header>b { width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:rgba(217,173,38,.12);color:#f0d06c; }
.wok-map-step header strong,.wok-map-step header small { display:block; }
.wok-map-step header small { color:var(--muted);font-size:10px; }
.wok-map-option { display:grid;grid-template-columns:minmax(120px,.7fr) minmax(0,1.3fr);gap:10px;padding:8px 9px;border-radius:8px;background:#171e28;font-size:11px; }
.wok-map-option+ .wok-map-option { margin-top:5px; }
.wok-map-option>span { color:#cbd2dc; }
.wok-map-option>strong { color:#9ba6b4;overflow-wrap:anywhere; }
.wok-map-option.warning { border:1px solid rgba(239,106,106,.45); }
.wok-test-backdrop { padding:12px; }
.wok-test-modal { width:min(1180px,100%);max-height:calc(100dvh - 24px);display:flex;flex-direction:column;overflow:hidden; }
.wok-test-layout { min-height:0;flex:1 1 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:14px;padding:17px 20px;overflow:hidden; }
.wok-test-picker,.wok-test-result { min-height:0;overflow-y:auto;overscroll-behavior:contain; }
.wok-test-picker { padding-right:5px; }
.wok-test-result { display:grid;align-content:start;gap:10px;padding:14px;border:1px solid rgba(217,173,38,.28);border-radius:14px;background:#0d131b; }
.wok-test-result>section { padding:12px;border:1px solid var(--line);border-radius:11px;background:#141b24; }
.wok-test-result>section>span { display:block;margin-bottom:6px;color:#84909e;font-size:10px;font-weight:950;letter-spacing:.08em; }
.wok-test-result>section>strong { display:block;font-size:16px; }
.wok-test-result>section>small { display:block;margin-top:6px;color:#8e98a6;line-height:1.4; }
.wok-test-result ul { list-style:none;margin:0;padding:0;display:grid;gap:6px; }
.wok-test-result li { display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding:7px 8px;border-radius:8px;background:#0f151d;font-size:11px; }
.wok-test-result li code { color:#f0d06c; }
.wok-test-result li span { overflow-wrap:anywhere; }
.wok-test-status { padding:12px;border:1px solid;border-radius:11px; }
.wok-test-status span,.wok-test-status strong { display:block; }
.wok-test-status span { margin-bottom:3px;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.07em; }
.wok-test-status.good { border-color:rgba(50,211,165,.4);background:rgba(50,211,165,.08); }
.wok-test-status.good span { color:#91e7c9; }
.wok-test-status.warning { border-color:rgba(236,176,58,.45);background:rgba(236,176,58,.08); }
.wok-test-status.warning span { color:#f0d06c; }
[data-wok-test-group].invalid { border-color:rgba(236,176,58,.55); }

.person-supplies-preview { margin:10px 0 4px;padding:12px 13px;border:1px solid rgba(217,173,38,.32);border-radius:13px;background:rgba(217,173,38,.06); }
.person-supplies-preview>div { display:flex;justify-content:space-between;gap:10px;align-items:center; }
.person-supplies-preview>div>span { color:#b6bfca;font-size:12px;font-weight:800; }
.person-supplies-preview>div>strong { color:#f0d06c;font-size:14px; }
.person-supplies-preview ul { list-style:none;margin:9px 0 7px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px; }
.person-supplies-preview li { display:flex;justify-content:space-between;gap:8px;padding:7px 9px;border-radius:8px;background:#151c25;font-size:11px; }
.person-supplies-preview li span { overflow-wrap:anywhere; }
.person-supplies-preview li strong { color:#d7dde5; }
.person-supplies-preview>small { color:#8f99a7;line-height:1.4; }
.person-supplies-preview.empty-preview { display:grid;gap:3px;border-color:var(--line);background:var(--panel-2); }
.person-supplies-preview.empty-preview span { font-weight:850; }
.person-supplies-owner { border-color:rgba(217,173,38,.32) !important;background:linear-gradient(135deg,rgba(217,173,38,.07),var(--owner-panel)) !important; }
.person-supply-example { display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;margin:0 0 13px; }
.person-supply-example>div { padding:11px;border:1px solid var(--line);border-radius:11px;background:#111821; }
.person-supply-example span,.person-supply-example strong { display:block; }
.person-supply-example span { color:#8f99a7;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em; }
.person-supply-example strong { margin-top:4px;font-size:14px; }
.person-supply-example>i { color:#77818e;font-style:normal; }
.packaging-steps { grid-template-columns:repeat(5,minmax(0,1fr)); }

.day-edit-explainer { display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:12px;margin:0 0 14px; }
.day-edit-explainer>div { padding:14px 16px;border:1px solid rgba(217,173,38,.28);border-radius:14px;background:#121922; }
.day-edit-explainer>div:first-child { display:flex;gap:12px; }
.day-edit-explainer b { flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:rgba(217,173,38,.12);color:#f0d06c;font-size:20px; }
.day-edit-explainer strong,.day-edit-explainer small { display:block; }
.day-edit-explainer small { margin-top:4px;color:#939dab;line-height:1.45; }

@media (max-width:1180px) {
  .owner-main-modules .owner-module-hub-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .keeper-data-flow { grid-template-columns:1fr 1fr; }
  .keeper-data-flow>i { display:none; }
  .wok-test-layout { grid-template-columns:1fr;overflow-y:auto; }
  .wok-test-picker,.wok-test-result { overflow:visible; }
}
@media (max-width:820px) {
  .role-owner>.sidebar .nav-button[data-view="keeper"] { display:grid; }
  .role-owner>.sidebar .nav-list { grid-template-columns:repeat(4,minmax(72px,1fr)); }
  .keeper-control-hero { flex-direction:column;align-items:stretch; }
  .keeper-control-live { justify-content:stretch; }
  .keeper-control-live span { flex:1 1 100px; }
  .keeper-control-grid,.keeper-data-flow,.day-edit-explainer { grid-template-columns:1fr; }
  .person-supply-example { grid-template-columns:1fr; }
  .person-supply-example>i { transform:rotate(90deg);justify-self:center; }
  .packaging-steps { grid-template-columns:1fr 1fr; }
}
@media (max-width:620px) {
  .keeper-control-grid,.owner-main-modules .owner-module-hub-grid { grid-template-columns:1fr; }
  .wok-test-backdrop { padding:0; }
  .wok-test-modal { width:100vw;height:100dvh;max-height:100dvh;border-radius:0; }
  .wok-test-layout { padding:12px; }
  .person-supplies-preview ul { grid-template-columns:1fr; }
}

/* Beta 7.3 · чистая свёрнутая навигация владельца */
@media (min-width:821px) {
  .role-owner>.sidebar:not(.sidebar-expanded) .nav-list { scrollbar-width:none; }
  .role-owner>.sidebar:not(.sidebar-expanded) .nav-list::-webkit-scrollbar { display:none; width:0; height:0; }
}


/* Beta 7.4 — full-width owner navigation and one-step branch setup. */
.app-layout.role-owner,
.app-layout.role-owner.owner-no-sidebar { grid-template-columns:minmax(0,1fr); }
.role-owner>.main { width:100%;max-width:none; }
.topbar-title-block { min-width:0;display:grid;gap:4px; }
.owner-top-navigation { display:flex;align-items:center;gap:8px;margin-bottom:7px; }
.owner-top-navigation button { min-height:38px;padding:0 13px;border-radius:10px;font-weight:850; }
.owner-home-button { border-color:rgba(217,173,38,.42)!important;color:#f0d47b!important;background:rgba(217,173,38,.08)!important; }
.branch-card-actions { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap; }
.branch-invent-badge { display:inline-flex;align-items:center;min-height:25px;padding:3px 8px;border:1px solid rgba(66,184,131,.34);border-radius:999px;background:rgba(66,184,131,.08);color:#9be1c4;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em; }
.branch-create-wizard { display:grid;gap:13px; }
.branch-operational-settings { display:grid;gap:13px; }
.branch-create-step { padding:15px;border:1px solid var(--owner-line,#2b3442);border-radius:15px;background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.005)); }
.branch-create-step>header { display:flex;align-items:center;gap:11px;margin-bottom:14px; }
.branch-create-step>header>b { width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px;border-radius:11px;background:rgba(217,173,38,.12);color:#f0d47b;font-size:17px; }
.branch-create-step>header strong,.branch-create-step>header small { display:block; }
.branch-create-step>header strong { font-size:17px; }
.branch-create-step>header small { margin-top:3px;color:var(--muted);font-size:11px;line-height:1.35; }
.branch-create-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px; }
.branch-copy-options-wide { grid-template-columns:repeat(2,minmax(0,1fr)); }
.branch-copy-options-wide label:last-child { grid-column:1/-1; }
.branch-security-toggle { display:flex;align-items:flex-start;gap:11px;margin-top:12px;padding:12px;border:1px solid rgba(217,173,38,.22);border-radius:12px;background:rgba(217,173,38,.055); }
.branch-security-toggle input { margin-top:3px; }
.branch-security-toggle strong,.branch-security-toggle small { display:block; }
.branch-security-toggle small { margin-top:4px;color:var(--muted);line-height:1.4; }
.branch-create-finish { display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 15px;border:1px solid rgba(66,184,131,.27);border-radius:14px;background:rgba(66,184,131,.055); }
.branch-create-finish>div { min-width:0; }
.branch-create-finish strong,.branch-create-finish span { display:block; }
.branch-create-finish span { margin-top:4px;color:var(--muted);font-size:12px;line-height:1.45; }
.branch-create-finish button { flex:0 0 auto; }
@media (max-width:900px) {
  .role-owner>.main { padding:14px 12px 28px; }
  .role-owner .topbar { align-items:flex-start; }
  .owner-top-navigation { flex-wrap:wrap; }
  .branch-create-grid,.branch-copy-options-wide { grid-template-columns:1fr; }
  .branch-copy-options-wide label:last-child { grid-column:auto; }
  .branch-create-finish { align-items:stretch;flex-direction:column; }
  .branch-create-finish button { width:100%; }
}

/* Beta 7.5 — payment-to-Invent routing and linked auxiliary ledgers. */
.payment-control-layout { align-items:start; }
.payment-invent-routing-card { border-color:rgba(217,173,38,.30)!important;background:linear-gradient(145deg,rgba(217,173,38,.045),var(--owner-panel,#111823))!important; }
.routing-source-select { display:grid;gap:6px;margin:0 0 13px; }
.routing-source-select>span { color:var(--muted);font-size:11px;font-weight:850; }
.routing-source-select select { min-height:44px; }
.payment-invent-route-list,.branch-payment-routes { display:grid;gap:8px; }
.payment-invent-route-row,.branch-payment-route { display:grid;grid-template-columns:minmax(150px,.75fr) 28px minmax(220px,1.25fr);align-items:center;gap:9px;padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:#101720; }
.payment-invent-route-row>div strong,.payment-invent-route-row>div small,.branch-payment-route>span strong,.branch-payment-route>span small { display:block; }
.payment-invent-route-row>div small,.branch-payment-route>span small { margin-top:3px;color:var(--muted);font-size:10px;line-height:1.35; }
.payment-invent-route-row>span,.branch-payment-route>b { color:#d9ad26;text-align:center;font-size:18px; }
.payment-invent-route-row select,.branch-payment-route select { min-width:0;width:100%; }
.branch-payment-routes { margin-bottom:11px; }
[data-auxiliary-parent] small { display:block;margin-top:5px;color:var(--muted);font-size:10px;line-height:1.4; }
@media (max-width:820px) {
  .payment-invent-route-row,.branch-payment-route { grid-template-columns:1fr;gap:6px; }
  .payment-invent-route-row>span,.branch-payment-route>b { transform:rotate(90deg);justify-self:center;line-height:1; }
}

/* Beta 7.6 — owner navigation without sidebar + manual staff meals by actual grams. */
.app-layout.role-owner.owner-no-sidebar > .main {
  grid-column: 1 / -1;
  width: 100%;
  min-width: 0;
  max-width: none;
}
.app-layout.role-owner.owner-no-sidebar > .main > div { width:100%; min-width:0; }
.invent-meal-card { display:grid; gap:14px; }
.invent-meal-form { display:grid; gap:15px; }
.invent-meal-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px 12px; }
.invent-meal-lines-head { display:flex; align-items:flex-end; justify-content:space-between; gap:14px; padding-top:4px; }
.invent-meal-lines-head strong,.invent-meal-lines-head small { display:block; }
.invent-meal-lines-head small { margin-top:4px; color:var(--muted); line-height:1.4; }
.invent-meal-lines { display:grid; gap:8px; }
.invent-meal-row { display:grid; grid-template-columns:minmax(125px,.72fr) minmax(220px,1.45fr) minmax(125px,.7fr) minmax(90px,.5fr) 42px; gap:8px; align-items:end; padding:10px; border:1px solid var(--owner-line,#2b3442); border-radius:13px; background:rgba(255,255,255,.018); }
.invent-meal-row label { display:grid; gap:5px; min-width:0; }
.invent-meal-row label>span { color:var(--muted); font-size:10px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.invent-meal-row input { width:100%; min-width:0; min-height:42px; }
.invent-meal-remove { width:42px; height:42px; align-self:end; font-size:21px; }
.invent-meal-submit { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:13px 14px; border:1px solid rgba(217,173,38,.24); border-radius:13px; background:rgba(217,173,38,.05); }
.invent-meal-submit span { max-width:760px; color:var(--muted); font-size:12px; line-height:1.45; }
.invent-meal-submit button { flex:0 0 auto; }
.invent-meal-history { margin-top:14px; }
.invent-meal-history-row { display:grid; grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr); gap:8px 18px; padding:12px 0; border-bottom:1px solid var(--owner-line,#2b3442); }
.invent-meal-history-row:last-child { border-bottom:0; }
.invent-meal-history-row strong,.invent-meal-history-row small { display:block; }
.invent-meal-history-row small { margin-top:3px; color:var(--muted); }
.invent-meal-history-row p { margin:0; line-height:1.5; }
.invent-meal-history-row em { grid-column:1/-1; color:var(--muted); font-size:12px; font-style:normal; }
@media (max-width:980px) {
  .invent-meal-meta { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .invent-meal-row { grid-template-columns:minmax(105px,.75fr) minmax(180px,1.3fr) minmax(105px,.65fr) minmax(80px,.5fr) 42px; }
}
@media (max-width:720px) {
  .invent-meal-meta { grid-template-columns:1fr; }
  .invent-meal-row { grid-template-columns:1fr 1fr; }
  .invent-meal-row label:nth-child(2) { grid-column:1/-1; }
  .invent-meal-remove { grid-column:2; justify-self:end; }
  .invent-meal-lines-head,.invent-meal-submit { align-items:stretch; flex-direction:column; }
  .invent-meal-history-row { grid-template-columns:1fr; }
  .invent-meal-history-row em { grid-column:auto; }
}

/* Beta 7.7 — 4-digit branch login + 4-digit branch password. */
.branch-login-access { display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 2px; }
.branch-login-access label { display:grid;gap:6px; }
.branch-login-access label>span { color:var(--muted);font-size:11px;font-weight:850; }
.branch-login-access input { width:100%;min-width:0;height:52px;border:1px solid var(--line);border-radius:13px;background:#100f0e;color:var(--text);text-align:center;font-size:22px;font-weight:900;letter-spacing:.18em; }
.branch-login-access input:focus { border-color:rgba(214,173,92,.72);outline:none;box-shadow:0 0 0 3px rgba(214,173,92,.10); }
.branch-access-warning { margin-top:15px; }
.branch-access-summary { display:grid;gap:2px;width:max-content;max-width:100%;margin-top:10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.018); }
.branch-access-summary span,.branch-access-summary small { color:var(--muted);font-size:10px; }
.branch-access-summary strong { font-size:13px; }
.branch-access-summary.ready { border-color:rgba(66,184,131,.28);background:rgba(66,184,131,.055); }
.branch-access-summary.missing { border-color:rgba(245,159,67,.35);background:rgba(245,159,67,.055); }
.branch-access-create-step { border-color:rgba(214,173,92,.30);background:linear-gradient(180deg,rgba(214,173,92,.045),rgba(255,255,255,.006)); }
.branch-access-secret { display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0;padding:12px;border:1px solid rgba(214,173,92,.36);border-radius:13px;background:rgba(214,173,92,.065); }
.branch-access-secret>div { display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 9px;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:#11100e; }
.branch-access-secret span { grid-column:1/-1;color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em; }
.branch-access-secret strong { font-size:25px;letter-spacing:.12em;color:var(--gold-light); }
.branch-access-secret small { grid-column:1/-1;color:var(--muted);font-size:11px;line-height:1.4; }
.branch-access-modal { width:min(520px,calc(100vw - 24px)); }
@media (max-width:620px) {
  .branch-login-access,.branch-access-secret { grid-template-columns:1fr; }
}

/* Beta 7.8 — manual portable data center. */
.transfer-center {
  margin-top: 18px;
}
.transfer-export-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 18px 0;
}
.transfer-export-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px;
  min-height: 190px;
  padding: 18px;
  border: 1px solid var(--line, #2c3440);
  border-radius: 18px;
  background: rgba(255,255,255,.025);
}
.transfer-export-card.recommended {
  border-color: rgba(224,181,91,.62);
  background: linear-gradient(145deg, rgba(224,181,91,.09), rgba(255,255,255,.025));
}
.transfer-export-card > div > span {
  display: inline-block;
  margin-bottom: 8px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  color: var(--gold, #e0b55b);
}
.transfer-export-card strong {
  display: block;
  font-size: 19px;
  margin-bottom: 8px;
}
.transfer-export-card p {
  margin: 0;
  color: var(--muted, #98a2b0);
  line-height: 1.48;
}
.transfer-import-form {
  display: grid;
  grid-template-columns: minmax(220px,1fr) minmax(260px,1.2fr) auto;
  gap: 12px;
  align-items: center;
  margin-top: 16px;
  padding: 16px;
  border: 1px solid var(--line, #2c3440);
  border-radius: 16px;
  background: rgba(255,255,255,.025);
}
.transfer-import-form strong,
.transfer-import-form small {
  display: block;
}
.transfer-import-form small {
  margin-top: 4px;
  color: var(--muted, #98a2b0);
}
.transfer-import-form input[type="file"] {
  width: 100%;
}
.transfer-preview {
  margin-top: 12px;
}
.transfer-preview-empty {
  padding: 16px;
  border: 1px dashed var(--line, #2c3440);
  border-radius: 14px;
  color: var(--muted, #98a2b0);
}
.transfer-preview-ready {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(70,180,130,.35);
  border-radius: 16px;
  background: rgba(70,180,130,.045);
}
.transfer-preview-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}
.transfer-preview-head span,
.transfer-preview-head strong,
.transfer-preview-head small {
  display: block;
}
.transfer-preview-head span,
.transfer-preview-head small {
  color: var(--muted, #98a2b0);
}
.transfer-preview-head strong {
  margin: 3px 0;
  font-size: 18px;
}
.transfer-preview-head > b {
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(70,180,130,.14);
  color: #8ce0b9;
  font-size: 11px;
  letter-spacing: .07em;
}
.transfer-counts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.transfer-counts span {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  padding: 7px 10px;
  border: 1px solid var(--line, #2c3440);
  border-radius: 10px;
  background: rgba(0,0,0,.12);
}
.transfer-counts code {
  font-size: 11px;
}
@media (max-width: 1180px) {
  .transfer-export-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .transfer-export-grid { grid-template-columns: 1fr; }
  .transfer-import-form { grid-template-columns: 1fr; }
}

/* Beta 7.9 — configurable Invent consumables */
.consumable-product-link{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.9fr);gap:14px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}
.consumable-product-link>div:first-child{display:grid;gap:4px}.consumable-product-link small,.field-help{display:block;margin-top:5px;color:var(--muted);font-size:12px;line-height:1.35}
.invent-table-subline{display:block;margin-top:4px;color:var(--muted);font-size:11px;font-weight:700}
@media(max-width:720px){.consumable-product-link{grid-template-columns:1fr}.packaging-edit-grid{grid-template-columns:1fr}.packaging-edit-grid .wide{grid-column:1}}

/* Beta 7.10: staff workload + two-stage kitchen */
.staff-workload{margin:12px 0 18px;border:1px solid var(--line);border-radius:16px;background:var(--card);overflow:hidden}.staff-workload summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:14px 16px}.staff-workload summary span{display:flex;flex-direction:column;gap:3px}.staff-workload summary small{opacity:.68}.staff-workload summary em{font-style:normal;font-weight:700}.staff-workload-body{padding:0 16px 14px;display:grid;gap:8px}.staff-load-row{display:grid;grid-template-columns:56px 1fr 92px;gap:10px;align-items:center}.staff-load-row i{height:10px;border-radius:999px;background:var(--soft);overflow:hidden}.staff-load-row i b{display:block;height:100%;background:currentColor;opacity:.55}.staff-load-row strong{text-align:right;font-size:12px}.admin-peak-forecast{margin:0 0 12px;padding:12px 16px;border:1px solid var(--line);border-radius:16px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.admin-peak-forecast span,.admin-peak-forecast small{opacity:.72}.admin-peak-forecast strong{font-size:20px}

.kitchen-packing-popup-button{width:100%;margin:10px 0;font-size:16px;min-height:48px}.kitchen-packing-modal{width:min(760px,94vw);max-height:88vh}.kitchen-packing-modal-body{padding:16px;overflow:auto}.kitchen-packing-modal-body .packing-plan{margin:0}.kitchen-packing-modal-body .packing-plan summary{display:none}.kitchen-packing-modal-body .packing-plan-body{display:block!important}


/* Beta 7.14: full Invent is the primary owner inventory workspace */
.full-invent-shell{display:grid;grid-template-rows:auto minmax(720px,calc(100vh - 170px));gap:12px;min-width:0}
.full-invent-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.full-invent-toolbar>div:first-child{display:grid;gap:2px}.full-invent-toolbar span{font-size:12px;font-weight:900;letter-spacing:.16em;color:var(--gold)}.full-invent-toolbar strong{font-size:20px}.full-invent-toolbar small{color:var(--muted)}.full-invent-toolbar>div:last-child{display:flex;gap:8px;flex-wrap:wrap}
.full-invent-frame{width:100%;height:100%;min-height:720px;border:1px solid var(--line);border-radius:16px;background:#0d1117}
.shift-handover-close{display:grid;gap:12px;padding:16px;border:1px solid rgba(221,174,79,.35);border-radius:16px;background:rgba(221,174,79,.06)}
.shift-handover-close-list,.handover-opening-list{display:grid;gap:8px}.shift-handover-close-row,.handover-opening-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}
.shift-handover-close-row span,.handover-opening-row span{display:grid;gap:2px}.shift-handover-close-row small,.handover-opening-row small{color:var(--muted)}.shift-handover-close-row input,.handover-opening-row input{width:26px;height:26px;flex:0 0 auto}
.handover-opening-row.done{border-color:rgba(63,183,139,.45)}.handover-opening-row.missing{border-color:rgba(224,105,105,.45)}
.shift-handover-opening-modal{width:min(720px,94vw);max-height:88vh;display:grid;grid-template-rows:auto 1fr auto}.shift-handover-opening-body{overflow:auto;padding:16px;display:grid;gap:12px}
.shift-handover-settings{border-top:1px solid var(--line);padding-top:10px}.shift-handover-settings summary{cursor:pointer;font-weight:800}
@media(max-width:760px){.full-invent-toolbar{align-items:flex-start;flex-direction:column}.full-invent-shell{grid-template-rows:auto minmax(820px,calc(100vh - 130px));margin:-4px}.full-invent-frame{min-height:820px;border-radius:10px}.shift-handover-close-row,.handover-opening-row{align-items:flex-start}}


/* Beta 9.1 — Invent is a native owner workspace, not a framed second app */
.unified-invent-shell{display:block;min-width:0;margin:-4px -2px 0}
.unified-invent-frame{display:block;width:100%;height:calc(100vh - 112px);min-height:760px;border:0;border-radius:0;background:transparent}
@media(max-width:760px){.unified-invent-shell{margin:-8px}.unified-invent-frame{height:calc(100vh - 92px);min-height:820px}}

/* RC1 — explicit Keeper → Invent branch binding */
.branch-invent-badge.ready{border-color:rgba(63,183,139,.4);background:rgba(63,183,139,.09);color:#8ce0b9}
.branch-invent-badge.missing{border-color:rgba(224,105,105,.4);background:rgba(224,105,105,.09);color:#ffaaa2}
.branch-invent-route{display:grid;gap:8px;margin:13px 0;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}
.branch-invent-route.ready{border-color:rgba(63,183,139,.3)}.branch-invent-route.missing{border-color:rgba(224,105,105,.34)}
.branch-invent-route-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.branch-invent-route-line span{font-size:10px;letter-spacing:.12em;color:var(--muted);font-weight:900}.branch-invent-route-line b{color:var(--gold)}
.branch-invent-route>small{color:var(--muted);line-height:1.4}.branch-helper-flow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding-top:8px;border-top:1px dashed var(--line)}.branch-helper-flow span,.branch-helper-flow em{font-size:11px;color:var(--muted)}.branch-helper-flow em{font-style:normal}
.branch-invent-link-editor{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin:10px 0 14px}.branch-invent-link-editor label{display:grid;gap:6px;font-size:12px;font-weight:850}.branch-invent-link-editor select{width:100%;min-height:42px}
@media(max-width:720px){.branch-invent-link-editor{grid-template-columns:1fr}.branch-invent-link-editor .secondary{width:100%}}

/* RC4 Phase 1 · TZ 1–10 */
.owner-hub-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.owner-five-modules{grid-template-columns:repeat(5,minmax(0,1fr))}
.system-establishment-modal{width:min(980px,calc(100vw - 24px));max-height:94vh;display:flex;flex-direction:column}
.system-establishment-scroll{overflow:auto;padding:4px 4px 18px;display:grid;gap:14px;overscroll-behavior:contain}
.system-wizard-step{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--panel-solid)}
.system-wizard-step>b{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;border:1px solid var(--line);font-size:18px}
.system-wizard-step h4{margin:0 0 6px;font-size:18px}.system-wizard-step p{margin:0 0 12px;color:var(--muted)}
.system-payment-routing{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:9px;margin-top:12px}
.system-payment-route{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:10px;border:1px solid var(--line);border-radius:12px}
.system-payment-route span{display:grid;gap:2px}.system-payment-route small{color:var(--muted)}.system-payment-route select{max-width:190px}
.system-final-check{padding:14px 16px;border:1px solid var(--line);border-radius:14px;display:grid;gap:5px}.system-final-check span{color:var(--muted)}
.owner-reserve-login{margin:10px 0;border:1px solid var(--line);border-radius:12px;padding:10px}.owner-reserve-login summary{cursor:pointer;font-weight:700}
#new-branch-card{display:none!important}
@media(max-width:900px){.owner-five-modules{grid-template-columns:repeat(2,minmax(0,1fr))}.system-wizard-step{grid-template-columns:36px 1fr}.system-payment-route{align-items:stretch;flex-direction:column}.system-payment-route select{max-width:none}}
@media(max-width:560px){.owner-five-modules{grid-template-columns:1fr}.owner-hub-actions{justify-content:stretch}.owner-hub-actions button{flex:1}.system-establishment-modal{width:calc(100vw - 10px);max-height:98vh}.system-wizard-step{padding:12px;gap:9px}}

/* RC6 · owner discount controls */
.owner-discounts { display:grid; gap:16px; }
.discount-global-card,.discount-rule-card,.discount-new-card{border:1px solid var(--line);border-radius:18px;background:var(--panel-2,rgba(255,255,255,.02));overflow:hidden}
.discount-global-card>summary,.discount-rule-card>summary,.discount-new-card>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;font-weight:800}
.discount-global-card>summary span,.discount-rule-card>summary span{display:grid;gap:4px}.discount-global-card>summary small,.discount-rule-card>summary small{font-weight:500;color:var(--muted)}
.discount-global-card>form,.discount-rule-card>form,.discount-new-card>form{padding:0 18px 18px}.discount-rule-card.inactive{opacity:.74}
.discount-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.discount-scope-grid .wide{grid-column:1/-1}.discount-scope-grid select[multiple]{min-height:110px}
.discount-rule-list{display:grid;gap:10px}.discount-rule-actions{display:flex;gap:10px;flex-wrap:wrap}.discount-checkout-head{margin-top:8px}
.issue-discount-section{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:16px}.issue-global-discount{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:12px;border-radius:14px;background:rgba(66,184,131,.12)}.issue-global-discount small{grid-column:1/-1;color:var(--muted)}
.issue-discount-grid{display:grid;gap:8px}.issue-discount-option{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;cursor:pointer}.issue-discount-option.selected{outline:2px solid currentColor}.issue-discount-option.blocked{opacity:.5;cursor:not-allowed}.issue-discount-option span{display:grid;gap:3px}.issue-discount-option small{color:var(--muted)}
@media(max-width:760px){.discount-scope-grid{grid-template-columns:1fr}.discount-scope-grid .wide{grid-column:auto}}

/* RC9 — удобный выбор частичного меню + стабильный скролл мастера */
.system-establishment-modal{overflow:hidden}
.system-establishment-scroll{min-height:0;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable;touch-action:pan-y}
.system-menu-picker-field{min-height:48px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.system-menu-picker-field>span{min-height:46px;display:flex;align-items:center;padding:0 13px;border:1px solid var(--line);border-radius:11px;background:#100f0e;color:var(--muted);font-weight:800}
.system-menu-picker-modal{width:min(760px,calc(100vw - 24px));height:min(820px,calc(100dvh - 28px));display:flex;flex-direction:column;overflow:hidden}
.system-menu-picker-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;padding:14px 18px;border-bottom:1px solid var(--line)}
.system-menu-picker-toolbar input{min-height:46px}
.system-menu-picker-list{min-height:0;overflow-y:auto!important;overscroll-behavior:contain;touch-action:pan-y;padding:14px 18px;display:grid;gap:8px;align-content:start;scrollbar-gutter:stable}
.system-menu-picker-row{display:flex;align-items:center;gap:12px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.025);cursor:pointer}
.system-menu-picker-row:hover{border-color:rgba(214,173,92,.45)}
.system-menu-picker-row input{width:20px;height:20px;flex:0 0 auto}
.system-menu-picker-row span{display:flex;gap:12px;align-items:center;min-width:0}
.system-menu-picker-row strong{min-width:72px;color:var(--gold-light)}
.system-menu-picker-row em{font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:680px){.system-menu-picker-toolbar{grid-template-columns:1fr 1fr}.system-menu-picker-toolbar input{grid-column:1/-1}.system-menu-picker-row strong{min-width:54px}.system-menu-picker-field{grid-template-columns:1fr}.system-menu-picker-field button{width:100%}}


/* RC9 — Invent is mounted in the same document as Local Control. */
.integrated-invent-host{position:relative;min-height:100vh;background:#090909;color:#f4efe6;z-index:20}
.integrated-invent-host[hidden]{display:none!important}
.integrated-invent-bridgebar{position:sticky;top:0;z-index:500;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 18px;background:#11100f;border-bottom:1px solid #3f3930;box-shadow:0 8px 28px rgba(0,0,0,.28)}
.integrated-invent-bridgebar>div{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.integrated-invent-bridgebar span{font-size:11px;font-weight:900;letter-spacing:.12em;color:#d8af62}.integrated-invent-bridgebar b{font-size:20px}.integrated-invent-bridgebar small{color:#9f978c}.integrated-invent-bridgebar nav{display:flex;gap:8px}.integrated-invent-bridgebar button{border:1px solid #4a4237;border-radius:10px;background:#211f1c;color:#f4efe6;padding:9px 13px;font-weight:800;cursor:pointer}.integrated-invent-bridgebar button:hover{border-color:#d8af62}.integrated-invent-content{min-height:calc(100vh - 58px)}
.integrated-invent-error{margin:32px;padding:24px;border:1px solid #79413c;border-radius:16px;background:#241413}.integrated-invent-error h2{margin-top:0}
.integrated-invent-launch-state{min-height:50vh;display:grid;place-items:center;align-content:center;gap:8px}.integrated-invent-launch-state strong{font-size:24px}.integrated-invent-launch-state span{color:var(--muted)}
@media(max-width:700px){.integrated-invent-bridgebar{align-items:flex-start;flex-direction:column}.integrated-invent-bridgebar nav{width:100%}.integrated-invent-bridgebar button{flex:1}}

/* RC11 — six direct owner entry points on Local Control home. */
.owner-six-modules{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.owner-six-modules{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.owner-six-modules{grid-template-columns:1fr}}

/* RC12 · owner network-first dashboard */
.owner-network-hero,.owner-branch-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:26px;border:1px solid var(--line);border-radius:22px;background:var(--panel)}
.owner-network-hero h2,.owner-branch-head h2{margin:4px 0 8px;font-size:30px}.owner-network-hero p,.owner-branch-head p{margin:0;max-width:760px;color:var(--muted)}
.owner-network-summary{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.owner-network-summary span{min-width:110px;padding:12px 14px;border-radius:14px;background:var(--panel-2);border:1px solid var(--line);display:flex;flex-direction:column}.owner-network-summary small{color:var(--muted)}.owner-network-summary b{font-size:20px;margin-top:4px}.owner-network-summary .danger b{color:var(--red)}
.owner-network-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:16px}.owner-network-branch{appearance:none;text-align:left;border:1px solid var(--line);border-radius:20px;background:var(--panel);padding:20px;color:inherit;cursor:pointer;transition:.16s transform,.16s border-color}.owner-network-branch:hover{transform:translateY(-2px);border-color:var(--gold)}.owner-network-branch header{display:flex;justify-content:space-between;gap:14px}.owner-network-branch h3{font-size:22px;margin:5px 0}.owner-network-branch code{color:var(--muted)}.owner-network-branch header>em{font-style:normal;color:var(--muted);font-size:12px}.owner-network-status{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--green)}.owner-network-status i{width:8px;height:8px;border-radius:50%;background:currentColor}.owner-network-branch.offline .owner-network-status,.owner-network-status.offline{color:var(--muted)}
.owner-network-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.owner-network-metrics span{padding:10px;border-radius:12px;background:var(--panel-2);display:flex;flex-direction:column;min-width:0}.owner-network-metrics small{font-size:11px;color:var(--muted)}.owner-network-metrics b{font-size:17px;margin-top:3px}.owner-network-metrics .danger b{color:var(--red)}.owner-network-branch footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:14px;color:var(--muted);font-size:12px}.owner-network-branch footer strong{color:var(--text)}
.owner-global-actions,.owner-branch-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:16px}.owner-global-actions button,.owner-branch-actions button{display:flex;align-items:center;gap:14px;text-align:left;padding:17px;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:inherit}.owner-global-actions button>b,.owner-branch-actions button>b{font-size:20px}.owner-global-actions button span,.owner-branch-actions button span{display:flex;flex-direction:column;gap:3px;flex:1}.owner-global-actions small,.owner-branch-actions small{color:var(--muted)}.owner-global-actions em,.owner-branch-actions em{font-style:normal}.owner-branch-actions button:disabled{opacity:.45;cursor:not-allowed}.owner-branch-metrics{margin-top:16px}.owner-branch-head>button{flex:0 0 auto}
@media(max-width:760px){.owner-network-hero,.owner-branch-head{flex-direction:column}.owner-network-summary{justify-content:flex-start}.owner-network-metrics{grid-template-columns:repeat(2,1fr)}}

/* RC22 owner UX: frequent actions stay visible, rare actions are collapsed. */
.owner-top-quick{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.owner-simple-actions{margin-bottom:18px;padding:20px;border:1px solid var(--line,#ddd);border-radius:18px;background:var(--panel,#fff)}
.owner-simple-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.owner-simple-grid button{min-height:88px;display:flex;align-items:center;gap:12px;text-align:left;padding:16px;border-radius:16px}
.owner-simple-grid button>b{font-size:28px;min-width:34px;text-align:center}
.owner-simple-grid button span{display:flex;flex-direction:column;gap:4px}
.owner-simple-grid button small{opacity:.72}
.owner-secondary-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.owner-secondary-actions button{min-height:42px}
.owner-branch-simple{margin-top:18px}
.owner-branch-actions.primary-actions{margin-bottom:12px}
.owner-branch-more{border:1px solid var(--line,#ddd);border-radius:16px;padding:0 14px;background:var(--panel,#fff)}
.owner-branch-more>summary,.owner-advanced-section>summary{cursor:pointer;list-style:none;padding:16px 2px;display:flex;justify-content:space-between;gap:16px;align-items:center}
.owner-branch-more>summary::-webkit-details-marker,.owner-advanced-section>summary::-webkit-details-marker{display:none}
.owner-branch-more>summary:after,.owner-advanced-section>summary:after{content:'↓';opacity:.6}
.owner-branch-more[open]>summary:after,.owner-advanced-section[open]>summary:after{content:'↑'}
.owner-advanced-section{margin-top:14px}
.owner-advanced-section>summary span{opacity:.68;font-size:.9em}
.main-aux-modal{width:min(1100px,96vw);max-height:92vh;display:flex;flex-direction:column;overflow:hidden}
.main-aux-scroll{overflow:auto;overscroll-behavior:contain;padding:18px 22px;display:flex;flex-direction:column;gap:16px}
.main-aux-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.main-aux-summary>div{border:1px solid var(--line,#ddd);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:5px}
.main-aux-summary span{font-size:.8rem;font-weight:800;letter-spacing:.08em}
.main-aux-summary strong{font-size:1.55rem}
.main-aux-summary small{opacity:.7}
.main-aux-section{border:1px solid var(--line,#ddd);border-radius:14px;padding:16px}
.main-aux-section.compact{display:block}
.main-aux-flow{display:inline-flex;min-width:56px;justify-content:center;padding:5px 8px;border-radius:999px;font-weight:900;font-size:.8rem}
.main-aux-flow.main{background:rgba(31,153,89,.13)}
.main-aux-flow.auxiliary{background:rgba(201,145,0,.16)}
.main-aux-warehouse{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:900px){.owner-simple-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-aux-summary{grid-template-columns:1fr}.owner-top-quick{width:100%}}
@media(max-width:560px){.owner-simple-grid{grid-template-columns:1fr}.owner-simple-actions{padding:14px}.main-aux-scroll{padding:12px}.owner-top-quick .secondary{display:none}}


/* RC22 · owner UX polish, branch-wide settings and universal modal scrolling */
.role-owner>.main{overflow-x:hidden}
.owner-simple-actions,.owner-network-hero,.owner-network-grid,.owner-secondary-actions{min-width:0;max-width:100%}
.owner-simple-grid{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr))}
.owner-simple-grid button{min-width:0;overflow:hidden}
.owner-simple-grid button span,.owner-simple-grid button strong,.owner-simple-grid button small{min-width:0;overflow-wrap:anywhere}
.owner-network-hero{flex-wrap:wrap}
.owner-network-hero>div:first-child{flex:1 1 500px;min-width:0}
.owner-network-summary{flex:1 1 520px;min-width:0;max-width:100%;justify-content:flex-end}
.owner-network-summary span{min-width:96px;flex:1 1 96px;max-width:150px}
.owner-network-grid{grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr))}
.owner-network-branch{min-width:0;max-width:100%}
.owner-secondary-actions button{min-height:44px;padding:0 15px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);color:var(--text);font-weight:800}
.owner-secondary-actions button:hover{border-color:var(--gold);background:rgba(214,173,92,.08)}
.apply-all-branches{display:flex;gap:12px;align-items:flex-start;padding:14px 15px;border:1px solid rgba(214,173,92,.42);border-radius:14px;background:rgba(214,173,92,.065);cursor:pointer}
.apply-all-branches input{width:20px;height:20px;margin-top:2px;accent-color:var(--gold);flex:0 0 auto}
.apply-all-branches span{display:grid;gap:4px;min-width:0}.apply-all-branches strong{font-size:15px}.apply-all-branches small{color:var(--muted);line-height:1.45}
.packaging-rule-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
.packaging-rule-guide article{display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}
.packaging-rule-guide article strong{color:var(--gold-light)}.packaging-rule-guide article span{color:var(--muted);line-height:1.45;font-size:13px}
.packaging-edit-modal,.packaging-group-settings-modal{max-height:calc(100dvh - 24px);display:flex;flex-direction:column;overflow:hidden}
.packaging-edit-modal>.packaging-edit-body{min-height:0;flex:1 1 auto;overflow-y:auto!important;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;touch-action:pan-y}
.packaging-edit-modal>.catalog-item-footer{flex:0 0 auto}
@media(max-width:1200px){.owner-simple-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-control-layout{grid-template-columns:1fr!important}.owner-network-summary{justify-content:flex-start}}
@media(max-width:700px){.owner-simple-grid{grid-template-columns:1fr}.packaging-rule-guide{grid-template-columns:1fr}.owner-network-summary span{max-width:none}.owner-secondary-actions{display:grid;grid-template-columns:1fr}.owner-secondary-actions button{width:100%}}

/* RC22 · final scroll safety for long operational dialogs. */
.issue-order-modal{max-height:calc(100dvh - 24px);display:flex;flex-direction:column;padding:0;overflow:hidden}
.issue-order-modal>.issue-order-body{min-height:0;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;touch-action:pan-y}
.issue-order-modal>.issue-order-footer{flex:0 0 auto}
.packaging-apply-all{margin-top:12px}
.packaging-branch-scope>.packaging-branch-list{margin-top:10px}
@media(max-width:560px){.modal-backdrop{padding:8px}.modal{max-height:calc(100dvh - 16px)}}

/* RC22 · visual cleanup for owner quick actions and packaging rule cards */
.owner-simple-actions{padding:18px 20px;background:linear-gradient(180deg,rgba(214,173,92,.035),rgba(214,173,92,.015));border-color:rgba(214,173,92,.26)}
.owner-simple-actions .section-head{margin-bottom:14px}
.owner-simple-grid{gap:10px}
.owner-simple-grid button{min-height:82px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);box-shadow:none;transition:transform .14s,border-color .14s,background .14s}
.owner-simple-grid button:hover{transform:translateY(-1px);border-color:rgba(214,173,92,.65);background:rgba(214,173,92,.075)}
.owner-simple-grid button.primary{background:var(--gold);border-color:var(--gold);color:#17130b}
.owner-simple-grid button.primary:hover{background:var(--gold-light)}
.owner-simple-grid button>b{width:38px;height:38px;min-width:38px;display:grid;place-items:center;border-radius:11px;background:rgba(255,255,255,.055);font-size:23px}
.owner-simple-grid button.primary>b{background:rgba(0,0,0,.09)}
.owner-simple-grid button strong{font-size:17px;line-height:1.15}
.owner-simple-grid button small{font-size:12px;line-height:1.3;color:var(--muted);opacity:1}

.packaging-group-card{grid-template-columns:minmax(0,1fr) minmax(225px,260px) minmax(235px,280px);gap:16px}
.packaging-group-counters{gap:9px!important;align-items:stretch}
.packaging-group-counters b{min-width:0;padding:9px 5px;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;line-height:1}
.packaging-group-counters small{display:block;max-width:100%;font-size:9px!important;line-height:1.15;letter-spacing:.025em;white-space:normal;word-break:normal;overflow-wrap:normal;text-align:center}
.packaging-owner-card-actions{min-width:0}
.packaging-owner-card-actions button{white-space:normal;line-height:1.15;padding:9px 12px}
@media(max-width:1100px){.packaging-group-card{grid-template-columns:minmax(0,1fr) minmax(210px,240px)}.packaging-owner-card-actions{grid-column:1/-1!important;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.packaging-group-card{grid-template-columns:1fr}.packaging-group-counters{grid-column:1}.packaging-owner-card-actions{grid-template-columns:1fr}}

.branch-created-summary{display:grid;gap:8px;margin:16px 0}
.branch-created-row{display:grid;grid-template-columns:minmax(120px,.42fr) minmax(0,1fr);gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}
.branch-created-row span{color:var(--gold-light);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.branch-created-row strong{min-width:0;overflow-wrap:anywhere}
@media(max-width:560px){.branch-created-row{grid-template-columns:1fr;gap:4px}}

/* RC22 — owner analytics, Keeper↔Invent category editor and MAIN/AUX turnover */
.owner-heatmap-details{padding:0;overflow:hidden}
.owner-heatmap-details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px}
.owner-heatmap-details>summary::-webkit-details-marker{display:none}
.owner-heatmap-details>summary:hover{background:rgba(255,255,255,.025)}
.owner-heatmap-details .details-open-label{flex:0 0 auto;border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-weight:800;color:var(--gold,#e2b65b)}
.owner-heatmap-details[open] .details-open-label{opacity:.72}
.owner-heatmap-body{padding:0 24px 24px;border-top:1px solid var(--line)}
.owner-heatmap-body>.muted{margin:18px 0}

.techcard-picker-modal{width:min(940px,96vw);max-height:calc(100dvh - 24px);display:flex;flex-direction:column;overflow:hidden;padding:0}
.techcard-picker-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 24px;display:grid;gap:16px}
.techcard-picker-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;align-items:center;position:sticky;top:0;z-index:2;padding:8px 0;background:var(--panel,#111820)}
.techcard-picker-toolbar input{min-width:0}
.techcard-picker-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.techcard-picker-summary span{font-weight:700;opacity:.78}.techcard-picker-summary strong{font-size:1.35rem;color:var(--gold,#e2b65b)}
.techcard-picker-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.keeper-techcard-pick-row{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;padding:12px 14px;cursor:pointer;min-width:0;background:rgba(255,255,255,.018)}
.keeper-techcard-pick-row:hover{border-color:rgba(226,182,91,.55)}
.keeper-techcard-pick-row input{flex:0 0 auto;width:21px;height:21px}
.keeper-techcard-pick-row span{display:flex;flex-direction:column;gap:3px;min-width:0}.keeper-techcard-pick-row strong,.keeper-techcard-pick-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.apply-all-branches{display:flex;align-items:flex-start;gap:12px;border:1px solid rgba(226,182,91,.4);border-radius:14px;padding:14px;background:rgba(226,182,91,.06);cursor:pointer}.apply-all-branches input{margin-top:3px;width:20px;height:20px}.apply-all-branches span{display:flex;flex-direction:column;gap:4px}.apply-all-branches small{opacity:.72;line-height:1.4}

.main-aux-periods{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.main-aux-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
.main-aux-section .table th,.main-aux-section .table td{white-space:nowrap}
.main-aux-section .table td:nth-child(5){white-space:normal;min-width:220px}

@media(max-width:900px){
  .owner-heatmap-details>summary{align-items:flex-start;flex-direction:column}
  .techcard-picker-toolbar{grid-template-columns:1fr 1fr}.techcard-picker-toolbar input{grid-column:1/-1}
  .techcard-picker-list{grid-template-columns:1fr}
  .main-aux-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){.main-aux-summary{grid-template-columns:1fr}}


/* RC22 · readability and owner/Keeper simplification */
*,*::before,*::after{box-sizing:border-box}
.role-owner .main,.role-owner .content,.role-owner section,.role-owner article,.role-owner form,.role-owner .card{min-width:0}
.role-owner h1,.role-owner h2,.role-owner h3,.role-owner h4,.role-owner p,.role-owner small,.role-owner strong,.role-owner label,.role-owner button,.role-owner td,.role-owner th{overflow-wrap:anywhere}
.role-owner button{max-width:100%}
.owner-simple-grid button.primary small{color:rgba(23,19,11,.72)!important;font-weight:800}
.owner-simple-grid button.primary strong{color:#17130b}
.owner-simple-grid button.primary>b{color:#17130b}
.owner-simple-actions .section-head p{max-width:760px}
.owner-network-hero p{max-width:760px}
.keeper-menu-simple{display:grid;gap:16px}
.keeper-menu-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.keeper-menu-actions button{min-height:54px;white-space:normal;line-height:1.2}
.catalog-simple-managers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.catalog-manager-list{display:grid;gap:8px}
.catalog-manager-row{width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2);color:var(--text);text-align:left}
button.catalog-manager-row:hover{border-color:rgba(214,173,92,.58);background:rgba(214,173,92,.06)}
.catalog-manager-row>span{display:grid;gap:3px;min-width:0}.catalog-manager-row strong{font-size:15px}.catalog-manager-row small{color:var(--muted)}
.catalog-manager-row em{font-style:normal;color:var(--gold-light);font-size:12px;font-weight:850;white-space:normal;text-align:right}
.catalog-manager-row.static{cursor:default}
.catalog-items-details{padding:0!important;overflow:hidden}
.catalog-items-details>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px}
.catalog-items-details>summary::-webkit-details-marker{display:none}
.catalog-items-details>summary span{display:grid;gap:4px}.catalog-items-details>summary small{color:var(--muted);font-weight:600}.catalog-items-details>summary b{color:var(--gold-light);font-size:20px}
.catalog-items-body{padding:0 20px 20px;border-top:1px solid var(--line)}
.catalog-admin-badge{display:inline-flex;padding:5px 8px;border:1px solid rgba(65,194,128,.4);border-radius:8px;background:rgba(65,194,128,.1);font-size:11px;font-weight:900;color:#79dca8}
.category-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end}
.techcard-picker-body .field{min-width:0}
.techcard-picker-body select,.techcard-picker-body input{max-width:100%}
.admin-position-pick-row{border-left:3px solid rgba(65,194,128,.35)}
.section-head{min-width:0;flex-wrap:wrap}.section-head>div{min-width:0}
.notice,.metric,.metrics>*,.catalog-small-card,.payment-method-option,.payment-invent-route-row,.owner-network-branch,.owner-branch-actions button{min-width:0}
.payment-invent-route-row{grid-template-columns:minmax(180px,.7fr) auto minmax(240px,1fr)}
.payment-invent-route-row select{min-width:0;width:100%}
.table-wrap{max-width:100%;overflow:auto}
.table td,.table th{max-width:360px}
.table td strong,.table td small{overflow-wrap:anywhere}
.modal,.modal *{min-width:0}
.modal input,.modal select,.modal textarea{max-width:100%}
@media(max-width:1050px){.keeper-menu-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-simple-managers{grid-template-columns:1fr}.category-choice-grid{grid-template-columns:1fr}.payment-invent-route-row{grid-template-columns:1fr}.payment-invent-route-row>span{display:none}}
@media(max-width:600px){.keeper-menu-actions{grid-template-columns:1fr}.catalog-manager-row{align-items:flex-start;flex-direction:column}.catalog-manager-row em{text-align:left}.owner-simple-grid button{min-height:74px}}

/* RC22 final readability pass: selection rows must remain readable, not clipped. */
.keeper-techcard-pick-row span{min-width:0;overflow:visible}
.keeper-techcard-pick-row strong,.keeper-techcard-pick-row small{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere;line-height:1.28}
.system-menu-picker-row span{min-width:0;align-items:flex-start}
.system-menu-picker-row em{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere;line-height:1.28}
.owner-simple-grid button span{min-width:0}
.owner-simple-grid button strong,.owner-simple-grid button small{white-space:normal;overflow-wrap:anywhere}
.catalog-table td,.catalog-table th{vertical-align:top}


/* RC22 · 3-day workload forecast + owner quick Invent */
.staff-workload-body{display:block}
.staff-forecast-legend{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:0 0 10px;font-size:12px;color:var(--muted)}
.staff-forecast-legend span{display:flex;align-items:center;gap:6px}
.staff-forecast-legend i{width:12px;height:12px;border-radius:4px;border:1px solid var(--line);display:inline-block}
.staff-forecast-legend i.low{background:rgba(150,150,150,.14)}
.staff-forecast-legend i.normal{background:rgba(54,170,111,.22);border-color:rgba(54,170,111,.42)}
.staff-forecast-legend i.busy{background:rgba(220,76,70,.28);border-color:rgba(220,76,70,.55)}
.staff-forecast-scroll{overflow-x:auto;overscroll-behavior-inline:contain;padding-bottom:6px}
.staff-forecast-grid{display:grid;grid-template-columns:112px repeat(var(--forecast-hours),minmax(72px,1fr));gap:6px;min-width:max-content}
.staff-forecast-corner,.staff-forecast-hour,.staff-forecast-day,.staff-forecast-cell{min-height:54px;border-radius:12px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center}
.staff-forecast-corner,.staff-forecast-hour{min-height:34px;background:rgba(255,255,255,.025);font-size:11px;font-weight:900;color:var(--muted)}
.staff-forecast-day{position:sticky;left:0;z-index:2;background:var(--card);flex-direction:column;align-items:flex-start;padding:8px 12px}
.staff-forecast-day strong{font-size:17px}.staff-forecast-day small{color:var(--muted);font-size:11px}
.staff-forecast-cell{flex-direction:column;gap:2px;background:rgba(150,150,150,.07)}
.staff-forecast-cell strong{font-size:18px;line-height:1}.staff-forecast-cell small{font-size:9px;color:var(--muted)}
.staff-forecast-cell.low{background:rgba(150,150,150,.11)}
.staff-forecast-cell.normal{background:rgba(54,170,111,.17);border-color:rgba(54,170,111,.38)}
.staff-forecast-cell.busy{background:rgba(220,76,70,.22);border-color:rgba(220,76,70,.52)}
.staff-forecast-cell.busy strong{color:#ffb1ac}
@media(min-width:1400px){.owner-simple-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:760px){.staff-forecast-grid{grid-template-columns:94px repeat(var(--forecast-hours),66px)}.staff-forecast-cell,.staff-forecast-day{min-height:50px}}

/* RC22.1 · compact 3-day workload forecast */
.staff-forecast-scroll{overflow-x:auto;overscroll-behavior-inline:contain;padding:2px 0 8px}
.staff-forecast-cards{display:grid;grid-template-columns:repeat(3,minmax(270px,1fr));gap:10px;min-width:850px}
.staff-forecast-card{min-width:0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}
.staff-forecast-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}
.staff-forecast-card>header>div{display:grid;gap:2px}.staff-forecast-card>header strong{font-size:18px}.staff-forecast-card>header small{color:var(--muted);font-size:11px}
.staff-forecast-card>header>span{max-width:58%;font-size:11px;font-weight:850;color:var(--gold-light);text-align:right}
.staff-forecast-chart{height:128px;display:grid;grid-template-columns:repeat(var(--forecast-hours),minmax(17px,1fr));gap:3px;align-items:end;padding-top:18px;border-top:1px solid var(--line)}
.staff-forecast-bar-slot{height:110px;min-width:0;display:grid;grid-template-rows:minmax(0,1fr) 18px;align-items:end;text-align:center}
.staff-forecast-bar{height:100%;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:2px}
.staff-forecast-bar strong{font-size:9px;line-height:1;color:var(--muted);min-height:9px}
.staff-forecast-bar i{display:block;width:min(16px,80%);height:var(--bar-height);min-height:3px;border-radius:5px 5px 2px 2px;border:1px solid var(--line);background:rgba(150,150,150,.12)}
.staff-forecast-bar.normal i{background:rgba(54,170,111,.24);border-color:rgba(54,170,111,.46)}
.staff-forecast-bar.busy i{background:rgba(220,76,70,.3);border-color:rgba(220,76,70,.6)}
.staff-forecast-bar.busy strong{color:#ffb1ac}.staff-forecast-bar-slot>small{font-size:9px;color:var(--muted);line-height:18px}
@media(max-width:900px){.staff-forecast-cards{grid-template-columns:repeat(3,270px);min-width:max-content}.staff-forecast-chart{grid-template-columns:repeat(var(--forecast-hours),17px)}}

/* RC22.1 · tablet-first preorder picker */
.preorder-focused-time{max-width:1040px;width:100%}
.preorder-touch-picker{display:grid;gap:12px;width:100%}
.preorder-quick-days{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:9px}
.preorder-quick-day{min-height:62px;display:grid;place-items:center;gap:2px;padding:9px 12px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2);color:var(--text)}
.preorder-quick-day strong{font-size:16px}.preorder-quick-day small{color:var(--muted)}.preorder-quick-day.active{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold);background:rgba(214,173,92,.08)}
.preorder-picker-layout{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(390px,1.05fr);gap:12px;align-items:start}
.preorder-calendar-panel,.preorder-time-panel{padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}
.preorder-calendar-panel>header{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;gap:8px;align-items:center;margin-bottom:8px;text-align:center;text-transform:capitalize}
.preorder-calendar-panel>header button{min-height:48px;padding:6px}.preorder-calendar-panel>header strong{font-size:16px}
.preorder-picker-weekdays,.preorder-picker-calendar{display:grid;grid-template-columns:repeat(7,minmax(44px,1fr));gap:5px}
.preorder-picker-weekdays span{display:grid;place-items:center;height:28px;color:var(--muted);font-size:11px;font-weight:900}
.preorder-picker-day,.preorder-picker-empty{min-height:50px;border-radius:10px}.preorder-picker-day{border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:16px;font-weight:900}
.preorder-picker-day:hover:not(:disabled){border-color:var(--gold)}.preorder-picker-day.today{box-shadow:inset 0 0 0 1px rgba(214,173,92,.45)}.preorder-picker-day.selected{border-color:var(--gold);background:rgba(214,173,92,.16);box-shadow:inset 0 0 0 1px var(--gold)}.preorder-picker-day:disabled{opacity:.25;cursor:not-allowed}
.preorder-time-panel{display:grid;gap:12px}.preorder-time-panel>div{display:grid;gap:7px}.preorder-time-panel>div>span{color:var(--muted);font-size:12px;font-weight:900}
.preorder-hour-grid{display:grid;grid-template-columns:repeat(8,minmax(42px,1fr));gap:5px}.preorder-minute-grid{display:grid;grid-template-columns:repeat(4,minmax(68px,1fr));gap:7px}
.preorder-time-chip{min-height:46px;padding:6px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font-size:15px;font-weight:900}.preorder-time-chip.selected{border-color:var(--gold);background:rgba(214,173,92,.16);box-shadow:inset 0 0 0 1px var(--gold)}
.preorder-picker-selected{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;align-items:center;padding:12px 14px;border:1px solid rgba(214,173,92,.42);border-radius:13px;background:rgba(214,173,92,.07)}
.preorder-picker-selected span{grid-row:1/3;color:var(--muted);font-size:12px;font-weight:850}.preorder-picker-selected strong{font-size:18px;text-transform:capitalize}.preorder-picker-selected small{color:var(--muted)}
@media(max-width:820px){.preorder-picker-layout{grid-template-columns:1fr}.preorder-hour-grid{grid-template-columns:repeat(6,minmax(45px,1fr))}.preorder-picker-day{min-height:54px}.preorder-focused-time{max-width:100%}}
@media(max-width:540px){.preorder-quick-days{grid-template-columns:repeat(3,1fr)}.preorder-quick-day{min-width:0;padding:7px}.preorder-picker-weekdays,.preorder-picker-calendar{gap:3px}.preorder-picker-day{min-height:48px}.preorder-hour-grid{grid-template-columns:repeat(4,1fr)}.preorder-picker-selected{grid-template-columns:1fr}.preorder-picker-selected span{grid-row:auto}}

/* RC22.1 · persistent preorder attention after shift opening */
.today-preorder-alert{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;margin:10px 0 14px;padding:11px 14px;border:1px solid rgba(239,106,106,.52);border-radius:14px;background:linear-gradient(100deg,rgba(239,106,106,.14),rgba(214,173,92,.06));box-shadow:0 8px 30px rgba(0,0,0,.12)}
.today-preorder-alert-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:rgba(239,106,106,.2);border:1px solid rgba(239,106,106,.58);font-size:24px;font-weight:1000;color:#ffb1ac}.today-preorder-alert>div:nth-child(2){display:grid;gap:2px;min-width:0}.today-preorder-alert span{font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:#ffb1ac}.today-preorder-alert strong{font-size:17px}.today-preorder-alert small{color:var(--muted)}.today-preorder-alert button{min-height:48px;min-width:132px}
@media(max-width:680px){.today-preorder-alert{grid-template-columns:38px minmax(0,1fr)}.today-preorder-alert-icon{width:36px;height:36px}.today-preorder-alert button{grid-column:1/-1;width:100%}}

/* RC22.3 — monthly workload drilldown + financial correction */
.monthly-load-section{display:grid;gap:18px}
.monthly-load-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.monthly-load-empty{min-height:104px}
.monthly-load-day{min-height:104px;border:1px solid var(--line);border-radius:15px;padding:12px;text-align:left;display:grid;align-content:space-between;gap:6px;background:rgba(255,255,255,.025);color:var(--text);cursor:pointer;transition:.15s transform,.15s border-color,.15s background}
.monthly-load-day:hover:not(:disabled){transform:translateY(-2px);border-color:var(--gold)}
.monthly-load-day>span{font-size:14px;font-weight:950;color:var(--gold-light)}
.monthly-load-day>strong{font-size:22px;line-height:1}
.monthly-load-day>small{font-size:11px;color:var(--muted)}
.monthly-load-day.cool{background:rgba(77,133,170,calc(.07 + var(--load)*.18));border-color:rgba(77,133,170,.4)}
.monthly-load-day.warm{background:rgba(218,163,64,calc(.08 + var(--load)*.22));border-color:rgba(218,163,64,.48)}
.monthly-load-day.hot{background:rgba(202,77,69,calc(.12 + var(--load)*.28));border-color:rgba(231,101,91,.7)}
.monthly-load-day.hot>strong{color:#ffb2ac}
.monthly-load-day.empty{opacity:.34;cursor:default}
.monthly-load-legend{display:flex;flex-wrap:wrap;gap:14px;color:var(--muted);font-size:12px}
.monthly-load-legend span{display:flex;align-items:center;gap:7px}.monthly-load-legend i{width:15px;height:15px;border-radius:5px;border:1px solid var(--line);display:inline-block}.monthly-load-legend i.cool{background:rgba(77,133,170,.34)}.monthly-load-legend i.warm{background:rgba(218,163,64,.4)}.monthly-load-legend i.hot{background:rgba(202,77,69,.48)}
.monthly-load-backdrop{padding:14px;overflow:hidden}
.monthly-load-modal{width:min(900px,96vw);max-height:calc(100dvh - 28px);display:flex;flex-direction:column;overflow:hidden;padding:0}
.monthly-load-modal-body{padding:18px 22px 24px;display:grid;gap:16px;overflow-y:auto;min-height:0}
.load-hour-list{display:grid;gap:8px}
.load-hour-row{min-height:64px;border:1px solid var(--line);border-radius:13px;padding:10px 12px;display:grid;grid-template-columns:120px minmax(120px,1fr) 80px 150px;gap:12px;align-items:center;background:rgba(255,255,255,.02);color:var(--text);text-align:left}
.load-hour-row:not(:disabled){cursor:pointer}.load-hour-row:not(:disabled):hover{border-color:var(--gold)}
.load-hour-time{font-weight:900;color:var(--gold-light)}
.load-hour-bar{height:14px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}.load-hour-bar i{display:block;width:calc(var(--load)*100%);min-width:0;height:100%;border-radius:inherit;background:rgba(77,133,170,.75)}
.load-hour-row.warm .load-hour-bar i{background:rgba(218,163,64,.85)}.load-hour-row.hot .load-hour-bar i{background:rgba(220,84,75,.9)}
.load-hour-row>strong{text-align:right;font-size:18px}.load-hour-row>small{text-align:right;color:var(--muted)}
.load-hour-row.empty{opacity:.32}
.load-position-table td:last-child,.load-position-table th:last-child{text-align:right}
.fulfillment-money-correction{padding:14px;border:1px solid rgba(226,182,91,.38);border-radius:14px;background:rgba(226,182,91,.06)}
.fulfillment-money-correction input{font-size:22px;font-weight:900}
.fulfillment-money-correction small{display:block;margin-top:7px;color:var(--muted);line-height:1.4}
@media(max-width:900px){.monthly-load-calendar{grid-template-columns:repeat(4,minmax(0,1fr))}.monthly-load-calendar+.monthly-load-legend{margin-top:4px}.monthly-load-weekdays{display:none}.load-hour-row{grid-template-columns:105px 1fr 70px}.load-hour-row>small{grid-column:1/-1;text-align:left}}
@media(max-width:620px){.monthly-load-calendar{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.monthly-load-day{min-height:92px}.monthly-load-empty{display:none}.monthly-load-backdrop{padding:0}.monthly-load-modal{width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.monthly-load-modal-body{padding:14px}.load-hour-row{grid-template-columns:1fr 70px}.load-hour-bar{grid-column:1/-1;grid-row:2}.load-hour-row>small{grid-column:1/-1;grid-row:3}.load-hour-row>strong{grid-column:2;grid-row:1}}
.report-cancelled-status{display:grid;gap:3px}.report-cancelled-status>strong{color:#ff9c94}.report-cancelled-status>small{font-size:10px;color:var(--muted);line-height:1.25}


/* RC22.5 — owner: today/now panel */
.owner-live-work{margin-top:16px;padding:22px;border:1px solid var(--line);border-radius:22px;background:var(--panel);min-width:0}
.owner-live-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.owner-live-head h2{margin:4px 0 6px;font-size:24px}.owner-live-head p{margin:0;color:var(--muted);max-width:820px}
.owner-live-state{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-radius:999px;border:1px solid var(--line);font-size:12px;font-weight:900;white-space:nowrap}
.owner-live-state.online{color:var(--green);background:color-mix(in srgb,var(--green) 10%,transparent);border-color:color-mix(in srgb,var(--green) 35%,var(--line))}
.owner-live-state.closed,.owner-live-state.offline{color:var(--muted);background:var(--panel-2)}
.owner-live-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-top:18px}
.owner-live-summary>div{min-width:0;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2);display:flex;flex-direction:column;gap:4px}
.owner-live-summary span{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.owner-live-summary strong{font-size:20px}.owner-live-summary .warning strong{color:var(--gold)}.owner-live-summary .danger strong{color:var(--red)}
.owner-live-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:12px;margin-top:12px}
.owner-live-column{min-width:0;border:1px solid var(--line);border-radius:16px;background:var(--panel-2);padding:14px}.owner-live-column.recent{background:color-mix(in srgb,var(--panel-2) 82%,transparent)}
.owner-live-column-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.owner-live-column-head h3{margin:0 0 3px;font-size:16px}.owner-live-column-head p{margin:0;color:var(--muted);font-size:12px}.owner-live-column-head>b{min-width:30px;height:30px;border-radius:10px;background:var(--panel);display:grid;place-items:center}
.owner-live-orders{display:grid;gap:7px}.owner-live-order{min-width:0;display:grid;grid-template-columns:minmax(110px,.65fr) minmax(130px,1fr) auto;align-items:center;gap:10px;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.owner-live-order-id{display:flex;align-items:center;gap:8px;min-width:0}.owner-live-order-id>strong{font-size:15px}.owner-live-order-status{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:999px;font-size:10px;font-weight:900;background:var(--panel-2);color:var(--muted);white-space:nowrap}.owner-live-order-status.cooking{color:var(--gold)}.owner-live-order-status.ready{color:var(--green)}.owner-live-order-status.cancelled{color:var(--red)}.owner-live-order-status.completed{color:var(--muted)}
.owner-live-order-main{display:flex;min-width:0;flex-direction:column}.owner-live-order-main>b{font-size:13px}.owner-live-order-main>small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.owner-live-order-sum{font-size:14px;white-space:nowrap}.owner-live-empty,.owner-live-more{padding:13px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:12px}.owner-live-more{text-align:center}
@media(max-width:1200px){.owner-live-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.owner-live-grid{grid-template-columns:1fr}}
@media(max-width:700px){.owner-live-work{padding:16px}.owner-live-head{flex-direction:column}.owner-live-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-live-order{grid-template-columns:1fr auto}.owner-live-order-main{grid-column:1/-1}.owner-live-order-sum{grid-column:2;grid-row:1}.owner-live-state{align-self:flex-start}}

/* RC22.6 — delivery economics */
.delivery-pricing-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}
.delivery-economics-card{display:grid;gap:18px}
.delivery-economics-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.delivery-economics-kpis .metric{min-width:0}
.delivery-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.delivery-mode-card{border:1px solid var(--line);border-radius:16px;padding:16px;background:rgba(255,255,255,.025);display:grid;gap:14px}
.delivery-mode-card.free{border-color:rgba(77,133,170,.46);background:rgba(77,133,170,.07)}
.delivery-mode-card.paid{border-color:rgba(214,173,92,.46);background:rgba(214,173,92,.07)}
.delivery-mode-card header{display:flex;align-items:center;justify-content:space-between;gap:14px}
.delivery-mode-card header>div{display:grid;gap:3px}.delivery-mode-card header span{font-size:12px;color:var(--muted);font-weight:850}.delivery-mode-card header strong{font-size:22px}.delivery-mode-card header>b{font-size:24px;color:var(--gold-light)}
.delivery-mode-numbers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.delivery-mode-numbers span{display:grid;gap:3px;border-top:1px solid var(--line);padding-top:8px;color:var(--muted);font-size:11px}.delivery-mode-numbers b{font-size:14px;color:var(--text)}
.delivery-economics-breakdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.delivery-economics-breakdown>div{padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.02);display:grid;gap:5px}.delivery-economics-breakdown span{font-size:11px;color:var(--muted);font-weight:800}.delivery-economics-breakdown strong{font-size:18px}
.delivery-economics-columns{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.delivery-economics-columns>section{border:1px solid var(--line);border-radius:15px;padding:16px;min-width:0}.delivery-economics-columns h3{margin:0 0 10px}.delivery-rec-list,.delivery-simulator{display:grid;gap:8px}.delivery-rec{padding:12px 13px;border:1px solid var(--line);border-radius:12px;display:grid;gap:4px;background:rgba(255,255,255,.02)}.delivery-rec strong{font-size:13px}.delivery-rec span{font-size:12px;color:var(--muted);line-height:1.45}.delivery-rec.good{border-color:rgba(54,178,119,.45);background:rgba(54,178,119,.08)}.delivery-rec.warning{border-color:rgba(214,173,92,.5);background:rgba(214,173,92,.08)}.delivery-rec.danger{border-color:rgba(217,95,89,.55);background:rgba(217,95,89,.09)}
.delivery-sim-row{display:grid;grid-template-columns:minmax(0,1fr) auto 58px;gap:10px;align-items:center;padding:10px 11px;border:1px solid var(--line);border-radius:10px}.delivery-sim-row span{font-size:12px;color:var(--muted)}.delivery-sim-row strong{text-align:right}.delivery-sim-row small{text-align:right;color:var(--gold-light);font-weight:900}
.delivery-economics-settings,.delivery-item-health{border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.018);overflow:hidden}.delivery-economics-settings>summary,.delivery-item-health>summary{cursor:pointer;padding:14px 16px;font-weight:900;color:var(--gold-light);list-style-position:inside}.delivery-economics-settings form,.delivery-item-health .table-wrap{padding:0 16px 16px}.owner-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.danger-text{color:#ff9e99}
@media(max-width:1150px){.delivery-economics-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.delivery-economics-columns{grid-template-columns:1fr}.owner-settings-grid{grid-template-columns:1fr 1fr}.delivery-economics-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.delivery-pricing-choice-grid,.delivery-mode-grid,.delivery-economics-kpis,.delivery-economics-breakdown,.owner-settings-grid{grid-template-columns:1fr}.delivery-mode-numbers{grid-template-columns:1fr}.delivery-sim-row{grid-template-columns:1fr auto}.delivery-sim-row small{grid-column:2}}

/* RC22.8 · emergency cleanup preserves settings + Invent */
.emergency-cleanup-scope { display: grid; gap: 12px; }
.emergency-preserve-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 14px 0; text-align: left; }
.emergency-preserve-grid > div { padding: 13px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.025); }
.emergency-preserve-grid > div:first-child { border-color: rgba(239,106,106,.42); background: rgba(239,106,106,.07); }
.emergency-preserve-grid > div:last-child { border-color: rgba(66,184,131,.36); background: rgba(66,184,131,.06); }
.emergency-preserve-grid span, .emergency-preserve-grid strong { display: block; }
.emergency-preserve-grid span { margin-bottom: 6px; color: var(--muted); font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.emergency-preserve-grid strong { line-height: 1.45; }
@media (max-width: 640px) { .emergency-preserve-grid { grid-template-columns: 1fr; } }

/* RC22.13 central multi-branch login clarity */
.login-branch-dynamic{
  border-style:dashed;
}
.login-branch-help{
  display:block;
  margin-top:8px;
  color:var(--muted);
  line-height:1.35;
}

/* RC22.14 · clean final handoff, packing summary and discount picker */
.issue-packing-card{
  overflow:hidden;
  border:1px solid rgba(214,173,92,.46);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(214,173,92,.075),rgba(255,255,255,.018));
}
.issue-packing-card>header{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:13px 15px;
  border-bottom:1px solid rgba(214,173,92,.22);
}
.issue-packing-icon{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border:1px solid rgba(214,173,92,.45);
  border-radius:12px;
  background:rgba(214,173,92,.1);
  color:var(--gold-light);
  font-size:19px;
  font-weight:950;
}
.issue-packing-card>header>div:nth-child(2){display:grid;gap:2px;min-width:0}
.issue-packing-card>header span{color:var(--gold-light);font-size:11px;font-weight:950;letter-spacing:.08em}
.issue-packing-card>header strong{font-size:17px}
.issue-packing-card>header>b{
  display:grid;
  place-items:center;
  min-width:38px;
  height:38px;
  padding:0 9px;
  border-radius:11px;
  background:var(--gold);
  color:#18130a;
  font-size:18px;
}
.issue-packing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}
.issue-packing-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:48px;
  padding:9px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(255,255,255,.025);
}
.issue-packing-row span{font-weight:850;overflow-wrap:anywhere}
.issue-packing-row strong{flex:0 0 auto;color:var(--gold-light);font-size:20px}
.issue-packing-row.container{border-color:rgba(214,173,92,.3)}

.issue-discount-control{
  display:grid;
  gap:7px;
  padding:12px;
  border:1px solid rgba(214,173,92,.52);
  border-radius:16px;
  background:rgba(214,173,92,.035);
}
.issue-discount-trigger{
  width:100%;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  min-height:72px;
  padding:11px 13px;
  border:2px solid rgba(214,173,92,.7);
  border-radius:14px;
  background:rgba(18,17,15,.9);
  text-align:left;
}
.issue-discount-trigger:hover{background:rgba(214,173,92,.075);border-color:var(--gold-light)}
.issue-discount-kicker{
  color:#ff6d67;
  font-size:12px;
  font-weight:950;
  letter-spacing:.09em;
}
.issue-discount-current{display:grid;gap:3px;min-width:0}
.issue-discount-current strong{font-size:17px;color:var(--text)}
.issue-discount-current small,.issue-discount-global-note{color:var(--muted)}
.issue-discount-trigger>b{color:var(--gold-light);font-size:28px;line-height:1}
.issue-discount-global-note{padding:0 3px;font-size:11px}

.issue-discount-picker-backdrop{z-index:2900}
.issue-discount-picker{
  width:min(680px,calc(100vw - 24px));
  max-height:calc(100dvh - 24px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  padding:0;
  border:2px solid rgba(214,173,92,.72);
}
.issue-discount-picker-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:18px 20px;
  border-bottom:1px solid rgba(214,173,92,.28);
  background:linear-gradient(180deg,rgba(214,173,92,.08),transparent);
}
.issue-discount-picker-head h3{margin:3px 0 4px;color:#ff746e;font-size:30px}
.issue-discount-picker-head p{margin:0;color:var(--muted)}
.issue-discount-global-alert{
  display:grid;
  gap:3px;
  margin:13px 16px 0;
  padding:11px 13px;
  border:1px solid rgba(214,173,92,.45);
  border-radius:12px;
  background:rgba(214,173,92,.08);
}
.issue-discount-global-alert strong{color:#ff817b}
.issue-discount-global-alert span{color:var(--muted)}
.issue-discount-picker-list{display:grid;gap:8px;min-height:0;padding:14px 16px;overflow:auto}
.issue-discount-choice{
  display:grid;
  grid-template-columns:minmax(0,1fr) 38px;
  gap:12px;
  align-items:center;
  min-height:68px;
  padding:11px 13px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel-2);
  text-align:left;
}
.issue-discount-choice span{display:grid;gap:4px}
.issue-discount-choice strong{font-size:17px}
.issue-discount-choice small{color:var(--muted)}
.issue-discount-choice i{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-style:normal;font-weight:950}
.issue-discount-choice:hover:not(:disabled){border-color:rgba(214,173,92,.7);background:rgba(214,173,92,.07)}
.issue-discount-choice.selected{border:2px solid var(--gold);background:rgba(214,173,92,.1)}
.issue-discount-choice.selected i{background:var(--gold);color:#18130a}
.issue-discount-choice.blocked{opacity:.48;cursor:not-allowed}
.issue-discount-picker>footer{padding:12px 16px;border-top:1px solid var(--line);background:var(--panel)}

@media(max-width:620px){
  .issue-packing-grid{grid-template-columns:1fr}
  .issue-discount-trigger{grid-template-columns:1fr auto}
  .issue-discount-kicker{grid-column:1/-1}
  .issue-discount-picker-head h3{font-size:26px}
}

/* RC22.15 — controlled post-kitchen edits, owner audit and shift reconciliation */
.order-edit-audit-fields{
  display:grid;
  gap:10px;
  margin-top:12px;
  padding:12px;
  border:1px solid rgba(239,106,106,.34);
  border-radius:13px;
  background:rgba(239,106,106,.055);
}
.order-edit-audit-fields .field{margin:0}

.shift-reconciliation-close{
  margin-top:16px;
  padding:16px;
  border:1px solid rgba(214,173,92,.34);
  border-radius:15px;
  background:linear-gradient(180deg,rgba(214,173,92,.055),rgba(18,17,15,.35));
}
.shift-reconciliation-grid{display:grid;gap:9px;margin:12px 0}
.shift-reconciliation-row{
  display:grid;
  grid-template-columns:minmax(130px,1.2fr) minmax(100px,.75fr) minmax(130px,.85fr) minmax(130px,.9fr) auto;
  gap:10px;
  align-items:end;
  padding:11px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--panel-2);
}
.shift-reconciliation-method{display:grid;gap:3px;align-self:center}
.shift-reconciliation-method strong{font-size:16px}
.shift-reconciliation-method small,.shift-reconciliation-row span{color:var(--muted);font-size:11px;font-weight:800}
.shift-reconciliation-row>div:not(.shift-reconciliation-method){display:grid;gap:4px;align-self:center}
.shift-reconciliation-row>label{display:grid;gap:4px}
.shift-reconciliation-row input{min-width:0}
.shift-close-final-button{min-height:54px;font-size:17px;font-weight:900}
.difference-output{font-size:15px}
.difference-output.negative,.difference-output.positive{color:#ffb3b3}
.difference-output.neutral{color:#9be1c4}

.shift-payment-audit-modal{width:min(900px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto}
.audit-payment-corrected{border-left:3px solid var(--orange);padding-left:8px}

.attention-day-red{
  border:1px solid rgba(239,106,106,.65)!important;
  box-shadow:0 0 0 1px rgba(239,106,106,.12),0 12px 35px rgba(125,20,20,.12);
  background:linear-gradient(145deg,rgba(239,106,106,.09),var(--panel));
}
.owner-attention-card{border-color:rgba(66,184,131,.28)}
.owner-attention-card.has-pending{border-color:rgba(239,106,106,.6);background:rgba(239,106,106,.035)}
.owner-attention-card .owner-attention-list{display:grid;gap:10px}
.owner-attention-event{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel-2);
}
.owner-attention-event.pending{border-color:rgba(239,106,106,.58);background:rgba(239,106,106,.055)}
.owner-attention-event.reviewed{border-color:rgba(66,184,131,.25)}
.owner-attention-event>header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:12px 13px;
  border-bottom:1px solid var(--line);
}
.owner-attention-event>header strong,.owner-attention-event>header small{display:block}
.owner-attention-event>header small{margin-top:4px;color:var(--muted);font-size:11px}
.owner-attention-event>header>span{color:var(--muted);font-size:10px;font-weight:950;letter-spacing:.05em;text-align:right}
.owner-attention-event.pending>header>span{color:#ff9c98}
.attention-reason,.attention-review-note{padding:10px 13px;line-height:1.45}
.attention-before-after{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 13px 11px}
.attention-before-after>div{padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:rgba(0,0,0,.12)}
.attention-before-after span{display:block;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}
.attention-before-after p{margin:5px 0 0;white-space:pre-wrap;line-height:1.4}
.attention-review-note{border-top:1px dashed var(--line);color:var(--muted)}
.attention-actions{display:flex;justify-content:flex-end;gap:8px;padding:11px 13px;border-top:1px solid var(--line)}
.attention-order-row{background:rgba(239,106,106,.075)!important}
.attention-order-row td:first-child{box-shadow:inset 3px 0 0 var(--red)}

@media(max-width:900px){
  .shift-reconciliation-row{grid-template-columns:1fr 1fr}
  .shift-reconciliation-row .shift-reconciliation-method{grid-column:1/-1}
  .shift-reconciliation-row>button{grid-column:1/-1}
}
@media(max-width:620px){
  .shift-reconciliation-row{grid-template-columns:1fr}
  .shift-reconciliation-row .shift-reconciliation-method,.shift-reconciliation-row>button{grid-column:auto}
  .attention-before-after{grid-template-columns:1fr}
  .owner-attention-event>header{display:grid}
  .owner-attention-event>header>span{text-align:left}
  .attention-actions{display:grid}
}

/* RC22.17 · central-branch workflow stabilization */
.paired-branch-switch{
  margin-top:10px;padding:0;border:1px dashed rgba(214,173,92,.38);border-radius:12px;background:rgba(214,173,92,.035);overflow:hidden
}
.paired-branch-switch>summary{cursor:pointer;padding:11px 13px;color:var(--gold-light);font-weight:900;list-style:none}
.paired-branch-switch>summary::-webkit-details-marker{display:none}
.paired-branch-switch[open]>summary{border-bottom:1px solid var(--line)}
.paired-branch-switch .branch-login-access{padding:12px 12px 0}
.paired-branch-switch .login-branch-help{padding:0 12px 12px}

.owner-central-branch-note{margin-top:14px}

/* Add-to-order: the right audit column must always be scrollable and the action
   buttons must remain reachable on laptops/tablets. */
.add-items-cart-panel{
  overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;touch-action:pan-y
}
.add-modal-cart-lines{flex:0 1 210px;max-height:210px;min-height:72px}
.order-edit-audit-fields{flex:0 0 auto;display:grid;gap:10px;margin-top:10px}
.add-items-modal-actions{
  position:sticky;bottom:-15px;z-index:5;margin:12px -2px -15px;padding:12px 2px 15px;
  background:linear-gradient(180deg,rgba(24,22,19,.84),var(--panel) 32%)
}
@media(max-width:820px){
  .add-item-modal{height:calc(100dvh - 12px);width:calc(100vw - 12px)}
  .add-items-workspace{display:flex;flex-direction:column;overflow-y:auto}
  .add-items-catalog{min-height:420px;overflow:visible}
  .add-items-menu-grid{min-height:280px;max-height:44dvh}
  .add-items-cart-panel{min-height:520px;overflow:visible;border-left:0;border-top:1px solid var(--line)}
  .add-modal-cart-lines{max-height:180px}
}

/* Branch creation result: branch login and tablet pairing code are primary;
   the legacy separate-server activation code is deliberately secondary. */
.branch-created-central-modal{width:min(980px,calc(100vw - 24px));padding:0;overflow:hidden}
.branch-created-central-head{display:flex;gap:16px;align-items:flex-start;padding:20px 22px 15px;border-bottom:1px solid var(--line)}
.branch-created-central-head .device-pair-icon{flex:0 0 auto}
.branch-created-central-head h3{margin:3px 0 6px;font-size:27px}
.branch-created-central-head p{margin:0}
.branch-copy-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:14px 22px 0}
.branch-copy-summary>span{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);color:var(--muted)}
.branch-copy-summary strong{color:var(--text)}
.branch-created-login-card,.branch-first-device-code,.branch-created-central-modal>.notice,.branch-server-activation-advanced{margin:14px 22px 0}
.branch-created-login-card{padding:14px;border:1px solid rgba(214,173,92,.38);border-radius:14px;background:rgba(214,173,92,.045)}
.branch-created-login-card h4{margin:0 0 7px;font-size:18px}
.branch-created-login-card>small{display:block;color:var(--muted);line-height:1.45}
.branch-access-secret.three{grid-template-columns:repeat(3,minmax(0,1fr));margin:10px 0}
.branch-access-secret.three>div{grid-template-columns:minmax(0,1fr);align-content:start}
.branch-access-secret.three button{width:100%;margin-top:5px}
.branch-first-device-code{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px;border:2px solid rgba(66,184,131,.55);border-radius:15px;background:rgba(66,184,131,.075)}
.branch-first-device-code>div{display:grid;gap:5px}
.branch-first-device-code span{font-size:11px;font-weight:950;letter-spacing:.08em;color:#9be1c4}
.branch-first-device-code strong{font-size:38px;letter-spacing:.16em;color:#c9ffe8}
.branch-first-device-code small{color:var(--muted);line-height:1.45}
.branch-server-activation-advanced{border:1px dashed var(--line);border-radius:12px;background:rgba(255,255,255,.015)}
.branch-server-activation-advanced>summary{cursor:pointer;padding:12px 14px;color:var(--muted);font-weight:850}
.branch-server-activation-advanced .activation-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:0 14px 14px}
.branch-server-activation-advanced .activation-panel span,.branch-server-activation-advanced .activation-panel small{grid-column:1/-1;color:var(--muted)}
.branch-server-activation-advanced .activation-panel strong{font-size:27px;letter-spacing:.12em;color:var(--gold-light)}
.branch-created-central-actions{padding:14px 22px 20px;margin:0;position:sticky;bottom:0;background:linear-gradient(180deg,rgba(24,22,19,.88),var(--panel) 28%)}
@media(max-width:760px){
  .branch-created-central-modal{width:calc(100vw - 10px)}
  .branch-access-secret.three,.branch-copy-summary{grid-template-columns:1fr}
  .branch-first-device-code{grid-template-columns:1fr}.branch-first-device-code button{width:100%}
  .branch-created-central-actions{display:grid;grid-template-columns:1fr}.branch-created-central-actions button{width:100%}
}

/* Cleaner final handoff: one compact vertical decision flow. */
.issue-order-modal{width:min(720px,calc(100vw - 24px))}
.issue-order-modal>.report-modal-header{padding:17px 20px 13px}
.issue-order-modal>.issue-order-body{padding:14px 20px 16px;gap:12px}
.issue-admin-reminder{padding:11px 13px;border-radius:12px}
.issue-admin-reminder>strong{font-size:11px}
.issue-admin-reminder span{min-height:28px;padding-top:5px;border-top:1px solid rgba(102,169,232,.15)}
.issue-packing-card>header{padding:10px 13px;grid-template-columns:36px minmax(0,1fr) auto}
.issue-packing-icon{width:34px;height:34px;border-radius:10px;font-size:16px}
.issue-packing-card>header strong{font-size:15px}
.issue-packing-grid{padding:9px;gap:7px}
.issue-packing-row{min-height:42px;padding:8px 10px}
.issue-packing-row strong{font-size:18px}
.issue-discount-control{padding:9px;border-radius:13px}
.issue-discount-trigger{min-height:60px;padding:9px 11px;border-width:1px}
.issue-payment-title{margin-top:3px;font-size:16px}
.issue-payment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.issue-payment-option span{min-height:54px;border-width:1px;font-size:16px}
.issue-order-footer{padding:12px 20px;background:rgba(24,22,19,.98);box-shadow:0 -12px 30px rgba(0,0,0,.18)}
.issue-order-footer .success{background:linear-gradient(180deg,#4aa97d,#367e5d);color:#08160f;border-color:#61c995}
@media(max-width:680px){.issue-payment-grid{grid-template-columns:1fr 1fr}.issue-order-modal{width:calc(100vw - 10px)}}

/* Cash reconciliation: show every receipt, highlight likely rows, edit one receipt. */
.shift-payment-audit-modal{width:min(1120px,calc(100vw - 24px));padding:0;overflow:hidden;display:flex;flex-direction:column}
.shift-payment-audit-modal>.report-modal-header{flex:0 0 auto}
.shift-payment-audit-help{margin:12px 18px 0;padding:11px 13px;border:1px solid rgba(214,173,92,.34);border-radius:11px;background:rgba(214,173,92,.055);display:grid;gap:4px}
.shift-payment-audit-help span{color:var(--muted);line-height:1.45}
.shift-payment-audit-table{min-height:0;overflow:auto;margin:12px 18px 18px;border:1px solid var(--line);border-radius:12px}
.shift-payment-audit-table .table{min-width:820px}
.shift-payment-audit-table th{position:sticky;top:0;z-index:2;background:#211f1b}
.shift-payment-audit-table td:first-child strong,.shift-payment-audit-table td:first-child small{display:block}
.shift-payment-audit-table td:first-child small{margin-top:3px;color:var(--muted)}
.payment-audit-focus-row{background:rgba(239,106,106,.08)}
.payment-audit-focus-row td:first-child{box-shadow:inset 3px 0 0 var(--red)}

/* Central server: branch cards are not "remote installs". */
.branch-type.active,.branch-type.waiting{border-color:rgba(66,184,131,.35);background:rgba(66,184,131,.07);color:#9be1c4}

/* RC22.19 — clear central-server status and fast intermediate stock count. */
.owner-central-server-label{
  display:inline-flex;align-items:center;margin:4px 0 8px;padding:4px 8px;border:1px solid var(--line);
  border-radius:999px;color:var(--muted);font-size:11px;font-weight:850;letter-spacing:.04em;text-transform:uppercase
}
.intermediate-stock-quick{white-space:nowrap}
.intermediate-stock-backdrop{padding:10px}
.intermediate-stock-modal{
  width:min(860px,100%);height:min(860px,calc(100dvh - 20px));max-height:calc(100dvh - 20px);
  padding:0;display:flex;flex-direction:column;overflow:hidden
}
.intermediate-stock-tools{flex:0 0 auto;display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);background:var(--panel-2)}
.intermediate-stock-tools .search{flex:1}
.intermediate-stock-tools span{color:var(--muted);font-size:12px;white-space:nowrap}
.intermediate-stock-list{min-height:0;flex:1;overflow-y:auto;padding:10px 18px;overscroll-behavior:contain;scrollbar-gutter:stable}
.intermediate-stock-row{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}
.intermediate-stock-row>span{min-width:0}
.intermediate-stock-row strong,.intermediate-stock-row small{display:block}
.intermediate-stock-row strong{overflow-wrap:anywhere}
.intermediate-stock-row small{margin-top:3px;color:var(--muted);font-size:12px}
.intermediate-stock-row input{width:100%;min-height:44px;text-align:right;font-size:17px;font-weight:850}
.intermediate-stock-footer{flex:0 0 auto;padding:14px 18px 18px;border-top:1px solid var(--line);background:var(--panel)}
.stock-status-hero{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:14px;padding:20px;border:1px solid rgba(214,173,92,.28);border-radius:18px;background:linear-gradient(135deg,rgba(214,173,92,.07),rgba(255,255,255,.015))}
.stock-status-hero h2{margin:4px 0 7px;font-size:28px}
.stock-status-hero p{max-width:760px;margin:0;color:var(--muted);line-height:1.5}
.stock-status-hero>div:last-child{text-align:right}
.stock-status-hero>div:last-child strong,.stock-status-hero>div:last-child small{display:block}
.stock-status-hero>div:last-child small{margin-top:4px;color:var(--muted)}
.stock-status-history{display:grid;gap:10px}
.stock-status-count{border:1px solid var(--line);border-radius:14px;background:var(--panel-2);overflow:hidden}
.stock-status-count.latest{border-color:rgba(66,184,131,.45);box-shadow:inset 3px 0 0 rgba(66,184,131,.65)}
.stock-status-count>header{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;border-bottom:1px solid var(--line)}
.stock-status-count>header strong,.stock-status-count>header small{display:block}
.stock-status-count>header small{margin-top:4px;color:var(--muted)}
.stock-status-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line)}
.stock-status-items>span{display:flex;justify-content:space-between;gap:10px;padding:9px 11px;background:var(--panel)}
.stock-status-items>span strong{overflow-wrap:anywhere;font-size:13px}
.stock-status-items>span b{white-space:nowrap;color:var(--gold-light);font-size:13px}
.day-order-actions{display:flex;flex-wrap:wrap;gap:6px}
.control-table td .audit-payment-corrected{display:block;margin-top:3px;color:#9be1c4;font-weight:800}
@media(max-width:760px){
  .intermediate-stock-tools{display:grid}.intermediate-stock-tools span{white-space:normal}
  .intermediate-stock-row{grid-template-columns:minmax(0,1fr) 110px}
  .stock-status-hero{display:grid;align-items:start}.stock-status-hero>div:last-child{text-align:left}
  .stock-status-items{grid-template-columns:1fr}
}

/* RC22.22 — queue-first kitchen/pass UX + protected admin edit menu */
.ticket-head-right { display:flex; align-items:flex-end; flex-direction:column; gap:7px; flex:0 0 auto; }
.ticket-edit-button { min-height:34px; padding:6px 10px; border:1px solid rgba(214,173,92,.38); border-radius:9px; background:rgba(214,173,92,.08); color:var(--gold-light); font-size:12px; font-weight:850; white-space:nowrap; }
.ticket-edit-button:hover { border-color:rgba(214,173,92,.72); background:rgba(214,173,92,.14); }
.admin-ticket-primary-action { display:block; }
.admin-ticket-primary-action .issue-order-button { width:100%; min-height:52px; }

.order-edit-actions-modal { width:min(760px,calc(100vw - 24px)); }
.order-edit-actions-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:18px; }
.order-edit-action { min-height:92px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:6px; padding:14px 16px; border:1px solid var(--line); border-radius:13px; background:var(--panel-2); color:var(--text); text-align:left; }
.order-edit-action:hover { border-color:rgba(214,173,92,.48); background:rgba(214,173,92,.07); }
.order-edit-action strong { font-size:16px; }
.order-edit-action span { color:var(--muted); font-size:12px; line-height:1.35; }
.order-edit-action.primary-soft { border-color:rgba(66,184,131,.38); background:rgba(66,184,131,.07); }
.order-edit-danger-zone { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:0 18px 18px; padding:14px; border:1px solid rgba(239,106,106,.32); border-radius:13px; background:rgba(239,106,106,.055); }
.order-edit-danger-zone > div { min-width:0; }
.order-edit-danger-zone strong,.order-edit-danger-zone span { display:block; }
.order-edit-danger-zone span { margin-top:4px; color:var(--muted); font-size:12px; }
.order-edit-danger-zone button { flex:0 0 auto; }

.pass-screen-head { margin-bottom:10px; }
.pass-queue-title { margin-top:8px; }
.pass-handoff-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; align-items:start; }
.pass-handoff-card { overflow:hidden; border:2px solid rgba(66,184,131,.38); border-radius:18px; background:linear-gradient(155deg,rgba(66,184,131,.085),rgba(20,19,17,.96) 42%); box-shadow:0 10px 28px rgba(0,0,0,.16); }
.pass-handoff-card.own-delivery { box-shadow:inset 5px 0 0 var(--gold),0 10px 28px rgba(0,0,0,.16); }
.pass-handoff-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:17px 18px 14px; border-bottom:1px solid var(--line); }
.pass-handoff-head > div { min-width:0; }
.pass-order-number { font-size:30px; font-weight:950; letter-spacing:-.04em; }
.pass-handoff-head > div > span { display:block; margin-top:4px; color:var(--gold-light); font-size:16px; font-weight:850; }
.pass-handoff-head .time-badge { padding:10px 13px; border:1px solid transparent; font-size:18px; font-weight:950; }
.pass-handoff-head .time-badge.kitchen-ok { border-color:rgba(66,184,131,.52); background:rgba(66,184,131,.17); color:#b9f5d7; }
.pass-handoff-head .time-badge.kitchen-critical { border-color:rgba(239,106,106,.65); background:rgba(239,106,106,.20); color:#ffd0d0; }
.pass-ready-label { display:flex; align-items:center; gap:11px; margin:14px 18px 0; padding:11px 13px; border:1px solid rgba(66,184,131,.3); border-radius:12px; background:rgba(66,184,131,.07); }
.pass-ready-label > span { width:32px; height:32px; display:grid; place-items:center; flex:0 0 32px; border-radius:50%; background:rgba(66,184,131,.18); color:#b9f5d7; font-weight:950; }
.pass-ready-label strong,.pass-ready-label small { display:block; }
.pass-ready-label strong { color:#b9f5d7; font-size:15px; }
.pass-ready-label small { margin-top:2px; color:var(--muted); font-size:11px; }
.pass-handoff-items { display:grid; gap:9px; padding:14px 18px; }
.pass-handoff-item { min-height:66px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 12px; border:1px solid rgba(214,173,92,.34); border-radius:12px; background:rgba(214,173,92,.055); font-size:18px; }
.pass-handoff-item > span { min-width:0; }
.pass-handoff-item strong { color:var(--gold-light); font-size:20px; }
.pass-handoff-item small { display:block; margin-top:4px; color:var(--muted); font-size:12px; line-height:1.35; }
.pass-handoff-item small.pass-extra { color:#f6c992; font-weight:800; }
.pass-handoff-item > b { min-width:58px; padding:8px 10px; border-radius:10px; background:rgba(66,184,131,.18); color:#b9f5d7; text-align:center; font-size:22px; }
.pass-handoff-card .kitchen-packing-popup-button { width:calc(100% - 36px); margin:0 18px 12px; min-height:46px; }
.pass-complete-button { width:calc(100% - 36px); min-height:62px; margin:0 18px 18px; font-size:20px; font-weight:950; }
.pass-empty { grid-column:1/-1; }

.kitchen-finished-title { margin-top:26px; opacity:.9; }
.kitchen-finished-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; padding-bottom:18px; }
.kitchen-finished-card { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:70px; padding:12px 14px; border:1px solid rgba(66,184,131,.22); border-radius:12px; background:rgba(66,184,131,.035); opacity:.72; }
.kitchen-finished-card > div:first-child { flex:0 0 auto; }
.kitchen-finished-card > div > strong,.kitchen-finished-card > div > span { display:block; }
.kitchen-finished-card > div:first-child strong { font-size:20px; }
.kitchen-finished-card > div:first-child span { margin-top:3px; color:var(--muted); font-size:11px; }
.kitchen-finished-state { min-width:0; text-align:right; }
.kitchen-finished-state strong { color:#9be1c4; font-size:13px; }
.kitchen-finished-state span { margin-top:3px; color:var(--muted); font-size:10px; }

@media (max-width: 900px) {
  .pass-handoff-grid { grid-template-columns:1fr; }
  .kitchen-finished-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .order-edit-actions-grid { grid-template-columns:1fr; }
}

@media (max-width: 520px) {
  .ticket-head-right { align-items:flex-end; }
  .ticket-edit-button { max-width:132px; white-space:normal; line-height:1.1; }
  .order-edit-actions-backdrop { padding:0; }
  .order-edit-actions-modal { width:100vw; max-height:100dvh; border-radius:0; }
  .order-edit-actions-grid { padding:12px; }
  .order-edit-action { min-height:76px; }
  .order-edit-danger-zone { align-items:stretch; flex-direction:column; margin:0 12px 12px; }
  .pass-handoff-head { padding:14px; }
  .pass-order-number { font-size:27px; }
  .pass-handoff-head > div > span { font-size:14px; }
  .pass-handoff-head .time-badge { padding:8px 10px; font-size:16px; }
  .pass-ready-label { margin-inline:14px; }
  .pass-handoff-items { padding-inline:14px; }
  .pass-handoff-card .kitchen-packing-popup-button,.pass-complete-button { width:calc(100% - 28px); margin-inline:14px; }
  .kitchen-finished-grid { grid-template-columns:1fr; }
}

/* RC22.22 — stock status becomes the single operational restock screen. */
.stock-status-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px}
.stock-status-summary>div{padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}
.stock-status-summary span,.stock-status-summary small{display:block;color:var(--muted)}
.stock-status-summary strong{display:block;margin:4px 0 3px;font-size:28px;line-height:1;font-weight:950}
.stock-status-summary>div.danger{border-color:rgba(239,106,106,.38);background:rgba(239,106,106,.055)}
.stock-status-summary>div.danger strong{color:#ffaaaa}
.stock-status-summary>div.good{border-color:rgba(66,184,131,.35);background:rgba(66,184,131,.05)}
.stock-status-summary>div.good strong{color:#a9edca}
.stock-status-main-card{overflow:hidden}
.stock-status-toolbar{display:flex;align-items:center;gap:12px;margin:0 0 12px}
.stock-status-toolbar .search{flex:1;min-width:0}
.stock-status-toolbar span{color:var(--muted);font-size:12px;white-space:nowrap}
.stock-status-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px;scrollbar-gutter:stable}
.stock-status-table{width:100%;min-width:900px;border-collapse:separate;border-spacing:0;background:var(--panel)}
.stock-status-table th{position:sticky;top:0;z-index:2;padding:11px 12px;border-bottom:1px solid var(--line);background:var(--panel-2);color:var(--muted);font-size:11px;text-align:right;text-transform:uppercase;letter-spacing:.04em}
.stock-status-table th:first-child,.stock-status-table td:first-child{text-align:left}
.stock-status-table td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:right;vertical-align:middle}
.stock-status-table tbody tr:last-child td{border-bottom:0}
.stock-status-table tbody tr:hover td{background:rgba(214,173,92,.035)}
.stock-product-cell{min-width:220px}
.stock-product-cell strong,.stock-product-cell small,.stock-fact-cell b,.stock-fact-cell small{display:block}
.stock-product-cell small,.stock-fact-cell small{margin-top:3px;color:var(--muted);font-size:11px}
.stock-number.negative strong{display:inline-block;min-width:70px;padding:6px 9px;border-radius:8px;background:rgba(239,106,106,.13);color:#ffb1b1}
.stock-number.positive strong{display:inline-block;min-width:70px;padding:6px 9px;border-radius:8px;background:rgba(66,184,131,.13);color:#a9edca}
.stock-number.neutral strong{color:var(--muted)}
.stock-status-history-panel{margin-top:12px}
.stock-status-history-panel summary{cursor:pointer;font-weight:900}
.stock-status-history-table-wrap{overflow:auto;margin-top:12px;border:1px solid var(--line);border-radius:12px}
.stock-status-history-table{width:100%;min-width:650px;border-collapse:collapse}
.stock-status-history-table th,.stock-status-history-table td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left}
.stock-status-history-table th{color:var(--muted);font-size:11px;text-transform:uppercase}
.stock-rules-backdrop{padding:10px}
.stock-rules-modal{width:min(920px,calc(100vw - 20px));max-height:calc(100dvh - 20px);display:flex;flex-direction:column;overflow:hidden}
.stock-rules-tools{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px;align-items:end;padding:12px 18px;border-bottom:1px solid var(--line);background:var(--panel-2)}
.stock-rules-tools>div{display:grid;grid-template-columns:1fr 1fr;gap:10px;color:var(--muted);font-size:11px;font-weight:850;text-align:center;text-transform:uppercase}
.stock-rules-list{min-height:0;flex:1;overflow:auto;padding:0 18px;scrollbar-gutter:stable}
.stock-rules-row{display:grid;grid-template-columns:minmax(0,1fr) 145px 145px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.stock-rules-row>span{min-width:0}
.stock-rules-row strong,.stock-rules-row small{display:block}
.stock-rules-row small{margin-top:3px;color:var(--muted);font-size:11px}
.stock-rules-row input{width:100%;min-height:44px;text-align:right;font-weight:850}
.stock-rules-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid var(--line);background:var(--panel)}
@media(max-width:800px){
  .stock-status-summary{grid-template-columns:1fr}
  .stock-status-toolbar{display:grid}
  .stock-status-toolbar span{white-space:normal}
  .stock-rules-tools{grid-template-columns:1fr}
  .stock-rules-row{grid-template-columns:minmax(0,1fr) 105px 120px}
}

.existing-invent-notice{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0;padding:16px 18px}.existing-invent-notice>div{display:flex;flex-direction:column;gap:4px;min-width:0}.existing-invent-notice>div span{opacity:.9}.existing-invent-notice button{flex:0 0 auto}.adopt-invent-modal{max-width:720px}.adopt-invent-modal .notice{margin-top:12px}.adopt-invent-modal select{font-size:16px}.adopted-invent-success-backdrop .branch-created-summary{margin-top:8px}
@media(max-width:760px){.existing-invent-notice{align-items:stretch;flex-direction:column}.existing-invent-notice button{width:100%}}

/* ==========================================================================\n   RC22.28 — UNIFIED LOCAL CONTROL UI SYSTEM\n   One visual language for Owner / Keeper / KDS / Pass / operational modules.\n   This layer intentionally changes presentation only; workflow selectors and\n   data attributes remain untouched.\n   ========================================================================== */
:root{
  --ui-radius-xs:8px;
  --ui-radius-sm:11px;
  --ui-radius-md:15px;
  --ui-radius-lg:19px;
  --ui-control-h:44px;
  --ui-touch-h:50px;
  --ui-surface:#1b1a18;
  --ui-surface-raised:#24221f;
  --ui-surface-soft:#201e1b;
  --ui-input:#100f0e;
  --ui-line:#403b35;
  --ui-line-strong:#5b5247;
  --ui-shadow:0 14px 36px rgba(0,0,0,.18);
  --ui-shadow-modal:0 28px 80px rgba(0,0,0,.46);
}

html{scrollbar-color:#75664e #181715;scrollbar-width:thin}
body{font-size:15px;line-height:1.45;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
button,input,select,textarea{letter-spacing:normal}
button{transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .08s ease,box-shadow .14s ease}
button:not(:disabled):active{transform:translateY(1px)}
button:disabled{filter:saturate(.55)}

/* Typography hierarchy */
.page-title,.owner-dashboard-title,.inside-title{font-weight:900;letter-spacing:-.035em}
.section-head h2,.section-head h3,.group-title,.modal h3{letter-spacing:-.018em}
.eyebrow{font-size:11px;line-height:1.25;letter-spacing:.13em;color:var(--gold-light)}
.muted,.section-head p,.small-note{line-height:1.5}

/* Shared surfaces */
.card,
.ticket,
.owner-module-hub,
.owner-branch-card,
.branch-card,
.keeper-control-hero,
.keeper-control-grid > *,
.pass-handoff-card,
.stock-status-main-card,
.analytics-card{
  border-color:var(--ui-line);
  border-radius:var(--ui-radius-md);
  background:var(--ui-surface);
  box-shadow:none;
}
.card.padded{padding:18px}
.section-head{margin-bottom:14px}
.section-head h2{font-size:22px}
.section-head h3{font-size:18px}

/* Buttons: one geometry and meaning everywhere */
.primary,.secondary,.danger,.success,
.profile-switch,.menu-back-categories,.report-filter-chip,
.ticket-edit-button,.pass-complete-button,.kitchen-packing-popup-button{
  min-height:var(--ui-control-h);
  border-radius:var(--ui-radius-sm);
  font-weight:850;
}
.primary{border-color:var(--gold);background:var(--gold);color:#211b11;box-shadow:inset 0 1px 0 rgba(255,255,255,.2)}
.primary:not(:disabled):hover{background:#e0ba6a;border-color:#e0ba6a}
.secondary{border-color:var(--ui-line);background:var(--ui-surface-raised);color:var(--text)}
.secondary:not(:disabled):hover{border-color:rgba(214,173,92,.48);background:#2b2824}
.danger{background:rgba(239,106,106,.11);border-color:rgba(239,106,106,.48);color:#ffc1c1}
.danger:not(:disabled):hover{background:rgba(239,106,106,.17)}
.success{background:rgba(66,184,131,.12);border-color:rgba(66,184,131,.46);color:#a9edca}
.success:not(:disabled):hover{background:rgba(66,184,131,.18)}
.report-modal-close,.logout{border-radius:var(--ui-radius-sm)}

/* Inputs / forms */
.field input,.field select,.field textarea,
.modal input,.modal select,.modal textarea,
.search input,.search-wrap input,
input[type="text"],input[type="search"],input[type="number"],input[type="tel"],input[type="password"],
select,textarea{
  border-color:var(--ui-line);
  background:var(--ui-input);
  color:var(--text);
  border-radius:var(--ui-radius-sm);
}
.field input,.field select,input[type="text"],input[type="search"],input[type="number"],input[type="tel"],input[type="password"],select{min-height:var(--ui-control-h)}
.field label{font-size:12px;font-weight:800;color:var(--muted)}
::placeholder{color:#777168;opacity:1}

/* Tables */
.table-wrap,.stock-status-table-wrap,.stock-status-history-table-wrap{border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface);scrollbar-gutter:stable}
.table th,.stock-status-table th,.stock-status-history-table th{
  background:#181715;
  color:#b9b0a4;
  font-size:10px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.table th,.table td{padding:12px 10px}
.table tbody tr:last-child td{border-bottom:0}
.table tbody tr:hover td{background:rgba(214,173,92,.025)}

/* Notices / statuses */
.notice{border-radius:var(--ui-radius-sm);background:rgba(102,169,232,.065)}
.notice.good{background:rgba(66,184,131,.065)}
.notice.warning{background:rgba(245,159,67,.065)}
.time-badge,.timing-badge,.station-state,.status-pill,.count,.count-badge{border-radius:9px}

/* Modal language */
.modal-backdrop{background:rgba(5,5,5,.78);backdrop-filter:blur(5px)}
.modal{border-color:var(--ui-line-strong);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow-modal)}
.report-modal-header{background:#181715}
.modal-actions{gap:10px}
.modal-actions .primary,.modal-actions .secondary,.modal-actions .danger,.modal-actions .success{min-height:48px}

/* Owner pages: quieter, operational first */
.owner-top-quick,.top-actions,.owner-hub-actions,.branch-card-actions,.compact-actions{gap:8px}
.owner-module-hub,.owner-network-shell{background:var(--ui-surface)}
.owner-module-hub-grid > button,.owner-main-actions > button{border-radius:var(--ui-radius-md);box-shadow:none}
.owner-module-hub-grid > button:hover,.owner-main-actions > button:hover{transform:translateY(-1px)}
.branch-card-actions button{min-height:46px}
.existing-invent-notice{border-radius:var(--ui-radius-md)}

/* Keeper / queue: dense enough for service, still touch safe */
.operations-strip{margin-bottom:14px}
.operation-chip{min-height:52px;border-radius:var(--ui-radius-sm);background:#181715}
.menu-category-heading,.menu-back-categories{border-radius:var(--ui-radius-sm)}
.menu-item{border-radius:var(--ui-radius-sm)}
.ticket-grid{gap:12px}
.ticket{border-radius:var(--ui-radius-md)}
.ticket-head{padding-top:15px}
.ticket-actions button{min-height:46px}
.receipt-total,.admin-items,.ticket-note{border-radius:var(--ui-radius-sm)}

/* KDS / Pass: prepared work visually recedes; live work stays dominant */
.pass-handoff-card{border-radius:var(--ui-radius-md);background:linear-gradient(155deg,rgba(66,184,131,.055),var(--ui-surface) 44%)}
.pass-handoff-item{border-radius:var(--ui-radius-sm)}
.kitchen-finished-card{border-radius:var(--ui-radius-sm);opacity:.58;box-shadow:none}
.kitchen-finished-title{color:var(--muted)}

/* Stock status */
.stock-status-summary>div{border-radius:var(--ui-radius-md);background:var(--ui-surface-raised)}
.stock-rules-modal{border-radius:var(--ui-radius-lg)}
.stock-rules-row input{border-radius:var(--ui-radius-sm)}

/* Scrollbars kept visible on workstation/tablet where queues are long */
.table-wrap,.stock-status-table-wrap,.add-modal-cart-lines,.add-items-menu-grid,.nav-list,.modal,.report-modal-scroll{
  scrollbar-color:#75664e #181715;
  scrollbar-width:thin;
}

/* 12–14 inch tablets: preserve information hierarchy and avoid accidental taps. */
@media (max-width:1180px){
  .main{padding:16px}
  .topbar{margin-bottom:14px}
  .top-actions{gap:7px}
  .primary,.secondary,.danger,.success,.profile-switch{min-height:46px}
  .ticket-actions button,.pass-complete-button{min-height:52px}
}
@media (max-width:760px){
  .main{padding:12px}
  .page-title{font-size:28px}
  .card.padded{padding:14px}
  .section-head{align-items:flex-start}
  .top-actions{width:100%;overflow-x:auto;padding-bottom:3px}
  .modal-backdrop{padding:8px}
  .modal{max-height:calc(100dvh - 16px);border-radius:15px}
}

/* No accidental horizontal page drift; dedicated table/menu scrollers keep x-scroll. */
.main,.card,.modal,.ticket,.owner-module-hub,.branch-card{min-width:0}

/* RC22.30 — owner drill-down + physical branch MAIN/AUX clarity */
.owner-live-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
.owner-live-summary>:is(div,button){min-width:0;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2);display:flex;flex-direction:column;gap:4px;text-align:left;color:inherit;font:inherit}
.owner-live-summary>button{cursor:pointer}
.owner-live-summary>button:not(:disabled):hover{border-color:var(--gold);transform:translateY(-1px)}
.owner-live-summary>button:disabled{cursor:default;opacity:.7}
.owner-live-summary .flow-main strong{color:var(--green)}
.owner-live-summary .flow-aux strong{color:#8fc7ff}
.owner-live-summary-link small{font-size:10px;color:var(--muted)}
.owner-live-order{width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer;transition:border-color .15s ease,transform .15s ease,background .15s ease}
.owner-live-order:hover{border-color:var(--gold);background:rgba(214,173,92,.045);transform:translateY(-1px)}
.owner-attention-modal{width:min(720px,calc(100vw - 28px))}
.owner-attention-list{display:grid;gap:9px;padding:16px}
.owner-attention-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:100%;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:inherit;text-align:left;cursor:pointer}
.owner-attention-row:hover{border-color:var(--gold);background:rgba(214,173,92,.05)}
.owner-attention-row span{color:var(--red);font-weight:800}
.owner-focus-ticket{animation:owner-ticket-focus 2.3s ease}
@keyframes owner-ticket-focus{0%,100%{box-shadow:none}20%,70%{box-shadow:0 0 0 3px rgba(214,173,92,.4),0 0 28px rgba(214,173,92,.18);border-color:var(--gold)}}
.report-payment-card small{display:block;margin-top:5px;color:var(--muted);font-size:10px;line-height:1.35}
.report-flow-hint{margin:0 0 14px}
.report-calendar-day.is-open{box-shadow:inset 0 0 0 1px rgba(66,184,131,.34)}
.report-calendar-day.is-open em{color:var(--green)}
@media(max-width:900px){.owner-live-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-attention-row{grid-template-columns:1fr auto}.owner-attention-row span{grid-column:1/-1}}

/* RC22.30 — management MAIN/AUX turnover split */
.cabinet-turnover-kpis{grid-template-columns:repeat(3,minmax(0,1fr));}
.cabinet-turnover-kpis .flow-main{border-color:rgba(82,211,153,.35);}
.cabinet-turnover-kpis .flow-aux{border-color:rgba(96,165,250,.35);}
.cabinet-turnover-live>div:first-child{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.cabinet-turnover-live>div:first-child>span{font-weight:800;color:var(--muted);}
.cabinet-turnover-live>div:first-child>strong{font-size:clamp(26px,3vw,38px);}
.cabinet-flow-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;}
.cabinet-flow-split>span{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);}
@media(max-width:900px){.cabinet-turnover-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}.cabinet-flow-split{grid-template-columns:1fr;}}
@media(max-width:620px){.cabinet-turnover-kpis{grid-template-columns:1fr;}}
/* RC22.30 — workload calendar must remain a real 7-column calendar on desktop. */
@media(min-width:901px){
  .monthly-load-calendar{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;align-items:stretch!important;}
  .monthly-load-calendar>.monthly-load-day,.monthly-load-calendar>.monthly-load-empty{grid-column:auto!important;width:auto!important;min-width:0!important;}
}
.monthly-load-day.empty{cursor:pointer;}
.monthly-load-day.empty:hover{transform:translateY(-2px);border-color:var(--gold);opacity:.58;}


/* RC22.35 — per-device intermediate stock visibility. */
.device-settings-modal{width:min(900px,96vw);max-height:92vh;display:flex;flex-direction:column}
.device-stock-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 18px;border-bottom:1px solid var(--line)}
.device-stock-toolbar input{flex:1;min-width:240px}
.device-stock-toolbar>span{margin-left:auto;color:var(--muted)}
.device-stock-list{padding:8px 18px 16px;overflow:auto;min-height:180px;max-height:52vh}
.device-stock-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:center;padding:10px 4px;border-bottom:1px solid var(--line);cursor:pointer}
.device-stock-item input{width:20px;height:20px}
.device-stock-item strong,.device-stock-item small{display:block}.device-stock-item small{margin-top:3px;color:var(--muted)}

/* RC22.36 — branch-first owner UX + focused modules */
.owner-branch-head-clean,
.branch-settings-hero {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:18px;
  align-items:start;
  margin:0 0 18px;
  padding:20px;
  border:1px solid var(--border, #303640);
  border-radius:20px;
  background:linear-gradient(145deg, rgba(255,255,255,.025), rgba(255,255,255,.008));
}
.owner-branch-head-clean h2,
.branch-settings-hero h2 { margin:4px 0 6px; font-size:clamp(28px,3vw,42px); }
.owner-branch-head-clean p,
.branch-settings-hero p { margin:0; color:var(--muted, #aeb5c0); }
.branch-settings-button { align-self:center; white-space:nowrap; }

.branch-hub-section { margin:22px 0; }
.branch-hub-section > .section-head { margin-bottom:12px; }
.branch-hub-section .section-head h2 { margin:.15rem 0 .25rem; }
.branch-hub-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.branch-hub-grid-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.branch-hub-grid-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.branch-hub-card {
  min-height:138px;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  text-align:left;
  padding:18px;
  border-radius:18px;
  border:1px solid var(--border, #303640);
  background:var(--card, #15191f);
  color:inherit;
  cursor:pointer;
  transition:transform .14s ease,border-color .14s ease,background .14s ease;
}
.branch-hub-card:hover:not(:disabled) { transform:translateY(-2px); border-color:rgba(226,181,83,.55); background:rgba(226,181,83,.055); }
.branch-hub-card:disabled { opacity:.46; cursor:not-allowed; }
.branch-hub-card > b {
  width:46px; height:46px; display:grid; place-items:center;
  border-radius:14px; background:rgba(226,181,83,.12); color:#e2b553; font-size:20px;
}
.branch-hub-card span { display:grid; gap:7px; min-width:0; }
.branch-hub-card span strong { font-size:18px; }
.branch-hub-card span small { color:var(--muted,#aeb5c0); line-height:1.4; }
.branch-hub-card > em { font-style:normal; font-size:20px; color:#e2b553; }

.branch-settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:14px 0; }
.branch-settings-actions { display:flex; flex-wrap:wrap; gap:10px; }
.branch-settings-modules { margin:14px 0; }
.owner-focused-toolbar { margin-bottom:14px; }
.owner-simple-grid-four { grid-template-columns:repeat(4,minmax(0,1fr)); }

@media (max-width: 1180px) {
  .branch-hub-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .branch-hub-grid-three { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .owner-simple-grid-four { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .owner-branch-head-clean,
  .branch-settings-hero { grid-template-columns:1fr; }
  .branch-settings-button { justify-self:stretch; }
  .branch-hub-grid,
  .branch-hub-grid-three,
  .branch-hub-grid-two,
  .branch-settings-grid,
  .owner-simple-grid-four { grid-template-columns:1fr; }
  .branch-hub-card { min-height:112px; }
}

/* RC22.42 — centralized intermediate-stock setup by workplace. */
.intermediate-stock-settings-modal{width:min(1120px,97vw);max-height:94vh;display:flex;flex-direction:column;overflow:hidden}
.intermediate-scope-tools{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--line);background:var(--panel-2);flex-wrap:wrap}
.intermediate-copy-row{display:flex;gap:8px;align-items:center;min-width:min(520px,100%);flex:1}
.intermediate-copy-row select{min-width:260px;flex:1}
.intermediate-scope-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;padding:12px 18px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.015)}
.intermediate-scope-tab{min-height:68px;text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);color:var(--text)}
.intermediate-scope-tab strong,.intermediate-scope-tab small{display:block}.intermediate-scope-tab small{margin-top:4px;color:var(--muted)}
.intermediate-scope-tab.active{border-color:var(--gold);box-shadow:inset 0 0 0 1px rgba(225,181,87,.25);background:rgba(225,181,87,.08)}
.intermediate-scope-editor{min-height:0;display:flex;flex-direction:column;flex:1;overflow:hidden}
.intermediate-scope-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px 10px}
.intermediate-scope-heading h3{margin:0 0 4px}.intermediate-scope-heading p{margin:0;color:var(--muted)}
.scope-enabled-toggle{display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;white-space:nowrap}
.scope-enabled-toggle input{width:20px;height:20px}
.intermediate-scope-filter select{min-width:170px}
.intermediate-scope-list{max-height:none;flex:1;min-height:220px}
.intermediate-stock-settings-modal .notice.compact{margin:10px 18px}
@media(max-width:760px){.intermediate-stock-settings-modal{width:100vw;max-height:100dvh;border-radius:0}.intermediate-scope-tools,.intermediate-scope-heading{align-items:stretch;flex-direction:column}.intermediate-copy-row{min-width:0;width:100%;flex-wrap:wrap}.intermediate-copy-row select{min-width:0;width:100%}.intermediate-scope-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.scope-enabled-toggle{white-space:normal;width:100%}.intermediate-scope-filter{display:grid;grid-template-columns:1fr 1fr}.intermediate-scope-filter input,.intermediate-scope-filter select{grid-column:1/-1;min-width:0;width:100%}.intermediate-scope-filter>span{margin-left:0}}


/* RC22.44 — simplicity pass: branch command center, attention, wizard, answer-first analytics. */
.branch-head-tools{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.branch-hub-primary{margin-top:16px}
.branch-hub-card.primary-action{border-color:rgba(226,181,83,.42);background:linear-gradient(145deg,rgba(226,181,83,.09),var(--card,#15191f))}
.owner-branch-attention{margin:16px 0;padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--panel)}
.owner-branch-attention.all-good{display:flex;align-items:center;justify-content:space-between;gap:18px;border-color:rgba(66,184,131,.35);background:rgba(66,184,131,.045)}
.owner-branch-attention.all-good h2{margin:4px 0 5px}.owner-branch-attention.all-good p{margin:0;color:var(--muted)}.owner-branch-attention.all-good>span{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:rgba(66,184,131,.14);color:var(--green);font-size:28px;font-weight:900}
.owner-branch-attention-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.owner-branch-attention-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:11px;align-items:center;text-align:left;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2);color:inherit;cursor:pointer}
.owner-branch-attention-row i{width:8px;height:38px;border-radius:99px;background:var(--muted)}.owner-branch-attention-row span{display:grid;gap:4px}.owner-branch-attention-row small{color:var(--muted);line-height:1.35}.owner-branch-attention-row em{font-style:normal;color:var(--muted);font-size:18px}.owner-branch-attention-row.danger i{background:var(--red)}.owner-branch-attention-row.warning i{background:var(--orange)}.owner-branch-attention-row.info i{background:var(--blue)}.owner-branch-attention-row.good i{background:var(--green)}
.branch-hub-more,.analytics-details{margin:18px 0;border:1px solid var(--line);border-radius:18px;background:var(--panel);overflow:hidden}.branch-hub-more>summary,.analytics-details>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 19px}.branch-hub-more>summary::-webkit-details-marker,.analytics-details>summary::-webkit-details-marker{display:none}.branch-hub-more>summary span,.analytics-details>summary span{display:grid;gap:4px}.branch-hub-more>summary small,.analytics-details>summary small{color:var(--muted)}.branch-hub-more>summary em,.analytics-details>summary em{font-style:normal;color:var(--gold);font-weight:800}.branch-hub-more[open]>summary em,.analytics-details[open]>summary em{font-size:0}.branch-hub-more[open]>summary em:after,.analytics-details[open]>summary em:after{content:'Свернуть ↑';font-size:13px}.branch-hub-more-body,.analytics-details-body{padding:0 18px 18px;border-top:1px solid var(--line)}
.owner-program-search-modal{width:min(820px,96vw);max-height:88vh;display:flex;flex-direction:column;overflow:hidden}.owner-program-search-input{padding:14px 16px;border-bottom:1px solid var(--line)}.owner-program-search-input input{width:100%;min-height:52px;font-size:18px}.owner-program-search-results{display:grid;gap:8px;padding:12px 16px 18px;overflow:auto}.owner-program-search-row{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2);color:inherit;text-align:left;cursor:pointer}.owner-program-search-row:hover:not(:disabled){border-color:var(--gold);background:rgba(226,181,83,.05)}.owner-program-search-row:disabled{opacity:.45;cursor:not-allowed}.owner-program-search-row>b{min-width:42px;height:42px;padding:0 5px;border-radius:12px;display:grid;place-items:center;background:rgba(226,181,83,.10);color:var(--gold);font-size:14px;overflow:hidden}.owner-program-search-row span{display:grid;gap:3px}.owner-program-search-row small{color:var(--muted)}.owner-program-search-row em{font-style:normal;color:var(--gold);font-size:18px}
.shift-close-wizard-progress{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:9px;margin:14px 0 10px}.shift-close-wizard-progress>div{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}.shift-close-wizard-progress>div>b{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--panel);color:var(--gold)}.shift-close-wizard-progress span{display:grid;gap:2px}.shift-close-wizard-progress small{color:var(--muted)}.shift-close-wizard-progress .done{border-color:rgba(66,184,131,.35)}.shift-close-wizard-progress .done>b{color:var(--green);background:rgba(66,184,131,.12)}.shift-close-wizard-progress .blocked{border-color:rgba(239,106,106,.45)}.shift-close-wizard-progress .blocked>b{color:var(--red);background:rgba(239,106,106,.12)}.shift-close-wizard-progress>i{font-style:normal;color:var(--muted)}.shift-close-quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.analytics-answers{margin:14px 0 18px;padding:20px;border:1px solid rgba(226,181,83,.32);border-radius:20px;background:linear-gradient(145deg,rgba(226,181,83,.045),var(--panel))}.analytics-answer-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.analytics-answer-kpis article{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2);display:grid;gap:5px}.analytics-answer-kpis span,.analytics-answer-kpis small{color:var(--muted)}.analytics-answer-kpis strong{font-size:22px}.analytics-answer-alerts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px}.analytics-answer-alert{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2);color:inherit;text-align:left}.analytics-answer-alert i{width:8px;height:36px;border-radius:99px;background:var(--muted)}.analytics-answer-alert span{display:grid;gap:3px}.analytics-answer-alert small{color:var(--muted)}.analytics-answer-alert em{font-style:normal}.analytics-answer-alert.danger i{background:var(--red)}.analytics-answer-alert.warning i{background:var(--orange)}.analytics-answer-alert.good i{background:var(--green)}
@media(max-width:980px){.owner-branch-attention-list,.analytics-answer-alerts{grid-template-columns:1fr}.analytics-answer-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.shift-close-wizard-progress{grid-template-columns:1fr}.shift-close-wizard-progress>i{display:none}}
@media(max-width:760px){.branch-head-tools{justify-content:stretch}.branch-head-tools button{flex:1}.analytics-answer-kpis{grid-template-columns:1fr}}

/* RC22.44 — POS Light theme inspired by modern checkout terminals. */
html[data-admin-theme="pos"] {
  color-scheme: light;
  --bg:#edf2f6;
  --panel:#ffffff;
  --panel-2:#f7f9fb;
  --panel-3:#e8eef3;
  --line:#c5d0da;
  --gold:#2d6f9f;
  --gold-light:#245a82;
  --gold-line:#a9bfd2;
  --text:#263542;
  --muted:#6d7a86;
  --green:#2d8964;
  --orange:#cb7a27;
  --red:#c74c4c;
  --blue:#2d6f9f;
}
html[data-admin-theme="pos"] body,
html[data-admin-theme="pos"] .main { background:#edf2f6; }
html[data-admin-theme="pos"] .topbar {
  background:rgba(255,255,255,.94);
  border:1px solid #d1dae2;
  border-radius:12px;
  padding:8px 12px;
  box-shadow:0 2px 8px rgba(40,67,89,.08);
}
html[data-admin-theme="pos"] .page-title { color:#253746; }
html[data-admin-theme="pos"] .eyebrow { color:#54748f; }
html[data-admin-theme="pos"] .admin-pos-nav {
  background:#fff;
  border:1px solid #c9d4dd;
  border-radius:10px;
  box-shadow:0 3px 10px rgba(40,67,89,.07);
}
html[data-admin-theme="pos"] .admin-pos-nav .nav-button {
  border:1px solid #c9d4dd;
  background:#f7f9fb;
  color:#3b4d5d;
  border-radius:8px;
  box-shadow:none;
}
html[data-admin-theme="pos"] .admin-pos-nav .nav-button:hover { border-color:#7ea7c6; background:#eef5fa; }
html[data-admin-theme="pos"] .admin-pos-nav .nav-button.active {
  border-color:#2d6f9f;
  background:#2d6f9f;
  color:#fff;
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.08);
}
html[data-admin-theme="pos"] .operations-strip { gap:7px; }
html[data-admin-theme="pos"] .operation-chip {
  border:1px solid #c9d4dd;
  background:#fff;
  color:#40515f;
  box-shadow:0 1px 4px rgba(40,67,89,.05);
}
html[data-admin-theme="pos"] .operation-chip strong { background:#e9f1f7; color:#245a82; }
html[data-admin-theme="pos"] .card,
html[data-admin-theme="pos"] .cart,
html[data-admin-theme="pos"] .menu-panel,
html[data-admin-theme="pos"] .modal,
html[data-admin-theme="pos"] .menu-tools-sticky,
html[data-admin-theme="pos"] .ticket,
html[data-admin-theme="pos"] .analytics-details,
html[data-admin-theme="pos"] .branch-hub-more { background:#fff; border-color:#c9d4dd; box-shadow:0 2px 8px rgba(40,67,89,.06); }
html[data-admin-theme="pos"] .pos-workspace .menu-tools-sticky { background:rgba(237,242,246,.97); }
html[data-admin-theme="pos"] .pos-workspace .cart-head { background:linear-gradient(180deg,#eef6fb,#fff); }
html[data-admin-theme="pos"] .pos-workspace .tab {
  border-color:#b9c8d5;
  background:#f7f9fb;
  color:#3b4d5d;
  border-radius:8px;
}
html[data-admin-theme="pos"] .pos-workspace .tab.active { background:#2d6f9f; border-color:#2d6f9f; color:#fff; box-shadow:none; }
html[data-admin-theme="pos"] .menu-item {
  background:#f9fbfc;
  border-color:#c6d1da;
  border-radius:9px;
  box-shadow:none;
}
html[data-admin-theme="pos"] .menu-item:hover { border-color:#6797bc; background:#f2f7fb; transform:translateY(-1px); }
html[data-admin-theme="pos"] .menu-item.selected { border-color:#2d6f9f; box-shadow:inset 0 0 0 1px #2d6f9f; }
html[data-admin-theme="pos"] .menu-code,
html[data-admin-theme="pos"] .menu-price,
html[data-admin-theme="pos"] .total strong { color:#245a82; }
html[data-admin-theme="pos"] input,
html[data-admin-theme="pos"] select,
html[data-admin-theme="pos"] textarea,
html[data-admin-theme="pos"] .payment-picker select,
html[data-admin-theme="pos"] .pin-display,
html[data-admin-theme="pos"] .extra-scope-option,
html[data-admin-theme="pos"] .extra-writeoff-details,
html[data-admin-theme="pos"] .extra-stepper input {
  background:#fff;
  color:#263542;
  border-color:#bfcbd5;
}
html[data-admin-theme="pos"] input::placeholder,
html[data-admin-theme="pos"] textarea::placeholder { color:#8b98a3; }
html[data-admin-theme="pos"] .primary,
html[data-admin-theme="pos"] .submit-order { border-color:#2d6f9f; background:#2d6f9f; color:#fff; box-shadow:none; }
html[data-admin-theme="pos"] .primary:hover,
html[data-admin-theme="pos"] .submit-order:hover { background:#255f89; }
html[data-admin-theme="pos"] .secondary { border-color:#bfcbd5; background:#f8fafb; color:#344654; }
html[data-admin-theme="pos"] .secondary:hover { border-color:#7fa6c2; background:#edf5fa; }
html[data-admin-theme="pos"] .danger { border-color:#dfa4a4; background:#fff4f4; color:#a93c3c; }
html[data-admin-theme="pos"] .success { border-color:#9bcbb7; background:#f1fbf6; color:#287657; }
html[data-admin-theme="pos"] .clock,
html[data-admin-theme="pos"] .shift-pill,
html[data-admin-theme="pos"] .profile-switch,
html[data-admin-theme="pos"] .admin-language-control,
html[data-admin-theme="pos"] .admin-theme-control { background:#fff; border-color:#c4d0da; color:#344654; }
html[data-admin-theme="pos"] .profile-switch { color:#245a82; }
html[data-admin-theme="pos"] .cart-review-footer { background:#f5f8fa; }
html[data-admin-theme="pos"] .payment-picker { background:#f8fafb; }
html[data-admin-theme="pos"] .ticket-head,
html[data-admin-theme="pos"] .ticket-actions,
html[data-admin-theme="pos"] .payment-picker,
html[data-admin-theme="pos"] .total { border-color:#d5dde4; }
html[data-admin-theme="pos"] .time-badge { background:#edf2f6; color:#627483; }
html[data-admin-theme="pos"] .receipt-total { border-color:#9dbad0; background:#eef6fb; }
html[data-admin-theme="pos"] .floating-cart-button { border-color:#2d6f9f; background:linear-gradient(145deg,#3d83b5,#286a99); color:#fff; box-shadow:0 10px 26px rgba(45,111,159,.24); }
html[data-admin-theme="pos"] .floating-cart-button.is-empty { border-color:#bfcbd5; background:#fff; color:#3b4d5d; }
html[data-admin-theme="pos"] .floating-cart-button.is-empty .floating-cart-icon { background:#eef3f7; }
html[data-admin-theme="pos"] .floating-cart-icon b { border-color:#2d6f9f; background:#fff; color:#245a82; }
html[data-admin-theme="pos"] table { background:#fff; }
html[data-admin-theme="pos"] th { background:#eaf0f4; color:#425565; border-color:#c9d4dd; }
html[data-admin-theme="pos"] td { border-color:#d7dfe6; }
html[data-admin-theme="pos"] tr:hover td { background:#f5f9fc; }
html[data-admin-theme="pos"] .notice { background:#f7f9fb; border-color:#c9d4dd; }
html[data-admin-theme="pos"] .notice.warning { background:#fff8ed; border-color:#e1bf87; color:#7e581d; }
html[data-admin-theme="pos"] .notice.good { background:#f0faf5; border-color:#a2ccb9; color:#2d7157; }
html[data-admin-theme="pos"] .today-preorder-alert { background:#fff7e9; border-color:#d9b26e; color:#62491f; }
html[data-admin-theme="pos"] .kitchen-ticket { background:#fff; }
html[data-admin-theme="pos"] .kitchen-ticket .ticket-note { background:#fff6e9; color:#80551f; }
html[data-admin-theme="pos"] .pass-handoff-card { background:#fff; border-color:#c9d4dd; }
html[data-admin-theme="pos"] .station-state { background:#f7f9fb; }
html[data-admin-theme="pos"] .admin-items { background:#eef6fb; border-color:#9dbad0; }
html[data-admin-theme="pos"] .admin-items-title { color:#245a82; }
html[data-admin-theme="pos"] button:focus-visible,
html[data-admin-theme="pos"] input:focus-visible,
html[data-admin-theme="pos"] select:focus-visible,
html[data-admin-theme="pos"] textarea:focus-visible { outline-color:rgba(45,111,159,.32); }

/* RC22.44 — final visual unification. */
:root { --ui-control-radius:11px; --ui-card-radius:16px; }
.card,.ticket,.notice,.branch-hub-card,.owner-branch-attention,.analytics-details,.branch-hub-more { border-radius:var(--ui-card-radius); }
button,input,select,textarea { border-radius:var(--ui-control-radius); }
.primary,.secondary,.danger,.success,.profile-switch,.clock,.shift-pill { border-radius:var(--ui-control-radius); }
.section-head h2,.section-head h3 { letter-spacing:-.025em; }
.section-head p { line-height:1.5; }

/* RC22.44 — POS Light is also available in the owner cabinet. */
html[data-admin-theme="pos"] .app-layout.role-owner {
  --owner-bg:#edf2f6;
  --owner-panel:#ffffff;
  --owner-panel-2:#f7f9fb;
  --owner-line:#c8d3dc;
  --owner-gold:#2d6f9f;
  background:linear-gradient(180deg,#edf2f6,#e8eef3);
}
html[data-admin-theme="pos"] .role-owner>.main { background:transparent; }
html[data-admin-theme="pos"] .role-owner>.sidebar {
  border-right-color:#c5d0da;
  background:#ffffff;
  box-shadow:8px 0 24px rgba(40,67,89,.08);
}
html[data-admin-theme="pos"] .role-owner>.sidebar .brand-mark { border-color:#2d6f9f;background:#edf5fa;color:#245a82; }
html[data-admin-theme="pos"] .role-owner>.sidebar .branch-chip { border-color:#bfd0dd;background:#f4f8fb; }
html[data-admin-theme="pos"] .role-owner>.sidebar .nav-section { color:#82909d; }
html[data-admin-theme="pos"] .role-owner>.sidebar .nav-button { color:#5d6c78; }
html[data-admin-theme="pos"] .role-owner>.sidebar .nav-button:hover { border-color:#a8bdce;background:#f2f7fa;color:#274a65; }
html[data-admin-theme="pos"] .role-owner>.sidebar .nav-button.active { border-color:#7fa7c4;background:#eaf4fa;color:#245a82;box-shadow:inset 3px 0 0 #2d6f9f; }
html[data-admin-theme="pos"] .role-owner>.main>.topbar { border-color:#cbd6df; }
html[data-admin-theme="pos"] .role-owner>.main .card { border-color:#cbd6df;background:#fff;box-shadow:0 3px 12px rgba(40,67,89,.07); }
html[data-admin-theme="pos"] .owner-module-hub,
html[data-admin-theme="pos"] .invent-owner-hero {
  border-color:#b9cbd9;
  background:linear-gradient(145deg,#ffffff,#f3f7fa);
  box-shadow:0 4px 16px rgba(40,67,89,.08);
}
html[data-admin-theme="pos"] .owner-module-hub-grid>button,
html[data-admin-theme="pos"] .invent-owner-module-card {
  border-color:#c6d2dc;
  background:#f8fafb;
  color:#263542;
  box-shadow:none;
}
html[data-admin-theme="pos"] .owner-module-hub-grid>button:hover,
html[data-admin-theme="pos"] .invent-owner-module-card:hover { border-color:#76a0bf;background:#f0f6fa; }
html[data-admin-theme="pos"] .owner-module-hub-grid>button>b,
html[data-admin-theme="pos"] .invent-owner-module-icon,
html[data-admin-theme="pos"] .invent-owner-empty>span { background:#eaf4fa;color:#245a82;border-color:#a9c0d2; }
html[data-admin-theme="pos"] .owner-module-hub-grid small,
html[data-admin-theme="pos"] .invent-owner-module-card small,
html[data-admin-theme="pos"] .invent-owner-hero p { color:#6d7a86; }
html[data-admin-theme="pos"] .invent-owner-hero-actions label span { color:#667784; }
html[data-admin-theme="pos"] .invent-owner-hero-actions select { border-color:#bfcbd5;background:#fff;color:#263542; }
html[data-admin-theme="pos"] .invent-owner-module-nav { border-color:#c8d3dc;background:#f5f8fa; }
html[data-admin-theme="pos"] .invent-owner-module-nav button { border-color:#c4d0d9;background:#fff;color:#536574; }
html[data-admin-theme="pos"] .invent-owner-module-nav button:first-child,
html[data-admin-theme="pos"] .invent-owner-module-nav button.active { border-color:#2d6f9f;background:#eaf4fa;color:#245a82; }
html[data-admin-theme="pos"] .invent-owner-footer { border-color:#c8d3dc;background:#f7f9fb;color:#687783; }
html[data-admin-theme="pos"] .branch-hub-card.primary-action,
html[data-admin-theme="pos"] .analytics-answers { border-color:#a9c3d6;background:linear-gradient(145deg,#f2f8fc,#fff); }
html[data-admin-theme="pos"] .owner-branch-attention { background:#fff;border-color:#c8d3dc; }
html[data-admin-theme="pos"] .owner-branch-attention-row,
html[data-admin-theme="pos"] .analytics-answer-kpis article,
html[data-admin-theme="pos"] .analytics-answer-alert,
html[data-admin-theme="pos"] .owner-program-search-row { background:#f8fafb;border-color:#ccd6de; }
html[data-admin-theme="pos"] .owner-home-button {
  border-color:#7fa7c4!important;
  color:#245a82!important;
  background:#eaf4fa!important;
}

/* RC22.45 — kitchen full-screen workspace and dynamic attention queue */
.app-layout.role-kitchen,
.app-layout.role-kitchen.kitchen-no-sidebar {
  grid-template-columns: minmax(0,1fr) !important;
  width: 100%;
}
.app-layout.role-kitchen > .main { min-width:0; width:100%; }

.kitchen-attention-group {
  margin: 0 0 14px;
  padding: 10px;
  border: 2px solid rgba(245,159,67,.72);
  border-radius: 16px;
  background: linear-gradient(180deg,rgba(245,159,67,.10),rgba(245,159,67,.025));
}
.kitchen-attention-group > .group-title { margin-top:0; }
.kitchen-attention-ribbon {
  margin: -2px -2px 0;
  padding: 7px 12px;
  border-radius: 12px 12px 0 0;
  font-size: 14px;
  line-height:1;
  font-weight: 950;
  letter-spacing: .08em;
  text-align:center;
}
.kitchen-ticket.attention-soon { border-color: rgba(229,184,81,.82); box-shadow:0 0 0 1px rgba(229,184,81,.15) inset; }
.kitchen-ticket.attention-soon .kitchen-attention-ribbon { background:rgba(229,184,81,.20); color:#ffe7a5; }
.kitchen-ticket.attention-urgent { border-color: rgba(245,159,67,.95); box-shadow:0 0 0 2px rgba(245,159,67,.13) inset,0 12px 28px rgba(245,159,67,.08); }
.kitchen-ticket.attention-urgent .kitchen-attention-ribbon { background:rgba(245,159,67,.26); color:#ffd19c; }
.kitchen-ticket.attention-overdue { border-color: rgba(239,106,106,.98); box-shadow:0 0 0 2px rgba(239,106,106,.15) inset,0 12px 30px rgba(239,106,106,.12); }
.kitchen-ticket.attention-overdue .kitchen-attention-ribbon { background:rgba(239,106,106,.30); color:#ffd0d0; }
.kitchen-ticket .time-badge.kitchen-soon { background:rgba(229,184,81,.18); border-color:rgba(229,184,81,.60); color:#ffe7a5; }
.kitchen-ticket .time-badge.kitchen-overdue { background:rgba(239,106,106,.32); border-color:rgba(239,106,106,.90); color:#fff1f1; box-shadow:0 0 18px rgba(239,106,106,.18); }
.menu-category-toolbar { display:flex; align-items:center; gap:10px; }
.menu-category-toolbar > [data-menu-category-navigation] { flex:1; min-width:0; }
.quick-packaging-sale { min-height:48px; flex:0 0 auto; font-weight:900; white-space:nowrap; }
@media (max-width:900px) {
  .menu-category-toolbar { align-items:stretch; flex-direction:column; }
  .quick-packaging-sale { width:100%; }
}
html[data-admin-theme="pos"] .kitchen-attention-group { background:linear-gradient(180deg,rgba(241,161,57,.12),rgba(255,255,255,.92)); }
html[data-admin-theme="pos"] .kitchen-ticket.attention-soon .kitchen-attention-ribbon { color:#7b5b11; }
html[data-admin-theme="pos"] .kitchen-ticket.attention-urgent .kitchen-attention-ribbon { color:#8a4d00; }
html[data-admin-theme="pos"] .kitchen-ticket.attention-overdue .kitchen-attention-ribbon { color:#8d1f1f; }

/* RC22.46 — tablet UX, natural menu order, priority visibility, keyboard and per-device scale */
.modal-backdrop { z-index: 5000; }

.ui-scale-control { display:flex; align-items:center; gap:3px; padding:3px; border:1px solid var(--line); border-radius:10px; background:var(--panel-2); }
.ui-scale-control button { min-width:32px; min-height:30px; padding:3px 7px; border:1px solid transparent; border-radius:7px; background:transparent; color:var(--muted); font-size:12px; font-weight:950; }
.ui-scale-control button.active { border-color:var(--gold); background:rgba(214,173,92,.16); color:var(--text); }
html[data-admin-theme="pos"] .ui-scale-control { background:#f3f6f8; border-color:#c8d3dc; }
html[data-admin-theme="pos"] .ui-scale-control button.active { background:#dcecf7; border-color:#6c9ec2; color:#174f77; }

html[data-ui-font="small"] body { font-size:13px; }
html[data-ui-font="small"] .page-title { font-size:clamp(20px,2vw,28px); }
html[data-ui-font="small"] .menu-item { min-height:104px; padding:10px; }
html[data-ui-font="small"] .menu-code { font-size:18px; }
html[data-ui-font="small"] .menu-name { font-size:14px; }
html[data-ui-font="small"] .kitchen-ticket { font-size:13px; }
html[data-ui-font="small"] .kitchen-ticket h3 { font-size:18px; }
html[data-ui-font="xlarge"] body { font-size:19px; }
html[data-ui-font="xlarge"] button, html[data-ui-font="xlarge"] input, html[data-ui-font="xlarge"] select, html[data-ui-font="xlarge"] textarea { font-size:1em; }
html[data-ui-font="xlarge"] .kitchen-ticket h3 { font-size:27px; }
html[data-ui-density="dense"] .card.padded { padding:10px; }
html[data-ui-density="dense"] .topbar { padding-block:6px; }
html[data-ui-density="dense"] .nav-button { min-height:36px; }
html[data-ui-density="dense"] .ticket, html[data-ui-density="dense"] .kitchen-ticket { padding:9px; }
html[data-ui-density="dense"] .ticket-grid { gap:7px; }
html[data-ui-density="dense"] .menu-grid { gap:6px; }
html[data-ui-density="dense"] .menu-item { min-height:96px; padding:8px 10px; }

/* Priority is the first working block and remains visible while it exists. */
.role-kitchen .kitchen-work-head { margin-bottom:7px; }
.role-kitchen .kitchen-attention-group { position:relative; z-index:12; margin-top:0; }
@media (min-height:620px) {
  .role-kitchen .kitchen-attention-group { position:sticky; top:6px; backdrop-filter:blur(10px); }
}
.role-kitchen .kitchen-attention-group .kitchen-ticket-grid { max-height:min(46dvh,430px); overflow-x:auto; overflow-y:hidden; }

/* Real QWERTY rows for Wolt/Bolt order codes. */
.checkout-keypad.checkout-keypad-letters { display:grid; grid-template-columns:1fr; gap:7px; }
.checkout-keyboard-row { display:flex; justify-content:center; gap:6px; min-width:0; }
.checkout-keyboard-row button { flex:1 1 0; min-width:0; max-width:72px; }
.checkout-keyboard-command-row button { max-width:150px; }

/* Own touch keyboard: opens only after an explicit tap on a field. */
.screen-keyboard-backdrop { position:fixed; inset:0; z-index:9000; display:flex; align-items:flex-end; justify-content:center; background:rgba(0,0,0,.20); }
.screen-keyboard-panel { width:min(980px,100%); padding:10px 10px calc(10px + env(safe-area-inset-bottom)); border:1px solid var(--line); border-radius:18px 18px 0 0; background:var(--panel); box-shadow:0 -18px 48px rgba(0,0,0,.38); }
.screen-keyboard-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:7px; }
.screen-keyboard-head strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--text); }
.screen-keyboard-head button { min-height:38px; padding:6px 16px; }
.screen-keyboard-modes { display:flex; justify-content:center; gap:5px; margin-bottom:6px; }
.screen-keyboard-modes button { min-height:34px; min-width:54px; padding:5px 10px; }
.screen-keyboard-modes button.active { border-color:var(--gold); color:var(--gold-light); }
.screen-keyboard-rows { display:grid; gap:5px; }
.screen-keyboard-row { display:flex; justify-content:center; gap:5px; }
.screen-keyboard-row button { flex:1 1 0; min-width:0; min-height:48px; padding:5px; font-size:18px; font-weight:900; }
.screen-keyboard-row .command { background:var(--panel-2); }
.screen-keyboard-bottom { margin-top:6px; }
.screen-keyboard-bottom button:first-child { flex:5 1 0; max-width:none; }
.screen-keyboard-target { outline:2px solid var(--gold)!important; outline-offset:2px; }
html[data-admin-theme="pos"] .screen-keyboard-panel { background:#f8fafb; border-color:#aebfcb; }
html[data-admin-theme="pos"] .screen-keyboard-row button, html[data-admin-theme="pos"] .screen-keyboard-modes button { background:#fff; border-color:#b8c7d2; color:#163e5c; }
html[data-admin-theme="pos"] .screen-keyboard-modes button.active { background:#dcecf7; border-color:#5d91b8; }

.wok-station-quick { display:grid; gap:5px; margin:10px 0; padding:11px; border:1px solid var(--line); border-radius:12px; background:var(--panel-2); }
.wok-station-quick label { font-weight:950; color:var(--gold-light); }
.wok-station-quick select { min-height:46px; font-weight:900; }
.wok-station-quick small { color:var(--muted); }

/* Portrait tablet: content and dialogs must remain tappable above the fixed POS bar. */
@media (orientation:portrait) and (max-width:1000px) {
  .app-layout.role-admin { padding-bottom:94px; }
  .app-layout.role-admin > .main { width:100%; min-width:0; padding:8px 8px 92px; }
  .role-admin .topbar { align-items:flex-start; gap:5px; }
  .role-admin .top-actions { flex-wrap:wrap; justify-content:flex-end; }
  .role-admin .order-workspace.pos-workspace { display:flex!important; flex-direction:column!important; grid-template-columns:1fr!important; }
  .role-admin .pos-workspace > .menu-panel { order:1; min-width:0; }
  .role-admin .pos-workspace > .cart { order:2; width:100%; min-width:0; }
  .role-admin .pos-workspace .menu-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .role-admin .pos-workspace .menu-item { min-height:112px; }
  .admin-pos-nav { z-index:800; }
  .modal-backdrop { z-index:5000; padding:8px 8px calc(88px + env(safe-area-inset-bottom)); align-items:center; overflow:auto; }
  .modal-backdrop > .modal { max-height:calc(100dvh - 108px); width:min(100%,760px); overflow:auto; }
  .cart-review-modal, .order-checkout-modal { max-height:calc(100dvh - 108px)!important; }
  .screen-keyboard-backdrop { z-index:9000; }
  .screen-keyboard-row button { min-height:44px; font-size:16px; }
  .ui-scale-control { order:10; }
}

@media (orientation:landscape) and (max-height:700px) {
  .role-admin .topbar, .role-kitchen .topbar { padding-block:4px; }
  .role-admin .page-title, .role-kitchen .page-title { font-size:22px; }
  .role-kitchen .kitchen-work-head p { display:none; }
  .role-kitchen .kitchen-attention-group .kitchen-ticket-grid { max-height:55dvh; }
  .screen-keyboard-panel { max-height:72dvh; overflow:auto; }
}
html[data-ui-font="small"] .kitchen-ticket-grid .kitchen-ticket,
html[data-ui-density="dense"] .kitchen-ticket-grid .kitchen-ticket { flex:0 0 clamp(285px,35vw,390px); }
html[data-ui-font="xlarge"] .kitchen-ticket-grid .kitchen-ticket { flex:0 0 clamp(430px,48vw,600px); }

/* RC22.49 — portrait admin VIP, compact EN+123 keyboard, explicit preorder flow */
.cart-order-flags {
  display:flex;
  flex:0 1 auto;
  align-items:stretch;
  justify-content:flex-end;
  gap:8px;
  min-width:0;
  max-width:68%;
}
.cart-order-flags .vip-toggle,
.cart-order-flags .preorder-toggle {
  flex:1 1 150px;
  min-width:132px;
  max-width:220px;
}
.preorder-toggle {
  min-height:52px;
  padding:7px 11px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:2px;
  text-align:left;
}
.preorder-toggle b { font-size:14px; font-weight:950; letter-spacing:.025em; }
.preorder-toggle small { color:var(--muted); font-size:10px; font-weight:800; line-height:1.2; }
.preorder-toggle.active small { color:rgba(36,26,8,.76); }

.checkout-order-kind-strip {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
  padding:11px 13px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel-2);
}
.checkout-order-kind-strip > div { min-width:0; display:grid; gap:3px; }
.checkout-order-kind-strip span { color:var(--muted); font-size:11px; font-weight:950; letter-spacing:.08em; }
.checkout-order-kind-strip strong { font-size:16px; }
.checkout-order-kind-strip.preorder { border-color:rgba(214,173,92,.62); background:rgba(214,173,92,.10); }
.checkout-order-kind-strip.preorder span { color:var(--gold-light); }
.checkout-order-kind-strip button { flex:0 0 auto; min-height:42px; }

/* Wolt/Bolt order number: digits + English QWERTY on one compact board. */
.checkout-order-keyboard {
  display:grid;
  gap:6px;
  justify-items:center;
  width:min(620px,100%);
  margin:0 auto;
  padding:8px 0 0;
}
.checkout-order-keyboard .checkout-keyboard-row {
  width:100%;
  display:flex;
  justify-content:center;
  gap:5px;
}
.checkout-order-keyboard .checkout-keyboard-row button {
  flex:0 0 clamp(34px,6.5vw,52px);
  width:clamp(34px,6.5vw,52px);
  min-width:0;
  min-height:44px;
  padding:5px 3px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel-2);
  color:var(--text);
  font-size:16px;
  font-weight:950;
}
.checkout-order-keyboard .checkout-keyboard-command-row button {
  flex:0 1 150px;
  width:auto;
  min-width:105px;
  max-width:150px;
}

/* Generic touch keyboard: intentionally compact; no RU/LV modes, only EN + digits. */
.screen-keyboard-backdrop {
  padding:8px;
  align-items:flex-end;
}
.screen-keyboard-panel {
  width:min(720px,calc(100vw - 16px));
  margin:0 auto;
  padding:10px 12px calc(12px + env(safe-area-inset-bottom));
  border-radius:16px;
}
.screen-keyboard-panel.screen-keyboard-numeric { width:min(350px,calc(100vw - 16px)); }
.screen-keyboard-head { margin-bottom:6px; }
.screen-keyboard-head strong { font-size:12px; color:var(--muted); }
.screen-keyboard-value {
  min-height:46px;
  margin-bottom:8px;
  padding:8px 12px;
  overflow:hidden;
  border:2px solid var(--gold);
  border-radius:11px;
  background:var(--panel-2);
  color:var(--text);
  font-size:clamp(20px,3.4vw,28px);
  font-weight:950;
  line-height:1.2;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.screen-keyboard-rows { gap:5px; }
.screen-keyboard-row { gap:5px; }
.screen-keyboard-row button {
  flex:0 0 clamp(30px,7.4vw,54px);
  width:clamp(30px,7.4vw,54px);
  min-width:0;
  min-height:44px;
  padding:5px 2px;
  font-size:16px;
}
.screen-keyboard-bottom { margin-top:6px; }
.screen-keyboard-bottom button:first-child {
  flex:0 1 280px;
  width:min(280px,70%);
  max-width:280px;
}
.screen-keyboard-bottom button:last-child {
  flex:0 0 84px;
  width:84px;
  max-width:84px;
}
.screen-keyboard-bottom.compact button:first-child {
  flex:0 0 92px;
  width:92px;
  max-width:92px;
}
html[data-admin-theme="pos"] .screen-keyboard-value { background:#fff; border-color:#5d91b8; color:#163e5c; }

@media (orientation:portrait) and (max-width:1000px) {
  /* Cart and its VIP/preorder controls must be reachable before the long menu. */
  .role-admin .pos-workspace > .cart { order:1; }
  .role-admin .pos-workspace > .menu-panel { order:2; }
  .role-admin .cart-stage-one .cart-head { gap:8px; }
  .role-admin .cart-order-flags { width:100%; max-width:none; flex:1 1 100%; justify-content:stretch; }
  .role-admin .cart-order-flags .vip-toggle,
  .role-admin .cart-order-flags .preorder-toggle { flex:1 1 0; max-width:none; min-width:0; }
  .role-admin .cart-stage-one .cart-items { max-height:30dvh; }
  .screen-keyboard-panel { width:min(700px,calc(100vw - 12px)); }
  .screen-keyboard-row button { flex-basis:clamp(28px,8.2vw,50px); width:clamp(28px,8.2vw,50px); }
  .checkout-order-kind-strip { align-items:stretch; flex-direction:column; }
  .checkout-order-kind-strip button { width:100%; }
}

@media (max-width:560px) {
  .cart-order-flags { max-width:none; width:100%; flex-wrap:wrap; }
  .cart-order-flags .vip-toggle,
  .cart-order-flags .preorder-toggle { flex:1 1 100%; max-width:none; }
  .screen-keyboard-panel { padding-inline:6px; }
  .screen-keyboard-row { gap:3px; }
  .screen-keyboard-row button { flex-basis:clamp(27px,8.4vw,44px); width:clamp(27px,8.4vw,44px); min-height:42px; font-size:14px; }
  .checkout-order-keyboard .checkout-keyboard-row { gap:3px; }
  .checkout-order-keyboard .checkout-keyboard-row button { flex-basis:clamp(29px,8vw,44px); width:clamp(29px,8vw,44px); min-height:42px; font-size:14px; }
}

/* RC22.50 — tablet Keeper cleanup: bottom navigation, visible VIP, stable scrolling. */
html[data-ui-font="tiny"] body { font-size:11px; }
html[data-ui-font="tiny"] button,
html[data-ui-font="tiny"] input,
html[data-ui-font="tiny"] select,
html[data-ui-font="tiny"] textarea { font-size:.92em; }
html[data-ui-font="tiny"] .page-title { font-size:clamp(17px,1.8vw,23px); }
html[data-ui-font="tiny"] .menu-item { min-height:80px!important; padding:7px 8px!important; }
html[data-ui-font="tiny"] .menu-code { font-size:15px!important; }
html[data-ui-font="tiny"] .menu-name { font-size:11px!important; line-height:1.18; }
html[data-ui-font="tiny"] .menu-price { font-size:12px!important; }
html[data-ui-font="tiny"] .station-mini { font-size:8px!important; }
html[data-ui-font="tiny"] .kitchen-ticket { font-size:11px; padding:7px; }
html[data-ui-font="tiny"] .kitchen-ticket h3 { font-size:15px; }
html[data-ui-font="tiny"] .admin-pos-nav .nav-label { font-size:9px!important; }
html[data-ui-font="tiny"] .admin-pos-nav .nav-icon { font-size:15px!important; }

/* The administrator's main POS navigation lives at the bottom in every orientation. */
.role-admin .admin-pos-nav {
  position:fixed!important;
  z-index:820!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:4px!important;
  margin:0!important;
  padding:5px 8px calc(5px + env(safe-area-inset-bottom))!important;
  border-width:1px 0 0!important;
  border-radius:0!important;
  background:rgba(20,19,17,.985)!important;
  box-shadow:0 -9px 24px rgba(0,0,0,.30)!important;
}
.role-admin .admin-pos-nav .nav-button { min-height:50px!important; padding:3px 5px!important; }
.role-admin > .main,
.app-layout.role-admin > .main { padding-bottom:calc(76px + env(safe-area-inset-bottom))!important; }
html[data-admin-theme="pos"] .role-admin .admin-pos-nav { background:rgba(246,249,251,.99)!important; border-top-color:#b8c7d2!important; }
html[data-admin-theme="light"] .role-admin .admin-pos-nav { background:rgba(255,255,255,.99)!important; }

/* Work screens stay clean: explanations/forecast are available only from the ⋯ menu. */
.role-admin .context-help,
.role-kitchen .context-help { display:none!important; }
.keeper-more-button { min-width:42px; min-height:38px; padding:4px 11px; font-size:24px; font-weight:950; line-height:1; }
.keeper-more-modal { width:min(860px,calc(100vw - 20px)); max-height:calc(100dvh - 24px); display:flex; flex-direction:column; overflow:hidden; }
.keeper-more-scroll { min-height:0; overflow-y:auto; padding:4px 2px 8px; }
.keeper-more-modal .admin-peak-forecast { margin:4px 0 12px; }

/* PREORDER is an order mode before checkout, not a cart flag. */
.order-mode-toolbar { display:flex; justify-content:flex-start; margin:0 0 8px; }
.order-mode-toolbar .order-mode-preorder { width:min(300px,100%); }
.cart-vip-bar { flex:0 0 auto; padding:8px 12px 4px; }
.cart-vip-bar .vip-toggle { width:100%; max-width:none!important; min-height:52px; }

/* Priority tickets must never create a nested scroll trap. */
.role-kitchen .kitchen-attention-group {
  position:static!important;
  top:auto!important;
  z-index:auto!important;
  backdrop-filter:none!important;
}
.role-kitchen .kitchen-attention-group .kitchen-ticket-grid {
  max-height:none!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  touch-action:pan-x pan-y!important;
  overscroll-behavior:auto!important;
}
.role-kitchen .kitchen-board,
.role-kitchen .kitchen-workspace,
.role-kitchen .main { touch-action:pan-x pan-y; }

/* Landscape tablet: toolbar owns its row, menu cards scroll below it instead of under it. */
@media (orientation:landscape) and (min-width:700px) and (max-height:900px) {
  .role-admin .order-workspace.pos-stage-one { min-height:0!important; }
  .role-admin .pos-stage-one > .menu-panel {
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .role-admin .pos-stage-one .menu-tools-sticky {
    position:relative!important;
    top:auto!important;
    flex:0 0 auto!important;
    margin:0 0 6px!important;
    z-index:2!important;
  }
  .role-admin .pos-stage-one .menu-grid {
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
    padding-top:2px;
  }
}

/* Portrait tablet: keep the real basket visible so VIP 1+1 can always be tapped. */
@media (orientation:portrait) and (max-width:1366px) {
  .role-admin .order-workspace.pos-stage-one {
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    height:auto!important;
    overflow:visible!important;
  }
  .role-admin .pos-stage-one > .cart-stage-one {
    display:flex!important;
    order:1!important;
    position:relative!important;
    top:auto!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .role-admin .cart-stage-one .cart-items { max-height:30dvh!important; overflow-y:auto!important; }
  .role-admin .pos-stage-one > .menu-panel {
    order:2!important;
    display:block!important;
    width:100%!important;
    overflow:visible!important;
  }
  .role-admin .floating-cart-button { display:none!important; }
  .role-admin .cart-vip-bar { display:block!important; }
  .role-admin .cart-vip-bar .vip-toggle { display:flex!important; }
}

/* Keeper selling-price editor. */
.sale-prices-modal { width:min(980px,calc(100vw - 20px)); height:min(900px,calc(100dvh - 20px)); max-height:calc(100dvh - 20px); display:flex; flex-direction:column; padding:0; overflow:hidden; }
.sale-prices-modal > .report-modal-header { padding:16px 18px 12px; }
.sale-prices-toolbar { flex:0 0 auto; display:flex; align-items:center; gap:10px; padding:0 18px 10px; }
.sale-prices-toolbar input { flex:1 1 auto; min-width:0; height:46px; }
.sale-prices-toolbar span { color:var(--muted); font-weight:900; white-space:nowrap; }
.sale-prices-scroll { min-height:0; flex:1 1 auto; overflow-y:auto; padding:0 18px 14px; display:grid; align-content:start; gap:9px; overscroll-behavior:contain; }
.sale-price-row { display:grid; gap:9px; padding:12px; border:1px solid var(--line); border-radius:12px; background:var(--panel-2); }
.sale-price-row[hidden] { display:none!important; }
.sale-price-row > header { display:flex; align-items:baseline; justify-content:space-between; gap:10px; }
.sale-price-row > header strong { font-size:16px; }
.sale-price-row > header span { color:var(--muted); font-size:12px; }
.sale-price-base { display:grid; grid-template-columns:minmax(180px,260px) auto; align-items:end; gap:10px; }
.sale-price-base label,
.sale-price-extra-row label { display:grid; gap:4px; }
.sale-price-base label span,
.sale-price-extra-row label span { color:var(--muted); font-size:10px; font-weight:900; text-transform:uppercase; letter-spacing:.04em; }
.sale-price-base input,
.sale-price-extra-row input { min-height:42px; }
.sale-price-extras { display:grid; gap:7px; }
.sale-price-extra-row { display:grid; grid-template-columns:90px 140px minmax(160px,1fr) 42px; gap:8px; align-items:end; }
.sale-price-extra-row .icon-danger { width:42px; min-width:42px; height:42px; }
.sale-prices-modal > .catalog-item-footer { flex:0 0 auto; }
@media (max-width:700px) {
  .sale-price-base { grid-template-columns:1fr; }
  .sale-price-extra-row { grid-template-columns:80px minmax(110px,1fr) 42px; }
  .sale-price-extra-row .sale-price-name { grid-column:1 / -1; grid-row:2; }
}

/* RC22.51 — own delivery: courier card + two-stage handoff/payment */
.delivery-courier-top { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(180px,.8fr); gap:8px; align-items:stretch; }
.delivery-collect-total { padding:10px 12px; border-radius:10px; background:rgba(7,14,20,.58); border:1px solid rgba(102,169,232,.34); display:flex; flex-direction:column; justify-content:center; }
.delivery-collect-total span,.delivery-courier-comment span { display:block; margin-bottom:4px; color:#92bfe5; font-size:10px; font-weight:950; letter-spacing:.055em; }
.delivery-collect-total strong { color:#fff; font-size:26px; line-height:1.1; }
.delivery-collect-total small { margin-top:4px; color:#b9d9f6; font-size:11px; font-weight:800; }
.delivery-courier-comment { margin-top:8px; padding:11px 12px; border:2px solid rgba(102,169,232,.42); border-radius:10px; background:rgba(7,14,20,.48); }
.delivery-courier-comment strong { display:block; color:#fff2d2; font-size:17px; line-height:1.35; overflow-wrap:anywhere; }
.delivery-handoff-state { margin-top:9px; padding:10px 12px; border-radius:10px; display:grid; grid-template-columns:auto 1fr; gap:3px 12px; align-items:center; }
.delivery-handoff-state.on-time { border:1px solid rgba(80,190,126,.55); background:rgba(80,190,126,.10); }
.delivery-handoff-state.late { border:1px solid rgba(224,99,79,.62); background:rgba(224,99,79,.10); }
.delivery-handoff-state span { font-size:10px; font-weight:1000; letter-spacing:.06em; }
.delivery-handoff-state strong { font-size:15px; }
.delivery-handoff-state small { grid-column:1/-1; color:var(--muted); font-size:11px; }
.time-badge.courier-handed { white-space:normal; text-align:center; }
.time-badge.courier-handed.on-time { border-color:rgba(80,190,126,.55); background:rgba(80,190,126,.13); color:#9ce3b9; }
.time-badge.courier-handed.late { border-color:rgba(224,99,79,.62); background:rgba(224,99,79,.13); color:#ffb0a3; }
.delivery-payment-actions { display:grid; grid-template-columns:minmax(0,1fr) minmax(160px,auto); gap:10px; align-items:center; }
.delivery-awaiting-payment { min-height:46px; display:flex; align-items:center; padding:9px 12px; border-radius:10px; border:1px solid rgba(214,173,92,.38); background:rgba(214,173,92,.08); color:var(--gold-light); font-weight:900; }
.courier-handoff-button { min-height:52px; font-size:16px; font-weight:1000; }
.issue-delivery-handoff-summary { display:grid; grid-template-columns:1fr auto; gap:5px 14px; padding:13px 14px; border:1px solid rgba(80,190,126,.5); border-radius:12px; background:rgba(80,190,126,.09); }
.issue-delivery-handoff-summary span { font-weight:950; color:#9ce3b9; }
.issue-delivery-handoff-summary strong { grid-row:1/3; grid-column:2; align-self:center; font-size:24px; }
.issue-delivery-handoff-summary small { color:var(--muted); overflow-wrap:anywhere; }
@media (max-width:700px) {
  .delivery-courier-top { grid-template-columns:1fr; }
  .delivery-payment-actions { grid-template-columns:1fr; }
  .delivery-collect-total strong { font-size:23px; }
}

/* RC22.52 — keyboard is docked, never a modal blocker. A tap outside closes it and reaches the target control. */
.screen-keyboard-backdrop {
  pointer-events:none;
  background:transparent;
}
.screen-keyboard-panel {
  pointer-events:auto;
}

/* RC22.52 — full owner-controlled VIP position list. */
.vip-owner-selection-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  padding:12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--panel-2);
}
.vip-owner-selection-head > div:first-child { display:grid; gap:3px; }
.vip-owner-selection-head small { color:var(--muted); }
.vip-owner-actions { display:flex; gap:8px; flex-wrap:wrap; }
.vip-item-list {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:7px;
  max-height:48vh;
  overflow:auto;
  padding:4px;
  border:1px solid var(--line);
  border-radius:14px;
  overscroll-behavior:contain;
}
.vip-item-row {
  display:grid;
  grid-template-columns:auto 64px minmax(0,1fr);
  align-items:center;
  gap:9px;
  min-height:54px;
  padding:8px 10px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--panel);
  cursor:pointer;
}
.vip-item-row input { width:22px; height:22px; }
.vip-item-code { font-weight:950; font-variant-numeric:tabular-nums; }
.vip-item-name { display:grid; min-width:0; gap:2px; }
.vip-item-name strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.vip-item-name small { color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
html[data-admin-theme="pos"] .vip-owner-selection-head,
html[data-admin-theme="pos"] .vip-item-list { background:#eef4f7; border-color:#b8c7d2; }
html[data-admin-theme="pos"] .vip-item-row { background:#fff; border-color:#c7d4dd; }

@media (max-width:700px) {
  .vip-item-list { grid-template-columns:1fr; max-height:52vh; }
  .vip-owner-actions { width:100%; }
  .vip-owner-actions button { flex:1 1 0; }
}



/* RC22.58 — VIP can be assigned to full Keeper categories with per-item exceptions. */
.vip-category-list {
  display:grid;
  gap:12px;
  max-height:58vh;
  overflow:auto;
  padding:4px;
  border:1px solid var(--line);
  border-radius:14px;
  overscroll-behavior:contain;
}
.vip-category-card {
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--panel-2);
  overflow:hidden;
}
.vip-category-head {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,420px);
  align-items:center;
  gap:14px;
  padding:13px 14px;
  border-bottom:1px solid var(--line);
}
.vip-category-head > div:first-child { min-width:0; display:grid; gap:2px; }
.vip-category-head h3 { margin:0; font-size:18px; }
.vip-category-head small { color:var(--muted); }
.vip-category-kicker {
  color:var(--gold-light);
  font-size:10px;
  font-weight:950;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.vip-category-toggle,
.vip-category-manual-note {
  display:flex;
  align-items:center;
  gap:10px;
  min-height:54px;
  padding:9px 11px;
  border:1px solid rgba(224,178,70,.34);
  border-radius:11px;
  background:rgba(224,178,70,.07);
}
.vip-category-toggle { cursor:pointer; }
.vip-category-toggle input { width:24px; height:24px; flex:0 0 auto; }
.vip-category-toggle span,
.vip-category-manual-note { min-width:0; }
.vip-category-toggle span { display:grid; gap:2px; }
.vip-category-toggle strong,
.vip-category-manual-note strong { font-weight:950; }
.vip-category-toggle small,
.vip-category-manual-note small { color:var(--muted); line-height:1.25; }
.vip-category-manual-note { display:grid; gap:2px; border-color:var(--line); background:var(--panel); }
.vip-category-item-list {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:7px;
  padding:9px;
}
html[data-admin-theme="pos"] .vip-category-list { background:#eef4f7; border-color:#b8c7d2; }
html[data-admin-theme="pos"] .vip-category-card { background:#f7fafc; border-color:#b8c7d2; }
html[data-admin-theme="pos"] .vip-category-head { border-bottom-color:#c7d4dd; }
html[data-admin-theme="pos"] .vip-category-toggle { background:#fff8e7; border-color:#d8b55a; }
html[data-admin-theme="pos"] .vip-category-manual-note { background:#fff; border-color:#c7d4dd; }

@media (max-width:900px) {
  .vip-category-head { grid-template-columns:1fr; }
  .vip-category-item-list { grid-template-columns:1fr; }
}

/* RC22.55 — one touch keyboard + one Keeper/Admin visual language.
   All text-like fields on touch devices use the Local Control keyboard; native date/time controls stay native. */
.screen-keyboard-backdrop {
  position:fixed;
  inset:0;
  z-index:11000;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:clamp(4px,1vw,10px);
  pointer-events:none;
  background:transparent;
  box-sizing:border-box;
}
.screen-keyboard-panel {
  pointer-events:auto;
  box-sizing:border-box;
  width:min(760px,calc(100vw - 8px));
  max-width:100%;
  max-height:min(66dvh,560px);
  overflow:auto;
  margin:0 auto;
  padding:10px 12px calc(10px + env(safe-area-inset-bottom));
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--panel);
  box-shadow:0 -14px 40px rgba(0,0,0,.36);
}
.screen-keyboard-panel.screen-keyboard-numeric { width:min(390px,calc(100vw - 8px)); }
.screen-keyboard-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:7px;
}
.screen-keyboard-head strong {
  min-width:0;
  color:var(--muted);
  font-size:12px;
  font-weight:900;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.screen-keyboard-head button {
  flex:0 0 auto;
  min-height:38px;
  padding:6px 14px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel-2);
  color:var(--text);
  font-weight:900;
}
.screen-keyboard-value {
  box-sizing:border-box;
  width:100%;
  min-height:46px;
  max-height:92px;
  overflow:auto;
  margin:0 0 8px;
  padding:9px 12px;
  border:2px solid var(--gold);
  border-radius:11px;
  background:var(--panel-2);
  color:var(--text);
  font-size:clamp(20px,3vw,28px);
  font-weight:950;
  line-height:1.2;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.screen-keyboard-rows { display:grid; gap:5px; min-width:0; }
.screen-keyboard-row {
  display:grid !important;
  grid-template-columns:repeat(var(--screen-key-count,10),minmax(0,1fr));
  gap:5px;
  width:100%;
  min-width:0;
}
.screen-keyboard-row button {
  box-sizing:border-box;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:44px;
  padding:5px 2px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel-2);
  color:var(--text);
  font-size:clamp(14px,2vw,17px);
  font-weight:950;
  line-height:1;
  flex:none !important;
}
.screen-keyboard-symbols { margin-top:1px; }
.screen-keyboard-symbols button { min-height:38px; color:var(--muted); }
.screen-keyboard-bottom { margin-top:6px; }
.screen-keyboard-panel.screen-keyboard-alphanumeric .screen-keyboard-bottom {
  grid-template-columns:minmax(0,4fr) minmax(78px,1fr) !important;
}
.screen-keyboard-panel.screen-keyboard-numeric .screen-keyboard-bottom:not(.compact) {
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
.screen-keyboard-bottom.compact {
  grid-template-columns:minmax(88px,120px) !important;
  justify-content:center;
}
.screen-keyboard-bottom button,
.screen-keyboard-bottom button:first-child,
.screen-keyboard-bottom button:last-child,
.screen-keyboard-bottom.compact button:first-child {
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  flex:none !important;
}
.screen-keyboard-bottom .space { letter-spacing:.04em; }
.screen-keyboard-target {
  outline:2px solid var(--gold) !important;
  outline-offset:2px;
}

/* Embedded Wolt/Bolt code keyboard follows the same geometry and can never overflow the checkout card. */
.checkout-order-keyboard {
  box-sizing:border-box;
  display:grid;
  gap:6px;
  width:min(680px,100%);
  max-width:100%;
  min-width:0;
  margin:0 auto;
  padding:10px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--panel-2);
}
.checkout-order-keyboard .checkout-keyboard-row {
  display:grid !important;
  grid-template-columns:repeat(var(--checkout-key-count,10),minmax(0,1fr));
  gap:5px;
  width:100%;
  min-width:0;
}
.checkout-order-keyboard .checkout-keyboard-row button,
.checkout-order-keyboard .checkout-keyboard-command-row button {
  box-sizing:border-box;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:44px;
  padding:5px 2px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel);
  color:var(--text);
  font-size:clamp(13px,1.8vw,16px);
  font-weight:950;
  flex:none !important;
}
.checkout-order-keyboard .checkout-keyboard-command-row {
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  margin-top:2px;
}
.checkout-order-keyboard .checkout-keyboard-command-row button { color:var(--muted); }

/* New operational controls inherit the same Keeper geometry instead of introducing one-off visual styles. */
.role-admin,
.order-checkout-backdrop,
.cart-review-backdrop,
.modal-backdrop {
  --keeper-control-radius:11px;
  --keeper-card-radius:16px;
  --keeper-control-h:44px;
}
.role-admin :where(.card,.cart,.menu-panel,.ticket,.branch-hub-card),
.order-checkout-backdrop :where(.checkout-wizard-modal,.checkout-choice,.checkout-persons-display),
.cart-review-backdrop :where(.modal,.cart-review-line),
.modal-backdrop > .modal {
  border-radius:var(--keeper-card-radius);
}
.role-admin :where(.primary,.secondary,.danger,.success,.nav-button,.operation-chip,.tab,.vip-toggle),
.order-checkout-backdrop :where(button,input,textarea,select),
.cart-review-backdrop :where(button,input,textarea,select),
.modal-backdrop > .modal :where(button,input,textarea,select) {
  border-radius:var(--keeper-control-radius);
}
.role-admin :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea),
.order-checkout-backdrop :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea),
.modal-backdrop > .modal :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea) {
  box-sizing:border-box;
  max-width:100%;
  min-width:0;
}
html[data-admin-theme="pos"] .screen-keyboard-panel,
html[data-admin-theme="pos"] .checkout-order-keyboard {
  border-color:#b8c7d2;
  background:#f8fafb;
  box-shadow:0 -12px 34px rgba(40,67,89,.18);
}
html[data-admin-theme="pos"] .screen-keyboard-value {
  border-color:#5d91b8;
  background:#fff;
  color:#163e5c;
}
html[data-admin-theme="pos"] .screen-keyboard-row button,
html[data-admin-theme="pos"] .screen-keyboard-head button,
html[data-admin-theme="pos"] .checkout-order-keyboard .checkout-keyboard-row button {
  border-color:#b8c7d2;
  background:#fff;
  color:#163e5c;
}
html[data-admin-theme="light"] .screen-keyboard-panel,
html[data-admin-theme="light"] .checkout-order-keyboard { background:#fff; }

@media (max-width:700px) {
  .screen-keyboard-backdrop { padding:4px; }
  .screen-keyboard-panel { width:calc(100vw - 8px); padding:8px 7px calc(8px + env(safe-area-inset-bottom)); }
  .screen-keyboard-row { gap:3px; }
  .screen-keyboard-row button { min-height:42px; font-size:13px; padding-inline:1px; }
  .checkout-order-keyboard { width:100%; padding:7px 5px; gap:4px; }
  .checkout-order-keyboard .checkout-keyboard-row { gap:3px; }
  .checkout-order-keyboard .checkout-keyboard-row button { min-height:42px; font-size:13px; padding-inline:1px; }
}

@media (orientation:landscape) and (max-height:700px) {
  .screen-keyboard-panel { max-height:78dvh; padding-top:7px; }
  .screen-keyboard-value { min-height:38px; max-height:64px; font-size:18px; margin-bottom:5px; }
  .screen-keyboard-rows { gap:3px; }
  .screen-keyboard-row { gap:3px; }
  .screen-keyboard-row button { min-height:36px; font-size:13px; }
  .screen-keyboard-symbols button { min-height:32px; }
  .screen-keyboard-head { margin-bottom:4px; }
}


/* RC22.58 — VIP doubled kitchen lines must be unmistakably red, not gold/orange. */
.kitchen-ticket .kitchen-position.vip-production-line.pending-position {
  position:relative;
  padding:12px 13px;
  border:3px solid #e63d3d;
  border-radius:12px;
  background:linear-gradient(90deg,rgba(230,61,61,.20),rgba(230,61,61,.065));
  box-shadow:0 0 0 1px rgba(255,104,104,.12) inset,0 8px 22px rgba(183,37,37,.14);
}
.kitchen-ticket .kitchen-position.vip-production-line.pending-position > span > strong { color:#ffb5b5; }
.kitchen-ticket .kitchen-position.vip-production-line.pending-position .qty-badge {
  background:#d93636;
  color:#fff;
  border:2px solid #ff7777;
  box-shadow:0 0 0 2px rgba(217,54,54,.13),0 5px 16px rgba(150,25,25,.20);
}
.vip-kitchen-line-label {
  display:block;
  width:max-content;
  max-width:100%;
  margin-top:7px;
  padding:5px 8px;
  border-radius:8px;
  background:#c92e2e;
  color:#fff!important;
  font-size:12px!important;
  font-weight:1000!important;
  line-height:1.2;
  letter-spacing:.035em;
}
html[data-admin-theme="pos"] .kitchen-ticket .kitchen-position.vip-production-line.pending-position {
  border-color:#d72f2f;
  background:#fff0f0;
  box-shadow:0 0 0 1px rgba(215,47,47,.09) inset,0 7px 18px rgba(130,24,24,.10);
}
html[data-admin-theme="pos"] .kitchen-ticket .kitchen-position.vip-production-line.pending-position > span > strong { color:#9e1f1f; }
@media (max-width:700px) {
  .kitchen-ticket .kitchen-position.vip-production-line.pending-position { padding:10px; border-width:3px; }
  .vip-kitchen-line-label { font-size:11px!important; }
}


/* RC22.59 — VIP rules select real Keeper menu categories, including newly-created empty categories. */
.vip-keeper-category-section,
.vip-position-exceptions-section {
  display:grid;
  gap:10px;
}
.vip-category-rule-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:9px;
}
.vip-category-rule-card {
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-height:78px;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel-2);
  cursor:pointer;
  transition:border-color .12s ease, background .12s ease, transform .12s ease;
}
.vip-category-rule-card:hover { border-color:rgba(224,178,70,.58); }
.vip-category-rule-card:active { transform:translateY(1px); }
.vip-category-rule-card.selected {
  border-color:rgba(224,178,70,.88);
  background:rgba(224,178,70,.10);
  box-shadow:inset 0 0 0 1px rgba(224,178,70,.18);
}
.vip-category-rule-card input { width:25px; height:25px; margin:0; }
.vip-category-rule-card span { display:grid; gap:2px; min-width:0; }
.vip-category-rule-card span > small {
  color:var(--gold-light);
  font-size:10px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.vip-category-rule-card strong {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:16px;
  font-weight:950;
}
.vip-category-rule-card em {
  color:var(--muted);
  font-size:12px;
  font-style:normal;
}
.vip-category-position-head { grid-template-columns:1fr; }
.vip-position-exceptions-section > .section-head.compact {
  align-items:end;
  margin-bottom:0;
}
.vip-position-exceptions-section > .section-head.compact > strong {
  color:var(--muted);
  font-size:13px;
}
html[data-admin-theme="pos"] .vip-category-rule-card {
  background:#fff;
  border-color:#c7d4dd;
}
html[data-admin-theme="pos"] .vip-category-rule-card.selected {
  background:#fff8e7;
  border-color:#d8b55a;
}
@media (max-width:700px) {
  .vip-category-rule-grid { grid-template-columns:1fr; }
  .vip-position-exceptions-section > .section-head.compact { align-items:start; }
}


/* RC22.60 — administrator queue filters by fulfillment and source */
.queue-filter-panel {
  margin: 0 0 16px; padding: 14px; border: 1px solid var(--line); border-radius: 16px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--panel) 94%, var(--gold) 6%), var(--panel));
  box-shadow: 0 10px 30px rgba(0,0,0,.12);
}
.queue-filter-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
.queue-filter-head > div { display:grid; gap:3px; }
.queue-filter-head strong { font-size:15px; }
.queue-filter-head small, .queue-filter-head > span { color:var(--muted); font-size:12px; }
.queue-filter-head > span { white-space:nowrap; }
.queue-filter-head > span b { color:var(--text); font-size:13px; }
.queue-filter-row { display:flex; flex-wrap:wrap; gap:8px; }
.queue-filter-chip {
  min-height:44px; display:inline-flex; align-items:center; gap:10px; padding:0 13px;
  border:1px solid var(--line); border-radius:12px; background:var(--panel-2); color:var(--text);
  font:inherit; font-size:13px; font-weight:850; cursor:pointer; touch-action:manipulation;
}
.queue-filter-chip b { min-width:22px; height:22px; padding:0 6px; display:inline-grid; place-items:center; border-radius:999px; background:rgba(255,255,255,.07); color:var(--muted); font-size:11px; }
.queue-filter-chip:hover { border-color:color-mix(in srgb, var(--gold) 55%, var(--line)); }
.queue-filter-chip.active { border-color:var(--gold); background:rgba(214,173,92,.12); color:var(--gold-light); box-shadow:inset 0 0 0 1px rgba(214,173,92,.18); }
.queue-filter-chip.active b { background:rgba(214,173,92,.18); color:var(--gold-light); }
.queue-filter-chip.delivery.active { border-color:#63d9b0; color:#9af0d3; background:rgba(63,190,145,.12); }
.queue-filter-chip.platform.active { border-color:#7db6ff; color:#b6d7ff; background:rgba(74,137,221,.12); }
.queue-filter-divider { display:flex; align-items:center; gap:10px; margin:12px 0 9px; color:var(--muted); font-size:11px; font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.queue-filter-divider::after { content:""; height:1px; flex:1; background:var(--line); }
@media (max-width: 760px) {
  .queue-filter-panel { padding:11px; border-radius:13px; }
  .queue-filter-head { align-items:flex-start; }
  .queue-filter-head > span { white-space:normal; text-align:right; }
  .queue-filter-row { flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; scrollbar-width:thin; }
  .queue-filter-chip { flex:0 0 auto; min-height:42px; }
}

/* RC22.61 · owner day reconciliation workflow */
.report-review-page{display:grid;gap:18px;min-height:calc(100vh - 180px)}
.report-review-top{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap}
.report-review-top>div{min-width:260px;flex:1}
.report-review-top h2{margin:4px 0 6px}
.report-review-top p{margin:0;color:var(--muted,#b8b1a7)}
.report-review-channels{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 10px;scrollbar-width:thin}
.report-review-channel{flex:0 0 auto;min-width:150px;display:grid;gap:4px;text-align:left;border:1px solid rgba(214,169,80,.24);border-radius:16px;padding:12px 14px;background:rgba(255,255,255,.035);color:inherit}
.report-review-channel span{font-weight:800}
.report-review-channel strong{font-size:22px;line-height:1}
.report-review-channel em{font-style:normal;color:var(--muted,#b8b1a7)}
.report-review-channel.active{border-color:#d9ad52;background:rgba(217,173,82,.12);box-shadow:0 0 0 1px rgba(217,173,82,.12) inset}
.report-review-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.report-review-summary>div{border:1px solid rgba(214,169,80,.18);border-radius:18px;padding:18px;background:rgba(255,255,255,.025);display:grid;gap:5px}
.report-review-summary span,.report-review-summary small{color:var(--muted,#b8b1a7)}
.report-review-summary strong{font-size:30px;line-height:1.1}
.report-review-order-list{display:grid;gap:9px}
.report-review-order-card{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;padding:14px 16px;border-radius:16px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025);color:inherit}
.report-review-order-card:hover,.report-review-order-card:focus-visible{border-color:rgba(217,173,82,.65);background:rgba(217,173,82,.06)}
.report-review-order-card>div:first-child{display:grid;grid-template-columns:auto auto;column-gap:12px;row-gap:3px;align-items:baseline;min-width:0}
.report-review-order-card>div:first-child span{color:var(--muted,#b8b1a7);font-variant-numeric:tabular-nums}
.report-review-order-card>div:first-child strong{font-size:18px}
.report-review-order-card>div:first-child small{grid-column:1/-1;color:var(--muted,#b8b1a7);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:620px}
.report-review-order-meta{display:grid;grid-template-columns:minmax(90px,auto) minmax(90px,auto) auto;gap:12px;align-items:center;text-align:right}
.report-review-order-meta span{color:var(--muted,#b8b1a7)}
.report-review-order-meta b{font-size:19px}
.report-review-order-meta i{font-style:normal;color:#e1b55b;font-weight:700}
.report-review-edit-modal{width:min(620px,calc(100vw - 24px));max-height:min(760px,calc(100vh - 24px));overflow:auto}
.report-review-edit-body{display:grid;gap:14px;padding:18px}
.report-review-current{display:grid;gap:4px;border:1px solid rgba(217,173,82,.22);border-radius:16px;padding:16px;background:rgba(217,173,82,.07)}
.report-review-current span,.report-review-current small{color:var(--muted,#b8b1a7)}
.report-review-current strong{font-size:30px}
@media(max-width:720px){
  .report-review-summary{grid-template-columns:1fr}
  .report-review-order-card{align-items:flex-start;flex-direction:column}
  .report-review-order-meta{width:100%;grid-template-columns:1fr auto auto;text-align:left}
  .report-review-order-card>div:first-child small{max-width:calc(100vw - 70px)}
  .report-review-channel{min-width:132px}
}

/* RC22.62 — tablet fullscreen workspace + compact administrator queue */
.workspace-fullscreen-button {
  min-height:38px; min-width:46px; display:inline-flex; align-items:center; justify-content:center; gap:7px;
  padding:5px 10px; white-space:nowrap; touch-action:manipulation;
}
.workspace-fullscreen-button span { font-size:19px; line-height:1; }
.workspace-fullscreen-button b { font-size:12px; }
.workspace-fullscreen-button.active { border-color:var(--gold); background:rgba(214,173,92,.14); color:var(--gold-light); }

/* Fullscreen is both native browser fullscreen and a focused POS layout. On browsers
   without the Fullscreen API the compact workspace still works. */
html[data-workspace-focus="on"] .role-admin > .main,
html[data-workspace-focus="on"] .app-layout.role-admin > .main {
  padding:5px 7px calc(76px + env(safe-area-inset-bottom))!important;
}
html[data-workspace-focus="on"] .role-admin .topbar {
  min-height:42px; margin:0 0 5px!important; padding:3px 5px;
  position:sticky; top:0; z-index:760;
  border:1px solid var(--line); border-radius:11px;
  background:color-mix(in srgb,var(--panel) 95%,transparent); backdrop-filter:blur(14px);
}
html[data-workspace-focus="on"] .role-admin .topbar-title-block { display:flex; align-items:center; gap:7px; }
html[data-workspace-focus="on"] .role-admin .topbar .eyebrow { display:none!important; }
html[data-workspace-focus="on"] .role-admin .page-title { margin:0; font-size:17px!important; line-height:1.1; }
html[data-workspace-focus="on"] .role-admin .top-actions { flex-wrap:nowrap; gap:5px; }
html[data-workspace-focus="on"] .role-admin .top-actions > :is(.admin-language-control,.admin-theme-control,.ui-scale-control,.shift-pill,.intermediate-stock-quick) { display:none!important; }
html[data-workspace-focus="on"] .role-admin .workspace-fullscreen-button b { display:none; }
html[data-workspace-focus="on"] .role-admin .workspace-fullscreen-button { min-width:38px; width:38px; padding:3px; }
html[data-workspace-focus="on"] .role-admin .keeper-more-button { min-width:38px; width:38px; min-height:36px; padding:2px 7px; }
html[data-workspace-focus="on"] .role-admin .clock { min-width:64px; min-height:36px; height:36px; padding:5px 9px; font-size:15px; }
html[data-workspace-focus="on"] .role-admin .operations-strip { display:none!important; }
html[data-workspace-focus="on"] .role-admin .order-mode-toolbar { margin:0 0 5px; }
html[data-workspace-focus="on"] .role-admin .order-mode-toolbar .order-mode-preorder { min-height:42px; width:min(245px,100%); padding:5px 10px; }
html[data-workspace-focus="on"] .role-admin .order-mode-toolbar .order-mode-preorder small { display:none; }
html[data-workspace-focus="on"] .role-admin .order-workspace.pos-stage-one { height:calc(100dvh - 132px)!important; min-height:0!important; gap:8px!important; }
html[data-workspace-focus="on"] .role-admin .pos-stage-one .menu-tools-sticky { margin-bottom:5px!important; }
html[data-workspace-focus="on"] .role-admin .pos-stage-one .search { height:44px!important; font-size:17px!important; }
html[data-workspace-focus="on"] .role-admin .cart-stage-one .cart-head { min-height:46px; padding:7px 11px; }
html[data-workspace-focus="on"] .role-admin .cart-vip-bar { padding:5px 8px 2px; }
html[data-workspace-focus="on"] .role-admin .cart-vip-bar .vip-toggle { min-height:43px; }
html[data-workspace-focus="on"] .role-admin .cart-stage-footer { padding-block:7px; }
html[data-workspace-focus="on"] .role-admin .today-preorder-alert { margin-block:4px 6px; }
html[data-workspace-focus="on"] .role-kitchen .topbar .eyebrow,
html[data-workspace-focus="on"] .role-kitchen .top-actions > :is(.admin-language-control,.admin-theme-control,.ui-scale-control,.shift-pill,.intermediate-stock-quick) { display:none!important; }

/* Queue cards are deliberately denser than kitchen tickets. The kitchen keeps its large
   touch/readability layout while the administrator can see more receipts at once. */
.admin-queue-view { min-width:0; }
.admin-queue-view .queue-filter-panel { margin-bottom:9px; padding:9px 10px; border-radius:12px; }
.admin-queue-view .queue-filter-head { margin-bottom:7px; }
.admin-queue-view .queue-filter-head small { display:none; }
.admin-queue-view .queue-filter-divider { margin:7px 0 6px; }
.admin-queue-view .queue-filter-row { gap:5px; }
.admin-queue-view .queue-filter-chip { min-height:36px; padding:0 9px; border-radius:9px; gap:7px; font-size:11px; }
.admin-queue-view .queue-filter-chip b { min-width:19px; height:19px; font-size:10px; }
.admin-queue-view .group-title { margin:11px 0 6px; font-size:15px; }
.admin-queue-view .ticket-grid { grid-template-columns:repeat(auto-fill,minmax(270px,1fr)); gap:8px; align-items:start; }
.admin-queue-view .ticket { border-radius:12px; }
.admin-queue-view .ticket-head { padding:9px 9px 7px 12px; gap:6px; }
.admin-queue-view .ticket-number { font-size:18px; }
.admin-queue-view .ticket-time { margin-top:2px; font-size:11px; }
.admin-queue-view .ticket-head-right { gap:4px; }
.admin-queue-view .ticket-edit-button { min-height:28px; padding:4px 7px; font-size:10px; border-radius:7px; }
.admin-queue-view .time-badge { padding:5px 7px; font-size:10px; }
.admin-queue-view .ticket-meta { gap:4px 8px; padding:7px 9px 0 12px; font-size:10.5px; }
.admin-queue-view .admin-external-order-id { margin:6px 9px 0 12px; padding:7px 8px; border-radius:9px; }
.admin-queue-view .admin-external-order-id span { font-size:9px; }
.admin-queue-view .admin-external-order-id strong { font-size:15px; }
.admin-queue-view .vip-order-flag { margin:6px 9px 0 12px; padding:6px 8px; border-width:1px; border-radius:9px; }
.admin-queue-view .vip-order-flag strong { font-size:12px; }
.admin-queue-view .vip-order-flag span { font-size:9px; }
.admin-queue-view .ticket-items { gap:4px; padding:7px 9px 7px 12px; }
.admin-queue-view .ticket-item { gap:7px; font-size:11.5px; line-height:1.25; }
.admin-queue-view .ticket-item small { font-size:9.5px; }
.admin-queue-view .ticket-modifiers { margin-top:3px!important; }
.admin-queue-view .receipt-extra-summary { font-size:9px!important; }
.admin-queue-view .receipt-total { margin:0 9px 7px 12px; padding:7px 8px; border-radius:8px; }
.admin-queue-view .receipt-total span { font-size:10.5px; }
.admin-queue-view .receipt-total strong { font-size:17px; }
.admin-queue-view .ticket-note { margin:0 9px 7px 12px; padding:6px 7px; font-size:10.5px; }
.admin-queue-view .stations { gap:4px; padding:0 9px 7px 12px; }
.admin-queue-view .station-state { padding:4px 6px; border-radius:6px; font-size:9.5px; }
.admin-queue-view .ticket-actions { gap:5px; padding:7px 9px 8px 12px; }
.admin-queue-view .ticket-actions button { min-height:36px; padding:5px 8px; font-size:11px; }
.admin-queue-view .ticket-actions .muted { font-size:10px; line-height:1.2; }
.admin-queue-view .packing-plan { margin:6px 9px 7px 12px; border-radius:9px; }
.admin-queue-view .packing-plan-title { min-height:40px; padding:6px 8px; }
.admin-queue-view .packing-plan-title .packing-plan-heading b { font-size:10.5px; }
.admin-queue-view .packing-plan-title .packing-plan-heading small { font-size:9px; }
.admin-queue-view .packing-plan-toggle em { display:none; }
.admin-queue-view .packing-plan-toggle i { width:24px; height:24px; font-size:14px; }
.admin-queue-view .delivery-contact-card { margin:6px 9px 4px 12px; padding:8px; border-width:1px; border-radius:9px; }
.admin-queue-view .delivery-contact-title { margin-bottom:5px; font-size:10px; }
.admin-queue-view .delivery-courier-top { gap:5px; }
.admin-queue-view .delivery-contact-main,
.admin-queue-view .delivery-contact-details { padding:6px 7px; border-radius:7px; }
.admin-queue-view .delivery-contact-details { margin-top:5px; }
.admin-queue-view .delivery-contact-main span,
.admin-queue-view .delivery-contact-details span,
.admin-queue-view .delivery-contact-row span { margin-bottom:2px; font-size:8px; }
.admin-queue-view .delivery-contact-main strong { font-size:14px; }
.admin-queue-view .delivery-contact-details strong { font-size:12px; }
.admin-queue-view .delivery-contact-row { gap:5px; margin-top:5px; }
.admin-queue-view .delivery-contact-row > div { padding:5px 7px; border-radius:7px; }
.admin-queue-view .delivery-contact-row strong { font-size:12px; }
.admin-queue-view .delivery-collect-total { padding:6px 7px; }
.admin-queue-view .delivery-collect-total span { font-size:8px; }
.admin-queue-view .delivery-collect-total strong { font-size:15px; }
.admin-queue-view .delivery-collect-total small { font-size:8.5px; }
.admin-queue-view .delivery-courier-comment { margin-top:5px; padding:6px 7px; }
.admin-queue-view .delivery-courier-comment span { font-size:8px; }
.admin-queue-view .delivery-courier-comment strong { font-size:11px; }

html[data-workspace-focus="on"] .role-admin.view-queue .topbar { margin-bottom:4px!important; }
html[data-workspace-focus="on"] .role-admin.view-queue .admin-queue-view .ticket-grid { grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); }

@media (orientation:portrait) and (max-width:900px) {
  html[data-workspace-focus="on"] .role-admin .topbar-title-block { display:none; }
  html[data-workspace-focus="on"] .role-admin .top-actions { width:100%; justify-content:flex-end; }
  html[data-workspace-focus="on"] .role-admin .order-workspace.pos-stage-one { height:auto!important; }
  .admin-queue-view .ticket-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:620px) {
  .admin-queue-view .ticket-grid { grid-template-columns:1fr; }
}

html[data-admin-theme="pos"][data-workspace-focus="on"] .role-admin .topbar,
html[data-admin-theme="light"][data-workspace-focus="on"] .role-admin .topbar { background:rgba(248,250,252,.96); }
.admin-queue-view .delivery-courier-top { grid-template-columns:minmax(0,1fr) minmax(105px,.55fr); }
/* Keep compact queue controls finger-safe despite denser cards. */
.admin-queue-view .queue-filter-chip { min-height:40px; }
.admin-queue-view .ticket-edit-button { min-height:34px; }
.admin-queue-view .ticket-actions button { min-height:42px; }

/* RC22.63 — real-tablet portrait repair, compact touch keyboard and prominent final total. */

/* A−− must actually be smaller than A−. Earlier it only changed density. */
html[data-ui-font="tiny"] body { font-size:11.5px; }
html[data-ui-font="tiny"] button,
html[data-ui-font="tiny"] input,
html[data-ui-font="tiny"] select,
html[data-ui-font="tiny"] textarea { font-size:11.5px; }
html[data-ui-font="tiny"] .page-title { font-size:clamp(18px,1.8vw,24px); }
html[data-ui-font="tiny"] .menu-item { min-height:86px; padding:7px 8px; }
html[data-ui-font="tiny"] .menu-code { font-size:16px; }
html[data-ui-font="tiny"] .menu-name { font-size:12px; }

/* Queue: never squeeze courier/payment blocks until words become one letter per line. */
.admin-queue-view .ticket { min-width:0; container-type:inline-size; }
.admin-queue-view .delivery-payment-actions { min-width:0; }
.admin-queue-view .delivery-awaiting-payment,
.admin-queue-view .delivery-handoff-state,
.admin-queue-view .delivery-handoff-state span,
.admin-queue-view .delivery-handoff-state strong {
  min-width:0;
  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;
}
.admin-queue-view .delivery-awaiting-payment {
  justify-content:center;
  text-align:center;
  line-height:1.25;
}

/* On a narrow receipt the payment stage is vertical: state first, button second. */
@container (max-width:430px) {
  .admin-queue-view .delivery-payment-actions { grid-template-columns:1fr!important; }
  .admin-queue-view .delivery-handoff-state { grid-template-columns:1fr!important; text-align:left; }
  .admin-queue-view .delivery-handoff-state small { grid-column:1!important; }
  .admin-queue-view .delivery-courier-top { grid-template-columns:minmax(0,1fr) minmax(92px,.5fr)!important; }
  .admin-queue-view .delivery-contact-row { grid-template-columns:1fr!important; }
  .admin-queue-view .ticket-actions .issue-order-button,
  .admin-queue-view .ticket-actions .courier-handoff-button { width:100%; }
}

/* A portrait 12–14" tablet must use two readable columns even when its CSS viewport is >900px.
   Three narrow columns were the reason courier labels and controls collapsed in the real photo. */
@media (orientation:portrait) {
  .role-admin.view-queue .admin-queue-view .ticket-grid,
  .admin-queue-view .ticket-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  .admin-queue-view .ticket { width:auto!important; max-width:none!important; }
  .admin-queue-view .ticket-head { padding-inline:11px; }
  .admin-queue-view .ticket-meta,
  .admin-queue-view .ticket-items,
  .admin-queue-view .stations,
  .admin-queue-view .ticket-actions { padding-inline:11px; }
  .admin-queue-view .delivery-contact-card,
  .admin-queue-view .packing-plan,
  .admin-queue-view .receipt-total,
  .admin-queue-view .ticket-note,
  .admin-queue-view .admin-external-order-id,
  .admin-queue-view .vip-order-flag { margin-inline:11px; }
}
@media (orientation:portrait) and (max-width:620px) {
  .role-admin.view-queue .admin-queue-view .ticket-grid,
  .admin-queue-view .ticket-grid { grid-template-columns:1fr!important; }
}

/* Compact delivery card for admin queue: courier sees the important data without turning the receipt into a full page. */
.admin-queue-view .delivery-contact-card { overflow:hidden; }
.admin-queue-view .delivery-contact-main strong,
.admin-queue-view .delivery-contact-details strong,
.admin-queue-view .delivery-courier-comment strong { line-height:1.22; }
.admin-queue-view .delivery-handoff-state { padding:7px 8px; gap:3px 7px; }
.admin-queue-view .delivery-handoff-state span { font-size:8.5px; }
.admin-queue-view .delivery-handoff-state strong { font-size:11.5px; }
.admin-queue-view .delivery-handoff-state small { font-size:9px; line-height:1.25; }

/* Final handoff: the amount after a discount must be the visual anchor, not tiny helper text. */
.issue-total-hero {
  display:grid;
  justify-items:center;
  gap:3px;
  padding:13px 16px 14px;
  border:2px solid rgba(214,173,92,.72);
  border-radius:15px;
  background:linear-gradient(180deg,rgba(214,173,92,.14),rgba(214,173,92,.045));
  text-align:center;
}
.issue-total-hero > span {
  color:var(--gold-light);
  font-size:11px;
  font-weight:1000;
  letter-spacing:.11em;
}
.issue-total-hero > strong {
  color:#fff;
  font-size:clamp(38px,6vw,58px);
  font-weight:1000;
  line-height:1;
  letter-spacing:-.035em;
}
.issue-total-hero > small {
  color:var(--muted);
  font-size:12px;
  font-weight:850;
}
html[data-admin-theme="pos"] .issue-total-hero,
html[data-admin-theme="light"] .issue-total-hero { background:#fff8e7; border-color:#d5ab3d; }
html[data-admin-theme="pos"] .issue-total-hero > strong,
html[data-admin-theme="light"] .issue-total-hero > strong { color:#173f5c; }

/* The touch keyboard is a tool, not a second full-screen page. */
.screen-keyboard-backdrop {
  align-items:flex-end;
  justify-content:center;
  padding:0 8px env(safe-area-inset-bottom);
}
.screen-keyboard-panel {
  box-sizing:border-box;
  width:min(720px,calc(100vw - 16px));
  max-width:calc(100vw - 16px);
  max-height:min(510px,72dvh);
  padding:8px 9px 9px;
  overflow:auto;
  border-radius:16px 16px 0 0;
}
.screen-keyboard-panel.screen-keyboard-numeric {
  width:min(410px,calc(100vw - 16px));
}
.screen-keyboard-head { margin-bottom:5px; gap:8px; }
.screen-keyboard-head strong { font-size:12px; color:var(--muted); }
.screen-keyboard-head button { min-height:34px; padding:4px 11px; font-size:12px; }
.screen-keyboard-value {
  min-height:40px;
  max-height:58px;
  margin-bottom:6px;
  padding:7px 10px;
  border-width:1px;
  border-radius:9px;
  font-size:clamp(17px,2.2vw,22px);
}
.screen-keyboard-rows { gap:3px; }
.screen-keyboard-row { gap:3px; }
.screen-keyboard-row button {
  min-height:36px;
  padding:4px 2px;
  border-radius:8px;
  font-size:clamp(12px,1.6vw,15px);
}
.screen-keyboard-symbols { width:70%; margin-inline:auto; }
.screen-keyboard-symbols button { min-height:32px; }
.screen-keyboard-bottom { margin-top:3px; }
.screen-keyboard-bottom button { min-height:34px; }
.screen-keyboard-alphanumeric .screen-keyboard-rows > .screen-keyboard-row:nth-child(3) { width:91%; margin-inline:auto; }
.screen-keyboard-alphanumeric .screen-keyboard-rows > .screen-keyboard-row:nth-child(4) { width:78%; margin-inline:auto; }

/* Landscape is where the old keyboard looked especially oversized in the user's photo. */
@media (orientation:landscape) {
  .screen-keyboard-panel.screen-keyboard-alphanumeric {
    width:min(700px,72vw);
    max-height:68dvh;
  }
  .screen-keyboard-panel.screen-keyboard-numeric { width:min(360px,48vw); }
  .screen-keyboard-row button { min-height:33px; }
  .screen-keyboard-symbols button { min-height:29px; }
  .screen-keyboard-value { min-height:36px; max-height:48px; font-size:17px; }
}

/* The Wolt/Bolt inline order-code keyboard uses the same compact proportions. */
.checkout-order-keyboard { width:min(650px,100%); padding:8px; gap:4px; }
.checkout-order-keyboard .checkout-keyboard-row { gap:3px; }
.checkout-order-keyboard .checkout-keyboard-row button,
.checkout-order-keyboard .checkout-keyboard-command-row button { min-height:36px; border-radius:8px; font-size:13px; }
@media (orientation:landscape) {
  .checkout-order-keyboard { width:min(620px,78vw); }
}

/* RC22.64 — owner FAQ / program map. */
.owner-faq-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px;border:1px solid var(--owner-line,rgba(217,173,38,.25));border-radius:20px;background:linear-gradient(145deg,#151c26,#10161f);margin-bottom:14px}
.owner-faq-hero h2{margin:4px 0 8px;font-size:clamp(27px,3vw,38px);letter-spacing:-.035em}
.owner-faq-hero p{margin:0;max-width:850px;color:var(--muted);line-height:1.55}
.owner-faq-total{min-width:130px;padding:14px 18px;border:1px solid rgba(217,173,38,.28);border-radius:16px;background:rgba(217,173,38,.08);text-align:center}
.owner-faq-total strong,.owner-faq-total span{display:block}.owner-faq-total strong{font-size:32px;color:#f0cf67}.owner-faq-total span{margin-top:2px;color:var(--muted);font-size:12px}
.owner-faq-search-card{padding:16px 18px;border:1px solid var(--owner-line,rgba(255,255,255,.09));border-radius:17px;background:var(--ui-surface,#151b24);margin-bottom:12px}
.owner-faq-search-card>label{display:block;margin-bottom:8px;font-weight:800}.owner-faq-search-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center}
.owner-faq-search-row>span{font-size:22px;color:#f0cf67}.owner-faq-search-row input{width:100%;min-height:46px;border-radius:12px}.owner-faq-search-card>small{display:block;margin-top:8px;color:var(--muted)}
.owner-faq-nav{display:flex;gap:8px;overflow-x:auto;padding:3px 1px 10px;scrollbar-width:thin}.owner-faq-chip{display:flex;align-items:center;gap:8px;flex:0 0 auto;min-height:42px;padding:8px 12px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#151b24;color:var(--text);text-decoration:none}.owner-faq-chip:hover{border-color:rgba(217,173,38,.45);background:#1a2230}.owner-faq-chip b{color:#f0cf67}
.owner-faq-groups{display:grid;gap:14px}.owner-faq-group{scroll-margin-top:88px;padding:18px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:#111822}.owner-faq-group>header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.owner-faq-group>header>div{display:flex;align-items:center;gap:12px}.owner-faq-group h2{margin:0 0 3px;font-size:20px}.owner-faq-group header p{margin:0;color:var(--muted);font-size:12px}.owner-faq-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:rgba(217,173,38,.1);color:#f0cf67;font-size:19px}.owner-faq-count{min-width:34px;height:34px;display:grid;place-items:center;border-radius:999px;background:rgba(255,255,255,.06);color:var(--muted);font-weight:800}
.owner-faq-list{display:grid;gap:8px}.owner-faq-entry{border:1px solid rgba(255,255,255,.08);border-radius:13px;background:#151c26;overflow:hidden}.owner-faq-entry[hidden],.owner-faq-group[hidden]{display:none!important}.owner-faq-entry summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;font-weight:800}.owner-faq-entry summary::-webkit-details-marker{display:none}.owner-faq-entry summary b{font-size:21px;color:#f0cf67;transition:transform .15s}.owner-faq-entry[open] summary b{transform:rotate(45deg)}.owner-faq-answer{padding:0 14px 14px;border-top:1px solid rgba(255,255,255,.06)}.owner-faq-answer p{margin:12px 0;color:#d6dbe3;line-height:1.55}.owner-faq-path{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:9px 11px;border-radius:10px;background:rgba(57,198,177,.08);border:1px solid rgba(57,198,177,.16)}.owner-faq-path span{color:#62d8c7;font-size:11px;text-transform:uppercase;font-weight:900}.owner-faq-path strong{font-size:12px}
.owner-faq-footer{margin-top:14px;padding:18px;border-radius:17px;border:1px solid rgba(217,173,38,.22);background:rgba(217,173,38,.055)}.owner-faq-footer strong{font-size:17px}.owner-faq-footer p{margin:6px 0 12px;color:var(--muted)}
@media(max-width:700px){.owner-faq-hero{flex-direction:column}.owner-faq-total{width:100%;display:flex;align-items:baseline;justify-content:center;gap:8px}.owner-faq-search-row{grid-template-columns:auto minmax(0,1fr)}.owner-faq-search-row button{grid-column:1/-1}.owner-faq-group{padding:13px}.owner-faq-group>header{align-items:flex-start}.owner-faq-group header p{display:none}.owner-faq-entry summary{font-size:13px}}

/* RC22.66 — emergency per-order price override with owner red control. */
.order-edit-action.emergency-price-action{border-color:rgba(239,178,52,.48);background:rgba(239,178,52,.09)}
.order-edit-action.emergency-price-action:hover{border-color:rgba(239,178,52,.82);background:rgba(239,178,52,.14)}
.order-edit-action.emergency-price-action strong{color:#ffd36a}
.emergency-price-modal{width:min(980px,calc(100vw - 24px));max-height:min(92dvh,900px);overflow:auto}
.emergency-price-body{display:grid;gap:14px;padding:18px}
.emergency-price-table-wrap{max-height:44dvh;overflow:auto;border:1px solid var(--line);border-radius:14px}
.emergency-price-table th{position:sticky;top:0;z-index:2;background:var(--panel);white-space:nowrap}
.emergency-price-table td:first-child strong,.emergency-price-table td:first-child small{display:block}
.emergency-price-table td:first-child small{margin-top:3px;color:var(--muted);font-size:11px}
.emergency-price-input{min-width:120px;width:140px;font-weight:900;text-align:right}
.emergency-price-summary{display:grid;grid-template-columns:auto auto;gap:3px 14px;align-items:center;padding:13px 15px;border:1px solid rgba(239,178,52,.3);border-radius:13px;background:rgba(239,178,52,.06)}
.emergency-price-summary>span{font-weight:800}.emergency-price-summary>strong{font-size:22px;color:#ffd36a}.emergency-price-summary>small{grid-column:1/-1;color:var(--muted);line-height:1.4}
.warning-button{border:1px solid rgba(239,178,52,.72);background:rgba(239,178,52,.18);color:#ffe29a;font-weight:950}
.warning-button:hover{background:rgba(239,178,52,.27)}
@media(max-width:700px){.emergency-price-modal{width:100vw;max-height:100dvh;border-radius:0}.emergency-price-body{padding:12px}.emergency-price-table-wrap{max-height:48dvh}.emergency-price-input{min-width:102px;width:110px}}

/* RC22.69 — minimalist, static workspaces and fewer accidental swipes. */
:root{
  --rc2268-radius:12px;
  --rc2268-gap:8px;
}

/* Administrator: the frame stays still; only the lists inside it scroll. */
.role-admin .order-workspace.pos-stage-one{
  min-height:0;
  overflow:hidden;
  align-items:stretch;
}
.role-admin .pos-stage-one > .cart-stage-one{
  display:flex;
  flex-direction:column;
  min-height:0;
  overflow:hidden;
  border-radius:var(--rc2268-radius);
}
.role-admin .cart-stage-one .cart-head,
.role-admin .cart-stage-one .cart-vip-bar,
.role-admin .cart-stage-one .cart-stage-footer{
  flex:0 0 auto;
}
.role-admin .cart-stage-one .cart-items{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  touch-action:pan-y;
}
.role-admin .pos-stage-one > .menu-panel{
  display:flex;
  flex-direction:column;
  min-height:0;
  overflow:hidden;
}
.role-admin .pos-stage-one .menu-tools-sticky{
  position:relative!important;
  top:auto!important;
  flex:0 0 auto;
}
.role-admin .pos-stage-one .menu-grid{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  touch-action:pan-y;
}

/* More information per screen without shrinking the touch targets too far. */
.role-admin .pos-stage-one .menu-grid{gap:7px!important;}
.role-admin .pos-stage-one .menu-item{
  min-height:92px!important;
  padding:9px 10px!important;
  gap:5px!important;
  border-width:1px!important;
  border-radius:10px!important;
  box-shadow:none!important;
  transform:none!important;
}
.role-admin .pos-stage-one .menu-code{font-size:18px!important;}
.role-admin .pos-stage-one .menu-name{font-size:13px!important;line-height:1.2;}
.role-admin .pos-stage-one .menu-price{font-size:15px!important;}

/* On portrait tablets keep both basket and menu inside one viewport. */
@media (orientation:portrait) and (min-width:700px) and (max-width:1366px){
  .role-admin .order-workspace.pos-stage-one{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:minmax(250px,42%) minmax(0,58%)!important;
    grid-template-areas:"cart" "menu"!important;
    height:calc(100dvh - 158px)!important;
    min-height:500px!important;
    overflow:hidden!important;
    gap:7px!important;
  }
  .role-admin .pos-stage-one > .cart-stage-one{
    grid-area:cart!important;
    order:initial!important;
    position:relative!important;
    top:auto!important;
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    overflow:hidden!important;
  }
  .role-admin .cart-stage-one .cart-items{
    max-height:none!important;
  }
  .role-admin .pos-stage-one > .menu-panel{
    grid-area:menu!important;
    order:initial!important;
    display:flex!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .role-admin .pos-stage-one .menu-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

/* RC22.86 — kitchen work surface.
   One vertical page + horizontal ticket lanes. There is no nested vertical scroll
   inside an order card. A gesture can therefore move the page vertically or the
   current lane horizontally without requiring an empty hit area. */
.role-kitchen .workplace-topbar{
  min-height:42px;
  margin:0 0 6px!important;
  padding:3px 5px;
  justify-content:flex-end!important;
}
.role-kitchen .workplace-topbar .top-actions{
  width:100%;
  justify-content:flex-end;
  flex-wrap:nowrap;
  gap:5px;
}
.role-admin .workplace-topbar{justify-content:flex-end!important;}
.role-admin .workplace-topbar .top-actions{width:100%;justify-content:flex-end;}
.role-kitchen .ticket-group{scroll-margin-top:8px;min-width:0;touch-action:pan-x pan-y!important;}
.role-kitchen .kitchen-ticket-grid,
.role-kitchen .kitchen-attention-group .kitchen-ticket-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:flex-start!important;
  gap:10px!important;
  width:100%!important;
  max-height:none!important;
  padding:2px 2px 10px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  overscroll-behavior-x:contain!important;
  overscroll-behavior-y:auto!important;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y!important;
}
.role-kitchen .kitchen-ticket-grid .kitchen-ticket{
  flex:0 0 clamp(300px,31vw,420px)!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  max-height:none!important;
  overflow:visible!important;
  scroll-snap-align:start!important;
  border-radius:10px!important;
  touch-action:pan-x pan-y!important;
}
.role-kitchen .kitchen-ticket > .kitchen-ready-actions,
.role-kitchen .kitchen-ticket > .ticket-actions{
  position:static!important;
  margin-top:4px!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.role-kitchen .kitchen-active-group{
  border:1px solid color-mix(in srgb,var(--gold) 38%,var(--line));
  border-radius:14px;
  padding:9px 9px 2px;
  background:color-mix(in srgb,var(--panel) 96%,var(--gold) 4%);
}
.role-kitchen .kitchen-active-group .group-title{margin-top:0;}
.role-kitchen .kitchen-active-group .kitchen-ticket.attention-soon,
.role-kitchen .kitchen-active-group .kitchen-ticket.attention-urgent,
.role-kitchen .kitchen-active-group .kitchen-ticket.attention-overdue{transform:translateY(-1px);}
.role-kitchen .main,
.role-kitchen .view-content,
.role-kitchen .kitchen-workspace,
.role-kitchen .kitchen-board{
  overflow-x:hidden!important;
  overscroll-behavior-x:none!important;
  touch-action:pan-x pan-y!important;
}
.role-kitchen .kitchen-work-head,
.role-kitchen .pass-screen-head{display:none!important;}
@media (orientation:portrait){
  .role-kitchen .kitchen-ticket-grid .kitchen-ticket{flex-basis:min(84vw,460px)!important;}
}
@media (max-width:700px){
  .role-kitchen .kitchen-ticket-grid .kitchen-ticket{flex-basis:min(88vw,430px)!important;}
}

/* Owner: flatter cards, less decorative mass, important actions first. */
.role-owner .branch-hub-section,
.role-owner .owner-branch-attention,
.role-owner .analytics-answers,
.role-owner .card.padded{
  border-radius:14px;
  box-shadow:none;
}
.role-owner .branch-hub-grid{gap:8px!important;}
.role-owner .branch-hub-card{
  min-height:82px!important;
  padding:11px 12px!important;
  border-radius:11px!important;
  box-shadow:none!important;
}
.role-owner .branch-hub-card b{font-size:20px!important;}
.role-owner .branch-hub-card span strong{font-size:14px!important;}
.role-owner .branch-hub-card span small{font-size:11px!important;line-height:1.3;}
.role-owner .branch-hub-card.primary-action{
  border-width:1px!important;
}

/* Management analytics summary. */
.management-economics{display:grid;gap:10px;margin-bottom:12px;}
.management-economics-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.management-economics-head h2{margin:3px 0 5px;}
.management-economics-head p{margin:0;color:var(--muted);max-width:760px;}
.management-economics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
.management-economics-grid article{padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);}
.management-economics-grid span,.management-economics-flow span{display:block;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;}
.management-economics-grid strong{display:block;margin-top:4px;font-size:22px;line-height:1.05;}
.management-economics-grid small{display:block;margin-top:5px;color:var(--muted);font-size:10.5px;line-height:1.3;}
.management-economics-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.management-economics-flow>div{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.025);}
.management-economics-flow strong{display:block;margin-top:4px;font-size:17px;}
.management-economics-actions{display:flex;flex-wrap:wrap;gap:8px;}
@media(max-width:900px){.management-economics-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.management-economics-flow{grid-template-columns:1fr;}}

/* RC22.69 — Owner Intelligence: dense, calm management layer. */
.owner-intel-hero,.owner-intel-assistant{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--panel);margin-bottom:16px}.owner-intel-hero h2,.owner-intel-assistant h2{margin:4px 0 6px}.owner-intel-hero p,.owner-intel-assistant p{margin:0;color:var(--muted)}.owner-intel-status{display:grid;grid-template-columns:auto auto;gap:2px 10px;align-items:baseline;min-width:150px}.owner-intel-status strong{font-size:24px}.owner-intel-status span{color:var(--muted);font-size:12px}.owner-intel-alerts{display:grid;gap:8px;margin-bottom:16px}.owner-intel-alert{width:100%;border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:12px 14px;display:grid;grid-template-columns:8px 1fr auto;gap:12px;align-items:center;text-align:left}.owner-intel-alert i{width:8px;height:8px;border-radius:50%;background:currentColor}.owner-intel-alert span{display:grid;gap:3px}.owner-intel-alert small{color:var(--muted);font-weight:500}.owner-intel-alert em{font-style:normal}.owner-intel-alert.danger{color:#b5362d}.owner-intel-alert.warning{color:#a56700}.owner-intel-alert.good{color:#207a4a}.owner-intel-alert.info{color:inherit}.owner-intel-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.owner-intel-kpis article{border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:14px;display:grid;gap:4px}.owner-intel-kpis span{font-size:12px;color:var(--muted)}.owner-intel-kpis strong{font-size:20px}.owner-intel-kpis small{font-size:11px;color:var(--muted)}.owner-intel-assistant{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1.4fr);align-items:center}.owner-ai-actions{display:flex;flex-wrap:wrap;gap:8px}.owner-ai-answer{grid-column:1/-1;border-top:1px solid var(--line);padding-top:14px;line-height:1.55}.owner-intel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.owner-intel-panel{min-width:0}.owner-intel-summary{display:flex;flex-wrap:wrap;gap:8px 18px;margin:8px 0 12px;font-size:13px}.owner-intel-summary span{color:var(--muted)}.owner-intel-summary strong{color:var(--text)}.owner-intel-prep,.owner-intel-kitchen{display:grid;gap:7px}.owner-intel-prep-row,.owner-intel-kitchen-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:8px 0}.owner-intel-prep-row span{display:flex;align-items:center;gap:10px;min-width:0}.owner-intel-prep-row b{font-size:11px;min-width:34px;color:var(--muted)}.owner-intel-prep-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.owner-intel-prep-row em{font-style:normal;font-weight:700;white-space:nowrap}.owner-intel-kitchen-row span,.owner-intel-kitchen-row small{color:var(--muted)}.owner-intel-peaks{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.owner-intel-peaks span,.owner-menu-class{border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:11px}.owner-intel-wide{margin-bottom:14px}.owner-intel-panel .table.compact th,.owner-intel-panel .table.compact td{padding:8px 7px}.owner-intel-panel td small{display:block;color:var(--muted);margin-top:2px}.owner-labor-base{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding:10px 0 14px;margin-bottom:12px}.owner-labor-base span{color:var(--muted)}.owner-labor-base strong{font-size:24px}.owner-labor-simulator{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end}.owner-labor-simulator label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.owner-labor-simulator input{width:100%}.owner-labor-result{display:grid;gap:5px;margin-top:12px;padding:12px;border-radius:12px;background:var(--soft);line-height:1.4}.owner-labor-result span{display:flex;justify-content:space-between;gap:10px}.owner-labor-result small{color:var(--muted)}.negative{color:#b5362d!important}.positive{color:#207a4a!important}
@media(max-width:1100px){.owner-intel-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.owner-intel-grid{grid-template-columns:1fr}.owner-intel-assistant{grid-template-columns:1fr}.owner-labor-simulator{grid-template-columns:1fr 1fr}.owner-labor-simulator button{grid-column:1/-1}}
@media(max-width:700px){.owner-intel-hero{display:grid}.owner-intel-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-intel-kpis article:last-child{grid-column:1/-1}.owner-intel-assistant{padding:18px}.owner-ai-actions{display:grid;grid-template-columns:1fr 1fr}.owner-labor-simulator{grid-template-columns:1fr}.owner-labor-simulator button{grid-column:auto}}

/* RC22.70 — live trend forecast controls */
.owner-live-stamp{display:block;margin-top:8px;font-size:12px;color:var(--muted)}
.owner-live-stamp::first-letter{color:var(--green)}
.owner-forecast-switch{display:flex;gap:6px;margin:10px 0 12px;flex-wrap:wrap}
.owner-forecast-switch button{min-width:58px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:transparent;color:inherit;font-weight:800}
.owner-forecast-switch button.active{background:var(--text);color:var(--surface);border-color:var(--text)}
.owner-production-plan{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.owner-production-plan summary{cursor:pointer;font-weight:850}
.owner-production-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:10px}
.owner-production-grid>div{display:grid;gap:6px}
.owner-production-grid span{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--line)}
.owner-production-grid em{font-style:normal;color:var(--muted);white-space:nowrap}
.owner-demand-list{display:grid;gap:7px;margin:8px 0 14px}
.owner-demand-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:9px 0;border-bottom:1px solid var(--line);align-items:center}
.owner-demand-row span{display:grid}.owner-demand-row small{color:var(--muted)}
.owner-demand-row em{font-style:normal;font-weight:850}.owner-demand-row b{grid-column:1/-1;font-size:12px;color:var(--muted);font-weight:700}
@media(max-width:720px){.owner-production-grid{grid-template-columns:1fr}.owner-demand-row{grid-template-columns:minmax(0,1fr) auto}}

/* RC22.73 — faster tablet checkout: people inline, preorder shortcut, prepayment */
.checkout-persons-step {
  grid-template-columns:minmax(220px,.62fr) minmax(0,1.38fr);
  max-width:860px;
  align-items:center;
}
.checkout-persons-summary { min-width:0; display:grid; gap:10px; }
.checkout-persons-summary .checkout-persons-display { min-height:154px; }
.checkout-persons-keypad { min-width:0; display:grid; gap:9px; align-content:center; }
.checkout-persons-number-row {
  min-width:0;
  display:grid;
  grid-template-columns:repeat(10,minmax(0,1fr));
  gap:6px;
}
.checkout-persons-number-row button,
.checkout-persons-command-row button {
  min-width:0;
  min-height:58px;
  padding:7px 4px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--panel-2);
  color:var(--text);
  font-size:22px;
  font-weight:950;
}
.checkout-persons-number-row button:hover,
.checkout-persons-number-row button:focus-visible,
.checkout-persons-command-row button:hover,
.checkout-persons-command-row button:focus-visible { border-color:var(--gold); background:rgba(214,173,92,.12); }
.checkout-persons-command-row { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.checkout-persons-command-row button { min-height:45px; color:var(--muted); font-size:14px; }
.checkout-preorder-now { min-width:190px; display:grid; gap:2px; place-items:center; text-align:center; }
.checkout-preorder-now b { font-size:14px; }
.checkout-preorder-now small { font-size:10px; }
.wizard-custom-time-note { color:var(--muted); font-size:12px; font-weight:800; text-align:center; }
.checkout-payment-quick {
  display:grid;
  gap:9px;
  padding:11px 12px;
  border:1px solid rgba(214,173,92,.32);
  border-radius:14px;
  background:rgba(214,173,92,.045);
}
.checkout-payment-quick-head { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.checkout-payment-quick-head > div { min-width:0; display:grid; gap:2px; }
.checkout-payment-quick-head span { color:var(--gold-light); font-size:10px; font-weight:950; letter-spacing:.09em; }
.checkout-payment-quick-head strong { font-size:15px; }
.checkout-payment-quick-head > small { max-width:430px; color:var(--muted); font-size:11px; line-height:1.3; text-align:right; }
.checkout-payment-choice-row { display:flex; gap:7px; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; padding-bottom:1px; }
.checkout-payment-choice {
  flex:1 0 128px;
  min-height:52px;
  display:grid;
  gap:2px;
  align-content:center;
  padding:7px 10px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--panel-2);
  color:var(--text);
  text-align:left;
}
.checkout-payment-choice strong { font-size:14px; }
.checkout-payment-choice small { color:var(--muted); font-size:10px; font-weight:750; }
.checkout-payment-choice.active { border-color:var(--gold); background:rgba(214,173,92,.15); box-shadow:inset 0 0 0 1px var(--gold); }

@media (max-width:820px) {
  .checkout-persons-step { grid-template-columns:minmax(190px,.52fr) minmax(0,1.48fr); gap:13px; }
  .checkout-persons-number-row { gap:4px; }
  .checkout-persons-number-row button { min-height:52px; font-size:20px; }
  .checkout-persons-summary .checkout-persons-display { min-height:128px; }
}

@media (max-width:640px) {
  .checkout-persons-step { grid-template-columns:1fr; }
  .checkout-persons-summary { grid-template-columns:minmax(150px,.7fr) minmax(0,1.3fr); align-items:stretch; }
  .checkout-persons-summary .checkout-persons-display { min-height:92px; }
  .checkout-persons-number-row { grid-template-columns:repeat(10,minmax(0,1fr)); gap:3px; }
  .checkout-persons-number-row button { min-height:46px; padding-inline:1px; font-size:17px; border-radius:9px; }
  .checkout-persons-command-row button { min-height:40px; }
  .checkout-payment-quick-head { align-items:flex-start; flex-direction:column; gap:3px; }
  .checkout-payment-quick-head > small { max-width:none; text-align:left; }
  .checkout-order-kind-strip.normal { align-items:stretch; }
  .checkout-preorder-now { width:100%; min-width:0; }
}

@media (orientation:landscape) and (min-width:700px) and (max-width:1100px) and (max-height:700px) {
  .checkout-persons-step { grid-template-columns:minmax(175px,.48fr) minmax(0,1.52fr); max-width:820px; gap:12px; }
  .checkout-persons-summary { grid-template-columns:1fr; gap:6px; }
  .checkout-persons-summary .checkout-persons-display { min-height:112px; }
  .checkout-persons-display strong { font-size:56px; }
  .checkout-persons-number-row button { min-height:43px; font-size:18px; }
  .checkout-persons-command-row button { min-height:37px; }
  .checkout-payment-quick { padding:7px 9px; gap:6px; }
  .checkout-payment-choice { min-height:43px; }
}


/* RC22.78 — stable visual channel cues. Channel colour never doubles as payment colour. */
.source-channel-choice,.order-channel-choice { position:relative; padding-left:64px; }
.channel-choice-mark {
  position:absolute; left:17px; top:50%; transform:translateY(-50%);
  width:34px; height:34px; display:grid; place-items:center; border-radius:11px;
  border:1px solid var(--line); background:rgba(255,255,255,.055); color:var(--text);
  font-size:16px; font-weight:950; font-style:normal;
}
.source-channel-choice.channel-wolt .channel-choice-mark { background:rgba(0,194,232,.18); border-color:rgba(0,194,232,.52); color:#8eeaff; }
.source-channel-choice.channel-bolt .channel-choice-mark { background:rgba(52,211,89,.16); border-color:rgba(52,211,89,.50); color:#a8f5b9; }
.order-channel-choice.channel-own-delivery .channel-choice-mark { background:rgba(245,158,11,.16); border-color:rgba(245,158,11,.54); color:#ffd68a; }
.source-channel-choice.channel-wolt.active { border-color:#20c5e8; background:rgba(0,194,232,.11); box-shadow:0 0 0 3px rgba(0,194,232,.075); }
.source-channel-choice.channel-bolt.active { border-color:#55d66f; background:rgba(52,211,89,.10); box-shadow:0 0 0 3px rgba(52,211,89,.065); }
.order-channel-choice.channel-own-delivery.active { border-color:#f3a928; background:rgba(245,158,11,.11); box-shadow:0 0 0 3px rgba(245,158,11,.065); }
.channel-choice-legend { margin-top:10px; display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; color:var(--muted); font-size:11px; font-weight:800; }
.channel-choice-legend > span { display:inline-flex; align-items:center; gap:6px; }
.channel-choice-legend > small { margin-left:auto; color:var(--muted); font-size:10px; }
.channel-dot { width:9px; height:9px; border-radius:999px; display:inline-block; background:var(--line); }
.channel-dot.wolt { background:#20c5e8; }
.channel-dot.bolt { background:#55d66f; }
.channel-dot.own-delivery { background:#f3a928; }
.ticket-number-channel-row { display:flex; align-items:center; flex-wrap:wrap; gap:8px; min-width:0; }
.order-channel-badge { display:inline-flex; align-items:center; gap:6px; min-height:28px; padding:3px 9px 3px 4px; border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.045); color:var(--muted); white-space:nowrap; }
.order-channel-badge i { width:21px; height:21px; display:grid; place-items:center; border-radius:999px; background:rgba(255,255,255,.065); color:var(--text); font-size:10px; font-weight:950; font-style:normal; }
.order-channel-badge b { font-size:10px; font-weight:950; letter-spacing:.02em; }
.order-channel-badge.wolt { border-color:rgba(32,197,232,.55); background:rgba(0,194,232,.10); color:#9aeaff; }
.order-channel-badge.wolt i { background:rgba(0,194,232,.22); color:#d8f8ff; }
.order-channel-badge.bolt { border-color:rgba(85,214,111,.52); background:rgba(52,211,89,.09); color:#baf5c5; }
.order-channel-badge.bolt i { background:rgba(52,211,89,.20); color:#e0ffe6; }
.order-channel-badge.own-delivery { border-color:rgba(243,169,40,.58); background:rgba(245,158,11,.10); color:#ffd895; }
.order-channel-badge.own-delivery i { background:rgba(245,158,11,.20); }
.order-channel-badge.internal { border-color:rgba(188,156,255,.48); background:rgba(139,92,246,.09); color:#d7c7ff; }
.ticket.channel-wolt { box-shadow:inset 3px 0 0 rgba(32,197,232,.72); }
.ticket.channel-bolt { box-shadow:inset 3px 0 0 rgba(85,214,111,.72); }
.ticket.channel-own-delivery { box-shadow:inset 3px 0 0 rgba(243,169,40,.78); }
.ticket.channel-internal { box-shadow:inset 3px 0 0 rgba(167,139,250,.62); }
.queue-filter-chip.platform.wolt.active { border-color:#20c5e8; color:#a6edfb; background:rgba(0,194,232,.11); }
.queue-filter-chip.platform.bolt.active { border-color:#55d66f; color:#bcf5c7; background:rgba(52,211,89,.10); }
.queue-filter-chip.delivery.active { border-color:#f3a928; color:#ffd895; background:rgba(245,158,11,.11); }
@media (max-width:640px) {
  .source-channel-choice,.order-channel-choice { padding-left:54px; }
  .channel-choice-mark { left:12px; width:31px; height:31px; }
  .channel-choice-legend > small { width:100%; margin-left:0; }
  .order-channel-badge b { font-size:9px; }
}

/* RC22.79 — owner day review: one obvious order editor for items + payment. */
.report-order-owner-edit{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px 18px;border-top:1px solid var(--line);background:rgba(217,173,38,.045)}
.report-order-owner-edit button{min-width:220px}
.report-order-owner-edit small{color:var(--muted);line-height:1.35;text-align:right}
.owner-day-review-finance-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.owner-day-review-edit-modal .fulfillment-correction-body{max-height:min(68vh,720px);overflow:auto}
@media(max-width:720px){.report-order-owner-edit{align-items:stretch;flex-direction:column}.report-order-owner-edit button{width:100%;min-width:0}.report-order-owner-edit small{text-align:left}.owner-day-review-finance-grid{grid-template-columns:1fr}}


/* RC22.80 — admin basket CTA must never disappear under the bottom POS navigation. */
@media (min-width:821px) {
  .role-admin.view-new > .main {
    height:100dvh;
    display:flex;
    flex-direction:column;
    overflow:hidden;
  }
  .role-admin.view-new > .main > .view-content {
    flex:1 1 auto;
    min-height:0;
    display:flex;
    flex-direction:column;
    overflow:hidden;
  }
  .role-admin.view-new .order-mode-toolbar { flex:0 0 auto; }
  .role-admin.view-new .order-workspace.pos-stage-one {
    flex:1 1 auto;
    height:auto !important;
    min-height:0 !important;
    overflow:hidden;
  }
  .role-admin.view-new .pos-stage-one > .cart-stage-one {
    height:100% !important;
    min-height:0 !important;
    max-height:100% !important;
    overflow:hidden;
  }
  .role-admin.view-new .cart-stage-one .cart-items {
    flex:1 1 auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow-y:auto !important;
    overscroll-behavior:contain;
  }
  .role-admin.view-new .cart-stage-footer {
    position:relative !important;
    inset:auto !important;
    flex:0 0 auto;
    z-index:3;
  }
}

/* Portrait / narrow tablet: CTA is a viewport control, always directly above POS navigation. */
@media (max-width:820px) and (orientation:portrait) {
  .role-admin.view-new > .main {
    padding-bottom:calc(168px + env(safe-area-inset-bottom)) !important;
  }
  .role-admin.view-new .cart-stage-footer {
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:calc(67px + env(safe-area-inset-bottom)) !important;
    z-index:79 !important;
    margin:0 !important;
    padding:8px 10px 10px !important;
    border-radius:0 !important;
    border-top:1px solid var(--line);
    background:var(--panel-2);
    box-shadow:0 -10px 24px rgba(0,0,0,.28);
  }
  .role-admin.view-new .cart-stage-total { margin-bottom:6px; }
  .role-admin.view-new .cart-next-button { min-height:50px; }
}

/* Compact landscape tablet: keep the CTA inside the cart column, but pin it to that column's bottom. */
@media (orientation:landscape) and (min-width:700px) and (max-width:820px) and (max-height:700px) {
  .role-admin.view-new .order-workspace.pos-stage-one {
    height:calc(100dvh - 215px) !important;
    min-height:0 !important;
    overflow:hidden;
  }
  .role-admin.view-new .pos-stage-one > .cart-stage-one {
    height:100% !important;
    min-height:0 !important;
    max-height:100% !important;
    overflow:hidden !important;
    display:flex;
    flex-direction:column;
  }
  .role-admin.view-new .cart-stage-one .cart-items {
    flex:1 1 auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow-y:auto !important;
    overscroll-behavior:contain;
  }
  .role-admin.view-new .cart-stage-footer {
    position:sticky !important;
    left:auto !important;
    right:auto !important;
    bottom:0 !important;
    z-index:24 !important;
    flex:0 0 auto;
    box-shadow:0 -8px 18px rgba(0,0,0,.20);
  }
}

/* RC22.81 — minimal workplace header + orange tools menu + quick inter-branch transfer */
.role-admin .keeper-more-button,
.role-kitchen .keeper-more-button {
  min-width:44px;
  width:44px;
  min-height:38px;
  padding:3px 9px;
  border-color:#d97819;
  background:#e88725;
  color:#17120d;
  box-shadow:0 4px 14px rgba(232,135,37,.22);
}
.role-admin .keeper-more-button:hover,
.role-kitchen .keeper-more-button:hover { background:#f19a3e; border-color:#ef9b42; }
html[data-admin-theme="pos"] .role-admin .keeper-more-button,
html[data-admin-theme="pos"] .role-kitchen .keeper-more-button,
html[data-admin-theme="light"] .role-admin .keeper-more-button,
html[data-admin-theme="light"] .role-kitchen .keeper-more-button {
  background:#e88725;
  border-color:#d97819;
  color:#26180b;
}
.keeper-more-modal { width:min(920px,calc(100vw - 20px)); }
.keeper-more-scroll { display:grid; gap:14px; padding:4px 2px 10px; }
.keeper-more-action-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.keeper-tool-card {
  width:100%; min-height:76px; display:grid; grid-template-columns:42px minmax(0,1fr) 20px; align-items:center; gap:10px;
  text-align:left; border:1px solid var(--line); border-radius:14px; background:var(--panel); color:inherit; padding:12px 14px;
}
.keeper-tool-card b { width:38px; height:38px; display:grid; place-items:center; border-radius:11px; background:rgba(232,135,37,.14); color:#e88725; font-size:22px; }
.keeper-tool-card span { display:grid; gap:3px; min-width:0; }
.keeper-tool-card strong { font-size:15px; }
.keeper-tool-card small { color:var(--muted); line-height:1.25; }
.keeper-tool-card em { font-style:normal; color:#e88725; font-size:20px; }
.keeper-more-section { border:1px solid var(--line); border-radius:14px; padding:12px; background:var(--panel-soft,rgba(255,255,255,.025)); }
.keeper-more-section-head { display:flex; justify-content:space-between; gap:12px; margin-bottom:9px; }
.keeper-more-section-head > div { display:grid; gap:2px; }
.keeper-more-section-head strong { font-size:14px; }
.keeper-more-section-head small { color:var(--muted); }
.workplace-ui-controls { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.workplace-ui-controls .admin-language-control,
.workplace-ui-controls .admin-theme-control,
.workplace-ui-controls .ui-scale-control { margin:0; }
.workplace-transfer-modal { width:min(900px,calc(100vw - 20px)); max-height:calc(100dvh - 22px); display:flex; flex-direction:column; overflow:hidden; }
.workplace-transfer-toolbar { display:grid; grid-template-columns:minmax(190px,1fr) minmax(160px,.7fr) minmax(220px,1.2fr); gap:10px; padding:12px 16px; border-bottom:1px solid var(--line); }
.workplace-transfer-toolbar label,.workplace-transfer-footer label { display:grid; gap:5px; min-width:0; }
.workplace-transfer-toolbar label > span,.workplace-transfer-footer label > span { font-size:12px; font-weight:800; color:var(--muted); }
.workplace-transfer-toolbar select,.workplace-transfer-toolbar input,.workplace-transfer-footer input { width:100%; }
.workplace-transfer-list { min-height:180px; overflow-y:auto; display:grid; align-content:start; gap:6px; padding:10px 16px; }
.workplace-transfer-row { display:grid; grid-template-columns:minmax(0,1fr) 120px; align-items:center; gap:12px; padding:8px 10px; border:1px solid var(--line); border-radius:11px; background:var(--panel); }
.workplace-transfer-row[hidden] { display:none !important; }
.workplace-transfer-row > span { min-width:0; display:grid; gap:2px; }
.workplace-transfer-row strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.workplace-transfer-row small { color:var(--muted); }
.workplace-transfer-row input { width:100%; text-align:center; font-weight:800; }
.workplace-transfer-footer { border-top:1px solid var(--line); padding:12px 16px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:end; }
@media (max-width:760px) {
  .keeper-more-action-grid { grid-template-columns:1fr; }
  .workplace-transfer-toolbar { grid-template-columns:1fr 1fr; }
  .workplace-transfer-search { grid-column:1 / -1; }
  .workplace-transfer-footer { grid-template-columns:1fr; }
}
@media (max-width:520px) {
  .workplace-transfer-toolbar { grid-template-columns:1fr; }
  .workplace-transfer-search { grid-column:auto; }
  .workplace-transfer-row { grid-template-columns:minmax(0,1fr) 96px; }
}

/* RC22.83 — portrait tap safety: fixed admin docks must never cover menu categories.
   Reserve the actual CTA area in layout and let only real controls capture taps. */
@media (max-width:820px) and (orientation:portrait) {
  .role-admin.view-new {
    --admin-pos-nav-h:67px;
    --admin-cart-cta-h:108px;
  }
  .role-admin.view-new > .main {
    height:100dvh!important;
    min-height:0!important;
    padding-bottom:calc(var(--admin-pos-nav-h) + var(--admin-cart-cta-h) + env(safe-area-inset-bottom))!important;
    overflow:hidden!important;
  }
  .role-admin.view-new > .main > .view-content {
    flex:1 1 auto!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .role-admin.view-new .order-mode-toolbar {
    flex:0 0 auto!important;
  }
  .role-admin.view-new .order-workspace.pos-stage-one {
    flex:1 1 auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    grid-template-rows:minmax(225px,36%) minmax(0,1fr)!important;
    overflow:hidden!important;
    padding-bottom:0!important;
  }
  .role-admin.view-new .pos-stage-one > .menu-panel {
    min-height:0!important;
    overflow:hidden!important;
  }
  .role-admin.view-new .pos-stage-one .menu-grid {
    min-height:0!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
    padding:2px 2px 18px!important;
    scroll-padding-bottom:22px;
  }
  .role-admin.view-new .menu-category-tile {
    position:relative;
    z-index:1;
    min-height:118px;
    touch-action:manipulation;
    pointer-events:auto!important;
  }
  .role-admin.view-new .cart-stage-footer {
    bottom:calc(var(--admin-pos-nav-h) + env(safe-area-inset-bottom))!important;
    min-height:var(--admin-cart-cta-h);
    pointer-events:none;
  }
  .role-admin.view-new .cart-stage-footer .cart-next-button {
    pointer-events:auto;
  }
  .role-admin.view-new .admin-pos-nav {
    min-height:var(--admin-pos-nav-h);
  }
}

/* RC22.84 — menu-first admin workspace.
   Portrait: the basket is a compact control, menu owns the screen.
   Landscape: basket and menu have independent scroll areas; the page itself never needs dragging. */
.portrait-cart-trigger,.portrait-vip-toggle{display:none;}

@media (orientation:portrait) and (max-width:1366px){
  .role-admin.view-new{
    --admin-pos-nav-h:67px;
  }
  .role-admin.view-new > .main{
    height:100dvh!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    padding-bottom:calc(var(--admin-pos-nav-h) + env(safe-area-inset-bottom))!important;
  }
  .role-admin.view-new > .main > .view-content{
    flex:1 1 auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  .role-admin.view-new .order-mode-toolbar{
    flex:0 0 auto!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    gap:7px!important;
    margin:0 0 7px!important;
    align-items:stretch!important;
  }
  .role-admin.view-new .order-mode-toolbar .order-mode-preorder{
    width:100%!important;
    min-width:0!important;
    min-height:52px!important;
    padding:7px 10px!important;
  }
  .role-admin.view-new .order-mode-toolbar .order-mode-preorder small{
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .role-admin.view-new .portrait-cart-trigger,
  .role-admin.view-new .portrait-vip-toggle{
    display:grid!important;
    align-content:center;
    justify-items:start;
    min-width:132px;
    min-height:52px;
    padding:7px 11px;
    border:1px solid var(--line);
    border-radius:11px;
    background:var(--panel);
    color:var(--text);
    text-align:left;
  }
  .role-admin.view-new .portrait-cart-trigger.has-items{
    border-color:var(--gold);
    background:color-mix(in srgb,var(--gold) 12%,var(--panel));
  }
  .role-admin.view-new .portrait-cart-trigger b,
  .role-admin.view-new .portrait-vip-toggle b{font-size:13px;font-weight:950;white-space:nowrap;}
  .role-admin.view-new .portrait-cart-trigger small,
  .role-admin.view-new .portrait-vip-toggle small{margin-top:2px;color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap;}
  .role-admin.view-new .portrait-vip-toggle.active{
    border-color:#ff4f5e;
    background:rgba(224,54,68,.12);
  }
  .role-admin.view-new .portrait-vip-toggle.active b{color:#ff7a85;}

  .role-admin.view-new .order-workspace.pos-stage-one{
    flex:1 1 auto!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    padding:0!important;
  }
  .role-admin.view-new .pos-stage-one > .cart-stage-one{
    display:none!important;
  }
  .role-admin.view-new .pos-stage-one > .menu-panel{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    overflow:hidden!important;
    padding:8px!important;
  }
  .role-admin.view-new .pos-stage-one .menu-tools-sticky{
    flex:0 0 auto!important;
    position:relative!important;
    top:auto!important;
    margin:0 0 6px!important;
    padding:4px!important;
  }
  .role-admin.view-new .pos-stage-one .menu-grid{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    padding:2px 2px 28px!important;
    scroll-padding-bottom:28px!important;
  }
  .role-admin.view-new .pos-stage-one .menu-category-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    align-content:start!important;
  }
  .role-admin.view-new .menu-category-tile{
    min-height:112px!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
  .role-admin.view-new .floating-cart-button{display:none!important;}
  .role-admin.view-new .cart-stage-footer{display:none!important;}
}

@media (orientation:portrait) and (max-width:760px){
  .role-admin.view-new .order-mode-toolbar{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  .role-admin.view-new .portrait-vip-toggle{
    grid-column:1 / -1;
    grid-row:2;
    min-height:44px;
  }
  .role-admin.view-new .portrait-cart-trigger{min-width:118px;}
  .role-admin.view-new .pos-stage-one .menu-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

@media (orientation:landscape) and (min-width:700px){
  .role-admin.view-new > .main{
    height:100dvh!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  .role-admin.view-new > .main > .view-content{
    flex:1 1 auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  .role-admin.view-new .order-mode-toolbar{flex:0 0 auto!important;}
  .role-admin.view-new .order-workspace.pos-stage-one{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    overflow:hidden!important;
    align-items:stretch!important;
  }
  .role-admin.view-new .pos-stage-one > .cart-stage-one,
  .role-admin.view-new .pos-stage-one > .menu-panel{
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    overflow:hidden!important;
  }
  .role-admin.view-new .cart-stage-one .cart-items,
  .role-admin.view-new .pos-stage-one .menu-grid{
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
  }
  .role-admin.view-new .pos-stage-one .menu-grid{padding-bottom:24px!important;scroll-padding-bottom:24px!important;}
  .role-admin.view-new .cart-stage-footer{position:static!important;display:block!important;flex:0 0 auto!important;}
}


/* RC22.85 — large touch-first wheel picker for readiness lead time. */
.lead-time-wheel-picker{
  position:relative;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  width:min(720px,100%);
  margin:0 auto;
  padding:0 6px;
}
.lead-wheel-column{
  display:grid;
  gap:8px;
  min-width:0;
}
.lead-wheel-column > span{
  color:var(--muted);
  font-size:13px;
  font-weight:950;
  letter-spacing:.04em;
  text-align:center;
  text-transform:uppercase;
}
.lead-wheel{
  height:286px;
  overflow-y:auto;
  overflow-x:hidden;
  scroll-snap-type:y mandatory;
  overscroll-behavior-y:contain;
  touch-action:pan-y;
  scrollbar-width:none;
  border:1px solid var(--line);
  border-radius:18px;
  background:color-mix(in srgb,var(--panel) 96%,var(--gold) 4%);
  box-shadow:inset 0 12px 24px rgba(0,0,0,.08),inset 0 -12px 24px rgba(0,0,0,.08);
  -webkit-overflow-scrolling:touch;
}
.lead-wheel::-webkit-scrollbar{display:none;}
.lead-wheel-spacer{
  display:block;
  height:104px;
  pointer-events:none;
}
.lead-wheel-item{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  width:100%;
  height:78px;
  padding:0 10px;
  border:0;
  border-radius:14px;
  background:transparent;
  color:var(--muted);
  scroll-snap-align:center;
  scroll-snap-stop:always;
  opacity:.48;
  transform:scale(.88);
  transition:opacity .12s ease,transform .12s ease,background .12s ease,color .12s ease;
}
.lead-wheel-item strong{
  font-size:38px;
  line-height:1;
  font-weight:950;
  font-variant-numeric:tabular-nums;
}
.lead-wheel-item small{
  font-size:15px;
  font-weight:900;
}
.lead-wheel-item.selected{
  background:color-mix(in srgb,var(--gold) 22%,transparent);
  color:var(--text);
  opacity:1;
  transform:scale(1);
  box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--gold) 76%,transparent);
}
.lead-wheel-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  width:min(720px,100%);
  margin:0 auto;
  padding:13px 16px;
  border:1px solid color-mix(in srgb,var(--gold) 48%,var(--line));
  border-radius:15px;
  background:color-mix(in srgb,var(--gold) 10%,var(--panel));
}
.lead-wheel-summary span{
  font-size:18px;
  font-weight:900;
}
.lead-wheel-summary strong{
  color:var(--gold-light);
  font-size:26px;
  font-weight:950;
  font-variant-numeric:tabular-nums;
}
@media (orientation:portrait) and (max-width:900px){
  .lead-time-wheel-picker{gap:10px;}
  .lead-wheel{height:260px;border-radius:15px;}
  .lead-wheel-spacer{height:91px;}
  .lead-wheel-item{height:78px;}
  .lead-wheel-item strong{font-size:34px;}
  .lead-wheel-summary{padding:11px 13px;}
  .lead-wheel-summary span{font-size:15px;}
  .lead-wheel-summary strong{font-size:22px;}
}
\n\n/* RC22.89 — add-to-existing visibility, changed-order attention, aligned time wheels. */\n.add-items-workspace{grid-template-columns:minmax(0,1fr) 430px;}\n.add-items-cart-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 8px;padding:8px 2px;color:var(--text);}\n.add-items-cart-heading strong{font-size:18px;font-weight:950;}\n.add-items-cart-heading span{min-width:54px;text-align:center;padding:6px 9px;border-radius:999px;background:rgba(214,173,92,.14);color:var(--gold-light);font-size:14px;font-weight:950;}\n.add-modal-cart-lines{flex:1 1 320px;min-height:260px;max-height:none;margin:0 0 12px;padding:8px 5px 10px 2px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}\n.add-modal-cart-lines .configured-cart-line{padding:13px 0;}\n.add-modal-cart-lines .configured-cart-line strong{font-size:15px;}\n.add-modal-cart-lines .qty button{width:38px;height:38px;font-size:20px;}\n.add-modal-cart-lines .qty b{min-width:34px;font-size:18px;}\n.order-change-alert{display:grid;gap:4px;margin:8px 0 10px;padding:11px 12px;border:2px solid #ef8d32;border-radius:12px;background:rgba(239,141,50,.14);box-shadow:0 0 0 1px rgba(239,141,50,.12) inset;}\n.order-change-alert strong{color:#ffb462;font-size:15px;font-weight:1000;letter-spacing:.035em;}\n.order-change-alert span{color:var(--text);font-size:13px;font-weight:850;line-height:1.4;}\n.kitchen-position.admin-added-position{border-color:#ef8d32!important;box-shadow:inset 4px 0 0 #ef8d32;}\n.admin-added-line-label{display:block!important;width:max-content;max-width:100%;margin-top:6px;padding:4px 7px;border-radius:7px;background:#ef8d32;color:#21160d!important;font-size:11px!important;font-weight:1000!important;letter-spacing:.035em;}\n.pass-change-alert{margin:10px 12px 0;}\n.lead-time-wheel-picker{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:start!important;gap:14px!important;width:min(760px,100%)!important;}\n.lead-wheel-column{grid-template-rows:auto 286px!important;align-self:start!important;}\n.lead-wheel-column>span{min-height:42px;display:grid;place-items:center;color:var(--text)!important;font-size:24px!important;font-weight:1000!important;letter-spacing:.02em!important;text-transform:none!important;}\n.lead-wheel{width:100%!important;height:286px!important;}\n.lead-wheel-item strong{font-size:42px!important;}\n.lead-wheel-item small{font-size:18px!important;font-weight:950!important;}\n@media(max-width:820px){\n  .add-items-workspace{grid-template-columns:1fr;}\n  .add-items-cart-panel{min-height:650px;}\n  .add-modal-cart-lines{min-height:280px;max-height:none;}\n  .lead-time-wheel-picker{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important;}\n  .lead-wheel-column{grid-template-rows:auto 260px!important;}\n  .lead-wheel-column>span{font-size:21px!important;min-height:38px;}\n  .lead-wheel{height:260px!important;}\n  .lead-wheel-item strong{font-size:38px!important;}\n  .lead-wheel-item small{font-size:16px!important;}\n}\n
/* RC22.89 — special price before order creation */
.checkout-manual-price-button { flex:0 0 auto; min-height:42px; padding:8px 14px; font-weight:900; }
.checkout-manual-price-active { margin-top:2px; display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.checkout-review-price-button { margin-left:auto; min-height:42px; font-weight:900; }
.checkout-manual-price-reason { flex-basis:100%; text-align:right; }
.cart-manual-price-summary { color:#ffbd69 !important; font-weight:900; }
.manual-price-line { outline:1px solid rgba(255,176,82,.45); outline-offset:-1px; }
.checkout-price-modal .emergency-price-table input { min-width:120px; font-size:20px; font-weight:900; }
@media (max-width: 760px), (orientation: portrait) {
  .checkout-payment-quick-head { align-items:stretch; }
  .checkout-manual-price-button { width:100%; }
  .checkout-review-price-button { width:100%; margin-left:0; }
  .checkout-manual-price-reason { text-align:left; }
}

/* RC22.90 — split tender: one receipt can be paid by two methods. */
.checkout-payment-choice.split-payment-choice,
.issue-split-payment-button {
  border-style: dashed;
}
.checkout-payment-choice.split-payment-choice.active,
.issue-split-payment-button.active {
  border-style: solid;
  box-shadow: 0 0 0 3px rgba(255, 166, 0, .18);
}
.issue-split-payment-button {
  width: 100%;
  min-height: 72px;
  margin-top: 12px;
  border: 2px dashed var(--line, #d8dde6);
  border-radius: 16px;
  background: var(--panel, #fff);
  color: inherit;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 18px;
  text-align: left;
  cursor: pointer;
}
.issue-split-payment-button strong { font-size: 18px; }
.issue-split-payment-button small { font-size: 15px; text-align: right; opacity: .82; }
.split-payment-modal { width: min(820px, calc(100vw - 28px)); max-height: min(760px, calc(100dvh - 28px)); }
.split-payment-body { padding: 20px; overflow: auto; }
.split-payment-half { min-height: 52px; padding-inline: 24px; font-weight: 800; }
.split-payment-columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 54px minmax(0, 1fr);
  align-items: stretch;
  gap: 12px;
  margin-top: 16px;
}
.split-payment-part {
  display: grid;
  gap: 10px;
  align-content: start;
  padding: 18px;
  border: 2px solid var(--line, #d8dde6);
  border-radius: 18px;
  background: var(--panel-soft, rgba(127,127,127,.06));
}
.split-payment-part > span { font-size: 14px; font-weight: 900; letter-spacing: .08em; opacity: .72; }
.split-payment-part select,
.split-payment-part input {
  width: 100%;
  min-height: 58px;
  border-radius: 14px;
  font-size: 20px;
  font-weight: 800;
  padding: 10px 14px;
}
.split-payment-part > strong { font-size: clamp(27px, 4vw, 42px); line-height: 1; }
.split-payment-part > small { font-size: 14px; opacity: .72; }
.split-payment-remainder { min-height: 58px; display: flex; align-items: center; }
.split-payment-plus { display: grid; place-items: center; font-size: 38px; font-weight: 900; }
.split-payment-check {
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: 14px;
  font-weight: 800;
  font-size: 16px;
}
.split-payment-check.good { background: rgba(32, 166, 91, .12); }
.split-payment-check.warning { background: rgba(232, 153, 24, .14); }
@media (max-width: 700px), (orientation: portrait) and (max-width: 900px) {
  .split-payment-columns { grid-template-columns: 1fr; }
  .split-payment-plus { min-height: 24px; font-size: 28px; }
  .split-payment-modal { max-height: calc(100dvh - 16px); }
  .issue-split-payment-button { align-items: flex-start; flex-direction: column; }
  .issue-split-payment-button small { text-align: left; }
}

/* RC22.93 — monthly accounting report */
.accounting-report-builder{display:grid;gap:18px}.accounting-builder-toolbar{display:flex;gap:16px;align-items:end;justify-content:space-between;flex-wrap:wrap}.accounting-builder-toolbar>.field{min-width:220px;margin:0}.accounting-selection-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.accounting-branch-group{border:1px solid rgba(148,163,184,.28);border-radius:18px;padding:14px;background:rgba(255,255,255,.025)}.accounting-branch-group>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.accounting-branch-group>header>div{display:grid;gap:2px}.accounting-branch-group>header small{opacity:.68}.accounting-branch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.accounting-branch-choice{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(148,163,184,.24);border-radius:14px;cursor:pointer;background:rgba(15,23,42,.28);transition:.15s ease}.accounting-branch-choice:hover{border-color:rgba(243,198,35,.65)}.accounting-branch-choice.selected{border-color:#f3c623;box-shadow:0 0 0 1px rgba(243,198,35,.25) inset;background:rgba(243,198,35,.07)}.accounting-branch-choice input{width:20px;height:20px;accent-color:#f3c623}.accounting-branch-choice span{display:grid;gap:2px}.accounting-branch-choice small{opacity:.7}.accounting-result-head .section-head{align-items:flex-start}.accounting-report-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.accounting-final-badge{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border-radius:999px;font-weight:800;font-size:12px;letter-spacing:.02em}.accounting-final-badge.ready{background:rgba(34,197,94,.14);color:#16a34a;border:1px solid rgba(34,197,94,.32)}.accounting-final-badge.draft{background:rgba(245,158,11,.14);color:#d97706;border:1px solid rgba(245,158,11,.35)}.accounting-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.accounting-kpis>div{display:grid;gap:4px;padding:14px;border-radius:16px;border:1px solid rgba(148,163,184,.22);background:rgba(15,23,42,.2)}.accounting-kpis span{font-size:12px;opacity:.7}.accounting-kpis strong{font-size:22px}.accounting-kpis small{opacity:.62}.accounting-two-column{display:grid;grid-template-columns:1fr 1fr;gap:14px}.accounting-period-status{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:800}.accounting-period-status.closed{background:rgba(34,197,94,.12);color:#16a34a}.accounting-period-status.open{background:rgba(245,158,11,.13);color:#d97706}.accounting-warning-card{border-color:rgba(245,158,11,.35)}.accounting-warnings{display:grid;gap:8px}.accounting-warnings>div{padding:10px 12px;border-radius:12px;background:rgba(245,158,11,.09);border:1px solid rgba(245,158,11,.2)}.accounting-details>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;font-size:16px}.accounting-details>summary span{font-size:12px;opacity:.65}.accounting-table-wrap{margin-top:14px;max-height:620px}.accounting-table{min-width:760px}.warning-text{color:#d97706;font-weight:700}@media(max-width:900px){.accounting-kpis{grid-template-columns:1fr 1fr}.accounting-two-column{grid-template-columns:1fr}.accounting-report-actions{justify-content:flex-start}}@media(max-width:620px){.accounting-kpis{grid-template-columns:1fr}.accounting-builder-toolbar{align-items:stretch}.accounting-selection-actions{display:grid;grid-template-columns:1fr 1fr}.accounting-selection-actions .primary{grid-column:1/-1}.accounting-branch-grid{grid-template-columns:1fr}}
