:root{--surface:#f3f5f8;--chrome:#eef1f5;--card:#fff;--ink:#0b1220;--text:#111827;--muted:#64748b;--line:#e2e8f0;--accent:var(--sloity-accent,#000);--accent-hover:var(--sloity-accent-hover,#272a2e);--accent-strong:var(--sloity-accent-strong,#000);--accent-soft:var(--sloity-accent-soft,#f4f4f5);--accent-on:var(--sloity-accent-on,#fff);--accent-rgb:0, 0, 0;--wine:var(--accent);--green:#059669;--green-fill:#ecfdf5;--danger:#e11d48;--gray:#cbd5e1;--radius:22px;--shadow:0 1px 2px #0f172a0a, 0 18px 40px #0f172a12;--shadow-sm:0 1px 2px #0f172a0d;--btn-h-mobile:48px;--btn-radius:14px}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--accent-rgb:255, 255, 255;--surface:#090d16;--chrome:#0f172a;--card:#0f172a;--ink:#f8fafc;--text:#f8fafc;--muted:#94a3b8;--line:#1e293b;--shadow:0 1px 2px #00000059, 0 18px 40px #00000047;--shadow-sm:0 1px 2px #00000059}html.dark body{color:#f8fafc;background:#090d16}html,body{margin:0;padding:0}html{overscroll-behavior-x:none;overflow-x:hidden}body{font-family:var(--font-sans), "PingFang HK", "PingFang SC", "Noto Sans TC", "Noto Sans SC", system-ui, sans-serif;background:var(--surface);color:var(--text);overscroll-behavior-x:none;letter-spacing:-.011em;-webkit-text-size-adjust:100%;max-width:100%;min-height:100vh;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.wrap{max-width:1120px;margin:0 auto;padding:28px 22px 64px}.site-nav,.top{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.brand-mark{letter-spacing:.16em;text-transform:uppercase;color:var(--ink);font-size:15px;font-weight:700}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:24px}.shop-hero,.wine-bar{color:#f8fafc;background:linear-gradient(160deg,#0b1220 0%,#134e4a 72%);border-radius:22px 22px 0 0;padding:28px 28px 24px}.shop-hero .eyebrow,.wine-bar .eyebrow{letter-spacing:.18em;text-transform:uppercase;opacity:.7;margin:0 0 8px;font-size:11px}.shop-hero h1,.wine-bar h1{font-family:var(--font-serif), "Songti TC", "Songti SC", serif;letter-spacing:-.02em;margin:0;font-size:clamp(28px,4vw,40px);font-weight:400;line-height:1.15}.shop-map{color:var(--text);background:#fff;border:1px solid #e2e8f0e6;border-radius:16px;margin-top:16px;overflow:hidden}.shop-map iframe{border:0;width:100%;height:240px;display:block}.shop-map-compact iframe{height:180px}.shop-map-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:10px 12px 0;font-size:11px;font-weight:650}.shop-map-open{color:var(--accent);padding:10px 12px 12px;font-size:13px;font-weight:650;text-decoration:none;display:block}.shop-map-open:hover{text-decoration:underline}.panel{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:24px;overflow:hidden}.guest-body{padding:8px 4px 4px}.btn{border-radius:var(--btn-radius);cursor:pointer;border:0;padding:12px 18px;font-size:14px;font-weight:650;transition:transform .15s,background .15s,box-shadow .15s}@media (max-width:767px){.btn{min-height:var(--btn-h-mobile);border-radius:var(--btn-radius)}.btn-primary{box-shadow:none}.btn:active:not(:disabled){transform:scale(.98)}.btn-block,.guest-cta .btn{width:100%}}.btn-primary{background:var(--accent);color:var(--accent-on);box-shadow:none}.btn-primary:hover{background:var(--accent-hover);transform:none}.btn:focus-visible,.guest-slot:focus-visible,.guest-sessions button:focus-visible,.admin-sidebar-nav button:focus-visible,.admin-dock button:focus-visible,.setup-segment:focus-visible,.setup-lang-btn:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.btn-quiet{color:var(--text);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb8}.passkey-panel{margin-top:8px}.passkey-toggle{letter-spacing:0;text-transform:none;cursor:pointer;align-items:center;gap:8px;margin:10px 0;font-size:14px;font-weight:600;display:flex}.admin-app .field .passkey-toggle{text-transform:none;letter-spacing:0;color:var(--aa-ink);font-size:14px;font-weight:600;display:flex}.passkey-toggle input,.admin-app .field .passkey-toggle input,.admin-app .field input[type=checkbox],.admin-app .field input[type=radio]{max-width:18px;accent-color:var(--accent);flex:0 0 18px;margin:0;width:18px!important;height:18px!important;min-height:18px!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:4px!important;padding:0!important}.passkey-list{gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.passkey-list li{background:var(--chrome,#f8fafc);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.passkey-list b{display:block}.passkey-list small{color:var(--muted,#737373)}.btn-outline{color:var(--accent);border:1.5px solid var(--accent);background:0 0}.btn-block{width:100%;padding:15px 18px;font-size:15px}.btn:disabled{opacity:.4;cursor:default;box-shadow:none;transform:none}.admin-app .btn-primary,.login-shell .btn-primary{background:var(--accent);color:var(--accent-on);box-shadow:none}.admin-app .btn-primary:hover,.login-shell .btn-primary:hover{background:var(--accent-hover)}.admin-app .btn-quiet,.admin-app .btn-outline{color:#334155;box-shadow:none;background:#f1f5f9;border:1px solid #e2e8f0}.admin-app .btn-quiet:hover,.admin-app .btn-outline:hover{color:#1e293b;background:#e2e8f0}.admin-app .btn-danger{color:#e11d48;background:#f43f5e1a;border:0}.admin-app .btn-danger:hover{background:#f43f5e33}.admin-app .chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}.field{gap:6px;min-width:0;margin:12px 0;display:grid}.field p.muted{margin:0;font-size:12px}.field label,.chip-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:650;display:block}.field input,.field select{border:1px solid var(--line);width:100%;min-width:0;max-width:100%;height:48px;color:var(--text);background:#f8fafc;border-radius:14px;outline:none;padding:0 14px;transition:border-color .15s,box-shadow .15s,background .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(var(--accent-rgb), .16);background:#fff}.color-pick{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;max-width:100%;display:flex}.color-pick input[type=color]{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;flex:none;width:48px;height:40px;padding:3px}.color-pick input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-pick input[type=color]::-webkit-color-swatch{border:none;border-radius:8px}.color-pick input[type=color]::-moz-color-swatch{border:none;border-radius:8px}.color-pick input[type=text]{letter-spacing:.04em;text-transform:uppercase;max-width:140px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.accent-pick{flex-direction:column;gap:10px;display:flex}.color-preset-row{flex-wrap:wrap;gap:8px;display:flex}.color-preset{width:28px;height:28px;box-shadow:0 0 0 1px var(--line);cursor:pointer;border:2px solid #fff;border-radius:999px;padding:0}.color-preset.on{box-shadow:0 0 0 2px var(--ink)}.color-swatch-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.color-swatch-row .chip{pointer-events:none}.color-swatch-row .chip.on{background:var(--accent);color:var(--accent-on);border-color:var(--accent)}.chips{flex-wrap:wrap;gap:8px;display:flex}.admin-app .chips{scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;flex-wrap:nowrap;gap:8px;width:100%;max-width:100%;display:flex;overflow-x:auto}.admin-app .chips::-webkit-scrollbar{display:none}.admin-app .chip{flex:none;min-height:44px}.x-scroll,.admin-app .report-bar,.admin-app .booking-kpi-bar,.admin-app .device-table-wrap,.admin-app .punctuality-grid{scrollbar-width:none;overscroll-behavior-x:contain;width:100%;max-width:100%;overflow-x:auto}.x-scroll::-webkit-scrollbar{display:none}.admin-app .report-bar::-webkit-scrollbar{display:none}.admin-app .booking-kpi-bar::-webkit-scrollbar{display:none}.scrollbar-none{scrollbar-width:none}.scrollbar-none::-webkit-scrollbar{display:none}.chip{border:1px solid var(--line);cursor:pointer;color:var(--text);background:#fff;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:650;transition:all .15s}.chip:hover{border-color:#94a3b8}.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}.chip.off,.chip:disabled{opacity:.4;cursor:not-allowed;text-decoration:line-through}.chip.off:hover,.chip:disabled:hover{border-color:var(--line)}.grid{gap:12px;display:grid}.tables{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.table-tile{text-align:center;border:1px solid var(--line);background:#fff;border-radius:18px;min-height:92px;padding:16px 12px}.table-tile.closed{color:var(--muted);border-color:var(--gray);background:#f1f5f9}.table-tile.opened{background:var(--green-fill);border-color:#a7f3d0}.table-tile h3{color:var(--text);margin:0 0 6px;font-size:22px}.table-tile.opened h3{color:var(--green)}.table-tile p{margin:0;font-size:12px}.nav{background:var(--chrome);border-radius:999px;flex-wrap:wrap;gap:6px;padding:4px;display:flex}.nav a,.nav button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:650}.nav a.on,.nav button.on{color:var(--ink);box-shadow:var(--shadow-sm);background:#fff}table.data{border-collapse:collapse;border-radius:var(--radius);background:#fff;width:100%;overflow:hidden}table.data th,table.data td{text-align:left;border-bottom:1px solid var(--line);padding:14px 12px}table.data th{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px}table.data tr.booking-data-row td{vertical-align:top;border-bottom:0;padding-bottom:6px}table.data tr.booking-actions-row td{padding-top:0;padding-bottom:16px}.booking-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.booking-actions .btn{height:36px;margin:0}.muted{color:var(--muted)}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.stat{background:var(--chrome);border-radius:14px;flex:1;min-width:140px;padding:14px}.stat b{color:var(--accent);font-size:22px;display:block}.report-bar{background:#ffffffb8;border:1px solid #e2e8f0e6;border-radius:20px;flex-wrap:wrap;align-items:flex-end;gap:14px;margin:0 0 16px;padding:14px 16px;display:flex}.month-pick{flex-flow:row;align-items:center;gap:8px;width:max-content;max-width:100%;display:flex}.month-field{flex-direction:column;flex:none;align-items:flex-start;display:flex}.month-pick select,.admin-app .month-pick select,.admin-app .field .month-pick select,.admin-app .month-field .month-pick select{box-sizing:border-box;border:1px solid var(--line);width:9.25rem;min-width:9.25rem;max-width:9.25rem;height:48px;color:var(--text);font:inherit;background:#f8fafc;border-radius:14px;flex:0 0 9.25rem;padding:0 28px 0 12px;font-size:14px;display:block}.month-pick select:last-child,.admin-app .month-field .month-pick select:last-child{flex:0 0 5.5rem;width:5.5rem;min-width:5.5rem;max-width:5.5rem}html.dark .month-pick select,html.dark .admin-app .month-pick select{color:#f8fafc;background:#0f172a;border-color:#1e293b}.audit-day{margin:0 0 22px}.audit-day h3{color:var(--muted);margin:0 0 4px;font-size:13px;font-weight:650}.audit-item{border-top:1px solid #e2e8f0d9;grid-template-columns:92px minmax(0,1fr);gap:8px 16px;padding:12px 2px 14px;display:grid}.audit-day .audit-item:first-of-type{border-top:0}.audit-item time{font-variant-numeric:tabular-nums;color:var(--muted);padding-top:2px;font-size:13px}.audit-item-main{min-width:0}.audit-summary{margin:0;font-weight:600;line-height:1.4}.audit-meta{flex-wrap:wrap;align-items:center;gap:6px 8px;margin:6px 0 0;display:flex}.audit-meta span{color:var(--muted);font-size:13px}.audit-pill{background:var(--chrome,#f1f5f9);color:var(--muted);border-radius:999px;align-items:center;padding:2px 8px;font-size:12px;display:inline-flex}.device-table-wrap{margin-top:12px;overflow-x:auto}.device-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 16px;display:flex}.device-live{margin-top:4px}.device-table{width:100%}.device-badge{letter-spacing:.04em;border-radius:999px;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.device-badge.paired{color:#166534;background:#dcfce7}.device-badge.pending{color:#854d0e;background:#fef9c3}.device-badge.unlinked{color:#991b1b;background:#fee2e2}.device-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.device-name-input{border:1px solid var(--line);border-radius:10px;width:100%;max-width:220px;height:36px;padding:0 10px;font-size:14px;font-weight:700}.report-stats{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin:0 0 16px;display:grid}.analytics-kpis{flex-direction:column;gap:12px;width:100%;min-width:0;max-width:100%;margin:0 0 24px;display:flex}.analytics-kpi-row{gap:12px;width:100%;min-width:0;display:grid}.analytics-kpi-row.is-volume{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-kpi-row.is-status{grid-template-columns:repeat(5,minmax(0,1fr))}.analytics-kpi{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;justify-content:space-between;gap:10px;min-width:0;min-height:108px;padding:16px;display:flex;box-shadow:0 1px 2px #0f172a0a}.analytics-kpi-label{color:#64748b;letter-spacing:.01em;font-size:12px;font-weight:650;line-height:1.35;display:block}.analytics-kpi-value{letter-spacing:-.04em;color:#0f172a;font-variant-numeric:tabular-nums;font-size:clamp(1.5rem,2.4vw,1.85rem);font-weight:750;line-height:1.1;display:block}.analytics-kpi.tone-ink{border-top:3px solid var(--accent)}.analytics-kpi.tone-rate{border-top:3px solid var(--accent-hover);background:var(--accent-soft)}.analytics-kpi.tone-rate.is-warn{background:#fff1f2;border-top-color:#e11d48}.analytics-kpi.tone-rate.is-warn .analytics-kpi-value{color:#be123c}.analytics-kpi.tone-booked{border-top:3px solid var(--accent)}.analytics-kpi.tone-pending{border-top:3px solid #d97706}.analytics-kpi.tone-pending .analytics-kpi-value{color:#b45309}.analytics-kpi.tone-seated{border-top:3px solid #059669}.analytics-kpi.tone-seated .analytics-kpi-value{color:#047857}.analytics-kpi.tone-noshow{border-top:3px solid #e11d48}.analytics-kpi.tone-noshow .analytics-kpi-value{color:#be123c}.analytics-kpi.tone-cancelled{border-top:3px solid #94a3b8}.analytics-kpi.tone-cancelled .analytics-kpi-value{color:#475569}@media (max-width:1100px){.analytics-kpi-row.is-status{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.analytics-kpi-row.is-volume,.analytics-kpi-row.is-status{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-kpi-row.is-volume .analytics-kpi:last-child{grid-column:1/-1}}html.dark .analytics-kpi{background:#0f172a;border-color:#1e293b}html.dark .analytics-kpi-label{color:#94a3b8}html.dark .analytics-kpi-value{color:#f8fafc}html.dark .analytics-kpi.tone-rate{background:#312e8159}html.dark .analytics-kpi.tone-rate.is-warn{background:#88133759}html.dark .analytics-kpi.tone-rate.is-warn .analytics-kpi-value{color:#fda4af}html.dark .analytics-kpi.tone-pending .analytics-kpi-value{color:#fbbf24}html.dark .analytics-kpi.tone-seated .analytics-kpi-value{color:#34d399}html.dark .analytics-kpi.tone-noshow .analytics-kpi-value{color:#fb7185}html.dark .analytics-kpi.tone-cancelled .analytics-kpi-value{color:#cbd5e1}.report-empty{margin:8px 0 0}.report-limit{margin:0 0 12px}.sms-credit-bar{border:1px solid var(--line);background:#fff;border-radius:16px;margin:0 0 18px;padding:14px 16px}.sms-credit-title{color:var(--ink);margin:0 0 10px;font-size:13px;font-weight:700}.sms-credit-bar .report-stats{margin:0}.dialog-back{z-index:50;background:#0f172a75;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog-card{background:#fff;border-radius:22px;width:min(440px,100%);max-height:min(90vh,760px);padding:22px 24px;overflow-y:auto;box-shadow:0 24px 60px #0f172a38}.dialog-card p{margin:0 0 16px;line-height:1.5}.aiseo-back{place-items:stretch end;padding:0}.aiseo-drawer{border-radius:22px 0 0 22px;width:min(760px,100%);height:100%;max-height:100vh;padding:22px 24px 28px}.aiseo-drawer-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:4px;display:flex}.aiseo-tabs{margin:4px 0 16px}.aiseo-google-pair{grid-template-columns:1fr 280px;align-items:start;gap:16px;display:grid}.og-google-mobile{max-width:280px}.og-google-mobile .og-google-title{font-size:16px}.og-google-mobile .og-google-box{padding:12px}.ai-answer-card{background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;padding:14px 16px 16px}.ai-answer-body p{color:#0f172a;margin:0 0 10px;font-size:14px;font-weight:400;line-height:1.45}.ai-jsonld{color:#e2e8f0;white-space:pre-wrap;background:#0b1220;border-radius:10px;margin:0;padding:12px;font-size:11px;overflow-x:auto}.vx-deposit-dialog{width:min(960px,100vw - 32px);max-height:min(92vh,900px)}.vx-deposit-dialog .vx-section-head{margin-bottom:16px}.vx-deposit-dialog .vx-section-head p{margin:6px 0 0}.week-cal{margin:18px 0 8px}.week-cal-toolbar{flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 12px;display:flex}.week-cal-toolbar>p{flex:220px;margin:0}.week-cal-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 14px;font-size:12px;font-weight:650;display:flex}.week-cal-legend span{align-items:center;gap:6px;display:inline-flex}.week-cal-swatch{background:#e8edf3;border-radius:5px;width:14px;height:14px;display:inline-block}.week-cal-swatch.lunch{background:#e7e9ea}.week-cal-swatch.dinner{background:#111}.week-cal-open-hint{color:var(--ink)}.week-cal-frame{border:1px solid var(--line);box-shadow:var(--shadow-sm);-webkit-user-select:none;user-select:none;background:#fff;border-radius:20px;overflow:hidden}.week-cal-head,.week-cal-row{grid-template-columns:54px repeat(7,minmax(0,1fr));display:grid}.week-cal-head{color:#f8fafc;z-index:1;background:#0b1220;position:sticky;top:0}.week-cal-corner{display:block}.week-cal-day{appearance:none;color:inherit;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:11px 2px;font-size:11px;font-weight:750}.week-cal-day.weekend{color:#71767b}.week-cal-day.on{color:#042f2e;background:#71767b;box-shadow:inset 0 0 0 1px #0f766e33}.week-cal-body{background:linear-gradient(#fff,#fff) padding-box padding-box,linear-gradient(#f8fafc,#fff);max-height:440px;overflow:auto}.week-cal-time{letter-spacing:.04em;color:var(--muted);justify-content:flex-end;align-items:center;padding:0 8px 0 6px;font-size:10px;font-weight:700;display:flex}.week-cal-cell{appearance:none;cursor:pointer;touch-action:none;background:#eef2f6;border:0;border-radius:7px;height:22px;margin:1px 3px}.week-cal-cell:hover{box-shadow:inset 0 0 0 2px #0f766e59}.week-cal-cell.on.lunch{background:#e7e9ea}.week-cal-cell.on.dinner{background:#111}.week-cal-cell.on.start{border-radius:8px 8px 3px 3px}.week-cal-cell.on.mid{border-radius:3px;height:24px;margin-top:0;margin-bottom:0}.week-cal-cell.on.end{border-radius:3px 3px 8px 8px}.week-cal-cell.on.solo{border-radius:8px}.cap-editor{border:1px solid var(--line);background:linear-gradient(#f8fafc,#fff);border-radius:20px;margin:18px 0 8px;padding:18px 18px 16px}.cap-overview{margin:0 0 16px}.cap-overview-track{background:#eef2f6;border-radius:10px;height:28px;position:relative;overflow:hidden}.cap-overview.off .cap-overview-track{background:#f1f5f9}.cap-overview-bar{background:linear-gradient(90deg,#71767b,#111);border-radius:8px;height:16px;position:absolute;top:6px}.cap-overview-scale{color:var(--muted);letter-spacing:.04em;justify-content:space-between;margin-top:6px;font-size:10px;font-weight:700;display:flex}.cap-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:0 0 16px;display:grid}.cap-day{appearance:none;border:1px solid var(--line);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);cursor:pointer;background:#fff;border-radius:14px;padding:10px 4px;font-size:11px;font-weight:750}.cap-day.weekend{color:#111}.cap-day.on{color:#fff;background:#111;border-color:#111}.cap-status{flex-wrap:wrap;gap:10px;margin:0 0 16px;display:flex}.cap-choice{appearance:none;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:8px 14px 8px 10px;font-weight:650;display:inline-flex}.cap-choice i{border:2px solid #cbd5e1;border-radius:50%;width:14px;height:14px;display:inline-block}.cap-choice.on{color:#115e59;background:#f4f4f5;border-color:#0f766e59}.cap-choice.on i{background:#111;border-color:#111;box-shadow:inset 0 0 0 3px #f4f4f5}.cap-cutoff{max-width:280px}.cap-period{border:1px solid var(--line);background:#fff;border-radius:18px;margin:0 0 12px;padding:14px 16px 16px}.cap-period header{justify-content:space-between;align-items:center;gap:12px;margin:0 0 8px;display:flex}.cap-period h4{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:13px}.cap-period-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.cap-slider{margin:4px 0 14px}.cap-slider-times{color:var(--ink);align-items:center;gap:8px;margin:0 0 8px;display:flex}.cap-slider-times b{letter-spacing:-.03em;font-size:20px}.cap-slider-track{height:28px;position:relative}.cap-slider-track:before{content:"";background:#e2e8f0;border-radius:999px;height:6px;position:absolute;top:12px;left:0;right:0}.cap-slider-fill{pointer-events:none;background:#111;border-radius:999px;height:6px;position:absolute;top:12px}.cap-slider-track input[type=range]{pointer-events:none;appearance:none;background:0 0;width:100%;margin:0;position:absolute;inset:0}.cap-slider-track input[type=range]::-webkit-slider-thumb{pointer-events:auto;appearance:none;cursor:pointer;background:#fbbf24;border:3px solid #fff;border-radius:50%;width:20px;height:20px;box-shadow:0 1px 4px #0f172a33}.cap-slider-track input[type=range]::-moz-range-thumb{pointer-events:auto;cursor:pointer;background:#fbbf24;border:3px solid #fff;border-radius:50%;width:20px;height:20px;box-shadow:0 1px 4px #0f172a33}.cap-add{appearance:none;color:#111;cursor:pointer;background:0 0;border:0;padding:6px 0 14px;font-weight:750}.cap-clone{width:100%}.cap-specials{margin-top:8px}.cap-special-list{gap:8px;margin:12px 0;display:grid}.cap-special-row{align-items:center;gap:8px;display:flex}.cap-special-open{text-align:left;appearance:none;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:14px;flex:1;padding:12px 14px}.cap-special-open b{display:block}.cap-special-open span{color:var(--muted);font-size:13px}.cap-special-form{margin-top:12px}.cap-month{margin-top:8px}.cap-month-nav{justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;display:flex}.cap-month-nav h3{margin:0;font-size:18px}.cap-month-head,.cap-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.cap-month-head span{text-align:center;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:750}.cap-month-cell{appearance:none;border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:14px;flex-direction:column;gap:2px;min-height:92px;padding:8px;display:flex}.cap-month-cell.empty{background:0 0;border:0;min-height:0}.cap-month-cell b{font-size:14px}.cap-month-cell em,.cap-month-cell span,.cap-month-cell i{color:var(--muted);font-size:10px;font-style:normal;line-height:1.3}.cap-month-cell.today{box-shadow:inset 0 0 0 2px #111}.cap-month-cell.on{background:#f0fdfa}.cap-month-cell.special strong{color:#e11d48;font-size:11px}.cap-month-cell .changed{color:#111;font-weight:700}.cap-month-cell.closed{background:#f8fafc}.cap-month-cell i{color:#111;font-weight:700}.err{color:var(--danger);font-weight:650}.ok{color:var(--green);font-weight:650}.save-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.rules-section{border-bottom:1px solid #eee;margin-bottom:18px;padding-bottom:8px}.rules-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.rules-section .save-actions,.pay-box .save-actions{margin-top:16px}.save-note{margin:0;font-size:14px;line-height:1.3}.save-ok-dialog{text-align:center;width:min(360px,100%);padding:28px 24px 22px}.save-ok-dialog .save-ok-copy{letter-spacing:-.03em;color:var(--ink);margin:0 0 18px;font-size:17px;font-weight:700}.meta-line{color:#f8fafcd1;margin:10px 0 0;font-size:14px}.dash{max-width:1180px}.dash-h{letter-spacing:-.03em;margin:0 0 6px;font-size:20px}.plug-h{margin-top:28px}.copy-row{align-items:center;gap:8px;min-width:0;max-width:100%;display:flex}.copy-row input{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.dash-toolbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffb8;border:1px solid #e2e8f0e6;border-radius:20px;flex-wrap:wrap;align-items:flex-end;gap:14px;margin-bottom:22px;padding:14px 16px;display:flex}.portal-store-lock{background:#f1f5f9;border-radius:12px;align-items:center;height:42px;margin:0;padding:0 12px;font-weight:700;display:flex}.dash-split{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:18px;width:100%;display:grid}@media (max-width:860px){.dash-split{grid-template-columns:1fr}.nav{border-radius:18px}.site-nav:not(.guest-nav),.top{flex-direction:column;align-items:flex-start}.cap-month-grid{gap:4px}.cap-month-cell{border-radius:10px;min-height:72px;padding:6px}.cap-month-cell span,.cap-month-cell i,.cap-month-cell em,.cap-month-cell strong{font-size:9px}}.dash-form-grid{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.field textarea{border:1px solid var(--line);width:100%;min-width:0;max-width:100%;min-height:88px;color:var(--text);resize:vertical;background:#f8fafc;border-radius:14px;padding:12px 14px}.advice-box{background:var(--accent-soft);border-radius:16px;margin-bottom:14px;padding:14px 16px;font-size:14px}.advice-box p{margin:6px 0 0}.advice-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.advice-box textarea{background:#fff;width:100%;min-height:88px;margin:0}.guest-preview{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:24px;padding:22px}.guest-preview-lang{text-align:right;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.guest-preview .guest-hero{background:linear-gradient(160deg, #0f766e2e, #0b122014), var(--chrome);height:148px;color:var(--muted);border-radius:16px;justify-content:center;align-items:center;margin:10px 0 16px;font-weight:650;display:flex;position:relative;overflow:hidden}.guest-preview .guest-hero-photos{width:100%;height:100%;padding:0;display:block;position:absolute;inset:0}.guest-preview .guest-hero-photos img{object-fit:cover;border-radius:0;width:100%;height:100%;position:absolute;inset:0}.guest-preview .guest-hero-photos img:not(:first-child){display:none}.guest-preview .shop-map{z-index:0;position:relative}.guest-preview h3{font-family:var(--font-serif), "Songti TC", serif;margin:0 0 6px;font-size:28px;font-weight:400}.guest-preview h4{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:16px 0 6px;font-size:12px}.menu-edit{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,132px) minmax(0,1.4fr) minmax(0,.6fr) auto;align-items:start;gap:12px;width:100%;max-width:100%;margin-bottom:16px;padding-bottom:16px;display:grid;overflow-x:auto}.menu-edit.has-tools{grid-template-columns:44px 132px 1.4fr .6fr auto}.menu-edit.is-dragging{opacity:.45}.menu-edit.is-drop{outline:2px dashed var(--teal,#111);outline-offset:4px;border-radius:8px}.menu-card-tools{flex-direction:column;align-items:center;gap:4px;padding-top:4px;display:flex}.menu-move{min-width:36px;padding:4px 8px;line-height:1}.menu-move:disabled{opacity:.35}.menu-drag{border:1px solid var(--line);color:#64748b;letter-spacing:-2px;cursor:grab;background:#f8fafc;border-radius:8px;width:36px;height:32px;font-size:14px;line-height:1}.menu-drag:active{cursor:grabbing}.menu-photo-slot{flex-direction:column;gap:8px;min-width:0;max-width:100%;display:flex;position:relative;overflow:clip}.menu-photo-pick{cursor:pointer;background:0 0;border:0;width:120px;height:120px;padding:0;display:block;position:relative}.menu-photo{object-fit:cover;border:1px solid var(--line);background:#f1f5f9;border-radius:14px;width:120px;height:120px}.menu-photo-empty{text-align:center;color:var(--muted);justify-content:center;align-items:center;padding:8px;font-size:12px;font-weight:650;display:flex}.menu-photo-input{opacity:0;pointer-events:none;border:0;width:100%;min-width:0;max-width:100%;height:100%;margin:0;padding:0;font-size:0;position:absolute;inset:0;overflow:hidden}.photo-source-dialog{width:min(460px,100%)}.photo-source-dialog .dash-h{margin-top:0}.photo-source-device{width:100%;margin:0 0 8px}.photo-source-cloud{border-top:1px solid var(--line);gap:8px;margin:16px 0;padding-top:14px;display:grid}.photo-source-cloud label{font-weight:650}.photo-source-cloud input{width:100%}.menu-photo-pick:focus-within .menu-photo,.menu-photo-pick:hover .menu-photo{border-color:var(--teal,#111)}.shop-photo-row{grid-template-columns:repeat(auto-fill,minmax(min(148px,100%),1fr));gap:12px;width:100%;min-width:0;display:grid}.shop-photo-cell{min-width:0;max-width:100%;overflow:clip}.shop-photo-url{max-width:100%;font-size:12px}.hero-photo-slot{width:100%}.hero-photo-pick{aspect-ratio:3/2;background:#111827;width:100%;height:auto;overflow:hidden}.og-photo-pick{aspect-ratio:1200/630;width:100%;max-width:420px;height:auto}.share-thumb-pick{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:22px;display:flex}.share-thumb-pick .shop-photo-url{width:100%;max-width:420px}.og-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;width:100%;margin:12px 0 8px;display:grid}.og-app{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:11px;font-weight:750}.og-ph{width:100%;height:100%;color:var(--muted);text-align:center;background:#e2e8f0;justify-content:center;align-items:center;padding:8px;font-size:12px;font-weight:650;display:flex}.og-card img,.og-card .og-ph{object-fit:cover;width:100%;height:100%;display:block}.og-fb-box{background:#f0f2f5;border:1px solid #d8dadf;border-radius:8px;font-family:Helvetica,Arial,sans-serif;overflow:hidden}.og-fb-img{aspect-ratio:1.91;background:#ccd0d5}.og-fb-copy{background:#f0f2f5;padding:10px 12px 12px}.og-fb-copy span{color:#65676b;letter-spacing:.04em;font-size:11px;display:block}.og-fb-copy b{color:#050505;margin:2px 0 0;font-size:15px;line-height:1.25;display:block}.og-fb-copy p{color:#65676b;margin:4px 0 0;font-size:13px;line-height:1.35}.og-ig-box{background:#fff;border:1px solid #efefef;border-radius:12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}.og-ig-img{aspect-ratio:1;background:#fafafa}.og-ig-copy{padding:10px 12px 12px}.og-ig-copy b{color:#262626;font-size:14px;display:block}.og-ig-copy span{color:#8e8e8e;margin-top:2px;font-size:12px;display:block}.og-wa-box{background:#fff;border-radius:8px;max-width:280px;font-family:Segoe UI,Helvetica,Arial,sans-serif;overflow:hidden;box-shadow:0 1px 2px #0b122014}.og-card.og-wa{background:#ece5dd;border-radius:16px;padding:12px}.og-wa-img{aspect-ratio:1.91;background:#d1d7db}.og-wa-copy{padding:8px 10px 10px}.og-wa-copy b{color:#111b21;font-size:14px;display:block}.og-wa-copy p{color:#667781;margin:3px 0 0;font-size:12px;line-height:1.35}.og-wa-copy span{color:#8696a0;margin-top:4px;font-size:11px;display:block}.og-wx-box{background:#fff;border-radius:4px;align-items:stretch;gap:10px;padding:10px;font-family:PingFang SC,PingFang HK,sans-serif;display:flex;box-shadow:0 1px 3px #00000014}.og-card.og-wx{background:#ededed;border-radius:12px;padding:12px}.og-wx-img{background:#d9d9d9;flex:0 0 64px;width:64px;height:64px;overflow:hidden}.og-wx-copy{flex-direction:column;justify-content:space-between;min-width:0;display:flex}.og-wx-copy b{color:#191919;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:650;line-height:1.35;display:-webkit-box;overflow:hidden}.og-wx-copy span{color:#b2b2b2;font-size:11px}.seo-preview-grid{grid-template-columns:1fr 1fr;gap:16px;margin:12px 0 18px;display:grid}.og-google-box{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px 16px;font-family:Arial,Helvetica,sans-serif}.og-google-cite{align-items:center;gap:10px;margin-bottom:6px;display:flex}.og-google-favicon{background:linear-gradient(135deg,#fbbc04,#34a853 55%,#4285f4);border-radius:50%;flex:0 0 26px;width:26px;height:26px}.og-google-cite b{color:#202124;font-size:14px;font-weight:400;line-height:1.2;display:block}.og-google-cite span{color:#4d5156;word-break:break-all;font-size:12px;display:block}.og-google-title{color:#1a0dab;margin:0 0 4px;font-size:20px;font-weight:400;line-height:1.3;text-decoration:none;display:inline-block}.og-google-title:hover{text-decoration:underline}.og-google-box p{color:#4d5156;margin:0;font-size:14px;line-height:1.45}@media (max-width:760px){.seo-preview-grid,.aiseo-google-pair{grid-template-columns:1fr}.aiseo-drawer{border-radius:22px 22px 0 0;align-self:end;width:100%;height:min(92vh,100%)}.aiseo-back{place-items:end stretch}}.hero-photo{object-fit:contain;background:#111827;width:100%;height:100%}.guest-hero-photos{grid-template-columns:repeat(5,1fr);gap:6px;width:100%;height:100%;padding:8px;display:grid}.guest-hero-photos img{object-fit:cover;border-radius:10px;width:100%;min-width:0;height:100%}.guest-hero-photos img:first-child{grid-column:1/-1}.shop-photo-cover{letter-spacing:.06em;text-transform:uppercase;margin:6px 0 0;font-size:11px}.shop-photos{grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0 0;display:grid}.shop-photos img{object-fit:cover;background:#f1f5f9;border-radius:14px;width:100%;height:140px}.check-row{flex-wrap:wrap;gap:16px 24px;margin:12px 0 18px;display:flex}.check-row label{cursor:pointer;align-items:center;gap:8px;font-size:14px;font-weight:650;display:flex}.check-row input{width:16px;height:16px;accent-color:var(--accent)}.ui-toggle{color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;margin:12px 0 6px;font-size:14px;font-weight:650;display:flex}.ui-toggle input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.ui-toggle-track{background:#cbd5e1;border-radius:999px;flex:none;width:44px;height:26px;transition:background .18s;position:relative}.ui-toggle-track:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0f172a38}.ui-toggle input:checked+.ui-toggle-track{background:var(--accent)}.ui-toggle input:checked+.ui-toggle-track:after{transform:translate(18px)}.ui-toggle input:focus-visible+.ui-toggle-track{outline:2px solid var(--accent);outline-offset:2px}.seo-deny-row{margin:4px 0 6px}.guest-layout-pick{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:12px;margin-bottom:14px;display:grid}.guest-layout-pick label{cursor:pointer;border:1px solid #e5e5e5;border-radius:10px;align-items:flex-start;gap:10px;margin:0;padding:12px 14px;display:flex}.guest-layout-pick label.on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 7%, #fff)}.guest-layout-pick input{width:16px;height:16px;accent-color:var(--accent);margin-top:2px}.guest-layout-pick b{font-size:14px;font-weight:700;display:block}.guest-layout-pick small{color:#737373;margin-top:4px;font-size:13px;font-weight:500;line-height:1.45;display:block}.check-line{color:var(--text);cursor:pointer;align-items:center;gap:10px;margin:0 0 16px;font-size:14px;font-weight:650;display:flex}.check-line input{width:16px;height:16px;accent-color:var(--accent);flex:none}.reminder-when{border:1px solid var(--line);background:#f8fafc;border-radius:14px;align-items:stretch;width:fit-content;max-width:100%;height:48px;transition:border-color .15s,box-shadow .15s,background .15s;display:flex;overflow:hidden}.reminder-when:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px rgba(var(--accent-rgb), .16);background:#fff}.reminder-when input,.field .reminder-when input{width:72px;height:48px;box-shadow:none;text-align:center;font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:0;margin:0;padding:0 12px}.field .reminder-when input:focus{box-shadow:none;background:0 0;border:0}.reminder-when input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.reminder-when input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.reminder-seg{border-left:1px solid var(--line);align-items:stretch;display:flex}.reminder-seg button{min-width:72px;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 16px;font-size:13px;font-weight:650}.reminder-seg button+button{border-left:1px solid var(--line)}.reminder-seg button.on{background:var(--ink);color:#fff}.reminder-via .chip{text-align:center;border-radius:14px;min-width:88px}.pay-box{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.tpl-tokens{flex-wrap:wrap;gap:6px;margin:10px 0 4px;display:flex}.tpl-tokens .chip{letter-spacing:0;text-transform:none;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:600}.tpl-group{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.tpl-group-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.tpl-group-head h3.dash-h{margin:0}.tpl-group-head .btn{flex:none;height:36px;padding:0 12px;font-size:13px}.tpl-preview{border:1px solid var(--line);background:#f8fafc;border-radius:12px;margin:8px 0 0;padding:10px 12px}.tpl-preview summary{cursor:pointer;color:var(--muted);font-size:13px;font-weight:650}.tpl-preview-kicker{margin:10px 0 6px;font-weight:700}.tpl-preview pre{white-space:pre-wrap;font:inherit;margin:0 0 10px;font-size:13px;line-height:1.45}.tpl-preview-sms{color:var(--muted);margin:0;font-size:13px}.tpl-test-line{align-items:stretch;gap:8px;display:flex}.tpl-test-line input{flex:1;min-width:0}.tpl-test-line .btn{white-space:nowrap;flex:none;height:auto;padding:0 14px;font-size:13px}.pay-box .guest-phone{grid-column:auto}.pay-box .guest-phone-row .btn{white-space:nowrap;flex:none;height:48px;padding:0 14px}.guest-deposit{background:var(--accent-soft,#ecfdf5);border-radius:16px;margin:0 0 16px;padding:12px 14px;font-size:14px;line-height:1.45}.guest-sandbox-note{color:#92400e;margin-top:6px;font-weight:600;display:inline-block}.guest-stripe-dialog{width:min(520px,100vw - 24px);max-height:calc(100vh - 24px);overflow:auto}.guest-stripe-frame{min-height:380px;margin:12px 0 16px}body.vx-page{background:#fff}.vx{--vx-line:#eaeaea;--vx-muted:#666;--vx-ink:#171717;--vx-hover:#f2f2f2;--vx-radius:8px;min-height:100vh;color:var(--vx-ink);background:#fff;font-size:14px;display:flex}.vx a{color:inherit}.vx kbd{color:#888;border:1px solid var(--vx-line);background:#fafafa;border-radius:4px;padding:2px 5px;font:11px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.vx-login{justify-content:center;align-items:center;padding:48px 20px}.vx-login-card{width:100%;max-width:380px}.vx-login-card .vx-brand{letter-spacing:-.03em;margin:0 0 8px;font-size:18px;font-weight:650}.vx-side{border-right:1px solid var(--vx-line);background:#fff;flex-direction:column;flex:0 0 248px;width:248px;height:100vh;min-height:100vh;display:flex;position:sticky;top:0}.vx-side-top{padding:16px 12px 8px}.vx-side-brand{align-items:center;gap:8px;padding:4px 8px 12px;display:flex}.vx-logo{letter-spacing:-.03em;font-size:15px;font-weight:650}.vx-pill{color:#666;background:#f2f2f2;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:550}.vx-find{border:1px solid var(--vx-line);background:#fafafa;border-radius:6px;align-items:center;gap:8px;height:36px;padding:0 8px;display:flex}.vx-find-label{color:#888;flex:none;font-size:13px}.vx-find input{min-width:0;height:34px;box-shadow:none;background:0 0;border:0;outline:none;flex:1;padding:0;font-size:13px}.vx-nav,.vx-side-foot{flex-direction:column;gap:2px;padding:8px;display:flex}.vx-nav{flex:1;overflow:auto}.vx-side-foot{border-top:1px solid var(--vx-line);padding-bottom:16px}.vx-nav-label{letter-spacing:.06em;text-transform:uppercase;color:#888;margin:14px 8px 6px;font-size:11px;font-weight:650}.vx-nav button,.vx-side-foot button,.vx-side-foot a{text-align:left;width:100%;color:var(--vx-ink);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:500;display:flex}.vx-nav button:disabled,.vx-side-foot button:disabled{opacity:.4;cursor:not-allowed}.vx-nav button:hover,.vx-side-foot button:hover,.vx-side-foot a:hover,.vx-nav button.on,.vx-side-foot button.on{background:var(--vx-hover)}.vx-main{flex-direction:column;flex:1;min-width:0;display:flex}.vx-head{border-bottom:1px solid var(--vx-line);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;height:52px;padding:0 24px;display:grid}.vx-head h1{text-align:center;letter-spacing:-.02em;margin:0;font-size:14px;font-weight:650}.vx-crumb{color:#666;align-items:center;gap:6px;min-width:0;font-size:13px;display:flex}.vx-crumb button{color:#666;cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.vx-crumb button:hover{color:var(--vx-ink)}.vx-agent-row{justify-self:end;align-items:center;gap:10px;display:flex}.vx-agent{color:#666;border:1px solid var(--vx-line);font-size:12px;font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:4px 10px}.vx-agent:hover{color:var(--vx-ink);background:#f4f4f5}.vx-logout{border:1px solid var(--vx-line);color:var(--vx-ink);cursor:pointer;background:#fff;border-radius:8px;padding:5px 10px;font-size:12px;font-weight:650}.vx-logout:hover{background:#f4f4f5}.vx-flash{margin:12px 24px 0}.vx-toolbar{align-items:center;gap:10px;padding:16px 24px;display:flex}.vx-search{border:1px solid var(--vx-line);background:#fafafa;border-radius:6px;flex:1;align-items:center;gap:8px;height:36px;padding:0 10px;display:flex}.vx-search input{box-shadow:none;background:0 0;border:0;outline:none;flex:1;height:34px;padding:0;font-size:13px}.vx-btn{border:1px solid var(--vx-line);height:32px;color:var(--vx-ink);cursor:pointer;white-space:nowrap;background:#fff;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:550;display:inline-flex}.vx-btn:hover{background:var(--vx-hover)}.vx-btn:disabled{opacity:.4;filter:grayscale(.15);cursor:not-allowed;pointer-events:none}.vx a.vx-btn{text-decoration:none}.vx-btn-primary{color:#fff;background:#171717;border-color:#171717}.vx-btn-primary:hover{background:#000}.vx-list{border:1px solid var(--vx-line);border-radius:8px;margin:0 24px 40px;overflow:hidden}.vx-list-head,.vx-list-row{text-align:left;width:100%;color:inherit;background:#fff;border:0;grid-template-columns:minmax(180px,1.6fr) 80px 140px 140px;align-items:center;gap:12px;padding:12px 16px;display:grid}.vx-list-head{color:#888;border-bottom:1px solid var(--vx-line);font-size:12px}.vx-list-row{border-top:1px solid var(--vx-line);cursor:pointer;font-size:13px}.vx-list-row:first-of-type{border-top:0}.vx-list-row:hover{background:#fafafa}.vx-list-name{flex-direction:column;gap:2px;min-width:0;display:flex}.vx-list-name strong{font-weight:600}.vx-list-name span{color:#888;font-size:12px}.vx-status{color:#666;align-items:center;gap:6px;display:flex}.vx-dot{background:#d4d4d4;border-radius:50%;flex:none;width:8px;height:8px}.vx-dot.on{background:#17c964}.vx-dot.off{background:#f31260}.vx-empty{color:#888;text-align:center;margin:0;padding:28px 16px}.vx-section{margin:20px 24px 32px;padding-bottom:8px}.vx-panel{background:#fff;border:1px solid #ececec;border-radius:16px;margin:20px 24px 24px;padding:20px 22px 22px}.vx-panel .vx-section-head{margin-bottom:14px}.vx-section-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.vx-section-head h2{letter-spacing:-.02em;margin:0 0 4px;font-size:16px;font-weight:650}.vx-section-head p{color:#666;max-width:640px;margin:0;font-size:13px;line-height:1.5}.vx-section-head code{background:#f4f4f4;border-radius:4px;padding:1px 5px;font-size:12px}.vx-meta{border-bottom:1px solid var(--vx-line);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0 24px;display:grid}.vx-meta>div{padding:16px 16px 16px 0}.vx-meta span{color:#888;margin-bottom:4px;font-size:12px;display:block}.vx-meta strong{word-break:break-all;font-size:13px;font-weight:550}.vx-meta-url{align-items:flex-start;gap:8px;display:flex}.vx-meta-url strong{flex:1;min-width:0}.vx-copy{border:1px solid var(--vx-line);color:#444;cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin:0;padding:0;display:inline-flex}.vx-copy:hover{background:var(--vx-hover)}.vx-scope-row,.vx-checks,.vx-check-line{flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:13px;display:flex}.vx-scope-row{margin-bottom:10px}.vx-scope-row span{color:#888;min-width:110px;font-weight:550}.vx-scope-row select,.vx-table-row select{border:1px solid var(--vx-line);background:#fafafa;border-radius:6px;min-width:120px;height:32px;padding:0 8px}.vx-checks{margin:12px 0}.vx-premium-controls{align-items:flex-start}.vx-premium-until{color:#666;flex-direction:column;gap:4px;font-size:12px;font-weight:500;display:flex}.vx-premium-until input[type=date]{border:1px solid var(--vx-line);background:#fff;border-radius:6px;min-width:150px;height:32px;padding:0 8px}.vx-premium-presets{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.vx-premium-presets .vx-btn{min-height:32px;padding:0 10px;font-size:12px}.vx-check-line{cursor:pointer;margin:16px 0 0}.vx-checks label,.vx-scope-row label,.vx-check-line{cursor:pointer;font-weight:500}.vx-split{border:1px solid var(--vx-line);border-radius:8px;grid-template-columns:1fr 1fr minmax(140px,.7fr);gap:16px;margin-top:16px;padding:16px;display:grid}.vx-kicker{letter-spacing:.06em;text-transform:uppercase;color:#888;margin:0 0 6px;font-size:11px;font-weight:650;display:block}.vx-secret-row{align-items:stretch;gap:8px;display:flex}.vx-secret-row input{flex:1;min-width:0}.vx-secret-row .vx-btn{white-space:nowrap;flex:none;margin-top:0}.vx-secret-eye{min-width:40px;padding-left:10px;padding-right:10px}.vx-muted{color:#888;margin:4px 0 0;font-size:12px}.vx-index-badge{margin:6px 0 0;font-size:12px;font-weight:650}.vx-index-badge.on{color:#15803d}.vx-index-badge.off{color:#b91c1c}.vx-inline{align-items:center;gap:8px;display:flex}.vx-inline input{flex:1;min-width:0}.vx-sms{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.vx-analytics{border:1px solid var(--vx-line);background:#fafafa;border-radius:8px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.vx-analytics strong{font-size:14px;font-weight:600}.vx-form{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.vx-span{grid-column:1/-1}.vx-slug{border:1px solid var(--vx-line);background:#fafafa;border-radius:6px;align-items:center;height:36px;display:flex;overflow:hidden}.vx-slug span{color:#888;white-space:nowrap;flex:none;padding:0 0 0 10px;font-size:13px}.vx-slug input{flex:1;min-width:0;height:34px;padding:0 10px 0 0;box-shadow:none!important;background:0 0!important;border:0!important}.vx-slug:focus-within{background:#fff;border-color:#a3a3a3}.vx-urls{border:1px solid var(--vx-line);background:#fafafa;border-radius:8px;gap:8px;margin:0 0 16px;padding:12px 14px;display:grid}.vx-urls p{flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin:0;font-size:13px;display:flex}.vx-urls span{color:#888;min-width:120px}.vx-urls code{color:var(--vx-ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.vx-team-head,.vx-team-row{grid-template-columns:minmax(180px,1.4fr) minmax(140px,.8fr) minmax(160px,.8fr)}.vx-team-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.vx-group-row{cursor:default;grid-template-columns:1.4fr 1fr}.vx-group-row:hover{background:#fff}.vx-usage{padding:8px 24px 40px}.vx-usage-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:8px 0 18px;display:flex}.vx-range-label{color:#666;font-size:13px}.vx-pills{border:1px solid var(--vx-line);background:#fafafa;border-radius:999px;flex-wrap:wrap;gap:4px;padding:3px;display:flex}.vx-pills button{color:#666;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:550}.vx-pills button.on{color:#fff;background:#171717}.vx-stat-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.vx-stat-card{border:1px solid var(--vx-line);background:#fff;border-radius:8px;padding:16px 18px}.vx-stat-card span{color:#888;margin-bottom:6px;font-size:12px;display:block}.vx-stat-card strong{letter-spacing:-.03em;font-size:28px;font-weight:650}.vx-chart-card{border:1px solid var(--vx-line);background:#fff;border-radius:8px;margin-bottom:24px;padding:16px 18px 12px}.vx-chart{width:100%;height:auto;display:block}.vx-chart-grid{stroke:#eee;stroke-width:1px}.vx-chart-today{stroke:#999;stroke-dasharray:4 4;stroke-width:1px}.vx-chart-tick{fill:#888;font-size:10px}.vx-legend{color:#555;flex-wrap:wrap;gap:10px 16px;margin-top:8px;font-size:12px;display:flex}.vx-legend i{border-radius:2px;width:8px;height:8px;margin-right:6px;display:inline-block}.vx-inline-label{color:#666;align-items:center;gap:8px;font-size:12px;display:flex}.vx-inline-label select{border:1px solid var(--vx-line);background:#fafafa;border-radius:6px;height:32px;padding:0 8px}.vx-usage-head,.vx-usage-row{grid-template-columns:140px 110px minmax(140px,1.4fr) 70px 90px}.vx-usage-row span:nth-child(4),.vx-usage-row span:nth-child(5),.vx-usage-head span:nth-child(4),.vx-usage-head span:nth-child(5){text-align:right}.vx-spend-top{grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 24px;display:grid}.vx-plan-card{border:1px solid var(--vx-line);background:#fff;border-radius:8px;padding:18px 20px}.vx-plan-up{background:#f4f8ff;border-color:#d7e3f4}.vx-plan-kicker{color:#888;margin:0 0 6px;font-size:12px}.vx-plan-card h2{letter-spacing:-.03em;margin:0 0 8px;font-size:22px;font-weight:650}.vx-plan-card h2 span{color:#888;font-size:16px;font-weight:500}.vx-quota{margin:0 0 28px}.vx-quota h2{margin:0 0 14px;font-size:16px;font-weight:650}.vx-quota-row{margin-bottom:16px}.vx-quota-copy{flex-direction:column;gap:2px;margin-bottom:6px;display:flex}.vx-quota-copy strong{font-size:13px;font-weight:600}.vx-quota-copy span{color:#888;font-size:12px}.vx-quota-meter{grid-template-columns:1fr auto;align-items:center;gap:12px;display:grid}.vx-quota-track{background:#ececec;border-radius:99px;height:8px;overflow:hidden}.vx-quota-track i{background:#2563eb;border-radius:99px;height:100%;display:block}.vx-quota-track.empty i{background:#d4d4d4}.vx-quota-meter em{color:#666;white-space:nowrap;font-size:12px;font-style:normal}@media (max-width:960px){.vx-stat-row,.vx-spend-top,.vx-usage-head,.vx-usage-row{grid-template-columns:1fr}.vx-usage-head{display:none}}.vx-ro{border:0;min-width:0;margin:0;padding:0}.vx-add{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.vx-add input{flex:1;min-width:140px}.vx-table{border:1px solid var(--vx-line);border-radius:8px;overflow:hidden}.vx-table-head,.vx-table-row{grid-template-columns:minmax(180px,1.2fr) minmax(140px,.8fr) minmax(160px,.9fr) minmax(160px,.9fr) minmax(140px,.6fr);align-items:start;gap:12px;padding:14px 16px;display:grid}.vx-table-head-venue,.vx-table-row-venue{grid-template-columns:minmax(150px,1.1fr) minmax(110px,.5fr) minmax(200px,1fr) minmax(140px,.8fr) minmax(110px,.55fr) minmax(140px,.8fr) minmax(120px,.5fr)}.vx-split-fees{grid-template-columns:1fr 1fr minmax(160px,.85fr) minmax(140px,.7fr)}.vx-audit-head,.vx-audit-row{grid-template-columns:minmax(160px,.7fr) minmax(180px,.8fr) minmax(220px,1.4fr)}.vx-table-head{color:#888;border-bottom:1px solid var(--vx-line);background:#fafafa;font-size:12px}.vx-table-row{border-top:1px solid var(--vx-line)}.vx-table-row:first-of-type{border-top:0}.vx-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.vx-btn-danger{color:#e11d48;background:#fff;border-color:#fecdd3}.vx-btn-danger:hover{color:#be123c;background:#fff1f2}.vx-outlet-edit{gap:8px;display:grid}.vx-outlet-edit input{width:100%}.vx-link{color:#888;cursor:pointer;background:0 0;border:0;margin-top:6px;padding:0;font-size:12px;display:inline-block}.vx-link:hover{color:#e11d48}.vx .field{margin-bottom:14px}.vx .field label{color:#666;margin-bottom:6px;font-size:12px;font-weight:550;display:block}.vx .field input,.vx .field select,.vx .vx-add input,.vx .vx-inline input{border:1px solid var(--vx-line);background:#fafafa;border-radius:6px;outline:none;width:100%;height:36px;padding:0 10px}.vx .field input:focus,.vx .field select:focus,.vx .vx-add input:focus,.vx .vx-inline input:focus,.vx .vx-search:focus-within,.vx .vx-find:focus-within{box-shadow:none;background:#fff;border-color:#a3a3a3}.vx .field .vx-btn{width:fit-content;margin-top:8px}.vx .field .vx-secret-row{align-items:center;gap:8px;display:flex}.vx .field .vx-secret-row input{flex:auto;width:auto;min-width:0;height:36px}.vx .field .vx-secret-row .vx-btn{flex:none;align-self:center;width:auto;height:36px;margin-top:0}.pw-input-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pw-input-row input{flex:1;min-width:0}.pw-input-row .btn,.pw-input-row .vx-btn,.vx .field .pw-input-row .vx-btn{white-space:nowrap;flex:none;width:auto;height:36px;margin-top:0}.pw-rules{gap:4px;margin:8px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.pw-rules li{color:#737373;align-items:center;gap:8px;display:flex}.pw-rules li.on{color:var(--green,#15803d)}.pw-optional-hint{margin:6px 0 0}.vx input[type=checkbox],.vx input[type=radio]{accent-color:#171717;width:14px;height:14px}@media (max-width:960px){.vx{flex-direction:column}.vx-side{border-right:0;border-bottom:1px solid var(--vx-line);flex:none;width:100%;height:auto;position:static}.vx-nav{flex-flow:wrap;overflow:visible}.vx-side-foot{border-top:0;flex-direction:row}.vx-head{grid-template-columns:1fr auto;height:auto;padding:12px 16px}.vx-head h1{text-align:left;grid-column:1/-1}.vx-meta,.vx-split,.vx-form,.vx-list-head,.vx-list-row,.vx-table-head,.vx-table-row{grid-template-columns:1fr}.vx-list-head,.vx-table-head{display:none}}.guest-menu-card{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;gap:0;padding:0;display:flex;overflow:hidden}.guest-menu-card img,.guest-menu-photo img{object-fit:cover;background:#eef1f5;width:100%;height:148px;display:block}.guest-menu-photo{background:#eef1f5;width:100%;height:148px;display:block;position:relative;overflow:hidden}.guest-menu-meta{justify-content:space-between;gap:12px;padding:12px 14px;display:flex}.policy-list{color:var(--text);padding-left:1.2rem;list-style:outside}.policy-list li{margin-bottom:10px;line-height:1.55}.lang-bar{flex-wrap:wrap;align-items:flex-end;gap:12px;width:100%;min-width:0;max-width:100%;display:flex}.lang-field{flex:148px;min-width:0;max-width:100%;margin:0}.lang-field label:empty{display:none}.lang-switch{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:14px;gap:4px;width:100%;padding:4px;display:flex}.lang-switch button{appearance:none;color:#475569;min-height:40px;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:10px;flex:1 1 0;padding:6px 8px;font-size:14px;font-weight:700}.lang-switch button.on{color:#0f172a;background:#fff;box-shadow:0 1px 2px #0f172a14}.guest-menu{grid-template-columns:1fr 1fr;gap:10px;margin-top:28px;display:grid}@media (max-width:640px){.guest-menu{grid-template-columns:1fr}}.guest-menu-card b{font-weight:650}.guest-menu-card span{color:var(--accent);font-weight:700}.guest-packages{margin-top:22px;padding-top:8px}.guest-packages .guest-menu{margin-top:12px}.guest-menu-card.is-pick{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;appearance:none}.guest-menu-card.is-on{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 40%, transparent)}.guest-menu-card.is-pick:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.guest-menu-picked{color:var(--accent);margin-top:4px;font-size:12px;font-weight:650;display:block}.guest-policy{border-top:1px solid var(--line);margin-top:32px;padding-top:8px}.guest-policy h3{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:16px 0 12px;font-size:13px}.wrap.login-shell{width:100%;max-width:100%}.login-shell{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;width:100%;min-width:0;max-width:100%;min-height:100vh;padding:28px 16px 48px;display:flex;overflow-x:hidden}.login-shell .site-nav{flex-direction:column;align-items:stretch;gap:10px;width:min(100%,28rem);min-width:0;max-width:100%;margin-bottom:20px}.login-shell .brand-mark{letter-spacing:-.03em;text-transform:none;font-size:28px;font-weight:700;line-height:1.15}.login-shell .site-nav .muted{letter-spacing:0;text-transform:none;margin:6px 0 0;line-height:1.45}.login-shell .lang-field{flex:auto;align-self:stretch;width:100%;max-width:100%}.login-shell .lang-switch{width:100%;min-width:0}.login-shell .btn:not(.btn-primary){color:var(--text);border:1px solid var(--line);background:0 0}html.dark .login-shell .btn:not(.btn-primary){color:#e2e8f0;background:0 0;border-color:#334155}html.dark .login-shell .btn:not(.btn-primary):hover{background:#1e293b}html.dark .login-shell .lang-switch{background:#0f172a;border-color:#334155}html.dark .login-shell .lang-switch button{color:#94a3b8}html.dark .login-shell .lang-switch button.on{color:#f8fafc;background:#1e293b}.login-card{box-sizing:border-box;width:100%;min-width:0;max-width:28rem;margin:0 auto;padding:1.5rem;overflow:hidden}.login-card .field{width:100%;min-width:0;margin:0}.login-card .field label{text-align:left}.login-card .field input,.login-card .field input[type=password]{box-sizing:border-box;text-align:left;border:1px solid var(--line);width:100%;min-width:0;max-width:100%;height:auto;min-height:44px;color:var(--text);appearance:none;background:#ededf0;border-radius:14px;outline:none;padding:.75rem 1rem;font-size:16px;transition:border-color .15s,box-shadow .15s,background .15s;display:block}.login-card .field input:focus,.login-card .field input[type=password]:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(var(--accent-rgb), .16);background:#fff}html.dark .login-card .field input,html.dark .login-card .field input[type=password]{color:#f8fafc;background:#1c2333;border-color:#3d4659}html.dark .login-card .field input:focus,html.dark .login-card .field input[type=password]:focus{border-color:var(--accent);background:#0f172a}.login-card .field input:-webkit-autofill{-webkit-text-fill-color:var(--text);border:1px solid var(--line);box-shadow:inset 0 0 0 1000px #ededf0}.login-card .field input[type=password]:-webkit-autofill{-webkit-text-fill-color:var(--text);border:1px solid var(--line);box-shadow:inset 0 0 0 1000px #ededf0}.login-card .field input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);border:1px solid var(--line);box-shadow:inset 0 0 0 1000px #ededf0}.login-card .field input[type=password]:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);border:1px solid var(--line);box-shadow:inset 0 0 0 1000px #ededf0}html.dark .login-card .field input:-webkit-autofill{-webkit-text-fill-color:#f8fafc;border-color:#3d4659;box-shadow:inset 0 0 0 1000px #1c2333}html.dark .login-card .field input[type=password]:-webkit-autofill{-webkit-text-fill-color:#f8fafc;border-color:#3d4659;box-shadow:inset 0 0 0 1000px #1c2333}html.dark .login-card .field input:-webkit-autofill:focus{-webkit-text-fill-color:#f8fafc;border-color:#3d4659;box-shadow:inset 0 0 0 1000px #1c2333}html.dark .login-card .field input[type=password]:-webkit-autofill:focus{-webkit-text-fill-color:#f8fafc;border-color:#3d4659;box-shadow:inset 0 0 0 1000px #1c2333}.login-card .pw-input-row{width:100%;min-width:0}.login-card .pw-input-row input{border:1px solid var(--line);min-width:0;color:var(--text);box-sizing:border-box;background:#ededf0;border-radius:14px;min-height:44px}html.dark .login-card .pw-input-row input{color:#f8fafc;background:#1c2333;border-color:#3d4659}code{background:#f1f5f9;border-radius:10px;margin-top:4px;padding:8px 10px;font-size:13px;display:inline-block}.guest-nav-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.party-chips,.chips-scroll{margin:8px 0 16px}.guest-page .field input,.guest-page .field select,.guest-shell .field input,.guest-shell .field select{max-width:100%;font-size:16px}.chip{min-width:44px;min-height:44px}body.guest-page-body,html.dark body.guest-page-body,html.guest-light,html.guest-light.dark,html.guest-light body{color:#111;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff}.guest-shell{--surface:#fff;--chrome:#f8fafc;--card:#fff;--ink:#0b1220;--text:#111827;--muted:#64748b;--line:#e2e8f0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#111;background:#fff;width:100%;min-width:0;max-width:560px;min-height:100vh;margin:0 auto;padding:0 0 48px;overflow-x:clip}.guest-shell,.guest-shell *,.guest-shell :before,.guest-shell :after{box-sizing:border-box}.guest-shell .field,.guest-shell .guest-contact,.guest-shell .guest-filters,.guest-shell .guest-details,.guest-shell .guest-phone-row,.guest-shell .field input,.guest-shell .field select,.guest-shell .field textarea{width:100%;min-width:0;max-width:100%}.guest-top{color:#111;background:#fff;justify-content:flex-end;align-items:center;gap:8px;min-width:0;margin:0;padding:10px 16px;display:flex}.guest-top .brand-mark{display:none}.guest-top .lang-field{color:#111;align-items:center;gap:6px;min-width:0;margin:0;display:flex}.guest-top .lang-field:before{content:"";background:currentColor;flex:0 0 16px;width:16px;height:16px;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='1.8'/><path d='M3 12h18M12 3c3 3.2 3 14.8 0 18M12 3c-3 3.2-3 14.8 0 18' fill='none' stroke='black' stroke-width='1.8'/></svg>") 50%/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='1.8'/><path d='M3 12h18M12 3c3 3.2 3 14.8 0 18M12 3c-3 3.2-3 14.8 0 18' fill='none' stroke='black' stroke-width='1.8'/></svg>") 50%/contain no-repeat}.guest-top .lang-field{flex:none;margin:0}.guest-top .lang-switch{border-radius:12px;width:auto;min-width:0;padding:3px}.guest-top .lang-switch button{min-height:32px;padding:4px 10px;font-size:13px}html.dark .guest-shell,html.dark .guest-top{color:#111;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-color:#fff}.guest-kicker{letter-spacing:0;text-transform:none;color:var(--muted);margin:0 0 4px;font-size:12px;font-weight:600}.guest-shell .guest-hero{aspect-ratio:4/3;color:#f8fafc;width:100%;max-width:100%;height:auto;min-height:220px;max-height:min(52vh,440px);box-shadow:none;background:#111;border-radius:0;margin:0;display:block;position:relative;overflow:hidden}.guest-shell .guest-hero.has-cover{min-height:220px}.guest-shell .guest-hero:not(.has-cover){aspect-ratio:auto;min-height:0;max-height:none}.guest-hero-cover{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.guest-carousel{z-index:0;position:absolute;inset:0}.guest-carousel-track{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x;height:100%;display:flex;overflow:auto hidden}.guest-carousel-track::-webkit-scrollbar{display:none}.guest-carousel-slide{scroll-snap-align:start;scroll-snap-stop:always;background:#0b1220;flex:0 0 100%;width:100%;height:100%;position:relative;overflow:hidden}.guest-shell .guest-carousel-fill{display:none}.guest-carousel-fill{pointer-events:none;-webkit-user-select:none;user-select:none;width:132%;height:132%;position:absolute;inset:-16%}.guest-carousel-fill img{object-fit:cover;filter:blur(28px);opacity:.5;transform:scale(1.08)}.guest-carousel-photo{z-index:1;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:relative}.guest-carousel-photo img{object-fit:cover}.guest-carousel-btn{z-index:3;color:#fff;cursor:pointer;pointer-events:auto;background:#0b12207a;border:0;border-radius:50%;width:40px;height:40px;font-size:26px;line-height:1;display:none;position:absolute;top:50%;transform:translateY(-50%)}.guest-carousel-btn.prev{left:12px}.guest-carousel-btn.next{right:12px}.guest-carousel-dots{z-index:3;pointer-events:auto;justify-content:center;gap:6px;display:flex;position:absolute;inset:auto 0 12px}.guest-carousel-dots button{cursor:pointer;background:#ffffff6b;border:0;border-radius:99px;width:18px;height:4px;padding:0}.guest-carousel-dots button.on{background:#fff;width:18px}.guest-hero-scrim{z-index:1;pointer-events:none;background:linear-gradient(#0b12201f 20%,#0b1220c7 100%);position:absolute;inset:0}.guest-hero-copy{z-index:2;pointer-events:none;min-width:0;max-width:min(720px,100%);padding:28px 32px;position:relative}.guest-hero-copy .eyebrow{letter-spacing:.18em;text-transform:uppercase;opacity:.72;margin:0 0 8px;font-size:11px}.guest-hero-copy h1{font-family:var(--font-serif), "Songti TC", "Songti SC", serif;letter-spacing:-.03em;overflow-wrap:anywhere;margin:0;font-size:clamp(30px,5vw,46px);font-weight:400;line-height:1.12}.guest-hero-meta{color:#f8fafcd6;overflow-wrap:anywhere;margin:10px 0 0;font-size:14px;line-height:1.5}.guest-title-row{justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 20px 8px;display:flex}.guest-title-row h1{font-family:var(--font-sans), "PingFang HK", "PingFang SC", sans-serif;letter-spacing:-.02em;color:#111;margin:0;font-size:22px;font-weight:800;line-height:1.25}.guest-share{color:#111;cursor:pointer;background:0 0;border:0;flex:none;align-items:center;gap:6px;margin-top:2px;padding:6px 0;font-size:13px;font-weight:600;display:inline-flex}.guest-section-title{font-family:var(--font-sans), "PingFang HK", "PingFang SC", sans-serif;letter-spacing:-.02em;color:#111;margin:0 0 14px;font-size:17px;font-weight:800}.guest-filters{grid-template-columns:1fr 1fr;gap:12px;display:grid}.guest-select{margin:0 0 12px}.guest-select label{color:#111;font-size:13px;font-weight:600}.guest-select select{background:#fff;border:1px solid #d4d4d4;border-radius:8px;width:100%;height:48px;padding:0 36px 0 14px}.guest-hint{color:#737373;margin:4px 0 18px;font-size:12px;line-height:1.5}.guest-hint a{color:var(--accent);font-weight:650}.guest-sessions{scrollbar-width:none;border-bottom:1px solid #eee;gap:0;margin:8px 0 18px;display:flex;overflow-x:auto}.guest-sessions::-webkit-scrollbar{display:none}.guest-sessions button{color:#737373;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:10px 14px 12px;font-size:14px;font-weight:600}.guest-sessions button.on{color:var(--accent);border-bottom-color:var(--accent)}.guest-branches{gap:22px;display:grid}.guest-branch{border-bottom:1px solid #eee;padding-bottom:18px}.guest-branch>.guest-hint{text-align:center;background:#fafafa;border:1px dashed #e7e5e4;border-radius:12px;margin:0;padding:18px 12px}.guest-branch:last-child{border-bottom:0;padding-bottom:0}.guest-branches.is-single{gap:0}.guest-branches.is-single .guest-branch,.guest-branches.is-single .guest-branch:last-child{border:0;padding:0}.guest-branch-head{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:0;align-items:flex-start;gap:12px;margin:0 0 12px;padding:0;display:flex}.guest-branch-head img,.guest-branch-thumb,.guest-branch-fallback{object-fit:cover;background:#f3f3f3;border-radius:6px;flex:0 0 56px;width:56px;height:56px}.guest-branch-thumb{position:relative;overflow:hidden}.guest-branch-thumb img{object-fit:cover}.guest-branch-head span{gap:4px;min-width:0;display:grid}.guest-branch-head b{font-size:15px;font-weight:800;line-height:1.3}.guest-branch-head small{color:#737373;font-size:12px;line-height:1.45}.guest-picked-slot{color:#111;margin:-4px 0 14px;font-size:14px;font-weight:700}.guest-time-groups{gap:16px;display:grid}.guest-time-group-label{font-variant-numeric:tabular-nums;color:#111;margin:0 0 8px;font-size:13px;font-weight:750}.guest-times{grid-template-columns:repeat(auto-fill,minmax(68px,1fr));gap:6px;width:100%;min-width:0;margin:0;display:grid;overflow:visible}.guest-slot{color:#111;font-variant-numeric:tabular-nums;letter-spacing:0;cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:10px;min-height:44px;padding:8px 4px;font-size:14px;font-weight:650}.guest-slot.on{border-color:var(--accent);background:var(--accent);color:var(--accent-on);box-shadow:0 6px 16px rgba(var(--accent-rgb), .22)}.guest-slot-skeleton .guest-times{margin-top:4px}.guest-slot-skel{background:linear-gradient(90deg,#f4f4f5 0%,#e7e5e4 45%,#f4f4f5 100%) 0 0/200% 100%;border-radius:10px;min-height:44px;animation:1.2s ease-in-out infinite guest-skel;display:block}@keyframes guest-skel{0%{background-position:100% 0}to{background-position:-100% 0}}.guest-slot.off,.guest-slot:disabled{color:#c4c4c4;cursor:not-allowed;background:#f5f5f5;border-color:#0000}.guest-times-more{color:#737373;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:10px 0 0;padding:0;font-size:13px;font-weight:650;text-decoration:underline}.guest-details{margin-top:28px;padding-top:8px}.guest-email-step{flex-direction:column;gap:12px;padding-bottom:16px;display:flex}.guest-otp-input{letter-spacing:.4em;text-align:center;font-size:22px;font-weight:700}.guest-email-lock{background:#f4f4f5;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px;padding:10px 12px;font-size:14px;display:flex}.guest-email-lock button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;text-decoration:underline}.guest-email-dialog{box-sizing:border-box;width:min(440px,100vw - 24px);min-width:0;max-width:100%}.guest-email-dialog,.guest-email-dialog *,.guest-email-dialog :before,.guest-email-dialog :after{box-sizing:border-box}.guest-email-dialog .field input{width:100%;min-width:0;max-width:100%}.guest-toast{z-index:40;color:#fff;background:#111;border-radius:12px;margin:0 0 12px;padding:12px 14px;font-size:14px;font-weight:650;position:sticky;top:12px;box-shadow:0 10px 24px #0000002e}.guest-email-dialog .guest-email-step{padding-bottom:8px}input[readonly].is-locked{color:#525252;background:#f4f4f5}.guest-layout{flex-direction:column;width:100%;min-width:0;margin-top:0;display:flex}.guest-book,.guest-location,.guest-menu-wrap,.guest-policy,.guest-done{box-shadow:none;background:#fff;border:0;border-radius:0;min-width:0;max-width:100%}.guest-book{padding:18px 20px 8px}.guest-book-head{margin-bottom:18px}.guest-book-head h2,.guest-menu-wrap h2,.guest-policy h2,.guest-done h1{font-family:var(--font-sans), "PingFang HK", "PingFang SC", sans-serif;letter-spacing:-.02em;color:#111;margin:0;font-size:17px;font-weight:800}.guest-parties{grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:8px;margin:8px 0 18px;display:grid}.guest-parties .chip{border-radius:14px;width:100%;padding:10px 0}.guest-dates{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;gap:8px;width:100%;min-width:0;max-width:100%;margin:8px 0 18px;padding-bottom:4px;display:flex;overflow:auto hidden}.guest-dates::-webkit-scrollbar{display:none}.guest-date{border:1px solid var(--line);cursor:pointer;min-width:68px;color:var(--text);background:#fff;border-radius:16px;flex-direction:column;flex:none;align-items:center;gap:2px;padding:10px 12px 12px;display:flex}.guest-date-dow{letter-spacing:.04em;color:var(--muted);font-size:11px;font-weight:650}.guest-date-day{font-size:20px;font-weight:750;line-height:1.1}.guest-date-mon{color:var(--muted);font-size:11px}.guest-shell .chip.on{background:var(--accent);color:var(--accent-on);border-color:var(--accent)}.guest-date.on{background:var(--accent);border-color:var(--accent);color:var(--accent-on)}.guest-date.on .guest-date-dow,.guest-date.on .guest-date-mon{color:color-mix(in srgb, var(--accent-on) 72%, transparent)}.guest-date.off,.guest-date:disabled{opacity:.4;cursor:not-allowed;text-decoration:line-through}.guest-hold,.hold-banner{color:#9a3412;background:#fff7ed;border:1px solid #fdba74;border-radius:16px;margin:0 0 16px;padding:12px 14px;font-size:14px;line-height:1.45}.hold-section{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.hold-check{align-items:flex-start;gap:10px;margin:12px 0 0;font-size:14px;line-height:1.4;display:flex}.hold-check input{margin-top:3px}.hold-list{gap:10px;margin-top:12px;display:grid}.hold-row{border:1px solid var(--line);background:#fff;border-radius:16px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.hold-row b{display:block}.hold-note{color:var(--muted);margin:4px 0 0;font-size:13px}.guest-slot-label{color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:650}.guest-times::-webkit-scrollbar{display:none}.guest-times .chip{border-radius:8px;min-width:0;padding:8px 4px}.guest-contact{grid-template-columns:1fr 1fr;gap:0 12px;margin-top:6px;display:grid}.guest-email,.guest-phone{grid-column:1/-1}.guest-phone-row{align-items:stretch;gap:8px;width:100%;min-width:0;max-width:100%;display:flex}.guest-phone-row select{border:1px solid var(--line);width:auto;min-width:0;max-width:42%;height:48px;color:var(--text);background:#f8fafc;border-radius:14px;flex:0 9.5rem;padding:0 10px;font-size:16px}.guest-phone-row input{flex:1 1 0;width:auto;min-width:0;max-width:100%}.guest-page .field input.is-invalid,.guest-shell .field input.is-invalid{border-color:var(--danger);background:#fff8f8}.guest-page .field input.is-valid,.guest-shell .field input.is-valid{border-color:#16a34a}.guest-field-msg{margin:6px 0 0;font-size:13px;font-weight:650}.guest-cta{margin-top:8px}.guest-shell .btn-primary{background:var(--accent);color:var(--accent-on);box-shadow:0 10px 22px rgba(var(--accent-rgb), .22)}.guest-shell .btn-primary:hover{background:var(--accent-hover)}.guest-shell .btn-primary:disabled{color:#3f3a36;opacity:1;box-shadow:none;background:#d7d1c8}.guest-aside{padding:0;overflow:hidden}.guest-aside .shop-map,.guest-location .shop-map{border:0;border-radius:24px;margin:0}.guest-location{margin-top:12px;padding:0 20px;overflow:hidden}.guest-aside .shop-map iframe,.guest-location .shop-map iframe{height:220px}.guest-menu-wrap{margin-top:8px;padding:8px 20px 20px}.guest-menu{margin-top:12px}.guest-menu-card img,.guest-menu-photo{height:168px}.guest-policy{margin-top:8px;padding:8px 20px 20px}.guest-policy h2,.guest-special .guest-section-title{margin-bottom:12px;font-size:17px}.guest-special{margin-top:28px}.guest-special p{color:#444;margin:0;font-size:13px;line-height:1.7}.guest-shell .policy-list{color:#444;margin:0;padding-left:1.2rem;font-size:13px;line-height:1.7;list-style:decimal}.guest-footer{text-align:center;color:#737373;background:#f5f5f5;margin-top:28px;padding:24px 20px 8px;font-size:12px}.guest-footer.guest-footer-left{text-align:left}.guest-footer.guest-footer-right{text-align:right}.guest-footer.guest-footer-center{text-align:center}.guest-footer p{margin:0 0 8px}.guest-footer p:last-child{margin-bottom:0}.guest-footer-credit{line-height:1.55}.guest-footer-credit a{color:inherit;text-decoration:underline}.guest-footer-credit a:hover{color:var(--accent)}.guest-footer-credit b,.guest-footer-credit strong{color:#525252;font-weight:700}.guest-footer-legal button{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:650}.guest-legal-dialog{flex-direction:column;width:min(560px,100%);max-height:min(80vh,720px);display:flex}.guest-legal-dialog .dash-h{margin:0 0 12px}.guest-legal-body{color:#333;white-space:pre-wrap;flex:1;margin:0 0 16px;font-size:13px;line-height:1.7;overflow:auto}.guest-done{text-align:center;max-width:560px;margin:24px auto 0;padding:36px 32px}.guest-done-facts .span-2{grid-column:1/-1}.guest-done-hours{white-space:pre-wrap}.guest-done-shop{text-align:left;margin-top:28px;padding-top:8px}.guest-done-shop .guest-section-title{text-align:left}.guest-done-shop .shop-map{margin-top:12px}.guest-done-shop .shop-map iframe{height:220px}.guest-done-shop a{color:inherit}.tpl-preview-html{border:1px solid var(--line,#e5e5e5);background:#fff;border-radius:12px;width:100%;min-height:420px;margin:8px 0 12px}.guest-done-ref{letter-spacing:.06em;color:var(--ink);margin:10px 0 4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(22px,4vw,28px);font-weight:750}.guest-checkin-qr{text-align:center;margin:20px 0 8px}.guest-checkin-qr h2{letter-spacing:.04em;text-transform:uppercase;margin:0 0 12px;font-size:15px}.guest-checkin-qr-card{background:#fff;border:2px solid #0f172a;border-radius:20px;width:min(100%,280px);padding:16px 16px 12px;display:inline-block;box-shadow:0 10px 28px #0f172a1f}.guest-checkin-qr-svg svg,.guest-checkin-qr-card img{aspect-ratio:1;width:100%;height:auto;display:block}.guest-checkin-qr-ref{color:#475569;margin:10px 0 0;font-size:12px}.guest-checkin-qr-ref strong{letter-spacing:.06em;color:#0f172a;margin-top:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:18px;display:block}.booking-ref{letter-spacing:.02em;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:650}.guest-done-mark{background:var(--accent-soft);width:56px;height:56px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;font-size:26px;font-weight:700;display:flex}.guest-done-facts{text-align:left;grid-template-columns:1fr 1fr;gap:12px 18px;margin:22px 0;display:grid}.guest-done-facts div{background:var(--chrome);border-radius:14px;padding:12px 14px}.guest-done-facts dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:650}.guest-done-facts dd{margin:4px 0 0;font-weight:650}.guest-deposit-card{background:#ecfdf3;border:1px solid #bbf7d0;border-radius:16px;padding:14px 16px}.guest-deposit-badge{color:#166534;letter-spacing:.04em;text-transform:uppercase;background:#dcfce7;border-radius:999px;align-items:center;margin:0 0 10px;padding:4px 10px;font-size:12px;font-weight:750;display:inline-flex}.guest-deposit-card dl{grid-template-columns:1fr 1fr;gap:10px 16px;margin:0;display:grid}.guest-deposit-card dt{color:#15803d;letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:650}.guest-deposit-card dd{color:#14532d;margin:4px 0 0;font-weight:700}.guest-txn-ref{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:650}.pay-badge{white-space:nowrap;border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;font-weight:750;display:inline-flex}.pay-badge.paid{color:#166534;background:#dcfce7}.pay-badge.unpaid{color:#9a3412;background:#ffedd5}.booking-pay-list{grid-template-columns:1fr 1fr;gap:8px 16px;margin:0 0 16px;display:grid}.booking-pay-list dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:650}.booking-pay-list dd{overflow-wrap:anywhere;margin:2px 0 0;font-weight:650}.guest-confirm-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px;display:flex}.guest-confirm-actions .btn{min-width:148px}@media (max-width:860px){.guest-contact{grid-template-columns:1fr}}@media (max-width:720px){.guest-page{max-width:100%;padding:calc(12px + env(safe-area-inset-top,0px)) 12px calc(28px + env(safe-area-inset-bottom,0px))}.guest-shell{padding:0 0 calc(28px + env(safe-area-inset-bottom,0px));max-width:100%}.guest-top{z-index:30;padding:calc(10px + env(safe-area-inset-top,0px)) 16px 10px;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;margin:0;position:sticky;top:0}.guest-page .guest-nav{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f3f5f8eb;flex-direction:row;align-items:center;gap:10px;margin:-12px -12px 16px;padding:12px;position:sticky;top:0}.guest-page .brand-mark,.guest-shell .brand-mark{letter-spacing:.12em;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.guest-nav-actions,.guest-page .lang-field,.guest-shell .lang-field{min-width:0}.guest-page .lang-switch,.guest-shell .lang-switch{width:auto}.guest-page .panel{border-radius:18px}.guest-page .shop-hero,.guest-page .wine-bar{border-radius:18px 18px 0 0;padding:20px 18px 18px}.guest-page .shop-hero h1,.guest-page .wine-bar h1{font-size:clamp(24px,7vw,32px)}.guest-shell .guest-hero,.guest-shell .guest-hero.has-cover{aspect-ratio:4/3;border-radius:20px;height:auto;min-height:320px;max-height:min(62vh,460px)}.guest-hero-copy{max-width:100%;padding:20px 18px}.guest-hero-copy h1{font-size:clamp(26px,8vw,34px)}.guest-layout{margin-top:14px}.guest-book,.guest-menu-wrap,.guest-policy{border-radius:20px;padding:18px}.guest-book-head h2{font-size:24px}.guest-parties{grid-template-columns:repeat(auto-fill,minmax(44px,1fr))}.guest-dates{margin-right:-18px;padding-right:18px}.guest-page .meta-line{font-size:13px;line-height:1.45}.guest-page .guest-body{padding:4px 0 8px}.guest-page .card{border-radius:0;padding:16px}.party-chips{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.party-chips .chip{width:100%;padding:10px 0}.chips-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x mandatory;flex-wrap:nowrap;gap:8px;margin-right:-16px;padding-right:16px;display:flex;overflow:auto hidden}.chips-scroll::-webkit-scrollbar{display:none}.chips-scroll .chip{scroll-snap-align:start;flex:none}.guest-cta{z-index:20;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));background:linear-gradient(#fff0,#fff 28%);border-top:1px solid #0000;margin:12px -20px 0;position:sticky;bottom:0}.guest-cta .btn-block{min-height:48px}.guest-menu{margin-top:20px}.guest-policy{margin-top:16px}.guest-done{max-width:100%;padding:28px 18px}.guest-done-facts,.guest-deposit-card dl{grid-template-columns:1fr}.guest-done-ref{overflow-wrap:anywhere}.guest-confirm-actions .btn{width:100%;min-width:0}.guest-location .shop-map iframe{height:240px}.guest-menu-card img,.guest-menu-photo{height:148px}.dash-form-grid{grid-template-columns:1fr}.admin-app .row{flex-direction:column;align-items:stretch}.admin-app .row .btn{width:100%;min-height:44px}.lang-bar{flex-direction:column;align-items:stretch}.lang-bar .lang-switch{width:100%}.og-grid{grid-template-columns:1fr}.menu-edit,.menu-edit.has-tools{grid-template-columns:44px 1fr}.menu-edit:not(.has-tools){grid-template-columns:1fr}.menu-edit.has-tools .menu-card-tools{grid-row:1}.menu-edit.has-tools .menu-photo-slot,.menu-edit.has-tools .field,.menu-edit.has-tools>.btn{grid-column:2}.week-cal-frame{overflow-x:auto}.week-cal-head,.week-cal-row{grid-template-columns:42px repeat(7,minmax(34px,1fr));min-width:300px}.week-cal-day{padding:10px 0;font-size:10px}.week-cal-cell{margin:1px 2px}.cap-period-grid{grid-template-columns:1fr}.cap-editor{padding:14px}}@media (min-width:768px){html.dark body.guest-page-body,html.guest-light body,body.guest-page-body{background:#f4f4f5}.guest-shell{background:#fff;border-radius:0;max-width:640px;padding:0 32px 72px}.guest-top{background:0 0;padding:16px 0 12px}.guest-shell .guest-hero,.guest-shell .guest-hero.has-cover{aspect-ratio:16/9;border-radius:16px;min-height:240px;max-height:min(40vh,360px)}.guest-shell .guest-carousel-fill{display:block}.guest-carousel-btn{justify-content:center;align-items:center;display:flex}.guest-title-row{padding:28px 0 12px}.guest-title-row h1{font-size:28px}.guest-book{padding:8px 0 12px}.guest-filters{flex-wrap:wrap;align-items:flex-end;gap:12px 16px;margin:0 0 4px;display:flex}.guest-filters .guest-select{flex:0 0 200px;width:200px;max-width:200px;margin:0 0 12px}.guest-filters .guest-select select{width:100%;max-width:200px}.guest-sessions{flex-wrap:wrap;overflow:visible}.guest-branches{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.guest-branch{border:1px solid #eee;border-radius:12px;padding:16px}.guest-branch:last-child{border-bottom:1px solid #eee;padding-bottom:16px}.guest-branch:last-child:nth-child(odd){grid-column:1/-1}.guest-branches.is-single{grid-template-columns:1fr;gap:0}.guest-branches.is-single .guest-branch,.guest-branches.is-single .guest-branch:last-child{border:0;border-radius:0;padding:0}.guest-branches.is-single .guest-branch:last-child:nth-child(odd){grid-column:auto}.guest-contact{flex-direction:column;align-items:stretch;gap:0;max-width:420px;display:flex}.guest-shell .guest-contact .field,.guest-shell .guest-contact .guest-phone{max-width:420px}.guest-cta .btn-block{width:100%;min-width:0;max-width:420px}.guest-menu-wrap{margin-top:12px;padding:16px 0 24px}.guest-menu{gap:16px;margin-top:16px}.guest-menu-card img,.guest-menu-photo{height:180px}.guest-policy{margin-top:12px;padding:16px 0 24px}.guest-location{padding:0}.guest-location .shop-map iframe{height:320px}.guest-footer{margin:36px 0 0;padding:28px 0 12px}.guest-done{max-width:640px;padding:48px 8px 12px}.guest-done-facts{grid-template-columns:1fr 1fr}.guest-legal-dialog{width:min(640px,100%)}}@media (min-width:960px){.guest-shell{max-width:640px;display:block}.guest-shell .guest-hero,.guest-shell .guest-hero.has-cover{aspect-ratio:16/9;min-height:240px;max-height:min(40vh,360px)}.guest-title-row{padding:28px 0 12px}.guest-title-row h1{font-size:28px}}.siri-ai{z-index:90;pointer-events:none;background:radial-gradient(at 50% 55%,#0a0a1247,#0000 62%);place-items:center;display:grid;position:fixed;inset:0}.siri-ai-orb{filter:blur(.2px);width:168px;height:168px;position:relative}.siri-ai-glow{background:radial-gradient(circle,#b4a0ff59,#0000 68%);border-radius:50%;animation:2.4s ease-in-out infinite siri-glow;position:absolute;inset:-28%}.siri-ai-blob{mix-blend-mode:screen;filter:blur(14px);border-radius:50%;position:absolute;inset:18%}.siri-ai-a{background:radial-gradient(circle at 30% 30%,#ff6ec7,#c44dff 55%,#0000 70%);animation:2.1s ease-in-out infinite siri-morph}.siri-ai-b{background:radial-gradient(circle at 70% 40%,#5ce1ff,#4d7cff 50%,#0000 72%);animation:2.4s ease-in-out infinite reverse siri-morph}.siri-ai-c{background:radial-gradient(circle at 50% 70%,#ffd166,#ff6b6b 45%,#0000 70%);animation:1.8s ease-in-out .2s infinite siri-morph}.siri-ai-core{background:radial-gradient(circle at 40% 35%,#ffffffd9,#e6dcff33 55%,#0000 72%);border-radius:50%;animation:1.6s ease-in-out infinite siri-core;position:absolute;inset:32%}@keyframes siri-morph{0%,to{border-radius:46% 54% 48% 52%;transform:translate(0)scale(1)rotate(0)}33%{border-radius:52% 42% 58% 44%;transform:translate(8%,-6%)scale(1.08)rotate(12deg)}66%{border-radius:42% 58% 44% 56%;transform:translate(-7%,8%)scale(.94)rotate(-10deg)}}@keyframes siri-glow{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@keyframes siri-core{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}.qr-designer-layout{grid-template-columns:minmax(220px,280px) 1fr;align-items:start;gap:22px;margin-top:12px;display:grid}.qr-designer-preview-col{flex-direction:column;align-items:stretch;gap:10px;display:flex}.qr-designer-preview{border:1px solid var(--line);background:linear-gradient(#ffffffb8,#ffffffb8),repeating-conic-gradient(#e5e7eb 0% 25%,#f8fafc 0% 50%) 0 0/18px 18px;border-radius:16px;justify-content:center;align-items:center;padding:16px;display:flex}.qr-designer-preview canvas{object-fit:contain;background:0 0;width:100%;max-width:248px;height:auto;display:block}.qr-designer-url{word-break:break-all;margin:0;font-size:12px}.qr-designer-tabs{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.qr-designer-tabs button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;height:36px;padding:0 12px;font-weight:650}.qr-designer-tabs button.on{border-color:var(--teal,#0ea5e9);background:color-mix(in srgb, var(--teal,#0ea5e9) 12%, #fff)}.qr-option-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px;display:grid}.qr-sample{border:1px solid var(--line);cursor:pointer;text-align:center;background:#fff;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:10px 8px 12px;font-size:12px;font-weight:650;display:flex}.qr-sample.on{border-color:var(--teal,#0ea5e9);box-shadow:0 0 0 3px color-mix(in srgb, var(--teal,#0ea5e9) 22%, transparent)}.qr-sample-art{background:#f1f5f9;border-radius:10px;width:72px;height:72px;position:relative;overflow:hidden}.qr-sample-frame-none .qr-sample-art{background:linear-gradient(#fff,#fff) padding-box padding-box,repeating-linear-gradient(45deg,#cbd5e1 0 6px,#e2e8f0 6px 12px);border:1px dashed #94a3b8}.qr-sample-frame-classic .qr-sample-art{background:linear-gradient(#111827 0 18px,#fff 18px);box-shadow:inset 0 0 0 4px #111827}.qr-sample-frame-modern .qr-sample-art{background:linear-gradient(#0ea5e9 0 10px,#fff 10px 54px,#fff 54px);border-radius:12px;box-shadow:0 6px #e2e8f0}.qr-sample-frame-modern .qr-sample-art:after{content:"";background:#0ea5e9;border-radius:99px;height:8px;position:absolute;bottom:8px;left:16px;right:16px}.qr-sample-frame-pill .qr-sample-art{background:#fff}.qr-sample-frame-pill .qr-sample-art:after{content:"";background:#111827;border-radius:99px;height:12px;position:absolute;bottom:8px;left:14px;right:14px}.qr-sample-frame-badge .qr-sample-art{background:#111827;box-shadow:inset 0 0 0 8px #111827,inset 0 0 0 11px #fff}.qr-sample-frame-badge .qr-sample-art:before{content:"";background:#0ea5e9;border-radius:6px;height:12px;position:absolute;top:4px;left:16px;right:16px}.qr-sample-frame-border .qr-sample-art{background:#fff;border-radius:14px;box-shadow:inset 0 0 0 3px #111827}.qr-frame-customize{gap:12px;margin-top:14px;display:grid}.qr-color-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.qr-color-row{align-items:center;gap:8px;display:flex}.qr-color-row input[type=color]{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;width:42px;height:36px;padding:2px}.qr-color-hex{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.qr-swatches{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.qr-swatch{cursor:pointer;border:1px solid #0f172a2e;border-radius:999px;width:22px;height:22px;padding:0}.qr-swatch.on{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--teal,#0ea5e9)}.qr-sample-shape-square .qr-sample-art{background-color:#fff;background-image:repeating-linear-gradient(#111827 0 8px,#0000 8px 14px),repeating-linear-gradient(90deg,#111827 0 8px,#0000 8px 14px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:14px 14px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}.qr-sample-shape-dots .qr-sample-art{background-color:#fff;background-image:radial-gradient(#111827 2.2px,#0000 2.4px);background-size:12px 12px}.qr-sample-shape-rounded .qr-sample-art{background-color:#fff;background-image:repeating-linear-gradient(#111827 0 8px,#0000 8px 14px),repeating-linear-gradient(90deg,#111827 0 8px,#0000 8px 14px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:14px 14px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-radius:16px}.qr-sample-logo-sloity .qr-sample-art{background:#0ea5e9}.qr-sample-logo-sloity .qr-sample-art:after{content:"S";color:#0b1220;place-items:center;font-size:28px;font-weight:800;display:grid;position:absolute;inset:0}.qr-sample-logo-store .qr-sample-art{background:radial-gradient(circle at 50% 45%,#fff 0 10px,#cbd5e1 11px 28px,#f1f5f9 29px)}.qr-sample-logo-none .qr-sample-art{opacity:.55;background:repeating-linear-gradient(#94a3b8 0 2px,#0000 2px 8px),repeating-linear-gradient(90deg,#94a3b8 0 2px,#0000 2px 8px)}.qr-logo-upload{cursor:pointer;width:fit-content;margin-top:12px;display:inline-flex}.qr-designer-host{width:0;height:0;position:absolute;overflow:hidden}@media (max-width:760px){.qr-designer-layout{grid-template-columns:1fr}.qr-designer-preview canvas{max-width:280px}.qr-color-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.siri-ai-glow,.siri-ai-blob,.siri-ai-core{animation:none}}.admin-chat{right:20px;bottom:calc(88px + env(safe-area-inset-bottom,0px));z-index:40;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed}.admin-chat-fab{color:#1f1f1f;letter-spacing:.01em;cursor:pointer;background:#fff;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-width:52px;height:48px;padding:0 16px 0 12px;font-size:14px;font-weight:650;display:inline-flex;box-shadow:0 1px 2px #3c404326,0 4px 16px #1a73e82e}.admin-chat-fab:hover{box-shadow:0 1px 3px #3c404333,0 6px 20px #9a50e838}.admin-chat.open .admin-chat-fab{color:#5f6368;width:48px;min-width:48px;padding:0}.admin-chat-sparkle{place-items:center;width:22px;height:22px;display:grid}.admin-chat-sparkle svg{display:block}.admin-chat-fab-x{font-size:22px;font-weight:400;line-height:1}.admin-chat-panel{border:1px solid var(--line,#e5e7eb);background:#fff;border-radius:16px;flex-direction:column;width:min(380px,100vw - 32px);height:min(480px,100dvh - 140px);max-height:min(480px,100dvh - 140px);display:flex;overflow:hidden;box-shadow:0 18px 50px #0f172a2e}.admin-chat-panel[hidden]{display:none!important}.admin-chat-head{border-bottom:1px solid var(--line,#ececec);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.admin-chat-head strong{letter-spacing:-.01em;font-size:14px;font-weight:650}.admin-chat-head-actions{align-items:center;gap:8px;display:flex}.admin-chat-clear{color:#64748b;cursor:pointer;background:0 0;border:0;padding:4px 6px;font-size:12px;font-weight:650}.admin-chat-clear:hover{color:#0f172a}.admin-chat-privacy{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex:none;margin:8px 12px 0;padding:8px 10px;font-size:11px;line-height:1.45}.admin-chat-x{cursor:pointer;color:#64748b;background:0 0;border:0;place-items:center;width:32px;height:32px;font-size:20px;line-height:1;display:grid}.admin-chat-log{flex-direction:column;flex:auto;gap:8px;min-height:0;padding:10px 12px;display:flex;overflow:auto}.admin-chat-empty{flex-direction:column;align-items:stretch;gap:10px;margin:auto 0;padding:8px 2px 12px;display:flex}.admin-chat-empty-copy{color:#64748b;text-align:center;margin:0;font-size:13px;font-weight:400;line-height:1.45}.admin-chat-bubble{white-space:pre-wrap;border-radius:14px;max-width:92%;padding:8px 12px;font-size:13px;line-height:1.45}.admin-chat-bubble.user{color:#fff;background:#0f172a;align-self:flex-end}.admin-chat-bubble.assistant{color:#0f172a;background:#f8fafc;align-self:flex-start}.admin-chat-suggest{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.admin-chat-suggest button{border:1px solid var(--line,#e5e7eb);cursor:pointer;text-align:left;background:#fff;border-radius:999px;padding:6px 10px;font-size:12px}.admin-chat-compose{border-top:1px solid var(--line,#ececec);flex:none;align-items:center;gap:8px;padding:8px 10px 10px;display:flex}.admin-chat-compose input{border:1px solid var(--line,#e5e7eb);border-radius:10px;flex:1;min-width:0;height:36px;padding:0 10px;font-size:13px}.admin-chat-compose .btn{border-radius:10px;height:36px;min-height:36px;margin:0;padding:0 12px;font-size:13px}.admin-chat-back{display:none}.admin-chat-log{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}html[data-admin-chat-open],html[data-admin-chat-open] body{overscroll-behavior:none;overflow:hidden!important}html[data-admin-chat-open] .admin-body{overscroll-behavior:none;touch-action:none;overflow:hidden!important}@media (max-width:1099px){.admin-chat.open .admin-chat-back{z-index:0;touch-action:none;overscroll-behavior:none;background:0 0;display:block;position:fixed;inset:0}.admin-chat.open .admin-chat-panel,.admin-chat.open .admin-chat-fab{z-index:1;position:relative}.admin-chat-panel{max-height:min(70dvh, calc(var(--admin-chat-vvh,100dvh) - 120px));height:min(70dvh, calc(var(--admin-chat-vvh,100dvh) - 120px))}}.admin-app,.admin-app *,.admin-app :before,.admin-app :after{box-sizing:border-box}.admin-app{overscroll-behavior-x:none;color:#0f172a;background:#f8fafc;flex-direction:column;width:100%;min-width:0;max-width:100%;height:100dvh;min-height:100vh;max-height:100dvh;display:flex;overflow:hidden}.admin-shell{flex-direction:column;flex:auto;width:100%;min-width:0;max-width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.admin-sidebar{background:#fff;border-right:1px solid #e2e8f0;flex-direction:column;flex:0 0 16rem;justify-content:space-between;width:16rem;min-width:0;max-width:16rem;min-height:0;padding:1rem;transition:width .3s ease-in-out,flex-basis .3s ease-in-out,padding .3s ease-in-out,max-width .3s ease-in-out;display:none;overflow:hidden auto}.admin-sidebar-toggle{appearance:none;color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex:none;justify-content:center;align-self:flex-end;align-items:center;width:32px;height:32px;margin:0 0 8px;padding:0;display:inline-flex}.admin-sidebar-toggle:hover{background:var(--accent-soft);color:var(--accent-strong)}.admin-sidebar-logout{justify-content:center;align-items:center;gap:8px;display:inline-flex}.admin-sidebar-logout-icon{display:none}.admin-sidebar.is-collapsed{flex:0 0 5rem;align-items:center;width:5rem;max-width:5rem;padding:.75rem .5rem}.admin-sidebar.is-collapsed .admin-sidebar-toggle{align-self:center}.admin-sidebar.is-collapsed .admin-sidebar-name,.admin-sidebar.is-collapsed .admin-sync,.admin-sidebar.is-collapsed .admin-sidebar-label,.admin-sidebar.is-collapsed .admin-sidebar-logout-label{display:none}.admin-sidebar.is-collapsed .admin-sidebar-brand{align-items:center}.admin-sidebar.is-collapsed .admin-sidebar-logo{width:36px;height:36px}.admin-sidebar.is-collapsed .admin-sidebar-nav button{border-radius:.75rem;justify-content:center;gap:0;padding:10px}.admin-sidebar.is-collapsed .admin-sidebar-nav button.on{background:var(--accent);color:var(--accent-on)}.admin-sidebar.is-collapsed .admin-sidebar-logout{align-self:center;width:40px;min-width:40px;padding:10px}.admin-sidebar.is-collapsed .admin-sidebar-logout-icon{display:block}.sidebar-premium-badge.is-compact{justify-content:center;align-items:center;width:40px;height:40px;margin:0 auto;padding:0;font-size:18px;line-height:1;display:flex;box-shadow:0 0 14px #f59e0b73}.admin-sidebar-brand{flex-direction:column;gap:8px;min-width:0;display:flex}.admin-sidebar-logo{object-fit:cover;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;width:48px;height:48px}.admin-sidebar-nav{flex-direction:column;flex:auto;gap:6px;margin:16px 0;display:flex}.admin-sidebar-nav button{appearance:none;color:#475569;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;font-weight:700;display:flex}.admin-sidebar-nav button svg{flex:none;width:20px;height:20px}.admin-sidebar-nav button.on{background:var(--accent);color:var(--accent-on);box-shadow:none}.admin-sidebar-nav button:hover:not(.on){background:#f1f5f9}.admin-sidebar-foot{flex-direction:column;align-items:stretch;gap:10px;width:100%;min-width:0;display:flex;overflow:hidden}.admin-sidebar-foot .admin-premium-badge{margin-top:0}.admin-sidebar-foot .btn{width:100%}.sidebar-premium-badge{box-sizing:border-box;background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 28%, #fff);border-radius:.75rem;width:100%;min-width:0;margin:.75rem 0 .25rem;padding:.75rem;overflow:hidden;box-shadow:0 1px 2px #0f172a0d}.sidebar-premium-top{flex-flow:row;justify-content:space-between;align-items:center;gap:8px;min-width:0;margin-bottom:6px;display:flex}.sidebar-premium-name{min-width:0;color:var(--accent-strong);flex-direction:row;flex:auto;align-items:center;gap:6px;font-size:12px;font-weight:700;line-height:1.3;display:flex}.sidebar-premium-name span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar-premium-dot{flex:none;align-self:center;width:8px;height:8px;display:inline-flex;position:relative}.sidebar-premium-core{background:#10b981;border-radius:999px;width:8px;height:8px;display:inline-flex;position:relative}.sidebar-premium-ping{opacity:.75;background:#34d399;border-radius:999px;animation:1.2s cubic-bezier(0,0,.2,1) infinite sidebar-premium-ping;position:absolute;inset:0}.sidebar-premium-dot.gold .sidebar-premium-core{background:#f59e0b;box-shadow:0 0 10px #f59e0bb3}.sidebar-premium-dot.expired .sidebar-premium-core{background:#f43f5e}.sidebar-premium-meta{color:#475569;border-top:1px solid #e0e7ffb3;gap:8px;min-width:0;padding-top:6px;font-size:11px;font-weight:600;line-height:1.35}.sidebar-premium-date{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-premium-days{color:var(--accent);white-space:nowrap;flex:none;font-weight:700}.sidebar-premium-days.warn{color:#e11d48}.sidebar-premium-expired-copy{text-overflow:ellipsis;white-space:nowrap;color:#be123c;min-width:0;overflow:hidden}.sidebar-premium-badge.lifetime{background:linear-gradient(to bottom right,#fffbebfa,#fef3c78c,#fff);border-color:#fbbf248c;box-shadow:0 0 0 1px #fbbf2433,0 8px 22px #f59e0b38}.sidebar-premium-badge.lifetime .sidebar-premium-name{color:#b45309}.sidebar-premium-badge.expired{background:linear-gradient(to bottom right,#fff1f2f2,#fff);border-color:#fda4afb3}.sidebar-premium-badge.expired .sidebar-premium-name{color:#be123c}@keyframes sidebar-premium-ping{75%,to{opacity:0;transform:scale(2.2)}}html.dark .sidebar-premium-badge{background:linear-gradient(to bottom right,#312e8166,#0f172a,#0f172a);border-color:#3730a399}html.dark .sidebar-premium-name{color:#e7e9ea}html.dark .sidebar-premium-meta{color:#94a3b8;border-top-color:#312e8173}html.dark .sidebar-premium-days{color:#71767b}html.dark .sidebar-premium-days.warn{color:#fb7185}html.dark .sidebar-premium-expired-copy{color:#fda4af}html.dark .sidebar-premium-badge.lifetime{background:linear-gradient(to bottom right,#78350f80,#0f172a,#0f172a);border-color:#fbbf2466;box-shadow:0 0 22px #f59e0b38}html.dark .sidebar-premium-badge.lifetime .sidebar-premium-name{color:#fcd34d}html.dark .sidebar-premium-badge.expired{background:linear-gradient(to bottom right,#88133766,#0f172a);border-color:#9f123999}.admin-main{flex-direction:column;flex:1;width:auto;min-width:0;max-width:100%;height:100%;min-height:0;padding:0;display:flex;overflow:hidden}.admin-topbar{width:100%;min-width:0;max-width:100%;padding:calc(10px + env(safe-area-inset-top,0px)) 14px 10px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:30;background:#f8fafcdb;border-bottom:1px solid #e2e8f0;flex:none;align-items:center;gap:10px;display:flex;position:sticky;top:0}.admin-topbar-brand{flex-direction:column;flex:1;min-width:0;display:flex}.admin-guest-link{border:1px solid var(--line);background:var(--card);border-radius:999px;align-items:center;gap:8px;min-width:0;max-width:min(420px,38vw);padding:4px 4px 4px 12px;font-size:12px;line-height:1.3;display:none}.admin-guest-link a{overflow-wrap:anywhere;min-width:0;color:var(--muted)}.admin-guest-link a:hover{color:var(--ink);text-decoration:underline}.admin-guest-link .btn{flex:none;min-height:32px}@media (min-width:1024px){.admin-guest-link{display:flex}}.report-empty{border:1px dashed var(--line);text-align:center;background:var(--chrome);border-radius:16px;padding:28px 16px}.admin-topbar-brand .brand-mark{letter-spacing:.14em;font-size:12px}.admin-sync{letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;width:fit-content;max-width:100%;margin-top:4px;padding:4px 10px;font-size:11px;font-weight:750;line-height:1.3;display:inline-flex;overflow:hidden}.admin-sync.memory{color:#9a3412;background:#ffedd5}.admin-sync.live{color:#166534;background:#dcfce7}.admin-settings-page .admin-sync{white-space:normal;text-align:center;justify-content:center;max-width:100%;min-height:44px;margin-top:0;padding:10px 14px;line-height:1.25}.admin-topbar select,.admin-outlet-picker{flex:1 1 0;min-width:0;max-width:min(280px,100%);position:relative}.admin-outlet-picker-btn{text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;width:100%;height:40px;padding:0 10px;overflow:hidden}.admin-outlet-menu{z-index:40;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:6px;width:min(320px,80vw);padding:8px;display:flex;position:absolute;top:44px;left:0;box-shadow:0 12px 32px #0f172a1f}.admin-outlet-menu>button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px}.admin-outlet-menu>button.on,.admin-outlet-menu>button:hover{background:var(--accent-soft)}.admin-outlet-create{color:var(--accent-strong);font-weight:650}.admin-outlet-form,.admin-outlet-url{border-top:1px solid #e2e8f0;flex-direction:column;gap:8px;padding:8px;display:flex}.admin-outlet-form label,.admin-outlet-url label{flex-direction:column;gap:4px;font-size:12px;display:flex}.admin-outlet-form input,.admin-outlet-url input{border:1px solid #e2e8f0;border-radius:8px;height:36px;padding:0 8px}.admin-outlet-url-text{white-space:normal;word-break:break-all;margin:0;font-size:13px;line-height:1.45}.admin-outlet-cap{margin:0;padding:8px;font-size:13px}.admin-outlet-dialog{z-index:80;background:#0f172a73;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.admin-outlet-dialog-card{background:#fff;border-radius:16px;flex-direction:column;gap:10px;width:min(440px,100%);max-height:min(90vh,720px);padding:16px;display:flex;overflow:auto}.admin-icon-btn{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid}.admin-icon-btn.on{background:var(--accent);color:#fff;border-color:var(--accent)}.admin-body{overscroll-behavior-x:none;width:100%;min-width:0;max-width:100%;min-height:0;padding:1rem;padding-bottom:calc(6rem + env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch;flex:auto;overflow:hidden auto}.admin-page{width:100%;min-width:0;max-width:100%}.admin-powered{background:0 0;margin-top:28px;padding:20px 8px 12px}.admin-powered.guest-footer{background:0 0}html.dark .admin-powered.guest-footer{color:#94a3b8}html.dark .admin-powered .guest-footer-credit b,html.dark .admin-powered .guest-footer-credit strong{color:#cbd5e1}.admin-app .card,.admin-app .dash-split,.admin-app .og-grid,.admin-app .ax-board,.admin-app .copy-row,.admin-app .lang-bar,.admin-app .report-bar,.admin-app .guest-preview,.admin-app .menu-edit{min-width:0;max-width:100%}.admin-body.is-settings{padding-left:0;padding-right:0}.admin-settings-page{flex-direction:column;gap:1.5rem;width:100%;min-width:0;max-width:100%;margin:0;padding:0;display:flex}.admin-settings-page .card{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;width:100%;padding:1rem;box-shadow:0 1px 2px #0f172a0d}html.dark .admin-settings-page .card{background:#0f172a;border-color:#1e293b}.admin-settings-page .field input,.admin-settings-page .field select,.admin-settings-page .field textarea{width:100%;min-height:44px}@media (max-width:767px){.admin-settings-page .theme-switch,.admin-settings-page .btn{width:100%;min-height:var(--btn-h-mobile);border-radius:var(--btn-radius)}}.admin-settings-page .theme-switch button{min-height:44px}.admin-settings-page .check-line{width:100%;min-height:44px;margin:0}.admin-settings-page .card .check-line+.check-line{margin-top:8px}.setting-block{min-width:0}.setting-block .dash-h{margin:0}.admin-settings-page .theme-switch{max-width:100%}.admin-settings-nav{scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;overscroll-behavior-x:contain;align-items:stretch;gap:8px;margin:0 0 4px;padding:4px 2px 12px;display:flex;overflow:auto hidden}.admin-settings-nav::-webkit-scrollbar{display:none}.admin-settings-pill{color:#475569;min-height:44px;font:inherit;white-space:nowrap;cursor:pointer;background:#f1f5f9;border:0;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:650;line-height:1;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.admin-settings-pill svg{flex:none}.admin-settings-pill:hover{background:#e2e8f0}.admin-settings-pill.on{background:var(--accent);color:var(--accent-on);box-shadow:none;font-weight:700}.admin-settings-pill:disabled{opacity:.45;cursor:not-allowed}.admin-settings-pill:active{transform:scale(.98)}.admin-dock{left:50%;bottom:calc(12px + env(safe-area-inset-bottom,0px));color:#1e293b;-webkit-backdrop-filter:blur(22px)saturate(1.4);backdrop-filter:blur(22px)saturate(1.4);z-index:45;background:#fffc;border:1px solid #e2e8f0;border-radius:22px;grid-template-columns:repeat(4,1fr);gap:4px;width:min(520px,100vw - 2rem);max-width:calc(100vw - 2rem);padding:8px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 18px 40px #0f172a29}.admin-dock button{appearance:none;color:#1e293b;letter-spacing:.02em;cursor:pointer;background:0 0;border:0;border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:8px 4px 6px;font-size:10px;font-weight:700;transition:background .18s,color .18s,transform .15s;display:flex}.admin-dock button svg{width:22px;height:22px}.admin-dock button.on{background:var(--accent);color:var(--accent-on);box-shadow:none}.theme-switch{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:14px;gap:4px;padding:4px;display:flex}.theme-switch button{appearance:none;color:#475569;min-height:36px;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:10px;flex:1;padding:6px 10px;font-size:13px;font-weight:700}.theme-switch button.on{color:#0f172a;background:#fff;box-shadow:0 1px 2px #0f172a14}.theme-switch.compact{flex:0 auto;min-width:0;max-width:min(260px,100%)}.theme-switch.compact button{flex:0 auto;min-height:32px;padding:4px 8px;font-size:11px}.admin-topbar .theme-switch.compact{margin-left:auto}@media (max-width:767px){.admin-topbar{flex-wrap:nowrap;gap:6px;padding-left:10px;padding-right:10px;overflow:hidden}.admin-topbar select,.admin-topbar .admin-outlet-picker,.admin-topbar .portal-store-lock{flex:1 1 0;min-width:0;max-width:none}.admin-topbar select,.admin-topbar .admin-outlet-picker-btn,.admin-topbar .portal-store-lock{text-overflow:ellipsis;white-space:nowrap;height:34px;margin:0;padding:0 8px;font-size:12px;overflow:hidden}.admin-topbar-brand{flex-direction:row;flex:none;align-items:center;gap:0;min-width:0;overflow:hidden}.admin-topbar-brand .brand-mark{display:none}.admin-topbar-brand .admin-sync{flex:none;width:auto;max-width:4.75rem;margin-top:0;padding:4px 7px;font-size:9px}.admin-topbar-brand .admin-premium-badge{display:none}.admin-topbar .theme-switch.compact{flex:none;gap:1px;max-width:none;margin-left:0;padding:2px}.admin-topbar .theme-switch.compact button{width:28px;min-width:28px;min-height:28px;padding:0;font-size:0;line-height:0}.admin-topbar .theme-switch.compact button:before{font-size:13px;font-weight:700;line-height:1}.admin-topbar .theme-switch.compact button:first-child:before{content:"☀"}.admin-topbar .theme-switch.compact button:nth-child(2):before{content:"☾"}.admin-topbar .theme-switch.compact button:nth-child(3):before{content:"◐"}.admin-topbar .admin-icon-btn{border-radius:10px;flex:0 0 34px;width:34px;height:34px}}.theme-settings-card .dash-h{margin-bottom:10px}.booking-app-list{grid-template-columns:1fr;gap:1rem;display:grid}.booking-app-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;min-width:0;padding:14px 14px 12px;overflow:hidden;box-shadow:0 1px 2px #0f172a0a}.booking-app-card header{justify-content:space-between;align-items:flex-start;gap:8px;min-width:0;display:flex}.booking-app-card header>div:first-child{flex:1 1 0;min-width:0}.booking-app-card header>.btn{white-space:normal;flex:0 auto;min-width:0;max-width:46%;height:auto;padding:6px 8px}.booking-app-card .pay-badge{white-space:normal;overflow-wrap:anywhere;text-align:center;max-width:100%;line-height:1.25}.booking-app-card h3{letter-spacing:-.02em;margin:0;font-size:16px}.booking-app-meta{color:#64748b;margin:6px 0 0;font-size:13px}.booking-app-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.booking-app-actions .btn{flex:30%;min-height:40px}.channel-badge{letter-spacing:.02em;border-radius:999px;align-items:center;margin:6px 8px 0 0;padding:2px 8px;font-size:11px;font-weight:750;display:inline-flex}.channel-badge.guestBookingPage,.channel-badge.aiseo{color:#065f46;background:#d1fae5}.channel-badge.socialMedia,.channel-badge.whatsapp{color:#3730a3;background:#e0e7ff}.channel-badge.phoneManual,.channel-badge.phone{color:#92400e;background:#fef3c7}.channel-badge.walkIn,.channel-badge.walkin{color:#334155;background:#f1f5f9}.channel-badge.qrCode,.channel-badge.qr{color:#6b21a8;background:#f3e8ff}.guest-reply-badge{letter-spacing:.02em;border-radius:999px;align-items:center;margin:6px 8px 0 0;padding:2px 8px;font-size:11px;font-weight:750;display:inline-flex}.guest-reply-badge.is-awaiting{color:#0369a1;background:#e0f2fe}.guest-reply-badge.is-kept{color:#166534;background:#dcfce7}.guest-reply-badge.is-declined{color:#b91c1c;background:#fee2e2}html.dark .channel-badge.guestBookingPage,html.dark .channel-badge.aiseo{color:#6ee7b7;background:#064e3b8c}html.dark .channel-badge.socialMedia,html.dark .channel-badge.whatsapp{color:#e7e9ea;background:#312e818c}html.dark .channel-badge.phoneManual,html.dark .channel-badge.phone{color:#fcd34d;background:#78350f80}html.dark .channel-badge.walkIn,html.dark .channel-badge.walkin{color:#e2e8f0;background:#1e293b}html.dark .channel-badge.qrCode,html.dark .channel-badge.qr{color:#e9d5ff;background:#581c8780}html.dark .guest-reply-badge.is-awaiting{color:#7dd3fc;background:#0369a166}html.dark .guest-reply-badge.is-kept{color:#bbf7d0;background:#16653473}html.dark .guest-reply-badge.is-declined{color:#fecaca;background:#991b1b73}.punctuality-grid{grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr));gap:12px;width:100%;min-width:0;margin:12px 0 16px;display:grid}.punctuality-grid .stat{background:#fff;border:1px solid #e2e8f0;flex-direction:column;flex:none;gap:8px;min-width:0;min-height:96px;padding:16px;display:flex}.punctuality-bar{background:#e2e8f0;border-radius:999px;height:10px;margin:8px 0 16px;display:flex;overflow:hidden}.punctuality-bar span{height:100%;display:block}.punctuality-bar .on-time{background:#22c55e}.punctuality-bar .late-sm{background:#facc15}.punctuality-bar .late-md{background:#fb923c}.punctuality-bar .late-lg{background:#f43f5e}.channel-eff-row{border-bottom:1px solid #e2e8f0;justify-content:space-between;gap:12px;padding:8px 0;font-size:13px;display:flex}a.btn{box-sizing:border-box;text-align:center;justify-content:center;align-items:center;display:inline-flex}.dialog-card .dialog-actions{background:#fff;gap:8px;padding-top:12px;display:flex;position:sticky;bottom:0}.profile-dialog-back{z-index:80;justify-content:center;align-items:flex-end;padding:12px;display:flex}.profile-dialog{width:min(440px,100%);max-height:min(88dvh, calc(100dvh - 16px - env(safe-area-inset-top,0px)));padding:16px 16px calc(12px + env(safe-area-inset-bottom,0px));box-sizing:border-box;flex-direction:column;margin:0;display:flex;overflow:hidden}.profile-dialog>.dash-h{flex:none;margin:0 0 10px}.profile-dialog-body{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding-right:2px;overflow:hidden auto}.profile-dialog p.muted{margin:4px 0 0;font-size:12px;line-height:1.4}.profile-dialog textarea{resize:vertical;min-height:72px;max-height:96px}.profile-dialog-foot{border-top:1px solid #e2e8f0;flex-direction:column;flex:none;gap:8px;margin-top:10px;padding-top:10px;display:flex}.profile-dialog-foot .dialog-actions{background:0 0;grid-template-columns:1fr 1fr;gap:8px;width:100%;padding-top:0;display:grid;position:static}.profile-dialog-foot .btn{width:100%;min-width:0;min-height:44px;margin:0}.profile-dialog-foot .profile-dialog-links{grid-template-columns:1fr;justify-items:end}.profile-dialog-foot .profile-dialog-links .btn{width:auto;min-width:96px}@media (max-width:767px){.profile-dialog-back{align-items:flex-end;padding:0}.profile-dialog{width:100%;max-width:100%;max-height:calc(100dvh - env(safe-area-inset-top,12px));border-radius:22px 22px 0 0}}html.dark .profile-dialog-foot{border-top-color:#1e293b}.admin-app .wrap{max-width:none;margin:0;padding:0}.admin-app .dash-toolbar,.admin-app .site-nav{display:none}.admin-notify-sheet{color:#e2e8f0;background:#0f172a;border-radius:16px;margin:0 0 12px;padding:12px 14px;font-size:13px;animation:.22s admin-sheet-in}@keyframes admin-sheet-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.pwa-icon-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.pwa-icon-preview{object-fit:cover;border:1px solid var(--line,#e2e8f0);background:#0f172a;border-radius:22px;width:96px;height:96px}.admin-offline-banner{color:#ffedd5;text-align:center;z-index:31;background:#431407;margin:0;padding:8px 14px;font-size:12px;font-weight:650}.pwa-update-banner{z-index:60;color:#e7e9ea;text-align:center;background:#111;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 12px;padding:10px 14px;font-size:13px;font-weight:650;display:flex;position:sticky;top:0}.pwa-update-btn{appearance:none;color:#111;font:inherit;cursor:pointer;background:#fff;border:0;border-radius:8px;padding:6px 12px;font-weight:750}.pwa-update-btn:hover{background:#f0fdfa}.admin-toast{top:calc(72px + env(safe-area-inset-top,0px));z-index:80;color:#f8fafc;text-align:left;cursor:pointer;background:#0f172a;border:1px solid #334155;border-radius:16px;width:min(440px,100% - 24px);padding:12px 14px;animation:.22s admin-sheet-in;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 18px 40px #0f172a59}.admin-toast b{margin-bottom:4px;font-size:14px;display:block}.admin-toast span{color:#cbd5e1;font-size:13px}.reminder-sent-toast{top:calc(12px + env(safe-area-inset-top,0px));z-index:200;cursor:pointer}.reminder-sent-toast.is-error{background:#7f1d1d;border-color:#991b1b}.booking-app-card{animation:.2s admin-sheet-in}.admin-body .card{animation:.18s admin-sheet-in}html.dark .admin-app,html.dark .admin-app.bg-slate-50{color:#f1f5f9;background:#090d16}html.dark .admin-app .card,html.dark .admin-app .dialog-card,html.dark .admin-app .aiseo-drawer,html.dark .admin-app .booking-sheet{color:#f8fafc;background:#0f172a;border-color:#1e293b}html.dark .admin-app .muted,html.dark .admin-app .field label,html.dark .admin-app .chip-label,html.dark .admin-app .booking-app-meta,html.dark .admin-app .booking-client-meta{color:#94a3b8}html.dark .admin-app .dash-h,html.dark .admin-app .brand-mark,html.dark .booking-app-card h3,html.dark .booking-app-time{color:#f8fafc}html.dark .admin-app .field input,html.dark .admin-app .field select,html.dark .admin-app .field textarea,html.dark .login-shell .field input{color:#f8fafc;background:#090d16;border-color:#1e293b}html.dark .admin-app .field input:focus,html.dark .admin-app .field select:focus,html.dark .admin-app .field textarea:focus{background:#0f172a}html.dark .admin-app .chip{color:#e2e8f0;background:#1e293b;border-color:#334155}html.dark .admin-app .chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}html.dark .admin-sidebar{background:#0f172a;border-right-color:#1e293b}html.dark .admin-sidebar-toggle{color:#cbd5e1;background:#090d16;border-color:#1e293b}html.dark .admin-sidebar-toggle:hover{color:#e7e9ea;background:#1e293b}html.dark .admin-sidebar-logo{background:#090d16;border-color:#1e293b}html.dark .admin-sidebar-nav button{color:#cbd5e1}html.dark .admin-sidebar-nav button:hover:not(.on){background:#1e293b}html.dark .admin-sidebar-nav button.on,html.dark .admin-dock button.on{color:#000;background:#fff}html.dark .admin-topbar{background:#090d16e0;border-bottom-color:#1e293b}html.dark .admin-topbar select,html.dark .admin-topbar .admin-outlet-picker-btn,html.dark .admin-outlet-menu{color:#f8fafc;background:#0f172a;border-color:#1e293b}html.dark .admin-outlet-menu>button.on,html.dark .admin-outlet-menu>button:hover{background:#1e293b}html.dark .admin-outlet-form input,html.dark .admin-outlet-url input,html.dark .admin-outlet-dialog-card,html.dark .admin-outlet-dialog-card input{color:#f8fafc;background:#0f172a;border-color:#1e293b}html.dark .admin-outlet-dialog-card{background:#0f172a}html.dark .admin-icon-btn{color:#f8fafc;background:#0f172a;border-color:#1e293b}html.dark .admin-icon-btn.on{background:var(--accent);color:#fff;border-color:var(--accent)}html.dark .admin-dock{color:#f1f5f9;background:#0f172ae6;border-color:#1e293b}html.dark .admin-dock button{color:#f1f5f9}html.dark .admin-app .btn-quiet,html.dark .admin-app .btn-outline{color:#f8fafc;background:#1e293b;border-color:#334155}html.dark .booking-app-card{color:#fff;background:#0f172a;border-color:#1e293b}html.dark .booking-app-meta{color:#d1d5db}html.dark .dialog-card .dialog-actions{background:#0f172a}html.dark .pay-badge.paid{color:#bbf7d0;background:#16653473}html.dark .pay-badge.unpaid{color:#fdba74;background:#9a341273}html.dark .theme-switch{background:#1e293b;border-color:#334155}html.dark .theme-switch button{color:#e5e5ea}html.dark .theme-switch button.on{color:#fff;background:#3a3a3c}html.dark .login-shell{color:#f8fafc;background:#090d16}html.dark .ax-bar-count,html.dark .ax-bar-label{color:#94a3b8}html.dark .ax-bar-track{background:#1e293b}html.dark .ax-donut span{color:#94a3b8;background:#0f172a}html.dark .ax-donut b{color:#f8fafc}html.dark .report-bar{background:#0f172ab8;border-color:#1e293b}html.dark .table-tile{color:#f8fafc;background:#0f172a}.pwa-crop-card{width:min(420px,100%)}.pwa-crop-stage{touch-action:none;cursor:grab;background:#0f172a;border-radius:24px;width:280px;height:280px;margin:12px auto;position:relative;overflow:hidden}.pwa-crop-stage:active{cursor:grabbing}.pwa-crop-stage img{-webkit-user-select:none;user-select:none;pointer-events:none;max-width:none;position:absolute;top:0;left:0}.pwa-crop-zoom{flex-direction:column;gap:6px;margin:8px 0 4px;font-size:13px;font-weight:650;display:flex}.pwa-crop-zoom input{width:100%}.ax-board{grid-template-columns:minmax(0,1fr);gap:1.5rem;width:100%;min-width:0;max-width:100%;margin:0 0 16px;display:grid}.ax-chart-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ax-bars{grid-template-columns:repeat(8,minmax(2.5rem,1fr));align-items:end;gap:6px;min-height:180px;margin-top:8px;display:grid;overflow-x:auto}.ax-bar{height:180px;min-height:180px;color:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;padding:0;display:flex}.ax-bar-count{color:#64748b;font-size:11px;font-weight:750}.ax-bar-track{background:var(--accent-soft);border-radius:10px 10px 4px 4px;flex:1;align-items:flex-end;width:100%;max-width:36px;display:flex}.ax-bar-fill{border-radius:inherit;background:var(--accent-hover);width:100%;min-height:4px;transition:height .2s,background .15s,box-shadow .15s}.ax-bar.on .ax-bar-fill{background:#7c3aed;box-shadow:0 0 0 3px #7c3aed47,0 10px 22px #7c3aed66}.ax-bar.on .ax-bar-count{color:#6d28d9}.ax-bar-label{color:#64748b;text-align:center;white-space:nowrap;font-size:10px;font-weight:650;line-height:1.2}.ax-week-hint{margin:8px 0 0}.ax-side{gap:12px;display:grid}.ax-donut-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.ax-donut{border-radius:50%;flex:none;place-items:center;width:128px;height:128px;display:grid}.ax-donut span{text-align:center;color:#64748b;background:#fff;border-radius:50%;place-items:center;width:78px;height:78px;font-size:11px;display:grid}.ax-donut b{color:#0f172a;font-size:20px;display:block}.ax-legend{flex:1;min-width:140px;margin:0;padding:0;list-style:none}.ax-legend li{align-items:center;gap:8px;padding:4px 0;font-size:13px;display:flex}.ax-legend i{border-radius:99px;flex:none;width:8px;height:8px}.ax-legend span{flex:1}.ax-punctual{margin-top:10px}.booking-app-time{flex-wrap:wrap;gap:8px 14px;margin:6px 0 0;font-size:13px;font-weight:700;display:flex}.booking-app-time em{color:#64748b;font-style:normal;font-weight:600}.booking-app-late{color:#c2410c}.booking-app-ontime{color:#15803d}@media (min-width:768px){.admin-app{flex-direction:column}.admin-shell{flex-direction:row}.admin-sidebar.hidden.md\:flex,.admin-sidebar.md\:flex,.admin-sidebar{display:flex}.admin-dock,.admin-dock.block.md\:hidden,.md\:hidden{display:none!important}.admin-body{padding:1.5rem 1.5rem calc(4.5rem + env(safe-area-inset-bottom,0px))}.admin-topbar-brand{display:none}.admin-topbar{padding-top:10px}.admin-topbar .theme-switch.compact{margin-left:auto}.admin-topbar .admin-icon-btn:first-of-type{margin-left:0}.booking-app-list{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-chat,.booking-undo-toast{bottom:24px}}@media (min-width:1024px){.ax-board{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.ax-punctual-card{grid-column:1/-1}}@media (orientation:landscape) and (max-height:900px){.admin-body{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom,0px))}}html.dark .admin-settings-pill{color:#cbd5e1;background:#1e293b}html.dark .admin-settings-pill:hover{background:#334155}html.dark .admin-settings-pill.on{color:#000;background:#fff}.booking-app-card.dim{opacity:.75;background:#f8fafc}.booking-app-actions .btn,.booking-app-actions .booking-restore{min-height:44px}.booking-restore{appearance:none;color:#334155;cursor:pointer;background:#e2e8f0;border:0;border-radius:12px;flex:30%;padding:10px 14px;font-weight:750}.booking-sheet-back,.booking-confirm-back{z-index:70;background:#0f172a75;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.booking-confirm-back{z-index:76;align-items:center;padding:20px}.booking-sheet{width:min(420px,100%);min-width:0;max-width:100%;max-height:min(78dvh,640px);padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px));box-sizing:border-box;background:#fff;border-radius:22px 22px 0 0;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 -12px 40px #0f172a33}.booking-sheet-handle{background:#cbd5e1;border-radius:99px;flex:none;width:36px;height:4px;margin:4px auto 10px;display:block}.booking-sheet-head{flex:none;min-width:0;padding:0 4px 10px}.booking-sheet-head .dash-h{text-overflow:ellipsis;white-space:nowrap;margin:0 0 4px;overflow:hidden}.booking-sheet-head .muted{overflow-wrap:anywhere;word-break:break-word;margin:0;font-size:13px}.booking-sheet-list{-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:8px;min-width:0;min-height:0;padding:0 0 8px;display:flex;overflow:hidden auto}.booking-sheet h3{margin:4px 8px 12px}.booking-sheet-item{appearance:none;color:#0f172a;width:100%;min-width:0;min-height:48px;font:inherit;text-align:left;cursor:pointer;box-sizing:border-box;background:#f8fafc;border:0;border-radius:14px;align-items:center;gap:12px;margin:0;padding:12px 14px;font-size:15px;font-weight:650;line-height:1.3;text-decoration:none;display:flex}.booking-sheet-item span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.booking-sheet-item svg{color:var(--muted);flex:none}.booking-sheet-item:disabled{opacity:.45}.booking-sheet-dismiss{background:0 0;border:1px solid #e2e8f0;flex:none;justify-content:center;margin-top:4px}.booking-danger-label{letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;margin:8px 4px 0;font-size:11px;font-weight:800}.booking-sheet-item.noshow{color:#9a3412;background:#fff7ed}.booking-sheet-item.cancel{color:#b91c1c;background:#fef2f2}.booking-sheet-ref{letter-spacing:.02em;color:#334155;margin:4px 0 0;font-size:13px;font-weight:750}.booking-more-sheet,.booking-form-sheet{width:100%;max-width:100%;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin-top:auto}.booking-more-sheet{max-height:min(72dvh,560px)}@media (min-width:1280px){.booking-sheet-back{align-items:center;padding:24px}.booking-sheet{border-radius:20px;width:min(400px,100vw - 48px);max-height:min(80vh,560px);box-shadow:0 24px 60px #0f172a38}.booking-sheet-handle{display:none}.booking-more-sheet,.booking-form-sheet{width:min(400px,100vw - 48px);max-width:min(400px,100vw - 48px);margin-top:0;padding-left:16px;padding-right:16px}}@media (max-width:1279px){.booking-sheet-back{align-items:flex-end;padding:0}.booking-more-sheet,.booking-form-sheet{border-radius:22px 22px 0 0;width:100%;max-width:100%;box-shadow:0 -12px 40px #0f172a33}.booking-sheet-handle{display:block}}.booking-undo-toast{left:50%;bottom:calc(96px + env(safe-area-inset-bottom,0px));z-index:90;color:#f8fafc;background:#0f172a;border-radius:16px;align-items:center;gap:12px;width:min(440px,100% - 24px);padding:12px 14px;animation:.22s admin-sheet-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 18px 40px #0f172a59}.booking-undo-toast span{flex:1;font-size:14px;font-weight:650}.booking-undo-toast button{appearance:none;background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:10px;min-height:36px;padding:0 12px;font-weight:750}html.dark .booking-app-card.dim{background:#0f172a8c}html.dark .booking-restore{color:#e2e8f0;background:#1e293b}html.dark .booking-sheet{background:#1e293b}html.dark .booking-sheet-item{color:#e2e8f0;background:#0f172a}html.dark .booking-sheet-dismiss{border-color:#334155}html.dark .booking-sheet-handle{background:#475569}html.dark .booking-sheet-item.noshow{color:#fdba74;background:#431407}html.dark .booking-sheet-item.cancel{color:#fca5a5;background:#450a0a}.admin-premium-badge{letter-spacing:0;text-transform:none;white-space:normal;border-radius:999px;flex-wrap:wrap;align-items:center;gap:6px 4px;max-width:100%;margin-top:4px;padding:3px 10px;font-size:11px;font-weight:650;line-height:1.35;display:inline-flex}.admin-premium-badge svg{flex:none}.admin-premium-badge.lifetime{background:linear-gradient(90deg, #f59e0b1f, #a855f71f, rgba(var(--accent-rgb), .12));color:#b45309;border:1px solid #fbbf2459;box-shadow:0 1px 2px #0f172a0d}.admin-premium-badge.active{background:var(--accent-soft);border:1px solid var(--line);color:var(--ink)}.admin-premium-badge.expired{color:#be123c;background:#fff1f2;border:1px solid #fecdd3}.admin-premium-days.warn{color:#e11d48;font-weight:800}.admin-premium-settings{margin:0 0 8px}html.dark .admin-premium-badge.lifetime{color:#fcd34d;border-color:#fbbf2459}html.dark .admin-premium-badge.active{color:#e7e9ea;background:#312e8173;border-color:#3730a3}html.dark .admin-premium-badge.expired{color:#fda4af;background:#88133766;border-color:#9f1239}html.dark .admin-premium-days.warn{color:#fb7185}.booking-client-meta{color:#64748b;margin:8px 0 0;font-size:12px;line-height:1.45}.booking-kpi-bar{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:stretch;gap:10px;margin:10px 0 16px;display:grid}.booking-kpi-bar .stat{background:var(--chrome);border:1px solid var(--line);min-width:0;color:var(--muted);border-radius:14px;padding:12px 14px;font-size:12px;font-weight:650}.booking-kpi-bar .stat b{color:var(--accent);font-variant-numeric:tabular-nums;letter-spacing:-.03em;margin-bottom:2px;font-size:22px;font-weight:750;display:block}.booking-kpi-bar .stat.ok b{color:var(--green)}.booking-kpi-bar .stat.wait b{color:#d97706}.booking-kpi-bar .booking-kpi-link{white-space:nowrap;align-self:center;margin:0}@media (max-width:640px){.booking-kpi-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-kpi-bar .booking-kpi-link{grid-column:1/-1;width:100%}}.bookings-search-row{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:.75rem;width:100%;min-width:0;max-width:100%;margin:0 0 1.5rem;display:flex}.bookings-search-field{flex:auto;width:100%;min-width:0}.bookings-search-field input{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.bookings-search-actions{flex-shrink:0;gap:8px;width:100%;display:flex}.bookings-search-actions .btn{white-space:nowrap;flex:1 1 0;min-width:0}@media (min-width:768px){.bookings-search-row{flex-flow:row;align-items:flex-end}.bookings-search-field{flex:1 1 0;width:auto}.bookings-search-actions,.bookings-search-actions .btn{flex:none;width:auto}}.btn-new-booking{background:var(--accent);color:#fff;min-height:44px;font:inherit;cursor:pointer;white-space:nowrap;border:0;border-radius:.75rem;padding:.625rem 1rem;font-weight:750}.btn-new-booking:hover{background:var(--accent-strong)}.btn-scan-qr{white-space:nowrap;min-height:44px}.btn-confirm-checkin{box-shadow:0 0 0 3px rgba(var(--accent-rgb), .28)}.booking-app-card.scan-hit{border-color:var(--accent-hover);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .35), 0 12px 28px rgba(var(--accent-rgb), .18);animation:1.2s ease-in-out 3 booking-scan-pulse}@keyframes booking-scan-pulse{0%,to{box-shadow:0 0 0 3px rgba(var(--accent-rgb), .28), 0 8px 20px rgba(var(--accent-rgb), .12)}50%{box-shadow:0 0 0 6px #fbbf2473,0 12px 28px #f59e0b33}}.qr-scan-back{z-index:80;padding:max(8px, env(safe-area-inset-top,0px)) max(12px, env(safe-area-inset-right,0px)) max(8px, env(safe-area-inset-bottom,0px)) max(12px, env(safe-area-inset-left,0px));background:#0f172a9e;place-items:center;display:grid;position:fixed;inset:0}.qr-scan-card{color:#f8fafc;background:#0f172a;border-radius:22px;flex-direction:column;gap:8px;width:min(440px,100%);max-height:calc(100dvh - 16px);padding:14px;display:flex;overflow:hidden}.qr-scan-copy{flex:none;min-width:0}.qr-scan-copy .dash-h{margin-bottom:4px}.qr-scan-copy .muted{margin:0 0 8px}.qr-scan-actions{flex-wrap:wrap;margin:0}.qr-scan-card .muted{color:#94a3b8}.qr-scan-card .dash-h{color:#f8fafc}.qr-scan-stage{aspect-ratio:3/4;background:#000;border-radius:16px;flex:auto;min-height:0;max-height:min(52dvh,420px);margin:0;position:relative;overflow:hidden}.qr-scan-stage video{object-fit:cover;width:100%;height:100%}.qr-scan-reticle{pointer-events:none;border:2px solid #ffffffe0;border-radius:18px;position:absolute;inset:18%;box-shadow:0 0 0 999px #0f172a59}.qr-scan-reticle span{border:2px solid #fbbf24;border-radius:99px;width:18px;height:18px;margin:-9px 0 0 -9px;animation:1.2s ease-in-out infinite qr-scan-aim;position:absolute;top:50%;left:50%}@keyframes qr-scan-aim{0%,to{opacity:.65;transform:scale(1)}50%{opacity:1;transform:scale(1.35)}}@media (orientation:landscape) and (max-height:900px){.qr-scan-card{flex-direction:row;align-items:stretch;gap:14px;width:min(860px,100%);max-height:calc(100dvh - 12px);padding:12px}.qr-scan-copy{flex-direction:column;flex:0 0 min(240px,36%);justify-content:center;display:flex}.qr-scan-stage{aspect-ratio:auto;flex:auto;align-self:stretch;height:auto;min-height:0;max-height:none}}html.dark .booking-app-card.scan-hit{border-color:#a5b4fc}.booking-form-sheet{max-height:min(92dvh, calc(100dvh - env(safe-area-inset-top,12px)))}.booking-form-sheet>h3{flex:none;margin:4px 4px 12px}.booking-form-body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:2px;min-width:0;min-height:0;padding-bottom:8px;display:flex;overflow:hidden auto}.booking-form-sheet .dialog-actions{background:inherit;flex:none;gap:8px;margin:0;padding-top:12px;display:flex}.booking-form-sheet .dialog-actions .btn{flex:1 1 0;min-width:0}.booking-form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (max-width:520px){.booking-form-grid{grid-template-columns:1fr}}html.dark .booking-sheet-ref{color:#cbd5e1}.sloity-brand-mark{color:var(--sloity-ink,var(--ink));align-items:center;text-decoration:none;display:inline-flex}.sloity-brand-mark .admin-brand-wordmark{font-size:20px}.setup-shell{background:var(--sloity-surface,var(--surface));min-height:100vh;padding:28px 20px 64px}.setup-shell-inner{max-width:620px;margin:0 auto}.setup-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.setup-hero{margin-bottom:8px}.setup-lang-toggle{border-radius:var(--sloity-radius-sm,8px);border:1px solid var(--sloity-line,var(--line));background:var(--sloity-card,var(--card));align-items:center;gap:4px;padding:4px 6px;font-size:14px;display:inline-flex}.setup-lang-btn{cursor:pointer;color:var(--sloity-muted,var(--muted));background:0 0;border:none;border-radius:6px;padding:4px 10px}.setup-lang-btn.active{color:var(--sloity-accent-on,#fff);background:var(--sloity-accent-strong,#111);font-weight:650}.setup-lang-sep{display:none}.setup-title{font-family:var(--sloity-font-body,var(--font-sans), sans-serif);letter-spacing:-.03em;color:var(--sloity-ink,var(--ink));margin:0;font-size:clamp(28px,4.5vw,36px);font-weight:650;line-height:1.15}.setup-tagline{max-width:540px;margin:12px 0 0;font-size:15px;line-height:1.5}.setup-steps{flex-wrap:wrap;gap:10px 18px;margin:22px 0 0;padding:0;list-style:none;display:flex}.setup-step{color:var(--sloity-muted,var(--muted));align-items:center;gap:8px;font-size:13px;display:flex}.setup-step.active{color:var(--sloity-ink,var(--ink));font-weight:600}.setup-step.done{color:var(--sloity-ink,var(--ink))}.setup-step-marker{border:1px solid var(--sloity-line,var(--line));background:var(--sloity-card,var(--card));border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:650;display:inline-flex}.setup-step.done .setup-step-marker{background:var(--sloity-accent-strong,#111);border-color:var(--sloity-accent-strong,#111);color:var(--sloity-accent-on,#fff)}.setup-step.active .setup-step-marker{border-color:var(--sloity-accent-strong,#111);color:var(--sloity-accent-strong,#111)}.setup-panel{border-radius:var(--sloity-radius-lg,22px);border:1px solid var(--sloity-line,var(--line));background:var(--sloity-card,var(--card));box-shadow:var(--sloity-shadow,var(--shadow-sm));margin-top:24px;padding:22px 22px 24px}.setup-panel-nested{box-shadow:none;margin-top:12px}.setup-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.setup-panel-merchant .setup-h2{margin-top:16px}.setup-merchant-tabs{gap:8px;margin-bottom:4px}.setup-h2{color:var(--sloity-ink,var(--ink));margin:0 0 12px;font-size:17px;font-weight:650}.setup-lead{margin:0 0 12px;font-size:14px;line-height:1.5}.setup-segments{grid-template-columns:1fr;gap:8px;margin:16px 0;display:grid}@media (min-width:560px){.setup-segments{grid-template-columns:repeat(3,1fr)}}.setup-segment{text-align:left;border:1px solid var(--sloity-line,var(--line));border-radius:var(--sloity-radius-md,12px);background:var(--sloity-chrome,var(--chrome));cursor:pointer;color:var(--sloity-muted,var(--muted));padding:12px 14px;font-size:13px;line-height:1.35;transition:border-color .15s,box-shadow .15s}.setup-segment.active{border-color:var(--sloity-accent-strong,#111);background:var(--sloity-card,var(--card));color:var(--sloity-ink,var(--ink));box-shadow:0 0 0 1px var(--sloity-accent-strong,#111);font-weight:600}.setup-path-body{margin-top:4px}.setup-input-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.setup-actions{flex-wrap:wrap;gap:8px;margin-top:4px}.setup-accordion{border:1px solid var(--sloity-line,var(--line));border-radius:var(--sloity-radius-md,12px);background:var(--sloity-chrome,var(--chrome));margin-top:14px;padding:0 14px 14px}.setup-accordion summary{cursor:pointer;color:var(--sloity-ink,var(--ink));padding:14px 0;font-size:13px;font-weight:600;list-style:none}.setup-accordion summary::-webkit-details-marker{display:none}.setup-cmd{border-radius:var(--sloity-radius-sm,8px);color:#e2e8f0;background:#0f172a;margin:0;padding:12px;font-size:12px;line-height:1.45;overflow:auto}.setup-msg.ok{color:var(--sloity-success,#059669);margin-top:12px;font-size:14px;line-height:1.45}.setup-msg.err{color:var(--sloity-danger,#e11d48);margin-top:12px;font-size:14px}.setup-status-pill{border:1px solid var(--sloity-line,var(--line));background:var(--sloity-chrome,var(--chrome));border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.setup-status-pill.ok{color:var(--sloity-success,#059669);background:#f0fdf4;border-color:#bbf7d0}.setup-status-pill.err{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.setup-server-status{border-top:1px solid var(--sloity-line,var(--line));flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;padding-top:16px;display:flex}.setup-db-hint{margin:0 0 4px;font-size:14px}.setup-help-collapsed{background:0 0;border:none;margin-top:20px;padding:0}.setup-help-collapsed>summary{cursor:pointer;color:var(--sloity-muted,var(--muted));padding:8px 0;font-weight:600}.btn-sm{padding:6px 12px;font-size:13px}.setup-shell{overflow-x:hidden}.setup-shell-inner{width:100%;min-width:0;max-width:620px}.setup-header,.setup-panel-head,.setup-server-status,.setup-merchant-tabs,.setup-actions{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.setup-panel,.setup-path-body,.setup-panel .dash-form-grid,.setup-panel .field{min-width:0}.setup-panel .field input,.setup-panel .field select,.setup-panel .field textarea,.setup-input-mono{box-sizing:border-box;width:100%;max-width:100%}.setup-panel .pw-input-row{z-index:1;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex;position:relative;overflow:visible}.setup-panel .pw-input-row input{flex:12rem;width:auto;min-width:0;max-width:100%}.setup-panel .pw-input-row .btn{z-index:2;pointer-events:auto;white-space:nowrap;flex:none;min-height:44px;position:relative}.setup-panel-merchant .dash-form-grid{grid-template-columns:1fr 1fr;align-items:start;gap:14px 12px;display:grid}.setup-panel-merchant .dash-form-grid>.field,.setup-panel-merchant .dash-form-grid>p.err,.setup-panel-merchant .dash-form-grid>button[type=submit],.setup-panel-merchant .dash-form-grid>.setup-span-2{min-width:0}.setup-panel-merchant .dash-form-grid>.setup-span-2,.setup-panel-merchant .dash-form-grid>button[type=submit],.setup-panel-merchant .dash-form-grid>p.err{grid-column:1/-1}.setup-panel-merchant .dash-form-grid>.field:has(.pw-input-row){grid-column:1/-1}.setup-merchant-tabs .btn,.setup-actions .btn{min-height:44px}.setup-segments{align-items:stretch}.setup-segment{white-space:normal;overflow-wrap:anywhere;min-height:44px}.setup-span-2{grid-column:1/-1;min-width:0}.setup-field-hint{margin:4px 0 0;font-size:12px;line-height:1.4}@media (max-width:640px){.setup-shell{padding:20px 14px 48px}.setup-header{flex-direction:column;align-items:flex-start}.setup-steps{flex-direction:column;align-items:flex-start;gap:10px}.setup-segments{grid-template-columns:1fr!important}.setup-panel{padding:18px 14px 20px}.setup-panel-head{flex-direction:column;align-items:flex-start}.setup-merchant-tabs,.setup-actions,.setup-server-status{flex-direction:column;align-items:stretch}.setup-merchant-tabs .btn,.setup-actions .btn,.setup-server-status .btn{width:100%}.setup-panel-merchant .dash-form-grid{grid-template-columns:1fr;gap:14px}.setup-panel-merchant .dash-form-grid>*{grid-column:1/-1}}
