/* Shared interface language: smoked glass, silver engraving, restrained violet. */
:root{--ui-ink:#15111d;--ui-panel:#1b1623;--ui-line:#a790ad70;--ui-silver:#d7c9df;--ui-muted:#b5a4c2;--ui-light:#e8d9f4;--ui-violet:#c49ae7;--gold:#c8b5d5;--serif:Georgia,'Noto Serif SC','Microsoft YaHei',serif}
button,input,summary,a{-webkit-tap-highlight-color:transparent}button:focus-visible,summary:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #d7b5f0;outline-offset:4px}button:disabled{cursor:default}::selection{background:#835ea685;color:#fff}*{scrollbar-color:#8c729b #18131f;scrollbar-width:thin}.button,.mini-button,.text-button{font-family:var(--serif)}
/* Shared action frames, used by overlays and expedition pages. */
:is(#modal,.flow-scene,.result-scene) .button,:is(#modal,.flow-scene) .mini-button{position:relative;border-radius:0;border:1px solid var(--ui-line);background:linear-gradient(110deg,#342939cf,#1d1728eb);color:var(--ui-silver);box-shadow:inset 0 0 0 3px #9d7eaa12;letter-spacing:1px;font-family:var(--serif);transition:background .18s,border-color .18s,box-shadow .18s;min-height:39px}
:is(#modal,.flow-scene,.result-scene) .button{padding:12px 23px;clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,10px 100%,0 50%)}
:is(#modal,.flow-scene,.result-scene) .button:after{content:'';position:absolute;inset:2px;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 56' preserveAspectRatio='none'%3E%3Cpath d='M20 1H380L399 28 380 55H20L1 28Z' fill='none' stroke='%23bba6c9' stroke-width='1'/%3E%3C/svg%3E") center/100% 100% no-repeat;opacity:.7}
:is(#modal,.flow-scene,.result-scene) .button.primary{border-color:#c6a0df;background:linear-gradient(110deg,#533964c9,#34263fe6);color:#f1e0fc;box-shadow:inset 0 0 15px #b57add4a}
:is(#modal,.flow-scene,.result-scene) .button.ghost{background:#17131d6b;color:#b9a6c8;border-color:#95809e45}
:is(#modal,.flow-scene) :is(.button,.mini-button):hover:not(:disabled){border-color:#e0b8f8;background-color:#654574;box-shadow:inset 0 0 17px #ae78d23d}.mini-button{padding:8px 13px;font-size:11px}.text-button{background:none;border:0;border-bottom:1px solid #997da958;color:#baa5cc;padding:7px 5px;font-size:11px;cursor:pointer}.text-button:hover{color:#e9d4f9}
/* Dialog chrome stays in view while the contents scroll. */
#modal{padding:0;width:calc(100% - 48px);max-width:820px;max-height:90dvh;overflow:hidden;border:1px solid #bca3c18c;border-radius:0;color:var(--ui-silver);font-family:var(--serif);background:linear-gradient(125deg,#211827f5,#121019fa),url('../assets/battle/sanctuary-background.png') center/cover;box-shadow:0 30px 140px #000b,0 0 30px #a176bd1c,inset 0 0 0 4px #110c1880,inset 0 0 0 5px #a790ad3b}
#modal::backdrop{background:#090710d9;backdrop-filter:blur(9px) saturate(.55)}#modal[data-view=catalog]{max-width:1130px}#modal[data-view=rules]{max-width:1010px}#modal[data-view=archive]{max-width:900px}#modal-content{display:flex;flex-direction:column;max-height:calc(90dvh - 2px);min-height:0}.modal-header{flex:none;position:relative;display:flex;align-items:center;gap:17px;margin:0 20px;padding:23px 4px 19px;border-bottom:1px solid #ac8faf80;background:linear-gradient(90deg,#17101b44,transparent)}.modal-header:after{content:'✧';position:absolute;bottom:-10px;left:50%;font-size:18px;color:#b897c5;line-height:20px;background:#1b1423;padding:0 10px}.modal-header>div{flex:1;min-width:0}.modal-header>div>small{font-size:8px;color:#a58db6;letter-spacing:3px;display:block;margin-bottom:7px}.modal-header h2{font-size:23px;font-weight:400;letter-spacing:3px;line-height:1.5;margin:0;color:#e5d5ef}.modal-seal{width:41px;height:47px;flex:none;display:grid;place-items:center;position:relative;color:#c8a9d6}.modal-seal:before{content:'';width:28px;height:28px;border:1px solid #bda0ca59;position:absolute;transform:rotate(45deg)}.modal-seal .ui-icon{width:30px;height:33px}.close-button{flex:none;border:1px solid #a58dab6b;background:#2b203459;width:35px;height:35px;padding:0;color:#ceb4df;font:24px/1 Georgia,serif;cursor:pointer}.close-button:hover{background:#62457388;border-color:#d1b3e2}.modal-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:26px 29px 29px;scroll-padding-top:18px}.modal-body>p:first-child{margin-top:0}.modal-body p{font-size:13px;color:#c7b6d4;line-height:1.95}.modal-foot{flex:none;display:flex;align-items:center;gap:16px;border-top:1px solid #9d82a24d;margin:0 24px;padding:12px 3px 15px;color:#9d87ad;font-size:9px;letter-spacing:2px}.modal-foot i{font-style:normal;font-size:16px;margin-left:auto}.modal-foot small{font-size:8px;letter-spacing:1px}
/* Collection pages: framed illustration, title ribbon and owner-specific tones. */
.catalog-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin:0 0 20px}.catalog-tabs .button{font-size:12px;padding:12px 8px;letter-spacing:1px}.neutral-catalog-intro{padding:0 4px 20px;border-bottom:1px solid #9a80a04a;margin-bottom:23px}.neutral-catalog-intro p{font-size:12px!important;line-height:1.9!important;margin:0;color:#b9a6ca}.neutral-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.catalog-card{border-radius:0;position:relative;border:1px solid #a991b680;background:#1b1523;box-shadow:inset 0 0 0 3px #1b1320,inset 0 0 0 4px #b39ac934,0 6px 17px #0004;overflow:hidden}.catalog-card:after{content:'✧';position:absolute;bottom:2px;left:calc(50% - 6px);font-size:12px;color:#b89eca;pointer-events:none}.catalog-art{position:relative;margin:5px 5px 0;aspect-ratio:1.45;height:auto;border-bottom:1px solid #c1a9c46b;background-size:cover;background-position:center}.catalog-art:after{background:linear-gradient(transparent 55%,#17111dee)!important}.catalog-art>span{position:absolute;left:7px;top:7px;background:radial-gradient(circle at 35% 25%,#876a9d,#322039);border:1px solid #ddc2ec;color:#f4e3ff;width:37px;height:42px;border-radius:45%;font:25px Georgia,serif;text-align:center;line-height:36px;box-shadow:0 0 0 3px #21162988;z-index:2}.catalog-art>span small{display:none}.catalog-art>b{position:absolute;bottom:9px;left:8px;right:8px;text-align:center;font-size:9px;color:#d2bbdf;letter-spacing:1px;font-weight:400;z-index:2}.catalog-copy{padding:0 15px 23px}.catalog-copy h3{background:linear-gradient(90deg,#baaabb,#e1d7df,#b6a3be);color:#302536!important;font-size:18px;font-weight:400;letter-spacing:2px;text-align:center;margin:0 -15px 16px;padding:9px 7px;border-bottom:1px solid #ebd8f04d;line-height:1.4}.catalog-copy p{font-size:12px!important;line-height:1.9!important;margin:0 0 11px;color:#d2c1de!important}.catalog-copy>small{font-size:10px;line-height:1.9;color:#aa93b9!important;min-height:0;font-style:normal}.catalog-copy details{margin-top:16px;border-top:1px solid #a487b14f;padding-top:11px}.catalog-copy summary{font-size:11px;letter-spacing:1px;color:#cdb4df!important;cursor:pointer}.catalog-copy details p{margin-top:10px;font-size:11px!important}.catalog-original{font-size:10px!important;letter-spacing:1px;color:#b59cc7!important;margin-top:15px;text-decoration:none;border-bottom:1px solid #9e80b14d;padding-bottom:3px}.catalog-original:hover{color:#f0d6ff!important}.catalog-neutral{background:linear-gradient(140deg,#ded9e2,#bfb7cb);border-color:#dfd8e6;box-shadow:inset 0 0 0 3px #d5ccdb,inset 0 0 0 4px #7b70884a}.catalog-neutral .catalog-copy h3{background:linear-gradient(90deg,#eae5ef,#f5eff7,#d0c6d8);color:#3f3749!important}.catalog-neutral .catalog-copy p{color:#40354b!important}.catalog-neutral .catalog-copy>small,.catalog-neutral .catalog-copy summary,.catalog-neutral .catalog-original{color:#62546e!important}.catalog-neutral:after{color:#706077}.catalog-system{background:#27212f;border-color:#8f7f9e}
/* Lists use the same card ownership colors and small mana jewels. */
.deck-row{display:flex;align-items:center;gap:17px;margin:0 0 10px;padding:12px 15px;background:linear-gradient(100deg,#302336bd,#181321ab);border:1px solid #8b729a55;box-shadow:inset 3px 0 #a082b951}.deck-row.row-neutral{border-color:#d1c6dc66;background:linear-gradient(100deg,#62566b55,#211a2a80);box-shadow:inset 3px 0 #e1d6eb80}.deck-row.row-upgraded{border-color:#c7a0e18c}.deck-thumbnail{position:relative;width:46px!important;height:61px;flex:0 0 46px!important;min-width:0!important}.deck-thumbnail img{width:46px;height:61px;object-fit:cover;border-radius:0;border:1px solid #c2a5d280}.deck-thumbnail>span{position:absolute;left:-7px;top:-7px;width:20px;height:23px;border-radius:50%;border:1px solid #cdb2e0;background:#4b325e;color:#f0ddff;text-align:center;font:15px/21px Georgia,serif}.deck-row>div:not(.deck-thumbnail){flex:1;min-width:0}.deck-row b{font-family:var(--serif);font-size:14px;color:#dfcaed;letter-spacing:1px}.deck-row small{font-size:11px;color:#b9a4ca;line-height:1.9;margin-top:5px}.deck-type{font-size:10px;border:1px solid #9e7daf4d;padding:5px 8px;color:#b8a0c7;background:#1f1729;white-space:nowrap}.starter-list button{border-radius:0;box-shadow:inset 3px 0 #ad8ec447}.flow-picker .deck-row{margin:8px 0;padding:12px 10px}.flow-picker .deck-row>.deck-thumbnail{min-width:0!important;flex:0 0 40px!important;width:40px!important}.flow-picker .deck-thumbnail img{width:40px;height:55px}.flow-picker .deck-row>.deck-thumbnail+div{min-width:0!important;flex:1}
/* Relics, consumables and equipment. */
.collection-intro{display:flex;align-items:center;gap:19px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #9f83ad4d}.collection-seal{width:58px;height:65px;flex:none;display:grid;place-items:center;background:radial-gradient(#71507840,transparent 70%)}.collection-seal .ui-icon{width:40px;height:45px;color:#c5a1dc}.collection-intro h3{font-size:21px;letter-spacing:3px;font-weight:400;margin:0 0 9px;color:#dec9ec}.collection-intro h3 small{font-size:12px;letter-spacing:1px;margin-left:10px;color:#a78cba}.collection-intro p{font-size:11px!important;margin:0;line-height:1.8!important}.relic-collection{display:grid;grid-template-columns:1fr 1fr;gap:15px}.owned-relic{display:flex;align-items:flex-start;gap:17px;padding:20px 16px!important;margin:0!important;border:1px solid #9b7fa667;background:linear-gradient(135deg,#36263e6b,#17111f);position:relative}.item-medallion{position:relative;display:grid;place-items:center;width:53px;height:62px;flex:none;color:#c9a7df}.item-medallion:before{content:'';position:absolute;width:37px;height:37px;transform:rotate(45deg);border:1px solid #b397c162;box-shadow:0 0 0 4px #a081b011}.item-medallion .ui-icon{width:32px;height:37px}.owned-relic small{font-size:8px;color:#9e86b2;letter-spacing:2px}.owned-relic h3{font-size:17px;color:#d6c0e5;letter-spacing:2px;font-weight:400;margin:9px 0}.owned-relic p{font-size:11px!important;margin:0;line-height:1.9!important}.potion-item{display:flex;align-items:center;gap:18px;background:linear-gradient(110deg,#33233d88,#181220);border:1px solid #94739e66;padding:18px;margin:13px 0}.potion-item>div{flex:1;min-width:0}.potion-item b{font-size:16px;font-weight:400;letter-spacing:2px;color:#dfc9ed}.potion-item small{display:block;font-size:11px;line-height:1.9;color:#b7a0c9;margin-top:8px}.empty-collection{grid-column:1/-1;text-align:center;padding:36px 20px;border:1px solid #a18aaa42;background:#281d323d}.empty-collection>.ui-icon{width:60px;height:66px;color:#a889bd;margin:0 auto 20px}.empty-collection h3{font-size:20px;letter-spacing:3px;font-weight:400;color:#cbb3dc}.empty-collection p{font-size:12px!important;color:#a993b9!important}.character-sheet{border:1px solid #ac8fba59!important;background:linear-gradient(90deg,#23162fcb,#21162b70),url('../assets/battle/sanctuary-background.png') center/cover;padding:20px!important}.character-sheet .hud-portrait{background-image:url('../assets/battle/luneth-portrait.png');background-size:430% auto;background-position:75% 10%}.character-sheet h3{font-weight:400;letter-spacing:3px}.equipment-slots{gap:13px}.equipment-slot{border:1px solid #9779a666;background:linear-gradient(110deg,#33243e80,#161020);padding:20px!important;border-radius:0!important}.equipment-slot>.ui-icon{color:#bd99d3!important;filter:drop-shadow(0 0 10px #a777c82b)}.equipment-slot h3{font-size:18px!important;font-weight:400;letter-spacing:2px}.equipment-slot small{letter-spacing:3px;color:#a289b6}.equipment-slot p{font-size:12px!important}.hud-relic>.ui-icon{width:25px;height:29px}.object-glyph>.ui-icon{width:30px;height:35px}.flow-tarot-icon .relic-sigil>.ui-icon{width:66px;height:74px;color:#c5a9d7}.flow-tarot-icon .relic-sigil{display:grid;place-items:center}
/* Lore, manual and pause menu */
.hero-memory{position:relative;display:grid;grid-template-columns:42% 1fr;min-height:440px;gap:28px}.memory-portrait{background:linear-gradient(0deg,#17101d,transparent 30%),url('../assets/battle/luneth-portrait.png') 73% 0/245% auto no-repeat;border:1px solid #b396c252;min-height:430px}.memory-copy{padding:18px 0}.memory-copy>.eyebrow{font-size:8px;letter-spacing:2px;color:#b79bca}.memory-copy>h3{font-size:34px;font-weight:400;letter-spacing:5px;margin:15px 0}.memory-copy>p{font-size:12px!important;letter-spacing:1px}.memory-traits{border-top:1px solid #9876ab52;margin-top:25px}.memory-traits article{padding:18px 0 5px;border-bottom:1px solid #9876ab37}.memory-traits small{color:#a087b5;font-size:9px;letter-spacing:2px}.memory-traits h4{font-size:17px;letter-spacing:3px;font-weight:400;margin:10px 0}.memory-traits p{font-size:11px!important;margin-bottom:13px}.memory-note{font-size:10px!important;color:#a18bae!important;margin-top:20px}.system-banner{min-height:155px;position:relative;text-align:left!important;padding:22px 24px!important;border:1px solid #a88eb95e;background:linear-gradient(90deg,#191121f5,#17101d88),url('../assets/battle/luneth-portrait.png') 90% 18%/90% auto no-repeat}.system-banner>b{font-size:30px!important;letter-spacing:7px;font-weight:400}.system-banner>small{font-size:9px;letter-spacing:4px;color:#bba1cc}.system-banner p{font-size:11px!important;color:#ad94bf}.battle-settings{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.battle-settings>p{grid-column:1/-1;font-size:11px!important;margin:0 0 8px}.battle-settings .button{width:100%;font-size:12px}.rules-book{display:grid;grid-template-columns:215px 1fr;gap:30px;align-items:start}.rules-book aside{position:sticky;top:0;border:1px solid #9879a956;padding:22px 17px;background:linear-gradient(160deg,#3b2a475e,#16101e);text-align:center}.rules-book aside .front-astrolabe{width:140px;height:155px;margin:auto;color:#bfa1cf}.rules-book aside h3{font-weight:400;font-size:20px;letter-spacing:3px;margin:15px 0}.rules-book aside p{font-size:11px!important}.rules-book aside>span{display:block;font-size:8px;letter-spacing:2px;color:#a184b6;border-top:1px solid #a384b145;margin-top:23px;padding-top:16px}.rules-chapters details{border:1px solid #9475a64d;background:#241a2e59;margin-bottom:11px}.rules-chapters summary{display:flex;align-items:center;gap:13px;list-style:none;padding:16px;cursor:pointer;color:#dbc5ea;font-size:14px;letter-spacing:1px}.rules-chapters summary::-webkit-details-marker{display:none}.rules-chapters summary>small{font:11px Georgia,serif;color:#a889bf}.rules-chapters summary i{font-style:normal;margin-left:auto;color:#b193c3;font-size:13px}.rules-chapters details[open]{background:linear-gradient(110deg,#36263f80,#181220);border-color:#bd94d16b}.rules-chapters details[open] summary{border-bottom:1px solid #9370a144}.rules-chapters details[open] summary i{transform:rotate(45deg)}.rules-chapters details>div{padding:3px 19px 10px}.rules-chapters p{font-size:12px!important;line-height:2!important}
/* Battle journal and results. */
.journal-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0 25px}.journal-metrics>div{border:1px solid #a080b252;padding:20px 12px;text-align:center;background:linear-gradient(#36253f66,#1d1428)}.journal-metrics b{display:block;font:30px Georgia,serif;color:#d2b2e7}.journal-metrics span{display:block;font-size:10px;color:#ad94bd;letter-spacing:2px;margin-top:10px}.insight{border:1px solid #9777ab4d!important;border-left:2px solid #b391c9!important;background:linear-gradient(100deg,#3a294655,#1b1326a8)!important;color:#c9b2db}.insight h3{font-size:15px;font-weight:400;letter-spacing:2px;margin:0 0 15px;color:#d9bee9}.journal-stats .insight p{font-size:12px!important}.journal-stats>.button{display:block;margin:25px auto 0;font-size:12px}.battle-results{margin:24px 0}.battle-results article{display:flex;align-items:center;gap:18px;border-bottom:1px solid #8f709f40;padding:15px 0}.journal-index{font:19px Georgia,serif;color:#9f7bb3;min-width:25px}.battle-results article>div{flex:1}.battle-results b{font-size:13px;color:#cfb9df;font-weight:400;letter-spacing:1px}.battle-results small{display:block;font-size:10px;color:#a389b7;margin-top:6px}.battle-results em{font-style:normal;font-size:10px;padding:5px 9px;border:1px solid #ae8dc755;color:#c4a8d8}.battle-results .lost{color:#ca99b0;border-color:#bd799450}.journal-empty{font-size:11px!important;text-align:center;padding:20px;color:#a88dbd}.full-log{counter-reset:none}.full-log p{display:flex;align-items:baseline;gap:17px;padding:13px 10px!important;margin:0!important;border-bottom:1px solid #95779e36!important;font-size:12px!important;line-height:1.9!important}.full-log p:nth-child(odd){background:#4b32561c}.log-number{font:10px Georgia,serif;color:#8e709f;flex:0 0 27px;letter-spacing:1px}
.in-result .page-footer,.in-result:before{display:none}.result-scene{min-height:max(100dvh,850px);background:linear-gradient(90deg,#18101e40,#14101ad9 59%,#100d18e8),url('../assets/battle/sanctuary-background.png') center/cover fixed}.result-hero{position:absolute;left:-22%;bottom:0;width:88%;height:90%;object-fit:contain;object-position:center bottom;z-index:-1;filter:brightness(.83)}.result-defeat .result-hero{filter:brightness(.62) saturate(.55)}.result-content{position:relative;width:58%;margin:35px 0 30px auto;text-align:center}.result-content .result-emblem{width:90px;height:90px;margin:0 auto 17px;color:#b391c7}.result-content .eyebrow{font-size:9px;letter-spacing:3px;color:#a78dba}.result-content h1{font-size:40px;letter-spacing:5px;font-weight:400;margin:23px 0}.result-content .lead{font-size:12px;line-height:2;color:#baa2cd;max-width:470px;margin:0 auto 20px}.result-build{font-size:10px;letter-spacing:2px;color:#b698c9}.result-content .result-metrics{margin:26px 0;padding:22px 0;border-color:#a689b54f}.result-metrics b{font-size:29px;color:#cbb0df;margin-bottom:10px}.result-metrics span{font-size:10px;letter-spacing:1px;color:#ab90bf}.result-content .insight p{font-size:12px}.result-content .center-actions{margin:26px 0 12px;display:flex;justify-content:center;gap:17px}.result-links{display:flex;justify-content:center;gap:25px}.result-content .button{font-size:12px}.result-content .insight small{font-size:10px}.result-defeat .result-emblem{color:#ab859f}
/* Small feedback surfaces and remaining scene controls. */
#toast{font-family:var(--serif);font-size:12px;line-height:1.8;letter-spacing:1px;color:#e4cbf2;padding:14px 29px;border:1px solid #b393c8;background:linear-gradient(110deg,#38233ff5,#171020f5);box-shadow:inset 0 0 0 3px #ad8cc321,0 12px 38px #09050db3;z-index:2000;max-width:min(620px,calc(100% - 36px))}#toast:before{content:'✧';margin-right:12px;color:#caa7e1}.flow-link{border-color:#ac92b378!important;background:linear-gradient(110deg,#392a448a,#18121ee6)!important}.flow-link:not(:disabled):hover{border-color:#d5b5e7!important;box-shadow:inset 0 0 20px #a675bf29,0 0 13px #ab7ed426}.flow-link:disabled{opacity:.44;filter:saturate(.5)}.flow-section-title{color:#dbc6e6}.flow-node.available>span{box-shadow:0 0 15px #b989dc75}.flow-picker{scrollbar-gutter:stable}.front-scene .gallery-navigation button{border-radius:0;box-shadow:inset 0 0 0 2px #b694c21a}.in-battle .hud-relic{color:#c9afd7}.in-battle .stage-power:focus-visible{outline:2px solid #d4b0ed;outline-offset:3px}
@media(max-width:900px){.neutral-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.relic-collection{grid-template-columns:1fr}.result-content{width:65%}.result-hero{left:-32%;width:105%;opacity:.7}.result-content h1{font-size:33px}.rules-book{grid-template-columns:165px 1fr;gap:21px}.rules-book aside{padding:18px 12px}.rules-book aside .front-astrolabe{width:120px;height:130px}.rules-book aside h3{font-size:17px}}
@media(max-width:600px){#modal{width:calc(100% - 22px);max-height:94dvh}#modal-content{max-height:calc(94dvh - 2px)}.modal-header{margin:0 13px;padding:17px 0 14px;gap:10px}.modal-header h2{font-size:17px;letter-spacing:1px}.modal-header>div>small{font-size:7px;letter-spacing:1.5px;margin-bottom:5px}.modal-seal{width:27px;height:35px}.modal-seal:before{width:22px;height:22px}.modal-seal .ui-icon{width:23px;height:27px}.close-button{width:31px;height:31px;font-size:22px}.modal-body{padding:23px 16px 22px}.modal-body p{font-size:12px}.modal-foot{margin:0 15px;padding:10px 0 12px;gap:12px;font-size:8px;letter-spacing:1px}.modal-foot small{font-size:7px;letter-spacing:0}.modal-foot i{font-size:14px}.catalog-tabs{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:17px}.catalog-tabs .button{font-size:10px;padding:10px 6px;letter-spacing:0}.neutral-catalog-intro p{font-size:10px!important}.neutral-catalog-intro{padding-bottom:16px;margin-bottom:18px}.neutral-catalog-grid{grid-template-columns:1fr;gap:21px;max-width:350px;margin:auto}.catalog-art{aspect-ratio:1.5}.catalog-copy h3{font-size:19px;padding:10px}.catalog-copy{padding:0 18px 23px}.catalog-copy h3{margin-inline:-18px}.catalog-copy p{font-size:12px!important}.catalog-art>b{font-size:9px}.catalog-copy>small{font-size:10px}.catalog-copy details p{font-size:11px!important}.deck-row{gap:11px;padding:12px 10px;flex-wrap:wrap}.deck-thumbnail{width:37px!important;flex-basis:37px!important;height:53px}.deck-thumbnail img{width:37px;height:53px}.deck-thumbnail>span{width:18px;height:21px;font-size:13px;line-height:19px;left:-5px}.deck-row b{font-size:12px;letter-spacing:.5px}.deck-row small{font-size:10px;line-height:1.8}.deck-type{font-size:8px;padding:4px 5px}.deck-row>.mini-button{margin-left:0;min-height:35px;font-size:10px;padding:7px 12px}.flow-picker .deck-row{gap:10px}.flow-picker .deck-row>.deck-thumbnail+div{min-width:calc(100% - 52px)!important}.collection-intro{gap:12px;margin-bottom:19px;padding-bottom:17px}.collection-seal{width:39px;height:47px}.collection-seal .ui-icon{width:29px;height:33px}.collection-intro h3{font-size:17px;letter-spacing:1px;margin-bottom:8px}.collection-intro h3 small{font-size:10px;margin-left:7px}.collection-intro p{font-size:10px!important}.owned-relic{padding:16px 12px!important;gap:12px}.item-medallion{width:39px;height:48px}.item-medallion:before{width:27px;height:27px}.item-medallion .ui-icon{width:25px;height:30px}.owned-relic h3{font-size:15px;letter-spacing:1px}.owned-relic small{font-size:7px}.owned-relic p{font-size:11px!important}.potion-item{padding:15px 10px;gap:10px;flex-wrap:wrap}.potion-item b{font-size:14px;letter-spacing:1px}.potion-item small{font-size:10px}.potion-item .mini-button{font-size:10px;padding:7px 10px;min-height:35px}.empty-collection{padding:26px 15px}.empty-collection h3{font-size:17px;letter-spacing:1px}.empty-collection p{font-size:11px!important}.equipment-slot{padding:16px 12px!important}.equipment-slot h3{font-size:15px!important;letter-spacing:1px}.equipment-slot p{font-size:11px!important}.character-sheet{padding:15px 12px!important}.character-sheet h3{font-size:19px!important}.hero-memory{display:block}.memory-portrait{min-height:0;height:200px;background-position:72% 8%;background-size:160% auto}.memory-copy{padding:23px 3px 0}.memory-copy>h3{font-size:30px;margin:15px 0}.memory-copy>p{font-size:12px!important}.memory-traits{margin-top:20px}.memory-traits article{padding:16px 0 3px}.memory-note{font-size:10px!important}.system-banner{padding:20px!important;min-height:140px;background-size:130% auto;background-position:110% 14%}.system-banner>b{font-size:25px!important}.system-banner p{font-size:10px!important}.battle-settings{gap:10px;margin-top:19px}.battle-settings .button{font-size:10px;letter-spacing:0;padding:11px 8px}.battle-settings>p{font-size:10px!important}.rules-book{display:block}.rules-book aside{position:static;text-align:left;padding:16px 17px;margin-bottom:22px;min-height:130px}.rules-book aside .front-astrolabe{float:right;width:86px;height:95px;margin:0 0 0 8px;opacity:.65}.rules-book aside h3{font-size:18px;margin:7px 0 10px}.rules-book aside p{font-size:10px!important}.rules-book aside>span{font-size:7px;letter-spacing:1px;margin-top:16px;padding-top:12px;clear:both}.rules-chapters summary{padding:14px 11px;font-size:12px;gap:10px;letter-spacing:.5px}.rules-chapters summary small{font-size:9px}.rules-chapters details>div{padding:2px 13px 8px}.rules-chapters p{font-size:11px!important}.journal-metrics{gap:8px;margin:17px 0 20px}.journal-metrics>div{padding:16px 6px}.journal-metrics b{font-size:25px}.journal-metrics span{font-size:8px;letter-spacing:1px;margin-top:8px}.journal-stats .insight{padding:15px!important}.journal-stats .insight p{font-size:11px!important}.battle-results article{gap:11px}.battle-results b{font-size:12px}.battle-results small{font-size:9px}.journal-index{font-size:16px;min-width:20px}.battle-results em{font-size:9px;padding:4px 7px}.full-log p{font-size:11px!important;padding:12px 3px!important;gap:10px}.log-number{flex-basis:22px;font-size:9px}.result-scene{background-attachment:scroll;min-height:100dvh}.result-hero{left:-53%;top:75px;width:155%;height:460px;bottom:auto;opacity:.84;object-position:center top}.result-content{width:100%;margin:315px 0 25px;padding:24px 15px;background:linear-gradient(#1b1224ef,#130d1bef);border:1px solid #ad8bc077}.result-content .result-emblem{width:64px;height:64px;margin-bottom:15px}.result-content .eyebrow{font-size:7px;letter-spacing:1px}.result-content h1{font-size:28px;letter-spacing:2px;margin:18px 0}.result-content .lead{font-size:11px;line-height:2}.result-build{font-size:9px;letter-spacing:0}.result-content .result-metrics{grid-template-columns:repeat(2,1fr);gap:22px;margin:22px 0;padding:20px 0}.result-metrics b{font-size:26px}.result-content .insight{padding:15px}.result-content .insight p{font-size:11px}.result-content .insight small{font-size:9px}.result-content .center-actions{gap:10px;margin:22px 0 12px;flex-direction:column}.result-content .button{width:100%;font-size:11px}.result-links{gap:18px}.result-links .text-button{font-size:9px}.hud-relic>.ui-icon{width:18px;height:21px}.flow-tarot-icon .relic-sigil>.ui-icon{width:44px;height:51px}#toast{font-size:11px;padding:12px 17px;letter-spacing:0}}
.modal-notice{flex:none;margin:0 20px 12px;padding:12px 16px;border:1px solid #c19ed677;background:linear-gradient(90deg,#54345fcf,#24172fe8);color:#eddbf7;font:12px/1.8 var(--serif)}.modal-notice:before{content:'✧';margin-right:10px;color:#d0afe7}#ui-tooltip{position:fixed;z-index:3000;pointer-events:none;max-width:min(285px,calc(100vw - 20px));padding:12px 16px;border:1px solid #b094c583;background:linear-gradient(115deg,#34233ef5,#17101ff7);box-shadow:inset 0 0 0 3px #a884ba1c,0 10px 28px #0008;font:11px/1.9 var(--serif);color:#ddc5ed;letter-spacing:.5px;white-space:normal;overflow-wrap:anywhere}#ui-tooltip:before{content:'✧';color:#bda0d2;margin-right:8px}
@media(min-width:601px){.result-content{padding:23px 25px;background:linear-gradient(110deg,#18111dd9,#15101d55);border:1px solid #a080af33}.result-content .result-emblem{width:75px;height:75px}.result-content h1{margin-top:17px}.result-content .result-metrics{margin:22px 0}}
@media(prefers-reduced-motion:reduce){#modal *{transition:none!important;animation:none!important}}

/* Expedition balance pass: compact stock labels and illustrated event identities. */
.flow-event.event-well{--flow-art:url('../assets/scenes/memory-well.webp')}.flow-event.event-forge{--flow-art:url('../assets/scenes/silver-loom.webp')}.flow-event.event-archive{--flow-art:url('../assets/scenes/sealed-archive.webp')}.flow-event.event-pact{--flow-art:url('../assets/scenes/raven-shop.png')}.flow-shop.shop-library{--flow-art:url('../assets/scenes/book-apothecary.webp')}
.shop-curator-note{font-size:11px;color:#b8acbf;line-height:1.8;margin:4px 0 14px}.shop-sale{display:block;min-height:26px;text-align:center;color:#dcc2ee;font-size:11px;letter-spacing:1px}.shop-sale del{color:#998aa6;margin:0 6px}.shop-sale.regular{color:#a49ba9;font-size:9px}.shop-stock-footer{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:20px;border-top:1px solid #aa93b13b;padding-top:17px}.shop-stock-footer small{color:#a79aaf;font-size:10px}.shop-upgrade-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid #a38db52e}.shop-upgrade-row>.deck-row{flex:1;min-width:0;border:0}.shop-upgrade-row>.mini-button{flex:none}.flow-event .flow-link:disabled{opacity:.52;filter:saturate(.4)}.stagger-meter{font-size:10px!important;white-space:normal}
@media(max-width:700px){.shop-upgrade-row{flex-wrap:wrap;gap:0;padding:8px 0}.shop-upgrade-row>.mini-button{margin:0 0 10px auto}.shop-curator-note{font-size:10px}.shop-stock-footer .button{width:100%;font-size:11px}.shop-sale{font-size:10px}.shop-sale.regular{font-size:9px}.flow-shop-services{grid-template-columns:1fr!important}}

.in-battle .enemy-line.three-enemies{width:51%;gap:12px}.in-battle .three-enemies .enemy{width:31%;flex:1;min-width:0}.in-battle .three-enemies .enemy .actor-figure{height:clamp(110px,18vh,195px)}.in-battle .three-enemies .enemy .intent{max-width:100%}.in-battle .three-enemies .actor-caption b{font-size:12px}.in-battle .three-enemies .star-marks i{font-size:10px}
@media(max-width:700px){.in-battle .enemy-line.three-enemies{width:66%;right:2%;gap:7px}.in-battle .three-enemies .enemy .actor-figure{height:105px}.in-battle .three-enemies .actor-caption b{font-size:8px}.in-battle .three-enemies .intent small{font-size:7px}.in-battle .three-enemies .intent-special{font-size:7px!important}.in-battle .three-enemies .star-marks i{font-size:7px}.in-battle .three-enemies .star-marks{gap:0}.in-battle .three-enemies .actor-statuses{gap:0}.in-battle .three-enemies .enemy .actor-health b{font-size:9px}}
