.og{--navy:#173e70;--ink:#143351;--line:#cbdbea;max-width:980px;margin:auto;padding:12px;color:var(--ink);font:15px/1.45 system-ui,sans-serif;background:#eaf1f8}.og *{box-sizing:border-box}.og h1,.og h2,.og h3,.og p{margin:0 0 9px}.og h1{font-size:clamp(23px,4vw,34px);color:white}.og a{color:#17446f}.og .panel{padding:17px;border:1px solid var(--line);border-radius:14px;background:white;margin-bottom:12px}.og .hero{background:linear-gradient(115deg,#102b4a,#1e5f98);color:white}.og .hero a{color:white}.og .eyebrow{font-size:11px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.og .player{display:grid;grid-template-columns:minmax(0,320px) 78px;gap:8px;align-items:end;margin-top:13px;max-width:406px}.og label{font-size:12px;font-weight:750;min-width:0}.og input{width:100%;min-width:0;border:1px solid #a9bfd5;border-radius:8px;padding:9px;font:inherit;margin-top:4px}.og button{cursor:pointer;min-height:44px;padding:10px 15px;border-radius:9px;border:1px solid #9db7d0;background:white;color:#17446f;font:750 14px system-ui}.og button:disabled{cursor:default;opacity:.6}.og #save{width:78px;background:#d4f2e2;border-color:#92c8b0;color:#15543c}.og #player-status{font-size:12px;margin:5px 0 0}.og .road{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.og .road div{display:flex;flex-direction:column;align-items:center;background:#edf4fa;border:1px solid var(--line);border-radius:10px;padding:9px;min-height:78px;text-align:center}.og .road div.current{outline:2px solid #1e5f98}.og .road div.correct{background:#e6f5ed;border-color:#79af96}.og .road div.incorrect{background:#fff0e9;border-color:#e6aa8d}.og .road small{margin-top:auto;padding-top:6px;font-size:11px}.og .mission{display:flex;justify-content:space-between;align-items:center;gap:12px}.og .mission h2{font-size:22px}.og .scorebox{text-align:right;min-width:100px}.og .scorebox b{display:block;font-size:28px}.og .scorebox span{font-size:10px;font-weight:800}.og .meter{height:7px;background:#e5edf5;border-radius:10px;margin:10px 0;overflow:hidden}.og .meter i{display:block;background:#2c8f70;height:100%;width:0}.og .brief{padding:11px;background:#fff9dc;border:1px solid #ddc66d;border-radius:9px}.og .big{width:100%;min-height:62px;margin-top:12px;background:#1b7b68;border:0;color:white;font-size:20px;font-weight:900}.og .answers{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.og .answers button{text-align:left;min-height:56px;font-size:16px}.og .answers button.selected{outline:3px solid #173e70;background:#e7f1fc}.og .answers button.correct{background:#e6f5ed;border-color:#398867;opacity:1}.og .answers button.incorrect{background:#fff0e9;border-color:#b45938;opacity:1}.og .feedback{border-left:4px solid #ffcc39;padding:12px;background:#fff9dc;border-radius:7px;margin:12px 0}.og .result-score{font-size:44px;font-weight:950}.og .actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.og .actions a{padding:11px 14px;border:1px solid #a9bfd5;border-radius:9px;text-decoration:none;font-weight:800}.og .muted{font-size:12px;color:#526b83}.og button:focus-visible,.og a:focus-visible,.og input:focus-visible,.og summary:focus-visible{outline:3px solid #e0aa1c;outline-offset:3px}.og [hidden]{display:none!important}.og dialog{max-width:420px;border:0;border-radius:14px;padding:22px;color:#143351;box-shadow:0 14px 70px #10243e55}.og dialog::backdrop{background:#10243e99}.og .review{border-bottom:1px solid #dbe5ef;padding:11px 0}.og .hero .top{display:flex;align-items:center;justify-content:space-between;gap:12px}.og .hero .top a{font-size:13px}.og .footer{font-size:12px;padding:5px 9px}@media(max-width:540px){.og{padding:6px;font-size:14px}.og .panel{padding:12px;margin-bottom:8px}.og .answers{grid-template-columns:1fr}.og .road{gap:4px}.og .road div{padding:7px 3px;min-height:68px;font-size:12px}.og .road small{font-size:9px}.og .mission h2{font-size:19px}.og .player{grid-template-columns:minmax(0,1fr) 70px;max-width:350px}.og #save{width:70px}.og .scorebox{min-width:75px}.og .scorebox b{font-size:23px}.og .hero .top{align-items:flex-start}.og h1{font-size:24px}}
/* Game 1 reference tokens and density. */
.og{--line:#bcd0e3;max-width:820px;padding:8px;font:15px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-sizing:border-box}.og .panel{padding:12px;margin-bottom:8px;border-radius:13px}.og .hero{background:linear-gradient(135deg,#112e50,#1b507d);border:0}.og h1{font-size:22px;line-height:1.08;margin:0}.og .hero p{margin:4px 0 0;color:#dce9f5;font-size:12px}.og .hero .top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.og .hero .top a{border:1px solid #ffffff8c;background:#ffffff1a;border-radius:8px;padding:7px 12px;font-size:12px;font-weight:850;text-decoration:none;min-height:38px;white-space:nowrap}.og .player{margin-top:10px;grid-template-columns:minmax(0,260px) 78px;max-width:346px}.og .player label{font-size:11px;font-weight:850;color:#dce9f5}.og .player input{display:block;margin-top:3px;border-color:#9fb7cf;font-size:16px;color:#143351}.og #save{height:42px;min-height:42px;border:0;border-radius:8px;background:#1c7c69;color:#fff;font-size:14px;font-weight:850}.og .road{gap:5px}.og .road div{min-height:90px;border-color:#9fb9d2;background:#eaf3fb;padding:6px 4px;font-weight:900}.og .road div span{font-size:9px;line-height:1.1;margin-top:3px}.og .road div.current{background:#174a7e;color:white;border-color:#174a7e;outline:none}.og .road div.correct{background:#e5f4ed;border-color:#6eaa92;color:#195943}.og .road small{font-size:12px;line-height:1.2;padding-top:8px;min-height:24px}.og .mission{justify-content:flex-start;flex-wrap:wrap}.og .mission-badge{width:58px;height:58px;flex:0 0 58px;border-radius:50%;display:grid;place-items:center;background:#173e70;color:white;font-size:22px;font-weight:950}.og .mission h2{margin:0}.og .mission p{margin:2px 0 0;color:#5b7690}.og .scorebox{margin-left:auto;min-width:0}.og .scorebox b{font-size:25px}.og .scorebox span{font-size:11px;color:#5b7690}.og .meter{height:9px;border-radius:999px;margin:9px 0 0}.og .meter i{background:#1b7b68}.og .brief{margin-top:10px;padding:9px 10px;background:#f3f7fb;color:#405f7b;border:0}.og .big{min-height:72px;margin-top:10px;font-size:25px;font-weight:950;border-radius:12px}.og #next{background:#173e70;min-height:50px;font-size:16px}.og .answers button{font-size:15px}.og .feedback{padding:9px 10px;border:1px solid #ddc66d;background:#fff9dc;border-radius:10px}.og .feedback p{line-height:1.3}.og .feedback a{font-size:12px}.og .result-score{line-height:1}.og .result-pass{background:#e6f5ed;border-color:#79af96}.og .result-review{background:#fff0e9;border-color:#e6aa8d}
@media(max-width:520px){.og{padding:4px;font-size:13px;max-width:448px}.og .panel{padding:7px;margin-bottom:5px;border-radius:10px}.og .hero{padding:7px 8px}.og .hero .top{grid-template-columns:1fr;gap:5px}.og h1{font-size:16px}.og .hero .top a{justify-self:start;min-height:32px;padding:4px 7px;font-size:10px}.og .player{grid-template-columns:minmax(0,1fr) 62px;gap:5px;margin-top:5px;max-width:322px}.og .player label{font-size:10px}.og .player input{padding:5px 6px;margin-top:1px;font-size:16px}.og #save{width:62px;height:33px;min-height:33px;font-size:12px;padding:4px}.og #player-status{font-size:10px;line-height:1.2}.og .road{gap:3px}.og .road div{min-height:62px;padding:4px 2px;font-size:11px}.og .road div span{font-size:8px}.og .road small{font-size:10px;padding-top:5px;min-height:18px}.og .mission{gap:6px;flex-wrap:nowrap}.og .mission-badge{width:34px;height:34px;flex-basis:34px;font-size:15px}.og .mission>div:nth-child(2){min-width:0}.og .mission h2{font-size:16px;line-height:1.1}.og .mission p{font-size:11px;line-height:1.2}.og .scorebox{white-space:nowrap}.og .scorebox span{font-size:8px}.og .scorebox b{font-size:18px}.og .meter{height:5px;margin-top:4px}.og .brief{padding:6px;margin-top:5px;font-size:11px}.og .answers{margin:9px 0;gap:6px}.og .answers button{min-height:44px;padding:8px 10px;font-size:14px}.og #play-area h2{font-size:18px}.og .big{min-height:48px;margin-top:5px;font-size:18px;border-radius:9px}.og #next{min-height:44px;font-size:14px}.og .feedback{margin:8px 0;padding:8px;font-size:13px}.og .result-score{font-size:31px}.og .footer{font-size:10px}.og .eyebrow{font-size:9px}}

/* Shared three-field player standard, also used by Game 1. */
.og .player{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 78px;max-width:740px;gap:8px;align-items:end}.og .player label{min-width:0}.og .player input{width:100%;min-width:0}.og .player button{width:78px}#player-status a{color:inherit;font-weight:800}@media(max-width:520px){.og .player{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.og .player button{width:62px;justify-self:end}.og .player label{font-size:8px}.og .player input{font-size:14px}}

#athens-game .athens-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;background:#f8fbfe}#athens-game .athens-facts span{font-size:10px;color:#58728c}#athens-game .athens-facts b{display:block;font-size:14px;color:#173e70}#athens-game .athens-mission{display:flex;gap:10px;align-items:center}#athens-game .athens-mission h2{margin:0;font-size:22px}#athens-game .athens-mission p{margin:2px 0;color:#5b7690;font-size:12px}#athens-game .athens-badge{width:46px;height:46px;flex:0 0 46px;border-radius:50%;display:grid;place-items:center;background:#173e70;color:white;font-size:20px;font-weight:900}#athens-game .athens-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:8px}#athens-game .primary{background:#1c7c69;color:white;border-color:#1c7c69}#athens-game .athens-actions a{font-size:12px;font-weight:800}#athens-game #progress-status{margin:5px 0 0}#athens-game .read-head{display:flex;justify-content:space-between;align-items:center;gap:8px}#athens-game .read-head h2{margin:4px 0 10px;font-size:22px}#athens-game .reading-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,280px);gap:14px}#athens-game .reading-layout.no-image{grid-template-columns:1fr}#athens-game .essay{font-size:15px;line-height:1.65}#athens-game .essay p{margin-bottom:12px}#athens-game figure{margin:0;align-self:start}#athens-game figure img{display:block;width:100%;height:auto;border-radius:8px;border:1px solid #bcd0e3}#athens-game figcaption{font-size:10px;color:#58728c;line-height:1.4;margin-top:5px}#athens-game .read-controls{display:flex;justify-content:space-between;gap:8px;margin-top:12px}#athens-game .read-sources{font-size:11px;margin-top:9px;display:flex;gap:10px;flex-wrap:wrap}#athens-game #quiz-area h2{font-size:21px;line-height:1.3}#athens-game .quiz-top{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:10px}#athens-game .quiz-top button{font-size:11px;min-height:32px;padding:5px 8px}#athens-game .research{padding:8px 10px;background:#fff9dc;border-left:4px solid #e0aa1c;margin:8px 0;font-size:12px}#athens-game .board-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}#athens-game .board-heading h2{margin:0;font-size:20px}#athens-game .board-heading button{min-height:32px;font-size:11px;padding:5px 8px}#athens-game .board-scroll{overflow:auto;margin-top:8px}#athens-game table{width:100%;border-collapse:collapse;font-size:12px}#athens-game th,#athens-game td{padding:7px 6px;border-bottom:1px solid #dbe5ef;text-align:right;white-space:nowrap}#athens-game th:nth-child(2),#athens-game td:nth-child(2){text-align:left;white-space:normal;min-width:100px;max-width:180px;overflow-wrap:anywhere}#athens-game tbody tr.self{background:#e5f4ed}#athens-game .guest-label{display:block;font-size:9px;color:#58728c}#athens-game details{margin-top:9px;font-size:12px;line-height:1.5}#athens-game summary{cursor:pointer;font-weight:800}#athens-game details p{margin-top:6px}#athens-game .answers button{min-height:48px}#athens-game .result-pass{background:#e6f5ed}#athens-game .result-review{background:#fff0e9}#athens-game .save-note{font-size:12px;margin:8px 0}#athens-game .question-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:3px;margin:10px 0}#athens-game .question-grid span{padding:5px 2px;background:#eaf3fb;border-radius:5px;text-align:center;font-size:10px}#athens-game .question-grid span.correct{background:#e5f4ed;color:#195943}#athens-game .question-grid span.incorrect{background:#fff0e9;color:#91492e}#athens-game .question-grid span.current{background:#174a7e;color:white}#athens-game button,#athens-game a,#athens-game input{touch-action:manipulation}#athens-game dialog{position:fixed;margin:auto;max-width:min(420px,90vw)}
@media(max-width:520px){#athens-game .athens-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}#athens-game .athens-facts b{font-size:12px}#athens-game .athens-mission{gap:6px}#athens-game .athens-mission h2{font-size:16px}#athens-game .athens-mission p{font-size:10px}#athens-game .athens-badge{width:34px;height:34px;flex-basis:34px;font-size:15px}#athens-game .reading-layout{grid-template-columns:1fr;gap:8px}#athens-game figure{max-width:300px;margin:auto}#athens-game .essay{font-size:14px;line-height:1.6}#athens-game .read-head h2,#athens-game #quiz-area h2{font-size:18px}#athens-game .athens-actions button{font-size:12px;padding:8px;min-height:40px}#athens-game .read-controls button{font-size:12px;padding:8px}#athens-game .board-heading h2{font-size:17px}#athens-game table{font-size:10px}#athens-game th,#athens-game td{padding:5px 4px}#athens-game .question-grid{grid-template-columns:repeat(10,minmax(0,1fr))}}

#athens-game .difficulty-controls{margin:10px 0;font-size:12px}#athens-game #difficulty{padding:8px;width:100%;max-width:420px;color:#17324d;border:1px solid #b8cee1;border-radius:8px;font:inherit}#athens-game .difficulty-controls>p{margin:4px 0}#athens-game .level-bests{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}#athens-game .level-bests li{padding:5px;background:#edf8ef;border-radius:5px}#athens-game .level-bests strong{float:right}#athens-game .answer-locations{background:#edf4fb;padding:8px;border-radius:6px;font-size:12px;margin:8px 0}#athens-game .answer-locations a{display:block;margin-top:4px}#athens-game .competitor-list{list-style:none;padding:0;margin:8px 0}#athens-game .competitor-list li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #d5e2ee;padding:8px 0}#athens-game .competitor-list small{display:block;color:#607b94;font-size:11px}#athens-game .competitor-list .self{background:#edf8ef}#athens-game #question-heading{white-space:pre-line}#athens-game .primary{background:#092139;border-color:#092139;color:#fff}@media(max-width:450px){#athens-game .level-bests{grid-template-columns:1fr}}
