.hkcash-bjt-shell,.hkcash-bjt-shell *{box-sizing:border-box}
.hkcash-bjt-shell{
  --bg:#0e0618;--panel:#20102f;--panel2:#2d1544;--panel3:#3a1a5a;
  --line:rgba(207,184,255,.22);--line2:rgba(207,184,255,.38);
  --text:#f8f5ff;--muted:#d7cee9;--violet:#8b5cf6;--violet2:#6d35ad;
  --gold:#f6cf65;--green:#113b2c;--green2:#17513c;--red:#d15454;
  --shadow:0 18px 60px rgba(0,0,0,.32)
}
.hkcash-bjt-shell{color:var(--text);font-family:system-ui,-apple-system,"Segoe UI","Noto Sans TC",sans-serif}
.hkcash-bjt-shell button,.hkcash-bjt-shell select,.hkcash-bjt-shell input{font:inherit}
.hkcash-bjt-shell button{cursor:pointer}
.hkcash-bjt-shell button:disabled{cursor:not-allowed;opacity:.45}
.hkcash-bjt-shell [hidden]{display:none!important}
.hkcash-bjt-shell{max-width:1240px;margin:0 auto;padding:22px 16px 60px;background:transparent;border-radius:0}
.hkcash-bjt-hero{padding:26px 28px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,#3a175f,#170728);box-shadow:var(--shadow);margin-bottom:18px}
.hkcash-bjt-kicker{margin:0 0 8px;color:var(--gold);font-weight:900;letter-spacing:.04em}
.hkcash-bjt-hero h1{margin:0 0 10px;font-size:clamp(30px,5vw,48px)}
.hkcash-bjt-hero p{margin:0;line-height:1.7;color:var(--muted)}
.hkcash-bjt-toolbar{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:15px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025);margin-bottom:18px}
.hkcash-bjt-field{display:flex;flex-direction:column;gap:6px}
.hkcash-bjt-field label{font-size:13px;color:var(--muted);font-weight:800}
.hkcash-bjt-field select,.hkcash-bjt-field input{width:100%;height:44px;border:1px solid var(--line);border-radius:10px;background:#160a22;color:#fff;padding:0 10px}
.hkcash-bjt-table{position:relative;overflow:hidden;border:1px solid #315d4d;border-radius:32px;background:
 radial-gradient(circle at 50% 35%,rgba(255,255,255,.035),transparent 38%),
 linear-gradient(180deg,var(--green2),var(--green));box-shadow:var(--shadow);padding:26px 24px 24px;min-height:690px}
.hkcash-bjt-table:before{content:"";position:absolute;inset:14px;border:2px solid rgba(246,207,101,.22);border-radius:28px;pointer-events:none}
.hkcash-bjt-table:after{content:"BLACKJACK  ·  DEALER STANDS ON 17";position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);font-weight:900;letter-spacing:.18em;color:rgba(246,207,101,.10);font-size:clamp(18px,2.3vw,30px);white-space:nowrap;pointer-events:none}
.hkcash-bjt-zone{position:relative;z-index:2}
.hkcash-bjt-zone-title{display:flex;justify-content:center;align-items:center;gap:12px;font-weight:900;margin-bottom:10px}
.hkcash-bjt-zone-title span{color:var(--gold);font-size:13px}
.hkcash-bjt-cards{display:flex;justify-content:center;gap:8px;min-height:110px;align-items:center;flex-wrap:wrap}
.hkcash-bjt-card{width:74px;height:104px;border-radius:10px;background:#fff;color:#18111e;box-shadow:0 8px 20px rgba(0,0,0,.3);position:relative;padding:8px;font-weight:900;border:1px solid #eee}
.hkcash-bjt-card--red{color:#b91c1c}
.hkcash-bjt-card-rank{font-size:25px;line-height:1}
.hkcash-bjt-card-suit{position:absolute;right:8px;bottom:6px;font-size:30px}
.hkcash-bjt-card--back{background:repeating-linear-gradient(45deg,#2a0d45 0,#2a0d45 7px,#5c2a8f 7px,#5c2a8f 14px);border:5px solid #fff;display:grid;place-items:center}
.hkcash-bjt-card-backmark{width:42px;height:42px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);background:#26113d;font-size:13px}
.hkcash-bjt-dealer{padding-top:8px;text-align:center}
.hkcash-bjt-dealer-total,.hkcash-bjt-hand-total{margin-top:8px;color:#fff;font-weight:850}
.hkcash-bjt-status{position:relative;z-index:3;margin:20px auto;max-width:720px;text-align:center;padding:12px 16px;border-radius:999px;background:rgba(10,8,16,.44);border:1px solid rgba(255,255,255,.13);font-weight:800}
.hkcash-bjt-player-hands{position:relative;z-index:2;display:flex;justify-content:center;gap:12px;align-items:flex-start;min-height:190px;flex-wrap:wrap}
.hkcash-bjt-player-hand{min-width:230px;max-width:320px;padding:12px;border-radius:18px;border:1px solid rgba(255,255,255,.13);background:rgba(13,21,17,.42)}
.hkcash-bjt-player-hand.is-active{border-color:var(--gold);box-shadow:0 0 0 2px rgba(246,207,101,.12)}
.hkcash-bjt-player-hand .hkcash-bjt-cards{min-height:112px}
.hkcash-bjt-hand-head{display:flex;justify-content:space-between;color:var(--muted);font-size:13px;margin-bottom:5px}
.hkcash-bjt-outcome{margin-top:8px;padding:7px 9px;border-radius:10px;background:rgba(0,0,0,.28);color:var(--gold);font-weight:900;text-align:center}
.hkcash-bjt-empty-hand{min-height:120px;display:grid;place-items:center;color:rgba(255,255,255,.55)}
.hkcash-bjt-controls{position:relative;z-index:4;display:grid;grid-template-columns:1.2fr repeat(5,1fr);gap:8px;margin-top:18px}
.hkcash-bjt-btn{min-height:50px;border:1px solid rgba(255,255,255,.13);border-radius:14px;background:#22102f;color:#fff;font-weight:900}
.hkcash-bjt-btn:hover:not(:disabled){filter:brightness(1.12)}
.hkcash-bjt-btn--deal{background:linear-gradient(135deg,#f6cf65,#d29d2b);color:#241506}
.hkcash-bjt-btn--primary{background:linear-gradient(135deg,var(--violet),var(--violet2))}
.hkcash-bjt-footer-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-top:18px}
.hkcash-bjt-panel{border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,#241036,#160a22);padding:18px}
.hkcash-bjt-panel h2,.hkcash-bjt-panel h3{margin-top:0}
.hkcash-bjt-panel-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}
.hkcash-bjt-toggle{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:13px}
.hkcash-bjt-hint{border:1px solid rgba(246,207,101,.2);border-radius:16px;background:rgba(246,207,101,.06);padding:14px}
.hkcash-bjt-hint-label{display:block;color:var(--gold);font-size:12px;font-weight:900;margin-bottom:4px}
.hkcash-bjt-hint strong{display:block;font-size:30px;color:var(--gold)}
.hkcash-bjt-hint small{display:block;color:var(--muted);margin-top:4px}
.hkcash-bjt-prob-row{margin:10px 0}
.hkcash-bjt-prob-row>div:first-child{display:flex;justify-content:space-between}
.hkcash-bjt-prob-track{height:8px;background:#0f0717;border-radius:999px;overflow:hidden;margin-top:4px}
.hkcash-bjt-prob-track i{display:block;height:100%;background:linear-gradient(90deg,var(--violet),#c4b5fd);border-radius:999px}
.hkcash-bjt-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.hkcash-bjt-stat{border:1px solid var(--line);border-radius:14px;padding:10px;background:rgba(255,255,255,.025)}
.hkcash-bjt-stat span{display:block;color:var(--muted);font-size:12px}
.hkcash-bjt-stat strong{display:block;margin-top:3px;font-size:18px;color:#fff}
.hkcash-bjt-shoe{margin-top:12px}
.hkcash-bjt-shoe-track{height:8px;background:#0e0715;border-radius:999px;overflow:hidden}
.hkcash-bjt-shoe-track i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),#8b5cf6)}
.hkcash-bjt-shoe small{display:block;margin-top:6px;color:var(--muted)}
.hkcash-bjt-count-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.hkcash-bjt-count-card{padding:12px;border-radius:14px;background:#2c1542;border:1px solid var(--line)}
.hkcash-bjt-count-card span{display:block;color:var(--muted);font-size:12px}
.hkcash-bjt-count-card strong{font-size:24px;color:var(--gold)}
.hkcash-bjt-rules-note{margin-top:16px;padding:15px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025);line-height:1.65;color:var(--muted)}
.hkcash-bjt-muted{color:var(--muted)}
.hkcash-bjt-bottom-actions{display:flex;gap:8px;margin-top:12px}
.hkcash-bjt-small-btn{border:1px solid var(--line);border-radius:10px;background:#1b0d28;color:#fff;padding:9px 12px}
@media(max-width:980px){
 .hkcash-bjt-toolbar{grid-template-columns:repeat(2,1fr)}
 .hkcash-bjt-controls{grid-template-columns:1fr 1fr 1fr}
 .hkcash-bjt-footer-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
 .hkcash-bjt-shell{padding:10px 8px 40px}
 .hkcash-bjt-hero{padding:18px;border-radius:18px}
 .hkcash-bjt-toolbar{grid-template-columns:1fr}
 .hkcash-bjt-table{padding:18px 10px;min-height:650px;border-radius:22px}
 .hkcash-bjt-card{width:60px;height:88px}
 .hkcash-bjt-card-suit{font-size:24px}
 .hkcash-bjt-player-hand{min-width:100%;max-width:none}
 .hkcash-bjt-controls{grid-template-columns:1fr 1fr}
 .hkcash-bjt-btn--deal{grid-column:1/-1}
 .hkcash-bjt-stats{grid-template-columns:1fr 1fr}
}


/* =========================================================
   v2.1.2 SOURCE-LEVEL WORDPRESS BRIDGE
   These selectors can ONLY match a page where PHP added:
   body.hkcash-blackjack-table-page
   No :has(), no global navigation selectors.
   ========================================================= */

/* Remove GeneratePress article white card ONLY on simulator page. */
body.hkcash-blackjack-table-page,
body.hkcash-blackjack-table-page #page,
body.hkcash-blackjack-table-page .site,
body.hkcash-blackjack-table-page .site-content,
body.hkcash-blackjack-table-page .content-area,
body.hkcash-blackjack-table-page .site-main,
body.hkcash-blackjack-table-page article,
body.hkcash-blackjack-table-page .inside-article,
body.hkcash-blackjack-table-page .entry-content {
  background-color:#ffffff !important;
}

body.hkcash-blackjack-table-page .inside-article {
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
}

body.hkcash-blackjack-table-page .entry-header {
  display:none !important;
  margin:0 !important;
  padding:0 !important;
}

body.hkcash-blackjack-table-page .site-content {
  padding-top:36px !important;
  padding-bottom:56px !important;
}

body.hkcash-blackjack-table-page .entry-content {
  margin-top:0 !important;
}

/* DO NOT restyle the site navigation here.
   Header/navigation stay exactly as the website theme defines them. */

/* Theme-conflict protection inside the shortcode only. */
.hkcash-bjt-shell h2,
.hkcash-bjt-shell h3,
.hkcash-bjt-shell h4,
.hkcash-bjt-shell strong,
.hkcash-bjt-shell label {
  color:var(--text);
}

.hkcash-bjt-shell p,
.hkcash-bjt-shell span {
  color:inherit;
}

.hkcash-bjt-hero h2 {
  margin:0 0 10px;
  color:#fff;
  font-size:clamp(30px,5vw,48px);
  line-height:1.08;
  font-weight:900;
}

.hkcash-bjt-hero .hkcash-bjt-kicker {
  color:var(--gold);
}

.hkcash-bjt-hero p {
  color:var(--muted);
}

.hkcash-bjt-toolbar {
  grid-template-columns:repeat(3,minmax(0,1fr));
  background:linear-gradient(180deg,#29123e,#1a0b29);
  border-color:var(--line2);
  box-shadow:0 12px 30px rgba(23,7,40,.12);
}

.hkcash-bjt-field label {
  color:#eee8f8;
  font-weight:800;
}

.hkcash-bjt-field select,
.hkcash-bjt-field input {
  background:#160a22;
  color:#fff;
  border-color:rgba(207,184,255,.30);
}

.hkcash-bjt-field select:focus,
.hkcash-bjt-field input:focus {
  border-color:var(--violet);
  outline:2px solid rgba(139,92,246,.16);
  outline-offset:1px;
}

.hkcash-bjt-table,
.hkcash-bjt-table strong,
.hkcash-bjt-table .hkcash-bjt-zone-title strong,
.hkcash-bjt-table .hkcash-bjt-dealer-total,
.hkcash-bjt-table .hkcash-bjt-hand-total,
.hkcash-bjt-table .hkcash-bjt-status {
  color:#fff;
}

.hkcash-bjt-zone-title span {
  color:var(--gold);
}

.hkcash-bjt-panel {
  color:var(--text);
}

.hkcash-bjt-panel h2,
.hkcash-bjt-panel h3 {
  color:#fff;
  font-weight:850;
}

.hkcash-bjt-panel-head .hkcash-bjt-toggle,
.hkcash-bjt-hint .hkcash-bjt-muted,
.hkcash-bjt-muted,
.hkcash-bjt-prob-row,
.hkcash-bjt-prob-row span,
.hkcash-bjt-shoe small,
.hkcash-bjt-rules-note,
.hkcash-bjt-stat span,
.hkcash-bjt-count-card span {
  color:var(--muted);
}

.hkcash-bjt-hint {
  color:var(--text);
}

.hkcash-bjt-prob-row strong,
.hkcash-bjt-stat strong {
  color:#fff;
}

.hkcash-bjt-count-card strong {
  color:var(--gold);
}

@media(max-width:980px) {
  .hkcash-bjt-toolbar {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px) {
  body.hkcash-blackjack-table-page .site-content {
    padding-top:14px !important;
    padding-bottom:28px !important;
  }

  .hkcash-bjt-toolbar {
    grid-template-columns:1fr;
  }

  .hkcash-bjt-shell {
    border-radius:20px;
  }
}


/* v2.1.3 — match the Blackjack HUB page canvas */
body.hkcash-blackjack-table-page .hkcash-bjt-shell {
  background: transparent !important;
}

body.hkcash-blackjack-table-page .hkcash-bjt-hero,
body.hkcash-blackjack-table-page .hkcash-bjt-toolbar,
body.hkcash-blackjack-table-page .hkcash-bjt-table,
body.hkcash-blackjack-table-page .hkcash-bjt-panel {
  position: relative;
}

body.hkcash-blackjack-table-page .hkcash-bjt-toolbar {
  margin-top: 18px;
}

body.hkcash-blackjack-table-page .hkcash-bjt-table {
  margin-top: 18px;
}

body.hkcash-blackjack-table-page .hkcash-bjt-footer-grid {
  margin-top: 18px;
}

@media (max-width:640px) {
  body.hkcash-blackjack-table-page .site-content {
    padding-top:18px !important;
    padding-bottom:32px !important;
  }
}


/* v2.1.7 — simulator UI labels are not document headings */
.hkcash-bjt-panel-title {
  margin:0;
  color:#fff;
  font-size:22px;
  line-height:1.25;
  font-weight:900;
}

.hkcash-bjt-subtitle {
  margin:18px 0 10px;
  color:#fff;
  font-size:18px;
  line-height:1.3;
  font-weight:850;
}
