﻿:root{--bg:#f5f3f0;--surface:#fff;--surface-2:#edebe7;--ink:#1a1a1a;--muted:#7a756f;--line:#e5e2dd;--accent:#c05535;--accent-dark:#9b3f24;--danger:#b54040;--success:#4a7c5c;--warning:#8a7a30;--shadow:0 8px 24px #0000000f}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);letter-spacing:0;margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.65;cursor:not-allowed}main{min-height:calc(100vh - 72px)}.app-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f5f3f0eb;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;min-height:72px;padding:0 32px;display:grid;position:sticky;top:0}.office-header .brand{color:var(--accent)}.public-header .header-actions{justify-content:flex-end}.office-auth-page{padding-top:56px}.auth-intro{gap:10px;display:grid}.auth-intro p:not(.eyebrow){color:var(--muted);margin:0;line-height:1.5}.compact-note{align-items:center;gap:8px;display:flex}.brand,.icon-text,.user-chip,.meta-row span{align-items:center;gap:8px;display:inline-flex}.brand{font-size:20px;font-weight:600}.main-nav,.header-actions,.row-actions,.toolbar-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.main-nav a{color:var(--muted);font-weight:700}.header-actions{justify-content:flex-end}.user-chip{border:1px solid var(--line);max-width:220px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;border-radius:8px;padding:8px 10px;overflow:hidden}.page{width:min(1180px,100% - 32px);margin:0 auto;padding:36px 0 64px}.hero{grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:28px;min-height:420px;padding:34px 0 26px;display:grid}.hero-copy{flex-direction:column;justify-content:center;gap:22px;display:flex}.hero h1,.page-title h1,.auth-panel h1,.restaurant-hero h1{margin:0;font-size:clamp(34px,5vw,64px);line-height:1}.hero p,.page-title p{max-width:760px;color:var(--muted);margin:0;font-size:18px;line-height:1.55}.hero-media,.restaurant-hero-image-wrap,.gallery-item,.card-image-link{background:var(--surface-2);border-radius:8px;position:relative;overflow:hidden}.hero-media{min-height:380px;box-shadow:var(--shadow)}.hero-media img,.restaurant-card-image,.restaurant-hero-image-wrap img,.gallery-item img{object-fit:cover;width:100%;height:100%}.stat-strip,.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-strip div,.metric-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:18px}.stat-strip strong,.metric-card strong{font-size:26px;display:block}.stat-strip span,.metric-card span,.muted{color:var(--muted)}.eyebrow{color:var(--accent);text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:600}.button,.ghost,.small-button,.danger-button,.secondary-button,.icon-button,.icon-only{text-align:center;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;font-weight:600;display:inline-flex}.button{color:#fff;background:var(--accent);padding:0 16px}.button.full,.full{width:100%}.ghost{border-color:var(--line);background:var(--surface);padding:0 12px}.small-button{border-color:var(--line);background:var(--surface);min-height:34px;padding:0 10px;font-size:13px}.secondary-button{border-color:var(--line);background:var(--surface);color:var(--ink);padding:0 14px}.danger-button{color:#fff;background:var(--danger);padding:0 14px}.icon-button,.icon-only{border-color:var(--line);background:var(--surface);width:38px;min-width:38px;padding:0}.filters,.panel,.restaurant-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.filters{grid-template-columns:1.4fr repeat(4,minmax(130px,1fr)) auto;align-items:end;gap:12px;margin-bottom:26px;padding:16px;display:grid}label{color:var(--muted);gap:7px;font-size:13px;font-weight:600;display:grid}input,select,textarea{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);background:#fff;border-radius:8px;padding:10px 12px;font-weight:600}textarea{resize:vertical}.restaurants-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.restaurant-card{overflow:hidden}.card-image-link{aspect-ratio:1.45;display:block}.restaurant-card-body{gap:15px;padding:18px;display:grid}.restaurant-card h2,.panel h2,.section-heading h2{margin:0;font-size:22px}.restaurant-card p,.panel p{color:var(--muted);margin:8px 0 0;line-height:1.5}.meta-row{color:var(--muted);gap:8px;font-size:14px;display:grid}.tag-row{flex-wrap:wrap;gap:8px;display:flex}.tag-row span,.badge{background:var(--surface-2);min-height:28px;color:var(--accent);border-radius:999px;align-items:center;padding:0 9px;font-size:12px;font-weight:600;display:inline-flex}.badge-new,.badge-awaiting-restaurant-confirmation,.badge-awaiting-deposit-payment{color:var(--warning);background:#edebe7}.badge-confirmed,.badge-approved,.badge-seated,.badge-deposit-paid,.badge-confirmed-by-guest,.badge-confirmed-by-restaurant{color:var(--success);background:#e5e2dd}.badge-rejected,.badge-cancelled,.badge-no-show,.badge-cancelled-by-guest,.badge-cancelled-by-restaurant,.badge-payment-expired{color:var(--danger);background:#f0e0de}.restaurant-detail{grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);align-items:start;gap:24px;display:grid}.restaurant-hero,.wide-form,.stack-form,.reservation-form,.owner-layout{gap:16px;display:grid}.restaurant-hero{gap:20px}.restaurant-hero-image-wrap{aspect-ratio:1.9}.panel{padding:20px}.panel+.panel{margin-top:18px}.section-heading,.editor-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.compact-heading{margin-bottom:14px}.menu-public{gap:20px;display:grid}.menu-item-row,.list-row,.reservation-row,.admin-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.menu-item-row:last-child,.list-row:last-child,.reservation-row:last-child,.admin-row:last-child{border-bottom:0}.hours-table,.stack-list,.admin-table,.reservation-list{gap:8px;display:grid}.hours-line{color:var(--muted);justify-content:space-between;gap:12px;display:flex}.auth-panel{gap:16px;margin-top:42px;display:grid}.form-grid{gap:14px;display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-error,.form-success,.form-note{border-radius:8px;margin:0;padding:11px 12px;font-weight:700}.form-error{color:var(--danger);background:#f0e0de}.form-success{color:var(--success);background:#e5e2dd}.form-note{color:var(--muted);background:var(--surface-2)}.tabs{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-wrap:wrap;gap:6px;padding:8px;display:flex}.tabs a{color:var(--muted);white-space:nowrap;border-radius:8px;padding:8px 11px;font-size:14px;font-weight:600}.grid-layout{gap:18px;display:grid}.two-columns{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.two-columns.even{grid-template-columns:repeat(2,minmax(0,1fr))}.full-span{grid-column:1/-1}.inline-form{grid-template-columns:minmax(0,1fr) 110px 42px;align-items:center;gap:10px;display:grid}.hall-create-form{grid-template-columns:minmax(0,1fr) 120px 120px auto;align-items:center;gap:10px;display:grid}.hall-editor{grid-template-columns:minmax(0,1fr) 300px;gap:18px;display:grid}.hall-board{width:100%;aspect-ratio:var(--hall-ratio);touch-action:none;background:#f5f3f0;border:1px dashed #c5c0ba;border-radius:8px;min-height:320px;position:relative;overflow:hidden}.hall-table{color:var(--ink);touch-action:none;background:#ddd9d4;border:2px solid #1a1a1a;border-radius:8px;place-items:center;gap:2px;display:grid;position:absolute;box-shadow:0 8px 20px #0000002e}.public-board .hall-table{pointer-events:none}.hall-table span{color:var(--muted);font-size:12px}.hall-table.selected{background:#f0ede9;border-color:#b54040}.hall-table.disabled{opacity:.45}.table-circle{border-radius:999px}.check-row{color:var(--ink);align-items:center;gap:9px;display:flex}.check-row input{width:18px;min-height:18px}.hours-list{gap:12px;display:grid}.hours-row{border-bottom:1px solid var(--line);grid-template-columns:150px 1fr 1fr 110px;align-items:center;gap:12px;padding-bottom:12px;display:grid}.reservation-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.page-title{gap:10px;margin-bottom:24px;display:grid}.empty-state{border:1px dashed var(--line);color:var(--muted);background:#ffffff8c;border-radius:8px;padding:28px}@media (max-width:980px){.app-header{grid-template-columns:1fr;gap:12px;padding:14px 16px}.main-nav,.header-actions{justify-content:flex-start}.hero,.restaurant-detail,.hall-editor,.two-columns{grid-template-columns:1fr}.filters,.restaurants-grid,.dashboard-grid,.hall-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.page{width:min(100% - 20px,1180px);padding-top:22px}.hero{min-height:0}.hero-media{min-height:260px}.filters,.restaurants-grid,.form-grid.two,.dashboard-grid,.stat-strip,.hours-row,.hall-create-form{grid-template-columns:1fr}.menu-item-row,.reservation-row,.admin-row{flex-direction:column;align-items:flex-start}.reservation-actions,.row-actions{justify-content:flex-start}}.client-cta{color:#fff;background:#1a1a1a}.catalog-title{gap:18px;margin-bottom:34px;display:grid}.catalog-title h1{margin:0;font-size:clamp(34px,5vw,54px);line-height:1.04}.quick-filter-row{gap:8px;padding-bottom:2px;display:flex;overflow:auto}.quick-filter-row a{white-space:nowrap;background:#ddd9d4;border-radius:999px;align-items:center;min-height:34px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.restaurant-showcase{background:#1a1a1a;border-radius:8px;min-height:390px;margin-bottom:34px;position:relative;overflow:hidden}.restaurant-showcase img,.restaurant-profile-hero img,.home-feature-card img{object-fit:cover}.showcase-overlay,.profile-hero-overlay{background:linear-gradient(90deg,#000000c7,#00000059,#0000000a);position:absolute;inset:0}.showcase-content{z-index:1;color:#fff;flex-direction:column;justify-content:flex-end;gap:14px;width:min(620px,100%);min-height:390px;padding:34px;display:flex;position:relative}.showcase-content span:first-child{background:#ffffff29;border-radius:999px;align-self:flex-start;padding:7px 12px;font-size:13px;font-weight:600}.showcase-content h2{margin:0;font-size:clamp(30px,5vw,48px);line-height:1}.showcase-content p{max-width:560px;margin:0;font-size:17px;line-height:1.45}.showcase-meta{color:#ffffffdb;flex-wrap:wrap;align-items:center;gap:16px;font-weight:600;display:flex}.showcase-meta span{align-items:center;gap:6px;display:inline-flex}.restaurant-filter-bar{box-shadow:none;background:#f0ede9;border:0;grid-template-columns:1.35fr repeat(4,minmax(126px,1fr)) auto;margin:0 0 34px}.restaurant-rail{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;display:grid}.restaurant-card-body{padding:12px 0 0}.restaurant-card h2{font-size:19px}.restaurant-card p{font-size:14px}.restaurant-card-compact .card-image-link{aspect-ratio:1.5;border-radius:8px}.restaurant-card-compact .meta-row{gap:5px;font-size:13px}.center-row{justify-content:center;display:flex}.wide-link{background:#edebe7;border-radius:999px;width:min(520px,100%)}.client-home-hero{grid-template-columns:minmax(0,1fr) minmax(320px,460px);align-items:center;gap:42px;min-height:520px;padding:34px 0;display:grid}.client-home-copy{gap:22px;display:grid}.client-home-copy h1{margin:0;font-size:clamp(38px,6vw,76px);line-height:.98}.client-home-copy p{max-width:760px;color:var(--muted);margin:0;font-size:19px;line-height:1.55}.client-stat-strip{grid-template-columns:repeat(3,minmax(0,1fr));max-width:720px}.home-feature-card{color:#fff;background:#1a1a1a;border-radius:8px;align-items:flex-end;min-height:520px;padding:24px;display:flex;position:relative;overflow:hidden}.home-feature-card:after{content:"";background:linear-gradient(#0000,#000000c7);position:absolute;inset:0}.home-feature-card span,.home-feature-card strong{z-index:1;position:relative}.home-feature-card span{background:#ffffff29;border-radius:999px;align-self:flex-start;padding:7px 10px;font-size:12px;font-weight:600;display:inline-flex}.home-feature-card strong{font-size:30px;line-height:1.05;position:absolute;bottom:24px;left:24px;right:24px}.value-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.value-grid div,.insight-row{background:var(--surface-2);border-radius:8px;gap:6px;padding:14px;display:grid}.value-grid strong{font-size:24px}.value-grid span,.insight-row span{color:var(--muted);line-height:1.4}.quick-actions{flex-wrap:wrap;gap:10px;display:flex}.chart-list{gap:10px;display:grid}.chart-row{grid-template-columns:86px minmax(0,1fr) 52px;align-items:center;gap:10px;display:grid}.chart-bar{background:var(--surface-2);border-radius:999px;height:10px;overflow:hidden}.chart-bar span{background:var(--accent);border-radius:999px;height:100%;display:block}.guest-profile-grid{grid-template-columns:320px minmax(0,1fr);gap:18px;display:grid}.booking-link-box{color:#1a1a1a;background:#edebe7;border-radius:8px;gap:10px;padding:16px;display:grid}.landing-band{background:#fff;padding:64px 0}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.pricing-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:14px;padding:22px;display:grid}.restaurant-profile-hero{background:#1a1a1a;min-height:430px;position:relative;overflow:hidden}.profile-hero-content{z-index:1;color:#fff;align-content:center;gap:16px;width:min(1180px,100% - 32px);min-height:430px;margin:0 auto;display:grid;position:relative}.profile-hero-content h1{max-width:840px;margin:0;font-size:clamp(42px,7vw,82px);line-height:.95}.profile-hero-content p:not(.eyebrow){max-width:680px;margin:0;font-size:19px;line-height:1.5}.profile-hero-meta{color:#ffffffe6;flex-wrap:wrap;gap:14px;font-weight:600;display:flex}.profile-hero-meta span{align-items:center;gap:7px;display:inline-flex}.restaurant-anchor-nav{z-index:15;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;justify-content:center;gap:28px;min-height:58px;display:flex;position:sticky;top:72px}.restaurant-anchor-nav a{color:var(--muted);align-items:center;font-weight:600;display:inline-flex}.restaurant-profile-content{grid-template-columns:minmax(0,1fr) 360px;gap:34px;display:grid}.profile-main{gap:34px;display:grid}.profile-section{gap:18px;display:grid}.profile-section h2,.profile-facts h3{margin:0;font-size:28px}.profile-section>p{color:#1a1a1a;max-width:820px;margin:0;font-size:17px;line-height:1.68}.profile-gallery{grid-template-columns:1.35fr .65fr 1fr 1fr;gap:14px;display:grid}.profile-gallery .gallery-item{aspect-ratio:1.35}.profile-gallery .gallery-item:first-child{aspect-ratio:auto;grid-row:span 2}.profile-gallery .gallery-item img{object-fit:cover}.map-placeholder{background:linear-gradient(135deg,#ddd9d4,#edebe7);border-radius:8px;min-height:210px;position:relative;overflow:hidden}.map-placeholder:before{content:"";background-color:#0000;background-image:linear-gradient(90deg,#0000 48%,#0000002e 49%,#0000 50%),linear-gradient(#0000 50%,#ff5a1f2e 51%,#0000 52%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:120px 120px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.map-placeholder>div{z-index:1;width:240px;box-shadow:var(--shadow);background:#fff;border-radius:8px;gap:8px;margin:24px;padding:18px;display:grid;position:relative}.map-placeholder span{color:var(--muted)}.profile-facts{background:#f0ede9;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;padding:22px;display:grid}.profile-fact-grid{grid-template-columns:150px 1fr;gap:12px;display:grid}.profile-fact-grid span{color:var(--muted)}.profile-booking{align-self:start;position:sticky;top:150px}.phone-note{color:#1a1a1a;background:#edebe7;border-radius:8px;align-items:center;gap:8px;margin-top:12px;padding:12px;font-weight:600;display:flex}@media (max-width:980px){.restaurant-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.client-home-hero,.restaurant-profile-content,.guest-profile-grid{grid-template-columns:1fr}.value-grid,.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-feature-card{min-height:340px}.profile-booking{position:static}.profile-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-gallery .gallery-item:first-child{aspect-ratio:1.35;grid-row:auto}.restaurant-anchor-nav{justify-content:flex-start;padding:0 16px;top:0;overflow:auto}.restaurant-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.client-page{width:min(100% - 20px,1240px)}.restaurant-showcase,.showcase-content{min-height:330px}.showcase-content{padding:22px}.restaurant-rail{grid-template-columns:1fr}.quick-filter-row{margin-right:-10px}.client-home-hero{min-height:0}.client-stat-strip,.profile-facts,.profile-fact-grid,.restaurant-filter-bar,.value-grid,.pricing-grid{grid-template-columns:1fr}.profile-hero-content{min-height:380px}.profile-hero-meta{display:grid}.profile-gallery{grid-template-columns:1fr}.restaurant-anchor-nav{gap:18px}.restaurant-profile-content{width:min(100% - 20px,1180px)}}.info-note{background:var(--surface-2);color:var(--muted);border-radius:8px;margin:0;padding:11px 12px;font-weight:700;line-height:1.45}.compact-error{width:100%;font-size:12px}.hall-table small{color:#1a1a1a;font-size:11px;font-weight:600}.badge-waiting-for-payment,.badge-expired{color:var(--warning);background:#edebe7}.badge-paid,.badge-refunded{color:var(--success);background:#e5e2dd}.badge-failed{color:var(--danger);background:#f0e0de}:root{--radius:8px;--focus:0 0 0 3px #c0553524;--info:#5a6875;--soft-warning:#f5f0e6;--soft-success:#e8f0eb;--soft-danger:#fae8e8}body{font-feature-settings:"kern" 1;text-rendering:optimizelegibility;background:#f5f3f0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:var(--focus);outline:0}.button,.ghost,.small-button,.danger-button,.secondary-button,.icon-button,.icon-only{border-radius:var(--radius);transition:background .16s,border-color .16s,transform .16s,box-shadow .16s}.button:hover,.small-button:hover,.secondary-button:hover,.ghost:hover{transform:translateY(-1px);box-shadow:0 10px 22px #00000014}.button{background:var(--accent)}.button:hover{background:var(--accent-dark)}.secondary-button,.ghost,.small-button{color:var(--ink);background:#fff}.panel,.filters,.pricing-card,.stat-strip div,.metric-card{border-radius:var(--radius);box-shadow:0 12px 28px #00000012}input,select,textarea{border-radius:var(--radius);transition:border-color .16s,box-shadow .16s,background .16s}input:focus,select:focus,textarea:focus{box-shadow:var(--focus);border-color:#c0553580}.page-title h1,.catalog-title h1,.profile-hero-content h1{letter-spacing:0}.page-title p,.panel p,.restaurant-card p{line-height:1.55}.admin-row,.reservation-row,.menu-item-row,.list-row{border-radius:var(--radius);padding:14px}.admin-row:hover,.reservation-row:hover,.list-row:hover{background:#fafaf8}.empty-state{background:linear-gradient(#fff,#f5f3f0);place-items:start;gap:8px;display:grid}.badge-awaiting-deposit-payment,.badge-waiting-for-payment,.badge-new,.badge-awaiting-restaurant-confirmation{background:var(--soft-warning);color:#8a7a30}.badge-paid,.badge-deposit-paid,.badge-confirmed,.badge-confirmed-by-guest,.badge-confirmed-by-restaurant,.badge-seated{background:var(--soft-success);color:var(--success)}.badge-no-show,.badge-rejected,.badge-failed,.badge-cancelled,.badge-cancelled-by-guest,.badge-cancelled-by-restaurant{background:var(--soft-danger);color:var(--danger)}.public-hall-widget{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(#fff,#f5f3f0);gap:14px;padding:16px;display:grid}.hall-widget-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.hall-widget-head h3{margin:0;font-size:20px}.tiny-status{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.hall-tabs{flex-wrap:wrap;gap:8px;display:flex}.hall-tabs button{border:1px solid var(--line);min-height:34px;color:var(--muted);background:#fff;border-radius:999px;padding:0 12px;font-weight:600}.hall-tabs button.active{color:var(--accent);background:#ddd9d4;border-color:#00000073}.public-booking-board{border-radius:var(--radius);background-color:#f5f3f0;background-image:radial-gradient(circle at 24px 24px,#00000014 2px,#0000 3px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:34px 34px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:1px dashed #c5c0ba;width:100%;min-height:320px;position:relative;overflow:visible}.booking-table{min-width:76px;min-height:58px;position:absolute;overflow:visible}.booking-table-core{border-radius:var(--radius);width:100%;height:100%;color:var(--ink);z-index:2;background:#fff;border:2px solid #c5c0ba;place-items:center;gap:1px;display:grid;position:absolute;inset:0;box-shadow:0 10px 20px #00000014}.booking-table-core strong{font-size:16px}.booking-table-core span{color:var(--muted);font-size:11px;font-weight:600}.booking-table-core small{color:var(--muted);font-size:9px;font-weight:600}.booking-table.round .booking-table-core{border-radius:999px}.booking-table.status-occupied .booking-table-core{color:#7a756f;background:#ecefed;border-color:#d5d1cc}.booking-table.status-too_small .booking-table-core,.booking-table.status-disabled .booking-table-core{color:#7a756f;background:#f0ede9;border-color:#d5d1cc}.booking-table.selected .booking-table-core{color:#1a1a1a;background:#f0ede9;border-color:#1a1a1a}.seat-dot{z-index:3;color:#4a7c5c;background:#e5e2dd;border:2px solid #fff;border-radius:999px;width:24px;height:24px;min-height:24px;font-size:10px;font-weight:700;position:absolute;transform:translate(-50%,-50%);box-shadow:0 4px 10px #00000029}.seat-dot.selected{color:#fff;background:#1a1a1a}.seat-dot.seat-occupied,.seat-dot.seat-unavailable{color:#7a756f;background:#d5d1cc}.seat-dot:disabled{opacity:1;cursor:not-allowed}.hall-legend{color:var(--muted);flex-wrap:wrap;gap:12px;font-size:12px;font-weight:600;display:flex}.hall-legend span{align-items:center;gap:6px;display:inline-flex}.hall-legend i{border-radius:999px;width:10px;height:10px}.legend-free{background:#7a756f}.legend-selected{background:#1a1a1a}.legend-busy{background:#c5c0ba}.legend-warning{background:#7a756f}.selected-table-summary,.hall-widget-state,.deposit-next-step{border-radius:var(--radius);color:var(--ink);background:#f0ede9;gap:8px;padding:14px;display:grid}.selected-table-summary span,.hall-widget-state span,.deposit-next-step span{color:var(--muted);line-height:1.45}.muted-summary{background:#fafafa}.hall-widget-state{border:1px dashed var(--line)}.hall-widget-state.error-state{background:var(--soft-danger);color:var(--danger)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.deposit-next-step{color:#1a1a1a;background:#edebe7}.deposit-next-step .button{margin-top:4px}.payment-panel h1{margin:0;font-size:42px}.payment-demo-badge{color:#7a756f;background:#edebe7;border-radius:999px;align-self:flex-start;align-items:center;min-height:30px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.payment-details-grid{border-radius:var(--radius);background:#f7faf7;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:16px;display:grid}.payment-details-grid span{color:var(--muted);font-weight:600}.payment-details-grid strong{overflow-wrap:anywhere;min-width:0}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.restaurant-profile-content.single-column{grid-template-columns:1fr}.booking-workspace{scroll-margin-top:150px}.booking-workspace .public-booking-board{min-height:460px}.booking-workspace .hall-widget-head h3{font-size:24px}.yandex-map{border:1px solid var(--line);border-radius:var(--radius);background:#edebe7;min-height:360px;position:relative;overflow:hidden;box-shadow:0 12px 28px #00000012}.yandex-map-frame{border:0;width:100%;height:100%;position:absolute;inset:0}.map-address-card{z-index:2;border-radius:var(--radius);width:min(360px,100% - 48px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;grid-template-columns:auto minmax(0,1fr);gap:10px 12px;padding:18px;display:grid;position:absolute;top:24px;left:24px}.map-address-card strong{font-size:18px;display:block}.map-address-card span{color:var(--muted);line-height:1.4;display:block}.map-card-icon{width:34px;height:34px;color:var(--accent);background:#ddd9d4;border-radius:999px;place-items:center;display:grid!important}.map-card-actions{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.map-card-actions .small-button{gap:6px}@media (max-width:680px){.public-hall-widget{padding:12px}.public-booking-board{min-height:280px}.seat-dot{width:21px;height:21px;min-height:21px;font-size:9px}.booking-table-core strong{font-size:13px}.booking-table-core span,.booking-table-core small{font-size:9px}.payment-details-grid,.metric-grid{grid-template-columns:1fr}.hall-widget-head{display:grid}.yandex-map{min-height:420px}.map-address-card{width:auto;padding:14px;top:12px;left:12px;right:12px}}:root{--surface-3:#f0ede9;--accent-2:#7a756f;--shadow-soft:0 8px 22px #0000000d;--container:1180px}.booking-top-return{width:fit-content;max-width:100%;min-height:42px;color:var(--text);background:#fff8ef;border:1.5px solid #c9823238;border-radius:999px;justify-content:center;align-items:center;gap:8px;margin:0 0 14px;padding:0 16px 0 14px;font-weight:600;text-decoration:none;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:inline-flex;box-shadow:0 2px 8px #58341414}.booking-top-return span:first-child{width:24px;height:24px;color:var(--accent);background:#c9823224;border-radius:999px;justify-content:center;align-items:center;font-size:18px;line-height:1;display:inline-flex}.booking-top-return:hover{background:#fff2de;border-color:#c982326b;transform:translateY(-1px);box-shadow:0 6px 16px #5834141f}.booking-top-return:focus-visible{outline-offset:3px;outline:3px solid #c9823257}.vk-mini-back{margin:0 0 12px}.reservation-form input[readonly]{color:var(--text);cursor:default;background:#e4e3e06b}.guest-session-box{background:linear-gradient(135deg,#e4e3e0eb,#f0efedeb);border-color:#a393823d}.guest-session-box .verification-icon{color:#4a7c5c;background:#a393821f}@media (max-width:640px){.booking-top-return{min-height:40px;padding-inline:12px 14px;font-size:14px}}.vk-mini-layout{background:linear-gradient(180deg, #eeedebeb, #fbf7f4f5), var(--page-grid,transparent);min-height:100dvh;color:var(--ink,#1a1a1a);padding:12px 12px calc(96px + env(safe-area-inset-bottom));overflow-x:hidden}.vk-mini-main{max-width:560px;margin:0 auto}.vk-mini-topbar{z-index:40;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fbf7f4e0;border:1px solid #685d541f;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;max-width:560px;margin:0 auto 12px;padding:10px 10px 12px;display:flex;position:sticky;top:0;box-shadow:0 16px 36px #2323231a}.vk-mini-brand{color:#1a1a1a;font-family:var(--font-serif,Georgia, serif);align-items:center;gap:10px;font-size:22px;font-weight:700;text-decoration:none;display:inline-flex}.vk-mini-brand .kaifbook-logo-mark{object-fit:contain;width:36px;height:36px;display:block}.vk-mini-runtime{color:#7a756f;background:#ddd9d4;border-radius:999px;align-items:center;min-height:30px;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex}.vk-mini-runtime.is-vk{color:#2363b7;background:#eaf3ff}.vk-mini-note{color:#1a1a1a;background:#edebe7;border:1px solid #d5d1cc;border-radius:18px;max-width:560px;margin:0 auto 12px;padding:10px 14px;font-size:13px;font-weight:700}.vk-mini-hero,.vk-mini-section,.vk-mini-place-hero{background:#fbf7f4eb;border:1px solid #685d5429;border-radius:14px;box-shadow:0 20px 48px #2323231c}.vk-mini-hero{padding:22px}.vk-mini-hero h1,.vk-mini-section h1,.vk-mini-section h2,.vk-mini-place-content h1{overflow-wrap:anywhere}.vk-mini-hero h1{font-family:var(--font-serif,Georgia, serif);margin:4px 0 10px;font-size:clamp(31px,9vw,46px);line-height:1.02}.vk-mini-hero p:last-child,.vk-mini-text{color:#7a756f;line-height:1.55}.vk-mini-quick-row,.vk-mini-gallery-track,.vk-mini-menu-track{scroll-snap-type:x mandatory;scrollbar-width:none;gap:10px;padding:12px 2px 14px;display:flex;overflow-x:auto}.vk-mini-quick-row::-webkit-scrollbar{display:none}.vk-mini-gallery-track::-webkit-scrollbar{display:none}.vk-mini-menu-track::-webkit-scrollbar{display:none}.vk-mini-quick-row a{border:1px solid var(--line);background:var(--surface);color:#1a1a1a;border-radius:999px;flex:none;justify-content:center;align-items:center;min-height:38px;padding:0 16px;font-weight:700;text-decoration:none;display:inline-flex}.vk-mini-quick-row a.active{color:#fff;background:#1a1a1a;border-color:#1a1a1a}.vk-mini-section{margin-top:14px;padding:18px}.vk-mini-section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.vk-mini-section-head h2,.vk-mini-section h2,.vk-mini-section h1{font-family:var(--font-serif,Georgia, serif);margin:0;font-size:clamp(27px,8vw,38px);line-height:1.04}.vk-mini-section-head>span{color:#704332;background:#dddcd9;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:34px;min-height:34px;font-weight:700;display:inline-flex}.vk-mini-restaurant-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.restaurant-card-mini{border-radius:14px!important;min-height:0!important}.restaurant-card-mini .luxury-card-media{border-radius:14px!important;height:clamp(128px,34vw,176px)!important}.restaurant-card-mini .luxury-card-body{padding:12px!important}.restaurant-card-mini .restaurant-card-title-block h3{max-height:2.4em!important;padding-bottom:.12em!important;font-size:clamp(19px,5.7vw,24px)!important;line-height:1.12!important}.restaurant-card-mini .restaurant-card-badges,.restaurant-card-mini .restaurant-card-chips,.restaurant-card-mini .restaurant-card-info span:first-child{display:none!important}.restaurant-card-mini .restaurant-card-info{gap:6px!important;margin-top:8px!important;font-size:11px!important}.restaurant-card-mini .restaurant-card-book-button{white-space:normal!important;min-height:40px!important;margin-top:10px!important;padding:0 10px!important;font-size:12px!important}.vk-mini-place-hero{background:#1a1a1a;min-height:520px;position:relative;overflow:hidden}.vk-mini-place-hero img{object-fit:cover}.vk-mini-place-overlay{background:linear-gradient(#2519121a,#251912db),linear-gradient(90deg,#251912a8,#25191229);position:absolute;inset:0}.vk-mini-place-content{z-index:2;color:#fff;padding:24px;position:absolute;inset:auto 0 0}.vk-mini-place-content h1{font-family:var(--font-serif,Georgia, serif);margin:6px 0 10px;font-size:clamp(37px,12vw,58px);line-height:.98}.vk-mini-place-content p{max-width:34rem;line-height:1.45}.vk-mini-place-meta,.vk-mini-facts{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.vk-mini-place-meta span,.vk-mini-facts span{overflow-wrap:anywhere;background:#ffffff29;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:7px;width:fit-content;max-width:100%;padding:8px 12px;font-weight:600;display:inline-flex}.vk-mini-facts span{color:#5d4434;background:#f5ecdf;border-color:#e3cfb7}.vk-mini-book-button{gap:9px}.vk-mini-gallery-card{aspect-ratio:4/3;scroll-snap-align:start;background:#dddcd9;border-radius:14px;flex:0 0 78%;position:relative;overflow:hidden}.vk-mini-gallery-card img,.vk-mini-dish-image img{object-fit:cover}.vk-mini-menu-category+.vk-mini-menu-category{margin-top:18px}.vk-mini-menu-category h3{font-family:var(--font-serif,Georgia, serif);color:#713f2f;margin:0 0 10px;font-size:25px}.vk-mini-dish-card{scroll-snap-align:start;background:#f5f3f0;border:1px solid #e5d2bd;border-radius:14px;flex:0 0 178px;overflow:hidden;box-shadow:0 12px 28px #23232314}.vk-mini-dish-image{aspect-ratio:1/.82;background:#dddcd9;position:relative}.vk-mini-dish-card strong,.vk-mini-dish-card span,.vk-mini-dish-card b{padding:0 12px;display:block}.vk-mini-dish-card strong{min-height:2.4em;margin-top:11px;font-size:15px;line-height:1.2}.vk-mini-dish-card span{color:#7e6b5b;margin-top:7px;font-size:13px}.vk-mini-dish-card b{color:#713f2f;margin:8px 0 13px}.vk-mini-bottom-nav{left:50%;bottom:max(12px, env(safe-area-inset-bottom));z-index:90;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fbf7f4f0;border:1px solid #685d5429;border-radius:14px;grid-template-columns:repeat(4,1fr);gap:6px;width:min(540px,100vw - 24px);padding:8px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 18px 44px #40271a33}.vk-mini-bottom-nav a{color:#7a756f;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:50px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.vk-mini-bottom-nav a.active{color:#fff;background:#1a1a1a}.vk-mini-booking-intro a{color:#1a1a1a;font-weight:700}.vk-mini-account-head{gap:14px;display:grid}.vk-mini-account-head .guest-account-chip{justify-content:space-between}.vk-mini-booking-list{gap:12px;display:grid}.vk-mini-reservation-card{width:100%}.vk-mini-empty{text-align:left}.legal-page{max-width:860px;padding-block:64px}.legal-page h1{font-family:var(--font-serif,Georgia, serif);font-size:clamp(38px,7vw,64px);line-height:1}.legal-page p{color:#5f5146;max-width:62ch;font-size:18px;line-height:1.6}.legal-page h2{font-family:var(--font-serif,Georgia, serif);margin:34px 0 4px;font-size:clamp(22px,3vw,28px);line-height:1.2}.legal-page .legal-updated{color:#8a7d6e;margin-top:-6px;font-size:14px}.legal-page a{color:var(--accent,#c98232);text-underline-offset:3px}.legal-page .small-button{margin-top:28px}@media (max-width:380px){.vk-mini-restaurant-grid{grid-template-columns:1fr}}:root{--lux-bg:#f5f3f0;--lux-bg-soft:#edebe7;--lux-card:#fff;--lux-ink:#1a1a1a;--lux-muted:#7a756f;--lux-terracotta:#c05535;--lux-terracotta-2:#9b3f24;--lux-gold:#9a9590;--lux-gold-soft:#e5e2dd;--lux-line:#e5e2dd;--lux-radius:14px;--lux-shadow:0 16px 48px #00000014;--lux-shadow-soft:0 8px 24px #0000000d;--lux-container:1180px}h1,h2,h3,.brand span,.profile-hero-content h1,.showcase-content h2,.catalog-title h1,.page-title h1{color:var(--lux-ink);letter-spacing:-.01em;font-family:Georgia,Times New Roman,serif;font-weight:760}.app-header.public-header{min-height:82px;padding-inline:max(28px,calc((100vw - var(--lux-container))/2));border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f5f3f0eb;grid-template-columns:auto 1fr auto;box-shadow:0 4px 16px #0000000a}.public-header .brand{color:var(--lux-ink);letter-spacing:-.02em;gap:10px;font-size:24px}.public-header .main-nav a{min-height:38px;color:var(--lux-ink);background:#f5f3f09e;border:1px solid #00000042;border-radius:999px;padding:0 18px;font-weight:820;transition:background .18s,color .18s,box-shadow .18s,transform .18s}.public-header .main-nav a:hover{background:var(--lux-terracotta);color:#edebe7;transform:translateY(-1px);box-shadow:0 12px 26px #0000002e}main{background:0 0}.catalog-title{gap:20px;margin-bottom:30px;padding:18px 0 4px;position:relative}.catalog-title h1{max-width:760px;font-size:clamp(44px,5.4vw,76px);line-height:.96}.catalog-title p{max-width:720px;color:var(--lux-muted);font-size:18px;line-height:1.58}.quick-filter-row{gap:10px;padding:2px 0 6px}.quick-filter-row a{color:#3b2a20;background:#f1dfc7;border:1px solid #00000047;border-radius:999px;min-height:38px;padding:0 17px;transition:background .18s,transform .18s,box-shadow .18s;box-shadow:0 6px 18px #00000021}.quick-filter-row a:hover{background:#e7caa6;transform:translateY(-1px);box-shadow:0 12px 28px #0003}.restaurant-showcase{isolation:isolate;background:#211813;border:1px solid #00000038;border-radius:14px;min-height:472px;margin-bottom:30px;box-shadow:0 30px 90px #00000038}.showcase-content span:first-child{color:#f8e7cf;background:#f5f3f024;border:1px solid #00000040;padding:8px 13px}.showcase-meta span{color:#fff0dd;background:#f5f3f01f;border-radius:999px;min-height:34px;padding:0 12px}.button:hover,.client-cta:hover,.filter-submit:hover{background:linear-gradient(135deg,#5c3328,#a96545);box-shadow:0 18px 34px #00000042}.filter-search{width:min(300px,100%);min-height:52px;box-shadow:var(--lux-shadow-soft);background:#f5f3f0d1;border:1px solid #0000;border-radius:999px}.filter-search span,.filter-search input{color:var(--lux-ink)}.filter-trigger{min-height:52px;color:var(--lux-ink);background:#f0e4d3;border:1px solid #0000002e;padding:0 20px;box-shadow:0 10px 22px #00000012}.filter-trigger span{color:#6f5d4f}.filter-option,.pretty-select-option{min-height:40px;color:var(--lux-ink)}.filter-option:hover,.pretty-select-option:hover,.filter-option.selected,.pretty-select-option.selected{background:#ddd9d4}.filter-option.selected .filter-radio-dot,.pretty-select-option.selected .filter-radio-dot{border-color:var(--lux-terracotta)}.filter-reset,.small-button,.secondary-button,.ghost{color:var(--lux-ink);background:#f5f3f0d1;border-color:#00000052;border-radius:999px}.restaurant-card,.restaurant-card.restaurant-card-compact{box-shadow:var(--lux-shadow-soft);background:#f5f3f0e0;border:1px solid #0003;border-radius:14px;transition:transform .22s,box-shadow .22s,border-color .22s;overflow:hidden}.meta-row{font-size:13px}.tag-row span,.badge{color:#604533;background:#f3e5d4;min-height:30px;padding:0 11px}.restaurant-card-actions{flex-wrap:wrap;gap:10px;display:flex}.restaurant-profile-hero:after{content:"";background:linear-gradient(180deg,transparent,var(--lux-bg));height:120px;position:absolute;inset:auto 0 0}.profile-hero-content{min-height:540px}.profile-hero-content h1{color:#f5f3f0;text-shadow:0 10px 36px #00000052}.restaurant-anchor-nav a{color:#5e4a3c;transition:color .16s}.restaurant-anchor-nav a:hover{color:var(--lux-terracotta)}.profile-section>p{color:#4f4036}.profile-gallery .gallery-item{box-shadow:var(--lux-shadow-soft);border-radius:14px}.yandex-map{min-height:420px;box-shadow:var(--lux-shadow);border-color:#00000047;border-radius:14px}.profile-facts.premium-facts{border-color:#0000004d;border-radius:14px}.menu-public{box-shadow:var(--lux-shadow-soft);background:#f5f3f0b8;border:1px solid #0003;border-radius:14px;padding:26px}.menu-public h3{color:var(--lux-terracotta)}.booking-workspace .reservation-form,.public-reserve-page .reservation-form{box-shadow:var(--lux-shadow);background:#f5f3f0f0;border:1px solid #00000047;border-radius:14px}.reservation-form input:focus,.reservation-form textarea:focus,.pretty-select-trigger.open{border-color:var(--lux-terracotta);box-shadow:0 0 0 4px #00000038}.booking-table-core{border-radius:18px}.booking-table.status-available .booking-table-core{background:#edf5e8;border-color:#8aa57d}.booking-table.selected .booking-table-core,.seat-dot.selected{background:var(--lux-terracotta);color:#f5f3f0;border-color:#edebe7}.booking-link-box{color:#8a4a25;background:#fff1e3;border:1px solid #00000040;border-radius:18px}.public-reserve-page{width:min(var(--lux-container),calc(100% - 44px));grid-template-columns:minmax(260px,360px) minmax(0,760px);gap:36px}.public-reserve-page .page-title{box-shadow:var(--lux-shadow-soft);background:#f5f3f0d6;border-color:#00000047;border-radius:14px}@media (max-width:980px){.app-header.public-header{padding-inline:22px}.restaurant-rail,.restaurants-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-content{padding:34px}}@media (max-width:680px){.page.client-page,.restaurant-profile-content.single-column,.public-reserve-page{width:min(100% - 24px,var(--lux-container))}.app-header.public-header{grid-template-columns:1fr;align-items:start;min-height:92px}.public-header .main-nav{justify-content:flex-start}.catalog-title h1{font-size:42px}.restaurant-showcase,.showcase-content{min-height:390px}.showcase-content{padding:24px}.restaurant-filter-bar{grid-template-columns:1fr;display:grid}.filter-search,.filter-dropdown,.filter-trigger,.filter-submit,.filter-reset{width:100%}.restaurant-rail,.restaurants-grid{grid-template-columns:1fr}.restaurant-profile-hero,.profile-hero-content{min-height:440px}.public-reserve-page{grid-template-columns:1fr}}.profile-facts.premium-facts{color:#fff6e9;background:radial-gradient(circle at 12% 0,#d4af872b,#0000 34%),radial-gradient(circle at 92% 100%,#872e2257,#0000 38%),linear-gradient(135deg,#2a1713 0%,#1a1a1a 52%,#371915 100%);border:1px solid #d4af8747;border-radius:14px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;padding:30px;position:relative;overflow:hidden;box-shadow:0 28px 70px #1f1a1642}.premium-fact-panel{z-index:1;align-content:start;gap:22px;min-width:0;display:grid;position:relative}.premium-fact-heading{align-items:flex-start;gap:14px;display:flex}.profile-facts.premium-facts .premium-fact-heading h3{color:#edebe7;letter-spacing:0;font-size:clamp(28px,2.8vw,38px);line-height:1}.profile-facts.premium-facts .premium-fact-heading h3:after{content:"";background:linear-gradient(90deg,#d4af87,#d4af8700);border-radius:999px;width:78px;height:2px;margin-top:12px;display:block}.premium-fact-icon{color:#d4af87;background:#d4af871f;border:1px solid #d4af8757;border-radius:16px;flex:none;place-items:center;width:44px;height:44px;display:inline-grid;box-shadow:inset 0 1px #ffffff14}.premium-fact-icon.small{background:#fff6e914;border-radius:14px;width:38px;height:38px}.premium-hours-table{background:#fff6e90e;border:1px solid #d4af8729;border-radius:18px;gap:0;display:grid;overflow:hidden}.premium-hours-table .hours-line{border-bottom:1px solid #d4af871f;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:13px 16px;display:grid}.premium-hours-table .hours-line:last-child{border-bottom:0}.premium-hours-table .hours-line span{color:#fff6e9b8;font-size:15px}.premium-hours-table .hours-line strong{color:#edebe7;letter-spacing:.01em;font-size:15px}.premium-fact-grid{grid-template-columns:1fr;gap:12px;display:grid}.premium-fact-row{background:#fff6e90f;border:1px solid #d4af8729;border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;min-height:68px;padding:14px;display:grid}.premium-fact-row div{gap:5px;min-width:0;display:grid}.premium-fact-row span:not(.premium-fact-icon){color:#fff6e9a8;text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:760}.premium-fact-row strong{color:#edebe7;font-size:17px;line-height:1.35}@media (max-width:760px){.profile-facts.premium-facts{border-radius:18px;grid-template-columns:1fr;gap:24px;padding:22px}.profile-facts.premium-facts .premium-fact-heading h3{font-size:28px}.premium-hours-table .hours-line{padding:12px 13px}}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;font-size:16px;line-height:1.5}h1,h2,h3,p{margin-top:0}h1,.page-title h1,.catalog-title h1,.auth-panel h1,.restaurant-hero h1,.profile-hero-content h1{color:var(--ink);letter-spacing:0;font-weight:600}h1,.page-title h1{margin-bottom:8px;font-size:clamp(36px,4.6vw,58px);line-height:1.02}h2,.panel h2,.section-heading h2,.profile-section h2,.profile-facts h3{margin:0;font-size:clamp(24px,2.6vw,34px);line-height:1.12}h3{margin-bottom:8px;font-size:20px;line-height:1.25}p{line-height:1.62}.muted,.page-title p,.catalog-title p,.panel p,.restaurant-card p{color:var(--muted)}.page,.client-page,.profile-hero-content,.restaurant-profile-content{width:min(var(--container),calc(100% - 48px))}.page{padding:44px 0 72px}.client-page{padding-top:36px}.page.narrow,.narrow-page{width:min(560px,100% - 32px)}.page-title,.catalog-title{gap:12px;margin-bottom:30px}.section-heading{align-items:flex-end;margin-bottom:22px}.section-heading p{margin:0}.app-header{background:#f6f7f4eb;border-bottom:1px solid #dfe5dddb;min-height:76px;padding:0 36px}.office-header{background:#fffffff0}.brand{letter-spacing:0;font-size:21px;font-weight:700}.main-nav a{color:#4e5750;align-items:center;min-height:38px;font-size:15px;display:inline-flex}.main-nav a:hover{color:var(--ink)}.panel,.filters,.restaurant-card,.pricing-card,.metric-card,.stat-strip div,.auth-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft)}.panel,.auth-panel{padding:24px}.panel h2+p,.panel h3+p{margin-top:6px}.filters{align-items:end;gap:14px;margin-bottom:30px;padding:18px}.grid-layout{gap:22px}.stack-form,.reservation-form{gap:18px}.stack-list{gap:10px}.insight-row,.value-grid div{background:var(--surface-3);border:1px solid #dfe5ddb8}label{color:#37413a;gap:8px;font-size:14px;font-weight:750}input,select,textarea{border-color:var(--line);background:#fff;min-height:46px;font-weight:600}textarea{line-height:1.5}.form-grid{gap:16px}.form-error,.form-success,.form-note,.info-note{border-radius:var(--radius);line-height:1.45}.button,.ghost,.small-button,.danger-button,.secondary-button,.icon-button,.icon-only{border-radius:var(--radius);min-height:44px;font-size:15px;font-weight:600}.button{background:var(--accent);color:#fff;padding:0 18px}.button.compact{min-height:40px}.client-cta{background:var(--accent-2);color:#fff}.client-cta:hover{background:#ed4f17}.small-button{min-height:36px;font-size:13px}.icon-button,.icon-only{width:40px;min-width:40px;min-height:40px}.ghost,.secondary-button,.small-button{border-color:var(--line);background:#fff}.danger-button{background:var(--danger)}.badge,.tag-row span{border-radius:999px;min-height:28px;padding:0 10px;font-size:12px;font-weight:600}.tag-row span{color:#1a1a1a;background:#edf4ef}.badge-new,.badge-awaiting-restaurant-confirmation,.badge-awaiting-deposit-payment,.badge-waiting-for-payment,.badge-payment-expired,.badge-at-risk{color:#84530f;background:#fff1cf}.badge-confirmed,.badge-approved,.badge-seated,.badge-completed,.badge-deposit-paid,.badge-confirmed-by-guest,.badge-confirmed-by-restaurant,.badge-paid{color:#1f6844;background:#dff2e8}.badge-rejected,.badge-cancelled,.badge-no-show,.badge-cancelled-by-guest,.badge-cancelled-by-restaurant,.badge-failed{color:#b54040;background:#f0e0de}.restaurant-card{background:#fff;transition:transform .18s,box-shadow .18s,border-color .18s;overflow:hidden}.restaurant-card h2{font-size:20px;line-height:1.18}.restaurant-card-compact .card-image-link{border-radius:var(--radius)}.restaurant-card-compact{box-shadow:none;background:0 0;border:0}.meta-row{gap:7px;font-size:14px}.restaurant-profile-hero{min-height:460px}.profile-hero-content{min-height:460px;padding:34px 0}.profile-hero-content p:not(.eyebrow){font-size:18px}.restaurant-anchor-nav{gap:32px;min-height:62px;box-shadow:0 8px 20px #0000000a}.restaurant-anchor-nav a{color:#3b443d;font-size:15px}.restaurant-profile-content{gap:38px;padding:40px 0 76px}.profile-main{gap:40px}.profile-section{gap:18px}.profile-gallery{gap:14px}.profile-facts{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-3);gap:28px;padding:26px}.profile-fact-grid{gap:12px 18px}.profile-booking{top:142px}.public-hall-widget{padding:18px}.public-booking-board{background-color:#f5f3f0;background-image:radial-gradient(circle at 24px 24px,#00000014 2px,#0000 3px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:34px 34px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-color:#c9d4ca}.booking-workspace .reservation-form{padding:26px}.selected-table-summary,.hall-widget-state,.booking-link-box,.deposit-next-step{border-radius:var(--radius)}.admin-table,.reservation-list,.hours-table{gap:10px}.admin-row,.reservation-row,.menu-item-row,.list-row{border:1px solid #0000;border-bottom:1px solid var(--line);padding:16px}.admin-row:hover,.reservation-row:hover,.menu-item-row:hover,.list-row:hover{border-color:var(--line);background:var(--surface-3)}.empty-state{border-radius:var(--radius);color:var(--muted);background:linear-gradient(#fff,#f7faf7);padding:30px}.page-header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px;display:flex}.page-header h1{margin:0;font-size:clamp(32px,4vw,48px);line-height:1.05}.page-header p{max-width:760px;color:var(--muted);margin:8px 0 0}.toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.app-shell{background:var(--bg);grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;gap:24px;height:100vh;padding:24px;display:flex;position:sticky;top:0}.brand-mark{border-radius:var(--radius);width:34px;height:34px;color:var(--accent);background:#ddd9d4;place-items:center;display:grid}.nav{gap:8px;display:grid}.nav a{border-radius:var(--radius);color:#4e5750;align-items:center;gap:10px;min-height:42px;padding:0 12px;font-weight:600;display:flex}.nav a:hover{background:var(--surface-2);color:var(--ink)}.sidebar-user{border-top:1px solid var(--line);color:var(--muted);gap:8px;margin-top:auto;padding-top:18px;display:grid}.sidebar-user strong{color:var(--ink)}.logout-button{border:1px solid var(--line);border-radius:var(--radius);background:#fff;justify-content:center;align-items:center;gap:8px;width:100%;min-height:40px;font-weight:600;display:inline-flex}.main{min-height:100vh}.container{width:min(var(--container),calc(100% - 48px));margin:0 auto;padding:40px 0 72px}.yandex-map{border-color:var(--line);min-height:380px}.map-address-card{border:1px solid #dfe5dddb}@media (max-width:980px){.page,.client-page,.profile-hero-content,.restaurant-profile-content,.container{width:min(100% - 32px,var(--container))}.app-header{grid-template-columns:1fr;align-items:start;padding:14px 20px}.section-heading,.page-header{flex-direction:column;align-items:flex-start}.profile-booking{position:static}.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.container{padding-top:28px}}@media (max-width:680px){body{font-size:15px}.page,.client-page,.profile-hero-content,.restaurant-profile-content,.container{width:min(100% - 22px,var(--container))}.page{padding:28px 0 52px}h1,.page-title h1{font-size:34px}h2,.panel h2,.section-heading h2,.profile-section h2,.profile-facts h3{font-size:25px}.panel,.auth-panel{padding:18px}.filters{padding:14px}.button,.ghost,.secondary-button{width:100%}.toolbar-actions .button,.toolbar-actions .ghost,.row-actions .small-button,.reservation-actions .small-button{width:auto}.restaurant-profile-hero,.profile-hero-content{min-height:390px}.restaurant-profile-content{padding-top:26px}.profile-facts{padding:18px}.yandex-map{min-height:430px}}.public-header{grid-template-columns:auto 1fr}.public-header .header-actions[aria-hidden=true]{display:none}.client-page,.restaurant-profile{isolation:isolate;position:relative}.client-page:before,.restaurant-profile:before{content:"";pointer-events:none;z-index:-1;background:linear-gradient(#00000008,#0000);height:520px;position:absolute;inset:0 0 auto;-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.client-home-hero{gap:48px;position:relative}.client-home-copy h1{max-width:820px}.home-search-card{border-radius:var(--radius);max-width:720px;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border:1px solid #dfe5dde0;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding:14px;display:grid}.guest-benefits{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:4px 0 44px;display:grid}.guest-benefits div,.city-events-preview{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);background:#ffffffe6}.guest-benefits div{gap:8px;padding:18px;display:grid}.guest-benefits strong{font-size:17px}.guest-benefits span,.city-events-preview p{color:var(--muted)}.city-events-preview{justify-content:space-between;align-items:center;gap:24px;margin-top:46px;padding:28px;display:flex}.city-events-preview h2{margin-bottom:8px}.city-events-preview p{max-width:760px;margin:0}.restaurant-filter-bar{box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;border:1px solid #dfe5ddeb;grid-template-columns:1.35fr repeat(4,minmax(126px,1fr)) auto auto;position:relative}.restaurant-filter-bar label{min-width:0}.filter-reset{align-self:end}select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#506057 50%),linear-gradient(135deg,#506057 50%,#0000 50%);background-position:calc(100% - 20px),calc(100% - 14px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:42px}select:hover,input:hover,textarea:hover{border-color:#c7d3c8}select:disabled{color:#98a09a;background-color:#f4f6f3}.restaurant-card-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.restaurant-card-actions .button,.restaurant-card-actions .secondary-button{width:100%}.app-footer{border-top:1px solid var(--line);color:#fff;background:#1a1a1a;position:relative}.footer-inner{width:min(var(--container),calc(100% - 48px));grid-template-columns:1.3fr .75fr 1fr 1fr;gap:34px;margin:0 auto;padding:44px 0 34px;display:grid}.footer-brand p{max-width:360px;margin:14px 0 0}.footer-column{align-content:start;gap:10px;display:grid}.footer-column h2{color:#fff;margin:0 0 4px;font-size:16px}.footer-column a,.footer-column span{color:#ffffffc7;align-items:center;gap:8px;font-weight:700;display:inline-flex}.footer-bottom{width:min(var(--container),calc(100% - 48px));border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:10px 20px;margin:0 auto;padding:16px 0 24px;font-size:13px;display:flex}.footer-legal-links{flex-wrap:wrap;gap:8px 18px;display:inline-flex}.footer-legal-links a{color:#fff4e7b8;text-decoration:none}.footer-legal-links a:hover{color:#fff;text-underline-offset:3px;text-decoration:underline}@media (max-width:980px){.home-search-card,.city-events-preview{grid-template-columns:1fr}.guest-benefits,.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-bottom{flex-direction:column}}@media (max-width:680px){.public-header,.home-search-card,.guest-benefits,.footer-inner{grid-template-columns:1fr}.home-search-card .button{width:100%}.city-events-preview{flex-direction:column;align-items:flex-start;padding:20px}.restaurant-card-actions{grid-template-columns:1fr}.footer-inner,.footer-bottom{width:min(100% - 22px,var(--container))}}.public-header{background:linear-gradient(90deg,#ff5b1fe6 0 58px,#0000 58px 100%),linear-gradient(90deg,#4a001f 0%,#350019 34%,#9f1c1f 72%,#4a001f 100%);border:0;grid-template-columns:minmax(0,1fr);justify-items:center;min-height:92px;padding:16px 24px 18px;position:relative;box-shadow:0 14px 32px #2a001429}.public-header:before{content:"";pointer-events:none;background:repeating-linear-gradient(90deg,#ffffff0f 0 42px,#0000 42px 86px);width:300px;position:absolute;inset:0 auto 0 58px}.public-header .brand{z-index:1;color:#fff;min-height:30px;position:relative}.public-header .main-nav{z-index:1;justify-content:center;gap:28px;position:relative}.public-header .main-nav a{color:#ffffffe6;min-height:28px;font-size:14px}.client-page{width:min(1260px,100% - 48px);padding-top:44px}.catalog-title{width:min(1080px,100%);margin:0 auto 46px}.catalog-title h1{letter-spacing:-.01em;font-size:clamp(42px,5vw,58px);font-weight:650}.catalog-title p{color:#5d635e;max-width:760px;margin:0}.quick-filter-row{margin-top:12px}.quick-filter-row a{color:#201c19;background:#f7e4cf;border-radius:999px;min-height:36px;padding:0 16px;font-size:13px;font-weight:600;transition:background .16s,transform .16s}.restaurant-showcase{width:min(1080px,100%);min-height:424px;box-shadow:none;border-radius:16px;margin:0 auto 36px}.showcase-content{min-height:424px;padding:34px 38px}.showcase-content span:first-child{background:#0000006b}.showcase-content h2{font-size:clamp(32px,4vw,46px);font-weight:750}.showcase-content .button{border-radius:999px;align-self:flex-start;min-width:182px}.restaurant-filter-bar{width:min(1080px,100%);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;flex-wrap:wrap;align-items:center;gap:10px;margin:0 auto 46px;padding:0;display:flex}.filter-search,.filter-pill{color:#151515;background:#dedede;border:0;border-radius:999px;align-items:center;gap:8px;width:auto;min-height:42px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex;position:relative}.filter-search{background:#f0f0f0;min-width:260px}.filter-search svg{color:#4f5650;flex:none}.filter-search span,.filter-pill span{color:#151515;white-space:nowrap;font-size:13px;font-weight:600;display:inline;position:static}.filter-search input,.filter-pill select{width:auto;min-width:0;height:40px;min-height:0;box-shadow:none;background-color:#0000;border:0;border-radius:0;padding:0;font-size:13px;font-weight:600}.filter-search input{flex:1;width:160px}.filter-pill select{background-position:calc(100% - 9px),calc(100% - 4px);background-size:5px 5px,5px 5px;max-width:180px;padding-right:22px}.filter-search input:focus,.filter-pill select:focus{box-shadow:none}.filter-submit,.filter-reset{border-radius:999px;min-height:42px;padding-inline:18px}.catalog-section{width:min(1260px,100%);margin:46px auto 64px}.catalog-section .section-heading{margin-bottom:20px}.catalog-section h2{font-size:clamp(30px,3vw,38px);font-weight:650}.restaurant-rail{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}.restaurants-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.restaurant-card{box-shadow:none;background:0 0;border:0}.restaurant-card:hover{box-shadow:none;transform:none}.card-image-link{aspect-ratio:1.52;border-radius:10px}.restaurant-card h2{font-size:20px;font-weight:750}.restaurant-card p{margin:0}.restaurant-card .meta-row{color:#59605a;gap:4px;font-size:13px}.restaurant-card .tag-row{display:none}.restaurant-card-actions{margin-top:8px}.restaurant-card-actions .button,.restaurant-card-actions .secondary-button{border-radius:999px;min-height:38px}.guest-benefits,.city-events-preview{width:min(1080px,100%);margin-inline:auto}.app-footer{margin-top:60px}@media (max-width:980px){.public-header{place-items:center start}.public-header .main-nav{justify-content:flex-start;gap:18px}.restaurant-rail,.restaurants-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-search{width:100%}}@media (max-width:680px){.public-header{min-height:86px}.client-page{width:min(100% - 22px,1260px);padding-top:30px}.catalog-title{margin-bottom:30px}.restaurant-showcase,.showcase-content{min-height:350px}.showcase-content{padding:24px}.restaurant-rail,.restaurants-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.restaurant-filter-bar{margin-bottom:34px}.filter-search,.filter-pill,.filter-submit,.filter-reset,.filter-dropdown,.filter-trigger{width:100%}.filter-menu{width:100%;margin-top:8px;position:static}.filter-pill select{flex:1;max-width:none}}.public-header{background:linear-gradient(90deg,#00000014,#00000014 55%,#9a988914),#e5ded2f5;border-bottom:1px solid #47463829;grid-template-columns:auto minmax(0,1fr);place-items:center stretch;min-height:78px;padding:0 36px;box-shadow:0 10px 26px #0000000f}.public-header .brand{color:#31402c;justify-self:start}.public-header .main-nav a{color:#4f5648;font-weight:600}.client-page:before,.restaurant-profile:before{background:linear-gradient(#00000008,#0000);height:560px}.catalog-title h1,.client-home-copy h1{color:#1a1a1a}.catalog-title p,.client-home-copy p{color:#7a756f}.quick-filter-row a{color:#2c251d;background:#f1dcc0}.quick-filter-row a:hover{background:#e8caa7}.restaurant-showcase{background:linear-gradient(135deg,#3b3126,#191510);box-shadow:0 18px 42px #00000024}.showcase-overlay,.profile-hero-overlay{background:linear-gradient(90deg,#1f1710c7,#35261a6b,#35261a14)}.showcase-content span:first-child{color:#fff5e6;background:#e5ded22e}.button,.client-cta{color:#fff;background:linear-gradient(#c96f49,#ad5535)}.button:hover,.client-cta:hover{background:linear-gradient(#b95f3d,#994b2e)}.secondary-button,.ghost,.small-button{color:#2f2a23;background:#f0ede9;border-color:#dfd1bd}.secondary-button:hover,.ghost:hover,.small-button:hover{background:#ddd9d4}.restaurant-filter-bar{color:#1a1a1a}.filter-search,.filter-pill{color:#1a1a1a;background:#eee3d4}.filter-dropdown{position:relative}.filter-trigger{color:#1a1a1a;min-height:42px;box-shadow:none;background:#eee3d4;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:600;transition:background .16s,box-shadow .16s,transform .16s;display:inline-flex}.filter-trigger:hover,.filter-trigger.open{background:#e6d9c7;transform:none;box-shadow:0 0 0 3px #00000021}.filter-trigger span{color:#42392f;white-space:nowrap}.filter-trigger strong{text-overflow:ellipsis;white-space:nowrap;color:#181713;max-width:150px;overflow:hidden}.filter-trigger svg{color:#7a756f;flex:none;transition:transform .16s}.filter-menu{z-index:40;background:#f0ede9;border:1px solid #eadac5;border-radius:14px;gap:6px;min-width:250px;padding:16px;display:grid;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 22px 48px #00000029}.filter-option{color:#3c342b;text-align:left;background:0 0;border:0;border-radius:10px;justify-content:flex-start;align-items:center;gap:10px;min-height:34px;padding:0 4px;font-size:14px;font-weight:650;display:flex}.filter-option:hover{box-shadow:none;background:#f5ecdf;transform:none}.filter-radio-dot{background:#f0ede9;border:1.5px solid #9b917f;border-radius:999px;width:12px;height:12px}.filter-option.selected .filter-radio-dot{border:4px solid #7a756f}.filter-menu-close{color:#342c24;background:#f1ebe3;border:0;border-radius:999px;justify-content:center;min-height:38px;margin-top:8px;font-size:13px;font-weight:600}.filter-menu-close:hover{box-shadow:none;background:#e9ded0;transform:none}.filter-search{background:#edebe7}.filter-search span,.filter-pill span{color:#42392f}.filter-search svg{color:#6b7351}.filter-search:focus-within,.filter-pill:focus-within{box-shadow:0 0 0 3px #0000002e}select{background-image:linear-gradient(45deg,#0000 50%,#7a756f 50%),linear-gradient(135deg,#7a756f 50%,#0000 50%)}.filter-reset{background:#f2e8db}.restaurant-card .open-status{color:#4d884e}.card-image-link{background:linear-gradient(135deg,#eee2d0,#d9cab2)}.guest-benefits div,.city-events-preview,.panel,.auth-panel,.profile-facts{background:#e5ded2f0;border-color:#d5d1cc}.app-footer{background:#1a1a1a;border-top-color:#ffffff14}.footer-brand p,.footer-column p,.footer-bottom{color:#fff9}.footer-column a,.footer-column span{color:#ffffffb3}.footer-column a:hover{color:#fff}.yandex-map{background:#ddd9d4;border-color:#e0d0ba}.map-address-card{background:#e5ded2f5;border-color:#e0d0bae0}.map-card-icon{color:#1a1a1a;background:#e8efe1}@media (max-width:980px){.public-header{grid-template-columns:1fr;justify-items:start;gap:8px;padding:14px 20px}.public-header .main-nav{justify-content:flex-start;justify-self:start}.filter-dropdown{width:calc(50% - 5px)}.filter-trigger{width:100%}}.public-header{background:linear-gradient(#fffbf4f5,#f8f0e3f0);border-bottom:1px solid #ddd2c0c7;grid-template-columns:auto 1fr;justify-items:start;min-height:72px;padding:0 40px;box-shadow:0 10px 28px #533f2812}.public-header .main-nav{justify-content:flex-end;justify-self:end;gap:26px}.public-header .main-nav a{color:#4c5142;font-size:15px;font-weight:600}.public-header .main-nav a:hover{color:#25291f}.client-page{width:min(1180px,100% - 48px)}.catalog-title,.restaurant-showcase{width:100%}.restaurant-filter-bar{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;flex-wrap:wrap;align-items:center;gap:10px;padding:0;display:flex}.filter-search{background:#f2e7d7eb;border:0;border-radius:999px;align-items:center;gap:8px;width:min(260px,100%);min-height:46px;padding:0 16px;display:flex}.filter-search input{min-height:34px;box-shadow:none;background:0 0;border:0;padding:0}.filter-search input:focus{box-shadow:none}.filter-dropdown{flex:none;width:auto;position:relative}.filter-trigger{color:#2d261f;min-height:46px;box-shadow:none;background:#ece0cff5;border:0;border-radius:999px;padding:0 18px}.filter-trigger:hover,.filter-trigger.open{background:#ead9bf;box-shadow:0 0 0 3px #be684229}.filter-trigger strong{max-width:180px}.filter-menu,.pretty-select-menu{z-index:80;background:#f0ede9;border:1px solid #d5d1cc;border-radius:14px;gap:6px;min-width:260px;max-height:min(380px,100vh - 180px);padding:16px;display:grid;position:absolute;top:calc(100% + 8px);left:0;overflow:auto;box-shadow:0 22px 48px #3f2d1b2e}.filter-option,.pretty-select-option{color:#332b23;text-align:left;background:0 0;border:0;border-radius:12px;justify-content:flex-start;align-items:center;gap:10px;min-height:36px;padding:0 8px;font-size:14px;font-weight:720;display:flex}.filter-option:hover,.pretty-select-option:hover{box-shadow:none;background:#ddd9d4;transform:none}.filter-option.selected,.pretty-select-option.selected{background:#f8efe5}.filter-radio-dot{background:#f0ede9;border:1.5px solid #9d917f;border-radius:999px;flex:none;width:13px;height:13px}.filter-option.selected .filter-radio-dot,.pretty-select-option.selected .filter-radio-dot{border:4px solid #7a756f}.filter-menu-close{color:#332b23;background:#f0e8dd;border:0;border-radius:999px;min-height:38px;margin-top:8px}.filter-submit{background:#7a756f;border-radius:999px}.filter-submit:hover{background:#a95b38}.filter-reset{background:#edebe7;border-radius:999px}.pretty-select-field{min-width:0}.pretty-select{width:100%;position:relative}.pretty-select-trigger{color:#221f19;width:100%;min-height:46px;box-shadow:none;background:#f5f3f0;border:1px solid #ddd2c0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:0 14px;display:flex}.pretty-select-trigger strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;overflow:hidden}.pretty-select-trigger svg{color:#756a58;transition:transform .16s}.pretty-select-trigger.open{border-color:#7a756f;box-shadow:0 0 0 3px #be684226}.pretty-select-trigger.open svg{transform:rotate(180deg)}.pretty-select-menu{min-width:100%;right:0}.public-reserve-page{grid-template-columns:minmax(240px,340px) minmax(0,740px);align-items:start;gap:34px;width:min(1120px,100% - 48px);display:grid}.public-reserve-page .page-title{background:#e5ded2e6;border:1px solid #d5d1cc;border-radius:14px;margin:0;padding:24px;position:sticky;top:104px;box-shadow:0 14px 34px #523d2614}.public-reserve-page .page-title h1{font-size:clamp(32px,3.4vw,48px)}.public-reserve-page .page-title p{font-size:16px}.public-reserve-page .page-title a{color:#8b5635;font-weight:600}.public-reserve-page .reservation-form{background:#e5ded2f5;border-color:#d5d1cc;width:100%;max-width:none;padding:26px}.public-reserve-page .public-hall-widget{background:linear-gradient(#f0ede9,#fbf7ef);border-color:#e8dac7}.public-reserve-page .public-booking-board{background-color:#f5f3f0;background-image:radial-gradient(circle at 24px 24px,#7e8f531c 2px,#0000 3px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:34px 34px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;min-height:360px}.booking-table.selected .booking-table-core,.seat-dot.selected{color:#fff;background:#c46f49;border-color:#7a756f}.booking-table.requires-deposit .booking-table-core{box-shadow:0 0 0 4px #be684224,0 10px 20px #00000014}.booking-link-box{color:#8a4a25;background:#fff1e3}.booking-link-box.soft-box{color:#52683e;background:#eef5ea}select{color:#28241f;background-color:#f5f3f0;border-color:#ddd2c0}@media (max-width:980px){.public-header{grid-template-columns:1fr;gap:8px;padding:14px 22px}.public-header .main-nav{justify-content:flex-start;justify-self:start}.public-reserve-page{grid-template-columns:1fr;width:min(100% - 32px,760px)}.public-reserve-page .page-title{position:static}}@media (max-width:680px){.client-page{width:min(100% - 22px,1180px)}.restaurant-filter-bar{grid-template-columns:1fr;display:grid}.filter-search,.filter-dropdown,.filter-trigger,.filter-submit,.filter-reset{width:100%}.filter-menu,.pretty-select-menu{max-height:320px;margin-top:8px;position:static}.public-reserve-page{width:min(100% - 22px,760px)}.public-reserve-page .reservation-form{padding:18px}}body{color:#1a1a1a;background:radial-gradient(circle at 16% -6%,#0003,#0000 34%),radial-gradient(circle at 88% 8%,#0000001a,#0000 32%),linear-gradient(#f5f3f0 0%,#f0ede9 44%,#f6ede2 100%);font-family:Inter,Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}h1,h2,h3,.brand span,.catalog-title h1,.showcase-content h2,.profile-hero-content h1,.profile-section h2,.page-title h1{letter-spacing:-.01em;font-family:Georgia,Times New Roman,serif}.app-header.public-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f5f3f0d6;border-bottom:1px solid #00000038;grid-template-columns:auto 1fr auto;min-height:82px;padding-inline:max(28px,50vw - 590px);box-shadow:0 10px 34px #0000000f}.public-header:before{display:none}.public-header .brand{color:#1a1a1a;gap:10px;font-size:24px}.brand .kaifbook-logo-mark{object-fit:contain;border-radius:9px;flex:none;width:38px;height:38px;display:block}.public-header .brand svg{color:var(--accent)}.public-header .main-nav{justify-content:center;gap:12px}.public-header .main-nav a{color:#1a1a1a;background:#f5f3f0b8;border:1px solid #00000047;border-radius:999px;min-height:38px;padding:0 18px;font-weight:600}.public-header .main-nav a:hover{color:#edebe7;background:#1a1a1a;transform:translateY(-1px);box-shadow:0 12px 26px #0003}.page.client-page{width:min(1180px,100% - 44px);padding-top:42px}.catalog-title{margin-bottom:32px}.catalog-title h1{color:#1a1a1a;max-width:780px;font-size:clamp(48px,5.8vw,78px);line-height:.95}.catalog-title p{color:#7a756f;max-width:720px;font-size:18px;line-height:1.6}.quick-filter-row{scrollbar-width:none;gap:10px}.quick-filter-row::-webkit-scrollbar{display:none}.quick-filter-row a{border:1px solid var(--line);color:#3a3a3a;min-height:38px;box-shadow:none;background:#fff;gap:6px;padding:0 17px}.quick-filter-row a svg{opacity:.55;flex-shrink:0}.quick-filter-row a:hover svg,.quick-filter-row a.active svg{opacity:1}.quick-filter-row a:hover{background:var(--surface-2);transform:translateY(-1px)}.quick-filter-row a.active{background:var(--ink);color:#fff;border-color:var(--ink)}.restaurant-showcase{background:#211813;border:1px solid #00000040;border-radius:14px;min-height:472px;margin-bottom:32px;box-shadow:0 30px 90px #00000038}.restaurant-showcase img{transition:transform .45s,filter .45s;transform:scale(1.015)}.restaurant-showcase:hover img{transform:scale(1.045)}.showcase-overlay{background:linear-gradient(90deg,#1d140fb8,#2d1c136b,#2d1c1314),radial-gradient(circle at 18% 78%,#00000038,#0000 36%)}.showcase-content{gap:18px;width:min(650px,100%);min-height:472px;padding:54px}.showcase-content h2{color:#f5f3f0;font-size:clamp(42px,5vw,64px)}.showcase-content p{color:#fffaf3e0;font-size:18px}.showcase-content span:first-child,.showcase-meta span{color:#f8e7cf;background:#f5f3f021;border:1px solid #0000003d}.restaurant-filter-bar{box-shadow:none;background:0 0;border:0;flex-wrap:wrap;align-items:center;gap:12px;margin:8px 0 44px;padding:0;display:flex}.filter-search{background:#f5f3f0db;border:1px solid #0000;border-radius:999px;width:min(300px,100%);min-height:52px;box-shadow:0 14px 36px #00000014}.filter-trigger{color:#1a1a1a;background:#f0e4d3;border:1px solid #0000002e;min-height:52px;padding:0 20px;box-shadow:0 10px 22px #00000012}.filter-trigger:hover,.filter-trigger.open{background:#d5d1cc;border-color:#0000003d;box-shadow:0 0 0 4px #0000002e,0 12px 28px #00000017}.filter-menu,.pretty-select-menu{background:#fffbf5;border-color:#00000052;border-radius:14px;box-shadow:0 28px 72px #0000002e}.button,.client-cta,.filter-submit{background:var(--accent);color:#fff;border:0;border-radius:999px;box-shadow:0 6px 18px #c055352e}.button:hover,.client-cta:hover,.filter-submit:hover{background:var(--accent-dark)}.small-button,.secondary-button,.ghost,.filter-reset{color:#1a1a1a;background:#f5f3f0d6;border-color:#00000052;border-radius:999px}.catalog-section{margin:46px 0 64px}.catalog-section h2{font-size:clamp(30px,3vw,42px)}.restaurant-rail,.restaurants-grid{gap:24px}.restaurant-card,.restaurant-card.restaurant-card-compact{background:#f5f3f0e6;border:1px solid #00000038;border-radius:14px;transition:transform .22s,box-shadow .22s,border-color .22s;overflow:hidden;box-shadow:0 14px 36px #00000014}.restaurant-card:hover{border-color:#0000008a;transform:translateY(-5px);box-shadow:0 26px 62px #00000026}.restaurant-card .card-image-link,.restaurant-card-compact .card-image-link{aspect-ratio:16/10;border-radius:0}.restaurant-card-image{transition:transform .42s,filter .42s}.restaurant-card:hover .restaurant-card-image{filter:saturate(1.06)contrast(1.02);transform:scale(1.05)}.restaurant-card-body{gap:13px;padding:18px}.restaurant-card h2{color:#1a1a1a;font-family:Inter,Manrope,ui-sans-serif,system-ui,sans-serif;font-size:21px;line-height:1.12}.restaurant-card p,.meta-row{color:#7a756f}.meta-row span:last-child{color:#1a1a1a;font-weight:700}.tag-row span,.badge{color:#604533;background:#f3e5d4}.restaurant-profile{background:radial-gradient(circle at 12% 0,#00000024,#0000 32%),linear-gradient(#f5f3f0 0%,#f0ede9 72%,#f5f3f0 100%)}.restaurant-profile-hero,.profile-hero-content{min-height:540px}.profile-hero-overlay{background:linear-gradient(90deg,#1f1813d6,#482b1f7a,#1f18131f),radial-gradient(circle at 18% 70%,#00000038,#0000 34%)}.profile-hero-content h1{color:#f5f3f0}.profile-hero-content p:not(.eyebrow){color:#fffaf3e6}.profile-hero-content .eyebrow{-webkit-backdrop-filter:blur(8px);color:#f8e7cf;letter-spacing:.08em;text-shadow:0 1px 4px #0006;background:#fffdf924;border-radius:999px;align-items:center;gap:8px;width:fit-content;padding:6px 14px;font-size:12px;font-weight:700;display:inline-flex}.restaurant-anchor-nav{background:#f5f3f0e6;border-color:#00000038;min-height:66px;top:0;box-shadow:0 12px 30px #0000000f}.restaurant-profile-content.single-column{width:min(1180px,100% - 44px);padding-top:42px}.profile-section h2{color:#1a1a1a;font-size:clamp(34px,3.6vw,48px)}.profile-gallery .gallery-item,.yandex-map{border-radius:14px;box-shadow:0 14px 36px #00000014}.map-address-card{background:#f5f3f0f0;border:1px solid #00000038;border-radius:14px}.menu-public,.booking-workspace .reservation-form,.public-reserve-page .reservation-form{background:#f5f3f0eb;border:1px solid #00000040;border-radius:14px;box-shadow:0 24px 70px #0000001f}.reservation-form input,.reservation-form textarea,.pretty-select-trigger{background:#f5f3f0;border-color:#e5d7c6;border-radius:16px;min-height:52px}.public-hall-widget,.public-reserve-page .public-hall-widget{background:linear-gradient(#f5f3f0,#f8f0e6);border-color:#00000047;border-radius:14px}.public-booking-board,.public-reserve-page .public-booking-board{background-color:#f5f3f0;background-image:radial-gradient(circle at 24px 24px,#00000013 2px,#0000 3px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:34px 34px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-color:#d5d1cc;border-radius:14px}.public-reserve-page{grid-template-columns:minmax(260px,360px) minmax(0,760px);gap:36px;width:min(1180px,100% - 44px)}.app-footer{color:#edebe7;background:#1a1a1a;border-top:1px solid #0000003d}.app-footer .brand,.app-footer h2{color:#edebe7}.app-footer p,.footer-column a,.footer-column span,.footer-bottom{color:#fff4e7b8}@media (max-width:980px){.app-header.public-header{padding-inline:22px}.restaurant-rail,.restaurants-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1180px){.public-reserve-page{grid-template-columns:1fr;width:min(760px,100% - 32px)}.public-reserve-page .page-title{position:static}}@media (max-width:680px){.page.client-page,.restaurant-profile-content.single-column,.public-reserve-page{width:min(100% - 24px,1180px)}.app-header.public-header{grid-template-columns:1fr;align-items:start;min-height:92px}.public-header .main-nav{justify-content:flex-start}.catalog-title h1{font-size:42px}.restaurant-showcase,.showcase-content{min-height:390px}.showcase-content{padding:24px}.restaurant-filter-bar{grid-template-columns:1fr;display:grid}.filter-search,.filter-dropdown,.filter-trigger,.filter-submit,.filter-reset{width:100%}.restaurant-rail,.restaurants-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.restaurant-profile-hero,.profile-hero-content{min-height:440px}.public-reserve-page{grid-template-columns:1fr}}.form-warning{color:#7a4a25;background:#fff7e8;border:1px solid #0000006b;border-radius:16px;margin:0;padding:12px 14px;font-weight:600;line-height:1.45}.public-hall-widget .hall-widget-state.error-state{color:#8b3b2d;background:#fff1ec;border-style:solid;border-color:#9745343d}.booking-table-core:disabled,.seat-dot:disabled{cursor:not-allowed}.booking-table.status-occupied .seat-dot,.booking-table.status-too_small .seat-dot,.booking-table.status-disabled .seat-dot{filter:grayscale(.2)}.booking-table.selected .seat-dot.selected{transform:translate(-50%,-50%)scale(1.08);box-shadow:0 8px 18px #b2553247}.public-reserve-page{align-items:start}.public-reserve-page .reservation-form{min-width:0}.public-reserve-page .public-booking-board{overflow:visible}@media (max-width:760px){.restaurant-profile-content.single-column,.booking-workspace,.booking-workspace .reservation-form,.public-reserve-page,.public-reserve-page .reservation-form,.public-hall-widget{box-sizing:border-box;min-width:0;max-width:100%;overflow-x:hidden}.booking-workspace .public-booking-board,.public-reserve-page .public-booking-board{min-height:320px;overflow:hidden;aspect-ratio:auto!important;width:100%!important;max-width:100%!important}.booking-table{min-width:54px;min-height:46px}.seat-dot{width:19px;height:19px;min-height:19px;font-size:8px}}@keyframes restaurantCardReveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.restaurant-filter-bar{align-items:center}@media (min-width:981px){.restaurant-filter-bar{grid-template-columns:minmax(250px,1.15fr) minmax(150px,.62fr) minmax(190px,.8fr) minmax(220px,.9fr);gap:14px;display:grid}.restaurant-filter-bar>.filter-search,.restaurant-filter-bar>.filter-dropdown,.restaurant-filter-bar>.filter-submit,.restaurant-filter-bar>.filter-reset{width:100%}.restaurant-filter-bar>.filter-dropdown:nth-of-type(4){grid-column:1}.restaurant-filter-bar>.filter-submit{grid-column:2}.restaurant-filter-bar>.filter-reset{grid-column:3;justify-self:start;min-width:148px}}.filter-search.has-value,.filter-trigger.selected,.filter-trigger.open{background:#d5d1cc;border-color:#00000057;box-shadow:0 0 0 4px #0003,0 14px 32px #0000001a}.filter-trigger.selected strong,.filter-search.has-value span{color:#1a1a1a}.filter-dropdown.has-value:after{content:"";pointer-events:none;background:#1a1a1a;border-radius:999px;width:8px;height:8px;position:absolute;top:12px;right:16px;box-shadow:0 0 0 4px #0000001f}.quick-filter-row a.active{color:#edebe7;background:#1a1a1a;border-color:#00000057;box-shadow:0 14px 28px #00000038}.show-all-link{justify-content:center;gap:7px;min-width:154px}.luxury-restaurant-card{flex-direction:column;min-height:100%;animation:.55s both restaurantCardReveal;display:flex}.luxury-restaurant-card:hover{transform:translateY(-8px);box-shadow:0 32px 78px #0000002e}.luxury-card-media{isolation:isolate;background:#d5d1cc;position:relative;overflow:hidden;aspect-ratio:16/9!important}.image-loading-surface{z-index:0;background:linear-gradient(110deg,#fff0 30%,#ffffff6b 48%,#fff0 66%) 0 0/220% 100%,linear-gradient(135deg,#d5d1cc,#d7bea1) 0 0/100% 100%;animation:1.35s linear infinite imageSheen;position:absolute;inset:0}@keyframes imageSheen{to{background-position:-220% 0,0 0}}.restaurant-card-gallery{z-index:1;background:linear-gradient(135deg,#d5d1cc,#d7bea1);display:block;position:absolute;inset:0;overflow:hidden}.restaurant-card-gallery-layer{opacity:0;transition:opacity .46s,transform .72s,filter .46s;display:block;position:absolute;inset:0;transform:scale(1)}.restaurant-card-gallery-layer.is-active{opacity:1;z-index:1}.restaurant-card-gallery-image{object-fit:cover;filter:saturate(1.02)contrast(1.01);width:100%;height:100%;display:block}.luxury-restaurant-card:hover .restaurant-card-gallery-layer.is-active,.luxury-restaurant-card:focus-within .restaurant-card-gallery-layer.is-active{filter:saturate(1.08)contrast(1.03);transform:scale(1.035)}.restaurant-card-photo-dots{z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#2c21188a;border:1px solid #fff8ed42;border-radius:999px;align-items:center;gap:6px;min-height:22px;padding:6px 8px;display:inline-flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 10px 22px #2c211833}.restaurant-card-photo-dots span{background:#fff8ed94;border-radius:999px;width:6px;height:6px;transition:width .28s,background .28s,opacity .28s;display:block}.restaurant-card-photo-dots span.active{background:#d4bf8a;width:18px}.luxury-card-media .restaurant-card-image{z-index:1;object-fit:cover;width:100%;height:100%;display:block;position:relative}.restaurant-card-cuisine-badge{z-index:5;color:#edebe7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#2c2118b3;border:1px solid #fff8ed59;border-radius:999px;max-width:calc(100% - 28px);padding:8px 12px;font-size:12px;font-weight:600;line-height:1.1;transition:transform .2s,background .2s;position:absolute;top:14px;right:14px}.luxury-restaurant-card:hover .restaurant-card-cuisine-badge{background:#000000db;transform:translateY(-2px)}.luxury-card-body{flex-direction:column;flex:1;gap:16px;padding:22px;display:flex}.restaurant-card-title-block{gap:8px;display:grid}.restaurant-card h3{color:#1a1a1a;letter-spacing:-.01em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(24px,2vw,28px);font-weight:700;line-height:1.06}.restaurant-card-title-block p{color:#7a756f;margin:0;font-size:14px;line-height:1.45}.restaurant-card-chips{flex-wrap:wrap;gap:8px;display:flex}.restaurant-card-chips span{color:#1a1a1a;background:#f8eddf;border:1px solid #7c5d4438;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.restaurant-card-info{color:#7a756f;grid-template-columns:1fr;gap:9px;font-size:14px;display:grid}.restaurant-card-info span{align-items:center;gap:8px;min-width:0;display:flex}.restaurant-card-info svg{color:#c05535;flex:none}.restaurant-card-info span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.restaurant-card-book-button{color:#edebe7;background:#1a1a1a;border-radius:999px;justify-content:center;align-items:center;width:100%;min-height:48px;margin-top:auto;font-size:15px;font-weight:700;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex;box-shadow:0 14px 28px #0003}.restaurant-card-book-button:hover{color:#edebe7;background:#1a1a1a;transform:translateY(-2px);box-shadow:0 18px 34px #00000047}.restaurant-card-compact .restaurant-card-title-block p,.restaurant-card-compact .restaurant-card-chips span:nth-child(n+3){display:none}@media (max-width:680px){.restaurant-card h3{font-size:24px}.luxury-card-body{padding:18px}}@media (prefers-reduced-motion:reduce){.luxury-restaurant-card,.image-loading-surface{animation:none}.luxury-restaurant-card,.restaurant-card-gallery-layer,.luxury-card-media .restaurant-card-image,.restaurant-card-book-button{transition:none}}.restaurant-card-rating-badge{z-index:5;color:#1a1a1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f5f3f0e6;border:1px solid #fff8ed61;border-radius:999px;align-items:center;gap:6px;min-height:34px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex;position:absolute;bottom:14px;left:14px;box-shadow:0 10px 24px #2c21182e}.restaurant-card-rating-badge svg{color:#7a756f;fill:#7a756f}.restaurant-card-rating-badge small{color:#806b5c;font-size:11px;font-weight:600}.restaurant-card-badges{flex-wrap:wrap;gap:8px;display:flex}.restaurant-card-badges span,.profile-badge-row span,.profile-rating-pill{color:#1a1a1a;background:#fff7eb;border:1px solid #0000004d;border-radius:999px;align-items:center;gap:6px;min-height:30px;padding:0 11px;font-size:12px;font-weight:700;display:inline-flex}.profile-badge-row{flex-wrap:wrap;gap:9px;display:flex}.profile-rating-pill svg{color:#7a756f;fill:#7a756f}.menu-card-layout{gap:28px}.menu-category-block{gap:16px;display:grid}.menu-category-block h3{margin:0;font-size:26px}.dish-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.dish-card{background:#f5f3f0;border:1px solid #00000040;border-radius:14px;overflow:hidden;box-shadow:0 16px 42px #00000014}.dish-card-image{aspect-ratio:4/3;background:linear-gradient(135deg,#d5d1cc,#edebe7);position:relative;overflow:hidden}.dish-card-image img{object-fit:cover;transition:transform .24s}.dish-card:hover .dish-card-image img{transform:scale(1.04)}.dish-card-body{gap:9px;padding:16px;display:grid}.dish-card-body strong{font-size:17px}.dish-card-body p{color:#7a756f;min-height:42px;margin:0;font-size:14px;line-height:1.45}.dish-card-meta{color:#7a756f;justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.dish-card-meta b{color:#1a1a1a;font-size:16px}.review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.review-card{background:#f5f3f0;border:1px solid #00000040;border-radius:14px;gap:12px;padding:20px;display:grid;box-shadow:0 16px 42px #00000014}.review-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.review-card-head span{color:#1a1a1a;align-items:center;gap:5px;font-weight:700;display:inline-flex}.review-card-head svg{color:#7a756f;fill:#7a756f}.review-card p{color:#5f5148;margin:0;line-height:1.55}.review-card small{color:#938273;font-weight:600}.field-error{color:#b54040;font-size:12px;font-weight:600}@media (max-width:980px){.dish-card-grid,.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.dish-card-grid,.review-grid{grid-template-columns:1fr}.restaurant-card-rating-badge{bottom:10px;left:10px}}.public-header .brand{align-items:center}.public-header .brand svg{color:#1a1a1a;background:linear-gradient(135deg,#f0ede9,#ead7bf);border:1px solid #b4b3ad75;border-radius:12px;width:34px;height:34px;padding:7px;box-shadow:0 12px 28px #0000001f}.home-banner-slider{isolation:isolate}.banner-slide-stack,.banner-slide{position:absolute;inset:0}.banner-slide{opacity:0;will-change:opacity,transform;transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);transform:scale(1.035)translate(18px)}.banner-slide.active{opacity:1;transform:scale(1)translate(0)}.banner-slide img{object-fit:cover;filter:saturate(1.04)contrast(1.03)}.home-banner-slider .showcase-content{animation:.72s cubic-bezier(.22,1,.36,1) both bannerContentIn}@keyframes bannerContentIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.banner-dots{z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#2c211847;border:1px solid #fff8ed2e;border-radius:999px;gap:8px;padding:8px;display:flex;position:absolute;bottom:28px;right:34px}.banner-dots button{background:#fff8ed85;border:0;border-radius:999px;width:9px;height:9px;min-height:9px;padding:0;transition:width .28s,background .28s,transform .28s}.banner-dots button.active{background:#d4bf98;width:28px}.banner-arrow{z-index:4;color:#1a1a1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f5f3f0d6;border:1px solid #fff8ed3d;border-radius:999px;place-items:center;width:46px;height:46px;min-height:46px;transition:transform .22s,background .22s,color .22s;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 14px 32px #2c211833}.banner-arrow:hover{color:#edebe7;background:#1a1a1a;transform:translateY(-50%)scale(1.04)}.banner-arrow.left{left:24px}.banner-arrow.right{right:24px}.restaurant-filter-bar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:minmax(260px,1.35fr) minmax(150px,.7fr) minmax(210px,1fr) minmax(230px,1.05fr);width:100%;background:#f5f3f0b8!important;border:1px solid #b4b3ad57!important;border-radius:14px!important;align-items:stretch!important;gap:14px!important;margin:10px 0 46px!important;padding:18px!important;display:grid!important;box-shadow:0 22px 54px #00000014!important}.restaurant-filter-bar>.filter-search,.restaurant-filter-bar>.filter-dropdown,.restaurant-filter-bar>.filter-submit,.restaurant-filter-bar>.filter-reset{min-width:0;width:100%!important}.restaurant-filter-bar>.filter-search{grid-column:span 1}.restaurant-filter-bar>.filter-dropdown:nth-of-type(4){grid-column:1/span 1}.restaurant-filter-bar>.filter-submit{grid-column:2/span 1}.restaurant-filter-bar>.filter-reset{grid-column:3/span 1}.filter-search,.filter-trigger,.filter-submit,.filter-reset{border-radius:14px!important;min-height:58px!important}.filter-search{grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:9px;padding:0 18px;display:grid;box-shadow:none!important;background:#f0ede9!important;border:1px solid #b4b3ad47!important}.filter-search span,.filter-trigger span{color:#6f5d50;font-size:12px;font-weight:700}.filter-search input{height:100%;min-height:0;box-shadow:none;color:#1a1a1a;background:0 0;border:0;padding:0}.filter-trigger{justify-content:flex-start;gap:9px;box-shadow:none!important;background:#f2e5d2!important;border-color:#b4b3ad52!important;padding:0 18px!important}.filter-trigger strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.filter-trigger svg{margin-left:auto}.filter-submit,.filter-reset{justify-content:center;padding-inline:18px!important}.filter-trigger.selected,.filter-trigger.open,.filter-search.has-value{background:#d5d1cc!important;border-color:#00000073!important;box-shadow:0 0 0 4px #b4b3ad2e!important}.filter-dropdown.has-value:after{width:7px;height:7px;top:11px;right:14px}.filter-menu{width:min(320px,100vw - 36px);left:0}@media (max-width:980px){.restaurant-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))!important}.restaurant-filter-bar>.filter-search,.restaurant-filter-bar>.filter-dropdown:nth-of-type(4),.restaurant-filter-bar>.filter-submit,.restaurant-filter-bar>.filter-reset{grid-column:auto!important}}@media (max-width:680px){.public-header .brand svg{width:30px;height:30px;padding:6px}.restaurant-filter-bar{border-radius:14px!important;grid-template-columns:1fr!important;padding:14px!important}.filter-search,.filter-trigger,.filter-submit,.filter-reset{min-height:54px!important}.banner-arrow{display:none}.banner-dots{bottom:18px;right:20px}}@media (prefers-reduced-motion:reduce){.banner-slide,.home-banner-slider .showcase-content,.banner-arrow,.banner-dots button{transition:none!important;animation:none!important}}.restaurant-filter-bar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:100%;background:linear-gradient(135deg,#f5f3f0f0,#f9f1e6e0)!important;border:1px solid #b4b3ad6b!important;border-radius:14px!important;grid-template-columns:minmax(340px,1.55fr) minmax(150px,.72fr) minmax(210px,1fr) minmax(250px,1.12fr)!important;align-items:stretch!important;gap:14px!important;margin:28px 0 48px!important;padding:22px!important;display:grid!important;box-shadow:0 26px 70px #0000001a!important}.restaurant-filter-bar>*{min-width:0}.restaurant-filter-bar>.filter-search{grid-area:1/1/auto/2!important}.restaurant-filter-bar>.filter-dropdown{grid-area:auto!important}.restaurant-filter-bar>.filter-dropdown:nth-of-type(4){grid-area:2/1/auto/2!important}.restaurant-filter-bar>.filter-submit{grid-area:2/2/auto/3!important}.restaurant-filter-bar>.filter-reset{grid-area:2/3/auto/4!important}.restaurant-filter-bar>.filter-search,.restaurant-filter-bar>.filter-dropdown,.restaurant-filter-bar>.filter-submit,.restaurant-filter-bar>.filter-reset{width:100%!important}.filter-search,.filter-trigger,.filter-submit,.filter-reset{font-family:var(--font-sans,Inter,Manrope,system-ui,sans-serif);border-radius:14px!important;height:56px!important;min-height:56px!important}.filter-search{grid-template-rows:auto auto;align-items:center;gap:2px 10px;transition:border-color .2s,box-shadow .2s,background .2s;background:#f5f3f0f5!important;border:1px solid #b4b3ad6b!important;grid-template-columns:auto minmax(0,1fr)!important;padding:9px 18px!important;display:grid!important;box-shadow:inset 0 1px #ffffffb8!important}.filter-search>svg{color:#8a6a55;grid-area:1/1/span 2;width:17px;height:17px}.filter-search span{grid-column:2;align-self:end;color:#7a6658!important;font-size:12px!important;font-weight:650!important;line-height:1!important}.filter-search input{grid-column:2;align-self:start;width:100%;height:auto!important;min-height:0!important;box-shadow:none!important;color:#1a1a1a!important;background:0 0!important;border:0!important;padding:0!important;font-size:14px!important;font-weight:650!important;line-height:1.25!important}.filter-search input::placeholder{color:#8f8175;font-weight:600}.filter-search:focus-within,.filter-search.has-value{background:#f0ede9!important;border-color:#00000075!important;box-shadow:0 0 0 4px #b4b3ad33!important}.filter-trigger{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:2px 10px;transition:border-color .2s,background .2s,box-shadow .2s,transform .2s;background:#ddd9d4!important;border:1px solid #b4b3ad6b!important;padding:9px 16px!important;display:grid!important;box-shadow:inset 0 1px #ffffff85!important}.filter-trigger:hover{background:#efe0cb!important;border-color:#00000057!important}.filter-trigger.open,.filter-trigger.selected{background:#d5d1cc!important;border-color:#0000007a!important;box-shadow:0 0 0 4px #b4b3ad33!important}.filter-trigger span{grid-column:1;align-self:end;color:#7a6658!important;font-size:12px!important;font-weight:650!important;line-height:1!important}.filter-trigger strong{color:#1a1a1a;text-overflow:ellipsis;white-space:nowrap;grid-column:1;align-self:start;min-width:0;overflow:hidden;font-size:14px!important;font-weight:650!important;line-height:1.25!important}.filter-trigger svg{color:#7e6655;grid-area:1/2/span 2;align-self:center;transition:transform .2s;margin:0!important}.filter-trigger.open svg{transform:rotate(180deg)}.filter-dropdown.has-value:after{content:none!important;display:none!important}.filter-menu{background:#f5f3f0;border:1px solid #b4b3ad6b;border-radius:14px;margin-top:10px;padding:10px;left:0;box-shadow:0 22px 54px #00000024;width:min(320px,100vw - 36px)!important}.filter-option{color:#1a1a1a;border-radius:14px;min-height:40px;font-size:14px;font-weight:600}.filter-option:hover,.filter-option.selected{background:#ddd9d4}.filter-radio-dot{border-color:#b89472}.filter-option.selected .filter-radio-dot{background:#1a1a1a;box-shadow:inset 0 0 0 4px #f5f3f0}.filter-menu-close{color:#1a1a1a;background:#ddd9d4;border-radius:16px;min-height:42px;margin-top:8px;font-size:14px;font-weight:750}.filter-submit,.filter-reset{transition:transform .2s,background .2s,border-color .2s,box-shadow .2s;letter-spacing:0!important;justify-content:center!important;padding:0 18px!important;font-size:14px!important;font-weight:750!important}.filter-submit{color:#f0ede9!important;background:#1a1a1a!important;border:1px solid #1a1a1a!important;box-shadow:0 14px 30px #0003!important}.filter-reset{color:#1a1a1a!important;background:#f5f3f0eb!important;border:1px solid #b4b3ad8f!important}.filter-reset:hover{transform:translateY(-1px);background:#ddd9d4!important;border-color:#00000057!important}@media (max-width:980px){.restaurant-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:18px!important}.restaurant-filter-bar>.filter-search{grid-area:auto/1/auto/-1!important}.restaurant-filter-bar>.filter-dropdown,.restaurant-filter-bar>.filter-dropdown:nth-of-type(4),.restaurant-filter-bar>.filter-submit,.restaurant-filter-bar>.filter-reset{grid-area:auto!important}}@media (max-width:680px){.restaurant-filter-bar{border-radius:14px!important;grid-template-columns:1fr!important;gap:12px!important;margin:22px 0 38px!important;padding:14px!important}.restaurant-filter-bar>.filter-search,.restaurant-filter-bar>.filter-dropdown,.restaurant-filter-bar>.filter-dropdown:nth-of-type(4),.restaurant-filter-bar>.filter-submit,.restaurant-filter-bar>.filter-reset{grid-area:auto/1/auto/-1!important}.filter-search,.filter-trigger,.filter-submit,.filter-reset{border-radius:18px!important;height:54px!important;min-height:54px!important}}.visually-hidden{clip:rect(0 0 0 0)!important;white-space:nowrap!important;clip-path:inset(50%)!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.chip-slider-wrapper{margin:0 0 22px;position:relative}.chip-slider-wrapper:before,.chip-slider-wrapper:after{content:"";z-index:3;pointer-events:none;opacity:0;width:48px;transition:opacity .25s;position:absolute;top:0;bottom:0}.chip-slider-wrapper:before{background:linear-gradient(90deg,#e5ded2f2 30%,#0000);left:0}.chip-slider-wrapper:after{background:linear-gradient(270deg,#e5ded2f2 30%,#0000);right:0}.chip-slider-wrapper.has-scroll-left:before,.chip-slider-wrapper.has-scroll-right:after{opacity:1}.chip-slider-arrow{z-index:5;color:#1a1a1a;cursor:pointer;background:#fff;border:1px solid #00000014;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:box-shadow .2s,transform .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 10px #0000001a}.chip-slider-arrow:hover{transform:translateY(-50%)scale(1.06);box-shadow:0 4px 16px #00000026}.chip-slider-arrow-left{left:-4px}.chip-slider-arrow-right{right:-4px}.chip-slider-track{scroll-behavior:smooth;scrollbar-width:none;display:flex;overflow:auto hidden}.chip-slider-track::-webkit-scrollbar{display:none}.catalog-quick-row{gap:10px;padding:6px 0 4px}.catalog-quick-row::-webkit-scrollbar{display:none}:root{--accent:#c98232;--accent-dark:#b8732b;--accent-soft:#f6dfbf;--bg:#fff8ef;--muted:#6f5a4a;--line:#ead8c2;--r-card:24px;--r-btn:16px;--r-pill:999px;--sh-card:0 16px 48px #5834141a;--sh-btn:0 8px 22px #5834141f;--sh-btn-hover:0 14px 32px #5834142e;--sh-btn-active:0 4px 12px #58341414;--t-btn:background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .15s ease, opacity .15s ease}body{background:var(--bg)}.button,.ghost,.secondary-button,.small-button,.danger-button,.icon-button,.icon-only{transition:var(--t-btn);gap:10px}.button,.client-cta{border-radius:var(--r-pill);background:var(--accent);color:#fff;letter-spacing:.01em;min-height:50px;box-shadow:var(--sh-btn);border:0;padding:0 28px;font-size:15px;font-weight:700}.button:hover,.client-cta:hover{background:var(--accent-dark);box-shadow:var(--sh-btn-hover);transform:translateY(-1px)}.button:active,.client-cta:active{box-shadow:var(--sh-btn-active);background:#9c6120;transform:translateY(0)scale(.98)}.button:disabled,.button[disabled],.client-cta:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;pointer-events:none;transform:none}.ghost,.secondary-button{border:1px solid var(--line);border-radius:var(--r-pill);color:#2a1d16;background:#fff8eff0;min-height:46px;padding:0 22px;font-weight:650;box-shadow:0 4px 14px #58341412}.ghost:active,.secondary-button:active{box-shadow:var(--sh-btn-active);background:#f0d5a0;transform:translateY(0)scale(.98)}.small-button{border:1px solid var(--line);border-radius:var(--r-pill);color:#2a1d16;background:#fff8efeb;min-height:38px;padding:0 16px;font-size:13px;font-weight:650;box-shadow:0 3px 10px #5834140f}.danger-button{border-radius:var(--r-pill);background:var(--danger,#b54040);color:#fff;border:0;min-height:46px;padding:0 22px;font-weight:700;box-shadow:0 8px 20px #b5404033}.icon-button,.icon-only{border:1px solid var(--line);border-radius:var(--r-btn);background:#fff8efeb;width:42px;min-width:42px;min-height:42px;padding:0;box-shadow:0 3px 10px #58341412}.restaurant-card-book-button{border-radius:var(--r-btn);background:var(--accent);color:#fff;letter-spacing:.01em;min-height:52px;box-shadow:var(--sh-btn);transition:var(--t-btn);border:0;padding:0 24px;font-size:15px;font-weight:700}.restaurant-card-title-block p,.restaurant-card-info{color:#6f5a4a}.catalog-quick-row a,.quick-filter-row a{border-radius:var(--r-pill);border:1px solid var(--line);color:#2a1d16;background:#fff8eff2;gap:7px;min-height:38px;padding:0 18px;font-size:13px;font-weight:650;transition:background .16s,transform .16s,box-shadow .16s,border-color .16s;box-shadow:0 1px 2px #5834140f}.catalog-quick-row a:hover,.quick-filter-row a:hover{background:var(--accent-soft);border-color:#c982325c;transform:translateY(-1px);box-shadow:0 6px 16px #5834141f}.catalog-quick-row a.active,.quick-filter-row a.active{background:var(--accent);color:#fff;border-color:#0000;box-shadow:0 8px 20px #58341438}.panel,.auth-panel,.pricing-card,.metric-card{border-color:var(--line);box-shadow:var(--sh-card);background:#fff}input,select,textarea{border-color:var(--line)}.filter-submit:hover{transform:translateY(-1px);background:var(--accent-dark)!important;box-shadow:var(--sh-btn-hover)!important}.public-header .main-nav a:hover{background:var(--accent);color:#fff;border-color:#0000;box-shadow:0 8px 20px #5834142e}.catalog-section h2{color:#2a1d16}.show-all-link{border-radius:var(--r-pill)}@media (max-width:680px){.button,.client-cta{min-height:48px;padding:0 22px}.restaurant-card-book-button{min-height:48px;padding:0 20px}.ghost,.secondary-button{min-height:44px;padding:0 18px}.small-button{min-height:36px;padding:0 14px}}@media (prefers-reduced-motion:reduce){.button,.ghost,.secondary-button,.small-button,.danger-button,.icon-button,.icon-only,.restaurant-card-book-button{transition:none}}.catalog-quick-row a{color:#1a1a1a;letter-spacing:0;min-height:34px;box-shadow:none;background:#ddd9d4;border:1px solid #b4b3ad80;border-radius:999px;gap:6px;padding:0 16px;font-size:13px;font-weight:750;transition:background .2s,border-color .2s,color .2s,transform .2s}.catalog-quick-row a svg{opacity:.55;flex-shrink:0}.catalog-quick-row a:hover svg,.catalog-quick-row a.active svg{opacity:1}.catalog-quick-row a:hover,.catalog-quick-row a.active{color:#f0ede9;background:#1a1a1a;border-color:#1a1a1a;transform:translateY(-1px)}.catalog-page .restaurant-showcase{border-radius:14px;min-height:clamp(300px,34vw,390px);margin-bottom:20px}.catalog-page .showcase-content{min-height:clamp(300px,34vw,390px);padding:clamp(24px,4vw,44px)}.catalog-filter-strip{z-index:5;align-items:center;gap:10px;margin:0 0 48px;padding:0;display:flex;position:relative;overflow:visible}.catalog-filter-chip{flex:none;position:relative}.catalog-filter-chip.has-value:after{content:none!important;display:none!important}.catalog-filter-chip .catalog-filter-trigger{font-family:var(--font-sans,Inter,Manrope,system-ui,sans-serif);transition:background .2s,border-color .2s,color .2s,transform .2s;color:#1a1a1a!important;width:auto!important;height:38px!important;min-height:38px!important;box-shadow:none!important;background:#e8e6e3!important;border:1px solid #2c211814!important;border-radius:999px!important;grid-template-rows:none!important;grid-template-columns:none!important;justify-content:center!important;align-items:center!important;gap:8px!important;padding:0 15px!important;display:inline-flex!important}.catalog-filter-chip .catalog-filter-trigger span{white-space:nowrap;height:auto!important;color:inherit!important;text-align:center!important;grid-area:auto!important;justify-content:center!important;align-self:center!important;align-items:center!important;margin:0!important;padding:0!important;font-size:13px!important;font-weight:750!important;line-height:1!important;display:inline-flex!important;position:static!important;transform:none!important}.catalog-filter-chip .catalog-filter-trigger svg{color:currentColor;opacity:.78;flex:none;width:14px;height:14px;transform:none;grid-area:auto!important;align-self:center!important;margin:0!important;position:static!important}.catalog-filter-chip .catalog-filter-trigger:hover{transform:translateY(-1px);background:#ddd8d0!important;border-color:#0003!important}.catalog-filter-chip .catalog-filter-trigger.open,.catalog-filter-chip .catalog-filter-trigger.selected{color:#f0ede9!important;background:#1a1a1a!important;border-color:#00000061!important;box-shadow:0 10px 24px #00000024!important}.catalog-filter-chip .catalog-filter-trigger.open svg{transform:rotate(180deg)}.catalog-filter-chip .catalog-filter-menu{background:#f5f3f0;border:1px solid #b4b3ad73;border-radius:14px;max-height:min(420px,70vh);padding:10px;top:calc(100% + 10px);left:0;overflow:auto;box-shadow:0 26px 60px #2c211829;width:min(300px,100vw - 32px)!important}.catalog-filter-reset{color:#1a1a1a;background:#f5f3f0;border:1px solid #b4b3ad8c;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:7px;height:38px;padding:0 14px;font-size:13px;font-weight:750;transition:background .2s,border-color .2s,transform .2s;display:inline-flex}.catalog-filter-reset:hover{background:#ddd9d4;border-color:#00000047;transform:translateY(-1px)}.catalog-page .catalog-section{margin:42px 0 58px}.catalog-page .section-heading{align-items:center}.catalog-page .section-heading h2{font-family:var(--font-serif,Georgia,serif);font-size:clamp(30px,3.2vw,46px);line-height:1}.catalog-page .show-all-link{color:#1a1a1a;background:#f5f3f0;border-radius:999px;height:38px;min-height:38px;padding:0 15px}@media (max-width:980px){.catalog-filter-strip{flex-wrap:wrap;margin-bottom:40px}.catalog-filter-chip .catalog-filter-trigger,.catalog-filter-reset{height:40px!important;min-height:40px!important}}@media (max-width:680px){.catalog-page{padding-top:18px}.catalog-quick-row,.catalog-filter-strip{scrollbar-width:none;flex-wrap:nowrap;margin-right:-10px;padding-right:10px;overflow-x:auto}.catalog-filter-strip::-webkit-scrollbar{display:none}.catalog-page .restaurant-showcase{border-radius:14px;min-height:330px}.catalog-page .showcase-content{min-height:330px}}.profile-gallery.enhanced-gallery{align-items:stretch;width:100%;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:auto!important;gap:18px!important;display:grid!important}.profile-gallery.enhanced-gallery.gallery-count-1{grid-template-columns:minmax(0,1fr)!important}.profile-gallery.enhanced-gallery.gallery-count-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}.profile-gallery.enhanced-gallery .gallery-item,.profile-gallery.enhanced-gallery .gallery-item:first-child{cursor:pointer;min-width:0;transition:transform .22s,box-shadow .22s,filter .22s;transform:translateZ(0);aspect-ratio:4/3!important;background:#efe4d5!important;border:0!important;border-radius:14px!important;grid-area:auto!important;width:100%!important;min-height:0!important;padding:0!important;display:block!important;position:relative!important;overflow:hidden!important;box-shadow:0 18px 44px #0000001a!important}.profile-gallery.enhanced-gallery.gallery-count-1 .gallery-item{aspect-ratio:16/7!important}.profile-gallery.enhanced-gallery .gallery-item:hover{filter:saturate(1.03);transform:translateY(-2px);box-shadow:0 24px 62px #00000029!important}.profile-gallery.enhanced-gallery .gallery-item img{transition:transform .35s;object-fit:cover!important;width:100%!important;height:100%!important}.profile-gallery.enhanced-gallery .gallery-item:hover img{transform:scale(1.035)}@media (max-width:980px){.profile-gallery.enhanced-gallery,.profile-gallery.enhanced-gallery.gallery-count-3,.profile-gallery.enhanced-gallery.gallery-count-4,.profile-gallery.enhanced-gallery.gallery-count-5,.profile-gallery.enhanced-gallery.gallery-count-6{grid-template-columns:repeat(2,minmax(0,1fr))!important}.profile-gallery.enhanced-gallery.gallery-count-1{grid-template-columns:minmax(0,1fr)!important}}@media (max-width:680px){.profile-gallery.enhanced-gallery,.profile-gallery.enhanced-gallery.gallery-count-1,.profile-gallery.enhanced-gallery.gallery-count-2,.profile-gallery.enhanced-gallery.gallery-count-3,.profile-gallery.enhanced-gallery.gallery-count-4,.profile-gallery.enhanced-gallery.gallery-count-5,.profile-gallery.enhanced-gallery.gallery-count-6{grid-template-columns:1fr!important;gap:14px!important}.profile-gallery.enhanced-gallery .gallery-item,.profile-gallery.enhanced-gallery .gallery-item:first-child,.profile-gallery.enhanced-gallery.gallery-count-1 .gallery-item{aspect-ratio:16/10!important;border-radius:18px!important}}.profile-section,.profile-main,.restaurant-profile-content.single-column{min-width:0}.profile-section>p,.profile-hero-content p,.review-card p,.dish-card p{overflow-wrap:anywhere}.gallery-lightbox{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1200!important;background:#1f1a16c7!important;place-items:center!important;padding:32px!important;display:grid!important;position:fixed!important;inset:0!important}.lightbox-image{background:#17110d!important;border-radius:14px!important;width:min(1120px,92vw)!important;height:min(76vh,760px)!important;position:relative!important;overflow:hidden!important;box-shadow:0 32px 90px #00000075!important}.lightbox-image img{object-fit:contain!important}.lightbox-close,.lightbox-arrow{color:#3a261c!important;background:#e5ded2f0!important;border:1px solid #fff3!important;box-shadow:0 18px 45px #0000003d!important}.lightbox-close{z-index:1202!important;border-radius:999px!important;place-items:center!important;width:46px!important;height:46px!important;display:grid!important;position:fixed!important;top:22px!important;right:22px!important}.lightbox-arrow{transform:translateY(-50%);z-index:1202!important;border-radius:999px!important;place-items:center!important;width:52px!important;height:52px!important;display:grid!important;position:fixed!important;top:50%!important}.lightbox-arrow.left{left:24px!important}.lightbox-arrow.right{right:24px!important}.reservation-success-modal{z-index:1150;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#261b148f;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.reservation-success-card{color:#1a1a1a;background:linear-gradient(145deg,#f5f3f0,#edebe7);border:1px solid #b4b3ad9e;border-radius:14px;gap:18px;width:min(720px,100%);max-height:min(92vh,860px);padding:30px;display:grid;position:relative;overflow:auto;box-shadow:0 36px 110px #38241847}.reservation-success-card h2{color:#1a1a1a;max-width:620px;margin:0;font-size:clamp(28px,4vw,44px);line-height:1.02}.success-modal-icon{color:#4f7a53;filter:drop-shadow(0 10px 18px #4f7a5338)}.modal-close-button{color:#1a1a1a;background:#f5f3f0;border:1px solid #6a4a3324;border-radius:999px;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:18px;right:18px}.success-summary-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.success-summary-list div,.success-flow-panel,.deposit-next-step,.guest-payment-line{background:#ffffffb8;border:1px solid #b4b3ad8c;border-radius:18px}.success-summary-list div{gap:4px;padding:14px;display:grid}.success-summary-list dt{color:#8a7563;text-transform:uppercase;font-size:12px;font-weight:600}.success-summary-list dd{color:#1a1a1a;margin:0;font-weight:600}.reservation-qr-card{background:radial-gradient(circle at 84% 18%,#b4b3ad42,#0000 34%),linear-gradient(145deg,#f5f3f0f0,#f6ece0db);border:1px solid #b4b3ad99;border-radius:14px;grid-template-columns:minmax(0,1fr) 138px;align-items:center;gap:16px;padding:16px;display:grid;box-shadow:0 18px 46px #4a33221a}.reservation-qr-copy{align-items:flex-start;gap:12px;min-width:0;display:flex}.reservation-qr-icon{color:#1a1a1a;background:#f5f3f0;border:1px solid #b4b3ad94;border-radius:14px;flex:none;place-items:center;width:38px;height:38px;display:grid}.reservation-qr-copy strong{color:#1a1a1a;font-size:17px;font-weight:700;display:block}.reservation-qr-copy p{color:#7a756f;max-width:460px;margin:5px 0 0;font-size:14px;line-height:1.45}.reservation-qr-image-wrap{aspect-ratio:1;background:#f5f3f0;border:1px solid #b4b3ad85;border-radius:18px;place-items:center;width:138px;padding:8px;display:grid;box-shadow:0 12px 28px #4a332214}.reservation-qr-image-button{appearance:none;color:inherit;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s;position:relative}.reservation-qr-image-button:hover{border-color:#00000052;transform:translateY(-2px)scale(1.02);box-shadow:0 18px 38px #4a332224}.reservation-qr-image-button:focus-visible{outline-offset:3px;outline:3px solid #00000038}.reservation-qr-zoom-hint{color:#f5f3f0;opacity:0;pointer-events:none;background:#2c2118c7;border-radius:999px;align-items:center;gap:5px;padding:5px 9px;font-size:11px;font-weight:700;transition:opacity .2s,transform .2s;display:inline-flex;position:absolute;bottom:8px;left:50%;transform:translate(-50%,4px)}.reservation-qr-image-button:hover .reservation-qr-zoom-hint,.reservation-qr-image-button:focus-visible .reservation-qr-zoom-hint{opacity:1;transform:translate(-50%)}.reservation-qr-image-wrap img{object-fit:contain;width:100%;height:100%;display:block}.reservation-qr-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:10px;display:flex}.reservation-qr-open,.reservation-qr-download{border-radius:999px;min-height:40px;padding:0 16px;font-size:13px;text-decoration:none}.reservation-qr-card.compact{border-radius:14px;grid-template-columns:minmax(0,1fr) 96px;gap:12px;padding:13px}.reservation-qr-card.compact .reservation-qr-image-wrap{border-radius:14px;width:96px}.reservation-qr-card.compact .reservation-qr-copy p{max-width:none}.reservation-qr-modal{z-index:1300;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#261b14a3;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.reservation-qr-modal-card{background:radial-gradient(circle at 85% 12%,#b4b3ad47,#0000 34%),linear-gradient(145deg,#f5f3f0,#f8efe5);border:1px solid #e2d1bdd1;border-radius:14px;gap:18px;width:min(560px,100%);max-height:min(92vh,760px);padding:28px;display:grid;position:relative;overflow:auto;box-shadow:0 34px 90px #1c140e57}.qr-modal-close{z-index:2;position:absolute;top:18px;right:18px}.reservation-qr-modal-head{gap:14px;padding-right:44px;display:flex}.reservation-qr-modal-head h2{color:#1a1a1a;font-family:var(--font-serif),Georgia,serif;margin:0;font-size:clamp(28px,4vw,42px);line-height:1}.reservation-qr-modal-head p{color:#7a756f;max-width:420px;margin:8px 0 0;font-size:15px;line-height:1.45}.reservation-qr-modal-image{aspect-ratio:1;background:#f5f3f0;border:1px solid #b4b3adad;border-radius:14px;justify-self:center;place-items:center;width:min(420px,100%);padding:16px;display:grid;box-shadow:0 18px 42px #4a33221f}.reservation-qr-modal-image img{object-fit:contain;width:100%;height:100%;display:block}.reservation-qr-modal-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.reservation-qr-modal-actions .button,.reservation-qr-modal-actions .secondary-button{border-radius:999px;min-width:150px;min-height:44px}.deposit-next-step{background:#fff3e4;gap:10px;padding:16px;display:grid}.deposit-next-step small{color:#7a756f;line-height:1.45}.success-flow-panel{color:#36563c;background:#f1f6ea;gap:6px;padding:16px;display:grid}.success-flow-panel strong{font-size:17px}.success-modal-actions{grid-template-columns:1.2fr 1fr;gap:10px;display:grid}.success-modal-actions .full{width:100%;min-height:48px}.success-modal-actions .full:only-child{grid-column:1/-1}.guest-login-page,.guest-reservations-page{width:min(1120px,100% - 32px);margin:0 auto;padding:58px 0 80px}.guest-login-page{align-content:center;justify-items:center;min-height:calc(100dvh - 80px);padding:24px 16px;display:grid}.guest-login-card{background:linear-gradient(145deg,#f5f3f0,#f5eadc);border:1px solid #b4b3ad8c;border-radius:14px;gap:14px;width:min(440px,100%);padding:28px 28px 24px;display:grid;position:relative;box-shadow:0 20px 60px #0000001a}.guest-login-icon{color:#1a1a1a;background:#d5d1cc;border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.guest-login-card .eyebrow{margin:0;font-size:11px}.guest-login-card h1,.guest-reservations-hero h1{color:#1a1a1a;margin:0;line-height:.98}.guest-login-card h1{font-size:clamp(26px,4vw,34px)}.guest-reservations-hero h1{font-size:clamp(34px,5vw,58px)}.guest-login-card>p{color:#7a756f;margin:0;font-size:14px;line-height:1.5}.guest-reservations-hero p{color:#7a756f;margin:0;line-height:1.55}.guest-login-form{gap:10px;display:grid}.guest-login-form label{gap:6px;font-size:13px;font-weight:600;display:grid}.guest-vkid-panel{background:linear-gradient(135deg,#fff7ee,#efe0cf);border:1px solid #00000024;border-radius:18px;gap:10px;padding:14px 16px;display:grid;box-shadow:0 8px 24px #00000012}.guest-vkid-panel strong,.guest-vkid-panel span{display:block}.guest-vkid-panel strong{color:#1a1a1a;font-size:15px;font-weight:700}.guest-vkid-panel span{color:#7a756f;margin-top:3px;font-size:13px;line-height:1.4}.guest-demo-code{color:#1a1a1a;background:#edebe7;border-radius:16px;padding:12px 14px}.guest-messenger-panel{background:linear-gradient(135deg,#f5f3f0f5,#f6eee2e0);border:1px solid #0000001f;border-radius:18px;gap:10px;padding:14px 16px;display:grid;box-shadow:0 6px 20px #0000000d}.guest-messenger-copy{align-items:flex-start;gap:10px;min-width:0;display:flex}.guest-messenger-copy>svg{color:#1a1a1a;background:#b4b3ad2e;border:1px solid #00000024;border-radius:12px;flex:none;width:34px;height:34px;padding:8px}.guest-messenger-copy strong,.guest-messenger-copy span,.guest-messenger-copy small{display:block}.guest-messenger-copy strong{color:#1a1a1a;font-size:14px;font-weight:700}.guest-messenger-copy span{color:#7a756f;margin-top:3px;font-size:13px;line-height:1.4}.guest-messenger-copy small{color:#1a1a1a;overflow-wrap:anywhere;margin-top:6px;font-size:12px;font-weight:600;line-height:1.35}.guest-messenger-actions{flex-wrap:wrap;gap:8px;display:flex}.messenger-code-form{gap:8px;display:grid}.messenger-code-form input,.verification-code-field input{color:#1a1a1a;letter-spacing:.18em;text-align:center;background:#f5f3f0;border:1px solid #0003;border-radius:16px;height:48px;font-size:20px;font-weight:700;box-shadow:inset 0 1px #ffffffbf}.messenger-code-form input:focus,.verification-code-field input:focus{border-color:#00000094;outline:none;box-shadow:0 0 0 4px #00000024}.guest-messenger-confirmed{background:linear-gradient(135deg,#f1faeef5,#f7f2e7e6);border-color:#00000042}.guest-messenger-expired,.guest-messenger-failed{background:linear-gradient(135deg,#fff7f3f5,#f7ece4e0);border-color:#00000038}.guest-reservations-hero{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.guest-reservations-hero>div:first-child{max-width:720px}.guest-account-chip{color:#1a1a1a;white-space:nowrap;background:#f5f3f0;border:1px solid #b4b3adb3;border-radius:999px;align-items:center;gap:10px;padding:10px 12px;font-weight:600;display:flex}.guest-reservation-grid{gap:18px;display:grid}.guest-reservation-tools{background:#e5ded2c7;border:1px solid #b4b3ada3;border-radius:14px;gap:14px;margin:0 0 20px;padding:16px;display:grid;box-shadow:0 14px 38px #0000000f}.guest-reservation-tabs{flex-wrap:wrap;gap:10px;display:flex}.guest-reservation-tabs a{color:#1a1a1a;background:#f5f3f0;border:1px solid #b4b3adc2;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-weight:600;text-decoration:none;transition:background .18s,border-color .18s,color .18s,transform .18s;display:inline-flex}.guest-reservation-tabs a:hover{background:#f8eadc;border-color:#00000057;transform:translateY(-1px)}.guest-reservation-tabs a.is-active{color:#f5f3f0;background:#1a1a1a;border-color:#000000ad}.guest-reservation-tabs span{min-width:24px;height:24px;color:inherit;background:#ffffff9e;border-radius:999px;justify-content:center;align-items:center;padding:0 7px;font-size:12px;font-weight:700;display:inline-flex}.guest-reservation-date-filter{grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) auto auto;align-items:end;gap:10px;display:grid}.guest-reservation-date-filter label{color:#1a1a1a;gap:7px;font-size:12px;font-weight:600;display:grid}.guest-reservation-date-filter input{color:#1a1a1a;width:100%;min-width:0;height:44px;font:inherit;background:#fffdfa;border:1px solid #b4b3adc7;border-radius:16px;outline:none;padding:0 12px;font-size:14px;font-weight:750;transition:border-color .18s,box-shadow .18s,background .18s}.guest-reservation-date-filter input:focus{background:#f5f3f0;border-color:#00000094;box-shadow:0 0 0 4px #0000001a}.guest-reservation-date-filter .small-button{white-space:nowrap;border-radius:16px;justify-content:center;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.guest-reservation-card,.guest-empty-state{background:#e5ded2e6;border:1px solid #b4b3adb3;border-radius:14px;gap:16px;padding:22px;display:grid;box-shadow:0 18px 52px #00000014}.guest-reservation-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.guest-reservation-head h2{margin:0 0 8px;font-size:28px}.guest-reservation-restaurant-title{color:inherit;cursor:pointer;text-underline-offset:5px;text-decoration:none;text-decoration-thickness:2px;transition:color .16s,text-decoration-color .16s}.guest-reservation-restaurant-title:hover{color:#7d4434;text-decoration:underline}.guest-reservation-restaurant-title:focus-visible{outline-offset:4px;border-radius:8px;outline:2px solid #000000b8}.guest-reservation-head p,.guest-reservation-facts span{color:#7a756f;align-items:center;gap:6px;margin:0;display:inline-flex}.guest-reservation-facts{flex-wrap:wrap;gap:10px;display:flex}.guest-reservation-facts span{background:#ddd9d4;border-radius:999px;min-height:34px;padding:0 12px;font-weight:700}.guest-payment-line{justify-content:space-between;gap:12px;padding:13px 14px;display:flex}.guest-reservation-actions{flex-wrap:wrap;gap:10px;display:flex}.guest-empty-state{text-align:center;justify-items:center;padding:42px 24px}@media (max-width:760px){.gallery-lightbox{padding:16px!important}.lightbox-image{border-radius:18px!important;width:96vw!important;height:72vh!important}.lightbox-arrow{width:44px!important;height:44px!important}.lightbox-arrow.left{left:10px!important}.lightbox-arrow.right{right:10px!important}.success-summary-list,.success-modal-actions{grid-template-columns:1fr}.reservation-success-card{border-radius:14px;padding:24px 18px}.reservation-qr-card,.reservation-qr-card.compact{grid-template-columns:1fr}.reservation-qr-image-wrap,.reservation-qr-card.compact .reservation-qr-image-wrap{justify-self:center;width:min(180px,100%)}.reservation-qr-actions,.reservation-qr-modal-actions{grid-template-columns:1fr;display:grid}.reservation-qr-open,.reservation-qr-download{justify-content:center;width:100%}.reservation-qr-modal{padding:14px}.reservation-qr-modal-card{border-radius:14px;gap:16px;padding:22px 16px 18px}.reservation-qr-modal-head{padding-right:38px}.reservation-qr-modal-image{border-radius:14px;width:min(340px,100%);padding:12px}.guest-reservations-hero,.guest-reservation-head{display:grid}.guest-reservation-date-filter{grid-template-columns:1fr}.guest-reservation-date-filter .small-button{width:100%}.guest-account-chip{white-space:normal;border-radius:14px}}.home-banner-slider,.catalog-page .restaurant-showcase.home-banner-slider{contain:layout paint;height:clamp(420px,42vw,560px)!important;min-height:0!important;overflow:hidden!important}.home-banner-slider .showcase-content.banner-content-stack{pointer-events:none;z-index:3!important;width:100%!important;min-height:0!important;padding:0!important;animation:none!important;display:block!important;position:absolute!important;inset:0!important}.home-banner-slider .banner-copy{color:#f0ede9;opacity:0;pointer-events:none;grid-template-rows:auto 204px 54px auto 50px;align-content:start;gap:14px;width:min(640px,100% - 172px);transition:opacity .72s cubic-bezier(.22,1,.36,1);display:grid;position:absolute;top:clamp(42px,6vw,76px);left:clamp(46px,6vw,82px);transform:none}.home-banner-slider .banner-copy.active{opacity:1;pointer-events:auto;transform:none}.home-banner-slider .banner-copy span:first-child{place-self:start}.home-banner-slider .banner-copy h2{text-wrap:balance;align-items:flex-end;max-width:640px;height:204px;min-height:204px;margin:0;font-size:clamp(44px,5.2vw,76px);line-height:.94;display:flex;overflow:hidden}.home-banner-slider .banner-copy p{max-width:600px;height:54px;min-height:54px;margin:0;font-size:clamp(16px,1.5vw,19px);line-height:1.45;overflow:hidden}.home-banner-slider .banner-copy .button{place-self:start;width:max-content;min-height:48px}.home-banner-slider:hover .banner-slide.active{transform:scale(1.018)translate(0)!important}.banner-live-region{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.reservation-confirm-page{place-items:start center;width:min(920px,100% - 32px);min-height:calc(100vh - 92px);margin:0 auto;padding:52px 0 84px;display:grid}.reservation-pass-card{background:linear-gradient(145deg,#f5f3f0,#edebe7);border:1px solid #b4b3ada8;border-radius:14px;gap:22px;width:100%;padding:32px;display:grid;position:relative;box-shadow:0 32px 90px #4a332224}.reservation-pass-topline,.reservation-pass-header,.reservation-pass-footer{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.reservation-pass-topline .eyebrow{margin:0}.reservation-pass-header h1{color:#1a1a1a;text-wrap:balance;max-width:650px;margin:0;font-size:clamp(38px,6vw,68px);line-height:.96}.reservation-pass-header p{color:#7a756f;align-items:center;gap:8px;margin:12px 0 0;font-weight:750;display:inline-flex}.reservation-pass-status{color:#5f3a2e;text-align:center;white-space:nowrap;background:#ddd9d4;border:1px solid #b4b3ad9e;border-radius:999px;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.reservation-pass-status svg{color:#4f7a53}.reservation-pass-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.reservation-pass-fact{background:#ffffffa8;border:1px solid #b4b3ad94;border-radius:18px;align-content:space-between;gap:10px;min-height:118px;padding:16px;display:grid}.reservation-pass-fact svg{color:#1a1a1a}.reservation-pass-fact strong{color:#1a1a1a;overflow-wrap:anywhere;min-width:0;font-size:clamp(18px,2vw,24px);line-height:1.08}.reservation-pass-fact span{color:#8a7563;font-size:13px;font-weight:750}.reservation-pass-note{border:1px solid #b4b3ad9e;border-radius:14px;gap:10px;padding:18px;line-height:1.5;display:grid}.reservation-pass-note strong{color:#1a1a1a;font-size:17px}.reservation-pass-note span{color:#6f5d4d}.reservation-pass-note.success{background:#f1f7ed;border-color:#4f7a5340}.reservation-pass-note.warning{background:#fff3e4;border-color:#c27a3847}.reservation-pass-note .button.full{width:max-content;min-height:48px;margin-top:4px}.reservation-pass-actions{flex-wrap:wrap;gap:12px;display:flex}.reservation-pass-actions form{margin:0}.reservation-pass-actions .button,.reservation-pass-actions .secondary-button,.reservation-pass-footer .small-button,.reservation-pass-footer .ghost{border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}.reservation-pass-actions .secondary-button,.reservation-pass-footer .small-button,.reservation-pass-footer .ghost{color:#5f3a2e;background:#f5f3f0;border:1px solid #b4b3ada6}.reservation-pass-footer{border-top:1px solid #b4b3ad6b;padding-top:18px}@media (max-width:820px){.home-banner-slider,.catalog-page .restaurant-showcase.home-banner-slider{height:430px!important}.home-banner-slider .banner-copy{grid-template-rows:auto 150px 66px auto 48px;width:calc(100% - 56px);top:30px;left:28px}.home-banner-slider .banner-copy h2{height:150px;min-height:150px;font-size:clamp(38px,11vw,58px)}.home-banner-slider .banner-copy p{height:66px;min-height:66px}.reservation-confirm-page{width:min(100% - 24px,920px);padding:28px 0 64px}.reservation-pass-card{border-radius:14px;padding:22px}.reservation-pass-header,.reservation-pass-topline,.reservation-pass-footer{display:grid}.reservation-pass-status{white-space:normal;justify-self:start}.reservation-pass-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.home-banner-slider,.catalog-page .restaurant-showcase.home-banner-slider{height:390px!important}.home-banner-slider .banner-copy{grid-template-rows:auto 132px 70px auto 46px;gap:12px;width:calc(100% - 44px);top:24px;left:22px}.home-banner-slider .banner-copy h2{height:132px;min-height:132px}.home-banner-slider .banner-copy .showcase-meta{gap:8px;display:grid}.banner-dots{bottom:14px!important;right:16px!important}.reservation-pass-grid{grid-template-columns:1fr}.reservation-pass-actions .button,.reservation-pass-actions .secondary-button,.reservation-pass-footer .small-button,.reservation-pass-footer .ghost,.reservation-pass-note .button.full{width:100%}}.menu-manager .panel{align-self:start}.category-create-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-bottom:16px;display:grid}.menu-add-category-button{border-radius:18px;min-width:132px;min-height:48px}.weight-field{grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:10px;display:grid}.weight-field input,.weight-field select{min-height:48px}.weight-field select{text-align:center;font-weight:600}.menu-manager .stack-form input,.menu-manager .stack-form select,.menu-manager .stack-form textarea,.category-create-form input{border-radius:16px}@media (max-width:680px){.category-create-form,.weight-field{grid-template-columns:1fr}.menu-add-category-button{width:100%}}.owner-reservation-panel{gap:18px;display:grid}.owner-reservation-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.owner-reservation-head h2{margin:0}.owner-reservation-head p{margin-top:6px}.reservation-filter-chips{flex-wrap:wrap;gap:10px;display:flex}.reservation-filter-chips a{color:#4b3528;background:#f0ede9;border:1px solid #0000002e;border-radius:999px;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-size:14px;font-weight:600;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s;display:inline-flex}.reservation-filter-chips a:hover,.reservation-filter-chips a.active{color:#fff;background:#1a1a1a;border-color:#0000006b;transform:translateY(-1px);box-shadow:0 12px 28px #54332629}.reservation-filter-chips a span{color:#1a1a1a;background:#ffffffb3;border-radius:999px;place-items:center;min-width:24px;height:24px;padding:0 7px;font-size:12px;display:inline-grid}.reservation-filter-chips a.active span,.reservation-filter-chips a:hover span{color:#fff;background:#ffffff38}.owner-reservation-filters{background:#f5f3f0;border:1px solid #00000024;border-radius:14px;grid-template-columns:minmax(220px,280px) 190px auto;align-items:end;gap:12px;padding:14px;display:grid}.reservation-search-area{gap:10px;display:grid}.reservation-search-field{gap:8px;display:grid}.reservation-search-input{background:#f5f3f0;border:1px solid #0000002e;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;padding:0 14px;transition:border-color .18s,box-shadow .18s;display:grid;box-shadow:0 14px 32px #0000000f}.reservation-search-input:focus-within{border-color:#00000073;box-shadow:0 0 0 4px #0000001a,0 14px 32px #00000014}.reservation-search-input svg{color:#8a6a55}.reservation-search-input input{background:0 0;border:0;border-radius:0;min-height:50px;padding:0;font-size:15px;box-shadow:none!important}.reservation-search-input input::-webkit-search-cancel-button{display:none}.reservation-search-input button{color:#1a1a1a;background:#edebe7;border:1px solid #00000024;border-radius:999px;place-items:center;width:32px;min-width:32px;height:32px;min-height:32px;display:inline-grid}.reservation-search-empty{gap:4px;display:grid}.reservation-search-empty strong{color:#1a1a1a}.reservation-search-empty p{margin:0}.owner-reservation-filters .button{border-radius:16px;min-height:46px}.owner-reservation-list{gap:14px;display:grid}.reservation-card{background:#f5f3f0;border:1px solid #00000024;border-left:6px solid #d4bfa8;border-radius:14px;gap:14px;padding:18px;display:grid;box-shadow:0 18px 45px #00000014}.reservation-card.needs-action{background:linear-gradient(135deg,#f5f3f0 0%,#fff6ea 100%);border-left-color:#b66b45}.reservation-card.status-confirmed,.reservation-card.status-confirmed-by-guest,.reservation-card.status-confirmed-by-restaurant,.reservation-card.status-deposit-paid,.reservation-card.status-seated{border-left-color:#6f9b72}.reservation-card.status-cancelled,.reservation-card.status-cancelled-by-guest,.reservation-card.status-cancelled-by-restaurant,.reservation-card.status-rejected,.reservation-card.status-no-show,.reservation-card.status-payment-expired{border-left-color:#b85c50}.reservation-card.payment-awaiting-external-payment{border-left-color:#d49a43}.reservation-card-top,.reservation-card-footer{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.reservation-card-top h3{margin:6px 0 0;font-size:22px}.reservation-card-top p,.reservation-card-note,.reservation-card-comment{color:#77685d;margin:6px 0 0;line-height:1.45}.reservation-action-label{color:#1a1a1a;text-transform:uppercase;background:#efe0cf;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.reservation-meta-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.reservation-meta-grid div{background:#fff8ef;border:1px solid #0000001f;border-radius:16px;gap:5px;padding:12px;display:grid}.reservation-meta-grid span{color:#8a7a6e;font-size:12px;font-weight:600}.reservation-meta-grid strong{color:#1a1a1a;font-size:14px;line-height:1.35}.reservation-card-comment{color:#4b3528;background:#edebe7;border-radius:16px;padding:12px 14px}.reservation-card-links,.reservation-actions{flex-wrap:wrap;gap:8px;display:flex}@media (max-width:980px){.owner-reservation-filters,.reservation-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.owner-reservation-head,.reservation-card-top,.reservation-card-footer{display:grid}.owner-reservation-filters,.reservation-meta-grid{grid-template-columns:1fr}}.catalog-filter-strip{align-items:center;gap:12px!important}.catalog-search-field{color:#1a1a1a;background:#f5f3f0;border:1px solid #00000029;border-radius:999px;flex:320px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;max-width:420px;min-height:42px;padding:0 14px;display:grid;box-shadow:0 12px 30px #0000000f}.catalog-search-field:focus-within{border-color:#0000006b;box-shadow:0 0 0 4px #0000001a,0 12px 30px #00000014}.catalog-search-field input{background:0 0;border:0;border-radius:0;min-height:40px;padding:0;font-size:14px;font-weight:700;box-shadow:none!important}.catalog-search-field input::-webkit-search-cancel-button{display:none}.catalog-search-field button{color:#1a1a1a;background:#f5eadc;border:1px solid #0000001f;border-radius:999px;place-items:center;width:28px;min-width:28px;height:28px;min-height:28px;display:inline-grid}.catalog-empty-state strong{color:#1a1a1a;font-size:18px}.restaurant-admin-list{gap:10px;display:grid}.restaurant-admin-row{background:#f5f3f0;border:1px solid #0000001f;border-radius:14px;grid-template-columns:minmax(260px,1fr) 130px 90px 90px minmax(330px,auto);align-items:center;gap:14px;padding:16px;display:grid;box-shadow:0 14px 32px #0000000d}.restaurant-admin-list.compact .restaurant-admin-row{grid-template-columns:minmax(240px,1fr) 130px minmax(260px,auto)}.restaurant-admin-main{gap:5px;min-width:0;display:grid}.restaurant-admin-main strong{color:#1a1a1a;font-size:18px}.restaurant-admin-main span,.restaurant-admin-stat span{color:#7a756f;font-size:13px}.restaurant-admin-link{color:inherit;border-radius:16px;text-decoration:none;transition:color .18s,background .18s,transform .18s}.restaurant-admin-link:hover{color:#1a1a1a;background:#fbf2e7;transform:translateY(-1px)}.restaurant-admin-link:hover strong{text-underline-offset:4px;color:#1a1a1a;text-decoration:underline;text-decoration-thickness:1px}.restaurant-admin-stat{justify-items:start;gap:2px;display:grid}.restaurant-admin-stat strong{color:#1a1a1a;font-size:20px}.restaurant-admin-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.owner-guest-filters{grid-template-columns:minmax(280px,1fr) auto}.guest-table{gap:10px;display:grid}.guest-row{background:#f5f3f0;border:1px solid #0000001f;border-radius:14px;grid-template-columns:minmax(230px,1.05fr) minmax(220px,1fr) 140px minmax(190px,.8fr) 170px;align-items:center;gap:14px;padding:16px;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;box-shadow:0 14px 32px #0000000d}.guest-row:hover{border-color:#0000003d;transform:translateY(-1px);box-shadow:0 18px 38px #00000014}.guest-person,.guest-last{gap:5px;min-width:0;display:grid}.guest-person strong{color:#1a1a1a;font-size:17px}.guest-person span,.guest-last span{color:#7a756f;font-size:13px}.guest-stats{grid-template-columns:auto 1fr;align-items:baseline;gap:4px 8px;display:grid}.guest-stats strong{color:#1a1a1a;font-size:18px}.guest-stats span{color:#7a756f;font-size:13px}.guest-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.guest-tags{align-content:center}.guest-tags-card{background:#f5f3f0;border:1px solid #0000001f;border-radius:18px;gap:12px;margin:16px 0;padding:14px;display:grid}.guest-tags-card h3{margin:0;font-size:18px}.tag-edit-button{color:#1a1a1a;background:#f5f3f0;border:1px solid #0000002e;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-weight:600;display:inline-flex}.tag-edit-button.compact{min-height:34px;padding:0 10px;font-size:13px}.application-list{gap:12px;display:grid}.application-row{background:#f5f3f0;border:1px solid #0000001f;border-radius:14px;grid-template-columns:minmax(260px,1fr) 180px 110px;align-items:center;gap:14px;padding:16px;display:grid;box-shadow:0 14px 32px #0000000d}.application-main{color:inherit;border-radius:14px;gap:5px;text-decoration:none;transition:background .18s,color .18s;display:grid}.application-main:hover{color:#1a1a1a;background:#fbf2e7}.application-main strong{color:#1a1a1a;font-size:18px}.application-main span,.application-main small,.application-meta span{color:#7a756f;font-size:13px}.application-meta{justify-items:start;gap:6px;display:grid}.application-actions{justify-content:flex-end;display:flex}.application-detail-card{gap:16px;display:grid}.application-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;display:grid}.application-detail-grid div{background:#f5f3f0;border:1px solid #0000001a;border-radius:16px;padding:14px}.application-detail-grid dt{color:#7a756f;text-transform:uppercase;font-size:12px;font-weight:600}.application-detail-grid dd{color:#1a1a1a;margin:4px 0 0;font-weight:600}.application-actions-grid{grid-template-columns:1.35fr .85fr;gap:16px;display:grid}.application-action-card{margin:0}.application-result{grid-column:1/-1;gap:8px;display:grid}.lead-success{align-items:flex-start;gap:10px;display:flex}.lead-success div{gap:4px;display:grid}.lead-success small{color:#6f6258}.modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f1a167a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.tag-editor-modal{background:#f5f3f0;border:1px solid #b4b3ad73;border-radius:14px;gap:18px;width:min(620px,100%);max-height:min(760px,100vh - 48px);padding:24px;display:grid;overflow:auto;box-shadow:0 28px 80px #1f1a1647}.tag-editor-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.tag-editor-head h2{margin:0}.tag-editor-head p{color:#7a756f;margin:6px 0 0}.modal-close{color:#1a1a1a;background:#edebe7;border:1px solid #00000024;border-radius:999px;place-items:center;width:38px;min-width:38px;height:38px;min-height:38px;display:inline-grid}.tag-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.tag-checkbox{color:#1a1a1a;background:#f5f3f0;border:1px solid #0000001f;border-radius:14px;align-items:center;gap:9px;min-height:42px;padding:0 12px;font-size:14px;font-weight:600;display:flex}.tag-checkbox input{width:18px;min-height:18px}.custom-tag-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.reservation-history-panel{gap:18px;display:grid}.reservation-history-filters{background:#f5f3f0;border:1px solid #00000024;border-radius:14px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:12px;padding:14px;display:grid}.reservation-history-filters .history-search{grid-column:span 2}.reservation-history-filters .button{border-radius:16px;min-height:46px}.reservation-history-list{gap:10px;display:grid}.history-row{background:#f5f3f0;border:1px solid #0000001f;border-radius:14px;grid-template-columns:minmax(240px,1.4fr) 70px minmax(170px,1fr) 110px 120px 150px;align-items:center;gap:14px;padding:16px;display:grid;box-shadow:0 14px 32px #0000000d}.history-main{gap:5px;display:grid}.history-main p,.history-comment{color:#7a756f;margin:0;font-size:13px}.history-label{color:#8a7a6d;margin-bottom:4px;font-size:12px;font-weight:600;display:block}.history-status{justify-self:end}.history-comment{border-top:1px solid #0000001a;grid-column:1/-1;padding-top:10px}@media (max-width:1100px){.restaurant-admin-row,.restaurant-admin-list.compact .restaurant-admin-row,.guest-row,.history-row,.application-row,.application-actions-grid{grid-template-columns:1fr;align-items:start}.restaurant-admin-actions,.guest-actions,.history-status,.application-actions{justify-content:flex-start;justify-self:start}.reservation-history-filters,.application-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.catalog-filter-strip{grid-template-columns:1fr;display:grid!important;overflow:visible!important}.catalog-search-field{width:100%;max-width:none}.owner-guest-filters,.reservation-history-filters,.custom-tag-row,.tag-checkbox-grid,.application-detail-grid{grid-template-columns:1fr}.reservation-history-filters .history-search{grid-column:auto}.restaurant-admin-actions,.guest-actions,.modal-actions,.application-actions{justify-content:stretch}.restaurant-admin-actions a,.guest-actions a,.guest-actions button,.modal-actions button,.application-actions a{flex:auto}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.image-upload-field,.image-gallery-upload-field{background:#f5f3f0;border:1px solid #00000024;border-radius:14px;gap:12px;padding:16px;display:grid}.image-upload-field.compact{padding:14px}.image-upload-label{gap:4px;display:grid}.image-upload-label span{color:#1a1a1a;font-size:14px;font-weight:700}.image-upload-label small{color:#7a756f;line-height:1.45}.image-upload-dropzone,.gallery-upload-dropzone{color:#1a1a1a;text-align:center;background:linear-gradient(135deg,#f5f3f0 0%,#edebe7 100%);border:1px dashed #00000042;border-radius:14px;place-items:center;gap:8px;min-height:190px;padding:18px;transition:border-color .18s,background .18s,box-shadow .18s;display:grid}.image-upload-field.compact .image-upload-dropzone{min-height:150px}.image-upload-dropzone.is-dragging,.gallery-upload-dropzone.is-dragging{background:#fff4e6;border-color:#1a1a1a;box-shadow:0 0 0 4px #0000001a}.image-upload-dropzone.has-image{background:#edebe7;border-style:solid;padding:0;overflow:hidden}.image-upload-dropzone img{object-fit:cover;width:100%;height:260px;display:block}.image-upload-field.compact .image-upload-dropzone img{height:180px}.image-upload-placeholder{justify-items:center;gap:7px;display:grid}.image-upload-placeholder strong,.gallery-upload-dropzone strong{color:#1a1a1a}.image-upload-placeholder span,.gallery-upload-dropzone span,.image-upload-empty{color:#7a756f}.image-upload-actions,.image-upload-url-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.image-upload-url-row{grid-template-columns:auto minmax(0,1fr) auto;display:grid}.image-upload-url-row input{min-height:44px}.gallery-upload-dropzone{min-height:150px}.gallery-upload-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.gallery-upload-card{aspect-ratio:4/3;background:#edebe7;border:1px solid #00000024;border-radius:18px;position:relative;overflow:hidden;box-shadow:0 14px 32px #00000012}.gallery-upload-card img{object-fit:cover;width:100%;height:100%;display:block}.gallery-upload-card button{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1f1a16b8;border:1px solid #ffffff8c;border-radius:999px;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:8px;right:8px}.menu-item-thumb{object-fit:cover;background:#edebe7;border:1px solid #0000001f;border-radius:14px;width:76px;min-width:76px;height:62px}@media (max-width:720px){.image-upload-url-row,.image-upload-actions{grid-template-columns:1fr}.image-upload-url-row{display:grid}.image-upload-url-row svg{display:none}.image-upload-url-row .secondary-button,.image-upload-actions .secondary-button,.image-upload-actions .ghost{width:100%}}.hall-editor{grid-template-columns:minmax(0,1fr) minmax(320px,380px);align-items:start;gap:24px;display:grid}.hall-editor-tabs .active{color:#fff;background:#756a60;border-color:#756a60}.layout-status{color:#7a756f;margin-top:6px;font-size:13px}.layout-status.dirty{color:#5a5550}.layout-status.saved{color:#58744d}.editor-toolbox,.editor-view-options{flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0;display:flex}.editor-toolbox button{color:#32241c;cursor:pointer;background:#ddd9d4;border:1px solid #d5d1cc;border-radius:999px;align-items:center;gap:7px;min-height:38px;padding:0 14px;font-weight:700;transition:background .18s,border-color .18s,transform .18s;display:inline-flex}.editor-toolbox button:hover,.editor-view-options .button:hover{background:#fff8ef;border-color:#9a9590;transform:translateY(-1px)}.editor-view-options label{align-items:center;gap:8px;min-height:38px;margin:0;display:inline-flex}.hall-board-shell{background:#fbf7f4b8;border:1px solid #d5d1cc;border-radius:14px;padding:18px;overflow:auto}.hall-board{background:#f5f3f0;border:1px dashed #d9bf9f;border-radius:14px;min-width:720px;position:relative;box-shadow:inset 0 0 0 1px #ffffffb3}.hall-board.show-grid{background-image:radial-gradient(circle,#845d4221 1.3px,#0000 1.3px),linear-gradient(#845d420b 1px,#0000 1px),linear-gradient(90deg,#845d420b 1px,#0000 1px);background-size:var(--grid-size) var(--grid-size), var(--grid-size) var(--grid-size), var(--grid-size) var(--grid-size)}.hall-board-empty{color:#7a756f;text-align:center;width:min(360px,80%);font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hall-neutral-object,.public-neutral-object{background:color-mix(in srgb, var(--object-color,#5a5550) 15%, #f5f3f0);border:1px solid color-mix(in srgb, var(--object-color,#5a5550) 52%, #fff);color:#1a1a1a;text-align:center;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;font-size:12px;font-weight:600;line-height:1.05;display:flex;position:absolute;overflow:hidden}.hall-neutral-object{cursor:grab}.hall-neutral-object:active,.hall-table:active{cursor:grabbing}.hall-neutral-object.selected,.hall-table.selected{outline-offset:4px;outline:3px solid #9a5b3d57}.hall-neutral-object.neutral-line,.hall-neutral-object.neutral-wall,.public-neutral-object.neutral-line,.public-neutral-object.neutral-wall{border-radius:999px}.hall-object-icon,.public-neutral-object span{opacity:.82}.resize-handle{cursor:nwse-resize;background:#756a60;border:2px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;bottom:-7px;right:-7px}.rotate-handle{color:#756a60;cursor:grab;background:#f5f3f0;border:1px solid #d8b992;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex;position:absolute;top:-34px;left:50%;transform:translate(-50%);box-shadow:0 8px 18px #23232329}.rotate-handle:hover,.resize-handle:hover{color:#fff;background:#5a5550}.hall-board.preview-mode .hall-neutral-object,.hall-board.preview-mode .hall-table{cursor:default}.table-inspector{position:sticky;top:96px}.inspector-actions{flex-wrap:wrap;gap:10px;display:flex}.layer-actions .button{flex:1}.public-neutral-object{pointer-events:none}.public-booking-board{position:relative}.booking-table{z-index:20}.time-picker-field{position:relative}.time-picker-trigger{color:#1a1a1a;cursor:pointer;font:inherit;background:#f5f3f0;border:1px solid #dfc8ad;border-radius:18px;justify-content:space-between;align-items:center;width:100%;height:54px;padding:0 16px;display:flex}.time-picker-trigger:disabled{cursor:not-allowed;opacity:.55}.time-slot-popover{z-index:60;background:#f5f3f0;border:1px solid #d5d1cc;border-radius:14px;max-height:248px;margin-top:8px;padding:12px;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 24px 70px #2323232e}.time-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.time-slot-option{color:#1a1a1a;cursor:pointer;background:#ddd9d4;border:1px solid #d5d1cc;border-radius:12px;min-height:38px;font-weight:600}.time-slot-option:hover,.time-slot-option.selected{color:#fff;background:#756a60;border-color:#756a60}.time-slot-empty{color:#7a756f;margin:0;padding:12px;font-weight:700}.home-banner-slider{cursor:pointer}.home-banner-slider .banner-slide img{transition:opacity .72s,transform .9s}.home-banner-slider:hover .banner-slide.active img{transform:scale(1.035)}.home-banner-slider:hover .showcase-overlay{opacity:.92}.banner-open-hint{color:#fff;background:#fffaf329;border:1px solid #ffffff38;border-radius:999px;align-items:center;width:fit-content;margin-bottom:12px;padding:7px 12px;font-size:13px;font-weight:600;display:inline-flex}.public-reserve-page .page-title h1,.reservation-form h2,.reservation-success-card h2,.guest-reservation-card h2,.restaurant-profile-hero h1{overflow-wrap:anywhere;word-break:break-word;max-width:100%}.guest-reservations-page .secondary-button,.guest-reservations-page .button.secondary{border-radius:999px;width:auto;min-height:42px;padding:0 18px}@media (max-width:980px){.hall-editor{grid-template-columns:1fr}.table-inspector{position:static}.hall-board{min-width:620px}}@media (max-width:640px){.time-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hall-board-shell{padding:10px}}.home-banner-slider .banner-copy{flex-direction:column!important;grid-template-rows:none!important;justify-content:flex-start!important;gap:clamp(10px,1.25vw,14px)!important;max-height:calc(100% - clamp(102px,13vw,154px))!important;display:flex!important;top:clamp(28px,5vw,58px)!important;bottom:clamp(74px,8vw,96px)!important;overflow:visible!important}.home-banner-slider,.catalog-page .restaurant-showcase.home-banner-slider{height:clamp(500px,42vw,560px)!important}.home-banner-slider .banner-copy h2{overflow-wrap:anywhere;word-break:break-word;height:auto!important;min-height:0!important;max-height:none!important;font-size:clamp(40px,4.4vw,60px)!important;display:block!important;overflow:visible!important}.home-banner-slider .banner-copy p{-webkit-line-clamp:2;-webkit-box-orient:vertical;height:auto!important;min-height:0!important;max-height:none!important;display:-webkit-box!important;overflow:hidden!important}.home-banner-slider .banner-copy .showcase-meta{min-height:0!important}.hero-slide-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;padding-bottom:2px;display:flex}.home-banner-slider .banner-copy .hero-slide-actions .button{place-self:auto;width:auto;min-height:46px;padding:0 20px}.banner-secondary-cta{color:#f0ede9;box-shadow:none;background:#fffaf32e;border:1px solid #ffffff52}.banner-secondary-cta:hover{color:#fff;background:#fffaf347}.guest-login-card{position:relative}.page-close-button{z-index:2;color:#5f3a2c;cursor:pointer;background:#fffaf4f0;border:1px solid #d4bfa8d1;border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;transition:background-color .18s,box-shadow .18s,transform .18s;display:inline-flex;position:absolute;top:20px;right:20px;box-shadow:0 10px 24px #4a33221a}.page-close-button:hover{background:#f5f3f0;transform:translateY(-1px);box-shadow:0 14px 32px #4a332226}.guest-login-page>.small-button{display:none!important}@media (max-width:760px){.home-banner-slider .banner-copy{width:auto!important;max-height:calc(100% - 96px)!important;inset:24px 20px 72px!important}.home-banner-slider,.catalog-page .restaurant-showcase.home-banner-slider{height:440px!important}.home-banner-slider .banner-copy h2{font-size:clamp(32px,9vw,46px)!important;line-height:.94!important}.home-banner-slider .banner-copy .showcase-meta{gap:8px!important}.home-banner-slider .banner-copy .hero-slide-actions .button{white-space:nowrap;min-height:42px;padding:0 12px;font-size:13px}.hero-slide-actions{flex-wrap:nowrap;gap:8px}.guest-login-card{padding-top:52px}.page-close-button{width:38px;height:38px;top:16px;right:16px}}.public-booking-board-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#00000059 transparent;border-radius:14px;width:100%;max-width:100%;overflow:auto hidden}.public-booking-board-scroll::-webkit-scrollbar{height:8px}.public-booking-board-scroll::-webkit-scrollbar-thumb{background:#00000052;border-radius:999px}@media (max-width:640px){.app-header.public-header{position:sticky;top:0;background:#f5f3f0f0!important;grid-template-columns:1fr!important;align-items:start!important;gap:10px!important;min-height:0!important;padding:12px 16px 10px!important;display:grid!important}.public-header .brand{white-space:nowrap;min-width:0;gap:9px!important;font-size:clamp(24px,8vw,32px)!important;line-height:1!important}.public-header .brand svg{flex:none;width:30px!important;height:30px!important}.public-header .main-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;width:100%;max-width:100%;padding:0 0 3px;overflow-x:auto;flex-wrap:nowrap!important;justify-content:flex-start!important;gap:8px!important;display:flex!important}.public-header .main-nav::-webkit-scrollbar{display:none}.public-header .main-nav a{white-space:nowrap;flex:none;color:#1a1a1a!important;background:#f5f3f0!important;border:1px solid #b4b3adb3!important;border-radius:999px!important;min-height:38px!important;padding:0 16px!important;font-size:15px!important;font-weight:600!important}.public-header .header-actions{display:none!important}.client-page,.page.restaurant-profile-content,.restaurant-profile-content{width:min(100% - 24px,1180px)!important}.catalog-quick-row{scrollbar-width:none;flex-wrap:nowrap!important;gap:8px!important;margin:0 -12px 16px 0!important;padding:6px 12px 4px 0!important;display:flex!important;overflow-x:auto!important}.catalog-quick-row::-webkit-scrollbar{display:none}.catalog-quick-row a{white-space:nowrap;flex:none;min-height:34px!important;padding:0 14px!important;font-size:13px!important}.home-banner-slider,.catalog-page .restaurant-showcase.home-banner-slider{border-radius:14px!important;height:clamp(420px,92svh,560px)!important}.home-banner-slider .banner-copy{inset:auto 18px calc(20px + env(safe-area-inset-bottom)) 18px!important;grid-template-rows:auto auto auto auto auto!important;gap:12px!important;width:auto!important;max-height:none!important;display:grid!important;top:auto!important}.home-banner-slider .banner-copy h2{overflow-wrap:anywhere;height:auto!important;min-height:0!important;max-height:none!important;font-size:clamp(38px,13vw,58px)!important;line-height:.92!important;display:block!important}.home-banner-slider .banner-copy p{-webkit-line-clamp:3;-webkit-box-orient:vertical;height:auto!important;min-height:0!important;max-height:none!important;font-size:16px!important;line-height:1.38!important;display:-webkit-box!important;overflow:hidden!important}.home-banner-slider .banner-copy .showcase-meta{grid-template-columns:1fr!important;gap:9px!important;font-size:14px!important;display:grid!important}.home-banner-slider .banner-copy .showcase-meta span{overflow-wrap:anywhere;min-width:0}.hero-slide-actions{padding-bottom:calc(8px + env(safe-area-inset-bottom));grid-template-columns:1fr!important;gap:8px!important;display:grid!important}.home-banner-slider .banner-copy .hero-slide-actions .button,.home-banner-slider .banner-copy .hero-slide-actions .secondary-button{width:100%!important;min-height:46px!important}.banner-arrow{width:42px!important;height:42px!important}.banner-arrow.left{left:12px!important}.banner-arrow.right{right:12px!important}.banner-dots{bottom:12px!important;right:16px!important}.catalog-filter-strip{scrollbar-width:none;flex-wrap:nowrap!important;align-items:center!important;gap:8px!important;margin:0 -12px 28px 0!important;padding:0 12px 3px 0!important;display:flex!important;overflow:auto visible!important}.catalog-filter-strip::-webkit-scrollbar{display:none}.catalog-search-field{flex:0 0 min(260px,82vw)!important;height:40px!important;min-height:40px!important}.catalog-filter-chip,.catalog-filter-reset{flex:none!important}.catalog-filter-chip .catalog-filter-trigger,.catalog-filter-reset{height:40px!important;min-height:40px!important;padding:0 14px!important}.catalog-section .section-heading,.section-heading{place-items:start!important;gap:10px!important;display:grid!important}.catalog-page .section-heading h2,.profile-section h2,.section-heading h2{overflow-wrap:anywhere;font-size:clamp(32px,10vw,46px)!important;line-height:.98!important}.catalog-page .show-all-link{min-height:36px!important;padding:0 14px!important;font-size:13px!important}.restaurant-rail,.restaurants-grid{grid-template-columns:1fr!important;gap:20px!important}.restaurant-card{min-width:0!important}.restaurant-card h2{overflow-wrap:anywhere;font-size:clamp(23px,7vw,30px)!important;line-height:1.05!important}.restaurant-card-gallery,.restaurant-card-compact .card-image-link{aspect-ratio:16/10!important;border-radius:14px!important}.restaurant-profile-hero{min-height:min(720px,100svh - 96px)!important}.profile-hero-content{width:calc(100% - 32px)!important;min-height:min(720px,100svh - 96px)!important;padding:42px 0 calc(28px + env(safe-area-inset-bottom))!important;align-content:end!important}.profile-hero-content h1{overflow-wrap:anywhere;max-width:100%!important;font-size:clamp(42px,14vw,64px)!important;line-height:.93!important}.profile-hero-content p:not(.eyebrow){-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;max-width:100%!important;font-size:16px!important;line-height:1.42!important}.profile-hero-meta,.profile-badge-row{scrollbar-width:none;margin-right:-16px;padding-right:16px;overflow-x:auto;flex-wrap:nowrap!important;gap:8px!important;display:flex!important}.profile-hero-meta::-webkit-scrollbar{display:none}.profile-badge-row::-webkit-scrollbar{display:none}.profile-hero-meta span,.profile-badge-row span{white-space:nowrap;flex:none}.profile-hero-content .button{width:100%!important;min-height:48px!important}.restaurant-anchor-nav{white-space:nowrap;scrollbar-width:none;max-width:100%;overflow-y:hidden;justify-content:flex-start!important;gap:18px!important;min-height:50px!important;padding:0 16px!important;top:0!important;overflow-x:auto!important}.restaurant-anchor-nav::-webkit-scrollbar{display:none}.restaurant-anchor-nav a{white-space:nowrap;flex:none;min-height:50px}.profile-main{gap:30px!important}.profile-section{min-width:0;gap:14px!important}.profile-section>p{overflow-wrap:anywhere;max-width:100%!important;font-size:16px!important;line-height:1.58!important}.public-hall-widget{overflow:hidden;border-radius:14px!important;gap:14px!important;padding:18px!important}.hall-widget-head{gap:10px!important;display:grid!important}.hall-widget-head h3{font-size:clamp(34px,10vw,44px)!important;line-height:.98!important}.hall-widget-head p{color:#7a756f;margin:0;font-size:16px!important;line-height:1.5!important}.public-booking-board-scroll{margin:2px 0 0;padding-bottom:8px}.public-booking-board{border-radius:14px!important;width:720px!important;min-width:720px!important;max-width:none!important;min-height:500px!important}.booking-table{min-width:82px!important;min-height:66px!important}.booking-table:not(.selected) .seat-dot{display:none!important}.booking-table.selected .seat-dot{width:22px!important;height:22px!important;min-height:22px!important;font-size:10px!important}.booking-table-core strong{font-size:18px!important}.booking-table-core span{font-size:12px!important}.booking-table-core small{font-size:10px!important}.hall-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px!important;font-size:14px!important;display:grid!important}.selected-table-summary,.hall-widget-state,.deposit-next-step{overflow-wrap:anywhere;width:100%;border-radius:18px!important;padding:16px!important}}@media (max-width:360px){.public-header .brand{font-size:24px!important}.public-header .main-nav a{min-height:36px!important;padding:0 13px!important;font-size:14px!important}.home-banner-slider .banner-copy h2,.profile-hero-content h1{font-size:40px!important}.public-booking-board{width:680px!important;min-width:680px!important}}body{max-width:100vw;overflow-x:clip}img,video,canvas,svg{max-width:100%}.catalog-mobile-filter-button,.catalog-filter-sheet-head{display:none}.catalog-filter-controls,.catalog-filter-sheet-actions{display:contents}.catalog-filter-sheet-actions .button{display:none}@media (max-width:1024px){.owner-layout,.restaurant-profile-content,.restaurant-profile-content.single-column,.restaurant-detail,.grid-layout.two-columns,.two-columns{grid-template-columns:1fr!important}.profile-booking,.table-inspector{position:static!important;top:auto!important}.admin-row,.reservation-row,.guest-row,.restaurant-admin-row{min-width:0}.admin-table,.reservation-list,.guest-list,.restaurant-admin-list{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:720px){:root{--mobile-page-gutter:16px}body{min-width:0}.app-header.public-header{min-height:62px!important;padding:10px var(--mobile-page-gutter)!important;background:#fbf7f4f5!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;display:flex!important}.public-header .brand{white-space:nowrap;flex:auto;min-width:0;font-size:clamp(24px,7.2vw,32px)!important;line-height:1!important}.public-header .brand svg{width:30px!important;height:30px!important}.public-header .main-nav{flex:none;max-width:48vw;width:auto!important;padding:0!important;overflow:visible!important}.public-header .main-nav a{min-height:38px!important;padding:0 14px!important;font-size:14px!important;line-height:1!important}.page,.client-page,.page.client-page,.restaurant-profile-content,.restaurant-profile-content.single-column,.public-reserve-page,.guest-reservations-page,.container{width:min(100% - calc(var(--mobile-page-gutter) * 2), 1180px)!important;max-width:100%!important}.page,.client-page,.page.client-page,.guest-reservations-page{padding-top:18px!important;padding-bottom:calc(42px + env(safe-area-inset-bottom))!important}.chip-slider-wrapper{margin:0 0 16px!important}.chip-slider-arrow,.chip-slider-wrapper:before,.chip-slider-wrapper:after{display:none!important}.catalog-quick-row,.quick-filter-row{white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 calc(var(--mobile-page-gutter) * -1) 16px 0!important;padding:2px var(--mobile-page-gutter) 5px 0!important;flex-wrap:nowrap!important;gap:8px!important;display:flex!important;overflow:auto hidden!important}.catalog-quick-row::-webkit-scrollbar{display:none}.quick-filter-row::-webkit-scrollbar{display:none}.catalog-quick-row a,.quick-filter-row a{white-space:nowrap;flex:none!important;min-height:34px!important;padding:0 14px!important;font-size:13px!important}.home-banner-slider,.catalog-page .restaurant-showcase.home-banner-slider{border-radius:14px!important;height:clamp(420px,78svh,560px)!important;min-height:420px!important;max-height:620px!important;margin-bottom:18px!important}.home-banner-slider .banner-copy{inset:auto 18px calc(20px + env(safe-area-inset-bottom)) 18px!important;align-content:end!important;gap:10px!important;width:auto!important;max-height:calc(100% - 34px)!important;display:grid!important;top:auto!important}.home-banner-slider .banner-copy h2,.profile-hero-content h1{overflow-wrap:anywhere;word-break:break-word;max-width:100%!important;font-size:clamp(38px,12vw,58px)!important;line-height:.92!important}.home-banner-slider .banner-copy p,.profile-hero-content p:not(.eyebrow){-webkit-line-clamp:3;-webkit-box-orient:vertical;max-width:100%!important;font-size:16px!important;line-height:1.38!important;display:-webkit-box!important;overflow:hidden!important}.home-banner-slider .banner-copy .showcase-meta{gap:8px!important;font-size:14px!important;display:grid!important}.home-banner-slider .banner-copy .showcase-meta span{overflow-wrap:anywhere;min-width:0}.hero-slide-actions{padding-bottom:calc(6px + env(safe-area-inset-bottom));grid-template-columns:1fr!important;gap:8px!important;display:grid!important}.home-banner-slider .banner-copy .hero-slide-actions .button,.home-banner-slider .banner-copy .hero-slide-actions .secondary-button{width:100%!important;min-height:44px!important;padding:0 14px!important}.banner-arrow{width:40px!important;height:40px!important;top:auto!important;bottom:96px!important;transform:none!important}.banner-arrow.left{left:12px!important}.banner-arrow.right{right:12px!important}.banner-dots{bottom:12px!important;right:16px!important}}@media (max-width:680px){.catalog-filter-strip{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;margin:0 0 28px!important;padding:0!important;display:grid!important;overflow:visible!important}.catalog-search-field{width:100%!important;min-width:0!important;max-width:none!important;height:44px!important;min-height:44px!important;padding:0 12px!important}.catalog-search-field input{min-width:0;font-size:14px!important}.catalog-mobile-filter-button{color:#1a1a1a;background:#f5f3f0;border:1px solid #d4bfa8e6;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex;box-shadow:0 10px 24px #3c2a1e12}.catalog-mobile-filter-button span{color:#fff;background:#756a60;border-radius:999px;place-items:center;min-width:22px;height:22px;font-size:12px;display:inline-grid}.catalog-filter-backdrop{z-index:89;cursor:default;background:#1f1a166b;border:0;position:fixed;inset:0}.catalog-filter-controls{z-index:90;max-height:min(82svh,680px);padding:18px 16px calc(18px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;background:#f5f3f0;border:1px solid #d4bfa8e6;border-radius:14px 28px 0 0;grid-template-columns:1fr;gap:12px;transition:transform .26s;display:grid;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(110%);box-shadow:0 -24px 70px #1f1a163d}.catalog-filter-controls.open{transform:translateY(0)!important}.catalog-filter-sheet-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:2px;display:flex}.catalog-filter-sheet-head div{gap:3px;display:grid}.catalog-filter-sheet-head strong{color:#1a1a1a;font-size:22px;line-height:1}.catalog-filter-sheet-head span{color:#7a756f;font-size:13px;font-weight:700}.catalog-filter-sheet-head button{color:#1a1a1a;background:#fff;border:1px solid #d4bfa8e6;border-radius:999px;place-items:center;width:40px;height:40px;min-height:40px;display:inline-grid}.catalog-filter-chip,.catalog-filter-chip .catalog-filter-trigger,.catalog-filter-reset{width:100%!important;min-width:0!important}.catalog-filter-chip .catalog-filter-trigger,.catalog-filter-reset,.catalog-filter-sheet-actions .button{display:inline-flex;justify-content:space-between!important;min-height:48px!important}.catalog-filter-controls.open .catalog-filter-menu{max-height:240px;box-shadow:none;margin-top:8px;overflow:auto;width:100%!important;position:static!important}.catalog-filter-sheet-actions{bottom:calc(env(safe-area-inset-bottom) * -1);background:linear-gradient(#fffaf400,#f5f3f0 28%);grid-template-columns:1fr;gap:10px;padding-top:8px;display:grid;position:sticky}.catalog-filter-sheet-actions .button,.catalog-filter-sheet-actions .catalog-filter-reset{width:100%!important}}@media (max-width:720px){.catalog-section{margin:34px 0 48px!important}.catalog-section .section-heading,.section-heading{place-items:start!important;gap:10px!important;display:grid!important}.catalog-page .section-heading h2,.section-heading h2,.profile-section h2,.guest-reservations-hero h1,.page-title h1{overflow-wrap:anywhere;max-width:100%!important;font-size:clamp(30px,9.5vw,44px)!important;line-height:.98!important}.catalog-page .show-all-link{min-height:36px!important;padding:0 14px!important;font-size:13px!important}.restaurant-rail,.restaurants-grid{grid-template-columns:1fr!important;gap:20px!important}.restaurant-card,.luxury-restaurant-card{width:100%!important;min-width:0!important}.restaurant-card h2,.restaurant-card h3{overflow-wrap:anywhere;max-width:100%;font-size:clamp(23px,7vw,30px)!important;line-height:1.05!important}.restaurant-card p,.restaurant-card-info,.restaurant-card-chips,.restaurant-card-badges{overflow-wrap:anywhere;min-width:0}.restaurant-card-gallery,.restaurant-card-compact .card-image-link,.restaurant-card .card-image-link{min-height:180px;aspect-ratio:16/10!important;border-radius:14px!important}.restaurant-card-book-button,.restaurant-card-actions .button,.restaurant-card-actions .secondary-button{width:100%;min-height:44px}.restaurant-profile-hero{height:auto!important;min-height:min(700px,100svh - 62px)!important}.profile-hero-content{width:calc(100% - 32px)!important;min-height:min(700px,100svh - 62px)!important;padding:42px 0 calc(28px + env(safe-area-inset-bottom))!important;align-content:end!important}.profile-hero-meta,.profile-badge-row{scrollbar-width:none;max-width:100%;margin-right:-16px;padding-right:16px;overflow-x:auto;flex-wrap:nowrap!important;gap:8px!important;display:flex!important}.profile-hero-meta::-webkit-scrollbar{display:none}.profile-badge-row::-webkit-scrollbar{display:none}.profile-hero-meta span,.profile-badge-row span{white-space:nowrap;flex:none}.profile-hero-content .button{width:100%!important;min-height:48px!important}.restaurant-anchor-nav,.tabs,.hall-editor-tabs{white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;max-width:100%;overflow-y:hidden;flex-wrap:nowrap!important;justify-content:flex-start!important;overflow-x:auto!important}.restaurant-anchor-nav::-webkit-scrollbar{display:none}.tabs::-webkit-scrollbar{display:none}.hall-editor-tabs::-webkit-scrollbar{display:none}.restaurant-anchor-nav a,.tabs a,.hall-editor-tabs a{white-space:nowrap;flex:none}.profile-gallery{grid-template-columns:1fr!important;gap:12px!important}.profile-gallery .gallery-item,.profile-gallery .gallery-item:first-child{aspect-ratio:16/11!important;grid-row:auto!important}.reservation-form,.booking-workspace .reservation-form,.public-reserve-page .reservation-form,.wide-form,.stack-form,.auth-panel,.panel{max-width:100%;border-radius:14px!important}.form-grid,.form-grid.two,.payment-details-grid,.metric-grid,.hours-row,.inline-form,.hall-create-form,.owner-reservation-filters,.reservation-history-filters,.owner-guest-filters{grid-template-columns:1fr!important}input,select,textarea,.pretty-select-trigger,.time-picker-trigger{min-width:0;min-height:48px;font-size:16px}.time-slot-popover{border-radius:14px;max-height:260px}.time-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.public-hall-widget{max-width:100%;overflow:hidden;border-radius:14px!important;padding:18px!important}.hall-widget-head{gap:10px!important;display:grid!important}.hall-widget-head h3{overflow-wrap:anywhere;font-size:clamp(30px,9vw,42px)!important;line-height:.98!important}.public-booking-board-scroll,.hall-board-shell{-webkit-overflow-scrolling:touch;max-width:100%;overflow:auto!important}.public-booking-board{border-radius:14px!important;width:700px!important;min-width:700px!important;max-width:none!important;min-height:500px!important}.booking-table{min-width:82px!important;min-height:66px!important}.booking-table:not(.selected) .seat-dot{display:none!important}.booking-table.selected .seat-dot{width:22px!important;height:22px!important;min-height:22px!important;font-size:10px!important}.selected-table-summary,.hall-widget-state,.deposit-next-step,.form-error,.form-success,.form-note{overflow-wrap:anywhere;width:100%}.guest-reservations-hero,.guest-login-card,.guest-reservation-card,.reservation-success-card{width:100%;max-width:100%;border-radius:14px!important}.guest-reservations-hero p,.guest-reservation-card p,.reservation-success-card p{font-size:16px!important;line-height:1.5!important}.guest-reservations-page .button,.guest-reservations-page .secondary-button,.guest-reservations-page .small-button{max-width:100%}.modal-actions,.reservation-actions,.row-actions,.restaurant-admin-actions,.guest-actions,.inspector-actions{width:100%;grid-template-columns:1fr!important;justify-content:stretch!important;display:grid!important}.modal-actions>*,.reservation-actions>*,.row-actions>*,.restaurant-admin-actions>*,.guest-actions>*,.inspector-actions>*{width:100%}.admin-row,.reservation-row,.menu-item-row,.list-row,.restaurant-admin-row,.guest-row{grid-template-columns:1fr!important;align-items:stretch!important;gap:12px!important;display:grid!important}.hall-editor{grid-template-columns:1fr!important;gap:16px!important}.editor-toolbar,.editor-toolbox,.editor-view-options{grid-template-columns:1fr!important;align-items:stretch!important;display:grid!important}.editor-toolbox{-webkit-overflow-scrolling:touch;max-height:190px;overflow:auto}.hall-board{min-width:680px!important}}@media (max-width:390px){.app-header.public-header{padding-inline:12px!important}.public-header .brand{font-size:23px!important}.public-header .main-nav{max-width:42vw}.public-header .main-nav a{padding:0 12px!important;font-size:13px!important}.home-banner-slider .banner-copy h2,.profile-hero-content h1{font-size:clamp(34px,11vw,44px)!important}.catalog-filter-strip{grid-template-columns:1fr!important}.catalog-mobile-filter-button{width:100%}.public-booking-board,.hall-board{width:660px!important;min-width:660px!important}}.hall-editor-page{width:min(1680px,100% - 36px)}.hall-editor-page .hall-create-form,.hall-editor-page .hall-editor-tabs,.hall-editor-page .hall-editor{max-width:100%}.hall-editor{grid-template-columns:minmax(0,1fr) minmax(300px,340px)!important;gap:20px!important}.hall-board-panel{overflow:hidden}.editor-toolbar{z-index:3;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;position:relative;display:flex!important}.hall-editor-page .toolbar-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:10px;display:flex!important}.hall-editor-page .toolbar-actions>*{width:auto!important}.editor-toolbox{z-index:2;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));position:relative;align-items:stretch!important;gap:10px!important;display:grid!important}.editor-toolbox button{white-space:nowrap;justify-content:center;min-height:44px;padding:0 12px}.editor-view-options{background:#fffaf3c7;border:1px solid #d5d1cc;border-radius:18px;justify-content:flex-start;padding:10px;align-items:center!important;gap:10px!important;display:flex!important}.editor-view-options>span{color:#1a1a1a;justify-content:center;align-items:center;min-width:58px;font-weight:600;display:inline-flex}.editor-view-options .button{width:auto;min-height:38px}.hall-board-shell{scrollbar-gutter:stable;justify-content:flex-start;align-items:flex-start;height:clamp(620px,70vh,840px);display:flex;overflow:auto}.hall-editor .hall-board{flex:none;overflow:hidden;aspect-ratio:auto!important;height:var(--board-height)!important;min-height:var(--board-height)!important;min-width:var(--board-width)!important;width:var(--board-width)!important}.hall-editor .hall-table,.hall-editor .hall-neutral-object{-webkit-user-select:none;user-select:none}.hall-neutral-object{touch-action:none;min-height:8px;box-shadow:0 12px 24px #23232314}.hall-neutral-object strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 6px;overflow:hidden}.hall-neutral-object.neutral-zone{background:color-mix(in srgb, var(--object-color,#5a5550) 8%, #f5f3f0);border-style:dashed}.hall-neutral-object.neutral-line strong,.hall-neutral-object.neutral-wall strong,.hall-neutral-object.neutral-partition strong,.hall-neutral-object.neutral-window strong{display:none}.editor-legend{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.editor-legend span{color:#1a1a1a;background:#f5f3f0;border:1px solid #d5d1cc;border-radius:999px;align-items:center;gap:8px;min-height:34px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.editor-legend .dot.neutral{background:#5a5550}.table-inspector{max-height:calc(100vh - 116px);overflow:auto}@media (max-width:1180px){.hall-editor{grid-template-columns:1fr!important}.table-inspector{max-height:none;position:static!important}}@media (max-width:720px){.hall-editor-page{width:min(100% - 20px,1680px)}.hall-editor-page .editor-toolbar{grid-template-columns:1fr!important;align-items:stretch!important;display:grid!important}.hall-editor-page .toolbar-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid!important}.hall-editor-page .toolbar-actions>*{width:100%!important}.editor-toolbox{max-height:230px;overflow:auto;grid-template-columns:repeat(2,minmax(0,1fr))!important}.editor-view-options{grid-template-columns:1fr 1fr;align-items:stretch!important;display:grid!important}.editor-view-options label,.editor-view-options .button{width:100%}.hall-board-shell{height:620px;padding:12px}}.menu-site-panel .section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 18px}.menu-site-panel .section-heading p{color:var(--muted);margin:6px 0 0}.menu-site-panel .section-heading>div:first-child{flex:1 1 0;min-width:0}.menu-search{flex:none;align-items:center;width:min(320px,100%);display:flex;position:relative}.menu-search>svg{color:#c98232;opacity:.7;pointer-events:none;position:absolute;left:13px}.menu-search input{color:#241c16;background:#fff8ef;border:1.5px solid #c9823238;border-radius:999px;width:100%;height:42px;padding:0 40px;font-size:14px;transition:border-color .16s,box-shadow .16s}.menu-search input::placeholder{color:#a99b89}.menu-search input:focus{border-color:#c9823280;outline:none;box-shadow:0 0 0 4px #c982321f}.menu-search input::-webkit-search-cancel-button{appearance:none;display:none}.menu-search-clear{color:#9b6a2b;cursor:pointer;background:#c9823224;border:none;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:background .14s;display:inline-flex;position:absolute;right:8px}.menu-search-clear:hover{background:#c9823242}.menu-search-count{color:var(--muted);margin:-2px 0 10px;font-size:13px}.menu-search-mark{color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#c9823242;border-radius:3px;padding:0 1px}.menu-search-empty{text-align:center}@media (max-width:640px){.menu-search{width:100%}}.menu-preview{gap:28px;display:grid}.owner-menu-category{gap:12px;display:grid}.owner-menu-category h3{font-family:var(--display-font,inherit);color:#1a1a1a;margin:0;font-size:clamp(24px,2.2vw,32px);line-height:1.05}.owner-menu-items{background:#f5f3f0;border:1px solid #0000001f;border-radius:14px;gap:0;display:grid;overflow:hidden}.owner-menu-item-row{background:#f5f3f0;grid-template-columns:80px minmax(0,1fr) auto auto;min-width:0;transition:background .16s,opacity .2s;border:0!important;border-bottom:1px solid #0000001a!important;border-radius:0!important;align-items:center!important;gap:16px!important;padding:14px 16px!important;display:grid!important}.owner-menu-item-row:last-child{border-bottom:0!important}.owner-menu-item-row:hover{background:#f0ede9!important}.menu-item-stopped{opacity:.5}.menu-item-stopped .menu-item-title{text-decoration:line-through}.menu-item-stopped:hover{opacity:.75}.icon-button.stop-list-on{color:#3a7d1c;background:#edf7e8;border-color:#3a7d1c33}.icon-button.stop-list-on:hover{background:#dff0d6;border-color:#3a7d1c59}.icon-button.stop-list-off{color:#c33;background:#fef0ee;border-color:#c333}.icon-button.stop-list-off:hover{background:#fde3df;border-color:#cc333359}.menu-item-image-wrap{width:80px;min-width:80px}.menu-item-thumb{object-fit:cover;background:#edebe7;border:1px solid #0000001f;display:block;border-radius:16px!important;width:80px!important;min-width:80px!important;height:80px!important}.menu-item-placeholder{color:#8f6c55;background:linear-gradient(135deg,#edebe7,#f5f3f0);place-items:center;display:grid}.menu-item-content{gap:5px;min-width:0;display:grid}.menu-item-title{color:#1a1a1a;overflow-wrap:anywhere;font-size:17px;font-weight:600;line-height:1.25;display:block}.menu-item-description{color:#766c62;overflow-wrap:anywhere;line-height:1.45;margin:0!important}.menu-item-portion{color:#8a7a68;font-size:13px;font-weight:700}.menu-item-price{white-space:nowrap;color:#1a1a1a;text-align:right;justify-self:end;font-size:17px;font-weight:700}.menu-item-actions{justify-content:flex-end;gap:8px;display:flex}.menu-item-actions .icon-button{border-radius:14px;width:42px;min-width:42px;height:42px;min-height:42px}.menu-item-actions .icon-button:hover{transform:translateY(-1px);box-shadow:0 10px 22px #5433261f}.menu-item-actions .icon-button.danger{color:#b54040;background:#fff7f4;border-color:#a4483e2e}.menu-category-empty,.menu-empty-state p{color:var(--muted);margin:0}.menu-empty-state h3{margin:0 0 8px}.menu-item-edit-modal{background:#f5f3f0;border:1px solid #b4b3ad73;border-radius:14px;gap:18px;width:min(760px,100%);max-height:min(860px,100vh - 48px);padding:24px;display:grid;overflow:auto;box-shadow:0 28px 80px #1f1a1647}.modal-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.modal-head h2{margin:0}.menu-availability-row{justify-content:flex-start;align-items:center}@media (max-width:760px){.owner-menu-item-row{grid-template-areas:"image content""price actions";grid-template-columns:64px minmax(0,1fr)!important;gap:10px!important;padding:12px!important}.menu-item-image-wrap{grid-area:image;width:64px;min-width:64px}.menu-item-thumb{border-radius:14px!important;width:64px!important;min-width:64px!important;height:64px!important}.menu-item-content{grid-area:content}.owner-menu-item-row .menu-item-price{text-align:left;grid-area:price;place-self:center start}.owner-menu-item-row .menu-item-actions{grid-area:actions;justify-self:end}.menu-item-edit-modal{padding:18px}}.hall-editor .hall-table,.hall-editor .hall-neutral-object{transform-origin:50%}.hall-editor .hall-neutral-object.selected,.hall-editor .hall-table.selected{overflow:visible}.hall-editor .hall-neutral-object.layer-back{box-shadow:0 8px 18px #2323230a}.hall-editor .hall-neutral-object.layer-front{box-shadow:0 16px 28px #2323231f}.hall-editor .layer-badge{color:#f5f3f0;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;z-index:4;background:#32241ce0;border:1px solid #fffaf37a;border-radius:999px;max-width:140px;padding:5px 8px;font-size:10px;font-style:normal;font-weight:600;line-height:1;position:absolute;bottom:calc(100% + 8px);left:50%;overflow:hidden;transform:translate(-50%)}.hall-editor .rotate-handle{z-index:6}.hall-editor .resize-handle{z-index:5;background:#756a60;border:2px solid #f5f3f0;border-radius:999px;width:14px;height:14px;transition:background-color .14s,box-shadow .14s,transform .14s;position:absolute;box-shadow:0 6px 14px #23232338}.hall-editor .resize-handle:hover,.hall-editor .resize-handle:focus-visible{background:#5a5550;box-shadow:0 8px 18px #23232347}.hall-editor .resize-nw{cursor:nwse-resize;top:-7px;left:-7px}.hall-editor .resize-n{cursor:ns-resize;top:-7px;left:50%;transform:translate(-50%)}.hall-editor .resize-ne{cursor:nesw-resize;top:-7px;right:-7px}.hall-editor .resize-e{cursor:ew-resize;top:50%;right:-7px;transform:translateY(-50%)}.hall-editor .resize-se{cursor:nwse-resize;bottom:-7px;right:-7px}.hall-editor .resize-s{cursor:ns-resize;bottom:-7px;left:50%;transform:translate(-50%)}.hall-editor .resize-sw{cursor:nesw-resize;bottom:-7px;left:-7px}.hall-editor .resize-w{cursor:ew-resize;top:50%;left:-7px;transform:translateY(-50%)}.hall-editor .object-layer-panel{background:#fffaf3c7;border:1px solid #d5d1cc;border-radius:16px;gap:8px;padding:12px;display:grid}.hall-editor .object-layer-panel>span{color:#7a756f;text-transform:uppercase;font-size:12px;font-weight:600}.hall-editor .object-layer-panel>strong{color:#1a1a1a;font-size:14px}.hall-editor .object-layer-panel p{color:#7a756f;margin:0;font-size:12px;line-height:1.45}.hall-editor .layer-segment{background:#ddd9d4;border:1px solid #d5d1cc;border-radius:999px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.hall-editor .layer-segment button{color:#1a1a1a;cursor:pointer;background:0 0;border:0;border-radius:999px;min-height:34px;padding:0 8px;font-size:12px;font-weight:600;transition:background-color .16s,color .16s,box-shadow .16s}.hall-editor .layer-segment button:hover,.hall-editor .layer-segment button:focus-visible{color:#1a1a1a;background:#f5f3f0;outline:none}.hall-editor .layer-segment button.active{color:#f5f3f0;background:#756a60;box-shadow:0 8px 18px #23232329}.hall-editor .editor-view-options .button,.hall-editor .editor-view-options .button.secondary{color:#f5f3f0;background:#756a60;border-color:#756a60}.hall-editor .editor-view-options .button:hover,.hall-editor .editor-view-options .button.secondary:hover,.hall-editor .editor-view-options .button:focus-visible,.hall-editor .editor-view-options .button.secondary:focus-visible{color:#f5f3f0;outline-offset:2px;background:#1a1a1a;border-color:#1a1a1a;outline:2px solid #7d4a3847}.hall-editor .editor-legend{display:none!important}.hall-editor .table-inspector,.hall-editor-page .table-inspector{max-height:none!important;overflow:visible!important}.hall-editor .table-inspector .stack-form{gap:12px}.hall-editor .table-inspector .form-grid.two{gap:10px}.hall-editor.hall-editor-pro{grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;gap:16px!important;display:grid!important}.hall-editor-topbar{background:#fffaf3f0;border:1px solid #d5d1cc;border-radius:14px;gap:12px;padding:18px;display:grid;box-shadow:0 18px 42px #23232314}.hall-editor-topbar .editor-toolbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.hall-editor-topbar h2{color:#1a1a1a;font-family:var(--font-heading);overflow-wrap:anywhere;margin:4px 0 0;font-size:clamp(30px,3vw,46px);line-height:.96}.hall-editor-meta{color:#7a756f;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.hall-editor-meta span,.hall-editor-meta strong{color:#1a1a1a;background:#ddd9d4;border:1px solid #d5d1cc;border-radius:999px;padding:8px 12px;line-height:1}.hall-editor-meta strong{color:#f5f3f0;background:#756a60;border-color:#756a60}.hall-editor-workspace{grid-template-columns:300px minmax(0,1fr) minmax(310px,360px);align-items:start;gap:16px;display:grid}.hall-editor-left-panel,.hall-editor-right-panel,.hall-editor-pro .table-inspector{background:#fffaf3f0;border:1px solid #d5d1cc;border-radius:14px;min-width:0;box-shadow:0 18px 42px #23232314}.hall-editor-left-panel{gap:14px;padding:14px;display:grid;position:sticky;top:16px}.hall-editor-pro .table-inspector{position:sticky;top:16px}.editor-side-tabs{background:#ddd9d4;border:1px solid #d5d1cc;border-radius:18px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;display:grid}.editor-side-tabs button{color:#1a1a1a;cursor:pointer;background:0 0;border:0;border-radius:14px;min-height:38px;font-size:13px;font-weight:700;transition:background-color .16s,box-shadow .16s,color .16s}.editor-side-tabs button:hover,.editor-side-tabs button:focus-visible{color:#1a1a1a;background:#fffaf3db;outline:none}.editor-side-tabs button.active{color:#f5f3f0;background:#756a60;box-shadow:0 8px 18px #23232329}.editor-side-section{gap:14px;min-width:0;display:grid}.editor-side-heading{justify-content:space-between;align-items:center;display:flex}.editor-side-heading span,.decor-tool-group h3,.layer-list-group h3,.hotkeys-panel h3{color:#7a756f;letter-spacing:0;text-transform:uppercase;margin:0;font-size:12px;font-weight:700}.editor-side-heading strong{color:#756a60;background:#ddd9d4;border:1px solid #d5d1cc;border-radius:999px;justify-content:center;align-items:center;min-width:28px;height:28px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.side-tool-button,.decor-tool-grid button,.side-object-list button,.layer-list-group>button,.layer-row{color:#1a1a1a;border:1px solid #d5d1cc;border-radius:16px}.side-tool-button{color:#f5f3f0;cursor:pointer;background:#756a60;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 14px;font-size:14px;font-weight:700;display:inline-flex;box-shadow:0 10px 22px #23232329}.side-tool-button:hover,.side-tool-button:focus-visible{outline-offset:2px;background:#1a1a1a;outline:2px solid #7d4a383d}.side-object-list,.layer-list-group{gap:8px;display:grid}.side-object-list button,.layer-list-group>button,.layer-row>button{cursor:pointer;text-align:left;background:#fffaf3db;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:46px;padding:9px 12px;transition:border-color .16s,background-color .16s,box-shadow .16s;display:flex}.side-object-list button span,.layer-list-group button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:700;overflow:hidden}.side-object-list button small,.layer-list-group button small{color:#7a756f;white-space:nowrap;font-size:11px;font-weight:600}.side-object-list button.active,.layer-list-group>button.active,.layer-row.active{background:#f5f3f0;border-color:#756a60;box-shadow:0 8px 18px #23232314}.decor-tool-group{gap:8px;display:grid}.decor-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.decor-tool-grid button{cursor:pointer;background:#f5f3f0;place-items:center;gap:6px;min-height:82px;padding:10px 8px;transition:background-color .16s,border-color .16s,transform .16s;display:grid}.decor-tool-grid button:hover,.decor-tool-grid button:focus-visible{background:#f8efe3;border-color:#cda777;outline:none;transform:translateY(-1px)}.decor-tool-grid button span{color:#756a60;background:#ddd9d4;border-radius:14px;justify-content:center;align-items:center;width:42px;height:34px;font-size:18px;font-weight:700;display:inline-flex}.decor-tool-grid button strong{color:#1a1a1a;font-size:12px;font-weight:700;line-height:1.15}.layer-row{background:#fffaf3db;gap:8px;padding:8px;display:grid}.layer-row>button{background:0 0;border:0;min-height:32px;padding:0}.mini-layer-actions{background:#ddd9d4;border:1px solid #d5d1cc;border-radius:999px;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;display:grid}.mini-layer-actions button{color:#1a1a1a;cursor:pointer;background:0 0;border:0;border-radius:999px;min-height:27px;font-size:11px;font-weight:700}.mini-layer-actions button.active{color:#f5f3f0;background:#756a60}.hotkeys-panel{color:#1a1a1a;font-size:13px;line-height:1.45}.hotkeys-panel p{margin:0}.hotkeys-panel kbd{color:#1a1a1a;background:#ddd9d4;border:1px solid #d5d1cc;border-radius:7px;padding:2px 5px;font-family:inherit;font-size:11px;font-weight:700}.hall-editor-canvas-panel{gap:12px;min-width:0;display:grid;padding:14px!important}.editor-canvas-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.editor-canvas-header h3{color:#1a1a1a;font-family:var(--font-heading);margin:2px 0 0;font-size:clamp(24px,2vw,34px);line-height:1}.editor-view-options{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.editor-view-options label{color:#1a1a1a;background:#ddd9d4;border:1px solid #d5d1cc;border-radius:999px;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.editor-view-options input{accent-color:#756a60}.editor-view-options>span{color:#1a1a1a;text-align:center;min-width:44px;font-size:13px;font-weight:700}.hall-editor-pro .hall-board-shell{background:radial-gradient(circle at 20% 18%,#d4bfa859,#0000 30%),#edebe7;border-color:#d5d1cc;border-radius:14px;justify-content:center;align-items:center;height:clamp(680px,74vh,920px);padding:24px;display:flex;overflow:auto;box-shadow:inset 0 1px #fff9,0 22px 48px #32241c1a}.hall-editor-pro .hall-board{flex:none}.hall-editor-pro .table-inspector h2{overflow-wrap:anywhere;font-size:clamp(26px,2vw,36px);line-height:.98}.hall-editor-pro .inspector-actions{gap:8px}.hall-neutral-object.neutral-text{color:var(--object-color);background:#fffaf3c7;border-style:solid}.hall-neutral-object.neutral-text .hall-object-icon{display:none}.hall-neutral-object.neutral-text strong{font-size:14px}.hall-neutral-object.neutral-plant,.hall-neutral-object.neutral-arrow{border-radius:999px}.hall-neutral-object.neutral-arrow .hall-object-icon{font-size:22px}.hall-neutral-object.neutral-stairs{background-image:repeating-linear-gradient(90deg,#7d4a3829 0 8px,#0000 8px 16px)}@media (max-width:1280px){.hall-editor-workspace{grid-template-columns:280px minmax(0,1fr)}.hall-editor-pro .table-inspector{grid-column:1/-1;position:static}}@media (max-width:960px){.hall-editor-topbar .editor-toolbar,.editor-canvas-header{flex-direction:column;align-items:stretch}.hall-editor-topbar .toolbar-actions,.editor-view-options{justify-content:flex-start}.hall-editor-workspace{grid-template-columns:minmax(0,1fr)}.hall-editor-left-panel{position:static}.hall-editor-pro .hall-board-shell{height:min(72vh,720px)}}@media (max-width:640px){.hall-editor-topbar,.hall-editor-left-panel,.hall-editor-pro .table-inspector,.hall-editor-canvas-panel{border-radius:18px}.hall-editor-topbar{padding:14px}.hall-editor-meta span,.hall-editor-meta strong{padding:7px 10px;font-size:12px}.editor-side-tabs,.decor-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hall-editor-pro .hall-board-shell{justify-content:flex-start;height:68vh;padding:14px}.editor-view-options label,.editor-view-options .button{min-height:40px}}.public-booking-board .public-neutral-object{-webkit-user-select:none;user-select:none;pointer-events:none!important}.public-booking-board .public-neutral-object.public-layer-back,.public-booking-board .public-neutral-object.neutral-zone{opacity:.72}.public-booking-board .public-neutral-object.neutral-zone{background:color-mix(in srgb, var(--object-color,#8f7b4d) 10%, #f5f3f0);border-style:dashed}.public-booking-board .public-neutral-object.public-layer-front{opacity:.9}.public-booking-board .booking-table{pointer-events:auto}.public-booking-board .booking-table.selected{z-index:1000!important}.banner-secondary-cta{display:none!important}.luxury-restaurant-card{cursor:pointer}.luxury-restaurant-card:focus-visible{outline-offset:4px;outline:3px solid #6b3d2e57}@media (max-width:680px){.catalog-page{width:min(100% - 16px,1240px)!important}.catalog-page .restaurant-showcase.home-banner-slider,.home-banner-slider{border-radius:14px!important;height:clamp(430px,76svh,520px)!important;min-height:430px!important;max-height:540px!important;margin-bottom:16px!important}.home-banner-slider .banner-copy{inset:auto 18px calc(58px + env(safe-area-inset-bottom)) 18px!important;align-content:end!important;gap:9px!important;max-height:calc(100% - 82px)!important;top:auto!important}.home-banner-slider .banner-copy h2{font-size:clamp(35px,11vw,50px)!important;line-height:.94!important}.home-banner-slider .banner-copy p{-webkit-line-clamp:2!important;font-size:15px!important;line-height:1.35!important}.home-banner-slider .banner-copy .showcase-meta{gap:7px!important;font-size:13px!important}.hero-slide-actions{grid-template-columns:1fr!important;gap:0!important;margin-top:4px!important;padding-bottom:0!important;display:grid!important}.home-banner-slider .banner-copy .hero-slide-actions .button{width:100%!important;min-height:46px!important;padding:0 14px!important;font-size:14px!important}.banner-dots{z-index:5!important;padding:6px 8px!important;bottom:16px!important;right:18px!important}.banner-dots button{width:8px!important;height:8px!important;min-height:8px!important}.banner-dots button.active{width:24px!important}.banner-arrow{width:38px!important;height:38px!important;min-height:38px!important;bottom:50%!important;transform:translateY(50%)!important}.catalog-page .catalog-section{margin:30px 0 40px!important}.catalog-page .section-heading{align-items:flex-start!important;gap:10px!important;margin-bottom:14px!important}.catalog-page .section-heading h2{font-size:clamp(31px,9vw,38px)!important;line-height:.98!important}.catalog-page .show-all-link{min-width:136px!important;height:36px!important;min-height:36px!important;padding:0 14px!important;font-size:13px!important}.restaurant-rail,.restaurants-grid{gap:16px!important}.restaurant-card,.luxury-restaurant-card{border-radius:14px!important;box-shadow:0 18px 46px #4c32201c!important}.restaurant-card-gallery,.restaurant-card-compact .card-image-link,.restaurant-card .card-image-link{aspect-ratio:auto!important;border-radius:14px!important;height:168px!important;min-height:0!important}.restaurant-card-cuisine-badge{max-width:calc(100% - 20px)!important;padding:6px 10px!important;font-size:11px!important;top:10px!important;right:10px!important}.restaurant-card-rating-badge{padding:6px 9px!important;font-size:12px!important;bottom:10px!important;left:10px!important}.restaurant-card-rating-badge small{font-size:10px!important}.restaurant-card-photo-dots{gap:5px!important;padding:4px 7px!important;bottom:10px!important;left:50%!important}.restaurant-card-photo-dots span{width:6px!important;height:6px!important}.restaurant-card-photo-dots span.active{width:16px!important}.luxury-card-body,.restaurant-card-compact .luxury-card-body{gap:10px!important;padding:16px!important}.restaurant-card h2,.restaurant-card h3{overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;max-width:100%;font-size:clamp(22px,6.5vw,27px)!important;line-height:1.05!important;display:-webkit-box!important;overflow:hidden!important}.restaurant-card-badges,.restaurant-card-chips{gap:6px!important}.restaurant-card-badges span,.restaurant-card-chips span{min-height:24px!important;padding:0 8px!important;font-size:11px!important}.restaurant-card-badges span:nth-child(n+3),.restaurant-card-chips span:nth-child(n+2){display:none!important}.restaurant-card-info{gap:7px!important;font-size:13px!important}.restaurant-card-info span{gap:7px!important}.restaurant-card-info svg{width:15px!important;height:15px!important}.restaurant-card-book-button{min-height:44px!important;margin-top:2px!important;font-size:14px!important}}@media (max-width:420px){.restaurant-card-gallery,.restaurant-card-compact .card-image-link,.restaurant-card .card-image-link{height:150px!important}.home-banner-slider .banner-copy h2{font-size:clamp(32px,10.5vw,44px)!important}}@media (max-width:680px){.home-banner-slider .banner-copy .showcase-meta{flex-wrap:wrap!important;align-items:center!important;gap:8px!important;min-height:0!important;margin:2px 0!important;display:flex!important}.home-banner-slider .banner-copy .showcase-meta span{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);color:#edebe7!important;overflow-wrap:normal!important;white-space:nowrap!important;background:#48322694!important;border:1px solid #ffffff2e!important;border-radius:999px!important;flex:0 auto!important;justify-content:flex-start!important;align-items:center!important;gap:7px!important;width:fit-content!important;min-width:0!important;max-width:100%!important;min-height:34px!important;padding:0 13px!important;display:inline-flex!important;box-shadow:0 8px 22px #00000024!important}.home-banner-slider .banner-copy .showcase-meta span:first-child{overflow-wrap:anywhere!important;white-space:normal!important;max-width:min(100%,290px)!important}.home-banner-slider .banner-copy .showcase-meta span:last-child{white-space:nowrap!important;flex:none!important}.home-banner-slider .banner-copy .showcase-meta svg{flex:none}.home-banner-slider .banner-copy .hero-slide-actions{margin-top:5px!important}}@media (max-width:420px){.home-banner-slider .banner-copy .showcase-meta span:first-child{max-width:min(100%,250px)!important}}.catalog-layout-bar{justify-content:flex-end;align-items:center;gap:12px;margin:-4px 0 22px;display:flex}.catalog-layout-bar>span{color:#2f3b30ad;font-size:13px;font-weight:600}.catalog-layout-switch{background:#fbf7f4d6;border:1px solid #d4bfa8b8;border-radius:999px;align-items:center;gap:4px;padding:4px;display:inline-flex;box-shadow:0 12px 30px #4c322014}.catalog-layout-switch a{color:#6f5c4f;border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:0 14px;font-size:13px;font-weight:700;transition:background .18s,color .18s,box-shadow .18s;display:inline-flex}.catalog-layout-switch a:hover{color:#4b3329;background:#efe0cdbd}.catalog-layout-switch a.active{color:#f0ede9;background:#7d4434;box-shadow:0 10px 22px #6b3d2e38}.catalog-layout-grid .restaurant-rail,.catalog-layout-grid .restaurants-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}.catalog-layout-large .restaurant-rail,.catalog-layout-large .restaurants-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important}@media (max-width:980px){.catalog-layout-grid .restaurant-rail,.catalog-layout-grid .restaurants-grid,.catalog-layout-large .restaurant-rail,.catalog-layout-large .restaurants-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (max-width:680px){.catalog-layout-bar{justify-content:flex-start;margin:2px 0 18px;padding-bottom:2px;overflow-x:auto}.catalog-layout-bar>span{display:none}.catalog-layout-switch{justify-content:space-between;width:100%}.catalog-layout-switch a{flex:1 1 0;min-height:38px}.catalog-layout-grid .restaurant-rail,.catalog-layout-grid .restaurants-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.catalog-layout-large .restaurant-rail,.catalog-layout-large .restaurants-grid{grid-template-columns:1fr!important;gap:18px!important}.catalog-layout-grid .restaurant-card,.catalog-layout-grid .luxury-restaurant-card{border-radius:18px!important;box-shadow:0 14px 34px #4c32201a!important}.catalog-layout-grid .restaurant-card-gallery,.catalog-layout-grid .restaurant-card-compact .card-image-link,.catalog-layout-grid .restaurant-card .card-image-link{border-radius:16px!important;height:118px!important}.catalog-layout-grid .luxury-card-body,.catalog-layout-grid .restaurant-card-compact .luxury-card-body{gap:7px!important;padding:10px!important}.catalog-layout-grid .restaurant-card h2,.catalog-layout-grid .restaurant-card h3{-webkit-line-clamp:2!important;font-size:clamp(17px,4.6vw,21px)!important;line-height:1.05!important}.catalog-layout-grid .restaurant-card-badges,.catalog-layout-grid .restaurant-card-chips{gap:5px!important}.catalog-layout-grid .restaurant-card-badges span,.catalog-layout-grid .restaurant-card-chips span{min-height:22px!important;padding:0 7px!important;font-size:10px!important}.catalog-layout-grid .restaurant-card-badges span:nth-child(n+2),.catalog-layout-grid .restaurant-card-chips{display:none!important}.catalog-layout-grid .restaurant-card-info{gap:5px!important;font-size:11px!important;line-height:1.25!important}.catalog-layout-grid .restaurant-card-info span{overflow-wrap:anywhere;min-width:0;gap:5px!important}.catalog-layout-grid .restaurant-card-info span:first-child{display:none!important}.catalog-layout-grid .restaurant-card-info svg{width:13px!important;height:13px!important}.catalog-layout-grid .restaurant-card-book-button{min-height:38px!important;margin-top:4px!important;padding:0 8px!important;font-size:12px!important}.catalog-layout-grid .restaurant-card-cuisine-badge{max-width:calc(100% - 16px)!important;padding:5px 8px!important;font-size:9px!important;top:8px!important;right:8px!important}.catalog-layout-grid .restaurant-card-rating-badge{padding:5px 7px!important;font-size:11px!important;bottom:8px!important;left:8px!important}.catalog-layout-grid .restaurant-card-rating-badge small{display:none!important}.catalog-layout-grid .restaurant-card-photo-dots{padding:3px 6px!important;bottom:8px!important}}@media (max-width:380px){.catalog-layout-grid .restaurant-rail,.catalog-layout-grid .restaurants-grid{gap:10px!important}.catalog-layout-grid .restaurant-card-gallery,.catalog-layout-grid .restaurant-card-compact .card-image-link,.catalog-layout-grid .restaurant-card .card-image-link{height:104px!important}.catalog-layout-grid .restaurant-card-book-button{font-size:11px!important}}.catalog-layout-bar{justify-content:flex-end!important;align-items:center!important;margin:-8px 0 20px!important;padding:0!important;display:flex!important}.catalog-layout-toggle{color:#714536;cursor:pointer;background:#fbf7f4eb;border:1px solid #d4bfa8b8;border-radius:16px;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;min-height:44px;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s;display:inline-flex;box-shadow:0 14px 34px #4c32201a}.catalog-layout-toggle:hover{background:#f0ede9;border-color:#7d443457;transform:translateY(-1px);box-shadow:0 18px 42px #4c322024}.catalog-layout-toggle:focus-visible{outline-offset:3px;outline:3px solid #7d44343d}.catalog-layout-toggle:active{transform:translateY(0)}@media (max-width:680px){.catalog-layout-bar{justify-content:flex-end!important;margin:-4px 0 16px!important;padding:0!important;overflow:visible!important}.catalog-layout-toggle{border-radius:14px;width:42px;min-width:42px;height:42px;min-height:42px}}.public-booking-board-scroll.fit-to-view{width:100%;height:var(--board-viewport-height,auto);min-height:var(--board-viewport-height,240px);touch-action:pan-x pan-y pinch-zoom;overscroll-behavior:contain;border-radius:14px;display:block;position:relative;overflow:hidden!important}.public-booking-board-scroll.fit-to-view.is-zoomed{-webkit-overflow-scrolling:touch;overflow:auto!important}.public-booking-board-zoom{margin:0 auto;position:relative}.public-booking-board-zoom .public-booking-board{transform-origin:0 0;width:var(--scheme-board-width)!important;min-width:0!important;max-width:none!important;height:var(--scheme-board-height)!important;min-height:0!important}.hall-zoom-controls{z-index:80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffaf4e6;border:1px solid #d4bfa8a6;border-radius:999px;align-items:center;gap:5px;width:max-content;padding:5px;display:inline-flex;position:sticky;top:10px;left:calc(100% - 116px);box-shadow:0 12px 28px #4c32201f}.hall-zoom-controls button{color:#1a1a1a;cursor:pointer;background:#ffffffe6;border:0;border-radius:999px;place-items:center;width:30px;height:30px;min-height:30px;font-size:16px;font-weight:700;line-height:1;display:inline-grid}.hall-zoom-controls button:hover:not(:disabled){color:#f5f3f0;background:#1a1a1a}.hall-zoom-controls button:disabled{opacity:.45;cursor:default}@media (max-width:640px){.booking-workspace .reservation-form,.public-reserve-page .reservation-form{border-radius:14px!important;gap:12px!important;padding:18px 14px!important}.reservation-form .section-heading.compact-heading{gap:8px!important;margin-bottom:4px!important;display:grid!important}.reservation-form .section-heading.compact-heading svg{display:none}.reservation-form .section-heading.compact-heading h2{overflow-wrap:anywhere;font-size:clamp(30px,9vw,40px)!important;line-height:.96!important}.reservation-form .section-heading.compact-heading p{font-size:14px!important;line-height:1.38!important}.reservation-form .form-grid,.reservation-form .form-grid.two,.booking-contact-fields{grid-template-columns:1fr!important;gap:10px!important}.reservation-form label{gap:5px!important}.reservation-form label>span,.time-picker-field>span{font-size:13px!important;line-height:1.2!important}.reservation-form input,.reservation-form textarea,.reservation-form .time-picker-trigger,.reservation-form .pretty-select-trigger{border-radius:16px!important;min-height:46px!important;font-size:15px!important}.booking-comment{min-height:86px!important}.public-hall-widget{border-radius:14px!important;gap:10px!important;padding:14px!important}.hall-widget-head{gap:7px!important}.hall-widget-head h3{font-size:clamp(24px,7.5vw,32px)!important;line-height:1!important}.hall-widget-head p{font-size:14px!important;line-height:1.35!important}.public-booking-board-scroll.fit-to-view{min-height:var(--board-viewport-height,220px)!important;padding-bottom:0!important}.public-booking-board-zoom .public-booking-board{border-radius:18px!important}.hall-zoom-controls{padding:4px;top:8px;left:calc(100% - 108px)}.hall-zoom-controls button{width:28px;height:28px;min-height:28px;font-size:15px}.booking-table{min-width:0!important;min-height:0!important}.booking-table .seat-dot{min-width:22px!important;min-height:22px!important}.hall-legend{flex-wrap:wrap;gap:6px 10px!important;font-size:12px!important;line-height:1.2!important;display:flex!important}.hall-legend i{width:10px;height:10px}.selected-table-summary,.hall-widget-state{border-radius:16px!important;gap:4px!important;padding:11px 12px!important}.selected-table-summary strong,.hall-widget-state strong{font-size:14px!important;line-height:1.25!important}.selected-table-summary span,.hall-widget-state span{font-size:13px!important;line-height:1.35!important}.booking-link-box,.booking-link-box.soft-box,.deposit-next-step{border-radius:16px!important;gap:4px!important;padding:11px 12px!important}.booking-link-box strong,.deposit-next-step strong{font-size:14px!important;line-height:1.25!important}.booking-link-box span,.deposit-next-step span,.booking-link-box small{font-size:13px!important;line-height:1.35!important}.reservation-form .button.full{border-radius:18px!important;min-height:48px!important}}.scroll-to-top-button{z-index:900;color:#f5f3f0;cursor:pointer;opacity:0;pointer-events:none;background:linear-gradient(135deg,#8a4633 0%,#c4774f 100%);border:1px solid #fff8ef6b;border-radius:999px;place-items:center;width:52px;height:52px;transition:opacity .18s,transform .18s,box-shadow .18s,background .18s;display:inline-grid;position:fixed;bottom:24px;left:24px;transform:translateY(12px)scale(.96);box-shadow:0 16px 34px #50281842,inset 0 1px #ffffff3d}.scroll-to-top-button.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.scroll-to-top-button:hover{background:linear-gradient(135deg,#7b3c2d 0%,#b96947 100%);transform:translateY(-2px)scale(1);box-shadow:0 20px 40px #5028184d,inset 0 1px #ffffff42}.scroll-to-top-button:active{transform:translateY(0)scale(.94)}.scroll-to-top-button:focus-visible{outline-offset:3px;outline:3px solid #d4bfa8b8}@media (min-width:768px){.scroll-to-top-button{display:none}}@media (max-width:640px){.scroll-to-top-button{left:18px;bottom:max(18px, env(safe-area-inset-bottom));width:48px;height:48px}}body:has(.menu-mobile-cart-bar) .scroll-to-top-button{bottom:calc(76px + env(safe-area-inset-bottom))}.cookie-consent{left:50%;bottom:calc(16px + env(safe-area-inset-bottom));z-index:950;background:#fff8ef;border:1.5px solid #c9823252;border-radius:16px;align-items:center;gap:16px;width:min(720px,100vw - 32px);padding:14px 18px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 18px 48px #32241c38}.cookie-consent p{color:#4e3a2f;margin:0;font-size:14px;line-height:1.45}.cookie-consent a{color:var(--accent,#c98232);text-underline-offset:3px;font-weight:600}.cookie-consent .button{flex:none;min-height:42px;padding:0 22px}@media (max-width:560px){.cookie-consent{text-align:left;flex-direction:column;align-items:stretch;gap:10px}.cookie-consent .button{width:100%}}.restaurant-rail,.restaurants-grid{align-items:stretch!important}.restaurant-card,.luxury-restaurant-card{flex-direction:column!important;height:100%!important;display:flex!important}.restaurant-card .card-image-link,.luxury-restaurant-card .card-image-link{flex:none!important}.restaurant-card-body,.luxury-card-body{flex-direction:column!important;flex:auto!important;min-height:0!important;display:flex!important}.restaurant-card-title-block{min-width:0}.restaurant-card-info{margin-top:auto!important}.restaurant-card-book-button{text-align:center!important;white-space:normal!important;justify-content:center!important;align-items:center!important;width:100%!important;margin-top:12px!important;line-height:1.12!important;display:inline-flex!important}.catalog-filter-strip .catalog-layout-bar{margin:0!important}@media (max-width:680px){.catalog-filter-strip{grid-template-columns:minmax(0,1fr) 48px 48px!important;align-items:center!important;gap:8px!important;margin:0 0 24px!important;padding:0!important;display:grid!important;overflow:visible!important}.catalog-search-field{border-radius:999px!important;min-width:0!important;height:48px!important;min-height:48px!important}.catalog-search-field input{min-height:0!important;font-size:13px!important;line-height:1.2!important}.catalog-filter-strip .catalog-layout-bar{justify-content:center!important;align-items:center!important;width:48px!important;height:48px!important;margin:0!important;padding:0!important;display:flex!important;overflow:visible!important}.catalog-mobile-filter-button,.catalog-layout-toggle{position:relative;border-radius:16px!important;justify-content:center!important;align-items:center!important;width:48px!important;min-width:48px!important;height:48px!important;min-height:48px!important;padding:0!important;font-size:0!important;line-height:0!important;display:inline-flex!important}.catalog-mobile-filter-button svg,.catalog-layout-toggle svg{flex:none;width:21px!important;height:21px!important}.catalog-mobile-filter-button>span{position:absolute;top:-6px;right:-6px;min-width:20px!important;height:20px!important;font-size:11px!important;line-height:20px!important}.catalog-layout-grid .restaurant-card,.catalog-layout-grid .luxury-restaurant-card{min-height:100%!important}.catalog-layout-grid .luxury-card-body,.catalog-layout-grid .restaurant-card-compact .luxury-card-body{min-height:206px!important}.catalog-layout-grid .restaurant-card-title-block{min-height:44px!important}.catalog-layout-grid .restaurant-card h2,.catalog-layout-grid .restaurant-card h3{-webkit-box-orient:vertical;-webkit-line-clamp:2!important;display:-webkit-box!important;overflow:hidden!important}.catalog-layout-grid .restaurant-card-info{min-height:42px!important;margin-top:auto!important}.catalog-layout-grid .restaurant-card-book-button{border-radius:999px!important;min-height:42px!important;margin-top:10px!important;padding:0 8px!important;font-size:clamp(11px,3.1vw,13px)!important}}.date-picker-field{position:relative}.date-picker-trigger{color:#1a1a1a;cursor:pointer;font:inherit;background:#f5f3f0;border:1px solid #dfc8ad;border-radius:18px;justify-content:space-between;align-items:center;width:100%;height:54px;padding:0 16px;display:flex}.date-picker-trigger:hover,.date-picker-trigger:focus-visible,.time-picker-trigger:hover,.time-picker-trigger:focus-visible{border-color:#7d4a3894;outline:none;box-shadow:0 0 0 4px #7d4a381a}.date-picker-trigger svg{color:#1a1a1a}.date-picker-popover{z-index:70;background:#f5f3f0;border:1px solid #d5d1cc;border-radius:14px;width:min(360px,100vw - 32px);margin-top:8px;padding:14px;position:absolute;top:100%;left:0;box-shadow:0 24px 70px #2323232e}.date-picker-header{grid-template-columns:40px 1fr 40px;align-items:center;gap:10px;margin-bottom:12px;display:grid}.date-picker-header strong{color:#1a1a1a;text-align:center;text-transform:capitalize;font-size:15px;font-weight:700}.date-picker-header button,.date-picker-footer button{color:#1a1a1a;cursor:pointer;background:#ddd9d4;border:1px solid #d5d1cc;border-radius:999px;justify-content:center;align-items:center;min-height:38px;font-weight:700;display:inline-flex}.date-picker-header button:disabled,.date-picker-grid button:disabled{cursor:default;opacity:.38}.date-picker-weekdays,.date-picker-grid{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.date-picker-weekdays{color:#8a7566;margin-bottom:6px;font-size:12px;font-weight:700}.date-picker-grid{gap:5px}.date-picker-grid button{aspect-ratio:1;color:#1a1a1a;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;font-weight:600}.date-picker-grid button:not(:disabled):hover{background:#ddd9d4;border-color:#d5d1cc}.date-picker-grid button.selected{color:#fff;background:#756a60;border-color:#756a60}.date-picker-grid button.muted{color:#b9aa9b}.date-picker-footer{justify-content:flex-end;margin-top:12px;display:flex}.date-picker-footer button{min-height:34px;padding:0 14px}.menu-gallery-layout{gap:30px}.menu-gallery-category{background:#fffdf8db;border:1px solid #d4bfa88f;border-radius:14px;padding:24px;overflow:hidden;box-shadow:0 18px 54px #4c322014}.menu-gallery-category h3{color:#1a1a1a;font-size:clamp(28px,3.2vw,40px);line-height:1}.dish-gallery-track{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));align-items:stretch}.dish-card{flex-direction:column;min-width:0;display:flex}.dish-card-body{flex:1}.dish-card-body strong{color:#1a1a1a;font-family:var(--font-serif,Georgia, serif);overflow-wrap:anywhere;font-size:22px;line-height:1.05}.hall-zoom-controls{display:none!important}@media (max-width:680px){.date-picker-trigger,.reservation-form .date-picker-trigger{border-radius:16px!important;min-height:46px!important;font-size:15px!important}.date-picker-field>span{font-size:13px!important;line-height:1.2!important}.date-picker-popover{z-index:1300;width:auto;max-height:min(560px,100svh - 36px);position:fixed;inset:auto 14px 18px;overflow:auto}.menu-gallery-layout{gap:24px}.menu-gallery-category{border-radius:14px;margin-inline:-4px;padding:18px 0 18px 18px}.menu-gallery-category h3{padding-right:18px}.dish-gallery-track,.dish-card-grid.dish-gallery-track{scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 18px 10px 0;scroll-padding-left:0;overflow:auto hidden;grid-template-columns:none!important;gap:14px!important;display:flex!important}.dish-gallery-track::-webkit-scrollbar{display:none}.dish-card{scroll-snap-align:start;flex:0 0 min(78vw,310px)}.dish-card-body p{min-height:0}}.catalog-filter-strip{grid-template-columns:minmax(260px,360px) 44px repeat(3,minmax(130px,max-content));width:100%;max-width:100%;align-items:center!important;gap:10px!important;display:grid!important;overflow:visible!important}.catalog-filter-controls{display:contents!important}.catalog-filter-strip .catalog-layout-bar{order:2;width:44px!important;height:44px!important}.catalog-filter-controls>.catalog-filter-chip{order:4}.catalog-filter-controls>.catalog-filter-sheet-head,.catalog-filter-controls>.catalog-filter-sheet-actions{order:20}.catalog-search-field{order:1;width:100%!important;max-width:none!important}.catalog-search-field input::placeholder{color:#7b7169!important;opacity:1!important}.catalog-filter-chip,.catalog-filter-reset{max-width:100%}.catalog-filter-chip .catalog-filter-trigger{max-width:100%;justify-content:space-between!important;width:100%!important}.catalog-filter-chip .catalog-filter-trigger span{text-overflow:ellipsis;min-width:0;max-width:min(230px,24vw);overflow:hidden;text-align:left!important;justify-content:flex-start!important}.catalog-mobile-filter-button{order:3}.catalog-filter-count{display:inline-grid!important}.restaurant-card-title-block h3{overflow-wrap:anywhere;word-break:normal;max-width:100%}.catalog-layout-grid .restaurant-card-title-block{position:relative;min-height:50px!important;max-height:50px!important;overflow:hidden!important}.catalog-layout-grid .restaurant-card-title-block:after{display:none!important}.catalog-layout-grid .restaurant-card h3{-webkit-box-orient:vertical;-webkit-line-clamp:2!important;max-height:2.08em!important;line-height:1.04!important;display:-webkit-box!important;overflow:hidden!important}.catalog-layout-grid .restaurant-card-title-block p{display:none!important}.public-booking-board-scroll.fit-to-view{touch-action:none!important;overflow:auto!important}.public-booking-board-scroll.fit-to-view.is-fit{height:min(62vh, max(var(--board-viewport-height,360px), 320px))!important;min-height:320px!important}.public-booking-board-scroll.fit-to-view.is-zoomed{height:min(70vh, max(var(--board-viewport-height,420px), 360px))!important}.public-booking-board-zoom{min-width:100%;min-height:100%}.hall-zoom-controls{position:absolute!important;top:12px!important;left:auto!important;right:12px!important}@media (min-width:1180px){.catalog-filter-strip{grid-template-columns:minmax(240px,300px) 44px repeat(6,max-content);gap:8px!important}.catalog-filter-chip .catalog-filter-trigger{gap:6px!important;width:auto!important;min-width:0!important;padding-inline:12px!important}.catalog-filter-chip .catalog-filter-trigger span{max-width:none!important;font-size:12px!important}.catalog-mobile-filter-button,.catalog-filter-controls>.catalog-filter-sheet-head,.catalog-filter-controls>.catalog-filter-sheet-actions{display:none!important}}@media (max-width:1179px) and (min-width:681px){.catalog-filter-strip{grid-template-columns:minmax(240px,1fr) 44px repeat(3,minmax(128px,max-content))}.catalog-filter-controls>.catalog-filter-sheet-head,.catalog-filter-controls>.catalog-filter-sheet-actions{display:none!important}.catalog-filter-chip:nth-of-type(n+5){display:none}}@media (max-width:680px){.catalog-filter-strip{grid-template-columns:minmax(0,1fr) 44px 44px!important;gap:7px!important;width:calc(100vw - 32px)!important;max-width:calc(100vw - 32px)!important;margin-inline:auto!important}.catalog-filter-controls{display:grid!important}.catalog-filter-controls:not(.open){display:none!important}.catalog-filter-controls>.catalog-filter-sheet-head{order:0}.catalog-filter-controls>.catalog-filter-chip{order:1}.catalog-filter-controls>.catalog-filter-sheet-actions{order:2}.catalog-search-field input{font-size:13px!important;font-weight:600!important}.catalog-filter-strip .catalog-layout-bar{width:44px!important;height:44px!important}.catalog-mobile-filter-button,.catalog-layout-toggle{border-radius:15px!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important}.catalog-mobile-filter-button .catalog-filter-button-label{clip:rect(0 0 0 0)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.catalog-layout-grid .restaurant-card-title-block{min-height:48px!important;max-height:48px!important}.catalog-layout-grid .restaurant-card h3{font-size:clamp(17px,4.45vw,20px)!important}.public-booking-board-scroll.fit-to-view.is-zoomed{height:min(62vh, max(var(--board-viewport-height,320px), 260px))!important}.public-booking-board-scroll.fit-to-view.is-fit{height:min(54vh, max(var(--board-viewport-height,300px), 260px))!important;min-height:260px!important}.hall-zoom-controls{top:10px!important;right:10px!important}}.verification-box{background:linear-gradient(135deg,#fbf7f4f0,#f6eee2db);border:1px solid #75533a29;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;display:grid;box-shadow:0 14px 34px #23232314}.verification-copy{align-items:flex-start;gap:12px;min-width:0;display:flex}.verification-icon{color:#1a1a1a;background:#d4bfa83d;border:1px solid #75533a29;border-radius:14px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.verification-copy strong{color:#1a1a1a;font-size:16px;font-weight:700;display:block}.verification-copy p,.verification-copy small{color:#766b60;margin:5px 0 0;line-height:1.45;display:block}.verification-copy small{color:#1a1a1a;overflow-wrap:anywhere;font-weight:600}.verification-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.verification-code-row{grid-column:1/-1;grid-template-columns:minmax(180px,260px) auto;align-items:end;gap:10px;display:grid}.verification-code-field{gap:7px;display:grid}.verification-code-field span{color:#1a1a1a;font-size:13px;font-weight:700}.verification-code-submit{min-height:48px}.verification-button,.verification-link{color:#1a1a1a;background:#f5f3f0;border:1px solid #75533a2e;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-size:14px;font-weight:700;transition:transform .16s,background .16s,box-shadow .16s;display:inline-flex;box-shadow:0 8px 20px #23232314}.verification-button:hover,.verification-link:hover{background:#f5e8d8;transform:translateY(-1px);box-shadow:0 12px 24px #2323231f}.verification-confirmed{background:linear-gradient(135deg,#f1faeef5,#f7f2e7e6);border-color:#4a795742}.verification-confirmed .verification-icon{color:#3f6f4a;background:#4a795721}.verification-pending{border-color:#c9a97f66}.verification-expired,.verification-failed{background:linear-gradient(135deg,#fff7f3f5,#f7ece4e0);border-color:#963e2c38}.verification-badge{color:#1a1a1a;background:#f5f3f0;border:1px solid #75533a29;border-radius:999px;align-items:center;width:fit-content;padding:7px 10px;font-size:12px;font-weight:700;display:inline-flex}.verification-badge.confirmed{color:#3f6f4a;background:#eef7ec;border-color:#4a79573d}.verification-badge.unverified{color:#766b60}@media (max-width:720px){.verification-box{grid-template-columns:1fr}.verification-actions{justify-content:stretch}.verification-code-row{grid-template-columns:1fr}.verification-button,.verification-link{flex:auto}}.restaurant-card-title-block,.catalog-layout-grid .restaurant-card-title-block{min-width:0!important;min-height:2.44em!important;max-height:none!important;overflow:visible!important}.restaurant-card-title-block h3,.restaurant-card h3,.catalog-layout-grid .restaurant-card h3{overflow-wrap:anywhere!important;word-break:normal!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;max-width:100%!important;min-height:2.44em!important;max-height:2.44em!important;margin:0!important;padding:0 0 .16em!important;line-height:1.14!important;display:-webkit-box!important;overflow:hidden!important}.home-banner-slider,.restaurant-card-gallery{touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.restaurant-card-gallery-image{-webkit-user-drag:none}@media (max-width:680px){.restaurant-card-title-block,.catalog-layout-grid .restaurant-card-title-block{min-height:2.5em!important}.restaurant-card-title-block h3,.restaurant-card h3,.catalog-layout-grid .restaurant-card h3{min-height:2.5em!important;max-height:2.5em!important;padding-bottom:.18em!important;line-height:1.16!important}.restaurant-profile main+.app-footer{display:none!important}main:has(.restaurant-profile)+.app-footer{display:none!important}.profile-section#gallery{overflow:hidden;gap:14px!important}.profile-gallery.enhanced-gallery,.profile-gallery.enhanced-gallery.gallery-count-1,.profile-gallery.enhanced-gallery.gallery-count-2,.profile-gallery.enhanced-gallery.gallery-count-3,.profile-gallery.enhanced-gallery.gallery-count-4,.profile-gallery.enhanced-gallery.gallery-count-5,.profile-gallery.enhanced-gallery.gallery-count-6{scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:-2px -10px;padding:2px 10px 12px 2px;scroll-padding-left:2px;grid-template-columns:none!important;grid-auto-rows:unset!important;gap:14px!important;display:flex!important;overflow:auto hidden!important}.profile-gallery.enhanced-gallery::-webkit-scrollbar{display:none}.profile-gallery.enhanced-gallery .gallery-item,.profile-gallery.enhanced-gallery .gallery-item:first-child,.profile-gallery.enhanced-gallery.gallery-count-1 .gallery-item{scroll-snap-align:start;aspect-ratio:4/3!important;border-radius:14px!important;flex:0 0 min(78vw,330px)!important;width:min(78vw,330px)!important;min-width:min(78vw,330px)!important;max-width:min(78vw,330px)!important;box-shadow:0 16px 36px #4c32201f!important}.profile-gallery.enhanced-gallery.gallery-count-1 .gallery-item{flex-basis:min(88vw,380px)!important;width:min(88vw,380px)!important;min-width:min(88vw,380px)!important;max-width:min(88vw,380px)!important}}@media (min-width:1180px){.catalog-filter-strip{grid-template-columns:minmax(260px,360px) repeat(6,max-content) minmax(44px,1fr)!important}.catalog-filter-controls>.catalog-filter-chip{order:10!important}.catalog-filter-strip .catalog-layout-bar{order:50!important;justify-self:end!important}}@media (max-width:1179px) and (min-width:681px){.catalog-filter-strip{grid-template-columns:minmax(240px,1fr) repeat(3,minmax(128px,max-content)) minmax(44px,auto)!important}.catalog-filter-controls>.catalog-filter-chip{order:10!important}.catalog-filter-strip .catalog-layout-bar{order:50!important;justify-self:end!important}}@media (max-width:680px){.catalog-filter-controls.open .catalog-filter-chip .catalog-filter-trigger,.catalog-filter-controls.open .catalog-filter-reset,.catalog-filter-controls.open .catalog-filter-sheet-actions .button{min-height:52px!important;padding-inline:18px!important}.catalog-filter-controls.open .catalog-filter-chip .catalog-filter-trigger span{text-overflow:ellipsis!important;white-space:nowrap!important;max-width:calc(100% - 28px)!important;font-size:14px!important;line-height:1.15!important;display:block!important;overflow:hidden!important}.catalog-filter-controls.open .catalog-filter-chip .catalog-filter-trigger svg{flex:none!important}}.working-hours-form{gap:18px;display:grid;border-radius:14px!important}.working-hours-list{background:#fffdf8b3;border:1px solid #d4bfa87a;border-radius:14px;gap:0;display:grid;overflow:hidden}.working-hours-row{border-bottom:1px solid #d4bfa86b!important;grid-template-columns:minmax(120px,160px) minmax(0,1fr) minmax(0,1fr) minmax(105px,auto)!important;align-items:center!important;gap:14px!important;padding:16px 18px!important}.working-hours-row:last-child{border-bottom:0!important}.working-hours-day{color:#1a1a1a;font-size:15px;font-weight:700}.office-time-field{gap:7px;min-width:0;display:grid}.office-time-field>span:first-child{color:#756a60;font-size:12px;font-weight:700}.office-time-select-wrap{min-width:0;display:block;position:relative}.office-time-select-wrap:after{content:"";pointer-events:none;border-bottom:2px solid #1a1a1a;border-right:2px solid #1a1a1a;width:9px;height:9px;position:absolute;top:50%;right:16px;transform:translateY(-65%)rotate(45deg)}.office-time-select{appearance:none;color:#1a1a1a;width:100%;min-height:48px;font:inherit;background:linear-gradient(#f5f3f0,#f0ede9);border:1px solid #d4bfa8c7;border-radius:16px;outline:none;padding:0 44px 0 16px;font-size:15px;font-weight:700;transition:border-color .16s,box-shadow .16s,transform .16s,background .16s;box-shadow:0 10px 24px #2323230f}.office-time-select:hover{background:#f5f3f0;border-color:#6b3d2e52}.office-time-select:focus{border-color:#6b3d2e94;box-shadow:0 0 0 4px #6b3d2e1a,0 12px 28px #23232314}.working-hours-closed{color:#5f554d;background:#fffaf4b8;border:1px solid #d4bfa88c;border-radius:16px;align-self:end;min-height:48px;padding:0 12px;font-size:14px;font-weight:700}.working-hours-closed input{accent-color:#756a60}@media (max-width:820px){.working-hours-row{grid-template-columns:1fr!important;gap:10px!important;padding:16px!important}.working-hours-day{font-size:16px}.working-hours-closed{align-self:stretch}}@media (max-width:680px){.catalog-layout-grid .restaurant-rail,.catalog-layout-grid .restaurants-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:auto!important;align-items:start!important;gap:14px!important}.catalog-layout-grid .restaurant-card,.catalog-layout-grid .restaurant-card.restaurant-card-compact,.catalog-layout-grid .luxury-restaurant-card{border-radius:18px!important;flex-direction:column!important;align-self:start!important;height:auto!important;min-height:0!important;display:flex!important;overflow:hidden!important}.catalog-layout-grid .restaurant-card-gallery,.catalog-layout-grid .restaurant-card-compact .card-image-link,.catalog-layout-grid .restaurant-card .card-image-link{aspect-ratio:auto!important;border-radius:16px!important;flex:0 0 clamp(104px,28vw,132px)!important;height:clamp(104px,28vw,132px)!important;min-height:clamp(104px,28vw,132px)!important;max-height:clamp(104px,28vw,132px)!important}.catalog-layout-grid .restaurant-card-body,.catalog-layout-grid .luxury-card-body,.catalog-layout-grid .restaurant-card-compact .luxury-card-body{flex-direction:column!important;flex:0 auto!important;gap:8px!important;height:auto!important;min-height:0!important;padding:12px 10px!important;display:flex!important}.catalog-layout-grid .restaurant-card-title-block{min-height:0!important;max-height:none!important;overflow:visible!important}.catalog-layout-grid .restaurant-card h2,.catalog-layout-grid .restaurant-card h3{-webkit-line-clamp:2!important;overflow-wrap:anywhere!important;-webkit-box-orient:vertical!important;min-height:0!important;max-height:2.52em!important;padding-bottom:.12em!important;font-size:clamp(18px,5.2vw,23px)!important;line-height:1.16!important;display:-webkit-box!important;overflow:hidden!important}.catalog-layout-grid .restaurant-card-title-block p,.catalog-layout-grid .restaurant-card-badges span:nth-child(n+2),.catalog-layout-grid .restaurant-card-chips{display:none!important}.catalog-layout-grid .restaurant-card-badges{gap:5px!important;min-height:0!important;margin:0!important}.catalog-layout-grid .restaurant-card-badges span{white-space:nowrap!important;text-overflow:ellipsis!important;max-width:100%!important;min-height:24px!important;padding:0 8px!important;font-size:10px!important;overflow:hidden!important}.catalog-layout-grid .restaurant-card-info{gap:6px!important;min-height:0!important;margin-top:2px!important;font-size:11px!important;line-height:1.25!important}.catalog-layout-grid .restaurant-card-info span:first-child{display:none!important}.catalog-layout-grid .restaurant-card-info span{overflow-wrap:anywhere!important;gap:5px!important;min-width:0!important}.catalog-layout-grid .restaurant-card-info svg{width:13px!important;height:13px!important}.catalog-layout-grid .restaurant-card-book-button{white-space:normal!important;border-radius:999px!important;width:100%!important;min-height:42px!important;margin-top:8px!important;padding:0 8px!important;font-size:clamp(11px,3.1vw,13px)!important;line-height:1.12!important}}.vk-mini-layout .catalog-filter-strip{grid-template-columns:minmax(0,1fr) 48px 48px!important;align-items:center!important;gap:10px!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;display:grid!important;overflow:visible!important}.vk-mini-layout .catalog-search-field{order:1;background:#fffffff0!important;border:1px solid #ddc4a7a8!important;border-radius:999px!important;width:100%!important;min-width:0!important;max-width:none!important;height:48px!important;min-height:48px!important;padding:0 12px!important;box-shadow:0 12px 26px #23232314!important}.vk-mini-layout .catalog-search-field input{text-overflow:ellipsis!important;width:100%!important;min-width:0!important;font-size:13px!important;font-weight:600!important}.vk-mini-layout .catalog-search-field input::placeholder{color:#5b4f46c7!important;opacity:1!important}.vk-mini-layout .catalog-layout-bar{order:2;width:48px!important;min-width:48px!important;height:48px!important;margin:0!important;padding:0!important;display:flex!important}.vk-mini-layout .catalog-layout-bar>span{display:none!important}.vk-mini-layout .catalog-layout-bar .catalog-layout-toggle{color:#756a60!important;background:#fffffff0!important;border:1px solid #ddc4a7a8!important;border-radius:18px!important;width:48px!important;min-width:48px!important;height:48px!important;padding:0!important;box-shadow:0 12px 26px #23232314!important}.vk-mini-layout .catalog-mobile-filter-button{order:3;color:#756a60!important;background:#fffffff0!important;border:1px solid #ddc4a7a8!important;border-radius:18px!important;justify-content:center!important;align-items:center!important;width:48px!important;min-width:48px!important;height:48px!important;min-height:48px!important;margin:0!important;padding:0!important;display:inline-flex!important;position:relative!important;box-shadow:0 12px 26px #23232314!important}.vk-mini-layout .catalog-mobile-filter-button .catalog-filter-button-label{display:none!important}.vk-mini-layout .catalog-mobile-filter-button svg,.vk-mini-layout .catalog-layout-toggle svg{width:20px!important;height:20px!important}.vk-mini-layout .catalog-filter-count{color:#f5f3f0!important;background:#756a60!important;border-radius:999px!important;justify-content:center!important;align-items:center!important;min-width:20px!important;height:20px!important;padding:0 6px!important;font-size:11px!important;font-weight:700!important;line-height:1!important;display:inline-flex!important;position:absolute!important;top:-7px!important;right:-7px!important}.vk-mini-layout .catalog-filter-controls:not(.open){display:none!important}.vk-mini-layout .catalog-filter-backdrop{z-index:80!important;-webkit-backdrop-filter:blur(5px)!important;backdrop-filter:blur(5px)!important;background:#261a125c!important;border:0!important;width:100vw!important;height:100vh!important;display:block!important;position:fixed!important;inset:0!important}.vk-mini-layout .catalog-filter-controls.open{left:50%!important;right:auto!important;bottom:calc(82px + env(safe-area-inset-bottom))!important;z-index:90!important;background:linear-gradient(#f5f3f0,#fbf3e8)!important;border:1px solid #ddc4a7b8!important;border-radius:14px!important;grid-template-columns:1fr!important;gap:10px!important;width:min(420px,100vw - 28px)!important;max-height:min(76vh,620px)!important;margin:0!important;padding:18px!important;display:grid!important;position:fixed!important;overflow:auto!important;transform:translate(-50%)!important;box-shadow:0 26px 70px #2d1d1247!important}.vk-mini-layout .catalog-filter-controls.open .catalog-filter-sheet-head{justify-content:space-between!important;align-items:flex-start!important;gap:14px!important;margin:0 0 4px!important;display:flex!important}.vk-mini-layout .catalog-filter-controls.open .catalog-filter-sheet-head strong{color:#1a1a1a!important;font-size:21px!important;font-weight:700!important;line-height:1.05!important;display:block!important}.vk-mini-layout .catalog-filter-controls.open .catalog-filter-sheet-head span{color:#756a60!important;margin-top:4px!important;font-size:12px!important;font-weight:700!important;display:block!important}.vk-mini-layout .catalog-filter-controls.open .catalog-filter-sheet-head button{color:#756a60!important;background:#f5f3f0!important;border:1px solid #ddc4a7b8!important;border-radius:999px!important;justify-content:center!important;align-items:center!important;width:42px!important;min-width:42px!important;height:42px!important;display:inline-flex!important;box-shadow:0 10px 24px #23232314!important}.vk-mini-layout .catalog-filter-controls.open .catalog-filter-chip,.vk-mini-layout .catalog-filter-controls.open .filter-dropdown{width:100%!important;max-width:100%!important}.vk-mini-layout .catalog-filter-controls.open .catalog-filter-trigger{color:#1a1a1a!important;background:#f2eee8!important;border:1px solid #ddc4a78a!important;border-radius:18px!important;justify-content:space-between!important;width:100%!important;min-height:48px!important;padding:0 16px!important;font-size:13px!important;font-weight:700!important}.vk-mini-layout .catalog-filter-controls.open .catalog-filter-trigger.selected,.vk-mini-layout .catalog-filter-controls.open .catalog-filter-chip.has-value .catalog-filter-trigger{color:#f5f3f0!important;background:#756a60!important;border-color:#756a60!important}.vk-mini-layout .catalog-filter-controls.open .catalog-filter-trigger span{text-overflow:ellipsis!important;white-space:nowrap!important;min-width:0!important;max-width:calc(100% - 24px)!important;overflow:hidden!important}.vk-mini-layout .catalog-filter-controls.open .catalog-filter-menu{z-index:120!important;width:100%!important;max-height:240px!important;position:absolute!important;overflow:auto!important}.vk-mini-layout .catalog-filter-sheet-actions{grid-template-columns:1fr!important;gap:10px!important;margin-top:4px!important;display:grid!important}.vk-mini-layout .catalog-filter-sheet-actions .button,.vk-mini-layout .catalog-filter-reset{border-radius:18px!important;width:100%!important;min-height:48px!important;font-size:14px!important;font-weight:700!important}@media (max-width:390px){.vk-mini-layout .catalog-filter-strip{grid-template-columns:minmax(0,1fr) 44px 44px!important;gap:8px!important}.vk-mini-layout .catalog-search-field,.vk-mini-layout .catalog-layout-bar,.vk-mini-layout .catalog-layout-bar .catalog-layout-toggle,.vk-mini-layout .catalog-mobile-filter-button{height:44px!important;min-height:44px!important}.vk-mini-layout .catalog-layout-bar,.vk-mini-layout .catalog-layout-bar .catalog-layout-toggle,.vk-mini-layout .catalog-mobile-filter-button{width:44px!important;min-width:44px!important}}.menu-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.menu-section-title{cursor:pointer;color:var(--ink);background:0 0;border:none;align-items:center;gap:10px;margin:0;padding:0;display:inline-flex;position:relative}.menu-section-title>span:first-child{font-family:var(--font-serif,Georgia, serif);font-size:clamp(24px,2.6vw,34px);font-weight:600;line-height:1.12;transition:color .2s}.menu-section-title-icon{color:#7a756f;opacity:0;flex-shrink:0;transition:opacity .25s,transform .25s,color .25s;transform:translate(-4px)}.menu-section-title:after{content:"";background:#1a1a1a;border-radius:2px;width:0;height:2px;transition:width .3s;position:absolute;bottom:-2px;left:0}.menu-section-title:hover>span:first-child{color:#1a1a1a}.menu-section-title:hover .menu-section-title-icon{opacity:1;color:#1a1a1a;transform:translate(0)}.menu-section-title:hover:after{width:100%}.menu-section-links{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.menu-section-links .menu-slider-link{cursor:pointer}.menu-slider-tabs{scrollbar-width:none;-ms-overflow-style:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.menu-slider-tabs::-webkit-scrollbar{display:none}.menu-slider-tabs button{color:#7a756f;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #a3938240;border-radius:999px;align-items:center;gap:6px;padding:7px 16px;font-size:14px;font-weight:600;transition:all .18s;display:inline-flex}.menu-slider-tabs button:hover{background:#a3938214;border-color:#a3938266}.menu-slider-tabs button.is-active{color:#f5f3f0;background:#1a1a1a;border-color:#1a1a1a}.menu-slider-tab-count{opacity:.7;font-size:12px}.menu-slider-wrapper{min-width:0;position:relative;overflow:visible}.menu-slider-track{scroll-snap-type:x mandatory;scroll-behavior:smooth;-ms-overflow-style:none;scrollbar-width:none;gap:16px;padding-bottom:4px;display:flex;overflow:auto hidden}.menu-slider-track::-webkit-scrollbar{display:none}.menu-slider-track .dish-card{scroll-snap-align:start;flex-direction:column;flex:0 0 min(72vw,260px);min-width:0;display:flex}.menu-slider-track .dish-card-body{flex:1}.menu-slider-arrow{z-index:5;color:#1a1a1a;cursor:pointer;background:#fbf7f4f2;border:1px solid #a3938266;border-radius:999px;justify-content:center;align-items:center;width:40px;height:40px;margin:0;padding:0;transition:transform .16s,box-shadow .16s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 8px 20px #23232324}.menu-slider-arrow:hover{transform:translateY(-50%)scale(1.08);box-shadow:0 12px 28px #23232333}.menu-slider-arrow-left{left:-20px}.menu-slider-arrow-right{right:-20px}.menu-slider-wrapper:before,.menu-slider-wrapper:after{content:"";z-index:3;pointer-events:none;opacity:0;width:48px;transition:opacity .25s;position:absolute;top:0;bottom:0}.menu-slider-wrapper:before{background:linear-gradient(90deg,#fffffff2 30%,#0000);left:0}.menu-slider-wrapper:after{background:linear-gradient(270deg,#fffffff2 30%,#0000);right:0}.menu-slider-wrapper.has-scroll-left:before,.menu-slider-wrapper.has-scroll-right:after{opacity:1}.menu-slider-link{align-items:center;gap:6px;min-height:44px;display:inline-flex}.menu-pdf-viewer{background:#f5f3f0;border-radius:14px;flex-direction:column;width:min(960px,100%);height:calc(100dvh - 80px);margin:40px auto;padding:28px;animation:.24s menuModalIn;display:flex;position:relative;box-shadow:0 40px 100px #2323234d}.menu-pdf-iframe{background:#fff;border:none;border-radius:16px;flex:1;width:100%}.menu-modal-overlay{z-index:1100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);-webkit-overflow-scrolling:touch;background:#23232399;justify-content:center;align-items:flex-start;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.menu-modal{background:#f5f3f0;border-radius:14px;width:min(960px,100%);margin:40px auto;padding:28px;animation:.24s menuModalIn;position:relative;box-shadow:0 40px 100px #2323234d}@keyframes menuModalIn{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.menu-modal-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.menu-modal-header h2{color:#1a1a1a;margin:0;font-size:28px}.menu-modal-close{color:#1a1a1a;cursor:pointer;background:#a3938214;border:1px solid #a393824d;border-radius:999px;justify-content:center;align-items:center;width:40px;height:40px;transition:background .16s;display:flex}.menu-modal-close:hover{background:#a393822e}.menu-modal-tabs{-ms-overflow-style:none;scrollbar-width:none;gap:8px;margin-bottom:20px;padding-bottom:4px;display:flex;overflow-x:auto}.menu-modal-tabs::-webkit-scrollbar{display:none}.menu-modal-tabs button{color:#7a756f;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #a393824d;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:38px;padding:0 16px;font-size:14px;font-weight:600;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.menu-modal-tabs button span{background:#a3938224;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 5px;font-size:12px;display:inline-flex}.menu-modal-tabs button.is-active{color:#fff;background:#1a1a1a;border-color:#1a1a1a}.menu-modal-tabs button.is-active span{color:#fff;background:#fff3}.menu-modal-tabs button:not(.is-active):hover{background:#a393821a;border-color:#a3938280}.menu-modal-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.menu-order-page{max-width:1280px;padding-top:36px;padding-bottom:72px}.menu-order-page:before{content:"";z-index:-1;background:#fff;position:fixed;inset:0}.menu-order-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.menu-order-header h1{color:var(--ink);margin:8px 0 4px;font-size:clamp(28px,3.5vw,40px);font-weight:600}.menu-order-nav{z-index:30;border-bottom:1px solid var(--line);-ms-overflow-style:none;scrollbar-width:none;background:#fff;gap:8px;margin-bottom:20px;padding:14px 0;display:flex;position:sticky;top:82px;overflow-x:auto}.menu-order-nav::-webkit-scrollbar{display:none}.menu-order-nav button{color:#666;cursor:pointer;white-space:nowrap;background:#fafafa;border:1px solid #e5e5e5;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:38px;padding:0 16px;font-size:14px;font-weight:500;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.menu-order-nav button span{background:#0000000d;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 5px;font-size:12px;font-weight:500;display:inline-flex}.menu-order-nav button.is-active{color:#fff;background:#1a1a1a;border-color:#1a1a1a}.menu-order-nav button.is-active span{color:#fff;background:#fff3}.menu-order-nav button:not(.is-active):hover{color:#333;background:#f0f0f0;border-color:#ddd}.menu-order-body{grid-template-columns:1fr 340px;align-items:start;gap:32px;display:grid}.menu-order-categories{gap:36px;display:grid}.menu-order-category h2{color:#1a1a1a;border-bottom:1px solid #eee;margin:0 0 16px;padding-bottom:10px;font-size:clamp(20px,2.5vw,28px);font-weight:600}.menu-order-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;display:grid}.menu-dish-card{background:#fff;border:1px solid #eee;border-radius:14px;flex-direction:column;transition:box-shadow .2s;display:flex;overflow:hidden}.menu-dish-card:hover{box-shadow:0 6px 20px #00000012}.menu-dish-card.in-cart{border-color:var(--accent);box-shadow:0 0 0 2px #c055351f}.menu-dish-image{aspect-ratio:4/3;background:#f5f5f5;width:100%;position:relative;overflow:hidden}.menu-dish-image img{object-fit:cover;transition:transform .4s}.menu-dish-card:hover .menu-dish-image img{transform:scale(1.05)}.menu-dish-badge{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:28px;height:28px;padding:0 8px;font-size:13px;font-weight:700;display:inline-flex;position:absolute;top:10px;right:10px;box-shadow:0 4px 12px #c055354d}.menu-dish-body{flex-direction:column;flex:1;gap:4px;padding:14px;display:flex}.menu-dish-body strong{color:var(--ink);font-size:15px;font-weight:600;line-height:1.3}.menu-dish-body p{color:#7a756f;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.menu-dish-footer{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:10px;display:flex}.menu-dish-price-row{flex-direction:column;gap:1px;display:flex}.menu-dish-weight{color:#7a756f;font-size:12px}.menu-dish-price-row b{color:var(--ink);white-space:nowrap;font-size:16px;font-weight:700}.menu-add-btn{color:#333;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e5e5e5;border-radius:10px;align-items:center;gap:5px;height:36px;padding:0 14px;font-size:13px;font-weight:500;transition:background .16s,color .16s,border-color .16s;display:inline-flex}.menu-add-btn:hover{background:var(--ink);color:#fff}.menu-qty-control{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:0;height:36px;display:inline-flex;overflow:hidden}.menu-qty-control button{color:#1a1a1a;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:34px;height:100%;padding:0;transition:background .12s;display:flex}.menu-qty-control button:hover{background:#0000000f}.menu-qty-control>span{text-align:center;min-width:26px;color:var(--ink);font-size:14px;font-weight:700}.menu-qty-control.compact{height:30px}.menu-qty-control.compact button{width:28px}.menu-qty-control.compact>span{min-width:22px;font-size:13px}.menu-cart-sidebar{flex-direction:column;display:flex;position:sticky;top:164px}.menu-cart-inner{background:#fff;border:1px solid #00000014;border-radius:14px;flex-direction:column;gap:16px;max-height:calc(100dvh - 150px);padding:20px;display:flex;box-shadow:0 8px 24px #0000000f}.menu-cart-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.menu-cart-head h3{color:#1a1a1a;align-items:center;gap:8px;margin:0;font-size:18px;display:flex}.menu-cart-count{min-width:24px;height:24px;color:var(--ink);background:#00000012;border-radius:999px;justify-content:center;align-items:center;padding:0 7px;font-size:12px;font-weight:700;display:inline-flex}.menu-cart-clear{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;transition:color .16s,border-color .16s;display:flex}.menu-cart-clear:hover{color:var(--danger);border-color:var(--danger)}.menu-cart-empty{text-align:center;padding:20px 0}.menu-cart-empty p{color:#7a756f;margin:0;font-size:14px;line-height:1.5}.menu-cart-items{-ms-overflow-style:none;scrollbar-width:thin;scrollbar-color:#0000004d transparent;flex-direction:column;gap:10px;display:flex;overflow-y:auto}.menu-cart-row{background:var(--surface-2);border-radius:14px;grid-template-columns:48px 1fr auto auto;align-items:center;gap:10px;padding:8px;transition:background .16s;display:grid}.menu-cart-row:hover{background:#e5e2dd}.menu-cart-row-image{background:#edebe7;border-radius:10px;flex-shrink:0;width:48px;height:48px;position:relative;overflow:hidden}.menu-cart-row-image img{object-fit:cover}.menu-cart-row-info{flex-direction:column;gap:2px;min-width:0;display:flex}.menu-cart-row-info strong{color:#1a1a1a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;line-height:1.2;overflow:hidden}.menu-cart-row-info span{color:#1a1a1a;font-size:13px;font-weight:700}.menu-cart-row-delete{color:#c5c0ba;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;transition:color .16s,background .16s;display:flex}.menu-cart-row-delete:hover{color:var(--danger);background:var(--soft-danger)}.menu-cart-total{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 0 0;display:flex}.menu-cart-total span{color:var(--muted);font-size:15px;font-weight:600}.menu-cart-total strong{color:var(--ink);font-size:20px;font-weight:700}.menu-cart-hint{background:var(--surface-2);color:#7a756f;border-radius:10px;padding:10px 14px;font-size:13px;line-height:1.45}.menu-order-header-actions{flex-shrink:0;align-items:flex-start;gap:10px;display:flex}.menu-qr-overlay{z-index:1200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.menu-qr-modal{background:#fff;border-radius:16px;width:100%;max-width:400px;padding:24px;animation:.22s cartSheetUp;box-shadow:0 24px 64px #0003}.menu-qr-modal-head{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.menu-qr-modal-head h3{color:#1a1a1a;margin:0;font-size:20px}.menu-qr-modal-head button{border:1px solid var(--line);width:38px;height:38px;color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;display:flex}.menu-qr-preview{background:var(--bg);border:1px solid var(--line);border-radius:12px;justify-content:center;padding:16px;display:flex}.menu-qr-preview svg{width:240px;height:240px}.menu-qr-hint{text-align:center;color:#7a756f;margin:14px 0 0;font-size:13px;line-height:1.45}.menu-qr-actions{gap:10px;margin-top:18px;display:flex}.menu-qr-actions .button,.menu-qr-actions .secondary-button{flex:1;justify-content:center;min-height:42px}.menu-qr-loading{text-align:center;color:#7a756f;padding:40px 0;font-size:14px}.menu-mobile-cart-bar{display:none}.menu-cart-sheet-overlay{z-index:1100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000080;display:none;position:fixed;inset:0}.menu-cart-sheet{max-height:85dvh;padding:22px 18px calc(18px + env(safe-area-inset-bottom));background:#fff;border-radius:14px 20px 0 0;flex-direction:column;gap:14px;animation:.26s cartSheetUp;display:flex;position:absolute;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -12px 40px #00000026}.menu-cart-head-actions{align-items:center;gap:8px;display:flex}.menu-cart-sheet-close{border:1px solid var(--line);width:38px;height:38px;color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;display:flex}@keyframes cartSheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.menu-full-footer{border-top:1px solid #a393824d;flex-wrap:wrap;gap:12px;margin-top:48px;padding-top:28px;display:flex}@media (max-width:980px){.dish-card-grid,.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.dish-card-grid,.review-grid{grid-template-columns:1fr}.menu-add-category-button{width:100%}.menu-item-row,.reservation-row,.admin-row{flex-direction:column;align-items:flex-start}}@media (max-width:640px){.admin-row,.reservation-row,.menu-item-row,.list-row,.restaurant-admin-row,.guest-row{grid-template-columns:1fr!important;align-items:stretch!important;gap:12px!important;display:grid!important}}@media (max-width:760px){.menu-item-image-wrap{grid-area:image;width:64px;min-width:64px}.menu-item-thumb{border-radius:14px!important;width:64px!important;min-width:64px!important;height:64px!important}.menu-item-content{grid-area:content}.owner-menu-item-row .menu-item-price{text-align:left;grid-area:price;place-self:center start}.owner-menu-item-row .menu-item-actions{grid-area:actions;justify-self:end}.menu-item-edit-modal{padding:18px}}@media (max-width:680px){.menu-gallery-layout{gap:24px}.menu-gallery-category{border-radius:14px;margin-inline:-4px;padding:18px 0 18px 18px}.menu-gallery-category h3{padding-right:18px}.dish-gallery-track,.dish-card-grid.dish-gallery-track{scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 18px 10px 0;scroll-padding-left:0;overflow:auto hidden;grid-template-columns:none!important;gap:14px!important;display:flex!important}.dish-gallery-track::-webkit-scrollbar{display:none}.dish-card{scroll-snap-align:start;flex:0 0 min(78vw,310px)}.dish-card-body p{min-height:0}.menu-modal{border-radius:14px 22px 0 0;min-height:calc(100dvh - 24px);margin:0;padding:18px}.menu-modal-overlay{align-items:flex-end;padding:24px 0 0}.menu-modal-grid{grid-template-columns:1fr 1fr;gap:12px}.menu-slider-arrow,.menu-slider-wrapper:before,.menu-slider-wrapper:after{display:none}.menu-slider-track{padding-right:18px}.menu-section-heading{flex-flow:wrap;align-items:center;gap:10px}.menu-section-title-icon{display:none}.menu-section-links{flex-direction:row;gap:8px;display:flex}.menu-section-links .menu-slider-link{width:auto;min-height:36px;padding:0 12px;font-size:13px}.menu-slider-tabs button{padding:6px 12px;font-size:13px}.menu-pdf-viewer{border-radius:14px 22px 0 0;height:calc(100dvh - 24px);margin:0;padding:18px}}@media (max-width:440px){.menu-modal-grid{grid-template-columns:1fr}}@media (max-width:960px){.menu-order-body{grid-template-columns:1fr}.menu-cart-sidebar{display:none}.menu-mobile-cart-bar{z-index:50;min-height:56px;padding:10px 20px calc(10px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#f5f3f0f7;border-radius:18px 18px 0 0;align-items:center;gap:12px;font-family:inherit;animation:.24s cartBarSlide;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #00000014}.menu-mobile-cart-badge{color:#fff;background:#1a1a1a;border-radius:999px;justify-content:center;align-items:center;min-width:28px;height:28px;padding:0 8px;font-size:13px;font-weight:700;display:inline-flex}.menu-mobile-cart-label{color:#1a1a1a;flex:1;align-items:center;gap:6px;font-size:15px;font-weight:600;display:flex}.menu-mobile-cart-bar strong{color:#1a1a1a;white-space:nowrap;font-size:17px;font-weight:700}.menu-cart-sheet-overlay{display:block}.menu-order-page{padding-bottom:100px}@keyframes cartBarSlide{0%{transform:translateY(100%)}to{transform:translateY(0)}}}@media (max-width:680px){.menu-order-header{flex-direction:column}.menu-order-header h1{font-size:28px}.menu-order-header-actions{width:100%}.menu-order-header-actions .secondary-button{flex:1;justify-content:center}.menu-order-nav{margin-bottom:14px;padding:10px 0;top:92px}.menu-order-nav button{min-height:34px;padding:0 12px;font-size:13px}.menu-order-nav button span{min-width:20px;height:20px;font-size:11px}.menu-order-category h2{margin-bottom:12px;padding-bottom:8px;font-size:18px}.menu-order-grid{grid-template-columns:1fr 1fr;gap:10px}.menu-dish-card{border-radius:12px}.menu-dish-image{aspect-ratio:1}.menu-dish-body{gap:2px;padding:8px 10px 10px}.menu-dish-body strong{font-size:13px}.menu-dish-body p{-webkit-line-clamp:2;font-size:11px}.menu-dish-footer{flex-direction:column;align-items:stretch;gap:6px;padding-top:6px}.menu-dish-price-row{flex-direction:row;align-items:baseline;gap:6px}.menu-dish-price-row b{font-size:14px}.menu-dish-weight{font-size:11px}.menu-add-btn,.menu-qty-control{border-radius:8px;justify-content:center;width:100%;height:32px;font-size:12px}.menu-qty-control button{width:30px}}.server-dashboard{max-width:1200px}.server-dash-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.server-dash-header h1{margin:6px 0 4px}.server-dash-controls{align-items:center;gap:10px;display:flex}.server-toggle{color:#7a756f;cursor:pointer;align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.server-toggle input{accent-color:#1a1a1a;width:16px;height:16px}.spin{animation:1s linear infinite spin}.server-error{color:#b91c1c;background:#fef2f2;border:1px solid #fca5a5;border-radius:16px;align-items:center;gap:10px;margin-bottom:20px;padding:14px 18px;font-size:14px;font-weight:700;display:flex}.server-status-row{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;display:grid}.server-card{background:#f5f3f0;border:1px solid #b4b3ad66;border-radius:14px;padding:20px;box-shadow:0 10px 30px #2323230f}.server-card.mini{align-items:center;gap:14px;padding:16px 18px;display:flex}.server-card.mini svg{color:#1a1a1a;flex-shrink:0}.server-card-label{color:#7a756f;margin-bottom:2px;font-size:12px;font-weight:700;display:block}.server-card.mini strong{color:#1a1a1a;font-size:16px}.server-card-head{align-items:center;gap:8px;margin-bottom:16px;display:flex}.server-card-head svg{color:#1a1a1a}.server-card-head h3{color:#1a1a1a;margin:0;font-size:17px}.server-card-sub{color:#7a756f;margin-left:auto;font-size:13px;font-weight:700}.server-metrics-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px;display:grid}.server-gauge{background:#f2eee8;border-radius:999px;height:28px;margin-bottom:16px;position:relative;overflow:hidden}.server-gauge-fill{border-radius:999px;height:100%;transition:width .6s;position:absolute;top:0;left:0}.server-gauge-fill.ok{background:linear-gradient(90deg,#8aa57d,#6b9e5e)}.server-gauge-fill.warn{background:linear-gradient(90deg,#d4a843,#c49032)}.server-gauge-fill.crit{background:linear-gradient(90deg,#c05040,#a33030)}.server-gauge>span{color:#1a1a1a;text-shadow:0 1px 2px #fffc;font-size:13px;font-weight:700;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.server-detail-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.server-detail-grid.wide{grid-template-columns:repeat(3,1fr)}.server-detail-grid>div{background:#f2eee880;border-radius:12px;flex-direction:column;gap:3px;padding:10px;display:flex}.server-detail-grid span{color:#7a756f;font-size:12px;font-weight:700}.server-detail-grid strong{color:#1a1a1a;font-size:14px}.server-status-badge{border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:13px;font-weight:600;display:inline-flex}.server-status-badge.ok{color:#3d7a2e;background:#6b9e5e1f}.server-status-badge.bad{color:#c0392b;background:#c0392b1a}.server-log{flex-direction:column;gap:6px;max-height:300px;display:flex;overflow-y:auto}.server-log-entry{background:#f2eee866;border-radius:10px;align-items:baseline;gap:10px;padding:8px 12px;font-size:13px;display:flex}.server-log-entry.warn{background:#d4a84314}.server-log-entry.action{background:#c0504014}.server-log-entry.result{background:#6b9e5e14}.server-log-time{color:#7a756f;flex-shrink:0;font-size:12px;font-weight:700}.server-log-level{text-transform:uppercase;border-radius:6px;flex-shrink:0;padding:1px 8px;font-size:11px;font-weight:700}.server-log-level.warn{color:#a86d16;background:#d4a84326}.server-log-level.action{color:#c0392b;background:#c0504026}.server-log-level.result{color:#3d7a2e;background:#6b9e5e26}@media (max-width:768px){.server-status-row{grid-template-columns:repeat(2,1fr)}.server-metrics-grid{grid-template-columns:1fr}.server-dash-header{flex-direction:column}.server-detail-grid,.server-detail-grid.wide{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.server-status-row,.server-detail-grid,.server-detail-grid.wide{grid-template-columns:1fr}}.dish-card{cursor:pointer}.dish-detail-modal{background:#f5f3f0;border-radius:14px;width:min(520px,100%);margin:40px auto;animation:.24s menuModalIn;position:relative;overflow:hidden;box-shadow:0 40px 100px #0000004d}.dish-detail-close{z-index:5;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000008c;border:none;border-radius:999px;justify-content:center;align-items:center;width:38px;height:38px;transition:background .16s;display:flex;position:absolute;top:14px;right:14px}.dish-detail-close:hover{background:#000000bf}.dish-detail-image{aspect-ratio:4/3;background:#ddd9d4;width:100%;position:relative}.dish-detail-image img{object-fit:cover}.dish-detail-body{gap:12px;padding:24px;display:grid}.dish-detail-body h3{color:#1a1a1a;margin:0;font-size:24px;line-height:1.15}.dish-detail-body p{color:#7a756f;margin:0;font-size:16px;line-height:1.55}.dish-detail-footer{border-top:1px solid #d5d1cc;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.dish-detail-weight{color:#7a756f;font-size:15px;font-weight:700}.dish-detail-price{color:#1a1a1a;font-size:22px;font-weight:700}@media (max-width:680px){.dish-detail-modal{border-radius:14px 22px 0 0;min-height:calc(100dvh - 24px);margin:24px 0 0}.dish-detail-body{padding:20px 18px}}.staff-list{gap:0;display:grid}.staff-row{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:14px 0;display:flex}.staff-row:last-child{border-bottom:0}.staff-info{flex:1;gap:4px;min-width:0;display:grid}.staff-info strong{font-size:15px}.staff-info span{color:var(--muted);font-size:13px}.staff-add-form{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:14px;margin-top:14px;padding:18px;display:grid}.staff-add-form h3{margin:0;font-size:18px}.form-actions{gap:10px;display:flex}.small-button.danger{color:var(--danger);border-color:var(--danger)}.small-button.danger:hover{background:#f0e0de}.waiter-shell{grid-template-columns:240px minmax(0,1fr);min-height:calc(100vh - 72px);display:grid}.waiter-sidebar{border-right:1px solid var(--line);background:var(--surface);flex-direction:column;gap:0;height:calc(100vh - 72px);display:flex;position:sticky;top:72px;overflow-y:auto}.waiter-sidebar-header{border-bottom:1px solid var(--line);gap:4px;padding:20px 18px;display:grid}.waiter-sidebar-header strong{font-size:16px;line-height:1.2}.waiter-sidebar-header span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:600}.waiter-nav{flex-direction:column;padding:10px 8px;display:flex}.waiter-nav a{color:var(--ink);border-radius:8px;align-items:center;gap:10px;padding:11px 14px;font-size:14px;font-weight:700;transition:background .15s;display:flex}.waiter-nav a:hover{background:var(--surface-2)}.waiter-nav a svg{color:var(--muted);flex-shrink:0}.waiter-main{background:var(--bg);min-width:0}.waiter-main .page{width:min(960px,100% - 32px)}.waiter-main .tabs{display:none}.waiter-hall-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:18px;display:grid}.waiter-hall-board-wrap{border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden}.waiter-hall-board{pointer-events:auto}.waiter-hall-board .hall-neutral-object{pointer-events:none}.waiter-table{transition:border-color .15s,background .15s;cursor:pointer!important;pointer-events:auto!important}.waiter-table.free{background:#e5e2dd;border-color:#4a7c5c}.waiter-table.occupied{border-color:var(--warning);background:#edebe7}.waiter-table.seated{border-color:var(--accent);background:#edebe7}.waiter-table.selected{box-shadow:0 0 0 3px #0000002e;border-color:var(--ink)!important}.waiter-table-guest{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;font-weight:600;overflow:hidden}.waiter-table-info{align-self:start;min-height:200px;transition:opacity .2s;position:sticky;top:90px}.waiter-table-info h3{margin:0;font-size:18px}.waiter-table-meta{color:var(--muted);margin-bottom:12px;font-size:13px;font-weight:700}.waiter-reservations-list{gap:10px;display:grid}.waiter-reservation-card{background:var(--surface-2);border-radius:8px;gap:4px;padding:12px;display:grid}.waiter-reservation-card strong{font-size:15px}.waiter-reservation-card span{color:var(--muted);font-size:13px}.waiter-reservation-card .badge{width:fit-content;margin-top:4px}@media (max-width:768px){.waiter-shell{grid-template-columns:1fr}.waiter-sidebar{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;height:auto;position:static;overflow-x:auto}.waiter-sidebar-header{display:none}.waiter-nav{flex-direction:row;gap:2px;padding:6px 8px}.waiter-nav a{white-space:nowrap;padding:8px 12px;font-size:13px}.waiter-nav a span{display:none}.waiter-hall-layout{grid-template-columns:1fr}.waiter-table-info{position:static}}.age-gate-overlay{z-index:9999;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000b3;place-items:center;display:grid;position:fixed;inset:0}.age-gate-modal{background:var(--surface);text-align:center;border-radius:12px;gap:18px;width:min(420px,100% - 32px);padding:32px;display:grid;box-shadow:0 20px 60px #00000040}.age-gate-modal h2{margin:0;font-size:24px}.age-gate-modal p{color:var(--muted);margin:0;font-size:15px;line-height:1.5}.age-gate-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.age-gate-actions .button{min-height:46px;font-size:15px}.age-gate-actions .button-outline{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:46px;color:var(--ink);padding:0 16px;font-size:15px;font-weight:600}.age-gate-actions .button-outline:hover{background:var(--surface-2)}@media (max-width:480px){.age-gate-actions{grid-template-columns:1fr}}.age-gate-fields{text-align:left;gap:10px;display:flex}.age-gate-fields .pretty-select-field{flex:1;min-width:0}.age-gate-fields .age-gate-day-input{color:#221f19;text-align:center;background:#f5f3f0;border:1px solid #ddd2c0;border-radius:8px;flex:1;min-width:0;min-height:46px;padding:0 14px;font-size:14px;font-weight:700}.age-gate-fields .age-gate-day-input::placeholder{color:#6b6157;font-weight:600}.age-gate-fields .age-gate-day-input:focus{border-color:#7a756f;outline:none;box-shadow:0 0 0 3px #be684226}.age-gate-fields .pretty-select-trigger.is-placeholder strong{color:#6b6157;font-weight:600}.age-gate-fields .pretty-select-menu{width:max-content;min-width:100%;max-width:min(260px,72vw);left:0;right:auto;overflow-x:hidden}.age-gate-error{color:#c0392b;margin:0;font-size:14px;font-weight:600}.age-gate-modal>.button{width:100%;min-height:48px;font-size:15px;text-decoration:none}@media (max-width:420px){.age-gate-fields{flex-direction:column}}.restaurant-card h3,.restaurant-card-title-block h3,.catalog-layout-grid .restaurant-card h3{letter-spacing:-.01em!important;color:#1a1a1a!important;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-size:clamp(17px,1.6vw,20px)!important;font-weight:600!important}.restaurant-card-title-block,.catalog-layout-grid .restaurant-card-title-block{min-height:0!important;max-height:none!important;overflow:visible!important}.restaurant-card-title-block h3,.catalog-layout-grid .restaurant-card h3{min-height:0!important;max-height:2.6em!important;padding-bottom:0!important;line-height:1.3!important}.restaurant-card-title-block p,.catalog-layout-grid .restaurant-card-title-block p{display:none!important}.restaurant-card-badges{display:none!important}.restaurant-card-chips{gap:6px!important}.restaurant-card-chips span{color:#666!important;letter-spacing:.01em!important;background:#0000000d!important;border:none!important;border-radius:6px!important;min-height:24px!important;padding:0 9px!important;font-size:11px!important;font-weight:500!important}.restaurant-card-info{color:#888!important;gap:6px!important;margin-top:4px!important;font-size:13px!important;font-weight:400!important}.restaurant-card-info svg{color:#aaa!important;width:14px!important;height:14px!important}.restaurant-card-info span{gap:6px!important}.restaurant-card-info span:last-child{color:#555!important;font-weight:500!important}.open-status{color:#5a8a58!important}.restaurant-card-cuisine-badge{letter-spacing:.02em!important;-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;background:#00000073!important;border:none!important;padding:5px 10px!important;font-size:11px!important;font-weight:500!important}.restaurant-card-rating-badge{background:#ffffffe0!important;border:none!important;min-height:28px!important;padding:0 10px!important;font-size:12px!important;font-weight:600!important;box-shadow:0 4px 12px #0000001a!important}.restaurant-card-rating-badge small{color:#999!important;font-weight:400!important}.restaurant-card-rating-badge svg{color:#e0a84b!important;fill:#e0a84b!important;width:12px!important;height:12px!important}.restaurant-card-book-button{color:#3a3a3a!important;letter-spacing:.01em!important;min-height:42px!important;box-shadow:none!important;background:#f0ece8!important;border:none!important;border-radius:10px!important;font-size:13px!important;font-weight:500!important;transition:background .18s,color .18s!important}.restaurant-card-book-button:hover{color:#fff!important;box-shadow:none!important;background:#1a1a1a!important;transform:none!important}.luxury-restaurant-card{background:#fff!important;border:1px solid #00000014!important;border-radius:14px!important;flex-direction:column!important;transition:box-shadow .2s,border-color .2s!important;display:flex!important;box-shadow:0 1px 3px #0000000a!important}.luxury-restaurant-card:hover{border-color:#00000024!important;transform:none!important;box-shadow:0 8px 24px #00000014!important}.restaurant-card .card-image-link,.restaurant-card-compact .card-image-link{border-radius:0!important}.catalog-section h2{letter-spacing:-.01em!important;color:#1a1a1a!important;font-size:clamp(20px,2.2vw,26px)!important;font-weight:600!important}.show-all-link{color:#888!important;background:0 0!important;border-color:#0000!important;font-size:13px!important;font-weight:500!important}.show-all-link:hover{color:#1a1a1a!important}@media (max-width:980px){.restaurant-card h3,.restaurant-card-title-block h3,.catalog-layout-grid .restaurant-card h3{-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;min-height:0!important;padding-bottom:0!important;font-size:clamp(14px,3.6vw,18px)!important;line-height:1.25!important;display:-webkit-box!important;overflow:hidden!important}.luxury-card-body,.restaurant-card-compact .luxury-card-body{gap:8px!important;padding:10px 12px 12px!important}.restaurant-card-book-button{border-width:1px!important;min-height:34px!important;margin-top:4px!important;font-size:12px!important}.restaurant-card-chips span{min-height:20px!important;padding:0 7px!important;font-size:10px!important}.restaurant-card-info{gap:4px!important;font-size:11px!important}.restaurant-card-info span{text-overflow:ellipsis!important;white-space:nowrap!important;overflow:hidden!important}.restaurant-card-info svg{width:12px!important;height:12px!important}.catalog-section h2{font-size:18px!important}.catalog-page .section-heading h2{font-size:20px!important;line-height:1.1!important}.luxury-restaurant-card{border-radius:12px!important;box-shadow:0 1px 3px #0000000f!important}.restaurant-card-cuisine-badge{padding:4px 8px!important;font-size:10px!important}.restaurant-card-rating-badge{min-height:24px!important;padding:0 8px!important;font-size:11px!important}.restaurant-card-rating-badge small{display:none!important}}@media (max-width:680px){.catalog-layout-grid .restaurant-card-book-button{border-radius:6px!important;min-height:32px!important;padding:0 6px!important;font-size:11px!important}.catalog-layout-grid .luxury-card-body,.catalog-layout-grid .restaurant-card-compact .luxury-card-body{gap:6px!important;padding:8px 10px 10px!important}.catalog-layout-grid .restaurant-card h3{font-size:clamp(13px,3.4vw,16px)!important}.catalog-layout-grid .restaurant-card-info{gap:3px!important;font-size:10px!important}.catalog-layout-grid .restaurant-card-chips{display:none!important}}.button,.client-cta{border-radius:var(--r-pill,999px);background:var(--accent,#c98232);color:#fff;letter-spacing:.01em;min-height:50px;box-shadow:var(--sh-btn,0 8px 22px #5834141f);border:0;gap:10px;padding:0 28px;font-size:15px;font-weight:700;transition:background .18s,box-shadow .18s,transform .15s,opacity .15s}.button:hover,.client-cta:hover{transform:translateY(-1px);background:var(--accent-dark,#b8732b)!important;box-shadow:var(--sh-btn-hover,0 14px 32px #5834142e)!important}.button:active,.client-cta:active{transform:translateY(0)scale(.98);box-shadow:var(--sh-btn-active,0 4px 12px #58341414)!important;background:#9c6120!important}.button:focus-visible,.client-cta:focus-visible{outline-offset:3px;outline:3px solid #c9823266;box-shadow:0 0 0 5px #c9823224!important}.button:disabled,.button[disabled],.client-cta:disabled{opacity:.5;cursor:not-allowed;pointer-events:none;box-shadow:none!important;transform:none!important}.button.compact{min-height:42px;padding:0 20px}.ghost,.secondary-button{border:1px solid var(--line,#ead8c2);border-radius:var(--r-pill,999px);color:#2a1d16;background:#fff8eff0;gap:10px;min-height:46px;padding:0 22px;font-weight:650;transition:background .18s,border-color .18s,box-shadow .18s,transform .15s;box-shadow:0 4px 14px #58341412}.ghost:hover,.secondary-button:hover{background:var(--accent-soft,#f6dfbf);border-color:#c9823261;transform:translateY(-1px);box-shadow:0 8px 22px #5834141f}.ghost:active,.secondary-button:active{background:#f0d5a0;transform:translateY(0)scale(.98);box-shadow:0 4px 12px #58341414}.ghost:focus-visible,.secondary-button:focus-visible{outline-offset:3px;outline:3px solid #c9823252}.ghost:disabled,.secondary-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.small-button{border:1px solid var(--line,#ead8c2);border-radius:var(--r-pill,999px);color:#2a1d16;background:#fff8efeb;gap:10px;min-height:38px;padding:0 16px;font-size:13px;font-weight:650;transition:background .18s,border-color .18s,box-shadow .18s,transform .15s;box-shadow:0 3px 10px #5834140f}.small-button:hover{background:var(--accent-soft,#f6dfbf);border-color:#c9823259;transform:translateY(-1px);box-shadow:0 6px 16px #5834141a}.small-button:active{background:#f0d5a0;transform:scale(.98);box-shadow:0 2px 6px #58341412}.small-button:focus-visible{outline-offset:3px;outline:3px solid #c9823247}.small-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.danger-button{border-radius:var(--r-pill,999px);background:var(--danger,#b54040);color:#fff;border:0;gap:10px;min-height:46px;padding:0 22px;font-weight:700;transition:background .18s,box-shadow .18s,transform .15s;box-shadow:0 8px 20px #b5404033}.danger-button:hover{background:#9e3030;transform:translateY(-1px);box-shadow:0 12px 28px #b5404042}.danger-button:active{background:#8a2828;transform:translateY(0)scale(.98);box-shadow:0 3px 10px #b5404024}.danger-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.icon-button,.icon-only{border:1px solid var(--line,#ead8c2);border-radius:var(--r-btn,16px);background:#fff8efeb;width:42px;min-width:42px;min-height:42px;padding:0;transition:background .18s,box-shadow .18s,transform .15s;box-shadow:0 3px 10px #58341412}.icon-button:hover,.icon-only:hover{background:var(--accent-soft,#f6dfbf);border-color:#c9823259;transform:translateY(-1px);box-shadow:0 6px 16px #5834141f}.icon-button:active,.icon-only:active{box-shadow:none;transform:scale(.94)}.restaurant-card-book-button{letter-spacing:.01em;font-size:15px;font-weight:700;border-radius:var(--r-btn,16px)!important;background:var(--accent,#c98232)!important;color:#fff!important;min-height:52px!important;box-shadow:var(--sh-btn,0 8px 22px #5834141f)!important;border:0!important;padding:0 24px!important;transition:background .18s,box-shadow .18s,transform .15s!important}.restaurant-card-book-button:hover{background:var(--accent-dark,#b8732b)!important;box-shadow:var(--sh-btn-hover,0 14px 32px #5834142e)!important;transform:translateY(-1px)!important}.restaurant-card-book-button:active{box-shadow:var(--sh-btn-active,0 4px 12px #58341414)!important;background:#9c6120!important;transform:translateY(0)scale(.98)!important}.restaurant-card-book-button:focus-visible{outline-offset:3px;outline:3px solid #c9823261}.luxury-restaurant-card,.restaurant-card,.restaurant-card.restaurant-card-compact{border-radius:var(--r-card,24px)!important;box-shadow:var(--sh-card,0 16px 48px #5834141a)!important;background:#fff!important;border:1px solid #5834141f!important;transition:transform .22s,box-shadow .22s,border-color .22s!important}.luxury-restaurant-card:hover,.restaurant-card:hover{border-color:#c9823242!important;transform:translateY(-6px)!important;box-shadow:0 30px 72px #58341429!important}.luxury-card-media{border-radius:var(--r-card,24px) var(--r-card,24px) 0 0!important}.luxury-card-body{gap:14px!important;padding:22px!important}.restaurant-card-compact .luxury-card-body{padding:18px!important}.restaurant-card h3,.restaurant-card-title-block h3{color:#2a1d16}.restaurant-card-title-block p,.restaurant-card-info{color:#6f5a4a}.restaurant-card-info svg{color:var(--accent,#c98232)}.restaurant-card-chips span{color:#2a1d16;background:#f6dfbf8c;border-color:#c9823233}.catalog-page:not(.catalog-layout-grid) .catalog-quick-row a,.quick-filter-row a{border-radius:var(--r-pill,999px);border:1px solid var(--line,#ead8c2);color:#2a1d16;background:#fff8eff2;gap:7px;min-height:38px;padding:0 18px;font-size:13px;font-weight:650;transition:background .16s,transform .16s,box-shadow .16s,border-color .16s;box-shadow:0 1px 2px #5834140f}.catalog-page:not(.catalog-layout-grid) .catalog-quick-row a:hover,.quick-filter-row a:hover{background:var(--accent-soft,#f6dfbf);border-color:#c982325c;transform:translateY(-1px);box-shadow:0 6px 16px #5834141f}.catalog-page:not(.catalog-layout-grid) .catalog-quick-row a.active,.quick-filter-row a.active{background:var(--accent,#c98232);color:#fff;border-color:#0000;box-shadow:0 2px 8px #b060203d}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #c982325c;box-shadow:0 0 0 5px #c982321f}.panel,.auth-panel{border-color:var(--line,#ead8c2);box-shadow:var(--sh-card,0 16px 48px #5834141a);background:#fff}input:focus,select:focus,textarea:focus{border-color:var(--accent,#c98232);box-shadow:0 0 0 4px #c9823224}.filter-submit{background:var(--accent,#c98232)!important;box-shadow:var(--sh-btn,0 8px 22px #5834141f)!important;border:1px solid #0000!important}.filter-submit:hover{transform:translateY(-1px);background:var(--accent-dark,#b8732b)!important}@media (max-width:680px){.button,.client-cta{min-height:48px;padding:0 22px}.restaurant-card-book-button{min-height:48px!important;padding:0 20px!important}.ghost,.secondary-button{min-height:44px;padding:0 18px}.small-button{min-height:36px;padding:0 14px}}@media (prefers-reduced-motion:reduce){.button,.ghost,.secondary-button,.small-button,.danger-button,.icon-button,.icon-only,.restaurant-card-book-button{transition:none!important}}.app-header.public-header{position:sticky!important;top:0!important}.menu-order-nav{box-shadow:0 4px 12px #0000000f;background:#fff!important;border-bottom:1px solid #00000014!important;padding-left:0!important;padding-right:0!important;top:82px!important}.menu-order-category{scroll-margin-top:164px}@media (max-width:980px){.menu-order-nav{top:82px!important}.menu-order-category{scroll-margin-top:164px}}@media (max-width:680px){.menu-order-category{scroll-margin-top:156px}}.app-header.public-header{background:#fff8ef!important;border-bottom:1px solid #c9823229!important;box-shadow:0 2px 14px #58341412!important}.public-header .brand{color:#2a1d16!important}.public-header .main-nav a{color:#4e3a2f!important;background:#ffffffd1!important;border:1.5px solid #c982324d!important;border-radius:999px!important;min-height:42px!important;padding:0 22px!important;font-size:14px!important;font-weight:600!important;transition:background .16s,border-color .16s,box-shadow .16s,transform .14s!important;box-shadow:0 2px 8px #58341414!important}.public-header .main-nav a:hover{color:#2a1d16!important;background:#fff2de!important;border-color:#c9823285!important;transform:translateY(-1px)!important;box-shadow:0 6px 18px #58341424!important}.catalog-page{padding-top:14px!important}.catalog-page .chip-slider-wrapper{margin-bottom:24px!important}.catalog-page .chip-slider-wrapper:before{background:linear-gradient(90deg,#fff8ef 30%,#0000)!important;width:56px!important}.catalog-page .chip-slider-wrapper:after{background:linear-gradient(270deg,#fff8ef 30%,#0000)!important;width:56px!important}.catalog-page .chip-slider-arrow{color:#c98232!important;background:#fff8ef!important;border:1.5px solid #c982323d!important;box-shadow:0 2px 10px #5834141a!important}.catalog-page .chip-slider-arrow:hover{background:#fff2de!important;border-color:#c9823270!important;box-shadow:0 4px 16px #5834142e!important}.chip-slider-wrapper{align-items:center;gap:16px;display:flex}.chip-slider-wrapper:before,.chip-slider-wrapper:after{display:none!important}.chip-slider-track{flex:auto;min-width:0}.catalog-page .catalog-quick-row,.chip-slider-track.quick-filter-row{scroll-padding-inline:4px}.catalog-page .chip-slider-arrow,.chip-slider-arrow{cursor:pointer;flex:none;color:#c98232!important;background:#fff8ef!important;border:1.5px solid #c982324d!important;border-radius:999px!important;width:36px!important;height:36px!important;transition:background .16s,border-color .16s,box-shadow .16s,transform .14s!important;position:static!important;transform:none!important;box-shadow:0 2px 6px #5834141a!important}.catalog-page .chip-slider-arrow:hover,.chip-slider-arrow:hover{background:#fff2de!important;border-color:#c9823294!important;transform:scale(1.08)!important;box-shadow:0 4px 12px #58341429!important}.chip-slider-arrow:disabled{opacity:.32!important;box-shadow:none!important;pointer-events:none!important;transform:none!important}.catalog-page .catalog-quick-row{gap:10px!important;padding:4px 0 8px!important}.catalog-page .catalog-quick-row a{color:#4e3a2f!important;white-space:nowrap!important;background:#ffffffd1!important;border:1.5px solid #c982322e!important;border-radius:999px!important;flex:none!important;justify-content:center!important;align-items:center!important;gap:7px!important;min-height:44px!important;padding:0 18px!important;font-size:14px!important;font-weight:600!important;line-height:1!important;transition:background .16s,border-color .16s,box-shadow .16s,transform .14s,color .16s!important;display:inline-flex!important;box-shadow:0 1px 2px #5834140f!important}.catalog-page .catalog-quick-row a svg{opacity:.55!important;color:#c98232!important;flex-shrink:0!important}.catalog-page .catalog-quick-row a:hover{color:#2a1d16!important;background:#fff2de!important;border-color:#c982326b!important;transform:translateY(-1px)!important;box-shadow:0 6px 18px #5834141f!important}.catalog-page .catalog-quick-row a:hover svg{opacity:.85!important}.catalog-page .catalog-quick-row a.active{background:var(--accent,#c98232)!important;color:#fff!important;border-color:#0000!important;transform:none!important;box-shadow:0 2px 8px #b060203d!important}.catalog-page .catalog-quick-row a.active svg{opacity:1!important;color:#ffffffe6!important}@media (max-width:680px){.catalog-page{padding-top:10px!important}.public-header .main-nav a{min-height:38px!important;padding:0 16px!important;font-size:13px!important}.catalog-page .catalog-quick-row a{min-height:38px!important;padding:0 14px!important;font-size:13px!important}.catalog-page .chip-slider-wrapper:before,.catalog-page .chip-slider-wrapper:after{display:none!important}}.menu-cart-sidebar{top:164px!important}body{overflow-x:clip}.menu-order-nav{width:100%;min-width:0;overflow-x:auto!important}@media (max-width:720px){.menu-order-nav{top:var(--header-h,64px)!important;background:#fff8ef!important;margin-left:0!important;margin-right:0!important;padding-inline:16px!important}.menu-order-category{scroll-margin-top:calc(var(--header-h,64px) + 84px)!important}}@media (max-width:680px){.menu-order-page{padding-top:18px!important}.menu-order-header{gap:10px!important;margin-bottom:14px!important}.menu-order-header h1{margin:2px 0!important;font-size:22px!important}.menu-order-header p.muted{margin:0!important;font-size:13px!important}.menu-order-categories{gap:24px!important}}@media (max-width:360px){.menu-order-grid{grid-template-columns:1fr!important}}.admin-row>div,.reservation-row>div,.reservation-card-top>div,.page-header>div,.tag-editor-head>div,.application-main,.sidebar,.sidebar-user>div,.list-row>span{min-width:0}.admin-row p,.reservation-row strong,.reservation-row p,.reservation-card-top h3,.page-header h1,.tag-editor-head h2,.application-main strong,.application-main span,.application-main small,.restaurant-admin-main strong,.restaurant-admin-main span,.staff-info span,.menu-dish-body strong,.menu-dish-body p,.review-card small,.success-summary-list dd,.list-row>span,.sidebar-user strong,.sidebar-user>div{overflow-wrap:anywhere;word-break:break-word}.review-card-head strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.review-card-head span{flex:none}.sidebar-user{overflow:hidden}@media (max-width:560px){.staff-row{flex-wrap:wrap}}.hall-tabs button{white-space:nowrap;text-overflow:ellipsis;max-width:min(60vw,220px);overflow:hidden}.booking-table-core small{white-space:nowrap;text-overflow:ellipsis;max-width:100%;padding-inline:2px;overflow:hidden}.hall-table{overflow:hidden}.hall-table span,.hall-table small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.hall-editor .hall-table.selected{overflow:visible}.restaurant-card-cuisine-badge{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.compact-note{align-items:flex-start}.compact-note>svg{flex:none;margin-top:2px}.client-home-hero .value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation-pass-header>div{min-width:0}.reservation-pass-header p{overflow-wrap:anywhere;word-break:break-word;min-width:0;display:flex}.reservation-pass-header p svg{flex:none}.reservation-pass-header h1{overflow-wrap:anywhere;word-break:break-word}.guest-reservation-head .badge{text-align:center;border-radius:10px;align-self:flex-start;line-height:1.25}.vk-mini-dish-card strong{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.vk-mini-place-hero{flex-direction:column;justify-content:flex-end;height:auto;display:flex}.vk-mini-place-content{position:relative;inset:auto}.server-tabs{scrollbar-width:none;gap:6px;margin-bottom:22px;padding-bottom:2px;display:flex;overflow-x:auto}.server-tabs::-webkit-scrollbar{display:none}.server-tabs button{color:#7b6b5e;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #d4bfa866;border-radius:999px;align-items:center;gap:7px;min-height:38px;padding:0 18px;font-size:14px;font-weight:800;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.server-tabs button:hover{background:#6b3d2e0f;border-color:#c9a97f99}.server-tabs button.is-active{color:#fff;background:#6b3d2e;border-color:#6b3d2e}.server-disk-breakdown{border-top:1px solid #d4bfa84d;margin-top:16px;padding-top:14px}.server-breakdown-title{color:#9a8b7e;margin-bottom:10px;font-size:13px;font-weight:800;display:block}.server-breakdown-row{border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:7px 10px;display:flex}.server-breakdown-row:nth-child(odd){background:#f2eee866}.server-breakdown-label{color:#2c2118;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.server-breakdown-row strong{color:#6b3d2e;white-space:nowrap;font-size:13px}.server-http-badge{font-variant-numeric:tabular-nums;border-radius:6px;justify-content:center;align-items:center;min-width:36px;padding:2px 8px;font-size:12px;font-weight:900;display:inline-flex}.server-http-badge.success{color:#3d7a2e;background:#6b9e5e1f}.server-http-badge.redirect{color:#2563eb;background:#3b82f61a}.server-http-badge.warn{color:#a86d16;background:#d4a84326}.server-http-badge.error{color:#c0392b;background:#c0392b1f}.server-status-codes{flex-direction:column;gap:10px;display:flex}.server-status-code-row{align-items:center;gap:10px;display:flex}.server-status-code-label{text-align:center;border-radius:6px;min-width:36px;padding:2px 8px;font-size:13px;font-weight:900}.server-status-code-label.success{color:#3d7a2e;background:#6b9e5e1f}.server-status-code-label.redirect{color:#2563eb;background:#3b82f61a}.server-status-code-label.warn{color:#a86d16;background:#d4a84326}.server-status-code-label.error{color:#c0392b;background:#c0392b1f}.server-status-code-bar-track{background:#f2eee8;border-radius:999px;flex:1;height:22px;overflow:hidden}.server-status-code-bar-fill{border-radius:999px;height:100%;transition:width .5s}.server-status-code-bar-fill.success{background:linear-gradient(90deg,#8aa57d,#6b9e5e)}.server-status-code-bar-fill.redirect{background:linear-gradient(90deg,#60a5fa,#3b82f6)}.server-status-code-bar-fill.warn{background:linear-gradient(90deg,#d4a843,#c49032)}.server-status-code-bar-fill.error{background:linear-gradient(90deg,#c05040,#a33030)}.server-status-code-count{text-align:right;color:#2c2118;font-variant-numeric:tabular-nums;min-width:48px;font-size:14px;font-weight:800}.server-top-paths{flex-direction:column;gap:4px;max-height:400px;display:flex;overflow-y:auto}.server-top-path-row{border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:7px 10px;display:flex}.server-top-path-row:nth-child(odd){background:#f2eee866}.server-top-path-row code{color:#2c2118;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.server-top-path-row span{color:#6b3d2e;font-variant-numeric:tabular-nums;flex-shrink:0;font-size:13px;font-weight:800}.server-log-filters{gap:10px;margin-bottom:14px;display:flex}.server-log-search{color:#2c2118;background:#fffdf8cc;border:1px solid #d4bfa880;border-radius:12px;outline:none;flex:1;min-height:38px;padding:0 14px;font-size:13px;transition:border-color .16s}.server-log-search:focus{border-color:#6b3d2e}.server-log-select{color:#2c2118;cursor:pointer;background:#fffdf8cc;border:1px solid #d4bfa880;border-radius:12px;outline:none;min-height:38px;padding:0 14px;font-size:13px;font-weight:700}.server-access-log{border:1px solid #d4bfa84d;border-radius:14px;max-height:600px;overflow:hidden auto}.server-access-header,.server-access-row{grid-template-columns:70px 52px 1fr 50px 70px 110px;align-items:center;gap:8px;padding:8px 14px;font-size:12px;display:grid}.server-access-header{color:#9a8b7e;text-transform:uppercase;letter-spacing:.03em;z-index:1;background:#6b3d2e0f;font-size:11px;font-weight:800;position:sticky;top:0}.server-access-row{border-top:1px solid #d4bfa826;transition:background .12s}.server-access-row:hover{background:#f2eee880}.server-access-time{color:#9a8b7e;font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.server-access-method{font-size:11px;font-weight:900}.server-access-method.get{color:#3d7a2e}.server-access-method.post{color:#2563eb}.server-access-method.put,.server-access-method.patch{color:#a86d16}.server-access-method.delete{color:#c0392b}.server-access-path{color:#2c2118;text-overflow:ellipsis;white-space:nowrap;font-family:monospace;font-size:12px;overflow:hidden}.server-access-size{color:#9a8b7e;text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.server-access-ip{color:#9a8b7e;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.server-process-table{border:1px solid #d4bfa84d;border-radius:14px;overflow:hidden}.server-process-header,.server-process-row{grid-template-columns:60px 80px 60px 60px 80px 1fr;align-items:center;gap:8px;padding:8px 14px;font-size:13px;display:grid}.server-process-header{color:#9a8b7e;text-transform:uppercase;letter-spacing:.03em;background:#6b3d2e0f;font-size:11px;font-weight:800}.server-process-row{border-top:1px solid #d4bfa826;transition:background .12s}.server-process-row:hover{background:#f2eee880}.server-process-pid{color:#6b3d2e;font-variant-numeric:tabular-nums;font-weight:800}.server-process-cmd{text-overflow:ellipsis;white-space:nowrap;color:#5a5048;font-family:monospace;font-size:12px;overflow:hidden}.server-val-warn{font-weight:800;color:#c05040!important}.server-db-table{border:1px solid #d4bfa84d;border-radius:14px;overflow:hidden}.server-db-header,.server-db-row{grid-template-columns:1fr 100px 1fr;align-items:center;gap:12px;padding:9px 14px;font-size:13px;display:grid}.server-db-header{color:#9a8b7e;text-transform:uppercase;letter-spacing:.03em;background:#6b3d2e0f;font-size:11px;font-weight:800}.server-db-row{border-top:1px solid #d4bfa826;transition:background .12s}.server-db-row:hover{background:#f2eee880}.server-db-row code{color:#2c2118;overflow-wrap:anywhere;word-break:break-word;min-width:0;font-size:13px;font-weight:700}.server-db-row strong{text-align:right;color:#6b3d2e;font-variant-numeric:tabular-nums}.server-db-bar-wrap{align-items:center;gap:8px;display:flex}.server-db-bar-wrap>div{background:linear-gradient(90deg,#6b3d2e26,#6b3d2e40);border-radius:999px;flex:1;height:16px;transition:width .4s}.server-db-bar-wrap span{text-align:right;color:#9a8b7e;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:44px;font-size:12px;font-weight:700}@media (max-width:768px){.server-access-header,.server-access-row{grid-template-columns:60px 42px 1fr 42px;font-size:11px}.server-access-size,.server-access-ip{display:none}.server-process-header,.server-process-row{grid-template-columns:50px 60px 50px 50px 1fr}.server-process-header span:nth-child(5),.server-process-row span:nth-child(5){display:none}.server-db-header,.server-db-row{grid-template-columns:1fr 80px}.server-db-bar-wrap{display:none}.server-tabs{gap:4px}.server-tabs button{min-height:34px;padding:0 12px;font-size:13px}}h1,h2,h3,h4{overflow-wrap:break-word}.banner-dots button{position:relative}.banner-dots button:before{content:"";position:absolute;inset:-10px -4px}@media (min-width:981px){.profile-hero-content .client-cta{justify-self:start;min-width:300px;padding-inline:44px}}.profile-section{scroll-margin-top:96px}@media (max-width:680px){.profile-section{scroll-margin-top:76px}}.yandex-map-placeholder{cursor:pointer;color:#6f665a;background:linear-gradient(135deg,#efeae3,#e4ded5);flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.yandex-map-placeholder:hover{color:var(--lux-terracotta,#be6842)}
