/* ═══ Mini-jeu Morpion « Détendez-vous » — TOUT est scopé sous #ttt-overlay ═══
   Aucun sélecteur d'élément global (pas de table/td) : ne peut pas affecter le site. */
#ttt-overlay .ttt-modal{background:var(--paper);border-radius:20px;max-width:380px;width:100%;margin:auto;box-shadow:var(--shadow-lg);overflow:hidden;align-self:center;display:flex;flex-direction:column;max-height:calc(100dvh - 24px)}
#ttt-overlay .ttt-head{background:var(--ink);color:var(--paper);padding:16px 22px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
#ttt-overlay .ttt-title{font-family:var(--serif);font-size:20px}
#ttt-overlay .ttt-close{background:transparent;border:1px solid rgba(246,242,234,.3);color:var(--paper);width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:18px;line-height:1;flex-shrink:0}
#ttt-overlay .ttt-close:hover{background:rgba(246,242,234,.12)}
#ttt-overlay .ttt-body{padding:20px 22px;display:flex;flex-direction:column;align-items:center;gap:14px;overflow-y:auto;flex:1}
#ttt-overlay .ttt-status{font-family:var(--mono);font-size:12px;letter-spacing:.4px;color:var(--muted-2);min-height:18px;text-align:center}
#ttt-overlay .ttt-board{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
#ttt-overlay .ttt-cell{width:min(24vw,86px);height:min(24vw,86px);display:flex;align-items:center;justify-content:center;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",var(--serif);font-size:min(13vw,50px);line-height:1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:color-mix(in srgb,var(--accent) 8%,var(--paper-2));border:1px solid var(--line);border-radius:14px;cursor:pointer;user-select:none;-webkit-user-select:none;transition:background .15s,transform .08s}
#ttt-overlay .ttt-cell:hover{background:color-mix(in srgb,var(--accent) 16%,var(--paper-2))}
#ttt-overlay .ttt-cell:active{transform:scale(.96)}
#ttt-overlay .ttt-cell.ttt-filled{cursor:default}
#ttt-overlay .ttt-cell.ttt-filled:hover{background:color-mix(in srgb,var(--accent) 8%,var(--paper-2))}
#ttt-overlay .ttt-cell.ttt-x{color:var(--accent)}
#ttt-overlay .ttt-cell.ttt-o{color:var(--coral)}
#ttt-overlay .ttt-scores{display:flex;gap:10px;width:100%;justify-content:center;margin-top:2px}
#ttt-overlay .ttt-score{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:74px;padding:9px 8px;border-radius:13px;background:color-mix(in srgb,var(--accent) 9%,var(--paper-2));border:1px solid var(--line)}
#ttt-overlay .ttt-score b{font-family:var(--serif);font-size:24px;line-height:1;color:var(--accent);font-variant-numeric:tabular-nums}
#ttt-overlay .ttt-score i{font-family:var(--mono);font-size:9.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);font-style:normal;white-space:nowrap}
#ttt-overlay .ttt-reset{font-family:var(--mono);font-size:11px;letter-spacing:.6px;text-transform:uppercase;padding:9px 20px;border-radius:999px;cursor:pointer;background:var(--accent);color:#fff;border:none;transition:filter .15s,transform .15s}
#ttt-overlay .ttt-reset:hover{filter:brightness(1.08);transform:translateY(-1px)}
#ttt-overlay .ttt-clear{margin-top:-6px;font-family:var(--mono);font-size:10px;letter-spacing:.4px;color:var(--muted);background:transparent;border:none;cursor:pointer;opacity:.7;transition:opacity .15s,color .15s}
#ttt-overlay .ttt-clear:hover{opacity:1;color:var(--coral)}
#ttt-overlay .ttt-modes{display:flex;gap:4px;padding:4px;border-radius:999px;background:color-mix(in srgb,var(--accent) 9%,var(--paper-2));border:1px solid var(--line)}
#ttt-overlay .ttt-mode{font-family:var(--mono);font-size:11px;letter-spacing:.5px;text-transform:uppercase;padding:8px 14px;border-radius:999px;border:none;background:transparent;color:var(--muted-2);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}
#ttt-overlay .ttt-mode:hover{color:var(--ink)}
#ttt-overlay .ttt-mode.on{background:var(--accent);color:#fff}
