/* Thermopylae */
main.main:has(.th){max-width:1100px}
.th{position:relative;height:calc(100vh - 150px);min-height:520px;border-radius:14px;overflow:hidden;background:#2b241b;color:#f4ecd8;user-select:none;-webkit-user-select:none;font-family:system-ui,sans-serif}
.th canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}
.th .gr{font-family:"Gentium Book Plus",Georgia,serif}
.th-hud{position:absolute;left:0;right:0;top:0;display:flex;gap:.8rem;align-items:center;padding:.4rem .6rem;font-weight:600;font-size:.95rem;pointer-events:none;text-shadow:0 1px 2px #000}
.th-hud span{white-space:nowrap}.th-hud .sp{flex:1}
.th-hud button{pointer-events:auto;font:inherit;background:rgba(0,0,0,.45);color:#f4ecd8;border:1px solid rgba(244,236,216,.4);border-radius:8px;padding:.2rem .55rem;cursor:pointer}
.th-word{position:absolute;left:0;right:0;bottom:.5rem;text-align:center;pointer-events:none;font-size:1rem;text-shadow:0 1px 3px #000;min-height:1.6rem}
.th-word b{font-size:1.35rem;color:#f3dfa3;font-weight:400}
.th-ov{position:absolute;inset:0;background:rgba(20,15,10,.82);display:flex;align-items:flex-start;justify-content:center;padding:1rem;overflow:auto;z-index:3}
.th-ov[hidden]{display:none}
.th-box{margin:auto;max-width:560px;width:100%;background:#f6efdc;color:#1d2320;border-radius:14px;padding:1.1rem 1.3rem;text-align:center;border-top:6px solid #8c1d2c}
.th-box h1{margin:.1rem 0 .2rem;font:700 2rem Georgia,serif;color:#8c1d2c}
.th-box h2{margin:.1rem 0 .4rem;font:700 1.3rem Georgia,serif;color:#8c1d2c}
.th-box p{line-height:1.5;margin:.45rem 0}
.th-box .quote{font-size:1.5rem;margin:.3rem 0 0}.th-box .qsub{font-size:.85rem;color:#5d6862;margin:0 0 .5rem}
.th-box .big{font-size:2.3rem;margin:.2rem 0}
.th-box ul{text-align:left;line-height:1.5;padding-left:1.2rem;font-size:.92rem}
.th-btn{font:inherit;font-size:1rem;padding:.55rem 1.1rem;border-radius:10px;border:1px solid #c9bfa5;background:#fff;color:#1d2320;cursor:pointer;margin:.2rem}
.th-btn.pri{background:#8c1d2c;border-color:#8c1d2c;color:#fff;font-weight:700}
.th-btn.right{background:#1a8a4a;color:#fff;border-color:#1a8a4a}.th-btn.wrong{background:#c0392b;color:#fff;border-color:#c0392b}
.th-opts{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin:.6rem 0}.th-opts .th-btn{margin:0}
.th-small{font-size:.8rem;color:#5d6862}
.th-box details{text-align:left;font-size:.92rem;margin-top:.5rem}.th-box summary{cursor:pointer;font-weight:700;color:#8c1d2c}
