.brand-logo{width:54px;height:54px;object-fit:contain;filter:drop-shadow(0 6px 16px #0008)}
.top-actions{display:flex;align-items:center;gap:16px}
.sound-toggle{display:inline-flex;align-items:center;gap:9px;border:1px solid #d8aa3d66;background:#161a2dcc;color:#fff7d6;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 10px 28px #0004}
.sound-toggle:hover{border-color:#f0d677;background:#211f35}
.sound-toggle.playing{background:linear-gradient(135deg,#f0d677,#b8892e);color:#1d1736}
.sound-icon{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#ffffff18;font-size:14px;line-height:1}
.sound-toggle.playing .sound-icon{background:#1d17361f}
.brand-icon{display:none!important}
.topbar{position:relative}
.topbar:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,#d8aa3d66,transparent)}
.ambient-a{background:#5c4aaa!important}
.ambient-b{background:#d8aa3d!important;opacity:.18!important}
.hero h1 em,.eyebrow,.kicker{color:#d9c06f!important}
.primary-btn{background:linear-gradient(135deg,#f0d677,#b8892e)!important;color:#1d1736!important;box-shadow:0 14px 36px #d8aa3d22}
.stat,.board,.podium-card{border-color:#d8aa3d33!important}
.stat strong,.score-value{color:#fff7d6}
.rank-pill.top{background:#d8aa3d24!important;color:#f0d677!important}
.mini-avatar{background:#5b4aa2!important}
.student-row:focus-visible{box-shadow:inset 4px 0 0 #d8aa3d!important}
.student-row:focus-visible .student-cell strong,.student-row:hover .student-cell strong{color:#f0d677!important}
.podium-card{cursor:pointer;outline:0}
.podium-card:focus-visible{box-shadow:0 0 0 3px #fff7d6,0 0 0 7px #d8aa3d}
.podium-card .winner-label{margin:0 0 8px;font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.podium-card.rank-1{background:linear-gradient(160deg,#5b4219,#201726 72%)!important;border-color:#f0d677!important}
.podium-card.rank-1:before{background:#f0d67733!important}
.podium-card.rank-1 .avatar{background:#f0d677;color:#241707}
.podium-card.rank-1 .winner-label,.podium-card.rank-1 .podium-score{color:#ffe69a}
.podium-card.rank-2{background:linear-gradient(160deg,#3c4656,#1a2034 72%)!important;border-color:#c9d1dd!important}
.podium-card.rank-2 .avatar{background:#d8dee8;color:#202838}
.podium-card.rank-2 .winner-label,.podium-card.rank-2 .podium-score{color:#eef3fb}
.podium-card.rank-3{background:linear-gradient(160deg,#59331f,#1b2034 72%)!important;border-color:#c98248!important}
.podium-card.rank-3 .avatar{background:#d99a63;color:#29150c}
.podium-card.rank-3 .winner-label,.podium-card.rank-3 .podium-score{color:#ffc69b}
.modal-backdrop{display:block!important;overflow-y:auto!important;align-items:start!important;place-items:start center!important;-webkit-overflow-scrolling:touch}
.modal-backdrop[hidden]{display:none!important}
.modal-panel{box-sizing:border-box;margin:24px auto!important}
.report-panel{width:min(760px,calc(100vw - 24px))!important;max-height:none!important;overflow:visible!important}
.confirm-panel{margin:24px auto!important}
.report-card{width:100%;max-width:100%;overflow:hidden;box-sizing:border-box}
.report-border{box-sizing:border-box}
.report-note,.report-student strong,.report-grid strong,.report-head h2{overflow-wrap:anywhere}
.report-card.report-champion{background:#fff4d1}
.report-card.report-champion .report-border{border-color:#38260a;box-shadow:inset 0 0 0 3px #d8aa3d}
.report-card.report-silver{background:#f2f5f8}
.report-card.report-silver .report-border{border-color:#26313f;box-shadow:inset 0 0 0 3px #c9d1dd}
.report-card.report-bronze{background:#fff0e4}
.report-card.report-bronze .report-border{border-color:#3b2115;box-shadow:inset 0 0 0 3px #c98248}
.report-card.report-standard{background:#f1edff}
.report-card.report-standard .report-border{border-color:#25204e;box-shadow:inset 0 0 0 3px #6b5bb8}
.report-card.report-champion .report-grid div{background:#fff9df;border-color:#d8aa3d}
.report-card.report-silver .report-grid div{background:#f8fafc;border-color:#c9d1dd}
.report-card.report-bronze .report-grid div{background:#fff6ee;border-color:#c98248}
.report-card.report-standard .report-grid div{background:#f8f6ff;border-color:#6b5bb8}

@media(max-width:700px){
  .brand-logo{width:48px;height:48px}
  .top-actions{margin-left:auto}
  .sound-toggle{padding:9px 11px}
  .sound-text{display:none}
  .topbar{gap:14px;overflow:hidden}
  .session{display:none!important}
  .hero p{max-width:310px!important}
  .hero-actions{align-items:flex-start}
  .note{max-width:130px;line-height:1.45}
  body.modal-open{overflow:hidden!important}
  .modal-backdrop{inset:0!important;padding:0!important}
  .modal-panel{width:100%!important;max-width:none!important;max-height:none!important;min-height:100dvh!important;margin:0!important;border-radius:0!important;border-left:0!important;border-right:0!important;box-shadow:none!important}
  .icon-close{position:fixed!important;top:10px!important;right:10px!important;z-index:2}
  .confirm-panel{display:flex!important;flex-direction:column!important;justify-content:center!important;padding:72px 20px 34px!important;text-align:center!important}
  .modal-logo{width:74px!important;height:74px!important;margin-inline:auto}
  .modal-copy{max-width:32ch!important}
  .report-panel{display:flex!important;flex-direction:column!important;padding:10px!important;background:#ede5d4!important;overflow-x:hidden!important}
  .report-card{padding:8px!important;margin-top:42px!important;flex:none!important;width:100%!important;max-width:100%!important;overflow:hidden!important}
  .report-border{padding:16px!important;min-height:auto!important;width:100%!important;max-width:100%!important;overflow:hidden!important}
  .report-head{gap:12px!important;padding-bottom:18px!important;align-items:center!important;text-align:center!important;flex-direction:column!important}
  .report-head img{width:68px!important;height:68px!important}
  .report-head p{font-size:9px!important;letter-spacing:.12em!important}
  .report-head h2{font-size:24px!important;line-height:1.05!important}
  .report-head span{font-size:12px!important}
  .report-student{padding:24px 0 18px!important}
  .report-student strong{font-size:32px!important;line-height:1.08!important;overflow-wrap:anywhere}
  .report-student small{font-size:13px!important}
  .report-grid{grid-template-columns:1fr!important;gap:10px!important}
  .report-grid div{min-height:88px!important;padding:14px 10px!important}
  .report-grid span{font-size:10px!important}
  .report-grid strong{font-size:26px!important;margin-top:8px!important}
  .report-note{width:min(100%,30ch)!important;margin:20px auto!important;font-size:12px!important;line-height:1.55!important}
  .report-signoff{flex-direction:column;text-align:center}
  .report-actions{position:static!important;background:#ede5d4;padding:8px 0 4px!important;margin-top:12px!important}
  .modal-actions .primary-btn,.modal-actions .ghost-btn{width:100%;justify-content:center}
  .podium{grid-template-columns:1fr!important}
  .podium-card,.podium-card.first{min-height:auto!important}
  .podium-card.first{order:-1}
  .podium-card.second{order:0}
  .podium-card.third{order:1}
  .student-row td{padding-top:14px;padding-bottom:14px}
}

@media(max-width:380px){
  .report-panel{padding:8px!important}
  .report-card{padding:6px!important}
  .report-border{padding:14px!important}
  .report-student strong{font-size:28px!important}
  .report-grid strong{font-size:24px!important}
  .modal-actions{gap:8px!important}
}
