*{box-sizing:border-box}body{margin:0;background:linear-gradient(#bfeaff,#eaf9ff 45%,#f1e5bd);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#123b58;min-height:100vh}button,input,select{font:inherit}header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#063d69;color:#fff;border-bottom:3px solid #e7bd55;font-weight:900}header a{color:#fff;text-decoration:none;font-size:22px}main{max-width:820px;margin:auto;padding:14px}.card{background:#fff8e4;border:3px solid #77532f;border-radius:24px;padding:18px;box-shadow:0 9px 25px #173d5528,inset 0 0 0 3px #fff9}.join-card{display:grid;grid-template-columns:150px 1fr;gap:12px;align-items:center}.join-card>img{width:165px;align-self:end;filter:drop-shadow(0 10px 9px #1235)}.join-card h1{font-size:clamp(30px,6vw,52px);margin:4px 0;color:#073f6a}.join-card p{margin:0;font-weight:750}.eyebrow{color:#ad671c;font-weight:1000;font-size:11px;letter-spacing:.12em}.join-fields{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px}label{font-size:11px;font-weight:1000;color:#5f7480;text-transform:uppercase}input,select{display:block;width:100%;margin-top:5px;padding:13px;border:2px solid #80a4b8;border-radius:12px;background:#fff;color:#173b52;font-weight:900}#join{grid-column:1/-1;border:0;border-radius:14px;padding:15px;background:linear-gradient(#5feb9f,#1eb86e);box-shadow:0 6px 0 #137b4c;color:#063c28;font-weight:1000;font-size:20px}.message{grid-column:1/-1;font-weight:850;color:#7b5413}.play-card{padding:12px}.play-top{display:flex;justify-content:space-between;align-items:center;background:#073e68;color:#fff;padding:10px 13px;border-radius:14px}.play-top small{display:block;color:#bfe5f6}.play-top strong{font-size:22px;margin-right:8px}.play-top span{color:#d9f4ff;font-weight:800}.phase{background:#0b8256!important;color:#fff!important;padding:9px 12px;border-radius:10px;font-weight:1000}.problem-shell{margin-top:10px;background:#0b4b74;color:#fff;border-radius:18px;padding:15px;border:3px solid #2a769e}.problem-shell>span{font-size:11px;color:#9ce5bd;font-weight:1000;letter-spacing:.1em}.problem{font-size:20px}.problem-shell #problem{font-size:clamp(28px,7vw,52px);font-weight:1000;line-height:1.05;margin:10px 0 14px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:9px}.answers button{border:2px solid #92c8df;background:#eaf8ff;color:#0c4567;border-radius:13px;padding:13px;font-size:clamp(17px,4vw,24px);font-weight:1000}.answers button:disabled{opacity:.45}.answers button.chosen{outline:4px solid #ffe37a;background:#fff1b4}.answer-state{text-align:center;margin-top:10px;font-weight:900;color:#ffe58b}.scratch{margin-top:10px;background:#f6ead0;border:2px solid #87653b;border-radius:16px;overflow:hidden}.scratch-head{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:#e5cf9e}.scratch-head button{border:0;border-radius:8px;padding:5px 9px;background:#fff;color:#5f4a2a;font-weight:900}.scratch canvas{display:block;width:100%;height:230px;background:#fff;touch-action:none}.team-strip{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px;background:#fff1ba;border-radius:13px;padding:8px;font-weight:1000}.team-strip strong{font-size:28px;color:#a66b11}.team-strip span:last-child{margin-left:auto;color:#647783}footer{text-align:center;padding:10px 14px 25px;font-weight:850;color:#486270}@media(max-width:560px){main{padding:8px}.join-card{grid-template-columns:95px 1fr;padding:12px}.join-card>img{width:105px}.join-fields{grid-template-columns:1fr}.answers{grid-template-columns:1fr 1fr}.scratch canvas{height:190px}}
.event-strip{margin-top:9px;text-align:center;padding:7px 10px;border-radius:10px;background:#fff1b6;border:1px solid #d7af49;color:#6e4f0a;font-weight:1000;font-size:12px;letter-spacing:.07em}.problem-shell.waiting-turn{background:#5c6f79;border-color:#91a4ae}.problem-shell.spectating{background:#5b526d;border-color:#978aaf}.problem-shell.recovery{box-shadow:0 0 0 4px #f2c94c55}.team-strip .advance{color:#0c7d4f!important;font-weight:1000}

/* v25.5 — phone-fit live student round */
html,body{width:100%;max-width:100%;overflow-x:hidden}body{min-height:100dvh}
main,.card,.play-card,.join-card,.problem-shell,.scratch,.team-strip{width:100%;max-width:100%;min-width:0}
.student-help-link{grid-column:1/-1;display:block;text-align:center;text-decoration:none;background:#e6f5ff;border:2px solid #83b4cc;color:#0b5d83;border-radius:12px;padding:10px;font-weight:1000}
@media(max-width:560px){
  header{padding:8px 10px;gap:7px;align-items:flex-start;flex-wrap:wrap;font-size:11px}header a{font-size:18px}
  main{padding:6px}
  .card{border-width:2px;border-radius:17px;box-shadow:0 5px 14px #173d5522}
  .join-card{grid-template-columns:76px minmax(0,1fr);padding:9px;gap:8px}.join-card>img{width:82px;max-width:100%}.join-card h1{font-size:29px}.join-card p{font-size:13px}
  .join-fields{gap:6px}input,select{font-size:16px;padding:10px;margin-top:3px}#join{font-size:17px;padding:12px}
  .play-card{padding:6px}
  .play-top{padding:7px 8px;border-radius:10px;gap:6px;min-width:0}.play-top>div{min-width:0}.play-top strong{display:inline-block;max-width:58vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px}.play-top span{font-size:11px}.play-top small{font-size:9px}.phase{padding:6px 7px;font-size:10px;white-space:nowrap}
  .event-strip{margin-top:5px;padding:5px 7px;font-size:9px;letter-spacing:.035em}
  .problem-shell{margin-top:6px;border-radius:12px;padding:9px;border-width:2px}.problem-shell>span{font-size:9px}.problem-shell #problem{font-size:clamp(23px,9vw,38px);line-height:1.02;margin:6px 0 8px;overflow-wrap:anywhere}
  .answers{gap:6px}.answers button{min-width:0;padding:9px 6px;font-size:clamp(15px,5vw,20px);border-radius:10px;overflow-wrap:anywhere}.answer-state{margin-top:6px;font-size:11px}
  .scratch{margin-top:6px;border-radius:11px}.scratch-head{padding:5px 7px;font-size:10px}.scratch-head button{padding:4px 7px;font-size:10px}.scratch canvas{height:132px!important;max-height:22dvh}
  .team-strip{gap:7px;margin-top:6px;padding:6px;font-size:10px;flex-wrap:wrap}.team-strip strong{font-size:22px}.team-strip span:last-child{margin-left:auto}
  footer{padding:7px 8px 14px;font-size:10px}
}
@media(max-width:380px){.answers{grid-template-columns:1fr}.scratch canvas{height:110px!important}.join-card{grid-template-columns:64px minmax(0,1fr)}.join-card>img{width:70px}.join-card h1{font-size:25px}}
@media(max-height:700px) and (max-width:560px){.scratch canvas{height:92px!important}.problem-shell #problem{font-size:clamp(21px,7vw,32px)}.play-top{padding:5px 7px}.event-strip{display:none}}
@media(orientation:landscape) and (max-height:520px){main{max-width:100%;padding:4px}.scratch canvas{height:70px!important}.problem-shell #problem{font-size:24px}.play-top,.problem-shell{padding:6px}.event-strip{display:none}}
