@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/dm-sans.ttf) format("truetype")}@font-face{font-family:Uncial Antiqua;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/uncial-antiqua.ttf) format("truetype")}:root{font-family:DM Sans,sans-serif;color:#ece1cb;background:#19131f;font-synthesis:none;--ink: #332738;--paper: #e8dabe;--muted: #b4a3b9;--violet: #bba0ed;--green: #a2d8b9;--line: #4a3b50}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(ellipse at 80% 30%,#30203866,transparent 65%)}button,input,select{font:inherit}button{cursor:pointer;min-height:44px;border:1px solid var(--line);background:#2b2132;color:inherit;padding:10px 18px;border-radius:4px;transition:background .15s,transform .15s}button:hover:not(:disabled){background:#43304f;transform:translateY(-1px)}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b7a0ed;outline-offset:4px}button.primary{background:#bca0ec;color:#22172c;border-color:#d0b5fc;font-weight:700;padding:15px 26px}.shell{max-width:1400px;margin:auto;padding:28px 48px}header{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid var(--line);gap:16px}.brand{font:30px Uncial Antiqua,Georgia,serif;color:var(--paper);text-decoration:none}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:600;color:var(--muted)}.title-screen{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:75vh;gap:40px}.title-screen h1{font:clamp(48px,6vw,82px)/1.12 "Uncial Antiqua",Georgia,serif;letter-spacing:-.04em;margin:22px 0}.title-screen h1 em{color:var(--violet);font-style:normal}.title-screen p{font-size:18px;line-height:1.7;max-width:450px;color:#c4b6c8;margin:24px 0 32px}.title-screen img{width:100%;mix-blend-mode:lighten;max-height:650px;object-fit:contain}.title-rules{display:flex;gap:20px;margin-top:32px;font-size:14px;color:var(--muted)}footer{border-top:1px solid var(--line);padding-top:18px;font-size:13px;color:var(--muted);text-align:center}@media(max-width:750px){.shell{padding:20px}header>.eyebrow{display:none}.title-screen{grid-template-columns:1fr;gap:0}.title-screen img{max-height:280px;grid-row:1}.title-screen h1{font-size:44px}.title-rules{flex-wrap:wrap}.title-screen p{font-size:16px}}.brand{padding:0;background:none;border:0;min-height:44px}.brand:hover:not(:disabled){background:none}h1,h2,h3{font-family:Georgia,serif;font-weight:400}h1{font-size:36px;margin:9px 0}h2{font-size:28px}h3{font-size:22px}p{line-height:1.65}small{font-size:13px}a{color:var(--violet)}nav,.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}nav button{background:none;font-size:14px;border-color:transparent}input,select{background:#211927;border:1px solid var(--line);color:var(--paper);border-radius:4px;padding:12px;min-height:44px;max-width:100%}.seed-input{display:flex;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap}.seed-input label{font-size:14px}.seed-input input{width:180px}.title-screen small.muted{display:block;margin-top:12px}.muted{color:var(--muted)}.warning{border:1px solid #c78d67;padding:12px 18px;color:#f3cdad;background:#432d31;font-size:15px}.chapter-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:26px 0}.seed-label{font:13px monospace;color:var(--muted);overflow-wrap:anywhere}.game-layout{display:grid;grid-template-columns:190px minmax(0,1fr) 180px;gap:28px;margin:24px 0 36px}.trial-panel{border:1px solid var(--line);border-radius:6px;padding:22px 18px;align-self:start;background:#231a2a}.trial-label{font-size:12px;letter-spacing:.2em;text-align:center;color:var(--violet)}.target-number{font:66px Georgia,serif;text-align:center;margin:14px 0 24px}.target-number span{display:block;font:14px DM Sans,sans-serif;color:var(--muted)}.round-score{display:flex;justify-content:space-between;align-items:center;font-size:14px}.round-score strong{font-size:28px}progress{width:100%;height:6px;border:0;background:#4a3b50;border-radius:4px;margin:12px 0 16px;accent-color:var(--violet)}progress::-webkit-progress-bar{background:#4a3b50;border-radius:4px}progress::-webkit-progress-value{background:var(--violet);border-radius:4px}.resource{display:flex;justify-content:space-between;gap:6px;border-top:1px solid var(--line);padding:14px 0;font-size:14px}.resource b{color:var(--violet)}.resource .gold,.gold{color:#e9be70}.resource .spent{color:#87718e}.resource small{font-weight:400;color:var(--muted)}.familiar{width:100%;mix-blend-mode:lighten;margin:6px 0 -10px}.scribe-quote{text-align:center;font:italic 16px/1.5 Georgia,serif;color:#c5b4c9}.section-label,.rack-label{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:12px;letter-spacing:.12em;color:var(--muted);margin:0 0 13px}.section-label>span:last-child,.rack-label>span:last-child{letter-spacing:0}.talismans{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.talisman{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:7px;text-align:center;min-height:155px;border:1px solid #655176;background:linear-gradient(#392744,#271e30);border-radius:5px;padding:12px 8px;font-size:14px;position:relative;overflow:hidden}.talisman:disabled{opacity:1;color:inherit}.talisman.empty{background:transparent;border:1px dashed #5b4764;color:#af9db5;justify-content:center}.talisman .sigil{font-size:28px;color:var(--violet)}.talisman small{font-size:12px;color:#baa9c2;line-height:1.4}.talisman strong{text-transform:uppercase;word-break:break-word;font-family:Georgia,serif;font-size:15px;letter-spacing:.05em}.talisman-name{color:#dcc9ed;font-size:13px}.talisman{transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.talisman.resonating{border-color:color-mix(in srgb,var(--green) calc(var(--resonance) * 100%),#655176);box-shadow:0 0 calc(var(--resonance) * 36px) rgb(126 189 148 / calc(var(--resonance) * .65)),inset 0 0 calc(var(--resonance) * 24px) rgb(126 189 148 / calc(var(--resonance) * .2));background:linear-gradient(color-mix(in srgb,#42664b calc(var(--resonance) * 100%),#392744),color-mix(in srgb,#304b39 calc(var(--resonance) * 100%),#271e30))}.talisman.resonating small,.talisman.resonating .sigil{color:color-mix(in srgb,var(--green) calc(var(--resonance) * 100%),#baa9c2)}.chosen{outline:2px solid var(--violet);outline-offset:2px}.book{background:linear-gradient(90deg,#e1d0ad,#eaddc1 47%,#dbc7a3,#e9ddc3 53%,#e5d5b5);color:var(--ink);margin-top:25px;border:1px solid #c6ad83;border-radius:5px 9px 9px 5px;box-shadow:0 4px #b6a384,0 8px #72596a,0 11px #433040,0 16px 22px #0003;padding:22px 24px 24px;position:relative}.book-top{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.16em;color:#786374}.book-top>span:last-child{letter-spacing:0}.composition{min-height:145px;display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;padding:24px 0 10px}.composition-hint{font:italic 22px Georgia,serif;color:#826d7d;text-align:center}.tile{width:50px;height:60px;min-height:60px;flex-shrink:0;background:linear-gradient(#fbefd5,#e8d3aa);border:1px solid #c3a578;box-shadow:0 4px #96795d,0 6px 7px #0003;color:#38293b;border-radius:5px;padding:5px;position:relative;font:30px Georgia,serif;display:flex;align-items:center;justify-content:center}.tile:hover:not(:disabled){background:#fff4da;transform:translateY(-4px)}.tile sub{position:absolute;right:5px;bottom:5px;font:12px DM Sans,sans-serif}.tile i{position:absolute;top:3px;left:4px;font-size:11px;font-style:normal;color:#6a418a}.tile.etched{border-color:#8f69b1}.tile.selected{transform:translateY(-8px);outline:2px solid var(--violet);background:#cfb6e9}.rack .tile.selected{opacity:.42}.tile.small{width:43px;height:50px;min-height:50px;font-size:25px}.reorder{display:flex;justify-content:center;gap:2px;margin-top:7px}.reorder button{padding:0;min-height:26px;width:26px;background:transparent;border:0;color:#6e5267}.reorder button:hover:not(:disabled){background:#cbbb9e}.word-status{min-height:34px;text-align:center;font-size:14px;line-height:1.5;color:#7c4655;margin:8px 0}.word-status.valid{color:#3d654b}.preview{border-top:1px solid #bdaa91;border-bottom:1px solid #bdaa91;padding:18px 0;display:flex;align-items:center;justify-content:space-between;gap:16px}.preview .eyebrow{color:#745d72;font-size:11px}.preview .muted{color:#7d6c76;font-size:16px}.score-formula{font:26px Georgia,serif;margin-top:6px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.score-formula small{font:16px DM Sans,sans-serif}.effect{font:12px DM Sans,sans-serif;color:#614378;border:1px solid #b29ab8;padding:4px 6px;border-radius:3px}.projected{font:48px Georgia,serif;color:#624180}.cast-actions{margin-top:18px;justify-content:flex-end}.cast-actions button{background:transparent;color:#5b465e;border-color:#aa93a4;font-size:14px}.cast-actions button:hover:not(:disabled){background:#d4c2b5}.cast-actions button.primary{background:#654777;color:#f3e8fd;border-color:#654777;min-width:140px}.rack-label{margin-top:30px}.rack{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;min-height:68px;padding-top:5px}.keyboard-hint{text-align:center;font-size:12px;color:var(--muted);margin-top:18px}.history-panel{padding-top:1px}.history-panel>p{font-size:14px;color:var(--muted);margin:16px 0 20px}.history-panel input{width:100%;font-size:12px;padding:9px}.history-list{max-height:385px;overflow:auto;margin-top:14px}.history-word{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0;gap:8px}.history-word strong{text-transform:uppercase;font:17px Georgia,serif;overflow-wrap:anywhere}.history-word small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.history-word b{font-size:14px;color:var(--violet)}.history-empty{color:#9a879f;text-align:center;font:italic 18px/1.6 Georgia,serif;padding:42px 0;border:1px dashed var(--line)}.debug{margin-top:22px;font-size:13px;color:var(--muted)}summary{cursor:pointer;min-height:36px}.debug p{font-size:12px;overflow-wrap:anywhere}footer{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:30px}.purse{color:#ebc281;font:36px Georgia,serif}.purse small{display:block;font:12px DM Sans,sans-serif;color:var(--muted);margin-top:4px}.shop-intro{display:flex;align-items:center;gap:20px;background:#231b2b;border:1px solid var(--line);padding:8px 26px;margin:22px 0 30px}.shop-intro img{width:110px;height:110px;object-fit:contain;mix-blend-mode:lighten}.shop-intro p{font:21px/1.5 Georgia,serif}.shop-intro p em{color:var(--violet)}.shop-intro>div{margin-left:auto;color:var(--muted);font-size:13px}.shop-intro strong{display:block;font:28px Georgia,serif;color:var(--paper);margin-top:7px}.offers{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.offer{border:1px solid #655176;background:linear-gradient(145deg,#33243d,#211927);padding:22px;display:flex;flex-direction:column;border-radius:6px}.offer-icon{font-size:44px;color:var(--violet);margin-top:24px}.offer h2{margin:8px 0}.offer p{font-size:14px;color:#c6b6cf;margin:8px 0 24px;flex:1}.offer-buy{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:14px;padding:10px}.offer-buy b{white-space:nowrap;color:#e9be70}.offer.purchased{opacity:.55}.tile-picker{padding:24px;background:#2b2133;border:1px solid var(--violet);margin-top:24px}.tile-picker input{width:70px}.deck-tiles{display:flex;gap:10px;flex-wrap:wrap;max-height:280px;overflow:auto;padding:14px 4px 12px;margin:12px 0}.purchase-preview{display:flex;justify-content:space-between;align-items:center;gap:20px}.inscription-section{margin-top:34px;padding:26px;background:#211a29;border:1px solid var(--line)}.inscription-section>.muted{font-size:14px;max-width:800px;margin-bottom:22px}.inscription-section .talisman{min-height:132px}.inscription-bottom{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:26px}.candidate-words{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.candidate-words button{text-transform:uppercase;font:20px Georgia,serif}.candidate-words small{display:block;font:12px DM Sans,sans-serif;text-transform:none;color:var(--muted);margin-top:6px}.inscription-preview{border-left:1px solid var(--line);padding-left:26px;font-size:14px}.inscription-preview h3{margin-top:0}.inscription-preview small{color:var(--muted);display:block;font-size:12px;line-height:1.5}.inscription-preview button{margin-top:16px}.neighbor-words{color:var(--green)}.shop-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:28px 0;font-size:14px;color:var(--muted)}.results{max-width:800px;margin:50px auto;text-align:center}.results h1{font:48px/1.2 Uncial Antiqua,Georgia,serif;margin:24px 0}.results>img{width:240px;height:240px;object-fit:contain;mix-blend-mode:lighten}.results>p{color:var(--muted)}.result-stats{display:flex;justify-content:space-evenly;margin:32px 0;gap:20px}.result-stats span{font-size:13px;color:var(--muted)}.result-stats strong{display:block;font:30px Georgia,serif;margin:10px 0;text-transform:uppercase}.result-stats small{color:var(--violet)}.results .actions{justify-content:center}.overlay{position:fixed;inset:0;background:#160f1cd9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;place-items:center;z-index:10;padding:24px}.score-playback{padding:38px;max-width:540px;width:100%;border:1px solid var(--violet);background:#2c2036;text-align:center;box-shadow:0 0 100px #9d66b844}.score-playback h2{text-transform:uppercase;font-size:48px;margin:24px 0;color:var(--paper);overflow-wrap:anywhere}.playback-step{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);animation:appear .3s ease-out}.playback-step strong{font:28px Georgia,serif;color:var(--violet)}.score-playback button{margin-top:28px}dialog{background:#281e30;color:var(--paper);border:1px solid #8a6da0;border-radius:8px;padding:28px;max-width:min(640px,90vw);max-height:85vh}dialog::backdrop{background:#110c16bd;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.dialog-heading h2{margin:0}.rules{font-size:16px}.settings{display:grid;gap:24px;margin-top:25px}.settings label{display:flex;align-items:center;gap:12px}.settings input{min-height:22px;width:22px;accent-color:var(--violet)}.settings p{color:var(--muted);font-size:14px}@keyframes appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}[data-motion=reduced] *,[data-motion=reduced] *:before,[data-motion=reduced] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(min-width:1500px){.shell{padding-top:38px}.game-layout{margin-top:34px}.book{padding:28px}.composition{min-height:160px}}@media(max-width:1200px){.shell{padding:24px}.game-layout{grid-template-columns:160px minmax(0,1fr);gap:22px}.history-panel{grid-column:1/-1;display:grid;grid-template-columns:160px 1fr;gap:10px 22px}.history-panel .history-list{grid-column:2;grid-row:1/5;max-height:220px;display:flex;flex-wrap:wrap;gap:16px;align-content:start}.history-word{min-width:130px;gap:16px}.history-empty{width:100%;padding:20px}.history-panel .debug{grid-column:1/-1}.history-panel>p{margin:0}.offers{gap:12px}.offer{padding:16px}.offer-buy{flex-wrap:wrap}.talismans{gap:8px}}@media(max-width:750px){header{padding-bottom:14px;align-items:flex-start}header .brand{font-size:23px}nav{gap:0;justify-content:flex-end}nav button{font-size:12px;padding:8px}.chapter-heading{margin:22px 0}.chapter-heading h1{font-size:27px}.chapter-heading>.seed-label{display:none}.game-layout{display:flex;flex-direction:column;gap:20px}.trial-panel{width:100%;display:flex;align-items:center;gap:14px;padding:14px;flex-wrap:wrap}.trial-label,.trial-panel .familiar,.scribe-quote{display:none}.target-number{font-size:32px;margin:0}.target-number span{font-size:11px}.round-score{flex-direction:column;gap:4px}.round-score span{font-size:11px}.round-score strong{font-size:27px}.trial-panel progress{order:5;flex-basis:100%;margin:0}.resource{border:0;padding:0;flex-direction:column;font-size:12px;gap:5px}.resource b{font-size:15px}.talismans{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.talisman{padding:10px 4px;min-height:138px;gap:5px;font-size:11px}.talisman small{font-size:11px}.talisman strong{font-size:12px}.talisman .sigil{font-size:23px}.talisman-name{font-size:12px}.book{padding:18px 13px;margin-top:18px}.book-top{font-size:10px}.composition{min-height:125px;padding-top:16px}.composition-hint{font-size:19px}.tile{width:43px;height:54px;min-height:54px;font-size:27px}.rack{gap:8px 7px;max-width:540px;margin:auto}.score-formula{font-size:23px}.projected{font-size:40px}.preview .eyebrow{font-size:10px}.cast-actions{gap:7px}.cast-actions button{padding:9px 11px}.cast-actions button.primary{min-width:115px;padding:11px}.history-panel{display:block}.history-panel>p{display:none}.history-panel input{max-width:250px}.history-panel .history-list{display:flex;max-height:180px}.keyboard-hint{display:none}.section-label,.rack-label{font-size:11px}.offers{grid-template-columns:1fr 1fr}.shop-intro{padding:8px 12px;gap:12px}.shop-intro img{width:75px;height:85px}.shop-intro p{font-size:16px}.shop-intro>div{display:none}.purse{font-size:28px}.offer-icon{margin-top:14px}.offer h2{font-size:25px}.offer p{font-size:13px}.inscription-section{padding:16px}.inscription-bottom{grid-template-columns:1fr}.inscription-preview{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.shop-footer,.purchase-preview{flex-direction:column;align-items:stretch}.results{margin-top:35px}.results h1{font-size:34px}.result-stats{gap:10px}.result-stats strong{font-size:23px}.score-playback{padding:24px}.score-playback h2{font-size:38px}footer{font-size:12px;justify-content:center}.seed-input{margin-top:18px}.title-screen img{margin-top:20px}}.playback-dialog{padding:0;border:0;background:transparent;max-width:min(540px,90vw);width:100%;color:var(--paper);overflow:auto}.playback-dialog::backdrop{background:#160f1cd9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}@media(min-width:1000px)and (max-height:900px){.shell{padding-top:18px}header{padding-bottom:16px}.chapter-heading{margin:18px 0}.game-layout{margin-top:16px}.game-layout .talisman{min-height:120px}.book{margin-top:18px;padding:18px 22px}.composition{min-height:105px;padding-top:14px}.preview{padding:10px 0}.cast-actions{margin-top:14px}.rack-label{margin-top:24px}.familiar{max-height:135px;object-fit:contain}}@media(max-width:550px){.shell{padding:16px}header .brand{font-size:20px;white-space:nowrap}nav button{padding:6px}.trial-panel{gap:8px;padding:12px}.game-layout .talisman{min-height:90px}.talisman.empty small{display:none}.play-surface{display:flex;flex-direction:column}.play-surface>.section-label{order:0}.play-surface>.talismans{order:1}.play-surface>.rack-label{order:2;margin-top:20px}.play-surface>.rack{order:3}.play-surface>.book{order:4}.tile,.tile.small{width:44px}.composition{min-height:100px}}.rune-section{margin:20px 0}.rune-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.rune-card{--rune-color: #bdc5b2;border:1px solid var(--rune-color);border-radius:8px;background:linear-gradient(145deg,#302b35,#201a28);padding:12px;display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;min-width:0}.rune-card.uncommon{--rune-color: #82c4ba}.rune-card.rare{--rune-color: #dfb776}.rune-rarity{color:var(--rune-color);text-transform:uppercase;font-size:10px;letter-spacing:.12em}.rune-icon{font-size:27px;color:var(--rune-color)}.rune-card strong{font-family:Georgia,serif;font-size:14px}.rune-card small{font-size:11px;line-height:1.4;color:#c2b6cb}.rune-card.active{box-shadow:0 0 16px color-mix(in srgb,var(--rune-color) 35%,transparent);background:#34303c}.rune-card[data-movable=true]{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.rune-card.dragging{opacity:.45}.rune-card.drop-target{outline:2px solid var(--rune-color);outline-offset:3px}.rune-card.empty{border-style:dashed;border-color:#584b61;color:#a798af;justify-content:center}.rune-controls{display:flex;align-items:center;justify-content:space-between;width:100%;gap:4px;margin-top:auto;padding-top:8px}.rune-controls button{padding:4px 8px;min-height:30px}.rune-controls span{font-size:10px;color:var(--rune-color)}.rune-copy{color:var(--rune-color)!important}.rune-shop{margin:28px 0}.rune-offers{grid-template-columns:repeat(3,minmax(0,1fr))}.rune-offers .offer-buy{margin-top:auto;width:100%}@media(max-width:700px){.rune-row{grid-template-columns:repeat(2,minmax(0,1fr))}.rune-offers{grid-template-columns:1fr}.rune-section .section-label{flex-wrap:wrap;gap:6px}}@media(max-width:550px){.play-surface>.rune-section{order:1}}.session-shell{height:100dvh;max-width:1200px;padding:12px 24px;display:flex;flex-direction:column;gap:10px;overflow:hidden}.session-shell header{padding:0;border:0;flex-shrink:0;height:44px}.options-wrap{position:relative}.options-menu{position:absolute;right:0;top:48px;z-index:20;width:180px;padding:8px;background:#281e30;border:1px solid var(--line);box-shadow:0 8px 30px #0006}.options-menu button{width:100%;text-align:left}.session-shell .chapter-heading{height:48px;margin:0;flex-shrink:0}.session-shell .chapter-heading h1{font-size:24px;margin:3px 0 0}.session-shell .eyebrow{font-size:10px}.seed-label,.session-shell .purse small{display:none}.equipment{flex-shrink:0}.equipment .section-label{font-size:10px;margin:0 0 5px}.equipment .talismans,.equipment .rune-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.equipment .talisman{height:58px;min-height:0;padding:8px 4px;gap:4px;justify-content:center}.equipment .talisman-name{font-size:11px}.equipment .talisman strong{font-size:15px}.equipment .rune-section{margin:8px 0 0}.equipment .rune-card{height:62px;padding:6px;gap:2px;border-radius:4px;justify-content:center}.equipment .rune-card>small,.equipment .rune-rarity,.equipment .rune-icon{display:none}.equipment .rune-card strong{font-size:12px}.equipment .rune-controls{padding:0;margin:0}.equipment .rune-controls button{min-height:26px;padding:0 8px}.session-shell .game-layout{flex:1;min-height:0;margin:0;display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px}.session-shell .trial-panel{padding:16px 12px;height:100%}.session-shell .familiar,.session-shell .scribe-quote,.keyboard-hint{display:none}.session-shell .target-number{font-size:44px;margin:10px 0 20px}.session-shell .play-surface{display:flex;flex-direction:column;min-height:0}.session-shell .book{order:0;flex:1;min-height:0;display:flex;flex-direction:column;margin:0 0 12px;padding:14px 18px;box-shadow:0 3px #92788a}.session-shell .composition{flex:1;min-height:0;padding:10px 0 0;flex-wrap:nowrap;gap:4px}.composed-tile{min-width:0;flex:0 1 50px}.composed-tile .tile{width:100%}.session-shell .word-status{min-height:22px;margin:5px 0;font-size:12px}.session-shell .preview{padding:5px 0}.session-shell .projected{font-size:34px}.session-shell .cast-actions{margin-top:8px;flex-wrap:nowrap}.session-shell .cast-actions button{padding:8px 14px}.session-shell .rack-label{order:1;margin:0 0 7px;font-size:10px}.session-shell .rack{order:2;flex-wrap:nowrap;min-height:64px;gap:6px;width:100%;max-width:none}.session-shell .rack .tile{flex:0 1 50px;min-width:0}.shop-tabs{display:flex;gap:6px;flex-shrink:0}.shop-tabs button{padding:6px 20px;min-height:36px}.shop-tabs button[aria-pressed=true]{background:#bca0ec;color:#22172c}.shop-content{flex:1;min-height:0}.shop-content>.section-label,.rune-shop>.section-label,.rune-shop>.muted,.inscription-section>.section-label{display:none}.shop-content .offers{height:100%;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.shop-content .rune-offers{grid-template-columns:repeat(3,minmax(0,1fr))}.shop-content .offer{padding:14px;align-items:stretch;text-align:left;gap:0;min-height:0}.shop-content .offer-icon{margin:8px 0;font-size:30px}.shop-content .offer h2{font-size:22px;margin:4px 0}.shop-content .offer p{font-size:13px;line-height:1.45;margin:8px 0}.shop-content .offer-buy{flex-wrap:nowrap;margin-top:auto}.shop-content .rune-shop,.shop-content .inscription-section{height:100%;margin:0;padding:0;border:0;background:transparent}.inscription-section>.muted{margin:0 0 12px}.shop-content .inscription-bottom{margin:0;gap:16px}.shop-content .inscription-preview{padding-left:16px}.shop-content .inscription-preview p{margin:8px 0}.shop-content .inscription-preview h3{margin:0;font-size:20px}.shop-content .inscription-preview button{margin-top:8px}.session-shell .shop-footer{flex-shrink:0;margin:0;flex-direction:row;font-size:12px;gap:12px}.shop-footer>span{max-width:55%}.shop-footer button{white-space:nowrap}.shop-content .tile-picker{margin:0;padding:12px;height:100%}.shop-content .deck-tiles{overflow:visible;margin:0;padding:8px 0;gap:6px}.tile-pages{display:flex;align-items:center;gap:12px}.tile-pages button{min-height:30px;padding:3px 12px}.purchase-preview{font-size:12px}.purchase-preview p{margin:6px 0}.session-shell .warning{position:fixed;bottom:12px;left:50%;transform:translate(-50%);z-index:30;max-width:90vw}.talisman.resonating{border-color:#bdffe1;background:linear-gradient(135deg,#355f51,#25382e);animation:resonance-pulse 1.8s ease-in-out infinite alternate}.talisman.resonating strong{color:#e0ffee;text-shadow:0 0 5px #afffd1,0 0 16px #6dffb3,0 0 28px #65ffab;animation:word-glow 1.4s ease-in-out infinite alternate}.word-resonating .tile{color:#204c39;border-color:#76cda0;box-shadow:0 3px #78947b,0 0 18px #60cb9c99;text-shadow:0 0 8px #62d897;animation:word-glow 1.4s ease-in-out infinite alternate}@keyframes resonance-pulse{0%{box-shadow:0 0 12px #83ffc855,inset 0 0 12px #83ffc822}to{box-shadow:0 0 26px #83ffc899,inset 0 0 20px #83ffc844}}@keyframes word-glow{0%{filter:brightness(1)}to{filter:brightness(1.2)}}@media(max-width:700px){.session-shell{padding:8px 12px;gap:8px}.session-shell .chapter-heading h1{font-size:20px}.session-shell .game-layout{display:flex;flex-direction:column;gap:8px}.session-shell .trial-panel{height:48px;padding:4px 8px;flex-shrink:0;display:flex;flex-wrap:nowrap;justify-content:space-between;gap:8px}.session-shell .trial-panel progress,.trial-panel .spent,.trial-panel .resource small{display:none}.session-shell .target-number{font-size:23px;margin:0}.session-shell .target-number span{font-size:9px}.session-shell .round-score{flex-direction:column;gap:0}.session-shell .round-score strong{font-size:22px}.session-shell .resource{padding:0;border:0;flex-direction:column;font-size:10px;gap:2px}.session-shell .resource b{font-size:13px}.session-shell .play-surface{flex:1}.equipment .talisman-name{font-size:10px}.equipment .talisman strong{font-size:12px}.equipment .rune-card strong{font-size:10px}.equipment .rune-card{padding:4px}.equipment .rune-controls{gap:0}.equipment .rune-controls button{padding:0 5px}.equipment .rune-controls span{font-size:8px}.session-shell .book{padding:10px}.session-shell .tile{height:44px;min-height:44px;font-size:23px;padding:2px}.session-shell .tile sub{font-size:9px;right:2px;bottom:2px}.session-shell .rack{gap:3px;min-height:49px}.reorder button{width:50%;min-height:24px}.session-shell .cast-actions{justify-content:space-between;gap:6px}.session-shell .cast-actions button{padding:6px 9px;min-width:0}.shop-content .offers,.shop-content .rune-offers{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.shop-content .rune-offers .offer:last-child{grid-column:1 / -1}.shop-content .offer{padding:8px}.shop-content .offer-icon,.shop-content .offer>.eyebrow,.shop-content .rune-rarity{display:none}.shop-content .offer h2{font-size:17px}.shop-content .offer p{font-size:11px;line-height:1.3;margin:4px 0}.shop-content .offer-buy{min-height:32px;padding:4px 8px;font-size:12px}.session-shell .shop-footer>span{font-size:10px}.session-shell .shop-footer button{padding:10px;font-size:12px}.shop-content .inscription-bottom{grid-template-columns:1fr;gap:10px}.shop-content .inscription-preview{padding:8px 0 0}.inscription-section>.muted{font-size:12px;margin-bottom:8px}.candidate-words{margin-top:6px;gap:6px}.candidate-words button{font-size:16px;padding:6px 10px}.candidate-words small{font-size:10px}.shop-content .inscription-preview{font-size:12px}.shop-content .inscription-preview small{display:none}.shop-content .tile-picker{padding:4px}.shop-content .deck-tiles .tile{width:calc((100% - 30px) / 6);flex-shrink:1}.purchase-preview{flex-direction:row;gap:8px}.purchase-preview button{padding:8px;font-size:12px}}@media(max-height:650px){.session-shell{gap:5px;padding-top:4px;padding-bottom:6px}.session-shell header{height:36px}.session-shell .chapter-heading{height:32px}.session-shell .chapter-heading h1{font-size:18px}.session-shell .chapter-heading .eyebrow{display:none}.equipment .talisman{height:46px}.equipment .rune-card{height:50px}.equipment .rune-section{margin-top:4px}.session-shell .book-top{display:none}.session-shell .composition-hint{font-size:16px}.session-shell .book{padding:6px 10px;margin-bottom:6px}.session-shell .projected{font-size:26px}.session-shell .preview{padding:2px 0}.session-shell .cast-actions{margin-top:4px}.session-shell .cast-actions button{min-height:32px;padding:4px 8px}.shop-content .offer-icon{display:none}}@media(max-width:700px)and (max-height:650px){.shop-content .inscription-preview h3{font-size:17px}.shop-content .inscription-preview button{padding:8px 12px;min-height:36px}.shop-content .inscription-preview p{margin:4px 0}.shop-content .candidate-words button{min-height:36px;padding:4px 8px}.shop-content .candidate-words small{display:none}.shop-content .inscription-bottom{gap:6px}.session-shell .shop-footer{min-height:42px}.session-shell .shop-footer>span{max-width:48%}}@media(max-height:480px){.session-shell{zoom:.7;height:142.857dvh}}@media(max-width:700px){.shop-content .tile-picker>.section-label{margin-bottom:4px;font-size:9px}.shop-content .tile-picker>.section-label button{min-height:30px;padding:4px 8px}.shop-content .tile-picker>label{display:flex;align-items:center;gap:8px;font-size:12px}.shop-content .tile-picker input{min-height:30px;height:30px;padding:4px 8px}.shop-content .deck-tiles{padding:6px 0}.shop-content .deck-tiles .tile{height:36px;min-height:36px}.shop-content .purchase-preview{font-size:10px}.shop-content .purchase-preview button{flex-shrink:0;min-height:34px}}
