@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;600;700;900&family=Noto+Serif+TC:wght@400;600;700;900&display=swap');
:root{--ink:#172c27;--jade:#1e574b;--red:#a54335;--paper:#f3efe5;--gold:#b89a5a;--muted:#6c736e;--line:#d8d0bf}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Serif TC','Noto Serif SC',serif;min-height:100vh}.paper-noise{position:fixed;inset:0;pointer-events:none;opacity:.3;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E")}.site-header{height:82px;padding:0 clamp(24px,6vw,88px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(23,44,39,.12);position:relative;z-index:2}.brand{color:var(--ink);text-decoration:none;font-weight:800;letter-spacing:.16em;font-size:20px;display:flex;align-items:center;gap:12px}.seal{background:var(--red);color:#f7ead7;width:38px;height:38px;display:grid;place-items:center;border-radius:4px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.25);font-size:22px}.header-actions{display:flex;gap:12px}.text-btn,.back-btn{border:0;background:none;color:var(--ink);font:inherit;cursor:pointer;padding:10px}.text-btn:hover,.back-btn:hover{color:var(--red)}main{width:min(1180px,calc(100% - 40px));margin:auto}.view{min-height:calc(100vh - 152px)}.hidden{display:none!important}.login-view{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(50px,10vw,150px);align-items:center;padding:70px 2vw}.eyebrow{font-size:12px;color:var(--red);font-weight:700;letter-spacing:.25em;margin-bottom:20px}.hero-copy h1{font-size:clamp(42px,6vw,78px);line-height:1.18;letter-spacing:.04em;margin:0}.hero-copy h1 em{font-style:normal;color:var(--jade)}.hero-copy>p{max-width:600px;color:var(--muted);font-size:17px;line-height:2;margin:28px 0 40px}.era-line{display:flex;align-items:center;color:#887d69;font-size:11px;gap:8px}.era-line i{width:26px;height:1px;background:var(--gold)}.login-card{background:#faf7ef;padding:42px;border:1px solid var(--line);box-shadow:12px 14px 0 rgba(30,87,75,.07);position:relative}.login-card:before{content:"";position:absolute;inset:10px;border:1px solid rgba(184,154,90,.25);pointer-events:none}.chapter{color:var(--red);font-size:11px;letter-spacing:.2em}.login-card h2,.journey-copy h2{font-size:32px;margin:12px 0}.login-card p,.journey-copy p{color:var(--muted);line-height:1.7}.login-card label{display:block;margin-top:28px;font-size:13px;font-weight:bold}.login-card input{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:14px 2px;font:inherit;outline:none;margin-bottom:25px}.login-card input:focus{border-color:var(--red)}.primary{background:var(--jade);color:white;border:0;padding:16px 22px;font:inherit;font-weight:700;letter-spacing:.08em;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:35px;box-shadow:5px 5px 0 rgba(23,44,39,.17)}.primary:hover{background:#17473d;transform:translateY(-1px)}.login-card .primary{width:100%}.login-card small{display:block;text-align:center;color:#8a8a80;font-size:10px;margin-top:20px}.dashboard-head{display:flex;justify-content:space-between;align-items:end;padding:65px 0 32px}.dashboard-head h1{font-size:42px;margin:0}.best{text-align:right}.best span{display:block;color:var(--muted);font-size:12px}.best strong{font-size:38px;color:var(--red)}.best small{margin-left:4px}.journey-card{min-height:390px;background:#e8e1d2;border:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.journey-copy{padding:56px}.journey-copy p{max-width:500px}.rule-pills{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0}.rule-pills span{border:1px solid #a9a18f;padding:6px 12px;font-size:11px}.journey-copy .primary{margin-top:26px}.river-illustration{position:relative;overflow:hidden;background:linear-gradient(#e6ddcb,#d6cbb7)}.sun{position:absolute;width:90px;height:90px;border-radius:50%;background:#bd6b51;right:20%;top:15%;opacity:.65}.mount{position:absolute;width:420px;height:230px;background:#84958b;clip-path:polygon(0 100%,35% 20%,50% 52%,68% 8%,100% 100%);bottom:25%;opacity:.5}.m2{right:-100px;bottom:20%;background:#527267}.river{position:absolute;inset:60% -20% -40%;background:#eef0e8;transform:rotate(-9deg);border-radius:45%}.boat{position:absolute;bottom:26%;left:51%;font-size:44px;color:var(--red);transform:rotate(-4deg)}.source-note{display:flex;gap:28px;padding:25px 5px;color:var(--muted);font-size:12px}.source-note b{color:var(--ink);white-space:nowrap}.game-view{padding:35px 0 60px}.game-top{max-width:860px;margin:auto}.progress-meta{display:flex;justify-content:space-between;margin:18px 0 10px;font-size:12px;color:var(--muted)}.progress{height:3px;background:#d8d1c2}.progress i{display:block;height:100%;background:var(--red);transition:width .35s}.question-card{max-width:860px;margin:42px auto;background:#faf7ef;border:1px solid var(--line);padding:clamp(28px,5vw,60px);position:relative}.date-stamp{position:absolute;right:40px;top:-22px;background:var(--red);color:#fff;padding:9px 20px;display:flex;gap:12px;align-items:center}.date-stamp span{font-size:9px;opacity:.8;letter-spacing:.15em}.question-kicker{font-size:11px;color:var(--jade);letter-spacing:.12em;display:flex;align-items:center;gap:12px}.question-kicker b{background:#e1e8df;border:1px solid #b7c6bb;padding:5px 8px;font-weight:600}.question-card h2{font-size:clamp(25px,3.5vw,38px);line-height:1.5;margin:22px 0 35px}.options{display:grid;gap:12px}.option{display:flex;align-items:center;gap:18px;width:100%;padding:18px;border:1px solid #ccc4b4;background:transparent;text-align:left;font:inherit;color:var(--ink);cursor:pointer}.option b{width:30px;height:30px;border:1px solid #aba28e;display:grid;place-items:center;font-size:12px}.option:hover{border-color:var(--jade);background:#eef1eb}.option.correct{border-color:var(--jade);background:#e2ebe4}.option.wrong{border-color:var(--red);background:#f3e4df}.option:disabled{cursor:default}.explanation{margin-top:22px;padding:18px;border-left:3px solid var(--red);background:#efe9dd;line-height:1.7;font-size:14px}.result-view{text-align:center;padding:80px 20px}.result-seal{width:65px;height:65px;background:var(--red);color:white;display:grid;place-items:center;margin:0 auto 28px;border-radius:50%;font-size:28px}.result-view h1{font-size:46px;margin:10px}.result-view>p{color:var(--muted)}.score-box{margin:35px auto;display:flex;align-items:baseline;justify-content:center;gap:10px}.score-box strong{font-size:76px;color:var(--jade)}.result-actions{display:flex;justify-content:center;gap:16px}.secondary{padding:15px 24px;background:transparent;border:1px solid var(--ink);font:inherit;cursor:pointer}footer{height:70px;border-top:1px solid rgba(23,44,39,.12);padding:0 clamp(24px,6vw,88px);display:flex;justify-content:center;align-items:center;color:#7b796f;font-size:10px;letter-spacing:.12em}.club-footer-link{color:inherit;text-decoration:none;text-align:center;transition:color .2s ease}.club-footer-link:hover,.club-footer-link:focus-visible{color:var(--red);text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.site-header{height:66px}.login-view{grid-template-columns:1fr;padding:45px 0;gap:45px}.hero-copy h1{font-size:45px}.era-line{display:none}.login-card{padding:30px 25px}.dashboard-head{padding-top:40px}.dashboard-head h1{font-size:30px}.journey-card{grid-template-columns:1fr}.journey-copy{padding:35px 28px}.river-illustration{height:230px;order:-1}.source-note{display:block}.source-note b{display:block;margin-bottom:8px}.date-stamp{right:20px}.question-card{margin-top:38px;padding-top:55px}.result-actions{flex-direction:column}.result-actions button{width:100%}footer span:last-child{display:none}}
.game-status{max-width:860px;margin:12px auto 20px;display:flex;justify-content:space-between;align-items:end}.game-status small{display:block;color:var(--muted);font-size:10px;letter-spacing:.12em;margin-bottom:4px}.countdown strong{font-size:42px;color:var(--jade);font-variant-numeric:tabular-nums}.countdown span{font-size:12px;margin-left:4px}.countdown.urgent strong{color:var(--red);animation:pulse .7s infinite}.reached{text-align:right}.reached strong{font-size:22px;color:var(--red)}.score-box #finalYear{font-size:clamp(36px,7vw,68px)}.score-box #finalCount{color:var(--muted)}@keyframes pulse{50%{opacity:.45}}@media(max-width:500px){.game-status{margin-top:6px}.countdown strong{font-size:34px}.reached strong{font-size:17px}}
/* Tablet and touch-device refinements */
button,input{-webkit-tap-highlight-color:transparent}.option,.primary,.secondary,.text-btn,.back-btn{touch-action:manipulation}.option{min-height:60px}.option span{overflow-wrap:anywhere}.question-card{overflow:visible}.best strong{overflow-wrap:anywhere}.game-top,.question-card{width:100%}
@media (min-width:761px) and (max-width:1100px){main{width:min(94%,920px)}.site-header{padding-inline:4vw}.login-view{grid-template-columns:1.05fr .95fr;gap:48px;padding-block:50px}.hero-copy h1{font-size:52px}.login-card{padding:36px}.journey-card{grid-template-columns:1.1fr .9fr}.journey-copy{padding:44px}.question-card{margin-top:38px}.options{grid-template-columns:1fr 1fr}.option{min-height:72px}.dashboard-head{padding-top:48px}}
@media (max-width:760px){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}main{width:min(100% - 24px,680px)}.site-header{padding:0 14px}.brand{font-size:17px;letter-spacing:.08em}.seal{width:34px;height:34px}.text-btn{min-width:44px;min-height:44px}.dashboard-head{align-items:flex-start;gap:16px}.best{max-width:45%}.best strong{display:block;font-size:clamp(18px,6vw,30px);line-height:1.25}.game-view{padding-top:14px}.back-btn{min-height:44px;padding-left:0}.game-status{padding:0 4px}.question-card{margin-bottom:24px;padding:58px 18px 24px}.question-card h2{font-size:clamp(21px,6vw,29px);margin:18px 0 25px}.date-stamp{top:-18px;right:12px;max-width:62%;padding:8px 12px}.date-stamp strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.question-kicker{align-items:flex-start;flex-wrap:wrap;gap:8px}.option{min-height:58px;padding:13px 12px;gap:12px;line-height:1.45}.option b{flex:0 0 30px}.explanation{max-height:26vh;overflow:auto;padding:14px}.result-view{padding:48px 8px}.result-view h1{font-size:clamp(30px,9vw,44px)}footer{padding:0 16px}}
@media (max-width:380px){.header-actions{gap:0}.brand{gap:7px}.game-status{align-items:flex-start}.reached{max-width:55%}.reached strong{display:block}.countdown strong{font-size:31px}.question-card{padding-inline:14px}.option{font-size:14px}}
@media (max-height:560px) and (orientation:landscape){.site-header{height:54px}.game-view{padding-top:6px}.game-status{margin:0 auto 6px}.countdown strong{font-size:30px}.question-card{margin-top:24px;padding-top:45px}.question-card h2{font-size:22px;margin:10px 0 16px}.options{grid-template-columns:1fr 1fr;gap:8px}.option{min-height:50px;padding:9px 12px}footer{display:none}}
body{font-family:"Microsoft YaHei","微软雅黑","PingFang SC","Noto Sans CJK SC",Arial,sans-serif}.auth-tabs{display:flex;margin:-20px 0 24px;border-bottom:1px solid var(--line)}.auth-tabs button{flex:1;border:0;background:none;padding:12px;font:inherit;cursor:pointer}.auth-tabs button.active{color:var(--red);border-bottom:2px solid var(--red);font-weight:bold}.auth-error{min-height:22px;color:var(--red);font-size:12px}.leaderboard-card{background:#faf7ef;border:1px solid var(--line);padding:24px 30px;margin-bottom:24px;display:grid;grid-template-columns:180px 1fr;gap:25px}.leaderboard-card h2{margin:7px 0}.leaderboard-card ol{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:8px 24px}.leaderboard-card li{display:grid;grid-template-columns:32px 1fr auto;gap:8px;padding:8px;border-bottom:1px dotted var(--line);font-size:13px}.leaderboard-card li.me{background:#e2ebe4;font-weight:bold}.poster-wrap{margin:24px auto 30px;max-width:310px}.poster-wrap canvas{display:none}.poster-wrap img{display:block;width:100%;height:auto;border:1px solid var(--line);box-shadow:7px 8px 0 rgba(30,87,75,.1);-webkit-user-select:none;user-select:none;-webkit-touch-callout:default}.poster-tip{display:block;margin:13px 0 0;color:var(--muted);font-size:12px;text-align:center}.poster-wrap a{display:block;margin-top:14px;text-decoration:none;color:var(--ink)}
@media(max-width:760px){.leaderboard-card{grid-template-columns:1fr;padding:20px;gap:8px}.leaderboard-card ol{grid-template-columns:1fr}.poster-wrap{max-width:280px}}
.leaderboard-card{grid-template-columns:1fr}.leaderboard-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.rank-all-btn{border:1px solid var(--ink);background:transparent;padding:9px 20px;font:inherit;cursor:pointer;min-height:44px}.rank-all-btn:hover{background:var(--jade);border-color:var(--jade);color:#fff}.ranking-view{padding:45px 0 70px}.ranking-title{display:flex;align-items:end;gap:35px;margin-bottom:25px}.ranking-title h1{font-size:42px;margin:6px 0}.ranking-table{background:#faf7ef;border:1px solid var(--line);padding:16px 28px}.rank-row{display:grid;grid-template-columns:90px minmax(0,1fr) 180px;align-items:center;gap:15px;min-height:54px;border-bottom:1px dotted var(--line)}.rank-row:last-child{border-bottom:0}.rank-row b{color:var(--red);font-size:18px}.rank-row strong{text-align:right;color:var(--jade)}.rank-row.me{background:#e2ebe4;margin-inline:-12px;padding-inline:12px}.rank-header{font-size:12px;color:var(--muted);min-height:42px}.rank-header b,.rank-header strong{font-size:12px;color:var(--muted)}.rank-empty{text-align:center;padding:50px;color:var(--muted)}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:25px}.pagination button:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:760px){.leaderboard-head{align-items:flex-start}.leaderboard-head h2{font-size:22px}.ranking-view{padding-top:20px}.ranking-title{display:block}.ranking-title h1{font-size:32px}.ranking-table{padding:10px 14px}.rank-row{grid-template-columns:48px minmax(0,1fr) 105px;gap:8px;min-height:52px;font-size:13px}.rank-row strong{font-size:12px}.pagination{gap:8px}.pagination .secondary{padding:12px}.pagination span{font-size:12px}}
.rank-tabs{display:flex;gap:8px;margin-top:12px}.rank-tabs button{border:1px solid var(--line);background:transparent;padding:7px 14px;font:inherit;font-size:13px;cursor:pointer}.rank-tabs button.active{background:var(--jade);border-color:var(--jade);color:#fff}.leaderboard-card li strong{display:flex;gap:8px;align-items:baseline}.leaderboard-card li strong small{color:var(--muted);font-weight:normal}.rank-row{grid-template-columns:70px minmax(0,1fr) 135px 150px}.rank-row em{text-align:right;font-style:normal;color:var(--muted)}
@media(max-width:760px){.rank-tabs{flex-wrap:wrap}.rank-tabs button{min-height:40px}.rank-row{grid-template-columns:42px minmax(0,1fr) 84px 82px}.rank-row em,.rank-row strong{font-size:11px}.leaderboard-card li strong{display:block;text-align:right}.leaderboard-card li strong small{display:block}}
/* Logged-in home: challenge 2/3 + compact leaderboard 1/3 */
.home-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(310px,1fr);gap:24px;align-items:start}.home-primary{min-width:0}.home-grid .journey-card{grid-template-columns:minmax(0,1.2fr) minmax(230px,.8fr);min-height:430px}.home-grid .journey-copy{padding:48px 42px}.home-grid .source-note{padding-inline:5px}.home-grid .leaderboard-card{margin:0;padding:22px 18px;display:block;min-width:0}.home-grid .leaderboard-head{display:block}.home-grid .leaderboard-head>div{min-width:0}.home-grid .leaderboard-head h2{font-size:21px;line-height:1.3;margin:6px 0 12px}.home-grid .rank-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px}.home-grid .rank-tabs button{padding:7px 5px;font-size:12px;white-space:nowrap}.home-grid .rank-all-btn{width:100%;min-height:38px;margin-top:9px;padding:7px 12px}.home-grid .leaderboard-card ol{display:block;margin-top:14px}.home-grid .leaderboard-card li{grid-template-columns:26px minmax(0,1fr) auto;gap:6px;padding:8px 4px;font-size:12px}.home-grid .leaderboard-card li strong{display:block;text-align:right;font-size:11px}.home-grid .leaderboard-card li strong small{display:block;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (min-width:761px) and (max-width:1000px){.home-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:16px}.home-grid .journey-card{grid-template-columns:1fr}.home-grid .journey-copy{padding:38px 32px}.home-grid .river-illustration{height:220px;order:-1}.home-grid .leaderboard-card{padding:18px 14px}}
@media(max-width:760px){.home-grid{grid-template-columns:1fr;gap:20px}.home-primary{display:contents}.home-grid .journey-card{grid-template-columns:1fr;min-height:0;order:1}.home-grid .leaderboard-card{order:2;padding:20px}.home-grid .source-note{order:3}.home-grid .journey-copy{padding:35px 28px}.home-grid .leaderboard-head{display:flex;align-items:flex-start}.home-grid .leaderboard-head h2{font-size:20px}.home-grid .rank-tabs{display:flex}.home-grid .rank-all-btn{width:auto;min-width:68px;margin-top:0}.home-grid .leaderboard-card ol{margin-top:12px}}
.best #bestEra{display:block;margin:4px 0 0;color:var(--jade);font-size:15px;font-weight:700;line-height:1.35}
/* Full rankings: global and invited-friends shown side by side */
.ranking-view{max-width:1180px}.dual-rankings{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}.ranking-panel{min-width:0}.ranking-panel h2{font-size:25px;margin:0 0 14px}.dual-rankings .ranking-table{padding:12px 16px}.dual-rankings .rank-row{grid-template-columns:45px minmax(0,1fr) 88px 90px;gap:8px;min-height:52px;font-size:12px}.dual-rankings .rank-row b{font-size:15px}.dual-rankings .rank-row strong,.dual-rankings .rank-row em{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dual-rankings .pagination{gap:8px;margin-top:16px}.dual-rankings .pagination button{padding:10px 12px}.dual-rankings .pagination span{font-size:11px;text-align:center}
@media(max-width:900px){.dual-rankings{grid-template-columns:1fr}.ranking-panel+ .ranking-panel{margin-top:22px}.dual-rankings .rank-row{grid-template-columns:55px minmax(0,1fr) 105px 110px}.dual-rankings .rank-row strong,.dual-rankings .rank-row em{font-size:12px}}
@media(max-width:500px){.dual-rankings .ranking-table{padding:8px 10px}.dual-rankings .rank-row{grid-template-columns:36px minmax(0,1fr) 76px 68px;gap:5px}.dual-rankings .pagination button{padding:9px 8px;font-size:12px}.ranking-panel h2{font-size:21px}}
/* Home leaderboard: left column, larger rows, bottom action */
.home-grid{grid-template-columns:minmax(310px,1fr) minmax(0,2fr)}.home-grid .leaderboard-card{display:flex;flex-direction:column;min-height:430px}.home-grid .leaderboard-head h2{font-size:28px;margin:0 0 16px}.home-grid .leaderboard-card ol{flex:1;margin-top:15px}.home-grid .leaderboard-card li{grid-template-columns:32px minmax(0,1fr) auto;gap:9px;padding:10px 5px;font-size:15px;line-height:1.35}.home-grid .leaderboard-card li b{font-size:16px}.home-grid .leaderboard-card li strong{font-size:14px}.home-grid .leaderboard-card li strong small{font-size:12px}.home-grid .rank-all-btn{margin-top:18px;flex:0 0 auto}
@media (min-width:761px) and (max-width:1000px){.home-grid{grid-template-columns:minmax(280px,1fr) minmax(0,1.7fr)}.home-grid .leaderboard-card li{font-size:14px;padding-block:9px}}
@media(max-width:760px){.home-grid{grid-template-columns:1fr}.home-grid .leaderboard-card{order:1;min-height:0}.home-grid .home-primary{display:contents}.home-grid .journey-card{order:2}.home-grid .source-note{order:3}.home-grid .leaderboard-head{display:block}.home-grid .leaderboard-head h2{font-size:26px}.home-grid .rank-all-btn{width:100%;margin-top:16px}.home-grid .leaderboard-card li{font-size:15px}}
/* Refined logged-in home */
#homeView{padding-bottom:46px}.dashboard-head{padding:52px 4px 27px;border-bottom:1px solid rgba(23,44,39,.12);margin-bottom:28px}.dashboard-head h1{font-size:clamp(32px,4vw,46px);line-height:1.18}.best{padding-left:28px;border-left:1px solid var(--line)}.home-grid{grid-template-columns:minmax(300px,.86fr) minmax(0,2.14fr);gap:30px;align-items:stretch}.home-grid .leaderboard-card,.home-grid .journey-card{border-radius:2px;box-shadow:0 18px 42px rgba(23,44,39,.07)}.home-grid .leaderboard-card{min-height:508px;padding:27px 23px 22px;border-top:4px solid var(--red);background:rgba(250,247,239,.93)}.home-section-label{display:block;color:var(--gold);font-size:9px;letter-spacing:.28em;font-weight:700;margin-bottom:5px}.home-grid .leaderboard-head h2{font-size:29px;letter-spacing:.06em;margin:0}.home-grid .rank-tabs{margin:21px 0 10px;padding:4px;background:#eee9de;display:grid;grid-template-columns:1fr 1fr;gap:3px}.home-grid .rank-tabs button{border:0;padding:10px 5px;background:transparent}.home-grid .rank-tabs button.active{background:#fff;color:var(--jade);box-shadow:0 2px 8px rgba(23,44,39,.08)}.home-grid .leaderboard-card ol{margin:5px 0 0}.home-grid .leaderboard-card li{min-height:38px;padding:9px 5px;border-bottom:1px solid rgba(216,208,191,.72)}.home-grid .leaderboard-card li b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#eee8da;color:var(--red);font-size:13px}.home-grid .leaderboard-card li:nth-child(-n+3) b{background:var(--red);color:#fff}.home-grid .rank-all-btn{margin-top:auto;border-color:var(--line);background:#f7f3ea;color:var(--ink);letter-spacing:.12em}.home-grid .rank-all-btn:hover{background:var(--jade);color:#fff}.home-grid .journey-card{min-height:508px;grid-template-columns:minmax(0,1.16fr) minmax(245px,.84fr);background:#e9e2d4}.home-grid .journey-copy{padding:56px 48px;display:flex;flex-direction:column;align-items:flex-start}.home-grid .journey-copy h2{font-size:clamp(35px,4vw,51px);line-height:1.2;margin:13px 0 18px}.home-grid .journey-copy p{font-size:15px;line-height:1.9;margin:0;max-width:530px}.challenge-facts{display:flex;align-items:center;gap:17px;margin:29px 0;color:var(--jade)}.challenge-facts span{display:flex;align-items:baseline;gap:5px}.challenge-facts b{font-size:25px}.challenge-facts small{font-size:11px;color:var(--muted);white-space:nowrap}.challenge-facts i{width:1px;height:27px;background:#c8beaa}.home-grid .journey-copy .primary{min-width:215px;margin-top:auto;padding:17px 23px}.home-grid .river-illustration{isolation:isolate}.home-grid .river-illustration:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,44,39,.03),transparent 45%);z-index:-1}.illustration-caption{position:absolute;top:37px;right:30px;z-index:3;text-align:right}.illustration-caption small{display:block;color:var(--red);font-size:8px;letter-spacing:.24em;margin-bottom:8px}.illustration-caption strong{font-size:20px;line-height:1.55;font-weight:600}.home-grid .source-note{margin-top:15px;padding:14px 5px 0;line-height:1.65}
@media (min-width:761px) and (max-width:1000px){.dashboard-head{padding-top:38px}.home-grid{grid-template-columns:minmax(270px,.9fr) minmax(0,1.6fr);gap:18px}.home-grid .leaderboard-card{padding:22px 16px}.home-grid .journey-card{grid-template-columns:1fr;min-height:508px}.home-grid .journey-copy{padding:39px 34px}.home-grid .river-illustration{height:190px;order:-1}.illustration-caption{top:24px}.challenge-facts{margin:20px 0}.home-grid .journey-copy .primary{margin-top:8px}}
@media(max-width:760px){#homeView{padding-bottom:28px}.dashboard-head{padding:32px 2px 20px;margin-bottom:20px}.best{padding-left:15px}.home-grid{gap:18px}.home-grid .leaderboard-card{min-height:0;padding:23px 18px}.home-grid .leaderboard-card ol{max-height:390px;overflow:auto}.home-grid .journey-card{min-height:0}.home-grid .journey-copy{padding:35px 27px 38px}.home-grid .journey-copy h2{font-size:36px}.challenge-facts{width:100%;gap:10px;justify-content:space-between;margin:23px 0}.challenge-facts b{font-size:21px}.challenge-facts small{font-size:10px}.home-grid .journey-copy .primary{width:100%;margin-top:4px}.illustration-caption{top:24px;right:22px}.home-grid .source-note{margin-top:0}}
@media(max-width:390px){.challenge-facts span:nth-of-type(3),.challenge-facts i:last-of-type{display:none}.challenge-facts{justify-content:flex-start;gap:18px}.home-grid .journey-copy h2{font-size:32px}}
/* Definitive home redesign: calm, balanced, and spacious */
#homeView{padding:0 0 56px}
#homeView .dashboard-head{display:flex;align-items:center;justify-content:space-between;padding:42px 2px 25px;margin:0;border:0}
#homeView .dashboard-head .eyebrow{margin:0 0 8px;font-size:11px;letter-spacing:.22em}
#homeView .dashboard-head h1{margin:0;font-size:clamp(29px,3.5vw,42px);font-weight:700;letter-spacing:.02em}
#homeView .best{min-width:190px;padding:12px 0 12px 28px;border-left:1px solid var(--line);text-align:left}
#homeView .best span{font-size:11px;letter-spacing:.13em}
#homeView .best strong{display:block;margin-top:5px;color:var(--red);font-size:29px;line-height:1.15}
#homeView .best #bestEra{margin-top:5px;font-size:13px;font-weight:500}
#homeView .home-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:24px;align-items:stretch}
#homeView .leaderboard-card,#homeView .journey-card{margin:0;border:1px solid rgba(184,154,90,.38);border-radius:0;box-shadow:none;background:#faf7ef}
#homeView .leaderboard-card{display:flex;flex-direction:column;min-width:0;min-height:480px;padding:26px 24px 22px;border-top:3px solid var(--red)}
#homeView .leaderboard-head{display:block}
#homeView .home-section-label{display:block;margin-bottom:7px;color:var(--gold);font-size:9px;font-weight:700;letter-spacing:.25em}
#homeView .leaderboard-head h2{margin:0;font-size:28px;line-height:1.2;letter-spacing:.05em}
#homeView .rank-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:22px 0 11px;border-bottom:1px solid var(--line)}
#homeView .rank-tabs button{min-height:39px;padding:8px 2px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:12px}
#homeView .rank-tabs button.active{border-bottom-color:var(--red);background:transparent;color:var(--red);box-shadow:none;font-weight:700}
#homeView .leaderboard-card ol{display:block;flex:1;margin:0;padding:0;overflow:hidden}
#homeView .leaderboard-card li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:35px;padding:7px 2px;border-bottom:1px solid rgba(216,208,191,.58);font-size:14px;line-height:1.25}
#homeView .leaderboard-card li b{display:block;width:auto;height:auto;border-radius:0;background:none;color:var(--red);font-size:13px;text-align:center}
#homeView .leaderboard-card li:nth-child(-n+3) b{background:none;color:var(--red);font-weight:800}
#homeView .leaderboard-card li strong{display:block;color:var(--jade);font-size:12px;text-align:right}
#homeView .leaderboard-card li strong small{display:block;max-width:90px;color:var(--muted);font-size:10px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#homeView .rank-all-btn{width:100%;min-height:42px;margin:18px 0 0;padding:8px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:13px;letter-spacing:.12em}
#homeView .rank-all-btn:hover{border-color:var(--jade);background:var(--jade);color:#fff}
#homeView .home-primary{display:flex;flex-direction:column;min-width:0}
#homeView .journey-card{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(250px,.82fr);min-height:480px;overflow:hidden;background:#e9e2d4}
#homeView .journey-copy{display:flex;flex-direction:column;align-items:flex-start;padding:58px 50px}
#homeView .journey-copy .chapter{font-size:11px;letter-spacing:.22em}
#homeView .journey-copy h2{margin:16px 0 19px;font-size:clamp(39px,4.4vw,56px);line-height:1.13;letter-spacing:.02em}
#homeView .journey-copy p{max-width:540px;margin:0;color:#626a65;font-size:15px;line-height:1.9}
#homeView .rule-pills{display:flex;flex-wrap:wrap;gap:8px;margin:27px 0 30px}
#homeView .rule-pills span{padding:7px 11px;border:1px solid rgba(30,87,75,.28);background:rgba(255,255,255,.25);color:var(--jade);font-size:11px}
#homeView .journey-copy .primary{width:225px;margin:auto 0 0;padding:17px 22px;box-shadow:none}
#homeView .river-illustration{position:relative;min-height:100%;overflow:hidden;background:linear-gradient(155deg,#ded5c4 0%,#c8d0c3 100%)}
#homeView .sun{width:92px;height:92px;right:17%;top:16%;background:#c4775e;opacity:.72}
#homeView .mount{bottom:19%;left:-35px;opacity:.48}
#homeView .m2{right:-145px;left:auto;bottom:15%;opacity:.62}
#homeView .river{inset:62% -32% -45%;background:rgba(248,248,240,.9)}
#homeView .boat{bottom:24%;left:44%;font-size:39px}
#homeView .source-note{display:flex;gap:20px;margin:0;padding:17px 5px 0;color:var(--muted);font-size:11px;line-height:1.7}
#homeView .source-note b{flex:0 0 auto;color:var(--ink)}
@media (min-width:761px) and (max-width:1050px){#homeView .home-grid{grid-template-columns:285px minmax(0,1fr);gap:17px}#homeView .leaderboard-card{padding:23px 17px}#homeView .journey-card{grid-template-columns:1fr}#homeView .river-illustration{height:175px;min-height:175px;order:-1}#homeView .journey-copy{padding:36px 34px 40px}#homeView .journey-copy h2{font-size:40px}#homeView .journey-copy .primary{margin-top:0}#homeView .rule-pills{margin:20px 0 24px}}
@media(max-width:760px){#homeView{padding-bottom:32px}#homeView .dashboard-head{align-items:flex-start;padding:29px 2px 20px}#homeView .dashboard-head h1{font-size:27px}#homeView .best{min-width:0;max-width:46%;padding:7px 0 7px 15px}#homeView .best strong{font-size:20px}#homeView .home-grid{display:flex;flex-direction:column;gap:18px}#homeView .home-primary{display:flex;order:1}#homeView .leaderboard-card{order:2;min-height:0;padding:24px 19px}#homeView .journey-card{grid-template-columns:1fr;min-height:0}#homeView .river-illustration{height:190px;min-height:190px;order:-1}#homeView .journey-copy{padding:32px 26px 34px}#homeView .journey-copy h2{font-size:36px;margin:12px 0 15px}#homeView .journey-copy p{font-size:14px;line-height:1.75}#homeView .rule-pills{margin:21px 0}#homeView .journey-copy .primary{width:100%;margin:0}#homeView .leaderboard-card ol{overflow:visible}#homeView .source-note{order:3;padding:14px 3px 0}#homeView .leaderboard-head h2{font-size:26px}}
@media(max-width:390px){#homeView .dashboard-head{gap:10px}#homeView .best{max-width:44%}#homeView .best strong{font-size:17px}#homeView .river-illustration{height:155px;min-height:155px}#homeView .journey-copy{padding:28px 21px 30px}#homeView .journey-copy h2{font-size:32px}}
/* Compact home ranking + invite prompt when friend list has fewer than 10 entries */
#homeView .leaderboard-card{min-height:0;height:480px;padding:21px 20px 17px}
#homeView .home-section-label{margin-bottom:4px}
#homeView .leaderboard-head h2{font-size:25px}
#homeView .rank-tabs{margin:15px 0 7px}
#homeView .rank-tabs button{min-height:35px;padding:6px 2px}
#homeView .leaderboard-card li{min-height:31px;padding:5px 2px;font-size:13px}
#homeView .leaderboard-card li b{font-size:12px}
#homeView .leaderboard-card li strong{font-size:11px}
#homeView .leaderboard-card li strong small{font-size:9px}
#homeView .rank-all-btn{min-height:38px;margin-top:11px;padding:6px}
#homeView .leaderboard-card li.invite-friends{grid-template-columns:28px minmax(0,1fr);margin-top:7px;padding:9px 7px;border:1px dashed rgba(165,67,53,.42);background:rgba(165,67,53,.035)}
#homeView .leaderboard-card li.invite-friends b{color:var(--red);font-size:19px;line-height:1}
#homeView .leaderboard-card li.invite-friends span{display:block;min-width:0}
#homeView .leaderboard-card li.invite-friends strong{display:block;color:var(--red);font-size:13px;text-align:left}
#homeView .leaderboard-card li.invite-friends small{display:block;margin-top:2px;color:var(--muted);font-size:10px;line-height:1.35}
@media(max-width:760px){#homeView .leaderboard-card{height:auto;padding:21px 18px 17px}#homeView .leaderboard-card li{min-height:34px;padding-block:6px}}
/* Every five correct answers grants 20 seconds */
.countdown{position:relative}.time-bonus{position:absolute;left:50%;top:-8px;transform:translate(-50%,-100%);color:var(--red);font-style:normal;font-size:14px;font-weight:800;white-space:nowrap;opacity:0;pointer-events:none}.countdown.bonus-active .time-bonus{animation:timeBonusPop 1.5s ease-out}.countdown.bonus-active strong{color:var(--jade);animation:timerReward .45s ease-out}@keyframes timeBonusPop{0%{opacity:0;transform:translate(-50%,-45%)}20%{opacity:1;transform:translate(-50%,-100%) scale(1.12)}75%{opacity:1}100%{opacity:0;transform:translate(-50%,-145%)}}@keyframes timerReward{50%{transform:scale(1.18)}}
/* Wrong-answer explanation modal */
body.modal-open{overflow:hidden}.answer-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px}.answer-modal-backdrop{position:absolute;inset:0;background:rgba(16,29,26,.66);backdrop-filter:blur(3px)}.answer-modal-card{position:relative;width:min(560px,100%);max-height:min(700px,calc(100vh - 32px));overflow:auto;background:#faf7ef;border:1px solid var(--gold);padding:38px 40px 35px;box-shadow:0 24px 80px rgba(0,0,0,.27)}.modal-mark{position:absolute;right:28px;top:27px;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--red);color:#fff;font-size:22px}.answer-modal-card h2{margin:10px 0 25px;font-size:34px}.correct-answer-box{padding:18px 20px;border-left:4px solid var(--jade);background:#e7ede6}.correct-answer-box small,.wrong-explanation small{display:block;margin-bottom:7px;color:var(--muted);font-size:10px;letter-spacing:.16em}.correct-answer-box strong{display:block;color:var(--jade);font-size:20px;line-height:1.5}.wrong-explanation{margin:21px 0 25px}.wrong-explanation p{margin:0;color:#4f5854;font-size:15px;line-height:1.85}.answer-modal-card .primary{width:100%}
/* Compact game header and question card: keep question + four options in the first viewport */
.game-view{padding:10px 0 30px}.game-top{max-width:940px}.game-top>.back-btn{min-height:34px;padding:5px 0}.game-status{max-width:940px;margin:0 auto 7px;align-items:center}.game-status small{margin-bottom:1px}.countdown strong{font-size:32px}.reached strong{font-size:18px}.progress-meta{margin:5px 0 6px}.question-card{max-width:940px;margin:19px auto 24px;padding:35px 40px 30px}.date-stamp{top:-15px;right:30px;padding:6px 15px}.question-card h2{font-size:clamp(22px,2.7vw,32px);line-height:1.38;margin:14px 0 20px}.options{gap:8px}.option{min-height:49px;padding:11px 15px;gap:14px;line-height:1.35}.option b{width:27px;height:27px;flex:0 0 27px}.explanation{display:none!important}
@media(max-width:760px){.answer-modal{padding:12px}.answer-modal-card{padding:31px 22px 25px}.modal-mark{right:20px;top:20px;width:42px;height:42px}.answer-modal-card h2{font-size:28px;margin-bottom:20px}.correct-answer-box{padding:15px}.wrong-explanation{margin:18px 0}.game-view{padding-top:3px}.game-top>.back-btn{min-height:32px;padding-block:3px}.game-status{margin:0 auto 3px}.countdown strong{font-size:29px}.reached strong{font-size:15px}.progress-meta{margin:2px 0 5px}.question-card{margin-top:16px;padding:31px 14px 18px}.date-stamp{top:-13px;right:10px;padding:5px 10px}.question-card h2{font-size:clamp(19px,5.5vw,25px);line-height:1.35;margin:10px 0 15px}.question-kicker{font-size:9px}.option{min-height:45px;padding:9px 10px;gap:10px;font-size:14px}.option b{width:25px;height:25px;flex-basis:25px}}
@media(max-height:700px) and (min-width:761px){.site-header{height:62px}.game-view{padding-top:3px}.question-card{margin-top:15px;padding-top:29px}.question-card h2{font-size:25px;margin:9px 0 14px}.option{min-height:44px;padding-block:8px}}
/* Larger answer copy after removing the hidden time-point stamp */
.question-card .option{font-size:17px;line-height:1.45}
.question-card .option span{font-size:inherit}
@media(max-width:760px){.question-card .option{font-size:16px;line-height:1.42}}
/* Emphasize the correct-answer content in the wrong-answer modal */
.answer-modal-card .correct-answer-box{border-left-color:var(--red);background:#f4e4df}
.answer-modal-card .correct-answer-box small{color:var(--red);font-weight:700}
.answer-modal-card .correct-answer-box strong{color:var(--red);font-weight:800}
/* Denser logged-in home ranking panel */
#homeView .home-grid{grid-template-columns:310px minmax(0,1fr);gap:22px;align-items:start}
#homeView .leaderboard-card{align-self:start;height:auto;min-height:0;padding:16px 16px 14px}
#homeView .home-section-label{margin-bottom:2px;font-size:8px}
#homeView .leaderboard-head h2{font-size:23px;line-height:1.1}
#homeView .rank-tabs{margin:10px 0 5px}
#homeView .rank-tabs button{min-height:31px;padding:4px 2px;font-size:11px}
#homeView .leaderboard-card ol{flex:none;overflow:visible}
#homeView .leaderboard-card li{min-height:27px;padding:3px 1px;gap:6px;font-size:12px;line-height:1.15}
#homeView .leaderboard-card li b{font-size:11px}
#homeView .leaderboard-card li strong{font-size:10px;line-height:1.15}
#homeView .leaderboard-card li strong small{margin-top:1px;font-size:8px}
#homeView .rank-all-btn{min-height:34px;margin-top:8px;padding:4px;font-size:12px}
#homeView .leaderboard-card li.invite-friends{margin-top:5px;padding:7px 6px}
@media (min-width:761px) and (max-width:1050px){#homeView .home-grid{grid-template-columns:270px minmax(0,1fr);gap:15px}#homeView .leaderboard-card{padding:15px 13px 13px}}
@media(max-width:760px){#homeView .leaderboard-card{height:auto;padding:17px 16px 14px}#homeView .leaderboard-card li{min-height:29px;padding-block:4px}}
/* Stronger time-bonus feedback and simplified home rules */
.time-bonus{top:-12px;font-size:25px;font-weight:900;letter-spacing:.04em;text-shadow:0 2px 0 #faf7ef,0 0 12px rgba(165,67,53,.2)}
#homeView .journey-copy p{margin-bottom:30px}
#homeView .journey-copy .primary{margin-top:auto}
@media(max-width:760px){.time-bonus{top:-9px;font-size:22px}#homeView .journey-copy p{margin-bottom:24px}}
/* Balanced home ranking: same height as challenge, dense rows, stronger score type */
#homeView .home-grid{grid-template-columns:330px minmax(0,1fr);gap:24px;align-items:stretch}
#homeView .leaderboard-card{align-self:stretch;height:480px;min-height:480px;padding:15px 18px 14px;overflow:hidden}
#homeView .home-section-label{margin-bottom:1px;font-size:9px}
#homeView .leaderboard-head h2{font-size:27px;line-height:1.05}
#homeView .rank-tabs{margin:7px 0 3px}
#homeView .rank-tabs button{min-height:31px;padding:3px 2px;font-size:13px;line-height:1.15}
#homeView .leaderboard-card ol{display:flex;flex:1;flex-direction:column;overflow:hidden}
#homeView .leaderboard-card li{flex:0 0 32px;min-height:32px;padding:2px 1px;grid-template-columns:27px minmax(0,1fr) auto;gap:6px;font-size:15px;line-height:1.08}
#homeView .leaderboard-card li b{font-size:14px}
#homeView .leaderboard-card li>span{font-size:15px;font-weight:600}
#homeView .leaderboard-card li strong{min-width:76px;font-size:15px;line-height:1.05;font-weight:800}
#homeView .leaderboard-card li strong small{max-width:100px;margin-top:2px;font-size:12px;line-height:1.05;font-weight:500}
#homeView .rank-all-btn{flex:0 0 34px;min-height:34px;margin-top:6px;padding:3px;font-size:14px}
#homeView .leaderboard-card li.invite-friends{flex:0 0 auto;min-height:43px;margin-top:3px;padding:5px 6px}
#homeView .leaderboard-card li.invite-friends strong{min-width:0;font-size:13px}
#homeView .leaderboard-card li.invite-friends small{font-size:10px}
@media (min-width:761px) and (max-width:1050px){#homeView .home-grid{grid-template-columns:285px minmax(0,1fr);gap:17px}#homeView .leaderboard-card{height:480px;min-height:480px;padding:14px 13px 13px}#homeView .leaderboard-card li{font-size:14px}#homeView .leaderboard-card li>span{font-size:14px}#homeView .leaderboard-card li strong{min-width:69px;font-size:14px}#homeView .leaderboard-card li strong small{font-size:11px}}
@media(max-width:760px){#homeView .leaderboard-card{align-self:auto;height:auto;min-height:0;padding:17px 16px 14px;overflow:visible}#homeView .leaderboard-card ol{display:block;overflow:visible}#homeView .leaderboard-card li{min-height:36px;padding-block:4px;font-size:15px}#homeView .leaderboard-card li>span{font-size:15px}#homeView .leaderboard-card li strong{font-size:15px}#homeView .leaderboard-card li strong small{font-size:12px}}
/* Highlight correct-answer phrases inside the explanation */
.wrong-explanation .answer-keyword{padding:0 .12em;background:rgba(165,67,53,.1);color:var(--red);font-weight:800;border-radius:2px}
/* Highlight the explanatory statement and knowledge points, not merely repeated answer words */
.wrong-explanation .answer-keyword{padding:0;background:transparent;color:inherit;font-weight:inherit}
.wrong-explanation .answer-knowledge{color:var(--red);font-weight:700}
/* Wrong-vs-correct comparison and selective knowledge highlighting */
.answer-compare{display:grid;grid-template-columns:1fr 1fr;gap:10px}.chosen-answer-box,.correct-answer-box{min-width:0;padding:15px 16px;border-left:4px solid}.chosen-answer-box{border-left-color:#8d938f;background:#ecebe7}.chosen-answer-box small,.correct-answer-box small{display:block;margin-bottom:7px;font-size:10px;letter-spacing:.16em;font-weight:700}.chosen-answer-box small{color:#6f7571}.chosen-answer-box strong{display:block;color:#59605c;font-size:17px;line-height:1.45;text-decoration:line-through;text-decoration-color:rgba(165,67,53,.48)}.answer-modal-card .correct-answer-box{padding:15px 16px}.wrong-explanation .answer-knowledge{padding:0 .08em;background:rgba(165,67,53,.09);color:var(--red);font-weight:800;border-radius:2px}.wrong-explanation .answer-knowledge+mark.answer-knowledge{margin-left:0}
@media(max-width:520px){.answer-compare{grid-template-columns:1fr}.chosen-answer-box,.answer-modal-card .correct-answer-box{padding:12px 14px}.chosen-answer-box strong,.correct-answer-box strong{font-size:16px}}
/* Full option-by-option review; explanatory text is no longer highlighted red */
.wrong-explanation .answer-knowledge{padding:0;background:transparent;color:inherit;font-weight:inherit}.wrong-explanation p{color:#4f5854;font-weight:400}.option-analysis{margin:0 0 24px}.option-analysis>small{display:block;margin-bottom:8px;color:var(--muted);font-size:10px;letter-spacing:.16em}.option-analysis-row{display:grid;grid-template-columns:27px minmax(0,1fr);gap:10px;padding:10px 9px;border-top:1px solid var(--line)}.option-analysis-row:last-child{border-bottom:1px solid var(--line)}.option-analysis-row>b{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#dedbd2;color:#505753;font-size:12px}.option-analysis-row strong{display:block;color:var(--ink);font-size:14px;line-height:1.45}.option-analysis-row em{display:inline-block;margin-left:8px;padding:2px 5px;font-size:9px;font-style:normal;font-weight:700;vertical-align:2px;background:#e2e0da;color:#666}.option-analysis-row p{margin:3px 0 0;color:#626966;font-size:12px;line-height:1.55}.option-analysis-row.is-correct{background:#f8ece8}.option-analysis-row.is-correct>b,.option-analysis-row.is-correct em{background:var(--red);color:#fff}.option-analysis-row.is-chosen{background:#efefeb}.option-analysis-row.is-chosen em{background:#737975;color:#fff}.answer-modal-card{max-height:min(780px,calc(100vh - 24px));padding-top:31px}.answer-modal-card h2{margin-bottom:18px}.wrong-explanation{margin:16px 0 18px}
@media(max-width:520px){.option-analysis-row{padding:8px 5px;gap:8px}.option-analysis-row strong{font-size:13px}.option-analysis-row p{font-size:11px}.answer-modal-card{padding-top:26px}}
/* Targeted explanation comparing the learner's choice with the correct answer */
.wrong-explanation .comparison-line{display:block;padding:8px 10px;color:#4f5854;font-weight:400;line-height:1.7;background:#f0eee7;border-left:3px solid #b9b5aa}.wrong-explanation .comparison-line+.comparison-line{margin-top:7px}.wrong-explanation .comparison-2{background:#f7ece8;border-left-color:var(--red)}.wrong-explanation .comparison-3{background:#ebe9e1;border-left-color:var(--gold);font-weight:600}
@media(max-width:520px){.wrong-explanation .comparison-line{padding:7px 8px;font-size:12px;line-height:1.6}}
/* One-screen journey result: summary left, poster right */
#resultView.result-view{min-height:calc(100vh - 152px);padding:26px 18px;text-align:left;display:flex;align-items:center}
#resultView .result-layout{width:min(920px,100%);margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:clamp(38px,7vw,82px);align-items:center}
#resultView .result-summary{min-width:0}
#resultView .result-seal{width:56px;height:56px;margin:0 0 17px;border-radius:50%;font-size:24px}
#resultView .eyebrow{margin-bottom:9px}
#resultView h1{margin:0 0 10px;font-size:clamp(36px,5vw,54px);line-height:1.12}
#resultView .result-summary>p{margin:0;max-width:510px;color:var(--muted);font-size:14px;line-height:1.65}
#resultView .score-box{margin:24px 0 27px;display:grid;grid-template-columns:auto minmax(0,1fr);justify-content:start;align-items:end;gap:4px 12px;text-align:left}
#resultView .score-box span{grid-row:1;color:var(--muted);font-size:12px}
#resultView .score-box strong{grid-row:2;font-size:clamp(44px,6vw,68px);line-height:1;color:var(--jade)}
#resultView .score-box small{grid-row:2;align-self:end;padding-bottom:7px;font-size:13px;color:var(--muted)}
#resultView .result-actions{justify-content:flex-start;gap:12px}
#resultView .result-actions .primary,#resultView .result-actions .secondary{min-height:48px;padding:13px 21px}
#resultView .poster-wrap{width:100%;max-width:255px;margin:0;justify-self:end}
#resultView .poster-wrap img{max-height:408px;object-fit:contain;background:#f3efe5}
#resultView .poster-tip{margin-top:8px;font-size:10px}
#resultView .poster-wrap a{margin-top:9px;padding:10px 17px;text-align:center;font-size:13px}
@media(max-width:760px){#resultView.result-view{display:block;min-height:0;padding:32px 8px 44px;text-align:center}#resultView .result-layout{display:flex;flex-direction:column;gap:27px}#resultView .result-summary{width:100%}#resultView .result-seal{margin:0 auto 16px}#resultView .result-summary>p{margin-inline:auto}#resultView .score-box{display:flex;margin:22px auto 25px;justify-content:center;text-align:center}#resultView .score-box strong{font-size:clamp(42px,14vw,66px)}#resultView .score-box small{padding-bottom:5px}#resultView .result-actions{justify-content:center}#resultView .poster-wrap{max-width:280px;margin:auto;justify-self:auto}#resultView .poster-wrap img{max-height:none}}
/* Stable empty state for the compact home leaderboard */
#homeView .leaderboard-card li.home-rank-empty{display:flex;flex:1 1 auto;min-height:110px;padding:26px 12px;align-items:center;justify-content:center;border:0;background:#f5f1e8;text-align:center}
#homeView .leaderboard-card li.home-rank-empty span{display:block;width:100%;color:var(--muted);font-size:14px;font-weight:500;line-height:1.65;white-space:normal;overflow-wrap:anywhere}
@media(max-width:760px){#homeView .leaderboard-card li.home-rank-empty{min-height:90px;padding:22px 10px}#homeView .leaderboard-card li.home-rank-empty span{font-size:14px}}
/* Share the latest result poster from the friends leaderboard */
#homeView .leaderboard-card li.invite-friends{cursor:pointer}#homeView .leaderboard-card li.invite-friends:hover,#homeView .leaderboard-card li.invite-friends:focus{border-color:var(--red);background:rgba(165,67,53,.09);outline:none}.share-poster-modal{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:18px}.share-poster-backdrop{position:absolute;inset:0;background:rgba(15,28,24,.72);backdrop-filter:blur(3px)}.share-poster-card{position:relative;width:min(390px,100%);max-height:calc(100vh - 30px);overflow:auto;padding:27px 30px 25px;background:#faf7ef;border:1px solid var(--line);box-shadow:0 20px 70px rgba(0,0,0,.28);text-align:center}.share-poster-card h2{margin:8px 28px 7px;font-size:24px}.share-poster-card>p{margin:0 0 14px;color:var(--muted);font-size:12px;line-height:1.55}.share-poster-close{position:absolute;right:13px;top:10px;width:38px;height:38px;border:0;background:transparent;color:var(--ink);font-size:27px;cursor:pointer}.share-poster-card img{display:block;width:auto;max-width:100%;height:min(56vh,480px);margin:auto;border:1px solid var(--line);box-shadow:5px 6px 0 rgba(30,87,75,.1);-webkit-touch-callout:default}.share-poster-card .primary{width:100%;margin-top:17px;text-decoration:none;padding:13px 18px}.share-poster-card .primary b{margin-left:auto}@media(max-width:520px){.share-poster-card{padding:23px 18px 19px}.share-poster-card h2{font-size:21px}.share-poster-card img{height:min(58vh,470px)}}
/* Header account name and username editor */
.header-actions{align-items:center}.account-btn{max-width:230px;display:flex;align-items:center;gap:8px;padding:6px 11px 6px 7px;border:1px solid var(--line);background:#faf7ef;color:var(--ink);font:inherit;font-size:13px;cursor:pointer}.account-btn:hover{border-color:var(--jade);color:var(--jade)}.account-avatar{flex:0 0 27px;width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:var(--jade);color:#fff;font-size:12px}.account-btn #headerUsername{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.username-modal{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:18px}.username-modal-backdrop{position:absolute;inset:0;background:rgba(15,28,24,.72);backdrop-filter:blur(3px)}.username-modal-card{position:relative;width:min(430px,100%);padding:34px 36px 31px;background:#faf7ef;border:1px solid var(--line);box-shadow:0 20px 70px rgba(0,0,0,.28)}.username-modal-card h2{margin:8px 0 8px;font-size:29px}.username-modal-card>p{color:var(--muted);font-size:13px;line-height:1.7}.username-modal-card label{display:block;margin-top:22px;font-size:13px;font-weight:700}.username-modal-card input{width:100%;margin-top:7px;padding:13px 12px;border:1px solid #bdb4a4;background:#fffdf7;color:var(--ink);font:inherit;outline:none}.username-modal-card input:focus{border-color:var(--jade);box-shadow:0 0 0 3px rgba(30,87,75,.1)}.username-error{min-height:23px!important;margin:7px 0!important;color:var(--red)!important;font-size:12px!important}.username-modal-card .primary{width:100%}.username-modal-card .primary:disabled{opacity:.6;cursor:wait}.username-modal-close{position:absolute;right:13px;top:10px;width:38px;height:38px;border:0;background:transparent;color:var(--ink);font-size:27px;cursor:pointer}@media(max-width:600px){.site-header{padding-inline:12px}.header-actions{gap:2px}.account-btn{max-width:128px;padding-right:7px}.account-avatar{display:none}.username-modal-card{padding:29px 22px 24px}}@media(max-width:390px){.account-btn{max-width:92px;font-size:12px}.header-actions .text-btn{padding-inline:7px}}
/* Procedural game music control */
.game-command-row{display:flex;align-items:center;justify-content:space-between}.sound-btn{display:flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid var(--line);background:#faf7ef;color:var(--jade);font:inherit;font-size:12px;cursor:pointer}.sound-btn span{font-size:17px;line-height:1}.sound-btn b{font-weight:600}.sound-btn:hover{border-color:var(--jade)}.sound-btn.muted{color:var(--muted);background:transparent}@media(max-width:520px){.sound-btn b{display:none}.sound-btn{width:38px;height:38px;justify-content:center;padding:0}}
/* Result page: on phones, keep the end message brief and make the poster primary. */
@media(min-width:761px){#resultView .result-layout{grid-template-areas:"summary poster" "actions poster";grid-template-rows:auto auto}#resultView .result-summary{grid-area:summary;align-self:end}#resultView .poster-wrap{grid-area:poster}#resultView .result-actions{grid-area:actions;align-self:start}}
@media(max-width:760px){#resultView.result-view{padding:19px 4px 34px}#resultView .result-layout{gap:0}#resultView .result-summary{display:block}#resultView .result-summary>*{display:none!important}#resultView .result-summary>.eyebrow{display:block!important;margin:0 0 13px;color:var(--ink);font-size:19px;line-height:1.35;letter-spacing:.08em}#resultView .poster-wrap{order:2;width:min(100%,330px);max-width:330px;margin:0 auto}#resultView .poster-wrap img{width:100%;max-height:none;box-shadow:5px 6px 0 rgba(30,87,75,.1)}#resultView .poster-tip{margin-top:10px;font-size:11px}#resultView .poster-wrap a{margin-top:8px;padding:10px 15px}#resultView .result-actions{order:3;width:min(100%,330px);margin:14px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}#resultView .result-actions .primary,#resultView .result-actions .secondary{width:100%;min-height:47px;padding:11px 14px;justify-content:center}#resultView .result-actions .primary b{margin-left:8px}}
@media(max-width:380px){#resultView .result-actions{grid-template-columns:1fr}#resultView .poster-wrap,#resultView .result-actions{width:min(100%,310px)}}
/* Mobile result poster: long-press is the primary save/share action. */
@media(max-width:760px){#resultView .poster-tip{font-size:14px;font-weight:700;line-height:1.55;color:var(--ink);margin-top:12px}#resultView #downloadPoster{display:none}}
/* Improve readability of the wrong-answer explanation. */
.wrong-explanation p{font-size:18px;line-height:1.9}
.wrong-explanation .comparison-line{font-size:17px;line-height:1.8}
@media(max-width:520px){.wrong-explanation p{font-size:17px;line-height:1.82}.wrong-explanation .comparison-line{font-size:16px;line-height:1.75}}
/* Explicitly distinguish the correct answer from a nearby confusing option. */
.wrong-explanation .comparison-3::first-line{font-weight:800;color:var(--ink)}
.wrong-explanation .comparison-3{background:#f6f0df;border-left-color:#b58a35}
