@import"https://fonts.googleapis.com/css2?family=Andika:ital,wght@0,400;0,700;1,400&family=Lora:ital,wght@0,500;0,600;0,700;1,500&display=swap";:root{font-family:var(--font-body);color:var(--ink);background:var(--page);font-synthesis:none;--font-display:"Lora",Georgia,"Times New Roman",serif;--font-body:"Andika","Trebuchet MS",system-ui,sans-serif;--ink:#2e2118;--line:#5a4331;--paper:#fbf4e4;--page:#efe2c4;--sun:#e3a55b;--coral:#a8412c;--leaf:#9db57a;--sky:#9dbdd0;--grape:#5b2a2f;--gold:#d9ab45;--white:var(--paper);--radius:10px;--shadow-sm:0 1px 2px rgba(46,33,24,.18),0 2px 6px rgba(46,33,24,.12);--shadow-md:0 2px 4px rgba(46,33,24,.16),0 8px 20px rgba(46,33,24,.14);--shadow-lg:0 4px 8px rgba(46,33,24,.16),0 16px 36px rgba(46,33,24,.18);--shadow:var(--shadow-md)}*{box-sizing:border-box}html,body{min-width:320px;min-height:100%;background:var(--page)}body{margin:0}button,input{font:inherit}button{color:inherit}button:focus-visible{outline:4px solid var(--gold);outline-offset:4px}button:active:not(:disabled){transform:translateY(1px);box-shadow:var(--shadow-sm)!important}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand,button,.chapter-number,.quiz-label,.story-state,.locked-label{font-family:var(--font-display)}p{line-height:1.6}.app-shell{min-height:100vh;background:var(--page);position:relative;overflow:hidden}.topbar{min-height:76px;padding:14px clamp(18px,4vw,56px);background:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative;z-index:10;border-bottom:3px double var(--gold)}.brand,.nav-button,.back-link{border:0;background:transparent;color:var(--paper);cursor:pointer;display:inline-flex;align-items:center;gap:10px}.brand{font-size:clamp(.78rem,2vw,1rem);text-transform:uppercase}.brand svg{color:var(--gold);fill:var(--gold)}.nav-button{font-size:1.06rem;padding:11px 12px;border:1.5px solid var(--paper);box-shadow:var(--shadow-sm)}.nav-button svg,.back-link svg{width:18px}main{position:relative;z-index:1}.screen{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:clamp(36px,7vw,84px) 0 76px}.intro-copy{width:min(760px,100%);text-align:center;margin:0 auto 44px}.intro-copy h1{font-size:clamp(1.45rem,4vw,2.7rem);line-height:1.5;color:var(--ink);text-wrap:balance}.intro-copy p{font-size:clamp(1.08rem,2vw,1.35rem);font-weight:700;max-width:620px;margin-inline:auto}.character-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px;align-items:stretch}.character-card{min-width:0;padding:0;border:2px solid var(--line);background:var(--paper);box-shadow:var(--shadow);cursor:pointer;text-align:left;overflow:hidden;transition:transform .12s ease-out}.character-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.character-card>img{width:100%;aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center;border-bottom:2px solid var(--line);background:var(--grape)}.character-copy{padding:24px}.character-copy h2{font-size:1.2rem;margin-bottom:12px}.character-copy>p{font-weight:700;color:var(--grape)}.card-action,.locked-label{margin-top:22px;display:flex;align-items:center;justify-content:space-between;font-size:1.09rem;text-transform:uppercase}.card-action svg{width:18px}.character-card.locked{background:var(--paper);cursor:help}.character-card.locked>img{filter:grayscale(1) contrast(.75);opacity:.55}.character-card.locked .character-copy>svg{width:28px;color:var(--grape);margin-bottom:15px}.locked-label{color:var(--grape)}.mini-skills{display:grid;gap:10px;margin-top:20px}.skill-row{display:grid;gap:10px}.skill-label{font-family:var(--font-display);font-size:.9rem;line-height:1.5;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;font-weight:800}.skill-label svg{width:23px;height:23px;stroke-width:3}.segment-bar{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.segment-bar span{height:18px;background:var(--paper);border:1.5px solid var(--line)}.skill-a .segment-bar .filled{background:var(--sun)}.skill-b .segment-bar .filled{background:var(--sky)}.skill-c .segment-bar .filled{background:var(--leaf)}.skill-row.compact{grid-template-columns:90px 1fr;align-items:center;gap:8px}.skill-row.compact .skill-label{grid-template-columns:auto 1fr;font-size:1.1rem}.skill-row.compact .skill-label svg{width:17px}.skill-row.compact .skill-label b{display:none}.skill-row.compact .segment-bar{gap:2px}.skill-row.compact .segment-bar span{height:11px;border-width:2px}.back-link{color:var(--ink);font-size:1.09rem;margin-bottom:28px;padding:10px 0}.profile-hero{display:grid;grid-template-columns:230px 1fr;align-items:center;gap:38px;background:var(--grape);color:var(--paper);border:2px solid var(--line);box-shadow:var(--shadow);padding:30px}.profile-hero img{width:230px;aspect-ratio:1;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top;border:2px solid var(--line);background:var(--sky)}.profile-hero h1{font-size:clamp(2rem,6vw,4.4rem);color:var(--gold);margin-bottom:14px}.profile-hero p{font-family:var(--font-display);font-size:.85rem}.level-line{display:inline-flex;align-items:center;gap:10px;color:var(--ink);background:var(--gold);border:1.5px solid var(--line);padding:12px 16px;font-family:var(--font-display);font-size:1.1rem}.level-line svg{fill:currentColor;width:20px}.profile-section{background:var(--paper);border:2px solid var(--line);box-shadow:var(--shadow);padding:clamp(24px,5vw,42px);margin-top:34px}.section-heading{display:grid;grid-template-columns:1fr minmax(260px,.8fr);gap:28px;align-items:start;margin-bottom:28px}.section-heading h2{font-size:clamp(1rem,2.5vw,1.5rem);line-height:1.5}.section-heading p{margin-bottom:0;font-weight:600}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.skill-panel{padding:20px;border:1.5px solid var(--line)}.skill-panel.skill-a{background:var(--sun)}.skill-panel.skill-b{background:var(--sky)}.skill-panel.skill-c{background:var(--leaf)}.skill-panel p{margin:15px 0 0;font-weight:700;line-height:1.35}.badge-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.badge{min-height:130px;border:1.5px dashed var(--grape);display:grid;place-items:center;align-content:center;gap:10px;color:var(--grape);text-align:center;font-family:var(--font-display);font-size:.93rem;line-height:1.5}.badge svg{width:36px;height:36px}.badge.earned{border-style:solid;border-color:var(--ink);color:var(--ink);background:var(--gold);box-shadow:var(--shadow-sm)}.story-list{display:grid;gap:20px}.story-item{display:grid;grid-template-columns:150px 1fr auto;gap:22px;align-items:center;padding:18px;border:1.5px solid var(--line);background:var(--white)}.story-item>img,.locked-cover{width:150px;aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover;border:1.5px solid var(--line)}.locked-cover{display:grid;place-items:center;background:var(--paper);color:var(--grape)}.locked-cover svg{width:38px;height:38px}.story-item h3{font-size:.87rem;line-height:1.5;margin-bottom:8px}.story-item p{margin-bottom:0}.story-state{color:var(--grape);font-size:.88rem;display:flex;align-items:center;gap:8px;margin-bottom:10px}.story-state svg{width:16px}.story-locked{background:var(--paper);color:var(--ink)}.story-item.unlocked{background:var(--gold)}.primary-button,.secondary-button{min-height:52px;border:1.5px solid var(--line);padding:14px 18px;box-shadow:var(--shadow-sm);cursor:pointer;font-size:.99rem;line-height:1.5;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-align:center}.primary-button{background:var(--gold)}.primary-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.primary-button svg,.secondary-button svg{width:18px;flex:none}.reader-screen,.decision-screen{width:min(1240px,calc(100% - 32px))}.reader-screen.night,.decision-screen.night,.reader-screen.night .back-link,.decision-screen.night .back-link{color:var(--paper)}.reader-screen.night:before,.decision-screen.night:before{content:"";position:fixed;top:76px;right:0;bottom:0;left:0;z-index:-1;background:var(--grape)}.chapter-progress{display:flex;justify-content:center;gap:12px;margin:0 auto 28px}.chapter-progress span{width:38px;height:38px;display:grid;place-items:center;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);font-family:var(--font-display);font-size:1.04rem}.chapter-progress span.done{background:var(--leaf)}.chapter-progress span.current{background:var(--gold);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.reader-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);border:2px solid var(--line);box-shadow:var(--shadow);background:var(--paper);color:var(--ink)}.scene-frame{position:relative;min-height:520px;box-shadow:1px 0 0 var(--line);background:var(--grape)}.scene-frame img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.scene-frame span{position:absolute;left:18px;top:18px;background:var(--ink);color:var(--paper);border:1.5px solid var(--paper);padding:9px 11px;font-family:var(--font-display);font-size:.93rem}.chapter-copy{padding:clamp(28px,5vw,54px);align-self:center}.chapter-number,.quiz-label{color:var(--grape);font-size:.99rem;margin-bottom:20px}.chapter-copy h1{font-size:clamp(1.2rem,3vw,2rem);line-height:1.5}.story-text{font-size:clamp(1.15rem,2vw,1.4rem);font-weight:500;max-width:65ch}.chapter-copy .primary-button{margin-top:16px;width:100%}.chapter-choices{margin-top:36px;padding:clamp(24px,4vw,42px);background:var(--paper);border:2px solid var(--line);box-shadow:var(--shadow);color:var(--ink)}.decision-heading{text-align:center;width:min(820px,100%);margin:0 auto 34px}.decision-heading h1,.decision-heading h2{font-size:clamp(1.2rem,3vw,2rem);line-height:1.5}.decision-heading p{font-size:1.15rem;font-weight:700}.decision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.decision-card{position:relative;padding:0 0 22px;border:2px solid var(--line);background:var(--paper);box-shadow:var(--shadow);cursor:pointer;text-align:left;overflow:hidden;display:flex;flex-direction:column}.decision-card>img{width:100%;aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover;border-bottom:2px solid var(--line)}.decision-skill{align-self:flex-start;display:flex;align-items:center;gap:8px;padding:9px 11px;margin:18px 18px 12px;border:1.5px solid var(--line);font-family:var(--font-display);font-size:.91rem}.skill-a .decision-skill{background:var(--sun)}.skill-b .decision-skill{background:var(--sky)}.skill-c .decision-skill{background:var(--leaf)}.decision-card strong{font-family:var(--font-body);font-size:1.13rem;line-height:1.4;padding:0 18px}.select-state{font-family:var(--font-display);font-size:.88rem;margin:auto 18px 0;padding-top:20px;display:flex;align-items:center;gap:7px}.select-state svg{width:17px}.decision-card.selected{transform:translateY(-4px);box-shadow:0 0 0 3px var(--gold),var(--shadow-lg)}.decision-card.selected:after{content:"";height:8px;background:var(--gold);position:absolute;inset:auto 0 0}.decision-footer{width:min(680px,100%);margin:36px auto 0;text-align:center}.decision-footer .primary-button{width:100%}.decision-footer p{margin:20px 0 0;font-weight:700}.story-finish{margin-top:36px;padding:28px;background:var(--paper);border:2px solid var(--line);box-shadow:var(--shadow);color:var(--ink);text-align:center}.story-finish p{font-size:1.15rem;font-weight:700}.story-finish .primary-button{width:min(680px,100%);margin-top:12px}.quiz-screen{min-height:calc(100vh - 76px);display:grid;place-items:center}.quiz-card{width:min(760px,100%);background:var(--paper);border:2px solid var(--line);box-shadow:var(--shadow-lg);padding:clamp(26px,6vw,56px)}.quiz-card h1{font-size:clamp(1.05rem,3vw,1.6rem);line-height:1.6;text-align:center}.quiz-progress span{width:46px}.quiz-label{text-align:center}.quiz-options{display:grid;gap:14px;margin-top:30px}.quiz-options button{padding:18px;border:1.5px solid var(--line);background:var(--white);box-shadow:var(--shadow-sm);cursor:pointer;font-size:1.09rem;line-height:1.5;text-align:left}.quiz-options button:hover:not(:disabled){background:var(--gold)}.quiz-options button:disabled{opacity:.6;cursor:not-allowed}.feedback{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;border:1.5px solid var(--line);padding:18px;margin-top:24px}.feedback svg{width:42px;height:42px}.feedback strong{font-family:var(--font-display);font-size:1.04rem;line-height:1.5}.feedback p{margin:5px 0 0}.feedback.wrong{background:var(--coral);color:var(--paper)}.feedback.correct{background:var(--leaf)}.quiz-card>.primary-button{width:100%;margin-top:22px}.reward-screen{text-align:center;width:min(820px,calc(100% - 32px))}.reward-burst{width:118px;height:118px;margin:0 auto 28px;display:grid;place-items:center;background:var(--gold);border:2px solid var(--line);box-shadow:var(--shadow-lg);animation:reward-pop .45s cubic-bezier(.16,1,.3,1)}.reward-burst svg{width:60px;height:60px}.reward-screen>h1{font-size:clamp(1.4rem,4vw,2.4rem);line-height:1.5}.reward-screen>p{font-size:1.25rem;font-weight:700}.reward-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin:36px 0}.reward-board>div{background:var(--paper);border:1.5px solid var(--line);box-shadow:var(--shadow-sm);padding:24px 16px;display:grid;place-items:center;gap:10px}.reward-board svg{width:36px;height:36px;color:var(--grape)}.reward-board span{font-family:var(--font-display);font-size:.83rem;line-height:1.5;font-weight:700}.reward-board strong{font-family:var(--font-display);font-size:.99rem;line-height:1.5}.reward-skills{background:var(--paper);border:2px solid var(--line);padding:28px;text-align:left;display:grid;gap:20px}.reward-skills h2{font-size:.85rem;text-align:center;line-height:1.5}.reward-actions{display:flex;gap:18px;justify-content:center;margin-top:30px;flex-wrap:wrap}.toast{position:fixed;z-index:20;bottom:24px;left:50%;transform:translate(-50%);width:min(520px,calc(100% - 32px));background:var(--ink);color:var(--paper);border:3px solid var(--gold);box-shadow:var(--shadow-sm);padding:16px 20px;text-align:center;font-weight:700}@keyframes reward-pop{0%{transform:scale(.5) rotate(-8deg)}to{transform:scale(1) rotate(0)}}@media (max-width:900px){.character-grid{grid-template-columns:1fr 1fr}.character-card.available{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.character-card.available>img{height:100%;aspect-ratio:auto;border-bottom:0;box-shadow:1px 0 0 var(--line)}.skills-grid,.decision-grid{grid-template-columns:1fr}.decision-card{display:grid;grid-template-columns:180px 1fr;grid-template-rows:auto 1fr auto;padding:0}.decision-card>img{grid-row:1/4;width:180px;height:100%;aspect-ratio:auto;border-bottom:0;box-shadow:1px 0 0 var(--line)}.decision-skill{margin:16px 16px 10px}.decision-card strong{padding:0 16px}.select-state{margin:0 16px 16px}.reader-card{grid-template-columns:1fr}.scene-frame{min-height:360px;box-shadow:none;border-bottom:2px solid var(--line)}.section-heading{grid-template-columns:1fr;gap:4px}.story-item{grid-template-columns:120px 1fr}.story-item>img,.locked-cover{width:120px}.story-item>button{grid-column:1/-1;width:100%}}@media (max-width:620px){.topbar{min-height:66px;padding:11px 16px}.brand{font-size:.99rem}.brand svg{width:19px}.nav-button{font-size:0;padding:9px}.nav-button svg{width:21px;height:21px}.screen{width:min(100% - 30px,1180px);padding-top:34px}.character-grid{grid-template-columns:1fr}.character-card.available{grid-column:auto;display:block}.character-card.available>img{aspect-ratio:4/3;height:auto;box-shadow:none;border-bottom:2px solid var(--line)}.profile-hero{grid-template-columns:105px 1fr;gap:18px;padding:18px}.profile-hero img{width:105px}.profile-hero h1{font-size:1.35rem}.profile-hero p{font-size:.88rem;line-height:1.5}.level-line{font-size:.8rem;padding:9px}.profile-section{padding:21px 16px}.badge-row{grid-template-columns:repeat(3,1fr);gap:8px}.badge{min-height:105px;font-size:.8rem;padding:8px 3px}.story-item{grid-template-columns:82px 1fr;gap:13px;padding:12px}.story-item>img,.locked-cover{width:82px}.story-item h3{font-size:.99rem}.story-item p{font-size:.9rem}.chapter-progress{gap:7px}.chapter-progress span{width:32px;height:32px;font-size:.85rem}.scene-frame{min-height:250px}.chapter-copy{padding:24px 19px}.decision-card{grid-template-columns:108px 1fr}.decision-card>img{width:108px}.decision-skill{font-size:.8rem;margin:12px 12px 8px;padding:7px}.decision-card strong{font-size:.96rem;padding:0 12px}.select-state{font-size:.8rem;margin:0 12px 12px;padding-top:10px}.reward-actions{display:grid}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.pixel-character{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(16,1fr);width:144px;aspect-ratio:3/4;filter:drop-shadow(0 3px 4px rgba(46,33,24,.3))}.pixel-character>span{width:100%;height:100%}.sprite-stage{min-height:340px;display:grid;place-items:end center;background:var(--grape);overflow:hidden}.sprite-stage .pixel-character{width:min(230px,72%)}.character-card.locked .sprite-stage{filter:grayscale(1);opacity:.58;background:var(--paper)}.profile-sprite{width:230px;min-height:250px;display:grid;place-items:end center;border:2px solid var(--line);background:var(--sky);overflow:hidden}.profile-sprite .pixel-character{width:180px}.scene-frame{overflow:hidden;isolation:isolate}.scene-frame>img{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.scene-frame>span{z-index:3}.portrait-active main{padding-bottom:132px}.portrait-bar{position:fixed;z-index:18;inset:auto 0 0;background:var(--ink);color:var(--paper);border-top:3px double var(--gold);box-shadow:0 -6px 18px #2e211840;min-height:112px}.portrait-inner{width:min(1180px,calc(100% - 32px));height:108px;margin:0 auto;display:grid;grid-template-columns:104px minmax(150px,1fr) minmax(260px,1.4fr) 32px;align-items:center;gap:20px}.portrait-window{height:104px;border-inline:2px solid var(--paper);background:var(--sky);overflow:hidden;display:grid;place-items:start center}.portrait-pop{width:100%;height:100%;display:grid;place-items:start center;animation:portrait-choice .35s cubic-bezier(.16,1,.3,1)}.portrait-sprite{width:98px;transform:scale(1.28);transform-origin:50% 16%;filter:drop-shadow(0 3px 4px rgba(46,33,24,.3))}.portrait-avatar{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:bottom center;object-position:bottom center;background:var(--paper);transform:none;filter:none}.portrait-emotion{width:100%;height:100%;background-size:200% 200%;background-repeat:no-repeat}.portrait-emotion.emotion-neutral{background-position:0 0}.portrait-emotion.emotion-courage{background-position:100% 0}.portrait-emotion.emotion-wit{background-position:0 100%}.portrait-emotion.emotion-friend{background-position:100% 100%}.portrait-pop.expression-courage .portrait-avatar{animation:portrait-courage .43s cubic-bezier(.16,1,.3,1)}.portrait-pop.expression-wit .portrait-avatar{animation:portrait-wit .43s cubic-bezier(.16,1,.3,1)}.portrait-pop.expression-friend .portrait-avatar{animation:portrait-friend .43s cubic-bezier(.16,1,.3,1)}.portrait-status{display:grid;gap:8px}.portrait-skills{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.portrait-skill{border:1.5px solid var(--paper);padding:8px;display:flex;justify-content:space-between;align-items:center;gap:6px}.portrait-skill span{font-size:.8rem!important;color:var(--paper)!important}.portrait-skill b{font-family:var(--font-display);font-size:1.04rem}.portrait-skill.skill-a{background:var(--sun);color:var(--ink)}.portrait-skill.skill-b{background:var(--sky);color:var(--ink)}.portrait-skill.skill-c{background:var(--leaf);color:var(--ink)}.portrait-skill.skill-a span,.portrait-skill.skill-b span,.portrait-skill.skill-c span{color:var(--ink)!important}.portrait-inner span{font-family:var(--font-display);font-size:.9rem;color:var(--sky)}.portrait-inner strong{font-family:var(--font-display);font-size:clamp(.7rem,2vw,1rem);line-height:1.45}.portrait-signal{width:26px;height:26px;border:1.5px solid var(--paper);background:var(--paper)}.portrait-signal.expression-courage{background:var(--sun)}.portrait-signal.expression-wit{background:var(--sky)}.portrait-signal.expression-friend{background:var(--leaf)}@keyframes portrait-choice{0%{transform:translateY(12px) scale(.92)}55%{transform:translateY(-9px) scale(1.08)}to{transform:translateY(0) scale(1)}}@keyframes portrait-courage{0%{transform:translate(-12px) scale(.9)}50%{transform:translate(9px) scale(1.14)}to{transform:translate(0) scale(1)}}@keyframes portrait-wit{0%{transform:translateY(8px) rotate(-5deg)}50%{transform:translateY(-10px) rotate(5deg)}to{transform:translateY(0) rotate(0)}}@keyframes portrait-friend{0%{transform:scale(.9)}40%{transform:scale(1.15)}70%{transform:scale(.97)}to{transform:scale(1)}}@media (max-width:900px){.character-card.available{display:block;grid-column:auto}.character-grid{grid-template-columns:repeat(3,1fr)}.sprite-stage{min-height:260px}.sprite-stage .pixel-character{width:min(180px,78%)}.profile-sprite{width:190px;min-height:220px}.profile-sprite .pixel-character{width:155px}.scene-character{width:min(150px,30%)}}@media (max-width:720px){.character-grid{grid-template-columns:1fr}.character-card{display:grid!important;grid-template-columns:132px 1fr}.sprite-stage{min-height:220px;border-bottom:0;box-shadow:1px 0 0 var(--line)}.sprite-stage .pixel-character{width:112px}.profile-hero{grid-template-columns:120px 1fr}.profile-sprite{width:120px;min-height:170px}.profile-sprite .pixel-character{width:108px}.portrait-inner{grid-template-columns:84px 1fr 24px;gap:13px;width:calc(100% - 24px)}.portrait-skills{display:none}.portrait-window{height:104px}.portrait-sprite{width:84px}.portrait-signal{width:22px;height:22px}.portrait-active main{padding-bottom:126px}}@media (max-width:460px){.character-card{grid-template-columns:105px 1fr}.sprite-stage{min-height:200px}.sprite-stage .pixel-character{width:92px}.character-copy{padding:17px}.character-copy h2{font-size:.85rem}.skill-row.compact{grid-template-columns:78px 1fr}.skill-row.compact .skill-label{font-size:.8rem}.scene-character{width:110px;left:4%}.portrait-inner strong{font-size:.93rem}.profile-hero{grid-template-columns:98px 1fr}.profile-sprite{width:98px;min-height:150px}.profile-sprite .pixel-character{width:91px}}.character-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.character-card.locked .sprite-stage{filter:none;opacity:1;background:var(--grape)}.character-card.template-dragon .sprite-stage{background:var(--leaf)}.character-card.template-robot .sprite-stage{background:var(--sky)}.character-card.template-spirit .sprite-stage{background:var(--gold)}.skill-row.compact{grid-template-columns:122px minmax(0,1fr)}.skill-row.compact .skill-label{font-size:.9rem;min-width:0}.skill-row.compact .skill-label span{overflow:hidden;text-overflow:ellipsis}@media (max-width:900px){.character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.character-grid{grid-template-columns:1fr}}@media (max-width:460px){.skill-row.compact{grid-template-columns:116px minmax(0,1fr)}.skill-row.compact .skill-label{font-size:.8rem;gap:6px}.skill-row.compact .skill-label svg{width:15px}}.profile-lore{max-width:62ch;margin:16px 0 18px;color:var(--paper);font-family:var(--font-body);font-size:1.08rem;font-weight:600;line-height:1.35}.profile-lore p{margin:0}.profile-lore p+p{margin-top:4px}.achievements-empty{display:flex;align-items:center;gap:16px;padding:20px;border:1.5px dashed var(--grape);color:var(--grape);font-weight:700}.achievements-empty svg{width:36px;height:36px;flex:none}.achievements-empty p{margin:0}.quiz-skip{width:100%;margin-top:18px}.quiz-skip-note{margin:10px 0 0;text-align:center;font-size:.95rem;font-weight:700;line-height:1.4}.character-card.coming-soon{cursor:help}.character-card.coming-soon .sprite-stage{filter:grayscale(.55)}.coming-soon-label{color:var(--grape)}.profile-next-goal{display:grid;grid-template-columns:minmax(0,.85fr) minmax(320px,1.15fr);align-items:center;gap:clamp(24px,4vw,52px);padding-bottom:28px}.profile-next-goal .section-heading{display:block;margin:0}.profile-next-goal .section-heading h2{margin:0 0 16px}.profile-next-goal .section-heading p{max-width:38ch;margin:0}.next-goal-card{display:flex;align-items:center;gap:16px;width:100%;padding:18px;border:1.5px solid var(--line);background:var(--gold);box-shadow:var(--shadow-sm)}.next-goal-card svg{width:38px;height:38px;fill:var(--sun)}.next-goal-card strong,.next-goal-card span{display:block}.next-goal-card strong{font-family:var(--font-display);font-size:1.06rem;line-height:1.55}.next-goal-card span{margin-top:6px;font-weight:700}.achievements-details summary{display:flex;align-items:center;gap:14px;cursor:pointer;border:1.5px solid var(--line);background:var(--gold);box-shadow:var(--shadow-sm);padding:16px 18px;font-weight:800;list-style:none}.achievements-details summary::-webkit-details-marker{display:none}.achievements-details summary svg{width:28px;height:28px;flex:none}.achievements-details-hint{margin-left:auto;font-size:.85rem;text-decoration:underline}.achievements-details[open] .badge-row{margin-top:20px}.portrait-pop{animation-timing-function:cubic-bezier(.16,1,.3,1)}@media (max-width:720px){.profile-hero p.profile-lore{font-size:.96rem}.profile-next-goal{grid-template-columns:1fr;gap:22px}.profile-next-goal .section-heading p{max-width:56ch}}@media (prefers-reduced-motion:reduce){.portrait-pop{animation:none}}.gpt-avatar{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;background:var(--paper)}.sprite-stage .gpt-avatar{min-height:340px}.profile-sprite .gpt-avatar{width:100%;height:100%;min-height:250px;border:0;-o-object-fit:contain;object-fit:contain;background:var(--paper)}@media (max-width:900px){.sprite-stage .gpt-avatar{min-height:260px}.profile-sprite .gpt-avatar{min-height:220px}}@media (max-width:720px){.sprite-stage .gpt-avatar{min-height:220px}.profile-sprite .gpt-avatar{min-height:170px}}@media (max-width:460px){.sprite-stage .gpt-avatar{min-height:200px}.profile-sprite .gpt-avatar{min-height:150px}}.topbar-actions{display:flex;align-items:center;gap:14px}.coin-wallet,.profile-coins{display:inline-flex;align-items:center;gap:9px;background:var(--gold);color:var(--ink);border:1.5px solid var(--line);padding:10px 14px;font-family:var(--font-display);font-size:.99rem;box-shadow:var(--shadow-sm)}.coin-wallet svg,.profile-coins svg,.locked-label svg{width:18px;height:18px;fill:var(--sun)}.profile-coins{margin-top:16px}.segment-bar{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.profile-library-action{display:flex;justify-content:center;margin-top:34px}.profile-library-action .primary-button{min-width:min(420px,100%)}.library-heading{display:grid;grid-template-columns:1fr 150px;align-items:center;gap:28px;margin-bottom:34px;background:var(--paper);border:2px solid var(--line);box-shadow:var(--shadow);padding:clamp(24px,4vw,40px)}.library-heading h1{font-size:clamp(1.5rem,4vw,2.7rem);line-height:1.4;margin-bottom:12px}.library-heading p:last-child{font-size:1.15rem;font-weight:700;margin:0}.library-heading img{width:150px;aspect-ratio:1;-o-object-fit:contain;object-fit:contain;border:1.5px solid var(--line);background:var(--gold)}.story-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.story-library-card{display:flex;flex-direction:column;background:var(--paper);border:2px solid var(--line);box-shadow:var(--shadow);min-width:0}.story-library-card>img{width:100%;aspect-ratio:1;-o-object-fit:cover;object-fit:cover;border-bottom:2px solid var(--line)}.story-library-card>div{display:flex;flex-direction:column;flex:1;padding:22px}.story-library-card h2{font-size:.9rem;line-height:1.5;margin:4px 0 12px}.story-library-card p{font-weight:600;line-height:1.45}.story-library-card small{font-family:var(--font-display);font-size:.8rem;line-height:1.5;color:var(--grape);margin-top:auto}.story-library-card .primary-button{width:100%;margin-top:18px}.story-library-card>.locked-cover{width:100%;aspect-ratio:1;border:0;border-bottom:2px solid var(--line);padding:0;background:var(--grape);color:var(--gold)}.story-library-card>.locked-cover svg{width:56px;height:56px}.story-library-card.story-locked{background:var(--white)}.story-library-card.story-locked h2{color:var(--grape)}.story-unlock-button{background:var(--leaf)}.story-library-card>.story-cover{position:relative;width:100%;aspect-ratio:1;overflow:hidden;flex:none;padding:0;border-bottom:2px solid var(--line);background:var(--grape)}.story-library-card>.story-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.character-select{padding-top:clamp(28px,4vw,52px)}.adventure-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:320px;margin-bottom:38px;border:2px solid var(--line);background:var(--paper);box-shadow:var(--shadow-lg);overflow:hidden}.adventure-intro .intro-copy{width:auto;margin:0;padding:clamp(24px,4vw,48px);text-align:left;align-self:center}.adventure-intro .intro-copy h1{font-size:clamp(1.25rem,2.5vw,2rem);line-height:1.55}.adventure-intro .intro-copy p{margin:14px 0 20px;font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.45}.intro-prompt{display:inline-flex;align-items:center;gap:10px;color:var(--grape);font-family:var(--font-display);font-size:.93rem;line-height:1.7}.intro-prompt svg{width:19px;height:19px;color:var(--sun);fill:var(--sun);flex:none}.intro-scene{display:block;width:100%;height:100%;min-height:320px;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;box-shadow:-4px 0 0 var(--ink)}.library-heading{background:var(--grape);color:var(--paper)}.library-heading .chapter-number,.library-heading h1{color:var(--gold)}.library-heading img{background:var(--paper);border-color:var(--gold)}@media (max-width:720px){.adventure-intro{grid-template-columns:1fr;min-height:0}.adventure-intro .intro-copy{padding:24px}.adventure-intro .intro-copy h1{font-size:clamp(1.15rem,5vw,1.65rem)}.intro-scene{grid-row:1;height:200px;min-height:0;max-height:none;box-shadow:none;border-bottom:2px solid var(--line)}.intro-prompt{font-size:.8rem}}@media (max-width:620px){.library-heading{grid-template-columns:minmax(0,1fr) 70px;gap:12px}.library-heading img{width:70px}.library-heading h1{font-size:1.25rem}.library-heading p:last-child{font-size:1rem;line-height:1.35}}.save-account-button{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:8px 12px;border:3px solid var(--gold);background:var(--grape);color:var(--paper);font-family:var(--font-display);font-size:.83rem;line-height:1.4;cursor:pointer}.save-account-button svg{width:17px;height:17px;flex:none}.save-account-button:hover{background:var(--gold);color:var(--ink)}.parent-screen{width:min(740px,calc(100% - 32px))}.parent-card{padding:clamp(24px,5vw,42px);background:var(--paper);border:2px solid var(--line);box-shadow:var(--shadow)}.parent-intro>svg{width:38px;height:38px;color:var(--grape)}.parent-intro h1{font-size:clamp(1.1rem,3vw,1.7rem);line-height:1.5;margin:16px 0}.parent-intro p{font-size:1.14rem;font-weight:700}.parent-mode{display:grid;grid-template-columns:1fr 1fr;margin:28px 0 20px;gap:10px}.parent-mode button{min-height:50px;background:var(--paper);border:1.5px solid var(--line);cursor:pointer;font-size:.9rem;line-height:1.4}.parent-mode button.active{background:var(--gold);box-shadow:var(--shadow-sm)}.parent-form{display:grid;gap:16px}.parent-form label{display:grid;gap:6px;font-family:var(--font-body);font-size:1rem;font-weight:700}.parent-form input,.parent-form select{width:100%;min-height:48px;padding:9px 12px;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:1rem}.parent-form .primary-button{margin-top:6px;width:100%}.parent-error{padding:12px;border:3px solid var(--coral);color:var(--ink);font-weight:700}.parent-connected h2{font-size:.9rem;line-height:1.5}.save-state{padding:15px;border:3px solid var(--sun);background:var(--gold);font-weight:700}.save-state.good{border-color:var(--leaf)}.parent-connected .parent-return-button{width:100%;margin-top:22px}.parent-signout{display:block;margin-top:16px;padding:8px 0;border:0;background:none;color:var(--grape);font-family:var(--font-body);font-weight:700;text-decoration:underline;cursor:pointer}.reward-save-callout{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:18px;margin:28px 0;background:var(--paper);border:2px solid var(--line);box-shadow:var(--shadow);text-align:left}.reward-save-callout>svg{width:32px;height:32px;color:var(--grape)}.reward-save-callout strong{font-family:var(--font-display);font-size:.99rem;line-height:1.5}.reward-save-callout p{margin:6px 0 0;font-weight:700;line-height:1.4}.reward-save-callout .primary-button{max-width:200px}@media (max-width:720px){.save-account-button span{display:none}.save-account-button{padding:8px}.reward-save-callout{grid-template-columns:auto 1fr}.reward-save-callout .primary-button{grid-column:1/-1;max-width:none;width:100%}}@media (max-width:460px){.parent-card{padding:22px 16px}.parent-mode button{font-size:.8rem}.parent-intro p{font-size:1rem}}.parent-conflict-actions{display:flex;gap:12px;flex-wrap:wrap}.parent-conflict-actions .secondary-button{flex:1;min-width:180px}@media (max-width:900px){.story-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.story-library-grid{grid-template-columns:1fr}.library-heading{grid-template-columns:1fr 86px}.library-heading img{width:86px}.topbar{gap:8px}.brand{width:36px;height:42px;padding:6px;justify-content:center;font-size:0}.brand svg{width:21px;height:21px}.topbar-actions{min-width:0;gap:4px}.topbar-actions .nav-button{width:36px;min-width:36px;height:42px;padding:6px;justify-content:center;box-shadow:var(--shadow-sm)}.topbar-actions .nav-button svg{width:19px}.topbar-actions .save-account-button{width:34px;min-width:34px;height:42px;padding:6px;justify-content:center}.topbar-actions .coin-wallet{min-width:77px;padding:8px;gap:6px}}.skill-row.compact .segment-bar{gap:1px}@media (max-width:620px){.coin-wallet{padding:8px 10px}.profile-coins{font-size:.8rem;line-height:1.5}}button:focus-visible,input:focus-visible,select:focus-visible{outline:4px solid var(--gold);outline-offset:4px}.character-card:focus-visible,.decision-card:focus-visible,.story-library-card:focus-within{outline:4px solid var(--gold);outline-offset:6px}.character-card,.decision-card,.story-library-card,.primary-button,.secondary-button,.save-account-button,.nav-button{transition:transform .12s steps(2,end),box-shadow .12s steps(2,end),background-color .12s steps(2,end),color .12s steps(2,end)}.character-card{position:relative}.character-card.locked .locked-label{padding-top:12px;border-top:1.5px solid var(--line);justify-content:flex-start;gap:9px}.card-action{padding-top:12px;border-top:1.5px solid var(--line)}.story-state{width:-moz-max-content;width:max-content;max-width:100%;padding:7px 9px;border:1.5px solid var(--line);background:var(--paper);line-height:1.45}.story-library-card:not(.story-locked) .story-state{background:var(--leaf)}.story-library-card .primary-button{min-height:58px}.story-library-card:has(.primary-button:hover){transform:translateY(-2px);box-shadow:var(--shadow-lg)}.story-library-card.story-locked .story-state{background:var(--gold)}.decision-card{min-height:100%}.decision-card:not(.selected):hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.decision-footer{position:sticky;bottom:16px;z-index:4;margin-top:28px;padding:16px;border:2px solid var(--line);background:var(--paper);box-shadow:var(--shadow-md)}.decision-footer .primary-button{min-height:60px}.decision-footer p{margin:12px 0 0;font-weight:700;line-height:1.4}.chapter-progress span{position:relative}.chapter-progress span.current:after{content:"AHORA";position:absolute;top:-23px;left:50%;transform:translate(-50%);font-family:var(--font-display);font-size:.8rem;color:var(--ink)}.parent-form input:focus-visible,.parent-form select:focus-visible{border-color:var(--grape);outline-color:var(--gold)}@media (max-width:720px){.story-library-card>div{padding:18px}.story-library-card h2{font-size:1.1rem}.decision-footer{position:static;margin-top:24px;padding:14px}.decision-footer .primary-button{width:100%}}@media (max-width:460px){.character-card .card-action,.character-card.locked .locked-label{margin-top:14px;padding-top:9px;font-size:.8rem}.story-state{font-size:.8rem}}.back-link{min-height:48px;margin-bottom:22px;padding:10px 16px;border:1.5px solid var(--line);background:var(--gold);color:var(--ink);box-shadow:var(--shadow-sm);font-size:clamp(.55rem,1.8vw,.68rem);line-height:1.4;text-align:left}.back-link svg{width:20px;height:20px;flex:none;transition:transform .15s ease-out}.back-link:hover{background:var(--sun)}.back-link:hover svg{transform:translate(-3px)}.back-link:active{transform:translate(3px,3px);box-shadow:var(--shadow-sm)}.back-link:focus-visible{outline:3px solid var(--grape);outline-offset:4px}.reader-save-note{margin:-12px 0 22px;font-size:.9rem;font-weight:700;color:var(--grape)}@media (prefers-reduced-motion:reduce){.back-link,.back-link svg{transition:none}}.adventure-intro,.library-heading{background:var(--grape);color:var(--paper);border-color:var(--ink);box-shadow:var(--shadow)}.adventure-intro .intro-copy h1,.library-heading h1{color:var(--gold)}.adventure-intro .intro-copy p,.library-heading p:last-child{color:var(--paper)}.adventure-intro .intro-copy{padding:clamp(28px,4vw,48px)}.intro-action{margin-top:4px}.intro-scene{box-shadow:-4px 0 0 var(--ink)}.characters-nav-button{min-height:44px;background:var(--gold);border-color:var(--ink);color:var(--ink);box-shadow:var(--shadow-sm)}.characters-nav-button:hover{background:var(--sun)}.characters-nav-button svg{width:20px;height:20px;flex:none}.topbar .brand{text-decoration:none}.topbar .brand img{width:30px;height:30px;-o-object-fit:contain;object-fit:contain;flex:none}.topbar .brand:focus-visible{outline:3px solid var(--gold);outline-offset:4px}#character-grid{scroll-margin-top:24px}@media (max-width:620px){.topbar-actions .characters-nav-button{width:auto;min-width:0;padding:7px 8px;font-size:.8rem;line-height:1.2;gap:5px}.topbar-actions .characters-nav-button svg{width:16px;height:16px}}@media (max-width:720px){.intro-scene{box-shadow:none}.adventure-intro .intro-copy{padding:26px 22px}}body{background-color:var(--page);background-image:radial-gradient(ellipse at 50% 0,rgba(255,250,235,.7),transparent 60%),radial-gradient(ellipse at 50% 120%,rgba(120,84,48,.18),transparent 55%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .25 0 0 0 0 .15 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-attachment:fixed}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.2;letter-spacing:-.01em}h1{font-weight:700}p,.story-text{font-family:var(--font-body)}.story-text{font-size:clamp(1.2rem,2.1vw,1.42rem);line-height:1.7;font-weight:400}button,.primary-button,.secondary-button,.nav-button,.back-link,.chapter-number,.quiz-label,.story-state,.locked-label,.card-action,.decision-skill,.select-state,.skill-label,.feedback strong,.reward-board span,.reward-board strong,.badge,.level-line,.portrait-inner span,.portrait-inner strong,.next-goal-card strong,.scene-frame span,.chapter-progress span{font-family:var(--font-display);font-weight:600;letter-spacing:.01em}.chapter-number,.quiz-label,.story-state,.locked-label,.card-action,.select-state,.decision-skill,.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-variant-numeric:oldstyle-nums}.character-card,.profile-hero,.profile-section,.story-item,.reader-card,.chapter-choices,.decision-card,.story-finish,.quiz-card,.reward-board>div,.reward-skills,.skill-panel,.badge,.next-goal-card,.achievements-details summary,.feedback,.toast,.achievements-empty,.story-item>img,.locked-cover,.profile-hero img,.profile-sprite,.primary-button,.secondary-button,.quiz-options button,.nav-button,.level-line,.decision-skill,.reward-burst{border-radius:var(--radius)}.character-card,.reader-card,.decision-card,.profile-hero,.profile-section{overflow:hidden}.reader-card,.chapter-choices,.profile-section,.quiz-card,.story-finish,.reward-skills{background-color:var(--paper);background-image:linear-gradient(#ffffff59,#fff0)}.reader-card,.quiz-card,.profile-section{outline:1px solid rgba(90,67,49,.35);outline-offset:-8px}.chapter-progress span,.portrait-signal{border-radius:50%}.segment-bar span{border-radius:4px;border-width:1.5px!important;border-color:var(--line)!important}.primary-button{background:linear-gradient(#e2b857,#cf9d34);color:var(--ink);border-color:#8a6420}.primary-button:hover:not(:disabled){background:linear-gradient(#e8c26a,#d6a53d)}.secondary-button{background:var(--paper)}.secondary-button:hover{background:#fff9ec}.primary-button,.secondary-button{font-size:1rem;min-height:50px}.topbar{background:linear-gradient(#3a2a1e,#2a1d14);box-shadow:0 2px 10px #2e211859}.brand{font-family:var(--font-display);font-size:clamp(1.05rem,2.4vw,1.35rem);font-weight:700;text-transform:none;letter-spacing:.02em;color:#f3e3bd}.nav-button{border-color:#f3e3bd8c;box-shadow:none;border-radius:999px;color:#f3e3bd}.nav-button:hover{background:#f3e3bd1f}.intro-copy h1:after,.decision-heading h1:after,.decision-heading h2:after,.reward-screen>h1:after{content:"❦";display:block;margin:.35em auto 0;font-size:.55em;color:var(--gold);opacity:.9}.intro-copy h1,.profile-hero h1{text-wrap:balance}.profile-hero{background:radial-gradient(ellipse at 30% 20%,#6d3439,#4a2125);border-color:#3a1a1d}.profile-hero h1{color:#f0cf7a}.profile-hero p{color:#f3e3bd}.scene-frame{background:#3a2a1e}.decision-card>img,.character-card>img{background:var(--page)}.scene-frame span{border-radius:999px;background:#2a1d14d1;border-color:#f3e3bd99}.decision-card.selected{border-color:#8a6420}.decision-card.selected:after{height:5px}.portrait-bar{background:linear-gradient(#3a2a1e,#2a1d14)}.portrait-window{border-radius:var(--radius);border-width:2px;background:var(--paper)}.portrait-inner span{color:#e6cf9b}.feedback.wrong{background:#f3dcd2;color:var(--coral);border-color:var(--coral)}.feedback.correct{background:#e3ecd2;border-color:#5f7a3e}.quiz-options button:hover:not(:disabled){background:#f7e6bd}.reader-screen.night:before,.decision-screen.night:before{background:radial-gradient(ellipse at 50% 0,#33415a,#1f2636)}@media (max-width:620px){.primary-button,.secondary-button{font-size:.95rem}.brand{font-size:1rem}.reader-card,.quiz-card,.profile-section{outline-offset:-5px}}.adventure-intro,.library-heading,.story-library-card,.save-account-button,.profile-coins,.coin-wallet,.reward-save-callout,.parent-mode button,.story-library-card>.story-cover,.story-library-card>.locked-cover{border-radius:var(--radius)}.story-library-card>.story-cover,.story-library-card>.locked-cover,.story-library-card>img{border-radius:var(--radius) var(--radius) 0 0}.story-library-card{overflow:hidden}.adventure-intro,.library-heading{background:radial-gradient(ellipse at 25% 15%,#6d3439,#4a2125);border-color:#3a1a1d}.adventure-intro .intro-copy h1,.library-heading h1{color:#f0cf7a;line-height:1.2}.story-library-card h2{font-size:1.2rem;line-height:1.25}.save-account-button{border-width:1.5px;border-color:#d9ab45cc;background:transparent;color:#f3e3bd}.save-account-button:hover{background:#f3e3bd1f}.app-shell{background:transparent}.character-copy h2{font-size:1.65rem;margin-bottom:6px}.character-copy>p{font-family:var(--font-display);font-style:italic;font-weight:500;font-size:1.05rem}.card-action,.locked-label,.character-card .card-action,.character-card.locked .locked-label{font-size:.85rem}.back-link{background:transparent!important;border:0!important;box-shadow:none!important;color:var(--ink);font-size:.95rem;padding:8px 0;text-decoration:underline;text-decoration-color:#5a433166;text-underline-offset:4px}.back-link:hover{text-decoration-color:var(--ink)}.profile-lore,.profile-lore p{font-family:var(--font-body);font-weight:400;font-size:1.08rem;line-height:1.5}.nav-button{font-size:.95rem}.decision-footer{border-radius:var(--radius)}.portrait-skill{border-radius:8px;border-width:1px!important}.moral-card{margin:0 auto 22px;max-width:560px;padding:22px 26px 24px;border:1.5px solid #8a6420;border-radius:var(--radius);background:linear-gradient(#fdf7e8,#f6e8c6);box-shadow:var(--shadow-sm);position:relative}.moral-card:before{content:"❦";position:absolute;top:-15px;left:50%;transform:translate(-50%);background:var(--paper);padding:0 10px;color:var(--gold);font-size:1.3rem}.moral-card figcaption{font-family:var(--font-display);font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:.85rem;color:var(--coral);margin-bottom:8px}.moral-card blockquote{margin:0;font-family:var(--font-display);font-style:italic;font-weight:500;font-size:clamp(1.25rem,2.6vw,1.6rem);line-height:1.3;color:var(--ink)}.lesson-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.lesson-list li{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;border:1.5px solid #8a6420;border-radius:var(--radius);background:linear-gradient(#fdf7e8,#f6e8c6);font-family:var(--font-display);font-style:italic;font-size:1.08rem;line-height:1.3}.lesson-list svg{width:20px;height:20px;flex:none;color:#8a6420;margin-top:2px}.outcome-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:16px;background:#2a1d148c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:outcome-fade .25s ease-out}.outcome-card{position:relative;width:min(460px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:28px 26px 24px;text-align:center;border-radius:16px;background:var(--paper);border:1.5px solid #8a6420;box-shadow:var(--shadow-lg);outline:1px solid rgba(90,67,49,.3);outline-offset:-9px;animation:outcome-pop .52s cubic-bezier(.16,1,.3,1)}.outcome-portrait{width:150px;height:150px;margin:0 auto 14px;border-radius:50%;border:3px solid var(--gold);background-color:var(--paper);background-size:200% 200%;box-shadow:var(--shadow-md)}.is-win .outcome-portrait{animation:outcome-bounce .9s cubic-bezier(.16,1,.3,1) .2s both}.is-lesson .outcome-portrait{border-color:#b89668;animation:outcome-sway 1.1s ease-in-out .25s both}.outcome-kicker{margin:0 0 4px;font-family:var(--font-display);font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:.9rem;color:var(--coral)}.is-win .outcome-kicker{color:#5f7a3e}.outcome-card h2{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 0 10px;font-size:clamp(1.7rem,5vw,2.2rem)}.outcome-card h2 svg{width:30px;height:30px;color:var(--gold)}.is-win h2{animation:outcome-stamp .6s cubic-bezier(.16,1,.3,1) .35s both}.outcome-note{margin:0 0 20px;font-size:1.05rem;line-height:1.45}.outcome-card .primary-button{width:100%}.outcome-scroll{display:flex;gap:10px;align-items:flex-start;margin:4px 0 14px;padding:16px 18px;text-align:left;border-radius:var(--radius);border:1.5px solid #8a6420;background:linear-gradient(#fdf7e8,#f1dfb5);transform-origin:top;animation:outcome-unroll .7s cubic-bezier(.16,1,.3,1) .3s both}.outcome-scroll svg{width:24px;height:24px;flex:none;color:#8a6420;margin-top:3px}.outcome-scroll blockquote{margin:0;font-family:var(--font-display);font-style:italic;font-weight:500;font-size:1.3rem;line-height:1.3}.outcome-sparkles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;border-radius:inherit}.outcome-sparkles i{position:absolute;top:92px;left:50%;width:10px;height:10px;border-radius:2px;background:var(--gold);transform:rotate(45deg);opacity:0;animation:outcome-spark 1.1s ease-out calc(var(--i) * 40ms + .25s) both;--a:calc(var(--i) * 36deg)}.outcome-sparkles i:nth-child(3n){background:var(--leaf)}.outcome-sparkles i:nth-child(3n+1){background:var(--sun)}@keyframes outcome-fade{0%{opacity:0}to{opacity:1}}@keyframes outcome-pop{0%{opacity:0;transform:translateY(24px) scale(.94)}to{opacity:1;transform:none}}@keyframes outcome-bounce{0%{transform:scale(.6)}55%{transform:scale(1.12)}75%{transform:scale(.96)}to{transform:scale(1)}}@keyframes outcome-sway{0%{transform:rotate(0)}30%{transform:rotate(-7deg)}60%{transform:rotate(5deg)}to{transform:rotate(0)}}@keyframes outcome-stamp{0%{opacity:0;transform:scale(1.6)}to{opacity:1;transform:scale(1)}}@keyframes outcome-unroll{0%{opacity:0;transform:scaleY(.1)}to{opacity:1;transform:scaleY(1)}}@keyframes outcome-spark{0%{opacity:1;transform:rotate(var(--a)) translateY(0) rotate(45deg)}to{opacity:0;transform:rotate(var(--a)) translateY(-150px) rotate(45deg)}}
