:root{
  --tg-bg:#060b1f;
  --tg-text:#e7ecff;
  --tg-muted:#aab6d6;
  --tg-line:rgba(255,255,255,.16);
  --tg-glass:rgba(255,255,255,.12);
  --tg-glass-2:rgba(13,18,42,.56);
  --tg-ok:#34d399;
  --tg-err:#fb7185;
}
*{box-sizing:border-box}
body{
  margin:0;
  color:var(--tg-text);
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:
    radial-gradient(circle at 18% 18%, #6366f1 0, transparent 38%),
    radial-gradient(circle at 82% 15%, #ec4899 0, transparent 35%),
    radial-gradient(circle at 50% 85%, #14b8a6 0, transparent 30%),
    var(--tg-bg);
  min-height:100vh;
}
.tg-shell{max-width:1050px;margin:0 auto;padding:1rem}
.tg-card{
  border:1px solid var(--tg-line);
  border-radius:18px;
  background:var(--tg-glass);
  backdrop-filter:blur(16px);
  box-shadow:0 12px 34px rgba(2,6,23,.42);
  padding:1rem;
}
.tg-muted{color:var(--tg-muted)}
.tg-grid{display:grid;gap:.8rem}
.tg-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tg-full{grid-column:1/-1}
.tg-row{display:flex;gap:.6rem;flex-wrap:wrap}
.tg-input,.tg-textarea,.tg-select{
  width:100%;padding:.65rem .75rem;border-radius:12px;
  border:1px solid var(--tg-line);background:var(--tg-glass-2);color:var(--tg-text);
}
.tg-textarea{min-height:84px;resize:vertical}
.tg-bubble{
  border:0;border-radius:999px;padding:.72rem 1rem;font-weight:700;cursor:pointer;
  background:linear-gradient(90deg,#fb7185,#f59e0b,#22d3ee,#818cf8);
  color:#0f172a;
}
.tg-bubble-alt{
  border:1px solid var(--tg-line);border-radius:999px;padding:.65rem .95rem;cursor:pointer;
  background:rgba(30,41,59,.72);color:var(--tg-text);
}
.tg-choice{
  width:100%;text-align:left;border:1px solid var(--tg-line);
  border-radius:13px;padding:.72rem .82rem;background:rgba(30,41,59,.72);color:var(--tg-text);
}
.tg-play h1{font-size:clamp(2rem,4.2vw,2.8rem);line-height:1.05;margin:.1rem 0 .7rem}
.tg-play h2{font-size:clamp(1.45rem,3.1vw,2.2rem);line-height:1.2;margin:.55rem 0}
.tg-play h3{font-size:clamp(1.1rem,2.4vw,1.45rem);margin:.7rem 0 .45rem}
.tg-play .tg-muted,.tg-play .tg-pill{font-size:1.03rem}
.tg-play .tg-card{border-radius:22px}
.tg-play #answer_form .tg-grid{gap:.9rem}
.tg-play #answer_form .tg-choice{
  min-height:78px;
  font-size:clamp(1.05rem,2.4vw,1.35rem);
  font-weight:800;
  letter-spacing:.01em;
  border:0;
  border-radius:16px;
  color:#ffffff;
  cursor:pointer;
  box-shadow:
    inset 0 -4px 0 rgba(0,0,0,.22),
    0 6px 0 rgba(0,0,0,.26),
    0 14px 28px rgba(0,0,0,.24);
  transition:transform .08s ease, box-shadow .08s ease, filter .08s ease;
}
.tg-play #answer_form .tg-choice:hover{filter:brightness(1.05)}
.tg-play #answer_form .tg-choice:active{
  transform:translateY(3px);
  box-shadow:
    inset 0 -2px 0 rgba(0,0,0,.2),
    0 2px 0 rgba(0,0,0,.2),
    0 8px 18px rgba(0,0,0,.2);
}
.tg-play #answer_form .tg-choice:nth-child(4n+1){background:linear-gradient(180deg,#ef4444,#dc2626)}
.tg-play #answer_form .tg-choice:nth-child(4n+2){background:linear-gradient(180deg,#3b82f6,#1d4ed8)}
.tg-play #answer_form .tg-choice:nth-child(4n+3){background:linear-gradient(180deg,#f59e0b,#d97706)}
.tg-play #answer_form .tg-choice:nth-child(4n+4){background:linear-gradient(180deg,#22c55e,#16a34a)}
.tg-play .tg-bubble,.tg-play .tg-bubble-alt{
  min-height:54px;
  font-size:1.03rem;
  font-weight:800;
}
.tg-play .tg-bubble-alt{
  border:0;
  color:#fff;
  background:linear-gradient(180deg,#334155,#1e293b);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.22),0 5px 0 rgba(0,0,0,.24);
}
.tg-status{padding:.65rem .8rem;border-radius:12px}
.tg-status-ok{border:1px solid rgba(52,211,153,.45);background:rgba(52,211,153,.14)}
.tg-status-err{border:1px solid rgba(251,113,133,.45);background:rgba(251,113,133,.14)}
.tg-table{width:100%;border-collapse:collapse}
.tg-table th,.tg-table td{padding:.55rem .6rem;border-bottom:1px solid var(--tg-line);text-align:left}
.tg-pill{display:inline-block;padding:.2rem .55rem;border-radius:999px;border:1px solid var(--tg-line)}
@media (max-width:860px){.tg-grid-2{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

