@charset "UTF-8";
/* 北海明珠 V5.3.5.0 全站蓝白前端统一层
 * 只负责颜色、对比度、按钮层级和深色区域文字安全。
 * 所有结构/尺寸仍由各页面模块 CSS 控制。
 */
:root{
  --bhmz-blue-950:#08254b;
  --bhmz-blue-900:#0d3262;
  --bhmz-blue-800:#123f7c;
  --bhmz-blue-700:#19579f;
  --bhmz-blue-600:#2568b8;
  --bhmz-blue-500:#4f8fd7;
  --bhmz-blue-300:#9dc3eb;
  --bhmz-blue-100:#e8f2fd;
  --bhmz-blue-050:#f4f8fd;
  --bhmz-white:#fff;
  --bhmz-text:#17385f;
  --bhmz-muted:#6e8199;
  --bhmz-line:#d7e4f2;
  --primary:#2568b8;
  --primary-dark:#123f7c;
  --primary-soft:#e8f2fd;
  --navy:#123f7c;
  --navy2:#08254b;
  --ink:#17385f;
  --muted:#6e8199;
  --line:#d7e4f2;
  --bg:#f4f8fd;
  --paper:#fff;
  --gold:#4f8fd7; /* compatibility: historical --gold now maps to blue */
  --red:#2568b8;  /* non-semantic legacy activity accent maps to blue */
}

