*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden}.reservation-shell{width:var(--reservation-wrapper-width,min(1180px,94vw));height:var(--reservation-wrapper-height,auto);margin:0 auto 32px;color:var(--text-color,#111827);font-family:inherit;overflow-x:hidden;overflow-y:auto}.old-header-reservation{padding-top:92px}.reservation-layout{display:grid;gap:16px}.reservation-top-copy{background:var(--white,#fff);border:1px solid var(--border-color,#e5e7eb);border-radius:16px;padding:18px 20px;box-shadow:0 8px 24px rgba(15,23,42,.05)}.reservation-eyebrow{display:block;font-size:12px;font-weight:700;color:var(--primary-color,#16a34a);margin-bottom:5px}.reservation-top-copy h1{margin:0;color:var(--heading-color,#111827);font-size:clamp(25px,3vw,38px);line-height:1.08;letter-spacing:-.03em}.reservation-top-copy p{max-width:680px;margin:8px 0 0;color:var(--muted-color,#64748b);font-size:14px;line-height:1.5}.reservation-two-col{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}.reservation-booking-card,.selection-box,.details-box,.reservation-floor-section,.reservation-closed-card{background:var(--white,#fff);border:1px solid var(--border-color,#e5e7eb);border-radius:16px;box-shadow:0 8px 24px rgba(15,23,42,.05)}.reservation-booking-card{padding:14px}.date-time-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.compact-field{display:block;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;background:#fff;padding:10px 12px}.compact-field span{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--primary-color,#16a34a);margin-bottom:5px}.compact-field input{border:0;outline:0;background:transparent;width:100%;font:inherit;font-size:15px;font-weight:700;color:var(--heading-color,#111827);padding:0}.compact-field strong{display:block;font-size:17px;line-height:1.4;color:var(--heading-color,#111827)}.calendar-slot-row{display:grid;grid-template-columns:275px minmax(0,1fr);gap:12px;align-items:start}.inline-calendar{border:1px solid var(--border-color,#e5e7eb);border-radius:14px;padding:12px;background:#fff}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cal-head button{width:28px;height:28px;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;background:#fff;color:var(--heading-color,#111827);font-size:18px;line-height:1;cursor:pointer}.cal-title{font-size:14px;font-weight:800;color:var(--heading-color,#111827)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.cal-week{font-size:11px;font-weight:800;color:var(--muted-color,#64748b)}.cal-day{height:28px;border:0;border-radius:8px;background:transparent;color:#000000;font-size:12px;font-weight:800;cursor:pointer}.cal-day:hover:not(:disabled){background:rgba(22,163,74,.10)}.cal-day.is-active{background:var(--primary-color,#16a34a);color:#fff}.cal-day.is-muted{color:#a1a1aa}.cal-day.is-disabled,.cal-day:disabled{color:#cbd5e1;background:#f8fafc;cursor:not-allowed;text-decoration:line-through}.time-slot-panel{min-width:0}.time-slot-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.time-slot-head h2{font-size:16px;margin:0;color:var(--heading-color,#111827)}.time-slot-head span{font-size:12px;font-weight:700;color:var(--muted-color,#64748b)}.time-slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;overflow-y:auto;overflow-x:hidden;padding-right:2px}.slot-chip{min-height:40px;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;background:#fff;color:var(--heading-color,#111827);padding:7px 8px;text-align:center;cursor:pointer;transition:.14s ease}.slot-chip small{display:block;margin-top:3px;font-size:10px;color:var(--muted-color,#64748b);font-weight:700}.slot-chip:hover:not(:disabled){border-color:var(--primary-color,#16a34a);background:rgba(22,163,74,.06)}.slot-chip.is-active{background:var(--primary-color,#16a34a);border-color:var(--primary-color,#16a34a);color:#fff}.slot-chip.is-active small{color:#fff}.slot-chip.is-disabled,.slot-chip:disabled{opacity:.55;cursor:not-allowed;background:#f8fafc}.reservation-side-card{display:grid;gap:12px;position:sticky;top:92px}.reservation-side-card.is-empty{opacity:.75}.selection-box,.details-box{padding:14px}.selection-box h2,.details-box h2,.floor-section-head h2{font-size:17px;line-height:1.2;margin:0 0 10px;color:var(--heading-color,#111827)}.selection-box dl{margin:0;display:grid;grid-template-columns:82px 1fr;gap:7px 10px;font-size:13px}.selection-box dt{color:var(--muted-color,#64748b);font-weight:700}.selection-box dd{margin:0;font-weight:700;color:var(--heading-color,#111827);word-break:break-word}.account-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px}.account-tab{border:1px solid var(--primary-color,#16a34a);border-radius:10px;background:#fff;color:var(--primary-color,#16a34a);font-weight:800;font-size:13px;min-height:38px;cursor:pointer}.account-tab.active{background:var(--primary-color,#16a34a);color:#fff}.account-form,.details-box{display:grid;gap:10px}.reservation-account-panel[hidden],.reservation-account-panel:not(.is-active){display:none!important}.customer-login-head{border:1px solid var(--border-color,#e5e7eb);border-radius:12px;background:#f8fafc;padding:10px 12px}.customer-login-head span{display:block;color:var(--primary-color,#16a34a);font-weight:800;font-size:11px;text-transform:uppercase}.customer-login-head strong{display:block;font-size:15px;color:var(--heading-color,#111827);margin-top:2px}.customer-login-head small{display:block;font-size:12px;color:var(--muted-color,#64748b);margin-top:2px}.customer-login-field{display:grid;gap:5px;font-size:13px;font-weight:700;color:var(--heading-color,#111827)}.customer-login-field span{font-size:12px}.details-box input,.details-box textarea,.details-box select,.customer-login-field input,.customer-login-field textarea{width:100%;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;background:#fff;min-height:40px;padding:9px 11px;font:inherit;font-size:13px;color:var(--heading-color,#111827);outline:0}.details-box textarea,.customer-login-field textarea{min-height:66px;resize:vertical}.details-box input:focus,.details-box textarea:focus,.details-box select:focus{border-color:var(--primary-color,#16a34a);box-shadow:0 0 0 3px rgba(22,163,74,.10)}.address-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.iti,.country-select{width:100%}.customer-login-forgot{font-size:12px;font-weight:700;color:var(--primary-color,#16a34a);text-decoration:none}.confirm-btn,.primary-btn,.secondary-btn{border:0;border-radius:10px;min-height:40px;padding:9px 13px;background:var(--primary-color,#16a34a);color:#fff;font-weight:800;font-size:13px;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.confirm-btn{width:100%;margin-top:2px}.confirm-btn:disabled{opacity:.45;cursor:not-allowed}.secondary-btn{background:#f8fafc;color:var(--heading-color,#111827);border:1px solid var(--border-color,#e5e7eb)}.form-message{font-size:12px;color:#b45309;font-weight:700}.form-message.is-success{color:var(--primary-color,#16a34a)}.reservation-floor-section{padding:14px;margin: 10px 0px;}.floor-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.floor-section-head p{margin:4px 0 0;font-size:13px;color:var(--muted-color,#64748b);line-height:1.4}.table-legend{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;margin-bottom:12px;font-size:12px;font-weight:700;color:var(--heading-color,#111827)}.table-legend span{display:inline-flex;align-items:center;gap:6px}.legend-dot{width:12px;height:12px;border-radius:4px;display:inline-block}.legend-dot.available{background:#86efac}.legend-dot.selected{background:var(--primary-color,#16a34a)}.legend-dot.booked{background:#cbd5e1}.legend-dot.pending{background:#f59e0b}.legend-dot.not-available{background:#e5e7eb}.floor-plan-wrap{position:relative;scrollbar-gutter:stable;max-height:64vh !important;-webkit-overflow-scrolling:touch}.floor-plan{width:var(--reservation-floor-width,1100px);height:var(--reservation-floor-height,620px);min-width:760px;margin:0 auto 18px;background:#fff7ed;border:6px solid #7c4a2d;border-radius:12px;position:relative;transform-origin:top left;transition:transform .15s ease;box-shadow:inset 0 0 28px rgba(124,74,45,.08)}.floor-plan:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.34) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.34) 1px,transparent 1px);background-size:44px 44px;pointer-events:none}.floor-plan.has-photo-floor{background-position:center!important;background-size:cover!important}.floor-plan.has-photo-floor:before,.floor-plan.has-photo-floor .floor-entrance{display:none}.floor-entrance{position:absolute;bottom:0;left:50%;transform:translateX(-50%);background:#fff7ed;padding:3px 18px;font-size:11px;font-weight:800}.res-table{position:absolute;border:2px solid rgba(124,74,45,.25);border-radius:16px;background:linear-gradient(145deg,#8b5e3c,#5f3d28);color:#fff;box-shadow:0 10px 20px rgba(15,23,42,.16);cursor:pointer;padding:0}.res-table.round{border-radius:999px}.res-table.square{border-radius:14px}.res-table.booth{border-radius:20px}.res-table.booked,.res-table.pending,.res-table.not_available{background:#9ca3af;cursor:not-allowed;opacity:.7}.res-table.selected{background:linear-gradient(145deg,var(--primary-color,#16a34a),#047857);border-color:#bbf7d0}.table-core{position:absolute;inset:10px;display:grid;place-items:center;text-align:center;pointer-events:none}.table-core strong{font-size:13px;line-height:1.1}.table-core small,.table-core em{font-size:10px;line-height:1.2;font-style:normal}.check{position:absolute;right:-8px;top:-8px;width:22px;height:22px;border-radius:50%;background:var(--primary-color,#16a34a);color:#fff;display:grid;place-items:center;font-style:normal;font-size:12px}.chair-btn{position:absolute;border:1px solid rgba(15,23,42,.12);border-radius:9px;background:#fff;color:#111827;font-size:10px;font-weight:800;z-index:3;cursor:pointer;box-shadow:0 4px 8px rgba(15,23,42,.12)}.chair-btn.available:hover{border-color:var(--primary-color,#16a34a);background:#ecfdf5}.chair-btn.selected{background:var(--primary-color,#16a34a);border-color:var(--primary-color,#16a34a);color:#fff}.chair-btn.booked,.chair-btn.pending,.chair-btn.not-available{background:#e5e7eb;color:#94a3b8;cursor:not-allowed}.reservation-closed-card{padding:24px;text-align:center}.success-card{max-width:680px;margin:120px auto 40px;padding:24px;background:#fff;border:1px solid var(--border-color,#e5e7eb);border-radius:18px;text-align:center}.success-card h1{font-size:28px;margin:0 0 8px}.success-card p{color:var(--muted-color,#64748b)}
@media(max-width:1050px){.reservation-two-col{grid-template-columns:1fr}.reservation-side-card{position:static;grid-template-columns:1fr 1fr}.calendar-slot-row{grid-template-columns:250px 1fr}}
@media(max-width:760px){.old-header-reservation{padding-top:76px}.reservation-shell{width:min(100%,94vw);margin-bottom:22px}.reservation-top-copy{padding:15px}.reservation-top-copy h1{font-size:26px}.reservation-two-col,.reservation-side-card{grid-template-columns:1fr}.date-time-row,.calendar-slot-row,.address-grid{grid-template-columns:1fr}.inline-calendar{max-width:100%}.time-slot-grid{grid-template-columns:repeat(2,1fr);max-height:190px}.selection-box dl{grid-template-columns:74px 1fr}.floor-section-head{align-items:stretch;flex-direction:column}.floor-plan{min-width:760px}.table-legend{gap:8px 12px}.details-box input,.details-box textarea,.details-box select{min-height:38px}}
@media(max-width:420px){.reservation-shell{width:100%;padding:0 10px}.reservation-top-copy,.reservation-booking-card,.selection-box,.details-box,.reservation-floor-section{border-radius:14px}.time-slot-grid{grid-template-columns:1fr 1fr}.slot-chip{padding:7px 5px}.cal-day{height:26px}.account-tab{min-height:36px;font-size:12px}}

.reservation-confirm-page{position:relative;min-height:calc(100vh - 92px);padding:28px 16px 36px;background:radial-gradient(circle at 50% 12%,rgba(80,211,141,.08),transparent 34%),linear-gradient(180deg,#fff 0%,#fbfff8 100%);overflow:hidden}.reservation-confirm-card{position:relative;z-index:2;width:min(100%,980px);margin:0 auto;padding:30px 48px 38px;background:rgba(255,255,255,.96);border:1px solid rgba(15,23,42,.08);border-radius:24px;box-shadow:0 22px 70px rgba(15,23,42,.08);text-align:center}.reservation-confirm-card h1{margin:14px 0 6px;color:var(--heading-color,#111827);font-size:clamp(28px,3vw,42px);line-height:1.05;font-weight:900}.reservation-confirm-card p{margin:0;color:var(--muted-color,#64748b);font-size:15px}.reservation-confirm-icon{width:82px;height:82px;margin:0 auto;border:3px solid var(--primary-color,#16a34a);border-radius:999px;display:grid;place-items:center;color:var(--primary-color,#16a34a);background:rgba(80,211,141,.06)}.reservation-confirm-icon svg,.reservation-confirm-btn svg,.reservation-code-box svg,.reservation-confirm-meta svg,.reservation-table-chip svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.reservation-confirm-icon svg{width:48px;height:48px}.reservation-confirm-icon.is-error{border-color:#f59e0b;color:#f59e0b;font-size:36px;font-weight:900}.reservation-code-box{width:min(100%,320px);margin:22px auto 18px;padding:14px 18px;border:1px dashed rgba(22,163,74,.48);border-radius:16px;background:#fff}.reservation-code-box span{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted-color,#64748b);font-size:13px;font-weight:700}.reservation-code-box strong{display:block;margin-top:6px;color:var(--primary-color,#16a34a);font-size:28px;line-height:1;font-weight:900;letter-spacing:.02em}.reservation-confirm-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:18px 0 22px;padding:18px 0;border-top:1px solid rgba(15,23,42,.1);border-bottom:1px solid rgba(15,23,42,.1)}.reservation-confirm-meta-item{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:2px 12px;align-items:center;text-align:left;padding:0 20px;border-right:1px solid rgba(15,23,42,.1)}.reservation-confirm-meta-item:last-child{border-right:0}.reservation-confirm-meta-item .meta-icon{grid-row:1/3;width:42px;height:42px;border-radius:999px;display:grid;place-items:center;color:var(--primary-color,#16a34a);background:rgba(80,211,141,.12)}.reservation-confirm-meta-item span:not(.meta-icon){font-size:13px;color:var(--muted-color,#64748b);font-weight:700}.reservation-confirm-meta-item strong{font-size:17px;color:var(--heading-color,#111827);font-weight:900}.reservation-status-pill{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:#fef3c7;color:#92400e;font-size:12px;font-weight:900;font-style:normal}.reservation-status-pill.status-confirmed,.reservation-status-pill.status-completed{background:#dcfce7;color:#166534}.reservation-status-pill.status-cancelled,.reservation-status-pill.status-no-show{background:#fee2e2;color:#991b1b}.reservation-confirm-tables{text-align:left;margin:0 0 26px;padding:0 12px}.reservation-confirm-tables h2{margin:0 0 12px;color:var(--heading-color,#111827);font-size:17px;font-weight:900}.reservation-table-chip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.reservation-table-chip{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 14px;border:1px solid rgba(15,23,42,.1);border-radius:10px;background:#fff;box-shadow:0 4px 12px rgba(15,23,42,.03)}.reservation-table-chip strong{color:var(--heading-color,#111827);font-size:13px;font-weight:900;white-space:nowrap}.reservation-table-chip span{display:inline-flex;align-items:center;gap:8px;min-width:0;color:var(--muted-color,#64748b);font-size:13px;font-weight:700}.reservation-table-chip svg{width:16px;height:16px;color:var(--primary-color,#16a34a);flex:0 0 auto}.reservation-confirm-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-top:26px;border-top:1px solid rgba(15,23,42,.1)}.reservation-confirm-actions.single-action{display:flex;justify-content:center}.reservation-confirm-btn{min-height:56px;border-radius:14px;padding:13px 16px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--primary-color,#16a34a);text-decoration:none;font-size:14px;font-weight:900;line-height:1.1;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.reservation-confirm-btn:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(22,163,74,.14)}.reservation-confirm-btn.primary{background:var(--primary-color,#16a34a);color:#fff}.reservation-confirm-btn.outline{background:#fff;color:var(--primary-color,#16a34a)}.reservation-confirm-decor{position:absolute;z-index:1;color:rgba(22,163,74,.18);pointer-events:none}.reservation-confirm-decor svg{width:190px;height:auto;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.decor-planet{left:9%;top:28%}.decor-burger{right:9%;top:29%}.reservation-confirm-page:before,.reservation-confirm-page:after{content:"";position:absolute;border-radius:999px;background:rgba(22,163,74,.22);box-shadow:0 0 0 8px rgba(22,163,74,.05)}.reservation-confirm-page:before{width:8px;height:8px;left:12%;top:21%}.reservation-confirm-page:after{width:6px;height:6px;right:12%;top:32%}@media(max-width:900px){.reservation-confirm-card{padding:26px 20px}.reservation-confirm-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border:0;padding:0}.reservation-confirm-meta-item{border:1px solid rgba(15,23,42,.1);border-radius:14px;padding:14px}.reservation-table-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation-confirm-actions{grid-template-columns:1fr}.reservation-confirm-decor{display:none}}@media(max-width:560px){.reservation-confirm-page{padding:18px 12px 28px}.reservation-confirm-card{border-radius:18px;padding:22px 14px}.reservation-confirm-icon{width:68px;height:68px}.reservation-confirm-icon svg{width:38px;height:38px}.reservation-code-box strong{font-size:24px}.reservation-confirm-meta{grid-template-columns:1fr}.reservation-table-chip-grid{grid-template-columns:1fr}.reservation-confirm-tables{padding:0}.reservation-confirm-btn{min-height:48px;font-size:13px}.reservation-confirm-card h1{font-size:28px}}

.floor-plan-wrap{
    width:100%;
    max-height:none!important;
    overflow:visible!important;
}
.floor-plan.has-photo-floor{
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    aspect-ratio:3 / 1;
    margin:0!important;
    overflow:hidden;
    border:1px solid rgba(15,23,42,.12)!important;
    border-radius:10px!important;
    background-size:cover!important;
    background-position:center 55%!important;
    background-repeat:no-repeat!important;
    box-shadow:0 10px 26px rgba(15,23,42,.08)!important;
    transform:none!important;
}
.floor-plan.has-photo-floor:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.18));
    pointer-events:none;
    z-index:1;
}
.floor-plan.has-photo-floor .photo-table,
.floor-plan.has-photo-floor .photo-seat{
    position:absolute;
    z-index:3;
    transform:translate(-50%,-50%);
}
.floor-plan.has-photo-floor .photo-table{
    width:auto!important;
    height:auto!important;
    min-width:58px;
    min-height:30px;
    padding:7px 13px;
    border:1px solid rgba(255,255,255,.28)!important;
    border-radius:12px!important;
    background:rgba(10,18,28,.78)!important;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(0,0,0,.25)!important;
    backdrop-filter:blur(8px);
}
.floor-plan.has-photo-floor .photo-table .table-core{
    position:static!important;
    inset:auto!important;
    display:block!important;
    pointer-events:none;
}
.floor-plan.has-photo-floor .photo-table .table-core strong{
    display:block;
    font-size:11px;
    line-height:1;
    white-space:nowrap;
    color:#fff;
}
.floor-plan.has-photo-floor .photo-table .check{
    right:-7px;
    top:-7px;
    width:18px;
    height:18px;
    font-size:10px;
    border:2px solid #fff;
}
.floor-plan.has-photo-floor .photo-seat{
    width:31px!important;
    height:31px!important;
    padding:0!important;
    border-radius:999px!important;
    display:grid;
    place-items:center;
    font-size:10px;
    font-weight:900;
    border:2px solid rgba(255,255,255,.95)!important;
    background:rgba(255,255,255,.96)!important;
    color:#111827!important;
    box-shadow:0 6px 16px rgba(0,0,0,.22)!important;
}
.floor-plan.has-photo-floor .photo-seat.available:hover{
    border-color:var(--primary-color,#16a34a)!important;
    background:#ecfdf5!important;
}
.floor-plan.has-photo-floor .photo-seat.selected{
    background:var(--primary-color,#16a34a)!important;
    border-color:#bbf7d0!important;
    color:#fff!important;
}
.floor-plan.has-photo-floor .photo-seat.pending{
    background:#f59e0b!important;
    color:#fff!important;
}
.floor-plan.has-photo-floor .photo-seat.booked,
.floor-plan.has-photo-floor .photo-seat.not-available{
    background:#e5e7eb!important;
    color:#94a3b8!important;
    opacity:.85;
}
.floor-page-controls{
    display:grid;
    grid-template-columns:140px 1fr 140px;
    gap:10px;
    align-items:center;
    margin:10px 0 0;
    font-size:12px;
    font-weight:800;
    text-align:center;
    color:var(--heading-color,#111827);
}
.floor-page-btn{
    min-height:34px;
    border:1px solid var(--border-color,#e5e7eb);
    border-radius:9px;
    background:#fff;
    color:var(--heading-color,#111827);
    font-size:12px;
    font-weight:800;
    cursor:pointer;
}
.floor-page-btn:disabled{
    opacity:.48;
    cursor:not-allowed;
    background:#f8fafc;
}
@media(max-width:760px){
    .floor-plan.has-photo-floor{
        aspect-ratio:16 / 9;
        background-position:center center!important;
    }
    .floor-plan.has-photo-floor .photo-table{
        min-width:42px;
        min-height:24px;
        padding:5px 8px;
        border-radius:9px!important;
    }
    .floor-plan.has-photo-floor .photo-table .table-core strong{
        font-size:8px;
    }
    .floor-plan.has-photo-floor .photo-seat{
        width:22px!important;
        height:22px!important;
        font-size:7px;
        border-width:1px!important;
    }
    .floor-page-controls{
        grid-template-columns:1fr auto 1fr;
        gap:7px;
        font-size:11px;
    }
    .floor-page-btn{
        min-height:32px;
        padding:0 8px;
        font-size:11px;
    }
}

.floor-plan.has-photo-floor{
    aspect-ratio:3.2 / 1!important;
    background-image:
        radial-gradient(circle at 18% 30%,rgba(80,211,141,.14),transparent 22%),
        radial-gradient(circle at 78% 70%,rgba(139,92,246,.14),transparent 24%),
        linear-gradient(135deg,#101923 0%,#17212d 48%,#0d151d 100%)!important;
    background-color:#101923!important;
    background-size:cover!important;
    background-position:center!important;
}
.floor-plan.has-photo-floor:before{
    content:""!important;
    position:absolute;
    inset:0;
    display:block!important;
    background:
        linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
        linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px)!important;
    background-size:42px 42px!important;
    pointer-events:none;
    z-index:0;
}
.floor-plan.has-photo-floor:after{
    z-index:1;
    background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.16))!important;
}
.reservation-table-cluster{
    --seat-primary:var(--primary-color,#16a34a);
    --seat-secondary:#8b5cf6;
    --seat-glow:rgba(80,211,141,.36);
    position:absolute;
    width:142px;
    height:116px;
    z-index:3;
    transform:translate(-50%,-50%);
}
.reservation-table-cluster.tone-2,
.reservation-table-cluster.tone-4{
    --seat-primary:#8b5cf6;
    --seat-secondary:var(--primary-color,#16a34a);
    --seat-glow:rgba(139,92,246,.34);
}
.reservation-table-cluster:before{
    content:"";
    position:absolute;
    inset:7px 8px 12px;
    border-radius:999px;
    background:conic-gradient(from 30deg,var(--seat-primary) 0deg 92deg,transparent 93deg 124deg,var(--seat-secondary) 125deg 235deg,transparent 236deg 280deg,var(--seat-primary) 281deg 360deg);
    -webkit-mask:radial-gradient(ellipse at center,transparent 0 41%,#000 43% 100%);
    mask:radial-gradient(ellipse at center,transparent 0 41%,#000 43% 100%);
    filter:drop-shadow(0 0 14px var(--seat-glow));
    opacity:.94;
    pointer-events:none;
}
.reservation-table-cluster:after{
    content:"";
    position:absolute;
    left:50%;
    top:52%;
    width:74px;
    height:46px;
    border-radius:999px;
    transform:translate(-50%,-50%);
    background:radial-gradient(circle at 45% 35%,rgba(255,255,255,.34),rgba(255,255,255,.08) 38%,rgba(3,10,18,.68) 100%);
    border:1px solid rgba(255,255,255,.14);
    box-shadow:0 12px 25px rgba(0,0,0,.24);
    pointer-events:none;
    z-index:1;
}
.floor-plan.has-photo-floor .reservation-table-cluster .photo-table{
    left:50%!important;
    top:52%!important;
    transform:translate(-50%,-50%)!important;
    z-index:4;
    min-width:62px!important;
    min-height:28px!important;
    padding:6px 10px!important;
    border-radius:10px!important;
    background:rgba(10,18,28,.88)!important;
    border:1px solid rgba(255,255,255,.2)!important;
    box-shadow:0 8px 18px rgba(0,0,0,.22)!important;
}
.floor-plan.has-photo-floor .reservation-table-cluster .photo-table .table-core strong{
    font-size:10px;
    letter-spacing:-.01em;
}
.floor-plan.has-photo-floor .reservation-table-cluster .photo-seat{
    width:26px!important;
    height:26px!important;
    z-index:5;
    border-radius:50%!important;
    border:2px solid rgba(255,255,255,.86)!important;
    background:rgba(255,255,255,.96)!important;
    color:#0f172a!important;
    font-size:9px;
    box-shadow:0 7px 16px rgba(0,0,0,.23)!important;
    transform:translate(-50%,-50%)!important;
}
.floor-plan.has-photo-floor .reservation-table-cluster .photo-seat.selected{
    background:var(--primary-color,#16a34a)!important;
    border-color:#bbf7d0!important;
    color:#fff!important;
}
.floor-plan.has-photo-floor .reservation-table-cluster .photo-seat.pending{
    background:#f59e0b!important;
    color:#fff!important;
}
.floor-plan.has-photo-floor .reservation-table-cluster .photo-seat.booked,
.floor-plan.has-photo-floor .reservation-table-cluster .photo-seat.not-available{
    background:#e5e7eb!important;
    color:#94a3b8!important;
}
.reservation-table-cluster .seat-pos-1{left:50%!important;top:13%!important;}
.reservation-table-cluster .seat-pos-2{left:15%!important;top:51%!important;}
.reservation-table-cluster .seat-pos-3{left:85%!important;top:51%!important;}
.reservation-table-cluster .seat-pos-4{left:50%!important;top:90%!important;}
.reservation-table-cluster .seat-pos-5{left:27%!important;top:24%!important;}
.reservation-table-cluster .seat-pos-6{left:73%!important;top:24%!important;}
.reservation-table-cluster .seat-pos-7{left:27%!important;top:78%!important;}
.reservation-table-cluster .seat-pos-8{left:73%!important;top:78%!important;}
.reservation-table-cluster.booked,
.reservation-table-cluster.not-available{
    filter:grayscale(.55);
    opacity:.78;
}
.reservation-table-cluster.pending:before{
    --seat-primary:#f59e0b;
    --seat-secondary:#d97706;
    opacity:.72;
}
.reservation-table-cluster.selected:before{
    filter:drop-shadow(0 0 18px rgba(22,163,74,.46));
}
@media(max-width:760px){
    .floor-plan.has-photo-floor{
        aspect-ratio:16 / 10!important;
    }
    .reservation-table-cluster{
        width:88px;
        height:74px;
    }
    .floor-plan.has-photo-floor .reservation-table-cluster .photo-table{
        min-width:44px!important;
        min-height:22px!important;
        padding:4px 7px!important;
        border-radius:8px!important;
    }
    .floor-plan.has-photo-floor .reservation-table-cluster .photo-table .table-core strong{
        font-size:7px;
    }
    .floor-plan.has-photo-floor .reservation-table-cluster .photo-seat{
        width:19px!important;
        height:19px!important;
        font-size:7px;
        border-width:1px!important;
    }
}

.floor-plan[class*="floor-template-"]{
    width:var(--reservation-floor-width,1000px)!important;
    height:var(--reservation-floor-height,420px)!important;
    min-width:0!important;
    max-width:100%;
    margin:0 auto!important;
    overflow:hidden!important;
    border:1px solid rgba(15,23,42,.12)!important;
    border-radius:12px!important;
    transform:none!important;
    background-color:var(--floor-base,#101820);
    background-image:var(--floor-pattern),linear-gradient(135deg,var(--floor-one,#111922),var(--floor-two,#0c1218));
    background-size:cover,auto;
    background-position:center;
    box-shadow:0 12px 28px rgba(15,23,42,.10)!important;
}
.floor-plan[class*="floor-template-"]::before{display:none!important}
.floor-plan[class*="floor-template-"]::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0 0,rgba(255,255,255,.08),transparent 30%),radial-gradient(circle at 100% 100%,rgba(0,0,0,.22),transparent 34%);pointer-events:none;z-index:1}
.floor-plan.has-photo-floor[class*="floor-template-"]{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
.floor-plan.has-photo-floor[class*="floor-template-"]::after{background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.16))}
.floor-plan[class*="floor-template-"] .floor-entrance{display:none!important}
.floor-plan[class*="floor-template-"] .reservation-table-cluster{
    position:absolute!important;
    width:var(--reservation-table-width,142px)!important;
    height:var(--reservation-table-height,116px)!important;
    transform:translate(-50%,-50%)!important;
    z-index:3!important;
    --seat-primary:var(--template-primary,#20d77a);
    --seat-secondary:var(--template-secondary,#8b5cf6);
    --seat-glow:var(--template-glow,rgba(32,215,122,.35));
}
.floor-plan[class*="floor-template-"] .reservation-table-cluster::before{
    content:"";position:absolute;inset:7px 8px 12px;border-radius:999px;
    background:conic-gradient(from var(--template-angle,30deg),var(--seat-primary) 0deg 92deg,transparent 93deg 124deg,var(--seat-secondary) 125deg 235deg,transparent 236deg 280deg,var(--seat-primary) 281deg 360deg);
    -webkit-mask:radial-gradient(ellipse at center,transparent 0 41%,#000 43% 100%);
    mask:radial-gradient(ellipse at center,transparent 0 41%,#000 43% 100%);
    filter:drop-shadow(0 0 14px var(--seat-glow));opacity:.94;pointer-events:none;
}
.floor-plan[class*="floor-template-"] .reservation-table-cluster::after{
    content:"";position:absolute;left:50%;top:52%;width:52%;height:40%;border-radius:999px;transform:translate(-50%,-50%);
    background:var(--template-table,radial-gradient(circle at 45% 35%,rgba(255,255,255,.34),rgba(255,255,255,.08) 38%,rgba(3,10,18,.72) 100%));
    border:1px solid var(--template-table-border,rgba(255,255,255,.14));box-shadow:0 12px 25px rgba(0,0,0,.24);pointer-events:none;z-index:1;
}
.floor-plan[class*="floor-template-"] .reservation-table-cluster.tone-2,
.floor-plan[class*="floor-template-"] .reservation-table-cluster.tone-4{--seat-primary:var(--template-secondary,#8b5cf6);--seat-secondary:var(--template-primary,#20d77a)}
.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-table{left:50%!important;top:52%!important;transform:translate(-50%,-50%)!important;z-index:4!important;min-width:62px!important;min-height:28px!important;padding:6px 10px!important;border-radius:10px!important;background:var(--template-label,rgba(10,18,28,.88))!important;border:1px solid var(--template-label-border,rgba(255,255,255,.2))!important;color:var(--template-label-color,#fff)!important;box-shadow:0 8px 18px rgba(0,0,0,.22)!important;backdrop-filter:blur(8px)}
.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-table .table-core{position:static!important;inset:auto!important;display:block!important;pointer-events:none!important}
.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-table .table-core strong{display:block;font-size:10px;line-height:1;white-space:nowrap;color:inherit!important}
.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-seat{position:absolute!important;width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;padding:0!important;border-radius:50%!important;display:grid!important;place-items:center!important;font-size:9px!important;font-weight:900!important;border:2px solid var(--template-seat-border,rgba(255,255,255,.9))!important;background:var(--template-seat,#fff)!important;color:var(--template-seat-text,#0f172a)!important;box-shadow:0 7px 16px rgba(0,0,0,.23)!important;transform:translate(-50%,-50%)!important;z-index:5!important}
.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-seat.available:hover{border-color:var(--template-primary,#16a34a)!important;background:#ecfdf5!important}
.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-seat.selected{background:var(--primary-color,#16a34a)!important;border-color:#bbf7d0!important;color:#fff!important;font-size:0!important}
.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-seat.selected::before{content:"✓";font-size:12px}
.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-seat.pending{background:#f59e0b!important;color:#fff!important}
.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-seat.booked,
.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-seat.not-available{background:#e5e7eb!important;color:#94a3b8!important;opacity:.85}
.floor-plan[class*="floor-template-"] .reservation-table-cluster .seat-pos-1{left:50%!important;top:11%!important}.floor-plan[class*="floor-template-"] .reservation-table-cluster .seat-pos-2{left:14%!important;top:51%!important}.floor-plan[class*="floor-template-"] .reservation-table-cluster .seat-pos-3{left:86%!important;top:51%!important}.floor-plan[class*="floor-template-"] .reservation-table-cluster .seat-pos-4{left:50%!important;top:91%!important}
.floor-template-template_1{--floor-one:#111922;--floor-two:#0c1218;--floor-pattern:radial-gradient(circle at 18% 25%,rgba(32,215,122,.20),transparent 24%),radial-gradient(circle at 48% 25%,rgba(139,92,246,.22),transparent 26%),radial-gradient(circle at 80% 25%,rgba(32,215,122,.18),transparent 25%),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);--template-primary:#20d77a;--template-secondary:#8b5cf6;--template-glow:rgba(32,215,122,.38)}
.floor-template-template_2{--floor-one:#2a1b11;--floor-two:#11100c;--floor-pattern:linear-gradient(90deg,rgba(255,214,157,.08) 1px,transparent 1px),linear-gradient(rgba(255,214,157,.08) 1px,transparent 1px);--template-primary:#b88752;--template-secondary:#e8c49a;--template-table:linear-gradient(135deg,#6f4328,#2d1b11);--template-label:#3a2517;--template-seat:#fff3df;--template-seat-text:#3a2517}
.floor-template-template_3{--floor-one:#101214;--floor-two:#050607;--floor-pattern:radial-gradient(circle at 50% 50%,rgba(255,255,255,.06),transparent 36%);--template-primary:#f8fafc;--template-secondary:#d1d5db;--template-table:rgba(7,10,14,.86);--template-label:#05070a;--template-seat:#fff;--template-seat-text:#111827}
.floor-template-template_4{--floor-one:#06263d;--floor-two:#02111c;--floor-pattern:radial-gradient(circle at 50% 40%,rgba(59,179,255,.18),transparent 36%),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px);--template-primary:#38bdf8;--template-secondary:#0ea5e9;--template-glow:rgba(56,189,248,.38);--template-seat:#e0f2fe;--template-seat-text:#075985}
.floor-template-template_5{--floor-one:#242424;--floor-two:#0f0f0f;--floor-pattern:linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px);--template-primary:#a8835a;--template-secondary:#3f3f46;--template-table:#111827;--template-label:#111827;--template-seat:#f5f5f4;--template-seat-text:#1c1917}
.floor-template-template_6{--floor-one:#172515;--floor-two:#0c140b;--floor-pattern:radial-gradient(circle at 12% 12%,rgba(34,197,94,.22),transparent 28%),radial-gradient(circle at 90% 90%,rgba(132,204,22,.18),transparent 25%);--template-primary:#4ade80;--template-secondary:#65a30d;--template-table:linear-gradient(135deg,#8b5e34,#4b2e17);--template-seat:#ecfdf5;--template-seat-text:#14532d}
.floor-template-template_7{--floor-one:#082747;--floor-two:#061626;--floor-pattern:linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),radial-gradient(circle at 4% 8%,rgba(29,78,216,.24),transparent 20%);--template-primary:#2563eb;--template-secondary:#f59e0b;--template-table:linear-gradient(135deg,#f8fafc,#dbeafe);--template-label:#0f2b4d;--template-seat:#eff6ff;--template-seat-text:#0f2b4d}
.floor-template-template_8{--floor-one:#f5dfbf;--floor-two:#c47a3a;--floor-pattern:radial-gradient(circle at 50% 50%,rgba(120,53,15,.10),transparent 32%);--template-primary:#b45309;--template-secondary:#92400e;--template-table:#fff7ed;--template-label:#7c2d12;--template-seat:#ffedd5;--template-seat-text:#7c2d12}
.floor-template-template_9{--floor-one:#111827;--floor-two:#020617;--floor-pattern:radial-gradient(circle at 26% 30%,rgba(236,72,153,.20),transparent 26%),radial-gradient(circle at 70% 32%,rgba(251,191,36,.16),transparent 23%);--template-primary:#ec4899;--template-secondary:#f59e0b;--template-glow:rgba(236,72,153,.42);--template-label:#111827;--template-seat:#fff7ed;--template-seat-text:#111827}
.floor-template-template_10{--floor-one:#dfe9d3;--floor-two:#8ca675;--floor-pattern:radial-gradient(circle at 8% 90%,rgba(22,101,52,.20),transparent 24%),radial-gradient(circle at 90% 10%,rgba(132,204,22,.16),transparent 24%);--template-primary:#166534;--template-secondary:#86efac;--template-table:#f7fee7;--template-label:#14532d;--template-seat:#f0fdf4;--template-seat-text:#14532d}
.floor-template-template_11{--floor-one:#fff7ed;--floor-two:#fde68a;--floor-pattern:linear-gradient(90deg,rgba(236,72,153,.10) 1px,transparent 1px),radial-gradient(circle at 50% 0,rgba(14,165,233,.16),transparent 30%);--template-primary:#f97316;--template-secondary:#14b8a6;--template-label:#7c2d12;--template-seat:#fff7ed;--template-seat-text:#7c2d12}
.floor-template-template_12{--floor-one:#f8fafc;--floor-two:#e5e7eb;--floor-pattern:linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(rgba(15,23,42,.035) 1px,transparent 1px);--template-primary:#111827;--template-secondary:#6b7280;--template-table:#111827;--template-label:#111827;--template-seat:#fff;--template-seat-text:#111827}
@media(max-width:760px){.floor-plan[class*="floor-template-"]{width:var(--reservation-floor-width,760px)!important;height:var(--reservation-floor-height,620px)!important;overflow:auto!important}.floor-plan[class*="floor-template-"] .reservation-table-cluster{width:calc(var(--reservation-table-width,142px) * .78)!important;height:calc(var(--reservation-table-height,116px) * .78)!important}.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-seat{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;font-size:8px!important}.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-table{min-width:50px!important;min-height:24px!important;padding:5px 8px!important}.floor-plan[class*="floor-template-"] .reservation-table-cluster .photo-table .table-core strong{font-size:8px}}

.floor-template-preview{min-height:190px;border-radius:16px;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:16px;overflow:hidden;position:relative;border:1px solid rgba(15,23,42,.12)}
.floor-template-preview:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.55));pointer-events:none}.floor-template-preview span,.floor-template-preview small{position:relative;z-index:1;color:#fff}.floor-template-preview span{display:inline-flex;width:max-content;max-width:100%;background:rgba(0,0,0,.55);border-radius:999px;padding:7px 12px;font-size:13px;font-weight:900}.floor-template-preview small{font-size:11px;font-weight:700;opacity:.9;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.floor-plan[class*="floor-template-template_"]{border:0!important;border-radius:14px!important;background-color:#111827;background-size:cover!important;background-position:center!important;box-shadow:inset 0 0 45px rgba(0,0,0,.18),0 10px 26px rgba(15,23,42,.10)!important}.floor-plan[class*="floor-template-template_"]::before{content:""!important;display:block!important;position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.10));pointer-events:none;z-index:1}.floor-plan[class*="floor-template-template_"]::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0 100%,rgba(0,0,0,.18),transparent 32%),radial-gradient(circle at 100% 0,rgba(0,0,0,.16),transparent 30%);pointer-events:none;z-index:1}.floor-plan[class*="floor-template-template_"] .floor-entrance{z-index:7;background:rgba(255,255,255,.86);border-radius:999px;color:#0f172a;box-shadow:0 6px 18px rgba(0,0,0,.14)}
.floor-plan[class*="floor-template-template_"] .reservation-table-cluster{position:absolute!important;width:var(--reservation-table-width,142px)!important;height:var(--reservation-table-height,116px)!important;transform:translate(-50%,-50%)!important;z-index:4!important;isolation:isolate;--table-radius:999px;--table-surface:radial-gradient(circle at 42% 32%,rgba(255,255,255,.88),rgba(235,224,210,.92) 38%,rgba(164,121,77,.94) 100%);--table-edge:#8a5d35;--chair-bg:#f7efe4;--chair-edge:#b58a5c;--label-bg:rgba(20,20,20,.78);--label-color:#fff;--seat-bg:#fff;--seat-color:#111827;--seat-border:rgba(255,255,255,.95)}
.floor-plan[class*="floor-template-template_"] .reservation-table-cluster::before{content:"";position:absolute;left:50%;top:53%;width:92%;height:75%;transform:translate(-50%,-50%);border-radius:999px;background:radial-gradient(ellipse at center,transparent 0 42%,rgba(0,0,0,.18) 43% 48%,transparent 49%),conic-gradient(from 45deg,var(--chair-bg) 0deg 42deg,transparent 43deg 48deg,var(--chair-bg) 49deg 88deg,transparent 89deg 95deg,var(--chair-bg) 96deg 136deg,transparent 137deg 144deg,var(--chair-bg) 145deg 185deg,transparent 186deg 192deg,var(--chair-bg) 193deg 232deg,transparent 233deg 240deg,var(--chair-bg) 241deg 280deg,transparent 281deg 288deg,var(--chair-bg) 289deg 328deg,transparent 329deg 360deg);box-shadow:0 15px 25px rgba(0,0,0,.18),inset 0 0 0 2px rgba(255,255,255,.10);filter:drop-shadow(0 5px 9px rgba(0,0,0,.20));z-index:0;pointer-events:none}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster::after{content:"";position:absolute;left:50%;top:52%;width:66%;height:56%;border-radius:var(--table-radius);transform:translate(-50%,-50%);background:var(--table-surface);border:2px solid var(--table-edge);box-shadow:0 12px 22px rgba(0,0,0,.22),inset 0 2px 8px rgba(255,255,255,.36);z-index:1;pointer-events:none}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster.tone-2{--table-surface:var(--table-surface-alt,var(--table-surface))}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster.tone-3{--chair-bg:var(--chair-bg-alt,var(--chair-bg))}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster.tone-4{--table-surface:var(--table-surface-third,var(--table-surface))}
.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table{position:absolute!important;left:50%!important;top:52%!important;transform:translate(-50%,-50%)!important;z-index:4!important;width:auto!important;height:auto!important;min-width:58px!important;min-height:28px!important;padding:7px 10px!important;border-radius:10px!important;background:var(--label-bg)!important;color:var(--label-color)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 8px 18px rgba(0,0,0,.22)!important;backdrop-filter:blur(8px);cursor:pointer}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table .table-core{position:static!important;inset:auto!important;display:block!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table .table-core strong{font-size:10px!important;font-weight:900!important;white-space:nowrap;color:inherit!important;line-height:1!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table .check{right:-7px;top:-7px}
.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat{position:absolute!important;width:30px!important;height:28px!important;min-width:30px!important;min-height:28px!important;padding:0!important;border-radius:10px!important;display:grid!important;place-items:center!important;font-size:9px!important;font-weight:900!important;border:2px solid var(--seat-border)!important;background:var(--seat-bg)!important;color:var(--seat-color)!important;box-shadow:0 7px 16px rgba(0,0,0,.22)!important;transform:translate(-50%,-50%)!important;z-index:5!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat:after{content:"";position:absolute;inset:4px;border-radius:7px;background:linear-gradient(180deg,rgba(255,255,255,.26),rgba(0,0,0,.05));pointer-events:none}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat.available:hover{outline:3px solid rgba(22,163,74,.20)}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat.selected{background:var(--primary-color,#16a34a)!important;border-color:#d1fae5!important;color:#fff!important;font-size:0!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat.selected::before{content:"✓";font-size:12px}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat.pending{background:#f59e0b!important;border-color:#fed7aa!important;color:#fff!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat.booked,.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat.not-available{background:#c9c9c9!important;border-color:#e5e7eb!important;color:#6b7280!important;opacity:.88}
.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .seat-pos-1{left:50%!important;top:4%!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .seat-pos-2{left:7%!important;top:52%!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .seat-pos-3{left:93%!important;top:52%!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .seat-pos-4{left:50%!important;top:99%!important}
.floor-plan[class*="floor-template-template_"] .floor-editor-cluster{cursor:grab}.floor-plan[class*="floor-template-template_"] .floor-editor-cluster.is-dragging{cursor:grabbing;z-index:30!important}.floor-plan[class*="floor-template-template_"] .floor-editor-cluster .admin-floor-position-badge{position:absolute;left:50%;bottom:-24px;transform:translateX(-50%);background:rgba(0,0,0,.70);color:#fff;border-radius:999px;font-size:10px;font-weight:800;padding:3px 8px;white-space:nowrap;z-index:8}.floor-plan[class*="floor-template-template_"] .floor-editor-cluster .photo-seat{pointer-events:none}.floor-plan[class*="floor-template-template_"] .floor-editor-cluster .photo-table{pointer-events:none!important}
.floor-template-template_1{--table-surface:radial-gradient(circle at 42% 32%,rgba(255,255,255,.25),rgba(32,215,122,.45) 36%,rgba(26,20,52,.88) 100%);--chair-bg:#7c3aed;--chair-bg-alt:#16a34a;--table-edge:#22c55e;--label-bg:rgba(9,17,25,.86)}.floor-template-template_2{--table-surface:radial-gradient(circle,#d4a373,#8b5e34);--chair-bg:#ead2b8;--chair-bg-alt:#caa279;--table-edge:#6f4328;--label-bg:rgba(58,37,23,.88)}.floor-template-template_3{--table-surface:#111827;--chair-bg:#ffffff;--chair-bg-alt:#e5e7eb;--table-edge:#ffffff;--label-bg:#05070a}.floor-template-template_4{--table-surface:radial-gradient(circle,#e0f2fe,#0284c7);--chair-bg:#7dd3fc;--chair-bg-alt:#0ea5e9;--table-edge:#bae6fd;--label-bg:#075985}.floor-template-template_5{--table-surface:radial-gradient(circle,#18181b,#09090b);--chair-bg:#a8835a;--chair-bg-alt:#57534e;--table-edge:#d6a968;--label-bg:#111827}.floor-template-template_6{--table-surface:radial-gradient(circle,#a16207,#4b2e17);--chair-bg:#4ade80;--chair-bg-alt:#65a30d;--table-edge:#86efac;--label-bg:#14532d}.floor-template-template_7{--table-surface:radial-gradient(circle,#eff6ff,#1d4ed8);--chair-bg:#dbeafe;--chair-bg-alt:#f59e0b;--table-edge:#2563eb;--label-bg:#0f2b4d}.floor-template-template_8{--table-surface:radial-gradient(circle,#fff7ed,#b45309);--chair-bg:#fed7aa;--chair-bg-alt:#fdba74;--table-edge:#92400e;--label-bg:#7c2d12}.floor-template-template_9{--table-surface:radial-gradient(circle,#111827,#020617);--chair-bg:#ec4899;--chair-bg-alt:#f59e0b;--table-edge:#f9a8d4;--label-bg:#111827}.floor-template-template_10{--table-surface:radial-gradient(circle,#f7fee7,#65a30d);--chair-bg:#dcfce7;--chair-bg-alt:#86efac;--table-edge:#166534;--label-bg:#14532d}.floor-template-template_11{--table-surface:radial-gradient(circle,#fff7ed,#f97316);--chair-bg:#f97316;--chair-bg-alt:#14b8a6;--table-edge:#fde68a;--label-bg:#7c2d12}.floor-template-template_12{--table-surface:radial-gradient(circle,#f8fafc,#111827);--chair-bg:#f8fafc;--chair-bg-alt:#d1d5db;--table-edge:#111827;--label-bg:#111827}.floor-template-template_13{--table-radius:22px;--table-surface:linear-gradient(135deg,#fff7ed,#e7d6bd);--table-surface-alt:linear-gradient(135deg,#dcfce7,#86efac);--table-surface-third:linear-gradient(135deg,#fef3c7,#f59e0b);--chair-bg:#e8d8c3;--chair-bg-alt:#f8fafc;--table-edge:#b08a60;--label-bg:rgba(31,24,18,.72)}.floor-template-template_14{--table-radius:20px;--table-surface:linear-gradient(135deg,#d6b48a,#8b5e34);--table-surface-alt:linear-gradient(135deg,#dcfce7,#86efac);--table-surface-third:linear-gradient(135deg,#fde68a,#f59e0b);--chair-bg:#d9bea0;--chair-bg-alt:#e9d5b8;--table-edge:#6f4328;--label-bg:rgba(33,26,20,.75)}.floor-template-template_15{--table-radius:18px;--table-surface:linear-gradient(135deg,#fff,#dbeafe);--table-surface-alt:linear-gradient(135deg,#dcfce7,#86efac);--table-surface-third:linear-gradient(135deg,#fef3c7,#f59e0b);--chair-bg:#f8fafc;--chair-bg-alt:#dbeafe;--table-edge:#94a3b8;--label-bg:rgba(8,47,73,.72)}.floor-template-template_16{--table-radius:18px;--table-surface:linear-gradient(135deg,#3f3f46,#111827);--table-surface-alt:linear-gradient(135deg,#dcfce7,#22c55e);--table-surface-third:linear-gradient(135deg,#fde68a,#f59e0b);--chair-bg:#262626;--chair-bg-alt:#44403c;--table-edge:#f59e0b;--seat-bg:#fff7ed;--label-bg:rgba(0,0,0,.75)}
@media(max-width:760px){.floor-plan[class*="floor-template-template_"]{width:var(--reservation-floor-width,760px)!important;height:var(--reservation-floor-height,620px)!important;overflow:auto!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster{width:calc(var(--reservation-table-width,142px) * .78)!important;height:calc(var(--reservation-table-height,116px) * .78)!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat{width:24px!important;height:23px!important;min-width:24px!important;min-height:23px!important;font-size:8px!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table{min-width:48px!important;min-height:22px!important;padding:5px 7px!important}.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table .table-core strong{font-size:8px!important}}

.floor-plan[class*="floor-template-template_"] {
    background-color: #f8fafc !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    border: 1px solid rgba(15, 23, 42, .10) !important;
    border-radius: 14px !important;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .10) !important;
}

.floor-plan[class*="floor-template-template_"]::before,
.floor-plan[class*="floor-template-template_"]::after {
    display: none !important;
    content: none !important;
}

.floor-plan[class*="floor-template-template_"] .reservation-table-cluster {
    position: absolute !important;
    transform: translate(-50%, -50%) !important;
    z-index: 5 !important;
    pointer-events: none !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.floor-plan[class*="floor-template-template_"] .reservation-table-cluster::before,
.floor-plan[class*="floor-template-template_"] .reservation-table-cluster::after {
    display: none !important;
    content: none !important;
}

.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: auto !important;
    min-width: 64px !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 10px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: rgba(10, 15, 20, .78) !important;
    color: #fff !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .24), inset 0 1px 0 rgba(255, 255, 255, .15) !important;
    backdrop-filter: blur(8px) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    z-index: 7 !important;
}

.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table .table-core,
.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table .table-core strong {
    position: static !important;
    display: block !important;
    color: inherit !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table .check {
    position: absolute !important;
    right: -8px !important;
    top: -8px !important;
    width: 20px !important;
    height: 20px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    background: var(--primary-color, #16a34a) !important;
    color: #fff !important;
    border: 2px solid #fff !important;
    font-size: 11px !important;
    box-shadow: 0 5px 12px rgba(0, 0, 0, .2) !important;
}

.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat {
    position: absolute !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    display: grid !important;
    place-items: center !important;
    border: 2px solid rgba(255, 255, 255, .95) !important;
    background: rgba(255, 255, 255, .94) !important;
    color: #172033 !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    box-shadow: 0 6px 14px rgba(0, 0, 0, .25) !important;
    transform: translate(-50%, -50%) !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    z-index: 9 !important;
}

.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat:hover {
    outline: 3px solid rgba(22, 163, 74, .18) !important;
}

.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat.selected {
    background: var(--primary-color, #16a34a) !important;
    border-color: #dcfce7 !important;
    color: #fff !important;
    font-size: 0 !important;
}

.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat.selected::before {
    content: "✓";
    font-size: 13px;
    line-height: 1;
}

.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat.pending {
    background: #f6b238 !important;
    border-color: #fff6d6 !important;
    color: #221a05 !important;
}

.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat.booked,
.floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat.not-available {
    background: rgba(145, 145, 145, .92) !important;
    border-color: rgba(245, 245, 245, .85) !important;
    color: #fff !important;
    opacity: .88 !important;
    cursor: not-allowed !important;
}

.floor-plan[class*="floor-template-template_"] .seat-pos-1 { left: 50% !important; top: 5% !important; }
.floor-plan[class*="floor-template-template_"] .seat-pos-2 { left: 5% !important; top: 50% !important; }
.floor-plan[class*="floor-template-template_"] .seat-pos-3 { left: 95% !important; top: 50% !important; }
.floor-plan[class*="floor-template-template_"] .seat-pos-4 { left: 50% !important; top: 95% !important; }

.floor-plan[class*="floor-template-template_"] .floor-entrance {
    z-index: 12 !important;
    background: rgba(255, 255, 255, .86) !important;
    color: #111827 !important;
    border-radius: 999px !important;
    padding: 4px 10px !important;
    font-size: 10px !important;
    line-height: 1 !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, .16) !important;
}

.floor-template-preview {
    background-size: cover !important;
    background-position: center !important;
}

@media (max-width: 768px) {
    .floor-plan[class*="floor-template-template_"] {
        width: 900px !important;
        height: 420px !important;
        min-width: 900px !important;
        min-height: 420px !important;
    }
    .floor-plan-wrap {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
    }
    .floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-seat {
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
        min-height: 26px !important;
        font-size: 8px !important;
    }
    .floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table {
        min-width: 58px !important;
        height: 26px !important;
        min-height: 26px !important;
    }
    .floor-plan[class*="floor-template-template_"] .reservation-table-cluster .photo-table .table-core strong {
        font-size: 9px !important;
    }
}

.floor-plan.premium-svg-floor,
.admin-reservation-floor.premium-svg-floor {
    background:
        radial-gradient(circle at 8% 14%, rgba(25, 87, 54, .54), transparent 14%),
        radial-gradient(circle at 92% 16%, rgba(25, 87, 54, .44), transparent 13%),
        radial-gradient(circle at 10% 92%, rgba(17, 71, 43, .46), transparent 14%),
        radial-gradient(circle at 92% 86%, rgba(16, 67, 42, .46), transparent 14%),
        radial-gradient(circle at 50% 104%, rgba(245, 158, 11, .18), transparent 22%),
        linear-gradient(180deg, rgba(255, 213, 132, .08), transparent 18%),
        linear-gradient(135deg, #161f1d 0%, #202721 40%, #111817 100%) !important;
    border: 1px solid rgba(255, 255, 255, .10) !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), inset 0 0 80px rgba(0,0,0,.34), 0 18px 40px rgba(15,23,42,.12) !important;
}

.floor-plan.premium-svg-floor::before,
.admin-reservation-floor.premium-svg-floor::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    background:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px),
        radial-gradient(circle at 8% 50%, rgba(255, 203, 118, .26), transparent 3%),
        radial-gradient(circle at 92% 48%, rgba(255, 203, 118, .22), transparent 3%),
        radial-gradient(circle at 32% 4%, rgba(255, 203, 118, .18), transparent 5%),
        radial-gradient(circle at 68% 4%, rgba(255, 203, 118, .18), transparent 5%);
    background-size: 72px 72px, 72px 72px, auto, auto, auto, auto !important;
    opacity: .92 !important;
}

.floor-plan.premium-svg-floor::after,
.admin-reservation-floor.premium-svg-floor::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    pointer-events: none !important;
    background:
        radial-gradient(circle at 0 0, rgba(5, 13, 9, .72), transparent 20%),
        radial-gradient(circle at 100% 0, rgba(5, 13, 9, .62), transparent 20%),
        radial-gradient(circle at 0 100%, rgba(5, 13, 9, .62), transparent 20%),
        radial-gradient(circle at 100% 100%, rgba(5, 13, 9, .62), transparent 20%),
        linear-gradient(180deg, transparent 74%, rgba(0,0,0,.16) 100%) !important;
}

.floor-plan.premium-svg-floor .reservation-table-cluster,
.admin-reservation-floor.premium-svg-floor .reservation-table-cluster {
    z-index: 4 !important;
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
}

.floor-plan.premium-svg-floor .reservation-table-cluster::before,
.floor-plan.premium-svg-floor .reservation-table-cluster::after,
.admin-reservation-floor.premium-svg-floor .reservation-table-cluster::before,
.admin-reservation-floor.premium-svg-floor .reservation-table-cluster::after {
    display: none !important;
    content: none !important;
}

.floor-plan.premium-svg-floor .photo-table,
.admin-reservation-floor.premium-svg-floor .photo-table {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
    cursor: pointer !important;
    display: block !important;
    z-index: 3 !important;
}

.floor-plan.premium-svg-floor .premium-table-svg,
.admin-reservation-floor.premium-svg-floor .premium-table-svg {
    position: absolute !important;
    inset: -8% -8% -10% -8% !important;
    width: 116% !important;
    height: 118% !important;
    overflow: visible !important;
    filter: drop-shadow(0 18px 20px rgba(0, 0, 0, .28));
}

.floor-plan.premium-svg-floor .premium-table-shadow,
.admin-reservation-floor.premium-svg-floor .premium-table-shadow {
    fill: rgba(0,0,0,.28);
}

.floor-plan.premium-svg-floor .premium-sofa-back,
.floor-plan.premium-svg-floor .premium-sofa-left,
.floor-plan.premium-svg-floor .premium-sofa-right,
.admin-reservation-floor.premium-svg-floor .premium-sofa-back,
.admin-reservation-floor.premium-svg-floor .premium-sofa-left,
.admin-reservation-floor.premium-svg-floor .premium-sofa-right {
    fill: none;
    stroke: var(--premium-sofa, #7a5733);
    stroke-width: 22;
    stroke-linecap: round;
    filter: drop-shadow(0 6px 8px rgba(0,0,0,.28));
}

.floor-plan.premium-svg-floor .premium-sofa-left,
.floor-plan.premium-svg-floor .premium-sofa-right,
.admin-reservation-floor.premium-svg-floor .premium-sofa-left,
.admin-reservation-floor.premium-svg-floor .premium-sofa-right {
    stroke-width: 20;
    opacity: .96;
}

.floor-plan.premium-svg-floor .premium-table-top,
.admin-reservation-floor.premium-svg-floor .premium-table-top {
    fill: var(--premium-table, #a06b36);
    stroke: rgba(255,255,255,.20);
    stroke-width: 1.2;
}

.floor-plan.premium-svg-floor .premium-table-inner,
.admin-reservation-floor.premium-svg-floor .premium-table-inner {
    fill: rgba(255,255,255,.13);
    opacity: .78;
}

.floor-plan.premium-svg-floor .premium-table-light,
.admin-reservation-floor.premium-svg-floor .premium-table-light {
    fill: rgba(255, 232, 171, .88);
    filter: drop-shadow(0 0 6px rgba(255, 202, 120, .65));
}

.floor-plan.premium-svg-floor .tone-1,
.admin-reservation-floor.premium-svg-floor .tone-1 { --premium-sofa: #7b5a37; --premium-table: #9b6a39; }
.floor-plan.premium-svg-floor .tone-2,
.admin-reservation-floor.premium-svg-floor .tone-2 { --premium-sofa: #6f5539; --premium-table: #b8834a; }
.floor-plan.premium-svg-floor .tone-3,
.admin-reservation-floor.premium-svg-floor .tone-3 { --premium-sofa: #72563d; --premium-table: #7f5735; }
.floor-plan.premium-svg-floor .tone-4,
.admin-reservation-floor.premium-svg-floor .tone-4 { --premium-sofa: #254c36; --premium-table: #8a6940; }
.floor-plan.premium-svg-floor .reservation-table-cluster.selected,
.admin-reservation-floor.premium-svg-floor .reservation-table-cluster.selected { --premium-sofa: #2f8f46; --premium-table: #7fb069; }
.floor-plan.premium-svg-floor .reservation-table-cluster.pending,
.admin-reservation-floor.premium-svg-floor .reservation-table-cluster.pending { --premium-sofa: #a66b18; --premium-table: #d09b3f; }
.floor-plan.premium-svg-floor .reservation-table-cluster.booked,
.floor-plan.premium-svg-floor .reservation-table-cluster.not-available,
.admin-reservation-floor.premium-svg-floor .reservation-table-cluster.booked,
.admin-reservation-floor.premium-svg-floor .reservation-table-cluster.not-available { --premium-sofa: #5f6368; --premium-table: #8b8f94; opacity: .76; }

.floor-plan.premium-svg-floor .photo-table .table-core,
.admin-reservation-floor.premium-svg-floor .photo-table .table-core {
    position: absolute !important;
    left: 50% !important;
    top: 53% !important;
    transform: translate(-50%, -50%) !important;
    min-width: 62px !important;
    height: 26px !important;
    padding: 0 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: rgba(8, 13, 19, .84) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    box-shadow: 0 7px 15px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.12) !important;
    backdrop-filter: blur(8px) !important;
}

.floor-plan.premium-svg-floor .photo-table .table-core strong,
.admin-reservation-floor.premium-svg-floor .photo-table .table-core strong {
    font-size: 10px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    color: inherit !important;
    white-space: nowrap !important;
}

.floor-plan.premium-svg-floor .photo-table .check,
.admin-reservation-floor.premium-svg-floor .photo-table .check {
    position: absolute !important;
    right: 21% !important;
    top: 22% !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    display: grid !important;
    place-items: center !important;
    background: var(--primary-color, #16a34a) !important;
    color: #fff !important;
    border: 2px solid #dcfce7 !important;
    font-size: 11px !important;
    box-shadow: 0 5px 12px rgba(0,0,0,.24) !important;
}

.floor-plan.premium-svg-floor .photo-seat,
.admin-reservation-floor.premium-svg-floor .photo-seat {
    width: 31px !important;
    height: 31px !important;
    min-width: 31px !important;
    min-height: 31px !important;
    border-radius: 50% !important;
    display: grid !important;
    place-items: center !important;
    border: 2px solid rgba(255,255,255,.90) !important;
    background: linear-gradient(180deg, #f8fafc, #e8edf3) !important;
    color: #172033 !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    box-shadow: 0 8px 16px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.88) !important;
    transform: translate(-50%, -50%) !important;
    z-index: 8 !important;
}

.floor-plan.premium-svg-floor .photo-seat.available:hover {
    outline: 3px solid rgba(22, 163, 74, .18) !important;
}

.floor-plan.premium-svg-floor .photo-seat.selected {
    background: linear-gradient(180deg, #22c55e, #15803d) !important;
    color: #fff !important;
    border-color: #bbf7d0 !important;
    font-size: 0 !important;
}
.floor-plan.premium-svg-floor .photo-seat.selected::before {
    content: "✓";
    font-size: 13px;
}
.floor-plan.premium-svg-floor .photo-seat.pending {
    background: linear-gradient(180deg, #fbbf24, #d97706) !important;
    color: #fff !important;
    border-color: #fde68a !important;
}
.floor-plan.premium-svg-floor .photo-seat.booked,
.floor-plan.premium-svg-floor .photo-seat.not-available {
    background: linear-gradient(180deg, #9ca3af, #6b7280) !important;
    color: #fff !important;
    border-color: #e5e7eb !important;
    cursor: not-allowed !important;
}

.floor-plan.premium-svg-floor .seat-pos-1 { left: 50% !important; top: 2% !important; }
.floor-plan.premium-svg-floor .seat-pos-2 { left: 11% !important; top: 49% !important; }
.floor-plan.premium-svg-floor .seat-pos-3 { left: 89% !important; top: 49% !important; }
.floor-plan.premium-svg-floor .seat-pos-4 { left: 50% !important; top: 95% !important; }
.floor-plan.premium-svg-floor .seat-pos-5 { left: 27% !important; top: 22% !important; }
.floor-plan.premium-svg-floor .seat-pos-6 { left: 73% !important; top: 22% !important; }
.floor-plan.premium-svg-floor .seat-pos-7 { left: 27% !important; top: 78% !important; }
.floor-plan.premium-svg-floor .seat-pos-8 { left: 73% !important; top: 78% !important; }

.floor-plan.premium-svg-floor .floor-entrance,
.admin-reservation-floor.premium-svg-floor .floor-entrance {
    z-index: 5 !important;
    left: 50% !important;
    bottom: 12px !important;
    transform: translateX(-50%) !important;
    background: rgba(15, 23, 42, .86) !important;
    color: #f8fafc !important;
    border: 1px solid rgba(245, 158, 11, .40) !important;
    border-radius: 6px !important;
    padding: 6px 18px !important;
    letter-spacing: .08em !important;
    box-shadow: 0 10px 20px rgba(0,0,0,.28) !important;
}

@media (max-width: 760px) {
    .floor-plan.premium-svg-floor .reservation-table-cluster,
    .admin-reservation-floor.premium-svg-floor .reservation-table-cluster {
        width: calc(var(--reservation-table-width, 132px) * .78) !important;
        height: calc(var(--reservation-table-height, 112px) * .78) !important;
    }
    .floor-plan.premium-svg-floor .photo-seat,
    .admin-reservation-floor.premium-svg-floor .photo-seat {
        width: 24px !important;
        height: 24px !important;
        min-width: 24px !important;
        min-height: 24px !important;
        font-size: 8px !important;
    }
    .floor-plan.premium-svg-floor .photo-table .table-core,
    .admin-reservation-floor.premium-svg-floor .photo-table .table-core {
        min-width: 48px !important;
        height: 22px !important;
        padding: 0 7px !important;
    }
    .floor-plan.premium-svg-floor .photo-table .table-core strong,
    .admin-reservation-floor.premium-svg-floor .photo-table .table-core strong {
        font-size: 8px !important;
    }
}

.floor-plan.premium-svg-floor,
.floor-plan.premium-svg-floor.has-photo-floor,
.floor-plan.premium-svg-floor[style],
.admin-reservation-floor.premium-svg-floor,
.admin-reservation-floor.premium-svg-floor.has-photo-floor,
.admin-reservation-floor.premium-svg-floor[style] {
    background-color: #14110d !important;
    background-image:
        radial-gradient(circle at 6% 12%, rgba(48, 91, 48, .58) 0 7%, transparent 13%),
        radial-gradient(circle at 94% 16%, rgba(45, 88, 47, .52) 0 7%, transparent 13%),
        radial-gradient(circle at 8% 88%, rgba(45, 86, 48, .48) 0 7%, transparent 14%),
        radial-gradient(circle at 92% 86%, rgba(45, 84, 47, .46) 0 7%, transparent 13%),
        radial-gradient(circle at 18% 4%, rgba(255, 210, 126, .25) 0 1.4%, transparent 5%),
        radial-gradient(circle at 50% 4%, rgba(255, 210, 126, .22) 0 1.4%, transparent 5%),
        radial-gradient(circle at 82% 4%, rgba(255, 210, 126, .25) 0 1.4%, transparent 5%),
        repeating-linear-gradient(0deg, rgba(255,255,255,.035) 0 1px, transparent 1px 46px),
        repeating-linear-gradient(90deg, rgba(255,255,255,.028) 0 1px, transparent 1px 120px),
        linear-gradient(90deg, rgba(255,255,255,.04), rgba(0,0,0,.08), rgba(255,255,255,.03)),
        linear-gradient(180deg, #2a2118 0%, #1b1712 46%, #120f0c 100%) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 18px !important;
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.05),
        inset 0 24px 70px rgba(255, 199, 117, .08),
        inset 0 -36px 90px rgba(0,0,0,.46),
        0 16px 38px rgba(15,23,42,.14) !important;
    overflow: hidden !important;
}

.floor-plan.premium-svg-floor::before,
.admin-reservation-floor.premium-svg-floor::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    z-index: 0 !important;
    background-image:
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(rgba(255,255,255,.023) 1px, transparent 1px),
        radial-gradient(circle at 0 0, rgba(20,65,36,.78), transparent 20%),
        radial-gradient(circle at 100% 0, rgba(20,65,36,.70), transparent 20%),
        radial-gradient(circle at 0 100%, rgba(20,65,36,.65), transparent 22%),
        radial-gradient(circle at 100% 100%, rgba(20,65,36,.62), transparent 22%) !important;
    background-size: 64px 64px, 64px 64px, auto, auto, auto, auto !important;
    opacity: .92 !important;
}

.floor-plan.premium-svg-floor::after,
.admin-reservation-floor.premium-svg-floor::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    z-index: 1 !important;
    background:
        radial-gradient(circle at 50% 50%, transparent 0 48%, rgba(0,0,0,.20) 100%),
        linear-gradient(180deg, rgba(255,255,255,.06), transparent 25%, rgba(0,0,0,.18)) !important;
}

.floor-plan.premium-svg-floor .reservation-table-cluster,
.admin-reservation-floor.premium-svg-floor .reservation-table-cluster {
    z-index: 6 !important;
    width: max(var(--table-w, var(--reservation-table-width, 154px)), 148px) !important;
    height: max(var(--table-h, var(--reservation-table-height, 124px)), 118px) !important;
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
}

.floor-plan.premium-svg-floor .photo-table,
.admin-reservation-floor.premium-svg-floor .photo-table {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 3 !important;
}

.floor-plan.premium-svg-floor .premium-table-svg,
.admin-reservation-floor.premium-svg-floor .premium-table-svg {
    position: absolute !important;
    inset: -16% -16% -18% -16% !important;
    width: 132% !important;
    height: 134% !important;
    overflow: visible !important;
    filter: drop-shadow(0 18px 18px rgba(0,0,0,.38)) !important;
}

.floor-plan.premium-svg-floor .premium-table-shadow,
.admin-reservation-floor.premium-svg-floor .premium-table-shadow {
    fill: rgba(0,0,0,.34) !important;
}

.floor-plan.premium-svg-floor .premium-sofa-back,
.floor-plan.premium-svg-floor .premium-sofa-left,
.floor-plan.premium-svg-floor .premium-sofa-right,
.admin-reservation-floor.premium-svg-floor .premium-sofa-back,
.admin-reservation-floor.premium-svg-floor .premium-sofa-left,
.admin-reservation-floor.premium-svg-floor .premium-sofa-right {
    fill: none !important;
    stroke: var(--premium-sofa, #7a5736) !important;
    stroke-width: 25 !important;
    stroke-linecap: round !important;
    filter: drop-shadow(0 8px 8px rgba(0,0,0,.30)) !important;
}

.floor-plan.premium-svg-floor .premium-table-top,
.admin-reservation-floor.premium-svg-floor .premium-table-top {
    fill: var(--premium-table, #a9753f) !important;
    stroke: rgba(255,244,220,.32) !important;
    stroke-width: 1.4 !important;
}

.floor-plan.premium-svg-floor .premium-table-inner,
.admin-reservation-floor.premium-svg-floor .premium-table-inner {
    fill: rgba(255,255,255,.18) !important;
    opacity: .9 !important;
}

.floor-plan.premium-svg-floor .tone-1,
.admin-reservation-floor.premium-svg-floor .tone-1 { --premium-sofa:#8a643d; --premium-table:#a36f3d; }
.floor-plan.premium-svg-floor .tone-2,
.admin-reservation-floor.premium-svg-floor .tone-2 { --premium-sofa:#6d4e34; --premium-table:#b77d43; }
.floor-plan.premium-svg-floor .tone-3,
.admin-reservation-floor.premium-svg-floor .tone-3 { --premium-sofa:#7b5a3f; --premium-table:#8a5c35; }
.floor-plan.premium-svg-floor .tone-4,
.admin-reservation-floor.premium-svg-floor .tone-4 { --premium-sofa:#31583e; --premium-table:#9b7646; }
.floor-plan.premium-svg-floor .reservation-table-cluster.selected,
.admin-reservation-floor.premium-svg-floor .reservation-table-cluster.selected { --premium-sofa:#2f8f46; --premium-table:#8bbd71; }

.floor-plan.premium-svg-floor .photo-table .table-core,
.admin-reservation-floor.premium-svg-floor .photo-table .table-core {
    position: absolute !important;
    left: 50% !important;
    top: 53% !important;
    transform: translate(-50%, -50%) !important;
    min-width: 66px !important;
    height: 28px !important;
    padding: 0 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: rgba(9, 14, 20, .86) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,.20) !important;
    box-shadow: 0 9px 18px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.14) !important;
    backdrop-filter: blur(8px) !important;
    z-index: 5 !important;
}

.floor-plan.premium-svg-floor .photo-table .table-core strong,
.admin-reservation-floor.premium-svg-floor .photo-table .table-core strong {
    font-size: 10px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.floor-plan.premium-svg-floor .photo-seat,
.admin-reservation-floor.premium-svg-floor .photo-seat {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
    border-radius: 50% !important;
    display: grid !important;
    place-items: center !important;
    border: 2px solid rgba(255,255,255,.92) !important;
    background: linear-gradient(180deg, #fff, #e9edf2) !important;
    color: #111827 !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.95) !important;
    transform: translate(-50%, -50%) !important;
    z-index: 8 !important;
}

.floor-plan.premium-svg-floor .photo-seat.selected,
.admin-reservation-floor.premium-svg-floor .photo-seat.selected {
    background: linear-gradient(180deg, #22c55e, #15803d) !important;
    color: #fff !important;
    border-color: #bbf7d0 !important;
}
.floor-plan.premium-svg-floor .photo-seat.pending,
.admin-reservation-floor.premium-svg-floor .photo-seat.pending {
    background: linear-gradient(180deg, #fbbf24, #d97706) !important;
    color: #fff !important;
    border-color: #fde68a !important;
}
.floor-plan.premium-svg-floor .photo-seat.booked,
.floor-plan.premium-svg-floor .photo-seat.not-available,
.admin-reservation-floor.premium-svg-floor .photo-seat.booked,
.admin-reservation-floor.premium-svg-floor .photo-seat.not-available {
    background: linear-gradient(180deg, #9ca3af, #64748b) !important;
    color: #fff !important;
    border-color: #e5e7eb !important;
}

.floor-plan.premium-svg-floor .seat-pos-1 { left: 50% !important; top: 5% !important; }
.floor-plan.premium-svg-floor .seat-pos-2 { left: 13% !important; top: 50% !important; }
.floor-plan.premium-svg-floor .seat-pos-3 { left: 87% !important; top: 50% !important; }
.floor-plan.premium-svg-floor .seat-pos-4 { left: 50% !important; top: 94% !important; }

.floor-plan.premium-svg-floor .floor-entrance,
.admin-reservation-floor.premium-svg-floor .floor-entrance {
    display: block !important;
    z-index: 10 !important;
    left: 50% !important;
    bottom: 10px !important;
    transform: translateX(-50%) !important;
    background: rgba(20,16,11,.90) !important;
    color: #fef3c7 !important;
    border: 1px solid rgba(245, 158, 11, .45) !important;
    border-radius: 6px !important;
    padding: 6px 20px !important;
    letter-spacing: .08em !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.34) !important;
}

.reservation-cosmic-shell{
    --cosmic-bg:#06080c;
    --cosmic-card:#0d0f14;
    --cosmic-card-2:#10131a;
    --cosmic-line:#202632;
    --cosmic-text:#f8fafc;
    --cosmic-muted:#8992a4;
    --cosmic-green:#00e676;
    --cosmic-purple:#b388ff;
    --cosmic-orange:#ff9100;
    --cosmic-red:#ff1744;
    width:min(1280px,94vw)!important;
    color:var(--cosmic-text)!important;
    font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.reservation-cosmic-shell .hidden{display:none!important}
.cosmic-reservation-app{position:relative;padding:8px 0 40px}.cosmic-reservation-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:20px}.cosmic-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--cosmic-green);font-family:"JetBrains Mono",monospace;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.16em}.cosmic-kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--cosmic-green);box-shadow:0 0 18px rgba(0,230,118,.75)}.cosmic-reservation-hero h1{margin:0;color:#fff;font-family:"Space Grotesk",Inter,sans-serif;font-size:clamp(34px,5vw,62px);line-height:.96;letter-spacing:-.055em}.cosmic-reservation-hero p{max-width:680px;margin:12px 0 0;color:var(--cosmic-muted);font-size:14px;line-height:1.6}.cosmic-map-legend{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;}.cosmic-map-legend span,.cosmic-table-legend span{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--cosmic-line);background:rgba(13,15,20,.72);border-radius:999px;padding:8px 11px;color:#cbd5e1;font-size:10px;font-family:"JetBrains Mono",monospace;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.reservation-cosmic-shell .legend-dot{width:9px;height:9px;border-radius:999px;box-shadow:0 0 12px currentColor}.reservation-cosmic-shell .legend-dot.available{background:var(--cosmic-green);color:var(--cosmic-green)}.reservation-cosmic-shell .legend-dot.selected{background:var(--cosmic-purple);color:var(--cosmic-purple)}.reservation-cosmic-shell .legend-dot.booked{background:var(--cosmic-red);color:var(--cosmic-red)}.reservation-cosmic-shell .legend-dot.pending{background:var(--cosmic-orange);color:var(--cosmic-orange)}.reservation-cosmic-shell .legend-dot.not-available{background:#64748b;color:#64748b}.cosmic-stepbar{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 20px;padding:16px;border:1px solid var(--cosmic-line);border-radius:24px;background:rgba(13,15,20,.72);box-shadow:0 24px 70px rgba(0,0,0,.24)}.cosmic-stepbar i{display:block;width:34px;height:1px;background:var(--cosmic-line)}.cosmic-step{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:#64748b;cursor:pointer;padding:0;font:inherit}.cosmic-step b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--cosmic-line);background:#0a0c11;color:#64748b;font-size:12px;font-weight:900;transition:.18s}.cosmic-step span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.cosmic-step.is-active b{border-color:var(--cosmic-green);background:var(--cosmic-green);color:#020617;box-shadow:0 0 18px rgba(0,230,118,.42)}.cosmic-step.is-active span{color:#fff}.cosmic-step.is-done b{border-color:rgba(0,230,118,.4);background:rgba(0,230,118,.12);color:var(--cosmic-green)}.cosmic-step.is-done span{color:#cbd5e1}.cosmic-layout-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.cosmic-flow-card,.cosmic-summary-card,.cosmic-history-card{border:1px solid var(--cosmic-line)!important;background:linear-gradient(180deg,rgba(17,20,28,.96),rgba(10,12,17,.98))!important;border-radius:30px!important;box-shadow:0 30px 80px rgba(0,0,0,.32)!important}.cosmic-flow-card{min-height:600px;padding:28px;position:relative}.cosmic-step-panel{display:none}.cosmic-step-panel.is-active{display:block;animation:cosmicFadeUp .25s ease both}@keyframes cosmicFadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.cosmic-panel-head{margin-bottom:26px}.cosmic-panel-head.with-action{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.cosmic-panel-head h2{margin:0;color:#fff;font-family:"Space Grotesk",Inter,sans-serif;font-size:24px;letter-spacing:-.035em}.cosmic-panel-head p{margin:6px 0 0;color:var(--cosmic-muted);font-size:13px;line-height:1.5}.cosmic-field-group{display:grid;gap:12px;margin-bottom:26px}.cosmic-field-group label,.cosmic-line-head label{color:#cbd5e1;font-size:10px;font-family:"JetBrains Mono",monospace;font-weight:900;text-transform:uppercase;letter-spacing:.14em}.cosmic-line-head{display:flex;align-items:center;justify-content:space-between}.cosmic-line-head span{color:#64748b;font-size:12px;font-weight:800}.cosmic-date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.cosmic-date-card{min-height:102px;border:1px solid var(--cosmic-line);border-radius:22px;background:rgba(6,8,12,.72);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:.18s}.cosmic-date-card span,.cosmic-date-card small{font-family:"JetBrains Mono",monospace;color:#737e91;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.cosmic-date-card strong{display:block;margin:7px 0 6px;font-family:"Space Grotesk",Inter,sans-serif;font-size:24px;line-height:1}.cosmic-date-card:hover:not(:disabled),.cosmic-date-card.is-active{border-color:var(--cosmic-green);background:rgba(0,230,118,.10);box-shadow:0 0 24px rgba(0,230,118,.14)}.cosmic-date-card.is-active span,.cosmic-date-card.is-active small{color:var(--cosmic-green)}.cosmic-date-card.is-disabled,.cosmic-date-card:disabled{opacity:.38;cursor:not-allowed;text-decoration:line-through}.cosmic-time-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important;overflow:visible!important}.reservation-cosmic-shell .slot-chip{min-height:58px!important;border:1px solid var(--cosmic-line)!important;border-radius:16px!important;background:rgba(6,8,12,.72)!important;color:#cbd5e1!important;font-family:"JetBrains Mono",monospace!important;font-size:12px!important;font-weight:900!important;box-shadow:none!important}.reservation-cosmic-shell .slot-chip small{color:#64748b!important;font-size:9px!important;text-transform:uppercase}.reservation-cosmic-shell .slot-chip:hover:not(:disabled),.reservation-cosmic-shell .slot-chip.is-active{border-color:var(--cosmic-green)!important;background:rgba(0,230,118,.10)!important;color:var(--cosmic-green)!important;box-shadow:0 0 24px rgba(0,230,118,.14)!important}.reservation-cosmic-shell .slot-chip.is-active small{color:#9fffc8!important}.reservation-cosmic-shell .slot-chip.is-disabled,.reservation-cosmic-shell .slot-chip:disabled{opacity:.42!important;cursor:not-allowed!important}.cosmic-selected-time{display:block;color:#64748b;font-size:12px;font-weight:700}.cosmic-selected-time strong{color:var(--cosmic-green)}.cosmic-outline-btn,.cosmic-main-btn{border:0;border-radius:16px;min-height:48px;padding:0 20px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:.18s}.cosmic-outline-btn{border:1px solid var(--cosmic-line);background:rgba(6,8,12,.76);color:#cbd5e1}.cosmic-outline-btn:hover{border-color:#384152;color:#fff}.cosmic-main-btn{background:var(--cosmic-green);color:#020617;box-shadow:0 14px 30px rgba(0,230,118,.16)}.cosmic-main-btn:hover{filter:brightness(1.05);transform:translateY(-1px)}.cosmic-main-btn:disabled{opacity:.6;cursor:not-allowed}.cosmic-table-legend{margin:0 0 18px!important;color:#cbd5e1!important}.cosmic-floor-wrap{overflow:visible!important;max-height:none!important;border:1px solid var(--cosmic-line);border-radius:26px;background:#06080c;padding:16px}.reservation-cosmic-shell .cosmic-floor-plan,.reservation-cosmic-shell .floor-plan[class*="floor-template-template_"]{width:100%!important;min-width:0!important;height:540px!important;max-height:70vh!important;overflow:hidden!important;margin:0!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:22px!important;background-image:radial-gradient(circle at 20% 18%,rgba(0,230,118,.12),transparent 24%),radial-gradient(circle at 82% 70%,rgba(179,136,255,.13),transparent 26%),linear-gradient(135deg,#0a0d13,#111827 45%,#070a0f)!important;background-color:#0a0d13!important;box-shadow:inset 0 0 55px rgba(0,0,0,.52)!important;transform:none!important}.reservation-cosmic-shell .cosmic-floor-plan:before,.reservation-cosmic-shell .floor-plan[class*="floor-template-template_"]:before{content:""!important;display:block!important;position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px)!important;background-size:42px 42px!important;pointer-events:none;z-index:0}.reservation-cosmic-shell .cosmic-floor-plan:after,.reservation-cosmic-shell .floor-plan[class*="floor-template-template_"]:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.24));pointer-events:none;z-index:1}.reservation-cosmic-shell .floor-entrance{display:none!important}.reservation-cosmic-shell .reservation-table-cluster{filter:drop-shadow(0 18px 22px rgba(0,0,0,.38))}.reservation-cosmic-shell .reservation-table-cluster:before{filter:drop-shadow(0 0 20px rgba(0,230,118,.22))!important}.reservation-cosmic-shell .reservation-table-cluster.tone-2:before,.reservation-cosmic-shell .reservation-table-cluster.tone-4:before{filter:drop-shadow(0 0 22px rgba(179,136,255,.24))!important}.reservation-cosmic-shell .reservation-table-cluster .photo-table{background:rgba(8,11,18,.9)!important;border-color:rgba(255,255,255,.18)!important;color:#fff!important}.reservation-cosmic-shell .reservation-table-cluster .photo-table.selected{border-color:var(--cosmic-green)!important;box-shadow:0 0 20px rgba(0,230,118,.28)!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat{border-radius:50%!important;background:linear-gradient(135deg,#fffaf0,#d7ccc8)!important;color:#4e342e!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.available:hover{border-color:var(--cosmic-green)!important;box-shadow:0 0 18px rgba(0,230,118,.45)!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.selected{background:var(--cosmic-purple)!important;border-color:#dac8ff!important;color:#fff!important;box-shadow:0 0 20px rgba(179,136,255,.5)!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.booked{background:var(--cosmic-red)!important;border-color:#ff8aa0!important;color:#fff!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.pending{background:var(--cosmic-orange)!important;border-color:#ffd199!important;color:#140900!important}.cosmic-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width: 100%;}.cosmic-form-grid.two-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.cosmic-full-field{grid-column:1/-1}.reservation-cosmic-shell .details-box,.reservation-cosmic-shell .customer-login-head{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}.cosmic-account-card{padding:16px!important;border:1px solid var(--cosmic-line)!important;border-radius:18px!important;background:rgba(6,8,12,.64)!important}.cosmic-account-card span{color:var(--cosmic-green)!important;font-family:"JetBrains Mono",monospace!important;font-size:10px!important;letter-spacing:.12em}.cosmic-account-card strong{color:#fff!important}.cosmic-account-card small{color:var(--cosmic-muted)!important}.cosmic-account-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin-bottom:18px!important}.reservation-cosmic-shell .account-tab{border:1px solid var(--cosmic-line)!important;border-radius:16px!important;background:rgba(6,8,12,.76)!important;color:#cbd5e1!important;min-height:48px!important}.reservation-cosmic-shell .account-tab.active{border-color:var(--cosmic-green)!important;background:rgba(0,230,118,.12)!important;color:var(--cosmic-green)!important}.reservation-cosmic-shell .customer-login-field{gap:8px;color:#cbd5e1!important}.reservation-cosmic-shell .customer-login-field span{font-size:10px!important;font-family:"JetBrains Mono",monospace!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.12em!important;color:#8992a4!important}.reservation-cosmic-shell .details-box input,.reservation-cosmic-shell .details-box textarea,.reservation-cosmic-shell .details-box select,.reservation-cosmic-shell .customer-login-field input,.reservation-cosmic-shell .customer-login-field textarea{border:1px solid var(--cosmic-line)!important;border-radius:16px!important;background:rgba(6,8,12,.86)!important;color:#fff!important;min-height:48px!important;padding:12px 14px!important}.reservation-cosmic-shell .details-box textarea,.reservation-cosmic-shell .customer-login-field textarea{min-height:92px!important}.reservation-cosmic-shell .details-box input:focus,.reservation-cosmic-shell .details-box textarea:focus,.reservation-cosmic-shell .details-box select:focus{border-color:var(--cosmic-green)!important;box-shadow:0 0 0 4px rgba(0,230,118,.12)!important}.reservation-cosmic-shell .customer-login-forgot{color:var(--cosmic-green)!important;font-size:12px!important;padding: 10px;}.cosmic-hidden-submit{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.cosmic-flow-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:28px;padding-top:22px;border-top:1px solid var(--cosmic-line)}.cosmic-flow-actions .cosmic-main-btn{margin-left:auto;}.cosmic-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px}.cosmic-review-box,.cosmic-review-seats,.cosmic-review-note{border:1px solid var(--cosmic-line);border-radius:20px;background:rgba(6,8,12,.62);padding:16px}.cosmic-review-box span,.cosmic-review-seats>span,.cosmic-review-note>span{display:block;color:#64748b;font-family:"JetBrains Mono",monospace;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px}.cosmic-review-box strong{display:block;color:#fff;font-size:14px;line-height:1.35;word-break:break-word}.cosmic-review-seats{display:grid;gap:12px}.cosmic-review-seats #final-seats-list{display:grid;gap:8px}.cosmic-review-seats #final-seats-list div{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:#090c12;padding:12px}.cosmic-review-seats strong{color:#fff;font-size:13px}.cosmic-review-seats span:last-child{color:var(--cosmic-purple);font-size:10px;font-family:"JetBrains Mono",monospace;font-weight:900;text-transform:uppercase}.cosmic-review-note{margin-top:14px}.cosmic-review-note p{margin:0;color:#dbeafe;font-size:13px;line-height:1.6}.reservation-cosmic-shell .form-message{min-height:18px;margin-top:14px;color:#fbbf24!important;font-size:12px!important;font-weight:800!important}.reservation-cosmic-shell .form-message.is-success{color:var(--cosmic-green)!important}.cosmic-summary-panel{position:sticky;top:100px;display:grid;gap:18px}.cosmic-summary-card{padding:22px!important}.cosmic-summary-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.cosmic-summary-head h2{margin:0;color:#fff!important;font-family:"Space Grotesk",Inter,sans-serif;font-size:20px!important}.cosmic-summary-head small{font-family:"JetBrains Mono",monospace;color:#64748b}.reservation-cosmic-shell .selection-box dl{grid-template-columns:98px 1fr!important;gap:12px 14px!important}.reservation-cosmic-shell .selection-box dt{color:#64748b!important;font-size:10px!important;font-family:"JetBrains Mono",monospace!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.1em!important}.reservation-cosmic-shell .selection-box dd{color:#fff!important;font-size:13px!important;line-height:1.35!important}.cosmic-seat-badges{margin-top:18px;padding-top:18px;border-top:1px solid var(--cosmic-line)}.cosmic-seat-badges>span{display:block;color:#64748b;font-size:10px;font-family:"JetBrains Mono",monospace;font-weight:900;text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}.cosmic-seat-badges div{display:flex;flex-wrap:wrap;gap:7px}.cosmic-seat-badges div span{border:1px solid rgba(179,136,255,.22);background:rgba(179,136,255,.10);color:var(--cosmic-purple);border-radius:999px;padding:7px 9px;font-size:10px;font-family:"JetBrains Mono",monospace;font-weight:900}.cosmic-history-card{padding:20px}.cosmic-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.cosmic-history-head h3{margin:0;color:#fff;font-size:13px;font-family:"Space Grotesk",Inter,sans-serif;text-transform:uppercase;letter-spacing:.06em}.cosmic-history-head h3 b{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:6px;border-radius:999px;background:#06080c;color:#64748b;font-family:"JetBrains Mono",monospace}.cosmic-history-head button{border:0;background:transparent;color:#64748b;font-size:10px;font-family:"JetBrains Mono",monospace;font-weight:900;text-transform:uppercase;cursor:pointer}.cosmic-history-head button:hover{color:var(--cosmic-red)}.cosmic-history-list{display:grid;gap:10px;max-height:310px;overflow:auto}.cosmic-empty-history{border:1px dashed var(--cosmic-line);border-radius:16px;padding:26px 16px;color:#64748b;text-align:center;font-size:12px}.cosmic-history-item{border:1px solid var(--cosmic-line);border-radius:16px;background:#080b10;padding:13px}.cosmic-history-item strong{display:block;color:#fff;font-size:13px}.cosmic-history-item small{display:block;margin-top:4px;color:#64748b;font-size:10px;font-family:"JetBrains Mono",monospace}.cosmic-history-item div{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.cosmic-history-item div span{border:1px solid rgba(255,255,255,.08);border-radius:999px;background:#0f131b;color:#cbd5e1;font-size:9px;font-family:"JetBrains Mono",monospace;font-weight:800;padding:4px 6px}.cosmic-closed-card{background:linear-gradient(180deg,#111827,#06080c)!important;color:#fff!important;border-color:var(--cosmic-line)!important}.cosmic-closed-card h1{color:#fff!important}
@media(max-width:1100px){.cosmic-layout-grid{grid-template-columns:1fr}.cosmic-summary-panel{position:static}.cosmic-reservation-hero{align-items:flex-start;flex-direction:column}.cosmic-map-legend{justify-content:flex-start;max-width:none}.cosmic-time-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.reservation-cosmic-shell .cosmic-floor-plan,.reservation-cosmic-shell .floor-plan[class*="floor-template-template_"]{height:500px!important}}
@media(max-width:780px){.reservation-cosmic-shell{width:min(100%,94vw)!important}.cosmic-flow-card{padding:18px;border-radius:24px!important}.cosmic-stepbar{justify-content:flex-start;overflow:auto;padding:12px}.cosmic-stepbar i{width:18px;flex:0 0 18px}.cosmic-step span{font-size:9px}.cosmic-step b{width:27px;height:27px}.cosmic-date-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cosmic-date-card{min-height:84px}.cosmic-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cosmic-form-grid,.cosmic-form-grid.two-cols,.cosmic-review-grid{grid-template-columns:1fr}.reservation-cosmic-shell .cosmic-floor-plan,.reservation-cosmic-shell .floor-plan[class*="floor-template-template_"]{height:430px!important;overflow:auto!important}.cosmic-flow-actions{flex-direction:column}.cosmic-flow-actions .cosmic-outline-btn,.cosmic-flow-actions .cosmic-main-btn{width:100%;margin:0}.cosmic-review-seats #final-seats-list div{align-items:flex-start;flex-direction:column}}

.reservation-cosmic-shell .cosmic-calendar-slot-row{display:grid;grid-template-columns:minmax(270px,340px) minmax(0,1fr);gap:24px;align-items:start}.reservation-cosmic-shell .cosmic-inline-calendar{border:1px solid var(--cosmic-line,#1f2937)!important;border-radius:22px!important;background:rgba(6,8,12,.58)!important;padding:18px!important;box-shadow:inset 0 0 24px rgba(0,0,0,.18)}.reservation-cosmic-shell .cosmic-inline-calendar .cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.reservation-cosmic-shell .cosmic-inline-calendar .cal-head button{width:34px!important;height:34px!important;border:1px solid var(--cosmic-line,#1f2937)!important;border-radius:11px!important;background:rgba(13,15,20,.84)!important;color:#cbd5e1!important;font-size:22px!important;line-height:1!important;cursor:pointer}.reservation-cosmic-shell .cosmic-inline-calendar .cal-head button:hover{border-color:var(--cosmic-green,#00e676)!important;color:#fff!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-title{color:#fff!important;font-family:"JetBrains Mono",monospace!important;font-size:12px!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase}.reservation-cosmic-shell .cosmic-inline-calendar .cal-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:7px!important;text-align:center}.reservation-cosmic-shell .cosmic-inline-calendar .cal-week{display:grid;place-items:center;height:22px;color:#64748b!important;font-family:"JetBrains Mono",monospace!important;font-size:10px!important;font-weight:900!important;text-transform:uppercase}.reservation-cosmic-shell .cosmic-inline-calendar .cal-day{height:36px!important;min-width:0!important;border:1px solid transparent!important;border-radius:999px!important;background:transparent!important;color:#cbd5e1!important;font-size:12px!important;font-weight:900!important;cursor:pointer}.reservation-cosmic-shell .cosmic-inline-calendar .cal-day:hover:not(:disabled){border-color:rgba(0,230,118,.32)!important;background:rgba(0,230,118,.08)!important;color:#fff!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-day.is-active{background:var(--cosmic-green,#00e676)!important;border-color:var(--cosmic-green,#00e676)!important;color:#000!important;box-shadow:0 0 14px rgba(0,230,118,.42)!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-day.is-muted{color:#475569!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-day.is-disabled,.reservation-cosmic-shell .cosmic-inline-calendar .cal-day:disabled{background:rgba(127,29,29,.10)!important;color:rgba(248,113,113,.36)!important;text-decoration:line-through!important;cursor:not-allowed!important}.reservation-cosmic-shell .cosmic-slot-panel .cosmic-time-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px!important}.reservation-cosmic-shell .slot-chip{min-height:52px!important;border:1px solid var(--cosmic-line,#1f2937)!important;border-radius:15px!important;background:rgba(6,8,12,.58)!important;color:#cbd5e1!important;padding:10px 12px!important}.reservation-cosmic-shell .slot-chip small{display:block;margin-top:5px;color:#64748b!important;font-family:"JetBrains Mono",monospace;font-size:9px;font-weight:900;text-transform:uppercase}.reservation-cosmic-shell .slot-chip:hover:not(:disabled){border-color:rgba(0,230,118,.35)!important;background:rgba(0,230,118,.08)!important;color:#fff!important}.reservation-cosmic-shell .slot-chip.is-active{background:rgba(0,230,118,.13)!important;border-color:var(--cosmic-green,#00e676)!important;color:var(--cosmic-green,#00e676)!important;box-shadow:0 0 16px rgba(0,230,118,.18)!important}.reservation-cosmic-shell .slot-chip.is-disabled,.reservation-cosmic-shell .slot-chip:disabled{background:rgba(127,29,29,.10)!important;border-color:rgba(127,29,29,.28)!important;color:rgba(248,113,113,.45)!important;opacity:1!important;text-decoration:none!important}.reservation-cosmic-shell .cosmic-selected-time{display:block;margin-top:12px;color:#64748b!important;font-family:"JetBrains Mono",monospace!important;font-size:11px!important}.reservation-cosmic-shell .cosmic-selected-time strong{color:var(--cosmic-green,#00e676)!important}.reservation-cosmic-shell .floor-plan-wrap{overflow:auto!important;}.reservation-cosmic-shell .floor-plan[class*="floor-template-"]{width:var(--reservation-floor-width,900px)!important;height:var(--reservation-floor-height,500px)!important}.reservation-cosmic-shell .reservation-table-cluster{position:absolute!important;transform:translate(-50%,-50%)!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.seat-pos-1,.admin-reservation-floor .admin-floor-seat.seat-pos-1{left:50%!important;top:11%!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.seat-pos-2,.admin-reservation-floor .admin-floor-seat.seat-pos-2{left:14%!important;top:51%!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.seat-pos-3,.admin-reservation-floor .admin-floor-seat.seat-pos-3{left:86%!important;top:51%!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.seat-pos-4,.admin-reservation-floor .admin-floor-seat.seat-pos-4{left:50%!important;top:91%!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.seat-pos-5,.admin-reservation-floor .admin-floor-seat.seat-pos-5{left:27%!important;top:24%!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.seat-pos-6,.admin-reservation-floor .admin-floor-seat.seat-pos-6{left:73%!important;top:24%!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.seat-pos-7,.admin-reservation-floor .admin-floor-seat.seat-pos-7{left:27%!important;top:78%!important}.reservation-cosmic-shell .reservation-table-cluster .photo-seat.seat-pos-8,.admin-reservation-floor .admin-floor-seat.seat-pos-8{left:73%!important;top:78%!important}@media(max-width:860px){.reservation-cosmic-shell .cosmic-calendar-slot-row{grid-template-columns:1fr}.reservation-cosmic-shell .cosmic-slot-panel .cosmic-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:460px){.reservation-cosmic-shell .cosmic-inline-calendar{padding:12px!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-grid{gap:4px!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-day{height:31px!important}.reservation-cosmic-shell .cosmic-slot-panel .cosmic-time-grid{grid-template-columns:1fr 1fr!important}}

.cosmic-date-grid[hidden],.cosmic-date-grid-removed{display:none!important}.cosmic-flow-actions.is-step-one-hidden{display:none!important}.cosmic-date-next-btn{margin-top:22px;width:min(225px,100%);min-height:60px;border-radius:18px!important;float:right;box-shadow:0 18px 34px rgba(0,230,118,.18)!important}.reservation-cosmic-shell .cosmic-slot-panel:after{content:"";display:block;clear:both}.reservation-cosmic-shell .floor-plan.has-photo-floor:before,.reservation-cosmic-shell .floor-plan.has-photo-floor:after{display:none!important}@media(max-width:860px){.cosmic-date-next-btn{float:none;width:100%;margin-top:18px}}

.cosmic-ticket-confirm-page{min-height:calc(100vh - 92px);padding:112px 18px 48px;background:radial-gradient(circle at 50% 0,rgba(0,230,118,.10),transparent 33%),linear-gradient(180deg,#06080c,#080b10 46%,#06080c);color:#d1d5db;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;position:relative;overflow:hidden}.cosmic-ticket-confirm-page:before,.cosmic-ticket-confirm-page:after{content:"";position:absolute;border-radius:999px;filter:blur(54px);pointer-events:none}.cosmic-ticket-confirm-page:before{width:360px;height:360px;left:-120px;top:120px;background:rgba(179,136,255,.10)}.cosmic-ticket-confirm-page:after{width:430px;height:430px;right:-170px;bottom:20px;background:rgba(0,230,118,.09)}.cosmic-ticket-card{position:relative;z-index:1;max-width:760px;margin:0 auto;background:#0d0f14;border:1px solid rgba(148,163,184,.18);border-radius:30px;padding:28px;box-shadow:0 34px 90px rgba(0,0,0,.46);overflow:hidden}.cosmic-ticket-card:before{content:"";position:absolute;left:50%;top:-140px;width:360px;height:360px;transform:translateX(-50%);background:rgba(0,230,118,.055);filter:blur(26px);border-radius:999px;z-index:-1}.cosmic-confirm-head{text-align:center;margin-bottom:26px}.cosmic-confirm-icon{width:86px;height:86px;margin:0 auto 18px;border-radius:999px;display:grid;place-items:center;color:#00e676;background:rgba(0,230,118,.10);border:2px solid rgba(0,230,118,.72);box-shadow:0 0 24px rgba(0,230,118,.18)}.cosmic-confirm-icon svg{width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:2.5}.cosmic-confirm-icon.is-error{font-size:38px;font-weight:900;color:#ff1744;background:rgba(255,23,68,.10);border-color:rgba(255,23,68,.55)}.cosmic-confirm-head h1{margin:0;color:#fff;font-family:"Space Grotesk",Inter,sans-serif;font-size:clamp(34px,5vw,52px);line-height:1.05;letter-spacing:-.04em}.cosmic-confirm-head p{margin:12px auto 0;max-width:560px;color:#94a3b8;font-size:15px;line-height:1.55}.cosmic-ticket-jagged{position:relative;background:#12151c;border:1px solid rgba(148,163,184,.18);border-radius:22px;padding:24px;font-family:"JetBrains Mono",monospace;color:#cbd5e1}.cosmic-ticket-jagged:before,.cosmic-ticket-jagged:after{content:"";position:absolute;left:0;right:0;height:6px;background-size:12px 6px;z-index:2}.cosmic-ticket-jagged:before{top:-6px;background-image:radial-gradient(circle at 6px -3px,transparent 6px,#12151c 6px)}.cosmic-ticket-jagged:after{bottom:-6px;background-image:radial-gradient(circle at 6px 9px,transparent 6px,#12151c 6px)}.cosmic-ticket-bite-left,.cosmic-ticket-bite-right{position:absolute;top:50%;width:18px;height:36px;background:#06080c;border-color:rgba(148,163,184,.18);border-style:solid;transform:translateY(-50%)}.cosmic-ticket-bite-left{left:-2px;border-width:1px 1px 1px 0;border-radius:0 999px 999px 0}.cosmic-ticket-bite-right{right:-2px;border-width:1px 0 1px 1px;border-radius:999px 0 0 999px}.cosmic-ticket-top,.cosmic-ticket-grid,.cosmic-ticket-date-row,.cosmic-ticket-seats,.cosmic-ticket-special,.cosmic-ticket-qr{position:relative;z-index:3}.cosmic-ticket-top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid rgba(148,163,184,.14)}.cosmic-ticket-brand{display:block;color:#00e676;font-size:14px;font-weight:900;letter-spacing:.05em}.cosmic-ticket-mini{display:block;margin-top:4px;color:#64748b;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.cosmic-ticket-id{text-align:right;color:#b388ff;font-size:14px;font-weight:900;letter-spacing:.08em}.cosmic-ticket-grid,.cosmic-ticket-date-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid rgba(148,163,184,.14)}.cosmic-ticket-field span,.cosmic-ticket-seats>span,.cosmic-ticket-special>span{display:block;color:#64748b;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px}.cosmic-ticket-field strong{display:block;color:#fff;font-size:13px;line-height:1.4}.cosmic-ticket-seat-grid{display:grid;gap:8px}.cosmic-ticket-seat-item{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#0d0f14;border:1px solid rgba(148,163,184,.13);border-radius:14px;padding:12px 14px}.cosmic-ticket-seat-item strong{display:block;color:#00e676;font-size:12px}.cosmic-ticket-seat-item small{display:block;margin-top:4px;color:#64748b;font-size:9px}.cosmic-ticket-seat-item b{color:#b388ff;font-size:11px;text-align:right}.cosmic-ticket-special{padding-top:18px;margin-top:18px;border-top:1px solid rgba(148,163,184,.14)}.cosmic-ticket-special em{display:block;color:#cbd5e1;font-family:Inter,sans-serif;font-size:13px;line-height:1.6}.cosmic-ticket-qr{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:22px;padding-top:22px;border-top:1px solid rgba(148,163,184,.14)}.cosmic-ticket-qr-box{background:#fff;border-radius:14px;border:1px solid #e5e7eb;padding:8px;min-width:176px;min-height:176px;display:grid;place-items:center}.cosmic-ticket-qr-text{max-width:330px}.cosmic-ticket-qr-text span{display:block;color:#00e676;font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;margin-bottom:8px}.cosmic-ticket-qr-text p{margin:0;color:#94a3b8;font-family:Inter,sans-serif;font-size:12px;line-height:1.6}.cosmic-ticket-qr-text pre{white-space:pre-wrap;margin:12px 0 0;padding:12px;border:1px solid rgba(148,163,184,.14);border-radius:12px;background:#06080c;color:#94a3b8;font-size:9px;line-height:1.45;max-height:150px;overflow:auto}.cosmic-ticket-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px}.cosmic-ticket-btn{min-height:54px;border-radius:16px;border:1px solid rgba(148,163,184,.20);display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font-size:13px;font-weight:900;letter-spacing:.02em;color:#fff;background:#111827;cursor:pointer}.cosmic-ticket-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2}.cosmic-ticket-btn.primary{background:#00e676;color:#000;border-color:#00e676;box-shadow:0 18px 35px rgba(0,230,118,.16)}.cosmic-ticket-btn.outline{background:transparent;color:#00e676;border-color:rgba(0,230,118,.55)}.cosmic-ticket-btn:hover{filter:brightness(1.08)}@media(max-width:720px){.cosmic-ticket-card{padding:18px;border-radius:24px}.cosmic-ticket-grid,.cosmic-ticket-date-row,.cosmic-ticket-actions{grid-template-columns:1fr}.cosmic-ticket-qr{align-items:stretch;flex-direction:column}.cosmic-ticket-id{text-align:left}.cosmic-ticket-top{align-items:flex-start;flex-direction:column}.cosmic-ticket-btn{width:100%}}@media print{body>*:not(.cosmic-print-root){display:none!important}.cosmic-ticket-confirm-page{background:#fff!important;padding:0!important;color:#000!important}.cosmic-ticket-card{box-shadow:none!important;border:0!important;background:#fff!important}.cosmic-ticket-actions,.cosmic-ticket-qr{display:none!important}.cosmic-ticket-jagged{border:1px solid #111!important;background:#fff!important;color:#000!important}.cosmic-ticket-field strong,.cosmic-confirm-head h1{color:#000!important}}

.reservation-cosmic-shell .cosmic-selected-time{display:none!important}
.reservation-cosmic-shell .cosmic-time-grid .cosmic-slot-continue-btn{
  width:100%!important;
  min-height:46px!important;
  margin:0!important;
  background-color: #ffffff !important;
}
.reservation-cosmic-shell .cosmic-flow-actions.is-step-one-hidden,
.reservation-cosmic-shell #date-cards-grid{display:none!important}
.reservation-cosmic-shell .cosmic-step-panel[data-step-panel="1"]{padding-bottom:0!important;margin-bottom:0!important}
.reservation-cosmic-shell .cosmic-slot-panel{padding-bottom:0!important;margin-bottom:0!important}
.reservation-cosmic-shell .cosmic-global-message:empty{display:none!important}
.reservation-cosmic-shell .cosmic-history-card{display:none!important}
.reservation-cosmic-shell .country-select,
.reservation-cosmic-shell .country-select.inside,
.reservation-cosmic-shell .iti{width:100%!important;display:block!important}
.reservation-cosmic-shell .country-select input,
.reservation-cosmic-shell input[name="country"]{
  min-height:44px!important;
  width:100%!important;
  border:1px solid var(--cosmic-line,#1f2937)!important;
  border-radius:14px!important;
  background:#06080c!important;
  color:#fff!important;
  padding:10px 12px 10px 52px!important;
  font-size:13px!important;
}
.reservation-cosmic-shell .country-select .flag-dropdown,
.reservation-cosmic-shell .country-select .selected-flag{height:44px!important}
.reservation-cosmic-shell .country-select .country-list{
  z-index:999999!important;
  max-height:260px!important;
  background:#fff!important;
  color:#111827!important;
  border-radius:14px!important;
  border:1px solid #d1d5db!important;
  box-shadow:0 18px 42px rgba(0,0,0,.22)!important;
}
.reservation-cosmic-shell .country-select .country-list .country{color:#111827!important;font-size:13px!important}
.reservation-cosmic-shell .country-select .country-list .country.highlight{background:#ecfdf5!important}

.reservation-cosmic-shell{--cosmic-green:#00ee79;--cosmic-green-2:#1adf73;--cosmic-bg:#ffffff;--cosmic-card:#111822;--cosmic-card-2:#161d28;--cosmic-line:rgba(148,163,184,.22);--cosmic-muted:#95a1b6;--cosmic-red:#ff245a;--cosmic-orange:#ff9f1a;width:min(1720px,94vw)!important;margin:0 auto 48px!important;padding-top:88px!important;background:transparent!important;color:#fff!important}.reservation-cosmic-shell .cosmic-reservation-app{padding:0!important}.reservation-cosmic-shell .cosmic-reservation-hero{display:flex!important;align-items:center!important;justify-content:space-between!important;margin:0 0 110px!important}.reservation-cosmic-shell .cosmic-reservation-hero h1,.reservation-cosmic-shell .cosmic-reservation-hero p{display:none!important}.reservation-cosmic-shell .cosmic-kicker{display:inline-flex!important;align-items:center!important;gap:10px!important;color:var(--cosmic-green)!important;font-family:"JetBrains Mono",monospace!important;font-size:13px!important;font-weight:900!important;letter-spacing:.13em!important;text-transform:uppercase!important}.reservation-cosmic-shell .cosmic-kicker:before{content:"";width:10px;height:10px;border-radius:999px;background:var(--cosmic-green);box-shadow:0 0 18px rgba(0,238,121,.7)}.reservation-cosmic-shell .cosmic-map-legend{display:flex!important;gap:14px!important;justify-content:flex-end!important}.reservation-cosmic-shell .cosmic-map-legend span{min-height:42px;border:1px solid rgba(255,255,255,.16)!important;border-radius:17px!important;background:linear-gradient(180deg,#202936,#121821)!important;color:#fff!important;padding:0 18px!important;box-shadow:0 12px 26px rgba(2,6,23,.28)!important;font-family:"JetBrains Mono",monospace!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.05em!important}.reservation-cosmic-shell .legend-dot{width:11px!important;height:11px!important;border-radius:999px!important}.reservation-cosmic-shell .legend-dot.available{background:var(--cosmic-green)!important;box-shadow:0 0 16px rgba(0,238,121,.8)!important}.reservation-cosmic-shell .legend-dot.selected{background:#8b5cf6!important;box-shadow:0 0 16px rgba(139,92,246,.8)!important}.reservation-cosmic-shell .legend-dot.booked{background:var(--cosmic-red)!important;box-shadow:0 0 16px rgba(255,36,90,.72)!important}.reservation-cosmic-shell .legend-dot.pending{background:var(--cosmic-orange)!important;box-shadow:0 0 16px rgba(255,159,26,.72)!important}.reservation-cosmic-shell .cosmic-stepbar{margin:-74px 0 22px!important;min-height:82px!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:26px!important;background:linear-gradient(135deg,#171f2b,#121822)!important;box-shadow:0 16px 34px rgba(2,6,23,.20)!important;padding:18px 190px!important}.reservation-cosmic-shell .cosmic-step{gap:14px!important;color:#66748c!important;font-family:"JetBrains Mono",monospace!important;font-size:12px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important}.reservation-cosmic-shell .cosmic-step b{width:42px!important;height:42px!important;background:#050912!important;border:0!important;color:#64748b!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)!important}.reservation-cosmic-shell .cosmic-step.is-active b,.reservation-cosmic-shell .cosmic-step.is-done b{background:var(--cosmic-green)!important;color:#06100b!important;box-shadow:0 0 28px rgba(0,238,121,.55)!important}.reservation-cosmic-shell .cosmic-step.is-active span,.reservation-cosmic-shell .cosmic-step.is-done span{color:#fff!important}.reservation-cosmic-shell .cosmic-stepbar i{height:1px!important;max-width:130px!important;background:rgba(148,163,184,.25)!important}.reservation-cosmic-shell .cosmic-layout-grid{display:grid!important;grid-template-columns:minmax(0,1fr) 460px!important;gap:22px!important;align-items:start!important}.reservation-cosmic-shell .cosmic-flow-card,.reservation-cosmic-shell .cosmic-summary-card{border:1px solid rgba(255,255,255,.10)!important;border-radius:24px!important;background:linear-gradient(135deg,rgba(19,27,38,.98),rgba(13,19,29,.98))!important;box-shadow:0 24px 58px rgba(2,6,23,.22)!important}.reservation-cosmic-shell .cosmic-flow-card{padding:34px!important}.reservation-cosmic-shell .cosmic-summary-card{padding:32px!important;overflow:hidden!important;position:relative!important}.reservation-cosmic-shell .cosmic-summary-card:after{content:"";position:absolute;right:-35px;top:88px;width:185px;height:185px;background:url('../img/burger-image.png') center/contain no-repeat;opacity:.045;filter:grayscale(1)}.reservation-cosmic-shell .cosmic-panel-head{padding:0 0 24px!important;margin:0 0 18px!important;border-bottom:1px solid rgba(255,255,255,.10)!important}.reservation-cosmic-shell .cosmic-panel-head h2{color:#fff!important;font-family:Inter,sans-serif!important;font-size:26px!important;letter-spacing:-.035em!important;margin:0 0 8px!important}.reservation-cosmic-shell .cosmic-panel-head p{color:#9aa6ba!important;font-size:15px!important;margin:0!important}.reservation-cosmic-shell .cosmic-panel-head:before{content:"";display:inline-grid;width:58px;height:58px;float:left;margin:0 16px 10px 0;border-radius:999px;background:rgba(0,238,121,.13);box-shadow:inset 0 0 0 1px rgba(0,238,121,.12)}.reservation-cosmic-shell .cosmic-field-group label,.reservation-cosmic-shell .cosmic-line-head label{color:var(--cosmic-green)!important;font-family:"JetBrains Mono",monospace!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important}.reservation-cosmic-shell .cosmic-calendar-slot-row{grid-template-columns:minmax(340px,500px) minmax(0,1fr)!important;gap:30px!important}.reservation-cosmic-shell .cosmic-inline-calendar{border:1px solid rgba(148,163,184,.20)!important;border-radius:16px!important;background:#0d131d!important;padding:22px!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-head{margin-bottom:20px!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-title{font-size:14px!important;color:#fff!important;letter-spacing:.03em!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-head button{width:42px!important;height:42px!important;border-radius:13px!important;background:#111822!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-grid{gap:9px!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-week{height:26px!important;color:#a2adbf!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-day{height:48px!important;font-size:16px!important;border-radius:999px!important;color:#f8fafc!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-day.is-disabled{background:rgba(225,29,72,.22)!important;color:#fb7185!important;text-decoration:none!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-day.is-active{background:var(--cosmic-green)!important;color:#03130a!important;box-shadow:0 0 30px rgba(0,238,121,.55)!important}.reservation-cosmic-shell .cosmic-slot-panel .cosmic-time-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:15px!important;max-height:none!important;overflow:visible!important}.reservation-cosmic-shell .slot-chip{min-height:76px!important;border-radius:14px!important;background:#0d131d!important;border:1px solid rgba(148,163,184,.22)!important;color:#fff!important;font-size:17px!important;font-weight:900!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)!important}.reservation-cosmic-shell .slot-chip small{font-size:10px!important;color:#9aa6ba!important;letter-spacing:.05em!important}.reservation-cosmic-shell .slot-chip:hover:not(:disabled),.reservation-cosmic-shell .slot-chip.is-active{background:rgba(0,238,121,.12)!important;border-color:var(--cosmic-green)!important;color:var(--cosmic-green)!important;box-shadow:0 0 24px rgba(0,238,121,.20)!important}.reservation-cosmic-shell .slot-chip.is-disabled,.reservation-cosmic-shell .slot-chip:disabled{background:rgba(225,29,72,.10)!important;border-color:rgba(225,29,72,.24)!important;color:#fb7185!important}.reservation-cosmic-shell .cosmic-slot-continue-btn{min-height:76px!important;border-radius:14px!important;background:linear-gradient(135deg,var(--cosmic-green),#00c96f)!important;color:#03130a!important;font-family:"JetBrains Mono",monospace!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important;box-shadow:0 18px 34px rgba(0,238,121,.23)!important}.reservation-cosmic-shell .cosmic-summary-head{border-bottom:1px solid rgba(255,255,255,.10)!important;padding:0 0 24px!important;margin-bottom:18px!important}.reservation-cosmic-shell .cosmic-summary-head h2{color:#fff!important;font-size:23px!important}.reservation-cosmic-shell .cosmic-summary-head small{color:#95a1b6!important;font-family:"JetBrains Mono",monospace!important}.reservation-cosmic-shell .selection-box dl{grid-template-columns:54px 1fr!important;gap:0!important}.reservation-cosmic-shell .selection-box dt{position:relative;min-height:92px;color:#7f8aa0!important;font-family:"JetBrains Mono",monospace!important;font-size:11px!important;text-transform:uppercase!important;padding:24px 0 0 68px!important;border-bottom:1px solid rgba(255,255,255,.10)!important}.reservation-cosmic-shell .selection-box dd{min-height:92px;color:#fff!important;font-size:16px!important;padding:48px 0 0 0!important;border-bottom:1px solid rgba(255,255,255,.10)!important}.reservation-cosmic-shell .cosmic-global-message{margin-top:18px!important;color:#fb7185!important}.reservation-cosmic-shell .cosmic-global-message.is-success{color:var(--cosmic-green)!important}.reservation-cosmic-shell .cosmic-flow-actions{margin-top:24px!important;max-width: 620px;margin: 0px auto;}.reservation-cosmic-shell .cosmic-main-btn{background:linear-gradient(135deg,var(--cosmic-green),#bf69eb)!important;color:#06100b!important}.reservation-cosmic-shell .cosmic-outline-btn{background:#0d131d!important;border:1px solid rgba(148,163,184,.22)!important;color:#fff!important}.reservation-cosmic-shell .cosmic-form-grid{gap:14px!important}.reservation-cosmic-shell .customer-login-field input,.reservation-cosmic-shell .customer-login-field textarea,.reservation-cosmic-shell .customer-login-field select{background:#0d131d!important;border:1px solid rgba(148,163,184,.22)!important;color:#fff!important;border-radius:14px!important;min-height:48px!important}.reservation-cosmic-shell .account-tab{background:#0d131d!important;color:var(--cosmic-green)!important;border-color:rgba(0,238,121,.4)!important}.reservation-cosmic-shell .account-tab.active{background:var(--cosmic-green)!important;color:#06100b!important}.reservation-cosmic-shell .customer-login-head{background:#0d131d!important;border-color:rgba(148,163,184,.22)!important}.reservation-cosmic-shell .cosmic-floor-wrap{background:#0d131d!important;border:1px solid rgba(148,163,184,.20)!important;border-radius:18px!important;padding:16px!important}.reservation-cosmic-shell .cosmic-table-legend{background:rgba(6,8,12,.5)!important;border:1px solid rgba(148,163,184,.18)!important;border-radius:16px!important;padding:12px 14px!important;color:#fff!important}.reservation-cosmic-shell .cosmic-review-box,.reservation-cosmic-shell .cosmic-review-seats,.reservation-cosmic-shell .cosmic-review-note{background:#0d131d!important;border-color:rgba(148,163,184,.22)!important;color:#fff!important}@media(max-width:1180px){.reservation-cosmic-shell .cosmic-layout-grid{grid-template-columns:1fr!important}.reservation-cosmic-shell .cosmic-summary-panel{position:static!important}.reservation-cosmic-shell .cosmic-stepbar{padding:16px 24px!important}.reservation-cosmic-shell .cosmic-reservation-hero{margin-bottom:100px!important}}@media(max-width:860px){.reservation-cosmic-shell{width:min(100%,94vw)!important;padding-top:82px!important}.reservation-cosmic-shell .cosmic-reservation-hero{margin-bottom:90px!important}.reservation-cosmic-shell .cosmic-map-legend{justify-content:flex-start!important;flex-wrap:wrap!important}.reservation-cosmic-shell .cosmic-calendar-slot-row{grid-template-columns:1fr!important}.reservation-cosmic-shell .cosmic-slot-panel .cosmic-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.reservation-cosmic-shell .cosmic-flow-card{padding:20px!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-day{height:39px!important}.reservation-cosmic-shell .cosmic-stepbar{overflow:auto!important;justify-content:flex-start!important}.reservation-cosmic-shell .cosmic-stepbar i{min-width:34px!important}}@media(max-width:520px){.reservation-cosmic-shell .cosmic-slot-panel .cosmic-time-grid{grid-template-columns:1fr!important}.reservation-cosmic-shell .cosmic-map-legend span{width:calc(50% - 8px);padding:0 10px!important;font-size:10px!important}.reservation-cosmic-shell .cosmic-step span{display:none!important}}

.reservation-cosmic-shell,
.reservation-cosmic-shell .cosmic-flow-card,
.reservation-cosmic-shell .cosmic-step-panel,
.reservation-cosmic-shell .cosmic-details-form,
.reservation-cosmic-shell .cosmic-form-grid,
.reservation-cosmic-shell .customer-login-field,
.reservation-cosmic-shell .details-box,
.reservation-cosmic-shell .reservation-account-panel {
  overflow: visible !important;
}
.reservation-cosmic-shell .country-select,
.reservation-cosmic-shell .country-select.inside {
  position: relative !important;
  z-index: 100 !important;
}
.reservation-cosmic-shell .country-select:focus-within,
.reservation-cosmic-shell .country-select.open {
  z-index: 2147483000 !important;
}
.reservation-cosmic-shell .country-select .country-list {
  background: #ffffff !important;
  color: #111827 !important;
  border: 1px solid #d1d5db !important;
  border-radius: 16px !important;
  box-shadow: 0 24px 60px rgba(2,6,23,.42) !important;
  max-height: 320px !important;
  overflow-y: auto !important;
  width: max(100%, 260px) !important;
  max-width: min(230px, 92vw) !important;
  padding: 8px !important;
}
.reservation-cosmic-shell .country-select .country-list li.country,
.reservation-cosmic-shell .country-select .country-list .country {
  color: #111827 !important;
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 36px !important;
  padding: 8px 10px !important;
  border-radius: 10px !important;
  font-size: 13px !important;
}
.reservation-cosmic-shell .country-select .country-list li.country:hover,
.reservation-cosmic-shell .country-select .country-list li.country.highlight {
  background: #ecfdf5 !important;
  color: #052e16 !important;
}
.reservation-cosmic-shell .country-select .country-list .country-name,
.reservation-cosmic-shell .country-select .country-list .dial-code {
  color: inherit !important;
  opacity: 1 !important;
}
.reservation-cosmic-shell .country-select .country-list .cosmic-country-search-item {
  display: block !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 5 !important;
  background: #ffffff !important;
  padding: 6px 4px 10px !important;
  margin: -2px 0 6px !important;
  border-bottom: 1px solid #e5e7eb !important;
}
.reservation-cosmic-shell .country-select .country-list .cosmic-country-search {
  display: block !important;
  width: 100% !important;
  min-height: 40px !important;
  border: 1px solid #d1d5db !important;
  border-radius: 12px !important;
  background: #f8fafc !important;
  color: #111827 !important;
  padding: 9px 12px !important;
  outline: none !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

.time-slot-grid{
  position:relative;
  min-height:96px;
}
.time-slot-grid.is-refreshing{
  pointer-events:none;
}
.time-slot-grid.is-refreshing::before{
  content:"";
  position:absolute;
  inset:-4px;
  z-index:20;
  border-radius:14px;
  background:rgba(0,0,0,.46);
  backdrop-filter:blur(1px);
}
.time-slot-grid.is-refreshing::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  z-index:21;
  width:42px;
  height:42px;
  margin:-21px 0 0 -21px;
  border-radius:999px;
  border:4px solid rgba(255,255,255,.25);
  border-top-color:var(--primary-color,#16a34a);
  animation:reservationSlotSpin .65s linear infinite;
}
@keyframes reservationSlotSpin{to{transform:rotate(360deg)}}
.reservation-cosmic-shell .time-slot-grid.is-refreshing::before{
  background:rgba(0,0,0,.58);
  border:1px solid rgba(0,238,121,.18);
}
.reservation-cosmic-shell .time-slot-grid.is-refreshing::after{
  border-color:rgba(255,255,255,.20);
  border-top-color:var(--cosmic-green,#00ee79);
  box-shadow:0 0 28px rgba(0,238,121,.30);
}

.reservation-cosmic-shell{width:min(100%,1180px)!important;padding-top:78px!important;}
.reservation-cosmic-shell .cosmic-reservation-hero{padding:18px 20px!important;border-radius:20px!important;margin-bottom:72px!important;min-height:auto!important;}
.reservation-cosmic-shell .cosmic-reservation-hero h1{font-size:clamp(1.65rem,4vw,3rem)!important;line-height:1.02!important;margin:.2rem 0 .45rem!important;}
.reservation-cosmic-shell .cosmic-reservation-hero p{font-size:.92rem!important;line-height:1.55!important;max-width:680px!important;}
.reservation-cosmic-shell .cosmic-map-legend span,.reservation-cosmic-shell .cosmic-table-legend span{height:30px!important;padding:0 11px!important;font-size:.68rem!important;border-radius:999px!important;}
.reservation-cosmic-shell .cosmic-stepbar{padding:10px 14px!important;border-radius:18px!important;margin:-50px auto 18px!important;gap:8px!important;}
.reservation-cosmic-shell .cosmic-step{gap:7px!important;font-size:.7rem!important;}
.reservation-cosmic-shell .cosmic-step b,.reservation-cosmic-shell .cosmic-step i{width:28px!important;height:28px!important;min-width:28px!important;font-size:.76rem!important;}
.reservation-cosmic-shell .cosmic-layout-grid{grid-template-columns:minmax(0,1fr) 360px!important;gap:16px!important;}
.reservation-cosmic-shell .cosmic-flow-card,.reservation-cosmic-shell .cosmic-summary-panel{padding:18px!important;border-radius:20px!important;}
.reservation-cosmic-shell .cosmic-panel-head{padding:0 0 12px!important;margin:0 0 14px!important;}
.reservation-cosmic-shell .cosmic-panel-head:before{width:42px!important;height:42px!important;margin:0 12px 6px 0!important;}
.reservation-cosmic-shell .cosmic-panel-head h2{font-size:1.35rem!important;margin:0 0 4px!important;}
.reservation-cosmic-shell .cosmic-panel-head p{font-size:.86rem!important;line-height:1.45!important;}
.reservation-cosmic-shell .cosmic-calendar-slot-row{grid-template-columns:minmax(290px,400px) minmax(0,1fr)!important;gap:16px!important;}
.reservation-cosmic-shell .cosmic-inline-calendar{padding:13px!important;border-radius:16px!important;}
.reservation-cosmic-shell .cosmic-inline-calendar .cal-head{margin-bottom:10px!important;}
.reservation-cosmic-shell .cosmic-inline-calendar .cal-title{font-size:.78rem!important;}
.reservation-cosmic-shell .cosmic-inline-calendar .cal-head button{width:32px!important;height:32px!important;border-radius:10px!important;}
.reservation-cosmic-shell .cosmic-inline-calendar .cal-grid{gap:6px!important;}
.reservation-cosmic-shell .cosmic-inline-calendar .cal-week{height:20px!important;font-size:.64rem!important;}
.reservation-cosmic-shell .cosmic-inline-calendar .cal-day{height:34px!important;font-size:.78rem!important;border-radius:12px!important;}
.reservation-cosmic-shell .cosmic-line-head{margin-bottom:8px!important;}
.reservation-cosmic-shell .cosmic-slot-panel .cosmic-time-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;}
.reservation-cosmic-shell .slot-chip{min-height:44px!important;height:44px!important;padding:5px 7px!important;border-radius:12px!important;font-size:.78rem!important;line-height:1.05!important;}
.reservation-cosmic-shell .slot-chip small{font-size:.58rem!important;margin-top:2px!important;}
.reservation-cosmic-shell .cosmic-slot-continue-btn,
.reservation-cosmic-shell .cosmic-date-next-btn,
.reservation-cosmic-shell .cosmic-main-btn,
.reservation-cosmic-shell .cosmic-outline-btn{min-height:42px!important;height:42px!important;border-radius:12px!important;padding:0 16px!important;font-size:.72rem!important;letter-spacing:.055em!important;}
.reservation-cosmic-shell .cosmic-flow-actions{margin-top:16px!important;gap:10px!important;}
.reservation-cosmic-shell .cosmic-details-form{padding: 20px !important;border-radius: 18px !important; box-shadow: 1px 2px 6px -10px rgba(0, 0, 0, 0.1) !important; max-width: 480px; margin:0px auto; background-color: rgb(255 255 255 / 2%) !important; color: #fff !important;}
.reservation-cosmic-shell .cosmic-form-grid{gap:10px!important;}
.reservation-cosmic-shell .customer-login-field input,
.reservation-cosmic-shell .customer-login-field textarea,
.reservation-cosmic-shell .customer-login-field select{min-height:40px!important;height:40px!important;border-radius:12px!important;font-size:.84rem!important;padding:.55rem .75rem!important;}
.reservation-cosmic-shell .customer-login-field span{font-size:.64rem!important;padding: 5px 0px 5px 10px; font-size: 14px !important;}
.reservation-cosmic-shell .customer-login-head{padding:10px!important;border-radius:14px!important;}
.reservation-cosmic-shell .customer-login-head strong{font-size:1rem!important;}
.reservation-cosmic-shell .account-tab{height:34px!important;min-width:110px!important;font-size:.68rem!important;}
.reservation-cosmic-shell .cosmic-table-legend{padding:9px 10px!important;margin-bottom:10px!important;gap:6px!important;}
.reservation-cosmic-shell .cosmic-floor-wrap{padding:10px!important;border-radius:16px!important;}
.reservation-cosmic-shell .cosmic-summary-head{padding:0 0 14px!important;margin-bottom:10px!important;}
.reservation-cosmic-shell .cosmic-summary-head h2{font-size:1.2rem!important;}
.reservation-cosmic-shell .selection-box dl{grid-template-columns:1fr!important;gap:0!important;}
.reservation-cosmic-shell .selection-box dt{min-height:auto!important;padding:10px 0 2px!important;border-bottom:0!important;font-size:.62rem!important;}
.reservation-cosmic-shell .selection-box dd{min-height:auto!important;padding:0 0 10px!important;font-size:.88rem!important;border-bottom:1px solid rgba(255,255,255,.10)!important;}
.reservation-cosmic-shell .cosmic-review-grid{gap:10px!important;}
.reservation-cosmic-shell .cosmic-review-box{padding:12px!important;border-radius:14px!important;}
.reservation-cosmic-shell .cosmic-review-box strong{font-size:.95rem!important;}
@media(max-width:1180px){.reservation-cosmic-shell .cosmic-layout-grid{grid-template-columns:1fr!important}.reservation-cosmic-shell .cosmic-summary-panel{position:static!important}.reservation-cosmic-shell .cosmic-calendar-slot-row{grid-template-columns:minmax(260px,360px) minmax(0,1fr)!important}}
@media(max-width:760px){.reservation-cosmic-shell{width:min(100%,94vw)!important;padding-top:70px!important}.reservation-cosmic-shell .cosmic-calendar-slot-row{grid-template-columns:1fr!important}.reservation-cosmic-shell .cosmic-slot-panel .cosmic-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.reservation-cosmic-shell .cosmic-inline-calendar .cal-day{height:32px!important}.reservation-cosmic-shell .cosmic-flow-card{padding:14px!important}.reservation-cosmic-shell .cosmic-stepbar{padding:8px 10px!important;overflow:auto!important}}
@media(max-width:460px){.reservation-cosmic-shell .cosmic-slot-panel .cosmic-time-grid{grid-template-columns:1fr!important}.reservation-cosmic-shell .slot-chip{height:40px!important;min-height:40px!important}.reservation-cosmic-shell .cosmic-step span{display:none!important}}

.reservation-cosmic-shell .floor-plan,
.reservation-cosmic-shell .cosmic-floor-plan,
.admin-reservation-floor {
    width: var(--reservation-floor-width, 100%) !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: var(--reservation-floor-height, 500px) !important;
    position: relative !important;
    overflow: hidden !important;
    border-radius: 18px !important;
    border: 1px solid rgba(148, 163, 184, .24) !important;
    background-color: var(--floor-base, #101820) !important;
    background-image: var(--floor-pattern), linear-gradient(135deg, var(--floor-one, #111922), var(--floor-two, #0c1218)) !important;
    background-size: cover, auto !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    transform: none !important;
}
.admin-reservation-floor {
    width: var(--admin-reservation-floor-width, 100%) !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: var(--admin-reservation-floor-height, 500px) !important;
}
.reservation-cosmic-shell .floor-plan[style],
.admin-reservation-floor[style],
.reservation-cosmic-shell .floor-plan.has-photo-floor,
.admin-reservation-floor.has-photo-floor {
    background-image: var(--floor-pattern), linear-gradient(135deg, var(--floor-one, #111922), var(--floor-two, #0c1218)) !important;
    background-size: cover, auto !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}
.reservation-cosmic-shell .floor-plan.has-photo-floor::before,
.reservation-cosmic-shell .floor-plan.has-photo-floor::after,
.admin-reservation-floor.has-photo-floor::before,
.admin-reservation-floor.has-photo-floor::after {
    display: none !important;
    content: none !important;
}
.reservation-cosmic-shell .floor-plan-wrap,
.reservation-cosmic-shell .cosmic-floor-wrap {
    overflow: auto !important;
    max-width: 100% !important;
}
.reservation-cosmic-shell .reservation-table-cluster,
.admin-reservation-floor .reservation-table-cluster,
.admin-reservation-floor .admin-floor-table {
    position: absolute !important;
    transform: translate(-50%, -50%) !important;
    z-index: 4 !important;
}
@media (max-width: 760px) {
    .reservation-cosmic-shell .floor-plan,
    .admin-reservation-floor {
        width: 100% !important;
        min-width: 0 !important;
    }
}
.account-form.customer-login-card.reservation-account-panel.is-active {
    width: min(520px, 100%) !important;
    margin: 0px auto;
    padding: 20px;
}