/* Public "Book a Table" flow — dark nightlife theme, gold accents. */
.coco-bt-wrap{max-width:760px;margin:0 auto;padding:20px 16px 60px;color:#f5f1ea;font-family:inherit}
.coco-bt-empty,.coco-bt-loading{color:#b9b2a6;padding:18px 0}

/* Hero (venue video background, flyer poster/fallback) */
.coco-bt-hero{position:relative;overflow:hidden;border-radius:16px;min-height:260px;display:flex;align-items:flex-end;margin-bottom:28px;background-size:cover;background-position:center;box-shadow:0 12px 40px rgba(0,0,0,.45)}
.coco-bt-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.coco-bt-hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.1) 0%,rgba(0,0,0,.35) 55%,rgba(0,0,0,.82) 100%)}
.coco-bt-hero-content{position:relative;z-index:2;padding:24px;width:100%;display:flex;gap:18px;align-items:flex-end}
.coco-bt-hero-flyer{flex:0 0 auto;width:128px}
.coco-bt-hero-flyer img{display:block;width:100%;height:auto;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.12)}
.coco-bt-hero-text{flex:1 1 auto;min-width:0}
.coco-bt-title{font-size:30px;line-height:1.12;margin:0 0 8px;font-weight:800;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.5)}
.coco-bt-meta{margin:0;color:#eee;font-size:14px;text-shadow:0 1px 10px rgba(0,0,0,.5)}
.coco-bt-badge{display:inline-block;margin-top:12px;padding:5px 12px;border-radius:20px;font-size:12px;font-weight:700;background:rgba(201,162,39,.22);color:#f0d488;border:1px solid rgba(201,162,39,.5)}
@media(max-width:768px){.coco-bt-hero-video{display:none}.coco-bt-hero{min-height:200px}.coco-bt-hero-flyer{width:92px}.coco-bt-title{font-size:23px}}

/* Steps */
.coco-bt-step{margin:0 0 30px}
.coco-bt-step h2{font-size:15px;text-transform:uppercase;letter-spacing:.08em;color:#c9a96e;margin:0 0 14px;font-weight:700}

/* Party counters */
.coco-bt-hint{color:#b9b2a6;font-size:14px;margin:0 0 14px}
.coco-bt-party{display:flex;gap:14px;flex-wrap:wrap}
.coco-bt-seetables{margin-top:18px;padding:14px 28px;border:none;border-radius:12px;background:linear-gradient(135deg,#c9a96e,#b8960c);color:#000;font-size:15px;font-weight:800;cursor:pointer;transition:all .2s}
.coco-bt-seetables:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 30px rgba(201,162,39,.4)}
.coco-bt-seetables:disabled{opacity:.5;cursor:not-allowed}
.coco-bt-upsell{font-size:13.5px;line-height:1.5;color:#c9c1b4;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px;margin:0 0 16px}
.coco-bt-upsell a{color:#e8c668;text-decoration:underline}
.coco-bt-counter{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px 16px}
.coco-bt-counter-label{min-width:42px;font-weight:600;color:#eee}
.coco-bt-inc,.coco-bt-dec{width:34px;height:34px;border-radius:50%;border:1px solid rgba(201,162,39,.5);background:transparent;color:#e8c668;font-size:20px;line-height:1;cursor:pointer;transition:all .15s}
.coco-bt-inc:hover,.coco-bt-dec:hover{background:rgba(201,162,39,.18)}
.coco-bt-count{min-width:24px;text-align:center;font-size:18px;font-weight:700;color:#fff}

/* Table cards */
.coco-bt-tables{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.coco-bt-card{display:flex;flex-direction:column;gap:4px;text-align:left;padding:16px;border-radius:14px;cursor:pointer;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);color:#f5f1ea;transition:all .18s}
.coco-bt-card:hover{border-color:rgba(201,162,39,.55);transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.35)}
.coco-bt-card.is-selected{border-color:#c9a96e;background:rgba(201,162,39,.12);box-shadow:0 0 0 2px rgba(201,162,39,.35)}
.coco-bt-card-name{font-size:16px;font-weight:800;color:#fff}
.coco-bt-card-cap{font-size:12.5px;color:#b9b2a6}
.coco-bt-card-spend{font-size:15px;font-weight:700;color:#e8c668;margin-top:4px}
.coco-bt-card-pp{font-size:12px;color:#b9b2a6}
.coco-bt-card-deposit{font-size:12.5px;color:#9fd29f;margin-top:4px}

/* Details */
.coco-bt-fields{display:grid;gap:10px;max-width:460px}
.coco-bt-fields input,.coco-bt-fields textarea{width:100%;padding:13px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:rgba(10,10,10,.6);color:#fff;font-size:15px}
.coco-bt-fields textarea{min-height:70px;resize:vertical}
.coco-bt-summary{margin:16px 0;padding:14px 16px;border-radius:10px;background:rgba(255,255,255,.05);font-size:14px;color:#eee}
.coco-bt-submit{width:100%;max-width:460px;padding:16px 24px;border:none;border-radius:12px;background:linear-gradient(135deg,#c9a96e,#b8960c);color:#000;font-size:16px;font-weight:800;cursor:pointer;transition:all .2s}
.coco-bt-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 30px rgba(201,162,39,.4)}
.coco-bt-submit:disabled{opacity:.55;cursor:not-allowed}
.coco-bt-error{color:#ff8a7a;font-size:14px;margin-top:10px}

/* Event picker (bare /book-a-table/ landing — no event_id) */
.coco-bt-pick-head{margin-bottom:24px}
.coco-bt-pick-title{font-size:30px;font-weight:800;color:#fff;margin:0 0 8px}
.coco-bt-pick-sub{color:#b9b2a6;font-size:15px;margin:0;line-height:1.5}
.coco-bt-pick-grid{display:grid;grid-template-columns:1fr;gap:14px}
.coco-bt-pick-card{display:flex;gap:14px;align-items:center;padding:12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);color:#f5f1ea;text-decoration:none;transition:all .18s}
.coco-bt-pick-card:hover{border-color:rgba(201,162,39,.55);transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.35)}
.coco-bt-pick-flyer{flex:0 0 auto;width:72px;height:96px;border-radius:10px;background-size:cover;background-position:center;box-shadow:0 8px 20px rgba(0,0,0,.45)}
.coco-bt-pick-body{display:flex;flex-direction:column;gap:4px;min-width:0}
.coco-bt-pick-name{font-size:17px;font-weight:800;color:#fff}
.coco-bt-pick-meta{font-size:13px;color:#b9b2a6}
.coco-bt-pick-cta{font-size:13px;font-weight:700;color:#e8c668;margin-top:2px}

@media(max-width:560px){
	.coco-bt-tables{grid-template-columns:1fr}
}
