/* EO GLOBAL · Tasarım 02 / Cam Efekti · v9. Screen styles never enter receipt documents. */
@media screen {
  body.eo-glass {
    --gold: #b59b63; --gold-dark: #88652c; --gold-light: #f0e7d6; --gold-soft: #faf6ee;
    --eo-ink: #292c31; --eo-muted: #707278; --eo-line: #e9e5df;
    --eo-glass: rgba(255,255,255,.88); --eo-shadow: 0 10px 36px rgba(72,56,28,.055), 0 1px 2px rgba(72,56,28,.03);
    margin: 0; min-height: 100vh; color: var(--eo-ink); font-family: Inter, 'Segoe UI', sans-serif; font-size: 16px; line-height: 1.5;
    background: radial-gradient(ellipse at 10% 0%, #f0ece4 0, transparent 42%), radial-gradient(ellipse at 100% 60%, #f5f0e8 0, transparent 40%), #faf9f6 !important;
    -webkit-font-smoothing: antialiased; accent-color: var(--gold-dark);
  }
  .eo-glass *, .eo-glass *::before, .eo-glass *::after { box-sizing: border-box; }
  .eo-glass button, .eo-glass input, .eo-glass select, .eo-glass textarea { font: inherit; }
  .eo-glass button, .eo-glass summary, .eo-glass a { -webkit-tap-highlight-color: transparent; }
  .eo-glass button, .eo-glass summary { cursor: pointer; }
  .eo-glass button:disabled { cursor: wait; opacity: .55; }
  .eo-glass :where(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid #96702e; outline-offset: 3px; }
  .eo-glass :where(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]):not([type=color]) { background: rgba(255,255,255,.94); border: 1px solid #dedad2; border-radius: 12px; min-height: 44px; color: var(--eo-ink); font-size: 16px; }
  .eo-glass :where(h1,h2,h3) { color: var(--eo-ink); letter-spacing: -.025em; }
  .eo-glass h1, .eo-glass .font-brand { font-family: Inter, 'Segoe UI', sans-serif; letter-spacing: -.025em; }
  .eo-glass .text-gold, .eo-glass .gold { color: var(--gold-dark) !important; }
  .eo-glass .bg-gold-light { background: var(--gold-light) !important; }
  .eo-glass .bg-gold-soft { background: var(--gold-soft) !important; }
  .eo-glass .border-gold { border-color: var(--gold) !important; }
  .eo-glass .btn-gold, .eo-glass .bg-gold { background: linear-gradient(130deg,#aa8747,#8b672e) !important; color: #fff !important; border: 1px solid #967239; box-shadow: 0 3px 8px #92703416; }
  .eo-glass .btn-gold:hover, .eo-glass .bg-gold:hover { filter: brightness(.96); }
  .eo-glass [style*="background:#c9a961"] { background: linear-gradient(130deg,#aa8747,#8b672e) !important; }
  .eo-glass [style*="border-color:#c9a961"] { border-color: #d9c9ab !important; }
  .eo-glass [style*="color:#a68746"], .eo-glass [style*="color:#c9a961"] { color: #88652c !important; }
  .eo-glass .bg-white { background-color: rgba(255,255,255,.9); }
  .eo-glass .text-slate-900, .eo-glass .text-slate-800 { color: var(--eo-ink); }
  .eo-glass .text-slate-400, .eo-glass .text-slate-500 { color: #707278; }
  .eo-glass .border-slate-100, .eo-glass .border-slate-200 { border-color: var(--eo-line); }
  .eo-glass .bg-slate-50, .eo-glass .bg-slate-100 { background-color: #f5f3ef; }
  .eo-glass .bg-slate-800, .eo-glass .bg-slate-900 { background-color: #675944; }
  .eo-glass .bg-blue-600, .eo-glass .bg-blue-500 { background-color: #8b672e; }
  .eo-glass .text-sm { font-size: 14px; }
  .eo-glass .text-xs { font-size: 13px; }
  .eo-glass button.text-xs, .eo-glass a.text-xs { font-size: 14px; }
  .eo-glass table { border-collapse: separate; border-spacing: 0; width: 100%; }
  .eo-glass th { background: #f6f3ed; color: #655d50; font-weight: 600; white-space: nowrap; }
  .eo-glass th, .eo-glass td { border-color: var(--eo-line); }
  .eo-glass tbody tr:hover { background-color: #fbf8f2; }
  .eo-glass .rounded-2xl { border-radius: 22px; }
  .eo-glass .shadow, .eo-glass .shadow-sm, .eo-glass .shadow-lg { box-shadow: var(--eo-shadow); }
  .eo-app-shell { padding: 20px; max-width: 2000px; margin: auto; }
  .eo-topbar { position: relative; z-index: 45; display: flex; align-items: center; gap: 18px; padding: 13px 20px; min-height: 102px; margin-bottom: 20px; border: 1px solid #fff; border-radius: 26px; background: var(--eo-glass); box-shadow: var(--eo-shadow); backdrop-filter: blur(22px); -webkit-backdrop-filter: blur(22px); }
  .eo-brand { display: flex; align-items: center; gap: 16px; flex-shrink: 0; color: inherit; text-decoration: none; }
  .eo-brand img { width: 92px; height: 62px; object-fit: contain; }
  .eo-brand-copy { max-width: 180px; display: grid; gap: 4px; }
  .eo-brand-copy strong { font-size: 19px; font-weight: 650; line-height: 1.25; }
  .eo-brand-copy small { color: var(--eo-muted); font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .eo-navigation { display: flex; align-items: center; justify-content: center; gap: 3px; flex: 1; min-width: 0; }
  .eo-nav-link { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; min-height: 73px; padding: 10px 10px; border-radius: 16px; color: #52555b; text-align: center; font-size: 14px; line-height: 1.2; text-decoration: none; white-space: nowrap; transition: background .15s; }
  .eo-nav-link:hover { background: #f5f2ed; }
  .eo-nav-link.is-active { background: linear-gradient(140deg,#f6f1e7,#f2ece2); color: #815e28; }
  .eo-topbar svg, .eo-icon { width: 24px; height: 24px; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
  .eo-nav-link svg { width: 23px; height: 23px; }
  .eo-dropdown { position: relative; }
  .eo-dropdown summary { list-style: none; }
  .eo-dropdown summary::-webkit-details-marker { display: none; }
  .eo-dropdown-panel { position: absolute; right: 0; top: calc(100% + 12px); min-width: 246px; padding: 9px; background: #fffdfb; border: 1px solid var(--eo-line); border-radius: 18px; box-shadow: 0 12px 40px #31200d1c; z-index: 55; }
  .eo-dropdown-panel a { display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 10px; font-size: 14px; color: #46433f; text-decoration: none; }
  .eo-dropdown-panel a:hover, .eo-dropdown-panel a[aria-current=page] { background: var(--gold-soft); color: var(--gold-dark); }
  .eo-dropdown-panel p { padding: 8px 12px 12px; margin: 0; font-size: 13px; overflow-wrap: anywhere; color: var(--eo-muted); border-bottom: 1px solid var(--eo-line); }
  .eo-profile { flex-shrink: 0; }
  .eo-profile summary { display: flex; align-items: center; gap: 10px; min-height: 48px; }
  .eo-avatar { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: #f0eeeb; color: #72716e; }
  .eo-profile-copy { display: grid; gap: 2px; max-width: 140px; }
  .eo-profile-copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; font-weight: 600; }
  .eo-profile-copy small { color: var(--eo-muted); font-size: 12px; }
  .eo-menu-toggle { display: none; align-items: center; gap: 8px; padding: 10px; border-radius: 12px; background: #f4f0e8; border: 1px solid #eae2d4; font-size: 14px; color: var(--gold-dark); }
  .eo-main { min-width: 0; }
  .eo-main > :where(div,section).p-6, .eo-main > :where(div,section).p-4, .eo-main > :where(div,section).p-3 { padding: 24px; border: 1px solid #fff; border-radius: 26px; background: var(--eo-glass); box-shadow: var(--eo-shadow); }
  .eo-main > div > :where(h1,h2):first-child { margin-top: 0; }
  .eo-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
  .eo-skip-link { position: fixed; left: 20px; top: -80px; background: #fff; color: #684716; padding: 12px 20px; z-index: 200; border-radius: 12px; }
  .eo-skip-link:focus { top: 10px; }
  /* POS: table selection, catalogue and bill remain on screen together. */
  .eo-pos-workspace { display: grid; grid-template-columns: minmax(215px,.82fr) minmax(350px,1.4fr) minmax(330px,1.05fr); gap: 18px; align-items: stretch; }
  .eo-pos-workspace #posView, .eo-pos-panels { display: contents; }
  .eo-pos-workspace #tablesView, .eo-products-panel, .eo-bill-panel { min-width: 0; background: var(--eo-glass); border: 1px solid #fff; border-radius: 25px; box-shadow: var(--eo-shadow); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
  .eo-pos-workspace #tablesView { padding: 18px 14px; }
  .eo-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 18px; }
  .eo-panel-heading h2 { display: flex; gap: 12px; align-items: center; font-size: 20px; font-weight: 650; margin: 0; }
  .eo-panel-heading .eo-icon { color: var(--gold-dark); }
  .eo-icon-button { display: inline-flex; align-items: center; justify-content: center; padding: 8px; border-radius: 10px; color: var(--eo-muted); border: 1px solid transparent; min-width: 40px; min-height: 40px; background: transparent; }
  .eo-icon-button:hover { background: #f4efe6; border-color: #e9e2d6; }
  .eo-pos-workspace #tablesGrid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; align-content: start; max-height: calc(100dvh - 270px); min-height: 350px; overflow-y: auto; padding: 2px; }
  .eo-pos-workspace .table-card { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; min-height: 152px; padding: 18px 8px; border: 1px solid var(--eo-line); background: linear-gradient(145deg,#fff,#fdfcfb); border-radius: 16px; box-shadow: 0 3px 12px #4b382405; color: var(--eo-ink); text-align: center; animation: none; }
  .eo-pos-workspace .table-card:hover { border-color: #c5ad7d; background: #fffdf8; }
  .eo-pos-workspace .table-card.is-selected { border-color: #ae843f; background: linear-gradient(140deg,#fcf8ef,#f1eadd); box-shadow: inset 0 0 0 1px #ae843f20; }
  .eo-table-icon { width: 36px; height: 36px; color: #a58344; flex-shrink: 0; }
  .eo-table-name { font-size: 15px; font-weight: 600; overflow-wrap: anywhere; }
  .eo-table-state { display: flex; align-items: center; gap: 6px; font-size: 13px; color: #636569; }
  .eo-state-dot { width: 8px; height: 8px; background: #2f9b6e; border-radius: 50%; flex-shrink: 0; }
  .table-open .eo-state-dot { background: #d77756; }
  .eo-table-total { font-size: 15px; font-weight: 650; font-variant-numeric: tabular-nums; }
  .eo-table-toolbar { display: flex; justify-content: space-between; gap: 8px; align-items: center; margin-top: 14px; border-top: 1px solid var(--eo-line); padding-top: 14px; }
  .eo-table-toolbar small { font-size: 12px; color: var(--eo-muted); }
  .eo-quiet-button { padding: 10px 12px; border-radius: 12px; background: #f4f0e7; border: 1px solid #e7dfd0; color: #805d28; font-size: 14px; font-weight: 600; }
  .eo-products-panel { display: flex; flex-direction: column; padding: 20px 16px; }
  .eo-search-row { display: flex; align-items: center; gap: 8px; margin-bottom: 18px; }
  .eo-search-field { display: flex; align-items: center; gap: 10px; width: 100%; padding: 4px 14px; background: #fff; border: 1px solid var(--eo-line); border-radius: 15px; box-shadow: 0 3px 10px #4b382403; }
  .eo-search-field svg { color: #777; width: 21px; height: 21px; }
  .eo-search-field #searchInput { border: 0; box-shadow: none; background: transparent; width: 100%; min-width: 0; padding: 10px 0; font-size: 15px; outline-offset: 0; }
  .eo-pos-back { display: none; }
  .eo-categories { display: flex; gap: 9px; overflow-x: auto; padding: 2px 1px 14px; margin-bottom: 4px; scrollbar-width: thin; }
  .eo-glass .cat-btn { background: #f4f3f1; color: #53565b; border: 1px solid transparent; border-radius: 999px; padding: 10px 17px; flex-shrink: 0; font-size: 14px; }
  .eo-glass .cat-btn.active { background: linear-gradient(120deg,#ad8d50,#977033); color: #fff; border-color: #b49a6b; box-shadow: 0 3px 8px #92703418; }
  .eo-pos-workspace #productGrid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; align-content: start; overflow-y: auto; max-height: calc(100dvh - 344px); min-height: 280px; padding: 3px; }
  .eo-pos-workspace .product-card { position: relative; display: flex; align-items: center; gap: 12px; padding: 18px 13px; min-height: 118px; border: 1px solid var(--eo-line); border-radius: 16px; background: linear-gradient(130deg,#fff,#fdfcfb); box-shadow: 0 4px 12px #4b382404; text-align: left; transition: border-color .15s, transform .15s; }
  .eo-pos-workspace .product-card.hidden { display: none; }
  .eo-pos-workspace .product-card:hover { border-color: #c2a36d; }
  .eo-product-symbol { width: 30px; height: 30px; color: #a27c38; flex-shrink: 0; }
  .eo-product-copy { flex: 1; min-width: 0; }
  .eo-product-name { display: block; font-size: 15px; font-weight: 600; line-height: 1.35; overflow-wrap: anywhere; }
  .eo-product-price { display: block; margin-top: 8px; font-size: 17px; font-weight: 650; color: #62523d; }
  .eo-product-stock { display: block; font-size: 11px; color: var(--eo-muted); margin-top: 4px; }
  .eo-product-plus { display: grid; place-items: center; width: 29px; height: 29px; border-radius: 50%; background: linear-gradient(130deg,#bda16a,#9c7636); color: white; font-size: 23px; line-height: 1; flex-shrink: 0; }
  .eo-mode-hint { font-size: 13px; color: var(--eo-muted); margin: 0 0 14px; }
  .eo-bill-panel { display: flex; flex-direction: column; min-height: 570px; max-height: calc(100dvh - 148px); overflow-y: auto; }
  .eo-bill-heading { padding: 22px 20px 18px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
  .eo-bill-heading #tableTitle { font-size: 20px; font-weight: 650; margin: 0; }
  .eo-bill-heading #modeSub { font-size: 12px; margin-top: 4px; color: var(--eo-muted); letter-spacing: 0; }
  .eo-bill-heading #clearCartBtn { font-size: 13px; }
  .eo-bill-panel #openBillItems { margin: 0 14px; border: 1px solid var(--eo-line); border-radius: 16px; background: #ffffff90; overflow: auto; max-height: none; flex: 1; min-height: 120px; }
  .eo-bill-panel #openBillItems.hidden, .eo-bill-panel #quickCartWrap.hidden { display: none; }
  .eo-bill-panel #quickCartWrap { overflow-y: auto; min-height: 96px; max-height: 290px; flex: 1 1 auto; margin: 12px 14px 0; padding: 12px 14px; border: 1px dashed #d1bd96; border-radius: 15px; background: #fffdf6; }
  .eo-bill-panel #quickCartWrap.eo-has-draft { border-style: solid; background: #fcf6e9; }
  .eo-draft-heading { margin: 0 0 6px; color: #805d28; font-size: 14px; font-weight: 600; }
  .eo-draft-confirm { margin: 12px 0; }
  .eo-draft-confirm p { margin: 0 0 10px; font-size: 13px; color: #795b2b; line-height: 1.5; }
  .eo-bill-panel #confirmTableOrderBtn { width: 100%; min-height: 52px; padding: 12px; border-radius: 12px; font-size: 16px; font-weight: 600; }
  .eo-table-draft { font-size: 12px; color: #805d28; background: #f2e6ce; border-radius: 9px; padding: 3px 6px; }
  .eo-glass .eo-bill-panel button:disabled { cursor: not-allowed; }
  .eo-bill-panel #openBillList { padding: 0 14px 8px; }
  .eo-bill-panel #openBillList > div, .eo-bill-panel #cartItems > div { padding-top: 16px; padding-bottom: 16px; }
  .eo-bill-panel #openBillList button { min-width: 36px; min-height: 36px; border: 1px solid #f0dfd9; border-radius: 10px; background: #fff9f7; color: #b3513b; }
  .eo-bill-panel #openBillList .truncate, .eo-bill-panel #cartItems .truncate { white-space: normal; overflow-wrap: anywhere; }
  .eo-bill-panel #tableTip { min-height: 130px; padding: 22px; color: var(--eo-muted); }
  .eo-bill-panel #tableTip p { font-size: 14px; line-height: 1.7; max-width: 240px; }
  .eo-bill-panel #savingIndicator { font-size: 12px; }
  .eo-bill-summary { padding: 18px; margin-top: auto; }
  .eo-total-band { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 15px; background: linear-gradient(110deg,#f3ecdf,#f8f4ec); border-radius: 13px; margin: 12px 0; font-weight: 650; font-size: 19px; }
  .eo-total-band #totalDisplay { color: #7c5927; font-size: 25px; font-variant-numeric: tabular-nums; }
  .eo-bill-panel #cartActions, .eo-bill-panel #tableActionsRow { gap: 9px; }
  .eo-bill-panel #tableActionsRow { margin-bottom: 10px; }
  .eo-bill-panel #tableActionsRow button, .eo-bill-panel #printTableReceiptBtn { display: flex; align-items: center; justify-content: center; gap: 7px; border: 1px solid #baa481; background: #fffdf9; color: #514736; box-shadow: none; font-size: 14px; min-height: 47px; border-radius: 12px; padding: 10px 8px; }
  .eo-bill-panel #collectPayBtn, .eo-bill-panel #quickPayBtn, .eo-bill-panel #quickSaveBtn { display: flex; justify-content: center; align-items: center; gap: 8px; background: linear-gradient(125deg,#b18e4e,#8c672c); color: white; border: 1px solid #a17c3c; box-shadow: 0 3px 8px #92703414; border-radius: 12px; min-height: 60px; padding: 12px 8px; font-size: 15px; font-weight: 600; }
  .eo-bill-panel #printTableReceiptBtn { min-height: 60px; font-size: 15px; }
  .eo-bill-panel #collectPayBtn.hidden, .eo-bill-panel #quickPayBtn.hidden, .eo-bill-panel #quickSaveBtn.hidden, .eo-bill-panel #printTableReceiptBtn.hidden { display: none; }
  .eo-pos-workspace[data-mode=tables] .product-card { opacity: .72; }
  .eo-pos-workspace[data-mode=tables] .eo-product-plus { background: #ddd4c3; }
  .success-overlay { position: fixed; inset: 0; background: #fffffff5; z-index: 100; display: flex; flex-direction: column; align-items: center; justify-content: center; opacity: 0; pointer-events: none; transition: opacity .2s; }
  .success-overlay.show { opacity: 1; pointer-events: auto; }
  .success-check { width: 100px; height: 100px; border-radius: 50%; background: #329c76; display: grid; place-items: center; }
  /* The kitchen still uses its own status colors and real order actions. */
  .eo-glass .kds-col { background: #ffffffb8 !important; border: 1px solid #e8e3da !important; border-radius: 20px !important; box-shadow: 0 5px 18px #4b382405; }
  .eo-glass .kds-card { border-radius: 16px !important; border-color: #e6dfd2 !important; box-shadow: 0 4px 15px #4b382407 !important; }
  .eo-glass .kds-new { border-left-color: #d36b51 !important; }
  .eo-glass .kds-prep { border-left-color: #b68b3b !important; }
  .eo-glass .kds-ready { border-left-color: #329979 !important; }
  .eo-glass .kds-col { min-height: 360px; padding: 18px; }
  .eo-glass .kds-col h3 { font-size: 13px; letter-spacing: .035em; }
  .eo-glass .kds-btn-prep { background: #9b7737; }
  .eo-glass .kds-btn-ready, .eo-glass .kds-sound-on { background: #288365; }
  .eo-glass .kds-mini, .eo-glass .kds-sound-on { font-size: 14px; min-height: 40px; }
  .eo-glass .kds-meta, .eo-glass .kds-empty { color: #747579; font-size: 13px; }
  .eo-glass .kds-badge { background: #eee7da; color: #795b2b; }
  .eo-glass[data-page=qrmenu] #menuUrl { min-width: 0; width: 100%; }
  .eo-glass[data-page=qrmenu] #qrcode { max-width: 100%; }
  .eo-glass[data-page=qrmenu] #qrcode :is(canvas,img) { max-width: 100%; height: auto !important; }
  .eo-glass[data-page=qrmenu] #downloadQr { background: linear-gradient(130deg,#aa8747,#8b672e) !important; }
  /* Customer account, QR menu and ordering share the same visual language. */
  .eo-glass.portal-page { --p-gold: #8b672e; --p-ink: #292c31; --p-muted: #707278; --p-line: #e8e3da; }
  .eo-glass .portal-header { max-width: 1120px; margin: 20px auto 0; padding: 18px 24px; border: 1px solid #fff; border-radius: 24px; background: var(--eo-glass); box-shadow: var(--eo-shadow); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); }
  .eo-glass .portal-brand { color: var(--eo-ink); }
  .eo-glass .portal-brand img { width: 70px; height: 50px; object-fit: contain; }
  .eo-glass .portal-brand small { color: var(--gold-dark); }
  .eo-glass .p-card, .eo-glass .order-card, .eo-glass .address-card, .eo-glass .auth-card { border: 1px solid #fff; border-radius: 22px; background: var(--eo-glass); box-shadow: var(--eo-shadow); }
  .eo-glass .p-button { min-height: 44px; border-radius: 12px; background: linear-gradient(125deg,#aa8747,#8b672e); border-color: #98753b; color: white; font-size: 14px; }
  .eo-glass .p-button.secondary, .eo-glass .p-button.google { background: #fffcf7; color: #725327; border-color: #dfd3bd; box-shadow: none; }
  .eo-glass .portal-tabs { background: #ffffffb5; border: 1px solid #fff; border-radius: 16px; padding: 7px; box-shadow: var(--eo-shadow); gap: 6px; }
  .eo-glass .portal-tabs a { border-radius: 11px; color: #715a35; }
  .eo-glass .portal-tabs a:hover { background: #f3ecdf; }
  .eo-glass .order-banners { max-width: 1080px; gap: 16px; }
  .eo-glass .order-banner { border-radius: 22px; overflow: hidden; border: 1px solid #fff; box-shadow: var(--eo-shadow); }
  .eo-glass .notification { background: #faf7f1; border-color: #e8dfcd; border-radius: 14px; }
  .eo-public-order > nav { max-width: 1080px; margin: 20px auto 0; border: 1px solid #fff; border-radius: 18px; background: #fffdf9ed; box-shadow: var(--eo-shadow); }
  .eo-public-order > main { max-width: 1080px; }
  .eo-order-intro { max-width: 1080px; }
  .eo-order-product-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
  .eo-public-order .prod-card { padding: 22px; min-height: 118px; }
  .eo-public-order .add-btn { min-width: 44px; min-height: 44px; background: linear-gradient(130deg,#aa8747,#8b672e) !important; }
  .eo-public-order main section > .grid { gap: 14px; }
  .eo-public-order .prod-card { border-radius: 18px; border: 1px solid #e9e3d9; background: #ffffffcf; box-shadow: 0 4px 18px #4b382405; }
  .eo-public-menu .hero { background: linear-gradient(140deg,#ffffffd9,#f3ede1e6); color: var(--eo-ink); border: 1px solid white; border-radius: 26px; margin: 20px auto; max-width: 1080px; box-shadow: var(--eo-shadow); }
  .eo-public-menu .hero .text-white { color: var(--eo-ink); }
  .eo-public-menu .hero::before, .eo-public-menu .hero::after { opacity: .16; }
  .eo-public-menu .hero h1 { font-family: 'Cormorant Garamond', Georgia, serif; font-size: clamp(32px,5vw,52px); color: #675032 !important; }
  .eo-public-menu .hero [class~="text-white/50"], .eo-public-menu .hero [class~="text-white/40"] { color: #74716b; }
  .eo-public-menu .catnav { max-width: 1080px; margin: 0 auto; border: 1px solid #fff; border-radius: 18px; background: #fffdf9ed; box-shadow: var(--eo-shadow); }
  .eo-public-menu .chip.active { background: linear-gradient(130deg,#aa8747,#8b672e); color: white; border-color: #a98850; }
  .eo-public-menu .card { background: var(--eo-glass); border: 1px solid #fff; border-radius: 22px; box-shadow: var(--eo-shadow); }
  .eo-public-menu .cat-title { font-size: 29px; color: #5d5344; }
  .eo-public-menu .reveal { opacity: 1; transform: none; }
  .eo-public-menu > main { max-width: 1080px; }
  .eo-public-menu .menu-item { border: 1px solid #e8e2d7; border-radius: 17px; padding: 20px; background: #ffffffbd; box-shadow: 0 4px 18px #4b382405; }
  .eo-auth > div { position: relative; }
  .eo-auth .rounded-2xl, .eo-auth .rounded-3xl { background: var(--eo-glass); border: 1px solid #fff; border-radius: 26px; box-shadow: var(--eo-shadow); }
  .eo-staff > header { position: relative; margin: 16px; padding: 8px; border: 1px solid #fff; border-radius: 22px; background: var(--eo-glass); box-shadow: var(--eo-shadow); }
  .eo-staff > section { margin: 16px; background: var(--eo-glass); border: 1px solid #fff; border-radius: 22px; box-shadow: var(--eo-shadow); }
  .eo-staff .table-card { animation: none; border-color: #e4d9c4; background: #fffefa; border-radius: 18px; }
  .eo-staff .product-card { border-color: #e4d9c4; border-radius: 14px; padding: 14px; background: #fffefa; }
  .eo-staff .product-card p:first-child { font-size: 14px; }
  .eo-admin .eo-main { padding: 26px; background: var(--eo-glass); border: 1px solid #fff; border-radius: 26px; box-shadow: var(--eo-shadow); }
  .eo-barcode-row { margin: 0 0 14px; padding: 12px; border: 1px solid #e7dfd0; background: #faf7f1; border-radius: 14px; }
  .eo-barcode-row > label { display: block; font-size: 13px; font-weight: 650; color: #805d28; margin-bottom: 6px; }
  .eo-barcode-row > div { display: flex; gap: 7px; }
  .eo-barcode-row input { flex: 1; min-width: 0; width: 0; padding: 8px 10px; }
  .eo-barcode-row input::placeholder { font-size: 12px; }
  .eo-barcode-status { font-size: 12px; color: var(--eo-muted); margin: 7px 0 0; min-height: 18px; overflow-wrap: anywhere; }
  .eo-barcode-status[data-state=ok] { color: #266948; }
  .eo-barcode-status[data-state=error], #receiptPreviewStatus[data-state=error] { color: #a02b2b; }
  .eo-primary-button { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: 10px 18px; background: linear-gradient(130deg,#aa8747,#8b672e); border: 1px solid #967239; color: #fff; border-radius: 12px; font-weight: 650; }
  .eo-receipt-editor { padding: 26px; border: 1px solid var(--eo-line); border-radius: 22px; background: #ffffffc9; margin-bottom: 24px; }
  .eo-receipt-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 24px; }
  .eo-receipt-heading h2 { font-size: 24px; font-weight: 650; margin: 0 0 6px; }
  .eo-receipt-heading p { font-size: 14px; color: var(--eo-muted); margin: 0; }
  .eo-receipt-badge { background: #f4eee2; color: #805d28; font-size: 12px; border-radius: 30px; padding: 6px 12px; white-space: nowrap; }
  .eo-receipt-grid { display: grid; grid-template-columns: minmax(0,1fr) 350px; gap: 30px; align-items: start; }
  .eo-receipt-fields { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-bottom: 18px; }
  .eo-receipt-fields label, .eo-receipt-field { display: grid; gap: 6px; font-size: 14px; font-weight: 600; }
  .eo-receipt-field { margin-bottom: 18px; }
  .eo-receipt-fields select, .eo-receipt-field input, .eo-receipt-field textarea { width: 100%; min-width: 0; padding: 9px 11px; font-weight: 400; }
  .eo-receipt-field textarea { resize: vertical; }
  .eo-receipt-field small, .eo-receipt-hint { color: var(--eo-muted); font-size: 12px; line-height: 1.6; font-weight: 400; }
  .eo-receipt-hint { margin: 14px 0; }
  .eo-receipt-options { border: 1px solid var(--eo-line); border-radius: 14px; padding: 14px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .eo-receipt-options legend { padding: 0 7px; font-size: 14px; font-weight: 600; }
  .eo-receipt-options label { display: flex; align-items: center; gap: 9px; font-size: 13px; cursor: pointer; }
  .eo-receipt-options input { width: 17px; height: 17px; flex-shrink: 0; }
  .eo-receipt-preview { min-width: 0; background: #f7f5f0; border: 1px solid var(--eo-line); border-radius: 18px; padding: 16px; }
  .eo-receipt-preview-heading { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; margin-bottom: 12px; }
  .eo-receipt-preview-heading h3 { font-size: 16px; font-weight: 600; margin: 0; }
  .eo-receipt-preview-heading span { color: var(--eo-muted); font-size: 12px; }
  #receiptPreview { width: 100%; height: 510px; display: block; border: 1px solid var(--eo-line); background: #fff; border-radius: 8px; }
  #receiptTestPrint { width: 100%; }
  @media (max-width: 1000px) { .eo-receipt-grid { grid-template-columns: 1fr; } .eo-receipt-preview { width: 100%; max-width: 380px; justify-self: center; } }
  @media (max-width: 700px) { .eo-receipt-editor { padding: 16px; } .eo-receipt-heading { flex-wrap: wrap; gap: 10px; } .eo-receipt-fields { grid-template-columns: 1fr; } .eo-receipt-options { grid-template-columns: 1fr; } .eo-receipt-preview { padding: 10px; } }
  @media (min-width: 1500px) { .eo-pos-workspace { grid-template-columns: .82fr 1.4fr 1.07fr; } .eo-pos-workspace .product-card { min-height: 137px; padding: 24px 17px; } .eo-product-symbol { width: 38px; height: 38px; } .eo-pos-workspace .table-card { min-height: 174px; } }
  @media (max-width: 1600px) { .eo-topbar { gap: 12px; padding: 12px 16px; } .eo-nav-link { padding-left: 8px; padding-right: 8px; } .eo-profile-copy { display: none; } }
  @media (max-width: 1370px) { .eo-brand-copy { display: none; } .eo-navigation { justify-content: space-evenly; } .eo-topbar { min-height: 93px; } .eo-pos-workspace { gap: 13px; grid-template-columns: minmax(190px,.75fr) minmax(300px,1.25fr) minmax(315px,1.1fr); } .eo-product-symbol { display: none; } }
  @media (max-width: 1199px) {
    .eo-topbar { flex-wrap: wrap; min-height: 80px; }
    .eo-brand-copy { display: grid; max-width: 230px; }
    .eo-brand { flex: 1; } .eo-brand img { width: 75px; height: 48px; }
    .eo-menu-toggle { display: flex; } .eo-navigation { display: none; order: 4; width: 100%; flex: auto; justify-content: flex-start; flex-wrap: wrap; border-top: 1px solid var(--eo-line); padding-top: 12px; }
    .eo-navigation.is-open { display: flex; } .eo-nav-link { min-width: 95px; }
    .eo-nav-more { width: 100%; } .eo-nav-more summary { flex-direction: row; justify-content: flex-start; min-height: 44px; }
    .eo-nav-more .eo-dropdown-panel { position: static; box-shadow: none; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 8px; }
    .eo-pos-workspace { grid-template-columns: 185px minmax(0,1fr); gap: 14px; }
    .eo-pos-workspace #tablesView { grid-row: span 2; }
    .eo-bill-panel { grid-column: 2; max-height: none; min-height: 360px; }
    .eo-pos-workspace #tablesGrid { grid-template-columns: 1fr; max-height: 75dvh; }
    .eo-pos-workspace #productGrid { max-height: 380px; min-height: 220px; }
    .eo-pos-workspace .table-card { min-height: 140px; }
    .eo-product-symbol { display: block; }
    .eo-bill-panel #openBillItems { max-height: 330px; }
    .eo-glass .portal-header { margin-left: 16px; margin-right: 16px; }
  }
  @media (max-width: 700px) {
    .eo-app-shell { padding: 10px; } .eo-topbar { gap: 9px; padding: 12px; border-radius: 20px; margin-bottom: 12px; }
    .eo-brand { gap: 9px; } .eo-brand img { width: 58px; height: 42px; } .eo-brand-copy { max-width: 155px; } .eo-brand-copy strong { font-size: 16px; } .eo-brand-copy small { font-size: 12px; }
    .eo-avatar { width: 35px; height: 35px; } .eo-profile summary > span:last-of-type { display: none; } .eo-menu-toggle span { display: none; } .eo-menu-toggle { min-height: 42px; padding: 8px; }
    .eo-nav-link { font-size: 13px; min-width: 85px; min-height: 72px; flex: 1; }
    .eo-main > :where(div,section).p-6, .eo-main > :where(div,section).p-4, .eo-main > :where(div,section).p-3 { padding: 17px; border-radius: 20px; }
    .eo-pos-workspace { display: flex; flex-direction: column; gap: 12px; }
    .eo-pos-workspace #tablesView { display: none; padding: 18px 12px; }
    .eo-pos-workspace[data-mode=tables] #tablesView { display: block; }
    .eo-pos-workspace[data-mode=tables] #posView { display: none; }
    .eo-pos-workspace #tablesGrid { grid-template-columns: repeat(2,minmax(0,1fr)); max-height: none; }
    .eo-pos-workspace .table-card { min-height: 155px; }
    .eo-products-panel, .eo-bill-panel { border-radius: 20px; }
    .eo-pos-back { display: inline-flex; } .eo-products-panel { padding: 18px 12px; }
    .eo-panel-heading h2 { font-size: 19px; } .eo-search-row { margin-bottom: 12px; }
    .eo-pos-workspace #productGrid { max-height: 44dvh; min-height: 170px; gap: 8px; }
    .eo-pos-workspace .product-card { min-height: 109px; gap: 7px; padding: 13px 10px; }
    .eo-product-symbol { display: none; } .eo-product-name { font-size: 14px; } .eo-product-price { font-size: 16px; } .eo-product-plus { width: 25px; height: 25px; }
    .eo-bill-panel { min-height: 340px; } .eo-bill-heading { padding: 18px; } .eo-bill-summary { padding: 14px; }
    .eo-glass .portal-header { margin: 12px 10px 0; padding: 15px; border-radius: 20px; gap: 12px; flex-wrap: wrap; }
    .eo-glass .portal-brand img { width: 54px; height: 40px; } .eo-glass .portal-header .p-button { font-size: 13px; padding: 9px 11px; }
    .eo-public-order > nav { margin: 14px 10px 0; border-radius: 14px; }
    .eo-order-product-grid { grid-template-columns: 1fr; gap: 10px; }
    .eo-public-order .prod-card { padding: 18px; min-height: 104px; }
    .eo-public-menu .hero { margin: 10px; border-radius: 22px; }
    .eo-glass .portal-wrap { padding-left: 12px; padding-right: 12px; }
    .eo-staff > header, .eo-staff > section { margin: 10px; }
    .eo-admin .eo-main { padding: 16px; overflow-x: auto; border-radius: 20px; }
  }
  @media (prefers-reduced-motion: reduce) { .eo-glass *, .eo-glass *::before, .eo-glass *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
}
