/* Extensions keep the academy's jade, ink and gold identity. */
:root{--evolution-bg:#102f34}
body{font-size:16px}p{line-height:1.7}button,input,select,textarea{font:inherit}button{min-height:44px}small,.tag,.textbutton,.secondary,.button,.pet-card button,.combat-skills button,.skill-passive{font-size:max(.875rem,14px)}
.sidebar{overflow-y:auto}.sidebar nav a{padding-top:9px;padding-bottom:9px}.sidebar-bottom p{font-size:14px}.nav-label{font-size:12px}
.new-journey{background:#133c3d;color:#fff;border:1px solid #39726b;border-radius:18px;padding:25px;margin-bottom:26px;display:flex;justify-content:space-between;gap:24px;align-items:center}.new-journey h2{margin:9px 0;font-size:25px}.new-journey p{color:#cbe4dc;margin:8px 0}.new-journey .row{max-width:370px}.new-journey .secondary{background:#e5efe6;color:#173c39}.lesson-switch{margin-bottom:24px}
.evolution-art,.pet-card .evolution-art{background-color:var(--evolution-bg);background-size:400% 400%;aspect-ratio:1/1;background-repeat:no-repeat;min-width:0}.evolution-hero{display:grid;grid-template-columns:minmax(180px,290px) 1fr;gap:32px;align-items:center;margin-bottom:24px}.evolution-hero .petportrait{width:100%;border-radius:16px}.evolution-hero h2{margin:16px 0}.evolution-hero small{display:block;margin-top:16px;color:var(--muted)}
.evolution-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.evolution-catalog article{border:1px solid #cad9d0;border-radius:10px;padding:9px}.evolution-catalog article.current{outline:2px solid #b28642}.evolution-catalog .petportrait{width:100%}.evolution-catalog b{display:block;margin-top:8px;font-size:14px}.evolution-catalog p{font-size:14px;margin:5px 0}.evolution-catalog small{font-size:12px}
dialog:has(.evolution-catalog){width:min(1050px,94vw);max-width:1050px}.pet-card h3{font-size:16px}.pet-card .body p{font-size:14px}.pet-card .row{justify-content:center}.pet-card .petportrait{background-color:var(--evolution-bg)}
.gear-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.gear-grid>.panel{padding:14px}.gear-art{aspect-ratio:1;background-size:400% 400%;background-color:var(--evolution-bg);background-repeat:no-repeat}.gear-grid .gear-art{width:100%;margin-bottom:15px}.gear-grid h3{font-size:17px;line-height:1.5}.gear-grid p{font-size:14px}.gear-grid button{width:100%}.gear-current{display:flex;align-items:center;gap:25px;margin:20px 0}.gear-current>.gear-art{width:160px;flex-shrink:0}.gear-current small{display:block;margin-top:10px}.set-status{margin:0 0 24px;border-color:#8eb2a0;background:#f3f8f2}.set-status h2{margin-top:0}.equipment-strip{grid-template-columns:repeat(2,48px)}.equipment-chip .accessory-art{width:40px}.equipment-chip small{font-size:12px;overflow-wrap:anywhere}.character-equipped{max-width:220px}.profile-outfit{flex-wrap:wrap}.battle-company .character-equipped{max-width:190px}.expansion-profile{margin-top:24px}
.foundation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.foundation-grid h3{margin:15px 0;font-size:21px}.foundation-grid .panel{display:flex;flex-direction:column;align-items:flex-start}.foundation-grid p{flex:1}.foundation-slide{max-width:1100px;margin:0 auto;min-height:560px}.foundation-slide h2{font-size:30px;margin:35px 0 22px}.lesson-prose{font-size:20px;line-height:1.95;white-space:pre-line}.example-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}.example-pair>div{background:#eff5f0;border-left:4px solid #458875;padding:20px;border-radius:8px}.example-pair .jp{font-size:25px;line-height:1.8}.slide-controls{border-top:1px solid var(--line);padding-top:20px;margin-top:35px}.foundation-answers{display:grid;gap:12px}.foundation-answers button{text-align:left;padding:18px;font-size:20px}.foundation-slide .table-scroll{max-height:400px}.realm-table small{display:block}.memory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.memory-grid img{width:100%;height:auto;display:block;border-radius:8px}.memory-grid h2{font-size:22px;margin-top:22px}.memory-grid p{font-size:16px}.memory-grid .panel{padding:16px}
.arcade-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.game-card{display:flex;flex-direction:column;align-items:flex-start;border-top:4px solid #4d8c7c}.game-card h2{font-size:23px;margin:17px 0 9px}.game-card p{flex:1;margin-bottom:22px}.arcade-intro{margin-top:24px}.arcade-intro .vocab-grid{max-height:280px;overflow:auto}.arcade-play{max-width:1000px;margin:auto}.arcade-play .question{font-size:48px;text-align:center;margin:22px 0;line-height:1.6}.arcade-play .petportrait{width:130px}.arcade-play .jp{line-height:1.9}.arcade-play input{flex:1;min-width:0;font-size:24px;width:100%}.arcade-play textarea{display:block;width:100%;padding:14px;border:1px solid #94aa9c;border-radius:10px;font-size:20px;margin:8px 0 16px;resize:vertical}.arcade-play label{display:block;margin-top:20px}.arcade-feedback{margin-top:24px;padding:0 15px}.arcade-feedback:has(h3){background:#eaf3e9;border-left:4px solid #327961;padding:20px;border-radius:8px}.arcade-feedback .jp{font-size:24px}.arcade-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0}.arcade-choices button{padding:18px 10px;overflow-wrap:anywhere}.arcade-result{text-align:center}.arcade-result .petportrait{width:220px;margin:auto}.arcade-result .row{justify-content:center}#arcadeNext{margin-top:24px}
.dance-stage{height:260px;position:relative;display:flex;justify-content:center;align-items:flex-end;overflow:hidden;background:radial-gradient(ellipse at center,#356b65 0%,#143b40 65%);border-radius:14px;margin-top:20px;border-bottom:10px solid #b79863}.dance-stage .dancer{width:170px;height:auto;aspect-ratio:3/4;background-size:400% 200%;background-repeat:no-repeat;flex-shrink:0;border-radius:8px 8px 0 0}.dancer-left,.dancer-right{width:130px!important;opacity:.85}.dance-call{position:absolute;top:10px;color:#ffe4a7;font-size:21px;text-shadow:0 2px 4px #15262c}.dance-stage[data-mood=correct]{border-color:#52cfa1;box-shadow:0 0 0 3px #76dab340}.dance-stage[data-mood=wrong]{border-color:#cb877c}.preview-stage{max-width:600px;margin:0 auto 28px}.preview-stage .petportrait{width:130px;margin-left:20px}.countdown{margin:18px 0;background:#c8dbd2}.countdown i{display:block;height:8px;background:#b2965e}
.train-track{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:110px;padding:18px;margin:20px 0;border:2px dashed #79a493;background:#f1f7f2;border-radius:12px}.tile-pool{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:25px}.sentence-tile{font-size:22px;background:#fff;border:1px solid #769889;border-radius:10px;padding:17px 14px;color:#183d36;cursor:pointer}.sentence-tile.picked{background:#24584d;color:white}.sentence-tile:disabled{opacity:.28}.sentence-analysis{display:flex;gap:10px;flex-wrap:wrap}.sentence-analysis span{padding:12px;border-bottom:4px solid #b69a5f;background:white;border-radius:7px}.sentence-analysis small{display:block}.sentence-analysis span:nth-child(2){border-color:#548ca0}.sentence-analysis span:nth-child(3){border-color:#ac6c8c}.sentence-analysis span:last-child{border-color:#509571}.bridge-progress{display:flex;align-items:center;gap:20px}.bridge-progress>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.bridge-step{border:1px solid #7caaa0;padding:12px 16px;border-radius:5px;background:#eff4e9}.bridge-step.passed{background:#256c59;color:white}.forge-companion{display:flex;align-items:center;gap:25px;margin:20px 0}.clue-list{padding-left:25px}.clue-list li{margin:15px 0;font-size:21px}.clue-list button{margin-left:12px}.difference-image{width:100%;height:auto;margin:22px 0;border-radius:12px}.saved-clip{border-top:1px solid var(--line);padding:10px 0}.saved-clip audio{width:100%}.story-choices{margin:18px 0}.story-choices button{margin-right:10px}.skill-passive{line-height:1.6}.game-card .button{align-self:flex-start}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #cc9e46;outline-offset:3px}
@media(max-width:1150px){.arcade-grid,.gear-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.foundation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.memory-grid{grid-template-columns:1fr}.memory-grid .panel{display:grid;grid-template-columns:240px 1fr;gap:0 24px}.memory-grid .panel>a:first-child{grid-row:1/5}.memory-grid .secondary{justify-self:start}.new-journey{display:block}.new-journey .row{max-width:none}.evolution-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.new-journey{padding:20px}.new-journey h2{font-size:23px}.evolution-hero{grid-template-columns:1fr;gap:18px}.evolution-hero>.div,.evolution-hero>div:first-child{max-width:240px;margin:auto}.evolution-hero h2{font-size:25px}.foundation-grid,.arcade-grid{grid-template-columns:1fr}.foundation-slide{padding:20px}.foundation-slide h2{font-size:25px;margin-top:24px}.lesson-prose{font-size:18px}.example-pair{grid-template-columns:1fr}.example-pair .jp{font-size:22px}.memory-grid .panel{display:block}.memory-grid .panel img{max-width:100%}.gear-grid{gap:12px}.gear-grid>.panel{padding:10px}.gear-current{display:block}.gear-current>.gear-art{width:150px;margin-bottom:20px}.gear-grid h3{font-size:16px}.evolution-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.evolution-catalog article{padding:5px}.evolution-catalog p,.evolution-catalog small{overflow-wrap:anywhere}.arcade-play{padding:17px}.arcade-play .question{font-size:38px}.arcade-choices{grid-template-columns:1fr}.arcade-play .row{flex-wrap:wrap}.arcade-play input{flex-basis:100%}.dance-stage{height:220px}.dance-stage .dancer{width:125px}.dancer-left,.dancer-right{width:95px!important}.dance-call{font-size:17px}.sentence-tile{font-size:19px;padding:14px 10px}.bridge-progress{gap:10px}.bridge-progress .petportrait{width:85px}.bridge-step{padding:8px 10px}.forge-companion{gap:15px}.forge-companion .petportrait{width:100px}.forge-companion h2{font-size:23px}.arcade-play .jp{overflow-wrap:anywhere}.wallet #exp{display:none}.battle-company .character-equipped{max-width:150px}.equipment-strip{grid-template-columns:repeat(2,38px)}.equipment-chip .accessory-art{width:30px}.equipment-chip small{font-size:12px}.character-equipped .player-portrait{width:58px;max-width:58px}.pet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-card button{white-space:normal}.pet-card .body{padding:13px 8px}.pet-card h3{font-size:16px;min-height:0}.pet-card .row{display:block}.pet-card .row button{width:100%;margin:5px 0}.slide-controls{gap:8px}.slide-controls button{font-size:14px;padding:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.evolution-art svg{display:block;width:100%;height:100%;aspect-ratio:1/1;border-radius:inherit;overflow:hidden}
