.records-screen,.records-result{width:min(1120px,100%);margin:auto;padding:24px 18px 50px}.records-heading,.record-result-heading{padding:24px;background:linear-gradient(125deg,#092a35ee,#091923d9);border:1px solid #b59b6266}.records-heading h1{font-size:clamp(25px,5vw,42px);margin:5px 0}.records-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px}.records-tabs button{flex:1;padding:12px 8px;font-size:14px;border:1px solid #58818a;background:#0d2730;color:#eee}.records-tabs button[aria-pressed=true]{border-color:#ebce87;box-shadow:inset 0 -3px #ebce87;color:#ffe5a7}.bestiary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.bestiary-entry{background:linear-gradient(145deg,#0d2935,#071720);border:1px solid #56747b;padding:18px;position:relative}.bestiary-art{height:220px;display:flex;align-items:center;justify-content:center}.bestiary-art .illustrated-sprite{width:100%;height:100%;object-fit:contain;max-width:100%;position:static;filter:drop-shadow(0 10px 12px #0008)}.bestiary-entry h2{font-size:21px}.bestiary-entry p{font-size:16px;line-height:1.8}.bestiary-entry.undiscovered .bestiary-art{filter:brightness(0);opacity:.7}.kill-count{color:#f4d99a;font-size:28px}.kill-count small{font-size:14px}.records-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:18px 0 30px}.records-card-grid .card{width:100%;min-width:0;max-width:none;transform:none;flex:none}.unknown-card{min-height:260px;display:grid;place-content:center;text-align:center;border:1px solid #927c4e;background:linear-gradient(135deg,#142d35,#061820);color:#709297}.unknown-card span{font-size:55px}.records-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.record-module{display:flex;gap:14px;padding:20px;background:#0d2630;border:1px solid #45636a}.record-module h2,.record-module h3{font-size:19px;margin:0 0 8px}.record-module p{font-size:15px;line-height:1.8;margin:8px 0}.record-orb{display:block;width:26px;height:26px;flex:0 0 26px;margin-top:4px;border-radius:50%;border:2px solid #d6bb80;background:radial-gradient(circle at 30% 20%,#fff,#a4bdc7 25%,#334b59 75%);box-shadow:0 0 0 3px #172e36}.record-orb.Offense{background:radial-gradient(circle at 30% 20%,#fff,#dc7390 25%,#741d3e 75%)}.record-orb.Skill{background:radial-gradient(circle at 30% 20%,#fff,#68c9ef 25%,#235677 75%)}.record-orb.Nexus{background:radial-gradient(circle at 30% 20%,#fff,#83e7af 25%,#216c56 75%)}.run-history{display:grid;gap:12px}.history-entry{display:grid;grid-template-columns:85px 70px 1fr auto;align-items:center;text-align:left;gap:15px;padding:20px;color:#eee;background:#0b2732;border:1px solid #5d797f}.history-entry>strong{font-size:32px}.history-entry small{font-size:16px}.history-outcome{color:#a0b9c8;font-size:14px}.history-outcome.clear{color:#f5d087}.record-result-heading h1{font-size:64px!important;line-height:1.1!important;margin:8px 0!important}.record-result-heading h1 small{font-size:28px}.record-overview{display:grid;grid-template-columns:1fr 250px;gap:25px;margin:24px 0}.record-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:center}.record-stat-grid>div{padding:20px;background:#0c2832;border-top:2px solid #c1a568;display:flex;flex-direction:column;gap:8px}.record-stat-grid strong{font-size:40px;color:#f8dc99}.record-stat-grid span{font-size:15px}.representative-card>.card{width:100%;min-width:0;max-width:none;transform:none}.representative-card>p{font-size:14px}.run-record h2{font-size:24px;margin:30px 0 15px}.record-blessings{display:flex;flex-wrap:wrap;gap:10px}.record-blessings span{background:#122f39;border:1px solid #7e998e;padding:10px 14px}.record-definition{background:#0b212ccc;padding:16px;line-height:1.8;font-size:14px}.record-definition summary{cursor:pointer}.records-result{text-align:left!important}.records-result .result-actions{position:sticky;bottom:0;padding:12px;background:#071b21ed;flex-wrap:wrap}.city-menu{gap:12px}.city-menu button{min-height:58px}.encounter-text{white-space:pre-line}.chain-tag{display:inline-block;padding:5px 12px;color:#f2d994;border:1px solid #b59756;background:#132c35;font-size:14px}
@media(max-width:600px){.records-screen,.records-result{padding:18px 12px 30px}.bestiary-grid,.records-module-grid{grid-template-columns:1fr}.bestiary-art{height:245px}.records-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.record-overview{grid-template-columns:1fr 145px;gap:10px}.record-stat-grid{gap:8px}.record-stat-grid>div{padding:12px 8px}.record-stat-grid strong{font-size:28px}.record-stat-grid span{font-size:13px}.history-entry{grid-template-columns:75px 60px 1fr;padding:15px 12px;gap:8px}.history-entry b{grid-column:3;font-size:14px}.history-entry>span:nth-child(3){font-size:13px}.city-menu button{min-height:50px;padding-block:10px}.records-tabs button{flex-basis:40%}.records-card-grid .cardbody p,.representative-card .cardbody p{font-size:14px}.records-card-grid .card,.representative-card .card{height:auto!important;min-height:330px}.records-card-grid .cardbody,.representative-card .cardbody{overflow:visible}.records-card-grid .cardbody p,.representative-card .cardbody p{-webkit-line-clamp:unset;max-height:none}.records-result .result-actions button{font-size:14px}.record-overview .representative-card .cardhead{min-height:50px}}
.save-alert{position:fixed;z-index:10000;bottom:0;left:0;right:0;background:#492021;color:#fff;padding:12px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px}.save-alert button{padding:8px;border:1px solid #eead9a}
.hand-rack .draw-pending{visibility:hidden}.hand-rack .draw-ghost{pointer-events:none;flex-shrink:0}.defeat-cover{position:fixed;inset:0;background:#000;z-index:20000;pointer-events:all;opacity:0}

/* Hub actions share one rhythm, including the entrance action. */
.waldmeer-hub{display:flex;flex-direction:column;min-height:100svh;padding-bottom:24px}
.waldmeer-hub .city-menu{margin:clamp(8px,2vh,24px) 0 12px;gap:12px}
.waldmeer-hub .city-enter{position:relative;bottom:auto;left:auto;right:auto;margin:0}
.waldmeer-hub .city-character-label{top:35%;bottom:auto}
.waldmeer-hub .resume-run{position:static;margin:0 5vw 12px auto}
/* The anchored left edge makes loss retract from right to left. */
.combat-app .bar{position:relative;overflow:hidden}
.combat-app .slant-health .bar{position:absolute}
.combat-app .bar>i{display:block;transform-origin:left;transition:width 450ms ease-out}
.hp-forecast{position:absolute;top:0;bottom:0;z-index:2;pointer-events:none}
.hp-forecast.loss{background:repeating-linear-gradient(125deg,#ffb195ee 0 4px,#bd2435dd 4px 8px);box-shadow:inset 0 0 0 1px #ffb4a9}
.hp-forecast.gain{background:repeating-linear-gradient(125deg,#d3ffdcee 0 4px,#58ed94dd 4px 8px);box-shadow:inset 0 0 0 1px #d8ffe5}
.hp-preview-label{color:#fff0ad!important;font-size:11px!important;margin-left:3px;white-space:nowrap}
.battle-stage .enemy.dead{opacity:0;pointer-events:none}
.battle-stage .enemy.dead.death-pending{opacity:1}
.battle-stage .enemy.dead.death-pending .enemy-art{filter:drop-shadow(0 7px 8px #0008)}
@media(max-width:600px){.waldmeer-hub .city-character-label{display:none}.enemy-hp .hp-preview-label{font-size:9px!important}.slant-health .hp-preview-label{font-size:10px!important}}
@media(prefers-reduced-motion:reduce){.combat-app .bar>i{transition-duration:0ms}}

.enemy-hp>[data-hp-number]{margin-left:0;color:inherit}

.ice-shards{color:#adf2ff!important;border:1px solid #87cbde88;background:#09273ad9;padding:3px 7px;border-radius:5px;white-space:nowrap}.module-orb.Skill,.record-orb.Skill{background:radial-gradient(circle at 30% 20%,#fff,#f0d575 25%,#8c661d 75%)}
.tp-stars>.status.iceShards{font-size:12px;line-height:1.3;letter-spacing:0;color:#bcefff;text-shadow:none;white-space:nowrap;flex-shrink:0}
.saved-deck-open{display:block;text-align:left;width:100%;color:inherit}.saved-deck-open h2{overflow-wrap:anywhere;margin-bottom:24px}.saved-deck-actions{display:flex;gap:10px;margin-top:20px}.saved-deck-actions button{flex:1}#saved-deck-name{display:block;width:100%;margin:12px 0 22px;padding:12px;background:#071e28;color:#fff;border:1px solid #8bacb4}.revelation-screen .choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:700px){.revelation-screen .choice-grid{grid-template-columns:1fr}}
