:root{--night:#0d0c0a;--lacquer:#1a1712;--lacquer-raised:#26211a;--ivory:#f3ead8;--ivory-muted:#b8ab94;--gold:#d4af37;--champagne:#f1d98f;--abyss:#1f5a5c;--abyss-line:#43a0a2;--crimson:#a8322c;--crimson-text:#f07a6c;--jade:#5fb383;--sapphire:#6f97cf;--text-xs:.8125rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.75rem;color:#1d2423;font-synthesis:none;text-rendering:optimizelegibility;background:#edf0ed;font-family:PingFang TC,Noto Sans TC,Microsoft JhengHei,system-ui,sans-serif}*{box-sizing:border-box}html{background:#edf0ed;min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,a{font:inherit}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #e3ad4f}button:disabled{cursor:not-allowed}.app-shell{background-color:#edf0ed;background-image:linear-gradient(#d8ded9 1px,#0000 1px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:100% 40px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;min-height:100vh}.app-bar{color:#f5f5ef;background:#18201f;border-bottom:3px solid #cc8731;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr);align-items:center;min-height:72px;padding:12px clamp(20px,4vw,64px);display:grid}.brand{width:fit-content;min-height:44px;color:inherit;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-mark{color:#17201e;background:#e3ad4f;border:2px solid #f1d99e;border-radius:50%;place-items:center;width:40px;height:40px;font-family:Georgia,serif;font-size:24px;font-weight:800;display:grid}.brand strong,.brand small{letter-spacing:0;display:block}.brand strong{font-size:18px}.brand small{color:#aebbb6;margin-top:1px;font-size:12px}.app-bar nav{align-self:stretch;align-items:center;display:flex}.nav-link{color:#aebbb6;border-bottom:2px solid #0000;align-items:center;height:100%;padding:0 16px;text-decoration:none;display:inline-flex}.nav-link:hover,.nav-link-active{color:#fff;border-bottom-color:#e3ad4f}.environment-badge{color:#c7d5d0;border:1px solid #53605c;border-radius:4px;justify-self:end;padding:5px 8px;font-size:12px;text-decoration:none}.auth-screen{place-items:center;min-height:calc(100vh - 72px);padding:32px 20px;display:grid}.auth-panel{background:#fff;border:1px solid #cbd2ce;border-top:5px solid #cc8731;border-radius:8px;width:min(460px,100%);padding:clamp(24px,5vw,42px);box-shadow:0 18px 45px #1f2b281f}.auth-panel h1{margin-bottom:24px;font-size:clamp(30px,7vw,46px)}.auth-form,.auth-form label{gap:8px;display:grid}.auth-form{gap:16px}.auth-form label{color:#53605c;font-size:13px;font-weight:750}.auth-form input{color:#1d2926;background:#fff;border:1px solid #aebbb6;border-radius:4px;min-height:44px;padding:9px 11px}.auth-form input:focus{border-color:#9a5b24;outline:2px solid #f1dfbd}.auth-message{color:#6f4118;background:#fbf0dc;border-left:3px solid #cc8731;margin:0;padding:10px 12px}.auth-links,.auth-actions{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.auth-links a,.auth-panel>a{color:#255854}.account-page{gap:22px;display:grid}.account-password-form{max-width:520px}.session-list{gap:10px;margin-top:16px;display:grid}.session-card{background:#f5f6f3;border:1px solid #cbd2ce;border-radius:5px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.session-card strong,.session-card small{display:block}.session-card small{color:#68736f;margin-top:5px}.page-shell{width:min(1180px,100% - 40px);margin:0 auto;padding:48px 0 64px}.compact-page{width:min(860px,100% - 40px)}.page-heading{justify-content:space-between;align-items:end;gap:32px;margin-bottom:28px;display:flex}.eyebrow{color:#a05d20;text-transform:uppercase;margin:0 0 7px;font-size:12px;font-weight:800}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{color:#17201e;letter-spacing:0;margin-top:0}h1{max-width:720px;margin-bottom:10px;font-family:Georgia,Times New Roman,serif;font-size:48px;line-height:1.05}h2{margin-bottom:8px;font-size:22px}h3{margin-bottom:6px;font-size:17px}.lead{color:#56615e;max-width:620px;margin:0;font-size:17px;line-height:1.65}.wallet-summary{color:#f7f3e9;background:#255854;border-left:5px solid #e3ad4f;border-radius:6px;flex:0 0 190px;padding:18px 20px}.wallet-summary span,.wallet-summary small,.wallet-summary strong{display:block}.wallet-summary span,.wallet-summary small{color:#c9d8d2;font-size:12px}.wallet-summary strong{letter-spacing:0;margin:5px 0;font-family:Georgia,Times New Roman,serif;font-size:31px}.lobby-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr);gap:18px;display:grid}.contract-panel,.status-panel,.detail-panel,.fatal-panel{background:#fff;border:1px solid #cbd2ce;border-radius:8px;overflow:hidden;box-shadow:0 12px 28px #1f2b2814}.contract-panel{grid-template-columns:minmax(260px,.95fr) minmax(320px,1.05fr);min-height:364px;display:grid}.zone-map{object-fit:cover;width:100%;height:100%;min-height:300px;display:block}.contract-body{flex-direction:column;justify-content:space-between;gap:22px;padding:28px;display:flex}.contract-body p:not(.eyebrow){color:#5d6865;margin:0;line-height:1.6}.contract-options{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.contract-options legend{margin-bottom:10px;font-weight:750}.contract-option{overflow-wrap:anywhere;cursor:pointer;background:#f5f6f3;border:2px solid #cbd2ce;border-radius:6px;align-items:flex-start;gap:12px;min-height:44px;padding:14px;display:flex}.contract-option:has(input:checked){background:#edf4ed;border-color:#3d6853}.contract-option:has(input:focus-visible){outline-offset:3px;outline:3px solid #3d6853}.contract-option:has(input:disabled){cursor:default;background:#eceeeb}.contract-option input{accent-color:#3d6853;flex:none;width:18px;height:18px;margin:3px 0 0}.contract-option-details{color:#4f5d56;gap:4px;margin-top:6px;font-size:.875rem;line-height:1.5;display:grid}.contract-lock{font-weight:650}.fortune-note{color:#4f5d56;gap:4px;font-size:.875rem;line-height:1.5;display:grid}.fortune-note p{margin:0}.contract-body .departure-button{min-height:44px}.contract-stats,.expedition-facts{background:#d7ddda;border:1px solid #d7ddda;gap:1px;margin:0;display:grid}.contract-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.contract-stats div,.expedition-facts div{background:#f5f6f3;min-width:0;padding:12px}.contract-stats dt,.expedition-facts dt{color:#6e7975;font-size:11px}.contract-stats dd,.expedition-facts dd{color:#1f2927;overflow-wrap:anywhere;margin:5px 0 0;font-size:14px;font-weight:750}.primary-button,.secondary-button{border-radius:5px;justify-content:center;align-items:center;min-height:42px;padding:9px 15px;font-weight:750;text-decoration:none;display:inline-flex}.primary-button{color:#fff;cursor:pointer;background:#9a5b24;border:1px solid #774519;width:100%}.primary-button:hover{background:#7f481c}.primary-button:disabled{color:#75807c;background:#dde2de;border-color:#c8d0cb}.secondary-button{color:#fff;cursor:pointer;background:#255854;border:1px solid #1d4845;width:fit-content}.secondary-button:hover{background:#1d4845}.secondary-button:disabled{color:#d4dcda;background:#687b76}.creation-error{background:#f9e4df;border-left:3px solid #b94a3a;border-radius:4px;padding:10px 12px;color:#8a2e22!important}.status-panel{flex-direction:column;min-height:364px;padding:26px;display:flex}.section-title{justify-content:space-between;align-items:start;gap:16px;display:flex}.status-dot{background:#4f8a5f;border:2px solid #d8eadc;border-radius:50%;width:10px;height:10px;margin-top:5px}.status-message{color:#5d6865;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;min-height:210px;display:flex}.status-message p{margin:0 0 18px;line-height:1.6}.status-symbol{color:#255854;border:2px solid #8fb0a8;border-radius:50%;place-items:center;width:38px;height:38px;margin-bottom:16px;font-size:24px;font-weight:800;display:grid}.status-symbol-error{color:#a84131;border-color:#d9988e}.loading-bar{background:#d8dfdb;border-radius:2px;width:120px;height:5px;margin-bottom:18px;overflow:hidden}.loading-bar:after{content:"";background:#cc8731;width:45%;height:100%;animation:1.2s ease-in-out infinite alternate loading;display:block}@keyframes loading{0%{transform:translate(-10%)}to{transform:translate(135%)}}.active-expedition{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:24px;display:flex}.active-expedition p{color:#68736f;margin:0}.state-label,.capacity-label{color:#6e4118;background:#f1dfbd;border-radius:4px;padding:4px 7px;font-size:12px;font-weight:800;display:inline-block}.roster-section{border-top:1px solid #c4ccc7;margin-top:42px;padding-top:30px}.hero-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px;display:grid}.hero-card{background:#fff;border:1px solid #cbd2ce;border-top:4px solid #255854;border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:112px;padding:18px;display:grid}.hero-card-vanguard{border-top-color:#b5543d}.hero-card-warden{border-top-color:#3c6d7b}.hero-card-ranger{border-top-color:#7b6e3b}.hero-card h3,.hero-card p{margin:0}.hero-card p{color:#67716e;margin-top:4px;font-size:13px}.hero-card>strong{color:#53605c;font-size:12px}.hero-index{color:#a1aaa7;font-family:Georgia,Times New Roman,serif;font-size:22px}.detail-panel{min-height:300px;padding:28px}.expedition-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.expedition-detail{gap:26px;display:grid}.route-section{gap:14px;display:grid}.route-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.route-map{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.route-node{background:#f2f4f1;border:1px solid #cbd3cf;border-left:4px solid #8b9b95;border-radius:5px;gap:4px;min-width:0;padding:11px 13px;display:grid}.route-node-skipped{opacity:.58;border-left-color:#9aa19e}.route-node span,.route-node small{color:#65706d;font-size:11px}.route-node strong{overflow-wrap:anywhere;font-size:13px}.route-node em{color:#8a6a1f;font-size:11px;font-style:normal;font-weight:650}.route-actions{gap:10px;display:grid}.route-actions h3{margin:0}.route-card{color:#25302d;text-align:left;cursor:pointer;background:#f5f6f3;border:1px solid #bdc8c3;border-left:4px solid #cc8731;border-radius:6px;gap:7px;min-width:0;padding:17px;display:grid}.route-card:hover:not(:disabled){background:#f9f2e7;border-color:#b7772e}.route-card:disabled{opacity:.65}.route-card span,.route-card small{color:#65706d}.route-card span{font-size:12px;font-weight:800}.route-card strong{overflow-wrap:anywhere}.route-card small{font-size:12px}.encounter-panel{color:#e7efeb;background:#253c39;border-left:5px solid #b5543d;border-radius:6px;padding:20px}.encounter-panel h2{color:#fff}.encounter-panel p:not(.eyebrow),.encounter-panel ul{color:#cfdbd6;margin-bottom:0}.encounter-panel li+li{margin-top:5px}.event-options{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:18px;display:grid}.event-option{color:#f3f0e6;text-align:left;cursor:pointer;background:#314b47;border:1px solid #769087;border-left:4px solid #e3ad4f;border-radius:5px;gap:7px;padding:14px;display:grid}.event-option:hover:not(:disabled){background:#3b5b55}.event-option:disabled{opacity:.55}.event-option small{color:#b9cbc4}.boss-ready-panel{border-left-color:#e3ad4f;gap:12px;display:grid}.boss-ready-panel .end-turn-button{width:fit-content}.battle-heading,.battle-footer{justify-content:space-between;align-items:center;gap:18px;display:flex}.battle-resource{text-align:center;background:#162a27;border:1px solid #56716a;border-radius:5px;min-width:78px;padding:9px 12px;display:grid}.battle-resource span,.battle-unit span,.battle-unit small,.battle-card span,.battle-card small,.battle-footer small{color:#b9cbc4;font-size:11px}.battle-resource strong{color:#f1c66d;font-size:22px}.battle-units,.battle-hand{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:9px;margin-top:14px;display:grid}.battle-unit{background:#1e3330;border:1px solid #536d67;border-left:4px solid #5f9e8f;border-radius:5px;gap:4px;min-width:0;padding:12px;display:grid}.battle-unit-enemy{border-left-color:#c26952}.battle-unit strong,.battle-card strong{overflow-wrap:anywhere}.battle-statuses{flex-wrap:wrap;gap:5px;margin:3px 0 0;padding:0;list-style:none;display:flex}.battle-statuses li{color:#d8e7e1;background:#314b46;border:1px solid #66857d;border-radius:999px;padding:3px 6px;font-size:10px}.battle-hand{border-top:1px solid #536d67;margin-top:20px;padding-top:16px}.battle-card{color:#f3f0e6;text-align:left;cursor:pointer;background:#3c3125;border:1px solid #a97b42;border-top:4px solid #e3ad4f;border-radius:5px;gap:6px;min-width:0;min-height:98px;padding:12px;display:grid}.battle-card-control{align-content:start;gap:7px;min-width:0;display:grid}.battle-card-control .battle-card{width:100%;height:100%}.battle-target-picker{color:#b9cbc4;gap:4px;font-size:11px;display:grid}.battle-target-picker select{color:#f3f0e6;background:#243a36;border:1px solid #6f8c84;border-radius:4px;width:100%;min-width:0;padding:7px 8px}.battle-card-reason{color:#f2b6aa!important}.battle-card:hover:not(:disabled){background:#51402d}.battle-card:disabled{opacity:.48}.battle-footer{margin-top:18px}.end-turn-button{color:#18201f;cursor:pointer;background:#e3ad4f;border:1px solid #f1d99e;border-radius:5px;flex:none;padding:9px 14px;font-weight:800}.end-turn-button:hover:not(:disabled){background:#f1c66d}.abandon-button{color:#8a2e22;cursor:pointer;background:0 0;border:1px solid #c98c83;border-radius:5px;width:fit-content;padding:9px 13px}.abandon-button:hover:not(:disabled){background:#f9e4df}.abandon-confirmation{color:#6f261d;background:#fff3ef;border:1px solid #c98c83;border-radius:6px;gap:8px;width:fit-content;padding:12px;display:grid}.abandon-confirmation p{margin:0}.abandon-confirmation>div{flex-wrap:wrap;gap:8px;display:flex}.abandon-cancel-button{color:#34453d;cursor:pointer;background:#fff;border:1px solid #8a9a91;border-radius:5px;padding:9px 13px}.abandon-cancel-button:hover:not(:disabled){background:#eef3f0}.fatal-screen{background:#edf0ed;place-items:center;min-height:100vh;padding:24px;display:grid}.fatal-panel{width:min(560px,100%);padding:32px}.fatal-panel p:not(.eyebrow){color:#5d6865;line-height:1.6}.page-loading{color:#56615e;width:min(1180px,100% - 40px);margin:0 auto;padding:64px 0}.collection-page{gap:22px;display:grid}.collection-page .page-heading{margin-bottom:6px}.collection-message{color:#254d47;background:#dfece7;border-left:4px solid #4f8d7d;border-radius:5px;margin:0;padding:12px 14px}.collection-panel{background:#fff;border:1px solid #cbd2ce;border-radius:8px;padding:26px;box-shadow:0 12px 28px #1f2b280f}.preset-toolbar{grid-template-columns:repeat(2,minmax(180px,1fr)) repeat(2,auto);align-items:end;gap:12px;margin-top:16px;display:grid}.preset-toolbar label{color:#53605c;gap:6px;font-size:12px;font-weight:700;display:grid}.preset-toolbar input,.preset-toolbar select{color:#1d2926;background:#fff;border:1px solid #aebbb6;border-radius:4px;min-height:42px;padding:8px 10px}.loadout-grid,.inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px;display:grid}.loadout-hero,.inventory-card{background:#f5f6f3;border:1px solid #cbd2ce;border-top:4px solid #255854;border-radius:6px;min-width:0;padding:18px}.loadout-hero>p,.inventory-card p{color:#68736f;margin:0 0 14px;font-size:12px}.loadout-hero label{color:#53605c;gap:5px;margin-top:10px;font-size:12px;font-weight:700;display:grid}.loadout-hero select{color:#1d2926;background:#fff;border:1px solid #aebbb6;border-radius:4px;width:100%;min-height:40px;padding:7px 9px}.collection-save{width:min(320px,100%);margin-top:20px}.inventory-card{border-top-color:#cc8731;flex-direction:column;justify-content:space-between;gap:18px;display:flex}.inventory-card small{color:#68736f;margin-top:5px;display:block}.inventory-actions{flex-wrap:wrap;gap:8px;display:flex}.summon-page,.summon-history-page{gap:24px;display:grid}.summon-page .page-heading,.summon-history-page .page-heading{margin-bottom:4px}.summon-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:18px;display:grid}.summon-banner-panel,.summon-rates-panel,.summon-results,.summon-history-entry{background:#fff;border:1px solid #cbd2ce;border-radius:8px;padding:26px;box-shadow:0 12px 28px #1f2b2812}.summon-banner-panel{border-top:5px solid #cc8731;gap:24px;display:grid}.summon-banner-copy p:not(.eyebrow),.summon-pity p{color:#5d6865;margin-bottom:0;line-height:1.65}.summon-pity{background:#f5f6f3;border:1px solid #d3dad6;border-radius:6px;padding:18px}.summon-pity>div{justify-content:space-between;gap:16px;display:flex}.summon-pity progress{accent-color:#cc8731;width:100%;height:10px;margin-top:12px}.summon-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.summon-actions .secondary-button{width:100%}.text-link{color:#255854;width:fit-content;font-weight:750}.summon-rate-list{background:#d7ddda;border:1px solid #d7ddda;gap:1px;margin:16px 0 22px;display:grid}.summon-rate-list div{background:#f5f6f3;justify-content:space-between;padding:13px;display:flex}.summon-rate-list dt{font-weight:800}.summon-rate-list dd{color:#9a5b24;margin:0;font-weight:800}.summon-rates-panel summary{color:#255854;cursor:pointer;font-weight:750}.summon-pool-list,.summon-history-entry ul{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.summon-pool-list li,.summon-history-entry li{background:#f5f6f3;border-radius:4px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:10px;display:flex}.summon-pool-list strong,.summon-pool-list small{display:block}.summon-pool-list small,.summon-history-entry small{color:#68736f}.summon-results{gap:16px;display:grid}.summon-result-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.summon-result-card{background:#f5f6f3;border:1px solid #cbd2ce;border-top:4px solid #71817b;border-radius:6px;min-width:0;padding:17px}.summon-result-card.rarity-sr,.summon-result-card.rarity-ssr,.summon-result-card.rarity-ur,.summon-result-card.rarity-sp{background:#fbf4e7;border-top-color:#cc8731}.summon-result-card h3{margin:8px 0 5px}.summon-result-card p{color:#68736f;margin:0;font-size:13px}.summon-result-card>strong{color:#8a4e19;margin-top:10px;display:inline-block}.summon-rarity{color:#fff;background:#255854;border-radius:3px;padding:3px 6px;font-size:11px;font-weight:850;display:inline-block}.summon-history-list{gap:14px;display:grid}.summon-history-entry header{border-bottom:1px solid #d7ddda;justify-content:space-between;align-items:start;gap:16px;padding-bottom:14px;display:flex}.summon-history-entry header>span{color:#6e4118;font-weight:800}.summon-history-entry li{justify-content:flex-start}.summon-history-entry li strong{flex:1}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=900px){.lobby-grid,.contract-panel{grid-template-columns:1fr}.zone-map{aspect-ratio:16/7;height:auto;min-height:0}.status-panel{min-height:300px}.hero-grid,.loadout-grid,.inventory-grid{grid-template-columns:1fr}.preset-toolbar{grid-template-columns:1fr 1fr}.summon-grid{grid-template-columns:1fr}}@media (width<=640px){.app-bar{grid-template-columns:minmax(0,1fr) auto;min-height:64px;padding:10px 16px}.app-bar nav{display:none}.brand-mark{width:36px;height:36px;font-size:21px}.environment-badge{font-size:11px}.page-shell,.compact-page{width:min(100% - 24px,1180px);padding:30px 0 48px}.page-heading{flex-direction:column;align-items:stretch;gap:20px}h1{font-size:38px}.lead{font-size:15px}.wallet-summary{flex-basis:auto}.contract-body,.status-panel,.detail-panel{padding:20px}.contract-stats,.expedition-facts{grid-template-columns:1fr}.hero-card{grid-template-columns:auto minmax(0,1fr)}.hero-card>strong{grid-column:2}.preset-toolbar,.summon-actions{grid-template-columns:1fr}.summon-banner-panel,.summon-rates-panel,.summon-results,.summon-history-entry{padding:20px}.summon-history-entry li{flex-wrap:wrap}}.expedition-stage{min-height:calc(100vh - 72px);color:var(--ivory);background:radial-gradient(circle at 50% 0%, #1f5a5c38, transparent 42rem), linear-gradient(#d4af370a 1px, transparent 1px), var(--night);background-size:auto,100% 48px,auto}.expedition-page{width:min(90rem,100% - 2.5rem);color:var(--ivory);font-size:var(--text-md);font-variant-numeric:tabular-nums;padding:2rem 0 4rem;line-height:1.5}.expedition-page h1,.expedition-page h2,.expedition-page h3{color:var(--ivory);line-height:1.25}.expedition-page h1{font-size:var(--text-xl);margin:0}.expedition-page h2{font-size:var(--text-lg)}.expedition-page h3,.expedition-page p{font-size:var(--text-md)}.expedition-page .eyebrow{color:var(--gold);font-size:var(--text-xs)}.expedition-page-heading{align-items:center;margin-bottom:1rem}.expedition-surface{min-height:18rem}.expedition-detail{gap:1rem}.expedition-hud{background:#d4af3759;border:1px solid #d4af3780;border-radius:.75rem;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.expedition-hud>div{background:var(--lacquer);min-width:0;padding:.75rem 1rem}.expedition-hud dt{color:var(--ivory-muted);font-size:var(--text-xs)}.expedition-hud dd{color:var(--ivory);font-size:var(--text-sm);overflow-wrap:anywhere;margin:.25rem 0 0;font-weight:800}.game-panel{min-width:0;color:var(--ivory);background:linear-gradient(145deg,#26211af5,#1a1712fa);border:1px solid #d4af377a;border-radius:.75rem;padding:1rem;box-shadow:0 1rem 2.5rem #0000003d}.game-panel p,.game-panel small,.game-panel span{color:var(--ivory-muted)}.panel-heading-row{justify-content:space-between;align-items:start;gap:1rem;display:flex}.game-button{min-height:2.75rem;color:var(--ivory);font-size:var(--text-md);cursor:pointer;border:1px solid #0000;border-radius:.5rem;justify-content:center;align-items:center;padding:.65rem 1rem;font-weight:800;text-decoration:none;display:inline-flex}.game-button-primary{color:#1b1409;border-color:var(--champagne);background:linear-gradient(145deg,#e2c16b,#b8892b)}.game-button-secondary{color:var(--ivory);background:0 0;border-color:#d4af37b8}.game-button-danger{color:var(--ivory);background:var(--crimson);border-color:var(--crimson-text)}.game-button-danger-outline{width:fit-content;color:var(--crimson-text);border-color:var(--crimson-text);background:0 0}.game-button:hover:not(:disabled){filter:brightness(1.12)}.game-button:disabled{cursor:not-allowed;filter:grayscale(.7);opacity:.48}.expedition-page button:focus-visible,.expedition-page a:focus-visible,.expedition-page input:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.route-section{gap:.875rem}.route-map{grid-template-columns:repeat(auto-fit,minmax(min(13rem,100%),1fr));gap:.625rem}.route-node{min-width:0;min-height:8rem;color:var(--ivory);text-align:left;background:var(--lacquer);border:1px solid #d4af375c;border-left:.25rem solid var(--ivory-muted);border-radius:.625rem;gap:.25rem;padding:.75rem;display:grid;position:relative;overflow:hidden}.route-node-art{object-fit:cover;opacity:.28;width:5.5rem;height:100%;position:absolute;inset:0 0 auto auto;-webkit-mask-image:linear-gradient(270deg,#000 55%,#0000);mask-image:linear-gradient(270deg,#000 55%,#0000)}.route-node>span,.route-node>strong,.route-node>small,.route-node>b,.route-node>div,.route-node>p{z-index:1;max-width:calc(100% - 2.5rem);position:relative}.route-node>span,.route-node>small{color:var(--ivory-muted);font-size:var(--text-xs)}.route-node>b{color:var(--champagne);font-size:var(--text-sm);margin-top:.25rem}.route-node-current{background:var(--lacquer-raised);border-left-color:var(--gold)}.route-node-resolved{border-left-color:var(--jade)}.route-node-skipped{opacity:.55}.route-node-action{cursor:pointer;min-height:2.75rem}.route-node-action:hover:not(:disabled){border-color:var(--gold);background:#30291e}.route-preview,.route-preview-title{color:var(--ivory-muted);font-size:var(--text-xs);margin:.4rem 0 0}.route-preview div{gap:.125rem;margin-top:.4rem;display:grid}.route-preview b{color:var(--ivory)}.route-preview ul{margin:.125rem 0 0;padding-left:1rem}.tide-badge,.scrap-badge,.cargo-badge{background:var(--abyss);border:1px solid var(--abyss-line);border-radius:999px;flex:none;padding:.5rem .75rem;font-weight:800;color:var(--ivory)!important}.battle-panel{border-color:#f07a6c73}.battle-board{gap:.75rem;display:grid}.section-label{margin-bottom:.35rem;color:var(--ivory-muted)!important;font-size:var(--text-sm)!important}.expedition-page .battle-units{grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr));gap:.5rem;margin-top:0}.expedition-page .battle-unit{min-width:0;min-height:6.75rem;color:var(--ivory);text-align:left;background:var(--lacquer-raised);border:1px solid #6f97cf73;border-left:.25rem solid #6b8fb3;border-radius:.625rem;grid-template-columns:3.5rem minmax(0,1fr);gap:.65rem;padding:.65rem;display:grid;position:relative}.expedition-page .battle-unit-enemy{border-color:#f07a6c7a;border-left-color:var(--crimson-text)}.battle-unit-target{cursor:crosshair;width:100%;min-height:2.75rem;box-shadow:0 0 0 2px var(--champagne)}.battle-unit-target:hover:not(:disabled){box-shadow:0 0 0 3px var(--gold);background:#352c21}.battle-unit-down{filter:grayscale();opacity:.58}.unit-art{object-fit:cover;border:1px solid #d4af3770;border-radius:.5rem;width:3.5rem;height:3.5rem}.unit-copy{gap:.25rem;min-width:0;display:grid}.health-row{gap:.15rem;display:grid}.health-row progress{width:100%;height:.55rem;accent-color:var(--jade)}.health-row span,.unit-copy small{color:var(--ivory-muted);font-size:var(--text-xs)}.barrier-label{font-size:var(--text-sm);font-weight:800;color:var(--sapphire)!important}.down-label{font-weight:800;color:var(--crimson-text)!important}.intent-badge{z-index:2;text-align:right;background:#0d0c0ae0;border:1px solid #d4af378c;border-radius:.4rem;max-width:calc(100% - 5rem);padding:.3rem .45rem;display:grid;position:absolute;top:.4rem;right:.4rem}.intent-badge span,.intent-badge small{font-size:var(--text-xs)}.intent-badge strong,.intent-badge b{color:var(--champagne);font-size:var(--text-md)}.expedition-page .battle-statuses{grid-column:1/-1;margin:.2rem 0 0}.expedition-page .battle-statuses li{color:var(--ivory);font-size:var(--text-xs);background:var(--abyss);border-color:var(--abyss-line)}.stolen-cargo{border:1px solid var(--crimson-text);background:#a8322c3d;border-radius:.4rem;grid-column:1/-1;gap:.15rem;padding:.4rem;display:grid}.stolen-cargo b{color:var(--crimson-text)}.surge-warning,.fairness-note,.scale-note,.event-result{background:var(--abyss);border-left:.25rem solid var(--abyss-line);border-radius:.4rem;margin:.6rem 0;padding:.6rem .75rem;color:var(--ivory)!important}.selected-card-panel{background:var(--lacquer-raised);border:2px solid var(--gold);border-radius:.75rem;grid-template-columns:minmax(9rem,12rem) minmax(0,1fr);gap:1rem;margin-top:.75rem;padding:.85rem;display:grid;box-shadow:0 0 1.5rem #d4af3729}.selected-card-art{aspect-ratio:5/7;object-fit:cover;border:1px solid var(--gold);border-radius:.625rem;width:100%}.selected-card-panel h3{font-size:var(--text-lg)}.card-description,.card-effects{color:var(--ivory)!important;font-size:var(--text-md)!important}.card-effects{color:var(--jade)!important}.target-prompt{align-items:center;min-height:2.75rem;font-weight:800;display:inline-flex;color:var(--champagne)!important}.battle-hand-section{border-top:1px solid #d4af375c;margin-top:.85rem;padding-top:.75rem}.battle-hand-section>header{justify-content:space-between;align-items:end;gap:1rem;display:flex}.battle-hand-section h3,.battle-hand-section p{margin-bottom:.15rem}.battle-hand-section>header>span{font-size:var(--text-xs)}.expedition-page .battle-hand{border-top:0;grid-template-columns:repeat(auto-fit,minmax(6.75rem,1fr));gap:.5rem;margin-top:.65rem;padding-top:0}.expedition-page .game-card{min-width:0;min-height:2.75rem;color:var(--ivory);text-align:left;aspect-ratio:5/7;background:var(--lacquer);border:1px solid var(--gold);cursor:pointer;border-radius:.625rem;padding:0;display:grid;position:relative;overflow:hidden}.game-card-selected{box-shadow:0 0 0 3px var(--champagne), 0 .8rem 1.8rem #00000059;translate:0 -.3rem}.game-card-art{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.game-card-copy{z-index:1;background:linear-gradient(#0000,#1a1712f5 42%);gap:.1rem;padding:2.4rem .5rem .5rem;display:grid;position:absolute;inset:auto 0 0}.game-card-copy strong{color:var(--ivory);font-size:var(--text-sm)}.game-card-copy small,.game-card-copy em{color:var(--ivory-muted);font-size:var(--text-xs);font-style:normal}.game-card-copy em{color:var(--crimson-text)}.card-cost{z-index:2;background:var(--champagne);border:2px solid var(--gold);border-radius:50%;place-items:center;width:2rem;height:2rem;font-weight:900;display:grid;position:absolute;top:.4rem;left:.4rem;color:#1b1409!important;font-size:var(--text-lg)!important}.card-cost-warning{background:var(--crimson);border-color:var(--crimson-text);color:var(--ivory)!important}.expedition-page .battle-footer{min-height:3rem;margin-top:.8rem}.battle-footer>span{color:var(--ivory-muted);font-size:var(--text-sm)}.decision-panel{gap:.75rem;display:grid}.decision-grid,.reward-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(13rem,100%),1fr));gap:.75rem;display:grid}.decision-card,.reward-card{min-width:0;color:var(--ivory);background:var(--lacquer-raised);border:1px solid #d4af376b;border-radius:.625rem;align-content:start;gap:.5rem;padding:.85rem;display:grid}.decision-card h3,.decision-card p,.reward-card h3,.reward-card p{margin:0}.decision-card>.game-button,.reward-card>.game-button{align-self:end;margin-top:auto}.decision-art{object-fit:cover;border:1px solid var(--gold);border-radius:.5rem;width:5rem;height:5rem}.reward-card{border-top:.25rem solid #a3a39c;position:relative}.reward-card-art{aspect-ratio:5/7;object-fit:cover;border-radius:.45rem;width:100%}.rarity-r{border-top-color:#3fb3a3}.rarity-sr{border-top-color:#a585e0;box-shadow:inset 0 0 0 1px #a585e0}.rarity-label{font-size:var(--text-xs);background:var(--night);border:1px solid;border-radius:.25rem;padding:.2rem .4rem;font-weight:900;position:absolute;top:1.2rem;right:1.2rem;color:var(--ivory)!important}.held-relics,.cargo-list,.outcome-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.held-relics{grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr))}.held-relics li{background:var(--lacquer);border:1px solid #d4af375c;border-radius:.5rem;align-items:center;gap:.5rem;min-width:0;padding:.5rem;display:flex}.held-relic-art{object-fit:cover;border-radius:.35rem;width:2.75rem;height:2.75rem}.held-relics strong,.held-relics small{display:block}.held-relic-spent{filter:grayscale();opacity:.55}.availability{width:fit-content;font-size:var(--text-xs);border:1px solid;border-radius:999px;padding:.2rem .45rem;font-weight:800;color:var(--jade)!important}.availability-unavailable,.availability-unaffordable{color:var(--crimson-text)!important}.availability-purchased{color:var(--ivory-muted)!important}.outcome-list li{background:var(--lacquer);border-radius:.4rem;grid-template-columns:auto 1fr;gap:.5rem;padding:.45rem;display:grid}.outcome-list strong{color:var(--champagne)}.deck-action-panel,.deck-picker,.consignment-panel{background:var(--lacquer);border:1px solid #d4af3766;border-radius:.625rem;gap:.65rem;padding:.75rem;display:grid}.deck-picker>div{grid-template-columns:repeat(auto-fit,minmax(min(10rem,100%),1fr));gap:.5rem;display:grid}.deck-card-option{min-height:2.75rem;color:var(--ivory);text-align:left;background:var(--lacquer-raised);cursor:pointer;border:1px solid #d4af3759;border-radius:.5rem;gap:.15rem;padding:.65rem;display:grid}.deck-card-option[aria-pressed=true]{border-color:var(--champagne);box-shadow:inset 0 0 0 2px var(--gold)}.hero-health-list,.checkpoint-summary{background:#d4af374d;border:1px solid #d4af375c;border-radius:.5rem;grid-template-columns:repeat(auto-fit,minmax(min(10rem,100%),1fr));gap:1px;display:grid;overflow:hidden}.hero-health-list div,.checkpoint-summary div{background:var(--lacquer);padding:.65rem;display:grid}.checkpoint-panel{gap:.75rem;display:grid}.consignment-list{gap:.5rem;display:grid}.consignment-list label{background:var(--lacquer-raised);border-radius:.45rem;justify-content:space-between;align-items:center;gap:1rem;min-height:2.75rem;padding:.55rem;display:flex}.consignment-list label span,.consignment-list label small{display:block}.consignment-list input[type=number]{width:5rem;min-height:2.75rem;color:var(--ivory);background:var(--night);border:1px solid var(--gold);border-radius:.4rem;padding:.4rem}.consignment-list input[type=checkbox]{width:1.5rem;height:1.5rem;accent-color:var(--gold)}.selection-total{font-weight:800;color:var(--champagne)!important}.selection-total-error{color:var(--crimson-text)!important}.checkpoint-actions,.dialog-actions{flex-wrap:wrap;gap:.65rem;display:flex}.settlement-total{background:var(--lacquer-raised);border-left:.25rem solid var(--gold);border-radius:.5rem;width:fit-content;min-width:10rem;padding:.75rem 1rem;display:grid}.settlement-total strong{color:var(--champagne);font-size:var(--text-xl)}.settlement-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:.75rem;display:grid}.settlement-columns>section{background:var(--lacquer);border:1px solid #d4af375c;border-radius:.5rem;padding:.75rem}.cargo-list li{border-bottom:1px solid #d4af3733;justify-content:space-between;gap:.75rem;padding:.45rem 0;display:flex}.muted-copy{color:var(--ivory-muted)!important}.game-error{border-left:.25rem solid var(--crimson-text);background:#a8322c38;border-radius:.5rem;padding:.75rem;color:var(--crimson-text)!important}.game-dialog-backdrop{z-index:100;background:#000000b8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.game-dialog{width:min(34rem,100%);max-height:calc(100vh - 2rem);color:var(--ivory);background:var(--lacquer-raised);border:1px solid var(--gold);border-radius:.75rem;padding:1.25rem;overflow:auto;box-shadow:0 1.5rem 4rem #0000008c}.game-dialog p:not(.eyebrow){color:var(--ivory-muted)}@media (width<=768px){.expedition-stage{min-height:calc(100vh - 64px)}.expedition-page{width:min(100% - 1rem,90rem);padding:1rem 0 2rem}.expedition-page-heading{flex-direction:row;align-items:center;gap:.75rem}.expedition-page-heading .game-button{flex:none}.expedition-hud{grid-template-columns:repeat(2,minmax(0,1fr))}.game-panel{padding:.75rem}.selected-card-panel{grid-template-columns:7rem minmax(0,1fr)}.battle-hand-section>header,.expedition-page .battle-footer{flex-direction:column;align-items:stretch}.end-turn-button{width:100%}.settlement-columns{grid-template-columns:1fr}}@media (width<=420px){.expedition-page h1{font-size:1.35rem}.expedition-page-heading .game-button{font-size:var(--text-sm);padding-inline:.7rem}.panel-heading-row{flex-direction:column;align-items:stretch}.tide-badge,.scrap-badge,.cargo-badge{width:fit-content}.expedition-page .battle-units{grid-template-columns:1fr}.expedition-page .battle-hand{grid-template-columns:repeat(3,minmax(0,1fr))}.selected-card-panel{grid-template-columns:1fr}.selected-card-art{width:min(12rem,100%);margin:0 auto}.checkpoint-actions,.checkpoint-actions .game-button,.dialog-actions,.dialog-actions .game-button{width:100%}}.record-category-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;display:grid}.record-category{color:inherit;text-decoration:none;display:block}.record-category h2{margin-top:0}.record-tabs,.record-actions{flex-wrap:wrap;gap:.75rem;margin-block:1rem;display:flex}.record-tabs a{border:1px solid var(--border);color:inherit;border-radius:.5rem;min-height:44px;padding:.65rem .8rem}.record-tabs a.active{color:var(--gold);border-color:currentColor}.record-list{gap:1rem;padding:0;list-style:none;display:grid}.record-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.record-row h2{margin:.5rem 0;font-size:1.15rem}.record-row p{margin:.5rem 0}.record-row time,.record-detail time,.record-end{color:var(--text-muted);font-size:.9rem}.record-detail,.record-fields dd,.record-lines{overflow-wrap:anywhere}.record-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:1rem;display:grid}.record-fields dt{color:var(--text-muted);margin-bottom:.4rem;font-size:.9rem}.record-fields dd{margin:0}.record-lines{padding-left:1.5rem;line-height:1.8}.settings-page fieldset{border:0;margin:0;padding:0}.settings-page legend{margin-bottom:1rem;font-size:1.2rem;font-weight:700}.text-size-options{flex-wrap:wrap;gap:1rem;display:flex}.text-size-options label{cursor:pointer;align-items:center;gap:.5rem;min-height:44px;display:flex}.text-size-options input{accent-color:#d5a744;width:1.15rem;height:1.15rem}.text-size-preview{border-left:3px solid #d5a744;padding:1rem;line-height:1.7}@media (width<=42rem){.record-row{flex-direction:column;align-items:stretch}.record-row .secondary-button{align-self:flex-start}}.records-page,.settings-page,.account-page{--text-muted:#52615b;--border:#bcc8c0;--gold:#805518}.app-bar nav{flex-wrap:wrap;justify-content:center}.nav-link{height:auto;min-height:44px;padding:.6rem .7rem}@media (width<=1100px){.app-bar{grid-template-columns:minmax(0,1fr) auto}.app-bar nav{grid-area:2/1/auto/-1;margin-top:.5rem;display:flex}}.message-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.redemption-form{gap:.8rem;display:grid}.redemption-form input{width:100%;min-width:0;font:inherit;border:1px solid #87998c;border-radius:.6rem;padding:.8rem}.redemption-form button{justify-self:start}.operations-banner{background:var(--lacquer-raised);width:min(100% - 2rem,1200px);color:var(--ivory);overflow-wrap:anywhere;border:1px solid #b99645;border-radius:.8rem;flex-wrap:wrap;align-items:center;gap:.8rem;margin:1rem auto;padding:1rem;display:flex}.operations-banner a{color:var(--champagne);align-items:center;min-height:44px;text-decoration:underline;display:flex}.payment-products{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem;display:grid}.payment-actions{flex-wrap:wrap;gap:.75rem;display:flex}.payment-history{padding:0;list-style:none}.payment-history li{border-bottom:1px solid var(--border);padding-block:1rem}.payment-reference,.payment-notice{overflow-wrap:anywhere}.service-page{gap:1.25rem;display:grid}.service-page :is(article,section,form,.collection-panel){overflow-wrap:anywhere;min-width:0}.service-page .page-heading{margin-bottom:0}.service-page .page-heading>div{min-width:0}.service-page :is(.record-actions,.payment-actions){gap:.75rem}.service-page .record-actions>p{margin:0}.service-page :is(h2,h3){margin-top:0}.service-page section>article+article{margin-top:1rem}.service-page .payment-products article{flex-direction:column;align-items:flex-start;display:flex}.service-page .payment-products button{margin-top:auto}.service-details{gap:.75rem;display:grid}.service-details>div{flex-wrap:wrap;column-gap:1rem;display:flex}.service-details dt{color:var(--ivory-muted);min-width:5rem}.service-details dd{margin:0}.service-page a{align-items:center;min-width:44px;min-height:44px;display:inline-flex}.service-state{color:var(--champagne);font-weight:700}.service-page [tabindex="-1"]:focus{outline:2px solid var(--champagne);outline-offset:4px}.app-shell:has(.account-theme){background:var(--night)}.app-shell:has(.account-theme) .app-bar{background:var(--lacquer);border-color:var(--gold)}.account-theme{--text-muted:var(--ivory-muted);--border:#776340;--gold:#d4af37;color:var(--ivory);line-height:1.6;font-size:var(--text-md);font-variant-numeric:tabular-nums}.account-theme :is(h1,h2,h3){color:var(--ivory);line-height:1.3}.account-theme h1{font-size:clamp(1.75rem,4vw,2.5rem)}.account-theme h2{font-size:var(--text-lg)}.account-theme h3{font-size:var(--text-md)}.account-theme :is(.lead,.eyebrow,small,label,.session-card small){color:var(--ivory-muted);font-size:var(--text-md)}.account-theme :is(.collection-panel,.auth-panel,.status-message){background:var(--lacquer);color:var(--ivory);border-color:var(--border);border-radius:.75rem}.account-theme :is(.auth-panel,.collection-panel){min-width:0;padding:clamp(1rem,3vw,2rem)}.account-theme a{color:var(--champagne)}.account-theme :is(a,button,input){touch-action:manipulation}.account-theme :is(.primary-button,.secondary-button,.abandon-button,.password-toggle){height:auto;min-height:44px;font:inherit;white-space:normal;padding:.65rem 1rem;line-height:1.5}.account-theme .primary-button{color:#1b1409;border:1px solid var(--gold);background:linear-gradient(#e2c16b,#b8892b)}.account-theme :is(.secondary-button,.password-toggle){background:var(--lacquer-raised);color:var(--ivory);border:1px solid var(--border);border-radius:.5rem}.account-theme .abandon-button{color:var(--crimson-text);background:var(--lacquer-raised);border:1px solid var(--crimson-text);border-radius:.5rem}.account-theme button:disabled{opacity:.65}.account-theme :is(a,button,input):focus-visible{outline:3px solid var(--champagne);outline-offset:3px}.account-theme .auth-form input{width:100%;min-width:0;color:var(--ivory);background:var(--night);border:1px solid var(--border);font:inherit;border-radius:.5rem}.account-theme .auth-form input[aria-invalid=true]{border-color:var(--crimson-text)}.account-field{gap:.5rem;min-width:0;display:grid}.account-field label{font-weight:700}.account-field small{line-height:1.5}.password-input{grid-template-columns:minmax(0,1fr) auto;gap:.5rem;display:grid}.account-theme .field-error{color:var(--crimson-text);margin:0}.account-theme :is(.auth-message,.collection-message){background:var(--lacquer-raised);color:var(--ivory);border-left:3px solid var(--gold);padding:1rem}.account-theme [role=alert]{border-left-color:var(--crimson-text)}.account-theme .session-card{background:var(--lacquer-raised);border-color:var(--border);align-items:flex-start}.session-card>div{overflow-wrap:anywhere;min-width:0}.account-theme .session-card p{margin-block:.5rem}.account-theme .session-card button{flex-shrink:0}.account-theme .record-tabs a.active{background:var(--lacquer-raised);border-color:var(--champagne);color:var(--champagne)}.account-theme :is(.record-actions,.auth-links,.auth-actions) a,.account-theme .record-detail>a,.account-theme .auth-panel>a{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.account-theme .text-size-options label{color:var(--ivory)}.account-theme .record-row>div{overflow-wrap:anywhere;min-width:0}.account-dialog{width:min(32rem,100% - 2rem);max-height:calc(100% - 2rem);color:var(--ivory);background:var(--lacquer);border:1px solid var(--gold);border-radius:.75rem;padding:1.5rem;overflow-y:auto}.account-dialog::backdrop{background:#000b}.environment-badge{overflow-wrap:anywhere;align-content:center;max-width:min(16rem,46vw);min-height:44px;font-size:.875rem;display:grid}.skip-link{z-index:100;background:var(--champagne);color:var(--night);opacity:0;padding:.75rem;position:fixed;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip-link:focus{opacity:1;transform:translateY(0)}@media (width<=42rem){.account-theme .session-card{flex-direction:column}.account-theme .page-heading{flex-wrap:wrap}.account-theme .page-heading>div{min-width:0}}.harbor-page{min-width:0}.harbor-page :is(section,article,aside,fieldset,.page-heading>div){overflow-wrap:anywhere;min-width:0}.harbor-page :is(.contract-panel,.status-panel,.fatal-panel,.summon-banner-panel,.summon-rates-panel,.summon-results){background:var(--lacquer);color:var(--ivory);border-color:var(--border);border-radius:.75rem}.harbor-page :is(.hero-card,.contract-option,.loadout-hero,.inventory-card,.summon-pity,.summon-result-card,.summon-rate-list div,.summon-pool-list li){color:var(--ivory);background:var(--lacquer-raised);border-color:var(--border)}.harbor-page :is(.lead,.contract-body p:not(.eyebrow),.contract-option-details,.hero-card p,.status-message p,.active-expedition p,.collection-hint,.loadout-hero label,.inventory-card p,.inventory-card small,.summon-banner-copy p:not(.eyebrow),.summon-pity p,.summon-result-card p,.summon-pool-list small){color:var(--ivory-muted);font-size:var(--text-md);line-height:1.6}.harbor-page :is(.eyebrow,.capacity-label,.hero-index,.summon-result-card>strong,.summon-rate-list dd,.summon-rates-panel summary){color:var(--champagne);font-size:var(--text-md)}.harbor-page .wallet-summary{background:var(--lacquer-raised);border-color:var(--gold);flex:0 18rem;min-width:0}.harbor-page .wallet-summary strong{overflow-wrap:anywhere;font-size:1.75rem}.harbor-page .wallet-summary span{color:var(--ivory-muted);font-size:var(--text-md)}.harbor-page .contract-panel{grid-template-columns:minmax(0,1fr)}.harbor-page .zone-map{object-fit:cover;height:12rem;min-height:0}.harbor-page .contract-body{padding:clamp(1rem,2vw,1.75rem)}.harbor-page .contract-option:has(input:checked){border-color:var(--champagne);background:#353020}.harbor-page .contract-option:has(input:disabled){background:var(--night)}.harbor-page .contract-option:has(input:focus-visible){outline-color:var(--champagne)}.harbor-page .contract-option input{accent-color:var(--gold)}.harbor-page .hero-card>strong{color:var(--champagne);background:var(--night);font-size:var(--text-sm)}.harbor-page .state-label,.harbor-page .summon-rarity{color:var(--ivory);background:var(--abyss);font-size:var(--text-sm)}.harbor-page .creation-error{background:var(--lacquer-raised);border-color:var(--crimson-text);color:var(--crimson-text)!important}.harbor-page .capacity-label{background:var(--lacquer-raised);border:1px solid var(--border)}.harbor-page .status-symbol{color:var(--champagne);border-color:var(--gold)}.harbor-page .roster-section{border-color:var(--border)}.harbor-page .summon-rate-list{border-color:var(--border);background:var(--border)}.harbor-page .summon-rates-panel summary{min-height:44px;padding-block:.5rem}.harbor-page .summon-pity progress{accent-color:var(--gold)}.harbor-page .summon-result-card:is(.rarity-sr,.rarity-ssr,.rarity-ur,.rarity-sp){border-top-color:var(--gold)}.harbor-page :is(.preset-toolbar,.loadout-hero) :is(input,select){width:100%;min-width:0;min-height:44px;font:inherit;color:var(--ivory);background:var(--night);border:1px solid var(--border);border-radius:.5rem;padding:.5rem}.harbor-page :is(select,summary):focus-visible,.harbor-page [tabindex="-1"]:focus{outline:3px solid var(--champagne);outline-offset:3px}.harbor-page .preset-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.harbor-page .preset-toolbar label{font-size:var(--text-md)}.harbor-page .collection-controls{border:0;gap:1.5rem;margin:0;padding:0;display:grid}.harbor-page .action-confirmation{border:2px solid var(--gold)}.shop-offers{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:1rem;display:grid}.shop-page>section[aria-label]{margin-block:2rem}.shop-offer{overflow-wrap:anywhere;flex-direction:column;gap:.75rem;min-width:0;display:flex}.shop-offer h3,.shop-offer p{margin:0}.shop-offer button{margin-top:auto}.harbor-page .record-actions a,.harbor-page>nav a,.harbor-page .text-link{align-items:center;min-width:44px;min-height:44px;display:inline-flex}.harbor-page .summon-banner-panel,.harbor-page .summon-rates-panel,.harbor-page .summon-results{padding:clamp(1rem,3vw,1.75rem)}.harbor-page .summon-pity>div,.harbor-page .section-title{flex-wrap:wrap}.harbor-page .summon-result-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}@media (width<=64rem){.harbor-page :is(.lobby-grid,.summon-grid){grid-template-columns:minmax(0,1fr)}.harbor-page :is(.loadout-grid,.inventory-grid,.hero-grid){grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=42rem){.harbor-page .page-heading{flex-direction:column;align-items:stretch;gap:1rem}.harbor-page .wallet-summary{flex-basis:auto;width:100%}.harbor-page :is(.loadout-grid,.inventory-grid,.hero-grid,.preset-toolbar,.summon-actions){grid-template-columns:minmax(0,1fr)}}.expedition-hud.tutorial-hud{grid-template-columns:repeat(3,minmax(0,1fr))}.tutorial-tag{color:var(--night);background:var(--champagne);font-size:var(--text-xs);vertical-align:middle;border-radius:.25rem;margin-left:.35rem;padding:0 .4rem;font-weight:800;display:inline-block}.tutorial-panel{gap:.75rem;display:grid}.tutorial-panel h2,.tutorial-panel p{margin:0}.tutorial-cargo summary{cursor:pointer;min-height:44px;font-weight:700}.tutorial-menu-actions{flex-direction:column;align-items:stretch}.hint-bar{z-index:50;width:min(100% - 2rem,90rem);padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));color:var(--ivory);background:var(--lacquer-raised);border:1px solid var(--gold);border-bottom:0;border-radius:.75rem .75rem 0 0;justify-content:space-between;align-items:center;gap:.75rem;margin:0 auto;display:flex;position:sticky;bottom:0;box-shadow:0 -.75rem 2rem #00000073}.hint-bar p{margin:0;line-height:1.6}.hint-bar .game-button{flex:none;min-height:44px}.tutorial-replay-actions{flex-wrap:wrap;gap:.75rem;display:flex}.tutorial-replay-actions button{min-height:44px}.lobby-notice{border-left:.25rem solid var(--gold);background:#d4af371f;border-radius:.5rem;margin:0 0 1rem;padding:.75rem 1rem}@media (width<=42rem){.expedition-hud.tutorial-hud{grid-template-columns:repeat(2,minmax(0,1fr))}.expedition-hud.tutorial-hud>div:first-child{grid-column:1/-1}.hint-bar{border-left:0;border-right:0;border-radius:0;width:100%}}.card-back{aspect-ratio:5/7;object-fit:cover;border-radius:.25rem;height:auto;display:inline-block}.account-title{color:var(--champagne);font-weight:700}.battle-pile-back{vertical-align:middle;width:1.125rem;margin:0 .25rem 0 0}.lobby-main,.lobby-side{align-content:start;gap:18px;min-width:0;display:grid}.lobby-page .contract-options{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}.lobby-page .contract-options legend{grid-column:1/-1}.next-step,.lobby-recent,.lobby-novice,.lobby-records{color:var(--ivory);background:var(--lacquer);border:1px solid var(--border);border-radius:.75rem;gap:.75rem;padding:clamp(1rem,2vw,1.5rem);display:grid}.next-step{border-color:var(--gold)}.next-step :is(h2,p),.lobby-recent :is(h2,p),.lobby-novice :is(h2,p),.lobby-records h2{margin:0}.next-step p,.lobby-recent p{color:var(--ivory-muted);line-height:1.6}.next-step-actions{flex-wrap:wrap;gap:.75rem;display:flex}.next-step-actions :is(a,button){min-height:44px}.lobby-recent ol{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.lobby-recent li{background:var(--lacquer-raised);overflow-wrap:anywhere;border-radius:.5rem;gap:.125rem;padding:.5rem .75rem;display:grid}.lobby-recent time{color:var(--champagne);font-size:var(--text-sm)}.lobby-records a{min-height:44px;color:var(--champagne);align-items:center;display:flex}.lobby-goals,.lobby-entries{color:var(--ivory);background:var(--lacquer);border:1px solid var(--border);border-radius:.75rem;gap:.75rem;padding:clamp(1rem,2vw,1.5rem);display:grid}.lobby-goals h2,.lobby-entries h2,.goal-group h3,.goal-note{margin:0}.goal-group{gap:.5rem;display:grid}.goal-group h3{color:var(--champagne);font-size:var(--text-md)}.goal-list{gap:.375rem;margin:0;padding:0;list-style:none;display:grid}.goal-list li{background:var(--lacquer-raised);overflow-wrap:anywhere;border-radius:.5rem;flex-wrap:wrap;justify-content:space-between;gap:.25rem .75rem;padding:.5rem .75rem;display:flex}.goal-progress{color:var(--ivory-muted);font-variant-numeric:tabular-nums;gap:.5rem;display:inline-flex}.goal-done .goal-progress strong{color:var(--gold)}.goal-note{color:var(--ivory-muted);font-size:var(--text-sm);line-height:1.6}.lobby-entries ul{grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.lobby-entries a{height:100%;min-height:44px;color:var(--ivory);background:var(--lacquer-raised);border:1px solid var(--border);overflow-wrap:anywhere;border-radius:.5rem;align-content:center;gap:.25rem;padding:.625rem .75rem;text-decoration:none;display:grid}.lobby-entries a:hover,.lobby-entries a:focus-visible{border-color:var(--gold)}.lobby-entries a>span{color:var(--ivory-muted);font-size:var(--text-sm)}.lobby-entries .entry-badge{color:var(--night);background:var(--gold);font-size:var(--text-sm);border-radius:999px;justify-self:start;align-items:center;gap:.25rem;padding:.125rem .5rem;font-weight:700;display:inline-flex}.settlement-goals{gap:.75rem;display:grid}.settlement-goals h3{margin:0}.build-toolbar{flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin-bottom:1rem;display:flex}.build-rules{color:var(--ivory-muted);flex:24rem;margin:0;padding-left:1.25rem;line-height:1.6}.build-toolbar .primary-button{min-height:44px}.build-status{flex-basis:100%;margin:0}.build-hero-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));align-items:start;gap:1rem;display:grid}.build-hero{background:var(--lacquer);border:1px solid var(--border);border-radius:.75rem;gap:1rem;padding:clamp(1rem,2vw,1.25rem);display:grid}.build-hero-profile{grid-template-columns:5rem minmax(0,1fr);align-items:start;gap:.75rem;display:grid}.build-hero-profile :is(h2,p){margin:0 0 .25rem}.build-hero-profile p{color:var(--ivory-muted);line-height:1.5}.build-hero-art{object-fit:cover;border:1px solid var(--border);border-radius:.5rem;width:5rem;height:5rem}.build-hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;margin:.5rem 0 0;display:grid}.build-hero-stats dt{color:var(--ivory-muted);font-size:var(--text-sm)}.build-hero-stats dd{margin:0;font-weight:700}.build-slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.build-slot{width:100%;min-height:4.5rem;color:var(--ivory);font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:var(--lacquer-raised);border:1px solid var(--border);border-radius:.5rem;align-content:start;gap:.25rem;padding:.625rem .75rem;display:grid}.build-slot span{color:var(--ivory-muted);font-size:var(--text-sm)}.build-slot-empty{border-style:dashed}.build-slot[aria-expanded=true]{border-color:var(--champagne);box-shadow:inset 0 0 0 1px var(--champagne)}.build-slot:focus-visible,.card-picker-option:focus-visible{outline:3px solid var(--champagne);outline-offset:2px}.build-slot .build-slot-warning{color:var(--crimson-text);font-weight:700}.card-picker{background:var(--night);border:1px solid var(--gold);border-radius:.75rem;gap:.75rem;padding:1rem;display:grid}.card-picker :is(h3,h4,p){margin:0}.card-picker>.secondary-button,.card-picker .section-title .secondary-button{justify-self:start;min-height:44px}.card-picker-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.card-picker-option{width:100%;min-height:44px;color:var(--ivory);font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:var(--lacquer-raised);border:1px solid var(--border);border-radius:.5rem;gap:.25rem;padding:.625rem .75rem;display:grid}.card-picker-option span,.card-picker-option small{color:var(--ivory-muted);font-size:var(--text-sm)}.card-picker-option[aria-disabled=true]{cursor:not-allowed;background:var(--lacquer);border-style:dashed}.build-equipment{gap:.5rem;display:grid}.build-equipment label{font-size:var(--text-sm);gap:.25rem;display:grid}.build-equipment select{width:100%;min-width:0;min-height:44px;color:var(--ivory);font:inherit;background:var(--night);border:1px solid var(--border);border-radius:.5rem;padding:.5rem}.cosmetics-group{border:1px solid var(--border);border-radius:.75rem;gap:.5rem;margin:0 0 1rem;padding:1rem;display:grid}.cosmetics-group legend{padding:0 .25rem;font-weight:700}.cosmetics-option{cursor:pointer;background:var(--lacquer-raised);border:1px solid var(--border);border-radius:.5rem;flex-wrap:wrap;align-items:center;gap:.75rem;min-height:44px;padding:.5rem .75rem;display:flex}.cosmetics-option:has(input:checked){border-color:var(--champagne);background:#353020}.cosmetics-option:has(input:focus-visible){outline:3px solid var(--champagne);outline-offset:2px}.cosmetics-option input{width:18px;height:18px;accent-color:var(--gold);margin:0}.cosmetics-card-backs{grid-template-columns:repeat(auto-fill,minmax(min(100%,10rem),1fr));gap:.75rem;display:grid}.cosmetics-card-back-art{width:3.5rem}.summon-result-card{position:relative;overflow:hidden}.summon-reveal-back{pointer-events:none;width:100%;height:100%;animation:.48s ease-in both summon-reveal-away;animation-delay:calc(var(--reveal-index,0) * 80ms + .16s);border-radius:0;position:absolute;inset:0}@keyframes summon-reveal-away{0%{opacity:1;transform:perspective(40rem)rotateY(0)}to{visibility:hidden;opacity:0;transform:perspective(40rem)rotateY(90deg)}}.bottom-nav{display:none}@media (width<=767px){.app-bar nav .nav-primary{display:none}.bottom-nav{z-index:60;padding:.25rem .25rem calc(.25rem + env(safe-area-inset-bottom));background:var(--night);border-top:2px solid var(--gold);grid-template-columns:repeat(5,minmax(0,1fr));gap:.25rem;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -.5rem 1.5rem #00000073}.bottom-nav-link{min-width:0;min-height:48px;color:var(--ivory-muted);font-size:var(--text-sm);text-align:center;overflow-wrap:anywhere;border-radius:.5rem;justify-content:center;align-items:center;padding:.25rem;font-weight:700;line-height:1.25;text-decoration:none;display:flex}.bottom-nav-link-active{color:var(--night);background:var(--champagne)}.bottom-nav-link:focus-visible{outline:3px solid var(--champagne);outline-offset:-3px}.app-shell:has(>.bottom-nav)>main{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}.app-shell:has(>.bottom-nav) .hint-bar{bottom:calc(4.5rem + env(safe-area-inset-bottom));border-bottom:1px solid var(--gold);border-radius:.75rem;padding-bottom:.75rem}.build-slots{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.summon-reveal-back{display:none}}
