/* 井字棋 */
.tt-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .8rem}
.tt-opt{display:flex;align-items:center;gap:.4rem}
.tt-opt label{margin:0;color:#8a9199;font-size:.8125rem}
.tt-opt .form-select{width:auto}
.tt-switch{margin:0;padding-left:2.4rem}
.tt-switch .form-check-label{font-size:.8125rem;color:#5b6675}

.tt-stage{display:flex;justify-content:center;margin-top:.9rem}
.tt-board{position:relative;width:100%;max-width:26rem;aspect-ratio:1/1;border-radius:.8rem;overflow:hidden;
  background:linear-gradient(160deg,#ffffff,#eef3f9);box-shadow:0 10px 26px rgba(15,23,42,.14);
  user-select:none;-webkit-user-select:none;touch-action:manipulation;cursor:pointer;-webkit-tap-highlight-color:transparent}
.tt-board canvas{display:block;width:100%;height:100%}
.tt-overlay{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:.5rem;padding:1rem;text-align:center;color:#fff;background:rgba(15,23,42,.7);transition:opacity .18s ease-out}
.tt-overlay.is-off{opacity:0;pointer-events:none}
.tt-overlay-title{font-size:1.3rem;font-weight:700}
.tt-overlay-sub{max-width:19rem;font-size:.8125rem;line-height:1.65;color:rgba(255,255,255,.82)}
.tt-overlay .btn{--bd-btn-padding-y:.3rem}
@media (max-width:400px){.tt-overlay-sub{font-size:.75rem}}

.tt-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin-top:.9rem}
.tt-stat{padding:.5rem .35rem;border:1px solid #eef1f5;border-radius:.6rem;background:#fafbfd;text-align:center}
.tt-stat b{display:block;color:var(--site-primary,#0284c7);font-size:1.15rem;line-height:1.3;font-variant-numeric:tabular-nums}
.tt-stat span{display:block;margin-top:.1rem;color:#8a9199;font-size:.6875rem}

.tt-help{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}
.tt-help-item{padding:.65rem .75rem;border:1px solid #eef1f5;border-radius:.6rem;background:#fafbfd}
.tt-help-item b{display:block;margin-bottom:.25rem;color:#1f2d3d;font-size:.875rem}
.tt-help-item b i{color:var(--site-primary,#0284c7)}
.tt-help-item span{display:block;color:#66707d;font-size:.8125rem;line-height:1.7}
