
:root{--public-bg:#f1ece4;--public-surface:#fffdf9;--public-surface-2:#f8f4ee;--public-text:#201d1a;--public-muted:#756e67;--public-line:#e5ddd3;--public-accent:#7b3f28;--public-danger:#a63d3d;--public-green:#2f7654;--public-shadow:0 28px 80px rgba(45,34,27,.14);--public-radius:24px;--public-ui:"Restora Montserrat","Restora Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--public-display:"Restora Montserrat","Restora Montserrat","Segoe UI",Arial,sans-serif}*{box-sizing:border-box}html{background:var(--public-bg);color:var(--public-text)}body{margin:0;min-height:100vh;font-family:var(--public-ui)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.widget-body{background:linear-gradient(145deg,#f5f1eb,#e9e1d7);padding:14px}.booking-widget{width:min(1160px,100%);min-height:calc(100vh - 28px);margin:auto;background:var(--public-surface);border-radius:30px;overflow:hidden;box-shadow:var(--public-shadow);border:1px solid rgba(86,63,48,.1)}.widget-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 26px;border-bottom:1px solid var(--public-line);background:rgba(255,253,249,.94);position:sticky;top:0;z-index:20;backdrop-filter:blur(15px)}.widget-brand,.guest-brand{display:flex;align-items:center;gap:12px}.public-brand-mark{width:46px;height:46px;border-radius:15px;background:linear-gradient(145deg,#bd8468,var(--public-accent));display:grid;place-items:center;color:#fff;font:26px var(--public-display);box-shadow:0 10px 26px rgba(93,49,31,.2)}.widget-brand strong,.widget-brand span,.guest-brand strong,.guest-brand span{display:block}.widget-brand strong,.guest-brand strong{font-size:15px}.widget-brand span,.guest-brand span{font-size:11px;color:var(--public-muted);margin-top:3px}.widget-tabs{display:flex;padding:4px;border-radius:999px;background:var(--public-surface-2);border:1px solid var(--public-line)}.widget-tabs button{border:0;background:transparent;padding:9px 17px;border-radius:999px;color:var(--public-muted);font-size:12px;font-weight:700}.widget-tabs button.is-active{background:var(--public-text);color:#fff}.widget-panel{display:none;padding:42px}.widget-panel.is-active{display:block}.widget-intro{max-width:680px;margin-bottom:30px}.widget-intro.compact{margin-bottom:22px}.public-eyebrow{display:block;color:var(--public-accent);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.16em;margin-bottom:8px}.widget-intro h1,.guest-card h1,.widget-fatal h1{font:400 clamp(29px,4vw,47px)/1.08 var(--public-display);margin:0 0 12px}.widget-intro p,.widget-fatal p{color:var(--public-muted);line-height:1.7;margin:0;font-size:14px}.widget-loading{padding:38px;border:1px dashed var(--public-line);border-radius:20px;text-align:center;color:var(--public-muted);background:var(--public-surface-2)}.booking-steps{display:flex;align-items:center;max-width:340px;margin:0 0 28px}.booking-steps span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#eee7de;color:#8b8178;font-weight:800;font-size:12px}.booking-steps span.is-active,.booking-steps span.is-done{background:var(--public-accent);color:#fff}.booking-steps i{height:1px;flex:1;background:var(--public-line)}.booking-step{display:none}.booking-step.is-active{display:block}.public-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.public-form-grid label,.public-form label{display:grid;gap:7px;color:#5f5852;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.public-form-grid .span-2{grid-column:1/-1}.public-form-grid input,.public-form-grid select,.public-form-grid textarea,.public-form input,.public-form textarea{width:100%;border:1px solid var(--public-line);background:#fff;border-radius:14px;padding:13px 14px;min-height:48px;color:var(--public-text);font-size:16px;outline:none;transition:.18s}.public-form-grid textarea,.public-form textarea{min-height:96px;resize:vertical}.public-form-grid input:focus,.public-form-grid select:focus,.public-form-grid textarea:focus,.public-form input:focus,.public-form textarea:focus{border-color:var(--public-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--public-accent) 12%,transparent)}.public-consent{display:flex!important;align-items:flex-start;grid-template-columns:auto 1fr!important;text-transform:none!important;letter-spacing:0!important;font-weight:500!important;line-height:1.45!important}.public-consent input{width:18px!important;min-height:18px!important;margin-top:1px}.booking-step-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.public-btn{border:0;border-radius:14px;min-height:48px;padding:12px 20px;font-weight:800;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.public-btn-primary{background:var(--public-accent);color:#fff;box-shadow:0 12px 28px color-mix(in srgb,var(--public-accent) 25%,transparent)}.public-btn-secondary{background:var(--public-text);color:#fff}.public-btn-ghost{background:var(--public-surface-2);color:var(--public-text);border:1px solid var(--public-line)}.public-btn-danger{background:var(--public-danger);color:#fff}.public-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.booking-floor-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:15px}.booking-floor-head h2{font:400 27px var(--public-display);margin:0 0 5px}.booking-floor-head p{font-size:12px;color:var(--public-muted);margin:0}.widget-floor{height:500px;background:#eee6dc;border:1px solid var(--public-line);border-radius:22px;overflow:hidden;position:relative}.selected-place{margin-top:12px;padding:13px 16px;border-radius:14px;background:var(--public-surface-2);border:1px solid var(--public-line);font-size:12px;font-weight:700}.booking-summary{margin-top:18px;padding:16px;border-radius:16px;background:var(--public-surface-2);border:1px solid var(--public-line);font-size:12px;line-height:1.7}.widget-result{padding:32px;border-radius:22px;background:#edf6f0;border:1px solid #cce2d2;text-align:center}.widget-result h2{font:400 31px var(--public-display);margin:8px 0}.widget-result p{color:#52665a;line-height:1.65}.widget-result a{display:inline-flex;margin-top:12px}.widget-error{padding:12px 14px;border-radius:13px;background:#f9e9e9;color:#923737;font-size:12px;margin-bottom:14px}.widget-fatal{min-height:560px;display:grid;place-content:center;text-align:center;padding:40px}.widget-fatal .public-brand-mark{margin:0 auto 18px}.menu-categories{display:flex;gap:8px;overflow:auto;margin-bottom:20px;padding-bottom:5px}.menu-categories button{white-space:nowrap;border:1px solid var(--public-line);background:#fff;border-radius:999px;padding:9px 14px;font-size:11px;font-weight:800}.menu-categories button.is-active{background:var(--public-text);color:#fff;border-color:var(--public-text)}.public-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.menu-card{border:1px solid var(--public-line);background:#fff;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;min-height:245px}.menu-card-image{height:120px;background:linear-gradient(145deg,#eee5db,#d9cabd);display:grid;place-items:center;color:#9b8b7e;font:38px var(--public-display);overflow:hidden}.menu-card-image img{width:100%;height:100%;object-fit:cover}.menu-card-body{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1}.menu-card h3{font:400 19px/1.2 var(--public-display);margin:0}.menu-card p{font-size:11px;line-height:1.55;color:var(--public-muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.menu-card-meta{display:flex;justify-content:space-between;align-items:end;margin-top:auto;gap:8px}.menu-card-price{font-weight:800}.menu-card button{border:0;border-radius:11px;padding:9px 12px;background:var(--public-accent);color:#fff;font-size:11px;font-weight:800}.menu-card.is-stopped{opacity:.55}.menu-card.is-stopped button{background:#aaa;pointer-events:none}.cart-fab{position:fixed;right:28px;bottom:24px;z-index:25;border:0;border-radius:999px;background:var(--public-accent);color:#fff;padding:14px 20px;font-weight:800;box-shadow:0 15px 40px rgba(50,32,22,.28)}.public-cart{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);z-index:40;background:#fff;padding:24px;box-shadow:-20px 0 60px rgba(30,22,18,.2);overflow:auto}.cart-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--public-line)}.cart-head strong{font:400 25px var(--public-display)}.cart-head button{border:0;background:none;color:var(--public-muted)}.cart-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px 0;border-bottom:1px solid var(--public-line)}.cart-row small{display:block;color:var(--public-muted);margin-top:4px}.cart-qty{display:flex;align-items:center;gap:6px}.cart-qty button{width:29px;height:29px;border:1px solid var(--public-line);background:var(--public-surface-2);border-radius:9px}.cart-total{display:flex;justify-content:space-between;font-size:18px;padding:20px 0}.checkout-dialog,.modifier-dialog{border:0;border-radius:24px;padding:0;width:min(630px,calc(100% - 24px));box-shadow:0 30px 90px rgba(20,15,12,.35)}.checkout-dialog::backdrop,.modifier-dialog::backdrop{background:rgba(27,22,18,.55);backdrop-filter:blur(5px)}.checkout-card,.modifier-card{padding:28px;position:relative}.checkout-card h2,.modifier-card h2{font:400 30px var(--public-display);margin:0 0 20px}.dialog-close{position:absolute;right:18px;top:15px;border:0;background:var(--public-surface-2);width:36px;height:36px;border-radius:50%;font-size:23px}.checkout-error{color:var(--public-danger);font-size:12px;margin:12px 0}.modifier-group{padding:14px 0;border-top:1px solid var(--public-line)}.modifier-group strong,.modifier-group small{display:block}.modifier-group small{color:var(--public-muted);margin-top:3px}.modifier-options{display:grid;gap:8px;margin-top:10px}.modifier-options label{display:flex;align-items:center;gap:8px;font-size:13px}.modifier-options input{width:18px;height:18px}.public-alert{padding:13px 16px;border-radius:14px;margin-bottom:14px;font-size:13px}.public-alert-error{background:#f8e5e5;color:#8e3333}.public-alert-success{background:#e6f3ea;color:#286246}.public-page{padding:30px;background:linear-gradient(145deg,#f6f2ec,#e8dfd5)}.guest-shell{width:min(830px,100%);margin:auto}.guest-brand{margin-bottom:18px}.guest-card{background:#fff;border-radius:28px;padding:30px;box-shadow:var(--public-shadow);border:1px solid var(--public-line)}.guest-card-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.guest-card h1{font-size:38px}.public-status{padding:8px 12px;border-radius:999px;font-size:11px;font-weight:800;background:#eee}.status-success{background:#e4f1e8;color:#276044}.status-warning{background:#f7ecd7;color:#8a5a15}.status-danger{background:#f7e2e2;color:#913636}.status-info{background:#e4eff4;color:#37677d}.guest-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.guest-facts>div{padding:16px;border-radius:16px;background:var(--public-surface-2);border:1px solid var(--public-line)}.guest-facts span,.guest-facts strong,.guest-facts small{display:block}.guest-facts span{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--public-muted)}.guest-facts strong{margin:7px 0 3px}.guest-facts small{font-size:10px;color:var(--public-muted)}.guest-actions{display:grid;gap:10px}.guest-action-panel{border:1px solid var(--public-line);border-radius:16px;padding:0 16px}.guest-action-panel summary{padding:15px 0;cursor:pointer;font-weight:800;font-size:12px}.guest-action-panel .public-form{padding:0 0 16px;display:grid;gap:13px}.guest-action-panel.danger summary{color:var(--public-danger)}.guest-help{text-align:center;color:var(--public-muted);font-size:12px;margin:18px}.guest-empty{text-align:center}.fp-svg{width:100%;height:100%;display:block;touch-action:none}.fp-item{transition:filter .15s,opacity .15s}.fp-table{cursor:pointer}.fp-tabletop{fill:#f4ece3;stroke:#715b4f;stroke-width:2}.fp-chairs rect{fill:#a58d7d}.fp-table-number{font-size:13px;font-weight:800;fill:#312924}.fp-table-capacity{font-size:9px;fill:#766a62}.fp-status-dot{fill:#4b9a6b;stroke:#fff;stroke-width:2}.fp-status-soon .fp-status-dot{fill:#c68a2c}.fp-status-reserved .fp-status-dot{fill:#a84a4a}.fp-status-occupied .fp-status-dot{fill:#557da3}.fp-status-blocked .fp-status-dot,.fp-status-unavailable .fp-status-dot{fill:#888}.fp-table:not(.fp-status-available){opacity:.58;cursor:not-allowed}.fp-table.is-selected .fp-tabletop{stroke:var(--public-accent);stroke-width:5}.fp-object-zone{cursor:pointer}.fp-zone-shape{stroke:#9a7d69;stroke-width:1.5;stroke-dasharray:8 7;fill-opacity:.19}.fp-object-zone.is-selected .fp-zone-shape{stroke:var(--public-accent);stroke-width:4;fill-opacity:.34}.fp-zone-label{font-size:18px;font-family:var(--public-display);fill:#6c584b}.fp-wall-shape{fill:#4e443e}.fp-window-line{stroke:#6d9aac;stroke-width:4}.fp-door-line,.fp-door-arc{stroke:#65554b;stroke-width:3;fill:none}.fp-column-shape{fill:#75675e}.fp-plant-pot{fill:#806959}.fp-plant-leaf{fill:#6f8b68}.fp-furniture-shape,.fp-facility-shape{fill:#d2c0b3;stroke:#927a6a}.fp-furniture-line{stroke:#a78f7f}.fp-bar-shape{fill:#735446}.fp-bar-stool{fill:#aa8b78}.fp-sign-shape{fill:#303a37}.fp-sign-arrow{stroke:#fff;stroke-width:4;fill:none}.fp-object-label,.fp-free-label{font-size:13px;fill:#55483f;font-weight:700}.fp-grid-line{stroke:rgba(70,54,43,.08);stroke-width:1}.fp-floor-stone,.fp-floor-wood,.fp-floor-grain{fill:none;stroke:rgba(92,74,61,.08);stroke-width:1}.fp-terrazzo-chip{fill:rgba(104,83,68,.13)}
@media(max-width:850px){.widget-body{padding:0}.booking-widget{min-height:100vh;border-radius:0}.widget-header{padding:14px 16px}.widget-panel{padding:26px 18px}.public-menu{grid-template-columns:repeat(2,minmax(0,1fr))}.widget-floor{height:430px}.guest-facts{grid-template-columns:1fr}.public-page{padding:15px}.guest-card{padding:21px}.guest-card-head{display:block}.public-status{display:inline-flex;margin-bottom:12px}.guest-card h1{font-size:30px}}
@media(max-width:560px){.widget-header{align-items:flex-start;flex-direction:column}.widget-tabs{width:100%}.widget-tabs button{flex:1}.public-form-grid{grid-template-columns:1fr}.public-form-grid .span-2{grid-column:auto}.booking-step-actions{display:grid;grid-template-columns:1fr}.public-btn{width:100%}.booking-floor-head{align-items:flex-start}.widget-floor{height:370px}.public-menu{grid-template-columns:1fr}.menu-card{min-height:210px}.menu-card-image{height:105px}.widget-intro h1{font-size:32px}.public-cart{padding:18px}.guest-card h1{font-size:27px}.checkout-card,.modifier-card{padding:22px 17px}.cart-fab{right:14px;bottom:14px}}
.public-result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.public-result-actions .public-btn{flex:1;min-width:180px}
/* v1.0.2 — custom table assets and premium hover photo */
.fp-custom-table-image{pointer-events:none;filter:drop-shadow(0 7px 10px rgba(36,29,24,.14))}.fp-table-hover{position:absolute;z-index:80;width:min(285px,calc(100% - 16px));overflow:hidden;border:1px solid rgba(91,70,54,.16);border-radius:17px;background:#fffdf9;box-shadow:0 22px 60px rgba(30,23,18,.22);pointer-events:none}.fp-table-hover[hidden]{display:none}.fp-table-hover img{display:block;width:100%;height:165px;object-fit:cover}.fp-table-hover>div{display:grid;gap:3px;padding:12px 14px}.fp-table-hover strong{font-size:13px}.fp-table-hover small,.fp-table-hover span{color:var(--public-muted);font-size:10px;line-height:1.45}@media(hover:none){.fp-table-hover{display:none!important}}

/* v1.0.5 unified Montserrat + Montserrat booking typography */
@font-face{font-family:"Restora Montserrat";src:url('/assets/fonts/Montserrat-Variable.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}

:root{--public-accent:#f23822;--public-ui:"Restora Montserrat",Arial,sans-serif;--public-display:"Restora Montserrat","Segoe UI",Arial,sans-serif;--public-radius:12px}
.widget-body{background:#f3f3f1}.booking-widget{border-radius:12px}.public-brand-mark{border-radius:7px;background:var(--public-accent);font-family:var(--public-display)}.widget-intro h1,.guest-card h1,.widget-fatal h1,.booking-floor-head h2,.menu-card h3{font-weight:600;text-transform:uppercase}.public-btn{border-radius:5px;font-family:var(--public-display);font-size:14px;text-transform:uppercase}.widget-tabs,.widget-tabs button{border-radius:5px}.public-form-grid input,.public-form-grid select,.public-form-grid textarea,.public-form input,.public-form textarea{border-radius:6px}.widget-floor{border-radius:8px}.menu-card{border-radius:8px}

/* v1.0.8 AMBRA booking theme */
.widget-body{--public-bg:#090b0b;--public-surface:#171a1a;--public-surface-2:#202323;--public-text:#f4f2ec;--public-muted:#a8acab;--public-line:rgba(255,255,255,.14);--public-accent:#d5a44f;background:linear-gradient(145deg,#090b0b,#151818);color:var(--public-text)}
.widget-body .booking-widget{border:1px solid rgba(213,164,79,.28);background:var(--public-surface);box-shadow:0 28px 90px rgba(0,0,0,.42)}
.widget-body .widget-header{border-color:var(--public-line);background:rgba(15,18,18,.95)}
.widget-body .public-brand-mark{background:var(--public-accent);color:#17110a}
.widget-body .widget-tabs{border-color:var(--public-line);background:#111414}.widget-body .widget-tabs button.is-active{background:var(--public-accent);color:#17110a}
.widget-body .public-form-grid label,.widget-body .public-form label{color:#d8d8d4}
.widget-body .public-form-grid input,.widget-body .public-form-grid select,.widget-body .public-form-grid textarea,.widget-body .public-form input,.widget-body .public-form textarea{border-color:var(--public-line);background:#111414;color:#fff}
.widget-body .public-form-grid select option{color:#111}.widget-body .widget-loading,.widget-body .selected-place,.widget-body .booking-summary{border-color:var(--public-line);background:var(--public-surface-2);color:var(--public-muted)}
.widget-body .public-btn-primary{background:var(--public-accent);color:#17110a}.widget-body .public-btn-secondary{background:#f4f2ec;color:#17110a}.widget-body .public-btn-ghost{border-color:var(--public-line);background:#111414;color:#fff}
.widget-body .widget-floor{border-color:var(--public-line);background:#111414}.widget-body .menu-categories button{border-color:var(--public-line);background:#111414;color:#fff}.widget-body .menu-categories button.is-active{border-color:var(--public-accent);background:var(--public-accent);color:#17110a}
.widget-body .menu-card{border-color:var(--public-line);background:#111414}.widget-body .menu-card-image{background:#202323}.widget-body .menu-card button{background:var(--public-accent);color:#17110a}

/* v1.0.8 — AMBRA widget contrast and currency glyph */
.widget-body,.widget-body .booking-widget,.widget-body .widget-panel,.widget-body .menu-card-body{color:#f4f2ec}
.widget-body .widget-intro h1,.widget-body .widget-intro p,.widget-body .booking-floor-head h2,.widget-body .booking-floor-head p,.widget-body .menu-card h3,.widget-body .menu-card p,.widget-body .menu-card-meta,.widget-body .menu-card-price,.widget-body .widget-brand strong,.widget-body .widget-brand span{color:inherit}
.widget-body .widget-intro p,.widget-body .booking-floor-head p,.widget-body .menu-card p,.widget-body .widget-brand span{color:#aeb2b0}
.widget-body .menu-card-price,.widget-body .cart-total,.widget-body .cart-row small{font-family:"Restora Montserrat",Montserrat,Arial,sans-serif!important;font-weight:800;font-variant-numeric:tabular-nums}
.widget-body .menu-card-price{color:#d5a44f}
.widget-body .public-form-grid input::placeholder,.widget-body .public-form-grid textarea::placeholder{color:#858b89}


/* v1.0.8 booking flow audit — readable text, dark-theme contrast and responsive step height */
.widget-body{font-size:16px;line-height:1.55;color-scheme:dark}
.widget-body .booking-widget,
.widget-body .widget-panel,
.widget-body .booking-step,
.widget-body .widget-header{color:#f7f5ef}
.widget-body .widget-brand strong{font-size:16px;color:#f7f5ef}
.widget-body .widget-brand span{font-size:13px;color:#c1c5c3}
.widget-body .widget-tabs button{font-size:14px;color:#d7dad8}
.widget-body .public-eyebrow{font-size:12px}
.widget-body .widget-intro p{font-size:16px;line-height:1.7;color:#c4c8c6}
.widget-body .public-form-grid label,
.widget-body .public-form label{font-size:13px;line-height:1.4;color:#e5e6e2}
.widget-body .public-form-grid input,
.widget-body .public-form-grid select,
.widget-body .public-form-grid textarea,
.widget-body .public-form input,
.widget-body .public-form textarea{font-size:16px;color:#fff!important;background:#111414!important;color-scheme:dark}
.widget-body .public-form-grid input::placeholder,
.widget-body .public-form-grid textarea::placeholder{color:#a5aaa8}
.widget-body .public-btn{font-size:15px;line-height:1.2}
.widget-body .booking-floor-head p{font-size:14px;line-height:1.55;color:#c1c5c3}
.widget-body .selected-place,
.widget-body .booking-summary,
.widget-body .widget-loading{font-size:14px;line-height:1.6;color:#d4d7d5}
.widget-body .menu-card p{font-size:14px;line-height:1.55;color:#c3c7c5}
.widget-body .menu-card button,.widget-body .menu-categories button{font-size:13px}
.widget-body .menu-card-meta,.widget-body .menu-card-price{font-size:14px}
.widget-body .widget-error{font-size:14px;line-height:1.5}
.widget-body .public-consent{font-size:13px!important;color:#d7dad8!important}
.widget-body .widget-result{background:#17241c;border-color:#345440;color:#eef6f0}
.widget-body .widget-result h2{color:#fff}
.widget-body .widget-result p{color:#c7d7ca}

/* Keep every secondary widget surface readable in AMBRA dark mode. */
.widget-body .public-cart,
.widget-body .checkout-card,
.widget-body .modifier-card{background:#171a1a;color:#f7f5ef}
.widget-body .cart-head,
.widget-body .cart-row,
.widget-body .modifier-group{border-color:var(--public-line)}
.widget-body .cart-head button,
.widget-body .dialog-close{color:#fff;background:#242828}
.widget-body .cart-row small,
.widget-body .modifier-group small{color:#b8bdbb}
.widget-body .fp-zone-label{fill:#d5a44f}
.widget-body .fp-object-label,
.widget-body .fp-free-label{fill:#f1f2ef}
.widget-body .fp-table-capacity{font-size:11px}

@media(max-width:850px){
  .widget-body .widget-panel{padding:28px 20px}
  .widget-body .widget-brand span{font-size:12px}
}
@media(max-width:560px){
  .widget-body .widget-tabs button{font-size:13px}
  .widget-body .widget-intro p{font-size:15px}
  .widget-body .booking-floor-head{display:grid;grid-template-columns:1fr}
  .widget-body .booking-floor-head .public-btn{width:auto;justify-self:start}
  .widget-body .widget-floor{height:430px}
}

/* v1.0.8-premium5 · readable premium booking flow */
.widget-body{
  --public-ui:"Restora Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --public-display:"Restora Montserrat","Segoe UI",Arial,sans-serif;
  --public-accent:#d8ad62;
  --public-wine:#7f2637;
  --public-green:#4d6a52;
  font-family:var(--public-ui)!important;
  font-size:16px;
  line-height:1.6;
  color-scheme:dark;
  -webkit-font-smoothing:antialiased;
}
.widget-body .booking-widget{border-radius:20px;background:#151613}
.widget-body .widget-header{padding:20px 26px;background:rgba(15,16,14,.97)}
.widget-body .public-brand-mark{border:1px solid rgba(240,207,140,.5);border-radius:50%;background:radial-gradient(circle at 32% 28%,#b94758 0 19%,#7f2637 20% 56%,#31151b 57% 100%);color:#f5d99d;font-family:var(--public-display);font-size:27px;box-shadow:0 10px 26px rgba(83,20,34,.36)}
.widget-body .widget-brand strong{font-family:var(--public-display);font-size:23px;font-weight:600;line-height:1;color:#fff8ea}
.widget-body .widget-brand span{font-size:13px}
.widget-body .widget-tabs{border-radius:12px}.widget-body .widget-tabs button{border-radius:9px;font-family:var(--public-ui);font-size:14px;font-weight:700;text-transform:none}
.widget-body .widget-panel{padding:42px}
.widget-body .public-eyebrow{font-family:var(--public-ui);font-size:12px;letter-spacing:.13em}
.widget-body .widget-intro h1,.widget-body .guest-card h1,.widget-body .widget-fatal h1,.widget-body .booking-floor-head h2,.widget-body .menu-card h3,.widget-body .widget-result h2{
  font-family:var(--public-display)!important;font-weight:600;line-height:.98;letter-spacing:-.02em;text-transform:none!important;color:#fff8ea
}
.widget-body .widget-intro h1{font-size:clamp(42px,5vw,64px)}
.widget-body .booking-floor-head h2{font-size:38px}
.widget-body .widget-intro p{max-width:760px;font-size:16px;line-height:1.72;color:#c8cbc7}
.widget-body .booking-steps{max-width:390px;margin-bottom:34px}.widget-body .booking-steps span{width:38px;height:38px;font-size:14px}.widget-body .booking-steps span.is-active,.widget-body .booking-steps span.is-done{background:linear-gradient(135deg,#b98c45,#e3bd75);color:#21160e}
.widget-body .public-form-grid{gap:18px}.widget-body .public-form-grid label,.widget-body .public-form label{font-size:14px;font-weight:650;letter-spacing:0;text-transform:none}
.widget-body .public-form-grid input,.widget-body .public-form-grid select,.widget-body .public-form-grid textarea,.widget-body .public-form input,.widget-body .public-form textarea{min-height:54px;border-radius:12px;padding:14px 16px;font-family:var(--public-ui);font-size:16px;background:#10110f!important}
.widget-body .public-form-grid textarea,.widget-body .public-form textarea{min-height:112px}
.widget-body .public-btn{min-height:52px;border-radius:11px;padding:13px 23px;font-family:var(--public-ui);font-size:15px;font-weight:750;letter-spacing:0;text-transform:none}
.widget-body .public-btn-primary{background:linear-gradient(135deg,#d1a256,#f0cf8c);color:#20160e;box-shadow:0 12px 28px rgba(216,173,98,.18)}
.widget-body .public-btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px)}
.widget-body .public-btn-ghost{background:#20211d}
.widget-body .booking-floor-head{align-items:center;margin-bottom:18px}.widget-body .booking-floor-head p{font-size:15px}
.widget-body .widget-floor{height:560px;border-radius:16px;background:#10110f;box-shadow:inset 0 0 0 1px rgba(216,173,98,.06)}
.widget-body .selected-place,.widget-body .booking-summary{border-radius:12px;font-size:15px;color:#e8e5de}
.widget-body .widget-error{margin:0 0 20px;padding:16px 18px;border:1px solid rgba(224,101,101,.45);border-radius:12px;background:#32191b;color:#ffd9d9;font-size:15px;line-height:1.55}
.widget-body .widget-loading.widget-error{margin:0;padding:22px}
.widget-body .widget-result{border-radius:16px}.widget-body .widget-result h2{font-size:42px}

/* A reliable list selector is shown as a fallback and on compact screens. */
.widget-floor-choices{display:grid;height:100%;padding:18px;overflow:auto;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:12px;background:radial-gradient(circle at 50% 0,rgba(216,173,98,.08),transparent 45%),#10110f}
.widget-floor-choice{display:grid;min-height:82px;padding:14px 15px;border:1px solid rgba(216,173,98,.22);border-radius:12px;align-content:center;gap:5px;background:#1b1c18;color:#fff;text-align:left;transition:.18s}
.widget-floor-choice:hover,.widget-floor-choice.is-selected{border-color:#d8ad62;background:linear-gradient(145deg,#34271a,#201d17);box-shadow:0 10px 28px rgba(0,0,0,.22)}
.widget-floor-choice strong{font-family:var(--public-display);font-size:21px;font-weight:600;line-height:1;color:#fff5e4}
.widget-floor-choice span{color:#bbbeb9;font-size:13px}
.widget-floor-empty{grid-column:1/-1;display:grid;min-height:220px;padding:30px;place-items:center;color:#c8cbc7;text-align:center}
.widget-floor-mobile-list{position:absolute;right:14px;bottom:14px;left:14px;z-index:5;display:flex;max-height:82px;padding:8px;overflow:auto;gap:8px;border:1px solid rgba(216,173,98,.18);border-radius:13px;background:rgba(13,14,12,.93);backdrop-filter:blur(9px)}
.widget-floor-mobile-list .widget-floor-choice{min-width:145px;min-height:54px;padding:10px 12px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:13px}
.widget-body .fp-table-number{font-family:var(--public-ui);font-size:16px;font-weight:800}.widget-body .fp-table-capacity{font-family:var(--public-ui);font-size:12px}.widget-body .fp-table.fp-status-available{cursor:pointer}.widget-body .fp-table.fp-status-available .fp-status-dot{fill:#60b47f}.widget-body .fp-table.is-selected .fp-tabletop{stroke:#d8ad62;stroke-width:7}

@media(max-width:850px){
  .widget-body .booking-widget{border-radius:0}.widget-body .widget-panel{padding:30px 20px}.widget-body .widget-intro h1{font-size:46px}.widget-body .widget-floor{height:500px}.widget-floor-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .widget-body .widget-header{padding:16px}.widget-body .widget-brand strong{font-size:21px}.widget-body .widget-panel{padding:26px 16px}.widget-body .widget-intro h1{font-size:39px}.widget-body .booking-floor-head h2{font-size:32px}.widget-body .widget-floor{height:500px}.widget-floor-choices{grid-template-columns:1fr;padding:12px}.widget-floor-mobile-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:150px}.widget-floor-mobile-list .widget-floor-choice{min-width:0}.widget-body .public-btn{font-size:15px}
}


/* v1.0.8-premium6 booking and public widget typography reset */
:root{--public-ui:"Restora Montserrat","Segoe UI",Arial,sans-serif;--public-display:"Restora Montserrat","Segoe UI",Arial,sans-serif;--public-radius:18px}
.public-body,.widget-body{font-family:var(--public-ui)}
.public-header h1,.public-section h2,.widget-body .public-section-title,.widget-body .public-step-title,.widget-floor-choice strong,.cart-head strong,.checkout-card h2,.modifier-card h2,.guest-card h1{font-family:var(--public-display)!important;font-weight:700;letter-spacing:-.02em;text-transform:none!important}
.widget-body .widget-panel,.public-shell,.guest-card,.checkout-dialog,.modifier-dialog,.menu-card,.guest-facts>div{border-radius:20px}
.widget-body .widget-panel,.menu-card,.guest-card{box-shadow:0 18px 46px rgba(12,10,8,.18)}
.widget-body .public-form-grid input,.widget-body .public-form-grid select,.widget-body .public-form-grid textarea,.widget-body .public-form input,.widget-body .public-form textarea,.menu-categories button,.menu-card button,.public-btn{font-family:var(--public-ui)!important}
.widget-body .public-eyebrow,.menu-categories button,.guest-facts span{letter-spacing:.08em}
.widget-body .public-step-title,.public-header h1{font-size:clamp(28px,5vw,44px)}
.widget-body .public-copy,.widget-body .public-section p,.menu-card p,.guest-help,.guest-action-panel summary{font-size:14px;line-height:1.7}
.widget-body .widget-tabs button,.public-btn,.menu-card button{font-size:14px}
.widget-body .widget-floor-choice{padding:18px;border-radius:18px}
.widget-body .public-form-grid input,.widget-body .public-form-grid select,.widget-body .public-form-grid textarea,.widget-body .public-form input,.widget-body .public-form textarea{border-radius:16px}


/* v1.0.8-premium7-light light premium restaurant widget */
:root{
  --public-accent:#231b17;
  --public-accent-light:#4f3d31;
  --public-text:#231b17;
  --public-muted:#6f645b;
  --public-line:rgba(110,88,68,.12);
  --public-surface:#fffdfa;
  --public-surface-2:#f8f3ec;
  --public-shadow:0 18px 46px rgba(45,31,19,.10);
}
body.public-page,body.widget-body{background:linear-gradient(180deg,#f7f3ec 0%,#fbf8f2 100%);color:var(--public-text)}
.widget-shell,.public-shell,.guest-shell{max-width:1200px}
.widget-body .widget-panel,.guest-card,.checkout-dialog,.modifier-dialog,.menu-card,.public-cart{background:#fffefb;border-color:var(--public-line);box-shadow:var(--public-shadow)}
.widget-body .public-brand-mark{background:linear-gradient(135deg,#f3d89f,#d8ae66);color:#26190f;box-shadow:0 12px 24px rgba(58,37,17,.12)}
.widget-body .public-step-title,.public-header h1,.guest-card h1{color:#231b17}
.widget-body .public-copy,.widget-body .public-section p,.guest-help,.menu-card p{color:var(--public-muted)}
.widget-body .widget-tabs{background:#f6f0e8;border-color:var(--public-line)}
.widget-body .widget-tabs button.is-active{background:#fff;box-shadow:0 6px 18px rgba(50,35,22,.08)}
.widget-body .public-form-grid input,.widget-body .public-form-grid select,.widget-body .public-form-grid textarea,.widget-body .public-form input,.widget-body .public-form textarea{background:#fff!important;color:#231b17;border-color:var(--public-line)}
.widget-body .public-btn,.menu-card button,.public-btn{background:#231b17;color:#fff}.widget-body .public-btn-secondary{background:#4f3d31}.widget-body .public-btn-ghost{background:#f8f3ec;color:#231b17;border:1px solid var(--public-line)}
.widget-body .widget-floor,.selected-place,.booking-summary,.guest-facts>div,.guest-action-panel{background:#fff;border-color:var(--public-line)}
.fp-table.is-selected .fp-tabletop{stroke:#c89646}
.menu-categories button.is-active{background:#231b17;border-color:#231b17}

/* v1.0.8-premium8 · final light, high-contrast Montserrat public UI */
:root{
  --public-ui:"Restora Montserrat",Montserrat,"Segoe UI",Arial,sans-serif;
  --public-display:"Restora Montserrat",Montserrat,"Segoe UI",Arial,sans-serif;
  --public-accent:#231b17;
  --public-accent-2:#4f3d31;
  --public-text:#231b17;
  --public-muted:#70655b;
  --public-line:rgba(82,62,47,.13);
  --public-surface:#fffdfa;
  --public-surface-2:#f5efe7;
  --public-shadow:0 20px 52px rgba(45,31,19,.10);
}
html{background:#f5f1ea}
body.widget-body,body.public-page{margin:0;background:linear-gradient(180deg,#f7f3ed,#efe8de);color:var(--public-text);color-scheme:light;font-family:var(--public-ui)!important;font-size:16px;line-height:1.65}
.booking-widget{width:min(1180px,100%);margin:0 auto;border:1px solid var(--public-line);border-radius:26px!important;background:#fffdfa!important;color:var(--public-text);box-shadow:var(--public-shadow);overflow:hidden}
.widget-body .widget-header{padding:19px 24px!important;border-bottom:1px solid var(--public-line);background:rgba(255,253,250,.98)!important;color:var(--public-text)}
.widget-body .widget-brand strong{color:var(--public-text)!important;font-family:var(--public-ui)!important;font-size:20px!important;font-weight:800!important;letter-spacing:-.02em}
.widget-body .widget-brand span{color:var(--public-muted)!important;font-size:12px!important}
.widget-body .public-brand-mark{border:1px solid rgba(123,84,38,.15)!important;background:radial-gradient(circle at 32% 28%,#f8e3b1,#dbb46c 62%,#9d7133 100%)!important;color:#25190f!important;font-family:var(--public-ui)!important;font-weight:800;box-shadow:0 10px 24px rgba(64,39,17,.13)!important}
.widget-body .widget-tabs{padding:4px;border:1px solid var(--public-line);border-radius:13px;background:#f5efe7!important}
.widget-body .widget-tabs button{min-height:38px;padding:0 15px;border-radius:10px;color:#6a5f55!important;background:transparent;font-family:var(--public-ui)!important;font-size:13px;font-weight:700}
.widget-body .widget-tabs button.is-active{background:#fff!important;color:#231b17!important;box-shadow:0 6px 18px rgba(45,31,19,.08)}
.widget-body .widget-panel{padding:38px!important;background:#fffdfa!important;color:var(--public-text);box-shadow:none!important}
.widget-body .widget-intro h1,.widget-body .guest-card h1,.widget-body .widget-fatal h1,.widget-body .booking-floor-head h2,.widget-body .menu-card h3,.widget-body .widget-result h2{
  color:var(--public-text)!important;font-family:var(--public-ui)!important;font-weight:800!important;letter-spacing:-.035em!important;line-height:1.08!important
}
.widget-body .widget-intro h1{font-size:clamp(36px,5vw,58px)!important}
.widget-body .booking-floor-head h2{font-size:clamp(28px,4vw,40px)!important}
.widget-body .widget-intro p,.widget-body .booking-floor-head p,.widget-body .widget-loading{color:var(--public-muted)!important;font-size:15px!important;line-height:1.75!important}
.widget-body .public-eyebrow{color:#986b34!important;font-family:var(--public-ui)!important;font-size:11px!important;font-weight:800;letter-spacing:.12em!important}
.widget-body .booking-steps i{background:var(--public-line)}
.widget-body .booking-steps span{border:1px solid var(--public-line);background:#f5efe7;color:#766a60;font-family:var(--public-ui);font-weight:800}
.widget-body .booking-steps span.is-active,.widget-body .booking-steps span.is-done{background:#231b17!important;color:#fff!important}
.widget-body .public-form-grid label,.widget-body .public-form label{color:#4e433a!important;font-family:var(--public-ui)!important;font-size:13px!important;font-weight:750!important}
.widget-body .public-form-grid input,.widget-body .public-form-grid select,.widget-body .public-form-grid textarea,.widget-body .public-form input,.widget-body .public-form textarea{
  min-height:53px!important;padding:13px 15px!important;border:1px solid var(--public-line)!important;border-radius:14px!important;background:#fff!important;color:#231b17!important;font-family:var(--public-ui)!important;font-size:16px!important;box-shadow:none!important
}
.widget-body input::placeholder,.widget-body textarea::placeholder{color:#9a8f85}
.widget-body .public-consent{color:#5e534a!important}.widget-body .public-consent input{min-height:0!important}
.widget-body .public-btn{min-height:50px!important;padding:12px 21px!important;border-radius:13px!important;font-family:var(--public-ui)!important;font-size:14px!important;font-weight:800!important;text-transform:none!important}
.widget-body .public-btn-primary,.public-btn-primary,.menu-card button,.cart-fab{border:1px solid #231b17!important;background:#231b17!important;color:#fff!important;box-shadow:0 12px 27px rgba(35,27,23,.16)!important}
.widget-body .public-btn-secondary{background:#4f3d31!important;color:#fff!important}
.widget-body .public-btn-ghost{border:1px solid var(--public-line)!important;background:#f5efe7!important;color:#2d241e!important;box-shadow:none!important}
.widget-body .widget-floor{height:560px;border:1px solid var(--public-line)!important;border-radius:18px!important;background:#f4eee5!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)!important}
.widget-body .selected-place,.widget-body .booking-summary{padding:15px 17px;border:1px solid var(--public-line)!important;border-radius:14px!important;background:#f8f3ec!important;color:#302721!important;font-size:14px!important}
.widget-body .widget-error{border:1px solid #e5bdbd!important;background:#faeaea!important;color:#8a3434!important}
.widget-body .widget-result{border:1px solid #cce2d2!important;background:#edf6f0!important;color:#2d5e40!important}.widget-body .widget-result h2{color:#245439!important}
.widget-floor-choices{background:#f4eee5!important;gap:11px!important}
.widget-floor-choice{border:1px solid var(--public-line)!important;background:#fff!important;color:#2b231d!important;box-shadow:0 8px 22px rgba(45,31,19,.05)}
.widget-floor-choice:hover,.widget-floor-choice.is-selected{border-color:#b8843f!important;background:#fffaf2!important;box-shadow:0 11px 28px rgba(83,53,23,.10)!important}
.widget-floor-choice strong{color:#231b17!important;font-family:var(--public-ui)!important;font-size:18px!important;font-weight:800!important}
.widget-floor-choice span,.widget-floor-empty{color:var(--public-muted)!important}
.widget-floor-mobile-list{border-color:var(--public-line)!important;background:rgba(255,253,250,.95)!important}
.widget-body .fp-zone-label{fill:#855e2d!important;font-family:var(--public-ui)!important}.widget-body .fp-object-label,.widget-body .fp-free-label{fill:#3d332c!important;font-family:var(--public-ui)!important}.widget-body .fp-table-number{fill:#2e261f!important;font-family:var(--public-ui)!important}.widget-body .fp-table-capacity{fill:#71665d!important;font-family:var(--public-ui)!important}
.widget-body .menu-categories button{border:1px solid var(--public-line);background:#fff;color:#4f443b;font-family:var(--public-ui);font-size:12px}.widget-body .menu-categories button.is-active{background:#231b17;color:#fff}
.widget-body .menu-card{border:1px solid var(--public-line);background:#fff;color:var(--public-text);box-shadow:0 14px 34px rgba(45,31,19,.07)}.widget-body .menu-card h3{color:#231b17!important;font-size:18px!important}.widget-body .menu-card p{color:var(--public-muted)!important;font-size:13px!important}.widget-body .menu-card-price{color:#8c612e}
.widget-body .public-cart{background:#fffdfa!important;color:#231b17!important}.widget-body .cart-head{border-color:var(--public-line)}.widget-body .cart-head strong,.widget-body .checkout-card h2,.widget-body .modifier-card h2{color:#231b17!important;font-family:var(--public-ui)!important;font-weight:800!important}.widget-body .cart-head button,.widget-body .dialog-close{background:#f5efe7!important;color:#3c3129!important}.widget-body .cart-row{border-color:var(--public-line)}.widget-body .cart-row small,.widget-body .modifier-group small{color:var(--public-muted)!important}
.checkout-dialog,.modifier-dialog{background:#fffdfa!important}.checkout-card,.modifier-card{background:#fffdfa;color:#231b17}
body.public-page .guest-card{border:1px solid var(--public-line);background:#fffdfa;color:#231b17;box-shadow:var(--public-shadow)}
body.public-page .guest-card h1,body.public-page .guest-card h2,body.public-page .guest-card h3{color:#231b17;font-family:var(--public-ui);font-weight:800}body.public-page .guest-card p,body.public-page .guest-card span,body.public-page .guest-help{color:var(--public-muted)}
body.public-page .guest-facts>div,body.public-page .guest-action-panel{border-color:var(--public-line);background:#f8f3ec;color:#231b17}
@media(max-width:850px){.booking-widget{border-radius:0!important;border-inline:0}.widget-body .widget-panel{padding:28px 19px!important}.widget-body .widget-floor{height:500px}}
@media(max-width:560px){.widget-body .widget-header{padding:15px!important}.widget-body .widget-panel{padding:23px 14px!important}.widget-body .widget-intro h1{font-size:36px!important}.widget-body .widget-floor{height:500px}.widget-body .booking-step-actions{display:grid;grid-template-columns:1fr}.widget-body .booking-step-actions .public-btn{width:100%}}


/* precise door/window hit area */
.fp-object-hitbox{fill:transparent;stroke:none;pointer-events:all}

/* v1.0.8-premium8 contrast lock: no light text on light panels */
body.widget-body{background:linear-gradient(180deg,#f7f3ed,#efe8de)!important;color:#231b17!important}
.widget-body .booking-widget,.widget-body .widget-shell,.widget-body .widget-panel{color:#231b17!important}
.widget-body .public-copy,.widget-body .public-section p,.widget-body .booking-summary,.widget-body .selected-place{color:#665b52!important}
.widget-body .public-form-grid,.widget-body .public-form,.widget-body .booking-floor-head{color:#231b17!important}
.widget-body .widget-panel small,.widget-body .widget-panel .muted{color:#766b61!important}


/* v1.0.8-premium10 widget readability */
body.widget-body,body.public-page,.widget-body *,.public-page *{font-family:"Restora Montserrat","Segoe UI",Arial,sans-serif}
.widget-body,.public-page{color:#231b17!important;background:linear-gradient(180deg,#f7f3ec 0%,#fbf8f2 100%)!important}
.widget-body .widget-panel,.widget-body .public-shell,.public-page .guest-card,.public-page .public-shell,.public-page .public-cart,.checkout-card,.modifier-card{background:#fffefb!important;color:#231b17!important;border:1px solid rgba(105,80,52,.12)!important;box-shadow:0 18px 46px rgba(45,31,19,.10)!important}
.widget-body .public-step-title,.widget-body .public-copy,.widget-body .public-section p,.widget-body .widget-floor-choice strong,.widget-body .widget-floor-choice span,.widget-body .booking-floor-head h2,.widget-body .booking-floor-head p,.widget-body .selected-place,.widget-body .booking-summary,.public-page h1,.public-page h2,.public-page p,.public-page strong,.public-page span,.public-page small{color:#231b17!important}
.widget-body .public-form-grid input,.widget-body .public-form-grid select,.widget-body .public-form-grid textarea,.widget-body .public-form input,.widget-body .public-form textarea,.public-page input,.public-page select,.public-page textarea{background:#fff!important;color:#231b17!important;border:1px solid rgba(105,80,52,.14)!important}
.widget-body .public-btn,.widget-body .menu-card button,.public-page .public-btn{background:#231b17!important;color:#fff!important;border:0!important}.widget-body .public-btn-ghost{background:#f7f1ea!important;color:#231b17!important;border:1px solid rgba(105,80,52,.14)!important}
.widget-body .widget-tabs{background:#f5efe7!important;border-color:rgba(105,80,52,.12)!important}.widget-body .widget-tabs button{color:#6f645b!important}.widget-body .widget-tabs button.is-active{background:#fff!important;color:#231b17!important}

/* v1.0.8-premium12 absolute widget contrast and typography reset */
html,body.widget-body,.widget-body,.widget-body *{font-family:"Restora Montserrat",Montserrat,"Segoe UI",Arial,sans-serif!important}
body.widget-body{background:#f2ede5!important;color:#231b17!important;color-scheme:light!important}
.widget-body .booking-widget{background:#fffdfa!important;color:#231b17!important;border-color:rgba(82,62,47,.13)!important}
.widget-body .widget-header,.widget-body .widget-panel,.widget-body .booking-step,.widget-body .widget-intro,.widget-body .widget-brand,.widget-body .widget-brand>div{color:#231b17!important}
.widget-body .widget-brand strong{display:block!important;color:#231b17!important;opacity:1!important;font-size:20px!important;font-weight:800!important;text-shadow:none!important}
.widget-body .widget-brand span{display:block!important;color:#75695f!important;opacity:1!important;font-size:12px!important;text-shadow:none!important}
.widget-body .widget-intro h1{color:#231b17!important;opacity:1!important;font-size:clamp(34px,4.2vw,50px)!important;font-weight:800!important;line-height:1.08!important;text-shadow:none!important}
.widget-body .widget-intro p{color:#70655b!important;opacity:1!important;font-size:15px!important;text-shadow:none!important}
.widget-body .public-eyebrow{color:#9a6d32!important;opacity:1!important;font-size:11px!important;font-weight:800!important}
.widget-body .booking-steps span{background:#f2ece4!important;color:#71665c!important;border:0!important;opacity:1!important}.widget-body .booking-steps span.is-active{background:#241b16!important;color:#fff!important}.widget-body .booking-steps i{background:#e4dcd2!important}
.widget-body label{color:#3a3029!important;font-size:13px!important;font-weight:700!important;opacity:1!important}
.widget-body input,.widget-body select,.widget-body textarea{background:#fff!important;color:#231b17!important;border:1px solid rgba(82,62,47,.15)!important;box-shadow:none!important;opacity:1!important}
.widget-body input::placeholder,.widget-body textarea::placeholder{color:#94887d!important;opacity:1!important}
.widget-body .booking-floor-head h2,.widget-body .booking-floor-head p,.widget-body .selected-place,.widget-body .booking-summary,.widget-body .widget-loading{color:#231b17!important;opacity:1!important;text-shadow:none!important}
.widget-body .public-btn-primary{background:#241b16!important;color:#fff!important}.widget-body .public-btn-ghost{background:#f5efe7!important;color:#231b17!important;border:1px solid rgba(82,62,47,.12)!important}
.widget-body .widget-tabs button{color:#6f645b!important}.widget-body .widget-tabs button.is-active{color:#231b17!important;background:#fff!important}
.widget-body .widget-floor{background:#f3ede5!important;border-color:rgba(82,62,47,.13)!important}
@media(max-width:560px){.widget-body .widget-intro h1{font-size:34px!important}}

/* v1.0.8-premium16 image map markers */
.widget-body .widget-floor{overflow:hidden;touch-action:none;background:#f3eee7!important}
.widget-body .widget-floor .fp-svg{touch-action:none;overscroll-behavior:contain}
.widget-body .fp-object-floorplan{pointer-events:none}
.widget-body .fp-marker-table{cursor:pointer}
.widget-body .fp-marker-shape{fill:var(--fp-marker-color);fill-opacity:var(--fp-marker-opacity);stroke:var(--fp-marker-color);stroke-width:2.4;vector-effect:non-scaling-stroke;transition:fill .16s ease,fill-opacity .16s ease,stroke .16s ease,filter .16s ease}
.widget-body .fp-marker-number{font:800 13px var(--public-ui);fill:#241b16;pointer-events:none;paint-order:stroke;stroke:rgba(255,255,255,.88);stroke-width:4px}
.widget-body .fp-marker-table:hover .fp-marker-shape,.widget-body .fp-marker-table:focus .fp-marker-shape{fill-opacity:.42;filter:drop-shadow(0 5px 8px rgba(31,24,19,.18))}
.widget-body .fp-marker-table.is-selected .fp-marker-shape{fill:var(--fp-marker-selected);stroke:var(--fp-marker-selected);fill-opacity:.78;stroke-width:4}
.widget-body .fp-marker-table.is-selected .fp-marker-number{fill:#fff;stroke:rgba(31,24,19,.35)}
.widget-body .fp-status-reserved .fp-marker-shape,.widget-body .fp-status-blocked .fp-marker-shape,.widget-body .fp-status-unavailable .fp-marker-shape{fill:#7c746d;stroke:#7c746d;fill-opacity:.15}
.widget-floor-mobile-list{display:none!important}
@media(max-width:560px){.widget-body .widget-floor{height:430px!important}.widget-body .fp-marker-number{font-size:15px}}

/* v1.0.9 bar and dancefloor marker shapes */
.widget-body .fp-marker-rounded-bar{fill:none!important;stroke:var(--fp-marker-color)!important;stroke-opacity:var(--fp-marker-opacity);vector-effect:non-scaling-stroke}
.widget-body .fp-marker-table:hover .fp-marker-rounded-bar,.widget-body .fp-marker-table:focus .fp-marker-rounded-bar{fill:none!important;stroke-opacity:.72;filter:drop-shadow(0 5px 8px rgba(31,24,19,.18))}
.widget-body .fp-marker-table.is-selected .fp-marker-rounded-bar{fill:none!important;stroke:var(--fp-marker-selected)!important;stroke-opacity:1}
.widget-body .fp-dancefloor-grid{pointer-events:none;opacity:.46}
.widget-body .fp-dancefloor-grid line{stroke:var(--fp-marker-color);stroke-width:1.2;vector-effect:non-scaling-stroke}
.widget-body .fp-marker-table.is-selected .fp-dancefloor-grid line{stroke:var(--fp-marker-selected)}
.widget-body .fp-place-bar .fp-marker-number,.widget-body .fp-place-dancefloor .fp-marker-number{font-size:13px;font-weight:800}
.widget-body .fp-table-hover span{display:block;margin-top:5px;color:#8a6334;font-size:11px;font-weight:700}
