.castle-page .chapters{gap:30px}.castle-page .scene-heading{top:12px;left:19px}.castle-page .scene-heading h2{font-size:27px}.castle-page .scene-vignette{box-shadow:inset 0 0 75px 8px #04081250;background:linear-gradient(#070e1990,transparent 22%,transparent 85%,#060c1866)}
.spellbar{display:flex;margin-top:9px;border:1px solid #354455;border-radius:7px;overflow:hidden;background:#111c2b;flex:0 0 auto}.spell{display:flex;flex:1;align-items:center;justify-content:center;gap:10px;color:#a6b7c9;background:transparent;border-right:1px solid #36435477;padding:8px 9px;text-align:left;min-height:50px}.spell:last-child{border:0}.spell.active{background:linear-gradient(120deg,#d7bb7e24,#d7bb7e08);color:var(--gold);box-shadow:inset 0 -2px var(--gold)}.spell:hover:not(:disabled){background:#7bcbd714}.spell kbd{width:23px;height:24px}.spell span{display:grid;gap:2px}.spell b{font-size:11px;font-weight:600}.spell small{font-size:8px;color:#8193aa}.potion-slot.ready{color:#acdfbb;background:#9cdbc20c}.potion-slot.ready kbd{border-color:#9cdbc266;color:#acdfbb}
.castle-page .time-panel{margin-top:9px}.castle-page #timelineCanvas{height:76px}.castle-page .canvas-wrap{min-height:200px}.castle-page .bottom-hints{font-size:9px}.room-map{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:13px 0}.room-node{border:1px solid #3f516b77;border-radius:5px;padding:8px;font-size:10px;color:#7689a1;background:#08142350}.room-node b{display:block;font-size:8px;color:#6f8197;font-weight:400}.room-node.current{border-color:#d7bb7e99;background:#d7bb7e0c;color:#e2c991}.room-node.current b{color:#bbab8a}.room-node.seen{color:#b1c1d2}.discovery{color:#a7b7ca;font-size:11px;border-left:2px solid #7bcbd766;padding-left:11px;margin:14px 0;line-height:1.7}.journal-button{width:100%;text-align:center}.journal-button span{color:var(--gold)}.castle-page .version-budget{margin-top:14px}.castle-page .objective-card>p{margin-bottom:8px}.castle-page .narrator-portrait{width:78px;height:78px}.castle-page .narrator-card blockquote{font-size:18px}
.target-caption{position:absolute;bottom:72px;left:50%;transform:translateX(-50%);border:1px solid #7bcbd766;background:#0b1729ec;padding:7px 14px;border-radius:5px;color:#c7d9e7;max-width:80%;font-size:11px;pointer-events:none;text-align:center}.room-transition{position:absolute;inset:0;pointer-events:none;background:#09111e;opacity:0;transition:opacity .22s}.room-transition.crossing{animation:roomCross .7s ease-in-out}@keyframes roomCross{0%{opacity:.85}100%{opacity:0}}
.journal-dialog{max-width:560px}.journal-entry{padding:13px 0;border-top:1px solid #73859f33}.journal-entry h3{color:var(--gold);font-size:12px;margin:0 0 5px}.journal-entry p{font-size:12px;color:#a9b9cd;line-height:1.8;margin:0}.journal-entry .glyphs{font-family:Georgia,serif;font-size:25px;letter-spacing:12px;color:#ecddb4;line-height:2}.journal-empty{color:#7c8fa8;font-size:12px;line-height:1.9}.brew-dialog{width:min(620px,calc(100vw - 30px))}.brew-dialog h2{font-size:35px}.ingredient-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0}.ingredient{border:1px solid #637b9855;border-radius:7px;background:linear-gradient(#203249,#101e30);padding:12px 7px;color:#c1cddd;display:grid;justify-items:center;gap:6px;font-size:10px}.ingredient:hover{border-color:var(--gold)}.ingredient .glyph{font-family:Georgia,serif;font-size:27px;color:var(--ingredient-color);text-shadow:0 0 17px var(--ingredient-color)}.ingredient .vial{display:block;width:21px;height:28px;border:1px solid #cbdde566;border-radius:4px 4px 9px 9px;background:linear-gradient(transparent 30%,var(--ingredient-color) 31%,#ffffff14);box-shadow:inset 3px 0 #ffffff17}.recipe-reference{padding:10px;background:#d7bb7e09;border:1px solid #d7bb7e2b;border-radius:5px;color:#d7c599;font-size:12px}.mix-slots{display:flex;justify-content:center;gap:12px;min-height:49px}.mix-slot{width:45px;height:45px;border:1px dashed #748ba866;border-radius:50%;display:grid;place-items:center;color:#6f849e;font-size:22px;font-family:Georgia,serif}.mix-slot.filled{border:1px solid #c4b07a88;color:#e9d99f;background:#d7bb7e0d}#mixFeedback{font-size:11px;min-height:21px;margin:8px 0;color:#e9ba9e}.brew-dialog .dialog-actions{margin-top:10px}.brew-dialog .subtle{margin-bottom:0}
@media(min-width:801px) and (min-height:650px){.castle-page .canvas-wrap{min-height:0}.castle-page .time-panel{padding-top:8px;padding-bottom:8px}.castle-page .bottom-hints{margin-bottom:8px}.castle-page .stage-meta{min-height:23px}.castle-page .masthead{padding-top:12px;padding-bottom:12px}.castle-page .chapter-bar{margin-bottom:10px}.castle-page .chapter{padding-top:10px;padding-bottom:10px}}
@media(min-width:801px) and (max-height:850px){.castle-page .narrator-portrait{width:60px;height:60px}.castle-page .narrator-card blockquote{font-size:17px}.castle-page .narrator-name{font-size:20px}.spell{min-height:44px;padding:6px}.spell small{font-size:7px}.castle-page #timelineCanvas{height:68px}.castle-page .time-panel .transport button{font-size:10px}.castle-page .scene-heading h2{font-size:23px}}
@media(max-width:800px){.spell small{display:none}.spell{gap:5px;min-height:42px}.spell b{font-size:10px}.castle-page .scene-heading h2{font-size:23px}.castle-page .canvas-wrap{aspect-ratio:16/9}.castle-page .move-caption{display:none}}
@media(max-width:480px){.castle-page .scene-heading{top:8px;left:11px}.castle-page .scene-heading h2{font-size:19px}.castle-page .scene-heading p{font-size:7px}.spell{padding:7px 4px}.spell b{font-size:9px}.spell kbd{display:none}.castle-page .bottom-hints{font-size:8px}.ingredient-grid{gap:5px}.ingredient{font-size:9px;padding:9px 4px}.target-caption{font-size:9px;bottom:45px}.room-map{grid-template-columns:repeat(4,1fr)}.room-node{padding:6px 4px;font-size:9px}.castle-page .chapter{font-size:10px}}
@media(prefers-reduced-motion:reduce){.room-transition.crossing{animation:none}}
.ingredient img{display:block;width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 4px 9px #0005)}.ingredient-grid{grid-template-columns:repeat(3,1fr)}.ingredient .vial{display:none}.ingredient:hover img{transform:translateY(-3px);transition:transform .2s ease-out}
@media(min-width:801px) and (min-height:650px) and (max-height:850px){.castle-page .masthead{padding-top:8px;padding-bottom:8px}.castle-page .masthead h1{font-size:27px;margin-top:4px}.castle-page .brand-mark{height:35px;width:29px;font-size:19px}.castle-page .brand .eyebrow{font-size:7px}.castle-page .chapter{padding-top:8px;padding-bottom:8px}.castle-page #timelineCanvas{height:48px}.castle-page .time-panel-top{line-height:1.3}.castle-page .time-panel{padding:7px 12px}.castle-page .transport{padding-top:6px;gap:7px}.castle-page .transport button{padding:6px 9px}.castle-page .spellbar{margin-top:7px}.castle-page .stage-meta{margin-bottom:5px}.castle-page .bottom-hints{margin-top:6px}}
