/* ===== Tokens (keep design language) ===== */
:root{
  --bg:#0b0b12; --fg:#f5f7ff; --muted:#a7acbf;
  --card:#11131a; --surface:#151827; --border:#23273a;
  --accent:#7c3aed; --accent2:#4f46e5; --grad:linear-gradient(135deg,#7c3aed,#4f46e5 60%,#14b8a6);
  --tile-correct:#22c55e; --tile-present:#eab308; --tile-absent:#747474;
  --chip:#1f2333; --shadow:0 12px 30px rgba(0,0,0,.35);
  --modal-bg:#0f1724; --card-bg:#0b0f16; --text:#e6eef8;
  --site-max:420px; --side-padding:12px;
}
.light{
  --bg:#f6f7fb; --fg:#0b0b12; --muted:#55607a;
  --card:#ffffff; --surface:#ffffff; --border:#e7e9f1; --chip:#eef2ff;
  --tile-absent:#111827; --shadow:0 10px 24px rgba(24,30,60,.12);
  --modal-bg:#ffffff; --card-bg:#ffffff; --text:#0b0b12;
}
*{box-sizing:border-box}
html,body{height:100%;box-sizing:border-box;overflow-x:hidden;-webkit-overflow-scrolling:touch}
*, *::before, *::after{box-sizing:inherit}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,Segoe UI,Roboto,Arial;background:var(--bg);color:var(--fg);}
.blur{backdrop-filter:blur(10px)}

/* ===== Header (logo L, tabs C, icons R) ===== */
.topbar{
  height:64px; width:100%; display:flex; align-items:center; justify-content:space-between;
  padding:10px var(--side-padding); gap:8px; border-bottom:1px solid var(--border);
  background: color-mix(in oklab, var(--card), transparent 20%);
  box-sizing:border-box; z-index:20;
}
.topbar .logo{display:none!important;width:0;height:0;overflow:hidden}
.brand{font-weight:700;letter-spacing:.2px;font-size:1.1rem;line-height:1;display:inline-flex;align-items:center;gap:4px}
.accent{color:var(--accent2);font-weight:700;opacity:.95}
.topbar > .left,.topbar > .center-tabs,.topbar > .right{min-width:0;display:flex;align-items:center}
.topbar > .left{flex:0 0 auto;gap:8px}
.topbar > .right{flex:0 0 auto;gap:8px}
.center-tabs{flex:1 1 auto;justify-content:center;gap:8px;padding:0 6px;overflow:hidden;white-space:nowrap;text-align:center}
.tab{border:1px solid var(--border);background:var(--chip);color:var(--fg);padding:8px 14px;border-radius:999px;cursor:pointer;font-weight:700;flex-shrink:0}
.tab.active{background:var(--accent2);color:#fff;border-color:transparent}
.icon-btn{border:1px solid var(--border);background:var(--chip);color:var(--fg);padding:8px 10px;border-radius:12px;cursor:pointer;flex-shrink:0}
#btn-leaderboard,#btn-theme{display:none!important}

/* Settings icon */
.icon-settings{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.02);color:inherit;border:1px solid rgba(255,255,255,.02);cursor:pointer;font-size:18px;line-height:1;transition:transform .12s ease,background .12s}
.icon-settings:active{transform:translateY(1px)}
.icon-settings:focus{outline:3px solid rgba(255,255,255,.06);outline-offset:2px}

/* ===== Viewport grid: tema bar / board / keyboard (no scroll) ===== */
.viewport{
  height:calc(100vh - 64px);display:grid;grid-template-rows:auto 1fr auto;gap:8px;padding:8px 5px;
  width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;
}
.viewport > section{width:100%;box-sizing:border-box}

