@font-face{font-family:Jua;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jua.woff2)format("woff2")}:root:lang(ja){--font-body:-apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic UI", Meiryo, sans-serif;--font-display:var(--font-body)}:root:lang(zh){--font-body:-apple-system, BlinkMacSystemFont, "PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif;--font-display:var(--font-body)}:root:lang(ja),:root:lang(zh){overflow-wrap:anywhere}:root{--font-body:Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Segoe UI", sans-serif;--font-display:"Jua", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Segoe UI", sans-serif;--text-main:#0f172a;--text-soft:#64748b;--background:#f8fafc;--blue:#2563eb;--green:#22c55e;--red:#ef4444;--color-primary:#2468dc;--color-primary-strong:#1749a6;--color-accent:#ffca45;--color-surface:#fff;--color-surface-soft:#f5f8fc;--color-border:#e3e9f2;--color-muted:#6b778a;--radius-control:14px;--radius-card:20px;--radius-feature:24px;--shadow-card:0 6px 18px #1e375a12;--shadow-float:0 18px 42px #1737692e;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;font-family:var(--font-body);color:var(--text-main);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at top,#bfdbfe73,#0000 34%),linear-gradient(#f8fafc,#eef4ff)}*{box-sizing:border-box}html,body,#root{min-height:100%;overflow-x:hidden}body,h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-main)}button,input{font-family:inherit}button{-webkit-tap-highlight-color:transparent}.country-flag{vertical-align:-.1em;-webkit-user-select:none;user-select:none;border-radius:.1em;width:auto;height:.86em;display:inline-block;box-shadow:0 0 0 .04em #21395e29}:root{--ground:#fff9ec;--reward-text:#4a3a00;--primary-text:#0a5f90;--ink:#3a3128;--card-line:#e8dfc9;--primary:#34b8ff;--primary-deep:#1490d6;--reward:#ffc93c;--reward-deep:#e0a61c;--correct:#58cc66;--correct-deep:#3aa648;--wrong:#ff6b6b;--wrong-soft:#ffe3e3;--wrong-deep:#c23b3b;--primary-soft:#e3f6ff;--reward-soft:#fff3d2;--correct-soft:#e2f7e4;--ink-soft:#6b5d48;--ink-faint:#9c8b72;--correct-text:#297433;--wrong-text:#b63737;--color-primary:var(--primary);--color-primary-strong:var(--primary-deep);--color-accent:var(--reward);--color-surface:#fff;--color-surface-soft:#fff3d9;--color-border:var(--card-line);--color-muted:var(--ink-soft);--background:var(--ground);--text-main:var(--ink);--text-soft:var(--ink-soft);--font-display:"Jua", var(--font-body);--red:var(--wrong);--green:var(--correct);--blue:var(--primary)}.app-shell{background-color:#0000;background-image:linear-gradient(90deg,#34b8ff0d 1px,#0000 1px),linear-gradient(#58cc660d 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:42px 42px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;place-items:center;min-height:100svh;padding:24px;display:grid;position:relative}.phone-frame{background:radial-gradient(circle at top,#fffffffa,#f8fafcf2),linear-gradient(#fffffff5,#f1f5f9f0);border:1px solid #94a3b833;border-radius:36px;flex-direction:column;width:min(430px,100%);height:min(920px,100svh - 32px);display:flex;position:relative;overflow:hidden;box-shadow:0 28px 60px #0f172a29,inset 0 1px #ffffffb3}.phone-frame:before{content:"";pointer-events:none;border:1px solid #ffffffa6;border-radius:28px;position:absolute;inset:14px}.top-bar{letter-spacing:.18em;text-transform:uppercase;color:var(--primary);justify-content:space-between;align-items:center;padding:20px 24px 12px;font-size:.78rem;font-weight:800;display:flex}.screen{scrollbar-width:none;overflow-anchor:none;flex:1;padding:0 18px 20px;overflow-y:auto}.screen::-webkit-scrollbar{display:none}.screen-stack{gap:14px;padding-bottom:20px;display:grid}.surface-card{background:#fffffff0;border:1px solid #e2e8f0d9;border-radius:28px;animation:.55s backwards rise-in;position:relative;overflow:hidden;box-shadow:0 20px 40px #0f172a14,0 4px 10px #0f172a0a}.phone-frame{background:radial-gradient(circle at 88% 4%, #ffc93c29, transparent 23%), linear-gradient(180deg, var(--ground) 0%, #fff4d9 100%)}.top-bar{color:var(--ink);font-family:var(--font-display);padding-bottom:14px}.top-bar span:first-child{padding-left:14px;position:relative}.top-bar span:first-child:before{content:"";background:var(--reward);border-radius:3px;width:8px;height:8px;position:absolute;top:50%;left:0;transform:translateY(-50%)rotate(12deg)}.section-card{border-color:#d6e0f2c2;box-shadow:0 14px 34px #27395c12}.tab-bar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe6;border:1px solid #d6e0f2cc;border-radius:23px;margin:0 12px 12px;padding:7px;box-shadow:0 16px 34px #27395c24}.tab-button{border-radius:17px}.tab-button.is-active{color:#fff;background:var(--primary);box-shadow:0 8px 18px #1f5dda3d}.quiz-screen{height:100%;min-height:0;display:grid}.quiz-play-card,.quiz-finish-card{background:radial-gradient(circle at 90% 5%, #ffca4538, transparent 22%), linear-gradient(180deg, #fff, var(--ground));border:0;min-height:100%;padding:18px}.quiz-play-card{grid-template-rows:auto auto minmax(0,1fr) auto;gap:16px;display:grid}.quiz-topline{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.quiz-topline>strong{color:var(--ink-soft);font-size:.85rem}.quiz-progress-track{background:#e4eaf4;border-radius:999px;height:9px;overflow:hidden}.quiz-progress-track span{border-radius:inherit;background:linear-gradient(90deg,#23b888,#32d399);height:100%;transition:width .35s;display:block}.quiz-prompt-card{text-align:center;background:radial-gradient(circle at 50% 30%,#98c8ff66,#0000 34%),linear-gradient(145deg,#eaf4ff,#f8fbff);border:1px solid #d7e7fb;border-radius:28px;align-content:center;justify-items:center;gap:12px;min-height:225px;padding:20px;display:grid}.quiz-prompt-card h2{max-width:290px;font-size:1.42rem;line-height:1.12}.quiz-hero{filter:drop-shadow(0 14px 18px #1490d626);place-items:center;min-height:76px;font-size:4.2rem;display:grid}.quiz-hero.is-word{min-height:64px;color:var(--primary-deep);font-family:var(--font-display);padding:0 12px;font-size:2.25rem}.quiz-hero-caption{letter-spacing:.02em;color:var(--ink-soft);text-transform:uppercase;font-size:.8rem;font-weight:700}.quiz-options{grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:10px;display:grid}.quiz-type-form{align-content:center;gap:12px;display:grid}.quiz-type-form>label{color:var(--ink);letter-spacing:.06em;text-transform:uppercase;font-size:.85rem;font-weight:900}.quiz-type-field{border:2px solid var(--card-line);min-height:68px;box-shadow:0 7px 0 var(--card-line);background:#fff;border-radius:20px;align-items:center;gap:10px;padding:8px 10px 8px 18px;transition:border-color .2s,box-shadow .2s,background .2s;display:flex}.quiz-type-field:focus-within{border-color:var(--primary);box-shadow:0 7px 0 var(--primary), 0 14px 28px #1490d62e}.quiz-type-field.is-correct{border-color:var(--correct-deep);background:var(--correct-soft);box-shadow:0 7px 0 var(--correct-deep)}.quiz-type-field.is-wrong{border-color:var(--wrong);background:var(--wrong-soft);box-shadow:0 7px 0 var(--wrong)}.quiz-type-field input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:1.08rem;font-weight:800}.quiz-type-field input::placeholder{color:var(--ink-faint);font-weight:600}.quiz-type-field>span{width:42px;height:42px;color:var(--primary-text);background:var(--primary-soft);border-radius:14px;flex:none;place-items:center;font-size:.85rem;font-weight:900;display:grid}.quiz-type-form>p{color:var(--ink-soft);font-size:.85rem;line-height:1.45}.quiz-type-form .primary-button{margin-top:4px}.quiz-option{border:1px solid var(--card-line);min-height:76px;color:var(--ink);text-align:left;cursor:pointer;box-shadow:0 7px 0 var(--card-line);background:#fff;border-radius:20px;align-items:center;gap:10px;padding:12px;transition:transform .18s,opacity .18s,background .18s;display:flex}.quiz-option>span{width:30px;height:30px;color:var(--primary-text);background:var(--primary-soft);border-radius:10px;flex:none;place-items:center;font-size:.85rem;font-weight:900;display:grid}.quiz-option.is-correct{border-color:var(--correct-deep);background:var(--correct-soft);box-shadow:0 7px 0 var(--correct-deep)}.quiz-option.is-wrong{border-color:var(--wrong);background:var(--wrong-soft);box-shadow:0 7px 0 var(--wrong)}.quiz-option.is-muted{opacity:.48}.quiz-feedback{background:var(--correct-soft);justify-content:space-between;align-items:center;gap:12px;margin:0 -18px -18px;padding:15px 18px;animation:.28s backwards feedback-up;display:flex}.quiz-feedback.is-wrong{background:var(--wrong-soft)}.quiz-feedback>div{gap:2px;display:grid}.quiz-feedback span{color:var(--ink-soft);font-size:.85rem}.quiz-feedback .quiz-canonical-answer{color:var(--correct-text);font-family:var(--font-display);font-size:1.55rem;font-weight:800;line-height:1.05}.quiz-feedback.is-wrong .quiz-canonical-answer{color:var(--wrong-text)}.quiz-feedback button{color:#fff;min-height:43px;font:inherit;cursor:pointer;background:#15966b;border:0;border-radius:14px;padding:0 15px;font-weight:800}.quiz-feedback.is-wrong button{background:#df4b59}.quiz-finish-card{text-align:center;align-content:center;justify-items:center;gap:14px;display:grid}.quiz-finish-orbit{color:#6d4b00;background:var(--reward);border-radius:30px;place-items:center;width:88px;height:88px;font-size:2.4rem;display:grid;transform:rotate(-6deg);box-shadow:0 12px #dfa515,0 24px 40px #dfa51538}.quiz-score-ring{color:#fff;background:linear-gradient(145deg, var(--primary), var(--primary-deep));border-radius:50%;place-content:center;width:138px;height:138px;display:grid;box-shadow:0 22px 42px #1f5dda45}.quiz-score-ring strong{font-family:var(--font-display);font-size:3rem;line-height:.9}.quiz-score-ring span{opacity:.7}.quiz-finish-card .primary-button,.quiz-finish-card .secondary-button{width:100%}@keyframes feedback-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (height<=760px){.quiz-prompt-card{min-height:174px;padding:14px}.quiz-hero{min-height:54px;font-size:3.35rem}.quiz-option{min-height:62px}}.app-shell{background:var(--ground)}.phone-frame{background:var(--ground);border-radius:28px;box-shadow:0 24px 56px #172b4d24}.screen-stack{gap:12px}@media (width<=480px){.app-shell{min-height:100svh;padding:0}.phone-frame{width:100%;height:100svh;padding-top:env(safe-area-inset-top);box-shadow:none;border:0;border-radius:0}.tab-bar{border-radius:20px 20px 0 0;margin:0}}.surface-card:after{content:"";pointer-events:none;background:linear-gradient(#ffffff47,#0000 26%);position:absolute;inset:0}.primary-button,.secondary-button,.ghost-button,.back-button,.filter-chip,.tab-button,.country-chip,.settings-row,.match-item{cursor:pointer;font:inherit;border:0}.app-icon{flex:none;width:1em;height:1em;display:block;overflow:visible}.primary-button,.secondary-button,.ghost-button{border-radius:18px;min-height:52px;padding:0 18px;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s}.primary-button:hover,.secondary-button:hover,.ghost-button:hover,.filter-chip:hover,.tab-button:hover,.country-chip:hover,.match-item:hover,.settings-row:hover{transform:translateY(-1px)}.primary-button{background:linear-gradient(135deg, var(--primary), #3b82f6);color:#fff;box-shadow:0 16px 28px #1490d647}.secondary-button{background:var(--primary-soft);color:var(--primary-deep)}.ghost-button{color:var(--ink);background:#f1f5f9f2}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled{cursor:default;opacity:.72;transform:none}.back-button{background:var(--primary-soft);width:42px;height:42px;color:var(--primary-deep);border-radius:16px;font-size:1.8rem;font-weight:900;line-height:1}.back-button .app-icon{stroke-width:2.2px;margin:auto;font-size:1.25rem}.progress-value,.finish-score{font-family:var(--font-display);margin:8px 0;font-size:2rem;line-height:1}.progress-track{background:var(--card-line);border-radius:999px;width:100%;height:12px;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--correct));height:100%}.section-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.section-header h2,.profile-hero h2{margin:8px 0 4px;font-size:1.28rem;line-height:1.08}.study-map-shell{background:radial-gradient(circle at 78% 16%, #fffffff5, transparent 20%), linear-gradient(145deg, var(--primary-soft) 0%, #f0f9ff 52%, #fff7ed 100%);width:100%;min-height:138px;color:inherit;font:inherit;text-align:left;border:1px solid #bae6fdf2;border-radius:22px;padding:0;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffdb,0 16px 28px #0ea5e91c}.study-map-shell.is-interactive{cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}.study-map-shell.is-interactive:hover{border-color:#1490d680;box-shadow:0 18px 32px #1490d629}.study-map-shell.is-interactive:focus-visible{outline-offset:2px;outline:3px solid #1490d652}.study-map-shell:before,.study-map-shell:after{content:"";pointer-events:none;border-radius:999px;position:absolute}.study-map-shell:before{background:#fbbf2433;width:122px;height:122px;top:-44px;right:-36px}.study-map-shell:after{background:#3aa64821;width:92px;height:92px;bottom:24px;left:-30px}.study-map-grid{fill:none;stroke:#0e749017;stroke-width:.65px}.study-country-boundary{fill:#1490d6c7;stroke:#1e40afeb;stroke-width:1.15px;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 8px 10px #1e40af2b)}.capital-dot{fill:var(--wrong);stroke:#fff;stroke-width:2px}.map-caption{z-index:2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);text-align:left;background:#ffffffc7;border:1px solid #ffffffd9;border-radius:15px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex;position:absolute;bottom:10px;left:10px;right:10px;box-shadow:0 12px 20px #0f172a14}.map-caption span{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:900}.map-caption strong{color:var(--ink);font-size:.9rem}.map-caption em{color:var(--primary);white-space:nowrap;margin-left:auto;font-size:.66rem;font-style:normal;font-weight:900}.game-panel{padding:20px}.match-active-screen{padding-bottom:10px;overflow:hidden}.match-play-screen{height:100%;min-height:0;display:grid}.match-play-panel{grid-template-rows:auto auto auto minmax(0,1fr) auto;height:100%;min-height:0;padding:14px;display:grid;position:relative}.match-play-panel .section-header{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;margin-bottom:10px;display:grid}.match-play-panel .section-header h2{font-size:1.08rem}.match-play-panel .mode-switcher{justify-content:flex-end;gap:6px}.match-play-panel .filter-chip{min-height:34px;padding:0 10px;font-size:.85rem}.mode-switcher{flex-wrap:wrap;gap:10px;display:flex}.filter-chip{min-height:42px;color:var(--ink);background:#f1f5f9;border-radius:999px;padding:0 16px;font-weight:700}.filter-chip.is-active{background:var(--primary);color:#fff}.challenge-timer{color:#1e3a8a;background:radial-gradient(circle at 88% 12%, #bfdbfed9, transparent 34%), linear-gradient(135deg, #f8fbff, var(--primary-soft));border:1px solid #60a5fa70;border-radius:20px;min-width:0;margin-bottom:8px;padding:10px 12px 9px;transition:border-color .18s,background .18s,box-shadow .18s;box-shadow:0 8px 20px #1490d617}.challenge-timer-main{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.challenge-timer-icon{color:#fff;background:linear-gradient(145deg, #60a5fa, var(--primary));border-radius:13px;place-items:center;width:36px;height:36px;display:grid;box-shadow:0 6px 13px #1490d638}.challenge-timer-icon .app-icon{stroke-width:2.2px;width:20px;height:20px}.challenge-timer-message{gap:1px;min-width:0;display:grid}.challenge-timer-message small{color:var(--ink-soft);font-size:.85rem;font-weight:800}.challenge-timer-message strong{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;line-height:1.2;overflow:hidden}.challenge-timer-count{min-width:58px;color:var(--primary-deep);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:baseline;gap:3px;display:flex}.challenge-timer-count b{font-family:var(--font-display);letter-spacing:-.05em;font-size:2rem;line-height:.95}.challenge-timer-count small{font-size:.85rem;font-weight:900}.challenge-timer-track{background:#94a3b838;border-radius:999px;height:6px;margin-top:8px;overflow:hidden}.challenge-timer-track span{border-radius:inherit;background:linear-gradient(90deg, var(--primary), #60a5fa);height:100%;transition:width .32s linear,background .18s;display:block;box-shadow:0 0 8px #1490d652}.challenge-timer.is-warning{color:#92400e;background:radial-gradient(circle at 88% 12%,#fde68ae6,#0000 34%),linear-gradient(135deg,#fffbeb,#fff4ce);border-color:#f59e0b80}.challenge-timer.is-warning .challenge-timer-icon,.challenge-timer.is-warning .challenge-timer-track span{background:linear-gradient(135deg,#fbbf24,#f97316)}.challenge-timer.is-warning .challenge-timer-count{color:#c2410c}.challenge-timer.is-critical{color:#991b1b;background:radial-gradient(circle at 88% 12%,#fecacaf0,#0000 35%),linear-gradient(135deg,#fff7f7,#ffe4e6);border-color:#c23b3bc7;animation:.68s ease-in-out infinite alternate challenge-timer-alert}.challenge-timer.is-critical .challenge-timer-icon,.challenge-timer.is-critical .challenge-timer-track span{background:linear-gradient(135deg, var(--wrong), var(--wrong-deep))}.challenge-timer.is-critical .challenge-timer-count{color:var(--wrong-text);animation:.68s ease-in-out infinite alternate challenge-timer-countdown}@keyframes challenge-timer-alert{to{box-shadow:0 9px 24px #c23b3b4d}}@keyframes challenge-timer-countdown{to{opacity:.62;transform:scale(1.08)}}.match-scoreboard{color:#17345d;background:radial-gradient(circle at 88% 18%,#ffde6461,#0000 24%),linear-gradient(135deg,#eef6ff 0%,#f8fbff 54%,#fff9e7 100%);border:1px solid #b8d3f6b8;border-radius:19px;justify-content:center;align-items:center;gap:10px;min-width:0;min-height:58px;padding:10px 14px;display:flex;position:relative;overflow:visible;box-shadow:0 8px 18px #29568f14}.match-score-metric{text-align:center;flex:1 1 0;justify-items:center;gap:1px;min-width:0;display:grid}.match-score-metric span{color:#71839b;font-size:.85rem;font-weight:850}.match-score-metric strong{color:#142c4c;font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:1.12rem;line-height:1}.match-score-divider{background:linear-gradient(#0000,#6f8bae57,#0000);flex:0 0 1px;width:1px;height:28px}.match-combo-burst{z-index:2;color:#9a4e08;background:#fff2b8;border:1px solid #fbbf249e;border-radius:999px;padding:4px 8px;font-size:.53rem;font-weight:950;animation:.34s bounce-in;position:absolute;top:-8px;right:9px;box-shadow:0 5px 12px #b4530929}.match-board-divider{color:#8493a6;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:12px;min-height:40px;padding:8px 0;display:grid;position:relative}.match-board-divider>span:first-child{grid-column:1}.match-board-divider>span:nth-child(5){grid-column:2}.match-board-divider span{z-index:1;background:var(--color-surface);grid-row:1;justify-self:center;padding:4px 10px;font-size:.9rem;font-weight:900;position:relative}.match-board-divider>i:nth-child(2){grid-column:1}.match-board-divider>i:nth-child(4){grid-column:2}.match-board-divider i{background:repeating-linear-gradient(90deg,#8493a666 0 4px,#0000 4px 8px);grid-row:1;justify-self:stretch;height:1px}.match-board-divider .app-icon{z-index:1;background:var(--color-surface);color:#4f83c5;stroke-width:2.1px;width:15px;height:15px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.match-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.match-play-panel .match-columns{height:100%;min-height:0}.match-column{gap:10px;display:grid}.match-play-panel .match-column{grid-template-rows:repeat(5,minmax(0,1fr));gap:8px;min-height:0}.match-item{text-align:center;min-height:64px;color:var(--ink);background:#fff;border:1px solid #e2e8f0e6;border-radius:20px;justify-content:center;align-items:center;gap:10px;padding:14px 16px;font-weight:700;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s;animation:.34s backwards match-pop-in;display:flex}.match-item:disabled{cursor:default}.match-item:disabled:hover{transform:none}.match-play-panel .match-item{border-radius:18px;min-height:0;padding:8px 10px;font-size:1.05rem;line-height:1.2}.match-item.is-selected{background:#dbeafef2;border-color:#1490d6e6;box-shadow:0 10px 24px #1490d624}.match-item.is-correct{color:var(--correct-text);background:#dcfce7f2;border-color:#3aa648cc;animation:.36s forwards match-fade-out}.match-item.is-wrong{background:#fee2e2f5;border-color:#c23b3bcc}.match-item.is-pending{color:#0000;pointer-events:none;background:linear-gradient(90deg,#f1f5f9b3,#fffffff2,#f1f5f9b3);border-color:#cbd5e1d1;animation:1.5s ease-in-out infinite pending-slot-pulse;box-shadow:inset 0 0 0 1px #fffc}.match-placeholder{background:#94a3b838;border-radius:999px;width:70%;height:12px}.match-flag{font-size:1.6rem}.profile-hero{background:radial-gradient(circle at top left, #ffc93c29, transparent 35%), linear-gradient(180deg, #fffffffa, var(--ground));align-items:center;gap:14px;display:flex}.finish-panel{text-align:center;gap:14px;padding-top:32px;display:grid}.finish-panel>.character-slot{background:linear-gradient(145deg,#fff2bf,#e9f8ff);border-radius:30px;width:94px;height:94px;margin:0 auto -4px}.finish-stats{gap:10px;margin-top:6px;display:grid}.finish-stats .metric-pill{justify-content:center;gap:6px;display:flex}.game-empty-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:6px;display:flex}.content-list{gap:12px;margin-top:16px;display:grid}.achievement-card,.settings-row,.collection-row{background:#fff;border:1px solid #e2e8f0e6;border-radius:22px;padding:16px}.settings-row,.collection-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.continent-rings{background:#fff;border:1px solid #e2e8f0e6;border-radius:22px;grid-template-columns:repeat(3,1fr);gap:10px 6px;padding:14px 8px 12px;display:grid}.continent-ring{justify-items:center;gap:4px;display:grid;position:relative}.continent-ring svg{width:64px;height:64px;display:block}.continent-ring-track{fill:none;opacity:.18}.continent-ring-fill{fill:none;stroke-linecap:round;transition:stroke-dashoffset .5s}.continent-ring-count{pointer-events:none;flex-direction:column;align-items:center;line-height:1;display:flex;position:absolute;top:32px;left:50%;transform:translate(-50%,-50%)}.continent-ring-count strong{font-size:1.05rem;font-weight:800}.continent-ring-count small{opacity:.75;margin-top:2px;font-size:.55rem;font-weight:600}.continent-ring-name{color:#334155;text-align:center;font-size:.85rem;font-weight:700}.continent-ring.is-complete .continent-ring-name:after{content:" ✓"}.achievement-card{justify-content:space-between;align-items:center;gap:14px;display:flex}.collection-row{gap:10px;display:grid}.settings-row{text-align:left;width:100%}.toggle{background:#cbd5e1;border-radius:999px;align-items:center;width:54px;height:32px;padding:4px;transition:background .2s;display:flex}.toggle.is-on{background:var(--correct);justify-content:flex-end}.toggle-thumb{background:#fff;border-radius:999px;width:24px;height:24px;box-shadow:0 3px 8px #0f172a29}.tab-bar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--card-line);background:#fff9ece6;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;padding:12px 14px 18px;display:grid}.tab-button{min-height:56px;color:var(--ink-soft);background:0 0;border-radius:18px;place-items:center;gap:4px;font-size:.85rem;font-weight:700;display:grid}.tab-button.is-active{background:var(--primary-soft);color:var(--primary-deep)}.tab-icon{font-size:1.5rem}.tab-icon .app-icon{stroke-width:2px}.toast{color:#fff;background:#0f172aeb;border-radius:18px;padding:14px 18px;font-weight:700;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 16px 40px #0f172a42}.character-avatar-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.character-picker{gap:10px;display:grid}.character-avatar-option{aspect-ratio:1;color:#5d6f85;min-width:0;min-height:0;font:inherit;cursor:pointer;background:#ffffffd1;border:1px solid #dce5f0;border-radius:18px;align-content:start;justify-items:center;padding:6px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;position:relative}.character-avatar-image{aspect-ratio:1;background:linear-gradient(145deg, var(--primary-soft), #fff4c7);border-radius:16px;place-items:center;width:100%;display:grid;overflow:hidden}.character-avatar-image img{object-fit:contain;width:100%;height:100%;transition:transform .18s}.character-avatar-option>b{color:#fff;background:var(--primary);border:2px solid #fff;border-radius:50%;place-items:center;width:19px;height:19px;font-size:.55rem;display:grid;position:absolute;top:3px;right:3px;box-shadow:0 3px 7px #2465d93d}.character-avatar-option.is-active{color:#194f9c;background:#f0f6ff;border-color:#4c88ed;transform:translateY(-2px);box-shadow:0 7px 15px #1490d624}.character-avatar-option.is-active .character-avatar-image img{transform:scale(1.06)}.character-picker.is-family-picked .character-avatar-options{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.character-picker.is-family-picked .character-avatar-option{border-radius:12px;padding:3px}.character-picker.is-family-picked .character-avatar-image{border-radius:9px}.character-picker.is-family-picked .character-avatar-option>b{width:15px;height:15px;font-size:.45rem;top:-5px;right:-5px}.character-picker.is-family-picked .character-avatar-option.is-active{transform:none}.character-picker.is-family-picked .character-avatar-option:not(.is-active){opacity:.62}.character-variant-panel{background:linear-gradient(135deg,#f2f7ff,#fffaf0);border:1px solid #d9e6f7;border-radius:20px;gap:10px;padding:10px;animation:.18s backwards character-variant-in;display:grid}.character-variant-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.character-variant-option{color:#5d6f85;min-width:0;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8e1ec;border-radius:18px;justify-items:center;padding:6px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;position:relative}.character-variant-option img{aspect-ratio:1;object-fit:contain;background:linear-gradient(145deg, var(--primary-soft), #fff4c7);border-radius:14px;width:100%}.character-variant-option>b{color:#fff;background:var(--primary);border:2px solid #fff;border-radius:50%;place-items:center;width:19px;height:19px;font-size:.55rem;display:grid;position:absolute;top:4px;right:4px;box-shadow:0 3px 7px #2465d93d}.character-variant-option.is-active{color:#194f9c;background:#f0f6ff;border-color:#4c88ed;transform:translateY(-2px);box-shadow:0 7px 15px #1490d624}@keyframes character-variant-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.character-choice-backdrop{z-index:90;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0f203985;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.character-choice-sheet{color:#17365f;text-align:center;background:radial-gradient(circle at 92% 2%,#ffd7556b,#0000 26%),linear-gradient(160deg,#f5faff,#fff 62%,#fffaf0);border:1px solid #ffffffdb;border-radius:28px;gap:14px;width:100%;padding:22px 16px 16px;animation:.32s backwards bounce-in;display:grid;box-shadow:0 26px 60px #0f203947}.character-choice-kicker{color:#2865ad;background:var(--primary-soft);border-radius:999px;align-items:center;gap:5px;margin:0 auto;padding:6px 10px;font-size:.85rem;font-weight:950;display:flex}.character-choice-kicker .app-icon{width:14px;height:14px}.character-choice-sheet h2{font-family:var(--font-display);margin:0;font-size:1.25rem}.character-choice-sheet>p,.character-choice-sheet>small{color:#6b7d92;margin:0;font-size:.85rem;line-height:1.45}.character-choice-sheet .primary-button{width:100%}.country-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.country-chip{text-align:left;background:#ffffffc7;border:1px solid #e2e8f0e6;border-radius:20px;justify-content:flex-start;align-items:center;gap:10px;min-height:56px;padding:0 14px;font-weight:700;display:flex}.country-chip.is-active{color:var(--primary-deep);background:#dbeafee6;border-color:#1490d6b3}.progress-panel{gap:8px;margin-top:16px;display:grid}.progress-summary{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.progress-summary .progress-value{font-size:1.6rem}.progress-summary small{color:#64748b;font-size:.9rem;font-weight:700}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.passport-stamp-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.passport-stamp-section{background-color:#fffdf7;background-image:linear-gradient(#8163390b 1px,#0000 1px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:100% 24px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:1px solid #e6dfcf;border-radius:21px;padding:14px}.passport-stamp-heading span,.passport-stamp-heading small{color:#8a7d68;font-size:.85rem}.passport-stamp-heading>div{gap:2px;display:grid}.passport-stamp-heading strong{font-family:var(--font-display);font-size:.92rem}.passport-stamp-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px;display:grid}.passport-stamp{color:#2865ac;min-width:0;min-height:106px;font:inherit;cursor:pointer;background:#ffffffb3;border:2px solid;border-radius:50% 48% 47% 52%;align-content:center;justify-items:center;gap:1px;padding:9px 6px;display:grid;transform:rotate(-2deg)}.passport-stamp.stamp-2{color:#c15f45;transform:rotate(2deg)}.passport-stamp.stamp-3{color:#25886f;transform:rotate(-1deg)}.passport-stamp span{font-size:1.4rem}.passport-stamp strong{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:.85rem;overflow:hidden}.passport-stamp small{opacity:.74;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:.85rem;overflow:hidden}.passport-stamp i{letter-spacing:.12em;border-top:1px solid;margin-top:4px;padding-top:3px;font-size:.85rem;font-style:normal;font-weight:900}@media (width<=380px){.passport-stamp{min-height:94px}}.family-trip-screen{align-content:center;min-height:100%;padding:4px 0 18px;display:grid}.family-setup-card,.family-handoff-card,.family-finish-card,.family-play-card{padding:20px}.family-setup-card,.family-handoff-card,.family-finish-card{text-align:center;justify-items:center;gap:13px;display:grid}.family-setup-card .back-button,.family-play-card .back-button{justify-self:start}.family-setup-art{justify-content:center;align-items:center;min-height:82px;display:flex}.family-setup-art span{background:#bcebd8;border:4px solid #fff;border-radius:25px;place-items:center;width:70px;height:70px;font-size:2.35rem;display:grid;transform:rotate(-5deg);box-shadow:0 13px 24px #1d685721}.family-setup-art span:last-child{background:#c4e3ff;transform:rotate(5deg)}.family-setup-art i{z-index:1;color:var(--primary);margin:0 -5px;font-size:1.5rem;font-style:normal;transform:rotate(-12deg)}.family-setup-card h2,.family-handoff-card h2,.family-finish-card h2{font-size:1.55rem;line-height:1.08}.family-setup-card>p,.family-handoff-card>p{color:#718096;max-width:290px;font-size:.85rem;line-height:1.5}.family-name-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%;display:grid}.family-name-fields label{text-align:left;gap:5px;display:grid}.family-name-fields label>span{color:#6d7b8f;padding-left:4px;font-size:.85rem;font-weight:800}.family-name-fields input{color:#18263a;background:#f9fbfd;border:2px solid #dce5ef;border-radius:15px;outline:none;width:100%;min-width:0;min-height:48px;padding:0 12px;font-weight:800}.family-name-fields label:first-child input:focus{background:#f1fcf7;border-color:#38b987}.family-name-fields label:last-child input:focus{background:#f3f8ff;border-color:#4d9ee9}.family-rules{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;width:100%;display:grid}.family-rules span{color:#748196;background:#f3f6f9;border-radius:14px;gap:2px;padding:10px 5px;font-size:.85rem;display:grid}.family-rules b{color:#1c385b;font-size:.9rem}.family-setup-card>.primary-button,.family-handoff-card>.primary-button,.family-finish-card>button{width:100%}.family-pass-icon{color:#1d63c2;background:linear-gradient(145deg,#e0f3ff,#dff8ed);border-radius:34px;place-items:center;width:98px;height:98px;font-size:2.8rem;animation:1.6s ease-in-out infinite family-pass;display:grid;box-shadow:0 15px 30px #2063891f}.family-mini-score{background:#f4f7fa;border-radius:17px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;width:100%;padding:12px;font-size:.85rem;display:grid}.family-mini-score span{color:var(--ink-soft);gap:3px;display:grid}.family-mini-score b{color:#15304f;font-size:1rem}.family-mini-score i{color:#8491a2;font-size:.85rem;font-style:normal}.family-play-card{background:linear-gradient(180deg, #fff, var(--ground));gap:12px;display:grid}.family-play-topline{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.family-turn-copy{gap:1px;min-width:0;display:grid}.family-turn-copy span{color:#1d7f61;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:900;overflow:hidden}.family-turn-copy strong{color:#8190a4;font-size:.85rem}.family-score-pills{gap:4px;display:flex}.family-score-pills span{color:#8492a4;background:#eef2f6;border-radius:10px;place-items:center;width:27px;height:27px;font-size:.85rem;font-weight:900;display:grid}.family-score-pills span.is-active{color:#fff;background:#219d73}.family-score-pills span:nth-child(2).is-active{background:#277bd0}.family-progress{background:#e7edf4;border-radius:999px;height:6px;overflow:hidden}.family-progress span{border-radius:inherit;background:linear-gradient(90deg,#31b782,#3b8ee3);height:100%;transition:width .25s;display:block}.family-question-card{background:radial-gradient(circle at 50% 34%,#bde1ff85,#0000 42%),#f7fbff;border:1px solid #dfe9f2;border-radius:25px;align-content:center;place-items:center;gap:4px;min-height:205px;padding:20px;display:grid}.family-question-card>span{font-size:4.4rem;line-height:1}.family-question-card small{color:#7b899c;text-transform:uppercase;margin-top:7px;font-size:.85rem;font-weight:800}.family-question-card h2{text-align:center;font-size:1.55rem}.family-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.family-options button{color:#20304a;min-height:64px;font:800 .88rem/1.2 var(--font-body);cursor:pointer;background:#fff;border:2px solid #e0e7f0;border-radius:17px;padding:10px;box-shadow:0 4px #dce4ee}.family-options button.is-correct{color:#176c4e;background:#eafaf3;border-color:#37b980;box-shadow:0 4px #28a66f}.family-options button.is-wrong{color:#a52b38;background:var(--wrong-soft);border-color:#ef7a7a;box-shadow:0 4px #e45d68}.family-options button.is-muted{opacity:.48;box-shadow:none}.family-answer-panel{background:#e8f9f1;border-radius:17px;justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.family-answer-panel.is-wrong{background:var(--wrong-soft)}.family-answer-panel>div{gap:2px;min-width:0;display:grid}.family-answer-panel span{color:#5e776c;font-size:.85rem;font-weight:800}.family-answer-panel.is-wrong span{color:#9b5d64}.family-answer-panel strong{color:#176b4d;text-overflow:ellipsis;white-space:nowrap;font-size:1.15rem;overflow:hidden}.family-answer-panel.is-wrong strong{color:#a52b38}.family-answer-panel button{color:#fff;font:900 .85rem/1 var(--font-body);cursor:pointer;background:#20986d;border:0;border-radius:12px;flex:none;padding:10px 11px}.family-answer-panel.is-wrong button{background:#d94c59}.family-finish-card .character-slot{width:96px;height:96px}.family-stamp-total{color:#a96314;background:#fff8dd;border:3px double #d49133;border-radius:50%;align-content:center;place-items:center;width:142px;height:142px;display:grid;transform:rotate(-3deg)}.family-stamp-total span{font-size:1.35rem}.family-stamp-total strong{font-family:var(--font-display);font-size:2.6rem;line-height:.9}.family-stamp-total small{letter-spacing:.05em;text-transform:uppercase;font-size:.85rem;font-weight:900}.family-final-scores{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%;display:grid}.family-final-scores>div{background:#edf9f4;border-radius:17px;gap:3px;padding:13px 8px;display:grid}.family-final-scores>div:last-child{background:#eef6ff}.family-final-scores span{color:#748398;font-size:.85rem}.family-final-scores strong{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.family-final-scores b{color:#1d7c5f;font-size:.85rem}.family-final-scores>div:last-child b{color:#286fae}.family-team-reward{color:#74500e;background:#fff2c8;border-radius:14px;width:100%;padding:10px;font-size:.85rem}@keyframes family-pass{50%{transform:translate(5px)rotate(3deg)}}@media (prefers-reduced-motion:reduce){.family-pass-icon{animation:none}}@media (width<=380px){.family-setup-card,.family-handoff-card,.family-finish-card,.family-play-card{padding:16px}.family-question-card{min-height:176px}.family-question-card>span{font-size:3.7rem}}.family-finish-card .character-fallback{font-size:3rem;line-height:1}.family-finish-actions{grid-template-columns:1.25fr 1fr;gap:8px;width:100%;display:grid}.family-finish-actions button{width:100%;min-height:48px}.study-session-ticket{background:radial-gradient(circle at 90% 20%,#ffd65c3d,#0000 28%),#eef6ff;border:1px solid #bcd8f5;border-radius:20px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:82px;padding:14px;display:grid}.study-session-ticket>div{gap:2px;min-width:0;display:grid}.study-session-ticket div>span{color:#50779f;letter-spacing:.08em;text-transform:uppercase;font-size:.85rem;font-weight:900}.study-session-ticket strong{color:#163c70;font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:1.02rem;overflow:hidden}.study-session-ticket small{color:#71849a;font-size:.85rem}.study-session-ticket>span{background:#fff;border-radius:16px;place-items:center;width:48px;height:48px;font-size:1.65rem;display:grid;box-shadow:0 7px 14px #24598f1a}.study-session-ticket.is-empty{background:#f4f6f8;border-color:#e0e6ed}.study-start-button{width:100%;min-height:52px}.study-active-screen{padding-bottom:10px}.offline-badge{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;background:#eef2f7;border-radius:999px;padding:7px 10px;font-size:.85rem;font-weight:900}.profile-hero-stars{color:var(--text-main);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:800}.profile-title-badge{color:#7c4a00;background:#ffedac;border-radius:999px;margin-top:7px;padding:5px 8px;font-size:.85rem;font-weight:900;display:inline-flex}.activity-week{border-top:1px solid #e8edf5;gap:12px;padding-top:16px;display:grid}.activity-week-heading{justify-content:space-between;align-items:end;gap:12px;display:flex}.activity-week-heading>div{gap:3px;display:grid}.activity-week-heading span,.activity-week-heading small{color:var(--ink-soft);font-size:.85rem;font-weight:800}.activity-week-heading strong{font-size:.92rem}.activity-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.activity-day{justify-items:center;gap:5px;min-width:0;display:grid}.activity-day small{color:var(--ink-faint);font-size:.85rem;font-weight:800}.activity-day span{width:34px;height:34px;color:var(--ink-soft);background:#f1f5f9;border-radius:12px;place-items:center;font-size:.85rem;font-weight:900;display:grid}.activity-day.is-active span{color:#fff;background:linear-gradient(145deg, var(--correct-deep), #15966b);box-shadow:0 6px 12px #15966b2e}.activity-day.is-today span{outline:2px solid var(--reward);outline-offset:2px}.achievement-card{align-items:center;transition:border-color .2s,background .2s}.achievement-card:not(.is-unlocked){opacity:.64;background:#f8fafc}.achievement-card.is-unlocked:not(.is-claimed){background:linear-gradient(110deg,#f0fdf8,#fff);border-color:#22b8835c}.achievement-card.is-claimed{background:#f0fdf494;border-color:#3aa6482e}.achievement-card>div{min-width:0}.achievement-reward-copy{color:var(--primary);margin-top:7px;font-size:.85rem;font-weight:900;display:block}.achievement-claim{color:#fff;background:var(--correct-deep);min-width:62px;min-height:38px;font:inherit;cursor:pointer;border:0;border-radius:13px;flex:none;padding:0 10px;font-size:.85rem;font-weight:900;box-shadow:0 5px #148d67}.achievement-claim:disabled{color:var(--ink-soft);box-shadow:none;cursor:default;background:#e2e8f0}.achievement-card.is-claimed .achievement-claim{color:#15803d;background:var(--correct-soft);min-width:38px}.settings-utility{background:#fff;border:1px solid #e2e8f0e6;border-radius:22px;align-items:start;gap:14px;padding:16px;display:grid}.settings-utility>div{min-width:0}.settings-utility .secondary-button{flex:none;min-height:42px}.install-app-card{border:1px solid var(--primary-soft);background:radial-gradient(circle at 12% 0%, #ffd65e33, transparent 32%), linear-gradient(145deg, #f5f9ff, var(--primary-soft));border-radius:22px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.install-app-card>div:nth-child(2){min-width:0}.install-app-card .secondary-button{min-height:40px;padding-inline:13px}.install-app-icon{color:#fff;width:44px;height:44px;font:800 .82rem/1 var(--font-display);background:linear-gradient(145deg,#4699ff,#1757d9);border-radius:14px;place-items:center;display:grid;box-shadow:0 8px 16px #1490d638}.backup-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;display:grid}.backup-actions .secondary-button{width:100%;min-width:0;min-height:40px;padding-inline:10px}.backup-actions .secondary-button.is-accent{border-color:var(--primary-soft);color:var(--primary-deep);background:var(--primary-soft)}.top-bar-status{align-items:center;gap:8px;display:flex}.top-bar-avatar{background:linear-gradient(145deg,#e8f5ff,#fff3be);border:1px solid #9cbeea94;border-radius:12px;place-items:center;width:34px;height:34px;display:grid;position:relative;box-shadow:0 5px 11px #2465d91f;padding:0!important}.top-bar-avatar:before{display:none!important}.top-bar-avatar img{border-radius:inherit;object-fit:contain;width:100%;height:100%}.top-bar-avatar i{border:2px solid var(--ground);letter-spacing:0;background:#fff;border-radius:6px;place-items:center;width:16px;height:16px;font-size:.48rem;font-style:normal;display:grid;position:absolute;bottom:-4px;right:-4px}.top-bar-avatar i .country-flag{border-radius:1.5px;width:11px;height:auto;display:block}.offline-status{color:#9a3412;letter-spacing:.04em;text-transform:none;background:#ffedd5;border-radius:999px;padding:5px 8px;font-size:.85rem}@media (width<=380px){.activity-days{gap:4px}.activity-day span{width:30px;height:30px}.achievement-card{gap:10px;padding:13px}.install-app-card{grid-template-columns:auto 1fr}.install-app-card .secondary-button{grid-column:1/-1;width:100%}}.study-map-shell.actual-study-map{isolation:isolate;background:#dceaf2;border-color:#c4d9e8;min-height:170px;box-shadow:0 10px 24px #22496921}.study-map-shell.actual-study-map:before,.study-map-shell.actual-study-map:after{display:none}.actual-map-canvas,.actual-maplibre-host,.actual-map-fallback{width:100%;height:100%;position:absolute;inset:0}.actual-map-canvas{background:#e9f3f7;overflow:hidden}.actual-map-fallback{z-index:0;background:linear-gradient(145deg, var(--primary-soft), #f8fafc)}.actual-maplibre-host{z-index:1;opacity:0;transition:opacity .18s}.actual-map-canvas.is-ready .actual-maplibre-host{opacity:1}.actual-map-canvas.is-ready .actual-map-fallback{opacity:0}.actual-map-fallback-pin{fill:var(--wrong);stroke:#fff;stroke-width:2.5px}.actual-map-loading{z-index:2;color:#50708d;letter-spacing:.14em;place-items:center;font-weight:950;display:grid;position:absolute;inset:0}.actual-map-legend{z-index:6;color:#435a70;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);pointer-events:none;background:#ffffffe6;border:1px solid #fffc;border-radius:12px;gap:4px;min-width:102px;padding:6px 8px;display:grid;position:absolute;top:9px;right:9px;box-shadow:0 7px 16px #20405b21}.actual-map-legend span{white-space:nowrap;align-items:center;gap:5px;font-size:.46rem;font-weight:900;display:flex}.actual-map-legend i{border:2px solid;border-radius:3px;flex:none;width:10px;height:10px}.actual-map-legend i.is-country{background:#2f6fe473;border-color:#1d55bd}.actual-map-legend i.is-capital{background:#ffb52e9e;border-color:#d66b00}.actual-map-legend span.is-loading,.actual-map-legend span.is-unavailable{color:#7b8794}.actual-map-caption{z-index:7}.actual-study-map:not(.is-detail)>.actual-map-canvas .maplibregl-ctrl-bottom-right{bottom:5px;right:12px}.actual-study-map.has-caption:not(.is-detail)>.actual-map-canvas.is-country .maplibregl-ctrl-bottom-right{bottom:38px;right:7px}.actual-study-map .maplibregl-ctrl-attrib{color:#496174;background:#ffffffb8;border-radius:6px;margin:0;padding:0 5px;font-size:7px;line-height:14px}.actual-study-map .maplibregl-ctrl-scale{color:#374b5e;background:#ffffffb3;border-color:#374b5e;font-size:7px}.actual-study-map.is-detail{cursor:default;min-height:340px}.actual-study-map.is-detail .actual-map-legend{top:12px;right:50px}.actual-study-map.is-detail>.actual-map-canvas .maplibregl-ctrl-bottom-right{bottom:8px;right:8px}.actual-study-map.is-detail>.actual-map-canvas .maplibregl-ctrl-bottom-left{bottom:8px;left:8px}@media (width<=380px),(height<=760px){.study-map-shell.actual-study-map{min-height:118px}.actual-study-map.is-detail{min-height:260px}}.character-slot{place-items:center;display:grid;position:relative;overflow:visible}.character-sprite-window{z-index:2;position:absolute;inset:0;overflow:hidden}.character-sprite-window>img{top:var(--character-pose-top);left:var(--character-pose-left);width:var(--character-sheet-width);max-width:none;height:var(--character-sheet-height);display:block;position:absolute}.character-sprite-window[hidden],.character-fallback[hidden]{display:none}.character-home-ready>.character-sprite-window{transform-origin:bottom;transform:scale(1.12)}.character-study-guide>.character-sprite-window,.character-correct-cheer>.character-sprite-window,.character-league-celebrate>.character-sprite-window{transform:scale(1.28)}.character-wrong-encourage>.character-sprite-window{transform:scale(1.08)}.character-home-ready,.character-route-discover{animation:3.6s ease-in-out infinite character-float}.character-study-guide{transform-origin:bottom;animation:4.2s ease-in-out infinite character-study-nod}.character-game-match-focus{animation:2.8s ease-in-out infinite character-game-focus}.character-profile-proud{transform-origin:bottom;animation:4.6s ease-in-out infinite character-breathe}.character-correct-cheer{animation:.72s cubic-bezier(.2,.9,.3,1.2) backwards character-cheer-pop}.character-wrong-encourage{transform-origin:bottom;animation:3.4s ease-in-out infinite character-encourage}.character-league-celebrate{transform-origin:bottom;animation:3.2s ease-in-out infinite character-trophy-sway}@keyframes character-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes character-study-nod{0%,70%,to{transform:rotate(0)}78%{transform:rotate(1.6deg)}86%{transform:rotate(-1deg)}}@keyframes character-game-focus{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-2px)rotate(-1deg)}}@keyframes character-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.025)}}@keyframes character-cheer-pop{0%{opacity:0;transform:translateY(12px)scale(.82)}65%{opacity:1;transform:translateY(-5px)scale(1.06)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes character-encourage{0%,to{transform:rotate(0)}45%{transform:rotate(0)}55%{transform:rotate(-1.8deg)}65%{transform:rotate(0)}}@keyframes character-trophy-sway{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-3px)rotate(1deg)}}@media (prefers-reduced-motion:reduce){.character-home-ready,.character-study-guide,.character-game-match-focus,.character-profile-proud,.character-route-discover,.character-correct-cheer,.character-wrong-encourage,.character-league-celebrate{animation:none}}.character-fallback{place-items:center;width:100%;height:100%;display:grid}.character-guide-strip{color:var(--primary-deep);background:linear-gradient(135deg,#edf6ff,#f7fbff);border-radius:17px;align-items:center;gap:11px;margin:12px 0;padding:10px 12px;display:flex}.character-guide-strip .character-slot{background:#d7ebff;border-radius:14px;flex:none;width:42px;height:42px;font-size:1.45rem}.character-guide-strip div:last-child{gap:2px;display:grid}.character-guide-strip span{color:#63748b;font-size:.85rem}.quiz-hero.is-flag-puzzle{filter:saturate(.9);background:repeating-linear-gradient(135deg,#eef4fb 0 12px,#dce8f4 12px 24px);border:5px solid #fff;border-radius:18px 6px;padding:8px;transform:rotate(-2deg)}.quiz-finish-card>.character-slot{background:#fff2c5;border-radius:24px;width:74px;height:74px;margin:0 auto 8px;font-size:2.2rem}.traveler-title-card{color:#fff;background:linear-gradient(135deg,#17499d,#1679bd 65%,#18a59c);border-radius:19px;gap:3px;padding:14px;display:grid}.traveler-title-card span,.traveler-title-card small{color:#d5edff;font-size:.85rem}.traveler-title-card strong{font-family:var(--font-display);font-size:1rem}.traveler-map-shell{background:radial-gradient(circle at 70% 15%,#fff 0,#eef8f8 55%,#e5f1f5 100%);border:1px solid #dbe7ef;border-radius:21px;padding:8px 8px 10px;overflow:hidden}.traveler-map-shell svg{width:100%;display:block}.traveler-map-placeholder{aspect-ratio:360/176;background:#e7f0f4;border-radius:14px;width:100%}.traveler-map-country{fill:currentColor;fill-opacity:.22;stroke:#fff;stroke-width:.5px;stroke-linejoin:round;transition:fill-opacity .3s}.traveler-map-country.is-visited{fill-opacity:1}.traveler-map-dot{stroke:#fff;stroke-width:.8px}.traveler-map-country.is-neutral{color:#b9c7d1;fill-opacity:.35}.traveler-map-label{letter-spacing:.02em;paint-order:stroke;stroke:#ffffffd9;stroke-width:3px;stroke-linejoin:round;pointer-events:none;font-size:11px;font-weight:800}.traveler-map-legend{color:#65778b;justify-content:center;align-items:center;gap:6px;font-size:.85rem;display:flex}.traveler-map-legend span{background:var(--primary);border-radius:50%;width:8px;height:8px}.traveler-account-card{background:#f5f9ff;border:1px solid #d8e6f5;border-radius:18px;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:13px;display:grid}.traveler-account-icon{color:#fff;background:var(--primary);border-radius:14px;place-items:center;width:42px;height:42px;font-size:1.25rem;display:grid}.traveler-account-icon .app-icon{font-size:1.2rem}.traveler-account-card>div:nth-child(2){gap:3px;min-width:0;display:grid}.traveler-account-card span,.traveler-account-card small{color:#738299;font-size:.85rem;line-height:1.35}.traveler-account-card strong{letter-spacing:.02em;overflow-wrap:anywhere;font-size:.95rem}.traveler-account-card>button{white-space:nowrap;padding:8px 14px;font-size:.85rem}@keyframes bounce-in{0%{opacity:0;transform:scale(.92)}70%{opacity:1;transform:scale(1.03)}to{transform:scale(1)}}@keyframes match-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:.08;transform:scale(.92)}}@keyframes match-pop-in{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes pending-slot-pulse{0%,to{opacity:.48}50%{opacity:.86}}@media (width<=540px){.app-shell{padding:0}.phone-frame{border-radius:0;width:100%;height:100svh}.phone-frame:before{display:none}.study-map-shell{border-radius:22px;min-height:132px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.phone-frame .tab-bar{border:1px solid var(--card-line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffeb;border-radius:23px;margin:0 12px 12px;padding:7px;box-shadow:0 16px 34px #3a31281a}.phone-frame .tab-button.is-active{color:#fff;background:var(--primary);box-shadow:0 8px 18px #1490d647}.profile-hero{grid-template-columns:82px minmax(0,1fr);padding:16px 18px;display:grid}.profile-traveler-avatar{background:linear-gradient(145deg, var(--primary-soft), var(--reward-soft));border-radius:27px;width:82px;height:82px;position:relative;box-shadow:0 12px 24px #1490d624}.profile-traveler-avatar .character-slot{border-radius:inherit;width:100%;height:100%;overflow:hidden}.profile-traveler-avatar .character-home-ready>.character-sprite-window{transform-origin:bottom;transform:scale(1.35)translateY(7%)}.profile-traveler-avatar .character-profile-proud>.character-sprite-window{transform-origin:bottom;transform:scale(1.28)translateY(7%)}.profile-selected-avatar{border-radius:inherit;object-fit:contain;width:100%;height:100%;display:block}.profile-country-badge{z-index:3;background:#fff;border:3px solid #fff;border-radius:11px;place-items:center;width:30px;height:30px;font-size:1rem;line-height:1;display:grid;position:absolute;bottom:-5px;right:-5px;box-shadow:0 5px 12px #21395e2e}.profile-country-badge .country-flag{border-radius:3px;width:20px;height:auto;display:block;box-shadow:0 0 0 .5px #21395e2e}.run-reward-card{background:linear-gradient(135deg,#fff8df,#effdf6);border:1px solid #facc1557;border-radius:20px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;padding:10px;animation:.42s backwards reward-reveal;display:grid}.run-reward-card span{min-width:0;color:var(--ink-soft);background:#ffffffb8;border-radius:14px;gap:2px;padding:10px 8px;font-size:.85rem;font-weight:800;display:grid}.run-reward-card b{color:#0f766e;font-family:var(--font-display);font-size:1.25rem}@keyframes reward-reveal{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.study-deck-switcher{background:#edf2f8;border-radius:18px;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:-4px 0 12px;padding:5px;display:grid}.study-deck-switcher button{min-height:43px;color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:14px;justify-content:space-between;align-items:center;gap:8px;padding:0 11px;font-size:.85rem;font-weight:800;display:flex}.study-deck-switcher button.is-active{color:var(--primary-deep);background:#fff;box-shadow:0 6px 16px #27395c17}.study-deck-switcher strong{min-width:25px;height:25px;color:var(--primary-text);background:var(--primary-soft);border-radius:9px;place-items:center;padding:0 6px;font-size:.85rem;display:grid}.study-search{background:#fff;border:1px solid #dce5f1;border-radius:17px;align-items:center;gap:9px;min-height:48px;margin-bottom:10px;padding:0 12px;transition:border-color .2s,box-shadow .2s;display:flex;box-shadow:0 7px 18px #27395c0f}.study-search:focus-within{border-color:#80aefc;box-shadow:0 0 0 4px #1490d617}.study-search>span{color:var(--primary);font-size:1.2rem;font-weight:900}.study-search input{width:100%;min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;font-size:.86rem;font-weight:700}.study-search input::placeholder{color:var(--ink-faint);font-weight:600}.study-search button{width:28px;height:28px;color:var(--ink-soft);font:inherit;cursor:pointer;background:#eef2f7;border:0;border-radius:9px;flex:none;place-items:center;font-size:1.1rem;display:grid}.study-region-scroll{scrollbar-width:none;scroll-snap-type:x proximity;gap:7px;margin:0 -2px 12px;padding:2px 2px 7px;display:flex;overflow-x:auto}.study-region-scroll::-webkit-scrollbar{display:none}.study-region-scroll button{min-height:36px;color:var(--ink-soft);font:inherit;cursor:pointer;scroll-snap-align:start;background:#fff;border:1px solid #dde6f1;border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 11px;font-size:.85rem;font-weight:800;display:inline-flex}.study-region-scroll button>span{color:var(--primary);font-weight:900}.study-region-scroll button.is-active{color:#fff;background:var(--primary);border-color:var(--primary);box-shadow:0 6px 14px #1f5dda33}.study-region-scroll button.is-active>span{color:var(--reward)}.reward-moment{z-index:50;color:#fff;background:radial-gradient(circle at 50% 12%, #ffdc6475, transparent 30%), linear-gradient(150deg, #123a8c, var(--primary) 62%, #0f8ecf);width:min(270px,100vw - 48px);min-height:290px;font:inherit;cursor:pointer;border:1px solid #ffffffb3;border-radius:36px;flex-direction:column;justify-content:center;align-items:center;padding:28px 24px 24px;animation:.42s cubic-bezier(.2,.9,.25,1.18) both reward-card-in;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 32px 90px #0f172a61}.reward-moment:before{content:"";z-index:-2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a61;position:fixed;inset:-100vh -100vw}.reward-rays{opacity:.2;background:repeating-conic-gradient(from 8deg, #fff 0 8deg, transparent 8deg 22deg);animation:12s linear infinite reward-rays-spin;position:absolute;inset:-80px}.reward-medal{z-index:1;color:#754a00;background:linear-gradient(145deg, #fff2ae, var(--reward));border:7px solid #ffffffb8;border-radius:28px;place-items:center;width:82px;height:82px;margin-bottom:14px;font-size:2.2rem;display:grid;transform:rotate(-6deg);box-shadow:0 15px 30px #06235f47}.reward-moment small,.reward-moment strong,.reward-moment>span:not(.reward-medal):not(.reward-rays),.reward-moment em{z-index:1}.reward-moment small{color:var(--primary-soft);letter-spacing:.16em;text-transform:uppercase;font-size:.68rem;font-weight:900}.reward-moment strong{font-family:var(--font-display);margin:5px 0 4px;font-size:2.35rem;line-height:1}.reward-moment>span:not(.reward-medal):not(.reward-rays){font-size:1rem;font-weight:900}.reward-moment em{color:#ffffffb8;margin-top:9px;font-size:.85rem;font-style:normal;font-weight:700}@keyframes reward-card-in{0%{opacity:0;transform:translate(-50%,-46%)scale(.76)rotate(-3deg)}to{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(0)}}@keyframes reward-rays-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.reward-moment,.reward-rays{animation:none}}.match-play-panel{grid-template-rows:auto auto auto minmax(0,1fr)}.match-play-panel.has-challenge-timer{grid-template-rows:auto auto auto auto minmax(0,1fr)}@media (prefers-reduced-motion:reduce){.challenge-timer.is-critical,.challenge-timer.is-critical .challenge-timer-count{animation:none}}.match-mode-label{color:var(--primary-deep);background:var(--primary-soft);border-radius:999px;justify-self:end;padding:7px 10px;font-size:.85rem;font-weight:900}.quiz-play-card{background:linear-gradient(#fff,#f8faff);gap:13px}.quiz-prompt-card{background:radial-gradient(circle at 50% 25%, #bfdbfe6b, transparent 38%), var(--ground);border-color:#e0e8f3;gap:10px;min-height:205px;padding:18px}.quiz-prompt-card h2{max-width:310px;font-size:1.5rem}.quiz-hero{min-height:82px;font-size:4.6rem}.quiz-options{gap:9px}.quiz-option{text-align:center;min-height:70px;box-shadow:0 5px 0 var(--card-line);border-radius:18px;justify-content:center;padding:12px 14px}.quiz-option strong{font-size:.92rem;line-height:1.2}.quiz-option.is-correct{color:var(--correct-text);box-shadow:0 5px 0 var(--correct-deep)}.quiz-option.is-wrong{color:var(--wrong-text);box-shadow:0 5px 0 var(--wrong)}.quiz-type-form{align-content:start;padding-top:8px}.quiz-type-form .primary-button{width:100%}.quiz-feedback{min-height:84px;padding-block:13px}.quiz-feedback>div{gap:4px}.quiz-feedback>div>strong{letter-spacing:.04em;text-transform:uppercase;font-size:.85rem}.quiz-feedback .quiz-canonical-answer{font-size:1.7rem}.quiz-feedback button{min-width:92px}.quiz-prompt-card:has(.actual-study-map){padding:12px 12px 14px}.quiz-screen{container-type:size}.quiz-prompt-card .study-map-shell.actual-study-map{min-height:clamp(118px,100cqh - 395px,280px)}@media (height<=760px){.quiz-prompt-card{min-height:160px}.quiz-hero{min-height:48px;font-size:3.2rem}}.phone-frame{background:var(--ground);border-radius:28px}.phone-frame:before{display:none}.top-bar{letter-spacing:.12em;padding:18px 20px 12px}.screen{padding-inline:16px}.surface-card,.section-card{border-color:#e5eaf1;border-radius:20px;box-shadow:0 6px 18px #1e375a12}.primary-button,.secondary-button,.ghost-button{border-radius:15px}.tab-bar{padding:7px 7px calc(7px + env(safe-area-inset-bottom));border-radius:20px}.tab-button{border-radius:14px;min-height:54px;font-size:.85rem}.toast{bottom:calc(92px + env(safe-area-inset-bottom));text-align:center;max-width:min(360px,100vw - 32px);font-size:.85rem}@media (width<=480px){.app-shell{min-height:100svh;padding:0}.phone-frame{width:100%;height:100svh;padding-top:env(safe-area-inset-top);box-shadow:none;border:0;border-radius:0}.tab-bar{border-radius:20px 20px 0 0;margin:0}}.character-setting-card,.language-setting-card{background:#f8faff;border:1px solid #dfe6f0;border-radius:18px;gap:12px;padding:16px;display:grid}.character-setting-card>div:first-child{gap:4px;display:grid}.character-setting-card>div:first-child>strong{font-size:.95rem}.language-setting-card>div:first-child{gap:4px;display:grid}.language-setting-card>div:first-child>strong{font-size:.95rem}.language-setting-card>small{color:var(--ink-soft);font-size:.85rem}.language-options{background:#eaf0f8;border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:5px;display:grid}.language-options button{min-height:40px;color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;font-size:.85rem;font-weight:800}.language-options button.is-active{color:var(--primary-deep);background:#fff;box-shadow:0 4px 12px #1e375a1a}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #2468dc52}.surface-card,.section-card{border-radius:var(--radius-card);border-color:var(--color-border);box-shadow:var(--shadow-card)}.section-card{gap:16px;padding:16px;display:grid}.section-card>.content-list{margin-top:0}.primary-button,.secondary-button,.ghost-button{border-radius:var(--radius-control);min-height:46px}.map-detail-backdrop{z-index:70;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0f172a7a;align-items:stretch;padding:0;display:flex;position:absolute;inset:0}.map-detail-sheet{width:100%;height:100%;max-height:none;padding:calc(12px + env(safe-area-inset-top)) 12px calc(12px + env(safe-area-inset-bottom));background:#fffffff7;border:0;border-radius:0;grid-template-rows:auto minmax(0,1fr) auto auto auto;gap:9px;animation:.24s backwards map-detail-rise;display:grid;overflow:hidden;box-shadow:0 30px 70px #0f172a47}@keyframes map-detail-rise{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.map-detail-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.map-detail-heading>div{gap:4px;min-width:0;display:grid}.map-detail-heading small{color:var(--primary);letter-spacing:.045em;font-size:.67rem;font-weight:900}.map-detail-heading h2{overflow-wrap:anywhere;color:var(--ink);letter-spacing:-.035em;font-size:1.3rem}.map-detail-canvas{border-radius:20px;min-height:0;position:relative;overflow:hidden}.map-detail-canvas .study-map-shell{border-radius:20px;height:100%;min-height:0}.map-detail-canvas .actual-study-map.is-detail,.map-detail-canvas .actual-map-canvas{height:100%;min-height:0}.map-detail-canvas .study-country-boundary{fill:#1d4ed8cc}.external-map-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.external-map-actions a{min-height:44px;color:var(--ink);background:#fff;border:1px solid #dce4ef;border-radius:16px;align-items:center;gap:8px;padding:0 12px;font-size:.85rem;font-weight:900;text-decoration:none;display:flex;box-shadow:0 9px 18px #0f172a0f}.external-map-actions a b{color:var(--ink-soft);margin-left:auto}.google-map-mark,.apple-map-mark{border-radius:9px;flex:none;place-items:center;width:26px;height:26px;font-size:.74rem;font-weight:950;display:grid}.google-map-mark{color:var(--primary);background:var(--primary-soft)}.apple-map-mark{color:#111827;background:#eef1f5;font-size:.58rem}.map-attribution{color:var(--ink-faint);text-align:center;margin:0;font-size:.61rem;line-height:1.45}@media (width<=380px),(height<=760px){.map-detail-sheet{padding:calc(9px + env(safe-area-inset-top)) 9px calc(9px + env(safe-area-inset-bottom));gap:7px}.map-detail-canvas .study-map-shell{height:100%;min-height:0}.map-attribution{font-size:.54rem;line-height:1.25}}@keyframes sheet-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.sheet-handle{background:#d7dee9;border-radius:999px;width:42px;height:5px;margin:0 auto}.sheet-close-button{width:38px;height:38px;color:var(--ink-soft);font:500 1.35rem/1 var(--font-body);cursor:pointer;background:#f0f3f7;border:0;border-radius:13px}.sheet-section-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px;display:flex}.sheet-section-heading strong{font-size:.86rem}.sheet-section-heading span{color:var(--color-muted);font-size:.85rem}.sheet-option-scroll{scrollbar-width:none;gap:8px;margin-inline:-2px;padding:2px 2px 8px;display:flex;overflow-x:auto}.sheet-option-scroll::-webkit-scrollbar{display:none}.sheet-option-scroll>button{border:1px solid var(--color-border);min-width:112px;min-height:70px;color:var(--ink-soft);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:16px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:7px;padding:10px;display:grid}.sheet-option-scroll>button.is-active{color:#fff;border-color:var(--color-primary);background:var(--color-primary);box-shadow:0 8px 18px #2468dc33}.sheet-option-scroll>button>span{gap:2px;display:grid}.sheet-option-scroll strong{white-space:nowrap;font-size:.85rem}.sheet-option-scroll small{opacity:.72;font-size:.85rem}.sheet-region-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.sheet-region-grid>button{border:1px solid var(--color-border);min-height:46px;color:var(--ink-soft);font:800 .85rem/1.15 var(--font-body);cursor:pointer;background:#fff;border-radius:13px;justify-content:center;align-items:center;gap:5px;padding:6px;display:flex}.sheet-region-grid>button.is-active{color:var(--color-primary-strong);background:var(--primary-soft);border-color:#bcd4fb}.sheet-apply-button{width:100%}.screen{overflow-x:hidden}.profile-core-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.profile-core-stats>div{border:1px solid var(--color-border);text-align:center;background:#fbfcfe;border-radius:17px;align-content:center;justify-items:center;gap:4px;min-height:92px;padding:11px 8px;display:grid}.profile-core-stats>div.is-due{background:#fffaf0;border-color:#f1dda5}.profile-core-stats>div>span{width:30px;height:30px;color:var(--color-primary);background:var(--primary-soft);border-radius:10px;place-items:center;font-size:.86rem;display:grid}.profile-core-stats>div>span.profile-stat-review-icon{color:#b4540f;background:#ffebd6}.profile-stat-review-icon svg{width:17px;height:17px}.profile-core-stats small{color:var(--color-muted);font-size:.85rem}.profile-core-stats strong{font-size:.92rem}.design-qa-launch{color:#173d82;min-height:70px;font:inherit;text-align:left;cursor:pointer;background:#f1f6ff;border:1px dashed #9ebff4;border-radius:17px;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:12px;display:grid}.design-qa-launch>span:first-child{color:#8c5d00;background:#fff1c4;border-radius:13px;place-items:center;width:38px;height:38px;display:grid}.design-qa-launch>span:nth-child(2){gap:3px;min-width:0;display:grid}.design-qa-launch strong{font-size:.8rem}.design-qa-launch small{color:#6b778a;font-size:.64rem;line-height:1.35}.design-qa-screen{padding-bottom:20px}.design-qa-board{gap:12px}.design-qa-hero{border-radius:var(--radius-feature);color:#fff;background:radial-gradient(circle at 90% 5%,#ffca45d1,#0000 28%),linear-gradient(145deg,#163d91,#2671df);grid-template-columns:38px minmax(0,1fr);align-items:start;gap:12px;min-height:180px;padding:18px;display:grid;box-shadow:0 16px 34px #2468dc38}.design-qa-hero>button{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:13px;width:38px;height:38px}.design-qa-hero>div{align-self:center;gap:8px;display:grid}.design-qa-hero small{color:#ffdf86;letter-spacing:.08em;font-size:.62rem;font-weight:900}.design-qa-hero h1{color:#fff;letter-spacing:-.04em;font-size:1.48rem;line-height:1.2}.design-qa-hero p{color:#ffffffb8;font-size:.72rem;line-height:1.5}.design-qa-section,.design-qa-checklist{gap:14px;padding:16px;display:grid}.design-qa-heading{justify-content:space-between;align-items:center;display:flex}.design-qa-heading strong{font-size:.88rem}.design-qa-heading span{color:#c3cbd7;font-size:.68rem;font-weight:900}.qa-viewport-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.qa-viewport-list>span{border:1px solid var(--color-border);min-height:50px;color:var(--color-primary-strong);background:#f8faff;border-radius:13px;place-items:center;gap:1px;padding:8px;font-size:.76rem;font-weight:900;display:grid}.qa-viewport-list small{color:var(--ink-faint);font-size:.56rem;font-weight:700}.qa-type-stack{gap:8px;display:grid}.qa-type-stack h1{letter-spacing:-.045em;font-size:1.55rem}.qa-type-stack h2{letter-spacing:-.035em;font-size:1.12rem}.qa-type-stack strong{font-size:.9rem}.qa-type-stack p{color:#667085;word-break:keep-all;font-size:.74rem;line-height:1.5}.qa-type-stack small{color:var(--ink-faint);font-size:.66rem}.qa-button-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.qa-button-stack button{width:100%}.qa-status-row{flex-wrap:wrap;gap:7px;display:flex}.qa-status-row span{border-radius:999px;padding:7px 9px;font-size:.62rem;font-weight:900}.qa-status-row .is-success{color:var(--correct-text);background:var(--correct-soft)}.qa-status-row .is-progress{color:var(--primary-deep);background:var(--primary-soft)}.qa-status-row .is-warning{color:#805300;background:#fff1bd}.qa-card-list{gap:8px;display:grid}.qa-card-list article{border:1px solid var(--color-border);background:#fff;border-radius:16px;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:9px;min-height:64px;padding:10px;display:grid}.qa-card-list article>span:first-child{width:38px;height:38px;color:var(--color-primary);background:var(--primary-soft);border-radius:13px;place-items:center;display:grid}.qa-card-list article>div{gap:2px;display:grid}.qa-card-list article strong{font-size:.78rem}.qa-card-list article small{color:#7b8798;font-size:.62rem}.qa-card-list article.qa-card-emphasis{background:#fffbef;border-color:#f0d98f}.qa-card-list article.qa-card-emphasis>span:first-child{color:#8c5d00;background:#fff1c4}.qa-card-list article.is-disabled{opacity:.56}.design-qa-checklist ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.design-qa-checklist li{color:var(--ink-soft);font-size:.7rem;line-height:1.4}@media (width<=380px){.sheet-region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-core-stats>div{min-height:86px}.profile-core-stats small{font-size:.85rem}.qa-button-stack{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.study-customize-backdrop{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a6b;display:flex;position:absolute;inset:0}.study-customize-sheet{width:100%;height:100%;padding:calc(14px + env(safe-area-inset-top)) 16px calc(18px + env(safe-area-inset-bottom));background:#fff;border:0;border-radius:0;gap:16px;animation:.24s backwards sheet-rise;display:grid;overflow-y:auto}.study-customize-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.study-customize-heading>div{gap:3px;display:grid}.study-customize-heading small{color:var(--color-primary);font-size:.85rem;font-weight:900}.study-customize-heading h2{letter-spacing:-.035em;font-size:1.32rem}.study-tier-list{gap:8px;display:grid}.study-tier-button{border:1px solid var(--color-border);width:100%;min-height:56px;color:var(--ink-soft);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:16px;grid-template-columns:30px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:10px 14px;display:grid}.study-tier-button.is-active{color:#fff;border-color:var(--color-primary);background:var(--color-primary);box-shadow:0 8px 18px #2468dc33}.study-tier-icon{place-items:center;display:grid}.study-tier-copy{gap:2px;min-width:0;display:grid}.study-tier-copy strong{font-size:.9rem}.study-tier-copy small{opacity:.78;font-size:.85rem}.study-tier-check{text-align:right;font-size:.9rem}.study-tier-scope-count{font-size:.85rem}.cr-button{background:var(--primary);color:#fff;box-shadow:0 5px 0 var(--primary-deep);font-family:var(--font-display);cursor:pointer;border:0;border-radius:18px;font-weight:800;transition:transform 60ms,box-shadow 60ms}.cr-button:hover{transform:none}.cr-button:active:not(:disabled){box-shadow:none;transform:translateY(5px)}.cr-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:0 5px 0 var(--card-line);transform:none}.cr-button--reward{background:var(--reward);color:var(--ink);box-shadow:0 5px 0 var(--reward-deep)}.primary-button{background:var(--primary);color:#fff;box-shadow:0 5px 0 var(--primary-deep);font-family:var(--font-display);background-image:none;border-radius:18px;transition:transform 60ms,box-shadow 60ms}.primary-button:hover{transform:none}.primary-button:active:not(:disabled){box-shadow:none;transform:translateY(5px)}.primary-button:disabled{opacity:.55;box-shadow:0 5px 0 var(--card-line);transform:none}.secondary-button,.ghost-button{border-radius:18px}.quiz-option,.quiz-type-field{box-shadow:0 4px 0 var(--card-line);border-width:2.5px}.quiz-option:active:not(.is-correct):not(.is-wrong),.quiz-type-field:active{box-shadow:none;transform:translateY(4px)}.quiz-option.is-correct,.quiz-type-field.is-correct{box-shadow:0 4px 0 var(--correct-deep)}.quiz-option.is-wrong,.quiz-type-field.is-wrong{box-shadow:0 4px 0 var(--wrong)}.settings-row{gap:20px;padding:16px 16px 16px 18px}.settings-row>div{flex:auto;gap:4px;min-width:0;display:grid}.settings-row>div strong{font-size:1rem}.settings-row>div .muted-copy{word-break:keep-all;margin:0;font-size:.85rem;line-height:1.4}.settings-row .toggle{flex:none;width:66px;height:38px;padding:4px}.settings-row .toggle-thumb{width:30px;height:30px}button.top-bar-avatar{cursor:pointer;font:inherit}.store-links{flex-direction:column;gap:6px;display:flex}.store-links a{text-align:center;text-decoration:none}.learn-session{padding-bottom:24px}.learn-progress{align-items:center;gap:12px;display:flex}.learn-progress-track{background:var(--color-border);border-radius:999px;flex:auto;height:10px;overflow:hidden}.learn-progress-track>span{background:linear-gradient(135deg, var(--primary-deep), var(--primary));border-radius:999px;height:100%;transition:width .28s;display:block}.learn-retry-badge{background:var(--wrong,#ff6b6b);color:#fff;border-radius:999px;flex:none;padding:2px 10px;font-size:.85rem;font-weight:700;line-height:1.5}.learn-card{text-align:center;gap:14px;padding:22px 20px;display:grid}.learn-flip-target{border-radius:var(--radius-card);background:var(--color-surface-soft);cursor:pointer;align-content:center;justify-items:center;gap:8px;min-height:13rem;padding:18px 10px;display:grid}.learn-card-flag{font-size:3.4rem;line-height:1}.learn-card-label{color:var(--color-muted);font-size:.85rem;font-weight:700}.learn-card-name{color:var(--text-main);font-size:1.6rem;font-weight:900}.learn-card-mystery{background:var(--primary-soft);width:44px;height:44px;color:var(--primary-deep);border-radius:16px;place-items:center;font-size:1.3rem;font-weight:900;line-height:1;display:grid}.learn-continue-button{width:100%}.learn-audio-button{background:var(--primary-soft);width:44px;min-width:44px;height:44px;min-height:44px;color:var(--primary-deep);cursor:pointer;border:1.5px solid #1490d638;border-radius:16px;place-items:center;font-size:1.15rem;line-height:1;transition:transform 60ms;display:grid}.learn-audio-button .speaker-icon{width:24px;height:24px;display:block}.learn-audio-button:active{transform:translateY(1px)}.learn-banner-actions{flex:none;align-items:center;gap:10px;display:flex}.learn-question-header{justify-items:center;gap:6px;padding:6px 0 4px;display:grid}.learn-question-flag{font-size:3rem;line-height:1}.learn-question-name{color:var(--text-main);font-size:1.5rem;font-weight:900}.learn-question-prompt{color:var(--color-muted);font-size:.9rem;font-weight:700}.learn-options{gap:10px;display:grid}.learn-option{border:2.5px solid var(--card-line);border-radius:var(--radius-control);background:var(--color-surface);min-height:56px;color:var(--text-main);text-align:center;cursor:pointer;box-shadow:0 4px 0 var(--card-line);padding:10px 16px;font-size:1rem;font-weight:700;transition:transform 60ms,box-shadow 60ms,opacity .18s,background .18s}.learn-option:active:not(:disabled){box-shadow:none;transform:translateY(4px)}.learn-option:disabled{cursor:default}.learn-option--correct{border-color:var(--correct-deep);background:var(--correct-soft);color:var(--correct-text);box-shadow:0 4px 0 var(--correct-deep)}.learn-option--wrong{border-color:var(--wrong);background:var(--wrong-soft);color:var(--wrong-text);box-shadow:0 4px 0 var(--wrong)}.learn-hint{animation:1.4s ease-in-out infinite learn-hint-pulse}@keyframes learn-hint-pulse{0%,to{box-shadow:0 4px 0 var(--card-line), 0 0 0 0 #34b8ff52}50%{box-shadow:0 4px 0 var(--card-line), 0 0 0 8px #34b8ff00}}.learn-banner{background:var(--correct-soft);justify-content:space-between;align-items:center;gap:12px;margin:4px -20px -22px;padding:16px 20px;display:flex}.learn-banner.is-wrong{background:var(--wrong-soft)}.learn-banner>div:not(.learn-banner-actions){text-align:left;gap:2px;display:grid}.learn-banner span{color:var(--ink-soft);font-size:.85rem}.learn-banner strong{color:var(--wrong-text);font-size:1.2rem;font-weight:900}.learn-banner.is-correct strong{color:var(--correct-text)}.learn-next-button{border-radius:var(--radius-control);background:var(--correct-deep);color:#fff;cursor:pointer;border:0;min-height:56px;padding:0 18px;font-size:.95rem;font-weight:800;transition:transform 60ms,box-shadow 60ms;box-shadow:0 5px #2c8339}.learn-next-button:active{box-shadow:none;transform:translateY(5px)}.learn-banner.is-wrong .learn-next-button{background:var(--wrong);box-shadow:0 5px #d64f4f}.learn-done{text-align:center;justify-items:center;gap:10px;padding:18px 20px 22px;display:grid;position:relative;overflow:hidden}.learn-done-hero{place-items:center;width:100%;padding:38px 0 30px;display:grid;position:relative}.learn-done-hero:before{content:"";background:repeating-conic-gradient(from 0deg, #ffc93c52 0 9deg, #ffc93c0f 9deg 18deg);pointer-events:none;border-radius:50%;width:320px;height:320px;animation:36s linear infinite learn-done-rays;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-webkit-mask-image:radial-gradient(circle,#000 18%,#0000 62%);mask-image:radial-gradient(circle,#000 18%,#0000 62%)}@keyframes learn-done-rays{to{transform:translate(-50%,-50%)rotate(360deg)}}@media (prefers-reduced-motion:reduce){.learn-done-hero:before{animation:none}}.learn-done-character,.learn-done-badge{z-index:1;position:relative}.learn-done-character .character-slot{width:144px;height:144px;margin:0}.learn-done-badge{width:88px;height:88px;color:var(--ink);background:var(--reward);box-shadow:0 12px 0 var(--reward-deep), 0 24px 40px #e0a61c38;border-radius:30px;place-items:center;margin:24px 0;font-size:2.4rem;display:grid}.learn-done h2{margin:0;font-size:1.75rem;position:relative}.learn-done-result{gap:2px;display:grid}.learn-done p{color:var(--color-muted);margin:0;font-size:.95rem}.learn-done-tomorrow{color:var(--text-soft);font-weight:700}.learn-done-retry{color:var(--primary-deep);font-weight:700}.learn-finish-button{width:100%;margin-top:6px}.learn-done-stats{border-radius:var(--radius-card);background:var(--color-surface-soft);gap:12px;width:100%;margin-top:6px;padding:12px;display:grid}.learn-done-stat-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.learn-done-stat{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;gap:2px;padding:10px 8px;display:grid}.learn-done-stat strong{font-family:var(--font-display);color:var(--text-main);font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:400}.learn-done-stat span{color:var(--color-muted);font-size:.78rem;font-weight:700}.learn-done-goal{gap:6px;padding:0 4px;display:grid}.learn-done-goal-copy{color:var(--color-muted);justify-content:space-between;align-items:center;font-size:.85rem;font-weight:700;display:flex}.learn-done-goal-copy strong{color:var(--text-main);font-variant-numeric:tabular-nums;font-size:.9rem}.learn-done-goal.is-reached .learn-done-goal-copy strong{color:var(--reward-deep)}.learn-done-goal-track{background:var(--color-border);border-radius:999px;height:10px;overflow:hidden}.learn-done-goal-track>span{border-radius:inherit;background:linear-gradient(135deg, var(--primary-deep), var(--primary));height:100%;transition:width .4s;display:block}.learn-done-goal.is-reached .learn-done-goal-track>span{background:linear-gradient(135deg, var(--reward-deep), var(--reward))}.learn-done-total{color:var(--color-muted);font-size:.85rem;font-weight:700}.learn-character-row{text-align:left;align-items:center;gap:10px;margin:-4px 0 2px;display:flex}.learn-character-portrait .character-slot{flex:none;width:60px;height:60px}.learn-speech-bubble{border:2px solid var(--card-line);background:var(--ground);color:var(--ink);word-break:keep-all;border-radius:16px;flex:auto;padding:10px 14px;font-size:.9rem;font-weight:700;position:relative}.learn-speech-bubble:before,.learn-speech-bubble:after{content:"";clip-path:polygon(0 50%,100% 0,100% 100%);position:absolute;top:50%}.learn-speech-bubble:before{background:var(--card-line);width:12px;height:16px;margin-top:-8px;left:-14px}.learn-speech-bubble:after{background:var(--ground);width:11px;height:14px;margin-top:-7px;left:-10px}.learn-card-counter{color:var(--ink-soft,#7a6f61);text-align:center;font-variant-numeric:tabular-nums;margin:0;font-size:.85rem;font-weight:700}.learn-card-nav{align-items:stretch;gap:10px;display:flex}.learn-card-nav .learn-continue-button{flex:1}.learn-card-back{border-radius:16px;flex:none;min-width:84px;min-height:56px;font-size:.95rem;font-weight:700}.learn-card--question.is-feedback .learn-question-flag{font-size:2.1rem}.learn-card--question.is-feedback .learn-question-header{gap:2px;padding:0}.learn-reward{flex-direction:column;align-items:center;gap:6px;min-height:132px;padding:4px 12px 0;display:flex;position:relative}.learn-reward .region-map{width:calc(100% + 64px);margin-inline:-32px}.learn-card--intro .region-map{width:calc(100% + 40px);margin-inline:-20px}.learn-reward-continent{z-index:1;background:var(--reward-soft,#fff3d2);color:var(--ink,#3a3128);border-radius:999px;align-items:center;gap:4px;padding:3px 12px;font-size:.85rem;font-weight:800;display:inline-flex;position:absolute;top:12px;left:-10px;box-shadow:0 2px 6px #3a31282e}.home-path{box-sizing:border-box;gap:18px;width:100%;max-width:100%;padding:4px 4px 24px;display:grid;overflow-x:hidden}.home-path-header{align-items:center;gap:8px;display:flex}.home-stat{cursor:pointer;color:var(--text-main);background:var(--color-surface-soft);font:800 .85rem/1 var(--font-body);border:0;border-radius:999px;padding:6px 10px}.home-rewards-button{background:var(--color-surface-soft);cursor:pointer;border:0;border-radius:999px;place-items:center;width:40px;height:40px;margin-left:auto;font-size:1.1rem;display:grid;position:relative}.home-rewards-badge{color:#fff;background:var(--red);min-width:17px;height:17px;font:800 .7rem/17px var(--font-body);text-align:center;border-radius:999px;padding:0 4px;position:absolute;top:-3px;right:-5px}.home-goal{text-align:center;gap:10px;display:grid}.home-goal>p{color:var(--text-main);font:800 1.02rem/1.35 var(--font-body);word-break:keep-all}.home-today-plan{color:var(--text-soft);font:700 .9rem/1.3 var(--font-body);flex-wrap:wrap;justify-content:center;gap:8px;margin-top:-4px;display:flex}.home-plan-chip{font:800 .9rem/1 var(--font-body);border-radius:999px;align-items:center;gap:5px;padding:5px 12px 5px 9px;display:inline-flex}.home-plan-chip svg{flex:none;width:16px;height:16px}.home-plan-chip--review{color:#b4540f;background:#ffebd6}.home-plan-chip--new{color:#1f7a3a;background:#ddf5e3}.home-goal-progress{align-items:center;gap:10px;display:flex}.home-goal-label,.home-goal-count{color:var(--text-soft);font:800 .8rem/1 var(--font-body);white-space:nowrap;flex:none}.home-goal-count{font-variant-numeric:tabular-nums}.home-goal-bar{background:var(--color-border);border-radius:999px;flex:1;height:8px;overflow:hidden}.home-goal-bar>div{border-radius:inherit;background:linear-gradient(135deg, var(--primary-deep), var(--primary));height:100%;transition:width .28s}.home-start-button{width:100%;min-height:56px;font:900 1.05rem/1 var(--font-display)}.home-path-trail{flex-direction:column;align-items:center;gap:22px;margin:0;padding:8px 40px 4px;list-style:none;display:flex}.path-node{justify-items:center;gap:6px;display:grid}.path-node:nth-child(odd){transform:translate(-36px)}.path-node:nth-child(2n){transform:translate(36px)}.path-node-slot{display:inline-grid;position:relative}.path-node-button{background:var(--color-surface);width:64px;height:64px;box-shadow:var(--shadow-card);cursor:pointer;border:0;border-radius:999px;place-items:center;font-size:2.1rem;transition:transform .2s;display:grid;position:relative}.path-node--done .path-node-button{background:linear-gradient(145deg, var(--correct), var(--correct-deep));box-shadow:0 6px 14px #3aa64852}.path-node--current .path-node-button{background:linear-gradient(145deg, #ffe9a8, var(--reward));width:90px;height:90px;font-size:2.7rem;animation:1.6s ease-in-out infinite path-node-bounce;box-shadow:0 10px 22px #e0a61c66}.path-node--locked .path-node-button{border:2px solid var(--card-line);box-shadow:none;cursor:not-allowed;background:#fff}.path-node--locked .path-node-flag{opacity:.6}.path-node--milestone .path-node-button{background:linear-gradient(145deg, #ffe9a8, var(--reward-deep));box-shadow:0 8px 18px #e0a61c52}.path-node-check{appearance:none;border:2.5px solid #fff;border-radius:999px;place-items:center;width:28px;height:28px;padding:0;font-size:1.05rem;line-height:1;transition:transform .15s;display:grid;position:absolute;bottom:-4px;right:-4px;overflow:hidden;box-shadow:0 3px 8px #0003}.path-node-check .medal-icon{width:100%;height:100%;display:block}button.path-node-check{cursor:pointer}button.path-node-check:active{transform:scale(.92)}.path-node-check--star{background:#fff}.path-node-check--bronze{background:linear-gradient(145deg,#f3ca9e,#c97c3d);box-shadow:0 3px 8px #b86c2c73}.path-node-check--silver{background:linear-gradient(145deg,#f1f3f5,#a9afba);box-shadow:0 3px 8px #78829166}.path-node-check--gold{background:linear-gradient(145deg, #ffe9a8, var(--reward-deep));box-shadow:0 3px 8px #e0a61c8c}.path-node-label{overflow-wrap:break-word;max-width:84px;color:var(--text-soft);font:700 .85rem/1.2 var(--font-body);text-align:center;word-break:keep-all}.path-node--current .path-node-label{color:var(--text-main);font-weight:900}.home-path-count{color:var(--text-soft);font:800 .85rem/1 var(--font-body);text-align:center;margin:0}.home-customize-link{color:var(--color-primary-strong);font:700 .9rem var(--font-body);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;justify-self:center;margin:0 auto;padding:8px 12px;text-decoration:underline}.path-node--gift-ready .path-node-button{background:linear-gradient(145deg, #ffe9a8, var(--reward));width:80px;height:80px;font-size:2.5rem;animation:1.4s ease-in-out infinite path-node-wiggle;box-shadow:0 0 0 5px #ffc83c59,0 10px 22px #e0a61c73}.path-node--gift-ready .path-node-label{color:var(--reward-deep);font-weight:900}@keyframes path-node-wiggle{0%,60%,to{transform:rotate(0)}70%{transform:rotate(-10deg)scale(1.05)}80%{transform:rotate(10deg)scale(1.05)}90%{transform:rotate(-6deg)}}@keyframes path-node-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.path-node--current .path-node-button,.path-node--gift-ready .path-node-button{animation:none}}.home-avatar-button{cursor:pointer;font:inherit}.medal-info-backdrop{z-index:40;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.medal-info-card{border-radius:var(--radius-card);background:var(--color-surface);width:min(320px,100%);box-shadow:var(--shadow-float);text-align:center;border:0;gap:12px;margin:0;padding:28px 24px 20px;animation:.2s medal-info-pop;display:grid}@keyframes medal-info-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.medal-info-emoji{justify-self:center;width:52px;height:52px}.medal-info-emoji .medal-icon{width:100%;height:100%;display:block}.stat-info-emoji{justify-self:center;font-size:44px;line-height:1}.medal-info-title{color:var(--text-main);font:900 1.15rem/1.3 var(--font-display);margin:0}.medal-info-stamps{justify-content:center;gap:8px;margin:2px 0;display:flex}.medal-info-stamp{width:34px;height:34px;color:var(--text-soft);font:900 1rem/1 var(--font-body);background:var(--color-surface-soft);border:2px solid var(--card-line);opacity:.4;border-radius:999px;place-items:center;transition:opacity .15s,transform .15s;display:grid;overflow:hidden}.medal-info-stamp .medal-icon{width:100%;height:100%;display:block}.medal-info-stamp.is-filled{opacity:1;color:#fff;border-color:#ffffffe6;transform:scale(1.05);box-shadow:0 4px 10px #00000029}.medal-info-stamp--plain.is-filled{background:linear-gradient(145deg, var(--correct), var(--correct-deep))}.medal-info-stamp--bronze.is-filled{background:linear-gradient(145deg,#f3ca9e,#c97c3d)}.medal-info-stamp--silver.is-filled{background:linear-gradient(145deg,#f1f3f5,#a9afba)}.medal-info-stamp--gold.is-filled{background:linear-gradient(145deg, #ffe9a8, var(--reward-deep))}.medal-info-desc{color:var(--text-soft);font:700 .92rem/1.45 var(--font-body);word-break:keep-all;margin:0}.medal-info-close{border-radius:var(--radius-control);background:var(--color-surface-soft);color:var(--text-main);font:800 .95rem var(--font-body);cursor:pointer;border:0;margin-top:4px;padding:12px}.country-detail-layer{z-index:40;justify-content:center;align-items:flex-end;display:flex;position:absolute;inset:0}.country-detail-backdrop{background:#3a312861;border:0;position:absolute;inset:0}.country-detail{background:var(--ground,#fff9ec);border-top:2px solid var(--card-line,#e8dfc9);border-radius:26px 26px 0 0;flex-direction:column;gap:14px;width:100%;max-height:88%;padding:20px 20px 24px;display:flex;position:relative;overflow-y:auto;box-shadow:0 -14px 34px #3a31282e}.country-detail-head{align-items:center;gap:12px;display:flex}.country-detail-flag{font-size:2.4rem}.country-detail-head>div{flex:1;gap:2px;min-width:0;display:grid}.country-detail-name{font-family:var(--font-display,inherit);font-size:1.35rem}.country-detail-capital{color:var(--ink-soft,#7a6f61);font-size:1rem;font-weight:700}.country-detail .region-map{width:calc(100% + 40px);margin-inline:-20px}.country-detail-actions{gap:10px;display:grid}.country-detail-actions .cr-button,.country-detail-map{border-radius:18px;width:100%;min-height:56px;font-size:1rem}.country-detail-close{min-height:44px;color:var(--ink-soft,#7a6f61);background:0 0;border:0;align-self:center;padding:0 18px;font-size:.9rem;font-weight:700}.region-map{width:100%;font-family:var(--font-body);background:#cfe6f7;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1.5px #2e54781f}.region-map-svg{width:100%;height:auto;display:block}.region-map-sea{fill:#cfe6f7}.region-map-land{stroke:#fff;stroke-width:1px;stroke-linejoin:round}.region-map-land.tone-0{fill:#efe6c9}.region-map-land.tone-1{fill:#dfebcf}.region-map-land.tone-2{fill:#f2dfd5}.region-map-land.tone-3{fill:#e2e1f2}.region-map-land.tone-4{fill:#d9ebe4}.region-map-target{fill:var(--reward,#ffc93c);stroke:var(--reward-deep,#e0a61c);stroke-width:1.6px;stroke-linejoin:round}.region-map-halo{fill:none;stroke:var(--reward-deep,#e0a61c);stroke-width:2.5px;stroke-dasharray:4 3}.region-map-neighbour-point{fill:#efe6c9;stroke:#fff;stroke-width:1px}.region-map-point{fill:var(--reward,#ffc93c);stroke:var(--reward-deep,#e0a61c);stroke-width:2px}.region-map text{paint-order:stroke fill;stroke:#ffffffeb;stroke-linejoin:round;pointer-events:none;-webkit-user-select:none;user-select:none}.region-map-label{fill:#5a5246;stroke-width:3px;font-size:12px;font-weight:700}.region-map-target-label{fill:var(--reward-text,#4a3a00);stroke-width:3.5px;font-size:14px;font-weight:900}.region-map-capital-halo{fill:var(--wrong,#ff6b6b);fill-opacity:.3}.region-map-capital-dot{fill:var(--wrong-deep,#c23b3b);stroke:#fff;stroke-width:2px}.region-map-capital-label{fill:var(--wrong-text,#b63737);stroke-width:3.5px;font-size:12.5px;font-weight:900}.region-map-scale line{stroke:#3f5063;stroke-width:1.5px;stroke-linecap:round}.region-map-scale text{fill:#3f5063;stroke-width:2.5px;font-size:10px;font-weight:700}.region-map-inset{background:#fffffff0;border-radius:8px;padding:3px;position:absolute;bottom:6px;right:6px;box-shadow:0 1px 4px #1e375a38}.region-map-inset.is-top{top:6px;bottom:auto}.region-map-inset-land{fill:#d5dbe2}.region-map-inset-land.is-continent{fill:var(--inset-accent,#94a3b8);fill-opacity:.45}.region-map-inset-land.is-target{fill:var(--wrong-deep,#c23b3b);fill-opacity:1}.region-map-inset-ring{fill:none;stroke:var(--wrong-deep,#c23b3b);stroke-width:2px}.region-map-inset-ring.is-outer{stroke-width:1.2px;stroke-opacity:.55}.reward-sheet-backdrop{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a6b;align-items:flex-end;padding:14px;display:flex;position:absolute;inset:0}.reward-sheet{width:100%;max-height:86%;padding:16px 16px calc(18px + env(safe-area-inset-bottom));background:var(--color-surface);box-shadow:var(--shadow-float);border-radius:26px;gap:14px;animation:.24s backwards sheet-rise;display:grid;overflow-y:auto}.reward-sheet-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.reward-sheet-heading h2{letter-spacing:-.03em;font-size:1.2rem}.reward-sheet-heading small{color:var(--color-primary);font-size:.85rem;font-weight:900}.reward-sheet-close-button{width:38px;height:38px;color:var(--text-soft);background:var(--color-surface-soft);font:500 1.35rem/1 var(--font-body);cursor:pointer;border:0;border-radius:13px;flex:none}.reward-sheet-empty{color:var(--correct-text);background:var(--correct-soft);text-align:center;word-break:keep-all;border-radius:16px;margin:0;padding:14px;font-size:.9rem;font-weight:800}.reward-sheet-trail{color:var(--ink);background:linear-gradient(135deg, #fff3d2, var(--reward));border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex;box-shadow:0 9px 18px #e0a61c33}.reward-sheet-trail>span{word-break:keep-all;font-size:.9rem;font-weight:800}.reward-sheet-trail-claim{min-height:40px;color:var(--reward-deep);font:900 .85rem/1 var(--font-body);white-space:nowrap;cursor:pointer;background:#ffffffc7;border:0;border-radius:14px;flex:none;padding:0 14px}.reward-sheet-quests{gap:10px;display:grid}.reward-sheet-quest-row,.reward-sheet-bonus-row{background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:20px;justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding:12px;transition:border-color .2s,background .2s,transform .2s;display:flex}.reward-sheet-quest-row.is-complete:not(.is-claimed){background:linear-gradient(110deg, var(--correct-soft), #fff);border-color:#3aa64875;transform:translateY(-1px)}.reward-sheet-quest-row.is-claimed,.reward-sheet-bonus-row.is-claimed{background:#e2f7e49e;border-color:#3aa6482e}.reward-sheet-bonus-row.is-ready:not(.is-claimed){background:linear-gradient(110deg, var(--reward-soft), #fff);border-color:#e0a61c75}.reward-sheet-quest-lead{flex:auto;align-items:center;gap:10px;min-width:0;display:flex}.reward-sheet-row-icon{width:34px;height:34px;color:var(--primary-deep);background:var(--primary-soft);border-radius:11px;flex:none;place-items:center;display:grid}.reward-sheet-row-icon svg{width:18px;height:18px}.reward-sheet-trail .reward-sheet-row-copy{align-items:center;gap:10px;display:flex}.reward-sheet-trail .reward-sheet-row-icon{color:var(--reward-deep);background:#fff9}.reward-sheet-quest-copy{gap:4px;min-width:0;display:grid}.reward-sheet-quest-copy strong{color:var(--text-main);overflow-wrap:anywhere;font-size:.92rem}.reward-sheet-quest-copy span{color:var(--text-soft);font-size:.85rem;font-weight:700}.reward-sheet-quest-claim{min-width:76px;min-height:40px;color:var(--ink);background:var(--reward);box-shadow:0 4px 0 var(--reward-deep);font:900 .85rem/1 var(--font-body);white-space:nowrap;cursor:pointer;border:0;border-radius:14px;flex:none;padding:3px 12px 0;transition:transform 60ms,box-shadow 60ms}.reward-sheet-quest-claim:active:not(:disabled){box-shadow:none;transform:translateY(4px)}.reward-sheet-quest-claim:disabled{color:var(--text-soft);background:var(--color-border);box-shadow:none;cursor:default}.reward-sheet-quest-row.is-claimed .reward-sheet-quest-claim,.reward-sheet-bonus-row.is-claimed .reward-sheet-quest-claim{min-width:40px;color:var(--correct-text);background:var(--correct-soft);box-shadow:none;padding-top:0}@media (width<=380px){.reward-sheet-quest-row,.reward-sheet-bonus-row{gap:8px;padding:10px}.reward-sheet-quest-claim{min-width:64px;padding:3px 8px 0}}.leaderboard{box-sizing:border-box;gap:14px;width:100%;padding:4px 4px 24px;display:grid}.lb-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lb-title{color:var(--text-main);font:800 1.15rem/1.3 var(--font-display);letter-spacing:-.02em;word-break:keep-all;flex:auto;margin:0}.lb-days{color:var(--reward-text);background:var(--reward-soft);font:800 .85rem/1 var(--font-body);white-space:nowrap;border-radius:999px;flex:none;padding:6px 12px}.lb-offline{color:var(--text-soft);background:var(--color-surface-soft);font:800 .85rem/1 var(--font-body);white-space:nowrap;border-radius:999px;flex:none;padding:6px 12px}.lb-scope{border:2px solid var(--card-line);background:var(--color-surface);border-radius:18px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.lb-scope-button{min-height:48px;color:var(--text-soft);font:800 .95rem/1.2 var(--font-body);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:14px;padding:0 10px;transition:color .16s,background .16s}.lb-scope-button.is-on{color:#fff;background:var(--primary);box-shadow:0 3px 0 var(--primary-deep)}.lb-me{border:2px solid var(--primary);background:var(--primary-soft);border-radius:20px;grid-template-columns:auto 1fr;align-items:center;gap:6px 12px;padding:14px;display:grid}.lb-me-flag{background:var(--color-surface);border-radius:14px;place-items:center;width:44px;height:44px;font-size:1.5rem;display:grid}.lb-me-copy{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.lb-me-name{min-width:0;color:var(--primary-text);font:800 1.05rem/1.25 var(--font-display);overflow-wrap:anywhere}.lb-me-points{color:var(--primary-text);font:800 .95rem/1.25 var(--font-body);white-space:nowrap;flex:none}.lb-me-nudge{color:var(--text-main);font:800 .95rem/1.35 var(--font-body);text-align:center;word-break:keep-all;grid-column:1/-1;margin:0}.lb-join,.lb-error{border:2px solid var(--card-line);background:var(--color-surface);border-radius:20px;justify-items:center;gap:12px;padding:16px 14px;display:grid}.lb-join>p,.lb-error>p{color:var(--text-main);font:800 .95rem/1.4 var(--font-body);text-align:center;word-break:keep-all;margin:0}.lb-join-button,.lb-retry-button{min-width:160px;min-height:52px;padding:0 20px;font-size:1rem}.lb-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.lb-row{border:2px solid var(--card-line);background:var(--color-surface);border-radius:16px;grid-template-columns:40px 32px 1fr auto;align-items:center;gap:8px;min-height:56px;padding:10px 12px;display:grid}.lb-row.is-me{border-color:var(--primary);background:var(--primary-soft)}.lb-rank{color:var(--text-soft);font:800 .95rem/1 var(--font-body);text-align:center}.lb-flag{text-align:center;font-size:1.25rem}.lb-name{min-width:0;color:var(--text-main);font:800 .95rem/1.3 var(--font-body);overflow-wrap:anywhere}.lb-points{color:var(--text-soft);font:800 .9rem/1 var(--font-body);white-space:nowrap}.lb-row.is-me .lb-name,.lb-row.is-me .lb-points,.lb-row.is-me .lb-rank{color:var(--primary-text)}.lb-row.is-skeleton{background:var(--color-surface-soft);border-style:dashed}.lb-row.is-skeleton>span{background:var(--card-line);border-radius:999px;height:12px;animation:1.1s ease-in-out infinite lb-skeleton-pulse}.lb-empty{color:var(--text-soft);background:var(--color-surface-soft);font:800 .9rem/1.4 var(--font-body);text-align:center;word-break:keep-all;border-radius:18px;margin:0;padding:18px 14px}@keyframes lb-skeleton-pulse{0%,to{opacity:.5}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.lb-row.is-skeleton>span{animation:none}}.account-sheet-backdrop{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a6b;align-items:flex-end;padding:14px;display:flex;position:absolute;inset:0}.account-sheet{box-sizing:border-box;width:100%;max-height:88%;padding:16px 16px calc(18px + env(safe-area-inset-bottom));background:var(--color-surface);box-shadow:var(--shadow-float);border-radius:26px;gap:12px;animation:.24s backwards sheet-rise;display:grid;overflow-y:auto}.account-sheet-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.account-sheet-heading h2{color:var(--text-main);font:800 1.2rem/1.3 var(--font-display);letter-spacing:-.02em;margin:0}.account-sheet-close{width:38px;height:38px;color:var(--text-soft);background:var(--color-surface-soft);font:500 1.35rem/1 var(--font-body);cursor:pointer;border:0;border-radius:13px;flex:none}.account-sheet-close:disabled{opacity:.55;cursor:not-allowed}.sheet-error{color:var(--wrong-text);background:var(--wrong-soft);font:800 .9rem/1.35 var(--font-body);word-break:keep-all;border-radius:14px;margin:0;padding:12px 14px}.account-panel{gap:8px;display:grid}.account-lead{color:var(--text-soft);font:800 .95rem/1.4 var(--font-body);word-break:keep-all;margin:0 0 4px}.account-label{color:var(--text-main);font:800 .9rem/1.3 var(--font-body)}.account-input{box-sizing:border-box;border:2px solid var(--card-line);width:100%;min-height:52px;color:var(--text-main);background:var(--ground);font:800 1rem/1.3 var(--font-body);border-radius:16px;padding:0 14px}.account-input:focus-visible{border-color:var(--primary);outline:none}.account-hint{color:var(--text-soft);font:700 .85rem/1.3 var(--font-body)}.account-input.is-invalid{border-color:var(--wrong)}.account-nickname-status{font:800 .85rem/1.3 var(--font-body);display:block}.account-nickname-status.is-available{color:var(--correct-text)}.account-nickname-status.is-taken{color:var(--wrong-text)}.account-suggestions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.account-suggestion{border:2px solid var(--primary);min-height:40px;color:var(--primary-text);background:var(--primary-soft);font:800 .95rem/1.2 var(--font-body);cursor:pointer;border-radius:999px;padding:0 14px}.account-primary{min-height:56px;margin-top:8px;padding:0 20px;font-size:1.05rem}.account-switch{min-height:44px;color:var(--primary-text);font:800 .9rem/1.3 var(--font-body);cursor:pointer;background:0 0;border:0;border-radius:14px;text-decoration:underline}.account-delete-link{min-height:44px;color:var(--wrong-text);font:700 .85rem/1.3 var(--font-body);cursor:pointer;background:0 0;border:0;justify-self:center;padding:0 12px}.account-delete-link:disabled{color:var(--text-soft);cursor:not-allowed}.account-delete-title{color:var(--wrong-text);font:800 1.1rem/1.35 var(--font-display);word-break:keep-all;margin:0}.account-danger{background:var(--wrong-deep);min-height:56px;margin-top:8px;padding:0 20px;font-size:1.05rem;box-shadow:0 5px #8f2a2a}.account-switch:disabled{color:var(--text-soft);cursor:not-allowed;text-decoration:none}.account-id-card{border:2px solid var(--primary);background:var(--primary-soft);text-align:center;border-radius:20px;justify-items:center;gap:8px;padding:16px 14px;display:grid}.account-id-caption{color:var(--primary-text);font:800 .9rem/1 var(--font-body)}.account-id-value{color:var(--text-main);font:800 1.45rem/1.2 var(--font-display);letter-spacing:.02em;overflow-wrap:anywhere}.account-copy{color:#fff;background:var(--primary);min-height:40px;box-shadow:0 3px 0 var(--primary-deep);font:800 .9rem/1 var(--font-body);cursor:pointer;border:0;border-radius:14px;padding:0 18px}.account-copy:active{box-shadow:none;transform:translateY(3px)}.account-id-note{color:var(--primary-text);font:700 .85rem/1.3 var(--font-body);word-break:keep-all}.country-picker{gap:8px;display:grid}.country-picker-quick,.country-picker-grid{flex-wrap:wrap;gap:8px;display:flex}.country-picker-grid{max-height:168px;overflow-y:auto}.country-chip{border:2px solid var(--card-line);min-height:44px;color:var(--text-main);background:var(--color-surface);font:800 .88rem/1 var(--font-body);white-space:nowrap;cursor:pointer;border-radius:999px;padding:0 12px}.country-chip.is-on{border-color:var(--primary);color:var(--primary-text);background:var(--primary-soft)}.country-picker-search-label{color:var(--text-soft);font:800 .85rem/1.3 var(--font-body)}.country-picker-search{box-sizing:border-box;border:2px solid var(--card-line);width:100%;min-height:48px;color:var(--text-main);background:var(--ground);font:800 .95rem/1.3 var(--font-body);border-radius:16px;padding:0 14px}.country-picker-search:focus-visible{border-color:var(--primary);outline:none}.country-picker-empty{color:var(--text-soft);font:800 .88rem/1.3 var(--font-body);margin:0}.week-result-sheet{text-align:center;justify-items:center}.week-result-rank{color:var(--text-main);font:800 1.6rem/1.25 var(--font-display);word-break:keep-all;margin:4px 0 0}.week-result-points{color:var(--reward-text);font:800 1.15rem/1.3 var(--font-body);margin:0}.week-result-week{color:var(--text-soft);font:700 .85rem/1.3 var(--font-body);margin:0}.week-result-sheet .account-primary{width:min(280px,100%)}.account-privacy{text-align:center}.account-privacy a{color:var(--primary-text);font-weight:800}.account-success{color:var(--correct-text);background:var(--correct-soft);font:800 .9rem/1.35 var(--font-body);word-break:keep-all;border-radius:14px;margin:0;padding:10px 14px}.game-menu{gap:14px;padding-bottom:8px;display:grid}.game-menu-pool{color:var(--text-soft);font:700 .9rem/1.3 var(--font-body);text-align:center;margin:0}.game-menu-hero{border:2.5px solid var(--card-line);background:var(--color-surface);box-shadow:0 5px 0 var(--card-line);border-radius:24px;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:18px 18px 12px;display:grid;position:relative}.game-menu-hero-copy h2{color:var(--text-main);font:400 1.6rem/1.15 var(--font-display);margin:0}.game-menu-hero-copy p{color:var(--text-soft);font:700 .9rem/1.3 var(--font-body);margin:4px 0 0}.game-menu-hero-character{grid-area:1/2/span 2;align-self:end;place-items:end center;width:96px;height:104px;display:grid;overflow:hidden}.game-menu-hero-character .character-slot,.game-menu-hero-character .character-sprite-window{width:100%;height:100%}.game-menu-hero-actions{grid-column:1;align-items:stretch;gap:10px;margin-top:20px;display:flex}.game-menu-start{white-space:nowrap;flex:auto;min-height:54px;padding:4px 6px 1px;font-size:1.1rem}.game-menu-timer{border:2px solid var(--card-line);background:var(--color-surface-soft);min-height:54px;color:var(--text-main);font:800 .9rem var(--font-body);box-shadow:0 4px 0 var(--card-line);cursor:pointer;border-radius:18px;flex:none;align-items:center;gap:6px;padding:0 14px;transition:transform 60ms,box-shadow 60ms;display:inline-flex}.game-menu-timer-icon{width:20px;height:20px;color:var(--primary-deep)}.game-menu-timer:active{box-shadow:none;transform:translateY(4px)}.game-menu-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.game-menu-row--three{grid-template-columns:repeat(3,minmax(0,1fr))}.game-menu-card{border:2.5px solid var(--card-line);background:var(--color-surface);min-height:112px;box-shadow:0 5px 0 var(--card-line);color:var(--text-main);text-align:center;cursor:pointer;border-radius:20px;align-content:center;justify-items:center;gap:4px;padding:12px 10px;transition:transform 60ms,box-shadow 60ms;display:grid}.game-menu-card:active{box-shadow:none;transform:translateY(5px)}.game-menu-card--small{gap:8px;min-height:96px;padding:16px 6px 8px}.game-menu-icon{border-radius:16px;place-items:center;width:48px;height:48px;display:grid}.game-menu-icon svg{width:28px;height:28px}.game-menu-card--small .game-menu-icon{border-radius:14px;width:42px;height:42px}.game-menu-card--small .game-menu-icon svg{width:24px;height:24px}.game-menu-icon--primary{background:var(--primary-soft);color:var(--primary-deep)}.game-menu-icon--correct{background:var(--correct-soft);color:var(--correct-deep)}.game-menu-icon--wrong{background:var(--wrong-soft);color:var(--wrong-deep)}.game-menu-icon--reward{background:var(--reward-soft);color:var(--reward-deep)}.game-menu-card strong{font:400 1.05rem/1.2 var(--font-display);word-break:keep-all}.game-menu-card--small strong{font-size:.92rem}.game-menu-card>span:not(.game-menu-icon){color:var(--text-soft);font:700 .85rem/1.2 var(--font-body)}.onboarding{align-content:start;padding-top:24px;display:grid}.onboarding-card{border:2.5px solid var(--card-line);background:var(--color-surface);box-shadow:0 5px 0 var(--card-line);border-radius:24px;gap:16px;padding:22px 18px 20px;display:grid}.onboarding-title{color:var(--text-main);font:400 1.7rem/1.2 var(--font-display);text-align:center;word-break:keep-all;margin:0}.onboarding-field{gap:8px;display:grid}.onboarding-field>span,.onboarding-field>label{color:var(--text-soft);font:800 .9rem/1 var(--font-body)}.onboarding-field input{border:2px solid var(--card-line);background:var(--color-surface-soft);width:100%;min-height:52px;color:var(--text-main);font:800 1.05rem var(--font-body);border-radius:16px;padding:0 16px}.onboarding-field input:focus{border-color:var(--primary);outline:none}.onboarding-country{border:2px solid var(--card-line);background:var(--color-surface-soft);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:0 8px 0 16px;display:flex}.onboarding-country strong{color:var(--text-main);font:800 1.05rem var(--font-body)}.onboarding-country-change{color:var(--primary-deep);font:800 .9rem var(--font-body);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;border-radius:12px;padding:8px 12px;text-decoration:underline}.onboarding-start{width:100%;min-height:58px;margin-top:4px;font-size:1.2rem}.nickname-row{align-items:stretch;gap:8px;display:flex}.nickname-row>input{flex:1;min-width:0}.nickname-shuffle{border:2px solid var(--primary);background:var(--primary-soft);cursor:pointer;border-radius:16px;flex:none;width:52px;min-height:52px;font-size:1.5rem;line-height:1}.nickname-shuffle:active{transform:scale(.94)}.nickname-shuffle:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.fact-lines{gap:6px;width:100%;margin:0;padding:0;list-style:none;display:grid}.fact-lines li{background:var(--ground,#fff9ec);border:2px solid var(--card-line,#e8dfc9);color:var(--ink,#3a3128);text-align:center;border-radius:14px;gap:2px;padding:9px 14px;display:grid}.fact-lines li strong{font-size:.92rem;font-weight:700}.fact-lines li small{color:var(--ink-soft,#6b5d48);font-size:.85rem;font-weight:700}.learn-reward .fact-lines{gap:4px;margin-top:10px}.learn-reward .fact-lines li{text-align:left;flex-wrap:wrap;justify-content:space-between;align-items:baseline;column-gap:10px;padding:6px 12px;display:flex}.learn-reward .fact-lines li:has(small) strong{flex:auto}.stats-preview{background:var(--color-surface-soft,#fff3d9);border-radius:18px;gap:10px;padding:12px 14px 14px;display:grid}.stats-preview-title{color:var(--text-soft);font:700 .85rem/1.3 var(--font-body);margin:0}.stats-preview-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.stats-preview-option{background:var(--color-surface,#fff);color:inherit;font:inherit;text-align:left;cursor:pointer;opacity:.6;border:2px solid #0000;border-radius:16px;align-content:start;gap:6px;padding:8px;transition:opacity .15s,border-color .15s;display:grid}.stats-preview-option.is-active{border-color:var(--primary);opacity:1}.stats-preview-option>span{color:var(--text-main);font:800 .85rem/1 var(--font-body);text-align:center}.stats-preview-option .fact-lines li{border-width:1.5px;padding:7px 8px}.stats-preview-option .fact-lines li strong{font-size:.85rem}.stats-preview-option .fact-lines li small{font-size:.8rem}.about-launch{border:1px solid var(--color-border);color:#2f4159;background:var(--color-surface);min-height:70px;font:inherit;text-align:left;cursor:pointer;border-radius:17px;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:12px;transition:border-color .18s,transform .12s;display:grid}.about-launch:hover{border-color:#b9cdf0}.about-launch:active{transform:translateY(1px)}.about-launch:focus-visible{outline-offset:2px;outline:3px solid #9ebff4}.about-launch>span:first-child{color:#1749a6;background:#eaf1ff;border-radius:13px;place-items:center;width:38px;height:38px;display:grid}.about-launch>span:nth-child(2){gap:3px;min-width:0;display:grid}.about-launch strong{font-size:.95rem}.about-launch small{color:var(--color-muted);font-size:.78rem;line-height:1.35}.about-screen{padding-bottom:20px}.about-board{gap:12px}.about-hero{border-radius:var(--radius-feature);color:#fff;background:radial-gradient(circle at 88% 8%,#ffca45bf,#0000 30%),linear-gradient(135deg,#17499d,#1679bd 65%,#18a59c);grid-template-columns:38px minmax(0,1fr);align-items:start;gap:12px;min-height:168px;padding:18px;display:grid;box-shadow:0 16px 34px #17499d38}.about-hero>button{color:#fff;cursor:pointer;background:#ffffff24;border:1px solid #fff3;border-radius:13px;place-items:center;width:38px;height:38px;display:grid}.about-hero>div{align-self:center;gap:8px;display:grid}.about-hero small{color:#ffdf86;letter-spacing:.1em;font-size:.68rem;font-weight:900}.about-hero h1{color:#fff;letter-spacing:-.04em;font-size:1.48rem;line-height:1.2}.about-hero p{color:#ffffffc7;word-break:keep-all;font-size:.85rem;line-height:1.5}.about-note{grid-template-columns:76px minmax(0,1fr);align-items:start;gap:12px;padding:16px;display:grid}.about-note-figure{background:#fff6de;border-radius:20px;place-items:center;width:76px;padding:6px;display:grid}.about-note-figure .character-slot{border-radius:16px;width:64px;height:64px;font-size:1.8rem}.about-note-figure .maker-portrait{border-radius:50%;position:relative;overflow:hidden;box-shadow:0 0 0 3px #fff,0 4px 12px #3d4a5d2e}.maker-portrait img{object-fit:cover;width:100%;height:100%;display:block}.about-note-body{gap:7px;min-width:0;display:grid}.about-note-body strong{font-family:var(--font-display);color:var(--color-primary-strong);font-size:1rem}.about-note-body p{color:#3d4a5d;word-break:keep-all;margin:0;font-size:.86rem;line-height:1.62}.about-credits{gap:12px;padding:16px;display:grid}.about-credits-heading{gap:4px;display:grid}.about-credits-heading strong{font-family:var(--font-display);font-size:1rem}.about-credits-heading .muted-copy{word-break:keep-all;margin:0;font-size:.8rem;line-height:1.5}.about-credits ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.about-credits li{border:1px solid var(--color-border);background:#f8faff;border-radius:15px;gap:3px;padding:10px 12px;display:grid}.about-credit-use{color:var(--color-muted);font-size:.74rem;font-weight:800}.about-credits a,.about-font-note a{color:var(--color-primary-strong);text-underline-offset:3px;overflow-wrap:anywhere;font-weight:800;-webkit-text-decoration:underline #9ebff4;text-decoration:underline #9ebff4;text-decoration-thickness:1px;transition:text-decoration-color .18s}.about-credits a{font-size:.86rem}.about-credits a:hover,.about-font-note a:hover{text-decoration-color:currentColor}.about-credits a:focus-visible,.about-font-note a:focus-visible{outline-offset:3px;border-radius:4px;outline:3px solid #9ebff4}.about-credit-license{color:#6b778a;font-size:.72rem}.about-font-note{color:var(--color-muted);word-break:keep-all;margin:0;font-size:.76rem;line-height:1.55}@media (width<=380px){.about-note{grid-template-columns:60px minmax(0,1fr)}.about-note-figure{width:60px}.about-note-figure .character-slot{width:48px;height:48px}}:root:lang(ja) .about-board p,:root:lang(zh) .about-board p{word-break:normal;overflow-wrap:normal;line-break:strict}
