.ui-icon{object-fit:contain;vertical-align:middle;flex:none;width:1.3em;height:1.3em;display:inline-block}.resource-picture .ui-icon{width:100%;height:100%}.reward-ui .ui-icon{width:78%;height:78%}.reward-icon.reward-ui{justify-content:center;align-items:center;display:inline-flex}.picture-zoom-hover{z-index:120;border:1px solid var(--line);pointer-events:none;background:radial-gradient(circle at 50% 45%,#283442f5,#080c12f7);border-radius:12px;justify-content:center;align-items:center;padding:14px;display:flex;position:fixed;box-shadow:0 12px 40px #0009}.picture-zoom-hover img{object-fit:contain;filter:drop-shadow(0 4px 8px #0009);max-width:100%;max-height:100%}.picture-zoom-button{z-index:2;width:44px;height:44px;color:var(--text);cursor:zoom-in;background:#05080cb3;border:1px solid #a0b4c873;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.picture-zoom-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:22px;height:22px}.picture-zoom-button:hover{border-color:var(--gold);color:var(--gold)}.picture-zoom-backdrop{z-index:119;position:fixed;inset:0}.picture-zoom-hover.open{cursor:zoom-out}.item-art.item-art-zoomable{pointer-events:auto}.rarity-frame{box-sizing:border-box;border:1px solid var(--rarity);background:color-mix(in srgb, var(--rarity) 13%, #0a0e14eb);box-shadow:0 0 6px color-mix(in srgb, var(--rarity) 50%, transparent);border-radius:6px;flex:none;justify-content:center;align-items:center;display:inline-flex}.rarity-frame.plain{box-shadow:none;background:#0a0e14eb;border-color:#82a0be4d}.rarity-frame .item-art,.rarity-frame svg,.rarity-frame img{object-fit:contain;width:86%;height:86%}.rarity-frame.inline{vertical-align:-4px;width:18px;height:18px;box-shadow:0 0 4px color-mix(in srgb, var(--rarity) 45%, transparent);border-radius:4px;margin:0 5px 0 4px}.cost-tile{min-width:0;color:var(--text);position:relative}.cost-tile-link{z-index:1;border-radius:inherit;position:absolute;inset:0}.cost-tile-link:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.cost-tile.linked:hover{border-color:#e8b84aa6}.cost-tile-count{font-variant-numeric:tabular-nums;white-space:nowrap}.cost-tile-bubble{z-index:400;width:max-content;max-width:220px;color:var(--text);pointer-events:none;text-align:left;border:1px solid var(--line);background:#080c12f7;border-radius:6px;flex-direction:column;gap:2px;padding:6px 10px;font-weight:400;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 16px #0000008c}.cost-tile-bubble b{color:var(--rarity);white-space:nowrap;font-size:13px}.cost-tile-bubble small{color:#b6c3cf;font-size:12px}.cost-tile-bubble small.gold{color:var(--gold)}.cost-card{text-align:center;background:#0a1018bf;border:1px solid #82a0be38;border-radius:8px;flex-direction:column;align-items:center;width:124px;padding:8px 6px 6px;display:inline-flex}.cost-card .cost-tile-art{width:46px;height:46px;margin-bottom:6px}.cost-card .cost-tile-name{font-size:13px;font-weight:700}.cost-card .cost-tile-count{font-size:15px}.cost-card .cost-tile-source{min-height:26px;color:var(--mute);justify-content:center;align-items:center;margin-top:3px;font-size:11px;line-height:1.15;display:flex}.cost-card.linked .cost-tile-source{color:#d9b765}.cost-chip{border:1px solid var(--line);font-variant-numeric:tabular-nums;background:#080c12b3;border-radius:6px;align-items:center;gap:7px;min-height:40px;padding:3px 10px 3px 4px;display:inline-flex}.cost-chip.short{border-color:#ff6a7480}.cost-chip .cost-tile-art,.cost-chip-icon{flex:none;width:32px;height:32px}@media (pointer:coarse){.cost-chip{min-height:44px}}.notification-popover{width:380px;padding:0}.notification-list{flex-direction:column;display:flex}.notification-list-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.notification-list-head b{font:700 15px Barlow,sans-serif}.notification-list-head .btn{min-height:36px}.notification-list ul{flex-direction:column;gap:2px;margin:0;padding:4px;list-style:none;display:flex}.notification{width:100%;min-height:52px;color:var(--text);font:inherit;text-align:left;background:0 0;border:none;border-radius:7px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.notification:hover{background:#ffffff0a}.notification.unread{background:#e8b84a0f}.notification-dot{background:0 0;border-radius:50%;flex:none;width:8px;height:8px;margin-top:6px}.notification.unread .notification-dot{background:var(--gold);box-shadow:0 0 6px #e8b84a99}.notification-text{flex-direction:column;gap:1px;min-width:0;display:flex}.notification-text b{font-size:14px;font-weight:700}.notification.read .notification-text b{color:#c4ced8;font-weight:600}.notification-text span{color:#c4ced8;overflow-wrap:anywhere;font-size:13.5px}.notification-text small{font-size:12px}.notification-empty{text-align:center;margin:0;padding:18px 12px}.notification-sheet{max-height:80dvh;overflow-y:auto}.notification-sheet .notification-list-head .btn{min-height:44px}.notification-sheet .notification{min-height:56px}@media (width<=420px){.header-actions .inbox-button,.header-actions .quest-tracker-button{justify-content:center;width:36px;min-width:36px;height:36px;padding:0}}.quest-tracker{flex-shrink:0;position:relative}.quest-tracker-button{color:#cfd8e0;background:#0e151ee6;border:1px solid #82a0be38;border-radius:20px;align-items:center;gap:8px;min-width:40px;height:40px;padding:0 10px;font:600 13px Barlow,sans-serif;display:flex;position:relative}.quest-tracker-button:hover{color:#fff;border-color:#e8b84a8c}.quest-tracker-button.ready{border-color:#e8b84acc;box-shadow:0 0 12px #e8b84a59}.quest-tracker-button svg{fill:none;width:18px;height:18px;stroke:var(--gold);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.quest-tracker-text{text-align:left;flex-direction:column;gap:3px;min-width:0;max-width:150px;display:none}.quest-tracker-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.quest-tracker-progress{background:#0000008c;border-radius:2px;height:3px;display:block;overflow:hidden}.quest-tracker-progress i{background:linear-gradient(90deg, #a67a1e, var(--gold));height:100%;display:block}.quest-tracker-count{color:var(--gold);display:none}@media (width>=1600px){.quest-tracker-text{display:flex}}@media (width>=1280px){.quest-tracker-count{display:inline}}.quest-tracker-popover{z-index:25;width:340px;max-height:70dvh;position:absolute;top:calc(100% + 10px);right:0;overflow-y:auto;box-shadow:0 18px 40px #000000a6}.quest-tracker-body{flex-direction:column;gap:8px;padding:10px;display:flex}.quest-tracker-all{color:var(--gold);align-self:flex-end;align-items:center;min-height:32px;font-size:13.5px;font-weight:600;text-decoration:none;display:inline-flex}.quest-sheet .quest-tracker-body{padding:4px 14px 16px}.app.app-quests{flex-direction:column;align-items:stretch;display:flex}@media (width>=1280px){.app.app-quests{height:auto;min-height:100dvh;display:flex}}.quests{flex-direction:column;gap:12px;width:100%;max-width:1400px;margin:0 auto;padding-bottom:12px;display:flex}.quests-head{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.quests-head h1{color:#f0e6cf;letter-spacing:.06em;margin:0;font:700 28px Cinzel,serif}.quests-head p{flex-basis:100%;margin:0}.tab-count{color:#fff;background:#c0392b;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:800;display:inline-flex}.quest-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:10px;display:grid}@media (width>=768px){.quest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1280px){.quest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.quest-card{border:1px solid var(--line);background:var(--panel);border-radius:9px;flex-direction:column;gap:8px;padding:12px 14px;display:flex;position:relative;overflow:hidden}.quest-card.compact{background:#0a0e14cc;padding:10px 12px}.quest-card.status-complete{border-color:#e8b84ab3;box-shadow:inset 0 0 0 1px #e8b84a40}.quest-card.status-locked{opacity:.55}.quest-card.status-claimed{opacity:.7}.quest-card-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.quest-card-head b{color:#f0e6cf;font:700 16px Barlow,sans-serif}.quest-status{color:var(--mute);white-space:nowrap;font-size:12px;font-weight:700}.quest-status.status-complete{color:var(--gold)}.quest-status.status-claimed{color:var(--green)}.quest-description,.quest-locked{margin:0;font-size:13.5px}.quest-locked{color:#f0a431}.quest-objectives{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.quest-objectives li{grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;font-size:14px;display:grid}.quest-objectives li .bar{grid-column:1/-1;height:6px}.quest-objectives li .bar>i{background:linear-gradient(90deg, #a67a1e, var(--gold))}.quest-card.status-complete .quest-objectives li .bar>i,.quest-card.status-claimed .quest-objectives li .bar>i{background:linear-gradient(90deg, #3f7a4a, var(--green))}.quest-actions{justify-content:flex-end;gap:8px;display:flex}.quest-actions .btn{min-width:110px;min-height:44px}.quest-share{background:var(--gold);opacity:.6;height:2px;position:absolute;bottom:0;left:0}.reward-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.reward-list li{border:1px solid var(--line);background:#05080c99;border-radius:999px;align-items:center;gap:6px;padding:3px 9px 3px 3px;font-size:13px;font-weight:600;display:inline-flex}.reward-icon{background:#0e151ee6;border:1px solid #82a0be4d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex;overflow:hidden}.reward-icon svg,.reward-icon img{width:20px;height:20px}.reward-icon.symbol{color:var(--gold);font-size:11px;font-weight:800}.reward-icon.reward-xp{color:#9fd0ff}.reward-icon.silver{color:#d6dde4}.reward-icon.reward-consumable{color:#ff6a74}.reward-list li.reward-tile{display:contents}.reward-list .cost-chip{background:#05080c99;border-radius:999px;min-height:0;padding:3px 9px 3px 3px;font-size:13px}.reward-list .cost-chip .cost-tile-art{width:24px;height:24px}.reward-list.large .cost-chip{padding:5px 12px 5px 5px;font-size:15px}.reward-list.large .cost-chip .cost-tile-art{width:36px;height:36px}.reward-list.large{justify-content:center}.reward-list.large li{padding:5px 12px 5px 5px;font-size:15px}.reward-list.large .reward-icon{width:36px;height:36px}.reward-list.large .reward-icon svg,.reward-list.large .reward-icon img{width:30px;height:30px}.modal .panel.reward-popup{text-align:center;border-color:#e8b84a99;flex-direction:column;align-items:center;gap:10px;width:min(420px,100vw - 32px);padding:26px 20px 20px;display:flex;position:relative;overflow:hidden}.reward-popup h2{color:var(--gold);margin:0;font:700 22px Cinzel,serif;position:relative}.reward-popup p{margin:0;position:relative}.reward-popup .reward-list{position:relative}.reward-popup .btn{min-width:160px;min-height:44px;margin-top:6px;position:relative}.reward-popup-glow{pointer-events:none;background:radial-gradient(at 50% 60%,#e8b84a59,#0000 65%);height:220px;animation:2.4s ease-in-out infinite alternate reward-glow;position:absolute;inset:-40% -20% auto}@keyframes reward-glow{0%{opacity:.6}to{opacity:1}}@media (prefers-reduced-motion:reduce){.reward-popup-glow{animation:none}}@media (width>=768px){.quest-grid{grid-auto-rows:1fr;align-items:stretch}.quest-grid .quest-card .reward-list{margin-top:auto}}.hero-status .hero-status-text{color:inherit;text-decoration:none}.account-menu{flex-shrink:0;display:flex;position:static}.account-menu-button{cursor:pointer;background:0 0;border:none;border-radius:50%;padding:0;position:relative}.account-menu-button:before{content:"";position:absolute;inset:-6px}.account-menu-button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.account-menu-button:hover .hero-portrait{border-color:var(--gold)}.panel.account-popover{z-index:25;top:calc(var(--top-height) + var(--safe-top) + 8px);right:calc(16px + var(--safe-right));width:min(400px,100vw - 32px);max-height:calc(100dvh - var(--top-height) - var(--safe-top) - 24px);background:#090e14;padding:0;position:fixed;overflow-y:auto;box-shadow:0 18px 40px #000000a6}.account-sheet{max-height:88dvh;overflow-y:auto}.account-panel{flex-direction:column;display:flex}.account-empty{text-align:center;margin:0;padding:18px 14px}.account-head{border-bottom:1px solid var(--line);flex-direction:column;gap:2px;padding:12px 14px;display:flex}.account-head b{color:#f0e6cf;letter-spacing:.04em;font:700 17px Cinzel,serif}.account-head span{overflow-wrap:anywhere;font-size:13px}.account-section{border-bottom:1px solid #82a0be1f}.account-section-head{width:100%;min-height:48px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:0 14px;font:700 15px Barlow,sans-serif;display:flex}.account-section-head:hover{background:#ffffff08}.account-section-head svg{fill:none;stroke:currentColor;stroke-width:2px;width:18px;height:18px;transition:transform .15s}.account-section.open .account-section-head svg{transform:rotate(180deg)}.account-section-body{flex-direction:column;gap:10px;padding:2px 14px 14px;font-size:14px;display:flex}.account-section-body p{margin:0}.account-section-body .error{color:var(--red);font-size:13.5px}.account-line{justify-content:space-between;gap:12px;display:flex}.account-line b{overflow-wrap:anywhere;text-align:right}.account-actions{flex-direction:column;gap:8px;display:flex}.account-actions .btn,.account-section-body>.btn{min-height:44px}.account-form{flex-direction:column;gap:10px;display:flex}.account-form label{color:var(--mute);flex-direction:column;gap:4px;font-size:13px;font-weight:600;display:flex}.account-form input{height:44px;color:var(--text);background:#0d141c;border:1px solid #82a0be4d;border-radius:6px;padding:0 12px;font:500 16px Barlow,sans-serif}.account-form input:focus{outline-offset:1px;outline:2px solid #e8b84a99}.account-form .btn{min-height:44px}.account-subhead{letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin:4px 0 0;font:700 12.5px Barlow,sans-serif}.account-toggles{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.account-toggle{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.account-toggle input{appearance:none;cursor:pointer;background:#00000080;border:1px solid #82a0be59;border-radius:12px;flex:none;width:42px;height:24px;margin:0;transition:background .15s;position:relative}.account-toggle input:after{content:"";background:#9fb0c0;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:2px;left:2px}.account-toggle input:checked{background:linear-gradient(#e8b84a,#a67a1e);border-color:#c9952e}.account-toggle input:checked:after{background:#1c1204;transform:translate(18px)}.account-toggle input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.account-font{flex-direction:column;gap:6px;font-weight:600;display:flex}.account-font span{justify-content:space-between;display:flex}.account-font input{width:100%;min-height:44px;accent-color:var(--gold)}.account-font-sample{color:#dfe6ec;background:#00000059;border-radius:6px;padding:8px 10px}.account-blocked{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.account-blocked li{justify-content:space-between;align-items:center;gap:10px;min-height:44px;display:flex}.account-blocked .btn{min-height:44px}.account-delete{margin-top:6px}.account-danger{background:#5a140e33;border:1px solid #a2342a99;border-radius:8px;padding:12px}.account-foot{padding:12px 14px calc(12px + var(--safe-bottom,0px));display:flex}.account-foot .btn{flex:1;min-height:44px}.potion-menu{position:relative}.potion-menu-trigger{color:var(--text);font:inherit;white-space:nowrap;align-items:center;display:flex}.potion-menu-popover{z-index:32;width:300px;max-width:calc(100vw - 24px);position:absolute;top:calc(100% + 8px);right:0}.potion-menu-body{padding:14px}.potion-menu-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.potion-menu-body p{margin:8px 0;font-size:13px}.potion-menu-body .button-row{margin-top:12px}@media (pointer:coarse){.potion-menu-trigger:after{content:"";position:absolute;inset:-7px 0}}@media (width<=767px){.potion-menu-trigger{gap:3px;padding:0 5px}.potion-menu-trigger>span[aria-hidden]{display:none}}.inventory-head{gap:8px}.inventory-tabs{flex-wrap:wrap;gap:4px;display:flex}.inventory-tabs button{border:1px solid var(--line);min-height:36px;color:var(--text);background:#0a0e14cc;border-radius:6px;padding:0 12px;font-size:14px;font-weight:600}.inventory-tabs button.on{color:#1c1204;background:linear-gradient(#e8b84ae6,#a67a1ee6);border-color:#c9952e}.inventory-tabs button small{opacity:.8;color:inherit;font-weight:500}.inventory-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.inventory-head .inventory-tabs{flex-wrap:nowrap}.inventory-head .inventory-tabs button{white-space:nowrap;padding:0 9px}.inventory-rarity{max-width:118px}.inventory-rarity,.inventory-auto-sell select{border:1px solid var(--line);min-height:32px;color:var(--text);font:inherit;background:#05080cd9;border-radius:6px;padding:0 8px;font-size:13px}.inventory-more{position:relative}.inventory-more-button{min-width:36px;font-size:18px;line-height:1}.inventory-menu{z-index:25;flex-direction:column;gap:6px;width:280px;max-width:calc(100vw - 24px);padding:8px;display:flex;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 14px 34px #000000a6}.inventory-menu .btn{text-align:left;justify-content:space-between;align-items:center;gap:8px;min-height:40px;display:flex}.inventory-menu .btn,.inventory-auto-sell{white-space:nowrap}.inventory-menu .btn small{font-size:11.5px;font-weight:500}.inventory-auto-sell{color:var(--mute);justify-content:space-between;align-items:center;gap:8px;padding:2px 4px 0;font-size:13px;font-weight:500;display:flex}@media (pointer:coarse){.inventory-tabs button,.inventory-actions .btn,.inventory-rarity,.inventory-auto-sell select,.inventory-menu .btn{min-height:44px}.inventory-more-button{min-width:44px}}.inventory-grid{align-content:start}.inventory-empty{grid-column:1/-1;margin:8px 0}.inventory-stack .item-art{width:72%;height:72%}.inventory-runes{gap:2px;display:flex;position:absolute;bottom:4px;left:4px}.inventory-runes i{border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 1px #000000b3}.inventory-rune-battle{background:#ff9f7a}.inventory-rune-ward{background:#9fd0ff}.inventory-lock{filter:drop-shadow(0 1px 1px #000);font-size:11px;position:absolute;top:1px;right:2px}.enchant-dialog{background:linear-gradient(#111a24,#0a0f15);flex-direction:column;gap:12px;width:min(440px,100vw - 24px);padding:16px;display:flex}.enchant-dialog h2{margin:0;font:700 20px Cinzel,serif}.enchant-head{align-items:center;gap:14px;display:flex}.enchant-art{border:2px solid;border-radius:8px;flex:none;justify-content:center;align-items:center;width:96px;height:96px;display:flex;position:relative}.enchant-art svg{width:56px;height:56px}.enchant-levels{font-size:20px}.enchant-stats{flex-direction:column;gap:4px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.enchant-stats li{justify-content:space-between;gap:8px;display:flex}.enchant-odds{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.enchant-odd{border:1px solid;border-radius:7px;flex-direction:column;padding:8px 10px;display:flex}.enchant-odd b{font-size:22px}.enchant-odd small{font-size:12px;line-height:1.25}.enchant-odd.success{color:var(--green);border-color:#6fd08a80}.enchant-odd.kept{color:var(--gold);border-color:#e8b84a80}.enchant-odd.broken{color:var(--red);border-color:#ff6a748c}.enchant-costs{flex-wrap:wrap;align-items:center;gap:6px;font-size:13.5px;display:flex}.enchant-costs small{flex-basis:100%}.enchant-confirm{border:1px solid #ff6a7480;border-radius:7px;align-items:flex-start;gap:10px;padding:10px;font-size:13.5px;display:flex}.enchant-confirm input{flex:none;width:22px;height:22px;margin:0}.enchant-dialog .button-row .btn{min-height:44px}.enchant-art .enchant-badge{color:#fff;text-shadow:0 1px 2px #000;font:700 13px Barlow,sans-serif;position:absolute;bottom:2px;right:4px}.enchant-outcome{border:1px solid var(--line);text-align:center;background:#05080c99;border-radius:8px;padding:8px 12px}.enchant-outcome h2{margin:0}.enchant-outcome p{margin:2px 0 0;font-size:13.5px}.enchant-outcome.enchant-success{border-color:#e8b84a99}.enchant-outcome.enchant-kept{border-color:#e8b84a66}.enchant-outcome.enchant-broken{border-color:#ff6a748c}.enchant-result{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.enchant-result .enchant-art{width:128px;height:128px}.enchant-shine .enchant-art{animation:1.2s ease-out enchant-glow}.enchant-outcome.enchant-success h2{color:var(--gold);font-size:28px}.enchant-outcome.enchant-kept h2{color:var(--gold)}.enchant-broken .enchant-outcome h2,.enchant-outcome.enchant-broken h2{color:var(--red);font-size:26px}.enchant-sheet{width:auto;max-height:calc(100dvh - var(--safe-top) - 24px);padding-bottom:calc(16px + var(--safe-bottom));overflow-y:auto}.enchant-broken .enchant-art{animation:.5s ease-in-out enchant-shake,1.4s ease-in .5s forwards enchant-fade;border-color:var(--red)!important}.enchant-shards{pointer-events:none;position:absolute;inset:0}.enchant-shards i{clip-path:polygon(50% 0,100% 100%,0 80%);opacity:0;background:#d9e2ea;width:10px;height:14px;animation:1s ease-out .45s forwards enchant-shard;position:absolute;top:50%;left:50%}.enchant-shards i:first-child{--dx:-70px;--dy:-50px}.enchant-shards i:nth-child(2){--dx:65px;--dy:-60px}.enchant-shards i:nth-child(3){--dx:-80px;--dy:30px}.enchant-shards i:nth-child(4){--dx:75px;--dy:40px}.enchant-shards i:nth-child(5){--dx:-10px;--dy:80px}.enchant-shards i:nth-child(6){--dx:20px;--dy:-85px}@keyframes enchant-glow{0%{box-shadow:0 0 #e8b84ae6}to{box-shadow:0 0 40px 12px #e8b84a00}}@keyframes enchant-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)rotate(-3deg)}40%,80%{transform:translate(6px)rotate(3deg)}}@keyframes enchant-fade{to{opacity:.15;filter:grayscale()}}@keyframes enchant-shard{0%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) rotate(200deg)}}@media (prefers-reduced-motion:reduce){.enchant-shine .enchant-art,.enchant-broken .enchant-art,.enchant-shards i{animation:none}.enchant-broken .enchant-art{opacity:.15}}.item-card{--rarity:#8b95a1;--card-line:#82a0be2e;flex-direction:column;gap:7px;font-size:13.5px;line-height:1.35;display:flex}.item-card .l{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.panel.detail:not(.sheet):has(>.item-card:not(.bar-only)){box-shadow:none;background:0 0;border:0;padding:0}.panel.detail:not(.sheet)>.item-card:not(.bar-only){border:1px solid color-mix(in srgb, var(--rarity) 35%, #82a0be40);background:linear-gradient(#121b26f7,#090e14f7);border-radius:12px;padding:12px 14px 10px;box-shadow:0 10px 30px #00000080,inset 0 1px #ffffff0d}.sheet.detail:has(>.item-card:not(.bar-only)){padding:0 14px 16px}.item-card-header{align-items:flex-start;gap:10px;display:flex}.item-card-title{flex:1;min-width:0}.item-card-title h3{flex-wrap:wrap;align-items:center;gap:2px 6px;margin:0;display:flex}.item-card-name{font-variant:small-caps;overflow-wrap:anywhere;min-width:0;font:700 20px/1.1 Cinzel,serif}.item-card-plus{color:var(--gold);font:800 13px Barlow,sans-serif}.item-card-kind{color:var(--mute);margin:2px 0 0;font-size:13px}.item-card-kind b{font-weight:600}.item-card-lock{width:32px;height:32px;color:var(--mute);background:0 0;border:1px solid #0000;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.item-card-lock svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linejoin:round;width:17px;height:17px}.item-card-lock.on{color:var(--gold);border-color:#e8b84a66}.item-card-body{grid-template-columns:118px minmax(0,1fr);align-items:start;gap:12px;display:grid}.item-card-side{flex-direction:column;gap:6px;min-width:0;display:flex}.item-card-picture{place-items:center;height:118px;display:grid;position:relative}.item-card-picture:before{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--rarity) 20%, transparent), transparent 66%);border:1px solid color-mix(in srgb, var(--rarity) 22%, transparent);border-radius:50%;width:112px;height:112px;position:absolute}.item-card-picture-art{justify-content:center;align-items:center;width:78px;height:78px;display:flex;position:relative}.item-card-picture-art .item-art{object-fit:contain;filter:drop-shadow(0 8px 14px #0009);width:100%;height:100%;position:static}.item-card-picture-art>svg{width:52px;height:52px}.item-card-picture .picture-zoom-button{background:#0a1018d9;border:1px solid #82a0be73;border-radius:50%;width:28px;height:28px;position:absolute;bottom:0;right:0}.item-card-picture .picture-zoom-button svg{width:14px;height:14px}.item-card-stats{border-top:1px solid var(--card-line)}.item-card-stat{border-bottom:1px solid var(--card-line);grid-template-columns:16px minmax(0,1fr) auto;align-items:center;column-gap:6px;min-height:26px;display:grid}.item-card-stat>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.item-card-stat b{white-space:nowrap;font-weight:800}.item-card-stat-icon{fill:none;width:15px;height:15px;stroke:var(--mute);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.item-card-diff{margin-left:5px;font-size:11.5px;font-weight:700}.item-card-stats-dense .item-card-stat{min-height:21px;font-size:12.5px}.item-card-stats-dense .item-card-random-label{margin-top:3px}.item-card-stats-dense+.item-card-sockets{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.item-card-nostat{border-top:1px solid var(--card-line);border-bottom:1px solid var(--card-line);min-height:26px;color:var(--mute);white-space:nowrap;text-overflow:ellipsis;align-items:center;margin:0;font-size:12.5px;display:flex;overflow:hidden}.item-card-sockets{gap:4px;display:grid}.item-card-socket{--family:#ff9f7a;border:1px solid color-mix(in srgb, var(--family) 45%, transparent);border-radius:8px;align-items:center;gap:7px;min-width:0;min-height:30px;padding:3px 7px;display:flex}.item-card-socket-ward{--family:#9fd0ff}.item-card-socket.empty{border-style:dashed}.item-card-socket-art{flex:none;width:20px;height:20px;position:relative}.item-card-socket-art .item-art{object-fit:contain;width:100%;height:100%}.item-card-socket-text{flex-direction:column;min-width:0;font-size:12.5px;line-height:1.2;display:flex}.item-card-socket-text small{letter-spacing:.07em;text-transform:uppercase;color:var(--family);font:800 9.5px Barlow,sans-serif}.item-card-socket-line{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.item-card-socket-text b{font-weight:700}.item-card-offhand{color:var(--mute);margin:0;font-size:12px}.item-card-random-label{letter-spacing:.08em;text-transform:uppercase;color:var(--rarity);opacity:.85;margin:6px 0 0;font:700 10.5px Barlow,sans-serif}.item-card-stat-random>span,.item-card-stat-random b{color:var(--rarity)}.item-card-offhand{color:var(--gold)}.item-card-info{color:var(--mute);margin:0;font-size:12.5px}.item-card-actions{flex-direction:column;gap:6px;display:flex}.item-card-actions-main,.item-card-actions-more{grid-auto-columns:1fr;grid-auto-flow:column;gap:6px;display:grid}.item-card-action{min-width:0;height:28px;color:var(--text);white-space:nowrap;background:#141e2af2;border:1px solid #82a0be52;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 8px;font:700 12px Barlow,sans-serif;text-decoration:none;display:flex}.item-card-actions-more .item-card-action{color:#c7d0d8;height:26px;font-size:11.5px}.item-card-action svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:14px;height:14px}.item-card-action .ui-icon{width:16px;height:16px}.item-card-action:hover:not(:disabled){border-color:var(--gold)}.item-card-action-equip:not(.off){color:#1c1204;background:linear-gradient(#e8b84a,#a67a1e);border-color:#c9952e}.item-card-action.off,.item-card-action:disabled{opacity:.55;cursor:default}.item-card-note{color:var(--gold);margin:0;font-size:12px;line-height:1.3}.item-card-foot{color:var(--mute);align-items:center;gap:8px;margin:0;font-size:11.5px;display:flex}.item-card-foot:before,.item-card-foot:after{content:"";border-top:1px solid var(--card-line);flex:1}.sheet .item-card-action{height:38px;font-size:13px}.sheet .item-card-actions-more .item-card-action{height:34px;font-size:12.5px}@media (pointer:coarse){.item-card-lock{position:relative}.item-card-lock:after,.item-card-picture .picture-zoom-button:after{content:"";position:absolute;inset:-8px}}.chat-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linejoin:round;flex-shrink:0;width:20px;height:20px}.chat-badge{color:#fff;text-align:center;background:#c0392b;border-radius:10px;min-width:20px;height:20px;padding:0 6px;font-size:11.5px;font-weight:800;line-height:20px;box-shadow:0 0 0 2px #070b10}.chat-fab{z-index:21;right:calc(12px + var(--safe-right));bottom:calc(var(--nav-height) + var(--safe-bottom) + 12px);width:52px;height:52px;color:var(--gold);background:#0e151ef5;border:1px solid #e8b84a80;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:fixed;box-shadow:0 8px 20px #0000008c}.chat-fab .chat-icon{width:24px;height:24px}.chat-fab .chat-badge{position:absolute;top:-4px;right:-4px}.chat-fab.chat-fab-desk{right:calc(16px + var(--safe-right));bottom:calc(16px + var(--safe-bottom))}.panel.sheet.chat-sheet{bottom:var(--chat-keyboard,0px);height:min(78dvh, calc(100dvh - var(--chat-keyboard,0px) - var(--safe-top) - 24px));background:#0a1017;flex-direction:column;padding-bottom:0;display:flex}.chat-sheet .chat-panel{flex:auto;min-height:0}.panel.chat-dock{z-index:20;right:calc(16px + var(--safe-right));bottom:calc(16px + var(--safe-bottom));background:#090e14;flex-direction:column;width:min(380px,100vw - 32px);padding:0;display:flex;position:fixed;overflow:hidden;box-shadow:0 14px 34px #0009}.chat-dock.open{height:min(520px, calc(100dvh - var(--top-height) - var(--safe-top) - 120px))}.chat-dock.closed{width:auto}.chat-dock-bar{min-height:44px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;gap:8px;padding:0 12px;font:700 15px Barlow,sans-serif;display:flex}.chat-dock.open .chat-dock-bar{border-bottom:1px solid var(--line)}.chat-dock-bar .chat-icon{color:var(--gold)}.chat-dock-bar>span:not(.chat-badge){flex:1}.chat-chevron{fill:none;stroke:currentColor;stroke-width:2px;width:18px;height:18px}.chat-dock .chat-panel{flex:auto;min-height:0}.chat-panel{font-size:var(--chat-font,14px);flex-direction:column;display:flex}.chat-empty{text-align:center;margin:0;padding:14px;font-size:13.5px}.chat-tabs{border-bottom:1px solid var(--line);flex-shrink:0;gap:2px;padding:4px 6px 0;display:flex;overflow-x:auto}.chat-tabs button{color:#aab6c2;white-space:nowrap;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:5px;min-height:40px;padding:0 11px;font:700 13.5px Barlow,sans-serif;display:flex;position:relative}.chat-tabs button.on{color:#fff;border-bottom-color:var(--gold)}.chat-tab-count{color:#fff;text-align:center;background:#c0392b;border-radius:9px;min-width:17px;height:17px;padding:0 5px;font-size:10.5px;font-weight:800;line-height:17px}.chat-muted{color:#ffcdc5;background:#a2342a40;margin:0;padding:7px 12px;font-size:13px}.chat-place{margin:0;padding:5px 12px 0;font-size:12px}.chat-messages{overscroll-behavior:contain;flex-direction:column;flex:auto;gap:3px;min-height:0;padding:6px 10px;display:flex;overflow-y:auto}.chat-older{border:1px solid var(--line);color:#aab6c2;background:0 0;border-radius:6px;align-self:center;min-height:36px;padding:0 12px;font:600 12.5px Barlow,sans-serif}.chat-line{overflow-wrap:anywhere;color:#dfe6ec;margin:0;line-height:1.4}.chat-time{color:#6f8090;font-variant-numeric:tabular-nums;margin-right:6px;font-size:.82em}.chat-sender{margin-right:6px;position:relative}.chat-name{color:#9fd0ff;font:inherit;cursor:pointer;background:0 0;border:none;min-height:0;padding:0;font-weight:700;text-decoration:none}@media (pointer:coarse){.chat-line{flex-wrap:wrap;align-items:center;column-gap:0;min-height:44px;display:flex}.chat-name{align-items:center;min-height:44px;display:inline-flex}.chat-line .chat-body{flex:100%;margin-top:-10px;padding-bottom:6px}.chat-line.chat-system .chat-body,.chat-line.chat-feed .chat-body{flex:auto;margin-top:0;padding:6px 0}}.chat-name:disabled{color:var(--gold);cursor:default}.chat-name:after{content:":";color:#6f8090}.chat-staff{letter-spacing:.04em;text-transform:uppercase;vertical-align:1px;border-radius:4px;margin-left:5px;padding:0 5px;font-size:.72em;font-weight:800}.chat-staff-admin{color:var(--gold);background:#e8b84a33;border:1px solid #e8b84a73}.chat-staff-moderator{color:#6fd08a;background:#6fd08a26;border:1px solid #6fd08a66}.chat-line.chat-system .chat-body{color:#e8b84a;font-weight:600}.chat-line.chat-feed .chat-body{color:#c9a7ff}.chat-menu-backdrop{z-index:30;position:fixed;inset:0}.panel.chat-menu{z-index:31;background:#0b1219;flex-direction:column;min-width:190px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 12px 30px #000000a6}.chat-menu button{min-height:44px;color:var(--text);text-align:left;background:0 0;border:none;border-radius:6px;padding:0 12px;font:600 14px Barlow,sans-serif}.chat-menu button:hover:not(:disabled){background:#ffffff0f}.chat-menu-title{color:var(--mute);padding:8px 12px 4px;font-size:12.5px}.chat-composer{padding:6px 8px calc(8px + var(--safe-bottom,0px));border-top:1px solid var(--line);flex-shrink:0}.chat-dock .chat-composer{padding-bottom:8px}.chat-composer-row{gap:6px;display:flex}.chat-composer input,.chat-find input{min-width:0;height:44px;color:var(--text);background:#0d141c;border:1px solid #82a0be4d;border-radius:6px;flex:1;padding:0 12px;font:500 16px Barlow,sans-serif}.chat-composer input:focus,.chat-find input:focus{outline-offset:1px;outline:2px solid #e8b84a99}.chat-composer .btn{justify-content:center;align-items:center;width:48px;height:44px;padding:0;display:flex}.chat-composer .btn svg{fill:currentColor;width:20px;height:20px}.chat-problem{color:var(--red);margin:0 0 6px;font-size:13px}.chat-closed{border-top:1px solid var(--line);text-align:center;flex-shrink:0;margin:0;padding:12px;font-size:13px}.chat-conversations{flex-direction:column;flex:auto;gap:6px;min-height:0;padding:8px;display:flex;overflow-y:auto}.chat-find{gap:6px;display:flex}.chat-find .btn{min-height:44px}.chat-conversations ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.chat-conversation{width:100%;min-height:48px;color:var(--text);font:inherit;text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:10px;padding:0 10px;display:flex}.chat-conversation:hover{background:#ffffff0a}.chat-conversation b{flex:1}.chat-conversation.unread b{color:#fff}.chat-conversation-head{border-bottom:1px solid #82a0be1f;flex-shrink:0;align-items:center;gap:10px;padding:6px 8px;display:flex}.chat-conversation-head .btn{min-height:36px}.chat-item-link{font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:none;padding:0;font-weight:700;text-decoration:underline}.chat-item-card{flex-direction:column;gap:12px;width:min(340px,100vw - 32px);padding:16px;display:flex}.chat-item-card-head{border-bottom:1px solid;align-items:center;gap:12px;padding-bottom:10px;display:flex}.chat-item-card-head>span:last-child{flex-direction:column;gap:2px;display:flex}.chat-item-card-head b{font:700 17px Barlow,sans-serif}.chat-item-card-art{background:#0006;border:1px solid;border-radius:8px;flex-shrink:0;width:64px;height:64px;display:flex;overflow:hidden}.chat-item-card-stats{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.chat-item-card-stats li{justify-content:space-between;display:flex}.chat-item-card-stats .num{color:var(--green)}.chat-item-card-note{margin:0;font-size:12px}.chat-item-card .btn{min-height:44px}.chat-slot{flex-direction:column;min-height:0;display:flex}@media (width>=1280px){.chat-slot .chat-embedded{z-index:auto;flex:1;width:100%;height:100%;position:static}.chat-slot .chat-embedded.closed{flex:none;height:auto;min-height:46px}.chat-slot .chat-tabs{gap:0;padding:4px 4px 0;overflow-x:hidden}.chat-slot .chat-tabs button{flex:auto;justify-content:center;min-width:0;padding:0 4px;font-size:12.5px}}.hero-activity{flex-direction:column;order:6;min-height:0;display:flex}.activity-body{flex-direction:column;gap:18px;display:flex}.activity-location{align-items:center;gap:12px;display:flex}.activity-location svg{flex-shrink:0;width:46px;height:46px}.activity-location small{margin-top:4px;display:block}.activity-map{justify-content:center;align-items:center;min-height:44px;text-decoration:none;display:flex}.activity-last{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding-top:16px;display:flex}.activity-last>small:first-child{letter-spacing:.06em;font-size:11px}.activity-last p{margin:0}.activity-result{justify-content:space-between;gap:12px;display:flex}.activity-last .btn{align-self:flex-start}.character-page #attributes .attribute-add{flex-shrink:0;width:30px;padding:0}.character-page #attributes .attribute-points{color:var(--gold)}.hero-tabs{flex-shrink:0;gap:6px;padding:8px;display:flex}.hero-tabs button{min-height:38px;color:var(--mute);background:#070b10b3;border:0;border-bottom:2px solid #0000;padding:0 16px;font:600 14px Barlow,sans-serif}.hero-tabs button.on{border-bottom-color:var(--gold);color:var(--gold)}.armory{isolation:isolate;background:linear-gradient(#050a118c,#050a1126 65%,#050a11b3),url(/assets/backgrounds/armory.webp) 50%/cover;border-radius:8px}.hero-equipment{flex-direction:column;flex:1;min-height:0;display:flex}.armory .screen-title{padding:4px 10px 10px}.armory .screen-title h1{overflow-wrap:anywhere}.armory .paperdoll{align-self:center;width:100%;max-width:760px;padding:0 12px}.armory-hero{position:relative}.armory-hero:after{content:"";filter:blur(8px);background:#0000008c;border-radius:50%;height:12px;position:absolute;bottom:0;left:20%;right:20%}.armory-hero img{z-index:1}.armory .empty-slot{opacity:.9;border-style:solid}.slot.blocked-slot>svg:first-child{opacity:.25!important}.slot-lock{fill:none;width:22px;height:22px;stroke:var(--gold);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;position:absolute}.armory .slot-label{letter-spacing:.02em;font-size:11px;display:block}.armory .center-actions{padding:6px 0 10px}.armory-item-detail{z-index:3;max-height:55%;padding:0 12px 12px;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}.armory-item-detail .detail{width:100%;max-width:380px;margin:0 auto;position:static;transform:none}.hero-masteries{min-height:0;padding:12px;overflow-y:auto}.character-page .inventory-actions{flex-wrap:wrap;align-items:center}.character-page .bag .panel-head{flex-wrap:wrap;height:auto;padding:8px}@media (width>=1280px){.app.character-page .right-column{grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.character-page .hero-activity{grid-row:1;overflow-y:auto}.character-page .chat-embedded{grid-row:2}.character-page.character-chat-collapsed .hero-activity{display:none}.app.character-page.character-chat-collapsed .right-column{display:flex}.character-page #attributes .attr{height:auto;min-height:44px}.character-page #combat{flex-direction:column;flex:1 0 auto;display:flex}.character-page #combat .stats{flex:1;grid-auto-rows:minmax(28px,1fr)}.character-page #combat .stats>.stat-row{height:auto;min-height:28px}.app.character-page{grid-template-rows:auto minmax(360px,1fr) 280px;grid-template-areas:"top top top""left center right""left bag right"}.character-page .armory-item-detail{scrollbar-width:thin;width:min(408px,100%);max-height:calc(100% - 118px);margin-inline:auto;padding-bottom:2px}@media (height<=900px){.character-page .armory-item-detail{max-height:calc(100% - 48px)}}.character-page .chat-embedded{z-index:auto;flex:1;width:100%;height:100%;position:static}.character-page .chat-embedded.closed{flex:none;height:auto;min-height:46px}.character-page.character-chat-collapsed{grid-template-columns:300px minmax(0,1fr) 112px}.character-page .hero-figure{max-width:none}}@media (width>=1280px) and (height<=950px){.character-page #attributes .attr{min-height:38px}.character-page #combat .stats{grid-auto-rows:minmax(23px,1fr)}.character-page #combat .stats>.stat-row{min-height:23px}.app.character-page{grid-template-rows:auto minmax(300px,1fr) 250px}.armory .column{gap:4px}.armory .slot{width:44px;height:44px}.armory .slot svg{width:30px;height:30px}.armory .screen-title h1{font-size:22px}.armory .hero-tabs{padding:4px}.armory .hero-tabs button{min-height:34px}}@media (width>=1280px) and (height<=820px){.app.character-page{grid-template-rows:auto minmax(300px,1fr) 200px}}@media (width>=1280px) and (height<=740px){.app.character-page{grid-template-rows:auto minmax(300px,1fr) 160px}.character-page .armory-item-detail{max-height:calc(100% - 40px)}}@media (width>=1600px){.character-page.character-chat-collapsed{grid-template-columns:340px minmax(0,1fr) 112px}}@media (width>=1280px) and (height<=800px) and (pointer:fine){.character-page #attributes .attr{min-height:32px}}@media (width<=1279px){.character-page .right-column{display:contents}.armory-item-detail{max-height:none;position:static}}@media (width>=768px) and (width<=1279px){.app.character-page .right-column{display:flex}}@media (height<=850px){.activity-body{gap:10px;padding:10px 12px}.activity-last{gap:6px;padding-top:10px}}@media (width<=767px){.armory .screen-title h1{font-size:21px}.armory .paperdoll{gap:6px;height:440px;padding:0 6px}.armory .slot{width:48px;height:48px}.armory .slot svg{width:32px;height:32px}.armory .hero-figure{max-width:calc(100% - 108px)}.armory .slot-label{letter-spacing:0;overflow-wrap:anywhere;max-width:52px;font-size:11px}}@media (pointer:coarse){.character-page #attributes .attribute-add{width:44px;min-height:44px}.hero-tabs button{min-height:44px}}@media (width>=1280px) and (height<=700px){.character-page .center{min-height:0;overflow:hidden}.armory .slot-label{display:none}.armory .slot{width:52px;height:52px}.armory .screen-title h1{font-size:20px}.armory .screen-title div{font-size:12.5px}.armory .center-actions{padding:0}.character-page .armory-item-detail{width:min(520px,100%);max-height:calc(100% - 42px);padding-bottom:4px}.armory-item-detail .detail{max-width:520px;padding:8px 12px}.armory-item-detail .item-card{gap:5px}.armory-item-detail .item-card-stat{min-height:20px}.armory-item-detail .item-card-actions{flex-flow:wrap}.armory-item-detail .item-card-actions-main{flex:3 1 0}.armory-item-detail .item-card-actions-more{flex:2 1 0}.armory-item-detail .item-card-actions-more .item-card-action{height:28px}.armory-item-detail .item-card-foot,.armory-item-detail .item-card-note{flex:1 0 100%}}.app.app-workshop{flex-direction:column;align-items:stretch;display:flex}.workshop{grid-template-columns:minmax(0,1fr);gap:12px;width:100%;min-width:0;padding-bottom:12px;display:grid}.workshop-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.workshop-breadcrumb{color:var(--mute);font-size:14px}.workshop-breadcrumb a{color:var(--text);text-decoration:none}.workshop-tabs{border:1px solid var(--line);background:#0a0e14b3;border-radius:10px;gap:4px;padding:3px;display:flex}.workshop-tabs button{min-width:96px;min-height:44px;color:var(--mute);letter-spacing:.04em;background:0 0;border:none;border-radius:7px;padding:0 16px;font:700 14px Barlow,sans-serif}.workshop-tabs button.on{color:#1c1204;background:linear-gradient(#e8b84a,#a67a1e)}.workshop-in,.workshop-out,.workshop-centre{min-width:0}.workshop-centre{flex-direction:column;gap:12px;display:flex}.workshop-out{flex-direction:column;display:flex}.workshop-out-body{min-width:0}.workshop-scene{border:1px solid var(--line);background-color:#0b1016;background-position:50% 60%;background-repeat:no-repeat;background-size:cover;border-radius:8px;flex-direction:column;justify-content:flex-start;align-items:center;min-height:160px;padding:18px 12px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 80px #00000059}.workshop-scene:before{content:"";pointer-events:none;background:linear-gradient(#050a11b3,#050a111f 55%,#050a1140);position:absolute;inset:0}.workshop-scene h1{letter-spacing:.08em;color:#f6e7c4;text-shadow:0 2px 10px #000;text-align:center;margin:0;font:700 30px Cinzel,serif;position:relative}.workshop-scene p{color:#d9e2ea;text-shadow:0 1px 4px #000;text-align:center;margin:2px 0 0;position:relative}.workshop-tabs-column{display:none}@media (width>=768px){.workshop-tabs-in-column .workshop-tabs-top{display:none}.workshop-tabs-in-column .workshop-tabs-column{grid-auto-columns:1fr;grid-auto-flow:column;margin:10px 12px 2px;display:grid}.workshop-tabs-in-column .workshop-tabs-column button{min-width:0}}.workshop-in-toggle{display:none}.workshop-action{border-top:1px solid #82a0be24;padding:10px 12px 12px}.workshop-action .btn{width:100%;min-height:52px;font-size:17px}@media (width<=767px){.workshop-top{order:0}.workshop-centre{display:contents}.workshop-scene{order:1}.workshop-in{order:2}.workshop-centre>:not(.workshop-scene){order:3}.workshop-out{order:4}.workshop-in .workshop-in-head{display:none}.workshop-in-toggle{width:100%;min-height:56px;color:var(--text);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:8px 14px;display:flex}.workshop-in-toggle-text{flex-direction:column;min-width:0;display:flex}.workshop-in-toggle-text small{color:var(--mute);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.workshop-in-chevron{color:var(--gold);transition:transform .15s}.workshop-in.open .workshop-in-chevron{transform:rotate(180deg)}.workshop-in:not(.open) .workshop-in-body{display:none}.workshop-action{bottom:calc(var(--nav-height) + var(--safe-bottom));z-index:5;background:#080c12f7;border-radius:0 0 8px 8px;position:sticky}}@media (width>=768px){.workshop{grid-template-columns:minmax(280px,340px) minmax(0,1fr);align-items:start}.workshop-top{grid-column:1/-1}.workshop-in{max-height:calc(100dvh - var(--top-height) - 24px);flex-direction:column;grid-area:2/1/span 2;display:flex;position:sticky;top:12px}.workshop-in-body{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;flex:auto;min-height:0;overflow:auto}.workshop-centre{grid-area:2/2}.workshop-out{grid-area:3/2}.workshop-scene{min-height:180px}.workshop-scene h1{font-size:36px}}@media (width>=1280px){.workshop{grid-template-columns:minmax(0,360px) minmax(0,1fr) minmax(0,360px)}.workshop-in{grid-row:2}.workshop-out{max-height:calc(100dvh - var(--top-height) - 24px);grid-area:2/3;position:sticky;top:12px}.workshop-out-body{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;flex:auto;min-height:0;overflow:auto}.workshop-scene{min-height:clamp(160px,20dvh,240px)}.workshop-scene h1{font-size:44px}}@media (width>=1280px) and (width<=1599px){.workshop{grid-template-columns:minmax(0,320px) minmax(0,1fr) minmax(0,320px)}}@media (width>=768px){.workshop.workshop-no-in{grid-template-columns:minmax(0,1fr)}.workshop-no-in .workshop-centre,.workshop-no-in .workshop-out{grid-column:1}}@media (width>=1280px){.workshop.workshop-no-in{grid-template-columns:minmax(0,1fr) minmax(0,420px)}.workshop-no-in .workshop-out{grid-column:2}.workshop.workshop-no-out{grid-template-columns:minmax(0,340px) minmax(0,1fr)}}.workshop-right{display:contents}@media (width>=1280px){.workshop-right{height:calc(100dvh - var(--top-height) - 24px);grid-area:2/3;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:12px;min-width:0;min-height:0;display:grid;position:sticky;top:12px}.workshop-right>.workshop-out{grid-area:auto;min-height:0;max-height:none;position:static}.app.app-workshop{height:100dvh;min-height:0;overflow:hidden}.workshop{flex:1 1 0;grid-template-rows:auto minmax(0,1fr);align-items:stretch;min-height:0}.workshop-in,.workshop-out,.workshop-right{height:auto;min-height:0;max-height:none;position:static;top:auto}.workshop-centre{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;min-height:0;overflow-y:auto}.workshop-centre>.workshop-scene{flex:none;justify-content:center;height:210px;min-height:0;container-type:size}}@media (width>=1280px) and (height<=1000px){.workshop-centre>.workshop-scene{height:140px}}@media (width>=1280px) and (height<=900px){.workshop-centre>.workshop-scene{height:130px}}@media (width>=1280px) and (height<=800px){.workshop-centre>.workshop-scene{height:80px}.workshop-right{grid-template-rows:minmax(0,1.5fr) minmax(0,1fr)}}@media (width>=1280px) and (height<=760px){.workshop-centre>.workshop-scene{height:64px}}@container (height<=110px){.workshop-scene h1{font-size:30px}.workshop-scene p{display:none}}.workshop-relics .workshop-scene{background-position:50% 55%}.workshop-relics .workshop-scene h1{color:#f3e2b6}.collection-summary{flex-wrap:wrap;align-items:center;gap:10px 18px;padding:12px 16px;display:flex}.collection-summary-count{font-size:15px}.collection-summary-count b{color:var(--gold);font:700 26px Cinzel,serif}.collection-summary-bonuses{flex-wrap:wrap;flex:260px;gap:6px;display:flex}.collection-bonus{color:var(--green);background:#6fd08a14;border:1px solid #6fd08a59;border-radius:999px;padding:4px 10px;font-size:13.5px;font-weight:600}.collection-filters{flex-direction:column;gap:6px;padding:10px 12px;display:flex}.collection-search-row{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.collection-filters-toggle{align-items:center;gap:6px;min-height:44px;padding:0 12px;display:inline-flex}.collection-filters-toggle.on{border-color:var(--gold);color:var(--gold)}.collection-filters-count{background:var(--gold);color:#1c1204;text-align:center;border-radius:9px;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:800;line-height:18px}.collection-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.collection-filters input[type=search],.collection-filters select{border:1px solid var(--line);min-height:44px;color:var(--text);background:#05080cb3;border-radius:6px;padding:0 10px;font:500 14px Barlow,sans-serif}.collection-ready-toggle{grid-column:1/-1;align-items:center;gap:8px;min-height:44px;font-size:14px;display:flex}.collection-ready-toggle input{width:20px;height:20px;accent-color:var(--gold)}.collection-list{flex-direction:column;gap:6px;min-height:0;margin:0;padding:0 12px 12px;list-style:none;display:flex;overflow:auto}.collection-row{text-align:left;border:1px solid var(--line);width:100%;min-height:64px;color:var(--text);font:inherit;background:#0a0e14bf;border-radius:7px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.collection-row.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px #e8b84a80}.collection-row.complete{border-color:#6fd08a73}.collection-row-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.collection-row-head b{font-weight:600}.collection-row-meta{flex-wrap:wrap;gap:8px;font-size:12.5px;display:flex}.collection-ready{background:var(--gold);color:#1c1204;border-radius:11px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:12px;font-weight:800;display:inline-flex}.collection-progress{align-items:center;gap:8px;font-size:12.5px;display:flex}.collection-progress .bar{flex:1;height:6px}.collection-progress .bar>i{background:linear-gradient(90deg, #a67a1e, var(--gold))}.collection-row.complete .collection-progress .bar>i{background:linear-gradient(90deg, #3f7a4a, var(--green))}.collection-chip{border:1px solid var(--line);color:var(--mute);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}.collection-chip.status-complete{color:var(--green);border-color:#6fd08a66}.collection-empty{text-align:center;padding:24px 12px}.collection-detail{flex-direction:column;gap:12px;padding:14px 16px 16px;display:flex}.collection-detail-head h2{color:#f0e6cf;margin:0;font:700 22px Cinzel,serif}.collection-detail-head p{margin:4px 0 8px}.collection-chips{flex-wrap:wrap;gap:6px;display:flex}.collection-rewards{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.collection-rewards li{background:#ffffff08;border-radius:6px;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 10px;font-size:14px;display:grid}.collection-rewards li span:first-child{color:var(--mute);font-size:12.5px}.collection-rewards li.earned b{color:var(--green)}.collection-check{color:var(--green);font-weight:900}.collection-entries{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;display:grid}.collection-entry{border:1px solid var(--line);width:100%;min-height:80px;color:var(--text);font:inherit;text-align:left;background:#0a0e14bf;border-radius:8px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:4px 10px;padding:8px;display:grid}.collection-entry.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px #e8b84a80}.collection-entry.ready:not(.on){border-color:#e8b84a73}.collection-entry.done{border-color:#6fd08a59}.collection-entry-art{border:1px solid;border-radius:8px;justify-content:center;align-items:center;width:64px;height:64px;display:flex;position:relative;overflow:hidden}.collection-entry-art svg{width:42px;height:42px}.collection-entry.missing .collection-entry-art>img,.collection-entry.missing .collection-entry-art>svg{filter:brightness(0)drop-shadow(0 0 1px #a0b4c88c);opacity:.8}.collection-entry-art .collection-check{text-shadow:0 1px 2px #000;position:absolute;top:2px;right:4px}.collection-entry-text{flex-direction:column;min-width:0;display:flex}.collection-entry-text b{font-size:14px;font-weight:600}.collection-entry-text small{color:var(--mute);font-size:12.5px}.collection-entry-text small.green{color:var(--green)}.collection-pick{margin:0;padding:4px 2px;font-size:14px}.collection-candidates{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px;display:grid}.collection-candidate{border:1px solid var(--line);min-height:56px;color:var(--text);text-align:left;font:inherit;background:#0a0e14b3;border-radius:7px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.collection-candidate.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px #e8b84a80}.collection-candidate small{color:var(--mute);font-size:12.5px}.collection-candidate small.gold{color:var(--gold)}.collection-out{flex-direction:column;gap:10px;padding:12px;display:flex}.collection-out-title{color:var(--gold);margin:6px 0 0;font-size:14px}.collection-out .collection-summary{padding:10px 12px}.workshop-relics .collection-list{padding-top:4px;overflow:visible}.modal .panel.collection-confirm{flex-direction:column;gap:10px;max-width:420px;padding:18px;display:flex}.collection-confirm h2{margin:0;font:700 19px Cinzel,serif}.collection-confirm p{margin:0}.collection-warning{color:#f0a431}.collection-confirm .button-row .btn{min-height:44px}.cell .collect-mark{width:14px;height:14px;fill:var(--gold);filter:drop-shadow(0 1px 1px #000);position:absolute;top:2px;right:3px}.nav-badge{background:var(--gold);color:#1c1204;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font:800 11px Barlow,sans-serif;display:inline-flex;position:absolute;top:2px;right:2px}.nav-badge.dot{width:10px;min-width:10px;height:10px;padding:0}.nav a,.nav button,.bottom-nav a,.bottom-nav button{position:relative}.collection-lock{fill:none;width:15px;height:15px;stroke:var(--mute);stroke-width:2px;stroke-linejoin:round;flex:none}.collection-locked{color:var(--mute);align-items:center;gap:6px;margin:8px 0 0;font-size:13.5px;display:flex}.app.app-rewards{flex-direction:column;align-items:stretch;display:flex}@media (width>=1280px){.app.app-rewards{height:auto;min-height:100dvh;display:flex}}.rewards-page{flex-direction:column;gap:12px;width:100%;max-width:1400px;margin:0 auto;padding-bottom:12px;display:flex}.rewards-panel{padding:16px}.rewards-empty{text-align:center;padding:24px}.login-calendar{flex-direction:column;gap:12px;display:flex}.login-calendar-head h2{color:var(--gold);margin:0;font:700 22px Cinzel,serif}.login-calendar-head p{margin:4px 0 0}.login-days{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}@media (width>=560px){.login-days{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=1100px){.login-days{grid-template-columns:repeat(7,minmax(0,1fr))}}.login-day{border:1px solid var(--line);background:#0a0e14bf;border-radius:8px;flex-direction:column;gap:6px;min-height:92px;padding:8px;display:flex;position:relative}.login-day .reward-list li{padding:2px 7px 2px 2px;font-size:12px}.login-day .reward-icon{width:20px;height:20px}.login-day .reward-list .cost-chip{padding:2px 7px 2px 2px;font-size:12px}.login-day .reward-list .cost-chip .cost-tile-art{width:20px;height:20px}.login-day .reward-icon svg,.login-day .reward-icon img{width:16px;height:16px}.login-day-number{color:var(--mute);font-size:13px;font-weight:700}.login-day-status{color:var(--mute);margin-top:auto;font-size:12px;font-weight:700}.login-day.status-claimed{opacity:.6}.login-day.status-claimed .login-day-status{color:var(--green)}.login-day.status-today{border-color:var(--gold);box-shadow:inset 0 0 0 1px #e8b84a73,0 0 14px #e8b84a40}.login-day.status-today .login-day-number,.login-day.status-today .login-day-status{color:var(--gold)}.login-day.status-next{border-style:dashed}.login-claim{align-self:center;min-width:220px;min-height:48px}.modal .panel.login-popup{flex-direction:column;gap:10px;width:min(980px,100vw - 24px);max-height:92dvh;padding:18px 18px 0;display:flex;overflow-y:auto}.login-footer{background:linear-gradient(#0e151e00,#0e151ef7 30%);flex-wrap:wrap;justify-content:center;gap:8px;padding:10px 0 14px;display:flex;position:sticky;bottom:0}.rewards-panel .login-footer{background:0 0;padding-bottom:0;position:static}.login-later{align-self:center;min-width:140px;min-height:44px}.login-claimed{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:12px 0;display:flex;position:relative;overflow:hidden}.login-claimed h2{color:var(--gold);margin:0;font:700 22px Cinzel,serif;position:relative}.login-claimed p,.login-claimed .reward-list,.login-claimed .btn{margin:0;position:relative}.login-claimed .btn{min-width:160px;min-height:44px}.hero-title{color:var(--gold)}.achievement-categories{flex-wrap:wrap;gap:6px;display:flex}.achievement-categories button{border:1px solid var(--line);min-height:40px;color:var(--mute);background:#0a0e14cc;border-radius:20px;align-items:center;padding:0 14px;font:600 14px Barlow,sans-serif;display:inline-flex}.achievement-categories button.on{border-color:var(--gold);color:var(--text);background:#e8b84a1f}.achievement-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:10px;display:grid}@media (width>=768px){.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1280px){.achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.achievement-card{border:1px solid var(--line);background:var(--panel);border-radius:9px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.achievement-card.done{border-color:#6fd08a66}.achievement-card header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.achievement-card header b{color:#f0e6cf;font:700 16px Barlow,sans-serif}.achievement-card header .num{color:var(--gold);font-size:13.5px;font-weight:700}.achievement-card p{margin:0;font-size:13.5px}.achievement-card>.bar{height:7px}.achievement-card>.bar>i{background:linear-gradient(90deg, #a67a1e, var(--gold))}.achievement-tiers{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.achievement-tiers>li{background:#ffffff08;border-radius:7px;flex-direction:column;gap:5px;padding:7px 9px;display:flex}.achievement-tiers>li.status-reached{background:#e8b84a14;box-shadow:inset 0 0 0 1px #e8b84a66}.achievement-tiers>li.status-claimed{opacity:.65}.achievement-tier-head{color:var(--mute);justify-content:space-between;font-size:13px;font-weight:700;display:flex}.achievement-title{color:var(--gold);font-size:12.5px;font-weight:600}.achievement-tiers>li .btn{align-self:flex-end;min-width:110px;min-height:44px}.titles-panel .titles{flex-wrap:wrap;gap:6px;padding:10px 12px 14px;display:flex}.title-chip{border:1px solid var(--line);min-height:44px;color:var(--text);background:#0a0e14cc;border-radius:22px;padding:0 14px;font:600 14px Barlow,sans-serif}.title-chip.on{border-color:var(--gold);color:var(--gold);background:#e8b84a24}.title-chip:disabled{opacity:.55}.achievement-tier-head{align-items:center;gap:8px}.achievement-tiers>li .achievement-claim{align-self:center;min-width:90px;min-height:30px;margin-left:auto;padding:0 14px}@media (pointer:coarse){.achievement-tiers>li .achievement-claim{min-height:44px}}@media (width>=768px){.achievement-grid{grid-auto-rows:1fr;align-items:stretch}}.app.app-shop{flex-direction:column;align-items:stretch;display:flex}@media (width>=1280px){.app.app-shop{height:auto;min-height:100dvh;display:flex}}.shop{flex-direction:column;gap:14px;width:100%;max-width:1400px;margin:0 auto;padding-bottom:12px;display:flex}.shop-balance{background:#e8b84a14;border:1px solid #e8b84a66;border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:6px 12px;font-size:15px;display:inline-flex}.gold-gem{color:var(--gold)}.shop-section h2{color:#f0e6cf;letter-spacing:.05em;margin:0 0 8px;font:700 18px Cinzel,serif}.shop-grid{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px;display:grid}@media (width>=768px){.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1280px){.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.shop-card{border:1px solid var(--line);background:var(--panel);border-radius:10px;flex-direction:column;gap:8px;padding:14px;display:flex;position:relative;overflow:hidden}.shop-card.kind-pass{background:linear-gradient(160deg, #e8b84a1a, var(--panel) 45%)}.shop-card.active{border-color:#6fd08a8c}.shop-card-art{background:radial-gradient(circle at 50% 40%,#e8b84a33,#0a0e14e6 70%);border:1px solid #e8b84a59;border-radius:10px;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:absolute;top:12px;right:12px}.shop-card-art img,.shop-card-art svg{width:44px;height:44px}.shop-card-symbol{color:var(--gold);font-size:26px}.shop-card header{align-items:center;gap:8px;padding-right:64px;display:flex}.shop-card header b{color:#f0e6cf;font:700 17px Barlow,sans-serif}.shop-chip{border:1px solid var(--line);color:var(--mute);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:700}.shop-card>p{margin:0;padding-right:64px;font-size:13.5px}.shop-pass-part{flex-direction:column;gap:4px;display:flex}.shop-bonuses{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.shop-bonuses li{color:var(--green);border:1px solid #6fd08a59;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:600}.shop-meta{color:var(--mute);flex-wrap:wrap;gap:4px 12px;margin-top:auto;font-size:12.5px;display:flex}.shop-timer{color:#f0a431}.shop-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.shop-actions .btn{min-width:120px;min-height:44px}.shop-price:disabled{opacity:.75}.shop-problem{color:#f0a431;text-align:right}.modal .panel.shop-confirm{flex-direction:column;gap:10px;max-width:400px;padding:18px;display:flex}.shop-confirm h2{margin:0;font:700 19px Cinzel,serif}.shop-confirm p{margin:0}.shop-confirm .button-row .btn{min-height:44px}.shop-closed{color:var(--red);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;background:#ff6a741a;border:1px solid #ff6a7480;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.app.app-forge{flex-direction:column;align-items:stretch;display:flex}.forge-page{grid-template-columns:minmax(0,1fr);gap:10px;padding-bottom:12px;display:grid}.forge-left,.forge-centre,.forge-right{min-width:0}@media (width>=1280px){.app.app-forge{height:100dvh;min-height:0;overflow:hidden}.forge-page{flex:1 1 0;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,320px) minmax(0,1fr) minmax(0,320px);min-height:0}.forge-left,.forge-centre,.forge-right{min-height:0}}@media (width>=1600px){.forge-page{grid-template-columns:minmax(0,360px) minmax(0,1fr) minmax(0,360px)}}@media (width>=768px) and (width<=1279px){.forge-page{grid-template-columns:minmax(0,300px) minmax(0,1fr);align-items:start}.forge-right{grid-column:1/-1}.forge-rarity-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.forge-left{max-height:calc(100dvh - var(--top-height) - 24px);position:sticky;top:12px}}.forge-left{flex-direction:column;display:flex;overflow:hidden}.forge-tabs{border-bottom:1px solid #82a0be24;flex:none;grid-template-columns:1fr 1fr;gap:6px;padding:10px;display:grid}.forge-tabs button{min-height:40px;color:var(--text);letter-spacing:.03em;background:#141e2af2;border:1px solid #82a0be4d;border-radius:6px;font-weight:700}.forge-tabs button.on{color:#1c1204;background:linear-gradient(#e8b84a,#a67a1e);border-color:#c9952e}.forge-chips{border-bottom:1px solid #82a0be24;flex:none;grid-template-columns:repeat(3,1fr);gap:6px;padding:10px;display:grid}.forge-chip{min-height:32px;color:var(--mute);background:0 0;border:1px solid #82a0be40;border-radius:6px;font-size:13px;font-weight:600}.forge-chip.on{color:var(--gold);background:#e8b84a14;border-color:#e8b84ab3}@media (pointer:coarse){.forge-tabs button,.forge-chip{min-height:44px}}.forge-list{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;scrollbar-gutter:stable;flex-direction:column;flex:auto;gap:6px;min-height:0;padding:8px 10px 10px;display:flex;overflow-y:auto}.forge-list::-webkit-scrollbar{width:8px}.forge-list::-webkit-scrollbar-track{background:#0b1118;border-radius:8px}.forge-list::-webkit-scrollbar-thumb{background:#526171;border:2px solid #0b1118;border-radius:8px}.forge-list::-webkit-scrollbar-thumb:hover{background:#8090a0}.forge-rows{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.forge-row{width:100%;color:var(--text);text-align:left;background:#0a1018b3;border:1px solid #82a0be29;border-radius:8px;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:12px;padding:6px 10px 6px 6px;display:grid}.forge-row:hover{border-color:#a0bedc66}.forge-row.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px #e8b84a59}.forge-row-art{background:radial-gradient(circle,#b9c2cc29,#00000040 70%);border:1px solid #82a0be33;border-radius:7px;justify-content:center;align-items:center;width:56px;height:56px;display:flex;overflow:hidden}.forge-row-art .item-art{width:86%;height:86%}.forge-row-art>svg{width:34px;height:34px}.forge-row-text{flex-direction:column;min-width:0;display:flex}.forge-row-text b{white-space:nowrap;text-overflow:ellipsis;font-size:15px;overflow:hidden}.forge-row-text small{color:var(--mute);font-size:12.5px}.forge-row-value{color:var(--mute);text-align:right;white-space:nowrap;font-size:12.5px;font-weight:700}.forge-empty{text-align:center;padding:20px 6px}.forge-orders{border-top:1px solid #82a0be24;flex:none}.forge-orders .panel-head{border-bottom:0}.forge-orders ul{margin:0;padding:0;list-style:none}.forge-order{align-items:center;gap:10px;padding:6px 10px;font-size:13px;display:flex}.forge-order-art{flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.forge-order-art .item-art{width:100%;height:100%}.forge-order-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.forge-order-text>span:first-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.forge-order-bar{height:5px}.forge-order-bar i{background:var(--gold)}.forge-order-time{font-weight:700}.forge-order-cancel{width:26px;height:26px;color:var(--mute);background:0 0;border:1px solid #82a0be4d;border-radius:6px;padding:0}@media (pointer:coarse){.forge-order-cancel{width:44px;height:44px}}.forge-orders-free{margin:0;padding:0 10px 8px;font-size:12.5px}.forge-centre{flex-direction:column;gap:10px;display:flex}@media (width>=1280px){.forge-centre{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;overflow-y:auto}.forge-centre>*{flex-shrink:0}.forge-centre>.forge-banner{flex:none;height:210px;min-height:0;container-type:size}.forge-centre>.forge-show{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;flex:auto;min-height:0;overflow-y:auto}}@media (width>=1280px) and (height<=1000px){.forge-centre>.forge-banner{height:140px}.forge-show .forge-show-rows{--row:26px}}@media (width>=1280px) and (height<=900px){.forge-centre>.forge-banner{height:130px}.forge-show .forge-show-rows{--row:24px}}@media (width>=1280px) and (height<=800px){.forge-centre>.forge-banner{height:80px}.forge-show .forge-show-rows{--row:24px;min-height:calc(4 * var(--row) + 1px)}.forge-cost .forge-cost-body{gap:4px;padding:6px 12px}.forge-cost .cost-card{padding:4px 6px}.forge-cost .forge-qty .btn,.forge-cost .forge-qty input,.forge-cost .forge-go,.forge-cost .forge-bag,.forge-cost .runes-remove{height:36px;min-height:36px}}@media (width>=1280px) and (height<=760px){.forge-centre>.forge-banner{height:64px}}@container (height<=110px){.forge-banner h1{font-size:30px}.forge-banner p{display:none}}.forge-banner{text-align:center;border:1px solid var(--line);background-color:#0b1016;background-position:50% 45%;background-size:cover;border-radius:8px;flex-direction:column;flex:none;justify-content:center;align-items:center;height:210px;display:flex;position:relative;overflow:hidden}.forge-banner:after{content:"";background:linear-gradient(#04070b40,#04070b99);position:absolute;inset:0}.forge-banner h1,.forge-banner p{z-index:1;margin:0;position:relative}.forge-banner h1{letter-spacing:.1em;color:#f0e6cf;text-shadow:0 2px 12px #000;font:700 40px Cinzel,serif}.forge-banner p{color:#d8dde3;font-size:14px}.forge-show{--show-color:#b9c2cc;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;padding:10px 24px;display:grid}.forge-show-picture{border-right:1px solid var(--line);justify-content:center;align-items:center;height:100%;min-height:196px;margin-right:28px;display:flex;position:relative}.forge-show-circle{border:1px solid color-mix(in srgb, var(--show-color) 25%, transparent);background:radial-gradient(circle, color-mix(in srgb, var(--show-color) 24%, transparent), transparent 66%);border-radius:50%;flex:none;justify-content:center;align-items:center;width:196px;height:196px;display:flex}.forge-show-art{justify-content:center;align-items:center;width:67%;height:67%;display:flex}.forge-show-art .item-art{object-fit:contain;filter:drop-shadow(0 12px 20px #000000a6);width:100%;height:100%}.forge-show-art>svg{width:60%;height:60%}.forge-show-picture .picture-zoom-button{width:40px;height:40px;position:absolute;bottom:6px;right:18px}@media (pointer:coarse){.forge-show-picture .picture-zoom-button{width:44px;height:44px}}.forge-show-facts{min-width:0}.forge-show-kicker{letter-spacing:.08em;color:var(--gold);margin:0;font:800 13px Barlow,sans-serif}.forge-show-name{font-variant:small-caps;margin:2px 0 4px;font:700 30px/1.1 Cinzel,serif}.forge-show-refined{color:#f0e6cf}.forge-show-sub{color:var(--mute);margin:0;font-size:15px}.forge-show-sub b{font-weight:600}.forge-pills{flex-wrap:wrap;gap:6px;margin:8px 0 2px;display:flex}.forge-pill{background:#0a1018cc;border:1px solid #82a0be4d;border-radius:15px;align-items:center;gap:4px;min-height:30px;padding:0 12px;font-size:12.5px;font-weight:700;display:inline-flex}.forge-pill.on{box-shadow:inset 0 0 0 2px}.forge-pill:disabled{opacity:.45}.forge-pill .lock-badge{width:12px;height:12px}@media (pointer:coarse){.forge-pill{min-height:44px}}.forge-show-rows{border-top:1px solid var(--line);margin:8px 0 0;padding:0;list-style:none}.forge-show-rows li{border-bottom:1px solid var(--line);justify-content:space-between;gap:10px;padding:5px 0;font-size:15px;display:flex}@media (width>=1280px){.forge-show-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.forge-show-rows{--row:31px;min-height:calc(5 * var(--row) + 1px)}.forge-show-rows li{box-sizing:border-box;height:var(--row);white-space:nowrap;align-items:center;padding:0}}.forge-show-rows b{font-weight:800}.forge-show-rows b.red{color:var(--red)}.forge-show-compare{color:var(--green);margin-left:8px;font-size:12.5px;font-weight:700}.forge-show-note{margin:8px 0 0;font-size:13px}.forge-cost{flex:none}.forge-cost-body{flex-direction:column;align-items:center;gap:8px;padding:10px 12px;display:flex}.forge-cards{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.forge-meta{color:var(--mute);flex-wrap:wrap;justify-content:center;gap:6px 22px;margin:0;display:flex}.forge-meta b{color:var(--text)}.forge-meta b.red{color:var(--red)}.forge-meta .ui-icon{width:18px;height:18px}.forge-craft{align-items:center;gap:10px;width:min(560px,100%);display:flex}.forge-qty{gap:4px;display:flex}.forge-qty .btn{width:38px;min-height:46px;padding:0;font-size:18px}.forge-qty input{width:50px;min-width:0;height:46px;color:var(--text);text-align:center;background:#141e2af2;border:1px solid #82a0be4d;border-radius:7px;font:700 15px Barlow,sans-serif}.forge-go{letter-spacing:.1em;text-transform:uppercase;flex:1;min-width:0;min-height:46px;font:800 17px Barlow,sans-serif}.forge-bag{min-height:46px;color:var(--gold);border-color:#e8b84a8c;align-items:center;gap:6px;padding:0 14px;font-weight:800;display:inline-flex}.forge-bag .ui-icon{width:26px;height:26px}.forge-problem{text-align:center;margin:0;font-size:13px}.forge-problem:empty{display:none}@media (width>=1280px){.forge-problem,.forge-problem:empty{min-height:1.35em;display:block}.forge-cards{flex-wrap:nowrap;width:100%}.forge-cards .cost-card{flex:0 124px;min-width:0}}@media (width>=1280px) and (height<=900px){.forge-show{grid-template-columns:auto minmax(0,1fr);padding:8px 20px}.forge-show-picture{min-height:150px;margin-right:20px;padding-right:20px}.forge-show-picture .picture-zoom-button{width:36px;height:36px;bottom:0;right:8px}.forge-pill{padding:0 10px}.forge-show-circle{width:150px;height:150px}.forge-show-name{font-size:26px}.forge-pills{margin-top:6px}.forge-pill{min-height:26px}.forge-show-rows{--row:24px;margin-top:6px}.forge-show-rows li{font-size:14px}.forge-show-note{margin-top:4px}.forge-cost-body{gap:6px;padding:8px 12px}.forge-cards .cost-card{padding:6px}.forge-qty .btn,.forge-qty input,.forge-go,.forge-bag{height:40px;min-height:40px}}@media (width>=1280px) and (height<=760px){.forge-show{padding:6px 16px}.forge-show-picture{min-height:120px;margin-right:16px;padding-right:16px}.forge-show-circle{width:120px;height:120px}.forge-show-picture .picture-zoom-button{width:34px;height:34px;bottom:0;right:6px}.forge-show-name{font-size:24px}.forge-cards .cost-card .cost-tile-count{font-size:14px}.forge-cards .cost-card{padding:4px 6px}.forge-cost-body{gap:4px;padding:6px 12px}.forge-show-note{margin-top:2px;font-size:12px}.forge-qty .btn,.forge-qty input,.forge-go,.forge-bag{height:36px;min-height:36px}}.forge-bag-dialog{flex-direction:column;width:min(760px,100vw - 32px);max-height:80dvh;padding:0;display:flex}.modal .panel.forge-bag-dialog{width:min(760px,100vw - 32px);padding:0}.forge-bag-close{width:32px;height:32px;color:var(--mute);background:0 0;border:1px solid #82a0be4d;border-radius:6px;padding:0}@media (pointer:coarse){.forge-bag-close{width:44px;height:44px}}.forge-bag-body{min-height:0;overflow-y:auto}.forge-bag-body .material-stock{max-height:none;overflow:visible}.forge-bag-body .material-stock .cell{background:#0a0e14e6;border:1px solid #82a0be40;border-radius:7px}.forge-bag-foot{border-top:1px solid #82a0be24;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 12px;display:flex}.forge-bag-picked{min-width:0;font-size:15px}.forge-right{flex-direction:column;gap:10px;display:flex}@media (width>=1280px){.forge-right{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr);display:grid}}.forge-right>*{min-width:0}.forge-rarities{flex-direction:column;min-height:0;display:flex}.forge-rarity-list{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;flex:auto;align-content:start;gap:4px;min-height:0;padding:8px;display:grid;overflow-y:auto}.forge-rarity{min-height:32px;color:var(--text);text-align:left;background:#0a1018b3;border:1px solid #82a0be29;border-radius:8px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;padding:4px 10px;display:grid}.forge-rarity.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px #e8b84a59}.forge-rarity.locked{opacity:.5}.forge-rarity-mark{border:1px solid var(--rarity-color);background:color-mix(in srgb, var(--rarity-color) 40%, transparent);border-radius:3px;width:16px;height:16px;margin:0 2px;transform:rotate(45deg)}.forge-rarity-text{white-space:nowrap;align-items:baseline;gap:8px;min-width:0;display:flex;overflow:hidden}.forge-rarity-text b{letter-spacing:.04em;color:var(--rarity-color);font-size:13px}.forge-rarity.locked .forge-rarity-text b{color:var(--mute)}.forge-rarity-text small{color:var(--mute);text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.forge-rarity .lock-badge{width:14px;height:14px}@media (pointer:coarse){.forge-rarity{min-height:44px}}.forge-chat{flex-direction:column;min-height:0;display:flex}@media (width>=1280px){.forge-chat .chat-embedded{z-index:auto;flex:1;width:100%;height:100%;position:static}.forge-chat .chat-embedded.closed{flex:none;height:auto;min-height:46px}.forge-chat .chat-tabs{gap:0;padding:4px 4px 0;overflow-x:hidden}.forge-chat .chat-tabs button{flex:auto;justify-content:center;min-width:0;padding:0 4px;font-size:12.5px}}@media (width<=767px){.forge-page{flex-direction:column;display:flex}.forge-left,.forge-centre,.forge-right{display:contents}.forge-banner{order:1;height:120px}.forge-banner h1{font-size:30px}.forge-rarities{order:2}.forge-rarity-list{display:flex;overflow:auto hidden}.forge-rarity{flex:none;min-width:140px}.forge-tabs,.forge-chips,.forge-left>.panel-head{background:#0a101899;order:3}.forge-list{order:4;max-height:55dvh}.forge-show{order:5;grid-template-columns:minmax(0,1fr);padding:14px}.forge-show-picture{border-right:0;min-height:220px;margin:0 0 10px}.forge-cost{order:6}.forge-orders{order:7}.forge-chat{order:8}.forge-craft{flex-wrap:wrap}.forge-go{flex:100%;order:-1}}.forge-recipe{width:100%;min-height:60px;color:var(--text);text-align:left;background:#0a1018b3;border:1px solid #82a0be29;border-radius:7px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 8px;display:grid}.forge-recipe:hover{border-color:#a0bedc66}.forge-recipe.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px #e8b84a59}.forge-recipe.locked{opacity:.5}.forge-recipe-art{background:radial-gradient(circle,#b9c2cc2e,#0003 70%);border:1px solid #82a0be33;border-radius:6px;justify-content:center;align-items:center;width:48px;height:48px;display:flex;position:relative;overflow:hidden}.forge-recipe-art .item-art{width:84%;height:84%}.lock-badge{fill:#05080cd9;stroke:var(--gold);stroke-width:2px}.forge-recipe-art .lock-badge{width:16px;height:16px;position:absolute;bottom:2px;right:2px}.forge-recipe-text{flex-direction:column;min-width:0;display:flex}.forge-recipe-text b{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.forge-recipe-text small{color:var(--mute);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.forge-banner .forge-back{z-index:2;min-height:36px;color:var(--gold);background:#080c12d9;border-color:#e8b84aa6;align-items:center;padding:0 14px;font-weight:800;text-decoration:none;display:inline-flex;position:absolute;top:10px;left:10px}@media (pointer:coarse){.forge-banner .forge-back{min-height:44px}}.refinery-group{letter-spacing:.08em;text-transform:uppercase;margin:8px 4px 4px;font:800 11.5px Barlow,sans-serif}.forge-bag-section{letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin:10px 2px 4px;font:800 11.5px Barlow,sans-serif}.forge-cost .panel-head .forge-meta{gap:16px;font-size:13px;font-weight:500}.forge-cost .panel-head .forge-meta .ui-icon{width:16px;height:16px}@media (width>=1280px){.forge-cost .forge-cost-body{gap:6px;padding:8px 12px}.forge-cost .cost-card{padding:6px 6px 4px}.forge-cost .cost-card .cost-tile-source{white-space:nowrap;min-height:18px;margin-top:2px;font-size:10.5px}.forge-cost .forge-qty .btn,.forge-cost .forge-qty input,.forge-cost .forge-go,.forge-cost .forge-bag,.forge-cost .runes-remove{height:40px;min-height:40px}}@media (width>=1280px) and (height<=800px){.forge-cost .forge-cost-body{gap:4px;padding:6px 12px}.forge-cost .cost-card{padding:4px 6px 3px}.forge-cost .forge-qty .btn,.forge-cost .forge-qty input,.forge-cost .forge-go,.forge-cost .forge-bag,.forge-cost .runes-remove{height:36px;min-height:36px}}@media (width>=1280px) and (height<=700px){.forge-centre>.forge-banner{height:68px}.forge-banner h1{font-size:28px}.forge-right{grid-template-rows:auto minmax(0,1fr)}.forge-rarity-list{overflow-y:visible}.forge-banner .forge-back{top:50%;transform:translateY(-50%)}.forge-show{padding:6px 20px}.forge-show-picture{min-height:0;margin-right:20px}.forge-show-circle{width:136px;height:136px}.forge-show-picture .picture-zoom-button{bottom:0;right:10px}.forge-show-name{margin:0 0 2px;font-size:24px}.forge-show-sub{font-size:13.5px}.forge-show-note{margin-top:4px;font-size:12.5px}}.app.app-harbour{flex-direction:column;align-items:stretch;display:flex}.harbour-page{grid-template-columns:minmax(0,1fr);gap:10px;padding-bottom:12px;display:grid}.harbour-side,.harbour-centre,.harbour-right{min-width:0}.harbour-side{flex-direction:column;gap:10px;display:flex}.harbour-centre,.harbour-right{flex-direction:column;display:flex;overflow:hidden}.harbour-right>.panel-head{flex:none}@media (width>=1280px){.app.app-harbour{height:100dvh;min-height:0;overflow:hidden}.harbour-page{flex:1 1 0;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,320px) minmax(0,1fr) minmax(0,340px);min-height:0}.harbour-side,.harbour-centre,.harbour-right{min-height:0}.harbour-list{flex:0 auto;min-height:120px}.harbour-right .harbour-action{padding-right:80px}.port-page-side .port-page-scroll{padding-bottom:76px}}@media (width>=1600px){.harbour-page{grid-template-columns:minmax(0,370px) minmax(0,1fr) minmax(0,370px)}}@media (width>=768px) and (width<=1279px){.harbour-page{grid-template-columns:minmax(0,300px) minmax(0,1fr);align-items:start}.harbour-right{grid-column:1/-1}.harbour-centre{min-height:460px;height:calc(100dvh - var(--top-height) - 40px);max-height:640px}}@media (width<=767px){.harbour-page{flex-direction:column;display:flex}.harbour-centre{order:1}.harbour-side{order:2}.harbour-right{order:3}.harbour-page .harbour-card{display:none}.harbour-tab-shipyard .harbour-centre{min-height:320px}.harbour-tab-shipyard .harbour-side{order:0}}.harbour-card{flex:none;align-items:center;gap:14px;padding:12px 14px;display:flex}.harbour-card-mark{border:2px solid var(--gold);color:#ffe7a8;background:radial-gradient(circle at 35% 30%,#3c6e96e6,#0a1420f2);border-radius:50%;flex:none;place-items:center;width:54px;height:54px;display:grid}.harbour-card-mark .harbour-icon{width:28px;height:28px}.harbour-card h1{letter-spacing:.06em;color:#f3e6c4;margin:0;font:700 19px Cinzel,serif}.harbour-card p{color:var(--mute);margin:2px 0 0;font-size:13.5px}.harbour-list{flex-direction:column;display:flex;overflow:hidden}.harbour-list-body{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;flex-direction:column;display:flex;overflow-y:auto}.harbour-row{width:100%;color:var(--text);text-align:left;background:0 0;border:0;border-bottom:1px solid #82a0be14;align-items:center;gap:12px;min-height:60px;padding:10px 12px;display:flex;position:relative}.harbour-row:hover{background:#82a0be0f}.harbour-row.on{background:linear-gradient(90deg,#e8b84a24,#e8b84a05)}.harbour-row.on:before{content:"";background:var(--gold);border-radius:2px;width:3px;position:absolute;top:8px;bottom:8px;left:0}.harbour-row.closed,.harbour-row.unbuilt .harbour-row-picture{opacity:.6}.harbour-row.locked .harbour-row-picture{filter:grayscale();opacity:.45}.harbour-row-lock{color:#e6edf3;pointer-events:none;place-items:center;width:76px;font-size:22px;display:grid;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.harbour-row-text{flex-direction:column;flex:auto;min-width:0;display:flex}.harbour-row-text b{font-size:15px}.harbour-row-text small{color:var(--mute);font-size:12.5px}.harbour-row-picture{object-fit:cover;border:1px solid var(--line);border-radius:6px;flex:none;width:76px;height:50px}.harbour-status{font-weight:700}.harbour-status.good{color:var(--green)}.harbour-status.busy{color:var(--gold)}.harbour-status.bad{color:var(--red)}.harbour-picture-missing{color:var(--mute);text-align:center;background:repeating-linear-gradient(135deg,#28384ae6 0 10px,#1a2634e6 10px 20px);place-items:center;font-size:11px;display:grid;overflow:hidden}.harbour-picture-missing span{padding:2px 4px}.port-crest{object-fit:cover;border:2px solid #e8b84a8c;border-radius:50%;flex:none;width:44px;height:44px}.port-crest.harbour-picture-missing span{display:none}.harbour-icon{vertical-align:-.15em;flex:none;width:1.05em;height:1.05em}.harbour-tag{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:4px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:800;display:inline-flex}.harbour-tag-trade{color:#ffd277;background:#e8b84a24}.harbour-tag-market{color:#ff8f97;background:#ff6a7424}.harbour-tag-closed{color:var(--mute);background:#82a0be1f}.harbour-tabs{scrollbar-width:none;border-bottom:1px solid #82a0be29;flex:none;gap:2px;padding:8px 8px 0;display:flex;overflow-x:auto}.harbour-tabs button{color:#9fb0c0;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;background:0 0;border:1px solid #0000;border-bottom:0;border-radius:7px 7px 0 0;min-height:40px;padding:0 22px;font:700 14.5px Cinzel,serif}.harbour-tabs button:hover{color:var(--text)}.harbour-tabs button.on{color:var(--gold);background:linear-gradient(#e8b84a24,#e8b84a05);border-color:#e8b84a59}.harbour-body{flex-direction:column;flex:auto;min-height:0;display:flex;position:relative}@media (pointer:coarse){.harbour-tabs button{min-height:44px}}.sea-chart{background:#071019;flex:auto;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden;container-type:size}.sea-chart-backdrop{object-fit:cover;filter:blur(16px)brightness(.4);-webkit-user-select:none;user-select:none;width:calc(100% + 60px);height:calc(100% + 60px);position:absolute;inset:-30px}.sea-chart-stage{width:min(100cqw, calc(100cqh * var(--chart-ratio)));aspect-ratio:var(--chart-ratio);position:relative}@media (width<=767px){.sea-chart{flex:none;container-type:inline-size}.sea-chart-stage{width:100%}.sea-chart .sea-pin{gap:2px}.sea-chart .sea-pin i{width:9px;height:9px}.sea-chart .sea-pin-label{padding:2px 6px}.sea-chart .sea-pin-label b{letter-spacing:.04em;font-size:9.5px}.sea-chart .sea-pin-label small{font-size:9px}}.sea-chart-picture{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;position:absolute;inset:0}.sea-chart-missing{background:radial-gradient(circle at 40% 40%,#174a66,#071019)}.sea-chart-routes{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.sea-chart-routes path{fill:none;stroke:#f0e8cd66;stroke-width:2px;stroke-dasharray:7 7;stroke-linecap:round}.sea-chart-routes path.on{stroke:#ffd766;stroke-width:3px;filter:drop-shadow(0 0 4px #000000e6)}.sea-pin{color:var(--text);background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:0;display:flex;position:absolute;transform:translate(-50%,-100%)}.sea-pin i{background:var(--gold);border:2px solid #1a1206;border-radius:50%;width:12px;height:12px;box-shadow:0 0 10px #e8b84acc}.sea-pin-label{white-space:nowrap;background:#080c12e0;border:1px solid #e8b84a73;border-radius:6px;flex-direction:column;align-items:center;padding:5px 12px;display:flex;box-shadow:0 6px 16px #0009}.sea-pin-label b{letter-spacing:.08em;text-transform:uppercase;color:#f6e7c4;font:700 13.5px Cinzel,serif}.sea-pin-label small{color:#c8a8ff;font-size:11.5px;font-weight:600}.sea-pin-home .sea-pin-label small{color:#d9e2ea}.sea-pin-closed{opacity:.8}.sea-pin-closed .sea-pin-label{border-color:#82a0be4d}.sea-pin-closed .sea-pin-label small{color:var(--mute)}.sea-pin-closed i{box-shadow:none;background:#6f7f8f}button.sea-pin.on .sea-pin-label{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold), 0 6px 18px #000000b3}.harbour-right-body{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;flex-direction:column;flex:auto;gap:10px;min-height:0;padding:12px 14px;display:flex;overflow-y:auto}.harbour-right-body p{margin:0}.harbour-right-title{flex-direction:column;display:flex}.harbour-right-title b{letter-spacing:.06em;color:#f3e6c4;font:700 19px Cinzel,serif}.harbour-right-title small{color:var(--mute);font-size:13px}.harbour-subtitle{letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin:4px 0 0;font-size:11.5px;font-weight:800}.harbour-facts{flex-direction:column;margin:0;display:flex}.harbour-facts>div{border-bottom:1px solid #82a0be1a;justify-content:space-between;align-items:center;gap:10px;min-height:30px;display:flex}.harbour-facts dt{color:#b6c3cf;font-size:14px}.harbour-facts dd{font-variant-numeric:tabular-nums;align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.harbour-note{font-size:13px}.harbour-chips{flex-wrap:wrap;gap:6px;display:flex}.yard-costs{gap:6px;margin-bottom:6px;display:flex}.yard-costs .cost-card{flex:1 1 0;width:auto;max-width:124px;padding:6px 6px 4px}.yard-costs .cost-card .cost-tile-art{width:38px;height:38px;margin-bottom:4px}.yard-costs .cost-card .cost-tile-source{white-space:nowrap;min-height:16px;margin-top:1px}.harbour-chip{border:1px solid var(--line);font-variant-numeric:tabular-nums;background:#080c12b3;border-radius:6px;align-items:center;gap:6px;min-height:40px;padding:3px 9px 3px 5px;display:inline-flex}.harbour-chip small{color:var(--mute);font-size:12px}.harbour-chip.short{border-color:#ff6a7480}.harbour-boxes{grid-template-columns:1fr 1fr;gap:8px;display:grid}.harbour-boxes>div{border:1px solid var(--line);background:#080c1299;border-radius:6px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.harbour-boxes small{letter-spacing:.1em;text-transform:uppercase;color:var(--mute);font-size:11px;font-weight:800}.harbour-boxes b{font-size:16px}.harbour-action{border-top:1px solid #82a0be24;flex-direction:column;flex:none;gap:8px;padding:10px 14px 14px;display:flex}.harbour-action .btn{width:100%;min-height:48px;font-size:16px}.harbour-problem{margin:0;font-size:13.5px}.harbour-meter{background:#82a0be33;border-radius:4px;height:8px;display:block;overflow:hidden}.harbour-meter i{background:var(--gold);border-radius:4px;height:100%;transition:width .3s linear;display:block}.port-banner{border:1px solid var(--line);border-radius:8px;flex:none;height:150px;position:relative;overflow:hidden}.port-banner-picture{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.port-banner:after{content:"";background:linear-gradient(#0000 45%,#050a11d9);position:absolute;inset:0}.port-banner h2{z-index:1;letter-spacing:.08em;text-transform:uppercase;color:#ffe7a8;text-shadow:0 2px 8px #000;margin:0;font:700 22px Cinzel,serif;position:absolute;bottom:8px;left:14px}.port-region{font-size:14.5px}.port-does{flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:14px;display:flex}.yard-stage{background:#0a1119;flex-direction:column;flex:auto;justify-content:space-between;min-height:0;display:flex;position:relative;overflow:hidden}.yard-picture{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.yard-stage:after{content:"";pointer-events:none;background:linear-gradient(#050a11bf,#0000 26% 60%,#050a11eb);position:absolute;inset:0}.yard-title,.yard-foot{z-index:1;text-align:center;padding:16px;position:relative}.yard-title h2{letter-spacing:.1em;text-transform:uppercase;color:#ffe7a8;text-shadow:0 2px 12px #000;margin:0;font:700 34px Cinzel,serif}.yard-title p,.yard-notes{color:#d9e2ea;text-shadow:0 1px 4px #000;margin:2px 0 0}.yard-foot{flex-direction:column;align-items:center;gap:8px;display:flex}.yard-levels{align-items:center;gap:10px;display:flex}.yard-level{letter-spacing:.08em;text-transform:uppercase;color:#ffe7a8;background:#080c12d9;border:1px solid #e8b84a99;border-radius:20px;padding:5px 16px;font:700 15px Cinzel,serif}.yard-level.next{color:var(--green);border-color:#6fd08ab3}.yard-arrow{color:var(--mute)}.yard-timer{border:1px solid var(--line);background:#080c12d9;border-radius:8px;flex-direction:column;gap:6px;width:min(360px,90%);padding:8px 12px;display:flex}.harbour-list-head{border-top:1px solid #82a0be24;flex:none}.harbour-level{color:var(--gold);white-space:nowrap;border:1px solid #e8b84a80;border-radius:12px;flex:none;padding:2px 9px;font-size:12.5px;font-weight:800}.harbour-row-mark{border:1px solid var(--line);width:48px;height:48px;color:var(--gold);background:#e8b84a1a;border-radius:8px;flex:none;place-items:center;display:grid}.harbour-row-mark .harbour-icon{width:26px;height:26px}.harbour-row-mark.large,.captain-portrait.large{width:64px;height:64px}.captain-portrait{object-fit:cover;border:1px solid var(--line);border-radius:8px;flex:none;width:48px;height:48px}.captain-portrait.harbour-picture-missing span{display:none}.crew-view{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;background:linear-gradient(#0a1119eb,#070b10f5);flex-direction:column;flex:auto;gap:12px;min-height:0;padding:16px;display:flex;position:relative;overflow-y:auto}.crew-head h2{letter-spacing:.08em;text-transform:uppercase;color:#f3e6c4;margin:0;font:700 19px Cinzel,serif}.crew-head p{color:var(--mute);margin:2px 0 0;font-size:13.5px}.crew-boats{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.crew-boat{border:1px solid var(--line);color:var(--text);text-align:center;font:inherit;background:#82a0be0d;border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex;position:relative}.crew-boat-cell{flex-direction:column;gap:6px;min-width:0;display:flex}.crew-boat-cell>.crew-boat{flex:auto;width:100%}.crew-hire{align-self:stretch;min-height:36px}.crew-none{flex-direction:column;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}@media (pointer:coarse){.crew-hire,.crew-none .btn{min-height:44px}}button.crew-boat:hover:not(:disabled){border-color:#e8b84a73}button.crew-boat:disabled{opacity:1}.crew-boat.on{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold) inset, 0 0 20px #e8b84a33;background:#e8b84a14}.crew-boat.locked{opacity:.6}.crew-boat-picture{aspect-ratio:3/2;object-fit:contain;border-radius:8px;width:100%}.crew-boat h3{letter-spacing:.04em;color:#f3e6c4;margin:0;font:700 18px Cinzel,serif}.crew-boat h3 span{color:var(--gold);font-size:15px}.crew-current{z-index:1;background:var(--gold);color:#1a1206;border-radius:10px;padding:2px 9px;font-size:11px;font-weight:800;position:absolute;top:16px;right:16px}.crew-slot{border:1px solid var(--line);text-align:left;background:#080c1299;border-radius:8px;align-items:center;gap:10px;padding:6px;display:flex}.crew-slot>span:last-child{flex-direction:column;min-width:0;display:flex}.crew-slot small,.crew-sailors small{letter-spacing:.08em;text-transform:uppercase;color:var(--mute);font-size:10.5px;font-weight:800}.crew-slot b{font-size:14.5px}.crew-sailors{text-align:left;flex-direction:column;gap:4px;display:flex}.harbour-meter.short i{background:var(--red)}.crew-ready{margin:0;font-size:13px;font-weight:800}.crew-steps{grid-template-columns:44px 44px 1fr 1fr;gap:6px;display:grid}.crew-steps .btn{min-height:40px;padding:0 6px}.crew-who{align-items:center;gap:12px;display:flex}.crew-reserve{align-self:flex-start}.crew-buy{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.crew-buy .btn:not(.small){width:42px;padding:0;font-size:19px}.crew-buy input{width:76px;height:38px;color:var(--gold);text-align:center;background:#0d141c;border:1px solid #82a0be4d;border-radius:6px;font:800 18px Barlow,sans-serif}@media (pointer:coarse){.crew-steps .btn,.crew-buy .btn,.crew-buy input,.crew-reserve{min-height:44px}.crew-buy .btn:not(.small){width:44px}}@media (width<=767px){.harbour-tab-crew .harbour-side{order:0}.harbour-tab-crew .harbour-centre{min-height:0}}@media (width>=1280px) and (height<=700px){.crew-view{gap:8px;padding:10px 12px}.crew-boat{gap:5px;padding:8px}.crew-boat h3{font-size:16px}}.sea-ship{z-index:2;pointer-events:none;flex-direction:column;align-items:center;gap:3px;transition:left 1s linear,top 1s linear;display:flex;position:absolute;transform:translate(-50%,-50%)}.sea-ship-picture{object-fit:cover;border:2px solid var(--gold);border-radius:50%;width:54px;height:54px;box-shadow:0 4px 12px #000000b3}.sea-ship-picture.back{transform:scaleX(-1)}.sea-ship-label{font-variant-numeric:tabular-nums;white-space:nowrap;background:#080c12e0;border:1px solid #e8b84a73;border-radius:10px;gap:5px;padding:1px 8px;font-size:12px;display:flex}.sea-ship-label b{color:#ffe7a8}.voyage-row{border:1px solid var(--line);background:#080c1280;border-radius:8px;gap:10px;padding:8px;display:flex}.voyage-row.back{background:#e8b84a0f;border-color:#e8b84a8c}.voyage-row-text{flex-direction:column;flex:auto;gap:3px;min-width:0;display:flex}.voyage-row-text small{color:var(--mute);font-size:12.5px}.voyage-row-text .btn{align-self:flex-start;min-height:34px}.voyage-log{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;background:linear-gradient(#0a101899,#060a0fe6);flex-direction:column;flex:auto;gap:12px;min-height:0;padding:14px;display:flex;overflow-y:auto}.voyage-box{border:1px solid var(--line);background:#0a0e14e0;border-radius:10px;flex-direction:column;flex:none;gap:8px;padding:14px;display:flex}.voyage-box-title{flex-wrap:wrap;align-items:baseline;gap:2px 12px;display:flex}.voyage-box-title h2{letter-spacing:.1em;text-transform:uppercase;color:#f3e6c4;margin:0;font:700 17px Cinzel,serif}.voyage-box-title p{color:var(--mute);flex:auto;margin:0;font-size:13px}.voyage-box-title .btn{align-self:center}.voyage-boat{border:1px solid var(--line);background:#82a0be0a;border-radius:8px;grid-template-columns:96px minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:12px;min-height:72px;padding:8px 12px;display:grid}.voyage-boat.sea{background:#6fb8ff0f}.voyage-boat.ready{background:#6fe08a12;border-color:#6fe08a80}.voyage-boat.yard{background:#e8b84a0d}.voyage-boat.repair{background:#ff6a740d}.voyage-boat-picture{object-fit:contain;border-radius:6px;width:96px;height:54px}.voyage-boat-text{flex-direction:column;gap:4px;min-width:0;display:flex}.voyage-boat-text b{font-size:15px}.voyage-boat-text small{color:var(--mute);font-size:12.5px}.voyage-boat-state{font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;font-size:13.5px;display:flex}.voyage-boat-state .harbour-chip,.voyage-history .harbour-chip,.voyage-boat-state .cost-chip,.voyage-history .cost-chip{min-height:30px;padding:2px 8px 2px 3px}.voyage-boat-state .cost-chip :is(.cost-tile-art,.cost-chip-icon),.voyage-history .cost-chip :is(.cost-tile-art,.cost-chip-icon){width:24px;height:24px}.voyage-boat>.btn{min-height:38px;padding:0 18px}.voyage-history{flex-direction:column;display:flex}.voyage-history-head,.voyage-history-row{grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr) minmax(0,1.5fr) minmax(0,1fr) minmax(0,.7fr);align-items:center;gap:10px;display:grid}.voyage-history.one-boat .voyage-history-head,.voyage-history.one-boat .voyage-history-row{grid-template-columns:minmax(0,1.5fr) minmax(0,1.5fr) minmax(0,1fr) minmax(0,.7fr)}.voyage-history-head{letter-spacing:.1em;text-transform:uppercase;color:var(--mute);border-bottom:1px solid #82a0be29;padding:0 4px 6px;font-size:11px;font-weight:800}.voyage-history-row{border-bottom:1px solid #82a0be14;min-height:40px;padding:5px 4px;font-size:13.5px}.voyage-history-row.rough{background:#ff6a740a}.voyage-history-row small{font-size:12px}@media (pointer:coarse){.voyage-boat>.btn,.voyage-box-title .btn{min-height:44px}}@media (width<=767px){.voyage-log,.voyage-box{padding:10px}.voyage-boat{grid-template-columns:76px minmax(0,1fr)}.voyage-boat-picture{width:76px;height:46px}.voyage-boat-state,.voyage-boat>.btn{grid-column:1/-1}.voyage-history-head{display:none}.voyage-history .voyage-history-row{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:8px 2px}.voyage-history-row .harbour-chips{grid-column:1/-1}}.harbour-chip.reputation{color:#c8a8ff;border-color:#b06cff80}.harbour-danger{white-space:nowrap;align-items:center;gap:6px;font-weight:700;display:inline-flex}.harbour-danger>span{gap:2px;display:inline-flex}.harbour-danger i{background:#82a0be40;border-radius:2px;width:5px;height:12px}.harbour-danger.level-0,.harbour-danger.level-1{color:var(--green)}.harbour-danger.level-2{color:var(--gold)}.harbour-danger.level-3,.harbour-danger.level-4{color:var(--red)}.harbour-danger.level-1 i.on{background:var(--green)}.harbour-danger.level-2 i.on{background:var(--gold)}.harbour-danger.level-3 i.on,.harbour-danger.level-4 i.on{background:var(--red)}.port-page{grid-template-columns:minmax(0,1fr);gap:10px;padding-bottom:12px;display:grid}.port-page-head{grid-column:1/-1;align-items:center;gap:12px;display:flex}.port-page-head h1{letter-spacing:.08em;text-transform:uppercase;color:#f3e6c4;margin:0;font:700 21px Cinzel,serif}.port-page-head p{color:var(--mute);margin:0;font-size:13.5px}.port-page-head .btn{align-items:center;gap:6px;display:inline-flex}.port-page-list,.port-page-side{flex-direction:column;min-width:0;display:flex;overflow:hidden}.port-page-centre{flex-direction:column;gap:10px;min-width:0;display:flex}.port-page-title{flex:none;padding:12px 14px 6px}.port-page-title h2{letter-spacing:.1em;text-transform:uppercase;color:#f3e6c4;margin:0;font:700 17px Cinzel,serif}.port-page-title p{color:var(--mute);margin:2px 0 0;font-size:13px}.port-page-scroll{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;flex-direction:column;flex:auto;gap:8px;min-height:0;padding:6px 12px 12px;display:flex;overflow-y:auto}.port-page-scroll .port-page-title{padding:8px 2px 0}@media (width>=1280px){.port-page{flex:1 1 0;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,360px) minmax(0,1fr) minmax(0,340px);min-height:0}.port-page-list,.port-page-centre,.port-page-side{min-height:0}.port-page-centre{scrollbar-width:thin;scrollbar-color:#526171 #0b1118;overflow-y:auto}.port-page-centre>*{flex-shrink:0}}@media (width>=1600px){.port-page{grid-template-columns:minmax(0,420px) minmax(0,1fr) minmax(0,380px)}}@media (width>=768px) and (width<=1279px){.port-page{grid-template-columns:minmax(0,320px) minmax(0,1fr);align-items:start}.port-page-side{grid-column:1/-1}.port-page-list{max-height:720px}}@media (width<=767px){.port-page-list .port-page-scroll{scroll-snap-type:x mandatory;flex-direction:row;overflow:auto hidden}.port-page-list .contract-card{scroll-snap-align:start;flex:0 0 82%}}.contract-card{border:1px solid var(--line);width:100%;color:var(--text);text-align:left;font:inherit;background:#82a0be0a;border-radius:9px;gap:10px;padding:10px;display:flex}.contract-card:hover{border-color:#e8b84a66}.contract-card.on{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset;background:#e8b84a0f}.contract-card-picture{object-fit:cover;border:1px solid var(--line);border-radius:8px;flex:none;width:64px;height:64px}.contract-card-text{flex-direction:column;gap:3px;min-width:0;display:flex}.contract-card-text>b{letter-spacing:.05em;text-transform:uppercase;color:#f3e6c4;font:700 14.5px Cinzel,serif}.contract-card-text>small{color:var(--mute);font-size:12.5px}.contract-card-facts{flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:12.5px;display:flex}.contract-card-facts :is(.harbour-chip,.cost-chip){min-height:30px;padding:2px 8px 2px 3px;font-size:13px}.contract-card-facts .cost-chip :is(.cost-tile-art,.cost-chip-icon){width:24px;height:24px}.port-hall{flex:none;justify-content:space-between;align-items:center;gap:12px;height:128px;padding:0 16px;display:flex;position:relative;overflow:hidden}.port-hall-picture{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.port-hall:after{content:"";background:linear-gradient(90deg,#050a11d1,#050a114d 55%,#050a11b3);position:absolute;inset:0}.port-hall-name,.port-reputation{z-index:1;position:relative}.port-hall-name h2{letter-spacing:.08em;text-transform:uppercase;color:#ffe7a8;text-shadow:0 2px 10px #000;margin:0;font:700 34px Cinzel,serif}.port-hall-name p{letter-spacing:.4em;text-transform:uppercase;color:#d9c48a;margin:0;font:700 13px Cinzel,serif}.port-reputation{background:#080c12e0;border:1px solid #e8b84a73;border-radius:8px;align-items:center;gap:10px;min-width:240px;max-width:320px;padding:8px 12px;display:flex}.port-reputation-picture{object-fit:contain;flex:none;width:46px;height:46px}.port-reputation>div{flex-direction:column;flex:auto;gap:3px;min-width:0;display:flex}.port-reputation b{letter-spacing:.06em;text-transform:uppercase;color:#ffe7a8;font:700 15px Cinzel,serif}.port-reputation small{color:#b6c3cf;font-size:12px}.port-reputation .harbour-meter{height:5px}.contract-detail{flex-direction:column;display:flex}.contract-head{align-items:flex-start;gap:14px;padding:14px;display:flex}.contract-picture{object-fit:cover;border:1px solid var(--line);border-radius:10px;flex:none;width:92px;height:92px}.contract-head-text{flex:auto;min-width:0}.contract-head-text h2{letter-spacing:.05em;text-transform:uppercase;color:#f3e6c4;margin:2px 0;font:700 21px Cinzel,serif}.contract-head-text p{margin:0;font-weight:700}.contract-facts{flex-direction:column;gap:5px;min-width:200px;margin:0;display:flex}.contract-facts>div{border:1px solid var(--line);background:#080c1299;border-radius:6px;justify-content:space-between;align-items:center;gap:14px;min-height:30px;padding:0 10px;display:flex}.contract-facts dt{color:#b6c3cf;font-size:13.5px}.contract-facts dd{margin:0;font-weight:800}.contract-section{border-top:1px solid #82a0be24;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.contract-section-head{flex-wrap:wrap;align-items:baseline;gap:2px 12px;display:flex}.contract-section-head h3{letter-spacing:.1em;text-transform:uppercase;color:#f3e6c4;margin:0;font:700 15px Cinzel,serif}.contract-section-head p{color:var(--mute);flex:200px;margin:0;font-size:13px}.contract-hold{white-space:nowrap;margin-left:auto}.contract-hold b{color:var(--gold);font-size:16px}.contract-hold small{color:var(--mute)}.rank-picker{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.rank-pill{min-height:48px;color:var(--text);font:inherit;background:#080c1299;border:1px solid #82a0be47;border-radius:8px;flex-direction:column;align-items:center;gap:1px;padding:4px 6px;display:flex}.rank-pill b{color:var(--rank);font-size:14.5px}.rank-pill small{color:var(--mute);text-align:center;align-items:center;gap:4px;font-size:11.5px;display:inline-flex}.rank-pill.on{border-color:var(--rank);box-shadow:0 0 0 1px var(--rank) inset;background:#82a0be1a}.rank-pill.locked{opacity:.65}.cargo-line{border:1px solid var(--line);background:#080c1280;border-radius:8px;align-items:center;gap:12px;padding:8px 10px;display:flex}.cargo-line.full{border-color:#6fd08a80}.cargo-line-text{flex-direction:column;flex:auto;gap:4px;min-width:0;display:flex}.cargo-line-text small{color:var(--mute);font-size:12px}.harbour-meter.done i{background:var(--green)}.cargo-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.boat-picker{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:6px;display:grid}.boat-pick{border:1px solid var(--line);color:var(--text);font:inherit;text-align:center;background:#82a0be0d;border-radius:8px;flex-direction:column;align-items:center;gap:2px;padding:6px;display:flex}.boat-pick.on{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset;background:#e8b84a14}.boat-pick.no:not(.on){opacity:.7}.boat-pick-picture{object-fit:contain;border-radius:6px;width:100%;height:72px}.boat-pick b{font-size:14px}.boat-pick small{color:var(--mute);font-size:11.5px}.trade-send{width:100%;min-height:48px;font-size:15px}@media (pointer:coarse){.rank-pill,.cargo-actions .btn,.voyage-row-text .btn{min-height:44px}}@media (width<=767px){.contract-head{flex-wrap:wrap}.contract-facts{flex:100%}.rank-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.port-hall{flex-direction:column;align-items:stretch;height:auto;padding:12px}.port-hall-name h2{font-size:26px}.port-reputation{max-width:none}}@media (width>=1280px) and (height<=700px){.port-page-head h1{font-size:18px}.port-hall{height:84px}.port-hall-name h2{font-size:26px}.port-reputation{padding:5px 10px}.contract-head{gap:10px;padding:10px 12px}.contract-picture{width:64px;height:64px}.contract-section{gap:6px;padding:8px 12px}.contract-facts>div{min-height:26px}.cargo-line{padding:5px 8px}.contract-card{padding:7px}.contract-card-picture{width:52px;height:52px}}.contact-card-picture{object-fit:cover;border:1px solid var(--line);border-radius:8px;flex:none;width:84px;height:84px}.contact-trust{align-items:center;gap:8px;display:flex}.contact-trust .harbour-meter{flex:auto;height:5px}.contact-trust small{color:var(--mute);font-size:12px}.contact-trust b{font-size:12.5px}.contact-sells{color:var(--text)}.market-hall .port-hall-name p{color:#ff7a84}.market-heat-mark{width:44px;height:44px;color:var(--mute);border:1px solid #82a0be66;border-radius:50%;flex:none;place-items:center;display:grid}.market-heat-mark .harbour-icon{width:24px;height:24px}.market-heat-mark.wanted{border-color:var(--red);color:var(--red);box-shadow:0 0 14px #ff6a7480}.market-heat-pips{gap:4px;display:flex}.market-heat-pips i{background:#82a0be40;border-radius:3px;width:22px;height:5px}.market-heat-pips i.on{background:var(--red)}.market-board{flex-direction:column;gap:10px;padding:12px 14px 14px;display:flex}.market-board-head{align-items:center}.market-rerolls{white-space:nowrap;color:#b6c3cf;margin-left:auto;font-size:13.5px}.market-rerolls b{color:var(--text);font-size:15px}.market-reroll-picture{object-fit:contain;vertical-align:middle;width:26px;height:26px}.btn .market-reroll-picture{width:22px;height:22px}.market-slot.market-green{background:linear-gradient(#6fe08a14,#080c1299);border-color:#6fe08a80;position:relative}.market-green-tag{color:var(--green);letter-spacing:.08em;text-transform:uppercase;text-align:center;background:#6fe08a29;border-radius:5px;align-self:stretch;padding:2px 6px;font-size:11px;font-weight:800}.market-slots{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.market-slot{border:1px solid var(--line);min-height:250px;color:var(--text);text-align:left;font:inherit;background:linear-gradient(#3c101659,#080c12b3 46%);border-radius:9px;flex-direction:column;align-items:flex-start;gap:5px;padding:10px;display:flex}button.market-slot:hover{border-color:#e8b84a73}.market-slot.on{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset, 0 0 18px #e8b84a2e}.market-slot.empty{text-align:center;color:var(--mute);background:#080c1280;border-style:dashed;justify-content:center;align-items:center}.market-slot.empty .harbour-icon{width:28px;height:28px}.market-slot>b{letter-spacing:.04em;text-transform:uppercase;font:700 14.5px Cinzel,serif}.market-slot>small{font-size:12px}.market-offer-picture,.market-item-picture{object-fit:contain;border-radius:7px;place-items:center;width:100%;height:120px;display:grid}.market-item-picture .item-art,.market-item-picture svg{width:104px;height:104px}.market-offer-picture.large,.market-item-picture.large{flex:none;width:72px;height:72px}.market-offer-picture.small,.market-item-picture.small{flex:none;width:52px;height:52px}.market-item-picture.large .item-art,.market-item-picture.large svg{width:66px;height:66px}.market-item-picture.small .item-art,.market-item-picture.small svg{width:48px;height:48px}.market-effect{font-size:13.5px;font-weight:700}.market-stats{color:#b6c3cf;flex-direction:column;gap:1px;font-size:12.5px;display:flex}.market-stats b{color:var(--text)}.market-price{align-items:center;gap:8px;margin-top:auto;display:flex}.market-price s,.harbour-facts s{color:var(--mute)}.market-deal{background:#e8b84a0d;border:1px solid #e8b84a66;border-radius:9px;flex-direction:column;gap:8px;padding:10px;display:flex}.market-deal-head{align-items:center;gap:12px;display:flex}.market-deal-head>div{flex-direction:column;min-width:0;display:flex}.market-deal-head b{letter-spacing:.04em;text-transform:uppercase;font:700 16px Cinzel,serif}.market-deal-head small{color:var(--green);font-weight:700}.market-choice{text-align:left;width:100%;min-height:62px;color:var(--text);cursor:pointer;border:1px solid;border-radius:9px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:6px 12px 6px 8px;display:grid}.market-choice>span{flex-direction:column;gap:2px;min-width:0;display:flex}.market-choice b{letter-spacing:.05em;text-transform:uppercase;font:800 15px Barlow,sans-serif}.market-choice small{color:#c3cfda;font-variant-numeric:tabular-nums;font-size:12.5px;line-height:1.25}.market-choice.bargain{background:linear-gradient(90deg,#e8b84a33,#e8b84a0d);border-color:#e8b84abf;box-shadow:0 0 14px #e8b84a1f}.market-choice.bargain b{color:var(--gold)}.market-choice.bargain:hover:not(:disabled){background:linear-gradient(90deg,#e8b84a4d,#e8b84a1a)}.market-choice.bargain:hover:not(:disabled) .market-bargain-picture{transform:rotate(-8deg)scale(1.08)}.market-choice.reroll{background:#b98cff12;border-color:#b98cff8c;min-height:52px}.market-choice.reroll b{color:#c8a8ff}.market-choice.reroll:hover:not(:disabled){background:#b98cff24}.market-choice.reroll:hover:not(:disabled) .market-reroll-picture{transform:rotate(40deg)}.market-choice:disabled{cursor:default;opacity:.6;box-shadow:none}.market-choice.used{opacity:.8;border-style:dashed}.market-bargain-picture{object-fit:contain;filter:drop-shadow(0 2px 4px #0009);flex:none;place-items:center;width:44px;height:44px;margin:0 3px;transition:transform .18s;display:grid}.market-choice .market-reroll-picture{width:44px;height:44px;margin:0 3px;transition:transform .25s}.market-haggle{text-align:center;align-items:center;gap:6px;padding:22px 12px}.market-haggle .market-bargain-picture{width:112px;height:112px;margin:0;animation:1s ease-in-out both market-haggle}.market-haggle b{letter-spacing:.04em;text-transform:uppercase;color:var(--gold);font:700 16px Cinzel,serif}.market-haggle small{color:var(--mute)}@keyframes market-haggle{0%{transform:translateY(0)rotate(0)scale(.9)}15%{transform:translateY(-14px)rotate(-12deg)scale(1.05)}30%{transform:translateY(0)rotate(10deg)scale(1)}45%{transform:translateY(-12px)rotate(-9deg)scale(1.06)}60%{transform:translateY(0)rotate(8deg)scale(1)}75%{transform:translateY(-8px)rotate(-5deg)scale(1.04)}to{transform:translateY(0)rotate(0)scale(1.12)}}.market-result{border:1px solid;border-radius:8px;flex-direction:column;gap:3px;padding:8px 10px;animation:.35s ease-out both market-pop;display:flex}.market-result>b{letter-spacing:.04em;text-transform:uppercase;font:700 14px Cinzel,serif}.market-result.good{background:#6fd08a1a;border-color:#6fd08a99}.market-result.good>b,.market-result.good .market-result-price b{color:var(--green)}.market-result.bad{background:#ff6a7414;border-color:#ff6a748c}.market-result.bad>b,.market-result.bad .market-result-price b{color:var(--red)}.market-result-price{font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;display:flex}.market-result-price s{color:var(--mute)}.market-result-price b{font-size:17px}.market-trust-lost{margin:0;font-weight:800}.market-deal.market-result.angry{background:#ff6a7414;border-color:#ff6a7499}.market-result.angry .market-deal-head b{color:var(--red)}.market-result.angry .market-deal-head small{color:#ffd0d4;font-style:italic;font-weight:600}@keyframes market-pop{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.market-slot-box{min-width:0;display:flex;position:relative}.market-slot-box>.market-slot{flex:auto;width:100%;min-width:0}.market-die{z-index:2;cursor:pointer;color:#c8a8ff;background:#0e0c18e0;border:1px solid #b98cffa6;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;display:grid;position:absolute;top:6px;right:6px;box-shadow:0 2px 8px #0009}.market-die .market-reroll-picture,.market-die .harbour-icon{width:30px;height:30px;transition:transform .25s}.market-die:hover:not(.blocked):not(:disabled){border-color:#c8a8ff;box-shadow:0 0 12px #b98cff80}.market-die:hover:not(.blocked):not(:disabled) .market-reroll-picture{transform:rotate(40deg)scale(1.08)}.market-die.blocked{cursor:help;border-color:#82a0be59}.market-die.blocked .market-reroll-picture,.market-die.blocked .harbour-icon,.market-die:disabled .market-reroll-picture{filter:grayscale();opacity:.45}.market-die.spinning{border-color:#c8a8ff;box-shadow:0 0 16px #b98cffb3}.market-die.spinning .market-reroll-picture,.market-die.spinning .harbour-icon{filter:none;opacity:1;animation:.65s cubic-bezier(.3,.1,.3,1) both market-die-spin}.market-die-tip{z-index:3;pointer-events:none;border:1px solid var(--line);width:max-content;max-width:150px;color:var(--text);text-align:left;background:#080c12f7;border-radius:6px;padding:5px 9px;font:600 12px/1.3 Barlow,sans-serif;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 6px 16px #0000008c}@keyframes market-die-spin{0%{transform:rotate(0)scale(1)}50%{transform:rotate(400deg)scale(1.25)}to{transform:rotate(720deg)scale(1)}}.market-slot-box.rolling>.market-slot>*{opacity:.25;filter:blur(1.5px);transition:opacity .2s,filter .2s}.market-slot-box.fresh>.market-slot{animation:.4s ease-out both market-pop}@media (pointer:coarse){.market-die{width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.market-haggle .market-bargain-picture,.market-result,.market-die.spinning .market-reroll-picture,.market-die.spinning .harbour-icon,.market-slot-box.fresh>.market-slot{animation:none}.market-bargain-picture,.market-reroll-picture{transition:none}}.market-empty{text-align:center;border:1px dashed var(--line);border-radius:9px;padding:28px 12px}.port-page-title h2 .harbour-icon{color:var(--gold)}@media (pointer:coarse){.market-deal .btn{min-height:44px}}@media (width<=767px){.market-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.market-slot{min-height:220px}.port-page-list .contact-card{scroll-snap-align:start;flex:0 0 82%}}@media (width>=1280px) and (height<=700px){.market-slot{gap:3px;min-height:0;padding:8px}.market-offer-picture,.market-item-picture{height:84px}.market-item-picture .item-art,.market-item-picture svg{width:76px;height:76px}.contact-card-picture{width:60px;height:60px}.market-board{gap:6px;padding:8px 12px 10px}.harbour-card{padding:8px 12px}.harbour-card-mark{width:44px;height:44px}.harbour-row{min-height:54px;padding:7px 12px}.harbour-right-body{gap:7px;padding:10px 12px}.harbour-facts>div{min-height:26px}.port-banner{height:110px}.yard-title h2{font-size:28px}.yard-title,.yard-foot{padding:10px}.harbour-action .btn{min-height:44px}}@media (pointer:coarse) and (width<=1279px){.harbour-row{min-height:64px}}.runes-page{--battle:#ff9f7a;--ward:#9fd0ff}.runes-family-battle{--family:var(--battle)}.runes-family-ward{--family:var(--ward)}@media (width>=1280px){.runes-bonuses{min-height:calc(var(--bonus-rows,6) * 20px)}.runes-bonuses li{align-items:center;height:20px;padding:0}.runes-stats{min-height:calc(var(--stat-rows,3) * 24px)}.runes-stats .runes-stat{align-items:center;height:24px;padding:0}.runes-socket-lines li{height:30px;min-height:0;padding:0}}@media (width>=1280px) and (height<=800px){.runes-bonuses{min-height:calc(var(--bonus-rows,6) * 16px)}.runes-bonuses li{height:16px;font-size:12px}.runes-stats{min-height:calc(var(--stat-rows,3) * 20px)}.runes-stats .runes-stat{height:20px;font-size:13px}.runes-socket-lines li{height:24px}.runes-mini{grid-template-columns:40px minmax(0,1fr);margin:2px 0}.runes-mini-pic{width:40px;height:40px}.runes-mini-pic .item-art{width:32px;height:32px}.runes-note{margin:2px 0 4px}}.runes-stack{grid-template-columns:minmax(0,1fr);align-items:center;display:grid}.runes-stack>.runes-layer{grid-area:1/1;min-width:0}.runes-stack>.runes-layer.hidden{visibility:hidden}.runes-solo{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid}@media (width>=1280px) and (height<=900px){.runes-solo{grid-template-columns:auto minmax(0,1fr)}}.runes-show{align-items:center}.runes-name{color:#f0e6cf}.runes-plus{color:var(--gold);font:800 16px Barlow,sans-serif}.runes-note{margin:4px 0 6px;font-size:13px}.runes-two{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.runes-two h4,.runes-buffs h4{letter-spacing:.07em;text-transform:uppercase;color:var(--family);margin:0 0 2px;font:800 11px Barlow,sans-serif}.runes-bonuses{margin:0;padding:0;list-style:none}.runes-bonuses li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:1px 0;font-size:12.5px;display:grid}.runes-bonuses li>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.runes-bonuses small{color:var(--mute)}.runes-bonuses.odds li{grid-template-columns:minmax(0,1fr) auto 40px}.runes-bonuses.odds b{text-align:right;color:var(--mute)}.runes-head{letter-spacing:.07em;text-transform:uppercase;color:var(--mute);margin:8px 0 1px;font:800 10.5px Barlow,sans-serif}.runes-stats{margin:0;padding:0;list-style:none}.runes-stat{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto 74px;gap:10px;padding:3px 0;font-size:14px;display:grid}.runes-stat>b{text-align:right;font-weight:800}.runes-stat>i{justify-content:flex-end;gap:4px;font-style:normal;font-weight:800;display:flex}.runes-stat.new>span,.runes-stat.gain>span{color:var(--green)}.runes-stat.gone>span,.runes-stat.gone>b{color:var(--mute);text-decoration:line-through}.runes-socket-lines{margin:0;padding:0;list-style:none}.runes-socket-lines li{border-bottom:1px solid var(--line);grid-template-columns:26px 64px minmax(0,1fr);align-items:center;gap:8px;min-height:32px;padding:3px 0;font-size:13.5px;display:grid}.runes-socket-lines small{letter-spacing:.07em;text-transform:uppercase;color:var(--family);font:800 10.5px Barlow,sans-serif}.runes-socket-lines b{white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.runes-ring{border:2px solid color-mix(in srgb, var(--family) 65%, transparent);background:#0a1018cc;border-radius:50%;place-items:center;width:26px;height:26px;display:grid}.runes-ring .item-art{object-fit:contain;width:18px;height:18px}.runes-socket-lines li.empty .runes-ring{opacity:.7;border-style:dashed}.runes-socket-lines li.new b{color:var(--green)}.runes-socket-lines li.new .runes-ring{border-color:var(--green);box-shadow:0 0 8px #6fe08a8c}.runes-stage.forge-show .forge-show-facts{max-width:520px}.runes-duo{grid-template-columns:minmax(0,560px) 34px minmax(0,560px);justify-content:center;align-items:start;gap:0;padding:5px 18px;display:grid}.runes-half{min-width:0;padding:4px 6px}.runes-half>h5{border-bottom:1px solid var(--line);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin:0 0 2px;padding-bottom:3px;font:800 11px Barlow,sans-serif}.runes-half.after>h5{color:var(--green)}.runes-arrow{color:var(--gold);align-self:center;place-items:center;font-size:22px;display:grid}.runes-mini{grid-template-columns:54px minmax(0,1fr);align-items:center;gap:12px;margin:4px 0 2px;display:grid}.runes-mini-pic{border:1px solid color-mix(in srgb, var(--show-color) 35%, transparent);background:radial-gradient(circle, color-mix(in srgb, var(--show-color) 22%, transparent), #0a1018e6 70%);border-radius:50%;place-items:center;width:54px;height:54px;display:grid}.runes-mini-pic .item-art{object-fit:contain;width:42px;height:42px}.runes-mini>span:last-child{flex-direction:column;min-width:0;display:flex}.runes-mini .forge-show-kicker{font-size:12px}.runes-mini .forge-show-kicker.green{color:var(--green)}.runes-duo .runes-head{margin-top:4px}.runes-mini-name{font-variant:small-caps;white-space:nowrap;text-overflow:ellipsis;font:700 22px/1.1 Cinzel,serif;overflow:hidden}.runes-cost .cost-card{flex:0 0 168px;width:168px}.runes-placeholder{border:2px dashed var(--line);border-radius:50%;width:40px;height:40px;margin:0 auto;display:block}.runes-remove-note{font-size:12.5px}.runes-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.runes-actions .runes-engrave{flex:none;min-width:150px;padding:0 26px}.runes-remove{min-height:46px;color:var(--gold);letter-spacing:.08em;text-transform:uppercase;border-color:#e8b84a8c;padding:0 20px;font-weight:800}.runes-outcome.warn{color:#ffd28a}.runes-mine{flex-direction:column;min-height:0;display:flex}.runes-mine>.panel-head{flex:none}.runes-socket-toggle{border-bottom:1px solid var(--line);flex:none;grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid}.runes-socket-toggle button{border:1px solid color-mix(in srgb, var(--family) 55%, transparent);min-height:38px;color:var(--family);letter-spacing:.08em;text-transform:uppercase;background:#0a1018cc;border-radius:7px;font:800 13px Barlow,sans-serif}.runes-socket-toggle button.on{background:color-mix(in srgb, var(--family) 22%, #0a1018cc);box-shadow:0 0 0 2px var(--family) inset;color:#fff}.runes-mine-list{flex:auto;min-height:0;overflow-y:auto}.runes-mine-empty{margin:0;padding:8px;font-size:13px}.runes-line{gap:4px;display:grid}.runes-line-top{grid-template-columns:minmax(0,1fr) 30px;align-items:center;gap:6px;display:grid}.runes-pick{grid-template-columns:28px minmax(0,1fr) auto}.runes-pick-art{place-items:center;width:26px;height:26px;display:grid}.runes-pick-art .item-art{object-fit:contain;width:26px;height:26px}.runes-count{color:var(--text);font-weight:800}.runes-info{width:30px;height:30px;color:var(--gold);background:#141e2af2;border:1px solid #e8b84a99;border-radius:7px;padding:0;font:italic 800 15px Georgia,serif}.runes-line.open .runes-info{background:#e8b84a2e;font-style:normal}.runes-buffs{border-left:2px solid var(--family);background:#0a101899;border-radius:0 6px 6px 0;margin:0 36px 4px 10px;padding:6px 10px}@media (pointer:coarse){.runes-info{width:44px;height:44px}.runes-line-top{grid-template-columns:minmax(0,1fr) 44px}}.runes-item-group h3{letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin:8px 2px 4px;font:800 11.5px Barlow,sans-serif}@media (width<=1279px){.runes-duo{grid-template-columns:minmax(0,1fr)}.runes-arrow{height:26px;transform:rotate(90deg)}}@media (width<=767px){.runes-two{grid-template-columns:minmax(0,1fr)}.runes-mine{order:2}.runes-mine .runes-mine-list{max-height:50dvh;display:grid;overflow:hidden auto}.runes-actions .runes-engrave{flex:100%;min-width:0}.runes-stat{grid-template-columns:minmax(0,1fr) auto 70px}.forge-meta{flex-wrap:wrap;justify-content:center;gap:6px 14px}}@media (width>=1280px) and (height<=700px){.runes-head{margin-top:4px}.runes-stats{min-height:0}.runes-stats .runes-stat{height:18px;font-size:12.5px}.runes-socket-lines li{height:22px}.runes-bonuses{min-height:calc(var(--bonus-rows,6) * 15px)}.runes-bonuses li{height:15px;font-size:11.5px}}:root{--background:#070b10;--panel:#0e151ee0;--line:#82a0be2e;--text:#e6ebf0;--mute:#8fa0b0;--gold:#e8b84a;--green:#6fd08a;--red:#ff6a74;--blue:#6fb8ff}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--background);color:var(--text);font:15px/1.35 Barlow,system-ui,sans-serif;overflow:auto}button{cursor:pointer;font-family:inherit}button:disabled{cursor:not-allowed;opacity:.45}.num{font-variant-numeric:tabular-nums}.mute{color:var(--mute)}.green{color:var(--green)}.red{color:var(--red)}.gold{color:var(--gold)}.app{background:radial-gradient(700px 600px at 50% 48%,#34628c4d,#0000 70%),radial-gradient(1200px 400px at 50% 0,#28786e29,#0000 70%),linear-gradient(#0a1119 0%,#070b10 60%,#05070a 100%);position:relative}.left-column,.right-column{flex-direction:column;gap:12px;min-height:0;display:flex}.left-column>.panel{flex-shrink:0}.panel{border:1px solid var(--line);background:linear-gradient(#101822e6,#090e14e6);border-radius:8px;min-height:0;box-shadow:0 10px 30px #00000073,inset 0 1px #ffffff0a}.panel-head{border-bottom:1px solid #82a0be24;justify-content:space-between;align-items:center;gap:8px;height:40px;padding:0 14px;font-size:15px;font-weight:600;display:flex}.panel-head small{color:var(--mute);font-size:12.5px;font-weight:500}.panel-body{padding:10px 14px}.fill{flex-direction:column;flex:auto;display:flex}.bar{background:#0000008c;border:1px solid #82a0be29;border-radius:4px;height:8px;position:relative;overflow:hidden}.bar>i{border-radius:4px;height:100%;transition:width .12s linear;display:block}.bar.large{height:18px}.bar .txt{text-align:center;text-shadow:0 1px 2px #000;font-size:11.5px;font-weight:700;line-height:16px;position:absolute;inset:0}.health>i{background:linear-gradient(90deg,#8a1c22,#d6343e)}.xpb>i{background:var(--gold)}.monster>i{background:linear-gradient(90deg,#5a1a8a,#b06cff)}.btn{letter-spacing:.03em;height:38px;color:var(--text);background:#141e2af2;border:1px solid #82a0be4d;border-radius:6px;padding:0 16px;font-size:14px;font-weight:700}.btn:hover:not(:disabled){background:#1c2a3af2;border-color:#a0bedc99}.btn.gold{color:#1c1204;background:linear-gradient(#e8b84a,#a67a1e);border-color:#c9952e;box-shadow:0 4px 12px #e8b84a33}.btn.gold:hover:not(:disabled){background:linear-gradient(#f3c860,#b8882a)}.btn.danger{color:#ffe6de;background:linear-gradient(#a2342a,#5a140e);border-color:#9b3a2a}.btn.small{height:28px;padding:0 10px;font-size:12.5px}.button-row{gap:8px;display:flex}.button-row .btn{flex:1}select{height:38px;color:var(--text);background:#0d141c;border:1px solid #82a0be4d;border-radius:6px;padding:0 10px;font:600 14px Barlow,sans-serif}.top-bar{background:linear-gradient(#060a0ff7,#080c12e6);border-bottom:1px solid #82a0be29;align-items:center;padding:0 24px;display:flex}.logo{letter-spacing:.12em;color:#f0e6cf;align-items:center;gap:12px;font:700 19px Cinzel,serif;display:flex}.logo small{color:var(--mute);font-size:13px}.nav{flex:1;display:flex}.nav button{color:#aab6c2;background:0 0;border:none;align-items:center;gap:8px;height:64px;padding:0 16px;font:600 15px Barlow,sans-serif;display:flex;position:relative}.nav button.on{color:#fff}.nav a{color:#ffe2a0;align-items:center;gap:8px;height:64px;padding:0 16px;font:600 15px Barlow,sans-serif;text-decoration:none;display:flex}.nav .is-new{letter-spacing:.08em;color:#fff;background:#b8412f;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:800}.nav button.on:after{content:"";background:var(--gold);height:2px;box-shadow:0 0 10px var(--gold);position:absolute;bottom:0;left:16px;right:16px}.nav button:disabled{opacity:.5;cursor:default}.nav svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.coins{align-items:center;gap:20px;font-size:16px;font-weight:700;display:flex}.coins span{align-items:center;gap:8px;display:flex}.hero-card{align-items:center;gap:14px;padding:16px;display:flex}.portrait{flex-shrink:0;position:relative}.portrait .hero-portrait{width:84px;height:84px;box-shadow:0 0 18px #e8b84a4d}.portrait b{background:var(--gold);color:#1c1204;border-radius:10px;padding:1px 9px;font-size:12px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.name{color:#f0e6cf;font:700 19px Cinzel,serif}.class-label{color:#d9a24a;margin-bottom:8px;font-size:13.5px;font-weight:600}.bars{flex-direction:column;gap:6px;display:flex}.attr{align-items:center;gap:10px;height:38px;display:flex}.attr span{flex:1}.attr b{text-align:right;width:44px;font-size:16px}.more{color:#1c1204;background:linear-gradient(#e8b84a,#9a7222);border:1px solid #6a5424;border-radius:6px;width:30px;height:28px;padding:0;font-size:14px;font-weight:800}.more.x5{width:36px;font-size:12px}.points{color:var(--gold);border:1px solid #e8b84a66;border-radius:10px;padding:2px 8px;font-size:12.5px;font-weight:700}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 10px;padding:8px 10px;display:grid}.stats div{border-radius:5px;justify-content:space-between;align-items:center;height:28px;padding:0 8px;font-size:14px;display:flex}.stats div:nth-child(4n+1),.stats div:nth-child(4n+2){background:#ffffff06}.center{flex-direction:column;min-height:0;display:flex;position:relative}.screen-title{text-align:center;padding-top:12px}.screen-title h1{letter-spacing:.1em;color:#f0e6cf;text-shadow:0 2px 12px #000c;margin:0;font:700 34px Cinzel,serif}.screen-title div{color:#aab6c2;font-size:15px}.paperdoll{flex:1;justify-content:center;align-items:center;gap:18px;min-height:0;display:flex;position:relative}.column{z-index:1;flex-direction:column;gap:10px;display:flex}.hero-figure{flex:1 1 0;align-self:stretch;min-width:0;max-width:560px}.slot{background:#0a0e14e6;border:1.5px solid;border-radius:9px;justify-content:center;align-items:center;width:74px;height:74px;padding:0;display:flex;position:relative;box-shadow:0 6px 14px #0009,inset 0 0 0 1px #0009}.slot.empty-slot{opacity:.7;border-style:dashed;border-color:#82a0be40!important}.slot.is-selected{outline-offset:2px;outline:2px solid #fff}.slot:hover{filter:brightness(1.2)}.slot .enchant-badge,.cell .enchant-badge{color:#fff;text-shadow:0 1px 2px #000;font-size:12px;font-weight:800;position:absolute;bottom:3px;right:5px}.slot-label{letter-spacing:.12em;color:var(--mute);text-align:center;text-transform:uppercase;margin-top:4px;font-size:11px;font-weight:700}.center-actions{justify-content:center;gap:12px;padding:8px 0 4px;display:flex}.detail{z-index:2;background:linear-gradient(#14181ef7,#0a0c10f7);align-self:center;width:290px;padding:14px}.detail h3{margin:0;font:700 18px Cinzel,serif}.detail .sub{font-size:13px;font-weight:600}.detail hr{background:#82a0be33;border:none;height:1px;margin:10px 0}.detail .l{justify-content:space-between;font-size:14px;display:flex}.detail .hint{color:var(--mute);text-align:center;padding:30px 6px;font-size:13.5px}.detail .enchant-line{color:var(--mute);margin:8px 0;font-size:12.5px}.zone-row{gap:8px;display:flex}.zone-row select{flex:1;min-width:0}.fighting{background:#0000004d;border-radius:8px;min-height:104px;margin:12px 0 10px;padding:10px;position:relative}.fighting .who{justify-content:space-between;margin:0 0 4px;font-size:14px;display:flex}.fighting .who b{font-weight:700}.state-fighting{text-align:center;color:var(--mute);margin-top:8px;font-size:13px}.rates{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.rates div{text-align:center;background:#0000004d;border-radius:6px;padding:8px}.rates small{color:var(--mute);font-size:12px;display:block}.rates b{font-size:17px}.battle-log{color:#c4ced8;flex:1;min-height:0;padding:6px 14px 10px;font-size:13.5px;line-height:1.5;overflow:hidden;-webkit-mask-image:linear-gradient(#000 75%,#0000);mask-image:linear-gradient(#000 75%,#0000)}.battle-log .level-badge{color:var(--gold);font-weight:700}.battle-log .death,.battle-log .warning{color:var(--red)}.battle-log .info{color:var(--blue)}.floating{color:#fff;text-shadow:0 2px 3px #000;pointer-events:none;font-size:16px;font-weight:800;animation:.9s ease-out forwards sobe;position:absolute}.floating.crit{color:#ffb040;font-size:22px}.floating.bad{color:var(--red);font-size:14px}@keyframes sobe{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-38px)}}.right-column>.shop{flex-shrink:0}.shop .l{justify-content:space-between;align-items:center;gap:8px;min-height:34px;font-size:14px;display:flex}.bag{flex-direction:column;display:flex}.mats{align-items:center;gap:14px;font-size:14px;display:flex}.mats span{align-items:center;gap:4px;display:flex}.mats svg{width:20px;height:20px}.grid{grid-template-columns:repeat(auto-fill,58px);gap:6px;padding:10px 14px;display:grid;overflow:auto}.cell{background:#0a0e14e6;border:1px solid;border-radius:7px;justify-content:center;align-items:center;width:58px;height:58px;padding:0;display:flex;position:relative}.cell svg{width:40px;height:40px}.cell.empty{cursor:default;background:#0000004d;border-color:#82a0be26}.cell.is-selected{outline-offset:1px;outline:2px solid #fff}.cell .up{color:var(--green);text-shadow:0 1px 2px #000;font-size:13px;font-weight:900;position:absolute;top:2px;left:4px}.cell .enchant-badge{font-size:11px;bottom:2px;right:4px}.toasts{z-index:50;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:76px;left:50%;transform:translate(-50%)}.toast{border:1px solid var(--line);background:#0c121af5;border-radius:8px;padding:10px 18px;font-weight:600;animation:.25s ease-out entra;box-shadow:0 10px 30px #0009}.toast.good{color:#ffe2a0;border-color:#e8b84a99}.toast.bad{color:#ffc0c6;border-color:#ff6a7499}@keyframes entra{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.modal{z-index:60;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal .panel{width:440px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:22px;overflow-y:auto}.modal h2{color:#f0e6cf;margin:0 0 12px;font:700 22px Cinzel,serif}.modal .l{border-bottom:1px solid #82a0be1a;justify-content:space-between;padding:5px 0;display:flex}.world{touch-action:none;background:#081018;flex:1;min-height:0;position:relative;overflow:hidden}.screen-canvas{cursor:grab;width:100%;height:100%;display:block;position:absolute;inset:0}.screen-canvas.dragging{cursor:grabbing}.vignette{pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 140px 30px #000000bf}.load{letter-spacing:.1em;color:#9fb4c4;z-index:5;background:#081018;justify-content:center;align-items:center;font:700 20px Cinzel,serif;display:flex;position:absolute;inset:0}.hero-top{align-items:center;gap:12px;padding:12px 14px 8px;display:flex}.hero-top .hero-portrait{flex-shrink:0;width:60px;height:60px}.hero-top .hero-portrait.compact{width:44px;height:44px}.hero-top .name{font-size:17px}.bar-row{align-items:center;gap:8px;margin-top:5px;font-size:12.5px;display:flex}.bar-row .bar{flex:1}.stamina-icon>i{background:linear-gradient(90deg,#1f6f78,#6fe0d0)}.hero-state{border-top:1px solid #82a0be1f;justify-content:space-between;align-items:center;gap:8px;padding:8px 14px 12px;font-size:13.5px;display:flex}.hero-state b{font-variant-numeric:tabular-nums}.chance{border-radius:12px;padding:2px 10px;font-size:13px;font-weight:800;display:inline-block}.report-list{overflow-y:auto}.report-list button{width:100%;color:var(--text);text-align:left;background:0 0;border:none;border-top:1px solid #82a0be14;align-items:flex-start;gap:10px;padding:8px 14px;display:flex}.report-list button:hover{background:#ffffff0a}.report-list .mark{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:7px}.report-list small{color:var(--mute);font-size:12.5px;display:block}.report-list .is-new{font-weight:800}.report{width:520px!important;max-width:calc(100vw - 24px)!important}.report h2{text-align:center;letter-spacing:.1em;margin-bottom:2px!important;font-size:30px!important}.report .sub{text-align:center;color:var(--mute);margin-bottom:14px}.duel{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:12px;display:grid}.duel .side-rel{background:#0000004d;border-radius:8px;padding:10px;font-size:13px}.duel b{margin-bottom:6px;font-size:15px;display:block}.rewards{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.rewards>span{background:#0000004d;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:14px;font-weight:700;display:flex}.rewards svg{width:22px;height:22px}.rewards>.cost-chip{border:0;min-height:0}.rewards>.cost-chip .cost-tile-art{width:24px;height:24px}.auto-form{flex-direction:column;gap:12px;padding:10px 14px 14px;display:flex}.auto-label{letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin-bottom:6px;font:800 11px Barlow,sans-serif}.auto-chips{flex-wrap:wrap;gap:6px;display:flex}.auto-chip{min-height:30px;color:var(--text);background:0 0;border:1px solid #82a0be40;border-radius:15px;padding:0 10px;font-size:13px;font-weight:600}.auto-chip.on{color:var(--gold);background:#e8b84a1a;border-color:#c9952e}.auto-levels{flex-wrap:wrap;gap:12px;display:flex}.auto-stepper{align-items:center;gap:6px;display:flex}.auto-stepper .btn{width:32px;height:32px;padding:0;font-size:16px}.auto-stepper b{text-align:center;min-width:26px;font-size:15px}.auto-summary{color:var(--mute);margin:0;font-size:12.5px;line-height:1.35}.auto-problem{margin:0;font-size:13px}.auto-limit{color:var(--gold);margin:0;font-size:12.5px}.stamina-rested{color:#6fe0d0;font-weight:700}.stamina-exhausted{color:#ffb36a;margin-top:3px;font-size:12px}.stamina-exhausted b{text-transform:uppercase;letter-spacing:.06em}.report-tags{flex-wrap:wrap;justify-content:center;gap:6px 14px;margin:-8px 0 12px;font-size:13px;font-weight:700;display:flex}.auto-actions{gap:8px;display:flex}.auto-actions .btn.gold{flex:1}.auto-session{background:#00000040;border:1px solid #82a0be33;border-radius:8px;margin:6px 14px 4px;padding:8px 10px;font-size:13px}.auto-session.running{border-color:#6fd08a73}.auto-session-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.auto-session-head b{color:#f0e6cf;align-items:center;gap:6px;font-size:13.5px;display:flex}.auto-session-now{margin-top:4px}.auto-session-line{margin-top:2px;font-size:12.5px}.auto-dot{background:var(--green);width:8px;height:8px;box-shadow:0 0 8px var(--green);border-radius:50%;margin-right:6px;display:inline-block}.target-auto{width:100%;min-height:36px;color:var(--gold);border-color:#e8b84a73;margin-top:8px;font-weight:700}@media (pointer:coarse){.auto-chip,.auto-stepper .btn,.target-auto{min-height:44px}.auto-stepper .btn{width:44px}}.region-main{background:#070b10;flex:1;gap:12px;min-height:0;padding:0;display:flex;position:relative}.region-left{display:none}.region-map{background:radial-gradient(#0f2a3a,#071219 75%);flex:1;min-width:0;position:relative;overflow:hidden}.region-viewport{cursor:grab;touch-action:none;position:absolute;inset:0;overflow:hidden}.region-viewport.panning{cursor:grabbing}.region-stage{position:absolute;top:0;left:0}.region-painting{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.region-route{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.region-route polyline{fill:none;stroke:#f3ecdc;stroke-width:2px;stroke-dasharray:5 6;vector-effect:non-scaling-stroke;opacity:.45}.region-route polyline.mine{stroke:var(--gold);stroke-width:3px;stroke-dasharray:8 6;opacity:.9}.pin{z-index:3;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;padding:0;display:flex;position:absolute;transform:translate(-50%,-50%)}.pin:hover{z-index:6}.pin.on{z-index:7}.pin-label{white-space:nowrap;pointer-events:none;color:#f3ecdc;text-shadow:0 1px 2px #000;opacity:0;background:#060a0fd9;border:1px solid #82a0be40;border-radius:9px;margin-top:3px;padding:1px 8px;font-size:12px;font-weight:800;transition:opacity .12s,transform .12s;transform:translateY(-3px)}.pin:hover .pin-label,.pin:focus-visible .pin-label,.pin.on .pin-label,.pin.always .pin-label{opacity:1;transform:none}.pin.castle .face{width:calc(30px * var(--plot-scale,1) * var(--place-scale,1));height:calc(30px * var(--plot-scale,1) * var(--place-scale,1));border-radius:50%;transition:transform .12s;display:block;box-shadow:0 0 0 2px #060a0fb3,0 4px 10px #0009}.pin.castle .face .hero-portrait{border:2px solid #5d86b8;width:100%;height:100%}.pin.castle:hover .face{transform:scale(1.12)}.pin.castle.mine .face{width:calc(38px * var(--plot-scale,1) * var(--place-scale,1));height:calc(38px * var(--plot-scale,1) * var(--place-scale,1));box-shadow:0 0 0 2px #060a0fb3,0 0 22px #e8b84abf}.pin.castle.mine .face .hero-portrait{border-color:var(--gold)}.pin.castle.mine .pin-label{border-color:var(--gold);color:var(--gold);background:#3c2806eb}.pin.castle.on .face{box-shadow:0 0 0 3px var(--gold), 0 0 22px #e8b84ab3}.pin.free .face{width:calc(26px * var(--plot-scale,1) * var(--place-scale,1));height:calc(26px * var(--plot-scale,1) * var(--place-scale,1));background:#282e36e6;border:2px solid #9aa4ae;border-radius:50%;place-items:center;font-size:12px;display:grid;box-shadow:0 3px 8px #0009}.pin.free:hover .face,.pin.free.on .face{border-color:var(--gold)}.pin.free.closed .face{opacity:.55;border-style:dashed}.pin.field .area{width:calc(74px * var(--field-scale,1) * var(--place-scale,1));height:calc(56px * var(--field-scale,1) * var(--place-scale,1));border:2px solid #0000;border-radius:50%;place-items:center;transition:border-color .12s,background .12s,box-shadow .12s;display:grid}.pin.field:hover .area{background:#e8d6aa14;border-color:#e8d6aabf;box-shadow:0 0 18px #e8d6aa59}.pin.field.on .area{border-color:var(--gold);background:#e8b84a1a;box-shadow:0 0 22px #e8b84a99}.pin.field .pin-label{margin-top:-6px}.field-level{color:#f3ecdc;background:#0d1117eb;border:2px solid #c9b48a;border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;font-weight:800;display:grid;box-shadow:0 2px 6px #000000b3}.pin.field.on .field-level,.pin.field:hover .field-level{border-color:var(--gold);color:var(--gold)}.pin .sprite{width:64px;height:64px;transition:transform .12s;display:block;position:relative}.pin .sprite img,.pin .sprite svg{object-fit:contain;width:100%;height:100%;display:block;position:relative}.pin.monster .sprite{width:calc(46px * var(--zone-scale,1) * var(--place-scale,1));height:calc(46px * var(--zone-scale,1) * var(--place-scale,1));border:3px solid var(--level-colour,#8fa0b0);background:radial-gradient(circle at 50% 40%,#5b6f84,#1c2733 75%);border-radius:50%;place-items:center;display:grid;box-shadow:0 0 0 2px #060a0fb3,0 4px 10px #000000a6}.pin.monster .sprite img{object-fit:cover;object-position:50% 25%;border-radius:50%;width:100%;height:100%}.pin.monster .sprite svg{fill:none;stroke:#f3ecdc;stroke-width:1.6px;border-radius:50%;width:84%;height:84%}.pin.monster:hover .sprite{transform:scale(1.12)}.pin.monster.picture-look .sprite{width:calc(64px * var(--zone-scale,1) * var(--place-scale,1));height:calc(64px * var(--zone-scale,1) * var(--place-scale,1));box-shadow:none;background:0 0;border:0;border-radius:0}.pin.monster.picture-look .sprite img{object-fit:contain;object-position:50% 50%;filter:drop-shadow(0 3px 4px #000000bf);border-radius:0}.pin.monster.picture-look.on .sprite{box-shadow:none}.pin.monster.picture-look.on .sprite img{filter:drop-shadow(0 0 8px var(--gold))}.pin.monster.on .sprite{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold), 0 0 18px #e8b84ab3}.pin .level{box-sizing:border-box;color:#fff;background:#c62f2f;border:1.5px solid #fff;border-radius:10px;place-items:center;min-width:19px;height:19px;padding:0 3px;font-size:10.5px;font-weight:800;line-height:1;display:grid;position:absolute;top:-5px;right:-6px;box-shadow:0 1px 3px #000000b3}.pin.event{transform:translate(-50%,-70%)}.pin.event .sprite{width:calc(76px * var(--spot-scale,1) * var(--place-scale,1));height:calc(76px * var(--spot-scale,1) * var(--place-scale,1))}.pin.event .sprite img{filter:grayscale(.7)brightness(.75)drop-shadow(0 3px 4px #000000b3)}.pin.event.on .sprite img{filter:grayscale(.4) drop-shadow(0 0 8px var(--gold))}.pin .lock{font-size:14px;position:absolute;bottom:4px;right:-2px}.pin.event .glyph{font-size:calc(24px * var(--spot-scale,1) * var(--place-scale,1));color:#e8dcc0;filter:grayscale(.4);background:#0d1117e0;border:2px solid #8a7a5a;border-radius:50%;place-items:center;display:grid;position:absolute;inset:18%;box-shadow:0 3px 8px #000000b3}.pin.event.on .glyph{border-color:var(--gold)}.pin.event.badge-look{transform:translate(-50%,-50%)}.pin.event.badge-look .sprite{width:calc(46px * var(--spot-scale,1) * var(--place-scale,1));height:calc(46px * var(--spot-scale,1) * var(--place-scale,1));background:radial-gradient(circle at 50% 40%,#3d4652,#141a22 75%);border:3px solid #8a7a5a;border-radius:50%;box-shadow:0 0 0 2px #060a0fb3,0 4px 10px #000000a6}.pin.event.badge-look .sprite img{object-fit:cover;filter:grayscale(.6)brightness(.85);border-radius:50%}.pin.event.badge-look.on .sprite{border-color:var(--gold)}.pin.event.badge-look.on .sprite img{filter:grayscale(.3)}.pin.event.badge-look .glyph{border:0;inset:0}.pin.free .face.pictured{background:#0d1117b3}.pin.free .face.pictured img{object-fit:contain;width:100%;height:100%}.pin.field .area{position:relative}.pin.field .field-picture{object-fit:contain;pointer-events:none;width:64%;height:64%;position:absolute;inset:18%}.pin.dock .badge{width:calc(40px * var(--spot-scale,1) * var(--place-scale,1));height:calc(40px * var(--spot-scale,1) * var(--place-scale,1));font-size:calc(19px * var(--spot-scale,1) * var(--place-scale,1));filter:grayscale(.5);background:#06141ee6;border:2px solid #6fb8ff;border-radius:50%;place-items:center;display:grid;position:relative;box-shadow:0 0 16px #6fb8ff80}.pin.dock.on .badge{border-color:var(--gold)}.rider{z-index:8;pointer-events:none;border-radius:50%;width:28px;height:28px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #ffffffb3,0 4px 10px #000000b3}.rider .hero-portrait{border:0;width:100%;height:100%}.rider.mine{width:34px;height:34px;box-shadow:0 0 0 2px #fff,0 0 0 5px #e8b84ab3,0 4px 10px #000000b3}.rider-time{z-index:9;pointer-events:none;white-space:nowrap;color:var(--gold);background:#060a0fe6;border:1px solid #e8b84a99;border-radius:8px;padding:0 6px;font-size:11.5px;font-weight:800;position:absolute;transform:translate(-50%,-190%)}.region-picker{z-index:25;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%)}.region-title{background:#080c12e0;border:1px solid #e8b84a73;border-radius:10px;align-items:stretch;display:flex;overflow:hidden;box-shadow:0 6px 18px #00000073}.region-name{min-width:170px;font:inherit;color:inherit;white-space:nowrap;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:0;padding:5px 18px;display:flex}.region-name b{color:#f0e6cf;letter-spacing:.08em;text-transform:uppercase;font:700 17px Cinzel,serif}.region-name span{color:var(--mute);font-size:11.5px;font-weight:700}.region-name:hover b{color:var(--gold)}.region-step{width:34px;color:var(--gold);border-right:1px solid #e8b84a33;justify-content:center;align-items:center;font-size:22px;font-weight:700;text-decoration:none;display:flex}.region-step:last-child{border-left:1px solid #e8b84a33;border-right:0}.region-step:hover{background:#e8b84a1f}.region-step.off{color:#8fa0b04d}.region-picker.away .region-title{border-color:#6fb8ff99}.region-picker.away .region-name span{color:#6fb8ff}.region-home{font-size:12.5px}.region-list{flex-direction:column;min-width:240px;max-height:50dvh;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:50%;overflow-y:auto;transform:translate(-50%)}.region-list a{min-height:44px;color:var(--text);border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:4px 10px;text-decoration:none;display:flex}.region-list a:hover{background:#ffffff0d}.region-list a.on{color:var(--gold);background:#e8b84a14}.region-zoom{z-index:15;right:calc(10px + var(--safe-right));bottom:calc(16px + var(--safe-bottom));flex-direction:column;gap:6px;display:flex;position:absolute}.region-zoom .btn{width:44px;height:44px;color:var(--gold);justify-content:center;align-items:center;padding:0;font-size:19px;text-decoration:none;display:flex}.region-zoom svg{color:var(--gold)}.region-zoom .btn.on{border-color:var(--gold);background:#e8b84a2e}.region-phone-top{z-index:14;top:66px;left:calc(8px + var(--safe-left));right:calc(8px + var(--safe-right));pointer-events:none;flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute}.region-phone-top>*{pointer-events:auto}.region-phone-top>.m-hero{align-self:stretch;position:static}.region-sheet{max-height:62dvh}.region-sheet .spot-card,.region-sheet .overview{box-shadow:none;background:0 0;border:0}.overview{flex-direction:column;min-height:0;display:flex}.overview-tabs{border-bottom:1px solid #82a0be24;flex:none;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px 10px;display:grid}.overview-tabs button{min-height:36px;color:var(--text);background:#141e2af2;border:1px solid #82a0be4d;border-radius:6px;padding:0 4px;font-size:13px;font-weight:700}.overview-tabs button.on{color:var(--gold);background:#e8b84a1a;border-color:#e8b84acc}.overview-auto{min-height:36px;color:var(--gold);border-color:#e8b84a8c;margin:8px 10px 0;font-weight:800}.overview-auto.off{color:var(--mute);border-color:#82a0be4d}.overview-list{scrollbar-width:thin;flex-direction:column;flex:auto;gap:6px;min-height:0;padding:8px 10px 10px;display:flex;overflow-y:auto}.overview-row{width:100%;min-height:52px;color:var(--text);text-align:left;font:inherit;background:#0a1018e6;border:1px solid #82a0be29;border-radius:7px;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:4px 10px 4px 4px;display:grid}.overview-row:hover{border-color:#a0bedc73}.overview-row.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px #e8b84a59}.row-picture{background:#111a24;border-radius:50%;place-items:center;width:42px;height:42px;display:grid;overflow:hidden}.row-picture .hero-portrait{border-width:1.5px;width:100%;height:100%}.row-picture.object img{object-fit:contain;width:86%;height:86%}.row-picture svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:24px;height:24px}.row-name{font-weight:700;display:block}.row-sub{color:var(--mute);font-size:12.5px;display:block}.row-right{color:var(--mute);text-align:right;font-size:12.5px;font-weight:700}.overview-row.locked .row-picture img{filter:grayscale(.7)}.overview-row.locked .row-picture span{font-size:22px}.overview-row.locked .row-right{white-space:nowrap}.spot-card{flex-direction:column;min-height:0;display:flex;overflow:hidden}.spot-body{scrollbar-width:thin;flex-direction:column;flex:0 auto;gap:12px;min-height:0;padding:14px;display:flex;overflow-y:auto}.spot-head{grid-template-columns:96px 1fr;align-items:center;gap:14px;display:grid}.spot-picture{background:radial-gradient(circle at 50% 40%,#e8b84a24,#080c12f2 70%);border:1px solid #e8b84a73;border-radius:50%;place-items:center;width:96px;height:96px;display:grid;overflow:hidden}.spot-picture img{object-fit:contain;width:84%;height:84%}.spot-picture svg{fill:none;stroke:#f3ecdc;stroke-width:1.4px;width:48px;height:48px}.spot-picture.face .hero-portrait{border:0;width:100%;height:100%}.spot-emoji{font-size:40px}.spot-kicker{letter-spacing:.14em;color:var(--gold);text-transform:uppercase;font:700 11px Cinzel,serif}.spot-name{color:#f0e6cf;margin-top:2px;font:700 20px/1.15 Cinzel,serif}.spot-stats{background:#060a0f99;border:1px solid #82a0be24;border-radius:8px;grid-template-columns:auto 1fr;gap:6px 10px;padding:10px 12px;font-size:13.5px;display:grid}.spot-stats>span{color:var(--mute)}.spot-stats>b{text-align:right}.spot-fill{background:#0b1118;border:1px solid #82a0be40;border-radius:4px;grid-column:1/-1;height:8px;overflow:hidden}.spot-fill i{height:100%;display:block}.spot-fill.green i{background:linear-gradient(90deg,#6fe08a,#3a9a55)}.spot-fill.gold i{background:linear-gradient(90deg,#f0a431,#b06a10)}.spot-sub{letter-spacing:.14em;color:var(--mute);text-transform:uppercase;font:700 11px Cinzel,serif}.spot-level{cursor:pointer;width:100%;height:44px;color:var(--gold);background:#141e2af2;border:1px solid #e8b84a8c;border-radius:8px;padding:0 10px;font:800 14px Barlow,sans-serif}.spot-level option{color:#e6ebf0;background:#101820}.spot-rarities{flex-wrap:wrap;gap:6px;display:flex}.spot-rarities .btn{min-height:36px}.spot-rarities .btn.on{color:var(--gold);background:#e8b84a1f;border-color:#c9952e}.spot-party{color:var(--mute);background:#6fd08a14;border:1px solid #6fd08a59;border-radius:8px;flex-direction:column;gap:2px;padding:7px 10px;font-size:12.5px;display:flex}.spot-party b{color:var(--green);font-size:13px}.spot-contributors{background:#060a0f99;border:1px solid #82a0be24;border-radius:8px;font-size:12.5px}.spot-contributors summary{cursor:pointer;min-height:36px;color:var(--mute);align-items:center;padding:0 10px;font-weight:700;display:flex}.spot-contributors ol{counter-reset:place;gap:3px;margin:0;padding:0 10px 8px;list-style:none;display:grid}.spot-contributors li{counter-increment:place;justify-content:space-between;gap:10px;display:flex}.spot-contributors li>span:first-child:before{content:counter(place) ". ";color:var(--mute)}.spot-contributors li .num{color:var(--mute);white-space:nowrap}.spot-contributors li.mine>span:first-child{color:var(--gold);font-weight:700}.spot-note.exhausted{color:#ffb36a}.spot-rotation{color:var(--mute);background:#6fb8ff14;border:1px solid #6fb8ff4d;border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px 6px;padding:8px 10px;font-size:13px;display:flex}.spot-rotation b{color:#6fb8ff}.spot-faces{flex-wrap:wrap;gap:6px;display:flex}.spot-faces .hero-portrait{border:1.5px solid #5d86b8;width:30px;height:30px}.spot-actions{gap:8px;display:grid}.spot-button{letter-spacing:.08em;text-transform:uppercase;justify-content:center;align-items:center;gap:8px;min-height:46px;font:800 14px Barlow,sans-serif;text-decoration:none;display:flex}.spot-button small{letter-spacing:0;text-transform:none;opacity:.85;align-items:center;gap:4px;font-weight:700;display:inline-flex}.spot-note{color:var(--mute);text-align:center;font-size:12.5px}.spot-note.left{text-align:left}.map-picture{object-fit:contain;display:block}@media (width<=767px){.region-picker{top:8px}.region-zoom{bottom:80px}.region-name{min-width:0;padding:4px 10px}.region-name b{font-size:14px}}@media (width>=768px){.region-main{padding:12px calc(12px + var(--safe-right)) calc(12px + var(--safe-bottom)) calc(12px + var(--safe-left))}.region-left{flex-direction:column;flex-shrink:0;gap:12px;width:320px;min-height:0;display:flex}.region-left>.m-hero{flex-shrink:0;position:relative;top:auto;left:auto;right:auto}.region-left .overview{flex:1 1 0}.region-map{border:1px solid var(--line);border-radius:10px}.region-right{z-index:20;pointer-events:none;flex-direction:column;gap:12px;width:320px;display:flex;position:absolute;top:62px;bottom:70px;right:14px}.region-right>.panel{pointer-events:auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#0e151eed,#080c12ed);flex:0 auto;min-height:0}.region-zoom{bottom:16px;left:14px;right:auto}}@media (width>=768px) and (width<=1279px){.region-right{width:300px}}@media (width>=1280px){.region-left{width:348px}.region-right{width:330px;top:62px;bottom:14px;right:14px}}@media (pointer:coarse){.pin.free .face{width:calc(32px * var(--plot-scale,1) * var(--place-scale,1));height:calc(32px * var(--plot-scale,1) * var(--place-scale,1))}.pin.castle .face{width:calc(36px * var(--plot-scale,1) * var(--place-scale,1));height:calc(36px * var(--plot-scale,1) * var(--place-scale,1))}}.edit-pin{z-index:10;color:inherit;font:inherit;cursor:move;touch-action:none;background:0 0;border:0;flex-direction:column;align-items:flex-start;padding:0;display:flex;position:absolute;transform:translate(-7px,-7px)}.edit-dot{border:2px solid #fff;border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 2px #000000b3,0 2px 6px #000c}.edit-pin.kind-plot .edit-dot{background:#5d86b8}.edit-pin.kind-field .edit-dot{background:#6fd08a}.edit-pin.kind-zone .edit-dot{background:#ff6a74}.edit-pin.kind-spot .edit-dot{background:#b58cff}.edit-pin.moved .edit-dot{border-color:var(--gold);box-shadow:0 0 0 2px #000000b3, 0 0 10px var(--gold)}.edit-label{white-space:nowrap;pointer-events:none;color:#f3ecdc;background:#060a0fd1;border-radius:4px;margin:3px 0 0 -4px;padding:1px 5px;font-size:10.5px;font-weight:700;line-height:1.25;position:relative}.edit-pin.moved .edit-label{color:var(--gold)}.edit-pin.kind-zone{z-index:11}.edit-monster{width:calc(46px * var(--badge-scale,1));height:calc(46px * var(--badge-scale,1));object-fit:cover;object-position:50% 25%;pointer-events:auto;box-sizing:border-box;opacity:.9;background:#0d1117;border:3px solid #ff6a74;border-radius:50%;position:absolute;top:7px;left:7px;transform:translate(-50%,-50%)}.edit-pin.kind-zone:hover .edit-monster,.edit-pin.kind-zone.moved .edit-monster{border-color:var(--gold);box-shadow:0 0 10px var(--gold)}.edit-pin.kind-zone .edit-dot{position:relative}.edit-toolbar{z-index:30;-webkit-user-select:none;user-select:none;border-color:#e8b84a8c;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:max-content;max-width:calc(100% - 120px);padding:8px 12px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.edit-toolbar .btn{min-height:36px}@media (width<=767px){.edit-toolbar{max-width:calc(100% - 80px);bottom:16px}}.edit-modes{gap:4px;display:flex}.edit-notes{text-align:center;flex-direction:column;flex-basis:100%;gap:2px;font-size:12.5px;display:flex}.edit-notes .bad{color:#ffc0c6;font-weight:700}.edit-notes .good{color:#ffe2a0}.edit-pin.on .edit-dot{border-color:var(--gold);transform:scale(1.3)}.edit-thumb{width:calc(34px * var(--badge-scale,1));height:calc(34px * var(--badge-scale,1));object-fit:contain;pointer-events:auto;background:#0d1117bf;border:2px solid #b58cff;border-radius:50%;position:absolute;top:7px;left:7px;transform:translate(-50%,-50%)}.edit-size{width:calc(var(--outline-width) * var(--badge-scale,1));height:calc(var(--outline-height) * var(--badge-scale,1));pointer-events:none;background:#060a0f2e;border:1.5px dashed #f3ecdcbf;border-radius:50%;position:absolute;top:7px;left:7px;transform:translate(-50%,-50%)}.edit-size.plot{--outline-width:30px;--outline-height:30px}.edit-size.field{--outline-width:74px;--outline-height:56px}.edit-size.event{--outline-width:76px;--outline-height:76px}.edit-size.harbour{--outline-width:40px;--outline-height:40px}.edit-size.badge{--outline-width:46px;--outline-height:46px}.edit-monster.picture-look{width:calc(64px * var(--badge-scale,1));height:calc(64px * var(--badge-scale,1));object-fit:contain;background:0 0;border:0;border-radius:0}.edit-pin.on .edit-size,.edit-pin.moved .edit-size{border-color:var(--gold)}.edit-panel{z-index:30;top:62px;right:calc(10px + var(--safe-right));border-color:#e8b84a8c;flex-direction:column;gap:10px;width:270px;max-width:calc(100% - 20px);padding:12px 14px;display:flex;position:absolute}.edit-panel header{justify-content:space-between;align-items:center;gap:8px;font-size:15px;display:flex}.edit-panel dl{grid-template-columns:auto 1fr;gap:3px 10px;margin:0;font-size:13px;display:grid}.edit-panel dt{color:#9aa7b4}.edit-panel dd{margin:0}.edit-panel p{margin:0;font-size:12.5px}.edit-picture{align-items:center;gap:10px;display:flex}.edit-picture>span:last-child{overflow-wrap:anywhere;flex-direction:column;min-width:0;font-size:13px;display:flex}.edit-picture-frame{background:#060a0fb3;border:1px solid #e8b84a59;border-radius:10px;flex:none;place-items:center;width:64px;height:64px;display:grid;overflow:hidden}.edit-picture-frame img{object-fit:contain;width:100%;height:100%}.edit-panel-actions{gap:8px;display:flex}.edit-looks{align-items:center;gap:6px;font-size:13px;display:flex}.edit-looks>span{width:64px}.edit-looks .btn.on{border-color:var(--gold);color:var(--gold)}.edit-check{cursor:pointer;align-items:center;gap:8px;min-height:36px;font-size:13px;display:flex}.edit-check input{width:18px;height:18px;accent-color:var(--gold)}.edit-sizes{flex-basis:100%;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:4px 16px;display:grid}.edit-scale{align-items:center;gap:8px;font-size:13px;display:flex}.edit-scale>span:first-child{width:64px}.edit-scale input{min-width:80px;accent-color:var(--gold);flex:1}.edit-scale .num{text-align:right;width:40px}.modal .panel.picture-picker{flex-direction:column;gap:10px;width:min(720px,100vw - 24px);display:flex}.picker-tabs{flex-wrap:wrap;gap:6px;display:flex}.picker-search{min-height:40px}.picker-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px;max-height:min(52dvh,460px);padding:2px;display:grid;overflow-y:auto}.picker-choice{cursor:pointer;min-height:44px;font:inherit;color:inherit;background:#060a0f8c;border:1px solid #82a0be40;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:8px 6px;font-size:12px;display:flex}.picker-choice img{object-fit:contain;width:72px;height:72px}.picker-choice:hover,.picker-choice.on{border-color:var(--gold);box-shadow:0 0 10px #e8b84a66}.picker-hint{margin:0;font-size:12.5px}.picker-hint code{font-size:12px}.picker-actions{justify-content:flex-end;display:flex}.road-catcher{z-index:4;cursor:crosshair;position:absolute;inset:0}.road-lines{z-index:5;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.road-lines g{pointer-events:stroke;cursor:pointer}.road-hit{stroke:#0000;stroke-width:14px;vector-effect:non-scaling-stroke}.road-edge{stroke:#ffd36b;stroke-width:2.5px;vector-effect:non-scaling-stroke;opacity:.9}.road-edge.on{stroke:#ff6a74;stroke-width:4px;opacity:1}.road-link{stroke:#f3ecdc;stroke-width:1px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke;opacity:.7}.road-route{fill:none;stroke:#4fe0ff;stroke-width:5px;stroke-linejoin:round;vector-effect:non-scaling-stroke;opacity:.9}.road-node{z-index:9;cursor:move;touch-action:none;background:#ffd36b;border:2px solid #1c1204;border-radius:50%;width:12px;height:12px;padding:0;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 3px #000c}.road-node.joined{background:#fff}.road-node.on{background:#ff6a74;transform:translate(-50%,-50%)scale(1.4)}.road-node:before{content:"";border-radius:50%;position:absolute;inset:-8px}.road-place{z-index:10;cursor:pointer;border:2px solid #fff;border-radius:4px;width:18px;height:18px;padding:0;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #000000b3}.road-place.kind-plot{background:#5d86b8}.road-place.kind-field{background:#6fd08a}.road-place.kind-zone{background:#ff6a74}.road-place.kind-spot{background:#b58cff}.road-place.on{border-color:var(--gold);box-shadow:0 0 0 2px #000000b3, 0 0 12px var(--gold)}.road-place-label{white-space:nowrap;pointer-events:none;color:#f3ecdc;background:#060a0fcc;border-radius:4px;margin-top:2px;padding:0 4px;font-size:10px;font-weight:700;position:absolute;top:100%;left:50%;transform:translate(-50%)}@media (width<=767px){.edit-panel{width:auto;inset:auto 10px 150px}}.edit-toolbar .btn.on{border-color:var(--gold);color:var(--gold);box-shadow:0 0 8px #e8b84a59}.region-right .rewards,.region-sheet .rewards{gap:4px;margin-top:4px}.region-right .rewards>span,.region-sheet .rewards>span{border-radius:5px;gap:4px;padding:3px 7px;font-size:12px}.region-right .rewards img,.region-sheet .rewards img,.region-right .rewards svg,.region-sheet .rewards svg{width:18px;height:18px}@media (width>=768px){.region-right{top:14px}.region-right .spot-body{gap:8px;padding:12px}.region-right .spot-head{grid-template-columns:72px 1fr;gap:12px}.region-right .spot-picture{width:72px;height:72px}.region-right .spot-picture svg{width:36px;height:36px}.region-right .spot-name{font-size:18px}.region-right .spot-kicker{letter-spacing:.1em;font-size:10.5px}.region-right .spot-stats{gap:3px 10px;padding:7px 10px;font-size:13px}.region-right .spot-level{height:36px;font-size:13px}.region-right .spot-rotation{padding:5px 9px;font-size:12.5px}.region-right .spot-actions{gap:6px}.region-right .spot-button{min-height:40px;font-size:13px}.region-right .target-auto{min-height:36px;margin-top:0}}.region-page>.header-bar{z-index:26}:root{--top-height:56px;--nav-height:64px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}body{overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;min-height:100dvh}.header-bar{z-index:20;position:sticky;top:0}.top-bar{height:calc(var(--top-height) + var(--safe-top));padding:var(--safe-top) calc(12px + var(--safe-right)) 0 calc(12px + var(--safe-left));gap:12px}.logo{letter-spacing:.08em;flex:1;min-width:0;font-size:15px}.logo span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.top-bar .nav{display:none}.coins{gap:12px;font-size:14px}.coins svg{flex-shrink:0}.bottom-nav{z-index:30;height:calc(var(--nav-height) + var(--safe-bottom));padding:0 var(--safe-right) var(--safe-bottom) var(--safe-left);background:linear-gradient(#080c12f5,#05080cfc);border-top:1px solid #82a0be29;display:flex;position:fixed;bottom:0;left:0;right:0}.app{min-height:100dvh;padding:0 calc(12px + var(--safe-right)) calc(var(--nav-height) + var(--safe-bottom) + 16px) calc(12px + var(--safe-left));flex-direction:column;gap:12px;display:flex}.app>.header-bar{margin:0 calc(-12px - var(--safe-right)) 0 calc(-12px - var(--safe-left))}.app .left-column,.app .right-column{display:contents}.app .hero-card{order:1}.app .center{order:2}.app .bag{order:3}.app #attributes{order:4}.app #combat{order:5}.app .shop{order:6}.app #mastery{order:7}.screen-title h1{font-size:24px}.paperdoll{gap:8px;height:min(96vw,440px)}.hero-figure{aspect-ratio:auto;flex:1 1 0;align-self:stretch;min-width:0;max-width:calc(100% - 136px);height:auto}.column{gap:6px}.slot{width:56px;height:56px}.slot svg{width:38px;height:38px}.slot-label{display:none}.detail{width:auto}.grid{grid-template-columns:repeat(auto-fill,minmax(52px,1fr));max-height:none}.cell{aspect-ratio:1;width:100%;height:auto}.mats{flex-wrap:wrap;gap:10px}.bag .panel-head{flex-wrap:wrap;height:auto;min-height:40px;padding:8px 14px}@media (width>=768px){.top-bar .nav{display:flex}.nav button,.nav a{height:var(--top-height);padding:0 10px}.bottom-nav{display:none}.logo{flex:none}.logo span{display:none}.app{padding-bottom:calc(16px + var(--safe-bottom));grid-template-columns:minmax(0,1fr) 340px;grid-template-areas:"top top""center left""bag right";align-items:start;gap:12px;display:grid}.app>.header-bar{grid-area:top}.app .left-column{grid-area:left;display:flex}.app .right-column{grid-area:right;display:flex}.app .center{grid-area:center}.app .bag{grid-area:bag}.paperdoll{height:520px}.slot{width:64px;height:64px}.slot svg{width:44px;height:44px}.slot-label{display:block}.grid{grid-template-columns:repeat(auto-fill,58px)}.cell{width:58px;height:58px}}@media (width>=1280px){:root{--top-height:64px}.logo{flex-shrink:0;width:auto;margin-right:16px;font-size:16px}.logo span{display:inline;overflow:visible}.nav button,.nav a{padding:0 16px}.app{grid-template:"top top top""left center right"minmax(0,1fr)"bag bag right"214px/300px minmax(0,1fr) 350px;align-items:stretch;height:100dvh;min-height:640px;padding:0 16px 16px}.app>.header-bar{margin:0 -16px}.app .left-column{scrollbar-width:thin;overflow-y:auto}.app .left-column>.fill{flex-shrink:1;min-height:120px}.screen-title h1{font-size:34px}.paperdoll{height:auto}.hero-figure{flex:1 1 0;align-self:stretch;max-width:560px;height:auto}.column{gap:10px}.slot{width:74px;height:74px}.slot svg{width:50px;height:50px}.detail{width:290px}.bag{min-height:0}.bag .grid{flex:1;min-height:0}.bag .panel-head{flex-wrap:nowrap;height:40px;padding:0 14px}}@media (width>=1280px) and (width<=1399px){.detail{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.detail.empty-slot{display:none}}@media (width>=1600px){.app{grid-template-columns:340px minmax(0,1fr) 400px}.logo{font-size:19px}}@media (width>=1280px) and (height<=950px){:root{--top-height:54px}.app{grid-template-rows:auto minmax(0,1fr) 166px;gap:10px;padding:0 12px 12px}.app>.header-bar{margin:0 -12px}.screen-title{padding-top:2px}.screen-title h1{font-size:24px}.screen-title div{font-size:13.5px}.column{gap:7px}.slot{width:56px;height:56px}.slot svg{width:38px;height:38px}.slot-label{display:none}.center-actions{padding:4px 0 0}.hero-card{padding:10px 12px}.portrait .hero-portrait{width:64px;height:64px}.name{font-size:17px}.class-label{margin-bottom:5px}.panel-head{height:34px;font-size:14px}.panel-body{padding:8px 12px}.attr{height:31px}.stats{padding:6px 8px}.stats div{height:23px;font-size:13px}.grid{grid-template-columns:repeat(auto-fill,48px);gap:5px;padding:8px 12px}.cell{width:48px;height:48px}.cell svg{width:32px;height:32px}.shop .l{min-height:30px}.detail{padding:12px}}.map-page{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.map-page>.header-bar{flex-shrink:0;position:relative}.world{padding-bottom:0}.m-panel{z-index:3;position:absolute}.m-hero{left:calc(8px + var(--safe-left));right:calc(8px + var(--safe-right));top:8px}.m-hero .hero-state{padding:6px 12px 8px}@media (pointer:coarse){.btn,select{min-height:44px}.btn.small{min-height:44px;padding:0 12px}.more{min-width:44px;min-height:44px}.attr{min-height:48px}.report-list button{min-height:52px}}.bottom-nav a,.bottom-nav button{color:#aab6c2;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;min-height:44px;font:600 12px Barlow,sans-serif;text-decoration:none;display:flex}.bottom-nav .on{color:#fff}.bottom-nav .on svg{stroke:var(--gold)}.bottom-nav button:disabled{opacity:.45}.bottom-nav svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.sheet-backdrop{z-index:40;background:#00000073;position:fixed;inset:0}.sheet{z-index:41;overscroll-behavior:contain;max-height:78dvh;padding-bottom:var(--safe-bottom);background:linear-gradient(#101822fc,#090e14fc);border-radius:14px 14px 0 0;animation:.2s ease-out folha-entra;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.sheet.no-backdrop{bottom:calc(var(--nav-height) + var(--safe-bottom));padding-bottom:0}.sheet .grabber{background:#a0b4c859;border:none;border-radius:3px;width:44px;height:5px;margin:8px auto 2px;display:block}@keyframes folha-entra{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.hint-tap{color:inherit;font:inherit;background:0 0;border:none;align-items:center;padding:0;display:inline-flex;position:relative}.hint-tap .bubble{z-index:45;white-space:nowrap;border:1px solid var(--line);color:var(--text);pointer-events:none;background:#080c12f7;border-radius:6px;padding:6px 10px;font-size:13px;font-weight:600;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.sign-in{min-height:100dvh;padding:calc(16px + var(--safe-top)) 16px calc(16px + var(--safe-bottom));background:radial-gradient(700px 600px at 50% 40%,#34628c4d,#0000 70%),linear-gradient(#0a1119 0%,#070b10 60%,#05070a 100%);justify-content:center;align-items:center;display:flex}.sign-in .panel{width:400px;max-width:100%;padding:24px}.sign-in .sign-in-home{width:44px;height:44px;color:var(--mute);border-radius:4px;justify-content:center;align-items:center;margin:-12px 0 4px -12px;text-decoration:none;display:flex}.sign-in .sign-in-home:hover{color:var(--gold)}.sign-in .sign-in-home:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.sign-in h1{letter-spacing:.1em;color:#f0e6cf;text-align:center;margin:0 0 4px;font:700 26px Cinzel,serif}.sign-in .sub{text-align:center;color:var(--mute);margin-bottom:18px}.sign-in label{color:var(--mute);margin:12px 0 4px;font-size:13px;font-weight:600;display:block}.sign-in input,.sign-in select{width:100%;height:44px;color:var(--text);background:#0d141c;border:1px solid #82a0be4d;border-radius:6px;padding:0 12px;font:500 16px Barlow,sans-serif}.world-region{width:320px;max-width:calc(100% - 32px);bottom:16px;left:16px}.world-region .panel-body p{margin:0 0 10px}@media (width<=767px){.world-region{width:auto;max-width:none;bottom:12px;left:12px;right:12px}}.sign-in input:focus,.sign-in select:focus{outline-offset:1px;outline:2px solid #e8b84a99}.sign-in .btn{width:100%;height:46px;margin-top:18px}.sign-in .error{color:var(--red);margin-top:10px;font-size:14px}.sign-in .consent{color:var(--mute);text-align:center;margin:12px 0 0;font-size:13px;line-height:1.5}.sign-in .consent a{color:var(--gold);margin:-12px 0;padding:12px 0;font-weight:600;display:inline-block}.sign-in .swap{text-align:center;margin-top:14px}.sign-in .swap button{color:var(--gold);background:0 0;border:none;min-height:44px;font-weight:600}.sign-in .swap a{min-height:44px;color:var(--gold);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.sign-in .swap+.swap{margin-top:0}.email-panel{text-align:center}.email-panel form{text-align:left}.email-panel .email-text{color:var(--text);margin:10px 0 0;line-height:1.5}.email-panel form .email-text{text-align:center;margin:0 0 4px}.email-panel .email-address{color:#f0e6cf;overflow-wrap:anywhere;margin:6px 0 0;font-size:17px;font-weight:700}.email-panel .email-hint{color:var(--mute);margin:12px 0 0;font-size:13px;line-height:1.5}.email-panel .email-good{color:var(--green);margin-top:12px;font-size:14px}.email-panel .error{text-align:center}.email-panel a.btn{justify-content:center;align-items:center;text-decoration:none;display:flex}.loading{color:#9fb4c4;letter-spacing:.1em;justify-content:center;align-items:center;min-height:60dvh;font:700 18px Cinzel,serif;display:flex}.toasts{top:calc(var(--top-height) + var(--safe-top) + 12px);width:max-content;max-width:calc(100vw - 24px)}.app-castle{flex-direction:column;display:flex}.castle-title{padding:8px 0 4px}.building-cards{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.building-card{flex-direction:column;display:flex}.building-card-name{color:#f0e6cf;align-items:center;gap:8px;font:700 16px Cinzel,serif;display:flex}.building-card-name svg{fill:none;width:22px;height:22px;stroke:var(--gold)}.building-card-text{margin-bottom:8px;font-size:13.5px}.building-card .l{justify-content:space-between;align-items:center;min-height:26px;font-size:14px;display:flex}.building-card-effect{border-bottom:1px solid #82a0be14}.building-card-work,.building-card-costs{margin-top:10px}.building-card-costs .missing{color:var(--red)}.building-card-problem{margin-top:6px;font-size:13px}@media (width>=768px){.app-castle{display:flex}.building-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1280px){.app-castle{height:auto;min-height:100dvh;display:flex}.building-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}.hero-portrait{border:2px solid var(--gold);background:radial-gradient(circle at 50% 35%,#26323f,#0b1118 75%);border-radius:50%;display:block;position:relative;overflow:hidden}.hero-portrait img,.hero-body img{transform-origin:50%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block;position:absolute;inset:0}.hero-portrait img{object-fit:cover}.hero-body{position:relative;overflow:hidden}.hero-body img{object-fit:contain;object-position:50% 100%}.creation{min-height:100dvh;padding:calc(12px + var(--safe-top)) calc(16px + var(--safe-right)) calc(84px + var(--safe-bottom)) calc(16px + var(--safe-left));background:radial-gradient(700px 600px at 50% 30%,#34628c4d,#0000 70%),linear-gradient(#0a1119 0%,#070b10 60%,#05070a 100%);flex-direction:column;gap:12px;display:flex}.creation-top{text-align:center}.creation-top h1{letter-spacing:.1em;color:#f0e6cf;margin:0 0 8px;font:700 22px Cinzel,serif}.creation-steps{color:var(--mute);justify-content:center;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.creation-steps li{border:1px solid var(--line);border-radius:14px;align-items:center;gap:6px;padding:4px 10px;display:flex}.creation-steps li b{background:#ffffff14;border-radius:50%;place-items:center;width:18px;height:18px;font-size:11px;display:inline-grid}.creation-steps li.current{color:#ffe7a8;background:#e8b84a1f;border-color:#c9952e}.creation-steps li.current b,.creation-steps li.done b{background:var(--gold);color:#1c1204}.creation-body{flex-direction:column;flex:1;gap:12px;min-height:0;display:flex}.creation-stage{flex-direction:column;align-items:center;padding:10px 10px 12px;display:flex;position:relative;overflow:hidden}.creation-stage:before{content:"";pointer-events:none;background:radial-gradient(60% 55% at 50% 45%,#6fe3ff1f,#0000 70%);position:absolute;inset:0}.creation-hero{width:100%;height:38dvh;min-height:220px}.creation-legend{text-align:center}.creation-legend .name{color:#f0e6cf;font:700 20px Cinzel,serif}.creation-legend .class-label{color:var(--gold);font-size:14px}.creation-choice{flex-direction:column;min-height:0;display:flex}.creation-classes,.creation-genders{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;padding:10px;display:grid}.creation-option{text-align:left;border:1px solid var(--line);min-height:56px;color:var(--text);background:#ffffff08;border-radius:8px;align-items:center;gap:10px;padding:6px 10px;display:flex}.creation-option .hero-portrait{border-width:1.5px;flex-shrink:0;width:44px;height:44px}.creation-option span{flex-direction:column;min-width:0;display:flex}.creation-option b{color:#f0e6cf;font:700 15px Cinzel,serif}.creation-option small{color:var(--mute);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.creation-option.is-selected{background:#e8b84a24;border-color:#c9952e;box-shadow:inset 0 0 0 1px #e8b84a59}.creation-option:focus-visible{outline-offset:1px;outline:2px solid #e8b84a99}.creation-detail{padding:0 10px 10px}.creation-detail p{margin:4px 4px 8px;line-height:1.45}.creation-attributes{padding:0 4px}.creation-attributes .attr{height:32px}.creation-detail .stats{padding:8px 0 0}.creation-note{margin:0;padding:0 14px 14px;font-size:14px}.creation-fields{flex-direction:column;gap:6px;padding:12px 14px 14px;display:flex}.creation-fields label{color:var(--mute);margin-top:6px;font-size:13px;font-weight:600}.creation-fields input,.creation-fields select{width:100%;height:44px;color:var(--text);background:#0d141c;border:1px solid #82a0be4d;border-radius:6px;padding:0 12px;font:500 16px Barlow,sans-serif}.creation-fields input:focus,.creation-fields select:focus{outline-offset:1px;outline:2px solid #e8b84a99}.creation-summary{color:#f0e6cf;margin:10px 0 0}.creation .error{color:var(--red);padding:0 14px 14px;font-size:14px}.creation-actions{z-index:30;padding:10px calc(16px + var(--safe-right)) calc(10px + var(--safe-bottom)) calc(16px + var(--safe-left));border-top:1px solid var(--line);background:#070b10f0;grid-template-columns:1fr 2fr;gap:10px;display:grid;position:fixed;bottom:0;left:0;right:0}.creation-actions .btn{min-height:46px}.creation-stage .hero-body img{object-position:50% 50%}@media (width>=768px){.creation{padding-bottom:calc(24px + var(--safe-bottom))}.creation-body{width:100%;max-width:1100px;margin:0 auto}.creation-hero{height:42dvh}.creation-actions{background:0 0;border:0;grid-template-columns:160px 240px;justify-content:end;width:100%;max-width:1100px;margin:0 auto;padding:0;position:static}}@media (width>=1024px){.creation-body{flex-direction:row;align-items:stretch}.creation-stage{flex:0 0 42%;justify-content:center}.creation-hero{height:min(62dvh,640px)}.creation-choice{flex:1;overflow:auto}}@media (width>=1280px){.creation-top h1{font-size:28px}.creation-hero{height:min(66dvh,720px)}}.region-bonus{flex-wrap:wrap;gap:2px 14px;padding:0 18px 10px;font-size:13px;display:flex}.modal .panel.art-editor{width:620px;padding:0}.art-editor-body{flex-direction:column;gap:6px;padding:12px 16px;display:flex}.art-editor-body>label{color:var(--mute);font-size:13px;font-weight:600}.art-editor-body select{height:44px;color:var(--text);background:#0d141c;border:1px solid #82a0be4d;border-radius:6px;padding:0 10px;font:500 15px Barlow,sans-serif}.art-editor-body p{margin:0;font-size:13.5px}.art-editor-frames{grid-template-columns:1fr;gap:14px;margin-top:6px;display:grid}.art-editor-frame{flex-direction:column;align-items:center;gap:8px;display:flex}.art-editor-frame h3{color:#f0e6cf;margin:0;font:700 15px Cinzel,serif}.art-editor-hint{text-align:center;max-width:240px;font-size:12px}.art-editor-area{touch-action:none;overscroll-behavior:contain;cursor:grab}.art-editor-area:active{cursor:grabbing}.art-editor-portrait{width:180px;height:180px}.art-editor-body-hero{background:#ffffff05;border:1px dashed #e8b84a80;border-radius:6px;width:220px;height:300px}.art-editor-area:has(.art-editor-armory){width:100%;max-width:480px}.art-editor-armory{border:1px solid var(--line);width:100%;height:auto;box-shadow:inset 0 0 0 1px var(--line);background:linear-gradient(#050a118c,#050a1126 65%,#050a11b3),url(/assets/backgrounds/armory.webp) 50%/cover;border:0;border-radius:8px;justify-content:center;display:flex;position:relative;overflow:hidden}.art-editor-armory-hero{width:100%;height:100%}.art-editor-buttons{grid-template-columns:repeat(3,56px);gap:6px;display:grid}.art-editor-buttons .btn{min-height:44px;padding:0;font-size:18px}.art-editor-actions{padding:12px 16px calc(14px + var(--safe-bottom));border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.art-editor-actions .btn{min-height:44px}@media (width>=600px){.art-editor-frames{grid-template-columns:1fr 1fr;align-items:start}}.creation-label{color:var(--mute);margin-top:10px;font-size:13px;font-weight:600}.creation-toggle{grid-template-columns:1fr 1fr;gap:6px;max-width:320px;display:grid}.creation-toggle .btn{min-height:44px}.creation-toggle .btn.on{color:#ffe7a8;background:#e8b84a24;border-color:#c9952e}.creation-choice>.panel-head+.creation-classes{padding-top:10px}.creation-map{align-self:start;padding:0;position:relative;overflow:hidden}.creation-map-canvas{touch-action:none;width:100%;height:auto;display:block}.creation-regions{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;padding:10px;display:grid}.creation-region{text-align:left;border:1px solid var(--line);min-height:64px;color:var(--text);background:#ffffff08;border-radius:8px;flex-direction:column;align-items:stretch;gap:4px;padding:10px 12px;display:flex}.creation-region:disabled{opacity:.55;cursor:not-allowed}.creation-region.is-selected{background:#e8b84a24;border-color:#c9952e;box-shadow:inset 0 0 0 1px #e8b84a59}.creation-region:focus-visible{outline-offset:1px;outline:2px solid #e8b84a99}.creation-region-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.creation-region-head b{color:#f0e6cf;font:700 16px Cinzel,serif}.creation-brief{border:1px solid var(--line);color:var(--mute);white-space:nowrap;border-radius:10px;padding:1px 8px;font-size:11.5px}.creation-region ul{flex-direction:column;gap:2px;margin:4px 0 0;padding:0;font-size:13.5px;list-style:none;display:flex}.creation-choice .creation-note{padding:10px 14px 0}.creation>.creation-summary{text-align:center;width:100%;max-width:1100px;margin:0 auto}.creation>.error{text-align:center;width:100%;max-width:1100px;margin:0 auto;padding:0}@media (width>=1024px){.creation-map{flex:0 0 48%}}.item-art{object-fit:contain;pointer-events:none;filter:drop-shadow(0 2px 3px #0009);width:84%;height:84%}.item-card-head{align-items:center;gap:12px;margin-bottom:4px;display:flex}.item-card-art{border:2px solid;border-radius:8px;flex:none;justify-content:center;align-items:center;width:72px;height:72px;display:flex;position:relative;overflow:hidden}.item-card-art svg{width:44px;height:44px}.item-card-art .enchant-badge{color:#fff;text-shadow:0 1px 2px #000;font:700 12px Barlow,sans-serif;position:absolute;bottom:2px;right:3px}.rewards .loot-item .item-art{width:26px;height:26px}.material-picture{flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.material-picture .item-art,.material-picture svg{width:100%;height:100%}.storage-row .material-picture{width:20px;height:20px}.announcements{flex-direction:column;gap:4px;padding:4px 12px 0;display:flex}.announcement{background:#142840d9;border:1px solid #6fb8ff59;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font-size:14px;display:flex}.announcement.warning{background:#402e0cd9;border-color:#e8b84a8c}.announcement>div{flex-wrap:wrap;flex:1;gap:4px 10px;min-width:0;display:flex}.announcement b{color:#f0e6cf}.announcement button{color:var(--mute);background:0 0;border:none;min-width:44px;min-height:44px;margin:-8px -8px -8px 0;font-size:16px}.maintenance-panel p{margin:12px 0 18px;line-height:1.5}.maintenance-note{margin-bottom:8px}.nav .locked,.bottom-nav .locked{opacity:.5}.nav .nav-lock,.bottom-nav .nav-lock{width:12px;height:12px;margin-left:2px}.bottom-nav .nav-lock{margin:0;position:absolute;top:4px;right:calc(50% - 20px)}.bottom-nav a,.bottom-nav button{position:relative}.nav-more .bottom-nav-item,.nav-more a,.nav-more button{width:100%;min-height:48px;color:var(--text);background:0 0;border:none;align-items:center;gap:10px;padding:0 16px;font:600 15px Barlow,sans-serif;text-decoration:none;display:flex}.nav-more svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.nav-more .nav-lock{width:14px;height:14px}.nav-locked h2{align-items:center;gap:8px;display:flex}.nav-locked h2 svg,.nav-locked-panel>svg{fill:none;width:22px;height:22px;stroke:var(--gold);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.locked-main{justify-content:center;align-items:center;min-height:60dvh;padding:24px 16px 96px;display:flex}.nav-locked-panel{text-align:center;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:420px;padding:28px 24px;display:flex}.nav-locked-panel>svg{width:40px;height:40px}.nav-locked-panel h1{color:#f0e6cf;margin:0;font:700 24px Cinzel,serif}.nav-locked-panel p{color:var(--mute);margin:0 0 8px}.nav-locked-panel .btn{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.nav a,.nav button{white-space:nowrap}@media (width>=768px) and (width<=1279px){.nav button,.nav a{gap:6px;padding:0 8px;font-size:14px}.nav .later{display:none}.header-bar .hero-status{max-width:160px}}.app.app-locked{flex-direction:column;align-items:stretch;height:auto;min-height:100dvh;display:flex}.app.app-locked .locked-main{flex:1}#combat{container-type:inline-size}.stat-row>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.stat-row>b{white-space:nowrap;align-items:baseline;gap:4px;display:inline-flex}@container (width<=380px){#combat .stats{grid-template-columns:minmax(0,1fr)}#combat .stats div:nth-child(n){background:0 0}#combat .stats div:nth-child(odd){background:#ffffff06}}.stat-bonus{font:inherit;color:var(--green);cursor:pointer;background:0 0;border:none;padding:0 2px;position:relative}.stat-bonus:before{content:"";position:absolute;inset:-10px -8px}.stat-bonus:focus-visible{outline:1px solid var(--green);border-radius:3px}.stat-source-card{z-index:60;border:1px solid var(--line);text-align:left;background:#080c12fa;border-radius:8px;flex-direction:column;gap:6px;max-height:70dvh;padding:10px 12px;font-size:13px;font-weight:500;display:flex;position:fixed;overflow-y:auto;box-shadow:0 8px 24px #0000008c}.stat-source-card-title{color:var(--text);font:700 14px Barlow,sans-serif}.stat-source-card-total,.stat-group li{justify-content:space-between;gap:12px;display:flex}.stat-source-card-total{border-top:1px solid var(--line);color:var(--text);padding-top:6px}.stat-group{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.stat-group li{color:var(--mute);padding-left:10px}.stat-group li.stat-group-head{color:var(--text);padding-left:0;font-weight:600}.stat-group li .num{color:var(--green);white-space:nowrap}.stat-group li.stat-group-head .num{color:var(--text)}.stat-sheet{padding:6px 16px calc(16px + var(--safe-bottom,0px));flex-direction:column;gap:8px;font-size:15px;display:flex}.stat-sheet .stat-source-card-title{font-size:17px}.rotate-hint{z-index:35;left:calc(12px + var(--safe-left));bottom:calc(var(--nav-height) + var(--safe-bottom) + 14px);max-width:calc(100vw - 92px);color:var(--text);white-space:nowrap;background:#0a0f16f2;border:1px solid #e8b84a73;border-radius:22px;align-items:center;gap:4px;padding:0 0 0 14px;font-size:13.5px;font-weight:600;display:flex;position:fixed;box-shadow:0 8px 22px #0000008c}.rotate-hint svg{fill:none;width:20px;height:20px;stroke:var(--gold);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.rotate-hint button{width:44px;height:44px;color:var(--mute);background:0 0;border:0;padding:0;font-size:20px}:root{--resources-height:40px}.header-bar{background:linear-gradient(#060a0ffa,#080c12f2);box-shadow:0 8px 22px #00000059}.header-bar .top-bar{background:0 0;border-bottom:1px solid #82a0be1a}.logo{color:#f0e6cf;flex:none;text-decoration:none}.logo span{display:none}.logo .brand-logo{width:auto;height:28px;display:block}@media (width>=1280px){.logo .brand-logo{height:38px}}.nav a{color:#aab6c2;position:relative}.nav a:hover,.nav a.on{color:#fff}.nav a.on:after{content:"";background:var(--gold);height:2px;box-shadow:0 0 10px var(--gold);opacity:.55;position:absolute;bottom:0;left:16px;right:16px}.header-actions{flex:auto;justify-content:flex-end;align-items:center;gap:10px;min-width:0;margin-left:auto;display:flex}.hero-status{min-width:0;max-width:340px;height:40px;color:var(--text);background:#0e151ee6;border:1px solid #82a0be38;border-radius:20px;align-items:center;gap:9px;padding:0 14px 0 4px;font-size:13.5px;text-decoration:none;display:flex}.hero-status:hover{border-color:#e8b84a8c}.hero-status.state-marching,.hero-status.state-gathering,.hero-status.state-returning{border-color:#e8b84a66}.hero-status.state-wounded{border-color:#ff6a7480}.hero-status-portrait{flex-shrink:0;position:relative}.hero-status-portrait .hero-portrait{border-width:1.5px;width:32px;height:32px}.hero-status-portrait b{background:var(--gold);color:#1c1204;text-align:center;border-radius:8px;min-width:18px;height:16px;padding:0 4px;font-size:10.5px;line-height:16px;position:absolute;bottom:-4px;right:-7px}.hero-status-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.hero-status-line{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.blue{color:#9fd0ff}.hero-status-target{display:none}.hero-status-health{background:#0000008c;border-radius:2px;height:3px;display:block;overflow:hidden}.hero-status-health i{background:linear-gradient(90deg,#8a1c22,#d6343e);height:100%;display:block}.inbox{flex-shrink:0;position:relative}.inbox-button{color:#cfd8e0;background:#0e151ee6;border:1px solid #82a0be38;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:flex;position:relative}.inbox-button:hover{color:#fff;border-color:#e8b84a8c}.inbox-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.inbox-badge{color:#fff;text-align:center;background:#c0392b;border-radius:10px;min-width:19px;height:19px;padding:0 5px;font-size:11px;font-weight:800;line-height:19px;position:absolute;top:-5px;right:-5px;box-shadow:0 0 0 2px #070b10}.inbox-backdrop{z-index:24;position:fixed;inset:0}.inbox-popover{z-index:25;width:360px;max-height:70dvh;position:absolute;top:calc(100% + 10px);right:0;overflow-y:auto;box-shadow:0 18px 40px #000000a6}.resource-bar{height:var(--resources-height);padding:0 calc(10px + var(--safe-right)) 0 calc(10px + var(--safe-left));background:linear-gradient(#0c121af7,#090d13f0);border-bottom:1px solid #82a0be24;justify-content:space-between;align-items:center;gap:4px;display:flex}.resource{color:#e6ebf0;background:#00000059;border:1px solid #82a0be24;border-radius:15px;flex:0 auto;gap:3px;min-width:0;height:30px;padding:0 7px 0 3px;font-size:12.5px;font-weight:700;position:relative}.resource svg{flex-shrink:0;width:18px;height:18px}.resource .num{white-space:nowrap}.resource-fill{background:#ffffff14;border-radius:1px;height:2px;position:absolute;bottom:3px;left:22px;right:8px;overflow:hidden}.resource-fill i{background:#6fd08a;height:100%;display:block}.resource-stamina .resource-fill i{background:#6fe0d0}.resource-full{border-color:#ff965a73}.resource-full .num{color:#ffb36a}.resource-full .resource-fill i{background:#ff7a50}.resource-divider{background:#82a0be33;flex-shrink:0;width:1px;height:20px}.resource-bar .hint-tap .bubble{top:calc(100% + 6px);bottom:auto}.resource-picture{flex-shrink:0;width:20px;height:20px;display:inline-flex}.resource-picture .item-art{object-fit:contain;width:100%;height:100%}.hint-tap .bubble-detail{white-space:normal;min-width:150px}.resource-bar .hint-tap .bubble-detail{left:0;transform:none}.resource-rows{flex-direction:column;gap:3px;display:flex}.resource-rows>b{margin-bottom:2px}.resource-rows>span{color:var(--mute);justify-content:space-between;gap:14px;font-weight:600;display:flex}.resource-rows>span .num{color:var(--text)}.resource-rows>small{white-space:normal;text-align:left;max-width:230px;color:var(--mute);font-weight:500}.resource-rows>.resource-exhausted-text{color:#ffb36a}.resource-rested{color:#6fe0d0;font-size:.86em}.resource-exhausted{border-color:#ff965a73}.resource-bar .resource-stamina .bubble-detail{min-width:220px;left:auto;right:0}.resource-exhausted .num.full,.resource-exhausted .num.short{color:#ffb36a}.resource .full,.resource-bar>.resource:last-child,.resource-divider{display:none}.toasts{top:calc(var(--top-height) + var(--resources-height) + var(--safe-top) + 12px)}@media (width>=768px){.header-actions{flex:0 auto}.hero-status-target{display:inline}.hero-status{max-width:260px}.nav button:disabled{display:none}.resource-bar{justify-content:center;gap:8px;padding:0 16px}.resource{gap:6px;padding:0 12px 0 5px;font-size:14px}.resource svg,.resource-picture{width:22px;height:22px}.resource-fill{left:30px;right:12px}.resource .full{display:inline}.resource .short{display:none}.resource-bar>.resource:last-child,.resource-divider{display:flex}}@media (width>=1280px){.logo span{display:inline}.nav button:disabled{display:flex}.hero-status{max-width:340px}.resource-bar{gap:10px}.resource{padding:0 14px 0 6px;font-size:14.5px}}@media (width>=1280px) and (width<=1499px){.logo span{display:none}}.header-actions .admin-link{align-items:center;min-height:32px;text-decoration:none;display:inline-flex}@media (width>=768px) and (width<=1099px){.top-bar .nav .nav-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.top-bar .nav>a,.top-bar .nav>button{justify-content:center;min-width:44px}}@media (width<=1499px){.top-bar .nav>.later{display:none}}.nav-more-menu{display:flex;position:relative}.nav-more-popover{z-index:25;flex-direction:column;min-width:230px;padding:6px;display:flex;position:absolute;top:calc(100% - 6px);left:0;box-shadow:0 18px 40px #000000a6}.nav-more-popover a,.nav-more-popover button{border-radius:6px;height:auto}.nav-more-popover .nav-label{clip:auto;width:auto;height:auto;position:static;overflow:visible}.nav-more-popover .nav-badge{margin-left:auto;position:static}.castle-page{min-height:100dvh;padding:0 calc(12px + var(--safe-right)) calc(var(--nav-height) + var(--safe-bottom) + 16px) calc(12px + var(--safe-left));background:radial-gradient(900px 500px at 50% 30%,#34628c38,#0000 70%),linear-gradient(#0a1119 0%,#070b10 60%,#05070a 100%);flex-direction:column;display:flex}.castle-page>.header-bar{margin:0 calc(-12px - var(--safe-right)) 0 calc(-12px - var(--safe-left))}.castle-main{flex-direction:column;gap:12px;padding-top:12px;display:flex}.castle-stage{background:#0b1219;border:1px solid #82a0be38;border-radius:10px;height:clamp(280px,84vw,460px);position:relative;overflow:hidden;box-shadow:0 12px 32px #0000008c,inset 0 0 0 1px #0009}.castle-plaque{z-index:2;pointer-events:none;text-align:center;white-space:nowrap;clip-path:polygon(0 0,100% 0,95% 100%,5% 100%);background:linear-gradient(#0c1118eb,#080c12c7);border:1px solid #e8b84a66;border-radius:4px;padding:6px 26px 7px;display:none;position:absolute;top:10px;left:50%;transform:translate(-50%)}.castle-plaque h1{letter-spacing:.16em;color:#f0e6cf;text-transform:uppercase;text-shadow:0 2px 8px #000;margin:0;font:800 18px Cinzel,serif}.castle-plaque span{color:#aab6c2;font-size:12px;display:block}.castle-zoom{z-index:2;flex-direction:column;gap:6px;display:flex;position:absolute;bottom:12px;right:12px}.castle-zoom .btn{width:40px;height:40px;padding:0;font-size:20px}.castle-stage .load{z-index:3}.castle-hold{flex-direction:column;min-height:0;display:flex}.hold-work{border-bottom:1px solid #82a0be1a;flex-direction:column;gap:10px;padding:10px 14px;font-size:13.5px;display:flex}.hold-work .l{justify-content:space-between;gap:8px;margin-bottom:5px;display:flex}.hold-list{flex-direction:column;gap:2px;margin:0;padding:6px;list-style:none;display:flex}.hold-list button{width:100%;min-height:52px;color:var(--text);text-align:left;font:inherit;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:6px 10px;display:flex}.hold-list button:hover{background:#ffffff0a}.hold-list button.on{background:#e8b84a14;border-color:#e8b84a61}.hold-icon{color:#cbd5de;background:#0000004d;border:1.5px solid #82a0be59;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.hold-icon svg,.building-emblem svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.hold-icon svg{width:20px;height:20px}.state-ready{box-shadow:0 0 14px #e8b84a59;border-color:var(--gold)!important;color:var(--gold)!important}.state-building{color:#f0c870!important;border-color:#c9952e!important}.state-max{color:var(--green)!important;border-color:#6fd08ab3!important}.hold-name{flex:1;min-width:0;font-size:14.5px;font-weight:700}.hold-name small{color:var(--mute);font-size:12.5px;font-weight:500;display:block}.hold-chip{border-radius:11px;flex-shrink:0;padding:3px 9px;font-size:12px;font-weight:800}.hold-chip.ready{color:#1c1204;background:linear-gradient(#e8b84a,#a67a1e)}.hold-chip.construction{color:#ffe2a0;border:1px solid #e8b84a73}.hold-chip.maxed{color:var(--green);border:1px solid #6fd08a73}.hold-chip.chip-locked{color:#9aa6b2;border:1px solid #9aa6b259;font-weight:700}.state-locked,.state-soon{opacity:.6}.castle-detail{display:none}.building-detail{flex-direction:column;gap:12px;padding:16px;display:flex}.building-head{align-items:center;gap:14px;display:flex}.building-emblem{width:58px;height:58px;color:var(--gold);background:radial-gradient(circle at 50% 35%,#e8b84a38,#0a0e14f2 70%);border:2px solid #e8b84a8c;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.building-emblem svg{width:30px;height:30px}.hold-icon.has-art,.building-emblem.has-art{border-radius:10px;padding:3px;overflow:hidden}.hold-icon.has-art{width:46px;height:46px}.hold-icon img,.building-emblem img{object-fit:contain;width:100%;height:100%}.hold-icon img.unbuilt,.building-emblem img.unbuilt{opacity:.55;filter:grayscale(.6)}.building-title{flex:1;min-width:0}.building-title h2{color:#f0e6cf;margin:0 0 2px;font:700 21px Cinzel,serif}.level-pips{flex-wrap:wrap;gap:3px;margin-top:7px;display:flex}.level-pips i{background:#82a0be33;border-radius:2px;width:15px;height:5px}.level-pips i.on{background:var(--gold);box-shadow:0 0 6px #e8b84a73}.level-pips i.next{background:repeating-linear-gradient(135deg,#e8b84a 0 3px,#5a4418 3px 6px)}.building-text{color:#b9c4ce;margin:0;font-size:14px;font-style:italic;line-height:1.45}.building-section{border-top:1px solid #82a0be1f;padding-top:10px;font-size:14px}.building-section .l{justify-content:space-between;align-items:center;gap:8px;min-height:26px;display:flex}.building-work .bar{margin:4px 0 2px}.building-upgrade-title{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:15px;font-weight:700;display:flex}.building-upgrade-title svg{fill:none;stroke:currentColor;stroke-width:2px;vertical-align:-2px;width:15px;height:15px;margin-right:4px}.building-costs{flex-wrap:wrap;gap:6px;display:flex}.building-button{width:100%;height:46px;margin-top:10px;font-size:15px}.building-note{margin-top:6px;font-size:13px}.building-link{justify-content:center;align-items:center;height:42px;text-decoration:none;display:flex}.storage-row{grid-template-columns:22px 70px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:28px;font-size:13.5px;display:grid}.storage-row svg{width:20px;height:20px}.castle-sheet{padding-bottom:calc(var(--safe-bottom) + 8px)}.back-link{color:var(--mute);margin-bottom:4px;font-size:14px;font-weight:600;text-decoration:none;display:inline-block}.back-link:hover{color:var(--text)}@media (width>=768px){.castle-page{padding-bottom:calc(16px + var(--safe-bottom))}.castle-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"stage stage""hold detail";align-items:start;gap:12px;display:grid}.castle-stage{grid-area:stage;height:56vh;min-height:380px}.castle-hold{grid-area:hold}.castle-detail{grid-area:detail;display:block}.castle-plaque{display:block}.castle-plaque h1{font-size:22px}}@media (width>=1280px){.castle-page{height:100dvh;min-height:640px;padding:0 16px 16px}.castle-page>.header-bar{margin:0 -16px}.castle-main{flex:1;grid-template:"hold stage detail"minmax(0,1fr)/300px minmax(0,1fr) 380px;align-items:stretch;min-height:0;padding-top:14px}.castle-stage{height:auto;min-height:0}.castle-hold,.castle-detail{scrollbar-width:thin;overflow-y:auto}}@media (width>=1600px){.castle-main{grid-template-columns:330px minmax(0,1fr) 420px}}@media (width>=1280px) and (height<=950px){.castle-page{padding:0 12px 12px}.castle-page>.header-bar{margin:0 -12px}.castle-main{gap:10px;padding-top:10px}.hold-list button{min-height:46px}.building-detail{gap:10px;padding:14px}.building-emblem{width:50px;height:50px}}.castle-viewport{touch-action:none;cursor:grab;position:absolute;inset:0;overflow:hidden}.castle-viewport.panning{cursor:grabbing}.castle-picture{-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0}.castle-picture.hot{cursor:pointer}.castle-layer{pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;position:absolute;inset:0}.castle-building{pointer-events:none;-webkit-user-drag:none;position:absolute}.castle-mark{z-index:2;color:var(--text);font:inherit;background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;padding:0;display:flex;position:absolute;transform:translate(-50%,-50%)}.castle-mark span{text-align:center;white-space:nowrap;background:#080c12e0;border:1.5px solid #82a0be73;border-radius:11px;min-width:34px;padding:2px 9px;font-size:12.5px;font-weight:800;transition:transform .12s,border-color .12s,background .12s,color .12s,box-shadow .12s;box-shadow:0 3px 8px #0009}.castle-mark span small{color:var(--mute);font-size:10.5px}.castle-mark.hot span,.castle-mark:hover span{border-color:var(--gold);transform:scale(1.15)}.castle-mark.on span{background:var(--gold);border-color:var(--gold);color:#1c1204;transform:scale(1.15);box-shadow:0 0 14px #e8b84ab3,0 3px 8px #0009}.castle-mark.on span small{color:#1c1204bf}.castle-mark.built.on:after{content:"";border-left:7px solid #0000;border-right:7px solid #0000;border-top:8px solid var(--gold);filter:drop-shadow(0 2px 3px #0009);width:0;height:0;margin-top:3px}.castle-mark.state-ready span{border-color:var(--gold)}.castle-mark.state-building span{color:#ffe2a0;border-color:#c9952e}.castle-mark.empty{min-width:44px;min-height:44px}.castle-mark.empty span{border-width:1px;min-width:0;padding:1px 6px;font-size:12px}.castle-mark.empty svg{box-sizing:border-box;fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;color:#cbd5de;background:#080c12bf;border:1.5px dashed #e8b84a8c;border-radius:50%;width:26px;height:26px;padding:5px}.castle-mark.empty.state-ready svg{color:var(--gold);border-style:solid;box-shadow:0 0 16px #e8b84a73}.castle-mark.empty.state-locked,.castle-mark.empty.state-soon{opacity:.75}.castle-mark.empty b{color:#f0e6cf;text-shadow:0 1px 3px #000,0 0 6px #000;white-space:nowrap;font-size:11px;font-weight:700}.castle-mark.empty svg{transition:transform .12s,border-color .12s,box-shadow .12s}.castle-mark.empty.hot svg,.castle-mark.empty:hover svg{border-color:var(--gold);border-style:solid;transform:scale(1.15)}.castle-mark.empty.on svg{border-color:var(--gold);color:#1c1204;background:var(--gold);border-style:solid;transform:scale(1.15);box-shadow:0 0 14px #e8b84ab3}.castle-building.preview{opacity:.6;filter:saturate(.7)}.castle-building.preview.greyed{opacity:.4;filter:grayscale()}.castle-picture.gliding,.region-stage.gliding{transition:width .45s,height .45s,transform .45s}@media (prefers-reduced-motion:reduce){.castle-picture.gliding,.region-stage.gliding{transition:none}}
