:root{--bg:#0d1117;--panel:#141a22;--panel-2:#1a222d;--line:#273140;--text:#f5f7fa;--muted:#9aa8b7;--accent:#55e6b1;--accent-2:#2fbd91;--danger:#ff6b75;--warning:#ffc857;--info:#6fb7ff;--radius:18px;--shadow:0 18px 60px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at top right,rgba(85,230,177,.08),transparent 28rem),var(--bg);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid var(--line);background:rgba(13,17,23,.92);backdrop-filter:blur(18px);position:sticky;top:0;z-index:40}.brand{display:flex;align-items:center;gap:10px;font-weight:850;letter-spacing:-.02em}.brand-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--accent);color:#07100d;font-size:13px;font-weight:950}.topbar-right{display:flex;align-items:center;gap:10px}.restaurant-pill,.role-pill{padding:7px 10px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--muted)}.role-pill{color:var(--accent);border-color:rgba(85,230,177,.26)}.icon-button{border:0;background:transparent;color:var(--muted);padding:8px 10px}.nav-scroll{display:flex;gap:6px;padding:10px 24px;border-bottom:1px solid var(--line);overflow:auto;white-space:nowrap;background:rgba(20,26,34,.72);position:sticky;top:68px;z-index:30}.nav-link{padding:9px 12px;border-radius:10px;color:var(--muted);font-size:13px}.nav-link:hover,.nav-link.active{background:var(--panel-2);color:var(--text)}.nav-link.active{box-shadow:inset 0 -2px 0 var(--accent)}.page-wrap{width:min(1440px,100%);margin:0 auto;padding:26px}.guest-wrap{display:grid;place-items:center;min-height:100vh;padding:20px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.page-head h1{margin:0;font-size:clamp(24px,3vw,34px);letter-spacing:-.04em}.page-head p{margin:6px 0 0;color:var(--muted)}.head-actions{display:flex;gap:10px;flex-wrap:wrap}.panel{background:linear-gradient(180deg,rgba(255,255,255,.018),transparent),var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.panel + .panel{margin-top:16px}.panel h2,.panel h3{margin:0 0 14px}.muted{color:var(--muted)}.small{font-size:12px}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.stat{padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.stat .label{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.stat .value{font-size:28px;font-weight:900;margin-top:7px;letter-spacing:-.04em}.btn{border:0;border-radius:12px;padding:11px 15px;font-weight:800;background:var(--accent);color:#07100d;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:hover{filter:brightness(1.04)}.btn.secondary{background:var(--panel-2);color:var(--text);border:1px solid var(--line)}.btn.danger{background:rgba(255,107,117,.13);color:#ff9299;border:1px solid rgba(255,107,117,.35)}.btn.warning{background:rgba(255,200,87,.13);color:#ffd980;border:1px solid rgba(255,200,87,.35)}.btn.small-btn{padding:7px 10px;border-radius:9px;font-size:12px}.btn.full{width:100%}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:12px;font-weight:800;color:var(--muted)}.input,.select,.textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:#0f151d;color:var(--text);padding:11px 12px;outline:none}.input:focus,.select:focus,.textarea:focus{border-color:rgba(85,230,177,.7);box-shadow:0 0 0 3px rgba(85,230,177,.08)}.textarea{min-height:90px;resize:vertical}.form-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;align-items:end}.col-2{grid-column:span 2}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-5{grid-column:span 5}.col-6{grid-column:span 6}.col-8{grid-column:span 8}.col-12{grid-column:span 12}.check{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.check input{width:17px;height:17px;accent-color:var(--accent)}.alert{padding:14px 16px;border-radius:14px;margin-bottom:16px;border:1px solid var(--line)}.alert.success{background:rgba(85,230,177,.09);border-color:rgba(85,230,177,.25)}.alert.error{background:rgba(255,107,117,.08);border-color:rgba(255,107,117,.28)}.alert.warning{background:rgba(255,200,87,.08);border-color:rgba(255,200,87,.28)}.alert ul{margin:8px 0 0;padding-left:20px}.token-code{display:block;word-break:break-all;margin-top:10px;padding:10px;border-radius:10px;background:#090d12;color:var(--warning)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.data-table{width:100%;border-collapse:collapse;min-width:760px}.data-table th,.data-table td{padding:12px 13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.data-table th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;background:#111720;position:sticky;top:0}.data-table tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);font-size:11px;color:var(--muted)}.badge.good{color:var(--accent);border-color:rgba(85,230,177,.3);background:rgba(85,230,177,.07)}.badge.bad{color:#ff9299;border-color:rgba(255,107,117,.3);background:rgba(255,107,117,.07)}.badge.warn{color:#ffd980;border-color:rgba(255,200,87,.3);background:rgba(255,200,87,.07)}.login-card{width:min(440px,100%);padding:28px}.login-logo{display:flex;align-items:center;gap:12px;font-weight:900;font-size:22px;margin-bottom:24px}.login-card h1{margin:0 0 5px}.login-card p{margin:0 0 22px;color:var(--muted)}.login-card form{display:grid;gap:14px}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.table-card{position:relative;min-height:154px;border:1px solid var(--line);border-radius:18px;background:var(--panel);padding:16px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.table-card.open{border-color:rgba(85,230,177,.35);background:linear-gradient(145deg,rgba(85,230,177,.07),transparent 48%),var(--panel)}.table-card.bill{border-color:rgba(255,200,87,.4)}.table-card h3{margin:0;font-size:18px}.table-meta{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;margin-top:6px}.table-total{font-size:25px;font-weight:900;letter-spacing:-.04em;margin:16px 0 10px}.qr-dot{position:absolute;right:12px;top:12px;min-width:24px;height:24px;padding:0 7px;border-radius:999px;display:grid;place-items:center;background:var(--warning);color:#171005;font-size:11px;font-weight:900}.order-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.75fr);gap:16px;align-items:start}.menu-panel{min-height:70vh}.category-section + .category-section{margin-top:20px}.category-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.product-card{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:13px;min-height:104px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;color:var(--text)}.product-card:hover{border-color:rgba(85,230,177,.45);transform:translateY(-1px)}.product-card .product-price{color:var(--accent);font-weight:900}.cart-panel{position:sticky;top:128px;max-height:calc(100vh - 150px);overflow:auto}.cart-section{margin-top:16px}.cart-section-title{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:8px}.cart-item{padding:11px 0;border-bottom:1px solid var(--line)}.cart-item:last-child{border-bottom:0}.cart-main{display:flex;justify-content:space-between;gap:10px}.cart-name{font-weight:800}.cart-sub{font-size:11px;color:var(--muted);margin-top:3px}.qty-control{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#0f151d}.qty-control button{width:32px;height:32px;border:0;background:transparent;color:var(--text);font-weight:900}.qty-control input{width:48px;height:32px;border:0;border-left:1px solid var(--line);border-right:1px solid var(--line);background:transparent;color:var(--text);text-align:center}.cart-actions{display:flex;gap:8px;align-items:center;margin-top:8px;flex-wrap:wrap}.order-summary{display:grid;grid-template-columns:1fr auto;gap:6px;font-size:13px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.order-summary .grand{font-size:18px;font-weight:900;color:var(--accent)}.action-stack{display:grid;gap:8px;margin-top:14px}.qr-request{border:1px solid rgba(255,200,87,.28);background:rgba(255,200,87,.05);border-radius:14px;padding:12px;margin-top:10px}.qr-request ul{margin:8px 0;padding-left:18px;color:var(--muted);font-size:12px}.inline-actions{display:flex;gap:7px;flex-wrap:wrap}.payment-list{display:grid;gap:10px}.payment-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}.payment-row .line-total{min-width:80px;text-align:right;font-weight:900}.payment-footer{position:sticky;bottom:12px;margin-top:16px;padding:14px;border:1px solid rgba(85,230,177,.25);border-radius:16px;background:rgba(20,26,34,.95);backdrop-filter:blur(12px);display:flex;justify-content:space-between;align-items:center;gap:14px}.payment-total{font-size:26px;font-weight:950;color:var(--accent)}.confirm-backdrop{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.72);display:grid;place-items:center;padding:20px}.confirm-backdrop[hidden]{display:none}.confirm-modal{width:min(420px,100%);padding:24px;border-radius:20px;background:var(--panel);border:1px solid var(--line);box-shadow:0 30px 90px rgba(0,0,0,.55);text-align:center}.confirm-icon{width:46px;height:46px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:rgba(255,200,87,.12);color:var(--warning);font-size:20px;font-weight:900}.confirm-modal h3{margin:0}.confirm-modal p{color:var(--muted);line-height:1.5}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.plan{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.plan.current{border-color:rgba(85,230,177,.45)}.plan h3{margin:0}.plan .limit{color:var(--muted);font-size:13px;margin-top:8px}.bars{display:grid;gap:8px}.bar-row{display:grid;grid-template-columns:90px 1fr 90px;gap:10px;align-items:center;font-size:12px}.bar-track{height:10px;background:#0e141b;border-radius:99px;overflow:hidden}.bar-fill{height:100%;background:var(--accent);border-radius:99px}.empty{padding:28px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:14px}.qr-shell{width:min(760px,100%);margin:0 auto;padding:20px}.qr-head{text-align:center;padding:18px 0 22px}.qr-head h1{margin:0}.qr-category{margin-bottom:18px}.qr-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.qr-product{padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.qr-product .row{display:flex;justify-content:space-between;gap:10px}.qr-product .price{font-weight:900;color:var(--accent)}
@media(max-width:980px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}.order-layout{grid-template-columns:1fr}.cart-panel{position:static;max-height:none}.nav-scroll{top:60px}.topbar{height:60px}.restaurant-pill{display:none}}
@media(max-width:680px){.page-wrap{padding:15px}.topbar{padding:0 14px}.topbar-right{gap:4px}.role-pill{display:none}.nav-scroll{padding:8px 12px}.page-head{align-items:flex-start;flex-direction:column}.head-actions{width:100%}.head-actions .btn{flex:1}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.form-row>[class*=col-]{grid-column:auto}.tables-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.table-card{min-height:142px;padding:13px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-row{grid-template-columns:1fr auto}.payment-row .line-total{grid-column:2;grid-row:1}.payment-row .qty-control{grid-column:1/3}.payment-footer{align-items:stretch;flex-direction:column}.payment-footer .btn{width:100%}.qr-products{grid-template-columns:1fr}.bar-row{grid-template-columns:72px 1fr 70px}.brand span:last-child{display:none}}

/* TablePulse interaction polish — async POS + platform controls */
button:disabled{cursor:wait;opacity:.68}
.platform-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;min-width:310px}
.platform-actions form{margin:0}.subscription-activate{white-space:nowrap}.action-dot{width:7px;height:7px;border-radius:999px;background:#07100d;box-shadow:0 0 0 3px rgba(7,16,13,.14)}
.platform-restaurants-table td:last-child{min-width:330px}
.cart-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.cart-panel-head h2{margin-bottom:0}.save-state{min-height:18px;font-size:11px;font-weight:800;color:var(--muted);transition:color .18s ease}.save-state.saving{color:var(--warning)}.save-state.saved{color:var(--accent)}.save-state.error{color:var(--danger)}
.cart-actions-modern{justify-content:space-between;flex-wrap:nowrap}.quantity-form{margin:0}.qty-control.qty-control-lg{height:44px;border-radius:14px;border-color:#334052;background:linear-gradient(180deg,#121a24,#0d141c);box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 8px 20px rgba(0,0,0,.12)}.qty-control.qty-control-lg button{width:44px;height:42px;font-size:22px;line-height:1;color:var(--accent);transition:background .15s ease,transform .1s ease,color .15s ease}.qty-control.qty-control-lg button:hover{background:rgba(85,230,177,.1)}.qty-control.qty-control-lg button:active{transform:scale(.9)}.qty-control.qty-control-lg input{width:54px;height:42px;font-size:16px;font-weight:900;border-color:#334052;appearance:textfield;-moz-appearance:textfield}.qty-control.qty-control-lg input::-webkit-inner-spin-button,.qty-control.qty-control-lg input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.remove-item-btn{width:44px;height:44px;border-radius:13px;border:1px solid rgba(255,107,117,.28);background:rgba(255,107,117,.08);color:#ff9299;font-size:23px;line-height:1;font-weight:700;transition:background .15s ease,transform .1s ease}.remove-item-btn:hover{background:rgba(255,107,117,.16)}.remove-item-btn:active{transform:scale(.92)}
.is-submitting{pointer-events:none}.product-card{transition:border-color .16s ease,transform .16s ease,background .16s ease,box-shadow .16s ease}.product-card.just-added{border-color:rgba(85,230,177,.75);background:rgba(85,230,177,.09);box-shadow:0 0 0 3px rgba(85,230,177,.07)}
.tp-toast-stack{position:fixed;right:18px;bottom:18px;z-index:180;display:grid;gap:8px;width:min(360px,calc(100vw - 30px));pointer-events:none}.tp-toast{transform:translateY(10px);opacity:0;padding:12px 14px;border-radius:13px;background:#18221f;border:1px solid rgba(85,230,177,.3);box-shadow:0 18px 50px rgba(0,0,0,.38);color:var(--text);font-size:13px;font-weight:750;transition:opacity .2s ease,transform .2s ease}.tp-toast.show{opacity:1;transform:translateY(0)}.tp-toast.error{background:#25181b;border-color:rgba(255,107,117,.38);color:#ffb1b6}
@media(max-width:680px){.platform-actions{min-width:260px}.platform-restaurants-table td:last-child{min-width:280px}.qty-control.qty-control-lg{height:48px}.qty-control.qty-control-lg button{width:48px;height:46px}.qty-control.qty-control-lg input{height:46px}.remove-item-btn{width:48px;height:48px}.tp-toast-stack{right:15px;bottom:15px}}

/* TablePulse v1.2 — app-style navigation / refresh transitions */
.app-shell{animation:tp-shell-boot .18s ease-out both;will-change:opacity,transform}
.app-shell.tp-shell-exit{opacity:.72;transform:translateY(2px);transition:opacity .08s ease,transform .08s ease}
.app-shell.tp-shell-enter{opacity:.72;transform:translateY(3px)}
@keyframes tp-shell-boot{from{opacity:.82;transform:translateY(2px)}to{opacity:1;transform:none}}
.tp-route-progress{position:fixed;z-index:260;top:0;left:0;right:0;height:3px;overflow:hidden;pointer-events:none;opacity:0;transition:opacity .14s ease;background:rgba(85,230,177,.08)}
.tp-route-progress.is-active{opacity:1}
.tp-route-progress span{display:block;width:38%;height:100%;border-radius:0 999px 999px 0;background:linear-gradient(90deg,transparent,var(--accent),#a7ffe0);box-shadow:0 0 18px rgba(85,230,177,.58);transform:translateX(-120%)}
.tp-route-progress.is-active span{animation:tp-route-progress 1.05s cubic-bezier(.42,0,.22,1) infinite}
@keyframes tp-route-progress{0%{transform:translateX(-120%);width:34%}55%{width:52%}100%{transform:translateX(290%);width:30%}}
.tp-route-overlay{position:fixed;z-index:250;inset:0;display:grid;place-items:center;padding:20px;background:rgba(7,11,15,.22);backdrop-filter:blur(0);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,visibility .16s ease,backdrop-filter .16s ease}
.tp-route-overlay.is-visible{opacity:1;visibility:visible;pointer-events:all;backdrop-filter:blur(2px)}
.tp-route-loader{display:flex;align-items:center;gap:11px;min-width:190px;padding:11px 13px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(20,26,34,.94);box-shadow:0 20px 65px rgba(0,0,0,.42);transform:translateY(5px) scale(.985);transition:transform .16s ease}
.tp-route-overlay.is-visible .tp-route-loader{transform:none}
.tp-route-loader-mark{width:34px;height:34px;flex:0 0 34px;border-radius:10px;display:grid;place-items:center;background:var(--accent);color:#07100d;font-size:11px;font-weight:950;letter-spacing:-.02em}
.tp-route-loader-copy{display:flex;min-width:0;flex:1;flex-direction:column;line-height:1.15}.tp-route-loader-copy strong{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.tp-route-loader-copy small{margin-top:4px;color:var(--muted);font-size:10px}
.tp-route-loader-spinner{width:17px;height:17px;flex:0 0 17px;border-radius:50%;border:2px solid rgba(85,230,177,.2);border-top-color:var(--accent);animation:tp-spinner .7s linear infinite}
@keyframes tp-spinner{to{transform:rotate(360deg)}}
body.tp-route-busy{cursor:progress}
body.tp-route-busy .nav-link,body.tp-route-busy .brand{cursor:progress}
::view-transition-old(root){animation:tp-vt-old .13s ease both}::view-transition-new(root){animation:tp-vt-new .18s ease both}
@keyframes tp-vt-old{to{opacity:.7;transform:translateY(-1px)}}@keyframes tp-vt-new{from{opacity:.68;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(max-width:680px){.tp-route-overlay{align-items:end;padding:0 14px 18px}.tp-route-loader{width:100%;min-width:0}.tp-route-loader-copy strong{max-width:none}}
@media(prefers-reduced-motion:reduce){.app-shell,.app-shell.tp-shell-exit,.app-shell.tp-shell-enter,.tp-route-progress span,.tp-route-overlay,.tp-route-loader,.tp-route-loader-spinner{animation:none!important;transition:none!important;transform:none!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}

/* TablePulse v1.3 — disabled-store lock screen */
.store-disabled-shell{min-height:100vh;background:radial-gradient(circle at 50% 0,rgba(255,107,117,.10),transparent 32rem)}
.store-disabled-page{min-height:100vh;display:grid;place-items:center;padding:28px 18px}
.store-disabled-card{width:min(720px,100%);padding:34px;border:1px solid rgba(255,107,117,.25);border-radius:26px;background:linear-gradient(180deg,rgba(255,107,117,.045),transparent 32%),rgba(20,26,34,.96);box-shadow:0 30px 90px rgba(0,0,0,.42);text-align:center;position:relative;overflow:hidden}
.store-disabled-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,var(--danger),transparent);opacity:.8}
.store-disabled-brand{display:flex;align-items:center;justify-content:center;gap:10px;font-weight:900;margin-bottom:30px;color:var(--muted)}
.store-disabled-icon{width:88px;height:88px;border-radius:28px;margin:0 auto 18px;display:grid;place-items:center;background:rgba(255,107,117,.10);border:1px solid rgba(255,107,117,.28);box-shadow:inset 0 0 0 8px rgba(255,107,117,.025)}
.store-disabled-lock{position:relative;width:32px;height:28px;border-radius:8px;background:var(--danger);box-shadow:0 8px 24px rgba(255,107,117,.22)}
.store-disabled-lock:before{content:"";position:absolute;width:20px;height:20px;left:6px;top:-14px;border:4px solid var(--danger);border-bottom:0;border-radius:12px 12px 0 0}
.store-disabled-lock:after{content:"";position:absolute;width:4px;height:8px;border-radius:999px;background:#511c21;left:14px;top:9px}
.store-disabled-status{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;border:1px solid rgba(255,107,117,.28);background:rgba(255,107,117,.08);color:#ff9aa1;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.store-disabled-status span{width:7px;height:7px;border-radius:50%;background:var(--danger);box-shadow:0 0 0 4px rgba(255,107,117,.10)}
.store-disabled-card h1{font-size:clamp(28px,5vw,42px);letter-spacing:-.045em;line-height:1.05;margin:16px 0 10px}
.store-disabled-lead{max-width:560px;margin:0 auto;color:var(--muted);font-size:16px;line-height:1.65}
.store-disabled-lead strong{color:var(--text)}
.store-disabled-notice{margin:26px 0 18px;padding:18px;border:1px solid var(--line);border-radius:18px;background:rgba(13,17,23,.56);text-align:left}
.store-disabled-notice>strong{display:block;margin-bottom:12px;font-size:13px;color:#ffb1b6}
.store-disabled-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.store-disabled-grid span{padding:11px 12px;border-radius:12px;background:var(--panel-2);border:1px solid var(--line);color:var(--muted);font-size:13px}
.store-disabled-grid span:before{content:"×";display:inline-grid;place-items:center;width:18px;height:18px;margin-right:7px;border-radius:50%;background:rgba(255,107,117,.10);color:var(--danger);font-weight:950}
.store-disabled-help{max-width:570px;margin:0 auto 22px;color:var(--muted);font-size:13px;line-height:1.6}
.store-disabled-logout{min-width:160px}
@media(max-width:600px){.store-disabled-page{padding:14px}.store-disabled-card{padding:26px 18px;border-radius:22px}.store-disabled-grid{grid-template-columns:1fr}.store-disabled-brand{margin-bottom:24px}.store-disabled-icon{width:76px;height:76px;border-radius:24px}}


/* TablePulse v1.4 — compact/minimal table selector */

.tables-grid{grid-template-columns:repeat(auto-fill,minmax(126px,154px));gap:9px;justify-content:start;align-items:stretch}
.table-select-form{margin:0;min-width:0}
.table-card{width:100%;min-height:92px;padding:11px 12px;border-radius:14px;display:flex;flex-direction:column;justify-content:space-between;gap:10px;text-align:left;color:inherit;transition:border-color .15s ease,background .15s ease,transform .12s ease,box-shadow .15s ease}
.table-card:hover{border-color:#354354;background:#171f29;transform:translateY(-1px);box-shadow:0 8px 24px rgba(0,0,0,.14)}
.table-card:active{transform:scale(.985)}
.table-card.open{border-color:rgba(85,230,177,.32);background:linear-gradient(145deg,rgba(85,230,177,.055),transparent 52%),var(--panel)}
.table-card.bill{border-color:rgba(255,200,87,.38);background:linear-gradient(145deg,rgba(255,200,87,.055),transparent 52%),var(--panel)}
.table-card-head{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;padding-right:18px}
.table-card h3{width:100%;margin:0;font-size:15px;font-weight:850;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.02em}
.table-status{display:inline-flex;align-items:center;gap:5px;max-width:100%;font-size:9px;line-height:1;font-weight:850;letter-spacing:.025em;color:var(--muted);white-space:nowrap}
.table-status:before{content:"";width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#657386}
.table-status.open{color:var(--accent)}.table-status.open:before{background:var(--accent);box-shadow:0 0 0 3px rgba(85,230,177,.08)}
.table-status.bill{color:var(--warning)}.table-status.bill:before{background:var(--warning);box-shadow:0 0 0 3px rgba(255,200,87,.08)}
.table-card-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:7px;min-width:0}
.table-seats{min-width:0;color:var(--muted);font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.table-total{margin:0;font-size:15px;line-height:1;font-weight:900;letter-spacing:-.025em;color:var(--text);white-space:nowrap}
.table-card.open .table-total{color:var(--accent)}
.table-card.bill .table-total{color:var(--warning)}
.table-open-hint{font-size:9.5px;font-weight:800;color:var(--muted);white-space:nowrap}
.table-card:hover .table-open-hint{color:var(--accent)}
.table-card .qr-dot{right:8px;top:8px;min-width:18px;height:18px;padding:0 5px;font-size:9px;border-radius:999px;box-shadow:0 0 0 3px rgba(255,200,87,.07)}
@media(max-width:680px){.tables-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}.table-card{min-height:86px;padding:10px;border-radius:13px}.table-card h3{font-size:14px}.table-status{font-size:8.5px}.table-seats,.table-open-hint{font-size:9px}.table-total{font-size:14px}}


/* TablePulse v1.5 — order notes + redesigned payment controls */
.order-note-card{margin-top:14px;padding:12px;border:1px solid rgba(85,230,177,.16);border-radius:14px;background:linear-gradient(145deg,rgba(85,230,177,.045),rgba(255,255,255,.01));transition:border-color .16s ease,background .16s ease}
.order-note-card:focus-within{border-color:rgba(85,230,177,.42);background:rgba(85,230,177,.055)}
.note-label-row{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:7px}.note-label-row label{font-size:12px;font-weight:900}
.order-note-card textarea,.item-note-form textarea{display:block;width:100%;resize:vertical;border:1px solid var(--line);background:#0d141c;color:var(--text);border-radius:11px;padding:9px 10px;font:inherit;font-size:12px;line-height:1.4;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.order-note-card textarea:focus,.item-note-form textarea:focus{border-color:rgba(85,230,177,.46);box-shadow:0 0 0 3px rgba(85,230,177,.06);background:#101922}
.item-note-form{margin-top:9px}.item-note-form textarea{min-height:38px;resize:none;color:#cbd6e3}.item-note-form textarea::placeholder{color:#647284}
.sent-item-note{margin-top:6px;padding:6px 8px;border-radius:8px;background:rgba(255,200,87,.06);color:#d9c789;font-size:11px;line-height:1.35}
.order-primary-actions .action-btn{min-height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;gap:9px;font-weight:900}.action-btn-icon{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:rgba(255,255,255,.07);font-size:14px}.action-btn-primary{box-shadow:0 8px 22px rgba(85,230,177,.08)}
.order-secondary-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.payment-entry-btn{border-color:rgba(255,200,87,.35)}
.payment-panel{padding:0;overflow:hidden}.payment-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,rgba(85,230,177,.05),transparent 55%)}.payment-toolbar .eyebrow{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.11em;font-weight:900}.payment-balance{display:block;margin-top:3px;font-size:24px;letter-spacing:-.04em;color:var(--text)}.payment-toolbar-actions{display:flex;gap:8px}.payment-tool-btn{border:1px solid rgba(85,230,177,.25);background:rgba(85,230,177,.08);color:var(--accent);border-radius:10px;padding:9px 12px;font-weight:850;font-size:12px}.payment-tool-btn:hover{background:rgba(85,230,177,.14)}.payment-tool-btn.ghost{border-color:var(--line);background:var(--panel-2);color:var(--muted)}
.payment-panel .payment-list{padding:12px}.payment-row{grid-template-columns:minmax(0,1fr) 88px auto;border-radius:13px;padding:12px 13px;transition:border-color .15s ease,background .15s ease,transform .12s ease}.payment-row.has-selection{border-color:rgba(85,230,177,.34);background:linear-gradient(135deg,rgba(85,230,177,.065),rgba(255,255,255,.01))}.payment-product-copy{min-width:0}.payment-item-note{color:#d9c789;font-size:11px;margin:4px 0}.payment-selected-total{text-align:right;font-weight:900;color:var(--muted);font-size:13px}.payment-row.has-selection .payment-selected-total{color:var(--accent)}
.payment-qty-control{height:42px;border-radius:13px;border-color:#334052;background:#0d141c}.payment-qty-control button{width:42px;height:40px;color:var(--accent);font-size:20px;transition:background .13s ease,transform .1s ease}.payment-qty-control button:hover{background:rgba(85,230,177,.1)}.payment-qty-control button:active{transform:scale(.9)}.payment-qty-control input{width:52px;height:40px;font-size:15px;font-weight:950;border-color:#334052;appearance:textfield;-moz-appearance:textfield}.payment-qty-control input::-webkit-inner-spin-button,.payment-qty-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.payment-footer-modern{display:grid;grid-template-columns:minmax(280px,1fr) auto minmax(260px,auto);padding:13px 14px;gap:16px;align-items:center}.payment-footer-label{display:block;margin-bottom:7px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.payment-methods{display:flex;gap:7px}.payment-method-option{cursor:pointer}.payment-method-option input{position:absolute;opacity:0;pointer-events:none}.payment-method-option span{min-height:38px;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:#0d141c;color:var(--muted);display:flex;align-items:center;gap:7px;font-size:12px;font-weight:850;transition:all .15s ease}.payment-method-option span b{font-size:14px;color:var(--text)}.payment-method-option input:checked+span{border-color:rgba(85,230,177,.42);background:rgba(85,230,177,.09);color:var(--accent);box-shadow:inset 0 0 0 1px rgba(85,230,177,.08)}
.payment-total-block{text-align:right;min-width:100px}.payment-total-block>span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:900}.payment-total-block .payment-total{display:block;font-size:24px;margin-top:1px}.payment-submit-actions{display:grid;grid-template-columns:1fr 1.05fr;gap:8px}.payment-submit-btn{min-height:48px;border-radius:12px;padding:8px 13px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.15;white-space:nowrap}.payment-submit-btn small{display:block;margin-top:3px;font-size:10px;opacity:.72}.pay-all-btn{box-shadow:0 8px 24px rgba(85,230,177,.1)}
@media(max-width:900px){.payment-footer-modern{grid-template-columns:1fr auto}.payment-submit-actions{grid-column:1/-1}.payment-method-section{min-width:0}}
@media(max-width:680px){.order-secondary-actions{grid-template-columns:1fr}.note-label-row{align-items:flex-start;flex-direction:column;gap:2px}.payment-toolbar{align-items:flex-start;flex-direction:column}.payment-toolbar-actions{width:100%}.payment-tool-btn{flex:1}.payment-row{grid-template-columns:minmax(0,1fr) auto}.payment-selected-total{grid-column:2;grid-row:1}.payment-qty-control{grid-column:1/-1;justify-self:stretch;display:grid;grid-template-columns:48px 1fr 48px}.payment-qty-control button,.payment-qty-control input{width:100%}.payment-footer-modern{grid-template-columns:1fr;bottom:8px}.payment-total-block{text-align:left;display:flex;align-items:baseline;justify-content:space-between}.payment-submit-actions{grid-column:auto;grid-template-columns:1fr}.payment-methods{display:grid;grid-template-columns:repeat(3,1fr)}.payment-method-option span{justify-content:center;padding:8px 6px}.payment-submit-btn{min-height:50px}}
