.corsi-shell{width:min(1080px,calc(100% - 32px))}.game-card{overflow:hidden;border:3px solid var(--ink);border-radius:5px;background:var(--panel);box-shadow:10px 10px 0 var(--shadow)}.game-heading{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:end;padding:30px 34px;border-bottom:3px solid var(--ink)}.game-heading .eyebrow{margin:0 0 10px;color:var(--gold);font-weight:800;letter-spacing:.12em}.game-heading h1{max-width:850px;margin:0;font-size:clamp(2rem,6vw,4.35rem);line-height:.95}.lede{max-width:720px;margin:18px 0 0;color:var(--muted);line-height:1.6}.progress-box{min-width:150px;padding:16px;border:2px solid var(--line);border-radius:5px;background:#0a2026;text-align:center}.progress-box>span,.stat>span{display:block;margin-bottom:7px;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.1em}.progress-box strong{color:var(--gold);font-size:1.55rem}
.mode-panel{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:2px solid var(--line);background:#0a2026}.mode-switch{display:flex;flex:0 0 auto;gap:6px}.mode-switch button{padding:10px 14px;border:2px solid var(--line);border-radius:5px;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.mode-switch button[aria-pressed="true"]{border-color:var(--gold);background:var(--gold);color:var(--night)}.mode-switch button:disabled{cursor:not-allowed;opacity:.65}.mode-description{margin:0;color:var(--muted);font-size:.84rem;line-height:1.45;text-align:right}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:3px solid var(--ink)}.stat{min-width:0;padding:18px 10px;border-right:2px solid var(--line);text-align:center}.stat:last-child{border-right:0}.stat strong{font-size:clamp(1.02rem,2.8vw,1.5rem)}
.corsi-stage{display:flex;min-height:800px;flex-direction:column;align-items:center;padding:28px 28px 34px;background:linear-gradient(rgba(88,199,215,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(88,199,215,.04) 1px,transparent 1px),radial-gradient(circle at 50% 43%,#173b45 0,transparent 62%);background-size:24px 24px,24px 24px,auto}.stage-copy{min-height:170px;text-align:center}.stage-kicker{margin:0 0 9px;color:var(--gold);font-size:.78rem;font-weight:800;letter-spacing:.14em}.stage-copy h2{margin:0;font-size:clamp(1.5rem,5vw,2.5rem)}.stage-copy>p:not(.stage-kicker){max-width:680px;margin:10px auto 0;color:var(--muted);line-height:1.5}.result-flash{display:flex;gap:10px;align-items:baseline;justify-content:center;margin-top:11px}.result-flash[hidden]{display:none}.result-flash strong{font-size:1.35rem}.result-flash span{color:var(--muted);font-size:.78rem}.corsi-stage[data-result="correct"] .result-flash strong{color:var(--green)}.corsi-stage[data-result="wrong"] .result-flash strong{color:var(--red)}
.timing-wrap{width:min(780px,100%);margin-bottom:17px}.timing-wrap[hidden]{display:none}.timing-labels{display:flex;justify-content:space-between;margin-bottom:8px;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.1em}.timing-labels strong{color:var(--gold)}.timing-track{height:19px;overflow:hidden;border:3px solid var(--ink);border-radius:5px;background:#0a2026}.timing-fill{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--green),var(--gold),var(--orange));transform:scaleX(1);transform-origin:left center;will-change:transform}
.corsi-board{position:relative;width:min(780px,100%);height:440px;border:4px solid var(--ink);border-radius:5px;background:#0a2026;box-shadow:8px 8px 0 var(--shadow);outline:none}.corsi-board::before{position:absolute;inset:10px;border:1px dashed rgba(88,199,215,.16);content:"";pointer-events:none}.corsi-block{position:absolute;display:grid;width:17%;height:18%;place-items:center;border:3px solid var(--ink);border-radius:5px;background:#24505a;color:#d8f2ef;box-shadow:5px 5px 0 var(--shadow);cursor:pointer;font:inherit;font-weight:900;touch-action:manipulation;transition:filter 90ms ease,transform 90ms ease,box-shadow 90ms ease}.corsi-block span{opacity:.8}.corsi-block:disabled{cursor:default}.corsi-block:not(:disabled):hover{filter:brightness(1.18)}.corsi-block:focus-visible{z-index:4;outline:4px solid var(--blue);outline-offset:3px}.corsi-block.is-lit{z-index:3;border-color:#fff6d6;background:var(--gold);color:var(--night);box-shadow:0 0 0 5px rgba(247,201,72,.26),7px 7px 0 var(--shadow);filter:brightness(1.2);transform:scale(1.06)}.corsi-block.is-pressed{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--shadow);filter:brightness(1.35)}.corsi-block.is-wrong{border-color:#fff6d6;background:var(--red)}.block-1{top:7%;left:6%}.block-2{top:4%;left:40%}.block-3{top:13%;left:75%}.block-4{top:35%;left:18%}.block-5{top:33%;left:52%}.block-6{top:47%;left:77%}.block-7{top:68%;left:5%}.block-8{top:72%;left:39%}.block-9{top:73%;left:69%}.board-status{position:absolute;bottom:12px;left:50%;z-index:5;padding:6px 9px;border:2px solid var(--line);border-radius:5px;background:rgba(7,26,31,.93);color:var(--muted);font-size:.66rem;font-weight:900;letter-spacing:.08em;transform:translateX(-50%);white-space:nowrap;pointer-events:none}.corsi-stage[data-state="playback"] .corsi-board{border-color:var(--blue)}.corsi-stage[data-state="input"] .corsi-board{border-color:var(--gold)}.corsi-stage[data-state="input"] .board-status{border-color:var(--gold);color:var(--gold)}
.primary-button{min-width:min(420px,100%);margin-top:26px;padding:16px 22px;border:3px solid var(--ink);border-radius:5px;background:var(--gold);color:var(--night);box-shadow:5px 5px 0 var(--shadow);font:inherit;font-weight:900;cursor:pointer}.primary-button[hidden]{display:none}.control-note{max-width:760px;margin:18px auto 0;color:var(--muted);font-size:.8rem;line-height:1.55;text-align:center}.mode-switch button:focus-visible,.primary-button:focus-visible,.related-links a:focus-visible,.faq-list summary:focus-visible{outline:4px solid var(--blue);outline-offset:4px}
.content-section{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.4fr);gap:54px;padding:82px 12px 56px}.section-kicker{margin:0 0 10px;color:var(--gold);font-size:.78rem;font-weight:800;letter-spacing:.14em}.content-heading h2,.info-panel h2,.faq-section h2,.related-section h2{margin:0;line-height:1.15}.steps-list{display:grid;gap:14px;margin:0;padding:0;list-style:none}.steps-list li{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:18px;border:2px solid var(--line);border-radius:5px;background:var(--panel)}.steps-list li>span{color:var(--gold);font-weight:900}.steps-list p{margin:0;color:var(--muted);line-height:1.55}.reading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.info-panel{padding:28px;border:2px solid var(--line);border-radius:5px;background:var(--panel)}.disclaimer-panel{border-color:var(--gold);background:#172b2b}.info-panel p:not(.section-kicker){color:var(--muted);line-height:1.65}.faq-section,.related-section{padding:76px 12px 0}.faq-list{display:grid;gap:10px;margin-top:24px}.faq-list details{border:2px solid var(--line);border-radius:5px;background:var(--panel)}.faq-list summary{padding:18px 20px;color:var(--ink);font-weight:800;cursor:pointer}.faq-list details p{margin:0;padding:0 20px 20px;color:var(--muted);line-height:1.6}.related-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px}.related-links a{display:flex;min-height:112px;flex-direction:column;justify-content:space-between;padding:18px;border:2px solid var(--line);border-radius:5px;background:var(--panel);color:var(--ink);font-weight:800;line-height:1.35;text-decoration:none;overflow-wrap:anywhere}.related-links a:hover{border-color:var(--gold)}.related-links small{color:var(--muted);font-size:.76rem;font-weight:400}
@media(max-width:860px){.game-heading{grid-template-columns:1fr}.progress-box{display:flex;align-items:center;justify-content:space-between}.progress-box>span{margin:0}.related-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.corsi-shell{width:min(100% - 18px,620px);padding-top:10px}.topbar{align-items:flex-start;flex-wrap:wrap;gap:8px}.topbar-meta{max-width:100%;flex-wrap:wrap;justify-content:flex-end}.game-card{box-shadow:6px 6px 0 var(--shadow)}.game-heading{gap:20px;padding:24px 18px}.game-heading h1{font-size:clamp(1.7rem,9.3vw,3.2rem);overflow-wrap:anywhere}.mode-panel{align-items:stretch;flex-direction:column}.mode-description{text-align:left}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:2px solid var(--line)}.corsi-stage{min-height:700px;padding:26px 12px 28px}.stage-copy{min-height:185px}.corsi-board{height:clamp(330px,88vw,410px);box-shadow:5px 5px 0 var(--shadow)}.corsi-block{width:19%;height:17%;box-shadow:4px 4px 0 var(--shadow)}.block-3{left:73%}.block-6{left:75%}.block-9{left:68%}.content-section,.reading-grid{grid-template-columns:1fr}.content-section{gap:30px;padding:58px 8px 44px}.info-panel{padding:24px 20px}.faq-section,.related-section{padding:58px 8px 0}.related-links{grid-template-columns:1fr}.related-links a{min-height:92px}}
@media(max-width:390px){.topbar-meta{gap:6px;font-size:.68rem}.topbar-link{font-size:.64rem}.mode-switch button{flex:1 1 0;padding-inline:8px}.corsi-board{height:315px}.board-status{font-size:.55rem}.result-flash{align-items:center;flex-direction:column;gap:4px}}
@media(prefers-reduced-motion:reduce){.corsi-block{transition:none}.timing-fill{will-change:auto}}
