:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e9eee8;background:#080f17;font-synthesis:none;--muted: #91aaa8;--gold: #d8bc86;--mint: #a7e5cd;--line: #789c8b2c}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer;color:inherit;border:1px solid var(--line);background:#162528;border-radius:5px;padding:12px 18px;transition:background .18s,border-color .18s,transform .18s}button:hover{background:#243c3b;border-color:#91bba46b}button:active{transform:translateY(1px)}button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button:disabled{opacity:.35;cursor:not-allowed}button.primary{background:#c8dfbd;color:#142623;border-color:#dbebd0;font-weight:650;box-shadow:0 0 25px #abd8aa0d}button.primary:hover{background:#dceece}button.ghost{background:transparent;border-color:transparent;color:var(--muted)}button.ghost:hover{color:#eaf9f0;background:#8bbc9a0d}button.small{padding:9px 12px;font-size:12px}button.icon{height:38px;min-width:38px;padding:8px;background:#111e23}svg{width:18px;height:18px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}#world{position:fixed;inset:0;background:radial-gradient(ellipse at 65% 35%,#14303955,transparent 65%),#080f17}#world canvas{display:block;touch-action:none}#ui{position:fixed;inset:0;pointer-events:none}#ui button,#ui input,#ui .panel,#ui .modal{pointer-events:auto}.brand{display:flex;align-items:center;gap:13px;font-family:Georgia,serif;letter-spacing:2.8px;font-size:14px;color:#e7dcc3}.brand .brand-symbol{display:grid;place-items:center;width:35px;height:35px;border:1px solid #b5a07177;transform:rotate(45deg);color:var(--gold)}.brand-symbol span{transform:rotate(-45deg);font-size:27px;line-height:1}.eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);font-weight:600}.muted{color:var(--muted)}.serif{font-family:Georgia,Times New Roman,serif;font-weight:400}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;position:absolute;top:0;left:0;right:0;background:linear-gradient(#080f17bb,transparent)}.top-right{display:flex;align-items:center;gap:16px}.chapter-label{font-size:10px;letter-spacing:2.5px;color:var(--muted)}.dot{width:5px;height:5px;background:var(--mint);border-radius:50%;box-shadow:0 0 9px var(--mint);display:inline-block;margin-right:8px}.title-content{position:absolute;left:7%;top:24%;width:410px;max-width:42vw;pointer-events:auto}.title-content:before{content:"";position:absolute;inset:-90px -70px;z-index:-1;background:radial-gradient(ellipse,#080f17d9 30%,#080f1700 72%);pointer-events:none}.title-content h1{font-family:Georgia,serif;font-size:clamp(48px,5.7vw,88px);font-weight:400;line-height:.98;letter-spacing:-3px;margin:25px 0 24px}.title-content h1 span{color:var(--gold)}.title-content .intro{font-size:14px;line-height:1.9;color:#a6bab6;max-width:315px;margin-bottom:29px}.title-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;max-width:270px}.title-actions button{display:flex;justify-content:space-between;align-items:center;padding:15px 20px}.title-actions .minor-actions{display:flex;justify-content:space-between}.title-actions .minor-actions button{padding:10px 0;font-size:11px}.edition{position:absolute;bottom:28px;left:40px;color:#7f9696;font-size:10px;letter-spacing:2px}.menu-note{position:absolute;right:40px;bottom:28px;font-family:Georgia,serif;font-style:italic;color:#8caca3;font-size:14px}.chamber-info{position:absolute;left:40px;top:116px;max-width:310px}.chamber-info h1{font-family:Georgia,serif;font-size:29px;font-weight:400;letter-spacing:-.5px;margin:11px 0 13px}.stage-number{color:var(--gold)}.chamber-info .objective{font-size:12px;color:#9db4ad;line-height:1.7}.stats{position:absolute;right:40px;top:115px;display:flex;gap:29px}.stat{min-width:45px;text-align:center}.stat strong{font:30px Georgia,serif;display:block;color:#f0e8d8}.stat label{font-size:9px;letter-spacing:2px;color:var(--muted);display:block;margin-top:8px}.stat .gold{color:var(--gold)}.status-pill{position:absolute;top:210px;right:40px;padding:8px 12px;border:1px solid var(--line);border-radius:30px;font-size:10px;letter-spacing:1.4px;color:var(--mint);background:#0c191eaa}.chapter-rail{position:absolute;left:40px;top:50%;display:flex;flex-direction:column;gap:11px}.chapter-rail button{width:22px;height:22px;border-radius:50%;padding:0;font-size:9px;background:transparent;border-color:transparent;color:#749087}.chapter-rail button.current{border-color:#b3cea7;color:#d6ead1;background:#b8dccb13;box-shadow:0 0 15px #a0d9ba18}.chapter-rail button.complete{color:var(--gold)}.hint{position:absolute;left:50%;bottom:160px;transform:translate(-50%);text-align:center;max-width:650px;width:70%;font-size:12px;color:#a5bfb5;line-height:1.6;transition:opacity .25s;text-shadow:0 2px 10px #000}.hint strong{color:#d9e8d6;font-weight:500}.hint kbd{font-size:10px}.controls{position:absolute;bottom:38px;left:50%;transform:translate(-50%);width:820px;max-width:calc(100vw - 80px);display:flex;align-items:center;gap:28px;background:linear-gradient(135deg,#15272bea,#102124ed);border:1px solid #79938242;box-shadow:0 18px 70px #0006,inset 0 1px #ffffff06;border-radius:9px;padding:20px 25px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.control{display:flex;flex-direction:column;gap:12px;flex:1;min-width:95px}.control label{font-size:9px;letter-spacing:1.7px;color:#a5b6ad;display:flex;justify-content:space-between}.control label b{font-weight:500;color:var(--gold);letter-spacing:0}.shot-toggle{display:flex;gap:5px}.shot-toggle button{padding:8px 13px;font-size:11px;white-space:nowrap;background:#0b1a20;border-color:#90b39c22}.shot-toggle button.active{background:#b6d8b91a;border-color:#b6d8b96b;color:#d9e9ca}.shot-toggle kbd{margin-left:7px;font-size:9px;opacity:.5}.control.divider{border-left:1px solid var(--line);padding-left:25px}.control.jump-disabled{opacity:.32}input[type=range]{appearance:none;width:100%;height:3px;border-radius:5px;background:linear-gradient(to right,var(--gold) 0%,var(--gold) var(--fill, 50%),#41504d var(--fill, 50%),#41504d 100%);outline-offset:8px;margin:9px 0;cursor:pointer}input[type=range]::-webkit-slider-thumb{appearance:none;width:11px;height:11px;background:#e1d6b5;border:2px solid #e1d6b5;transform:rotate(45deg);box-shadow:0 0 12px #cab88744}.cast-button{align-self:stretch;min-width:144px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:13px}.cast-button small{font-size:9px;font-weight:400;opacity:.55}.keybar{position:absolute;bottom:12px;width:100%;text-align:center;color:#78928d;font-size:9px;letter-spacing:.3px}.keybar span{margin:0 10px}kbd{font-family:inherit;color:#b4c3b9;border:1px solid #8aa08f35;border-radius:3px;padding:1px 4px;margin-right:3px}.toast{position:absolute;top:33%;left:50%;transform:translate(-50%);color:#e7d8b2;background:#12232be8;border:1px solid #ddbd7e55;border-radius:4px;padding:12px 22px;font-size:13px;box-shadow:0 10px 50px #0005;animation:appear .2s ease}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#050e15b0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:24px;pointer-events:auto}.modal{scrollbar-width:thin;scrollbar-color:#648a7b #122128;width:460px;max-height:calc(100vh - 48px);overflow:auto;border:1px solid #849d7f42;background:linear-gradient(145deg,#192a2d,#0d1921);border-radius:12px;padding:36px;box-shadow:0 30px 100px #0008;animation:appear .25s ease}.modal h2{font:36px Georgia,serif;font-weight:400;margin:16px 0}.modal p{font-size:13px;color:#a8bab3;line-height:1.8}.modal .row{display:flex;gap:10px;margin-top:12px}.modal .row button{flex:1}.modal .full{display:block;width:100%;margin-top:11px}.modal .close{float:right;margin:-12px -12px 0 0}.modal .subline{font-size:10px;letter-spacing:2px;color:#a8baac}.result{text-align:center}.result-symbol{font-size:65px;line-height:1.1;color:var(--gold);text-shadow:0 0 30px #d6b57655;margin-bottom:12px}.result .scoreline{display:flex;justify-content:center;gap:42px;margin:26px 0}.result .scoreline strong{display:block;font:40px Georgia,serif;color:#e4d5b1}.result .scoreline span{font-size:10px;letter-spacing:1px;color:var(--muted)}.result .record{font-size:10px;letter-spacing:2px;color:var(--mint);margin:20px 0}.stages-modal{width:850px}.stage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:24px}.stage-card{padding:16px;text-align:left;min-height:116px;background:#122228}.stage-card .number{color:#a8b2a2;font-size:10px;letter-spacing:2px;display:flex;justify-content:space-between}.stage-card .name{font:18px Georgia,serif;display:block;margin:14px 0 10px}.stage-card .best{font-size:10px;color:#92b4a4}.stage-card.done{border-color:#a5c69c48}.stage-card.done .number{color:var(--gold)}.settings-row{padding:16px 0;border-bottom:1px solid var(--line);font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:20px}.settings-row input[type=range]{width:150px}.switch{background:#0d1c22;min-width:65px;padding:7px 10px;font-size:10px;color:#aac7b7}.switch.on{background:#a8ceae22;color:#d5e7ca;border-color:#b6d6ae66}.loading{position:fixed;inset:0;display:grid;place-content:center;text-align:center;color:var(--gold);font-size:10px;letter-spacing:3px}.sigil{font-size:80px;animation:breathe 2s infinite}.loading p{margin-top:24px}.fatal{max-width:500px;text-align:center;margin:auto;padding:30px}.fatal h1{font:35px Georgia,serif}.fatal p{font-size:14px;line-height:1.7;color:var(--muted)}.perfect-flash{position:absolute;top:30%;left:0;right:0;text-align:center;color:var(--gold);font:45px Georgia,serif;letter-spacing:5px;text-shadow:0 0 35px #d9c192;animation:appear .25s ease}.run-badge{font-size:10px;color:var(--gold);margin-top:12px;letter-spacing:1px}@keyframes appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes breathe{50%{opacity:.4;transform:scale(.95)}}@media(max-width:1000px){.topbar{padding:0 25px}.chamber-info{left:25px;top:100px}.stats{right:25px;top:105px;gap:18px}.chamber-info h1{font-size:24px}.chapter-rail{left:20px}.controls{gap:15px;padding:17px 20px;max-width:calc(100vw - 40px)}.control.divider{padding-left:15px}.hint{bottom:154px}.title-content{left:6%;max-width:42vw}.title-content h1{font-size:65px}.stage-grid{grid-template-columns:repeat(3,1fr)}.chapter-label{display:none}.menu-note{right:25px;font-size:12px}}@media(max-width:680px){.topbar{height:67px;padding:0 18px}.brand{font-size:11px;letter-spacing:1.8px;gap:12px}.brand .brand-symbol{width:25px;height:25px}.brand-symbol span{font-size:22px}.top-right{gap:8px}.title-content{left:7%;top:20%;max-width:80vw;width:330px}.title-content:before{background:radial-gradient(ellipse,#080f17ee 50%,transparent 73%)}.title-content h1{font-size:65px}.title-content .intro{font-size:13px}.edition{left:20px;font-size:8px}.menu-note{display:none}.chamber-info{left:18px;top:87px;max-width:210px}.chamber-info h1{font-size:23px}.chamber-info .objective{font-size:10px}.eyebrow{font-size:8px;letter-spacing:1.7px}.stats{right:18px;top:93px;gap:10px}.stat{min-width:31px}.stat strong{font-size:23px}.stat label{font-size:7px;letter-spacing:1px}.status-pill{top:169px;right:18px;font-size:8px}.chapter-rail{display:none}.controls{bottom:30px;display:grid;grid-template-columns:1fr 1fr;gap:14px 22px;padding:15px 18px;max-width:calc(100vw - 24px);width:470px}.control.divider{border:0;padding-left:0}.control{gap:8px}.cast-button{min-height:43px;min-width:0}.hint{bottom:199px;font-size:11px;width:87%}.keybar{font-size:8px;bottom:10px}.keybar span{margin:0 4px}.keybar .desktop{display:none}.modal{padding:25px}.modal h2{font-size:30px}.stage-grid{grid-template-columns:repeat(2,1fr)}.stage-card{padding:12px;min-height:103px}.stage-card .name{font-size:16px}.overlay{padding:12px}.stages-modal{max-height:calc(100dvh - 24px)}}@media(max-height:600px)and (min-width:681px){.topbar{height:60px}.chamber-info{top:78px}.stats{top:75px}.controls{bottom:28px;padding:12px 20px}.hint{bottom:130px}.title-content{top:18%}.title-content h1{font-size:52px;margin:12px 0}.title-content .intro{margin-bottom:15px;font-size:12px}.title-actions button{padding:10px 18px}.chapter-rail{display:none}.status-pill{top:152px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.title-content{width:450px}.title-content h1{font-size:clamp(42px,4vw,64px);line-height:1.08;letter-spacing:-1.8px}.chapter-rail{top:53%;transform:translateY(-50%);gap:9px}@media(max-width:680px){.title-content h1{font-size:48px}.title-content{top:20%;width:340px}.title-content .intro{max-width:290px}}@media(max-height:600px)and (min-width:681px){.title-content{top:17%}.title-content h1{font-size:42px}}.chapter-rail[hidden]{display:none}.expedition-record{font-size:9px;letter-spacing:1.1px;color:var(--muted);line-height:1.8;margin:4px 0}.expedition-record strong{color:var(--gold)}.run-badge{font-size:9px;max-width:310px;line-height:1.8}.title-content .intro{max-width:345px}.spell-rack{position:absolute;bottom:152px;left:50%;transform:translate(-50%);width:820px;max-width:calc(100vw - 80px);padding:12px 16px;background:#101f27ed;border:1px solid #79938242;border-radius:9px;pointer-events:auto}.spell-rack-title{display:flex;justify-content:space-between;gap:8px;margin-bottom:9px;font-size:9px;letter-spacing:1.8px;color:var(--gold)}.spell-rack-title small{color:var(--muted);letter-spacing:.3px}.spell-slots{display:flex;gap:6px;overflow-x:auto;padding-bottom:3px}.spell-slot{flex:1;min-width:105px;display:flex;gap:7px;align-items:center;padding:8px;font-size:10px;text-align:left}.spell-slot.active{background:#aecba322;border-color:#dfc58a}.spell-key{flex-shrink:0;color:var(--gold);font-size:10px}.spell-slot>span:last-child{min-width:0;overflow-wrap:anywhere}.spell-slot small{display:block;font-size:9px;color:var(--gold);margin-top:4px}.spell-glyph{font-size:24px;color:#e2c794}.spell-caption{margin-top:8px;font-size:10px;line-height:1.6;color:#a6bbb3}.spell-caption strong{font-weight:400;color:#dec693}.selected-spell{gap:7px}.selected-spell strong{font:15px Georgia,serif;color:#e7d7aa}.selected-spell small{font-size:9px;color:var(--muted)}.hint{bottom:auto;top:260px;left:40px;transform:none;width:215px;text-align:left;font-size:11px}.rewards-modal{width:900px}.training-gift-modal .reward-grid{grid-template-columns:1fr}.reward-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0 10px}.reward-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:15px;padding:22px;min-height:305px;background:linear-gradient(160deg,#2a393b,#14222d);border-color:#8f937256}.reward-card:hover{transform:translateY(-4px);border-color:#dbc188;background:#30433e}.reward-type{font-size:9px;color:#ddc58d;letter-spacing:1.5px}.reward-glyph{align-self:center;font:60px Georgia,serif;color:#d3c298;text-shadow:0 0 30px #e9c97b44}.reward-card strong{font:23px Georgia,serif;color:#e9dfca}.reward-card>span:not(.reward-type):not(.reward-glyph){font-size:12px;line-height:1.7;color:#b5c6bd}.reward-card small{margin-top:auto;font-size:11px;line-height:1.6;color:#e0c38a}.reward-footnote{text-align:center;font-size:11px!important}@media(max-width:1000px){.spell-rack{max-width:calc(100vw - 40px);bottom:146px}.hint{display:none}}@media(max-width:680px){.spell-rack{width:470px;max-width:calc(100vw - 24px);bottom:207px;padding:10px}.spell-caption{display:none}.spell-rack-title{font-size:8px;letter-spacing:.5px}.spell-slot{min-width:103px}.spell-slots{max-width:100%}.selected-spell strong{font-size:13px}.selected-spell small{font-size:8px}.reward-grid{grid-template-columns:1fr}.reward-card{min-height:0;gap:10px;padding:16px}.reward-glyph{align-self:flex-start;font-size:32px}.rewards-modal{padding:24px}}@media(max-height:600px)and (min-width:681px){.spell-rack{bottom:123px}.spell-caption{display:none}.spell-rack-title{margin-bottom:5px}.hint{display:none}}#strike-pad{position:relative;width:190px;height:190px;margin:22px auto;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fffdf0,#a8ded6 48%,#45656d 85%);box-shadow:inset -7px -10px 28px #12273388,0 12px 30px #0006;cursor:crosshair;touch-action:none}#strike-pad:before,#strike-pad:after{content:"";position:absolute;pointer-events:none;background:#1f535a55}#strike-pad:before{height:1px;left:14%;right:14%;top:50%}#strike-pad:after{width:1px;top:14%;bottom:14%;left:50%}.strike-dot{position:absolute;transform:translate(-50%,-50%);width:15px;height:15px;border-radius:50%;border:2px solid #fff2c6;background:#b54d43;box-shadow:0 0 0 3px #571c3055;pointer-events:none}.strike-top,.strike-bottom{position:absolute;left:0;width:100%;text-align:center;font-size:9px;letter-spacing:2px;color:#143e43;pointer-events:none}.strike-top{top:16px}.strike-bottom{bottom:16px}#strike-value{text-align:center;color:#e8cc90;font-size:13px;margin:10px 0 18px}@media(max-width:680px){.spell-rack-title{align-items:center;flex-wrap:wrap;gap:8px}.spell-rack-title>small{display:none}#strike-pad{width:155px;height:155px;margin:14px auto}}.spell-rack{display:flex;align-items:center;gap:16px}.spell-content{flex:1;min-width:0}.hit-point{flex:0 0 110px;text-align:center;border-right:1px solid var(--line);padding-right:16px}.hit-point>strong{font-size:9px;letter-spacing:1.3px;color:var(--gold)}.hit-point #strike-pad{width:80px;height:80px;margin:7px auto}.hit-point .strike-top{top:9px}.hit-point .strike-bottom{bottom:9px}.hit-point .strike-top,.hit-point .strike-bottom{font-size:7px;letter-spacing:.5px}.hit-point .strike-dot{width:12px;height:12px}.hit-point #strike-value{font-size:9px;min-height:22px;margin:0 0 3px}.hit-point button{font-size:9px;padding:4px 9px}.hit-point.inactive #strike-pad{opacity:.45;cursor:not-allowed}@media(max-width:680px){.spell-rack{gap:10px}.hit-point{flex-basis:84px;padding-right:10px}.hit-point #strike-pad{width:68px;height:68px}}@media(max-height:440px)and (min-width:681px){.status-pill{top:144px}.spell-rack{padding:8px 12px;gap:12px}.hit-point{display:grid;grid-template-columns:64px 80px;gap:3px 8px;align-items:center;flex-basis:164px;padding-right:12px}.hit-point>strong,.hit-point #strike-value,.hit-point button{grid-column:2}.hit-point #strike-pad{grid-column:1;grid-row:1 / 4;width:64px;height:64px;margin:0}.hit-point #strike-value{min-height:0;margin:0}}.lesson-launch{margin-top:9px;padding:7px 10px;font-size:11px;background:#233e3ded;color:#eddda8;border-color:#ad966a88}.training-lives{margin-top:7px;color:#d5c393;font-size:10px}.lesson-steps{padding-left:22px;color:#c7d5cc;font-size:13px;line-height:1.7}.lesson-steps li{padding:5px 0}.lesson-checks{list-style:none;padding:12px;border:1px solid #79938242;border-radius:6px;background:#09161c77;text-align:left}.lesson-checks li{padding:5px 0;color:#abbdb5;font-size:12px}.lesson-checks li.done{color:#cce8a9}.lesson-note{font-size:11px!important}.modal{max-height:calc(100dvh - 36px);overflow-y:auto}.strike-region{position:absolute;background:#d8ffe955;border:1px solid #296963;border-radius:50%;box-shadow:0 0 0 70px #07172066;pointer-events:none}#strike-pad{overflow:hidden}.strike-dot,.strike-top,.strike-bottom{z-index:1}.hit-point>strong{font-size:8px;letter-spacing:.6px}.hint[hidden]{display:none}@media(max-width:680px){.lesson-launch{font-size:9px;padding:5px 8px;margin-top:6px}.lesson-steps{font-size:12px}.training-lives{font-size:8px}.chamber-info .objective{max-width:175px}}@media(max-height:440px)and (min-width:681px){.lesson-launch{position:absolute;left:270px;top:-6px;width:155px}.training-lives{position:absolute;left:270px;top:34px;width:160px}}:root[data-art=storybook]{font-family:Segoe UI,Malgun Gothic,system-ui,sans-serif;color:#453b46;background:#c9b6be;--ink:#453b46;--muted:#776859;--paper:#f1e6cd;--gold:#936329;--mint:#477c70;--teal:#456f69;--line:#917b6840}:root[data-art=storybook] #ui{color:var(--ink)}:root[data-art=storybook] #ui :is(.panel,.modal,.status-pill,.toast,.chamber-info,.stats){background:linear-gradient(120deg,#f4ead5f5,#eaddc2f5);border:1px solid #8f7a69;box-shadow:0 5px 24px #46354622,inset 0 0 0 4px #fff7e345;border-radius:8px}:root[data-art=storybook] #ui :is(.brand,.stat strong,.hint strong,.control label,.objective,.spell-caption,.spell-slot,.modal p,.modal h2,.lesson-steps,.keybar){color:#4e424b}:root[data-art=storybook] #ui button{color:#453b46;background:#eee1c8;border-color:#97816e;box-shadow:0 2px #5e47501a}:root[data-art=storybook] #ui button:hover{background:#faf0da;border-color:#644d56}:root[data-art=storybook] #ui button.primary{background:#49776c;color:#fff3dc;border-color:#375f59}:root[data-art=storybook] #ui button.primary:hover{background:#3a665b}:root[data-art=storybook] #ui .topbar{top:20px;left:28px;right:28px;height:auto;padding:0;background:none;gap:24px}:root[data-art=storybook] #ui .top-right{gap:7px}:root[data-art=storybook] #ui .top-right .icon{width:38px;height:38px;padding:7px;background:#eee1c8ed}:is(#ui,#puzzle-ui) .wordmark{font:23px/1.02 Georgia,serif;letter-spacing:2px;display:flex;gap:10px;align-items:center;text-decoration:none;color:#453b46;background:#f0e5cced;padding:13px 22px;border:1px solid #91756a;box-shadow:0 3px #6a526533;border-radius:7px;pointer-events:auto;flex-shrink:0}:is(#ui,#puzzle-ui) .wordmark>span{font-size:16px}:root[data-art=storybook] #ui .chamber-info{left:28px;top:112px;max-width:295px;padding:17px 20px}:root[data-art=storybook] #ui .chamber-info h1{font-size:25px;letter-spacing:-1px;margin:10px 0 8px}:root[data-art=storybook] #ui .stats{right:28px;top:112px;padding:17px 23px;gap:26px}:root[data-art=storybook] #ui .stat strong{font:27px Georgia}:root[data-art=storybook] #ui .stat label{font-size:10px;letter-spacing:0;color:#776654;margin-top:7px}:root[data-art=storybook] #ui .status-pill{top:218px;right:28px;font-size:11px;letter-spacing:.5px;border-radius:20px;padding:9px 15px;max-width:310px;color:#4e4650}:root[data-art=storybook] #ui .chapter-rail{left:28px;top:335px;transform:none;bottom:240px;display:grid;grid-template-columns:repeat(3,25px);align-content:start;gap:8px;overflow-y:auto}:root[data-art=storybook] #ui .chapter-rail[hidden]{display:none}:root[data-art=storybook] #ui .chapter-rail button.current{border-color:#49776c;background:#f6efd9;color:#453b46}:root[data-art=storybook] #ui .hint{inset:auto auto 238px 50%;transform:translate(-50%);width:70%;height:auto;text-align:center;max-width:650px;color:#5e5354;text-shadow:0 1px #eadfc4;background:#efe2c9db;border-radius:8px;padding:6px 12px}:root[data-art=storybook] #ui .hint[hidden]{display:none}:root[data-art=storybook] #ui .spell-slot.active{background:#fff3db;border-color:#7f6588}:root[data-art=storybook] #ui .title-content:before{background:radial-gradient(ellipse,#f0e3ccec 40%,#eadcc100 72%)}:root[data-art=storybook] #ui .title-content{top:20%;width:460px;max-width:55vw}:root[data-art=storybook] #ui .title-content h1{font-size:clamp(38px,4.5vw,70px);line-height:1.16;letter-spacing:-2px}:root[data-art=storybook] #ui .title-content .intro{color:#66575b}:root[data-art=storybook] #ui .title-actions{max-width:330px}:root[data-art=storybook] #ui :is(.edition,.menu-note,.expedition-record){color:#66575b}:root[data-art=storybook] #ui .overlay{background:#493e514f;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}:root[data-art=storybook] #ui .modal :is(small,.lesson-note,.lesson-checks,.subline){color:#6b5f54}:root[data-art=storybook] #ui :is(.lesson-checks li,.reward-card,.stage-card,.lesson-note,.run-badge){background:#e5d7bd;border-color:#b29c81;color:#51434a}:root[data-art=storybook] #ui .reward-card strong{color:#453b46}:root[data-art=storybook] #ui .reward-card>span:not(.reward-type):not(.reward-glyph){color:#5b4f52}:root[data-art=storybook] #ui .reward-card .reward-type{color:#775323}:root[data-art=storybook] #ui .reward-card .reward-glyph{color:#826037;text-shadow:none}@media(max-height:760px){:root[data-art=storybook] #ui :is(.chamber-info,.stats){top:95px}:root[data-art=storybook] #ui .status-pill{top:195px}:root[data-art=storybook] #ui .hint{bottom:218px}:root[data-art=storybook] #ui .title-content{top:17%}:root[data-art=storybook] #ui .title-content h1{font-size:42px;margin:12px 0}:root[data-art=storybook] #ui .title-content .intro{margin-bottom:14px}:root[data-art=storybook] #ui .title-actions button{padding:11px 16px}}@media(max-width:1100px){:root[data-art=storybook] #ui .topbar{left:18px;right:18px}:root[data-art=storybook] #ui .chamber-info{left:18px;max-width:240px;padding:13px 16px}:root[data-art=storybook] #ui .chamber-info h1{font-size:22px}:root[data-art=storybook] #ui :is(.stats,.status-pill){right:18px}}
