:root{color-scheme:dark;--ink: #0a191e;--panel: #10262b;--panel-deep: #0c1d22;--text: #f2eddd;--muted: #a4b9b4;--gold: #e9ca88;--gold-dark: #bd9955;--line: #c8bb862c;--font: "Yu Gothic", "游ゴシック", YuGothic, "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;--serif: var(--font);--game-aspect: calc(9 / 19.5);--game-max-width: 480px;--viewport-height: 100vh;--tap: 48px;--action: 60px;--gap: 16px;--pad: 24px;--press: .14s;--transition: .3s;--world-transition: .85s;--layer-background: 0;--layer-content: 1;--layer-status: 5;--layer-modal: 10;--fx-opacity: .7;--clock-size: clamp(156px, min(57vw, 29svh), 240px)}@supports (height: 100svh){:root{--viewport-height: 100svh}}@supports (height: 100dvh){:root{--viewport-height: 100dvh}}*{box-sizing:border-box}html,body,#root{margin:0;min-width:320px;min-height:100%;height:100%;overscroll-behavior:none}body{font-family:var(--font);color:var(--text);background:#061115;background-image:radial-gradient(ellipse at 50% 25%,#25404480,transparent 70%);-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:0;cursor:pointer;touch-action:manipulation;min-height:var(--tap);background:none}button:disabled{cursor:default}button:focus-visible,[tabindex]:focus-visible{outline:3px solid #fbe4a2;outline-offset:4px}button:active{filter:brightness(1.12);transform:translateY(1px)}button,svg{-webkit-user-select:none;user-select:none}h1,h2,p{margin:0}button svg{flex-shrink:0}ruby{ruby-position:over}rt{font-family:var(--font);font-size:.34em;letter-spacing:.25em;font-weight:500}h1{font-weight:600;letter-spacing:.045em}p{line-height:1.8}#root{display:flex;justify-content:center;align-items:center}.game{--available-height: var(--viewport-height);--portrait-height: min( var(--available-height), calc(100vw / var(--game-aspect)), calc(var(--game-max-width) / var(--game-aspect)) );width:100%;max-width:var(--game-max-width);height:var(--portrait-height);aspect-ratio:9 / 19.5;flex-shrink:0;background:var(--ink);position:relative;display:flex;flex-direction:column;overflow:hidden;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);isolation:isolate;box-shadow:0 0 100px #0007}button{transition:filter var(--press),background var(--press),transform var(--press)}.topbar{height:64px;min-height:64px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);z-index:var(--layer-content);gap:8px}.wordmark{display:flex;align-items:center;gap:9px;color:var(--gold);white-space:nowrap}.wordmark span{font-size:12px;letter-spacing:.15em}.topbar-label{font-size:12px;letter-spacing:.12em;color:var(--muted)}.icon-button{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--muted)}.icon-button:hover{background:#ffffff09;color:var(--gold)}.eyebrow{font-size:10px;letter-spacing:.18em;color:var(--gold);display:inline-flex;align-items:center;justify-content:center;gap:6px}.primary{width:100%;min-height:var(--action);padding:12px 21px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #fce6b3;background:linear-gradient(110deg,#edcf8d,#d3b16d);box-shadow:0 5px 24px #0003,inset 0 0 0 3px #18282a10;color:#192b2c;font-size:16px;font-weight:700;letter-spacing:.07em;border-radius:3px}.primary:hover{background:#f6d99c}.text-button{display:flex;align-items:center;justify-content:center;gap:12px;color:var(--gold);font-size:13px;min-height:48px}.world{position:relative;overflow:hidden;min-height:0;height:100%;width:100%;background:#18363b;pointer-events:none}.world>svg{width:100%;height:100%;display:block}.world-vignette{position:absolute;inset:0;box-shadow:inset 0 0 65px #07161c65;background:linear-gradient(0deg,#0a191e70,transparent 40%);pointer-events:none}.world svg g,.world svg path{transition:opacity var(--world-transition),transform var(--world-transition)}.world .door-left,.world .door-right{transform-box:fill-box;transform-origin:center}.world.changed .door-left{transform:translate(-37px);opacity:.45}.world.changed .door-right{transform:translate(37px);opacity:.45}.world.changed .gate-seal,.world-clue,.lit-path,.light-bridge,.beacon-beam,.beacon-light{opacity:0}.world.changed .world-clue,.world.changed .lit-path,.world.changed .light-bridge,.world.changed .beacon-beam,.world.changed .beacon-light{opacity:1}.world.changed .fog-layer{opacity:.1;transform:translate(40px)}.world.changed .sky-clouds{opacity:.05;transform:translateY(-60px)}.fireflies{animation:glimmer 5s ease-in-out infinite alternate}.world-sun{transition:opacity var(--world-transition)}.hero-world .world-sun{opacity:.75}.home-screen{display:flex;flex:1;min-height:0;flex-direction:column}.home-landscape{position:relative;flex:1;min-height:0}.home-landscape .world{position:absolute;inset:0}.home-landscape .world>svg{height:110%;transform:translateY(10%)}.home-landscape:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(#0a191e70,transparent 45%,transparent 70%,var(--ink))}.home-title{position:relative;z-index:1;text-align:center;padding:24px 12px 0}.home-title h1{font-family:var(--serif);font-size:47px;line-height:1.2;letter-spacing:.12em;margin-top:9px;text-shadow:0 2px 18px #0008}.home-title h1>span{display:block;font-size:23px;letter-spacing:.05em;margin-top:4px}.title-rule{display:flex;gap:14px;align-items:center;justify-content:center;color:var(--gold);margin:15px auto;opacity:.75}.title-rule i{width:51px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}.title-rule i:last-child{transform:rotate(180deg)}.home-whisper{position:absolute;bottom:12px;left:12px;right:12px;z-index:1;text-align:center;font-size:13px;letter-spacing:.06em;text-shadow:0 2px 8px #000}.glow-dot{display:inline-block;width:5px;height:5px;background:var(--gold);border-radius:50%;box-shadow:0 0 15px var(--gold);margin-right:10px}.home-actions{padding:12px var(--pad) 14px;text-align:center;position:relative}.home-actions>p{font-size:12px;color:var(--muted);margin-bottom:16px}.book-link{display:flex;align-items:center;justify-content:center;width:100%;gap:9px;font-size:12px;margin-top:12px;color:var(--muted)}.book-link>span{font-size:11px;letter-spacing:.1em;border-left:1px solid var(--line);padding-left:14px;margin-left:9px;color:var(--gold)}.page-heading{padding:24px var(--pad) 20px}.page-heading h1{font-size:25px;margin-top:10px}.page-heading p{font-size:12px;color:var(--muted);margin-top:9px}.branch-screen{flex:1;min-height:0;display:flex;flex-direction:column}.route-options{padding:0 var(--pad);display:flex;flex:1;min-height:0;flex-direction:column;gap:16px}.route-choice{padding:0;position:relative;flex:1;overflow:hidden;text-align:left;border:1px solid #81948665;border-radius:3px;min-height:130px}.route-choice .world{position:absolute;inset:0;opacity:.83}.route-choice .world>svg{transform:translate(28%,-5%);width:95%;height:140%}.route-choice:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#092025f0 5%,#122a3190 55%,transparent)}.route-info{position:relative;z-index:1;padding:20px}.route-icon{color:var(--gold);margin-bottom:12px}.route-info h2{font-size:22px;letter-spacing:.1em;font-weight:500}.route-info p{font-size:11px;color:#c9d6ce;margin-top:6px}.route-arrow{position:absolute;right:18px;bottom:24px;color:var(--gold)}.subtle-note{font-size:11px;color:var(--muted);display:flex;gap:9px;align-items:center;justify-content:center;padding:22px 12px}.quest-screen{flex:1;min-height:0;display:flex;flex-direction:column}.quest-world{position:relative;flex:1;min-height:112px;overflow:hidden}.quest-world .world{position:absolute;inset:0}.quest-world .world>svg{height:120%;transform:translateY(-8%)}.location{position:absolute;inset:12px 20px auto;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#e7e9d9}.location>span{font-size:10px;letter-spacing:.1em;padding:6px 9px;background:#081d2680;border-radius:2px}.trail{display:flex;gap:10px;align-items:center}.trail>span{height:4px;width:4px;border-radius:50%;background:#b8c7be60}.trail .done{background:var(--gold)}.trail .current{height:7px;width:7px;background:var(--gold);box-shadow:0 0 0 3px #ebce8d25}.world-caption{position:absolute;bottom:16px;left:16px;right:16px;text-align:center;font-size:13px;text-shadow:0 2px 8px #000,0 0 20px #000;background:#0a191e50;padding:5px;border-radius:2px}.quest-console{display:flex;flex-direction:column;align-items:center;background:radial-gradient(ellipse at 50% 35%,#24404440,transparent 65%),var(--panel-deep);padding:18px var(--pad) 20px;border-top:1px solid #b7bd8933;position:relative}.quest-console:before{content:"";position:absolute;top:-3px;left:calc(50% - 3px);width:6px;height:6px;transform:rotate(45deg);background:var(--gold)}.console-heading{text-align:center}.console-heading h1{font-size:19px;line-height:1.4;margin:7px 0 13px}.clock{width:var(--clock-size);height:var(--clock-size);flex-shrink:0;touch-action:none;cursor:grab;filter:drop-shadow(0 9px 12px #0004);border-radius:50%}.clock:active{cursor:grabbing}.clock.read-clock,.clock[aria-disabled=true]{cursor:default}.clock-number{font:700 20px var(--font);fill:#243a3c}.clock-hint{font-size:11px;color:var(--muted);text-align:center;margin:12px 0 15px;min-height:20px}.feedback .clock-hint{color:#dfd5b7}.clock-choices{display:flex;width:100%;gap:14px}.clock-choices>button{min-height:60px;flex:1;background:#1b363c;border:1px solid #a9b9a964;border-radius:3px;font:700 27px var(--font)}.clock-choices>button>span{font:13px var(--font);margin-left:5px;color:var(--muted)}.clock-choices>button:hover{border-color:var(--gold);color:var(--gold)}.dragon-art{height:100%;width:100%;min-height:0;display:flex;justify-content:center;align-items:center;overflow:hidden}.dragon-art>img{display:block;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;pointer-events:none}.view-screen{display:grid;grid-template-rows:60px minmax(0,1fr) 92px;flex:1;min-height:0;background:radial-gradient(ellipse at center,#3c38263d,transparent 70%)}.view-controls{padding:6px 15px;display:flex;justify-content:space-between;align-items:center}.view-controls .is-favorite{color:var(--gold)}.dragon-name{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px}.dragon-name h1{font-family:var(--serif);font-size:27px;font-weight:500;letter-spacing:.2em;margin-left:.2em}.dragon-name>.eyebrow{font-size:9px}.reveal-screen{flex:1;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 110px 56px;padding-top:16px;background:radial-gradient(ellipse at center,#9a79322e,transparent 70%)}.reveal-art{min-height:0;animation:reveal-art 2s ease-out both}.reveal-name{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;animation:reveal-name 2.6s ease-out both}.reveal-name h1{font-family:var(--serif);font-size:29px;letter-spacing:.2em}.reveal-name p{font-size:13px;color:var(--gold)}.reveal-skip{display:flex;gap:7px;align-items:center;justify-content:center;color:var(--muted);font-size:11px;min-height:48px}.home-dragon{flex:1;min-height:0;padding:12px 0 0;width:100%}.home-dragon:active{transform:none}.acquired-intro{text-align:center;padding:14px 0 3px}.acquired-intro h1{font-family:var(--serif);font-size:25px;letter-spacing:.16em;margin-top:20px}.has-dragon .home-actions{padding-top:8px}.has-dragon .home-actions>p{margin-bottom:12px;font-size:11px}.has-dragon .book-link{margin-top:4px}.book-screen{flex:1;min-height:0;display:flex;flex-direction:column}.book-screen .page-heading{padding-bottom:12px}.book-scroll{overflow-y:auto;overscroll-behavior:contain;padding:0 var(--pad) 24px;flex:1;min-height:0}.book-summary{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--muted);padding:12px 0 17px}.book-summary strong{margin-left:auto;font-size:24px;color:var(--gold);font-weight:400}.book-summary small{font-size:12px;color:var(--muted)}.book-dragon{width:100%;display:grid;grid-template-columns:94px 1fr 18px;gap:16px;align-items:center;text-align:left;padding:0 12px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(100deg,#aa7a2925,transparent);min-height:190px}.book-dragon>.dragon-art{height:180px}.book-dragon h2{font-family:var(--serif);font-weight:500;font-size:22px;margin-top:23px;letter-spacing:.08em}.book-dragon p{display:flex;align-items:center;gap:5px;color:var(--gold);font-size:10px;margin-top:10px}.book-dragon>svg{color:var(--gold)}.perfect-mark{display:flex;align-items:center;gap:3px;color:var(--gold);font-size:9px;margin-top:7px}.clue-record{display:flex;align-items:center;gap:13px;margin:16px 0;color:var(--gold);padding:0 4px}.clue-record span{font-size:10px;color:var(--muted)}.clue-record p{font-size:11px;margin-top:2px}.book-divider{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:10px;letter-spacing:.06em;margin:26px 0 6px}.book-divider i{flex:1;height:1px;background:var(--line)}.future-dragon{display:flex;align-items:center;gap:16px;border-bottom:1px solid #ced0b017;padding:21px 2px}.future-symbol{width:58px;height:67px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#e9a17b;background:radial-gradient(ellipse,#7c493338,transparent 72%)}.water .future-symbol{color:#8bbecb;background:radial-gradient(ellipse,#337c7938,transparent 72%)}.crystal .future-symbol{color:#a99ccb;background:radial-gradient(ellipse,#774f8838,transparent 72%)}.future-dragon h2{font-size:15px;font-weight:500;letter-spacing:.04em}.future-dragon p{font-size:10px;color:var(--muted);margin:5px 0}.future-dragon span{font-size:9px;color:#899d98}.book-footer{font-size:10px;color:var(--muted);text-align:center;padding-top:25px}.undiscovered-main{padding:25px 16px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(ellipse,#38504655,transparent 70%)}.undiscovered-main>svg{color:var(--gold);margin-bottom:16px}.undiscovered-main h2{font-size:17px;font-weight:500}.undiscovered-main p{font-size:11px;color:var(--muted);margin:10px 0}.undiscovered-main .text-button{margin:auto}.clue-screen{flex:1;display:flex;flex-direction:column;min-height:0}.clue-screen>.world{flex:1;min-height:80px}.clue-result{padding:20px var(--pad);text-align:center}.clue-emblem{width:70px;height:70px;display:flex;align-items:center;justify-content:center;margin:-58px auto 12px;position:relative;color:var(--gold);background:var(--ink);border:1px solid var(--gold-dark);transform:rotate(45deg);border-radius:8px}.clue-emblem>svg{transform:rotate(-45deg)}.clue-result h1{font-size:23px;margin-top:12px}.clue-result p{color:var(--muted);font-size:12px;margin:16px 0}.saved-clue{display:flex;gap:8px;align-items:center;justify-content:center;font-size:10px;color:var(--gold);margin:20px 0}.clue-result>.text-button{margin:10px auto 0}.art-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--muted);padding:12px;font-size:12px}.art-error>button{display:flex;gap:8px;align-items:center;justify-content:center;min-width:140px;border:1px solid var(--line);color:var(--gold)}.modal-backdrop{position:absolute;inset:0;z-index:var(--layer-modal);background:#030d14c9;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);display:flex;align-items:center;justify-content:center;padding:20px}.settings-modal{width:100%;max-width:370px;max-height:100%;overflow:auto;padding:20px;background:#12282e;border:1px solid #6c8475;border-radius:5px;box-shadow:0 20px 80px #0007}.modal-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal-heading h2{font-size:20px;font-weight:500}.setting-row{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}.setting-row>svg{color:var(--gold)}.setting-row>strong{margin-left:auto;font-size:12px;font-weight:500;color:var(--gold)}.settings-modal>p{font-size:10px;color:var(--muted);margin:19px 0 8px}.settings-modal .settings-detail{font-size:10px;margin-top:15px}.export-row{font-size:12px}.save-warning{position:absolute;bottom:max(8px,env(safe-area-inset-bottom));left:8px;right:8px;background:#342d22f5;color:#f4d7a2;padding:9px 13px;border:1px solid #bc9a58;border-radius:4px;font-size:10px;z-index:var(--layer-status);pointer-events:none}@keyframes glimmer{0%{opacity:.3}to{opacity:var(--fx-opacity)}}@keyframes reveal-art{0%{opacity:0;filter:brightness(.2)}25%{opacity:.1;filter:brightness(.6)}to{opacity:1;filter:brightness(1)}}@keyframes reveal-name{0%,55%{opacity:0}to{opacity:1}}@media(min-width:481px){.game{width:calc(var(--portrait-height) * var(--game-aspect));min-width:320px}}@media(min-width:700px){.game{--available-height: calc(var(--viewport-height) - 32px);border-radius:8px;outline:1px solid #8c9e7130}}@media(max-height:720px){:root{--pad: 20px;--action: 56px}.topbar{height:56px;min-height:56px}.home-title{padding-top:17px}.home-title h1{font-size:37px}.home-title h1>span{font-size:21px}.home-title .eyebrow{font-size:9px}.title-rule{margin:10px auto}.home-actions{padding-bottom:8px;padding-top:6px}.home-actions>p{margin-bottom:10px;font-size:11px}.book-link{margin-top:5px}.home-landscape .world>svg{height:111%;transform:translateY(17%)}.page-heading{padding:18px var(--pad)}.page-heading h1{font-size:23px;margin-top:6px}.page-heading p{margin-top:5px}.subtle-note{padding:15px 8px}.route-info{padding:14px 17px}.route-icon{margin-bottom:5px}.route-info h2{font-size:20px}.quest-console{padding:12px var(--pad) 14px}.console-heading h1{font-size:17px;margin:5px 0 8px}.clock-hint{font-size:10px;margin:8px 0 11px}.world-caption{font-size:11px;bottom:10px}.view-screen{grid-template-rows:52px minmax(0,1fr) 80px}.dragon-name h1{font-size:24px}.acquired-intro h1{font-size:23px;margin-top:17px}.acquired-intro{padding-top:9px}.acquired-intro>.eyebrow{font-size:9px}.has-dragon .home-actions{padding-top:3px}.has-dragon .home-actions>p{margin-bottom:8px}.route-options{gap:12px}.clue-result{padding-top:16px;padding-bottom:12px}.clue-result p{margin:10px 0}.saved-clue{margin:14px 0}}@media(max-height:600px){:root{--clock-size: 156px;--pad: 18px}.home-title h1{font-size:30px}.home-title h1>span{font-size:19px}.home-title{padding-top:10px}.home-title>.eyebrow{font-size:8px}.title-rule{margin:7px auto}.home-whisper{font-size:11px;bottom:6px}.home-actions>p{font-size:10px}.home-landscape .world>svg{transform:translateY(18%);height:110%}.quest-world{min-height:108px}.quest-console{padding-top:10px;padding-bottom:12px}.console-heading .eyebrow{font-size:9px}.console-heading h1{font-size:16px;margin:4px 0 6px}.clock-hint{margin:6px 0 9px}.clock-choices>button{min-height:56px}.location{top:6px;left:12px;right:12px}.route-choice{min-height:128px}.route-info h2{font-size:18px}.route-info p{font-size:10px}.route-icon>svg{width:20px;height:20px}.page-heading{padding-top:14px;padding-bottom:12px}.page-heading h1{font-size:21px}.page-heading p{font-size:11px}.route-arrow{bottom:20px}.subtle-note{font-size:10px;padding:13px 6px}.dragon-name{gap:13px}.book-dragon{grid-template-columns:76px 1fr 16px;gap:12px}.book-dragon h2{font-size:20px}.book-dragon>.dragon-art{height:163px}.book-dragon{min-height:173px}.clue-result h1{font-size:21px}.clue-result p{font-size:11px}.clue-emblem{width:58px;height:58px;margin-top:-44px}.reveal-screen{grid-template-rows:minmax(0,1fr) 105px 48px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation:none!important;transition:none!important}.back-button,.favorite-button{display:flex;gap:7px;align-items:center;justify-content:center;min-width:84px;min-height:48px;font-size:14px;color:var(--text);padding:0 8px;border-radius:8px}.favorite-button{color:var(--muted);font-size:12px}.favorite-button.is-favorite{color:var(--gold)}.child-topbar{height:60px;min-height:60px;padding:0 12px}.child-page-heading{padding:20px var(--pad) 22px}.child-page-heading h1{font-size:28px;line-height:1.4;font-weight:700}.child-page-heading p{font-size:14px;color:var(--muted);margin-top:7px}.problems-screen{flex:1;min-height:0;display:flex;flex-direction:column;padding-bottom:24px}.adventure-choice{flex:1;position:relative;overflow:hidden;min-height:180px;margin:0 var(--pad);padding:0;border:1px solid #a3ad9075;border-radius:12px;text-align:left;background:#102b34}.adventure-choice>.world{position:absolute;inset:0;opacity:.9}.adventure-choice>.world>svg{height:125%;transform:translate(22%,-12%)}.adventure-choice:after{content:"";pointer-events:none;position:absolute;inset:0;background:linear-gradient(90deg,#0a2530f2,#0c2a37aa 57%,transparent)}.adventure-choice-label{position:relative;z-index:1;padding:26px 20px;display:flex;flex-direction:column;align-items:flex-start;gap:14px;color:var(--gold)}.adventure-choice-label strong{font-size:23px;color:var(--text);letter-spacing:.02em}.adventure-choice-label span{font-size:13px;color:#d1d9c9}.adventure-choice-label>svg:last-child{position:absolute;right:18px;bottom:28px}.practice-section{padding:23px var(--pad) 0}.practice-section h2{font-size:14px;font-weight:500;color:var(--muted);margin-bottom:13px}.practice-options{display:grid;grid-template-columns:1fr 1fr;gap:16px}.practice-options>button{display:flex;flex-direction:column;gap:13px;align-items:center;justify-content:center;min-height:144px;border-radius:12px;border:1px solid #82999b5c;background:linear-gradient(#1c3b48,#142c37);font-weight:700;font-size:19px;line-height:1.5}.practice-options svg{color:var(--gold)}.practice-screen{flex:1;min-height:0;display:flex;flex-direction:column;padding:20px var(--pad) 24px;background:radial-gradient(ellipse at center,#24434765,transparent 65%)}.practice-progress{display:flex;align-items:center;justify-content:space-between;color:var(--gold);font-size:15px}.practice-question{padding:28px 0 14px;text-align:center}.practice-question h1{font-size:24px;line-height:1.5}.practice-question p{font-size:14px;color:var(--muted);margin-top:10px}.practice-clock{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}.practice-clock>.clock{width:min(100%,min(79vw,36dvh));height:auto;max-height:100%;aspect-ratio:1}.practice-bottom{padding-top:14px}.practice-time{font-size:17px;text-align:center;margin-bottom:17px;color:var(--gold)}.practice-bottom>.primary,.practice-done>.primary{border-radius:10px;min-height:66px;font-size:20px}.practice-bottom .clock-choices button{border-radius:10px;min-height:66px;font-size:30px}.practice-bottom .clock-choices button span{font-size:16px}.practice-done{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:30px var(--pad);gap:20px}.practice-done-icon{width:110px;height:110px;border:1px solid var(--gold-dark);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold);background:#243b3a;margin-bottom:12px}.practice-done h1{font-size:28px}.practice-done p{font-size:15px;color:var(--muted);margin-bottom:20px}.child-secondary{min-height:56px;padding:8px 16px;font-size:16px;color:var(--gold)}.collection-screen{flex:1;min-height:0;display:flex;flex-direction:column}.collection-count{display:flex;align-items:center;gap:9px;font-size:14px;margin:0 0 17px;color:var(--muted)}.collection-count strong{margin-left:auto;font-size:17px;color:var(--gold)}.collection-dragon{display:block;width:100%;padding:0;border:1px solid #ac955475;border-radius:12px;background:radial-gradient(ellipse at 50% 30%,#8062264d,#15272c 75%);overflow:hidden;text-align:center}.collection-art{position:relative;height:clamp(235px,39dvh,380px);padding:14px 12px 0}.collection-favorite{position:absolute;right:14px;top:14px;width:33px;height:33px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#0a1b26;color:var(--gold)}.collection-name{padding:28px 12px 17px;display:flex;flex-direction:column;align-items:center;gap:14px}.collection-name h2{font-family:var(--serif);font-size:25px;letter-spacing:.1em;font-weight:500}.collection-name>span{display:flex;gap:8px;align-items:center;color:var(--gold);font-size:14px}.collection-perfect,.collection-clue{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:var(--gold);margin-top:14px}.collection-clue{color:var(--muted)}.collection-empty{padding:20px 0 18px;display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}.collection-empty>svg{color:var(--gold)}.collection-empty h2{font-size:24px;line-height:1.6;font-weight:500}.collection-empty>.primary{font-size:17px;border-radius:10px}.collection-future{margin-top:30px;padding-bottom:10px}.collection-future h2{font-size:13px;font-weight:500;color:var(--muted);margin-bottom:15px}.collection-future>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.collection-future .future-dragon{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 2px;border:0;border-radius:8px;background:#16303870;font-size:13px;color:#e6ba85}.collection-future .future-dragon:nth-child(2){color:#92c3d7}.collection-future .future-dragon:nth-child(3){color:#c7b8e7}.collection-future .future-dragon span{font-size:13px;color:var(--text)}.collection-future .future-dragon small{font-size:10px;color:var(--muted)}@media(max-height:720px){.child-page-heading{padding-top:15px;padding-bottom:18px}.child-page-heading h1{font-size:25px}.child-page-heading p{font-size:13px}.problems-screen{padding-bottom:20px}.adventure-choice{min-height:160px}.adventure-choice-label{padding:20px 18px;gap:11px}.adventure-choice-label strong{font-size:21px}.practice-options>button{min-height:122px;font-size:18px;gap:9px}.practice-section{padding-top:18px}.practice-question{padding-top:20px}.practice-question h1{font-size:22px}.practice-question p{font-size:12px;margin-top:6px}.practice-screen{padding-top:17px;padding-bottom:18px}.practice-time{font-size:15px;margin-bottom:12px}.collection-future{margin-top:22px}}@media(max-height:600px){.child-topbar{min-height:56px;height:56px}.child-page-heading{padding:13px var(--pad) 14px}.child-page-heading h1{font-size:24px}.child-page-heading p{font-size:12px;margin-top:4px}.adventure-choice{min-height:145px}.adventure-choice-label{gap:9px;padding:16px}.adventure-choice-label strong{font-size:20px}.adventure-choice-label span{font-size:12px}.adventure-choice-label>svg:first-child{width:24px}.practice-section{padding-top:15px}.practice-section h2{margin-bottom:10px;font-size:13px}.practice-options>button{min-height:112px;font-size:17px;gap:8px}.practice-screen{padding:13px var(--pad) 16px}.practice-question{padding:15px 0 10px}.practice-question h1{font-size:20px}.practice-progress{font-size:13px}.practice-bottom{padding-top:10px}.practice-time{font-size:14px;margin-bottom:10px}.practice-bottom>.primary,.practice-bottom .clock-choices button{min-height:58px}.practice-clock>.clock{width:min(100%,34dvh)}.practice-done{gap:14px;padding:20px var(--pad)}.practice-done-icon{width:84px;height:84px;margin-bottom:3px}.practice-done h1{font-size:25px}.practice-done p{margin-bottom:7px;font-size:13px}.collection-name h2{font-size:23px}.collection-art{height:240px}.collection-count{font-size:13px}.collection-empty{gap:18px;padding-top:12px}.collection-empty h2{font-size:22px}}.game.screen-home{padding:0;--home-safe-top: env(safe-area-inset-top, 0px);--home-safe-bottom: env(safe-area-inset-bottom, 0px)}.dragon-home{position:relative;isolation:isolate;display:flex;flex-direction:column;flex:1;min-height:0;background:#14132b}.home-art-stage{position:absolute;inset:0;z-index:-2;overflow:hidden}.home-art-stage .dragon-art,.home-art-stage .dragon-art>img{width:100%;height:100%}.home-art-stage .dragon-art>img{object-fit:cover;object-position:50% 0%}.dragon-home:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#080c22c9 0%,#10153169 11%,transparent 25%,transparent 54%,#10102340 66%,#080b1ac9 82%,#080b1aef 100%)}.home-heading{position:relative;text-align:center;padding:calc(8px + var(--home-safe-top)) 54px 0;pointer-events:none}.home-heading h1{font-family:var(--serif);font-size:clamp(24px,7.15vw,32px);font-weight:800;line-height:1.25;letter-spacing:.015em;white-space:nowrap;color:#fff5d8;text-shadow:0 2px 3px #161226,0 0 18px #090d28,0 4px 16px #070716}.home-heading h1>span{display:block;font-family:var(--font);font-size:12px;font-weight:700;line-height:1.3;letter-spacing:.35em;padding-left:.35em;margin-bottom:2px;color:#f4deb0}.home-settings{position:absolute;top:calc(16px + var(--home-safe-top));right:10px;width:48px;height:48px;display:grid;place-items:center;color:#fff9ed;background:#14162ad9;border:1px solid #f8edd65c;border-radius:50%;box-shadow:0 3px 10px #05071255}.home-menu{position:relative;margin-top:auto;padding:22px 24px calc(22px + var(--home-safe-bottom))}.home-menu>p{color:#fff9ea;text-shadow:0 2px 6px #050610,0 0 16px #050610;font-size:15px;font-weight:700;line-height:1.5;text-align:center;letter-spacing:.04em;margin:0 0 17px}.home-menu-buttons{display:grid;gap:14px}.home-menu-buttons>button{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) 26px;align-items:center;gap:10px;padding:0 21px;border-radius:18px;font-weight:800;letter-spacing:.09em;text-align:center;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.home-cta-icon,.home-cta-arrow{justify-self:center}.home-problems{min-height:82px;color:#292015;font-size:28px;border:2px solid #fff0c3;background:linear-gradient(165deg,#fff0b8,#f1c56b 64%,#e8ad47);box-shadow:0 5px #906029,0 8px 24px #03061888,inset 0 2px #fff9d9}.home-book{min-height:66px;color:#fff7df;font-size:22px;border:1.5px solid #d1d4ef;background:linear-gradient(150deg,#303750f5,#20263ff5);box-shadow:0 4px #0c1027,0 6px 16px #03061866,inset 0 1px #ffffff26}.home-menu-buttons>button:active{transform:translateY(3px);filter:brightness(1.05);box-shadow:0 1px #11172b,0 2px 8px #03061855}.home-menu-buttons>button:focus-visible,.home-settings:focus-visible{outline:3px solid #fff;outline-offset:5px}@media(hover:hover){.home-menu-buttons>button:hover,.home-settings:hover{filter:brightness(1.08)}}.home-art-stage .art-error{position:absolute;inset:25% 16px 38%;padding:16px;border-radius:16px;color:#fff7e7;background:#12182bf0;z-index:1}@media(max-height:720px){.home-heading{padding-top:calc(10px + var(--home-safe-top))}.home-heading h1{font-size:25px}.home-heading h1>span{font-size:12px;margin-bottom:2px}.home-settings{top:calc(10px + var(--home-safe-top))}.home-menu{padding:14px 20px calc(18px + var(--home-safe-bottom))}.home-menu>p{font-size:13px;margin-bottom:13px}.home-problems{min-height:72px;font-size:26px}.home-book{min-height:60px;font-size:21px}}@media(max-height:600px){.home-heading{padding-top:calc(8px + var(--home-safe-top))}.home-heading h1{font-size:23px}.home-settings{top:calc(8px + var(--home-safe-top));right:8px}.home-menu{padding:12px 18px calc(16px + var(--home-safe-bottom))}.home-menu>p{font-size:12px;margin-bottom:12px}.home-menu-buttons{gap:12px}.home-menu-buttons>button{padding-inline:18px;border-radius:15px}.home-problems{min-height:68px;font-size:25px}.home-book{min-height:56px;font-size:20px}}.screen-home .save-warning{top:52%;bottom:auto}.clock-stage{position:relative;width:var(--clock-size);height:var(--clock-size);flex-shrink:0;isolation:isolate}.clock-stage>.clock{width:100%;height:100%}.practice-clock>.clock-stage{width:clamp(156px,min(74vw,34dvh),286px);height:auto;aspect-ratio:1}.correct-effect{position:absolute;inset:0;pointer-events:none}.correct-ring{position:absolute;inset:-7px;border:4px solid #8bffc5;border-radius:50%;box-shadow:0 0 22px #75e8b080,inset 0 0 12px #baffcd55;animation:correct-ring-in .6s ease-out both}.correct-medal{position:absolute;top:-9px;right:-8px;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#bdffce;color:#174a31;border:3px solid #efffde;box-shadow:0 4px 14px #071b2070;animation:correct-pop .5s ease-out both}.correct-sparks{position:absolute;inset:0}.correct-sparks i{position:absolute;left:50%;top:50%;width:6px;height:13px;background:#fff1a8;border-radius:2px;opacity:0;animation:correct-spark .85s ease-out both}.correct-sparks i:nth-child(2n){background:#9fffd0}.answer-correct .console-heading h1,.answer-correct .practice-question h1{color:#bdffce;font-weight:800}.answer-correct .console-heading h1{font-size:24px}.answer-correct .quest-console{background:radial-gradient(ellipse at center,#24564166,transparent 72%),var(--panel-deep)}.quest-exit-note{font-size:11px;color:var(--muted)}.quest-screen .location{gap:8px}.quest-screen .location>span{font-size:10px}@keyframes correct-ring-in{0%{transform:scale(.87);opacity:0}55%{transform:scale(1.035);opacity:1}to{transform:scale(1);opacity:1}}@keyframes correct-pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.12);opacity:1}to{transform:scale(1);opacity:1}}@keyframes correct-spark{0%{transform:rotate(calc(var(--spark-index) * 45deg)) translateY(-50px) scale(.5);opacity:0}20%{opacity:1}to{transform:rotate(calc(var(--spark-index) * 45deg)) translateY(-155px) scale(.3);opacity:0}}.problems-map-link{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;margin:12px var(--pad) 0;border:1px solid #8fbba052;border-radius:10px;color:#f5e8bd;background:#152e36;font-size:14px}.problems-map-link strong{font-weight:500;font-size:10px;color:var(--muted)}.problems-screen .practice-section{padding-top:16px}.clear-screen{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;flex:1;min-height:0;background:radial-gradient(ellipse at 50% 35%,#56482870,transparent 65%),#0b1b23}.clear-heading{text-align:center;padding:18px 16px 8px}.clear-heading>span{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--gold);font-size:12px}.clear-heading h1{font-size:28px;color:#fff0b6;margin:8px 0 2px}.clear-heading p{color:#d0e8d5;font-size:13px}.clear-art{position:relative;min-height:0;padding:0 12px;overflow:hidden}.clear-art:active{transform:none}.clear-art .dragon-art{height:100%}.clear-zoom{position:absolute;bottom:5px;right:16px;display:flex;align-items:center;gap:5px;padding:5px 9px;border-radius:20px;background:#10202de8;color:#e5e9df;font-size:10px}.clear-dragon-name{text-align:center;padding:16px 12px 10px}.clear-dragon-name h2{font-family:var(--serif);font-size:25px;font-weight:600;letter-spacing:.08em}.clear-dragon-name p{display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px;color:#c0dac8;margin-top:7px}.clear-dragon-name p>span{display:flex;align-items:center;gap:4px;color:var(--gold);font-size:11px}.clear-actions{padding:0 22px 15px;display:grid;gap:12px}.clear-actions>.primary{border-radius:14px;min-height:62px;font-size:17px}.clear-actions>.child-secondary{background:#19343f;border:1px solid #91b5b386;color:#eff7ee;border-radius:14px;min-height:54px;font-size:16px;gap:10px}.clear-next-note{text-align:center;font-size:10px;color:var(--muted)}.roadmap-screen{display:flex;flex-direction:column;flex:1;min-height:0}.journey-heading{padding:18px var(--pad) 12px;background:#10232d}.journey-heading h1{font-size:27px}.journey-heading p{font-size:12px;color:#c3d4d0;margin:5px 0 10px}.journey-heading p strong{font-size:18px;color:var(--gold)}.journey-progress{height:7px;overflow:hidden;border-radius:5px;background:#ffffff1a}.journey-progress>span{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,#82dcb0,#f2d994)}.journey-count{display:block;font-size:11px;color:#c9dcd4;margin-top:8px}.map-scroll{position:relative;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:10px var(--pad) 20px}.map-chapter{padding:13px 0 22px}.map-chapter h2{display:flex;gap:8px;align-items:center;color:var(--chapter-color);font-size:16px;margin-bottom:14px}.map-chapter h2>span{width:26px;height:26px;display:grid;place-items:center;border:1px solid;border-radius:50%;font-size:13px}.map-chapter h2 small{margin-left:auto;font-size:10px;font-weight:400}.map-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.map-stage{padding:7px 4px 10px;min-width:0;border-radius:16px;border:1px solid #819d9450;background:#162e37;display:flex;flex-direction:column;align-items:center;gap:5px}.map-stage-art{display:flex;width:60px;height:62px;align-items:center;justify-content:center;border-radius:12px;overflow:hidden}.map-stage strong{font-size:21px;font-weight:800}.map-stage-state{min-height:15px;display:flex;align-items:center;gap:3px;font-size:10px}.map-stage.is-current{border:2px solid #ffe1a0;background:#594c2d;color:#fff1c6;box-shadow:0 0 15px #dcb75025}.map-stage.is-cleared{color:#bdedd0;border-color:#77c6a575}.map-stage.is-locked{color:#96a9b0;background:#14262e;border-style:dashed}.map-footer{padding:12px var(--pad) 16px;background:#11232c;border-top:1px solid var(--line)}.map-footer .primary{border-radius:12px;min-height:60px;font-size:18px}.collection-summary{display:flex;align-items:center;gap:8px;padding:0 var(--pad) 12px;color:var(--gold)}.collection-summary>strong{font-size:18px;white-space:nowrap}.collection-map-link{margin-left:auto;display:flex;align-items:center;justify-content:center;gap:5px;min-height:48px;padding:0 8px;border:1px solid #74948e66;border-radius:9px;color:var(--text);font-size:11px}.collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.collection-grid.has-one{grid-template-columns:1fr}.collection-grid .collection-dragon{min-width:0;border-radius:12px}.collection-grid .collection-art{height:210px}.collection-grid.has-one .collection-art{height:clamp(220px,39dvh,340px)}.collection-grid .collection-name{padding:10px 5px 14px;gap:12px}.collection-grid .collection-name h2{font-size:18px;letter-spacing:.015em}.collection-grid.has-one .collection-name h2{font-size:25px}.collection-grid .collection-name>span{font-size:11px;gap:5px}.collection-grid .collection-name .collection-number{color:var(--muted);font-size:10px}.collection-name>small{display:flex;align-items:center;gap:4px;color:var(--gold);font-size:10px}.collection-remaining{margin:22px 0 4px;text-align:center;color:var(--muted);font-size:13px}.campaign-view{grid-template-rows:60px minmax(0,1fr) 148px}.campaign-view .dragon-name{gap:10px;padding:8px 12px}.campaign-view .dragon-name h1{font-size:25px;letter-spacing:.08em}.view-replay{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;color:var(--muted);font-size:12px;padding:0 16px;border:1px solid #8ba09a44;border-radius:10px}.screen-clear .save-warning{bottom:auto;top:22%}@media(max-height:720px){.problems-screen .adventure-choice{min-height:135px}.problems-screen .adventure-choice-label{padding:15px 18px}.problems-screen .adventure-choice-label>svg:first-child{display:none}.problems-screen .practice-options>button{min-height:108px;padding:12px}.clear-heading{padding-top:12px}.clear-heading h1{font-size:25px}.clear-dragon-name{padding-top:14px}.clear-actions{padding-bottom:12px;gap:10px}.clear-actions>.primary{min-height:58px;font-size:16px}.clear-actions>.child-secondary{min-height:52px}.clear-dragon-name h2{font-size:23px}.journey-heading{padding-top:12px}.journey-heading h1{font-size:24px}.collection-grid .collection-art{height:180px}}@media(max-height:600px){.problems-screen .child-page-heading{padding-top:8px;padding-bottom:10px}.problems-screen .child-page-heading h1{font-size:22px}.problems-screen .child-page-heading p{font-size:11px}.problems-screen .adventure-choice{min-height:110px}.problems-screen .adventure-choice-label{padding:14px}.problems-map-link{min-height:48px;margin-top:10px;font-size:13px}.problems-map-link strong{font-size:9px}.problems-screen .practice-section{padding-top:10px}.problems-screen .practice-section h2{margin-bottom:8px}.problems-screen .practice-options>button{min-height:98px;font-size:16px;padding:10px;gap:6px}.problems-screen .practice-options>button svg{height:24px}.answer-correct .console-heading h1{font-size:20px}.correct-medal{width:42px;height:42px}.clear-heading>span{font-size:10px}.clear-heading h1{font-size:23px;margin-top:5px}.clear-heading p{font-size:11px}.clear-dragon-name{padding-top:12px;padding-bottom:8px}.clear-dragon-name h2{font-size:21px}.clear-dragon-name p{font-size:11px;margin-top:5px}.clear-actions{padding:0 18px 10px;gap:10px}.clear-actions>.primary{min-height:56px;font-size:15px;padding-inline:16px}.clear-actions>.child-secondary{min-height:50px;font-size:15px}.clear-next-note{font-size:9px}.journey-heading h1{font-size:22px}.map-footer{padding-top:10px;padding-bottom:12px}.map-footer .primary{min-height:56px}.collection-summary{padding-bottom:8px}.collection-summary>strong{font-size:16px}.collection-map-link{font-size:10px;padding:0 6px}.campaign-view{grid-template-rows:56px minmax(0,1fr) 138px}.campaign-view .dragon-name h1{font-size:22px}}@media(prefers-reduced-motion:reduce){.correct-sparks{display:none}}.reduce-motion .correct-sparks{display:none}:root{--paper: #f4eddb;--paper-white: #fffaf0;--paper-ink: #20383e;--paper-muted: #5e6d68;--accent: #b94129;--accent-shadow: #792b20;--ink: #12282f;--text: #fcf4df;--muted: #b8cac5;--line: #a5b6a52f;--ui-corner: 7px}body{font-weight:500}h1,h2,h3,strong,button{font-weight:700}h1,h2,.dragon-name h1,.collection-name h2{letter-spacing:.015em}.icon-box{overflow:visible;flex-shrink:0;vertical-align:middle}button{-webkit-tap-highlight-color:transparent}.primary,.practice-bottom>.primary,.practice-done>.primary,.clear-actions>.primary,.map-footer .primary,.collection-empty>.primary{position:relative;color:#fffaf0;background:var(--accent);border:0;border-radius:var(--ui-corner);box-shadow:0 4px 0 var(--accent-shadow);font-weight:700;letter-spacing:.015em;padding:12px 20px;transition:transform .11s ease,box-shadow .11s ease,filter .11s ease}.primary:after{content:"";position:absolute;inset:5px;pointer-events:none;border:1px solid #fff5dc38;border-radius:3px}.primary:hover{background:#c2472c}.primary>.icon-box{width:25px;height:25px}.primary:active{transform:translateY(3px);box-shadow:0 1px 0 var(--accent-shadow)}.primary:focus-visible{outline:3px solid #ffeab5;outline-offset:6px}.back-button{gap:8px;font-size:13px}.back-button>.icon-box{width:22px;height:22px}.icon-button{color:inherit;border-radius:7px}.topbar{border-bottom:0}.child-topbar{background:#17353e;box-shadow:0 1px #edf0d81a}.page-kicker{display:block;font-size:11px;letter-spacing:.1em;color:var(--paper-muted);margin-bottom:7px;font-weight:700}.home-heading{padding:calc(20px + var(--home-safe-top)) 24px 0;text-align:left}.home-heading h1{display:inline-block;text-align:left;font-family:var(--font);font-size:43px;line-height:1.04;letter-spacing:.025em;font-weight:700;color:#fff6df;text-shadow:0 3px 0 #10282c,0 0 18px #080e24,2px 0 0 #10282c,-2px 0 0 #10282c}.home-heading h1>span{font-size:13px;letter-spacing:.42em;margin:0 0 5px;padding-left:2px;color:#ffe6a1}.home-heading h1 strong{font-weight:700}.home-settings{top:calc(23px + var(--home-safe-top));right:20px;border-radius:8px;background:#122732e8;border:1px solid #fff4d382;box-shadow:0 3px #06191f}.dragon-home:before{background:linear-gradient(180deg,#0819269c,transparent 27%,transparent 58%,#091e2870 74%,#0a1d28e8)}.home-menu{padding:18px 26px calc(24px + var(--home-safe-bottom))}.home-menu>p{margin-bottom:16px;font-size:13px;font-weight:700}.home-menu-buttons{gap:16px}.home-menu-buttons>button{border-radius:7px;letter-spacing:.04em;padding:0 18px;grid-template-columns:45px minmax(0,1fr) 26px;gap:10px}.home-problems{min-height:84px;background:var(--paper-white);color:#243b41;border:0;border-left:6px solid var(--accent);box-shadow:0 5px #a69576,0 9px 18px #06141b70;font-size:28px}.home-problems .home-cta-icon{color:var(--accent);width:39px;height:39px}.home-problems .home-cta-arrow{color:var(--accent)}.home-book{min-height:64px;border:1px solid #efe5cd9c;background:#122d39f0;color:#fff5d9;box-shadow:0 4px #071b24;font-size:21px}.home-book .home-cta-icon{width:29px;height:29px}.home-menu-buttons>button:active{transform:translateY(4px);box-shadow:0 1px #10252c}.home-menu-buttons>button:hover{filter:brightness(1.04)}.problems-screen,.roadmap-screen,.collection-screen,.practice-screen,.practice-done{--text: var(--paper-ink);--muted: var(--paper-muted);--gold: #8a492a;color:var(--paper-ink);background-color:var(--paper);background-image:radial-gradient(#74877e13 .65px,transparent .65px);background-size:7px 7px}.child-page-heading{padding:22px var(--pad) 20px}.child-page-heading h1{font-size:30px;line-height:1.2}.child-page-heading p{font-size:12px;margin-top:9px;font-weight:500}.problems-screen{padding-bottom:24px}.problems-screen .adventure-choice{flex:1;min-height:194px;background:#1d4148;border:0;border-radius:3px 22px 3px 3px;box-shadow:0 5px #d1c5a9;overflow:hidden}.adventure-choice>.world{opacity:1}.adventure-choice>.world>svg{width:100%;height:110%;transform:translate(26%,-5%)}.adventure-choice:after{background:linear-gradient(90deg,#112f38e8 10%,#14343fa1 55%,#14343f1a)}.problems-screen .adventure-choice-label{display:flex;height:100%;padding:23px;gap:10px;align-items:flex-start;justify-content:flex-end}.adventure-marker{display:grid;place-items:center;width:44px;height:44px;color:#fff2d2;margin-bottom:auto}.adventure-choice-label strong{font-size:24px;color:#fff8e5;letter-spacing:0}.adventure-choice-label .adventure-caption{color:#ecf2dc;font-size:11px;padding-right:0}.adventure-choice-label .adventure-start{display:inline-flex;align-items:center;gap:22px;background:var(--paper-white);color:var(--paper-ink);min-height:42px;padding:8px 15px;border-radius:3px;margin-top:7px;font-size:15px;font-weight:700}.problems-map-link{flex-shrink:0;margin-top:16px;min-height:56px;border:0;border-top:1px solid #a4977d;border-bottom:1px solid #a4977d;border-radius:0;background:transparent;color:#253f45;font-size:14px;justify-content:flex-start;gap:10px;padding:0 3px;box-shadow:none}.problems-map-link strong{font-size:10px;color:#667168;margin-left:auto}.problems-map-link>.icon-box:first-child{color:#a3442c}.problems-screen .practice-section{padding-top:22px}.practice-section h2{color:#64706a;font-size:12px;letter-spacing:.06em;margin-bottom:13px}.practice-options{gap:12px}.problems-screen .practice-options>button{min-height:120px;background:#fffaf0;color:#213f46;border:0;border-bottom:3px solid #c7baa0;border-radius:3px;padding:15px 7px;gap:9px;font-size:18px;box-shadow:0 1px #fff}.practice-options .icon-box{color:#a4472c}.practice-options button:active{transform:translateY(2px)}.quest-console{--muted: #576b62;color:var(--paper-ink);background:var(--paper);border-top:4px solid #baab88;padding-top:15px}.quest-console:before{top:-7px;width:12px;height:12px;left:calc(50% - 6px);background:#bc452b;border:2px solid #f4eddb}.console-heading .eyebrow{color:#6b6552;font-size:10px;letter-spacing:.08em}.console-heading h1{font-size:20px;font-weight:700;margin:8px 0 13px}.clock{filter:drop-shadow(0 5px 0 #cabd9d80)}.clock-number{font:700 20px var(--font);fill:#244048}.clock-hint,.feedback .clock-hint{color:#52645d;font-weight:500}.clock-choices{gap:14px}.clock-choices>button{font:700 27px var(--font);color:#213b43;background:#fffaf0;border:2px solid #294a50;border-radius:7px;box-shadow:0 4px #b4b6a1}.clock-choices>button>span{color:#52675f}.clock-choices>button:hover{color:#aa3d26;border-color:#aa3d26}.clock-choices>button:active{transform:translateY(3px);box-shadow:0 1px #b4b6a1}.answer-correct .console-heading h1,.answer-correct .practice-question h1{color:#16704c}.answer-correct .quest-console{background:var(--paper)}.correct-ring{border-color:#229268;box-shadow:0 0 0 4px #8fdfb54d}.correct-medal{background:#1d825e;color:#fffbe4;border:3px solid #fffaf0}.practice-question h1{font-size:25px}.practice-time{font-size:18px;color:#3a5556}.practice-progress{color:#6b604b}.practice-progress>span{border-bottom:2px solid #ad482e;padding-bottom:5px;font-size:14px}.practice-progress .trail>span{background:#8b968c66}.practice-progress .trail .current,.practice-progress .trail .done{background:#b94129;box-shadow:none}.practice-done-icon{color:#a9462d;background:#fff8e4;border:3px solid #c1aa7b}.practice-done .child-secondary{color:#28454a;border-bottom:1px solid #80918a}.world-caption{color:#fff8df;font-size:13px;font-weight:700;background:#102b35ae;border-radius:3px}.location>span{color:#fff5df;font-weight:700;background:#102b35c9;font-size:10px}.route-choice{border-radius:3px 22px 3px 3px;border:1px solid #bbbf995e;box-shadow:0 5px #071d26}.route-info h2{font-weight:700;letter-spacing:.04em}.route-icon{color:#ecd09d}.page-heading h1{font-weight:700}.journey-heading{background:transparent;padding:20px var(--pad) 14px;border-bottom:1px solid #b6ab9259}.journey-heading h1{font-size:27px;line-height:1.2}.journey-heading p{color:#53665e;margin:9px 0 12px;font-size:11px}.journey-heading p strong{color:#a84129;font-size:17px}.journey-progress{height:8px;background:#d9d0b9;border-radius:1px}.journey-progress>span{background:#2b7560;border-radius:1px}.journey-count{color:#4e635c;font-size:11px;font-weight:700;margin-top:10px}.map-scroll{padding-top:6px;background:linear-gradient(90deg,transparent calc(100% - 15px),#cabda624 calc(100% - 15px))}.map-chapter{padding:17px 0 22px}.map-chapter h2{color:#29484b;font-size:15px;gap:9px;margin-bottom:17px}.map-chapter h2>span{background:#29484b;color:#fff7dc;width:25px;height:25px;border:0;border-radius:3px;font-size:12px}.map-chapter h2 small{font-size:11px;color:#6a7368}.map-stages{position:relative;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,110px);gap:14px 4px}.map-road{position:absolute;inset:0;width:100%;height:234px;pointer-events:none}.map-road path{stroke:#c4b99e;stroke-width:5;stroke-linecap:round;fill:none;stroke-dasharray:1 10}.map-stage{position:relative;border:0;border-radius:0;padding:4px 0 0;gap:7px;background:transparent;z-index:1;min-height:104px}.map-stage:nth-of-type(4){grid-column:3;grid-row:2}.map-stage:nth-of-type(5){grid-column:2;grid-row:2}.map-stage:nth-of-type(6){grid-column:1;grid-row:2}.map-stage-art{width:68px;height:68px;border-radius:50%;border:2px solid #b4ac96;background:#e4ddca;box-shadow:0 4px #c6bda8}.map-stage-art>.icon-box{display:none}.map-stage>strong{position:absolute;top:19px;left:0;right:0;font-size:25px;color:#738079;line-height:40px}.map-stage-state{font-size:10px;font-weight:700;color:#6b796e}.map-stage.is-locked{color:inherit;background:transparent;border:0}.map-stage.is-current{background:transparent;box-shadow:none;border:0}.map-stage.is-current .map-stage-art{border:3px solid #fff8df;background:var(--accent);box-shadow:0 0 0 2px var(--accent),0 5px #a13724}.map-stage.is-current>strong{color:#fffbe8}.map-stage.is-current .map-stage-state{color:#a83a24}.map-stage.is-cleared{border:0}.map-stage.is-cleared .map-stage-art{border:3px solid #e6f0d8;background:#1b3e42;box-shadow:0 0 0 2px #528876,0 5px #becab0}.map-stage.is-cleared>strong{top:50px;right:-48px;font-size:11px;line-height:18px;color:#fff5da;text-shadow:0 1px 4px #051715}.map-stage.is-cleared .map-stage-state{color:#2f7159}.map-stage:hover:not(:disabled) .map-stage-art{filter:brightness(1.08)}.map-footer{background:#f5eeddf5;border-top:1px solid #b4a5877a;padding:13px var(--pad) 20px}.collection-summary{color:#324f50;padding-bottom:16px}.collection-summary>.icon-box{display:none}.collection-summary>strong{font-size:19px}.collection-map-link{background:transparent;border:0;border-bottom:1px solid #899e8d;border-radius:0;color:#294a50;padding-inline:4px;font-size:11px}.collection-grid{gap:25px 14px}.collection-grid .collection-dragon{border:0;border-radius:0;background:transparent;overflow:visible;box-shadow:none}.collection-grid .collection-art{padding:8px;height:200px;background:#203d42;border:1px solid #cab788;box-shadow:4px 5px #d0c5aa}.collection-grid.has-one .collection-art{height:clamp(240px,43dvh,380px);margin-inline:18px;padding:12px}.collection-grid .collection-name{color:#213e44;padding:13px 0 0;gap:10px}.collection-grid .collection-name .collection-number{font-size:10px;letter-spacing:.1em;color:#68796c}.collection-grid .collection-name h2{font-size:17px;font-weight:700}.collection-name rt{color:#637568;font-weight:700}.collection-grid .collection-name>span:not(.collection-number){color:#90432b;font-size:11px}.collection-name>small{color:#486e52}.collection-favorite{top:-5px;right:-4px;border-radius:0 0 2px 2px;width:30px;height:40px;color:#fff3c4;background:#b74328;box-shadow:0 2px 2px #112b3555}.collection-remaining{color:#627166}.collection-empty>svg{color:#9e4a30}.collection-empty h2{font-weight:700;font-size:23px}.clear-screen{position:relative;background:radial-gradient(ellipse at 50% 40%,#36534780,transparent 70%),#132d35}.clear-heading{position:relative;padding-top:17px;padding-bottom:12px}.clear-laurel{position:absolute;top:25px;left:25px;display:grid;place-items:center;width:40px;height:40px;border:1px solid #d1ba7a;border-radius:50%;color:#e9d29a;transform:rotate(-12deg)}.clear-heading>span{color:#bdcfc5;font-size:11px}.clear-heading>span>svg{display:none}.clear-heading h1{color:#fff2c8;font-size:28px;letter-spacing:.015em;font-weight:700}.clear-heading p{color:#c3ddd0;font-size:12px;margin-top:4px}.clear-art{padding:0 18px}.clear-zoom{color:#fff3d8;border-radius:3px;right:23px;background:#13333beb;min-height:25px}.clear-dragon-name{padding-top:17px;padding-bottom:14px}.clear-dragon-name h2{font-family:var(--font);font-size:25px;letter-spacing:.025em;font-weight:700}.clear-dragon-name p{color:#b8ccc2;font-size:12px}.clear-actions{padding-bottom:19px;gap:14px}.clear-actions>.primary{min-height:62px;font-size:17px}.clear-actions>.child-secondary{border:1px solid #849e91;background:transparent;color:#f2edda;border-radius:5px;box-shadow:none;min-height:54px}.clear-next-note{color:#b4c8bc;font-size:10px}.campaign-view{background:radial-gradient(ellipse at center,#31534566,transparent 75%),#112b32}.campaign-view .dragon-name h1{font-family:var(--font);font-weight:700;letter-spacing:.02em}.view-replay{border:0;border-bottom:1px solid #758e7d;border-radius:0;font-size:12px}.favorite-button{border-radius:4px}.favorite-button.is-favorite{background:#314a42;color:#ffe3a0}.settings-modal{--gold: #a6472a;--muted: #5c6b60;--line: #c5baa0;border-radius:8px;background:#f4eddb;color:#233c42;border:4px solid #253e43}.settings-modal .setting-row{color:#213d44;border-color:#b6ae95}.settings-modal .setting-row strong{color:#93422a}.settings-modal p{color:#5a695f}@media(max-height:720px){.home-heading{padding-top:calc(15px + var(--home-safe-top))}.home-heading h1{font-size:36px}.home-settings{top:calc(18px + var(--home-safe-top))}.home-menu{padding:14px 22px calc(20px + var(--home-safe-bottom))}.home-problems{min-height:76px;font-size:26px}.home-book{min-height:58px;font-size:20px}.child-page-heading{padding-top:17px;padding-bottom:15px}.page-kicker{margin-bottom:5px;font-size:10px}.child-page-heading h1{font-size:27px}.problems-screen .adventure-choice{min-height:164px}.problems-screen .adventure-choice-label{padding:17px 20px;gap:7px}.adventure-marker{display:none}.problems-screen .practice-options>button{min-height:101px;font-size:16px;padding:12px 7px;gap:8px}.problems-screen .practice-section{padding-top:16px}.problems-map-link{margin-top:14px;min-height:52px}.practice-section h2{margin-bottom:10px}.clear-laurel{left:18px;top:19px;width:32px;height:32px}.clear-laurel>svg{width:19px;height:19px}.clear-heading{padding-top:12px;padding-bottom:8px}.clear-heading h1{font-size:26px}.clear-dragon-name{padding-top:14px;padding-bottom:11px}.clear-actions{padding-bottom:15px;gap:12px}.clear-actions>.primary{min-height:58px;font-size:16px}.clear-actions>.child-secondary{min-height:52px;font-size:15px}.journey-heading{padding-top:15px}}@media(max-height:600px){.home-heading{padding-top:calc(12px + var(--home-safe-top));padding-left:20px}.home-heading h1{font-size:32px}.home-heading h1>span{font-size:11px}.home-settings{top:calc(14px + var(--home-safe-top));right:16px}.home-menu{padding:12px 20px calc(18px + var(--home-safe-bottom))}.home-menu>p{font-size:11px;margin-bottom:12px}.home-menu-buttons{gap:14px}.home-menu-buttons>button{border-radius:6px;padding-inline:14px;gap:6px}.home-problems{min-height:70px;font-size:24px}.home-book{min-height:56px;font-size:19px}.home-problems .home-cta-icon{width:34px;height:34px}.problems-screen{padding-bottom:16px}.problems-screen .child-page-heading{padding:12px var(--pad) 12px}.problems-screen .child-page-heading h1{font-size:25px}.problems-screen .child-page-heading p{font-size:11px;margin-top:6px}.problems-screen .adventure-choice{min-height:143px}.problems-screen .adventure-choice-label{padding:14px 16px;gap:6px}.adventure-choice-label strong{font-size:21px}.adventure-choice-label .adventure-caption{font-size:10px}.adventure-choice-label .adventure-start{min-height:34px;font-size:13px;padding:5px 12px;margin-top:4px}.problems-map-link{min-height:48px;margin-top:12px;font-size:13px;gap:6px}.problems-map-link strong{font-size:9px}.problems-screen .practice-section{padding-top:12px}.problems-screen .practice-options>button{min-height:87px;padding:8px;font-size:15px;gap:6px}.practice-options .icon-box{width:25px;height:25px}.quest-console{padding-top:11px}.console-heading h1{font-size:18px}.answer-correct .console-heading h1{font-size:21px}.clear-heading h1{font-size:22px;margin-top:6px}.clear-heading>span{font-size:10px}.clear-heading p{font-size:10px}.clear-laurel{left:18px;top:18px;width:27px;height:27px}.clear-laurel>svg{width:16px;height:16px}.clear-dragon-name{padding-top:12px;padding-bottom:9px}.clear-dragon-name h2{font-size:21px}.clear-dragon-name p{font-size:11px;margin-top:5px}.clear-actions{padding-bottom:12px;gap:12px}.clear-actions>.primary{min-height:56px;font-size:15px;padding-inline:15px}.clear-actions>.child-secondary{min-height:50px}.clear-next-note{font-size:9px}.journey-heading{padding-top:12px;padding-bottom:12px}.journey-heading h1{font-size:24px}.journey-heading p{margin:7px 0 10px;font-size:10px}.journey-count{font-size:10px;margin-top:8px}.map-chapter h2{font-size:14px}.map-stage-art{width:62px;height:62px}.map-stage>strong{top:17px;font-size:23px}.map-footer{padding-top:12px;padding-bottom:17px}.collection-grid .collection-art{height:182px;padding:7px}.collection-grid .collection-name h2{font-size:15px}.collection-summary{padding-bottom:12px}.collection-summary>strong{font-size:17px}}:is(.problems-screen,.roadmap-screen,.collection-screen,.practice-screen,.practice-done,.quest-console,.settings-modal) button:focus-visible{outline:3px solid #234c50;outline-offset:4px}
