.final-game-icon{font-size:2.8rem;margin:8px 0}.final-textarea{width:min(680px,100%);min-height:96px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(6,15,64,.72);color:#fff;padding:14px;font:inherit;resize:vertical}.final-textarea:focus{outline:2px solid #62e7ff;outline-offset:2px}.story-log{width:min(700px,100%);max-height:240px;overflow:auto;margin-top:14px;text-align:left;padding:12px;border-radius:16px;background:rgba(7,13,60,.42);border:1px solid rgba(255,255,255,.08)}.story-log p{margin:.4rem 0;color:#e7ecff}.alphabet-letter{display:grid;place-items:center;width:104px;height:104px;margin:8px auto 12px;border-radius:24px;background:linear-gradient(145deg,#278dca,#7731d0);box-shadow:0 18px 35px rgba(0,0,0,.2);font-size:4rem;line-height:1;font-weight:950;color:#fff}.secret-word{font-size:clamp(2rem,7vw,4.2rem);font-weight:950;letter-spacing:.08em;color:#fff;margin:.7rem 0}.rank-list{width:min(680px,100%);list-style:none;padding:0;margin:14px auto;display:grid;gap:8px}.rank-list li{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:rgba(7,13,60,.58);border:1px solid rgba(255,255,255,.12);text-align:left}.rank-num{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(104,231,255,.13);color:#86efff;font-weight:950}.rank-controls{display:flex;gap:6px}.rank-controls button{width:40px;height:40px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:#111b5d;color:#fff;font-size:1.15rem;font-weight:900;cursor:pointer}.rank-result{width:min(680px,100%);margin:12px auto 0;padding:14px;border-radius:16px;background:rgba(69,42,150,.5);border:1px solid rgba(255,255,255,.14);text-align:left}.rank-result ol{margin:.6rem 0 0;padding-left:1.5rem}@media(max-width:620px){.final-textarea{min-height:84px}.alphabet-letter{width:88px;height:88px;font-size:3.2rem}.rank-list li{grid-template-columns:36px 1fr auto;padding:9px 8px;gap:7px}.rank-controls button{width:38px;height:38px}.secret-word{font-size:2.4rem}.story-log{max-height:200px}}@media(max-width:390px){.rank-list li{grid-template-columns:34px minmax(0,1fr) auto}.rank-list strong{font-size:.88rem}.rank-controls{gap:4px}.rank-controls button{width:34px;height:36px}.alphabet-letter{width:78px;height:78px;font-size:2.8rem}}

/* 2026-09-21: four-game usability polish */
.batch-panel>.batch-full{display:flex;width:100%;margin-top:18px;justify-content:center;align-items:center;min-height:50px}
.batch-panel .batch-mini-grid{margin-bottom:0}
.batch-panel .batch-mini{min-width:0;overflow:hidden;padding:12px 9px}
.batch-panel .batch-mini b{max-width:100%;min-height:1.35em;line-height:1.12;overflow-wrap:anywhere;word-break:normal;white-space:normal;text-wrap:balance}
#riTop{font-size:clamp(.82rem,1.55vw,1.08rem);letter-spacing:-.01em}
#oneWordGame .secret-word{min-height:1.25em}
@media(max-width:620px){.batch-panel>.batch-full{margin-top:16px}.batch-panel .batch-mini{padding:11px 8px}#riTop{font-size:.92rem}}
/* Alphabet Challenge answer validation */
.alphabet-answer-wrap{width:min(680px,100%);margin:18px auto 0;position:relative;z-index:2}.alphabet-answer-label{display:block;margin:0 0 7px;color:#aeefff;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;text-align:left}.alphabet-answer-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.alphabet-answer-form input{width:100%;min-height:50px;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(7,13,60,.78);color:#fff;padding:0 14px;font:inherit;font-weight:750;outline:none}.alphabet-answer-form input::placeholder{color:#8795bd}.alphabet-answer-form input:focus{border-color:#5ce9ff;box-shadow:0 0 0 3px rgba(92,233,255,.11)}.alphabet-answer-form input:disabled{opacity:.55;cursor:not-allowed}.alphabet-answer-form .btn{min-height:50px;white-space:nowrap}.alphabet-examples{margin-top:10px;padding:11px 12px;border:1px solid rgba(255,214,91,.22);border-radius:14px;background:rgba(255,214,91,.07);color:#e9e2c8;text-align:left;font-size:.82rem;line-height:1.5}.alphabet-examples strong{color:#ffe799;margin-right:7px}.alphabet-examples span{display:inline-flex;margin:3px 4px 3px 0;padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.07);color:#fff}.alphabet-feedback.is-correct{color:#8dffc0}.alphabet-feedback.is-wrong{color:#ffc18c}
@media(max-width:620px){.alphabet-answer-form{grid-template-columns:1fr}.alphabet-answer-form .btn{width:100%}.alphabet-answer-wrap{margin-top:14px}}

/* 2026-09-21 Alphabet Challenge professional random-letter update */
.alphabet-shape-hint{width:min(680px,100%);margin:10px auto 2px;padding:10px 14px;border:1px solid rgba(110,229,255,.2);border-radius:12px;background:rgba(16,43,104,.38);color:#bfefff;font-size:.82rem;font-weight:800;letter-spacing:.02em;text-align:center}
.alphabet-shape-hint[hidden]{display:none}
.alphabet-timer-ring{--timer-progress:100%;position:relative;z-index:2;width:88px;height:88px;margin:16px auto 2px;border-radius:50%;display:grid;place-items:center;align-content:center;background:conic-gradient(#5ce9ff var(--timer-progress),rgba(255,255,255,.11) 0);box-shadow:0 12px 28px rgba(0,0,0,.18),0 0 22px rgba(92,233,255,.08);isolation:isolate;transition:background .2s linear,box-shadow .2s ease}
.alphabet-timer-ring::before{content:"";position:absolute;inset:6px;border-radius:50%;background:linear-gradient(145deg,rgba(11,28,91,.98),rgba(52,21,111,.98));border:1px solid rgba(255,255,255,.08);z-index:-1}
.alphabet-timer-ring span{font-size:2.2rem;line-height:.95;font-weight:950;color:#fff;font-variant-numeric:tabular-nums}
.alphabet-timer-ring small{margin-top:4px;color:#9ec6df;font-size:.55rem;font-weight:900;letter-spacing:.12em}
.alphabet-timer-ring.is-low{background:conic-gradient(#ffcb55 var(--timer-progress),rgba(255,255,255,.11) 0);box-shadow:0 12px 28px rgba(0,0,0,.18),0 0 24px rgba(255,166,66,.14)}
#alphabetGame .batch-question{margin-bottom:0}
@media(max-width:620px){.alphabet-shape-hint{margin-top:8px;padding:9px 10px;font-size:.76rem}.alphabet-timer-ring{width:80px;height:80px;margin-top:13px}.alphabet-timer-ring span{font-size:2rem}}

/* Alphabet Challenge final QA states */
.alphabet-timer-ring.is-zero{background:conic-gradient(#ff5c7a 100%,rgba(255,255,255,.11) 0);box-shadow:0 12px 28px rgba(0,0,0,.18),0 0 26px rgba(255,92,122,.16)}
.alphabet-examples.is-answer-reveal{border-color:rgba(92,233,255,.24);background:rgba(37,76,146,.18)}
.alphabet-examples.is-answer-reveal.is-correct{border-color:rgba(106,255,171,.28);background:rgba(64,180,119,.1)}
#alphabetGame #azDraw:disabled{opacity:.6;cursor:not-allowed}

/* Alphabet Challenge: professional separate clue card */
.alphabet-clue-panel{width:min(680px,100%);margin:12px auto 2px;padding:14px 16px;border:1px solid rgba(255,216,90,.2);border-radius:16px;background:linear-gradient(135deg,rgba(255,198,66,.08),rgba(89,76,255,.07));box-shadow:0 10px 24px rgba(0,0,0,.1);text-align:center}
.alphabet-clue-panel[hidden]{display:none}
.alphabet-clue-label{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin:0 auto 8px;padding:5px 11px;border:1px solid rgba(255,216,90,.34);border-radius:999px;background:linear-gradient(135deg,rgba(255,198,66,.14),rgba(255,126,92,.08));color:#ffe58f;font-size:.7rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.alphabet-clue-text{margin:0;color:#f7f8ff;font-size:clamp(1rem,1.7vw,1.2rem);font-weight:750;line-height:1.5;letter-spacing:.005em}
#alphabetGame .batch-question{margin-bottom:0}
@media(max-width:620px){.alphabet-clue-panel{margin-top:10px;padding:12px 11px}.alphabet-clue-label{margin-bottom:7px;padding:5px 9px;font-size:.66rem}.alphabet-clue-text{font-size:.98rem;line-height:1.45}}