html,body{background:#f4f8fd!important;color:#17385f!important}
body :is(a){accent-color:#2568b8}
.site-header{background:rgba(255,255,255,.98)!important;border-bottom-color:#d7e4f2!important}
.main-nav :is(a,.nav-group>a){color:#17385f!important}
.main-nav :is(a:hover,a.active,.nav-group:hover>a,.nav-group.active>a){color:#2568b8!important}
.main-nav :is(a.active,.nav-group.active>a)::after{background:#2568b8!important}
.submenu{background:#fff!important;border-color:#d7e4f2!important}
.submenu a:hover{background:#edf5fe!important;color:#123f7c!important}

/* light surfaces */
:is(.card,.content-card,.article-card,.news-card,.record-card,.case-card,.activity-card,
.hall-card,.hall-summary-card,.dining-dish-card,.dining-room-card,.bhmz-article-paper,
.bhmz-sidebar-card,.page-intro-card,.section-card,.booking-inquiry-dialog,.activity-modal-card){
  background:#fff!important;border-color:#d7e4f2!important;
  box-shadow:0 12px 34px rgba(18,63,124,.07)!important
}
:is(.muted-section,.soft-section,.filter-bar,.info-panel,.summary-card){background:#edf4fc!important}

/* standard light-area headings */
:is(.section-title,.home-section-title,.content-heading,.page-heading,
.bhmz-article-paper,.bhmz-sidebar-card,.content-card,.article-card,.record-card,.case-card)
:is(h1,h2,h3,h4,strong){color:#123f7c!important}
:is(.eyebrow,.section-eyebrow,.section-kicker,.page-kicker,.kicker){color:#2568b8!important}

/* deep/photo areas: always white text */
:is(.home-hero,.page-hero,.hero-dark,.content-hero-banner,.hd10-hero,.hv9-hero,.dining-hero,
.home-hall-card,.hall-card-media,.home-dining-lead,.home-activity-feature,.home-brand-story,
.booking-inquiry-dialog>header,.activity-modal-head,.activity-modal-hero)
:is(h1,h2,h3,h4,strong,b){color:#fff!important}
:is(.home-hero,.page-hero,.hero-dark,.content-hero-banner,.hd10-hero,.hv9-hero,.dining-hero,
.home-hall-card,.hall-card-media,.home-dining-lead,.home-activity-feature,.home-brand-story,
.booking-inquiry-dialog>header,.activity-modal-head,.activity-modal-hero)
:is(p,small){color:rgba(255,255,255,.82)!important}
:is(.home-hero,.page-hero,.hero-dark,.content-hero-banner,.hd10-hero,.hv9-hero,.dining-hero,
.home-hall-card,.hall-card-media,.home-dining-lead,.home-activity-feature,.home-brand-story)
:is(.eyebrow,.kicker,.section-kicker,.page-kicker){color:#c5e0fb!important}

/* primary */
:is(.primary-btn,.btn-primary,.header-booking,.booking-submit,.booking-inquiry-submit,
.home-hero-primary,.wide-primary-btn,.activity-center-primary,.activity-modal-primary,
.dr31-primary,.hd10-btn--gold,.hv9-btn--gold,.dining-home-more-btn,.dining-menu-loadmore,
.junren-gold-btn,.gold-btn,.accent-btn){
  background:linear-gradient(135deg,#123f7c 0%,#2568b8 100%)!important;
  border-color:#174f92!important;color:#fff!important;
  box-shadow:0 10px 24px rgba(18,63,124,.18)!important;text-shadow:none!important
}
:is(.primary-btn,.btn-primary,.header-booking,.booking-submit,.booking-inquiry-submit,
.home-hero-primary,.wide-primary-btn,.activity-center-primary,.activity-modal-primary,
.dr31-primary,.hd10-btn--gold,.hv9-btn--gold,.dining-home-more-btn,.dining-menu-loadmore,
.junren-gold-btn,.gold-btn,.accent-btn):hover{
  background:linear-gradient(135deg,#0d3262,#19579f)!important;color:#fff!important
}

/* secondary */
:is(.secondary-btn,.outline-btn,.wide-light-btn,.activity-center-secondary,.activity-modal-secondary,
.dr31-secondary,.hd10-btn--outline,.hv9-btn--outline,.about-v5-outline-btn,.hi-outline-btn,
.bs-outline-btn,.junren-outline-btn){
  background:#fff!important;border:1px solid #8eb4dd!important;color:#174f92!important;
  box-shadow:0 7px 18px rgba(18,63,124,.06)!important
}
:is(.secondary-btn,.outline-btn,.wide-light-btn,.activity-center-secondary,.activity-modal-secondary,
.dr31-secondary,.hd10-btn--outline,.hv9-btn--outline,.about-v5-outline-btn,.hi-outline-btn,
.bs-outline-btn,.junren-outline-btn):hover{background:#edf5fe!important;border-color:#2568b8!important;color:#0d3262!important}

/* tags and chips */
:is(.badge,.tag,.chip,.meta-tag,.stat-chip,.filter-chip,.activity-category-badge,
.activity-center-card-kicker,.activity-center-card-tags span,.activity-modal-highlights span,
.dining-dish-tags span){
  background:#edf5fe!important;border-color:#c6dcef!important;color:#2568b8!important
}

/* links/icons */
:is(.text-link,.card-read-more,.home-record-body b,.home-insight-feature b,.home-insight-list small,
.bhmz-sidebar-text-link,.activity-center-card-more){color:#2568b8!important}
:is(.site-icon,.bhmz-float-icon){color:#2568b8}

/* forms */
:is(input,select,textarea){background:#fff!important;border-color:#cfdeed!important;color:#17385f!important}
:is(input,select,textarea):focus{border-color:#4f8fd7!important;box-shadow:0 0 0 3px rgba(79,143,215,.13)!important}
.booking-date-trigger{background:#edf5fe!important;color:#2568b8!important}
.booking-calendar{background:#fff!important;border-color:#d7e4f2!important}
.booking-calendar :is(.selected,[aria-selected="true"]){background:#2568b8!important;color:#fff!important}

/* booking notice – explicit contrast fix for screenshot issue */
.booking-inquiry-dialog>header{background:linear-gradient(135deg,#0d3262 0%,#2568b8 100%)!important;color:#fff!important}
.booking-inquiry-dialog>header :is(h1,h2,h3,strong){color:#fff!important}
.booking-inquiry-dialog>header>span{color:#c9e2fb!important}
.booking-inquiry-dialog>header p{color:rgba(255,255,255,.88)!important}
.booking-inquiry-close{border-color:rgba(255,255,255,.55)!important;background:rgba(255,255,255,.10)!important;color:#fff!important}
.booking-inquiry-dialog .booking-inquiry-form{background:#fff!important}

/* activities formerly red/gold */
.activity-float{background:linear-gradient(135deg,#123f7c,#2568b8)!important;color:#fff!important;box-shadow:0 12px 30px rgba(18,63,124,.22)!important}
.activity-modal-body>span{color:#2568b8!important}

/* homepage hall cards and image overlays */
.home-hall-overlay{background:linear-gradient(transparent,rgba(5,25,55,.94))!important}
.home-hall-overlay :is(h3,b){color:#fff!important}
.home-hall-overlay p{color:rgba(255,255,255,.78)!important}
.home-hall-overlay span{color:#c5e0fb!important}

/* footer */
.site-footer{background:#08254b!important;color:rgba(255,255,255,.78)!important}
.site-footer :is(h2,h3,h4,strong,a){color:#fff!important}
.site-footer a:hover{color:#c5e0fb!important}
.footer-booking{color:#b9d8fb!important}

/* preserve semantic states: only errors/success are allowed non-blue UI colors */
.booking-form-error,.form-error,.error-message{color:#b4232f!important;background:#fff2f3!important}
.booking-success-icon,.success-message{color:#16875b!important}

/* mobile */
@media(max-width:780px){
  .mobile-quick-bar,.mobile-bottom-bar{background:#123f7c!important;border-color:#0d3262!important}
  .mobile-quick-bar a,.mobile-bottom-bar a{color:#fff!important}
  .mobile-quick-bar svg,.mobile-bottom-bar svg{color:#c5e0fb!important}
}
