/* ===== baccarat-banque (bq) ===== */
/* BACCARAT COACH — the styles for casino-coach.js in the baccarat family (Baccarat Banque Q5/Q6,
   Chemin de Fer Q5/Q6). Written in Baccarat Banque's names (bq), expanded per game by kit/casino/build.js. */
html body .coach-btn .btn-val{ font-family:Inter, system-ui, sans-serif; font-size:12.5px; font-weight:800; line-height:17px; white-space:nowrap; }
html body .coach-start{ z-index:200 !important; display:flex !important; align-items:center; justify-content:center; padding:16px; background:rgba(4,6,14,.78) !important; position:fixed; inset:0; }
html body .coach-start-card{
  width:min(440px, 100%); background:linear-gradient(155deg, #161b2e, #0b0e1a); border:1px solid #b8913f;
  border-radius:16px; padding:22px 20px; box-shadow:0 14px 40px rgba(0,0,0,.6); text-align:center; color:#f4ead2;
}
html body .coach-start-title{ font-family:Cinzel, serif; font-size:22px; font-weight:700; color:#f3d488; margin:0 0 6px; }
html body .coach-start-sub{ font-family:Inter, system-ui, sans-serif; font-size:14px; font-weight:600; color:#efe6cf; margin:0 0 16px; }
html body .coach-choices{ display:flex; gap:10px; }
html body .coach-choice{
  flex:1 1 0; min-height:88px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px;
  padding:12px 10px; border-radius:12px; cursor:pointer; text-align:center;
  background:#1c2338; border:2px solid #6d5a2c; color:#f4ead2; font-family:Inter, system-ui, sans-serif;
}
html body .coach-choice.selected{ border-color:#f3d488; background:#2b2a22; box-shadow:0 0 0 1px #f3d488 inset; }
html body .coach-choice:focus-visible{ outline:2px solid #f3d488; outline-offset:2px; }
html body .coach-choice-title{ font-family:Cinzel, serif; font-size:17px; font-weight:700; color:#f3d488; }
html body .coach-choice-desc{ font-size:13px; font-weight:600; color:#efe6cf; line-height:1.3; }
html body .coach-setup{ margin:14px 0 4px; text-align:left; }
html body .coach-setup-label{ font-family:"IBM Plex Mono", monospace; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#f3d488; margin-bottom:6px; }
html body .coach-setup .coach-choice{ min-height:64px; }
@media (max-width:400px){
  html body .coach-choices{ flex-direction:column; }
  html body .coach-choice{ min-height:64px; }
}
/* the HINT tag: its own element on the button's corner (tapping it never presses the button) */
html body .coach-hint-tag{
  position:absolute; z-index:300; padding:0 7px; height:17px; border-radius:999px; cursor:pointer;
  font-family:Inter, system-ui, sans-serif; font-size:12px; font-weight:800; letter-spacing:.06em; line-height:15px;
  background:#f3d488; color:#151007; border:1px solid #7a5d1d; box-shadow:0 2px 6px rgba(0,0,0,.45);
}
html body .coach-hint-tag:focus-visible{ outline:2px solid #fff; outline-offset:2px; }
html body .coach-reason{
  position:fixed; z-index:210; max-width:min(320px, calc(100vw - 16px)); padding:10px 12px; border-radius:10px;
  background:#0d1120; color:#f7efda; border:1px solid #f3d488; box-shadow:0 8px 22px rgba(0,0,0,.6);
  font-family:Inter, system-ui, sans-serif; font-size:13px; font-weight:600; line-height:1.4;
}
/* the old HINT drawn inside the button is gone: the tag replaces it (it could not be tapped on its own) */
html body .hinted::after{ content:none !important; display:none !important; }
/* Coach off: no hint at all (P3-1) — the tag, the reason, and each game's hint line */
html body.coach-off .coach-hint-tag, html body.coach-off .coach-reason,
html body.coach-off #hintBar, html body.coach-off #bqHintLine, html body.coach-off #countBar{ display:none !important; }
/* the On/Off value reads like the header's own labels (until the header
   buttons go solid gold in the readability pass, when it turns dark on gold) */
html body .gold-icon-btn.coach-btn .btn-val{ color:inherit; font-size:13px; font-weight:800; line-height:16px; }

/* Q5: on phones Coach takes the header place of Sound; Sound stays in Settings */
@media (max-width:679px){ html body #bqGame #btnSound{ display:none !important; } }
/* the Coach choice on the Take Your Seat panel (Q6), between the seats and Sit Down */
html body .bq-seat-panel .coach-setup{ margin:12px 0 10px; }
/* small screens: the seat panel holds the three seats, the Coach choice and Sit Down without
   scrolling — spacing only, every word kept; the two Coach choices side by side */
@media (max-width:679px), (max-height:480px){
  html body #setupPanel{ padding:6px !important; }
  html body #setupPanel .panel{ padding:12px 12px 12px !important; }
  html body #setupPanel .panel h2{ margin:0 0 2px !important; font-size:18px !important; }
  html body #setupPanel #seatExplain{ margin:0 0 8px !important; line-height:1.3 !important; }
  html body #setupPanel .setup-options{ gap:6px !important; }
  html body #setupPanel .role-option{ padding:7px 10px !important; gap:2px !important; }
  html body #setupPanel .role-option-desc{ line-height:1.3 !important; }
  html body .bq-seat-panel .coach-setup{ margin:8px 0 8px !important; }
  html body .bq-seat-panel .coach-setup-label{ margin-bottom:4px !important; }
  html body .bq-seat-panel .coach-choices{ flex-direction:row !important; gap:6px !important; }
  html body .bq-seat-panel .coach-choice{ min-height:0 !important; padding:6px 6px !important; gap:2px !important; }
  html body .bq-seat-panel .coach-choice-title{ font-size:15px !important; }
}

/* Chemin de Fer (cdf names): its Sound button is #btnSoundToggle (Q5: Coach in its header place on phones) */
@media (max-width:679px){ html body #cdfGame #btnSoundToggle{ display:none !important; } }
/* the Coach choice on the Take a Seat panel, between the table sizes and Sit Down */
html body .cdf-seat-panel .coach-setup{ margin:12px 0 10px; }

/* ===== chemin-de-fer (cdf) ===== */
/* BACCARAT COACH — the styles for casino-coach.js in the baccarat family (Baccarat Banque Q5/Q6,
   Chemin de Fer Q5/Q6). Written in Baccarat Banque's names (cdf), expanded per game by kit/casino/build.js. */
html body .coach-btn .btn-val{ font-family:Inter, system-ui, sans-serif; font-size:12.5px; font-weight:800; line-height:17px; white-space:nowrap; }
html body .coach-start{ z-index:200 !important; display:flex !important; align-items:center; justify-content:center; padding:16px; background:rgba(4,6,14,.78) !important; position:fixed; inset:0; }
html body .coach-start-card{
  width:min(440px, 100%); background:linear-gradient(155deg, #161b2e, #0b0e1a); border:1px solid #b8913f;
  border-radius:16px; padding:22px 20px; box-shadow:0 14px 40px rgba(0,0,0,.6); text-align:center; color:#f4ead2;
}
html body .coach-start-title{ font-family:Cinzel, serif; font-size:22px; font-weight:700; color:#f3d488; margin:0 0 6px; }
html body .coach-start-sub{ font-family:Inter, system-ui, sans-serif; font-size:14px; font-weight:600; color:#efe6cf; margin:0 0 16px; }
html body .coach-choices{ display:flex; gap:10px; }
html body .coach-choice{
  flex:1 1 0; min-height:88px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px;
  padding:12px 10px; border-radius:12px; cursor:pointer; text-align:center;
  background:#1c2338; border:2px solid #6d5a2c; color:#f4ead2; font-family:Inter, system-ui, sans-serif;
}
html body .coach-choice.selected{ border-color:#f3d488; background:#2b2a22; box-shadow:0 0 0 1px #f3d488 inset; }
html body .coach-choice:focus-visible{ outline:2px solid #f3d488; outline-offset:2px; }
html body .coach-choice-title{ font-family:Cinzel, serif; font-size:17px; font-weight:700; color:#f3d488; }
html body .coach-choice-desc{ font-size:13px; font-weight:600; color:#efe6cf; line-height:1.3; }
html body .coach-setup{ margin:14px 0 4px; text-align:left; }
html body .coach-setup-label{ font-family:"IBM Plex Mono", monospace; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#f3d488; margin-bottom:6px; }
html body .coach-setup .coach-choice{ min-height:64px; }
@media (max-width:400px){
  html body .coach-choices{ flex-direction:column; }
  html body .coach-choice{ min-height:64px; }
}
/* the HINT tag: its own element on the button's corner (tapping it never presses the button) */
html body .coach-hint-tag{
  position:absolute; z-index:300; padding:0 7px; height:17px; border-radius:999px; cursor:pointer;
  font-family:Inter, system-ui, sans-serif; font-size:12px; font-weight:800; letter-spacing:.06em; line-height:15px;
  background:#f3d488; color:#151007; border:1px solid #7a5d1d; box-shadow:0 2px 6px rgba(0,0,0,.45);
}
html body .coach-hint-tag:focus-visible{ outline:2px solid #fff; outline-offset:2px; }
html body .coach-reason{
  position:fixed; z-index:210; max-width:min(320px, calc(100vw - 16px)); padding:10px 12px; border-radius:10px;
  background:#0d1120; color:#f7efda; border:1px solid #f3d488; box-shadow:0 8px 22px rgba(0,0,0,.6);
  font-family:Inter, system-ui, sans-serif; font-size:13px; font-weight:600; line-height:1.4;
}
/* the old HINT drawn inside the button is gone: the tag replaces it (it could not be tapped on its own) */
html body .hinted::after{ content:none !important; display:none !important; }
/* Coach off: no hint at all (P3-1) — the tag, the reason, and each game's hint line */
html body.coach-off .coach-hint-tag, html body.coach-off .coach-reason,
html body.coach-off #hintBar, html body.coach-off #cdfHintLine, html body.coach-off #countBar{ display:none !important; }
/* the On/Off value reads like the header's own labels (until the header
   buttons go solid gold in the readability pass, when it turns dark on gold) */
html body .gold-icon-btn.coach-btn .btn-val{ color:inherit; font-size:13px; font-weight:800; line-height:16px; }

/* Q5: on phones Coach takes the header place of Sound; Sound stays in Settings */
@media (max-width:679px){ html body #cdfGame #btnSound{ display:none !important; } }
/* the Coach choice on the Take Your Seat panel (Q6), between the seats and Sit Down */
html body .cdf-seat-panel .coach-setup{ margin:12px 0 10px; }
/* small screens: the seat panel holds the three seats, the Coach choice and Sit Down without
   scrolling — spacing only, every word kept; the two Coach choices side by side */
@media (max-width:679px), (max-height:480px){
  html body #setupPanel{ padding:6px !important; }
  html body #setupPanel .panel{ padding:12px 12px 12px !important; }
  html body #setupPanel .panel h2{ margin:0 0 2px !important; font-size:18px !important; }
  html body #setupPanel #seatExplain{ margin:0 0 8px !important; line-height:1.3 !important; }
  html body #setupPanel .setup-options{ gap:6px !important; }
  html body #setupPanel .role-option{ padding:7px 10px !important; gap:2px !important; }
  html body #setupPanel .role-option-desc{ line-height:1.3 !important; }
  html body .cdf-seat-panel .coach-setup{ margin:8px 0 8px !important; }
  html body .cdf-seat-panel .coach-setup-label{ margin-bottom:4px !important; }
  html body .cdf-seat-panel .coach-choices{ flex-direction:row !important; gap:6px !important; }
  html body .cdf-seat-panel .coach-choice{ min-height:0 !important; padding:6px 6px !important; gap:2px !important; }
  html body .cdf-seat-panel .coach-choice-title{ font-size:15px !important; }
}

/* Chemin de Fer (cdf names): its Sound button is #btnSoundToggle (Q5: Coach in its header place on phones) */
@media (max-width:679px){ html body #cdfGame #btnSoundToggle{ display:none !important; } }
/* the Coach choice on the Take a Seat panel, between the table sizes and Sit Down */
html body .cdf-seat-panel .coach-setup{ margin:12px 0 10px; }
