.additional-game { width:min(100%,720px); margin:auto; padding:20px; text-align:center; }
.additional-game h2 { margin:12px 0; font-size:clamp(23px,4vw,34px); color:#64102b; }
.additional-help { max-width:560px; margin:12px auto 22px; color:#555d66; line-height:1.6; }
.additional-actions { display:flex; justify-content:center; gap:14px; flex-wrap:wrap; }
.balloon-stage { display:grid; place-items:center; height:240px; overflow:hidden; border-radius:20px; background:radial-gradient(ellipse at 50% 75%,#f6d6df,transparent 65%),linear-gradient(135deg,#faf6ed,#f1e4e7); }
.risk-balloon { display:grid; place-items:center; width:130px; height:155px; border-radius:50% 50% 46% 46%; color:#fff; font-size:34px; font-weight:800; background:radial-gradient(circle at 30% 26%,#ed97b1,#b21f4b 60%,#64102b); box-shadow:inset -10px -12px 20px #64102b55,0 18px 24px #8b153822; transition:transform .16s; }
.risk-balloon.is-burst { border-radius:8px; background:#64102b; transform:rotate(-8deg) scale(.85)!important; }
.balloon-score { font-weight:700; color:#64102b; }
.corsi-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; width:min(100%,380px); margin:0 auto; }
.corsi-tile { aspect-ratio:1; border:2px solid #38566b; border-radius:16px; background:#294556; color:#fff; font:700 23px inherit; cursor:pointer; transition:background .08s,box-shadow .08s; }
.corsi-tile:disabled { opacity:1; cursor:default; }
.corsi-tile.is-lit { background:#ffc857; color:#1d303c; border-color:#ffdb86; box-shadow:0 0 0 5px #ffc85744,0 0 24px #ffc85777; }
.corsi-tile.is-chosen { background:#19736c; }
.rotation-reference { display:flex; align-items:center; justify-content:center; gap:24px; margin:18px auto; color:#64102b; letter-spacing:.12em; font-size:12px; }
.shape-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:4px; width:108px; height:108px; }
.shape-cell { border-radius:3px; background:#e9e5df; }
.shape-cell.is-on { background:#1d625e; box-shadow:inset 0 -3px 0 #123d3b44; }
.rotation-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; max-width:440px; margin:auto; }
.rotation-option { display:flex; align-items:center; flex-direction:column; gap:14px; padding:16px; border:2px solid #d4ccc2; border-radius:18px; background:#fffdfa; cursor:pointer; }
.rotation-option:hover:not(:disabled) { border-color:#8b1538; background:#faf0f2; }
.option-label { padding:4px 22px; border-radius:20px; background:#64102b; color:#fff; font-weight:800; }
.rotation-countdown { height:7px; border-radius:7px; background:#e4ddd4; margin:24px auto 0; max-width:440px; overflow:hidden; }
.rotation-countdown>span { display:block; width:100%; height:100%; background:#8b1538; }
.game-tone-5 { background:linear-gradient(135deg,#f2dce3,#e8b8c8); }
.game-tone-6 { background:linear-gradient(135deg,#deefed,#93b9b5); }
.game-tone-7 { background:linear-gradient(135deg,#e1eaf3,#abbfd4); }
.additional-game button:focus-visible { outline:3px solid #c58a19; outline-offset:4px; }
@media(max-width:480px) {
  .additional-game { padding:12px 4px; }
  .corsi-grid { gap:10px; }
  .rotation-options { gap:10px; }
  .rotation-option { padding:12px 6px; }
  .shape-grid { width:90px; height:90px; }
  .rotation-reference { gap:18px; }
  .balloon-stage { height:220px; }
}
@media(prefers-reduced-motion:reduce) { .risk-balloon,.corsi-tile { transition:none; } }