/* Tema bar */
.tema-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px;background:var(--card);border:1px solid var(--border);border-radius:14px;width:100%;box-sizing:border-box}
.tema-row{display:flex;gap:8px;overflow:auto;scrollbar-width:none;align-items:center}
.tema-row::-webkit-scrollbar{display:none}
.chip{border:1px solid var(--border);background:var(--chip);color:var(--fg);padding:8px 12px;border-radius:999px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chip.active{background:var(--accent2);color:#fff;border-color:transparent}
.chip.ghost{background:transparent}

/* Board zone */
.board-zone{display:grid;place-items:center;position:relative;padding:2px;box-sizing:border-box}
.board{--cols:5;--rows:6;--pad:8px;display:grid;gap:var(--pad);grid-template-columns:repeat(var(--cols),1fr);width:min(320px,86vw)}
.board .tile{aspect-ratio:1/1;border-radius:18px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:clamp(18px,2.6vw,32px);background:var(--surface);color:var(--fg);text-transform:uppercase}
.row{display:contents}
.tile.correct{background:var(--tile-correct);color:#fff;border-color:#0e9f43}
.tile.present{background:var(--tile-present);color:#000;border-color:#c9a308}
.tile.absent{background:var(--tile-absent);color:#fff;border-color:#000}

/* Keyboard zone */
.keyboard-zone{padding:2px;box-sizing:border-box}
.keyboard{width:min(720px,100%);margin:0 auto;display:flex;flex-direction:column;gap:6px}
.krow{display:flex;justify-content:center;gap:6px}
.key{min-width:clamp(29px,5.5vw,46px);min-height:40px;padding:clamp(8px,1.2vh,12px) clamp(6px,1.2vw,12px);border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--fg);font-weight:800;text-transform:uppercase;cursor:pointer}
.key.wide{min-width:clamp(56px,10vw,88px)}
.key.correct{background:var(--tile-correct);color:#fff;border-color:#0e9f43}
.key.present{background:var(--tile-present);color:#000;border-color:#c9a308}
.key.absent{background:var(--tile-absent);color:#fff;border-color:#000}
.key.disabled{opacity:.45;cursor:not-allowed}

/* Toast + Results */
.toast{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);background:#111;color:#fff;padding:8px 12px;border-radius:10px;display:none;z-index:50}
.light .toast{background:#fff;color:#111}
.result{position:absolute;inset:8px;background:color-mix(in oklab,var(--card),transparent 10%);border:1px solid var(--border);border-radius:16px;padding:48px 12px 12px 12px;backdrop-filter:blur(6px);max-height:550px;overflow:auto;z-index:30}
.result-head{display:flex;align-items:center;gap:10px}
.mascot{font-size:34px}
.result-grid{white-space:pre;font-family:ui-monospace,Menlo,Consolas,monospace;padding:10px;border-radius:10px;border:1px solid var(--border);background:var(--surface);margin-top:8px}
.trivia ul{margin:6px 0 0 18px;padding:0}
.trivia li{color:var(--muted);margin-bottom:4px}
.result-close{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;border:1px solid rgba(255,255,255,.04);background:rgba(255,255,255,.05);color:inherit;cursor:pointer;font-size:16px;z-index:40;transition:background .12s,transform .08s}
.result-close:active{transform:translateY(1px)}
.result-close:focus{outline:3px solid rgba(99,102,241,.12);outline-offset:2px}
body.light .result-close{background:rgba(15,23,42,.06);border-color:rgba(15,23,42,.08)}

/* Theme modal */
.theme-modal-overlay{position:fixed;inset:0;background:rgba(11,11,18,.6);display:none;align-items:center;justify-content:center;z-index:60;padding:14px;-webkit-overflow-scrolling:touch}
.theme-modal-overlay.show{display:flex}
.theme-modal{width:100%;max-width:var(--site-max);box-sizing:border-box;background:var(--modal-bg);border-radius:12px;padding:14px;max-height:calc(100vh - 48px);overflow:auto;box-shadow:0 10px 30px rgba(0,0,0,.6);color:var(--text)}
.theme-modal .modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.theme-modal .modal-head h3{margin:0;font-size:1.05rem}
.theme-modal .theme-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}
.theme-modal .theme-list .chip{display:inline-flex;align-items:center;justify-content:center;padding:8px 10px;border-radius:999px;cursor:pointer;user-select:none;text-align:center}
.theme-modal .theme-list .chip.active{box-shadow:0 2px 0 rgba(255,255,255,.06) inset;transform:translateY(-1px)}
.theme-modal .chip:focus{outline:3px solid rgba(255,255,255,.12);outline-offset:2px}

/* Settings modal */
.settings-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(11,11,18,.55);z-index:9998;padding:14px;-webkit-overflow-scrolling:touch}
.settings-overlay.show{display:flex}
.settings-panel{width:100%;max-width:420px;background:var(--card-bg);border-radius:12px;padding:14px;box-shadow:0 10px 30px rgba(0,0,0,.5);color:var(--text);max-height:calc(100vh - 48px);overflow:auto}
.settings-panel .panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.settings-panel h3{margin:0;font-size:1rem}
.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 6px;border-radius:8px;margin-bottom:8px;background:rgba(255,255,255,.01)}
.switch{--w:44px;--h:24px;width:var(--w);height:var(--h);background:rgba(255,255,255,.06);border-radius:999px;position:relative;flex-shrink:0;cursor:pointer;border:1px solid rgba(255,255,255,.03)}
.switch .knob{width:calc(var(--h) - 6px);height:calc(var(--h) - 6px);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;transform:translateX(0);transition:transform .18s ease,background .18s;box-shadow:0 4px 10px rgba(2,6,23,.5)}
.switch.on{background:linear-gradient(90deg,#6b46c1 0%,#3b82f6 100%)}
.switch.on .knob{transform:translateX(calc(var(--w) - var(--h)));background:#fff}
.leaderboard{margin-top:8px;padding-top:6px;border-top:1px dashed rgba(255,255,255,.03)}
.lb-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 6px;border-radius:8px;margin-bottom:6px;background:rgba(255,255,255,.01);font-size:.95rem}
.lb-meta{color:rgba(255,255,255,.55);font-size:.85rem}
.lb-empty{padding:12px 6px;text-align:center;color:rgba(255,255,255,.45)}

.hidden{display:none}

/* ===== Responsive ===== */
@media (min-width:480px){
  .topbar{max-width:var(--site-max);margin:0 auto;padding:10px var(--side-padding)}
  .viewport > section{width:420px}
}
@media (min-width:768px){
  .brand{font-size:1.2rem}
  .viewport > section{width:420px}
}
@media (max-width:767px){
  .topbar{width:100%;padding:10px var(--side-padding)}
  .brand{font-size:1.05rem}
  .viewport > section{width:100%}
}
@media (max-width:479px){
  .center-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .center-tabs::-webkit-scrollbar{display:none}
  .viewport > section{width:100%}
}
@media (max-width:760px){
  .topbar{grid-template-columns:1fr auto 1fr;height:58px}
  .brand{font-size:15px}
  .viewport{height:calc(100vh - 58px);padding:8px 5px;gap:6px}
  .tema-bar{padding:6px}
  .board{width:min(82vw,460px)}
  .board .tile{border-radius:14px}
}
@media (max-width:420px){
  .settings-panel,.theme-modal{padding:10px;max-width:calc(100% - 24px);border-radius:10px}
  .icon-settings{width:36px;height:36px;font-size:16px}
  .result-close{width:32px;height:32px;top:8px;right:8px;font-size:14px;border-radius:7px}
  .viewport > section{width:100%}
}
@media (max-width:360px){
  .topbar{padding:10px}
  .viewport{padding:10px}
}

/* Stats Popup */
.stats-popup-overlay {
  position: fixed;
  inset: 0;
  background: rgba(11,11,18,0.85);
  backdrop-filter: blur(4px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  padding: 20px;
  animation: fadeIn 0.2s ease;
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

.stats-popup {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 24px;
  max-width: 480px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  position: relative;
  animation: slideUp 0.3s ease;
}

@keyframes slideUp {
  from { transform: translateY(20px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}

.stats-close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--border);
  color: var(--fg);
  cursor: pointer;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
}

.stats-close:hover {
  background: rgba(255,255,255,0.1);
  transform: scale(1.1);
}

.stats-result {
  text-align: center;
  margin-bottom: 20px;
}

.stats-emoji {
  font-size: 64px;
  margin-bottom: 12px;
}

.stats-result h2 {
  margin: 0 0 8px 0;
  color: var(--accent);
  font-size: 24px;
}

.stats-answer {
  color: var(--muted);
  margin: 0;
}

.stats-answer strong {
  color: var(--fg);
  font-size: 20px;
  letter-spacing: 2px;
}

.stats-trivia {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 20px;
}

.stats-trivia h4 {
  margin: 0 0 8px 0;
  font-size: 14px;
  color: var(--accent);
}

.stats-trivia p {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.6;
}

.stats-grid-preview {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 20px;
  font-family: ui-monospace, Menlo, Consolas, monospace;
  white-space: pre;
  text-align: center;
  font-size: 24px;
  line-height: 1.4;
}

.stats-section h3 {
  margin: 0 0 16px 0;
  font-size: 16px;
  text-align: center;
  color: var(--fg);
}

.stats-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 20px;
}

.stat-item {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 16px 8px;
  text-align: center;
}

.stat-value {
  font-size: 28px;
  font-weight: 700;
  color: var(--accent);
  margin-bottom: 4px;
}

.stat-label {
  font-size: 12px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.stats-share {
  margin-bottom: 16px;
}

.btn-share {
  width: 100%;
  padding: 14px;
  background: var(--accent);
  color: white;
  border: none;
  border-radius: 12px;
  font-weight: 700;
  font-size: 16px;
  cursor: pointer;
  transition: all 0.2s;
}

.btn-share:hover {
  background: var(--accent2);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(124,58,237,0.3);
}

.stats-footer {
  text-align: center;
  font-size: 13px;
  color: var(--muted);
  margin: 0;
}

/* Mobile responsive */
@media (max-width: 480px) {
  .stats-popup {
    padding: 20px;
    border-radius: 12px;
  }
  
  .stats-emoji {
    font-size: 48px;
  }
  
  .stats-result h2 {
    font-size: 20px;
  }
  
  .stats-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  
  .stat-value {
    font-size: 24px;
  }
  
  .stats-grid-preview {
    font-size: 20px;
  }
}
/* Copy Notification Popup */
.copy-notification {
  position: fixed;
  top: 80px;
  left: 50%;
  transform: translateX(-50%) translateY(-20px);
  z-index: 99999;
  opacity: 0;
  transition: all 0.3s ease;
  pointer-events: none;
}

.copy-notification.show {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.copy-notif-content {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 16px 20px;
  display: flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 10px 40px rgba(0,0,0,0.5);
  min-width: 280px;
}

.copy-icon {
  font-size: 32px;
  flex-shrink: 0;
}

.copy-text strong {
  display: block;
  font-size: 15px;
  margin-bottom: 4px;
  color: var(--fg);
}

.copy-text p {
  margin: 0;
  font-size: 13px;
  color: var(--muted);
}

/* Light mode */
.light .copy-notif-content {
  background: #ffffff;
  border-color: #e7e9f1;
  box-shadow: 0 10px 40px rgba(24,30,60,0.15);
}

/* Mobile responsive */
@media (max-width: 420px) {
  .copy-notification {
    top: 70px;
    left: 10px;
    right: 10px;
    transform: translateX(0) translateY(-20px);
  }
  
  .copy-notification.show {
    transform: translateX(0) translateY(0);
  }
  
  .copy-notif-content {
    min-width: auto;
    padding: 14px 16px;
  }
  
  .copy-icon {
    font-size: 28px;
  }
  
  .copy-text strong {
    font-size: 14px;
  }
  
  .copy-text p {
    font-size: 12px;
  }
}

/* Board zone - FLEXIBLE GRID */
.board-zone{display:grid;place-items:center;position:relative;padding:2px;box-sizing:border-box}
.board{
  --word-length: 5; /* default, akan diubah via JS */
  --pad:8px;
  display:grid;
  gap:var(--pad);
  grid-template-columns:repeat(var(--word-length),1fr);
  width:min(calc(var(--word-length) * 64px),90vw);
  max-width:520px;
}
.board .tile{
  aspect-ratio:1/1;
  border-radius:clamp(10px,2.5vw,18px);
  border:1px solid var(--border);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  font-size:clamp(16px,3.5vw,28px);
  background:var(--surface);
  color:var(--fg);
  text-transform:uppercase;
}
.row{display:contents}
.tile.correct{background:var(--tile-correct);color:#fff;border-color:#0e9f43}
.tile.present{background:var(--tile-present);color:#000;border-color:#c9a308}
.tile.absent{background:var(--tile-absent);color:#fff;border-color:#000}

/* Copy Notification Popup */
.copy-notification {
  position: fixed;
  top: 80px;
  left: 50%;
  transform: translateX(-50%) translateY(-20px);
  z-index: 99999;
  opacity: 0;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
}

.copy-notification.show {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.copy-notif-content {
  background: var(--card);
  border: 2px solid #10b981;
  border-radius: 12px;
  padding: 16px 20px;
  display: flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 10px 40px rgba(16,185,129,0.3);
  min-width: 280px;
}

.copy-icon {
  font-size: 32px;
  flex-shrink: 0;
  animation: scaleIn 0.3s ease;
}

@keyframes scaleIn {
  0% { transform: scale(0); }
  50% { transform: scale(1.2); }
  100% { transform: scale(1); }
}

.copy-text strong {
  display: block;
  font-size: 15px;
  margin-bottom: 4px;
  color: #10b981;
  font-weight: 700;
}

.copy-text p {
  margin: 0;
  font-size: 13px;
  color: var(--muted);
}

/* Light mode */
.light .copy-notif-content {
  background: #ffffff;
  border-color: #10b981;
  box-shadow: 0 10px 40px rgba(16,185,129,0.2);
}

/* Mobile responsive */
@media (max-width: 480px) {
  .copy-notification {
    top: 70px;
    left: 10px;
    right: 10px;
    transform: translateX(0) translateY(-20px);
  }
  
  .copy-notification.show {
    transform: translateX(0) translateY(0);
  }
  
  .copy-notif-content {
    min-width: auto;
    padding: 14px 16px;
  }
  
  .copy-icon {
    font-size: 28px;
  }
  
  .copy-text strong {
    font-size: 14px;
  }
  
  .copy-text p {
    font-size: 12px;
  }
}

/* Responsive board untuk kata panjang */
@media (max-width: 420px) {
  .board {
    /*width: min(calc(var(--word-length) * 52px), 95vw);*/
    /*--pad: 6px;*/
  }
  
  .board .tile {
    font-size: clamp(14px, 4vw, 24px);
    border-radius: clamp(8px, 2vw, 14px);
  }
}

@media (max-width: 360px) {
  .board {
    width: min(calc(var(--word-length) * 46px), 96vw);
    --pad: 5px;
  }
  
  .board .tile {
    font-size: clamp(12px, 4.5vw, 20px);
  }
}
/* Help Modal */
.help-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(11,11,18,0.9);
  backdrop-filter: blur(4px);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 99999;
  padding: 20px;
  animation: fadeIn 0.3s ease;
}

.help-modal-overlay.show {
  display: flex;
}

.help-modal {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 28px;
  max-width: 560px;
  width: 100%;
  max-height: 85vh;
  overflow-y: auto;
  position: relative;
  animation: slideUp 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 20px 60px rgba(0,0,0,0.5);
}

@keyframes slideUp {
  from { transform: translateY(30px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}

.help-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--border);
  color: var(--fg);
  cursor: pointer;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
}

.help-close:hover {
  background: rgba(255,255,255,0.1);
  transform: scale(1.1);
}

.help-header {
  text-align: center;
  margin-bottom: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--border);
}

.help-header h2 {
  margin: 0 0 8px 0;
  font-size: 28px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.help-subtitle {
  margin: 0;
  color: var(--muted);
  font-size: 15px;
}

.help-content {
  margin-bottom: 20px;
}

.help-section {
  margin-bottom: 20px;
}

.help-section h3 {
  font-size: 16px;
  margin: 0 0 12px 0;
  color: var(--accent);
}

.help-section ul {
  margin: 0;
  padding-left: 24px;
  color: var(--muted);
}

.help-section li {
  margin-bottom: 8px;
  line-height: 1.6;
}

.help-section li strong {
  color: var(--fg);
}

.help-examples {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.help-example {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 14px;
}

.example-row {
  display: flex;
  gap: 6px;
  margin-bottom: 10px;
  justify-content: center;
}

.example-tile {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  border: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 20px;
  background: var(--surface);
  color: var(--fg);
}

.example-tile.correct {
  background: var(--tile-correct);
  color: #fff;
  border-color: #0e9f43;
}

.example-tile.present {
  background: var(--tile-present);
  color: #000;
  border-color: #c9a308;
}

.example-tile.absent {
  background: var(--tile-absent);
  color: #fff;
  border-color: #000;
}

.help-example p {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
  text-align: center;
}

.help-example p strong {
  color: var(--fg);
}

.help-start-btn {
  width: 100%;
  padding: 16px;
  background: var(--grad);
  color: white;
  border: none;
  border-radius: 12px;
  font-weight: 700;
  font-size: 16px;
  cursor: pointer;
  transition: all 0.2s;
  box-shadow: 0 4px 12px rgba(124,58,237,0.3);
}

.help-start-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(124,58,237,0.4);
}

.help-start-btn:active {
  transform: translateY(0);
}

/* Mobile responsive */
@media (max-width: 480px) {
  .help-modal {
    padding: 20px;
    border-radius: 12px;
    max-height: 90vh;
  }
  
  .help-header h2 {
    font-size: 24px;
  }
  
  .help-subtitle {
    font-size: 14px;
  }
  
  .help-section h3 {
    font-size: 15px;
  }
  
  .help-section ul {
    padding-left: 20px;
    font-size: 14px;
  }
  
  .example-tile {
    width: 38px;
    height: 38px;
    font-size: 18px;
  }
  
  .help-example p {
    font-size: 13px;
  }
  
  .help-start-btn {
    padding: 14px;
    font-size: 15px;
  }
}

/* Smooth scrollbar for help modal */
.help-modal::-webkit-scrollbar {
  width: 8px;
}

.help-modal::-webkit-scrollbar-track {
  background: var(--surface);
  border-radius: 4px;
}

.help-modal::-webkit-scrollbar-thumb {
  background: var(--accent);
  border-radius: 4px;
}

.help-modal::-webkit-scrollbar-thumb:hover {
  background: var(--accent2);
}