.hero { display:none !important; }.compact-heading { margin-top:18px; }.section-lede { margin:6px 0 0; color:#aab8ad; font-size:.82rem; }
:root { color-scheme:dark; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; background:#070a08; color:#f5f8f5; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { min-height:100vh; margin:0; overflow-x:hidden; background:radial-gradient(900px 600px at 14% -12%,#245f32 0%,transparent 65%),radial-gradient(800px 520px at 100% 15%,#15341e 0%,transparent 60%),#070a08; } body::before { content:""; position:fixed; inset:0; pointer-events:none; opacity:.2; background-image:linear-gradient(110deg,rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(20deg,rgba(255,255,255,.015) 1px,transparent 1px); background-size:22px 22px,31px 31px; mask-image:linear-gradient(#000,transparent 80%); }
button,input,select { font:inherit; } button { cursor:pointer; } button:focus-visible,input:focus-visible,select:focus-visible { outline:3px solid #a0f1aa; outline-offset:3px; }
.topbar { height:76px; max-width:1480px; padding:0 34px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:24px; }.brand { display:flex; gap:10px; align-items:center; color:#f4f8f3; font-size:.76rem; font-weight:900; letter-spacing:.1em; text-decoration:none; white-space:nowrap; }.brand small { display:block; margin-top:3px; color:#72dc7e; font-size:.55rem; letter-spacing:.08em; }.brand-dot { width:38px; height:38px; border:2px solid #5ad66c; border-radius:50%; background:radial-gradient(circle at 35% 28%,#c5ffcd,#72df80 18%,#162619 21%,#183c20 55%,#09120b); box-shadow:0 0 20px #77e78555; }.site-nav { display:flex; align-self:stretch; align-items:center; gap:26px; }.site-nav a { display:flex; align-items:center; height:100%; border-bottom:2px solid transparent; color:#b6c0b8; font-size:.73rem; font-weight:800; letter-spacing:.04em; text-decoration:none; text-transform:uppercase; }.site-nav a:first-child,.site-nav a:hover { border-color:#61e675; color:#83ef91; }.header-actions { display:flex; align-items:center; gap:14px; }.help-link { color:#c3cec4; font-size:.8rem; font-weight:750; text-decoration:none; }.help-link:first-letter { color:#a4f5ad; }.account-button { min-height:42px; border:1px solid #38503d; border-radius:999px; padding:0 16px; background:#17221a; color:#eaf2eb; font-size:.84rem; font-weight:760; transition:transform .2s,background .2s,border-color .2s; }.account-button:hover { transform:translateY(-2px); background:#233126; border-color:#63916b; }
main { max-width:1180px; padding:38px 28px 112px; margin:auto; }.hero { position:relative; isolation:isolate; min-height:350px; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr); align-items:center; gap:40px; padding:42px 48px; overflow:hidden; border:1px solid #365240; border-radius:29px; background:linear-gradient(135deg,rgba(29,77,41,.94),rgba(13,26,16,.95) 58%,rgba(8,12,9,.98)); box-shadow:0 30px 90px #0009,inset 0 1px #baffc218; }.hero::after { content:""; position:absolute; inset:0; z-index:-1; opacity:.42; background:repeating-linear-gradient(125deg,transparent 0 9px,rgba(255,255,255,.025) 10px 11px); }.eyebrow { display:flex; align-items:center; gap:8px; margin:0 0 11px; color:#9ff5aa; font-size:.7rem; font-weight:900; letter-spacing:.15em; }.live-dot { width:7px; height:7px; border-radius:50%; background:#91ee9b; box-shadow:0 0 0 0 #8ef69b; animation:pulse 2.2s infinite; }.hero h1 { margin:0; font-size:clamp(3rem,6vw,5.6rem); letter-spacing:-.075em; line-height:.88; }.hero h1 em { color:#91ec9c; font-style:normal; }.lede { max-width:520px; margin:20px 0; color:#c5d3c7; font-size:1.04rem; line-height:1.62; }.hero-points { display:flex; flex-wrap:wrap; gap:8px; }.hero-points span { padding:7px 10px; border:1px solid #4c6b52; border-radius:999px; background:#0f21136b; color:#d2e6d5; font-size:.75rem; font-weight:650; }.hero-table { position:relative; width:min(100%,355px); aspect-ratio:1.22; justify-self:end; overflow:hidden; border:13px solid #4a291a; border-radius:24px; background:radial-gradient(circle at 46% 34%,#388d4a,#126029 70%); box-shadow:inset 0 0 0 4px #79462a,inset 0 0 34px #001c0b,0 24px 38px #0008; transform:rotate(-5deg); animation:float 6s ease-in-out infinite; }.hero-table::before { content:""; position:absolute; inset:16px; border:1px solid #7fe09165; border-radius:13px; }.hero-table::after { content:""; position:absolute; width:17px; height:17px; border-radius:50%; background:#070a08; box-shadow:292px 0 #070a08,0 194px #070a08,292px 194px #070a08; }.ball { position:absolute; width:34px; height:34px; border-radius:50%; box-shadow:inset -7px -7px 8px #0006,2px 5px 7px #0007; }.ball::after { content:""; position:absolute; inset:8px; border-radius:50%; background:#fff; opacity:.8; }.ball-yellow { top:38%; left:48%; background:#ffc928; }.ball-red { top:62%; left:25%; background:#db3e42; }.ball-blue { top:20%; right:19%; background:#3684e8; }.cue-line { position:absolute; top:67%; left:4%; width:55%; height:5px; border-radius:9px; background:linear-gradient(90deg,#e5d6b9,#a8784b); transform:rotate(-27deg); transform-origin:left; }.aim-dot { position:absolute; top:45%; left:40%; width:5px; height:5px; border-radius:50%; background:#ffffff; box-shadow:0 0 0 8px #fff3; }
.section-heading { display:flex; align-items:end; justify-content:space-between; margin:52px 0 18px; }.section-heading h2 { margin:0; font-size:clamp(1.45rem,3vw,2rem); letter-spacing:-.04em; }.live-availability { display:flex; align-items:center; gap:7px; padding:8px 11px; border:1px solid #35533b; border-radius:999px; color:#a8f3b1; font-size:.68rem; font-weight:850; letter-spacing:.1em; }.live-availability span { width:7px; height:7px; border-radius:50%; background:#77e986; box-shadow:0 0 11px #7cee8d; }.venue-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); gap:15px; }.venue-card,.booking-panel { border:1px solid #2a3c2e; background:linear-gradient(145deg,#151b16,#0e130f); box-shadow:0 20px 42px #0004; }.venue-card { min-height:213px; padding:19px; border-radius:19px; display:flex; flex-direction:column; animation:rise .55s both; transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease; }.venue-card:nth-child(2) { animation-delay:.07s; }.venue-card:nth-child(3) { animation-delay:.14s; }.venue-card:hover { transform:translateY(-6px); border-color:#669a6d; box-shadow:0 27px 50px #0008; }.card-top { display:flex; align-items:start; gap:11px; }.venue-icon { flex:0 0 auto; width:42px; height:42px; display:grid; place-items:center; border:1px solid #3f804b; border-radius:13px; background:radial-gradient(circle at 36% 30%,#79ef88,#357f41 58%,#16351b); box-shadow:inset 0 0 0 3px #ffffff12; color:#112315; font-weight:900; }.venue-icon span { width:21px; height:21px; display:grid; place-items:center; border-radius:50%; background:#f3f2e8; box-shadow:inset -2px -2px 2px #0003; font-size:.7rem; }.venue-title { min-width:0; flex:1; }.venue-card h3 { overflow:hidden; margin:1px 0 5px; text-overflow:ellipsis; white-space:nowrap; font-size:1.07rem; letter-spacing:-.025em; }.venue-card p { margin:0; color:#acb8ae; font-size:.82rem; line-height:1.35; }.today-badge { padding:5px 7px; border:1px solid #725d24; border-radius:6px; color:#f1d873; background:#322b142f; font-size:.61rem; font-weight:850; letter-spacing:.08em; }.venue-divider { height:1px; margin:19px 0 12px; background:linear-gradient(90deg,#3b513f,transparent); }.venue-note { margin-top:auto !important; }.primary { display:flex; align-items:center; justify-content:space-between; min-height:43px; border:0; border-radius:11px; padding:0 13px; background:linear-gradient(110deg,#75df81,#a2f2a8); color:#0a220e; font-weight:860; transition:transform .2s,filter .2s,box-shadow .2s; }.primary:hover { transform:translateY(-2px); filter:brightness(1.06); box-shadow:0 10px 18px #47b85b3d; }.venue-action { width:100%; margin-top:15px; }.venue-action b { font-size:1.18rem; transition:transform .2s; }.venue-action:hover b { transform:translateX(3px); }.status-message { min-height:1.4em; margin:17px 0 0; color:#ffcf7b; font-size:.9rem; }
.booking-panel { margin-top:34px; padding:25px; border-radius:21px; animation:rise .35s both; }.booking-top { display:flex; justify-content:space-between; gap:20px; align-items:start; }.booking-top h2 { margin:0; font-size:1.7rem; letter-spacing:-.045em; }.muted { color:#abb8ae; }.back-link,.text-button { border:0; background:none; color:#9af0a5; font-weight:700; }.back-link:hover { text-decoration:underline; }.booking-controls { display:grid; grid-template-columns:1.15fr .9fr .9fr; gap:12px; padding:16px; margin:23px 0 18px; border:1px solid #304235; border-radius:15px; background:#0b0f0c8a; }.control { display:grid; gap:7px; color:#b4c0b6; font-size:.75rem; font-weight:750; letter-spacing:.03em; }.control select { min-height:44px; border:1px solid #405446; border-radius:10px; padding:0 10px; color:#f3f8f3; background:#151c16; }.table-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:12px; }.table-card { padding:16px; border:1px solid #314437; border-radius:14px; background:linear-gradient(145deg,#111711,#0c100d); transition:transform .2s,border-color .2s; }.table-card:hover { transform:translateY(-3px); border-color:#62986a; }.table-card h3 { margin:0 0 5px; letter-spacing:-.02em; }.table-card p { margin:0 0 13px; color:#aeb9b0; font-size:.84rem; }.table-card .price { color:#91efa0; font-weight:760; }.table-card .primary { width:100%; }.empty { padding:31px; border:1px dashed #3d5341; border-radius:14px; color:#b7c2b8; text-align:center; }
.booking-actions { display:flex; flex-direction:column; align-items:end; gap:11px; }.view-switch { display:flex; overflow:hidden; border:1px solid #3c5140; border-radius:10px; background:#0c120d; }.view-switch button { min-height:34px; border:0; padding:0 10px; background:transparent; color:#aab8ad; font-size:.72rem; font-weight:800; }.view-switch button.active { background:#2d6740; color:#ebffed; }.start-toggle { min-width:152px; }.toggle { display:flex; align-items:center; gap:8px; min-height:44px; border:1px solid #405446; border-radius:10px; padding:0 10px; background:#151c16; color:#c5d2c7; font-weight:750; }.toggle i { width:27px; height:16px; border-radius:999px; background:#4a554c; transition:.2s; }.toggle i::after { content:""; display:block; width:12px; height:12px; margin:2px; border-radius:50%; background:#e9efea; transition:.2s; }.toggle.on { border-color:#5b9964; color:#a8f3b1; }.toggle.on i { background:#5fbd6d; }.toggle.on i::after { transform:translateX(11px); }.offers-strip { margin:0 0 18px; padding:15px; border:1px solid #51492b; border-radius:15px; background:linear-gradient(120deg,#29241171,#15160d); }.offers-heading { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; color:#d7d2b5; font-size:.75rem; }.offers-heading .eyebrow { margin:0; color:#f0d66b; }.offer-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:9px; }.offer-card { display:flex; gap:9px; align-items:start; padding:10px; border:1px solid #695c2e; border-radius:10px; background:#090c0975; }.offer-card strong { font-size:.86rem; }.offer-card p { margin:3px 0 0; color:#c2c0ae; font-size:.74rem; }.offer-tag { padding:4px 5px; border-radius:4px; background:#e9c94d; color:#312805; font-size:.56rem; font-weight:900; letter-spacing:.08em; }.table-card-head { display:flex; gap:10px; justify-content:space-between; }.available-now { align-self:start; padding:4px 5px; border:1px solid #3e8050; border-radius:5px; color:#92eea0; font-size:.57rem; font-weight:900; letter-spacing:.08em; }.slot-prompt { margin-bottom:8px !important; color:#c6d2c8 !important; }.time-chips { display:flex; flex-wrap:wrap; gap:6px; }.quick-time { min-height:35px; border:1px solid #3c6744; border-radius:8px; padding:0 9px; background:#152d1a; color:#a8efb1; font-size:.76rem; font-weight:800; transition:.2s; }.quick-time:hover { transform:translateY(-2px); background:#214b2a; }.more-time { color:#c5d5c7; background:#151d16; }
.owner-tabs { display:flex; gap:4px; overflow:auto; margin:25px 0 17px; padding:4px; border:1px solid #304235; border-radius:12px; background:#0a0e0a; }.owner-tab { white-space:nowrap; min-height:38px; border:0; border-radius:8px; padding:0 12px; background:transparent; color:#abb9ae; font-size:.77rem; font-weight:800; }.owner-tab.active { background:#274d2f; color:#eaffec; }.owner-content { max-width:860px; }.owner-form,.owner-stack { display:grid; gap:16px; padding:20px; border:1px solid #334a38; border-radius:15px; background:#0d130e; }.owner-form h3,.owner-stack h3 { margin:0; font-size:1.15rem; }.owner-form p,.owner-stack p { margin:-8px 0 0; color:#aab6ac; font-size:.84rem; }.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.form-grid label,.owner-form>label:not(.check-line),.table-editor label { display:grid; gap:6px; color:#c1cdc3; font-size:.75rem; font-weight:750; }.form-grid input,.form-grid select,.owner-form input,.table-editor input { min-height:42px; border:1px solid #3f5243; border-radius:9px; padding:0 9px; background:#070b08; color:#eef6ef; }.check-line { display:flex !important; align-items:center; gap:8px; color:#c7d2c8; font-size:.8rem; }.check-line input { min-height:auto !important; accent-color:#73df80; }.save-owner { justify-self:start; min-width:210px; }.table-editor,.owner-offer { display:flex; align-items:center; gap:15px; justify-content:space-between; padding:13px 0; border-bottom:1px solid #293b2d; }.table-editor:last-child,.owner-offer:last-child { border-bottom:0; }.table-editor>div,.owner-offer>div { display:grid; gap:4px; }.table-editor span,.owner-offer p { margin:0; color:#a9b7ab; font-size:.76rem; }.table-editor label { width:118px; }.text-save { min-height:35px; border:1px solid #4c7954; border-radius:8px; padding:0 10px; background:#18321d; color:#a9efb2; font-weight:800; font-size:.75rem; }.hours-form { gap:0; }.hours-row { display:grid; grid-template-columns:1.2fr .9fr 110px 20px 110px; gap:9px; align-items:center; padding:12px 0; border-bottom:1px solid #28372c; }.hours-row strong { font-size:.84rem; }.hours-row input[type="time"] { min-height:38px; }.offers-owner { padding:20px; border:1px solid #39443a; border-radius:15px; background:#0c100d; }.offers-owner h3 { margin:0 0 12px; }
.owner-schedule-shell { overflow:hidden; border:1px solid #37513b; border-radius:16px; background:#0b100c; }.schedule-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:17px; border-bottom:1px solid #324736; background:linear-gradient(100deg,#152719,#0d120e); }.schedule-toolbar h3 { margin:0; font-size:1.08rem; }.schedule-toolbar p { margin:4px 0 0; color:#aab9ad; font-size:.77rem; }.schedule-toolbar-actions { display:flex; align-items:end; gap:8px; }.schedule-toolbar-actions label { display:grid; gap:4px; color:#aebbb0; font-size:.67rem; font-weight:800; }.schedule-toolbar-actions input { min-height:36px; border:1px solid #3e5342; border-radius:8px; padding:0 7px; background:#091009; color:#e7f0e8; }.schedule-zoom { display:flex; align-items:center; gap:4px; min-height:36px; border:1px solid #3e5342; border-radius:8px; padding:0 5px; background:#0b110c; }.schedule-zoom span { margin-left:3px; color:#aebbb0; font-size:.62rem; font-weight:900; letter-spacing:.03em; }.schedule-zoom span + span { margin-left:7px; }.schedule-zoom button { width:26px; height:26px; border:1px solid #527159; border-radius:6px; background:#1b3821; color:#bff7c8; font-size:1rem; font-weight:900; line-height:1; cursor:pointer; }.schedule-zoom button:hover { background:#28552f; }.schedule-scroll { max-height:620px; overflow:auto; overscroll-behavior:contain; }.schedule-grid { position:relative; display:grid; min-width:max-content; }.schedule-corner,.schedule-table-name { position:sticky; top:0; z-index:4; display:grid; align-content:center; min-height:48px; border-bottom:1px solid #374d3a; background:#17201a; }.schedule-corner { left:0; z-index:6; padding-left:10px; color:#8cae91; font-size:.62rem; font-weight:900; letter-spacing:.09em; }.schedule-table-name { padding:0 10px; border-left:1px solid #2b3c2e; }.schedule-table-name strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.78rem; }.schedule-table-name span { margin-top:3px; color:#9aab9c; font-size:.63rem; }.schedule-time { position:sticky; left:0; z-index:3; padding:9px 8px; border-bottom:1px solid #223025; border-right:1px solid #354b39; background:#101610; color:#92a894; font-size:.7rem; font-weight:800; }.schedule-cell { z-index:1; border-bottom:1px solid #223025; border-left:1px solid #223025; background:linear-gradient(90deg,#0b100c,#0d130e); }.schedule-booking { z-index:2; display:grid; align-content:center; gap:3px; align-self:stretch; min-width:0; margin:4px; overflow:hidden; border:1px solid #6ab676; border-radius:8px; padding:7px; background:linear-gradient(135deg,#276a35,#174321); box-shadow:0 4px 10px #0006; color:#edffef; text-align:left; transition:transform .16s,filter .16s; }.schedule-booking:hover { z-index:5; transform:scale(1.02); filter:brightness(1.12); }.schedule-booking strong,.schedule-booking span,.schedule-booking em { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.schedule-booking strong { font-size:.7rem; }.schedule-booking span { font-size:.62rem; color:#d0eed4; }.schedule-booking em { color:#97e8a3; font-size:.56rem; font-style:normal; font-weight:900; letter-spacing:.06em; }.schedule-booking.status-pending { border-color:#d6a83e; background:linear-gradient(135deg,#775c1b,#463710); }.schedule-booking.status-checked_in { border-color:#468ee4; background:linear-gradient(135deg,#285b9e,#173867); }.import-bookings { margin:14px; border:1px solid #3a5140; border-radius:10px; padding:12px; color:#d4dfd5; }.import-bookings summary { cursor:pointer; color:#aaf3b3; font-size:.78rem; font-weight:850; }.import-bookings p { color:#aebbae; font-size:.72rem; line-height:1.4; }.import-bookings textarea { display:block; width:100%; min-height:130px; margin:10px 0; border:1px solid #405746; border-radius:8px; padding:9px; resize:vertical; background:#070b08; color:#e9f1e9; font:12px/1.4 ui-monospace,monospace; }.owner-schedule-shell:fullscreen { width:100%; max-width:none; padding:20px; border:0; border-radius:0; background:#080c09; }.owner-schedule-shell:fullscreen .schedule-scroll { max-height:calc(100vh - 114px); }.owner-schedule-shell:fullscreen .schedule-grid { min-width:100%; }.owner-schedule-shell:fullscreen .schedule-grid.fit { width:100%; min-width:0; grid-template-columns:64px repeat(var(--table-count),minmax(0,1fr)) !important; }.owner-schedule-shell:fullscreen .schedule-grid.fit .schedule-table-name { min-width:0; }
.reference-controls { grid-template-columns:repeat(6,minmax(130px,1fr)); margin-bottom:22px; }.results-heading { display:flex; align-items:end; justify-content:space-between; gap:14px; margin:4px 0 14px; }.results-heading>div { display:grid; gap:4px; }.results-heading strong { color:#eaf4eb; font-size:1rem; }.results-heading span { color:#aab7ac; font-size:.75rem; }.results-heading label { display:flex; align-items:center; gap:8px; color:#adb8ae; font-size:.72rem; font-weight:800; }.results-heading select { min-height:34px; border:1px solid #3d5141; border-radius:8px; padding:0 8px; background:#111812; color:#e8f0e9; }.booking-layout { display:grid; grid-template-columns:minmax(0,1fr) 205px; gap:14px; align-items:start; }.booking-sidebar { position:sticky; top:12px; display:grid; gap:12px; }.booking-summary,.help-card { border:1px solid #35463a; border-radius:13px; padding:15px; background:linear-gradient(145deg,#131b15,#0b100c); }.booking-summary .eyebrow { margin-bottom:7px; font-size:.58rem; }.booking-summary h3 { margin:0 0 12px; font-size:1.05rem; }.summary-icon { display:block; margin-bottom:10px; color:#75e781; font-size:1.35rem; }.booking-summary dl { display:grid; gap:9px; margin:0 0 14px; }.booking-summary dl div { display:flex; justify-content:space-between; gap:8px; }.booking-summary dt { color:#9bab9e; font-size:.68rem; }.booking-summary dd { margin:0; color:#e0ebe1; font-size:.7rem; font-weight:780; text-align:right; }.booking-summary .summary-total { margin-top:4px; padding-top:10px; border-top:1px solid #344438; }.booking-summary .summary-total dd { color:#89ee95; font-size:.92rem; }.booking-summary .primary { width:100%; }.empty-summary { min-height:188px; color:#aab7ad; }.empty-summary p { margin:0; font-size:.76rem; line-height:1.5; }.help-card { padding:12px 15px; }.help-card strong { display:block; margin:3px 0 8px; font-size:.82rem; }.help-card button { display:flex; width:100%; align-items:center; justify-content:space-between; min-height:33px; border:0; border-top:1px solid #2c3a2f; background:transparent; color:#c7d1c8; font-size:.65rem; text-align:left; }.help-card b { color:#75e981; font-size:1rem; }.selected-card { border-color:#77e788; box-shadow:0 0 0 1px #77e78844,0 14px 27px #0007; }.table-select { width:100%; min-height:35px; border:1px solid #4c9258; border-radius:8px; background:#173c20; color:#aef5b7; font-size:.75rem; font-weight:850; }.table-select.selected { border-color:#8cf59b; background:#2c6c39; color:#fff; }.price small { color:#b5c1b6; font-size:.75em; font-weight:600; }.offer-form-actions,.offer-actions { display:flex; align-items:center; gap:8px; }.offer-form-actions .save-owner { margin:0; }.site-footer { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; max-width:1480px; margin:0 auto; padding:24px 34px 32px; border-top:1px solid #26372a; }.site-footer>div { display:grid; grid-template-columns:33px 1fr; column-gap:10px; }.footer-icon { grid-row:span 2; display:grid; width:28px; height:28px; place-items:center; border:1px solid #4c9c57; border-radius:8px; color:#7beb88; }.site-footer strong { color:#76dc82; font-size:.75rem; }.site-footer p { margin:4px 0 0; color:#95a397; font-size:.67rem; }
.owner-section-title { display:flex; align-items:start; justify-content:space-between; gap:16px; }.add-table-form { display:grid; grid-template-columns:1fr 1fr 1fr 130px auto; gap:10px; padding:14px; border:1px solid #4c764f; border-radius:12px; background:#112517; }.add-table-form label { display:grid; gap:5px; color:#c2d0c4; font-size:.7rem; font-weight:800; }.add-table-form input,.add-table-form select { min-height:39px; border:1px solid #416246; border-radius:8px; padding:0 8px; background:#091009; color:#eff7f0; }.add-table-form .primary { align-self:end; }.remove-table { min-height:35px; border:1px solid #7e4244; border-radius:8px; padding:0 10px; background:#301719; color:#ffb9bb; font-size:.75rem; font-weight:800; }.remove-table:hover { background:#482024; }
.auth-dialog { width:min(440px,calc(100% - 26px)); padding:29px; color:#f4f8f4; border:1px solid #49624d; border-radius:20px; background:linear-gradient(145deg,#182019,#101511); box-shadow:0 30px 100px #000d; }.auth-dialog::backdrop { background:#020503b5; backdrop-filter:blur(7px); }.auth-dialog h2 { margin:0 0 8px; letter-spacing:-.04em; }.auth-dialog p { color:#b5c2b7; line-height:1.5; }.dialog-close { float:right; width:34px; height:34px; border:1px solid #34443a; border-radius:50%; background:#18221a; color:#d8e4d9; font-size:1.45rem; line-height:1; }.auth-form { display:grid; gap:13px; margin-top:20px; }.auth-form label { display:grid; gap:7px; color:#cbd4cd; font-size:.78rem; font-weight:700; }.auth-form input { min-height:45px; padding:10px; border:1px solid #3c4e40; border-radius:10px; background:#0a0e0b; color:#f5f8f5; }.auth-links { display:flex; justify-content:space-between; gap:12px; margin-top:17px; }.auth-links button { border:0; padding:0; background:none; color:#97f1a1; font-size:.83rem; font-weight:700; }.hidden { display:none !important; }
.account-panel { display:grid; grid-template-columns:48px 1fr; gap:0 12px; align-items:center; margin-top:18px; }.account-panel .auth-form,.account-tools { grid-column:1/-1; }.account-avatar { width:48px; height:48px; display:grid; place-items:center; border:1px solid #5ca968; border-radius:50%; background:radial-gradient(circle at 35% 28%,#a5ffb2,#4ca55a); color:#09200d; font-size:1.15rem; font-weight:900; }.account-panel strong { display:block; }.account-panel p { margin:3px 0 0; font-size:.78rem; }.account-tools { display:grid; gap:8px; margin-top:15px; }.account-tools .text-save,.danger-button { width:100%; min-height:40px; }.danger-button { border:1px solid #7f4545; border-radius:8px; background:#2c1517; color:#ffb7ba; font-weight:800; }.danger-button:hover { background:#401d20; }
@keyframes pulse { 0%,100% { box-shadow:0 0 0 0 #8ef69b; } 50% { box-shadow:0 0 0 6px #8ef69b00; } } @keyframes float { 0%,100% { transform:rotate(-5deg) translateY(0); } 50% { transform:rotate(-4deg) translateY(-9px); } } @keyframes rise { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:translateY(0); } }
@media (max-width:760px) { .topbar { height:66px; padding:0 17px; gap:10px; }.brand-dot { width:32px; height:32px; }.site-nav,.help-link { display:none; }.header-actions { margin-left:auto; }.account-button { min-height:37px; padding:0 12px; } main { padding:17px 16px 82px; }.hero { display:block; min-height:0; padding:29px 22px 177px; border-radius:23px; }.hero h1 { font-size:clamp(2.9rem,13.8vw,4.2rem); }.lede { max-width:390px; margin:16px 0; font-size:.98rem; line-height:1.52; }.hero-points { gap:6px; }.hero-points span { padding:6px 8px; font-size:.69rem; }.hero-table { position:absolute; right:-15px; bottom:-16px; width:226px; border-width:9px; border-radius:18px; animation-duration:7s; }.hero-table::after { width:13px; height:13px; box-shadow:186px 0 #070a08,0 148px #070a08,186px 148px #070a08; }.ball { width:27px; height:27px; }.ball::after { inset:6px; }.section-heading { margin-top:33px; align-items:center; }.live-availability { font-size:.59rem; padding:7px 8px; }.venue-grid { grid-template-columns:1fr; }.venue-card { min-height:196px; }.booking-panel { margin-top:23px; padding:18px; border-radius:17px; }.booking-top { display:block; }.booking-actions { align-items:start; margin-top:14px; }.back-link { margin-top:4px; }.booking-controls,.reference-controls { grid-template-columns:1fr; padding:12px; }.table-grid { grid-template-columns:1fr; }.booking-layout { grid-template-columns:1fr; }.booking-sidebar { position:static; grid-row:1; }.offer-grid { grid-template-columns:1fr; }.offers-heading { align-items:start; gap:7px; flex-direction:column; }.results-heading { align-items:start; flex-direction:column; }.form-grid { grid-template-columns:1fr; }.save-owner { width:100%; justify-self:stretch; }.table-editor,.owner-offer { align-items:start; flex-direction:column; }.table-editor label { width:100%; }.text-save { align-self:stretch; }.hours-row { grid-template-columns:1fr 1fr; gap:8px; }.hours-row strong { grid-column:1/-1; }.hours-row .check-line { grid-column:1/-1; }.hours-row span { display:none; }.hours-row input[type="time"] { width:100%; }.owner-tabs { margin-top:20px; }.view-switch button { min-height:38px; }.schedule-toolbar { align-items:start; flex-direction:column; }.schedule-toolbar-actions { width:100%; align-items:end; justify-content:space-between; flex-wrap:wrap; }.schedule-zoom { flex-wrap:wrap; }.schedule-scroll { max-height:560px; }.owner-schedule-shell { margin-inline:-2px; }.schedule-table-name { padding:0 8px; }.schedule-booking { padding:6px; }.owner-section-title { align-items:center; }.add-table-form { grid-template-columns:1fr; }.add-table-form .primary { width:100%; }.remove-table { align-self:stretch; width:100%; }.site-footer { grid-template-columns:1fr; gap:16px; padding:21px 18px 28px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; } }
