:root{--bsmb-accent:var(--ast-global-color-0,#f5065a);--bsmb-navy:#0d2340;--bsmb-aqua:#00a8c8;--bsmb-bg:#f4f8fb;--bsmb-line:#dbe5ec}
.bsmb-portal{max-width:1180px;margin:32px auto 72px;color:var(--bsmb-navy)}
.bsmb-portal [hidden]{display:none!important}
.bsmb-access{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 20px}
.bsmb-access-card{background:#fff;border:1px solid var(--bsmb-line);border-radius:16px;box-shadow:0 10px 32px rgba(13,35,64,.07);padding:22px}
.bsmb-access-card h3{color:var(--bsmb-navy)!important;font-size:17px;line-height:1.3;margin:0 0 8px}
.bsmb-access-card p{color:#52667a!important;margin:0 0 16px;max-width:520px}
.bsmb-access-card .bsmb-choice-link{background:var(--bsmb-navy);border-radius:9px;color:#fff!important;display:inline-block;font-weight:800;padding:11px 16px;text-decoration:none}
.bsmb-access-card .bsmb-choice-link:hover,.bsmb-access-card .bsmb-choice-link:focus{background:#0876d1;color:#fff!important}
.bsmb-intro{padding:36px;border-radius:24px;background:linear-gradient(120deg,var(--bsmb-navy),#123b64);color:#fff;margin-bottom:24px}
.bsmb-intro span{color:#ffd400;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.bsmb-intro h2{color:#fff!important;font-size:clamp(32px,5vw,54px);line-height:1;margin:10px 0}
.bsmb-intro p{max-width:700px;margin:0;color:#fff!important}
.bsmb-policy{background:#fff8d8;border-left:4px solid #ffd400;border-radius:8px;padding:13px 16px}
.bsmb-filters{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 20px}
.bsmb-portal .bsmb-filters button{background:#fff;border:1px solid var(--bsmb-line);color:var(--bsmb-navy);padding:9px 14px}
.bsmb-portal .bsmb-filters button.is-active{background:var(--bsmb-navy);border-color:var(--bsmb-navy);color:#fff}
.bsmb-order,.bsmb-guest{background:#fff;border:1px solid var(--bsmb-line);border-radius:20px;box-shadow:0 18px 50px rgba(13,35,64,.08);margin:0 0 24px;padding:26px}
#bsmb-guest-booking{scroll-margin-top:120px}
.bsmb-order>header{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--bsmb-line);padding-bottom:18px}
.bsmb-order header span,.bsmb-service span{font-size:12px;font-weight:800;color:var(--bsmb-aqua);text-transform:uppercase;letter-spacing:.08em}
.bsmb-order h3,.bsmb-service h4{margin:5px 0}
.bsmb-status{align-self:start;background:#eaf9f5;color:#087a62;border-radius:99px;padding:8px 12px;font-size:12px}
.bsmb-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}
.bsmb-summary div{background:var(--bsmb-bg);padding:14px;border-radius:12px}
.bsmb-summary small,.bsmb-summary strong{display:block}
.bsmb-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.bsmb-service{display:grid;grid-template-columns:44px 1fr;gap:14px;border:1px solid var(--bsmb-line);border-radius:16px;padding:18px}
.bsmb-service-icon{width:44px;height:44px;display:grid;place-items:center;background:var(--bsmb-accent);color:#fff;border-radius:12px;font-size:22px}
.bsmb-service dl{margin:12px 0 0}
.bsmb-service dl div{display:grid;grid-template-columns:115px 1fr;border-top:1px solid var(--bsmb-line);padding:7px 0;font-size:13px}
.bsmb-service dt{font-weight:700}.bsmb-service dd{margin:0}
.bsmb-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.bsmb-portal button,.bsmb-actions a,.bsmb-account-link{border:0;border-radius:10px;padding:12px 18px;background:var(--bsmb-accent);color:#fff;font-weight:800;text-decoration:none;cursor:pointer}
.bsmb-actions .bsmb-secondary{background:var(--bsmb-navy)}
.bsmb-actions .bsmb-pay{background:#087a62}
.bsmb-actions .bsmb-cancel-toggle{background:#a83232}
.bsmb-actions .bsmb-contact{background:#52667a}
.bsmb-change-form,.bsmb-cancel-form{margin-top:22px;padding:22px;border-radius:16px;background:var(--bsmb-bg);border:1px solid var(--bsmb-line)}
.bsmb-cancel-form{background:#fff7f7;border-color:#e9b8b8}
.bsmb-cancel-form label{display:grid;gap:7px;font-size:13px;font-weight:700;margin:16px 0}
.bsmb-cancel-form textarea{width:100%;background:#fff;border:1px solid #cdaaaa;border-radius:9px;padding:12px;color:var(--bsmb-navy)}
.bsmb-portal .bsmb-cancel-submit{background:#a83232}
.bsmb-fields,.bsmb-guest form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:18px 0}
.bsmb-fields label,.bsmb-guest label{display:grid;gap:7px;font-weight:700;font-size:13px}
.bsmb-fields .bsmb-wide{grid-column:1/-1}
.bsmb-fields input,.bsmb-fields select,.bsmb-fields textarea,.bsmb-guest input{width:100%;background:#fff;border:1px solid #bdccd8;border-radius:9px;padding:12px;color:var(--bsmb-navy)}
.bsmb-account-link{display:inline-block;margin-right:8px}
.bsmb-history{border-top:1px solid var(--bsmb-line);margin-top:22px;padding-top:18px}
.bsmb-history>div{display:grid;grid-template-columns:1fr auto auto;gap:15px;padding:9px 0}
.bsmb-notice{padding:14px 18px;border-radius:10px;margin:0 0 18px}
.bsmb-success{background:#eaf9f5;color:#087a62}.bsmb-error{background:#fff0f3;color:#a40038}
@media(max-width:900px){.bsmb-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.bsmb-portal{margin:20px 14px 50px}.bsmb-intro,.bsmb-order,.bsmb-guest,.bsmb-access-card{padding:20px}.bsmb-access,.bsmb-summary,.bsmb-services,.bsmb-fields,.bsmb-guest form{grid-template-columns:1fr}.bsmb-order>header{display:grid}.bsmb-service dl div{grid-template-columns:1fr}.bsmb-history>div{grid-template-columns:1fr}.bsmb-fields .bsmb-wide{grid-column:auto}.bsmb-actions>*{width:100%;text-align:center}}
