.jimc-ebbp { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial; }
.jimc-ebbp-toolbar { display:flex; gap:10px; flex-wrap:wrap; margin:10px 0; align-items:center; }
.jimc-ebbp-toolbar input, .jimc-ebbp-toolbar select { padding:8px 10px; border:1px solid #ddd; border-radius:10px; }
.jimc-ebbp-mapwrap { border:1px solid #eee; border-radius:16px; padding:10px; background:#fff; }
.jimc-ebbp-legend { display:flex; gap:10px; flex-wrap:wrap; margin:10px 0; }
.jimc-ebbp-leg { display:inline-flex; align-items:center; gap:6px; font-size:13px; padding:6px 10px; border:1px solid #eee; border-radius:999px; background:#fafafa; }
.jimc-ebbp-leg i { width:12px; height:12px; border-radius:4px; display:inline-block; background:#ddd; }

.available i { background:#2ecc71; }
.locked i { background:#f39c12; }
.in_cart i { background:#3498db; }
.held i { background:#7f8c8d; }
.sold i { background:#e74c3c; }

.jimc-ebbp-map svg { width:100%; height:auto; }
.jimc-ebbp-map [class~="sold"], .jimc-ebbp-map [class~="held"] { opacity:0.6; }

.jimc-ebbp-modal { position:fixed; inset:0; background:rgba(0,0,0,0.4); display:flex; align-items:center; justify-content:center; z-index:9999; }
.jimc-ebbp-modal-card { width:min(520px, 92vw); background:#fff; border-radius:18px; padding:16px; box-shadow:0 20px 60px rgba(0,0,0,0.25); position:relative; }
.jimc-ebbp-close { position:absolute; right:10px; top:10px; border:none; background:#f2f2f2; border-radius:10px; width:34px; height:34px; cursor:pointer; }
.jimc-ebbp-actions { display:flex; gap:10px; margin-top:12px; }
.jimc-ebbp-actions button { padding:10px 12px; border-radius:12px; border:1px solid #ddd; background:#111; color:#fff; cursor:pointer; }
.jimc-ebbp-actions button[disabled] { opacity:0.5; cursor:not-allowed; }
.jimc-ebbp-msg { margin-top:10px; font-size:13px; }
.jimc-ebbp-note { font-size:12px; opacity:0.7; margin-top:10px; }


.jimc-ebbp-loading .jimc-ebbp-booknow{opacity:.75;pointer-events:none;}
.jimc-ebbp-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:jimcspin .8s linear infinite;margin-left:8px;vertical-align:middle;}
@keyframes jimcspin{to{transform:rotate(360deg);}}

.jimc-ebbp .jimc-ebbp-seat, .jimc-ebbp .jimc-booth { cursor: pointer; }
