.pact-shop{color:#f6f5e7;background:radial-gradient(at 100% 0,#256f71 0,#0000 55%),#123b42;border-radius:24px;padding:clamp(18px,3vw,36px);box-shadow:0 14px 40px #123b4220}.shop-back{align-items:center;gap:8px;margin-bottom:24px;display:flex;color:#e2f4e9!important;background:0 0!important;border:0!important;padding:0!important}.shop-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.shop-heading p{letter-spacing:.18em;color:#f6cf76;margin:0 0 8px;font-size:12px}.shop-heading h1{margin:0;font-size:clamp(24px,3vw,36px);line-height:1.2}.shop-wallet{white-space:nowrap;color:#ffe096;background:#102f36;border:1px solid #bb985d;border-radius:14px;align-items:center;gap:10px;padding:14px;display:flex}.shop-counter{justify-content:center;align-items:center;gap:32px;margin:16px auto 20px;display:flex}.shop-merchant{object-fit:contain;filter:drop-shadow(0 10px 10px #0004);width:230px;height:200px}.shop-welcome{max-width:340px}.shop-welcome>svg{color:#f6cf76}.shop-welcome h2{margin:8px 0;font-size:24px}.shop-welcome p{color:#cfebe1;font-size:16px}.shop-stock{gap:16px;display:grid}.shop-item{color:#243641;background:#fff9ee;border:2px solid #d4b17b;border-radius:18px;align-items:center;gap:22px;padding:24px;display:flex;box-shadow:0 5px #072c32}.shop-item-symbol{background:radial-gradient(#ffb9af,#f8e7d6);border-radius:16px;place-items:center;width:92px;height:108px;display:grid}.pact-scroll .shop-item-symbol{background:radial-gradient(#ffe093,#f8e7d6)}.shop-item-symbol svg{color:#bb4660;width:60px;height:60px}.pact-scroll .shop-item-symbol svg{color:#9a651d}.shop-item-copy{flex:1}.shop-item-copy h2{margin:0;font-size:22px}.shop-item-copy p{margin:6px 0 10px;font-size:16px}.shop-item-copy strong{color:#815608;align-items:center;gap:6px;display:flex}.shop-owned{color:#48645c;margin-top:8px;font-size:14px;display:block}.shop-buy{grid-template-columns:auto 65px;align-items:center;gap:8px;min-width:180px;display:grid}.shop-buy select{color:#243641;background:#fff;border:1px solid #9aa99e;border-radius:8px;padding:7px}.shop-buy button{border-radius:10px;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;min-height:44px;display:flex;color:#fff!important;background:#166452!important;border:0!important;padding:12px!important}.shop-buy button:disabled{opacity:.5;cursor:not-allowed}.shop-buy small{text-align:center;grid-column:1/-1}.shop-bag-note{color:#cfebe1;align-items:center;gap:9px;margin:24px 0 0;font-size:14px;display:flex}@media (max-width:650px){.shop-heading{flex-direction:column;align-items:flex-start}.shop-counter{gap:12px}.shop-merchant{width:140px;height:150px}.shop-welcome h2{font-size:20px}.shop-item{flex-wrap:wrap;gap:12px;padding:16px}.shop-item-symbol{width:64px;height:80px}.shop-item-symbol svg{width:44px;height:44px}.shop-buy{width:100%}.shop-buy label{text-align:right}.shop-item-copy{min-width:160px}.shop-bag-note{align-items:flex-start}}.inventory-backpack{object-fit:contain;filter:drop-shadow(0 8px 6px #0004);width:160px;height:180px}.inventory-count{white-space:nowrap;color:#166452;font-size:30px}.inventory-screen .shop-welcome button{align-items:center;gap:8px;display:flex}@media (max-width:650px){.inventory-backpack{width:110px;height:140px}}.super-health-potion .shop-item-symbol{background:radial-gradient(#b4e5ff,#eef4f6)}.super-health-potion .shop-item-symbol svg{color:#2867a0}.hyper-health-potion .shop-item-symbol{background:radial-gradient(#ddbeff,#f4ecfb)}.hyper-health-potion .shop-item-symbol svg{color:#7954ae}.max-health-potion .shop-item-symbol{background:radial-gradient(#ffe593,#fff6dc)}.max-health-potion .shop-item-symbol svg{color:#956115}.training-treat{background:#fff8df;border-color:#dab566}.training-treat .shop-item-symbol{color:#885b27;background:#f8e5b4}.treat-savings,.xp-treat-notice{color:#654820;background:#fff0be;border-radius:12px;padding:14px;line-height:1.5}.treat-field{gap:7px;margin:12px 0;font-weight:700;display:grid}.treat-field select,.treat-field input{color:#263d35;background:#fff;border:1px solid #8a9982;border-radius:10px;width:100%;min-height:44px;padding:10px}.treat-target{background:#edf3df;border-radius:16px;align-items:center;gap:20px;padding:16px;display:flex}.treat-target img{object-fit:contain;width:100px;height:110px}.treat-target p{margin:8px 0}.treat-target b{color:#327247}.treat-quick{flex-wrap:wrap;gap:10px;display:flex}.treat-quick button{border:1px solid #9aab85;border-radius:10px;padding:10px}.treat-dialog{max-height:90dvh;overflow:auto}.accessible-practice{color:#213e35;overflow-wrap:anywhere;background:#f3f8f2;border:1px solid #b4c8bc;border-radius:20px;max-width:56rem;margin:0 auto;padding:clamp(12px,3vw,32px);line-height:1.6}.accessible-practice header{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:16px;display:flex}.accessible-practice h1{font-size:1.75rem;font-weight:800}.accessible-practice h2{margin:0 0 1rem;font-size:1.35rem;font-weight:750;line-height:1.5}.accessible-practice p{margin:8px 0 16px}.accessible-practice button{color:#213e35;min-height:44px;font:inherit;cursor:pointer;white-space:normal;background:#fff;border:2px solid #547a62;border-radius:10px;justify-content:center;align-items:center;gap:8px;max-width:100%;padding:10px 16px;font-weight:700;display:inline-flex}.accessible-practice button:disabled{opacity:.6;cursor:default}.accessible-practice .primary{color:#fff;background:#275c42;border-color:#275c42}.practice-card{background:#fff;border:1px solid #b4c8bc;border-radius:16px;min-width:0;margin:20px 0;padding:clamp(12px,3vw,28px)}.practice-card>button{margin:4px 8px 4px 0}.practice-card label{gap:8px;margin:16px 0;font-weight:700;display:grid}.practice-card :is(input,select){width:100%;min-width:0;font:inherit;color:#213e35;background:#fff;border:2px solid #547a62;border-radius:8px;padding:12px}.practice-progress{flex-wrap:wrap;gap:12px 24px;margin:20px 0;font-weight:700;display:flex}.practice-answers{gap:12px;display:grid}.practice-answers button{text-align:left;justify-content:start}.practice-feedback{background:#edf5ee;border-left:4px solid #547a62;padding:12px}.practice-error{border:2px solid #a13232;border-radius:10px;margin:16px 0;padding:14px}.practice-error button{margin:4px}@media (forced-colors:active){.accessible-practice,.practice-card,.practice-feedback{color:canvastext;background:canvas;border-color:canvastext}.accessible-practice :is(button,input,select){color:buttontext;background:buttonface;border-color:buttontext}.accessible-practice button:disabled{color:graytext;opacity:1}}.defense-shell{--ink:#ecf7f5;--muted:#abc5c9;--mint:#a7f0c4;color:var(--ink);background:#172b3a;border:1px solid #426071;border-radius:24px;max-width:1250px;margin:auto;padding:24px;font-family:inherit;overflow:hidden;box-shadow:0 20px 65px #16304c20}.defense-shell *{box-sizing:border-box}.defense-shell button{font:inherit;cursor:pointer;transition:background .16s,transform .16s,border-color .16s}.defense-shell button:disabled{opacity:.45;cursor:not-allowed}:is(.defense-shell button:focus-visible,.defense-shell input:focus-visible,.defense-shell select:focus-visible){outline-offset:3px;outline:3px solid #f5df9e}.defense-shell h1,.defense-shell h2,.defense-shell p{color:inherit;margin:0}.defense-shell h2{font-size:22px}.defense-shell p{line-height:1.55}.defense-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.defense-top h1{margin-top:5px;font-size:23px}.defense-kicker,.defense-eyebrow{letter-spacing:.16em;color:#b6dfcb;align-items:center;gap:8px;font-size:11px;font-weight:800;display:flex}.defense-quiet,.defense-controls button,.defense-footer button,.defense-pause>button:not(.defense-primary){color:#e9f5f1;background:#284353;border:1px solid #496473;border-radius:12px;align-items:center;gap:8px;padding:9px 13px;display:inline-flex}.defense-hero{isolation:isolate;background:radial-gradient(at 75% 35%,#437767 0,#0000 55%),#213e48;border-radius:20px;justify-content:space-between;align-items:center;min-height:300px;padding:30px 28px 40px;display:flex;position:relative}.defense-hero h1{color:#f6f8ed;letter-spacing:-.04em;margin:18px 0;font-size:clamp(32px,4vw,56px);line-height:1.05}.defense-hero h1 em{color:#c8efad;font-style:normal}.defense-hero p{color:#c5dad9;max-width:430px;font-size:15px}.defense-hero-art{flex-shrink:0;width:40%;height:220px;position:relative}.defense-hero-art>svg{color:#84c3a749;stroke-width:1px;width:100%;height:100%;position:absolute;inset:0}.defense-hero-art img{object-fit:contain;width:65%;height:90%;image-rendering:pixelated;filter:drop-shadow(0 15px 10px #102d38);animation:4s ease-in-out infinite defense-float;position:absolute;top:20px;left:0}.defense-hero-art img+img{width:58%;animation-delay:-2s;top:35px;left:45%}.defense-hero-art>span{color:#ffe7a4;font-size:48px;position:absolute;top:0;right:10%}.defense-how{grid-template-columns:repeat(3,1fr);gap:20px;margin:25px 0 32px;display:grid}.defense-how>div{color:var(--muted);align-items:flex-start;gap:12px;font-size:12px;display:flex}.defense-how b{color:#7fbaa4;font-size:24px;font-weight:600}.defense-how strong{color:var(--ink);margin-bottom:5px;font-size:14px;display:block}.defense-setup-heading{justify-content:space-between;align-items:center;gap:24px;margin:0 0 18px;display:flex}.defense-setup-heading>div:first-child{flex:1;max-width:340px}.defense-setup label{color:var(--muted);margin-bottom:8px;font-size:12px;font-weight:700;display:block}.defense-shell select,.defense-shell input{color:#fff;font:inherit;background:#263e4d;border:1px solid #647f87;border-radius:10px;min-width:0;max-width:100%;padding:12px}.defense-shell select{width:100%}.defense-setup-heading h2 span{background:#49725d;border-radius:8px;margin-left:8px;padding:4px 7px;font-size:14px}.defense-setup-heading p{color:var(--muted);margin-top:6px;font-size:12px}.defense-roster{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;max-height:540px;margin:12px -4px;padding:4px;display:grid;overflow:auto}.defense-roster>button{color:#e4f0f0;background:linear-gradient(160deg,#2c4856,#223a49);border:2px solid #48616f;border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;display:flex}.defense-roster>button:hover{border-color:#a8dbbd;transform:translateY(-2px)}.defense-roster>button.chosen{background:linear-gradient(150deg,#375d55,#294d46);border-color:#b9eea4}.defense-pet-image{width:100%;height:85px;margin-bottom:6px;position:relative}.defense-pet-image img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;filter:drop-shadow(0 6px 3px #10263855)}.defense-pet-image>span{color:#294a3b;background:#c8f3af;border-radius:50%;place-items:center;width:23px;height:23px;display:grid;position:absolute;top:0;right:4px}.defense-roster small{color:#b6d0cd;font-size:11px}.defense-roster b{color:#ddedb4;margin-top:5px;font-size:11px}.defense-tip{color:#b1caca!important;margin-top:12px!important;font-size:12px!important}.defense-start{border-top:1px solid #45606b;justify-content:space-between;align-items:center;gap:18px;margin-top:24px;padding-top:22px;display:flex}.defense-start p{color:#b4cdca;font-size:12px}.defense-primary{white-space:normal;border-radius:13px;justify-content:center;align-items:center;gap:9px;padding:13px 20px;display:inline-flex;box-shadow:0 4px #719c65;color:#203f37!important;background:linear-gradient(#d2f5ac,#afe394)!important;border:1px solid #cff3ac!important;font-weight:800!important}.defense-primary:hover:not(:disabled){transform:translateY(-1px);background:#e5ffc8!important}.defense-notice,.defense-error{background:#633f44;border:1px solid #c18983;border-radius:10px;padding:12px;color:#fff0e5!important;margin:16px 0!important}.defense-notice{background:#355268;border-color:#718da2}.defense-leaderboard{border-top:1px solid #45606b;margin-top:30px;padding-top:24px}.defense-leaderboard h2{align-items:center;gap:10px;font-size:19px;display:flex}.defense-leaderboard>p{color:var(--muted);margin-top:10px;font-size:13px}.defense-leaderboard ol{gap:6px;margin:15px 0 0;padding:0;list-style:none;display:grid}.defense-leaderboard li{background:#243d4b;border-radius:10px;grid-template-columns:28px 1fr auto auto;align-items:center;gap:15px;padding:12px;font-size:13px;display:grid}.defense-leaderboard li.mine{background:#3b6357;border:1px solid #95c6a8}.defense-results{background:linear-gradient(130deg,#4a654e,#2d5756);border:1px solid #aac58f;border-radius:16px;align-items:center;gap:20px;margin-top:20px;padding:22px;display:flex}.defense-results>svg{color:#ffe1a1;flex-shrink:0}.defense-results p{color:#d4e7d3;margin-top:7px;font-size:13px}.defense-controls{gap:6px;display:flex}.defense-hud{background:#263f4c;border:1px solid #516b76;border-radius:15px;grid-template-columns:1.3fr .9fr 1fr .9fr .85fr;margin-bottom:13px;display:grid;overflow:hidden}.defense-hud>div{border-right:1px solid #4a626c;align-items:center;gap:10px;padding:14px 17px;display:flex;position:relative}.defense-hud svg{color:#c4e8b3;width:22px}.defense-hud span{color:#b9d0d2;font-size:11px}.defense-hud strong{color:#eef8ea;font-size:24px;line-height:1.25;display:block}.defense-hud small{color:#b2cdca;font-size:12px;font-weight:400}.defense-hud meter{-webkit-appearance:none;appearance:none;width:100%;height:5px;position:absolute;bottom:0;left:0}.defense-hud meter::-webkit-meter-bar{background:#22353d;border:0;border-radius:0}.defense-hud meter::-webkit-meter-optimum-value{background:#b7e8aa}.defense-hud .defense-wave-number{text-align:center;background:#375b55;border:0;flex-direction:column;gap:0}.defense-wave-number>span{letter-spacing:.2em;font-weight:800}.defense-stage-wrap{isolation:isolate;border:2px solid #587a78;border-radius:18px;position:relative;overflow:hidden}.defense-arena{aspect-ratio:1000/560;background:#31584e;position:relative;overflow:hidden;container-type:inline-size}.defense-biome{z-index:3;color:#f0f9e8;letter-spacing:.04em;pointer-events:none;background:#142d31d9;border:1px solid #edf9ef45;border-radius:6px;padding:4px 9px;font-size:clamp(9px,1.3vw,12px);font-weight:700;position:absolute;top:2%;left:1.4%}.defense-arena canvas{width:100%;height:100%;display:block}.defense-range{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.defense-pad{aspect-ratio:1;color:#eefbd6;z-index:2;background:#d9f4b417;border:2px dashed #e9e7b499;border-radius:50%;place-items:center;width:4.8%;min-width:28px;min-height:28px;padding:0;font-size:22px;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 5px #ffffff04}.defense-pad:hover{background:#d4f6b43b;box-shadow:0 0 15px #e6fc9877}.defense-pad.occupied{border:2px solid var(--element);background:#193d3e80;box-shadow:0 4px #10252a55}.defense-pad.selected{box-shadow:0 0 0 4px #f4e4a178,0 0 24px #e6fc9855}.defense-pad img{width:var(--pactling-size,6.2cqw);max-width:none;height:var(--pactling-size,6.2cqw);object-fit:contain;bottom:8%;left:calc(50% - var(--pactling-size,6.2cqw) / 2);image-rendering:pixelated;pointer-events:none;filter:drop-shadow(0 4px 1px #152d3755);animation:2.6s ease-in-out infinite defense-breathe;position:absolute}.defense-pad:nth-child(odd) img{animation-delay:-1.3s}.defense-rank{letter-spacing:1px;color:#ffe0a1;white-space:nowrap;background:#203f48;border-radius:8px;padding:1px 4px;font-size:10px;position:absolute;bottom:-11px;left:50%;transform:translate(-50%)}.defense-ready-dot{color:#ffe69c;text-shadow:0 0 12px #ffe697;border-radius:50%;font-size:23px;animation:1.5s ease-in-out infinite defense-float;position:absolute;top:-32px;right:-12px}.defense-gate-label{color:#ddf7ec;letter-spacing:.08em;text-shadow:0 2px #1e374a;font-size:clamp(6px,1vw,10px);font-weight:900;position:absolute;top:83%;right:1.7%}.defense-field-caption{white-space:nowrap;color:#d5efc3;background:#152c42cf;border:1px solid #698778;border-radius:10px;padding:8px 14px;font-size:12px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.defense-overlay{z-index:5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#132a3db0;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0;overflow:auto}.defense-question,.defense-checkpoint,.defense-pause{background:linear-gradient(145deg,#2b4c59,#213847);border:1px solid #8bafaf;border-radius:20px;width:min(580px,100%);padding:22px 26px;box-shadow:0 18px 65px #10223670}.defense-question h2{margin:9px 0 12px;font-size:20px}.defense-question-dots{align-items:center;gap:8px;margin-bottom:12px;display:flex}.defense-question-dots>span{color:#c4d8d3;background:#1c3645;border:1px solid #7eaaa0;border-radius:50%;place-items:center;width:27px;height:27px;font-size:12px;display:grid}.defense-question-dots>span.complete{color:#224934;background:#c7efab}.defense-question-dots small{color:#d6e7ba;margin-left:auto;font-size:11px}.defense-prompt{white-space:pre-wrap;max-height:110px;font-size:18px;font-weight:700;overflow:auto;margin-bottom:16px!important}.defense-answers{grid-template-columns:1fr 1fr;gap:9px;display:grid}.defense-answers button{color:#fff;text-align:left;overflow-wrap:anywhere;background:#3e5c6c;border:1px solid #83a0aa;border-radius:11px;align-items:center;gap:10px;padding:11px;font-size:14px;display:flex}.defense-answers button:hover{background:#517969}.defense-answers b{color:#d9edbb;background:#1d394d;border-radius:7px;flex-shrink:0;place-items:center;width:22px;height:24px;font-size:11px;display:grid}.defense-typed{flex-wrap:wrap;gap:10px;display:flex}.defense-typed input{flex:1}.defense-feedback{font-size:13px;color:#ffe2b1!important;margin-top:12px!important}.defense-checkpoint{text-align:center;max-width:500px}.defense-checkpoint .defense-eyebrow{color:#ffe4a7;justify-content:center}.defense-checkpoint h2{margin:9px 0;font-size:30px}.defense-checkpoint p{color:#c4dad7;margin:10px 0;font-size:13px}.defense-checkpoint small{color:#f3cca2;font-size:11px}.defense-checkpoint>button{width:100%;margin:6px 0}.defense-treasure{color:#ffe59b;text-shadow:0 0 24px #ffc54577;font-size:45px;line-height:1;animation:2s ease-in-out infinite defense-float}.defense-loot{flex-wrap:wrap;justify-content:center;gap:18px;margin:15px 0 20px;display:flex}.defense-loot span{align-items:center;gap:5px;font-size:13px;display:flex}.defense-loot svg{color:#ffe19d;width:17px}.defense-continue{color:#edf7f0;background:#38566a;border:1px solid #93b0ad;border-radius:12px;padding:11px;font-weight:700}.defense-pause{text-align:center;max-width:400px}.defense-pause>button{margin:14px 6px 0}.defense-pause h2{margin:10px}.defense-wave-progress{color:#e5efda;background:#1d324be3;border-radius:9px;align-items:center;gap:9px;padding:7px 10px;font-size:11px;display:flex;position:absolute;top:12px;left:14px}.defense-wave-progress progress{accent-color:#b9e3a7;width:70px;height:5px}.defense-wave-banner{color:#e1f1b6;z-index:4;letter-spacing:.08em;background:#203c5199;flex-direction:column;justify-content:center;align-items:center;font-size:28px;font-weight:900;display:flex;position:absolute;inset:0}.defense-wave-banner small{letter-spacing:0;margin-top:10px;font-size:12px;font-weight:400}.defense-team{grid-template-columns:repeat(6,1fr);gap:8px;margin:15px 0;display:grid}.defense-team>button{color:#eaf6ef;background:#294351;border:1px solid #5d7b88;border-radius:12px;flex-direction:column;align-items:center;gap:5px;min-width:0;padding:9px 6px 13px;display:flex;position:relative;overflow:hidden}.defense-team>button.selected{background:#3b5957;border-color:#d8eca5}.defense-team>button.charged{border-color:#f3d895;box-shadow:inset 0 0 16px #ffe77b2a}.defense-team img{object-fit:contain;width:65px;height:52px;image-rendering:pixelated}.defense-team strong{overflow-wrap:anywhere;font-size:12px;display:block}.defense-team small{color:#c0d3d0;margin-top:4px;font-size:10px;line-height:1.35;display:block}.defense-team progress{-webkit-appearance:none;appearance:none;background:#183541;border:0;width:100%;height:5px;position:absolute;bottom:0;left:0}.defense-team progress::-webkit-progress-bar{background:#183541}.defense-team progress::-webkit-progress-value{background:var(--element)}.defense-shortcut{color:#bcd4cf;font-size:9px;position:absolute;top:5px;left:6px}.defense-strategy{background:#213b48;border-radius:14px;align-items:center;gap:24px;padding:17px;display:flex}.defense-selected{flex:1}.defense-selected b,.defense-next-wave b{font-size:13px}.defense-selected p{color:#b3cccc;margin-top:6px;font-size:12px}.defense-selected>span{color:#ddedb1;align-items:center;gap:5px;margin-top:8px;font-size:11px;display:inline-flex}.defense-selected>button{color:#f4f7e8;background:#436357;border:1px solid #91bb94;border-radius:8px;margin-left:12px;padding:7px 11px;font-size:11px;display:inline-block}.defense-next-wave{flex:1}.defense-next-wave>div{flex-wrap:wrap;gap:7px 12px;margin:8px 0;display:flex}.defense-next-wave span{color:#dae5df;align-items:center;gap:5px;font-size:11px;display:flex}.defense-next-wave i{border-radius:50%;width:9px;height:9px;display:block}.defense-next-wave small{color:#a8c5c4;font-size:11px}.defense-footer{justify-content:space-between;align-items:center;gap:15px;margin-top:18px;display:flex}.defense-footer>span{color:#adc7c7;font-size:11px}.defense-footer button{font-size:11px}.defense-abandon{box-sizing:border-box;color:#ffeadd;background:#553e49;border:1px solid #b88387;border-radius:16px;width:min(460px,100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:22px;font-size:15px;line-height:1.5;position:fixed;inset:0;overflow:auto;box-shadow:0 18px 70px #0008}.defense-abandon::backdrop{background:#081925c9}.defense-abandon h2{margin:0 0 12px;font-size:22px;line-height:1.2}.defense-abandon p{margin:0 0 16px}.defense-end-actions{flex-wrap:wrap;gap:10px;display:flex}.defense-abandon button{color:#ffeadd;background:#654c52;border:1px solid #d3b8b0;border-radius:9px;flex:160px;min-height:44px;padding:9px 15px}.defense-abandon button:focus-visible{outline-offset:3px;outline:3px solid #ffe8b2}.defense-abandon button:disabled{opacity:.65;cursor:wait}.defense-end-error{color:#ffe8b2}.adventure-game-picker{gap:10px;max-width:1250px;margin:0 auto 18px;display:flex}.adventure-game-picker button{color:#324d49;font:inherit;cursor:pointer;background:#e8f1e9;border:1px solid #9eb8b2;border-radius:14px;align-items:center;gap:8px;padding:12px 22px;font-weight:800;display:flex}.adventure-game-picker button.active{color:#e7f1d8;background:#23483f;border-color:#315847}.adventure-game-picker button:disabled{opacity:.5;cursor:not-allowed}@keyframes defense-float{50%{transform:translateY(-6px)}}@keyframes defense-breathe{50%{transform:translateY(-2px)scale(1.025)}}.defense-game.reduced *{animation:none!important}@media (prefers-reduced-motion:reduce){.defense-shell *{transition:none!important;animation:none!important}}:where(html[data-motion=reduced]) .defense-shell *{transition:none!important;animation:none!important}@media (max-width:800px){.defense-shell{border-radius:18px;padding:14px}.defense-hero{min-height:260px;padding:24px 18px}.defense-hero-art{width:36%}.defense-how{gap:12px}.defense-hud>div{gap:6px;padding:12px 8px}.defense-hud svg{width:17px}.defense-hud strong{font-size:20px}.defense-strategy{flex-wrap:wrap;gap:15px}.defense-strategy>.defense-primary{width:100%}.defense-question,.defense-checkpoint{padding:16px 20px}.defense-question .defense-tip{display:none}.defense-overlay{padding:10px}.defense-prompt{max-height:65px;font-size:16px}.defense-team{grid-template-columns:repeat(3,1fr)}.defense-team>button{text-align:left;flex-direction:row;min-height:72px;padding:8px 9px 12px}.defense-team img{width:50px;height:45px}.defense-team>button>span:not(.defense-shortcut){min-width:0}.defense-top h1{font-size:18px}.defense-controls button{padding:8px;font-size:11px}.defense-hud .defense-wave-number small{font-size:9px}}@media (max-width:540px){.defense-kicker{display:none}.defense-hero{min-height:250px;overflow:hidden}.defense-hero>div:first-child{z-index:1;position:relative}.defense-hero h1{font-size:35px}.defense-hero p{max-width:240px;font-size:12px}.defense-hero-art{opacity:.4;width:180px;position:absolute;bottom:10px;right:-30px}.defense-how{grid-template-columns:1fr;gap:14px;margin:20px 0}.defense-how>div{align-items:center}.defense-how strong{margin-bottom:1px}.defense-setup-heading{flex-direction:column;align-items:stretch}.defense-setup-heading>div:first-child{max-width:none}.defense-roster{grid-template-columns:repeat(2,1fr)}.defense-start{flex-direction:column;align-items:stretch}.defense-leaderboard li{gap:8px;font-size:11px}.defense-top{flex-wrap:wrap;align-items:flex-start}.defense-controls{margin-left:auto}.defense-hud{grid-template-columns:1.2fr 1fr 1fr}.defense-hud>div{padding:9px}.defense-hud .defense-wave-number{flex-direction:row;grid-column:2/4;gap:14px}.defense-hud .defense-wave-number small{font-size:11px}:is(.defense-stage-wrap:has(.defense-question),.defense-stage-wrap:has(.defense-checkpoint)){min-height:405px}.defense-stage-wrap:has(.defense-pause){min-height:290px}.defense-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:9px}.defense-question,.defense-checkpoint{padding:20px 16px}.defense-answers{grid-template-columns:1fr}.defense-answers button{padding:9px}.defense-question h2{font-size:18px}.defense-question-dots{margin-bottom:10px}.defense-prompt{max-height:85px;font-size:15px}.defense-team{gap:6px}.defense-team>button{text-align:center;flex-direction:column;gap:3px;padding:7px 4px 12px}.defense-team small{font-size:9px}.defense-team strong{font-size:10px}.defense-strategy{flex-direction:column;align-items:stretch;gap:16px;padding:13px}.defense-field-caption{padding:4px 9px;font-size:9px;bottom:4px}.defense-rank{font-size:7px;bottom:-7px}.defense-ready-dot{font-size:16px;top:-19px;right:-6px}.defense-pad{width:4.8%;font-size:13px;border-width:1px!important}.defense-wave-progress{padding:4px 6px;font-size:8px;top:6px;left:6px}.defense-wave-progress progress{width:40px}.defense-wave-banner{font-size:17px}.defense-results{gap:13px;padding:18px}.defense-results h2{font-size:19px}.defense-footer>span{font-size:10px}.adventure-game-picker button{flex:1;justify-content:center;padding:12px;font-size:13px}}.defense-expand-control{justify-content:flex-end;align-items:center;gap:12px;margin:-3px 0 9px;display:flex}.defense-placement-hint{color:#c0d8ca;margin-right:auto;font-size:11px}.defense-expand-control button{color:#c0d8ca;background:0 0;border:0;flex-shrink:0;align-items:center;gap:6px;padding:3px 0;font-size:11px;display:flex}.defense-expanded{z-index:40;border-radius:14px;max-width:none;margin:0;position:fixed;inset:8px;overflow:auto}.defense-expanded .defense-stage-wrap,.defense-expanded .defense-team,.defense-expanded .defense-strategy{max-width:1120px;margin-left:auto;margin-right:auto}.defense-expanded .defense-stage-wrap{max-width:min(1120px,178vh - 551.8px)}@media (max-width:800px){.defense-expanded .defense-stage-wrap{max-width:100%}}.ruin-shell{--ruin-gold:#ead193;--ruin-ink:#eaf0dc;--ruin-muted:#a8beb4;--ruin-stone:#38504a;--ruin-moss:#647f4c;color:var(--ruin-ink);background:#17342f;border:1px solid #66857566;border-radius:24px;font-family:inherit;overflow:hidden;box-shadow:0 18px 55px #09262626}.ruin-shell button,.ruin-shell input,.ruin-shell select{font:inherit}.ruin-shell button{cursor:pointer;color:inherit;background:#ffffff0b;border:1px solid #809b8860;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:10px 14px;transition:background .16s,border-color .16s,transform .16s;display:inline-flex}.ruin-shell button:hover:not(:disabled){background:#ffffff18;border-color:#d5dca89e;transform:translateY(-1px)}:is(.ruin-shell button:focus-visible,.ruin-shell input:focus-visible,.ruin-shell select:focus-visible){outline-offset:3px;outline:3px solid #f4d382}.ruin-shell button:disabled{opacity:.42;cursor:not-allowed}.ruin-shell h1,.ruin-shell h2,.ruin-shell h3,.ruin-shell p{margin:0}.ruin-shell p{color:#c2d2c7;line-height:1.6}.ruin-shell small{color:var(--ruin-muted);line-height:1.5}.ruin-eyebrow{letter-spacing:2px;color:#d8ddb3;align-items:center;gap:8px;font-size:11px;font-weight:800;display:inline-flex}.ruin-shell .ruin-primary{color:#253d34;background:linear-gradient(135deg,#edd599,#d4b36d);border-color:#f0d99a;font-weight:800;box-shadow:0 4px #775f36}.ruin-shell .ruin-primary:hover:not(:disabled){background:#f3dfae}.ruin-shell .ruin-secondary{color:#e5ead1;background:#33584a;border-color:#8ba884}.ruin-hero{background:radial-gradient(at 82% 45%,#5b695148,#0000 55%),linear-gradient(130deg,#183c35,#122f2b);grid-template-columns:1.2fr 1fr;align-items:center;min-height:330px;padding:44px;display:grid;position:relative}.ruin-hero h1{letter-spacing:-1.8px;margin:17px 0;font-size:clamp(32px,4vw,48px);font-weight:900;line-height:1.12}.ruin-hero h1 em{color:var(--ruin-gold);font-style:normal}.ruin-hero p{max-width:400px;font-size:14px}.ruin-tags{gap:10px;margin-top:25px;display:flex}.ruin-tags span{letter-spacing:1.2px;text-transform:uppercase;color:#d8d6af;border:1px solid #c9c58c50;border-radius:20px;padding:6px 13px;font-size:10px}.ruin-hero-art{isolation:isolate;height:265px;position:relative}.ruin-hero-art:before{content:"";clip-path:polygon(9% 100%,0 15%,20% 0,80% 0,100% 15%,91% 100%,76% 100%,80% 26%,66% 19%,34% 19%,20% 26%,24% 100%);filter:drop-shadow(0 10px #0e2624);background:repeating-linear-gradient(0deg,#0000 0 39px,#1b3436 40px 44px),linear-gradient(110deg,#91a480,#405d4b);position:absolute;inset:10px 14% 20px}.ruin-hero-art i{background:radial-gradient(at 50% 70%,#d7ba6470,#92d6b120 45%,#152e29 70%);border:2px solid #babe8170;border-radius:40% 40% 12% 12%;position:absolute;inset:62px 25% 23px;box-shadow:0 0 65px #d9bd5920}.ruin-hero-art>span{color:#ffdc8c;font-size:54px;animation:3s ease-in-out infinite ruin-breathe;position:absolute;top:87px;left:45%}.ruin-hero-art img{object-fit:contain;width:48%;height:140px;image-rendering:pixelated;filter:drop-shadow(0 8px 3px #071b2290);position:absolute;bottom:0}.ruin-hero-art img:first-of-type{left:2%;transform:scaleX(-1)}.ruin-hero-art img:last-of-type{right:0}.ruin-how{background:#e5ce9a08;border-block:1px solid #809a6550;grid-template-columns:repeat(3,1fr);gap:22px;padding:24px 30px;display:grid}.ruin-how p{grid-template-columns:28px 1fr;column-gap:10px;font-size:12px;display:grid}.ruin-how b{color:#b7b982;grid-row:span 2;font-size:13px}.ruin-how strong{color:#e6e7cf;font-size:14px}.ruin-setup-row{justify-content:space-between;align-items:end;gap:24px;padding:28px 30px 20px;display:flex}.ruin-shell label{color:#dfe3c7;flex-direction:column;gap:8px;font-size:12px;font-weight:700;display:flex}.ruin-shell input,.ruin-shell select{color:#e9edd7;background:#132f2c;border:1px solid #6a8a7966;border-radius:10px;min-width:0;max-width:100%;padding:12px}.ruin-setup-row select{max-width:330px}.ruin-setup-row h2{font-size:18px}.ruin-setup-row h2 span{color:#eed393;margin-left:8px}.ruin-setup-row p{margin-top:5px;font-size:12px}.ruin-roster{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:470px;padding:0 30px;display:grid;overflow-y:auto}.ruin-roster button{text-align:left;min-height:112px;position:relative;justify-content:start!important;gap:8px!important;padding:13px 9px!important}.ruin-roster button>svg{color:#e9d095;position:absolute;top:7px;right:7px}.ruin-roster button.chosen{background:#cab57514;border-color:#e5c882}.ruin-roster img{object-fit:contain;width:68px;height:75px;image-rendering:pixelated;flex-shrink:0}.ruin-roster span{flex-direction:column;gap:4px;display:flex}.ruin-roster strong{font-size:13px}.ruin-roster small{font-size:10px}.ruin-setup>input{margin:0 30px 20px}.ruin-start-row{justify-content:space-between;align-items:center;gap:20px;padding:24px 30px;display:flex}.ruin-start-row p{font-size:12px}.ruin-results{background:#c2c57e0b;border:1px solid #d0bf7744;border-radius:15px;align-items:center;gap:20px;margin:24px 30px;padding:22px;display:flex}.ruin-results>svg{color:#ebd394;flex-shrink:0}.ruin-results h2{margin-bottom:5px;font-size:20px}.ruin-results p{font-size:13px}.ruin-leaderboard{background:#112c2850;border-top:1px solid #72907944;padding:25px 30px}.ruin-leaderboard h2{align-items:center;gap:9px;margin-bottom:8px;font-size:17px;display:flex}.ruin-leaderboard p{font-size:12px}.ruin-leaderboard ol{margin:15px 0 0;padding:0;list-style:none}.ruin-leaderboard li{border-top:1px solid #9cb99a22;grid-template-columns:25px 1fr auto auto;align-items:center;gap:14px;padding:12px 8px;font-size:12px;display:grid}.ruin-leaderboard li.mine{color:#f4d691;background:#e6d89213}.ruin-leaderboard li span{font-size:11px}.ruin-notice{margin:10px 30px 20px}.ruin-error{color:#ffe0c9;background:#653936;border:1px solid #edbfa8;border-radius:12px;margin:15px;padding:16px}.ruin-error p{color:inherit;margin-bottom:9px}.ruin-session{background:linear-gradient(135deg,#153631,#142b29);padding:20px}.ruin-session-header{justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.ruin-session-header h1{margin-top:6px;font-size:17px}.ruin-header-actions{gap:6px;display:flex}.ruin-header-actions button{padding:8px 11px;font-size:11px}.ruin-hud{background:#09232050;border:1px solid #7c958566;border-radius:15px;grid-template-columns:1.6fr 1.2fr 1fr .65fr;display:grid;overflow:hidden}.ruin-hud>div{border-right:1px solid #7c958530;flex-direction:column;gap:6px;padding:14px 17px;display:flex}.ruin-hud small{letter-spacing:1.3px;font-size:9px;font-weight:800}.ruin-hud strong{align-items:center;gap:8px;font-size:22px;line-height:1;display:flex}.ruin-hud strong span{color:#aebda5;font-size:10px}.ruin-hearts{color:#f0a197;gap:4px;display:flex}.ruin-hearts .empty{color:#859a8890}.ruin-hud .ruin-floor-label{text-align:center;background:#c6be741a;border-right:0;align-items:center}.ruin-room-heading{align-items:center;gap:12px;padding:15px 1px 12px;display:flex}.ruin-room-heading h2{flex:1;font-size:14px}.ruin-room-heading button{border:0;padding:6px}.ruin-room-heading .ruin-reset-puzzle{color:#f2e8cb;white-space:nowrap;background:#254c40;border:1px solid #c6d8b866;min-height:40px;padding:8px 12px;font-size:12px}.ruin-seals{color:#80978c;align-items:center;gap:5px;font-size:11px;display:flex}.ruin-seals .lit{color:#f2d381;filter:drop-shadow(0 0 5px #ffcf6280)}.ruin-play-layout{grid-template-columns:minmax(0,660px) 215px;justify-content:center;align-items:start;gap:15px;display:grid}.ruin-room-wrap{isolation:isolate;border-radius:15px;justify-self:center;width:100%;min-width:0;max-width:660px;position:relative;overflow:hidden;box-shadow:0 8px 24px #031f2444}.ruin-arena{aspect-ratio:11/9;cursor:crosshair;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:#122b2b;border:1px solid #8ba58970;border-radius:15px;position:relative;overflow:hidden}.ruin-arena>svg{width:100%;height:100%;display:block}.ruin-arena.biome-coast{--ruin-stone:#32565b;--ruin-moss:#70988f}.ruin-arena.biome-cavern{--ruin-stone:#454a61;--ruin-moss:#74818d}.ruin-arena.biome-sun{--ruin-stone:#655e48;--ruin-moss:#a09763}.ruin-door{animation:2.8s ease-in-out infinite ruin-door-glow}.ruin-torch-glow,.ruin-flame{transform-box:fill-box;transform-origin:bottom;animation:1.6s ease-in-out infinite ruin-breathe}.ruin-spark{animation:3s ease-in-out infinite ruin-breathe}.ruin-coin circle{transform-origin:50%;transform-box:fill-box;animation:2s ease-in-out infinite ruin-coin}.ruin-explorer{pointer-events:none;isolation:isolate;z-index:3;width:10%;height:15%;transition:left .14s linear,top .14s linear;position:absolute;transform:translate(-50%,-90%)}.ruin-explorer>span{filter:blur(2px);z-index:-1;background:#061c2399;border-radius:50%;width:60%;height:20%;position:absolute;bottom:0;left:20%}.ruin-explorer img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;transform:scaleX(var(--facing));filter:drop-shadow(0 3px #082622)}.ruin-explorer.protected:before{content:"";background:#e4d79417;border:2px solid #f1d888;border-radius:50%;animation:.6s infinite ruin-breathe;position:absolute;inset:5% -7% -5%;box-shadow:0 0 18px #edda7c80}.ruin-explorer.hasty img{filter:drop-shadow(-7px 0 3px #a6dfbd88)}.ruin-fx{pointer-events:none;z-index:5;color:#ffde85;text-shadow:0 2px #102b2a;font-size:26px;font-weight:900;animation:1.1s ease-out both ruin-float;position:absolute}.ruin-fx.coin{font-size:15px}.ruin-fx.hit{color:#ffaaa0}.ruin-fx.heal{color:#bde6a0}.ruin-seal-stamp{color:#f1d38f;letter-spacing:1px;pointer-events:none;background:#122b2ac9;border:1px solid #c7bb7755;border-radius:20px;padding:7px 15px;font-size:11px;position:absolute;bottom:14%;left:50%;transform:translate(-50%)}.ruin-echo-panel{color:#fff2cc;background:#103c3e;border:1px solid #76ddcf55;border-radius:13px;flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;padding:12px;display:flex}.ruin-echo-instruction{flex:1;gap:4px;min-width:130px;display:grid}.ruin-echo-instruction strong{font-size:13px}.ruin-echo-instruction span{color:#c0dfd2;font-size:11px}.ruin-echo-panel button{color:#173e3c;background:#f4d89e;border:1px solid #e5cd8c;border-radius:8px;padding:9px 12px;font-size:12px;font-weight:800}.ruin-echo-panel button:disabled{opacity:.65}.ruin-echo-beats{gap:5px;display:flex}.ruin-echo-beats b{color:#87aca4;background:#0a2a31;border:1px solid #5b928d;border-radius:7px;place-items:center;width:28px;height:32px;display:grid}.ruin-echo-beats b.lit{color:#fff4ae;background:#467d70;box-shadow:0 0 16px #84edd36b}.ruin-echo-beats b.done{color:#a8f4c7;border-color:#a8f4c7}.ruin-objective{text-align:left;background:#0c3337;border:1px solid #d7d28c38;border-radius:12px;padding:12px 15px}.ruin-objective>strong{color:#f7dc9f;font-size:14px}.ruin-objective ol{gap:7px;margin:9px 0 0;padding:0;list-style:none;display:grid}.ruin-objective li{color:#d7e6da;align-items:center;gap:8px;font-size:12px;display:flex}.ruin-objective li b{background:#234d50;border-radius:50%;flex-shrink:0;place-items:center;width:21px;height:21px;font-size:10px;display:grid}.ruin-objective li.done{color:#88cdb0}.ruin-objective li.done b{background:#235f49}.ruin-optional{color:#f1d590;margin:10px 0 0;font-size:11px;line-height:1.5}.ruin-stone-gate{opacity:1;transition:opacity .35s}.ruin-stone-gate.open{opacity:0}@media (max-width:600px){.ruin-echo-panel{gap:7px;padding:8px}.ruin-echo-instruction{min-width:150px}.ruin-echo-beats b{width:23px;height:27px}.ruin-objective{padding:10px}}.ruin-puzzle-clue{white-space:nowrap;pointer-events:none;z-index:4;background:#0a262ee8;border:1px solid #d6c28460;border-radius:12px;align-items:center;gap:8px;max-width:95%;padding:7px 12px;display:flex;position:absolute;top:4px;left:50%;transform:translate(-50%);box-shadow:0 5px 14px #041c2455}.ruin-puzzle-clue span{color:#d5d9ba;font-size:9px}.ruin-puzzle-clue b{color:#95b5b0;font-size:15px}.ruin-puzzle-clue b.done{color:#ffda91;text-shadow:0 0 10px #eeca7666}.ruin-chest.opened .ruin-chest-lid{transform-origin:0 100%;transition:transform .35s;transform:translateY(-17px)rotate(-8deg)}.ruin-minimap{background:#102b2655;border:1px solid #708b764a;border-radius:15px;padding:14px}.ruin-minimap>div{justify-content:space-between;font-size:11px;display:flex}.ruin-minimap>div span{color:#a7b69b;font-size:9px}.ruin-minimap svg{width:100%;margin:8px 0}.ruin-minimap small{font-size:9px}.ruin-room-tip{padding:18px 6px}.ruin-room-tip strong{color:#e4d394;font-size:13px}.ruin-room-tip p{margin-top:8px;font-size:11px}.ruin-message{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:43px;padding:10px;font-size:12px;display:flex;color:#c9d5b9!important}.ruin-controls{background:#143c341a;border:1px solid #6a87754d;border-radius:15px;justify-content:center;align-items:center;gap:28px;padding:12px;display:flex}.ruin-dpad{touch-action:none;grid-template-rows:36px 36px;grid-template-columns:repeat(3,40px);gap:4px;display:grid}.ruin-dpad button{touch-action:none;background:#476554;border-color:#91a88670;border-radius:9px;padding:0;box-shadow:0 3px #0c2726}.ruin-dpad button:first-child{grid-column:2}.ruin-dpad button:nth-child(2){grid-area:2/1}.ruin-dpad button:nth-child(3){grid-area:2/2}.ruin-dpad button:nth-child(4){grid-area:2/3}.ruin-action-buttons{align-items:stretch;gap:10px;display:flex}.ruin-action-buttons button{font-size:12px}.ruin-action-buttons .ruin-secondary{flex-wrap:wrap;max-width:180px}.ruin-action-buttons small{color:#bacba6;width:100%;font-size:9px}.ruin-action-buttons kbd{border:1px solid #5b744955;border-radius:4px;padding:1px 4px;font-size:10px}.ruin-team{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px;display:grid}.ruin-team button{text-align:left;justify-content:start;padding:9px}.ruin-team button[aria-pressed=true]{background:#d7bc7615;border-color:#dec581}.ruin-team img{object-fit:contain;width:48px;height:46px;image-rendering:pixelated;flex-shrink:0}.ruin-team span{flex-direction:column;gap:4px;display:flex}.ruin-team strong{font-size:11px}.ruin-team small{font-size:9px}.ruin-game-footer{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.ruin-game-footer small{flex:1;font-size:9px}.ruin-game-footer button{padding:7px 10px;font-size:10px}.ruin-overlay{z-index:10;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#102b2bbb;justify-content:center;align-items:center;padding:22px;display:flex;position:absolute;inset:0;overflow:auto}.ruin-overlay>div,.ruin-overlay>form{background:linear-gradient(135deg,#365446f7,#213e38f7);border:1px solid #adbe9180;border-radius:18px;width:100%;max-width:540px;padding:24px;box-shadow:0 20px 40px #081f2866}.ruin-overlay h2{margin:10px 0;font-size:21px;line-height:1.25}.ruin-overlay h3{margin:18px 0;font-size:17px;line-height:1.45}.ruin-overlay p{font-size:13px}.ruin-overlay button{margin-top:10px}.ruin-overlay .ruin-question-count{color:#a9c0ac;font-size:11px}.ruin-spelling{align-items:stretch;gap:9px;margin-top:10px;display:flex}.ruin-spelling input{flex:1;width:80px}.ruin-spelling button{margin:0;font-size:12px}.ruin-answers{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ruin-answers button{text-align:left;overflow-wrap:anywhere;background:#e3ddbb0d;justify-content:start;margin:0;padding:10px;font-size:13px}.ruin-answers b{border:1px solid #bfcea966;border-radius:50%;flex-shrink:0;place-items:center;width:23px;height:23px;font-size:10px;display:grid}.ruin-feedback{padding-top:13px;color:#f1d798!important}.ruin-refuge{text-align:center}.ruin-refuge>svg{color:#ecd18a;margin:12px auto 0;display:block}.ruin-refuge label{text-align:left;margin-top:14px}.ruin-refuge>p{margin:12px 0}.ruin-refuge>small{margin-top:12px;font-size:10px;display:block}.ruin-overlay.saving{background:#15372b99}.ruin-overlay.saving>div{text-align:center;max-width:340px}.ruin-confirm{width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--ruin-ink);z-index:100;background:#041a23be;border:0;place-items:center;margin:0;padding:24px;display:grid;position:fixed;inset:0}.ruin-confirm>div{background:#23443d;border:1px solid #a8b88b;border-radius:20px;max-width:450px;padding:25px}.ruin-confirm h2{margin-bottom:12px;font-size:22px}.ruin-confirm p{margin-bottom:20px;font-size:14px}.ruin-confirm button{margin:5px}.ruin-session.expanded{z-index:60;border-radius:20px;max-width:1200px;margin:auto;position:fixed;inset:10px;overflow-y:auto}.ruin-session.expanded .ruin-play-layout{grid-template-columns:minmax(0,1fr) 215px;max-width:1050px;margin:auto}.ruin-session.expanded .ruin-room-wrap{justify-self:center;width:100%;max-width:min(100%,122.222dvh - 446.111px)}.ruin-session.expanded .ruin-arena{aspect-ratio:11/9;width:100%;margin:auto}.ruin-session.expanded .ruin-hud,.ruin-session.expanded .ruin-team,.ruin-session.expanded .ruin-controls{max-width:1050px;margin-inline:auto}.ruin-session.expanded .ruin-team{margin-top:13px}@media (min-width:1051px){.ruin-session.expanded{grid-template-rows:auto auto auto minmax(45px,auto) auto 1fr auto;grid-template-columns:minmax(0,1fr) 300px;align-content:start;gap:10px 24px;padding:16px 22px;display:grid}.ruin-session.expanded .ruin-session-header,.ruin-session.expanded .ruin-hud,.ruin-session.expanded .ruin-room-heading,.ruin-session.expanded .ruin-game-footer{grid-column:1/-1;width:100%;max-width:none;margin:0}.ruin-session.expanded .ruin-hud>div{padding:9px 16px}.ruin-session.expanded .ruin-room-heading{padding:0}.ruin-session.expanded .ruin-play-layout{display:contents}.ruin-session.expanded .ruin-room-wrap{grid-area:4/1/7;align-self:start;max-width:min(100%,122.222dvh - 342.222px)}.ruin-session.expanded .ruin-room-wrap:has(.ruin-echo-panel){max-width:min(100%,122.222dvh - 470.556px)}.ruin-session.expanded .ruin-map-panel{display:none}.ruin-session.expanded .ruin-map-panel.open{z-index:15;background:#15342f;border:1px solid #b9c589;border-radius:15px;width:300px;padding:12px;display:block;position:absolute;top:195px;right:22px;box-shadow:0 10px 30px #031f24}.ruin-session.expanded .ruin-message{grid-area:4/2;padding:8px 0}.ruin-session.expanded .ruin-controls{flex-direction:column;grid-area:5/2;gap:12px;width:100%}.ruin-session.expanded .ruin-team{grid-area:6/2;align-self:start;width:100%;margin:0}.ruin-session.expanded .ruin-team button{text-align:center;flex-direction:column;padding:8px 4px}.ruin-session.expanded .ruin-game-footer{grid-row:7;align-self:end}.ruin-session.expanded .ruin-error{grid-column:1/-1}}.ruin-arena.quiet *{animation-play-state:paused!important}@keyframes ruin-breathe{50%{opacity:.65;transform:scale(.92)}}@keyframes ruin-coin{50%{transform:scaleX(.72)}}@keyframes ruin-door-glow{50%{filter:drop-shadow(0 0 5px #deca8760)}}@keyframes ruin-float{0%{opacity:1;transform:translate(-50%)scale(.8)}25%{transform:translate(-50%,-12px)scale(1.12)}to{opacity:0;transform:translate(-50%,-40px)}}@media (max-width:1050px){.ruin-play-layout{grid-template-columns:minmax(0,1fr)}.ruin-map-panel{display:none}.ruin-map-panel.open{grid-template-columns:1fr 1fr;gap:15px;display:grid}.ruin-minimap svg{max-height:140px}.ruin-session.expanded .ruin-play-layout{grid-template-columns:minmax(0,1fr)}.ruin-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.ruin-hud strong{font-size:20px}.ruin-hero{padding:30px}.ruin-overlay{padding:22px}}@media (max-width:600px){.ruin-shell{border-radius:17px}.ruin-hero{grid-template-columns:1fr;padding:24px 20px}.ruin-hero h1{font-size:35px}.ruin-hero-art{height:170px;margin-top:20px}.ruin-hero-art img{width:35%;height:105px}.ruin-hero-art i{inset:42px 32% 15px}.ruin-hero-art:before{inset:5px 22% 10px}.ruin-hero-art>span{font-size:40px;top:40px}.ruin-how{grid-template-columns:1fr;gap:13px;padding:20px}.ruin-setup-row{flex-direction:column;align-items:stretch;padding:20px}.ruin-setup-row select{max-width:none}.ruin-roster{gap:8px;padding:0 15px}.ruin-roster button{flex-direction:column;min-height:170px;align-items:start!important}.ruin-roster img{align-self:center;width:70px}.ruin-roster small:last-child{font-size:9px}.ruin-start-row{flex-direction:column;align-items:stretch;padding:20px}.ruin-start-row .ruin-primary{min-height:46px}.ruin-results{margin:18px;padding:15px}.ruin-results h2{font-size:17px}.ruin-leaderboard{padding:20px 15px}.ruin-leaderboard h2{font-size:15px}.ruin-leaderboard li{grid-template-columns:20px 1fr auto;gap:6px}.ruin-leaderboard li span:first-of-type{grid-area:2/2}.ruin-session{padding:10px}.ruin-session-header{gap:8px;margin-bottom:12px}.ruin-session-header h1{font-size:12px}.ruin-eyebrow{letter-spacing:1px;font-size:9px}.ruin-header-actions{gap:4px}.ruin-header-actions button{padding:7px;font-size:9px}.ruin-header-actions button span{display:none}.ruin-hud{border-radius:10px;grid-template-columns:1.5fr 1fr 1fr .6fr}.ruin-hud>div{gap:6px;padding:10px 7px}.ruin-hud small{letter-spacing:.5px;font-size:7px}.ruin-hud strong{gap:4px;font-size:16px}.ruin-hud strong>span,.ruin-hud strong>svg{display:none}.ruin-hearts{gap:2px}.ruin-hearts svg{width:15px;height:17px}.ruin-room-heading{flex-wrap:wrap;gap:6px}.ruin-room-heading h2{flex-basis:calc(100% - 90px);font-size:11px}.ruin-seals{gap:2px;font-size:9px}.ruin-seals svg{width:13px}.ruin-room-heading button{padding:4px}.ruin-room-heading .ruin-reset-puzzle{min-height:44px;margin-right:auto}.ruin-puzzle-clue{gap:6px;padding:5px 8px;top:3px}.ruin-puzzle-clue span{font-size:7px}.ruin-puzzle-clue b{font-size:11px}.ruin-overlay{padding:10px}.ruin-overlay>div,.ruin-overlay>form{border-radius:13px;padding:15px}.ruin-overlay h2{margin:6px 0;font-size:16px}.ruin-overlay h3{margin:12px 0;font-size:14px}.ruin-overlay p{font-size:11px;line-height:1.45}.ruin-overlay .ruin-eyebrow{font-size:7px}.ruin-overlay .ruin-question-count{font-size:9px}.ruin-spelling{flex-direction:column}.ruin-spelling input{width:100%;padding:10px;font-size:13px}.ruin-spelling button{padding:9px}.ruin-answers{gap:6px}.ruin-answers button{padding:8px;font-size:11px}.ruin-answers b{width:19px;height:19px;font-size:9px}.ruin-overlay:has(.ruin-refuge){z-index:12;background:#15342a;min-height:400px;margin-top:-100%;position:relative}.ruin-refuge>svg{width:28px;height:28px}.ruin-refuge label,.ruin-refuge select{font-size:11px}.ruin-refuge>p{margin:9px 0}.ruin-overlay button{font-size:11px}.ruin-message{min-height:45px;font-size:10px}.ruin-controls{gap:15px;padding:10px}.ruin-dpad{grid-template-rows:32px 32px;grid-template-columns:repeat(3,34px);gap:3px}.ruin-action-buttons{gap:7px}.ruin-action-buttons button{padding:8px;font-size:10px}.ruin-action-buttons kbd{display:none}.ruin-team{gap:5px}.ruin-team button{text-align:center;flex-direction:column;gap:4px;min-width:0;padding:7px 4px}.ruin-team strong{overflow-wrap:anywhere;font-size:10px}.ruin-team small{font-size:8px}.ruin-team img{height:37px}.ruin-game-footer small{flex-basis:100%;font-size:8px}.ruin-map-panel.open{grid-template-columns:1fr}.ruin-room-tip{padding:0 8px 10px}.ruin-session.expanded{inset:4px}.ruin-seal-stamp{padding:4px 10px;font-size:8px}.ruin-fx{font-size:18px}.ruin-fx.coin{font-size:12px}}@media (prefers-reduced-motion:reduce){.ruin-shell *,.ruin-shell :before{transition:none!important;animation:none!important}.ruin-fx{opacity:1;transform:translate(-50%,-15px)}}:where(html[data-motion=reduced]) .ruin-shell *,:where(html[data-motion=reduced]) .ruin-shell :before{transition:none!important;animation:none!important}:where(html[data-motion=reduced]) .ruin-fx{opacity:1;transform:translate(-50%,-15px)}.ruin-challenge-status{color:#d7e9d6;background:#203c3c;border:1px solid #a3c5ad60;border-radius:12px;gap:5px;margin-top:10px;padding:12px 16px;font-size:12px;line-height:1.45;display:grid}.ruin-challenge-status strong{color:#f3dda5;font-size:14px}.ruin-message .ruin-challenge-status{text-align:left;width:100%;margin:0}.ruin-carried-crystal{color:#b7fff3;text-shadow:0 0 8px #7bd9d4;font-size:22px;position:absolute;top:-22%;left:40%}.ruin-guardian.warning .ruin-guardian-body{animation:.22s steps(2,end) infinite ruin-guardian-warn}.ruin-guardian.recover .ruin-guardian-body{opacity:.6}.ruin-trap-warning{animation:.45s ease-in-out infinite alternate ruin-hazard-warn}.ruin-water-ripple{animation:1.4s ease-in-out infinite alternate ruin-hazard-warn}.ruin-prism-beam{animation:1s ease-in-out infinite alternate ruin-hazard-warn}@keyframes ruin-guardian-warn{to{transform:translate(2px)}}@keyframes ruin-hazard-warn{to{opacity:.65}}.ruin-arena.quiet .ruin-guardian-body,.ruin-arena.quiet .ruin-trap-warning,.ruin-arena.quiet .ruin-water-ripple,.ruin-arena.quiet .ruin-prism-beam{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.ruin-guardian .ruin-guardian-body,.ruin-trap-warning,.ruin-water-ripple,.ruin-prism-beam{animation:none}}:where(html[data-motion=reduced]) .ruin-guardian .ruin-guardian-body,:where(html[data-motion=reduced]) .ruin-trap-warning,:where(html[data-motion=reduced]) .ruin-water-ripple,:where(html[data-motion=reduced]) .ruin-prism-beam{animation:none}.ruin-pixel-art{pointer-events:none;overflow:hidden}.ruin-pixel-art image,.ruin-floor-art,.ruin-hero-pixels image{image-rendering:pixelated}.ruin-floor-art{filter:brightness(.62)saturate(.65)}.ruin-masonry{filter:brightness(.87)saturate(.8)}.biome-coast .ruin-floor-art{filter:brightness(.77)saturate(.5)hue-rotate(35deg)}.biome-cavern .ruin-floor-art{filter:brightness(.48)saturate(.5)hue-rotate(145deg)}.biome-cavern .ruin-masonry{filter:brightness(.78)saturate(.6)hue-rotate(125deg)}.biome-sun .ruin-floor-art{filter:brightness(.76)saturate(.68)sepia(.22)}.biome-ember .ruin-floor-art{filter:brightness(.47)saturate(.5)hue-rotate(320deg)}.biome-ember .ruin-masonry{filter:brightness(.78)saturate(.6)hue-rotate(330deg)}.biome-marsh .ruin-floor-art{filter:brightness(.54)saturate(.55)hue-rotate(45deg)}.biome-meadow .ruin-floor-art{filter:brightness(.71)saturate(.7)}.ruin-art-awake{filter:sepia(.45)saturate(1.4)drop-shadow(0 0 4px #ffdc77)}.ruin-pressure-plate{filter:saturate(.45)brightness(.83)}.ruin-guardian-alert{filter:sepia(.25)saturate(1.8)drop-shadow(0 0 4px #ff9d58)}.ruin-guardian-ice{filter:saturate(.35)hue-rotate(135deg)brightness(1.2)}.ruin-idle-sentinel{opacity:.55}.ruin-pixel-glimmer{animation:2.8s steps(4,end) infinite ruin-glimmer}.ruin-pixel-coin{animation:2s ease-in-out infinite ruin-coin-bob}.ruin-laser-core{animation:.3s steps(2,end) infinite ruin-laser-flicker}.ruin-torch-art{animation:1.7s steps(3,end) infinite alternate ruin-torch-light}.ruin-shrine-art{filter:drop-shadow(0 0 7px #83e5cb55)}.ruin-hero-art:before{display:none}.ruin-hero-pixels{width:100%;height:100%;overflow:visible}@keyframes ruin-glimmer{0%,to{opacity:.18}45%,65%{opacity:1}}@keyframes ruin-coin-bob{50%{transform:translateY(-3px)}}@keyframes ruin-laser-flicker{50%{opacity:.72}}@keyframes ruin-torch-light{to{filter:brightness(1.2)drop-shadow(0 0 4px #ffce7955)}}.sky-shell{--sky-ink:#234b5b;--sky-muted:#647a7c;--sky-gold:#f2c87c;color:var(--sky-ink);background:#f7f4e9;border:1px solid #c3d7d1;border-radius:25px;max-width:1300px;margin:auto;font-size:14px;overflow:hidden;box-shadow:0 18px 50px #183b4920}.sky-mission{background:#e7ecdc;border-bottom:1px solid #c7d4bd;align-items:center;gap:14px;padding:10px 24px;display:flex}.sky-mission span{letter-spacing:.12em;color:#627766;gap:3px;font-size:8px;display:grid}.sky-mission strong{letter-spacing:0;color:#244e5b;font-size:12px}.sky-mission b{color:#987328;font-size:17px}.sky-mission small{color:#60736a;margin-left:auto}.sky-mission.complete{background:#e1efcd}.sky-shell .sky-dodge{background:#dfeeed;flex-shrink:0;padding:12px}.sky-dodge span{gap:4px;font-size:11px;display:grid}.sky-dodge small{font-size:9px}.sky-message.warning,.sky-message.thunder{color:#975111;font-weight:900}.sky-message.mission{color:#397227}.sky-shell *{box-sizing:border-box}.sky-shell button{font:inherit;cursor:pointer;color:var(--sky-ink);background:#fffdf5;border:1px solid #b9cdc6;border-radius:12px;justify-content:center;align-items:center;gap:9px;padding:11px 15px;transition:background .18s,box-shadow .18s;display:inline-flex}.sky-shell button:hover:not(:disabled){background:#e9f2e7;box-shadow:0 3px 12px #21524819}:is(.sky-shell button:focus-visible,.sky-shell input:focus-visible,.sky-shell select:focus-visible){outline-offset:3px;outline:3px solid #208d91}.sky-shell button:disabled{opacity:.45;cursor:default}.sky-shell button[aria-pressed=true]{background:#e5f2dc;border-color:#358776;box-shadow:inset 0 0 0 1px #358776}.sky-shell .sky-primary{color:#fffaf0;background:#1e706f;border-color:#1e706f;font-weight:800;box-shadow:0 4px #154e51}.sky-shell .sky-primary:hover:not(:disabled){background:#185c63}.sky-shell h1,.sky-shell h2,.sky-shell h3,.sky-shell p{margin:0}.sky-shell h2{font-size:23px;line-height:1.25}.sky-shell h3{margin:21px 0 12px;font-size:15px}.sky-shell p{line-height:1.65}.sky-shell small{font-size:12px}.sky-shell input,.sky-shell select{width:100%;min-width:0;color:var(--sky-ink);font:inherit;background:#fffdf6;border:1px solid #bccfc5;border-radius:10px;padding:12px}.sky-eyebrow{letter-spacing:.17em;align-items:center;gap:8px;font-size:10px;font-weight:900;display:flex}.sky-welcome{isolation:isolate;background:linear-gradient(90deg,#d9f0edee,#0000 85%),url(/skyship/sky-realm.png) 50%/cover;align-items:center;min-height:315px;padding:40px 42px;display:flex;position:relative}.sky-welcome>div{z-index:1;width:64%;position:relative}.sky-welcome h1{letter-spacing:-.045em;margin:17px 0;font-size:clamp(31px,4.1vw,56px);line-height:1.06}.sky-welcome h1 em{color:#256f71;font-style:normal}.sky-welcome p{max-width:370px;font-weight:600}.sky-welcome>img{object-fit:contain;filter:drop-shadow(0 15px 9px #476b6c38);width:46%;height:88%;animation:5s ease-in-out infinite sky-bob;position:absolute;top:4%;right:0}.sky-ribbon{letter-spacing:.13em;background:#fff5d6;border:1px solid #e5c993;border-radius:20px;margin-top:22px;padding:7px 13px;font-size:10px;font-weight:900;display:inline-block}.sky-setup-columns{grid-template-columns:1fr 1fr;gap:42px;padding:32px 38px 18px;display:grid}.sky-setup-columns h2{margin-bottom:19px}.sky-setup-columns label{gap:8px;font-size:12px;font-weight:700;display:grid}.sky-how{gap:17px;margin:25px 0 18px;padding:0;list-style:none;display:grid}.sky-how li{align-items:flex-start;gap:14px;line-height:1.55;display:flex}.sky-how b{color:#3d8280;border-bottom:2px solid #d9b36c;padding:5px 0;font-size:12px}.sky-note{color:var(--sky-muted);font-size:12px;margin-top:14px!important}.sky-roster{grid-template-columns:1fr 1fr;gap:9px;max-height:250px;margin:12px 0;display:grid;overflow:auto}.sky-roster button{justify-content:flex-start;gap:6px;min-width:0;padding:7px}.sky-roster img{object-fit:contain;width:43px;height:49px;image-rendering:pixelated}.sky-roster span{text-align:left;gap:4px;min-width:0;display:grid}.sky-roster strong{overflow-wrap:anywhere;font-size:12px}.sky-roster small{color:#5f7878;font-size:10px}.sky-roster svg{flex-shrink:0}.sky-launch{min-width:235px;margin:8px 38px 28px}.sky-leaderboard{border-top:1px solid #cbd8cb;margin:0 38px 32px;padding-top:23px}.sky-leaderboard h2{align-items:center;gap:10px;font-size:18px;display:flex}.sky-leaderboard p{color:var(--sky-muted);margin-top:8px;font-size:12px}.sky-leaderboard ol{padding:0;list-style:none}.sky-leaderboard li{border-bottom:1px solid #e0e6d9;justify-content:space-between;gap:12px;padding:12px 0;display:flex}.sky-result{background:#e6efdb;border:1px solid #c1d1a8;border-radius:16px;align-items:center;gap:18px;margin:25px 38px 0;padding:20px;display:flex}.sky-result h2{font-size:18px}.sky-result p{margin-top:6px;font-size:13px}.sky-game-header{justify-content:space-between;align-items:center;gap:12px;padding:19px 24px;display:flex}.sky-game-header h2{margin-top:8px;font-size:23px}.sky-game-header h2 small{color:var(--sky-muted);margin-left:10px;font-weight:500}.sky-tools{gap:7px;display:flex}.sky-tools button{padding:9px}.sky-hud{color:#fff5dc;background:#244e5b;align-items:center;gap:19px;padding:13px 24px;display:flex}.sky-hud>span{white-space:nowrap;align-items:center;gap:6px;font-weight:800;display:flex}.sky-hud small{color:#c4d6d5;white-space:nowrap;font-size:10px}.sky-hearts{gap:4px!important}.sky-distance{background:#163c47;border-radius:10px;flex:1;min-width:40px;height:7px;overflow:hidden}.sky-distance i{background:linear-gradient(90deg,#7bd4b9,#f8d27c);border-radius:10px;height:100%;transition:width .1s linear;display:block}.sky-arena{aspect-ratio:16/9;touch-action:none;-webkit-user-select:none;user-select:none;background:#9bd9ec;position:relative;overflow:hidden}.sky-scene{width:100%;height:100%;display:block}.sky-scene image{image-rendering:pixelated}.sky-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:3;background:#12394370;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.sky-pause-card{text-align:center;background:#fff9e9f5;border:2px solid #d9bf88;border-radius:22px;flex-direction:column;align-items:center;gap:12px;max-width:450px;max-height:100%;padding:27px 34px;display:flex;overflow:auto;box-shadow:0 14px 40px #17374055}.sky-pause-card>svg{color:#4f9291}.sky-pause-card h2{font-size:27px}.sky-pause-card p{color:#586d70;font-size:13px}.sky-pause-card button{width:100%}.sky-arriving{white-space:nowrap;background:#fff9e9;border-radius:20px;padding:13px 23px;font-weight:800;position:absolute;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #24495740}.sky-flight-note{background:#e9eddc;border-bottom:1px solid #d3dbca;justify-content:space-between;gap:10px;padding:12px 24px;display:flex}.sky-flight-note small{color:#657b70;font-size:10px}.sky-message{min-height:18px;font-size:12px;font-weight:700}.sky-message.hit{color:#a9484b}.sky-message.ability{color:#197e89}.sky-controls{align-items:center;gap:18px;padding:19px 24px;display:flex}.sky-dpad{touch-action:none;flex-shrink:0;grid-template-rows:repeat(2,33px);grid-template-columns:repeat(3,37px);gap:3px;display:grid}.sky-dpad button{touch-action:none;-webkit-user-select:none;user-select:none;border-radius:8px;padding:3px;font-size:21px}.sky-dpad button:first-child{grid-column:2}.sky-dpad button:nth-child(2){grid-area:2/1}.sky-dpad button:nth-child(3){grid-area:2/2}.sky-dpad button:nth-child(4){grid-area:2/3}.sky-crew{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;min-width:0;display:grid}.sky-crew button{text-align:left;justify-content:flex-start;gap:7px;min-width:0;padding:7px}.sky-crew img{object-fit:contain;width:45px;height:50px;image-rendering:pixelated}.sky-crew span{gap:5px;min-width:0;display:grid}.sky-crew strong{font-size:12px}.sky-crew small{overflow-wrap:anywhere;color:#71847c;font-size:10px}.sky-crew kbd{background:#e4e9d9;border-radius:4px;margin-left:auto;padding:2px 5px;font-size:10px}.sky-dock{background:linear-gradient(135deg,#fbf6e6,#edf4e8);padding:28px 32px}.sky-dock>h2{margin:12px 0}.sky-dock>p{max-width:820px;font-size:13px}.sky-routes{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.sky-routes button{text-align:left;flex-direction:column;align-items:flex-start;min-width:0;padding:18px;display:flex}.sky-routes b{color:#638b71;font-size:29px}.sky-routes strong{font-size:14px}.sky-routes small{color:#6b7d78;line-height:1.55}.sky-routes em{background:#f5e7b9;border-radius:7px;padding:4px 8px;font-size:11px;font-style:normal;font-weight:800}.sky-upgrades{gap:10px;display:flex}.sky-upgrades button{text-align:left;flex-direction:column;flex:1;align-items:flex-start;min-width:0}.sky-upgrades strong{font-size:13px}.sky-upgrades small{color:#678075;font-size:10px;line-height:1.5}.sky-dock-actions{justify-content:space-between;gap:12px;margin-top:23px;display:flex}.sky-question{border:1px solid #d4d9bf;border-radius:18px;max-width:780px;margin:20px auto}.sky-question h2{font-size:25px}.sky-question form{gap:10px;margin-top:20px;display:flex}.sky-answers{grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;display:grid}.sky-answers button{text-align:left;justify-content:flex-start}.sky-answers b{background:#e9edd9;border-radius:7px;padding:6px 9px}.sky-feedback{color:#8c5d2b;background:#fff1ca;border-radius:9px;padding:12px;margin-top:14px!important}.sky-error{color:#993e3a;background:#fbe3db;border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;margin:15px 25px;padding:15px;display:flex}.sky-home{margin:0 30px 24px}.sky-expanded{z-index:65;max-width:none;position:fixed;inset:8px;overflow:auto}.sky-expanded .sky-controls{max-width:1200px;margin:auto;padding:10px 20px}.sky-expanded .sky-game-header{padding:12px 24px}.sky-expanded .sky-game-header h2{margin-top:4px}.sky-expanded .sky-hud,.sky-expanded .sky-mission,.sky-expanded .sky-flight-note{padding-top:7px;padding-bottom:7px}.sky-expanded .sky-arena{background:#244e5b}.sky-expanded .sky-question{max-width:900px}:is(.sky-game:has(.sky-question) .sky-arena,.sky-game:has(.sky-routes) .sky-arena){max-height:225px}:is(.sky-game:has(.sky-question) .sky-scene,.sky-game:has(.sky-routes) .sky-scene){height:auto;transform:translateY(-12%)}@keyframes sky-bob{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-9px)rotate(1deg)}}@media (max-width:900px){.sky-crew kbd{display:none}.sky-crew img{width:32px;height:40px}.sky-controls{gap:10px;padding:14px}.sky-crew button{gap:4px}.sky-setup-columns{gap:24px;padding:25px}.sky-roster{grid-template-columns:1fr}.sky-hud{gap:12px}.sky-hud>small{display:none}.sky-welcome{padding:32px}.sky-welcome h1{font-size:39px}}@media (max-width:620px){.sky-shell{border-radius:17px;font-size:13px}.sky-welcome{background-position:60%;min-height:375px;padding:25px 22px 150px}.sky-welcome>div{width:100%}.sky-welcome h1{max-width:290px;font-size:39px}.sky-welcome p{max-width:240px;font-size:12px}.sky-welcome>img{width:66%;height:210px;top:auto;bottom:-22px;right:-15px}.sky-ribbon{z-index:1;position:relative}.sky-setup-columns{grid-template-columns:1fr;gap:25px;padding:24px}.sky-roster{grid-template-columns:1fr 1fr;max-height:200px}.sky-launch{width:calc(100% - 48px);min-width:0;margin:0 24px 24px}.sky-leaderboard{margin:0 24px 24px}.sky-leaderboard li{font-size:11px}.sky-result{margin:20px 20px 0;padding:15px}.sky-game-header{padding:14px}.sky-game-header h2{font-size:19px}.sky-game-header h2 small{display:none}.sky-eyebrow{letter-spacing:.1em;font-size:8px}.sky-tools{gap:5px}.sky-tools button{padding:8px}.sky-tools svg{width:15px;height:15px}.sky-hud{gap:11px;padding:10px 12px;font-size:12px}.sky-hearts svg{width:14px;height:14px}.sky-hud small{display:none}.sky-arena{aspect-ratio:16/9}.sky-scene{width:100%;height:100%}.sky-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:8px}.sky-pause-card{gap:8px;max-width:330px;padding:13px 15px}.sky-pause-card>svg,.sky-pause-card>.sky-eyebrow{display:none}.sky-pause-card h2{font-size:18px}.sky-pause-card p{font-size:10px;line-height:1.5}.sky-pause-card button{padding:7px;font-size:11px}.sky-flight-note{flex-direction:column;gap:2px;padding:10px 12px}.sky-message{font-size:10px}.sky-flight-note small{font-size:9px}.sky-controls{grid-template-columns:1fr 1fr;padding:11px;display:grid}.sky-dpad{grid-template-rows:repeat(2,36px);grid-template-columns:repeat(3,46px);margin:0 auto}.sky-crew{grid-column:1/-1;gap:5px}.sky-crew button{text-align:center;flex-direction:column;gap:4px;padding:7px 3px}.sky-crew img{width:42px;height:38px}.sky-crew span{gap:4px}.sky-crew strong{font-size:10px}.sky-crew small{font-size:8px}.sky-dock{padding:22px 17px}.sky-dock h2{font-size:22px}.sky-dock>p{font-size:12px}.sky-upgrades{gap:6px}.sky-upgrades button{padding:10px 8px}.sky-upgrades strong{font-size:10px}.sky-upgrades small{font-size:9px}.sky-routes{grid-template-columns:1fr;gap:9px}.sky-routes button{grid-template-columns:30px 1fr;gap:5px 10px;padding:13px;display:grid}.sky-routes b{grid-row:1/4;font-size:25px}.sky-routes small{grid-column:2}.sky-routes em{grid-column:2;justify-self:start}.sky-dock-actions{flex-direction:column}.sky-question{border-radius:12px;margin:12px}.sky-question h2{font-size:20px}.sky-question form{flex-direction:column}.sky-answers{grid-template-columns:1fr}:is(.sky-game:has(.sky-question) .sky-arena,.sky-game:has(.sky-routes) .sky-arena){max-height:125px}.sky-home{margin:0 17px 20px}.sky-expanded{border-radius:0;inset:0}.sky-expanded .sky-arena,.sky-expanded .sky-scene{width:100%;max-height:none}.sky-arriving{padding:9px 13px;font-size:11px;bottom:14px}.sky-error{margin:12px;font-size:12px}}@media (prefers-reduced-motion:reduce){.sky-shell *{transition:none!important;animation:none!important}.sky-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}}:where(html[data-motion=reduced]) .sky-shell *{transition:none!important;animation:none!important}:where(html[data-motion=reduced]) .sky-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}:is(.sky-game:has(.sky-question) .sky-arena,.sky-game:has(.sky-routes) .sky-arena){aspect-ratio:auto;width:100%;height:225px}:is(.sky-game:has(.sky-question) .sky-scene,.sky-game:has(.sky-routes) .sky-scene){width:100%;height:auto;max-height:none;position:absolute;top:50%;left:0;transform:translateY(-64%)}@media (max-width:620px){.sky-mission{gap:9px;padding:8px 12px}.sky-mission strong{font-size:10px}.sky-mission small{max-width:80px;font-size:8px}.sky-shell .sky-dodge{padding:12px 7px}.sky-upgrades{grid-template-columns:repeat(2,minmax(0,1fr))!important}:is(.sky-game:has(.sky-question) .sky-arena,.sky-game:has(.sky-routes) .sky-arena){height:125px}.sky-arena{aspect-ratio:16/9}}.sky-game .sky-game-header{padding:10px 16px}.sky-game .sky-game-header h2{margin-top:3px;font-size:19px}.sky-game .sky-tools{flex-shrink:0;align-items:center}.sky-game .sky-tools button{min-height:40px}.sky-game .sky-save{white-space:nowrap;font-size:12px;font-weight:700}.sky-flight .sky-arena{background:#244e5b}.sky-game .sky-flight-note{padding:8px 16px}.sky-game .sky-message{overflow-wrap:anywhere}@media (min-width:900px),(min-width:760px) and (orientation:landscape){.sky-flight{grid-template-rows:auto auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) clamp(210px,21vw,270px);height:min(800px,100dvh - 24px);min-height:0;display:grid}.sky-flight.sky-expanded{height:auto}.sky-flight .sky-game-header{grid-area:1/1/auto/-1}.sky-flight .sky-hud{grid-area:2/1;gap:14px;min-width:0;padding:9px 16px}.sky-flight .sky-mission{border-left:1px solid #c3d7d1;flex-wrap:wrap;grid-area:2/2;gap:8px;padding:8px 12px}.sky-flight .sky-mission span{flex:1;font-size:8px}.sky-flight .sky-mission strong{font-size:12px}.sky-flight .sky-mission small{width:100%;margin:0;font-size:10px}.sky-flight .sky-arena{aspect-ratio:auto;grid-area:3/1;place-items:center;width:100%;min-width:0;height:100%;min-height:0;max-height:none;margin:0;display:grid;container-type:size}.sky-flight .sky-scene{width:min(100cqw,177.778cqh);height:min(100cqh,56.25cqw);max-height:none}.sky-flight .sky-flight-note{grid-area:4/1;align-items:center;min-width:0}.sky-flight .sky-flight-note small{flex-shrink:0}.sky-flight .sky-controls{border-left:1px solid #c3d7d1;flex-direction:column;grid-area:3/2/5;justify-content:center;align-items:stretch;gap:12px;min-height:0;margin:0;padding:14px;display:flex;overflow-y:auto}.sky-flight .sky-dpad{grid-template-rows:repeat(2,38px);grid-template-columns:repeat(3,44px);align-self:center}.sky-flight .sky-dodge{min-height:48px;padding:10px}.sky-flight .sky-crew{flex:0;grid-template-columns:minmax(0,1fr);gap:8px}.sky-flight .sky-crew button{min-height:60px;padding:6px 9px}.sky-flight .sky-crew img{flex-shrink:0;width:38px;height:42px}.sky-flight .sky-crew strong{overflow-wrap:anywhere}.sky-flight .sky-crew kbd{display:block}}@media (max-height:560px) and (min-width:760px){.sky-flight .sky-game-header{padding:5px 12px}.sky-flight .sky-game-header>div:first-child{align-items:center;gap:12px;display:flex}.sky-flight .sky-game-header h2{margin:0;font-size:16px}.sky-flight .sky-game-header h2 small,.sky-flight .sky-mission small{display:none}.sky-flight .sky-controls{gap:5px;padding:6px}.sky-flight .sky-dpad{grid-template-rows:repeat(2,28px)}.sky-flight .sky-dodge{min-height:40px;padding:4px 8px}.sky-flight .sky-crew{gap:5px}.sky-flight .sky-crew button{min-height:44px;padding:4px 7px}.sky-flight .sky-crew img{width:28px;height:30px}.sky-flight .sky-crew span{gap:2px}.sky-flight .sky-flight-note{padding:5px 12px}.sky-flight .sky-pause-card{grid-template-columns:1fr 1fr;gap:7px;max-width:560px;padding:12px 18px;display:grid}.sky-flight .sky-pause-card>svg,.sky-flight .sky-pause-card>.sky-eyebrow{display:none}.sky-flight .sky-pause-card h2,.sky-flight .sky-pause-card p{grid-column:1/-1}.sky-flight .sky-pause-card h2{font-size:20px}.sky-flight .sky-pause-card p{font-size:12px;line-height:1.4}.sky-flight .sky-pause-card button{padding:8px;font-size:12px}:is(.sky-game:has(.sky-question) .sky-arena,.sky-game:has(.sky-routes) .sky-arena){height:100px}}@media (max-width:620px){.sky-game .sky-game-header{gap:6px;padding:8px 10px}.sky-game .sky-game-header h2{font-size:17px}.sky-game .sky-eyebrow{letter-spacing:0;gap:4px}.sky-game .sky-tools{gap:4px}.sky-game .sky-tools button{min-height:40px;padding:7px}.sky-game .sky-save{font-size:11px}}@media (min-width:900px) and (max-height:750px){.sky-game:not(.sky-flight) .sky-mission{display:none}:is(.sky-game:has(.sky-question) .sky-arena,.sky-game:has(.sky-routes) .sky-arena){height:90px}.sky-game .sky-question{margin:12px auto;padding:16px 24px}.sky-game .sky-question h2{margin:8px 0;font-size:22px}.sky-game .sky-answers,.sky-game .sky-question form{margin-top:12px}.sky-game .sky-home{margin-bottom:12px}}.adventure-arcade{--arcade-ink:#eaf8f3;isolation:isolate;color:var(--arcade-ink);background:radial-gradient(at 84% 0,#274f56 0,#0000 49%),radial-gradient(at 10% 100%,#21483d 0,#0000 55%),#142d35;border:1px solid #365951;border-radius:28px;padding:clamp(20px,3.2vw,44px);position:relative;overflow:hidden;box-shadow:0 18px 40px #162f2924}.arcade-sky{z-index:-1;pointer-events:none;position:absolute;inset:0}.arcade-sky span{color:#abdfc846;font-size:29px;position:absolute}.arcade-sky span:first-child{top:51px;left:48%}.arcade-sky span:nth-child(2){font-size:59px;top:102px;right:17%}.arcade-sky span:nth-child(3){font-size:17px;top:174px;right:31%}.arcade-sky span:nth-child(4){bottom:24px;left:43%}.arcade-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:33px;display:flex}.arcade-eyebrow{color:#bbdfd3;letter-spacing:.16em;align-items:center;gap:9px;font-size:11px;font-weight:850;display:flex}.adventure-arcade .arcade-heading h1{color:#f8fff7;letter-spacing:-.04em;margin:14px 0;font-size:clamp(34px,3.7vw,54px);font-weight:900;line-height:1.06}.arcade-heading h1 em{color:#c6f48d;font-style:normal}.arcade-home,.adventure-return button{color:#e7f4ed;cursor:pointer;background:#ffffff09;border:1px solid #779a8c66;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 14px;font-size:12px;font-weight:750;display:inline-flex}.arcade-home:hover{background:#ffffff17}.arcade-games{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.arcade-cafe-land{background:linear-gradient(#0000 40%,#344838aa),url(/cafe-scenes/garden-cafe.png) 50%/cover;position:absolute;inset:0}.poster-pactling.cafe-host{object-fit:contain;filter:drop-shadow(0 8px 5px #213a3844);width:43%;height:55%;position:absolute;top:16%;left:12%}.poster-cafe-dish{width:37%;position:absolute;top:24%;right:12%}.poster-cafe-dish svg{width:100%;height:auto;position:static}.cafe-spark{color:#ffd5ca;top:17%;right:24%}.arcade-card{text-align:left;width:100%;font:inherit;cursor:pointer;-webkit-appearance:none;appearance:none;--card-accent:#d4f393;background:#19353b;border:1px solid #71948660;border-radius:19px;flex-direction:column;min-width:0;padding:0;transition:transform .22s,border-color .22s,box-shadow .22s;display:flex;overflow:hidden;box-shadow:0 9px #0b20283b,0 14px 25px #0c20252b}.arcade-card.defense{--card-accent:#ffc78b}.arcade-card.ruins{--card-accent:#c3b7ff}.arcade-card:not(:disabled):hover{border-color:var(--card-accent);transform:translateY(-5px);box-shadow:0 9px #0b20283b,0 18px 32px #07151d66}.arcade-card:focus-visible{border-color:var(--card-accent);transform:translateY(-5px);box-shadow:0 9px #0b20283b,0 18px 32px #07151d66}.arcade-card.has-save{border-color:var(--card-accent)}.arcade-poster{aspect-ratio:400/310;background:#496d61;position:relative;overflow:hidden}.arcade-poster:after{content:"";pointer-events:none;background:linear-gradient(#0b26321a 0,#0000 49%,#112b35bc 75%,#19353b 100%);position:absolute;inset:0}.arcade-illustration{position:absolute;inset:0;overflow:hidden}.arcade-illustration>svg{width:100%;height:100%;position:absolute;inset:0}.arcade-trail-panorama{image-rendering:pixelated;background:url(/adventure-scenes/forest-trail.png) 39% bottom/auto 100% no-repeat;position:absolute;inset:0}.arcade-defense-land{image-rendering:pixelated;background:linear-gradient(#0000 30%,#173a3344),url(/defense-scenes/forest.png) 50%/cover;position:absolute;inset:0}.arcade-ruins-land{image-rendering:pixelated;background:linear-gradient(#0c292252,#112b3599),url(/ruins/floor-v1.png) 50%/cover;position:absolute;inset:0}.illustration-ruins image{image-rendering:pixelated}.poster-pixel-torch{animation:1.8s ease-in-out infinite alternate arcade-torch-glow}.poster-pixel-spark{animation:2.8s ease-in-out infinite arcade-twinkle}@keyframes arcade-torch-glow{to{filter:brightness(1.2)drop-shadow(0 0 5px #ffce7988)}}.arcade-poster .poster-pactling{object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 5px 2px #15282044);position:absolute}.poster-pactling.trail-runner{width:29%;height:38%;animation:3.3s ease-in-out infinite arcade-hop;top:36%;left:21%}.poster-pactling.defense-leaf{width:23%;height:31%;top:27%;left:5%}.poster-pactling.defense-water{width:24%;height:30%;top:10%;left:35%}.poster-pactling.defense-ember{width:23%;height:31%;top:28%;left:65%}.poster-pactling.ruins-explorer{width:26%;height:35%;top:36%;left:23%}.arcade-poster-title{z-index:1;position:absolute;bottom:20px;left:20px;right:12px}.adventure-arcade .arcade-game-title{color:#f8fff3;letter-spacing:-.035em;text-shadow:0 3px 12px #132b38;margin:0 0 6px;font-size:clamp(22px,2.2vw,31px);font-weight:900;line-height:1.05;display:block}.arcade-game-tagline{color:var(--card-accent);margin:0;font-size:12px;font-weight:650;line-height:1.5;display:block}:is(.adventure-arcade button:focus-visible,.adventure-return button:focus-visible){outline-offset:4px;outline:3px solid #fff3ae}.arcade-resume{background:linear-gradient(110deg,#3e604e8c,#244147);border:1px solid #92c98b88;border-radius:15px;align-items:center;gap:17px;margin:-4px 0 27px;padding:13px 19px;display:flex}.arcade-resume>img{object-fit:contain;width:67px;height:73px;image-rendering:pixelated}.arcade-resume>div{flex:1;min-width:0}.arcade-live-dot{letter-spacing:.12em;color:#d4efb0;align-items:center;gap:6px;font-size:9px;font-weight:800;display:inline-flex}.arcade-live-dot:before{content:"";background:#c6f48d;border-radius:50%;width:6px;height:6px;box-shadow:0 0 12px #c6f48d}.adventure-arcade .arcade-resume h2{color:#f1ffef;margin:5px 0;font-size:17px;font-weight:800;line-height:1.3}.arcade-resume p{color:#bbd1c6;overflow-wrap:anywhere;margin:0;font-size:12px}.arcade-resume>button{color:#213e31;cursor:pointer;background:#d4f393;border:1px solid #ecffd04d;border-radius:10px;align-items:center;gap:8px;padding:13px 16px;font-size:12px;font-weight:850;display:flex}.arcade-empty{background:#ffffff09;border:1px solid #b8d2c343;border-radius:12px;align-items:center;gap:13px;margin-bottom:23px;padding:17px;display:flex}.arcade-empty>svg{color:#d4f393;flex-shrink:0}.arcade-empty strong{color:#f0f7eb;font-size:14px}.arcade-empty p{color:#c2d2c8;margin:4px 0 0;font-size:12px;line-height:1.6}.adventure-return{align-items:center;gap:14px;margin-bottom:15px;display:flex}.adventure-return button{color:#294d40;background:#fffaf0;border-color:#c7d8c8}.adventure-return h2{color:#426052;margin:0;font-size:13px;font-weight:750}.poster-spark{color:#fff6b1;text-shadow:0 0 12px #ffdf67;position:absolute}.trail-spark{font-size:25px;animation:2.8s ease-in-out infinite arcade-twinkle;top:54%;left:72%}.ruin-spark{color:#ccffe6;font-size:21px;animation:3s ease-in-out infinite arcade-twinkle;top:32%;left:70%}.arcade-coin{transform-box:fill-box;transform-origin:50%;animation:3.3s ease-in-out infinite arcade-coin}.coin-1{animation-delay:.12s}.coin-2{animation-delay:.24s}.coin-3{animation-delay:.36s}.coin-4{animation-delay:.48s}.coin-5{animation-delay:.6s}.coin-6{animation-delay:.72s}.defense-crystal,.ruin-rune{animation:3.5s ease-in-out infinite arcade-twinkle}.defense-zap{animation:4s ease-in-out infinite arcade-zap}.ruin-gate-glow{animation:4s ease-in-out infinite arcade-twinkle}.ruin-mote{animation:4s ease-in-out infinite arcade-mote}.ruin-mote:nth-child(2){animation-delay:-2s}.ruin-flame{transform-box:fill-box;transform-origin:bottom;animation:1.4s ease-in-out infinite alternate arcade-flame}@keyframes arcade-hop{0%,42%,to{transform:translateY(0)rotate(-2deg)}20%{transform:translateY(-18px)rotate(4deg)}60%,85%{transform:translateY(-3px)}}@keyframes arcade-coin{0%,35%,to{transform:translateY(0)scaleX(1)}18%{transform:translateY(-5px)scaleX(.55)}}@keyframes arcade-twinkle{0%,to{opacity:.55}50%{opacity:1}}@keyframes arcade-zap{0%,62%,84%,to{opacity:0}69%,78%{opacity:1}}@keyframes arcade-mote{0%,to{opacity:.2;transform:translateY(5px)}50%{opacity:1;transform:translateY(-7px)}}@keyframes arcade-flame{0%{transform:scale(.93,.87)}to{transform:scale(1.05)}}@media (max-width:1000px) and (min-width:701px){.adventure-arcade{padding:24px}.arcade-games{gap:12px}.arcade-poster-title{left:14px}}@media (max-width:700px){.adventure-arcade{border-radius:20px}.arcade-heading{gap:9px;margin-bottom:27px}.arcade-heading h1{font-size:38px}.arcade-home{min-width:42px;padding:10px;font-size:0}.arcade-home svg{width:18px;height:18px}.arcade-eyebrow{letter-spacing:.13em;font-size:9px}.arcade-games{grid-template-columns:1fr;gap:22px;max-width:450px;margin-inline:auto}.arcade-poster{aspect-ratio:400/290}.arcade-illustration{inset:-3% 0}.adventure-arcade .arcade-game-title{font-size:31px}.arcade-game-tagline{font-size:13px}.arcade-resume{grid-template-columns:49px 1fr;gap:10px;padding:15px;display:grid}.arcade-resume>img{width:49px;height:59px}.arcade-resume>button{grid-column:1/-1;justify-content:center;margin-top:6px}.arcade-resume h2{font-size:15px}}@media (prefers-reduced-motion:reduce){.adventure-arcade *,.adventure-arcade :before,.adventure-arcade :after{transition:none!important;animation:none!important}.arcade-card:hover,.arcade-card:focus-within{transform:none}.defense-zap{opacity:.7}}:where(html[data-motion=reduced]) .adventure-arcade *,:where(html[data-motion=reduced]) .adventure-arcade :before,:where(html[data-motion=reduced]) .adventure-arcade :after{transition:none!important;animation:none!important}:where(html[data-motion=reduced]) .arcade-card:hover,:where(html[data-motion=reduced]) .arcade-card:focus-within{transform:none}:where(html[data-motion=reduced]) .defense-zap{opacity:.7}.arcade-card:disabled{cursor:default;filter:saturate(.45);opacity:.6}.arcade-availability{color:#c2d5ce;margin:-10px 0 18px;font-size:13px;line-height:1.5}.illustration-skyship{background:#8de0f1}.poster-skyship-background{object-fit:cover;width:300%;max-width:none;height:100%;position:absolute;top:0;left:-70%}.poster-skyship{object-fit:contain;filter:drop-shadow(0 12px 8px #14466b40);width:82%;height:82%;animation:6s ease-in-out infinite arcade-hop;position:absolute;top:1%;left:7%}.arcade-poster.skyship .arcade-poster-title{background:linear-gradient(#0000,#153955e8)}.arcade-card.mystery{--poster-color:#426c58;background:#213f37}.poster-mystery-background{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.poster-mystery-lantern{filter:drop-shadow(0 0 14px #ffd57faa);width:33%;position:absolute;top:12%;left:42%}.poster-mystery-lantern svg{width:100%}.poster-mystery-partner{filter:drop-shadow(0 7px 3px #163e4788);width:30%;position:absolute;bottom:27%;left:13%}.arcade-poster.practice{background:#dcebd7}.illustration-practice .practice-poster-background{object-fit:cover;opacity:.6;width:100%;height:100%;position:absolute;inset:0}.illustration-practice .practice-poster-partner{object-fit:contain;width:55%;height:75%;image-rendering:pixelated;position:absolute;bottom:3%;right:2%}.practice-poster-book{color:#275c42;background:#fff9e9;border:6px solid #547a62;border-radius:8px;padding:14px;font-size:32px;font-weight:800;line-height:1.2;position:absolute;top:24%;left:10%;transform:rotate(-8deg);box-shadow:6px 6px #14352755}.sanctuary{color:#fff;background:#203c30;border-radius:22px;overflow:hidden;box-shadow:0 12px 36px #142d3730}.sanctuary-scroll{scrollbar-color:#b9b778 #263e31;overflow-x:auto}.sanctuary-world{isolation:isolate;aspect-ratio:1672/941;width:100%;min-width:760px;position:relative;overflow:hidden}.sanctuary-background{object-fit:fill;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.sanctuary-welcome{z-index:100;pointer-events:none;background:#16372ce8;border:1px solid #becb8170;border-radius:14px;max-width:45%;padding:10px 18px;position:absolute;top:3%;left:3%}.sanctuary-welcome h1{color:#fff5ce;text-shadow:0 2px 2px #12291d;margin:0;font-family:Georgia,serif;font-size:clamp(24px,2.8vw,40px);line-height:1.1}.sanctuary-welcome p{color:#ecedda;margin:5px 0 0;font-size:14px}.sanctuary-sign{z-index:110;color:#49351f;cursor:pointer;background:#fff0cc;border:2px solid #9b743d;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:9px 13px;font-size:clamp(14px,1.3vw,18px);font-weight:750;transition:filter .15s,transform .15s;display:flex;position:absolute;box-shadow:0 3px #624b2d,0 6px 14px #172b3450}.sanctuary-sign svg{width:20px;height:20px}.sanctuary-sign:hover{filter:brightness(1.08);transform:translateY(-2px)}.sign-wardrobe{top:23%;left:9%}.sign-pedia{top:37%;left:24%}.sign-campfire{top:32%;left:60%}.sign-adventure{top:21%;right:9%}.sanctuary-trainer{z-index:73;cursor:pointer;background:0 0;border:0;width:8%;height:40%;padding:0;position:absolute;top:31%;left:31%}.sanctuary-trainer .modular-avatar{aspect-ratio:1;pointer-events:none;width:284%;height:auto;margin:0;position:absolute;top:0;bottom:auto;left:-92%;transform:none}.sanctuary-trainer canvas{filter:drop-shadow(0 6px 3px #17311f50)}.sanctuary-trainer:hover canvas{filter:drop-shadow(0 0 5px #ffe8a2)}.sanctuary-pet{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:flex-end;min-width:44px;min-height:44px;padding:0;display:flex;position:absolute;overflow:visible;transform:translate(-50%,-100%)}.sanctuary-pet img{object-fit:contain;object-position:bottom;filter:drop-shadow(0 6px 3px #1c302867);pointer-events:none;width:100%;height:100%;transition:filter .15s,translate .15s}.sanctuary-pet>span{color:#fff7d5;white-space:nowrap;opacity:0;pointer-events:none;background:#15372de8;border:1px solid #b9bc78;border-radius:999px;padding:4px 10px;font-size:14px;transition:opacity .15s;position:absolute;top:100%;left:50%;transform:translate(-50%)}.sanctuary-pet small{color:#d4e6c5;margin-left:4px;font-size:12px}:is(.sanctuary-pet:hover img,.sanctuary-pet:focus-visible img){filter:drop-shadow(0 0 5px #fff2a1);translate:0 -4px}:is(.sanctuary-pet:hover>span,.sanctuary-pet:focus-visible>span){opacity:1}.sanctuary-footer{color:#f0edcb;background:#213e30;justify-content:space-between;align-items:center;gap:12px;padding:12px 22px;font-size:14px;display:flex}.sanctuary-footer>span,.sanctuary-footer button{align-items:center;gap:8px;display:flex}.sanctuary-footer button{color:#fff2b7;cursor:pointer;background:0 0;border:1px solid #84956a;border-radius:999px;min-height:44px;padding:8px 13px}.sanctuary-quest{color:#3e4d30;text-align:left;cursor:pointer;background:#f7edce;border:0;border-top:1px solid #6b805650;align-items:center;gap:12px;width:100%;padding:15px 22px;display:flex}.sanctuary-quest>span{flex:1;gap:4px;display:grid}.sanctuary-quest strong{font-size:16px}.sanctuary-quest small{font-size:14px}.sanctuary-quest.encounter-ready{background:#ffdc89}.student-shell.sanctuary-active{background:#142f29}.student-shell.sanctuary-active .student-header{background:#193c30;border-bottom:1px solid #8e9e6260;padding-top:12px;padding-bottom:12px}.student-shell.sanctuary-active .student-main{flex-direction:column;max-width:1600px;padding:16px 22px 22px;display:flex}.sanctuary-active .student-content{order:1}.sanctuary-active .student-nav{background:#173b32;border:1px solid #9c9a60;border-radius:22px;order:2;align-self:center;gap:0;width:100%;max-width:880px;margin:15px 0 0;padding:4px;box-shadow:0 8px 22px #071a2860}.student-shell.sanctuary-active .student-nav button{color:#e8eddb;box-shadow:none;background:0 0;border:0;border-radius:16px;flex-direction:column;gap:5px;min-height:60px;font-size:14px}.student-shell.sanctuary-active .student-nav button[aria-current=page]{color:#ffe19a;background:#39513b}.student-shell.sanctuary-active .student-nav button svg{color:#c6d8c8}.student-shell.sanctuary-active .student-nav button[aria-current=page] svg{color:#ffda72}.student-shell.sanctuary-active button:focus-visible{outline-offset:3px;outline:3px solid #ffdb70}@media (max-width:700px){.student-shell.sanctuary-active .student-main{padding:10px}.sanctuary{border-radius:14px}.sanctuary-footer{flex-wrap:wrap;padding:10px}.sanctuary-footer>span{font-size:13px}.sanctuary-quest{padding:12px}.sanctuary-welcome h1{font-size:26px}.student-shell.sanctuary-active .student-nav{border-radius:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.sanctuary-scroll{padding-bottom:8px}}@media (prefers-reduced-motion:reduce){.sanctuary-pet img,.sanctuary-pet>span,.sanctuary-sign{transition:none}:is(.sanctuary-pet:hover img,.sanctuary-pet:focus-visible img){translate:none}}:where(html[data-motion=reduced]) .sanctuary-pet img,:where(html[data-motion=reduced]) .sanctuary-pet>span,:where(html[data-motion=reduced]) .sanctuary-sign{transition:none}:is(:where(html[data-motion=reduced]) .sanctuary-pet:hover img,:where(html[data-motion=reduced]) .sanctuary-pet:focus-visible img){translate:none}.sanctuary-hotspot{z-index:110;cursor:pointer;isolation:isolate;border-radius:12px;min-width:44px;min-height:44px;display:block;position:absolute;box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}.hotspot-wardrobe{width:10.3%;height:18%;top:19%;left:10.2%}.hotspot-pedia{width:6.5%;height:6%;top:28%;left:24%}.hotspot-campfire{width:13%;height:12%;top:33%;left:59.4%}.hotspot-adventure{width:16%;height:26%;top:17%;left:75%}.hotspot-glow{opacity:0;pointer-events:none;-webkit-backdrop-filter:brightness(1.5)saturate(1.25);backdrop-filter:brightness(1.5)saturate(1.25);border-radius:inherit;background:#ffe89b22;transition:opacity .2s;position:absolute;inset:0;box-shadow:inset 0 0 20px #fff1a690,0 0 20px #ffd98580}.hotspot-pedia .hotspot-glow{clip-path:polygon(0 20%,42% 0,54% 10%,82% 5%,100% 88%,60% 100%,47% 85%,15% 90%)}.hotspot-campfire .hotspot-glow{clip-path:polygon(2% 65%,28% 47%,38% 5%,50% 25%,60% 0,70% 47%,96% 65%,100% 90%,65% 100%,20% 94%,0 78%)}.hotspot-adventure .hotspot-glow{clip-path:polygon(0 0,100% 0,100% 88%,87% 100%,87% 14%,14% 14%,14% 100%,0 92%)}.hotspot-label{white-space:nowrap;color:#fff1c6;opacity:0;pointer-events:none;background:#183a30f5;border:1px solid #e8ce88;border-radius:10px;align-items:center;gap:7px;padding:8px 12px;font-size:15px;font-weight:700;transition:opacity .15s,transform .15s;display:flex;position:absolute;bottom:calc(100% + 9px);left:50%;transform:translate(-50%,5px);box-shadow:0 5px 16px #071b2a70}.hotspot-label svg{width:18px;height:18px}.sanctuary-merchant{aspect-ratio:1470/1070;z-index:65;width:19%;bottom:53%;left:40.5%}.sanctuary-merchant>img{object-fit:contain;filter:drop-shadow(0 7px 4px #18302470);pointer-events:none;width:100%;height:100%;transition:filter .2s;display:block}:is(.sanctuary-merchant:hover>img,.sanctuary-merchant:focus-visible>img,.sanctuary-merchant:active>img){filter:drop-shadow(0 0 8px #ffe598)drop-shadow(0 0 16px #ffc968)}@media (prefers-reduced-motion:reduce){.sanctuary-merchant>img{transition:none}}:where(html[data-motion=reduced]) .sanctuary-merchant>img{transition:none}:is(.sanctuary-hotspot:hover .hotspot-glow,.sanctuary-hotspot:focus-visible .hotspot-glow,.sanctuary-hotspot:active .hotspot-glow){opacity:1}:is(.sanctuary-hotspot:hover .hotspot-label,.sanctuary-hotspot:focus-visible .hotspot-label,.sanctuary-hotspot:active .hotspot-label){opacity:1;transform:translate(-50%)}.sanctuary-hotspot:focus-visible{outline-offset:3px;outline:2px solid #ffe1a0!important}@media (prefers-reduced-motion:reduce){.hotspot-glow,.hotspot-label{transition:none}}:where(html[data-motion=reduced]) .hotspot-glow,:where(html[data-motion=reduced]) .hotspot-label{transition:none}.sanctuary-backpack{aspect-ratio:1;z-index:66;width:6.5%;bottom:50%;left:9%}.sanctuary-backpack>img{object-fit:contain;filter:drop-shadow(0 4px 3px #163a2b80);pointer-events:none;width:100%;height:100%;display:block}:is(.sanctuary-backpack:hover>img,.sanctuary-backpack:focus-visible>img){filter:drop-shadow(0 0 7px #ffe598)}.sanctuary-backpack .hotspot-label{left:0;transform:translateY(5px)}:is(.sanctuary-backpack:hover .hotspot-label,.sanctuary-backpack:focus-visible .hotspot-label){transform:translate(0)}.sanctuary-edit-toolbar{color:#f8edc5;background:#193b30;border-bottom:1px solid #9daa7140;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding:10px 16px;display:flex}.sanctuary-edit-toolbar>span{color:#d6e0c6;font-size:13px}.sanctuary-edit-toolbar button{color:#fff3c5;cursor:pointer;background:#294d3b;border:1px solid #9faf80;border-radius:10px;min-height:42px;padding:8px 12px}.sanctuary-edit-toolbar button:disabled{opacity:.5;cursor:wait}.sanctuary-edit-toolbar .save-layout{color:#294832;background:#f5d58a;border-color:#ffe7b1;font-weight:800}.sanctuary-edit-toolbar label{align-items:center;gap:6px;font-size:13px;display:flex}.sanctuary-edit-toolbar select{color:#fff3c5;background:#203f33;border:1px solid #a0af7c;border-radius:8px;max-width:190px;padding:8px}.sanctuary-nudges{gap:4px;display:flex}.sanctuary-nudges button{min-width:42px;font-size:20px}.is-decorating [data-movable]{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;outline-offset:2px;outline:1px dashed #fff9}.is-decorating [data-movable]:active{cursor:grabbing}.is-decorating [data-picked=true]{outline-offset:4px;outline:3px solid #ffe197!important}.is-decorating .sanctuary-pet img{translate:none!important}.is-decorating .hotspot-label{display:none}.is-decorating .sanctuary-world img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.is-decorating .sanctuary-footer,.is-decorating .sanctuary-quest{opacity:.65}.student-navigation{order:0;justify-content:flex-end;margin:0 0 12px;display:flex}.student-menu-toggle{color:#fff0bd;cursor:pointer;background:#214b3d;border:1px solid #c5ba80;border-radius:13px;min-height:44px;padding:10px 18px;font-size:16px;font-weight:800;box-shadow:0 4px 10px #102a2830}.student-menu-toggle:disabled{opacity:.5;cursor:default}.student-menu-popover{color:#fff4d1;background:#193d32;border:1px solid #c7b87f;border-radius:18px;width:min(390px,100vw - 24px);padding:12px;box-shadow:0 15px 35px #0a241c70}.student-menu-popover .student-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0;display:grid}.student-menu-popover .student-nav button{color:#fff4d1;cursor:pointer;background:#284d3b;border:1px solid #779979;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:76px;padding:9px 5px;font-size:12px;font-weight:750;display:flex}.student-menu-popover .student-nav button svg{color:#efcf7f}.student-menu-popover .student-nav button[data-section=My\ Pactlings] svg{color:#72dcc7}.student-menu-popover .student-nav button[data-section=My\ adventurer] svg,.student-menu-popover .student-nav button[data-section=Reward\ Tree] svg{color:#d4a8ef}.student-menu-popover .student-nav button[data-section=Campfire] svg{color:#fa7}.student-menu-popover .student-nav button[data-section=Pactpedia] svg{color:#8fc5ff}.student-menu-popover .student-nav button[aria-current=page]{background:#516342;border-color:#f6dc92}.student-menu-popover button:focus-visible{outline-offset:2px;outline:3px solid #ffe29a}@media (max-width:650px){.sanctuary-edit-toolbar{justify-content:flex-start}.sanctuary-edit-toolbar>span,.sanctuary-edit-toolbar>strong{width:100%}}.sanctuary-stage{position:relative}.sanctuary-floating-menu{z-index:125;position:absolute;top:18px;right:18px}.sanctuary-floating-menu .student-navigation{margin:0}.student-menu-toggle{color:#ffe6a1;background:radial-gradient(circle at 35% 25%,#467c63,#193e32 75%);border:2px solid #f3d991;border-radius:50%;place-items:center;width:60px;height:60px;min-height:60px;padding:0;transition:filter .15s,scale .15s;display:grid;box-shadow:0 4px #102d26,0 7px 18px #061a2870,inset 0 1px 3px #ffffd64a}.student-menu-toggle:hover:not(:disabled){filter:brightness(1.12);scale:1.04}.student-menu-toggle[data-popup-open]{background:#567246}.student-menu-toggle:focus-visible{outline-offset:4px;outline:3px solid #fff5d1}@media (max-width:650px){.sanctuary-floating-menu{top:12px;right:12px}.student-menu-toggle{width:54px;height:54px;min-height:54px}}@media (prefers-reduced-motion:reduce){.student-menu-toggle{transition:none}.student-menu-toggle:hover:not(:disabled){scale:none}}:where(html[data-motion=reduced]) .student-menu-toggle{transition:none}:where(html[data-motion=reduced]) .student-menu-toggle:hover:not(:disabled){scale:none}.sanctuary-floating-menu{right:auto;z-index:125!important}.sanctuary-floating-menu .student-navigation{width:100%;height:100%}.sanctuary-floating-menu .student-menu-toggle{width:100%;height:100%;min-height:0}.is-decorating .sanctuary-floating-menu .student-navigation{pointer-events:none}.is-decorating .sanctuary-floating-menu{touch-action:none;cursor:grab;border-radius:50%}.is-decorating .sanctuary-floating-menu .student-menu-toggle:disabled{opacity:1}.decoration-art{isolation:isolate;pointer-events:none;contain:layout style;display:block;position:relative}.decoration-art>img{object-fit:contain;width:100%;height:100%}.decoration-art .art{position:absolute;inset:0}.decoration-art .art,.decoration-art .effect,.decoration-art .particle-field,.decoration-art .moving,.decoration-art .tethers,.decoration-art .propeller,.decoration-art .planet-space,.decoration-art .curtain{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.decoration-art .art,.decoration-art .moving,.decoration-art .tethers,.decoration-art .curtain{object-fit:contain}.decoration-art .art{z-index:2}.decoration-art .effect,.decoration-art .particle-field,.decoration-art .planet-space{z-index:3}.decoration-art .glow{mix-blend-mode:screen;opacity:.12;animation:8s ease-in-out infinite sanctuary-breathe}.decoration-art .glint{clip-path:polygon(50% 0,60% 38%,100% 50%,60% 62%,50% 100%,40% 62%,0 50%,40% 38%);opacity:0;background:#fff4ce;width:2%;height:2%;animation:9s ease-in-out infinite sanctuary-glint;position:absolute}.decoration-art .particle{left:var(--x);top:var(--y);width:var(--s);height:var(--s);animation:sanctuary-rise var(--d) linear infinite;animation-delay:var(--delay);opacity:0;background:#e7ffc7;border-radius:50%;position:absolute;box-shadow:0 0 5px #e7ffd855}.decoration-art .particle.bubble{background:#ccf8ff20;border:1px solid #d3fdff;box-shadow:inset -1px -1px 2px #87edff}.decoration-art .particle.petal{background:linear-gradient(135deg,#ffe5ef,#e799ba);border-radius:70% 20% 65% 25%;animation-name:sanctuary-fall}.decoration-art .particle.spore{background:#ffffc3}.decoration-art .particle.light-mote{background:#a9fffc}.decoration-art.kind-01 .particle-field{clip-path:ellipse(27% 24% at 50% 39%)}.decoration-art.kind-01 .glow{clip-path:ellipse(27% 24% at 50% 39%);background:radial-gradient(at 49% 40%,#b5ffff55,#0000 32%)}.decoration-art.kind-03 .glow{clip-path:polygon(51% 13%,68% 24%,76% 56%,68% 70%,41% 69%,28% 51%,33% 27%);background:radial-gradient(at 51% 42%,#ffdc61,#0000 41%)}.decoration-art.kind-06 .glow{clip-path:ellipse(36% 13% at 50% 48%);background:radial-gradient(at 50% 48%,#ffee81,#0000 35%)}.decoration-art.kind-07 .glow{clip-path:ellipse(27% 27% at 50% 46%);mix-blend-mode:screen;background:linear-gradient(110deg,#0000 22%,#e392c65e 38%,#94ebd55e 54%,#f7d28c77 68%,#0000 78%);animation:10s ease-in-out infinite sanctuary-weave}.decoration-art.kind-09 .glow{clip-path:ellipse(34% 33% at 50% 43%);mix-blend-mode:screen;background:conic-gradient(from 30deg at 50% 55%,#95ffff22,#ef95ff77,#ffd9f255,#80faf944,#95ffff22);animation:12s ease-in-out infinite sanctuary-aurora}.decoration-art.kind-05 .glow{background:radial-gradient(at 50% 58%,#ffba5250,#0000 30%);animation-duration:11s}.decoration-art.kind-08 .glow{background:radial-gradient(at 50% 44%,#e8d38425,#0000 30%);animation-duration:13s}.decoration-art.kind-04 .art{clip-path:inset(77% 0 0)}.decoration-art.kind-04 .moving{z-index:3;clip-path:inset(0 0 33%);animation:7s ease-in-out infinite sanctuary-airship}.decoration-art.kind-04 .tethers{z-index:2;clip-path:inset(67% 0 23%);transform-origin:50% 77%;animation:7s ease-in-out infinite sanctuary-tethers}.decoration-art .planet{will-change:left,top;border-radius:50%;position:absolute;transform:translate(-50%,-50%);box-shadow:inset -3px -2px 4px #071319a6,0 0 3px #fff8}.decoration-art .planet:after{content:"";background:#ffffff24;border-radius:50%;position:absolute;inset:14% 6% 42%;transform:rotate(-25deg)}.decoration-art .planet.cyan{background:radial-gradient(circle at 28% 25%,#d2f9ed,#398fc1 55%,#183958)}.decoration-art .planet.rose{background:repeating-linear-gradient(170deg,#d57e6e 0 10%,#e6ba8970 10% 21%),radial-gradient(circle at 28% 25%,#f9deb8,#9a5439)}.decoration-art .planet.violet{background:radial-gradient(circle at 30% 25%,#edccfa,#9a69c2 55%,#473365)}.decoration-art .planet-mask{z-index:4;clip-path:ellipse(7.2% 8.4% at 50% 42%)}.decoration-art.paused .particle,.decoration-art.paused .glint{display:none}.decoration-art.paused .moving,.decoration-art.paused .tethers,.decoration-art.paused .curtain{animation:none!important;transform:none!important}.decoration-art.suspended *{animation-play-state:paused!important}@keyframes sanctuary-breathe{0%,to{opacity:.03}50%{opacity:.22}}@keyframes sanctuary-glint{0%,76%,to{opacity:0;transform:scale(.3)}80%{opacity:.75;transform:scale(1.1)}86%{opacity:0;transform:scale(.4)}}@keyframes sanctuary-rise{0%{opacity:0;transform:translate(0)scale(.6)}12%{opacity:.65}80%{opacity:.45}to{opacity:0;transform:translate(8px,-62px)scale(1)}}@keyframes sanctuary-fall{0%{opacity:0;transform:translateY(-4px)rotate(0)}15%{opacity:.85}85%{opacity:.5}to{opacity:0;transform:translate(26px,90px)rotate(120deg)}}@keyframes sanctuary-airship{0%,to{transform:translateY(0)}50%{transform:translateY(-.6%)}}@keyframes sanctuary-tethers{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.06)}}@keyframes sanctuary-weave{0%,to{opacity:.08;transform:translate(-.4%)}50%{opacity:.24;transform:translate(.4%)}}@keyframes sanctuary-aurora{0%,to{opacity:.12;filter:hue-rotate(-12deg);transform:scaleX(.99)}50%{opacity:.3;filter:hue-rotate(12deg);transform:scaleX(1.01)}}@keyframes sanctuary-leaf-sway{0%,to{transform:rotate(-.4deg)}50%{transform:rotate(.4deg)}}.decoration-art .glint{z-index:5}.decoration-art .curtain{z-index:3}.decoration-art .front-space{z-index:5}.decoration-art .flying,.decoration-art .airship-hull,.decoration-art .rotor{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.decoration-art .flying{z-index:3;animation:7s ease-in-out infinite sanctuary-airship}.decoration-art .rotor{clip-path:inset(15% 0 59% 88%);transform-origin:90% 27.5%;animation:6s linear infinite sanctuary-rotor-spin}.decoration-art.paused .flying,.decoration-art.paused .rotor{animation:none!important;transform:none!important}@keyframes sanctuary-rotor-spin{0%{transform:scaleX(.38)rotate(0)scaleX(2.63158)}to{transform:scaleX(.38)rotate(360deg)scaleX(2.63158)}}.decoration-art .airship-hull{clip-path:inset(0 0 33%)}.decoration-art .rotor{transform-origin:90.5% 27.3%;animation-name:sanctuary-balanced-rotor-spin}@keyframes sanctuary-balanced-rotor-spin{0%{transform:scaleX(.6)rotate(0)scaleX(1.66667)}to{transform:scaleX(.6)rotate(360deg)scaleX(1.66667)}}.decoration-art .orbit-tracks{visibility:hidden;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.decoration-art .planet-mask{clip-path:ellipse(6.8% 6.7% at 50% 42.4%)}.decoration-art .spindle-mask{z-index:4;clip-path:polygon(49.3% 25.7%,50.7% 25.7%,50.7% 31.2%,52% 31.6%,52% 33.7%,50.7% 34%,50.7% 36.2%,49.3% 36.2%,49.3% 34%,48.6% 33.7%,48.6% 31.7%,49.3% 31.2%)}.decoration-art .feature-motion{pointer-events:none;z-index:4;width:100%;height:100%;position:absolute;inset:0}.decoration-art .motion-surface{mix-blend-mode:screen;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.decoration-art .flow-lines{overflow:visible}.decoration-art .flow-lines path{fill:none;stroke:var(--flow-color);stroke-width:.8px;stroke-linecap:round;stroke-dasharray:12 70;animation:3.6s linear infinite sanctuary-thread-flow;animation-delay:var(--flow-delay);filter:drop-shadow(0 0 .45px #fff)}.decoration-art .mote-flight{animation:sanctuary-feature-drift var(--duration) linear infinite;animation-delay:var(--delay);opacity:0;position:absolute;inset:0}.decoration-art .feature-mote{left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;position:absolute}.decoration-art .feature-mote.tide-bubble{background:radial-gradient(circle at 28% 25%,#fff 0 13%,#b6faff50 25%,#075f8120 58%,#b8ffffaa 72%);border:1px solid #dff;box-shadow:0 0 0 1px #0a597b88,inset -1px -1px 1px #126e89a6,0 0 4px #bdfaffaa}.decoration-art .feature-mote.amber-spark{clip-path:polygon(50% 0,64% 35%,100% 50%,64% 65%,50% 100%,35% 65%,0 50%,35% 35%);background:#fff0a0}.decoration-art .feature-mote.gold-spore{background:radial-gradient(circle at 35% 30%,#ffffe8,#ffe47b 44%,#b66c2480);border:1px solid #926320aa;box-shadow:0 0 5px #fff0aaba}.decoration-art .feature-mote.holo-mote{background:linear-gradient(135deg,#fff 5%,#bfffff 35%,#df9dfa 90%);border:1px solid #6458b390;border-radius:25%;transform:rotate(45deg);box-shadow:0 0 4px #80f7ff}.decoration-art.kind-01 .feature-cloud{clip-path:ellipse(28% 23% at 50% 39%)}.decoration-art.kind-03 .feature-cloud{clip-path:polygon(48% 15%,63% 26%,72% 57%,65% 69%,41% 68%,28% 50%,34% 29%)}.decoration-art.kind-06 .feature-cloud{clip-path:inset(30% 3% 9%)}.decoration-art.kind-09 .feature-cloud{clip-path:inset(9% 9% 20%)}.decoration-art.kind-01 .glow{background:radial-gradient(at 50% 40%,#71ffffbb,#0000 36%);animation:4s ease-in-out infinite sanctuary-readable-pulse}.decoration-art.kind-03 .glow{background:radial-gradient(at 51% 44%,#ffe896 8%,#ffae24a8 30%,#0000 44%);animation:3.8s ease-in-out infinite sanctuary-amber-heartbeat}.decoration-art .amber-sweep{opacity:.65;background:linear-gradient(115deg,#0000 36%,#ffec9180 43%,#fff7d1dd 49%,#ffbb5155 56%,#0000 64%) 0 0/300% 100%;animation:4s ease-in-out infinite sanctuary-amber-pass}.decoration-art .crystal-iridescence{mix-blend-mode:multiply;opacity:.52;background:linear-gradient(115deg,#f991b5 0%,#ffdb86 14%,#b6ed96 28%,#71e4f5 43%,#ab9df9 58%,#ec9ae4 73%,#ffdb86 88%,#f991b5 100%) 0 0/260% 180%;animation:6s ease-in-out infinite sanctuary-crystal-shimmer}.decoration-art .crystal-facet-light{mix-blend-mode:screen;opacity:.26;background-color:#0000;background-image:radial-gradient(at 25% 35%,snow 0%,#f3d9ff80 14%,#0000 36%),radial-gradient(at 75% 60%,#d2ffffb0 0%,#0000 32%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:180% 140%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;animation:6s ease-in-out infinite sanctuary-crystal-facet-light}.decoration-art .acorn-firefly-cloud .mote-flight{animation-name:sanctuary-firefly-wander;animation-duration:calc(var(--duration) * 2);animation-delay:calc(var(--delay) * 3)}.decoration-art .feature-mote.acorn-firefly{width:1.5%;height:1.5%;animation:2.8s ease-in-out infinite sanctuary-firefly-light;animation-delay:var(--delay);background:radial-gradient(circle,#fffad0 15%,#f8e986 45%,#bce45f66 68%,#0000 75%);box-shadow:0 0 6px #d9f083aa}.decoration-art.kind-09 .glow{opacity:0;animation:none}.decoration-art .hologram-band{mix-blend-mode:multiply;opacity:.7;background:linear-gradient(165deg,#db95ff25 15%,#8e38e4 30%,#19edf3 43%,#fff9ff 48%,#fd77df 53%,#9654e7 67%,#64eaff25 82%) 0 0/100% 260%;animation:4.6s ease-in-out infinite sanctuary-hologram-pass}.decoration-art .hologram-currents path{stroke-width:.85px;stroke-dasharray:10 60;filter:drop-shadow(0 0 .6px #fff);animation-duration:3.2s}.decoration-art:is(.kind-01,.kind-03,.kind-06,.kind-07,.kind-09) .glint{filter:drop-shadow(0 0 3px #fff);background:#fff9db;width:3.6%;height:3.6%;animation:3.4s ease-in-out infinite sanctuary-bright-glint}.decoration-art.kind-07 .glint{filter:drop-shadow(0 0 1px #d6e3ff);background:#f4f5ff;width:2.2%;height:2.2%;animation:6s ease-in-out infinite sanctuary-crystal-glint}.decoration-art.paused .feature-motion{display:none}.decoration-art.paused .glow{opacity:0;animation:none}@keyframes sanctuary-feature-drift{0%{opacity:0;transform:translate(0)}10%{opacity:.95}75%{opacity:.9}to{opacity:0;transform:translate(var(--drift),var(--travel))}}@keyframes sanctuary-thread-flow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-164px}}@keyframes sanctuary-readable-pulse{0%,to{opacity:.14}50%{opacity:.62}}@keyframes sanctuary-amber-heartbeat{0%,to{opacity:.1}45%{opacity:.74}70%{opacity:.32}}@keyframes sanctuary-bright-glint{0%,65%,to{opacity:0;transform:scale(.45)}20%,35%{opacity:1;transform:scale(1.3)}50%{opacity:.4;transform:scale(.8)}}@keyframes sanctuary-amber-pass{0%{opacity:0;background-position:100% 0}20%,70%{opacity:.65}to{opacity:0;background-position:0 0}}@keyframes sanctuary-crystal-shimmer{0%,to{opacity:.42;background-position:0 20%}50%{opacity:.62;background-position:100% 80%}}@keyframes sanctuary-crystal-facet-light{0%,to{opacity:.12;background-position:100% 20%}50%{opacity:.4;background-position:0 80%}}@keyframes sanctuary-crystal-glint{0%,60%,to{opacity:0;transform:scale(.35)}73%{opacity:.6;transform:scale(.95)}85%{opacity:.12;transform:scale(.5)}}@keyframes sanctuary-canopy-sway{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}@keyframes sanctuary-firefly-wander{0%,to{opacity:.45;transform:translate(-3%,3%)}25%{opacity:.9;transform:translate(4%,-4%)}50%{opacity:.65;transform:translate(6%,1%)}75%{opacity:.95;transform:translate(-2%,-3%)}}@keyframes sanctuary-firefly-light{0%,to{opacity:.4;transform:scale(.7)}50%{opacity:1;transform:scale(1.1)}}@keyframes sanctuary-hologram-pass{0%,to{opacity:.48;background-position:0 100%}50%{opacity:.82;background-position:0 0}}.decoration-art.paused .art{clip-path:none;-webkit-mask:none;mask:none}.sanctuary-collection-dialog{border-radius:22px;max-height:90dvh;padding:24px;overflow-y:auto;color:#fff3d6!important;background:#173d32!important;border:1px solid #a4b387!important;width:min(840px,100vw - 24px)!important;max-width:840px!important}.sanctuary-collection-dialog [data-slot=dialog-description]{color:#d0e1cd}.sanctuary-collection-dialog button{color:#fff3d6;cursor:pointer;background:#315943;border:1px solid #95ad83;border-radius:10px;min-height:44px;padding:9px 12px}.sanctuary-collection-dialog button:disabled{opacity:.5;cursor:wait}.sanctuary-collection-dialog button:focus-visible{outline-offset:3px;outline:3px solid #ffe49f}.sanctuary-collection-dialog>button[data-slot=dialog-close]{background:0 0;border:0;min-height:32px}.collection-tabs{border-bottom:1px solid #718968;flex-wrap:wrap;gap:8px;padding-bottom:14px;display:flex}.collection-tabs button{flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.collection-tabs button[aria-pressed=true],.sanctuary-collection-dialog .collection-confirm{color:#203e2b;background:#f2d28c;border-color:#ffe4a1;font-weight:800}.collection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.collection-grid>article,.collection-grid>button{text-align:left;background:#274c3b;border:1px solid #7b966d;border-radius:14px;flex-direction:column;align-items:stretch;gap:6px;min-width:0;padding:12px;display:flex}.collection-grid img{aspect-ratio:1;object-fit:contain;background:radial-gradient(#51684a,#294c3b);border-radius:10px;width:100%;min-height:0}.collection-grid.backgrounds img{aspect-ratio:16/9;object-fit:cover}.collection-grid h3,.collection-grid strong{color:#fff2cc;margin:0;font-size:15px;line-height:1.3}.collection-grid small{color:#d1e4cb;align-items:center;gap:5px;font-size:12px;display:flex}.collection-grid article>button{margin-top:auto}.collection-grid>button>span{color:#f4d497;margin-top:auto;font-size:13px}.collection-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.collection-summary label,.collection-reward-select{align-items:center;gap:8px;display:flex}.sanctuary-collection-dialog select{color:#fff3d6;background:#264c3b;border:1px solid #98ab7d;border-radius:9px;max-width:100%;min-height:44px;padding:7px}.collection-empty{text-align:center;justify-items:center;gap:12px;padding:32px 12px;display:grid}.collection-empty h3,.collection-empty p{margin:0}.collection-empty svg{color:#ebd593}.collection-note{color:#d0dfc8;font-size:13px}.collection-preview{gap:16px;display:grid}.collection-preview>button:first-child{justify-self:start}.collection-set-preview{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.collection-set-preview figure{background:#2e503d;border-radius:12px;margin:0;padding:8px}.collection-set-preview .decoration-art{aspect-ratio:1;width:100%}.collection-set-preview figcaption{text-align:center;color:#fff3d6;font-size:12px}.collection-background-preview{aspect-ratio:1672/941;object-fit:cover;border-radius:14px;width:100%}.sanctuary-decoration{pointer-events:none;background:0 0;border:0;padding:0;position:absolute}.sanctuary-stage{isolation:isolate}.is-decorating .sanctuary-decoration{pointer-events:auto;border-radius:12px}.sanctuary-decoration .decoration-art{width:100%;height:100%}.sanctuary-edit-toolbar .decoration-count{color:#264532;background:#fae098}@media (max-width:550px){.sanctuary-collection-dialog{padding:18px}.collection-grid,.collection-set-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-reward-select{flex-direction:column;align-items:stretch}.collection-tabs button{padding:8px;font-size:12px}.collection-summary label{width:100%}}.xp-gift-name{overflow-wrap:anywhere;min-width:0}.xp-gift-progress{color:#526657;font-variant-numeric:tabular-nums;grid-column:1/-1;gap:4px;min-width:0;padding:0 2px 2px;font-size:12px;line-height:1.3;display:grid}.xp-gift-progress-label{flex-wrap:wrap;justify-content:space-between;gap:2px 10px;display:flex}.xp-gift-progress-label>span:last-child{color:#314c3a;font-weight:700}.xp-gift-progress.has-preview .xp-gift-progress-label>span:first-child{color:#805810;font-weight:700}.xp-gift-progress-track{background:#e5ecdf;border-radius:8px;height:8px;position:relative;overflow:hidden}.xp-gift-progress-track>span{transition:width .15s,left .15s;display:block;position:absolute;top:0;bottom:0}.xp-gift-progress-saved{background:#377d58;left:0}.xp-gift-progress-added{background:repeating-linear-gradient(120deg,#c18b26 0 5px,#e4b449 5px 10px)}.xp-gift-progress-caption{color:#526657}@media (prefers-reduced-motion:reduce){.xp-gift-progress-track>span{transition:none}}:where(html[data-motion=reduced]) .xp-gift-progress-track>span{transition:none}.xp-gift-dialog.evolution-dialog{color:#fff6df;background:radial-gradient(at 50% 55%,#315d64 0%,#162c43 48%,#101b2d 100%);border:2px solid #c7aa64;width:min(680px,100vw - 24px);max-width:680px;padding:0;overflow-x:hidden}.evolution-reveal{text-align:center;isolation:isolate;padding:30px 24px 24px}.evolution-eyebrow{text-transform:uppercase;letter-spacing:.18em;color:#dfc991;margin-bottom:12px;font-size:11px;display:block}.evolution-reveal h2{color:#fff6df;font-family:Georgia,serif;font-size:clamp(24px,4vw,34px);line-height:1.15}.evolution-reveal [data-slot=dialog-description]{color:#c7dadd;max-width:450px;margin:12px auto 0}.evolution-stage{isolation:isolate;width:min(100%,440px);height:clamp(220px,38vh,340px);margin:12px auto;position:relative}.evolution-stage img{object-fit:contain;z-index:3;filter:drop-shadow(0 10px 12px #07132390);width:80%;height:82%;transition:opacity .65s,transform .9s,filter 1.3s;position:absolute;inset:8% 10% 10%}.evolution-after{opacity:0;transform:scale(.65)}.evolution-aura{opacity:.4;background:radial-gradient(circle,#c0fff866,#0000 68%);border-radius:50%;transition:opacity 2s,transform 2s;position:absolute;inset:5%}.evolution-ground{z-index:1;background:#64d6bb25;border:1px solid #e5d29899;border-radius:50%;width:70%;height:12%;position:absolute;bottom:5%;left:15%;box-shadow:0 0 35px #a6f2ca44}.evolution-orbit{opacity:.3;border:1px solid #f0d79070;border-radius:50%;position:absolute;inset:8%;transform:rotate(-25deg)scaleY(.65)}.evolution-orbit.two{inset:12%;transform:rotate(40deg)scaleY(.8)}.evolution-particles{z-index:4;pointer-events:none;position:absolute;inset:0}.evolution-particles i{color:#f9df92;opacity:0;transform:rotate(var(--angle)) translateY(-100px);font-size:16px;font-style:normal;position:absolute;top:50%;left:50%}.growing .evolution-before{filter:brightness(0)invert()drop-shadow(0 0 18px #bfffe7);transform:scale(1.04)}.growing .evolution-aura{opacity:1;transform:scale(1.15)}.growing .evolution-particles i{animation:bond-gather 2s var(--delay) infinite ease-in-out}.revealed .evolution-before{opacity:0;transform:scale(.8)}.revealed .evolution-after{opacity:1;filter:drop-shadow(0 0 16px #b9f6d766);transform:scale(1)}.revealed .evolution-aura{opacity:.8;transform:scale(1.05)}.revealed .evolution-particles i{animation:bond-bloom 1.6s var(--delay) both ease-out}.evolution-caption{color:#e8ddb9;min-height:24px;font-size:14px}.evolution-reveal .primary{border:1px solid #ffefbb;min-width:220px;min-height:46px;margin-top:12px;color:#243845!important;background:#efd28a!important}.evolution-reveal .evolution-skip{color:#d1dbdc;background:0 0;border:1px solid #6c8692;min-height:46px;margin-top:12px}.evolution-sound-controls{color:#c8d9dc;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-top:16px;font-size:12px;display:flex}.evolution-sound-controls button{color:#e5ede7;min-height:36px;font:inherit;cursor:pointer;background:0 0;border:1px solid #6c8692;border-radius:8px;padding:6px 12px}.evolution-sound-controls label{align-items:center;gap:8px;display:flex}.evolution-sound-controls input{accent-color:#efd28a;width:100px}.evolution-sound-controls :focus-visible{outline-offset:3px;outline:2px solid #efd28a}.evolution-sound-message{color:#c8d9dc;margin:8px 0 0;font-size:11px}@keyframes bond-gather{0%{opacity:0;transform:rotate(var(--angle)) translateY(-150px) scale(.4)}40%{opacity:.85}to{opacity:0;transform:rotate(calc(var(--angle) + 40deg)) translateY(-25px) scale(.8)}}@keyframes bond-bloom{0%{opacity:.9;transform:rotate(var(--angle)) translateY(-50px) scale(.5)}to{opacity:0;transform:rotate(var(--angle)) translateY(-170px) scale(1.2)}}@media (prefers-reduced-motion:reduce){.evolution-stage *{transition:none!important;animation:none!important}.evolution-particles{display:none}}:where(html[data-motion=reduced]) .evolution-stage *{transition:none!important;animation:none!important}:where(html[data-motion=reduced]) .evolution-particles{display:none}.level-up-dialog.level-up-celebration-dialog{font-family:var(--font-geist-sans,ui-sans-serif),system-ui,sans-serif;scrollbar-gutter:stable;color:#edf2ff;text-align:center;background:radial-gradient(at 50% 26%,#34436955,#0000 65%),linear-gradient(140deg,#1c2942,#151e34);border:1px solid #596786;border-radius:24px;flex-direction:column;gap:0;width:min(480px,100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:0;display:flex;overflow:hidden auto;box-shadow:0 25px 70px #0005}.level-up-celebration{flex-shrink:0;min-height:0;padding:18px 24px 12px;overflow:visible}.level-up-heading .level-up-eyebrow{letter-spacing:2px;text-transform:uppercase;color:#e9ca85;margin:0 0 7px;font-size:10px;font-weight:750}.level-up-heading [data-slot=dialog-title]{color:#edf2ff;overflow-wrap:anywhere;margin:0;font-size:clamp(21px,4.8vw,27px);font-weight:800;line-height:1.15}.level-up-heading [data-slot=dialog-description]{color:#bac7de;margin:8px 0 0;font-size:13px}.level-up-stage{place-items:center;width:210px;max-width:100%;height:172px;margin:8px auto;display:grid;position:relative}.level-up-celebration .level-up-portrait{object-fit:contain;width:100%;height:calc(100% - 10px);image-rendering:pixelated;filter:drop-shadow(0 12px 8px #0005);margin:0;position:absolute;top:0;left:0}.level-up-halo{pointer-events:none;background:radial-gradient(circle,#82d7b92b,#0000 70%);border-radius:50%;width:155px;height:155px;position:absolute}.level-up-badge{white-space:nowrap;color:#edf2ff;background:#25334f;border:1px solid #7083a2;border-radius:20px;padding:5px 15px;font-size:12px;font-weight:750;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.level-up-spark{color:#f4d894;opacity:0;pointer-events:none;z-index:1;position:absolute}.spark-one{font-size:23px;top:30px;left:16px}.spark-two{font-size:17px;top:60px;right:13px}.spark-three{font-size:18px;bottom:35px;left:40px}.level-up-celebration[data-phase=leveled] .level-up-spark{animation:.7s both level-reward-spark}.level-up-celebration[data-phase=learned] .level-up-spark{animation:.7s both level-move-spark}.level-up-celebration .spark-two{animation-delay:.12s}.level-up-celebration .spark-three{animation-delay:.2s}.level-up-celebration[data-phase=leveled] .level-up-portrait{animation:.5s both level-reward-hop}.level-up-celebration:not([data-phase=filling]) .level-up-halo{background:radial-gradient(circle,#e3c67755,#0000 70%)}.level-up-progress{color:#bac7de;flex-wrap:wrap;justify-content:space-between;gap:6px;margin:8px 0 14px;font-size:11px;display:flex}.level-up-progress strong{color:#edf2ff}.level-up-progress-track{background:#080f23;border:1px solid #485b79;border-radius:8px;flex-basis:100%;height:9px;overflow:hidden}.level-up-progress-track i{transform-origin:0;background:linear-gradient(90deg,#45a69d,#b7f2c0);width:100%;height:100%;display:block;box-shadow:0 0 8px #a3ffcd99}.level-up-celebration[data-phase=filling] .level-up-progress-track i{animation:level-reward-fill var(--level-fill-time,1.05s) linear both}.level-up-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;display:grid}.level-up-stat-grid>div{background:#0c142a99;border:1px solid #35435e;border-radius:10px;padding:10px 2px}.level-up-stat-grid dt{color:#bac7de;font-size:11px}.level-up-stat-grid dd{gap:4px;margin:4px 0 0;display:grid}.level-up-stat-grid strong{color:#edf2ff;font-size:21px;line-height:1.2}.level-up-stat-grid .level-up-gain{color:#adf1bf;font-size:12px;font-weight:750}.level-up-celebration[data-phase=filling] .level-up-gain{opacity:0}.level-up-celebration[data-phase=leveled] .level-up-gain{animation:.3s both level-gain-reveal}.level-up-total{color:#bac7de;margin:9px 0 0;font-size:12px}.level-up-celebration .level-up-new-moves{text-align:left;color:#edf2ff;visibility:hidden;background:#b995ef0f;border:1px solid #8270a7;border-radius:12px;align-items:flex-start;gap:12px;margin:14px 0 0;padding:12px;display:flex}.level-up-celebration .level-up-new-moves[data-revealed=true]{visibility:visible}.level-up-celebration[data-phase=learned] .level-up-new-moves{animation:.42s both level-move-reveal}.level-up-move-star{color:#d0b6ff;flex-shrink:0;font-size:25px;line-height:1}.level-up-new-moves>div{min-width:0}.level-up-new-moves h3{letter-spacing:1.2px;text-transform:uppercase;color:#ddc8ff;margin:0 0 6px;font-size:10px}.level-up-new-moves ul{margin:0;padding:0;list-style:none}.level-up-new-moves li+li{border-top:1px solid #66577e;margin-top:10px;padding-top:10px}.level-up-new-moves li strong{overflow-wrap:anywhere;font-size:15px}.level-up-new-moves li>span{color:#d0b6ff;margin-left:8px;font-size:11px}.level-up-new-moves li p{color:#c1cbe1;overflow-wrap:anywhere;margin:4px 0 0;font-size:12px;line-height:1.45}.level-up-new-moves small{color:#b9c3df;margin-top:8px;font-size:11px;line-height:1.4}.level-up-footer{background:#151e34;border-top:1px solid #35435e;flex-shrink:0;padding:14px 26px 18px}.level-up-footer .level-up-continue{color:#182235;width:100%;min-height:42px;box-shadow:none;cursor:pointer;background:#f0ce89;border:1px solid #f0ce89;border-radius:12px;padding:10px 14px;font-size:14px;font-weight:800}.level-up-footer .level-up-continue:hover:not(:disabled){background:#ffe3a6}.level-up-footer .level-up-continue:disabled{opacity:.55;cursor:wait}.level-up-footer :focus-visible{outline-offset:3px;outline:3px solid #ffe3a6}@keyframes level-reward-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes level-reward-hop{50%{transform:translateY(-10px)}}@keyframes level-reward-spark{0%{opacity:0;transform:scale(.5)}40%{opacity:1}to{opacity:0;transform:translateY(-18px)scale(1.2)}}@keyframes level-move-spark{0%{opacity:0;transform:scale(.5)}40%{opacity:1}to{opacity:0;transform:translateY(-18px)scale(1.2)}}@keyframes level-gain-reveal{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes level-move-reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (max-width:420px){.level-up-celebration{padding:14px 16px 12px}.level-up-footer{padding:12px 16px 14px}.level-up-stat-grid{gap:4px}}@media (max-height:740px){.level-up-celebration{padding-top:14px}.level-up-stage{height:140px;margin:6px auto}.level-up-halo{width:125px;height:125px}.level-up-stat-grid>div{padding:7px 2px}.level-up-progress{margin:6px 0 10px}.level-up-footer{padding-top:10px;padding-bottom:12px}}@media (max-height:650px){.level-up-stage{height:110px;margin:4px auto}.level-up-halo{width:100px;height:100px}.level-up-celebration .level-up-new-moves{margin-top:10px;padding:10px}.level-up-celebration{padding-top:10px;padding-bottom:10px}}@media (max-width:360px){.level-up-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.level-up-new-moves li>span{margin-left:0;display:block}.level-up-celebration{padding-inline:12px}}@media (forced-colors:active){.level-up-dialog.level-up-celebration-dialog,.level-up-stat-grid>div,.level-up-badge,.level-up-celebration .level-up-new-moves,.level-up-footer{color:canvastext;background:canvas;border-color:canvastext}.level-up-dialog.level-up-celebration-dialog :is(h2,h3,p,small,dt,dd,strong,span){color:canvastext}.level-up-footer .level-up-continue{color:buttontext;background:buttonface;border-color:buttontext}.level-up-progress-track i{background:highlight}}@media (prefers-reduced-motion:reduce){.level-up-celebration *{transition:none!important;animation:none!important}.level-up-celebration .level-up-gain{opacity:1}.level-up-celebration .level-up-progress-track i{transform:none}.level-up-celebration .level-up-new-moves{visibility:visible}}:where(html[data-motion=reduced]) .level-up-celebration *{transition:none!important;animation:none!important}:where(html[data-motion=reduced]) .level-up-celebration .level-up-gain{opacity:1}:where(html[data-motion=reduced]) .level-up-celebration .level-up-progress-track i{transform:none}:where(html[data-motion=reduced]) .level-up-celebration .level-up-new-moves{visibility:visible}.student-shell{--student-ink:#15374b;--student-teal:#087f85;--student-yellow:#ffcf56;min-height:100vh;color:var(--student-ink);font-family:var(--font-geist-sans),sans-serif;background:radial-gradient(at 95% 5%,#b5edf280,#0000 48%),radial-gradient(at 2% 90%,#c7dfef80,#0000 45%),#f0f8fc}.student-shell .student-header{color:#fff;background:#123f53;border-bottom:4px solid #50c6b3;flex-wrap:wrap;gap:20px;padding:18px max(22px,50vw - 660px);box-shadow:0 4px 18px #183f5315}.student-shell .student-header .brand{color:#fff;letter-spacing:-.6px;white-space:nowrap;font-size:23px}.student-shell .student-header .brand svg{color:#173d4c;background:#ffcf56;border-radius:13px;width:40px;height:40px;padding:7px;transform:rotate(-8deg)}.student-shell .student-header>span{color:#cde7ed;font-size:14px}.student-shell .student-header .text-button{color:#fff;font-size:14px}.student-wallet{gap:8px;margin-left:auto;display:flex}.student-wallet>span{white-space:nowrap;border:1px solid #628393;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:14px;font-weight:700;display:flex}.student-wallet>span:last-child{color:#ffdf7d;background:#244e58;border-color:#b49c51}.student-shell .student-main{max-width:1364px;margin:auto;padding:22px}.student-shell .global-status:empty{display:none}.student-shell .global-status:not(:empty){color:#17484d;background:#e0f6f3;border:1px solid #73b9c0;border-radius:14px;margin-bottom:16px}.student-shell .student-nav{background:0 0;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 26px;padding:0;display:grid;overflow:visible}.student-shell .student-nav button{color:#34566b;white-space:normal;background:#fff;border:2px solid #d3e5ee;border-radius:18px;justify-content:center;align-items:center;gap:9px;min-height:66px;padding:12px 8px;font-size:15px;font-weight:750;transition:transform .15s,border-color .15s;display:flex;box-shadow:0 4px #d7e7ef}.student-shell .student-nav button:nth-child(2) svg{color:#9861b9}.student-shell .student-nav button:nth-child(3) svg{color:#008b83}.student-shell .student-nav button:nth-child(4) svg{color:#ce880e}.student-shell .student-nav button:nth-child(5) svg{color:#357cd0}.student-shell .student-nav button:nth-child(6) svg{color:#d5713b}.student-shell .student-nav button[aria-current=page]{color:#fff;background:#126875;border-color:#126875;box-shadow:0 4px #104655}.student-shell .student-nav button[aria-current=page] svg{color:#ffde7b}.student-shell .student-nav button:hover{border-color:#5cb8b4;transform:translateY(-2px)}:is(.student-shell button:focus-visible,.student-shell a:focus-visible){outline-offset:4px;outline:3px solid #257ab6}.student-content{animation:.22s ease-out student-enter}.home-topline{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.student-kicker{letter-spacing:2px;color:#13787a;font-size:12px;font-weight:800}.home-topline h1{letter-spacing:-1px;margin:5px 0;font-size:clamp(28px,3vw,40px);font-weight:850}.home-topline p{color:#4d687a;margin:0;font-size:16px}.student-guild{color:#665027;background:#fff0c0;border:1px solid #e7cf85;border-radius:999px;align-items:center;gap:8px;padding:10px 15px;font-size:14px;font-weight:700;display:flex}.home-feature-grid{grid-template-columns:1fr 1.12fr;gap:22px;display:grid}.home-trainer{background:linear-gradient(150deg,#dbf8ee,#bde6f5);border:2px solid #9ed7d9;border-radius:26px;min-width:0;position:relative;overflow:hidden;box-shadow:0 6px #cce4ed}.home-card-label{color:#2c6066;align-items:center;gap:8px;padding:17px 22px;font-size:14px;font-weight:700;display:flex}.home-trainer .avatar-stage.compact{background:0 0;border:0;border-radius:0;height:310px;min-height:310px;margin:0}.home-trainer .stage-caption{display:none}.home-dress{color:#20576a;cursor:pointer;background:#ffffffb8;border:0;border-top:1px solid #aed5db;justify-content:center;align-items:center;gap:12px;width:100%;padding:15px;font-size:16px;font-weight:750;display:flex;position:relative}.home-dress:hover{background:#fff}.home-adventure{background:#fff;border:2px solid #c6dce6;border-radius:26px;overflow:hidden;box-shadow:0 6px #d6e7ef}.home-map-art{color:#fff;background-position:50%;background-size:cover;flex-direction:column;justify-content:space-between;min-height:230px;padding:20px 24px;display:flex}.home-map-tag{background:#123e4be0;border:1px solid #93baae;border-radius:999px;align-self:flex-start;align-items:center;gap:7px;padding:7px 12px;font-size:13px;display:flex}.home-map-art h2{text-shadow:0 2px 6px #102531;margin:35px 0 0;font-size:26px;font-weight:800;line-height:1.2}.home-adventure-body{gap:12px;padding:18px 24px;display:grid}.home-adventure-body p{color:#486778;margin:0;font-size:15px}.home-progress-label{color:#4e6d7a;justify-content:space-between;font-size:13px;display:flex}.home-adventure [data-slot=progress-track]{background:#e5f0f4;height:9px}.home-adventure [data-slot=progress-indicator]{background:#219c8e}.student-shell .primary{color:#fff;background:#126b79;border:1px solid #0e5b6e;border-radius:13px;min-height:44px;font-weight:750;box-shadow:0 3px #0f495f}.student-shell .primary:hover{background:#0e5969}.home-adventure .primary{color:#493814;background:#ffd364;border:1px solid #e9bc4b;justify-content:center;box-shadow:0 3px #d1a338}.home-adventure .primary:hover{background:#ffdd86}.home-team{margin:28px 0}.home-section-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.home-section-title h2{align-items:center;gap:9px;margin:0;font-size:21px;font-weight:800;display:flex}.home-section-title button{color:#146d7c;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;font-size:14px;font-weight:750;display:flex}.home-team-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;display:grid}.home-team-grid>button{color:#214d5e;cursor:pointer;background:#fff;border:2px solid #c9e2e6;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:176px;transition:transform .15s;display:flex;position:relative;box-shadow:0 4px #d9e7ef}.home-team-grid>button:hover{border-color:#43aaa0;transform:translateY(-4px)}.home-team-grid>button:first-child.filled{background:#fff9df;border-color:#deb94b}.home-team-grid img{object-fit:contain;width:100%;height:100px}.home-team-grid strong{font-size:15px}.home-team-grid small{color:#53717c;font-size:12px}.home-team-grid .empty{box-shadow:none;color:#9bb6c1;background:#e9f3f8;border-style:dashed}.home-slot-number{color:#6b8a95;font-size:12px;position:absolute;top:8px;left:10px}.home-destinations{grid-template-columns:1fr 1fr;gap:20px;display:grid}.home-destinations>button{text-align:left;color:#254d76;cursor:pointer;background:#deefff;border:2px solid #bddbed;border-radius:22px;align-items:center;gap:20px;padding:16px 22px;display:flex;overflow:hidden}.home-destinations>button img{object-fit:contain;width:112px;height:112px;transition:transform .2s}.home-destinations>button:hover img{transform:rotate(-5deg)scale(1.08)}.home-destinations>button>span{flex:1;gap:5px;display:grid}.home-destinations strong{font-size:20px}.home-destinations small{font-size:14px}.home-destinations .destination-campfire{color:#7b4b2d;background:#fff0d8;border-color:#e9cd9b}.home-encounter{color:#634b18;cursor:pointer;text-align:left;background:#ffe9a8;border:2px solid #dfb647;border-radius:16px;align-items:center;gap:14px;width:100%;margin:0 0 20px;padding:14px 20px;display:flex}.home-encounter>span{flex:1;gap:3px;display:grid}.home-encounter small{font-size:14px}.student-shell .panel{border:2px solid #d0e3ec;border-radius:20px;box-shadow:0 4px #dceaf1}.student-shell .section-head h2,.student-shell .pactpedia-heading h2{color:#194d63}.student-shell .wardrobe-preview{background:#e1f3f4;border-color:#acd6da}.student-shell .wardrobe-tabs [data-slot=tabs-list]{background:#e7edf8;border-radius:14px;padding:5px}.student-shell .wardrobe-tabs [data-slot=tabs-trigger][data-active],.student-shell .storage-tabs [data-slot=tabs-trigger][data-active]{color:#fff;background:#176e7a;border-radius:10px}.student-shell .style-field{border-color:#c6dde6}.student-shell .pactling-storage{background:#edf8f9}.student-shell .party-six{background:#fffbeb}.student-shell .pactling-slot{border-color:#b8d6db;border-radius:14px}.student-shell .pactling-slot.occupied{background:#fff}.student-shell .pactpedia-tile{background:linear-gradient(155deg,#fff,#eaf7f6);border:2px solid #cde0e8;border-radius:20px;transition:transform .15s;box-shadow:0 4px #dae9ee}.student-shell .pactpedia-tile:hover{border-color:#55b6ac;transform:translateY(-3px)}.student-shell .pet-stats>div{background:#e4f4f4;border-color:#bddde0;border-radius:16px}.student-shell .pet-stats>div:nth-child(2){background:#fff4d7}.student-shell .pet-stats>div:nth-child(3){background:#e7edff}.student-shell .pet-stats>div:nth-child(4){background:#fcebed}.student-shell .teacher-preview-banner{color:#63480e;background:#fff0cc;border-color:#d9b46b;border-radius:0}.student-shell .secondary{border-radius:12px;min-height:44px}.student-shell .expedition-party{background:#e0f2ee;border:1px solid #badacf;border-radius:16px}.student-color-login{color:#fff;background:linear-gradient(120deg,#123f53f2,#0c777be8),url(/battle-scenes/forest-battle.png) 50%/cover;min-height:100vh}.student-color-login .login-welcome .brand{color:#ffe08a;font-size:24px}.student-color-login .login-welcome h1{color:#fff;font-size:clamp(36px,5vw,64px);line-height:1.08}.student-color-login .login-form{color:#15374b;background:#fff;border:3px solid #9fd6ca;border-radius:26px;box-shadow:0 12px #082f4355}.student-color-login .primary{background:#116f79;border-radius:13px;min-height:48px}.student-color-login .login-sprites img{filter:drop-shadow(0 12px 10px #092b4644)}@keyframes student-enter{0%{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}@media (max-width:1000px){.student-shell .student-nav button{flex-direction:column;gap:5px;font-size:13px}.student-shell .student-header>span{order:3;width:100%}.home-team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-trainer .avatar-stage.compact{height:330px;min-height:330px}.home-destinations>button{gap:10px;padding:14px}.home-destinations>button img{width:85px;height:100px}}@media (max-width:700px){.student-shell .student-main{padding:16px}.student-shell .student-header{gap:12px;padding:14px 16px}.student-shell .student-header .brand{font-size:19px}.student-wallet{gap:6px;margin-left:0}.student-wallet>span{padding:6px 9px;font-size:12px}.student-shell .student-header .text-button{margin-left:auto}.student-shell .student-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:24px}.student-shell .student-nav button{border-radius:13px;flex-direction:row;min-height:54px;font-size:13px}.home-topline{flex-direction:column;align-items:flex-start;gap:12px}.home-feature-grid{grid-template-columns:1fr}.home-trainer .avatar-stage.compact{height:280px;min-height:280px}.home-destinations{grid-template-columns:1fr}.home-team-grid{gap:8px}.home-team-grid>button{min-height:153px}.home-team-grid img{height:85px}.home-team-grid strong{font-size:13px}.home-section-title h2{font-size:18px}.home-map-art{min-height:190px}.student-guild{font-size:12px}.student-shell .panel{border-radius:16px}}@media (prefers-reduced-motion:reduce){.student-content{animation:none}.student-shell .student-nav button,.home-team-grid>button,.home-destinations>button img,.student-shell .pactpedia-tile{transition:none}.student-shell .student-nav button:hover,.home-team-grid>button:hover,.home-destinations>button:hover img,.student-shell .pactpedia-tile:hover{transform:none}}:where(html[data-motion=reduced]) .student-content{animation:none}:where(html[data-motion=reduced]) .student-shell .student-nav button,:where(html[data-motion=reduced]) .home-team-grid>button,:where(html[data-motion=reduced]) .home-destinations>button img,:where(html[data-motion=reduced]) .student-shell .pactpedia-tile{transition:none}:where(html[data-motion=reduced]) .student-shell .student-nav button:hover,:where(html[data-motion=reduced]) .home-team-grid>button:hover,:where(html[data-motion=reduced]) .home-destinations>button:hover img,:where(html[data-motion=reduced]) .student-shell .pactpedia-tile:hover{transform:none}.student-shell .campfire-heading{background:#fff0d7;border:2px solid #e8cfa0;border-radius:22px;margin-bottom:20px;padding:22px}.student-shell .campfire-mark{color:#854218;background:#f9c56c}.student-shell .campfire-post{background:#fffdf8;border-color:#e0d7c5}.student-shell .campfire-award{color:#6e521e;background:#fff0bd;border-radius:12px}.student-shell .campfire-reactions button{background:#f5f4eb;border-color:#d7d7c4;border-radius:999px;min-height:40px}.student-shell .campfire-reactions button.selected{color:#19553f;background:#d4eee2;border-color:#509b80}.trainer-level-card{background:#1b4c60;border:1px solid #628393;border-radius:16px;min-width:205px;padding:9px 14px}.trainer-level-card strong{color:#ffe097;align-items:center;gap:7px;font-size:16px;display:flex}.trainer-level-card small{color:#e0f4f1;margin-top:5px;font-size:12px;display:block}.trainer-xp-track{background:#092e42;border-radius:9px;height:7px;margin-top:7px;overflow:hidden}.trainer-xp-track>span{background:#64dfc4;height:100%;transition:width .4s;display:block}.student-wallet{flex-wrap:wrap;align-items:center}@media (prefers-reduced-motion:reduce){.trainer-xp-track>span{transition:none}}:where(html[data-motion=reduced]) .trainer-xp-track>span{transition:none}.xp-gift-overlay{z-index:200}.xp-gift-dialog{z-index:201;color:#263d35;background:#fff9e9;border:3px solid #d8b66b;border-radius:24px;width:min(620px,100vw - 24px);max-width:620px;max-height:90dvh;padding:24px;overflow-y:auto}.xp-gift-summary{background:#e5f1db;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.xp-gift-dialog button{color:#244532;cursor:pointer;background:#dcebcf;border-radius:10px;padding:8px 12px;font-weight:700}.xp-gift-dialog button:disabled{opacity:.4;cursor:default}.xp-gift-dialog button:focus-visible{outline-offset:2px;outline:3px solid #608d43}.xp-gift-dialog .primary{color:#fff;background:#366b4d}.xp-gift-team{gap:8px;display:grid}.xp-gift-member{background:#fff;border:1px solid #dfd9bc;border-radius:14px;grid-template-columns:56px minmax(0,1fr) auto 36px auto;align-items:center;gap:8px;padding:8px;display:grid}.xp-gift-member img{object-fit:contain;width:56px;height:60px}.xp-gift-member small{color:#627465;display:block}.xp-gift-member output{text-align:center;font-weight:800}@media (max-width:480px){.xp-gift-dialog{padding:14px}.xp-gift-member{grid-template-columns:38px minmax(0,1fr) auto 28px auto;gap:4px;font-size:12px}.xp-gift-member img{width:38px}.xp-gift-member button{padding:8px}}.level-up-dialog{text-align:center}.level-up-portrait{object-fit:contain;width:160px;height:170px;margin:0 auto}.level-up-stats{border-collapse:collapse;text-align:left;width:100%}.level-up-stats th,.level-up-stats td{border-bottom:1px solid #dfd9bc;padding:10px 12px}.level-up-stats td{text-align:right;font-size:18px;font-weight:800}.level-up-stats thead th:not(:first-child){text-align:right}.level-up-gain{color:#277042}@media (max-width:1000px){.student-shell .student-nav,.student-shell.sanctuary-active .student-nav{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:440px){.student-shell .student-nav,.student-shell.sanctuary-active .student-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}.student-shell .student-nav button:nth-child(7) svg{color:#bf830c}.student-shell .student-nav button:nth-child(8) svg{color:#12877d}.student-shell.sanctuary-active .student-nav button:nth-child(7) svg{color:#ffd274}.student-shell.sanctuary-active .student-nav button:nth-child(8) svg{color:#70d8c4}.student-shell .student-nav button:nth-child(7)[aria-current=page] svg,.student-shell .student-nav button:nth-child(8)[aria-current=page] svg{color:#ffde7b}.student-shell .student-nav{grid-template-columns:repeat(9,minmax(0,1fr))}.student-shell .student-nav button[data-section=Reward\ Tree] svg{color:#b185db}.student-shell .student-nav button[data-section=Shop] svg{color:#bf830c}.student-shell .student-nav button[data-section=Inventory] svg{color:#12877d}.student-shell.sanctuary-active .student-nav button[data-section=Shop] svg{color:#ffd274}.student-shell.sanctuary-active .student-nav button[data-section=Inventory] svg{color:#70d8c4}@media (max-width:1000px){.student-shell .student-nav,.student-shell.sanctuary-active .student-nav{grid-template-columns:repeat(3,minmax(0,1fr))}}.trainer-level-card{position:relative}.trainer-reward-open{border-radius:inherit;cursor:pointer;z-index:1;background:0 0;border:0;width:100%;height:100%;position:absolute;inset:0}.trainer-reward-open:disabled{cursor:default}.trainer-reward-open:hover:not(:disabled){box-shadow:inset 0 0 0 2px #f6d993}.trainer-reward-open:focus-visible{outline-offset:3px;outline:3px solid #ffe095!important}.trainer-point-badge{white-space:nowrap;color:#e6f5de;background:#365d50;border:1px solid #9ebd9d;border-radius:999px;justify-content:center;align-items:center;margin-left:auto;padding:4px 8px;font-size:11px;display:inline-flex}.trainer-point-badge.has-points{color:#3e3217;background:#ffe297;border-color:#fff2bd;animation:2.4s ease-in-out infinite reward-point-glow;box-shadow:0 0 10px #ffdc7480}@keyframes reward-point-glow{50%{box-shadow:0 0 16px #ffdc74c0}}@media (prefers-reduced-motion:reduce){.trainer-point-badge.has-points{animation:none}}:where(html[data-motion=reduced]) .trainer-point-badge.has-points{animation:none}.student-class-selector{min-width:0;max-width:240px}.student-class-selector label{align-items:center;gap:6px;display:flex}.student-class-selector select{color:#172b42;background:#fff;border-radius:8px;max-width:190px;padding:6px}.student-class-selector small{color:#9b1c1c;max-width:240px;display:block}.pactling-release-option{text-align:center;border-top:1px solid #e2dcd1;padding-top:10px}.pactling-release-option>button{color:#9b3341;cursor:pointer;background:0 0;border:1px solid #d4a5ab;border-radius:10px;padding:8px 14px;font-weight:700}.pactling-release-option>button:disabled{opacity:.55;cursor:not-allowed}.pactling-release-option .helper{margin:6px 0 0}.pactling-release-confirm{max-width:min(440px,100vw - 32px);max-height:calc(100dvh - 32px);overflow-y:auto}.pactling-release-preview{background:#f2f6ef;border-radius:14px;justify-content:center;align-items:center;gap:16px;padding:12px;display:flex}.pactling-release-preview img{object-fit:contain;width:100px;height:100px;image-rendering:pixelated}.pactling-release-preview strong{color:#283e34;overflow-wrap:anywhere}.pactling-release-preview small{margin-top:4px;font-weight:400;display:block}.pactling-release-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.pactling-release-actions button{cursor:pointer;border-radius:10px;min-height:44px;padding:10px 14px;font-weight:700}.pactling-release-actions .release-confirm-button{color:#fff;background:#9e3544;border:1px solid #8d2635}.pactling-release-actions button:disabled{opacity:.6;cursor:wait}:is(.pactling-release-actions button:focus-visible,.pactling-release-option button:focus-visible){outline-offset:3px;outline:3px solid #246b69}
