*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{color:#f8fafc;touch-action:manipulation;-webkit-user-select:none;user-select:none;background-color:#05070d;font-family:Inter,system-ui,-apple-system,sans-serif;overflow:hidden}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.-right-2{right:-.5rem}.-top-2{top:-.5rem}.bottom-\[88\%\]{bottom:88%}.bottom-\[90\%\]{bottom:90%}.left-1\/2{left:50%}.top-\[calc\(100\%\+8px\)\]{top:calc(100% + 8px)}.isolate{isolation:isolate}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[9999\]{z-index:9999}.m-0{margin:0}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-0\.5{margin-left:.125rem}.mt-0\.5{margin-top:.125rem}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.\!h-full{height:100%!important}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-16{height:4rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-\[100dvh\]{height:100dvh}.h-full{height:100%}.h-screen{height:100vh}.max-h-\[85vh\]{max-height:85vh}.min-h-0{min-height:0}.\!w-full{width:100%!important}.w-10{width:2.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-4{width:1rem}.w-44{width:11rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-\[100dvw\]{width:100dvw}.w-full{width:100%}.w-screen{width:100vw}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.flex-1{flex:1}.shrink{flex-shrink:1}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-2{--tw-translate-y:.5rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate:90deg;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-skew-x-12{--tw-skew-x:-12deg;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-float{animation:3s ease-in-out infinite float}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.columns-1{-moz-columns:1;columns:1}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[1px\]{border-radius:1px}.rounded-\[50\%\]{border-radius:50%}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-0{border-width:0}.border-b{border-bottom-width:1px}.border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.border-blue-500\/50{border-color:#3b82f680}.border-slate-700{--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.border-slate-700\/60{border-color:#33415599}.border-slate-700\/80{border-color:#334155cc}.border-slate-800{--tw-border-opacity:1;border-color:rgb(30 41 59/var(--tw-border-opacity,1))}.border-slate-800\/80{border-color:#1e293bcc}.border-white\/70{border-color:#ffffffb3}.bg-\[\#05070D\]{--tw-bg-opacity:1;background-color:rgb(5 7 13/var(--tw-bg-opacity,1))}.bg-\[\#070A11\]{--tw-bg-opacity:1;background-color:rgb(7 10 17/var(--tw-bg-opacity,1))}.bg-\[\#080C16\]{--tw-bg-opacity:1;background-color:rgb(8 12 22/var(--tw-bg-opacity,1))}.bg-\[\#0A0E1A\]{--tw-bg-opacity:1;background-color:rgb(10 14 26/var(--tw-bg-opacity,1))}.bg-\[\#0B0F19\]{--tw-bg-opacity:1;background-color:rgb(11 15 25/var(--tw-bg-opacity,1))}.bg-\[\#120B16\]{--tw-bg-opacity:1;background-color:rgb(18 11 22/var(--tw-bg-opacity,1))}.bg-\[\#121A2B\]{--tw-bg-opacity:1;background-color:rgb(18 26 43/var(--tw-bg-opacity,1))}.bg-\[\#fff9e9\]\/90{background-color:#fff9e9e6}.bg-amber-400{--tw-bg-opacity:1;background-color:rgb(251 191 36/var(--tw-bg-opacity,1))}.bg-black\/80{background-color:#000c}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-slate-900\/80{background-color:#0f172acc}.bg-slate-900\/90{background-color:#0f172ae6}.bg-slate-950{--tw-bg-opacity:1;background-color:rgb(2 6 23/var(--tw-bg-opacity,1))}.bg-slate-950\/80{background-color:#020617cc}.bg-transparent{background-color:#0000}.bg-white\/90{background-color:#ffffffe6}.bg-white\/95{background-color:#fffffff2}.bg-gradient-to-br{background-image:linear-gradient(to bottom right, var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right, var(--tw-gradient-stops))}.from-blue-400{--tw-gradient-from:#60a5fa var(--tw-gradient-from-position);--tw-gradient-to:#60a5fa00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from:#3b82f6 var(--tw-gradient-from-position);--tw-gradient-to:#3b82f600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.via-indigo-200{--tw-gradient-to:#c7d2fe00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #c7d2fe var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-indigo-300{--tw-gradient-to:#a5b4fc00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #a5b4fc var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-amber-300{--tw-gradient-to:#fcd34d var(--tw-gradient-to-position)}.to-amber-400{--tw-gradient-to:#fbbf24 var(--tw-gradient-to-position)}.to-indigo-600{--tw-gradient-to:#4f46e5 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.fill-amber-400{fill:#fbbf24}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.object-bottom{-o-object-position:bottom;object-position:bottom}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.text-center{text-align:center}.font-game{font-family:"Press Start 2P",monospace,sans-serif}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-ui{font-family:Inter,sans-serif}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.uppercase{text-transform:uppercase}.leading-relaxed{line-height:1.625}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-\[\#39422b\]{--tw-text-opacity:1;color:rgb(57 66 43/var(--tw-text-opacity,1))}.text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.text-slate-100{--tw-text-opacity:1;color:rgb(241 245 249/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-800{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.text-transparent{color:#0000}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-amber-400{--tw-shadow-color:#fbbf24;--tw-shadow:var(--tw-shadow-colored)}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-\[0_4px_10px_rgba\(0\,0\,0\,0\.18\)\]{--tw-drop-shadow:drop-shadow(0 4px 10px #0000002e);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.pixelated{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.game-icon{background-color:currentColor;flex:none;width:1.5rem;height:1.5rem;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.sanctuary-home{color:#fff8df;background:#172c22}.sanctuary-atmosphere{z-index:1;pointer-events:none;background:linear-gradient(#09171661,#0000 25% 66%,#0718116b),linear-gradient(90deg,#06181529,#0000 25% 78%,#0618151f);position:absolute;inset:0}.metal-panel{color:#fff8df;background:linear-gradient(145deg,#203934f7,#0a1d1df7);border:1px solid #b8a56b;box-shadow:inset 0 1px #ffffff1f,0 3px 8px #061d2057}.gold-text{color:#efcc79}.mint-text{color:#9de0bd}.violet-text{color:#cfb6f1}.sanctuary-topbar{top:max(14px, env(safe-area-inset-top));left:max(22px, env(safe-area-inset-left));right:max(22px, env(safe-area-inset-right));min-height:50px}.sanctuary-profile{text-align:left;align-items:center;gap:10px;min-width:0;display:flex}.sanctuary-portrait{background:linear-gradient(145deg,#507567,#162d2e);border:2px solid #d6b96d;border-radius:50%;flex:none;place-items:center;width:50px;height:50px;display:grid;position:relative;box-shadow:0 0 0 3px #112f2b99,0 3px 10px #071e2245}.sanctuary-portrait-icon{color:#f1d691;width:30px;height:30px}.sanctuary-level{color:#213d34;background:#e5c875;border:1px solid #dfc689;border-radius:7px;padding:2px 5px;font-size:10px;font-weight:900;position:absolute;bottom:-5px;right:-6px}.sanctuary-profile-copy{flex-direction:column;min-width:0;display:flex}.sanctuary-profile-name{color:#fffbea;text-overflow:ellipsis;text-shadow:0 2px 4px #102d29;white-space:nowrap;max-width:190px;font-size:13px;font-weight:800;overflow:hidden}.sanctuary-profile-title{color:#edf1cf;letter-spacing:.15em;text-shadow:0 2px 4px #102d29;margin-top:3px;font-size:9px}.sanctuary-xp{background:#102824b3;border:1px solid #c0bb8766;border-radius:4px;width:120px;height:4px;margin-top:7px;overflow:hidden}.sanctuary-xp>span{background:#b7dcb0;height:100%;transition:width .25s;display:block}.sanctuary-resources{align-items:center;gap:9px;display:flex}.sanctuary-resource{border-radius:12px;align-items:center;gap:7px;height:42px;padding:0 12px;font-size:13px;font-weight:800;display:flex}.sanctuary-resource>.game-icon{width:22px;height:22px}.sanctuary-stamina-pips{gap:3px;display:flex}.sanctuary-stamina-pips i{background:#f2d17f40;border-radius:1px;width:5px;height:13px;transform:skew(-14deg)}.sanctuary-stamina-pips i.filled{background:#f2d17f;box-shadow:0 0 5px #f2d17f33}.sanctuary-settings{color:#ddd4b7;border-radius:50%;place-items:center;width:44px;height:44px;margin-left:2px;padding:10px;display:grid}.sanctuary-settings .game-icon{width:22px;height:22px}.sanctuary-tasks{z-index:20;top:max(88px, calc(env(safe-area-inset-top) + 76px));bottom:max(92px, calc(env(safe-area-inset-bottom) + 80px));left:max(20px, env(safe-area-inset-left));flex-direction:column;justify-content:center;gap:12px;width:72px;display:flex;position:absolute}.sanctuary-task{text-align:center;touch-action:manipulation;background:0 0;border:0;flex-direction:column;align-items:center;gap:5px;width:72px;min-height:58px;padding:0;display:flex}.sanctuary-task:disabled{cursor:default;opacity:.68}.sanctuary-task-face{background:linear-gradient(145deg,#203934f7,#0a1d1df7);border:1px solid #b8a56bc2;border-radius:14px;flex:none;place-items:center;width:46px;height:44px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff1f,0 3px 8px #061d2057}.sanctuary-task-face>.game-icon{width:25px;height:25px}.sanctuary-task-label{color:#fffbea;text-shadow:0 1px 4px #0a221b,0 1px 6px #0a221b;white-space:nowrap;font-size:10px;font-weight:700;line-height:1.1}.sanctuary-task-label small{color:#ead9aa;margin-left:3px;font-size:9px}.sanctuary-badge{color:#293b2c;background:#e5c37a;border:1px solid #ffedc1;border-radius:6px;place-items:center;min-width:17px;height:17px;padding:0 3px;font-size:10px;font-weight:900;display:grid;position:absolute;top:-5px;right:-5px}.sanctuary-task.task-ready .sanctuary-task-face{border-color:#b7d7a0}.sanctuary-raid{z-index:12;right:max(24px, env(safe-area-inset-right));bottom:max(100px, calc(env(safe-area-inset-bottom) + 88px));text-align:left;touch-action:manipulation;border-radius:12px;align-items:center;gap:9px;min-height:44px;padding:5px 13px;display:flex;position:absolute}.raid-icon{color:#f5ba83;width:27px;height:27px}.sanctuary-raid-copy{flex-direction:column;gap:2px;display:flex}.sanctuary-raid-copy strong{letter-spacing:.07em;font-size:11px}.sanctuary-raid-copy small{color:#c6d3c4;white-space:nowrap;font-size:10px}.raid-ready-dot{background:#f0c875;border-radius:50%;width:6px;height:6px;position:absolute;top:6px;right:7px;box-shadow:0 0 7px #f3b957}.sanctuary-footer{z-index:30;right:max(24px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));left:max(24px, env(safe-area-inset-left));pointer-events:none;justify-content:space-between;align-items:flex-end;gap:12px;display:flex;position:absolute}.sanctuary-footer>*{pointer-events:auto}.sanctuary-explore{color:#233d30;text-align:left;touch-action:manipulation;background:linear-gradient(130deg,#e6c77e,#c5a451);border:1px solid #ffe6a2;border-radius:17px 25px 17px 17px;flex:none;align-items:center;gap:12px;min-width:195px;height:61px;padding:0 16px 0 12px;display:flex;position:relative;box-shadow:inset 0 2px #fff4c299,inset 0 -3px #806d3387,0 4px 15px #061d2066}.sanctuary-explore>.game-icon{filter:drop-shadow(0 1px #fff5c0);width:36px;height:36px}.sanctuary-explore strong,.sanctuary-explore small{display:block}.sanctuary-explore strong{letter-spacing:.09em;font-size:15px;font-weight:900}.sanctuary-explore small{opacity:.8;white-space:nowrap;margin-top:4px;font-size:10px;font-weight:700}.explore-arrow{opacity:.7;margin-left:auto;font-size:26px}.sanctuary-dock{align-items:flex-end;gap:11px;display:flex}.sanctuary-dock-item{touch-action:manipulation;background:0 0;border:0;flex-direction:column;align-items:center;gap:5px;min-width:55px;min-height:58px;padding:0;display:flex}.sanctuary-dock-face{border-radius:15px 15px 12px 12px;place-items:center;width:54px;height:49px;display:grid;position:relative}.sanctuary-dock-face:before{content:"";border:1px solid #c6c9a224;border-radius:11px 11px 8px 8px;position:absolute;inset:4px}.sanctuary-dock-face>.game-icon{filter:drop-shadow(0 2px 1px #0000004d);width:29px;height:29px}.sanctuary-dock-label{color:#fffbea;letter-spacing:.03em;text-shadow:0 1px 4px #09231a,0 1px 6px #09231a;font-size:10px;font-weight:800}@media (max-height:390px){.sanctuary-topbar{top:max(12px, env(safe-area-inset-top))}.sanctuary-tasks{top:max(78px, calc(env(safe-area-inset-top) + 68px));gap:8px}.sanctuary-task{gap:3px;min-height:53px}.sanctuary-task-face{width:42px;height:40px}.sanctuary-raid{bottom:max(85px, calc(env(safe-area-inset-bottom) + 73px));min-height:40px}.sanctuary-footer{bottom:max(14px, env(safe-area-inset-bottom))}.sanctuary-explore{gap:8px;min-width:180px;height:56px;padding-right:12px}.sanctuary-explore strong{font-size:14px}.sanctuary-explore>.game-icon{width:32px;height:32px}.sanctuary-dock{gap:8px}.sanctuary-dock-item{gap:5px;min-width:48px;min-height:54px}.sanctuary-dock-face{width:48px;height:45px}.sanctuary-dock-face>.game-icon{width:26px;height:26px}}@media (max-width:730px){.sanctuary-topbar{left:max(16px, env(safe-area-inset-left));right:max(16px, env(safe-area-inset-right))}.sanctuary-profile{gap:8px}.sanctuary-portrait{width:46px;height:46px}.sanctuary-profile-name{max-width:140px;font-size:12px}.sanctuary-profile-title{font-size:8px}.sanctuary-xp{width:105px}.sanctuary-resources{gap:6px}.sanctuary-resource{gap:5px;padding:0 8px}.sanctuary-settings{width:40px;height:40px;margin-left:0}.sanctuary-footer{right:max(16px, env(safe-area-inset-right));left:max(16px, env(safe-area-inset-left));gap:4px}.sanctuary-explore{gap:7px;min-width:164px;padding-right:10px}}.sanctuary-monster svg{filter:none!important;animation:none!important}.starter-sanctuary-frame{pointer-events:none;overflow:hidden}.sanctuary-sheet-frames{display:block}.sanctuary-sheet-frames .sanctuary-cell{opacity:0}.sanctuary-sheet-frames:not(.is-walking) .sanctuary-cell-0{animation:2.2s step-end infinite sanctuary-cell-open}.sanctuary-sheet-frames:not(.is-walking) .sanctuary-cell-1{animation:2.2s step-end infinite sanctuary-cell-blink}@keyframes sanctuary-cell-open{0%,96%{opacity:1}87%{opacity:0}}@keyframes sanctuary-cell-blink{0%,96%{opacity:0}87%{opacity:1}}.sanctuary-sheet-frames.is-walking .sanctuary-cell-2{animation:.9s step-end infinite sanctuary-cell-step-2}.sanctuary-sheet-frames.is-walking .sanctuary-cell-3{animation:.9s step-end infinite sanctuary-cell-step-3}.sanctuary-sheet-frames.is-walking .sanctuary-cell-4{animation:.9s step-end infinite sanctuary-cell-step-4}.sanctuary-sheet-frames.is-walking .sanctuary-cell-5{animation:.9s step-end infinite sanctuary-cell-step-5}.sanctuary-sheet-frames.is-walking .sanctuary-cell-6{animation:.9s step-end infinite sanctuary-cell-step-6}.sanctuary-sheet-frames.is-walking .sanctuary-cell-7{animation:.9s step-end infinite sanctuary-cell-step-7}@keyframes sanctuary-cell-step-2{0%{opacity:1}16.6667%,to{opacity:0}}@keyframes sanctuary-cell-step-3{0%{opacity:0}16.6667%{opacity:1}33.3333%,to{opacity:0}}@keyframes sanctuary-cell-step-4{0%{opacity:0}33.3333%{opacity:1}50%,to{opacity:0}}@keyframes sanctuary-cell-step-5{0%{opacity:0}50%{opacity:1}66.6667%,to{opacity:0}}@keyframes sanctuary-cell-step-6{0%{opacity:0}66.6667%{opacity:1}83.3333%,to{opacity:0}}@keyframes sanctuary-cell-step-7{0%{opacity:0}83.3333%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.sanctuary-sheet-frames .sanctuary-cell{opacity:0;animation:none!important}.sanctuary-sheet-frames .sanctuary-cell-0{opacity:1}}.sanctuary-atlas-facing{animation:2.2s step-end infinite sanctuary-atlas-facing-blink;position:absolute;inset:0;overflow:hidden}.sanctuary-atlas-facing.is-walking{animation:.9s step-end 2 both sanctuary-atlas-facing-walk}@keyframes sanctuary-atlas-facing-blink{0%,86%,96%,to{transform:scaleX(var(--atlas-frame-0-facing,1))}87%,95%{transform:scaleX(var(--atlas-frame-1-facing,1))}}@keyframes sanctuary-atlas-facing-walk{0%,16.66%{transform:scaleX(var(--atlas-frame-2-facing,1))}16.67%,33.32%{transform:scaleX(var(--atlas-frame-3-facing,1))}33.33%,49.98%{transform:scaleX(var(--atlas-frame-4-facing,1))}49.99%,66.64%{transform:scaleX(var(--atlas-frame-5-facing,1))}66.65%,83.3%{transform:scaleX(var(--atlas-frame-6-facing,1))}83.31%,to{transform:scaleX(var(--atlas-frame-7-facing,1))}}@media (prefers-reduced-motion:reduce){.sanctuary-atlas-facing,.sanctuary-atlas-facing.is-walking{transform:scaleX(var(--atlas-frame-0-facing,1));animation:none}}.starter-sanctuary-sheet{-o-object-fit:fill;object-fit:fill;will-change:transform;width:400%;max-width:none;height:200%;animation:2.2s step-end infinite starter-sanctuary-blink;position:absolute;top:0;left:0}.starter-sanctuary-sheet.is-walking{animation:.9s step-end 2 both starter-sanctuary-walk}@keyframes starter-sanctuary-blink{0%,86%,96%,to{transform:translate(0,var(--atlas-frame-0-y,0%))}87%,95%{transform:translate(-25%,var(--atlas-frame-1-y,0%))}}@keyframes starter-sanctuary-walk{0%,16.66%{transform:translate(-50%,var(--atlas-frame-2-y,0%))}16.67%,33.32%{transform:translate(-75%,var(--atlas-frame-3-y,0%))}33.33%,49.98%{transform:translate(0,var(--atlas-frame-4-y,-50%))}49.99%,66.64%{transform:translate(-25%,var(--atlas-frame-5-y,-50%))}66.65%,83.3%{transform:translate(-50%,var(--atlas-frame-6-y,-50%))}83.31%,to{transform:translate(-75%,var(--atlas-frame-7-y,-50%))}}@media (prefers-reduced-motion:reduce){.starter-sanctuary-sheet,.starter-sanctuary-sheet.is-walking{transform:translate(0,var(--atlas-frame-0-y,0%));animation:none}}.pyropup-sprite-frame{pointer-events:none;overflow:hidden}.pyropup-sprite-sheet{-o-object-fit:fill;object-fit:fill;will-change:transform;width:400%;max-width:none;height:200%;animation:1.8s step-end infinite pyropup-blink;position:absolute;top:0;left:0}.pyropup-sprite-sheet.is-walking{animation:.9s step-end 2 both pyropup-walk}@keyframes pyropup-blink{0%,86%,96%,to{transform:translate(0)}87%,95%{transform:translate(-25%)}}@keyframes pyropup-walk{0%,16.66%{transform:translate(-50%)}16.67%,33.32%{transform:translate(-75%,.23%)}33.33%,49.98%{transform:translateY(-48.87%)}49.99%,66.64%{transform:translate(-25%,-48.76%)}66.65%,83.3%{transform:translate(-50%,-48.87%)}83.31%,to{transform:translate(-75%,-48.87%)}}@media (prefers-reduced-motion:reduce){.pyropup-sprite-sheet,.pyropup-sprite-sheet.is-walking{animation:none;transform:translate(0)}}@media (max-width:1000px){.sanctuary-dock button{flex-direction:column;gap:5px;width:auto;height:auto;padding:0}.sanctuary-dock button>.sanctuary-dock-label{font-size:8px;line-height:1}}.roster-screen{z-index:50;color:#fff8df;background:#10251f;display:flex;position:fixed;inset:0;overflow:hidden}.roster-backdrop,.roster-veil{width:100%;height:100%;position:absolute;inset:0}.roster-backdrop{-o-object-fit:cover;object-fit:cover;-o-object-position:center bottom;object-position:center bottom;filter:brightness(.42)saturate(.82)}.roster-veil{background:linear-gradient(105deg,#0d231deb,#0c231fc2 50%,#0a1d1ce0)}.roster-layout{z-index:1;width:100%;min-width:0;height:100%;min-height:0;padding:max(8px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(7px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));flex-direction:column;display:flex;position:relative}.roster-header{flex:none;align-items:center;gap:10px;height:49px;min-height:40px;display:flex}.roster-crest{color:#f1d58e;background:linear-gradient(145deg,#42664d,#142c29);border:1.5px solid #d0b66e;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:18px;display:grid;box-shadow:0 0 0 3px #122c268c,inset 0 1px #fff3}.roster-heading{flex-direction:column;gap:3px;display:flex}.roster-heading h2{color:#fff8df;letter-spacing:.14em;margin:0;font-size:13px;font-weight:900;line-height:1}.roster-heading>span{color:#bdc9b2;letter-spacing:.14em;font-size:8px;font-weight:650}.roster-count{color:#f1d58e;background:linear-gradient(145deg,#203d36eb,#0d2624eb);border:1px solid #b8a56b8c;border-radius:9px;align-items:baseline;gap:5px;margin-left:auto;padding:7px 10px;display:flex}.roster-count strong{font-size:12px}.roster-count span{color:#c0c9b7;font-size:8px;font-weight:700}.roster-close{color:#e9dfc1;background:#102721e0;border:1px solid #b8a56b8c;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.roster-close svg{width:17px;height:17px}.roster-tabs{border-bottom:1px solid #d3c27b59;flex:none;align-items:stretch;gap:7px;height:43px;min-height:38px;margin:3px 0 8px;display:flex}.roster-tab{color:#aebaa8;letter-spacing:.11em;white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;min-width:88px;padding:0 12px 2px;font-size:9px;font-weight:850;display:flex;position:relative}.roster-tab>span{color:#95a292;letter-spacing:0;font-size:8px}.roster-tab:hover{color:#fff7de}.roster-tab.active{color:#ffe6a2}.roster-tab.active>span{color:#e8ca7b}.roster-tab.active:after{content:"";background:#e8ca7b;border-radius:3px;height:2px;position:absolute;bottom:-1px;left:9px;right:9px;box-shadow:0 0 10px #e8ca7b8c}.roster-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.roster-section-heading{color:#d8c681;letter-spacing:.15em;flex:none;align-items:center;gap:8px;min-height:28px;padding:0 1px 5px;font-size:8px;font-weight:900;display:flex}.roster-section-heading>i{background:#c7b87973;width:27px;height:1px}.roster-section-heading>small{color:#aebaa5;letter-spacing:0;font-size:8px;font-weight:500}.roster-hint{color:#aebaa5;letter-spacing:0;margin-left:auto;font-size:8px;font-weight:500}.roster-team-grid{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1.3vw,16px);min-height:0;display:grid}.roster-team-card{background:linear-gradient(155deg,#28483dd6,#112b29f2 75%);border:1px solid #bdad6c7a;border-radius:17px 17px 14px 14px;flex-direction:column;justify-content:flex-end;align-items:center;min-width:0;min-height:0;padding:8px 10px 10px;transition:transform .16s,border-color .16s,box-shadow .16s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff1a,0 7px 17px #06151159}.roster-team-card:hover{border-color:#edce7e;transform:translateY(-2px)}.roster-team-card.selected{background:linear-gradient(155deg,#344e3ff0,#132a27f5 75%);border:1.5px solid #f0d27e;box-shadow:inset 0 0 0 1px #f0d27e4d,0 0 20px #e5c66e33,0 8px 18px #0615117a}.roster-team-card:after{z-index:1;content:"";pointer-events:none;background:linear-gradient(#0000,#0d2422fa);height:40%;position:absolute;bottom:0;left:0;right:0}.roster-slot-number{z-index:3;color:#efcf7d;background:#0e2824cc;border:1px solid #c9b77766;border-radius:8px;place-items:center;width:24px;height:24px;font-size:9px;font-weight:900;display:grid;position:absolute;top:9px;left:9px}.roster-slot-state{z-index:3;color:#cbd2bd;letter-spacing:.1em;background:#102823d6;border:1px solid #c9b77752;border-radius:7px;padding:5px 7px;font-size:7px;font-weight:850;position:absolute;top:10px;right:9px}.roster-team-card.selected .roster-slot-state{color:#f1d58e;border-color:#e4c77380}.roster-art-glow{aspect-ratio:1;background:radial-gradient(circle,#e5bb5d38,#bb9d541a 43%,#0000 72%);border-radius:50%;width:min(72%,190px);position:absolute;top:5%;left:50%;transform:translate(-50%)}.element-water .roster-art-glow{background:radial-gradient(circle,#60c4e538,#49aabb1a 43%,#0000 72%)}.element-nature .roster-art-glow{background:radial-gradient(circle,#9bce6938,#81aa491a 43%,#0000 72%)}.roster-card-art{z-index:1;place-items:center;width:min(84%,210px);height:78%;display:grid;position:absolute;top:3%;left:50%;transform:translate(-50%)}.roster-card-art>div{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.roster-card-art .roster-monster-art{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 7px 7px #06171166);width:100%;height:100%}.roster-card-art svg{max-width:100%;max-height:100%}.roster-team-info{z-index:2;justify-content:space-between;align-items:flex-end;gap:5px;width:100%;min-width:0;display:flex;position:relative}.roster-name-lines{flex-direction:column;gap:3px;min-width:0;display:flex}.roster-name-lines>strong{color:#fff8df;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 2px 6px #091711b3;font-size:clamp(11px,1.5vw,16px);font-weight:900;overflow:hidden}.roster-name-lines>small{color:#c0cbb7;align-items:center;gap:5px;font-size:8px;font-weight:700;display:flex}.roster-name-lines>small b{color:#e9d08b}.roster-name-lines>small i{background:#b8a56b;border-radius:50%;width:3px;height:3px}.roster-element-badge{color:#ffbd86;letter-spacing:.09em;background:#442d25a6;border:1px solid #e6b87a66;border-radius:6px;flex:none;padding:4px 7px;font-size:7px;font-weight:900}.element-water .roster-element-badge{color:#9de0ed;background:#12353cb3;border-color:#83c9e366}.element-nature .roster-element-badge{color:#c1e69b;background:#233a27b3;border-color:#a8d08a66}.roster-selected-line{color:#c3cdb8;flex:none;align-items:center;gap:7px;height:34px;min-height:30px;font-size:9px;display:flex}.roster-gem{color:#edcc78;font-size:10px}.roster-selected-line>strong{color:#f1d995;letter-spacing:.08em;font-size:9px}.roster-selected-line>small{color:#97a691;font-size:8px}.roster-trait{color:#b9c3b4;margin-left:auto;font-size:8px}.roster-monster-art{-o-object-fit:contain;object-fit:contain;max-width:100%;max-height:100%}.roster-box-grid{scrollbar-width:thin;scrollbar-color:#c9b77799 #0a1d1a59;flex:1;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));align-content:start;gap:8px;min-height:0;padding:1px 2px 8px;display:grid;overflow-y:auto}.roster-box-card{background:linear-gradient(155deg,#28483dd9,#112b29f5 78%);border:1px solid #b8a56b61;border-radius:12px;flex-direction:column;justify-content:flex-end;align-items:center;min-width:0;height:clamp(95px,25vh,116px);padding:5px 7px 7px;display:flex;position:relative;overflow:hidden}.roster-box-card.selected{border-color:#f0d27e;box-shadow:inset 0 0 0 1px #f0d27e47,0 0 14px #e5c66e33}.roster-box-art{place-items:center;width:68px;height:calc(100% - 31px);display:grid;position:absolute;top:2px;left:50%;transform:translate(-50%)}.roster-box-art>div{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.roster-box-art .roster-monster-art{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.roster-box-art svg{max-width:100%;max-height:100%}.roster-box-card>strong{z-index:1;color:#fff8df;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:9px;font-weight:850;overflow:hidden}.roster-box-card>small{z-index:1;color:#bbc6b4;align-items:center;gap:4px;margin-top:2px;font-size:7px;display:flex}.roster-box-card>small i{background:#b8a56b;border-radius:50%;width:3px;height:3px}.roster-foraging-tag{z-index:2;color:#24372d;text-align:center;background:#d7ad5c;width:62px;font-size:6px;font-weight:950;position:absolute;top:5px;right:-17px;transform:rotate(35deg)}.roster-box-actions{border-top:1px solid #c7b87947;flex:none;align-items:center;gap:10px;min-height:42px;padding-top:5px;display:flex}.roster-box-selection{flex-direction:column;gap:2px;min-width:90px;display:flex}.roster-box-selection strong{color:#f1d995;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.roster-box-selection small{color:#9eae9c;font-size:7px}.roster-pick-note{color:#aebaa5;font-size:8px}.roster-slot-actions{gap:5px;margin-left:auto;display:flex}.roster-slot-actions button,.roster-dispatch-button{color:#f2d995;letter-spacing:.05em;background:linear-gradient(145deg,#2c493de6,#112924f2);border:1px solid #c9b7777a;border-radius:8px;min-height:30px;padding:0 11px;font-size:8px;font-weight:900}.roster-slot-actions button:hover,.roster-dispatch-button:hover:not(:disabled){background:#395a45;border-color:#ebd28c}.roster-dispatch-button{color:#f4c57d;border-color:#daa75b8c;align-items:center;gap:5px;margin-left:3px;display:flex}.roster-dispatch-button svg{width:13px;height:13px}.roster-dispatch-button:disabled{opacity:.42;cursor:not-allowed}.roster-locked-note{color:#e5c978;letter-spacing:.08em;margin-left:auto;font-size:8px;font-weight:850}.roster-empty,.roster-egg-empty,.roster-forage-empty{color:#d1c58f;text-align:center;background:#0c221e66;border:1px dashed #b8a56b5c;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:110px;display:flex}.roster-empty{flex:1}.roster-empty>span{font-size:24px}.roster-empty strong,.roster-egg-empty strong,.roster-forage-empty strong{color:#e9d99c;letter-spacing:.1em;font-size:8px}.roster-empty small,.roster-egg-empty small,.roster-forage-empty small{color:#9eae9c;font-size:8px}.roster-forage-grid{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px;min-height:0;padding:1px 2px 8px;display:grid;overflow-y:auto}.roster-forage-card{background:linear-gradient(155deg,#274339eb,#0d2220f5);border:1px solid #b8a56b6b;border-radius:13px;flex-direction:column;justify-content:space-between;min-height:142px;padding:11px 12px 9px;display:flex;box-shadow:inset 0 1px #ffffff14}.roster-forage-top,.roster-forage-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.roster-forage-top strong{color:#fff2c8;font-size:10px}.roster-forage-top>span{color:#e9cc83;border:1px solid #daa75b66;border-radius:6px;padding:4px 6px;font-size:7px;font-weight:850}.roster-forage-monster{align-items:center;gap:9px;display:flex}.roster-forage-art{background:#0719178c;border:1px solid #b8a56b47;border-radius:10px;flex:none;place-items:center;width:47px;height:47px;display:grid}.roster-forage-art>div{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.roster-forage-art .roster-monster-art{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.roster-forage-art svg{max-width:100%;max-height:100%}.roster-forage-monster>span:last-child{flex-direction:column;gap:4px;min-width:0;display:flex}.roster-forage-monster b{color:#f5ecd3;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.roster-forage-monster small{color:#9eae9c;font-size:7px}.roster-progress{background:#061615c7;border:1px solid #b8a56b38;border-radius:8px;height:5px;overflow:hidden}.roster-progress>i{border-radius:inherit;background:linear-gradient(90deg,#9ac384,#e2c36f);height:100%;display:block;box-shadow:0 0 8px #e2c36f52}.roster-forage-foot>span{color:#aab89e;letter-spacing:.08em;font-size:7px;font-weight:850}.roster-forage-foot button{color:#21382e;background:linear-gradient(145deg,#dfc274,#b8964e);border:1px solid #d7bb70;border-radius:7px;min-height:27px;padding:0 10px;font-size:8px;font-weight:950}.roster-forage-empty{cursor:pointer;border-style:solid;min-height:142px}.roster-forage-empty svg{color:#d7bb70;width:22px;height:22px}.roster-egg-grid{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:10px;min-height:0;padding:1px 2px 8px;display:grid;overflow-y:auto}.roster-egg-card{background:linear-gradient(155deg,#2b3f3cf0,#142227f7);border:1px solid #b8a56b6b;border-radius:13px;flex-direction:column;justify-content:space-between;min-height:150px;padding:10px;display:flex}.roster-egg-heading{justify-content:space-between;align-items:center;gap:5px;display:flex}.roster-egg-heading>span{color:#f1dc9c;align-items:center;gap:5px;font-size:8px;font-weight:800;display:flex}.roster-egg-heading svg{width:13px;height:13px}.roster-egg-heading small{color:#afbdab;white-space:nowrap;font-size:7px}.roster-egg-visual{flex:1;place-items:center;min-height:55px;display:grid}.roster-egg-visual>span{color:#fff1c6;background:radial-gradient(at 34% 25%,#f2dfa9,#b39458 58%,#56462c);border:1px solid #eed699bf;border-radius:48% 48% 42% 42%/57% 57% 40% 40%;place-items:center;width:39px;height:48px;display:grid;position:relative;box-shadow:0 0 20px #dec17247,inset 0 2px #ffffff47}.roster-egg-visual>span>svg:first-child{opacity:.85;width:20px;height:20px}.roster-egg-visual>span>svg:last-child{color:#e9ce7e;width:13px;height:13px;position:absolute;top:-7px;right:-11px}.egg-progress>i{background:linear-gradient(90deg,#a8c888,#e6c979)}.roster-egg-actions{gap:6px;margin-top:8px;display:flex}.roster-egg-actions button{color:#d6c687;background:#112725cc;border:1px solid #b8a56b66;border-radius:7px;flex:1;min-height:28px;font-size:7px;font-weight:850}.roster-egg-actions button:last-child{color:#21382e;background:linear-gradient(145deg,#dfc274,#b8964e);border-color:#d7bb70}.roster-egg-empty{min-height:150px}.roster-egg-empty>svg{color:#c8b675;opacity:.7;width:24px;height:24px}.roster-modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#030e0dbd;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.roster-foraging-modal{background:linear-gradient(145deg,#203d36,#0d2624);border:1px solid #c1ad6b;border-radius:16px;width:min(390px,100%);padding:16px;box-shadow:inset 0 1px #ffffff1f,0 12px 40px #00000080}.roster-modal-heading{align-items:center;gap:10px;margin-bottom:15px;display:flex}.roster-modal-heading>span{color:#edc47a;background:#543c2066;border:1px solid #daa75b7a;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.roster-modal-heading>span svg{width:17px;height:17px}.roster-modal-heading h3{color:#f1d995;letter-spacing:.12em;margin:0;font-size:11px}.roster-modal-heading p{color:#afbdab;margin:3px 0 0;font-size:9px}.roster-modal-heading>button{color:#dbd3b8;background:#08191880;border:1px solid #b8a56b4d;border-radius:50%;place-items:center;width:28px;height:28px;margin-left:auto;display:grid}.roster-modal-heading>button svg{width:14px;height:14px}.roster-field-label{color:#c0c9b7;letter-spacing:.1em;margin-bottom:5px;font-size:8px;font-weight:800;display:block}.roster-foraging-modal select{color:#fff3d2;background:#102723;border:1px solid #b8a56b73;border-radius:8px;width:100%;min-height:36px;padding:0 9px;font-size:10px}.roster-duration-options{grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0;display:grid}.roster-duration-options button{color:#b7c1b0;background:#091c1a99;border:1px solid #b8a56b52;border-radius:8px;min-height:32px;font-size:9px;font-weight:850}.roster-duration-options button.active{color:#f4d98d;background:#755b2b6b;border-color:#e4c773}.roster-modal-actions{justify-content:flex-end;gap:7px;display:flex}.roster-modal-actions button{color:#b7c1b0;background:#0a1d1ba6;border:1px solid #b8a56b6b;border-radius:8px;min-height:31px;padding:0 12px;font-size:8px;font-weight:900}.roster-modal-actions button:last-child{color:#21382e;background:linear-gradient(145deg,#dfc274,#b8964e);border-color:#e4c773}@media (max-height:430px){.roster-header{height:42px;min-height:38px}.roster-crest{width:32px;height:32px}.roster-tabs{height:37px;min-height:34px;margin-bottom:5px}.roster-section-heading{min-height:23px;padding-bottom:3px}.roster-selected-line{height:28px;min-height:26px}.roster-team-card{padding-bottom:8px}.roster-card-art{height:80%}}@media (max-width:600px){.roster-layout{padding-right:max(9px, env(safe-area-inset-right));padding-left:max(9px, env(safe-area-inset-left))}.roster-header{gap:8px}.roster-heading h2{font-size:12px}.roster-tabs{gap:1px}.roster-tab{letter-spacing:.07em;flex:1;gap:4px;min-width:0;padding-left:4px;padding-right:4px;font-size:8px}.roster-tab>span{font-size:7px}.roster-team-grid{gap:6px}.roster-team-card{border-radius:13px 13px 11px 11px;padding-left:6px;padding-right:6px}.roster-slot-number{width:20px;height:20px;font-size:8px;top:6px;left:6px}.roster-slot-state{padding:4px 5px;font-size:6px;top:7px;right:6px}.roster-card-art{width:95%;height:76%}.roster-name-lines>strong{font-size:10px}.roster-name-lines>small{gap:3px;font-size:7px}.roster-element-badge{padding:3px 5px;font-size:6px}.roster-trait{display:none}.roster-box-grid{grid-template-columns:repeat(auto-fill,minmax(91px,1fr));gap:6px}.roster-box-card{height:clamp(88px,24vh,105px)}.roster-box-actions{gap:6px}.roster-slot-actions{gap:3px}.roster-slot-actions button,.roster-dispatch-button{min-height:28px;padding:0 7px;font-size:7px}.roster-forage-grid{gap:6px}.roster-forage-card{min-height:130px;padding:8px}.roster-egg-grid{gap:6px}.roster-egg-card{min-height:136px;padding:7px}}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:#0f172a99;border-radius:4px}::-webkit-scrollbar-thumb{background:#3b82f666;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#3b82f6b3}.animate-breathe-1{transform-origin:bottom;animation:2.8s ease-in-out infinite monster-breathe-1}.animate-breathe-2{transform-origin:bottom;animation:3.2s ease-in-out infinite monster-breathe-2}.animate-breathe-3{transform-origin:bottom;animation:2.5s ease-in-out infinite monster-breathe-3}.animate-shadow-1{transform-origin:50%;animation:2.8s ease-in-out infinite shadow-breathe-1}.animate-shadow-2{transform-origin:50%;animation:3.2s ease-in-out infinite shadow-breathe-2}.animate-shadow-3{transform-origin:50%;animation:2.5s ease-in-out infinite shadow-breathe-3}.animate-tap-jump{transform-origin:bottom;animation:.65s cubic-bezier(.25,1,.5,1) forwards monster-jump!important}.animate-tap-shadow{transform-origin:50%;animation:.65s cubic-bezier(.25,1,.5,1) forwards shadow-jump!important}.animate-emote{animation:1s ease-out forwards emote-burst}.animate-element-particle{animation:2.2s ease-out infinite elemental-float}@keyframes monster-breathe-1{0%,to{transform:translateY(0)scale(1)}35%{transform:translateY(-4px)scale(.985,1.03)}70%{transform:translateY(1px)scale(1.025,.985)}}@keyframes monster-breathe-2{0%,to{transform:translateY(0)scale(1)}40%{transform:translateY(-3.5px)scale(.99,1.025)}75%{transform:translateY(.8px)scale(1.02,.988)}}@keyframes monster-breathe-3{0%,to{transform:translateY(0)scale(1)}30%{transform:translateY(-4.5px)scale(.98,1.035)}65%{transform:translateY(1.2px)scale(1.03,.98)}}@keyframes shadow-breathe-1{0%,to{opacity:.45;transform:scale(1)}35%{opacity:.32;transform:scale(.9)}70%{opacity:.58;transform:scale(1.08)}}@keyframes shadow-breathe-2{0%,to{opacity:.45;transform:scale(1)}40%{opacity:.35;transform:scale(.93)}75%{opacity:.54;transform:scale(1.06)}}@keyframes shadow-breathe-3{0%,to{opacity:.45;transform:scale(1)}30%{opacity:.3;transform:scale(.88)}65%{opacity:.6;transform:scale(1.1)}}@keyframes monster-jump{0%{transform:translateY(0)scale(1)}18%{transform:translateY(3px)scale(1.18,.82)}45%{transform:translateY(-28px)scale(.92,1.16)}70%{transform:translateY(2px)scale(1.16,.84)}85%{transform:translateY(-4px)scale(.98,1.02)}to{transform:translateY(0)scale(1)}}@keyframes shadow-jump{0%,to{opacity:.45;transform:scale(1)}18%{opacity:.65;transform:scale(1.22)}45%{opacity:.18;transform:scale(.62)}70%{opacity:.68;transform:scale(1.24)}85%{opacity:.42;transform:scale(.96)}}@keyframes emote-burst{0%{opacity:0;transform:translateY(0)scale(.3)}25%{opacity:1;transform:translateY(-14px)scale(1.25)}80%{opacity:1;transform:translateY(-26px)scale(1)}to{opacity:0;transform:translateY(-38px)scale(.8)}}@keyframes elemental-float{0%{opacity:.8;transform:translateY(0)translate(0)scale(.7)}50%{opacity:1;transform:translateY(-18px)translate(4px)scale(1.1)}to{opacity:0;transform:translateY(-36px)translate(-3px)scale(.3)}}.hover\:bg-slate-800:hover{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.hover\:bg-slate-900\/80:hover{background-color:#0f172acc}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.focus-visible\:outline:focus-visible{outline-style:solid}.focus-visible\:outline-2:focus-visible{outline-width:2px}.focus-visible\:outline-amber-300:focus-visible{outline-color:#fcd34d}@media (min-width:640px){.sm\:block{display:block}.sm\:inline{display:inline}}@media (min-width:768px){.md\:inline{display:inline}}
.game-ui{--ink:#fcf6df;--muted:#c1cebb;--dim:#94ad9b;--gold:#edcc7e;--edge:#c7ae684d;--panel:#173d32;--deep:#0b251f;--accent:#aacead;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none}.game-ui *{box-sizing:border-box}.game-ui{color:var(--ink);background:var(--deep);font:14px/1.4 Segoe UI,Arial,sans-serif}.game-ui button,.game-ui a,.game-ui select{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.game-ui button,.game-ui select{font:inherit;color:inherit}.game-ui button{cursor:pointer}.game-ui button:disabled{opacity:.42;cursor:not-allowed}.game-ui button:focus-visible,.game-ui a:focus-visible,.game-ui select:focus-visible{outline-offset:2px;outline:3px solid #f7da8d}.game-ui button,.game-ui a{-webkit-user-select:none;user-select:none}.game-ui h1,.game-ui h2,.game-ui h3,.game-ui p{margin:0}.game-ui h2{font-size:22px;line-height:1.15}.game-ui h3{font-size:17px;line-height:1.2}.game-ui small,.game-ui .small{font-size:11px}.game-ui button{border:0}.game-ui a{color:inherit;text-decoration:none}.game-ui [hidden]{display:none!important}.game-ui .world{filter:saturate(.85)brightness(.78);background:url(/backgrounds/sanctuary-clearing-v2.webp) 50% 65%/cover no-repeat;position:fixed;inset:0}.game-ui .world:after{content:"";background:linear-gradient(100deg,#092a21db,#122b2470 55%,#0c271edb),linear-gradient(#0000 30%,#09251fed);position:absolute;inset:0}.game-ui .app{width:100%;max-width:1360px;height:100dvh;padding:max(12px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));flex-direction:column;gap:10px;margin:auto;display:flex;position:relative}.game-ui .header{flex:none;align-items:center;gap:12px;min-height:48px;display:flex}.game-ui .header h1{letter-spacing:.015em;font-size:21px;font-weight:800;line-height:1.1}.game-ui .header p{color:var(--muted);margin-top:3px;font-size:11px}.game-ui .header-meta{align-items:center;gap:8px;margin-left:auto;display:flex}.game-ui .pill{border:1px solid var(--edge);color:#e5d6ac;white-space:nowrap;background:#0f3027dc;border-radius:12px;align-items:center;gap:6px;min-height:38px;padding:6px 12px;font-size:12px;display:flex}.game-ui .pill b{color:var(--gold);font-size:15px}.game-ui .icon-button{width:44px;height:44px;color:var(--gold);background:linear-gradient(140deg,#335545,#102b24);border:1px solid #c6b67977;border-radius:14px;flex:none;place-items:center;display:inline-grid;box-shadow:inset 0 1px #fff2}.game-ui .icon-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.game-ui .screen-icon{width:23px;height:23px;-webkit-mask:var(--icon) center/contain no-repeat;mask:var(--icon) center/contain no-repeat;-webkit-mask:var(--icon) center/contain no-repeat;background:currentColor;flex:none;display:inline-block}.game-ui .tabs{scrollbar-width:none;border-bottom:1px solid #c7ae6855;flex:none;align-items:stretch;gap:6px;min-height:44px;display:flex;overflow-x:auto}.game-ui .tabs::-webkit-scrollbar{display:none}.game-ui .tab{color:#bfd0ba;white-space:nowrap;background:0 0;border-radius:12px 12px 0 0;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:7px 18px;font-size:13px;font-weight:650;display:flex;position:relative}.game-ui .tab span{color:#9db698;font-size:11px}.game-ui .tab[aria-selected=true]{color:#ffe4a2;background:linear-gradient(#0000,#c2a65a22)}.game-ui .tab[aria-selected=true]:after{content:"";background:var(--gold);border-radius:4px;height:3px;position:absolute;bottom:0;left:12px;right:12px;box-shadow:0 0 12px #edcc7e44}.game-ui .tab[aria-selected=true] span{color:#e6cd90}.game-ui .view{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex;overflow:hidden}.game-ui .section-heading{min-height:22px;color:var(--muted);flex:none;justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.game-ui .section-heading strong{color:#e7d79f;letter-spacing:.07em;font-size:12px}.game-ui .section-heading .end{margin-left:auto}.game-ui .scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b4a26e80 transparent;flex:1;min-height:0;padding:2px 2px 6px;overflow:auto}.game-ui .surface{border:1px solid var(--edge);background:linear-gradient(140deg,#2a5143eb,#0f3028f5);border-radius:20px;box-shadow:inset 0 1px #fff2,0 8px 18px #051c1a40}.game-ui .primary,.game-ui .secondary,.game-ui .danger{color:#213e2c;white-space:nowrap;background:linear-gradient(140deg,#efd38a,#c2a156);border:1px solid #ffe2a0;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:9px 18px;font-size:13px;font-weight:800;display:inline-flex;box-shadow:inset 0 1px #fff5c499,0 4px 10px #08221b55}.game-ui .secondary{color:#e7dab0;background:linear-gradient(140deg,#315a47,#15392e);border-color:#c2ad6c88;font-weight:650;box-shadow:inset 0 1px #fff1}.game-ui .danger{color:#ffdcc2;box-shadow:none;background:#623d32;border-color:#d48b6b70}.game-ui .text-button{color:#e5d29f;background:0 0;min-height:44px;padding:8px 12px;font-size:12px}.game-ui .footer{flex:none;justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.game-ui .footer .copy{color:var(--muted);font-size:12px}.game-ui .gold{color:var(--gold)}.game-ui .muted{color:var(--muted)}.game-ui .dim{color:var(--dim)}.game-ui .eyebrow{color:#dfc680;text-transform:uppercase;letter-spacing:.09em;font-size:11px;font-weight:750}.game-ui .tag{color:#dbe5c9;background:#173a2edb;border:1px solid #d3c29044;border-radius:7px;align-items:center;gap:5px;padding:4px 8px;font-size:11px;line-height:1.1;display:inline-flex}.game-ui .tag.fire{color:#ffd19c;background:#663e2fc9;border-color:#eebc7d55}.game-ui .tag.water{color:#b4e4ed;background:#22505cc9;border-color:#9bd7e855}.game-ui .tag.nature{color:#d2edb4;background:#345d35c9;border-color:#b4d58e55}.game-ui .tag.lightning{color:#f4e8a6;background:#5c5427c9}.game-ui .tag.earth{color:#e5d6ad;background:#57492fc9}.game-ui .team-grid{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;min-height:0;display:grid}.game-ui .creature-card{text-align:left;background:radial-gradient(ellipse at 50% 20%,var(--glow,#c8b16c22),transparent 70%),linear-gradient(140deg,#2c5547ed,#143b2ef5);border:1px solid #d9c58e66;border-radius:20px;flex-direction:column;min-width:0;padding:12px;transition:transform .18s,border-color .18s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #fff2,0 7px 13px #061f1940}.game-ui .creature-card:hover{border-color:#f2d89a;transform:translateY(-2px)}.game-ui .card-corners{color:#d0debd;flex:none;justify-content:space-between;align-items:center;gap:6px;font-size:11px;display:flex}.game-ui .slot-mark{color:#efdba6;align-items:center;gap:5px;font-weight:700;display:inline-flex}.game-ui .portrait{isolation:isolate;flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.game-ui .portrait:before{content:"";filter:blur(5px);z-index:-1;background:#031a1240;border-radius:50%;height:10%;position:absolute;bottom:6%;left:22%;right:22%}.game-ui .portrait img{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 5px 5px #061f1944);width:auto;max-width:100%;height:100%;max-height:260px;display:block}.game-ui .portrait .emblem{color:#d9d6aa88;width:70px;height:70px}.game-ui .identity{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.game-ui .identity strong{white-space:nowrap;text-overflow:ellipsis;font-size:17px;line-height:1.15;overflow:hidden}.game-ui .level{color:#f3d798;white-space:nowrap;font-size:12px}.game-ui .card-species{color:#c8d5bc;margin-top:3px;font-size:11px}.game-ui .mini-stats{color:#a9bfa7;border-top:1px solid #d6c69633;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:8px;padding-top:9px;font-size:11px;display:grid}.game-ui .mini-stats b{color:#f3eacc;font-size:13px;font-weight:700;display:block}.game-ui .box-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-content:start;gap:10px;display:grid}.game-ui .box-grid .creature-card{height:196px;padding:10px}.game-ui .box-grid .identity strong{font-size:15px}.game-ui .box-grid .portrait{height:85px}.game-ui .box-grid .portrait img{max-height:115px}.game-ui .box-grid .mini-stats{display:none}.game-ui .art-small{border:1px solid var(--edge);background:#102f2788;border-radius:13px;flex:none;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.game-ui .art-small img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.game-ui .row{align-items:center;gap:10px;display:flex}.game-ui .split{flex:1;grid-template-columns:1fr 1fr;gap:14px;min-height:0;display:grid}.game-ui .activity-card{flex-direction:column;gap:12px;min-width:0;padding:18px;display:flex}.game-ui .activity-card h3{font-size:17px}.game-ui .activity-card p{color:var(--muted);font-size:12px}.game-ui .activity-card .row .push{margin-left:auto}.game-ui .activity-card .primary,.game-ui .activity-card .secondary{width:100%}.game-ui .empty-card{text-align:center;background:#173b2b80;border:1px dashed #cfbd8466;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:18px;display:flex}.game-ui .empty-card .screen-icon{color:#d6c68c;width:32px;height:32px}.game-ui .empty-card p{color:var(--muted);font-size:12px}.game-ui .track{background:#08281e;border:1px solid #cbb67944;border-radius:20px;height:9px;overflow:hidden}.game-ui .track i{border-radius:inherit;background:linear-gradient(90deg,#7cb18a,#d9d58b);height:100%;transition:width .3s;display:block}.game-ui .egg{background:radial-gradient(at 33% 24%,#fff1b7,#d4c17f 42%,#779574 95%);border:1px solid #efdc9c;border-radius:48% 48% 44% 44%/62% 62% 36% 36%;flex:none;width:62px;height:80px;position:relative;box-shadow:inset -8px -4px 12px #284b484d,0 0 25px #ecd07d33}.game-ui .egg:before{content:"";clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);background:#53736899;position:absolute;inset:30% 29%}.game-ui dialog{width:min(760px,100vw - 24px);max-height:calc(100dvh - 24px);color:var(--ink);background:linear-gradient(135deg,#2b5042,#102f28);border:1px solid #d8c187;border-radius:22px;padding:0;overflow:hidden;box-shadow:0 20px 80px #001d16cc}.game-ui dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#041d17be}.game-ui .dialog-wrap{flex-direction:column;max-height:calc(100dvh - 28px);display:flex}.game-ui .dialog-head{border-bottom:1px solid #d0b77644;flex:none;align-items:center;gap:10px;min-height:58px;padding:8px 16px;display:flex}.game-ui .dialog-head h2{font-size:18px}.game-ui .dialog-head .icon-button{width:40px;height:40px;margin-left:auto}.game-ui .dialog-body{scrollbar-width:thin;min-height:0;padding:16px;overflow:auto}.game-ui .dialog-foot{border-top:1px solid #d0b77644;flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;padding:10px 16px;display:flex}.game-ui .detail-grid{grid-template-columns:minmax(120px,.75fr) 1.25fr;align-items:center;gap:18px;display:grid}.game-ui .detail-art{background:radial-gradient(#afc59125,#0000 70%);border-radius:18px;justify-content:center;align-items:center;height:180px;display:flex}.game-ui .detail-art img{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 5px 6px #08251e55);width:100%;height:100%}.game-ui .detail-copy{flex-direction:column;gap:9px;display:flex}.game-ui .detail-copy p{color:var(--muted);font-size:12px}.game-ui .detail-copy h3{font-size:22px}.game-ui .detail-stats{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.game-ui .detail-stats span{border:1px solid var(--edge);color:var(--muted);background:#102f27a0;border-radius:10px;padding:7px;font-size:11px}.game-ui .detail-stats b{color:var(--ink);font-size:18px;display:block}.game-ui .field{color:var(--muted);flex-direction:column;gap:7px;font-size:12px;display:flex}.game-ui select{border:1px solid var(--edge);background:#102f27;border-radius:10px;width:100%;min-height:44px;padding:8px 12px}.game-ui .options{gap:8px;display:flex}.game-ui .options button{flex:1}.game-ui .option-selected{background:#b49a534d;border-color:#f7d88b}.game-ui .picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.game-ui .pick{border:1px solid var(--edge);background:#153b2fc4;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:120px;padding:10px;display:flex}.game-ui .pick img{-o-object-fit:contain;object-fit:contain;max-width:100%;height:75px}.game-ui .pick strong{font-size:14px}.game-ui .pick small{color:var(--muted)}.game-ui .stack{flex-direction:column;gap:10px;display:flex}.game-ui .list-choice{border:1px solid var(--edge);text-align:left;background:#153b2fc4;border-radius:12px;align-items:center;gap:12px;min-height:66px;padding:12px;display:flex}.game-ui .list-choice strong{font-size:14px;display:block}.game-ui .list-choice small{color:var(--muted);margin-top:2px;font-size:12px;display:block}.game-ui .list-choice .screen-icon{color:#dfc68b;width:28px;height:28px}.game-ui .list-choice .end{color:var(--gold);margin-left:auto}.game-ui .toast{z-index:100;opacity:0;pointer-events:none;color:#fff1c6;background:#163c2cf5;border:1px solid #d9c088;border-radius:14px;max-width:90vw;padding:12px 20px;font-size:13px;transition:opacity .2s,transform .2s;position:fixed;bottom:18px;left:50%;transform:translate(-50%,15px);box-shadow:0 6px 20px #001e1770}.game-ui .toast.show{opacity:1;transform:translate(-50%)}.game-ui .destination-grid{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;min-height:0;display:grid}.game-ui .destination{text-align:left;background:#1e4739;border:1px solid #d4bd7d66;border-radius:20px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.game-ui .biome-scenery{background:linear-gradient(0deg,#183d2e33,#f8be4c1a),url(/backgrounds/sanctuary-clearing-v2.webp) var(--crop,center)/cover;flex:1;min-height:55px;position:relative}.game-ui .biome-scenery.fire{filter:sepia(.35)saturate(1.1);--crop:left 55%}.game-ui .biome-scenery.water{--crop:38% 50%;filter:hue-rotate(5deg)}.game-ui .biome-scenery.earth{--crop:right center;filter:sepia(.4)}.game-ui .biome-scenery.lightning{--crop:50% 25%;filter:hue-rotate(15deg)saturate(.7)}.game-ui .destination-info{background:linear-gradient(135deg,#28513eea,#16392eee);flex-direction:column;gap:8px;padding:14px;display:flex}.game-ui .destination-info h3{font-size:18px}.game-ui .destination-info .row{color:#d0dbbf;justify-content:space-between;font-size:12px}.game-ui .destination .screen-icon{color:#ffe4a4;width:28px;height:28px;padding:6px;position:absolute;top:12px;right:12px}.game-ui .locked{opacity:.62}.game-ui .route-progress{flex:none;align-items:center;gap:10px;min-height:44px;display:flex}.game-ui .route-step{color:var(--dim);align-items:center;gap:8px;font-size:12px;display:flex}.game-ui .route-step b{color:#adbf9f;background:#173b2d;border:1px solid #c5b17255;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;display:grid}.game-ui .route-step.current{color:#ffe3a2}.game-ui .route-step.current b{color:#17372a;background:#b49b53;border-color:#f4d78a}.game-ui .route-step.done b{color:#f0e9b5;background:#4c7854}.game-ui .route-line{background:#cfbb7555;flex:1;max-width:90px;height:1px}.game-ui .event-layout{flex:1;grid-template-columns:.8fr 1.2fr;gap:16px;min-height:0;display:grid}.game-ui .event-art{background:radial-gradient(at 50% 60%,#d2c87a33,#0000 70%);border-radius:20px;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.game-ui .event-art img{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 8px 8px #08251e66);max-width:100%;height:95%}.game-ui .event-art .screen-icon{color:#e0cd91;filter:drop-shadow(0 0 25px #e5c76e66);width:110px;height:110px}.game-ui .event-copy{flex-direction:column;justify-content:center;gap:12px;min-height:0;padding:20px;display:flex;overflow:auto}.game-ui .event-copy p{color:var(--muted);max-width:50ch;font-size:13px}.game-ui .choice-pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.game-ui .choice-pair .list-choice{min-height:110px;display:block}.game-ui .choice-pair .list-choice b{color:var(--gold);margin-top:10px;font-size:12px;display:block}.game-ui .event-copy .primary{align-self:flex-start}.game-ui .fusion-stage{flex:1;grid-template-columns:1fr .95fr 1fr;gap:14px;min-height:0;display:grid}.game-ui .parent-card{text-align:left;background:linear-gradient(140deg,#315444da,#15392de8);border:1px solid #d9c58e66;border-radius:20px;flex-direction:column;min-height:0;padding:14px;display:flex}.game-ui .parent-card .portrait{height:60%}.game-ui .parent-card strong{font-size:18px}.game-ui .parent-card .card-species{margin-top:4px}.game-ui .fusion-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:0;display:flex}.game-ui .fusion-orbit{background:radial-gradient(circle,#e6d49330,#0000 72%);border:1px solid #cfba735e;border-radius:50%;place-items:center;width:min(140px,20vw);height:min(140px,20vw);display:grid;position:relative;box-shadow:0 0 36px #e3c36622}.game-ui .fusion-orbit:before{content:"";border:1px dashed #d3c68d55;border-radius:50%;animation:50s linear infinite orbit;position:absolute;inset:8px}.game-ui .fusion-orbit .egg{transform:scale(.85)}@keyframes orbit{to{transform:rotate(360deg)}}.game-ui .fusion-center h3{font-size:18px}.game-ui .fusion-center p{color:var(--muted);font-size:12px}.game-ui .odds-row{border:1px solid var(--edge);background:#103329b0;border-radius:12px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;display:flex}.game-ui .odds-row b{color:var(--gold);font-size:16px}.game-ui .milestone-grid{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;min-height:0;display:grid}.game-ui .milestone{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:20px;display:flex}.game-ui .milestone .screen-icon{width:38px;height:38px;color:var(--gold)}.game-ui .milestone p{color:var(--muted);font-size:12px}.game-ui .raid-layout{flex:1;grid-template-columns:.9fr 1.1fr;gap:16px;min-height:0;display:grid}.game-ui .boss-banner{text-align:center;background:radial-gradient(#9b553e45,#0000 65%),linear-gradient(140deg,#5b4937,#1a392f);border:1px solid #d28d6877;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:0;display:flex;position:relative;overflow:hidden}.game-ui .boss-banner:before{content:"";border:1px solid #e1b67944;border-radius:50%;width:150px;height:150px;position:absolute;box-shadow:0 0 0 14px #f0b65c0b,0 0 50px #c2743d33}.game-ui .boss-banner .screen-icon{color:#e9c185;filter:drop-shadow(0 8px 8px #2e1d1766);width:95px;height:95px;position:relative}.game-ui .boss-banner .tag,.game-ui .boss-banner h3{position:relative}.game-ui .boss-banner h3{font-size:22px}.game-ui .raid-info{flex-direction:column;justify-content:space-between;gap:12px;min-height:0;padding:18px;display:flex;overflow:auto}.game-ui .raid-info .track{height:14px}.game-ui .raid-health{color:#f4d291;font-size:26px;font-weight:750}.game-ui .raid-info p{color:var(--muted);font-size:12px}.game-ui .two-metrics{grid-template-columns:1fr 1fr;gap:12px;display:grid}.game-ui .metric{border:1px solid var(--edge);background:#0b30257d;border-radius:12px;padding:12px}.game-ui .metric strong{color:#f1d79c;font-size:22px;display:block}.game-ui .metric span{color:var(--muted);font-size:11px}.game-ui .rival-heading{align-items:center;gap:12px;display:flex}.game-ui .rival-heading .crest{border:1px solid var(--edge);width:42px;height:42px;color:var(--gold);background:#6c77544a;border-radius:13px;place-items:center;display:grid}.game-ui .rival-heading h2{font-size:18px}.game-ui .rival-heading p{color:var(--muted);font-size:11px}.game-ui .rival-heading .secondary{margin-left:auto}.game-ui .mini-team{align-items:center;gap:6px;display:flex}.game-ui .mini-team .art-small{border-radius:9px;width:38px;height:38px}.game-ui .mini-team .label{color:var(--muted);margin-left:5px;font-size:11px}.game-ui .codex-grid{grid-template-columns:repeat(auto-fill,minmax(125px,1fr));align-content:start;gap:10px;display:grid}.game-ui .codex-card{background:linear-gradient(135deg,#2b5142e8,#16372eed);border:1px solid #c9b77655;border-radius:15px;flex-direction:column;align-items:center;height:150px;padding:10px;display:flex}.game-ui .codex-card .code{color:#b1c5a9;justify-content:space-between;align-self:stretch;font-size:11px;display:flex}.game-ui .codex-card .portrait{width:100%;height:80px}.game-ui .codex-card strong{font-size:13px}.game-ui .codex-card .unknown{color:#adc39766;flex:1;place-items:center;font-size:34px;font-weight:300;display:grid}.game-ui .codex-card.undiscovered{background:#15372bcc;border-style:dashed}.game-ui .item-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));align-content:start;gap:12px;display:grid}.game-ui .item-card{text-align:left;align-items:center;gap:13px;min-height:100px;padding:15px;display:flex}.game-ui .item-card strong{font-size:15px;display:block}.game-ui .item-card p{color:var(--muted);margin-top:4px;font-size:11px}.game-ui .item-card .quantity{color:var(--gold);margin-left:auto;font-size:20px;font-weight:700}.game-ui .gem{clip-path:polygon(50% 0,90% 25%,100% 70%,65% 100%,20% 91%,0 49%,20% 15%);color:#385b45;background:linear-gradient(130deg,#f1d9a1,#c3a76c 48%,#66866f);flex:none;place-items:center;width:48px;height:55px;display:grid}.game-ui .gem .screen-icon{width:24px;height:24px}.game-ui .gem.water{background:linear-gradient(135deg,#c5eef0,#77b5bf 48%,#496f88)}.game-ui .gem.nature{background:linear-gradient(135deg,#e1efb3,#9dbf7b 48%,#4f8465)}.game-ui .gem.epic{background:linear-gradient(135deg,#ead5fc,#b0a1cd 48%,#627e88)}.game-ui .battle-header{flex:none;grid-template-columns:1fr 1fr;gap:16px;display:grid}.game-ui .combat-status{padding:10px 14px}.game-ui .combat-status .row{justify-content:space-between;margin-bottom:6px;font-size:12px}.game-ui .combat-status strong{font-size:16px}.game-ui .combat-status .track{height:10px}.game-ui .combat-status.enemy .track i{background:linear-gradient(90deg,#bf7960,#e8b574)}.game-ui .atb{background:#052b20;border-radius:4px;height:4px;margin-top:6px;overflow:hidden}.game-ui .atb i{background:#a7d7c5;width:100%;height:100%;display:block}.game-ui .combat-stage{flex:1;justify-content:space-around;align-items:center;min-height:0;display:flex;position:relative}.game-ui .combat-stage:before{content:"";filter:blur(9px);background:#bdd49b18;border-radius:50%;height:20%;position:absolute;bottom:12%;left:8%;right:8%}.game-ui .combat-stage img{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 8px 6px #07302466);max-width:35%;height:100%;position:relative}.game-ui .combat-stage img:first-child{transform:scaleX(-1)}.game-ui .combat-stage .battle-callout{color:#ffdd97;text-shadow:0 2px 8px #09261d;font-size:20px;font-weight:800;position:absolute;top:28%;left:50%;transform:translate(-50%)}.game-ui .combat-controls{flex:none;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:8px;display:grid}.game-ui .combat-controls button{min-height:52px;padding:7px 10px}.game-ui .combat-controls small{font-size:11px;font-weight:500;display:block}.game-ui .combat-controls button>span{flex-direction:column;display:flex}.game-ui .combat-controls .selected-skill{background:#9f8b4e44;border-color:#ffe2a0}@media (min-width:1100px) and (min-height:600px){.game-ui .app{gap:16px;padding:26px 36px}.game-ui .team-grid{gap:22px}.game-ui .creature-card{padding:20px}.game-ui .portrait img{max-height:400px}.game-ui .box-grid .portrait img{max-height:120px}.game-ui .view{gap:14px}.game-ui .tabs{gap:12px}.game-ui .tab{padding:10px 23px}.game-ui .header{min-height:58px}}@media (max-height:430px){.game-ui .app{padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom));gap:7px}.game-ui .header{min-height:44px}.game-ui .header h1{font-size:18px}.game-ui .header p{display:none}.game-ui .header-meta .pill{min-height:34px}.game-ui .view{gap:7px}.game-ui .creature-card{padding:10px}.game-ui .mini-stats{margin-top:6px;padding-top:6px}.game-ui .team-grid{gap:10px}.game-ui .identity strong{font-size:16px}.game-ui .portrait img{max-height:170px}.game-ui .section-heading{min-height:18px}.game-ui .card-species{margin-top:2px}.game-ui .dialog-body{padding:12px 16px}.game-ui .dialog-head{min-height:50px}.game-ui .dialog-foot{padding:8px 16px}.game-ui .detail-art{height:150px}.game-ui .detail-grid{gap:14px}.game-ui .activity-card{gap:9px;padding:13px}.game-ui .event-copy{gap:9px;padding:15px}.game-ui .event-copy h2{font-size:20px}.game-ui .event-copy p{font-size:12px}.game-ui .choice-pair .list-choice{min-height:96px;padding:10px}.game-ui .parent-card{padding:10px}.game-ui .fusion-center{gap:7px}.game-ui .fusion-orbit{width:100px;height:100px}.game-ui .fusion-orbit .egg{transform:scale(.7)}.game-ui .raid-info{gap:9px;padding:14px}.game-ui .raid-health{font-size:22px}.game-ui .two-metrics .metric{padding:8px}.game-ui .metric strong{font-size:19px}.game-ui .combat-status{padding:8px 12px}.game-ui .combat-status strong{font-size:14px}.game-ui .combat-controls button{min-height:44px}.game-ui .combat-stage .battle-callout{font-size:17px}}@media (max-width:740px){.game-ui .app{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.game-ui .header{gap:8px}.game-ui .header-meta{gap:6px}.game-ui .pill{padding:6px 9px;font-size:11px}.game-ui .tab{gap:6px;padding:7px 12px;font-size:12px}.game-ui .identity strong{font-size:15px}.game-ui .team-grid{gap:8px}.game-ui .creature-card{border-radius:16px}.game-ui .mini-stats{font-size:11px}.game-ui .mini-stats b{font-size:12px}.game-ui .card-corners{font-size:11px}.game-ui .tag{padding:4px 6px;font-size:11px}.game-ui .destination-grid{gap:8px}.game-ui .destination-info{gap:6px;padding:10px}.game-ui .destination-info h3{font-size:16px}.game-ui .event-layout{grid-template-columns:.65fr 1.35fr;gap:10px}.game-ui .event-copy{padding:13px}.game-ui .fusion-stage{grid-template-columns:1fr .86fr 1fr;gap:8px}.game-ui .fusion-center h3{font-size:16px}.game-ui .fusion-center .text-button{font-size:11px}.game-ui .parent-card strong{font-size:16px}.game-ui .raid-layout{grid-template-columns:.8fr 1.2fr;gap:10px}.game-ui .boss-banner h3{font-size:20px}.game-ui .boss-banner .screen-icon{width:75px;height:75px}.game-ui .boss-banner:before{width:120px;height:120px}.game-ui .milestone{padding:12px}.game-ui .codex-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}.game-ui .item-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.game-ui .item-card{gap:9px;padding:12px}.game-ui .item-card strong{font-size:14px}.game-ui .item-card .quantity{font-size:18px}.game-ui .footer{gap:8px}.game-ui .footer .copy{font-size:11px}.game-ui .mini-team .label{display:none}.game-ui .detail-copy h3{font-size:20px}}@media (max-width:580px){.game-ui .header-meta .pill .optional{display:none}.game-ui .header h1{font-size:17px}.game-ui .tab{flex:1;padding:7px 9px}.game-ui .tab span{font-size:11px}.game-ui .section-heading .optional{display:none}.game-ui .team-grid{gap:6px}.game-ui .creature-card{padding:8px}.game-ui .mini-stats{grid-template-columns:repeat(2,1fr);gap:2px;margin-top:5px;padding-top:5px}.game-ui .mini-stats b{margin-left:3px;display:inline}.game-ui .card-species,.game-ui .card-corners{font-size:11px}.game-ui .slot-mark .optional{display:none}.game-ui .detail-grid{grid-template-columns:.65fr 1.35fr;gap:10px}.game-ui .detail-art{height:140px}.game-ui .detail-stats{gap:3px}.game-ui .detail-stats span{padding:5px}.game-ui .detail-stats b{font-size:16px}.game-ui .box-grid{grid-template-columns:repeat(auto-fill,minmax(125px,1fr))}.game-ui .split{gap:9px}.game-ui .activity-card{padding:11px}.game-ui .activity-card h3{font-size:15px}.game-ui .parent-card .card-species{font-size:11px}.game-ui .fusion-center h3{font-size:15px}.game-ui .fusion-stage{grid-template-columns:1fr .7fr 1fr}.game-ui .fusion-orbit{width:85px;height:85px}.game-ui .fusion-center p{display:none}.game-ui .rival-heading h2{font-size:16px}.game-ui .rival-heading p{font-size:11px}.game-ui .event-layout{grid-template-columns:.5fr 1.5fr}.game-ui .route-step{gap:5px;font-size:11px}.game-ui .route-line{max-width:25px}.game-ui .choice-pair{gap:6px}.game-ui .combat-controls{gap:5px}.game-ui .combat-controls button{padding:6px;font-size:12px}.game-ui .combat-status{padding:8px}.game-ui .combat-status .optional{display:none}}.game-ui .screen-icon{background:0 0;justify-content:center;align-items:center;display:inline-flex;-webkit-mask:none;mask:none}.game-ui .screen-icon svg{fill:currentColor;width:100%;height:100%;display:block}.game-ui .dialog-head .icon-button{width:44px;height:44px}.game-ui .team-grid .portrait img{transform:scale(1.12)}.game-ui .biome-scenery,.game-ui .biome-scenery.fire,.game-ui .biome-scenery.water,.game-ui .biome-scenery.earth,.game-ui .biome-scenery.lightning{filter:none;background:0 0}.game-ui .biome-scenery>svg{width:100%;height:100%;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.game-ui *,.game-ui :before,.game-ui :after{transition:none!important;animation:none!important}}
.game-screen{z-index:40;position:absolute;inset:0;overflow:hidden}.game-screen.roster-screen-live{z-index:60;position:fixed}.game-screen.inventory-screen-live{z-index:70;position:fixed}.game-ui.fusion-screen-live .world{filter:saturate(.95)brightness(.9);background-image:url(/backgrounds/fusion-altar-v1.webp);background-position:50% 58%}.game-ui.roster-screen-live .world{filter:saturate(.9)brightness(.88);background-image:url(/backgrounds/monster-meadow-v1.webp);background-position:50% 60%}.game-ui.codex-screen-live .world{filter:saturate(.95)brightness(.9);background-image:url(/backgrounds/codex-archive-v1.webp);background-position:50%}.game-ui.fusion-screen-live .world:after{background:linear-gradient(#08281e99,#0000 52%,#06251dd9),linear-gradient(90deg,#07272066,#0000 40% 60%,#07272066)}.game-ui.roster-screen-live .world:after{background:linear-gradient(#09251fbd,#09251f3d 52%,#09251fd9),linear-gradient(90deg,#09251f66,#0000 50%,#09251f66)}.game-ui.codex-screen-live .world:after{background:linear-gradient(#10291fa6,#0000 45%,#10291fd9),linear-gradient(90deg,#10291f66,#10291f33 50%,#10291f66)}.game-ui.fusion-screen-live .fusion-center{text-shadow:0 2px 6px #041d17}.game-ui.fusion-screen-live .parent-card{background:linear-gradient(140deg,#315444c9,#15392edb)}.game-ui.codex-screen-live .codex-tile-caption strong{text-shadow:0 2px 5px #041d17}.game-ui.codex-screen-live dialog.codex-viewer{background:linear-gradient(100deg,#0b241fc9,#0b241fe6),url(/backgrounds/codex-archive-v1.webp) 50%/cover no-repeat}.game-ui .tabs .tab[aria-pressed=true]{color:#ffe4a2;background:linear-gradient(#0000,#c2a65a22)}.game-ui .tabs .tab[aria-pressed=true]:after{content:"";background:var(--gold);border-radius:4px;height:3px;position:absolute;bottom:0;left:12px;right:12px;box-shadow:0 0 12px #edcc7e44}.game-ui .tabs .tab[aria-pressed=true] span{color:#e6cd90}.game-ui .screen-portrait{width:100%;max-width:100%;height:100%;max-height:100%}.game-ui .screen-portrait>svg{width:100%;max-width:100%;height:100%;max-height:100%;display:block}.game-ui .portrait .screen-portrait>img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;max-height:none}.game-ui .detail-art .screen-portrait,.game-ui .art-small .screen-portrait{width:100%;height:100%}.game-ui .art-small .screen-portrait>img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.game-ui .combat-stage .screen-portrait img{-o-object-fit:contain;object-fit:contain;width:100%;max-width:100%;height:100%;transform:none}.game-ui .egg{display:block}.game-ui .detail-grid .detail-copy .skill-list{flex-direction:column;gap:7px;display:flex}.game-ui .detail-grid .detail-copy .skill-list p{font-size:12px}.game-ui .view .empty-card{flex:1;min-height:140px}.game-ui .full-width{width:100%}.game-ui .push{margin-left:auto}.game-ui .battle-log{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:60ch;font-size:11px;overflow:hidden}.game-ui .skill-controls{grid-template-columns:1.35fr 1fr 1fr 1fr}.game-ui .combat-status .tag{font-size:11px}.game-ui .combat-stage .battle-callout{text-align:center;max-width:45%;font-size:12px}.game-ui .compact-field{width:auto;min-width:120px}.game-ui .raid-art .screen-icon{width:95px;height:95px}.game-ui .rival-heading .crest .screen-icon{width:23px;height:23px}.game-ui .choice-pair .list-choice{white-space:normal}.game-ui .flex-wrap{flex-wrap:wrap}.game-ui .dialog-foot .secondary,.game-ui .dialog-foot .primary{white-space:normal}.game-ui .egg-card .row{justify-content:space-between;width:100%}.game-ui .egg-card>.track,.game-ui .milestone>.track{width:100%}.game-ui .picker-art{width:100%;height:90px;display:block}.game-ui .picker-art .screen-portrait{width:100%;height:100%}.game-ui .picker-art .screen-portrait img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.game-ui .event-art>.screen-portrait{width:100%;height:100%}.game-ui .event-art .screen-portrait img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.game-ui .view .nursery-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-content:start}.game-ui .codex-grid{align-items:start}.game-ui .codex-scroll-area{flex:1;min-width:0;min-height:0;display:flex;position:relative}.game-ui .codex-scroll-area>.codex-grid{scrollbar-gutter:stable;scrollbar-color:#cfb879 #102e25;padding-right:12px;overflow:hidden scroll}.game-ui .codex-scroll-indicator{display:none}@media (any-pointer:coarse),(max-width:1024px){.game-ui .codex-scroll-area>.codex-grid{scrollbar-width:none;scrollbar-gutter:auto;margin-right:18px;padding-right:2px}.game-ui .codex-scroll-area>.codex-grid::-webkit-scrollbar{display:none}.game-ui .codex-scroll-indicator{pointer-events:none;background:#0b281fd9;border-radius:6px;width:6px;display:block;position:absolute;top:2px;bottom:6px;right:1px;box-shadow:inset 0 0 0 1px #c9b77622}.game-ui .codex-scroll-indicator>span{background:linear-gradient(90deg,#a28c54,#ddc58d);border-radius:6px;width:100%;position:absolute;left:0;box-shadow:0 0 5px #e3cc8622}}.game-ui .codex-grid .codex-card{text-align:center;min-width:0;height:auto;box-shadow:none;background:0 0;border:0;border-radius:12px;flex-direction:column;gap:8px;padding:0;display:flex}.game-ui .codex-tile-art{aspect-ratio:2/3;background:linear-gradient(135deg,#2b5142e8,#16372eed);border:1px solid #c9b77655;border-radius:12px;width:100%;display:block;position:relative;overflow:hidden;box-shadow:0 5px 12px #061f1966}.game-ui .codex-tile-art:has(.codex-card-image){background:0 0;border:0}.game-ui .codex-tile-art .code{z-index:1;position:absolute;top:10px;left:10px;right:10px}.game-ui .codex-tile-art:has(.codex-card-image)>.code{display:none}.game-ui .codex-tile-art>.portrait{align-items:center;width:100%;height:100%;display:flex}.game-ui .codex-card.undiscovered .codex-tile-art{background:#15372bcc;border-style:dashed}.game-ui .codex-tile-art>.unknown{place-items:center;width:100%;height:100%;font-size:44px;display:grid}.game-ui .codex-tile-caption{flex-direction:column;flex:none;gap:3px;width:100%;height:46px;padding:0 2px;display:flex}.game-ui .codex-tile-caption strong{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:13px;line-height:20px;display:block;overflow:hidden}.game-ui .codex-tile-caption>span{color:var(--muted);font-size:10px;line-height:14px}.game-ui .codex-card.undiscovered .codex-tile-caption strong{color:var(--muted)}.game-ui .codex-card .codex-card-image{filter:none;max-height:none}.game-ui dialog.codex-viewer{--codex-top:max(12px,env(safe-area-inset-top));--codex-bottom:max(12px,env(safe-area-inset-bottom));--codex-left:max(12px,env(safe-area-inset-left));--codex-right:max(12px,env(safe-area-inset-right));--codex-card-height:calc(100dvh - var(--codex-top) - var(--codex-bottom));width:100vw;max-width:none;height:100dvh;max-height:none;padding:var(--codex-top) var(--codex-right) var(--codex-bottom) var(--codex-left);color:var(--ink);background:radial-gradient(at 23% 45%,#466d4c88,#0000 60%),linear-gradient(125deg,#193e32,#0b241f);border:0;border-radius:0;margin:0;position:fixed;inset:0;overflow:hidden}.game-ui .codex-viewer-layout{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(18px,4vw,64px);width:100%;max-width:1100px;height:100%;margin:0 auto;display:grid}.game-ui .codex-viewer-art{height:var(--codex-card-height);width:calc(var(--codex-card-height) * 2 / 3);cursor:zoom-in;touch-action:manipulation;background:0 0;border:0;border-radius:14px;justify-content:center;align-items:center;max-width:44vw;padding:0;display:flex;overflow:hidden;box-shadow:0 12px 32px #00140eb3}.game-ui .codex-viewer-art .codex-card-image{-o-object-fit:contain;object-fit:contain;filter:none;width:100%;height:100%;max-height:none;display:block}.game-ui .codex-viewer-art:disabled{opacity:1;cursor:default;border:1px solid var(--edge);background:linear-gradient(135deg,#345741,#15382d)}.game-ui .codex-viewer-art>.screen-portrait{padding:12px}.game-ui .codex-viewer-unknown{color:#c8d5b366;font-size:100px}.game-ui .codex-viewer-info{flex-direction:column;align-self:stretch;min-width:0;min-height:0;padding-top:4px;display:flex}.game-ui .codex-viewer-info[hidden]{display:none}.game-ui .codex-viewer-heading{flex:none;padding-right:48px}.game-ui .codex-viewer-heading .eyebrow{letter-spacing:.14em;color:var(--gold);font-size:10px}.game-ui .codex-viewer-heading h2{overflow-wrap:anywhere;margin:5px 0 12px;font-size:clamp(22px,3.5vw,38px);line-height:1.15}.game-ui .codex-viewer-tabs{border-bottom:1px solid var(--edge);flex:none;gap:18px;display:flex}.game-ui .codex-viewer-tabs button{min-height:44px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:0 2px;font-size:13px}.game-ui .codex-viewer-tabs button[aria-pressed=true]{border-bottom-color:var(--gold);color:var(--gold)}.game-ui .codex-viewer-scroll{overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;flex:1;gap:12px;min-height:0;padding:16px 4px 14px 0;display:flex;overflow:auto}.game-ui .codex-viewer-scroll .row{flex-wrap:wrap;gap:6px}.game-ui .codex-viewer-scroll p{color:var(--muted);max-width:55ch;margin:0;font-size:13px;line-height:1.65}.game-ui .codex-viewer-scroll p.codex-viewer-role{color:var(--ink);font-weight:700}.game-ui .codex-viewer-scroll h3{color:var(--gold);margin:0;font-size:12px;font-weight:700}.game-ui .codex-viewer-scroll h3:not(:first-child){margin-top:8px}.game-ui .codex-viewer-scroll>.detail-stats,.game-ui .codex-viewer-scroll>select{flex-shrink:0}.game-ui .codex-viewer-hint{color:var(--muted);opacity:.7;margin-top:auto;font-size:11px}.game-ui .codex-viewer-navigation{border-top:1px solid var(--edge);flex:none;justify-content:space-between;align-items:center;gap:6px;padding-top:8px;display:flex}.game-ui .codex-viewer-navigation button{border:1px solid var(--edge);background:#264c3d;border-radius:10px;justify-content:center;align-items:center;gap:4px;min-height:44px;padding:6px 8px;font-size:12px;display:flex}.game-ui .codex-viewer-navigation button:disabled{opacity:.35;cursor:default}.game-ui .codex-viewer-navigation svg{width:18px;height:18px}.game-ui .codex-viewer-navigation>span{color:var(--muted);white-space:nowrap;font-size:11px}.game-ui .codex-viewer-close{z-index:2;right:var(--codex-right);top:var(--codex-top);border:1px solid var(--edge);background:#14382de6;border-radius:50%;width:44px;height:44px;position:absolute}.game-ui .codex-viewer-art:focus-visible,.game-ui .codex-viewer button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.game-ui .codex-viewer-art-only .codex-viewer-layout{justify-content:center;display:flex}.game-ui .codex-viewer-art-only .codex-viewer-art{max-width:calc(100vw - var(--codex-left) - var(--codex-right));cursor:zoom-out}.game-ui .codex-viewer-focus-name{bottom:var(--codex-bottom);white-space:nowrap;pointer-events:none;background:#0b241fe6;border-radius:8px;max-width:80vw;padding:5px 10px;font-size:11px;position:absolute;left:50%;transform:translate(-50%)}@media (max-height:430px){.game-ui .codex-viewer-heading h2{margin-bottom:4px;font-size:24px}.game-ui .codex-viewer-scroll{gap:9px;padding-top:12px}.game-ui .codex-viewer-scroll p{font-size:12px;line-height:1.5}}@media (orientation:portrait){.game-ui dialog.codex-viewer{--codex-card-height:min(56dvh,calc((100vw - var(--codex-left) - var(--codex-right)) * 1.5))}.game-ui .codex-viewer-layout{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:14px}.game-ui .codex-viewer-art{justify-self:center;max-width:100%}.game-ui .codex-viewer-info{padding:0}.game-ui .codex-viewer-heading{padding-right:0}.game-ui .codex-viewer-heading h2{margin-bottom:4px;font-size:24px}.game-ui .codex-viewer-art-only{--codex-card-height:min(calc(100dvh - var(--codex-top) - var(--codex-bottom)),calc((100vw - var(--codex-left) - var(--codex-right)) * 1.5))}}@media (max-height:430px){.game-ui .team-grid .portrait .screen-portrait,.game-ui .box-grid .portrait .screen-portrait,.game-ui .team-grid .portrait img{transform:none}.game-ui .dialog-body .detail-art{height:150px}.game-ui .raid-art .screen-icon{width:75px;height:75px}}@media (max-width:740px){.game-ui .footer>.optional{display:none}.game-ui .battle-log{max-width:42ch}}.game-ui.battle-screen{--battle-console-height:130px}.game-ui.battle-screen .app{gap:0;max-width:none;margin:0;padding:0}.game-ui.battle-screen .view{display:block;position:absolute;inset:0;overflow:hidden}.game-ui.battle-screen .header{z-index:5;top:max(6px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));gap:0;min-height:0;position:absolute}.game-ui.battle-screen .header>div:first-child{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.game-ui.battle-screen .world{filter:none;background:#8fa77b}.game-ui.battle-screen .world:after{background:0 0}.game-ui.battle-screen .combat-stage{isolation:isolate;background:#8fa77b url(/backgrounds/battle-clearing-v1.webp) 50%/cover no-repeat;border:0;border-radius:0;min-height:0;display:block;position:absolute;inset:0;overflow:hidden}.game-ui.battle-screen .combat-stage:before{display:none}.game-ui.battle-screen .battle-ground{z-index:0;box-shadow:none;background:radial-gradient(#273e292e 0%,#273e2912 48%,#0000 72%);border:0;border-radius:50%;position:absolute}.game-ui.battle-screen .battle-ground-player{width:38%;height:calc((100% - var(--battle-console-height)) * .18);left:5%;bottom:var(--battle-console-height)}.game-ui.battle-screen .battle-ground-opponent{width:28%;height:calc((100% - var(--battle-console-height)) * .13);right:9%;bottom:calc(var(--battle-console-height) + (100% - var(--battle-console-height)) * .43)}.game-ui.battle-screen .battle-monster{--battle-space-scale:1;--battle-body-overlap:0px;z-index:1;pointer-events:none;justify-content:center;align-items:flex-end;display:flex;position:absolute}.game-ui.battle-screen .battle-monster-player{left:calc(24% - 21% * var(--battle-space-scale));bottom:calc(var(--battle-console-height) - (100% - var(--battle-console-height)) * .07 - var(--battle-body-overlap));width:calc(42% * var(--battle-space-scale));height:calc((100% - var(--battle-console-height)) * .92 * var(--battle-space-scale));max-height:min(calc(360px * var(--battle-space-scale)),calc((100% - var(--battle-console-height) - 48px) * var(--battle-space-scale)))}.game-ui.battle-screen .battle-monster-opponent{right:calc(23% - 13% * var(--battle-space-scale));bottom:calc(var(--battle-console-height) + (100% - var(--battle-console-height)) * .46 - var(--battle-body-overlap));width:calc(26% * var(--battle-space-scale));height:calc((100% - var(--battle-console-height)) * .53 * var(--battle-space-scale));max-height:calc(235px * var(--battle-space-scale))}.game-ui.battle-screen .battle-monster .screen-portrait{width:100%;height:100%;transform:none}.game-ui.battle-screen .battle-monster .screen-portrait>svg,.game-ui.battle-screen .battle-monster .screen-portrait>img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;transform:none}.game-ui.battle-screen .combat-status{z-index:2;background:linear-gradient(130deg,#1d4035f0,#0c2b24ed);width:42%;max-width:390px;padding:10px 14px;position:absolute;box-shadow:0 5px 18px #031a2033}.game-ui.battle-screen .combat-status.enemy{border-radius:14px 14px 24px;top:3%;left:2%}.game-ui.battle-screen .combat-status.player{right:2%;bottom:calc(var(--battle-console-height) + (100% - var(--battle-console-height)) * .04);border-radius:24px 14px 14px}.game-ui.battle-screen .combat-status .row{gap:8px;font-size:11px}.game-ui.battle-screen .combat-status .row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.game-ui.battle-screen .combat-status .row>span{white-space:nowrap}.game-ui.battle-screen .combat-stage .battle-callout{top:calc((100% - var(--battle-console-height)) * .45);z-index:3;border:1px solid var(--edge);background:#102d25f2;border-radius:12px;padding:7px 12px;font-size:12px;left:50%}.game-ui.battle-screen .battle-console{z-index:4;height:var(--battle-console-height);padding:8px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border:0;border-top:2px solid var(--edge);background:linear-gradient(130deg,#264d3df5,#102d25f5);border-radius:0;grid-template-columns:1fr 1fr;gap:10px;display:grid;position:absolute;bottom:0;left:0;right:0;box-shadow:inset 0 1px #ffe7aa22}.game-ui.battle-screen .battle-prompt{color:#193c30;background:linear-gradient(125deg,#f8f0d9,#dce4c9);border:1px solid #ceb77666;border-radius:10px;flex-direction:column;justify-content:center;gap:5px;min-width:0;padding:10px 16px;display:flex;box-shadow:inset 0 0 0 3px #254b3922}.game-ui.battle-screen .battle-prompt .eyebrow{color:#596b48;font-size:9px}.game-ui.battle-screen .battle-prompt strong{font-size:clamp(15px,2.2vw,22px);line-height:1.2}.game-ui.battle-screen .battle-message{-webkit-line-clamp:2;color:#50624b;-webkit-box-orient:vertical;font-size:11px;line-height:1.3;display:-webkit-box;overflow:hidden}.game-ui.battle-screen .battle-console.is-narrating{grid-template-columns:minmax(0,1fr)}.game-ui.battle-screen .battle-console.is-narrating .battle-command-grid{display:none}.game-ui.battle-screen .battle-console.is-narrating .battle-prompt strong{overflow-wrap:anywhere;font-size:clamp(16px,2.3vw,24px);line-height:1.25}.typewriter-text{text-align:inherit;min-width:0;display:inline-grid;position:relative}.typewriter-text>.typewriter-layout,.typewriter-text>.typewriter-visible{white-space:pre-wrap;grid-area:1/1}.typewriter-text>.typewriter-layout{visibility:hidden;pointer-events:none}.typewriter-text[role=button]{cursor:pointer;border-radius:3px}.typewriter-text[role=button]:focus-visible{outline-offset:3px;outline:2px solid}.typewriter-text>.typewriter-accessible{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.game-ui.battle-screen .combat-controls.battle-command-grid{background:0 0;border:0;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:6px;padding:0;display:grid}.game-ui.battle-screen .battle-command-grid button{letter-spacing:.02em;border:1px solid #e8d29777;border-radius:10px;min-height:48px;padding:5px 8px;font-size:15px;font-weight:800;display:block;box-shadow:inset 0 2px #fff2,0 2px #051c1955}.game-ui.battle-screen .battle-command-grid small{letter-spacing:0;font-size:10px;line-height:1.1}.game-ui.battle-screen .command-fight{color:#24392b;background:linear-gradient(#e1ba72,#c99653)}.game-ui.battle-screen .command-party{background:linear-gradient(#537955,#31553e)}.game-ui.battle-screen .command-guard{background:linear-gradient(#526f77,#304e59)}.game-ui.battle-screen .command-run{background:linear-gradient(#697362,#414f40)}@media (max-height:430px){.game-ui.battle-screen{--battle-console-height:calc(108px + env(safe-area-inset-bottom))}.game-ui.battle-screen .footer{display:none}.game-ui.battle-screen .combat-status{padding:6px 10px}.game-ui.battle-screen .combat-status .row{margin-bottom:2px;font-size:10px}.game-ui.battle-screen .combat-status strong{font-size:13px}.game-ui.battle-screen .combat-status .track{height:7px}.game-ui.battle-screen .combat-status .atb{height:3px;margin-top:4px}.game-ui.battle-screen .combat-status.enemy .combat-hp-detail{display:none}.game-ui.battle-screen .battle-console{padding:6px max(6px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));gap:7px}.game-ui.battle-screen .battle-prompt{gap:3px;padding:7px 11px}.game-ui.battle-screen .battle-command-grid button{min-height:44px;font-size:13px}.game-ui.battle-screen .battle-command-grid small{font-size:9px}}
