/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--font-geist-sans:"Microsoft JhengHei", "PingFang TC", "Noto Sans TC", Arial, sans-serif;--font-geist-mono:"Cascadia Mono", "Microsoft JhengHei UI", "Microsoft JhengHei", monospace;--paper:#f4e7c5;--paper-deep:#e8d7b5;--ink:#2d3436;--green:#3f6b57;--green-light:#7ea68a;--blue:#5b8db8;--yellow:#e0b04b;--orange:#d87a3a;--red:#b94a48;--purple:#76558c;--night:#263238;--line:#1d2527;--white:#fffaf0}*{box-sizing:border-box}html{background:#182224;min-width:320px}body{min-height:100vh;color:var(--paper);font-family:var(--font-geist-sans), "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", sans-serif;background:linear-gradient(#f4e7c506 1px,#0000 1px) 0 0/24px 24px,linear-gradient(90deg,#f4e7c506 1px,#0000 1px) 0 0/24px 24px,radial-gradient(circle at 50% -20%,#3f5b55 0,#1b292b 48%,#111a1c 100%);margin:0}button{color:inherit;font:inherit}button:focus-visible,canvas:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}button:disabled{cursor:not-allowed}.game-page{width:min(1540px,100%);min-height:100vh;margin:0 auto;padding:20px clamp(12px,2.2vw,36px) 16px}.brand-bar{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:13px;display:flex}.brand-kicker,.version-chip,.panel-eyebrow,.control-label small,.game-footer,kbd{font-family:var(--font-geist-mono), monospace}.brand-kicker{color:#9dc8aa;letter-spacing:.14em;margin:0 0 5px;font-size:11px;font-weight:900}.brand-bar h1{letter-spacing:-.055em;margin:0;font-size:clamp(24px,2.8vw,39px);font-weight:950;line-height:1.04}.version-chip{color:#c7d8cf;letter-spacing:.08em;background:#1d3132;border:2px solid #56716d;flex:none;padding:7px 10px;font-size:9px;font-weight:900;box-shadow:4px 4px #0a1112}.game-console{background:var(--night);border:4px solid #101718;grid-template-columns:minmax(0,1fr) 360px;display:grid;overflow:hidden;box-shadow:10px 10px #080d0e}.play-column{border-right:4px solid #101718;min-width:0}.hud-strip{background:#101718;border-bottom:4px solid #101718;grid-template-columns:124px minmax(260px,1.4fr) 128px 162px 138px;gap:2px;min-height:86px;display:grid}.clock-block,.wave-block,.resource-block{background:#243638;flex-direction:column;justify-content:center;min-width:0;padding:9px 12px;display:flex}.clock-block span,.wave-block span,.resource-block span{color:#9ab0a9;font-family:var(--font-geist-mono), monospace;letter-spacing:.055em;font-size:12px;font-weight:900}.clock-block strong{color:var(--paper);font-family:var(--font-geist-mono), monospace;margin-top:3px;font-size:29px;line-height:1}.wave-block strong{color:var(--white);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 7px;font-size:17px;font-weight:900;overflow:hidden}.resource-block strong{font-family:var(--font-geist-mono), monospace;margin-top:2px;font-size:27px;font-weight:950;line-height:1.05}.resource-block strong b{color:#9ab0a9;font-size:12px}.resource-block small{color:#8aa09a;margin-top:4px;font-size:11px}.points-resource strong{color:var(--yellow)}.energy-resource strong{color:#99c9ea}.overtime-resource strong{color:#ef8e82;font-size:25px}.tiny-meter{background:#172527;border:1px solid #11191a;height:6px;overflow:hidden}.tiny-meter i{background:var(--green-light);height:100%;transition:width .1s linear;display:block}.energy-resource .tiny-meter{margin-top:7px}.energy-resource .tiny-meter i{background:var(--blue)}.board-frame{background:var(--paper-deep);aspect-ratio:16/9;border-bottom:4px solid #101718;position:relative;overflow:hidden}.board-frame canvas{cursor:crosshair;width:100%;height:100%;display:block}.game-overlay{z-index:10;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(#172324c7,#0f1819e6),repeating-linear-gradient(0deg,#f4e7c508,#f4e7c508 1px,#0000 1px 4px);place-items:center;padding:clamp(13px,2vw,24px);display:grid;position:absolute;inset:0;overflow:auto}.intro-card,.decision-card-wrap,.result-card{width:min(780px,100%);color:var(--ink);background:#f1e4c3;border:4px solid #11191a;padding:clamp(20px,3vw,32px);box-shadow:8px 8px #080d0ea6}.overlay-kicker{color:var(--green);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;font-size:10px;font-weight:950}.intro-card h2,.decision-card-wrap h2,.result-card h2{color:var(--ink);letter-spacing:-.045em;margin:0;font-size:clamp(23px,3.1vw,38px);font-weight:950;line-height:1.08}.intro-lead,.decision-card-wrap>p,.result-card>p{color:#536064;margin:12px 0 17px;font-size:14px;font-weight:650;line-height:1.65}.how-to-grid{grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:15px;display:grid}.how-to-grid div{background:#e7d9b8;border:2px solid #b8aa8d;align-items:center;gap:8px;padding:8px;display:flex}.how-to-grid b{background:var(--green);width:23px;height:23px;color:var(--white);font-family:var(--font-geist-mono), monospace;flex:none;place-items:center;font-size:11px;display:grid}.how-to-grid span{color:#4f595b;font-size:15px;font-weight:850}.difficulty-grid{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.difficulty-card{cursor:pointer;min-height:84px;color:var(--ink);text-align:left;background:#eadcbb;border:3px solid #a99b7f;flex-direction:column;align-items:flex-start;padding:10px 12px;transition:transform .1s,border-color .1s,background .1s;display:flex}.difficulty-card:hover{border-color:var(--green);transform:translateY(-2px)}.difficulty-card.selected{border-color:var(--green);background:#dce1c0;box-shadow:inset 0 0 0 2px #f5ead0}.difficulty-card>span{color:var(--green);font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;font-size:8px;font-weight:900}.difficulty-card strong{margin:3px 0;font-size:16px;font-weight:950}.difficulty-card small{color:#657174;font-size:10px;line-height:1.35}.primary-button{cursor:pointer;background:var(--green);color:var(--white);border:3px solid #172022;justify-content:center;align-items:center;padding:11px 16px;font-size:13px;font-weight:950;transition:transform .1s,box-shadow .1s,background .1s;display:flex;box-shadow:4px 4px #172022}.primary-button:hover:not(:disabled){background:#4b7c66;transform:translate(2px,2px);box-shadow:2px 2px #172022}.primary-button:disabled{opacity:.42}.intro-start{width:100%;margin-top:13px;padding:13px;font-size:15px}.decision-card-wrap{width:min(900px,100%)}.decision-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:15px;display:grid}.decision-card{cursor:pointer;min-height:210px;color:var(--ink);text-align:left;background:#e7d8b7;border:3px solid #9f927a;flex-direction:column;align-items:flex-start;padding:14px;transition:transform .12s,border-color .12s,box-shadow .12s;display:flex}.decision-card:hover{border-color:var(--green);transform:translateY(-4px);box-shadow:5px 5px #2d343652}.decision-icon{border:2px solid var(--ink);background:var(--green);width:38px;height:38px;color:var(--white);place-items:center;font-size:19px;font-weight:950;display:grid}.decision-card small{color:var(--green);font-family:var(--font-geist-mono), monospace;letter-spacing:.07em;margin-top:10px;font-size:8px;font-weight:900}.decision-card strong{margin-top:3px;font-size:17px;font-weight:950}.decision-card p{color:#5c6769;flex:1;margin:8px 0;font-size:11px;font-weight:650;line-height:1.55}.decision-card b{color:var(--green);font-size:10px}.result-overlay.won{background:#1f3730e8}.result-overlay.lost{background:#411f1eeb}.result-card{width:min(650px,100%)}.result-stats{grid-template-columns:repeat(4,1fr);gap:6px;margin:17px 0;display:grid}.result-stats div{background:#e4d5b4;border:2px solid #a99b7f;padding:10px}.result-stats span{color:#657174;font-size:9px;font-weight:800;display:block}.result-stats strong{color:var(--ink);font-family:var(--font-geist-mono), monospace;margin-top:3px;font-size:20px;display:block}.result-decisions{border-left:4px solid var(--green);background:#e4d5b4;padding:8px 11px;font-size:11px!important}.pause-stamp{z-index:8;border:3px solid var(--red);color:var(--red);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;background:#f4e7c5f0;padding:7px 16px;font-size:14px;font-weight:950;position:absolute;top:18px;left:50%;transform:translate(-50%)rotate(-2deg)}.notice-stack{z-index:7;pointer-events:none;flex-direction:column;align-items:flex-end;gap:6px;width:min(380px,100% - 26px);display:flex;position:absolute;bottom:13px;right:13px}.notice{color:var(--paper);background:#263238f0;border:2px solid #172022;padding:8px 11px;font-size:11px;font-weight:800;box-shadow:3px 3px #1720226b}.notice.good{border-left:6px solid var(--green-light)}.notice.danger{border-left:6px solid var(--red)}.notice.boss{border-left:6px solid var(--purple);background:#462f5bf5}.control-deck{background:#101718;grid-template-columns:minmax(330px,.92fr) minmax(440px,1.08fr);gap:3px;min-height:138px;display:grid}.skill-group,.tower-group{background:#213335;padding:10px 12px 12px}.control-label{justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px;display:flex}.control-label span{color:var(--paper);font-size:16px;font-weight:950}.control-label small{color:#849a94;font-size:13px}.skill-row,.tower-palette{gap:6px;display:grid}.skill-row{grid-template-columns:repeat(3,1fr)}.skill-button{cursor:pointer;text-align:left;background:#2d4243;border:2px solid #0f1819;grid-template-columns:36px minmax(0,1fr);align-items:center;min-width:0;min-height:78px;padding:8px;display:grid;position:relative}.skill-button:hover:not([aria-disabled=true]){border-color:var(--yellow);background:#365050}.skill-button[aria-disabled=true]{cursor:not-allowed;opacity:.43}.skill-button kbd,.palette-button kbd{color:#b2c6bf;font-size:10px;font-weight:900;position:absolute;top:4px;left:5px}.skill-icon{border:2px solid var(--paper);width:34px;height:34px;color:var(--paper);place-items:center;font-size:18px;font-weight:950;display:grid}.skill-button>span:last-child{min-width:0}.skill-button strong,.skill-button small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.skill-button strong{font-size:15px;font-weight:950}.skill-button small{color:#9eb1ab;font-family:var(--font-geist-mono), monospace;margin-top:3px;font-size:13px}.tower-palette{grid-template-columns:repeat(3,minmax(0,1fr))}.palette-button{cursor:pointer;background:#2d4243;border:2px solid #0f1819;flex-direction:column;justify-content:center;align-items:center;min-width:0;min-height:78px;padding:6px;display:flex;position:relative}.palette-button:hover:not([aria-disabled=true]){border-color:var(--yellow);transform:translateY(-2px)}.palette-button[aria-disabled=true]{cursor:not-allowed;opacity:.38}.palette-button>span{font-size:22px;font-weight:950;line-height:1}.palette-button strong{margin-top:3px;font-size:15px;font-weight:950}.palette-button small{color:var(--yellow);font-family:var(--font-geist-mono), monospace;margin-top:2px;font-size:13px;font-weight:900}.tower-record{border-bottom:4px solid var(--blue)}.tower-peer{border-bottom:4px solid var(--green-light)}.tower-supervisor{border-bottom:4px solid var(--yellow)}.tower-network{border-bottom:4px solid var(--orange)}.tower-blast{border-bottom:4px solid #c85446}.tower-tracking{border-bottom:4px solid #8b6d9c}.tower-laser{border-bottom:4px solid #4f9ea8}.tower-crisis{border-bottom:4px solid #b26071}.tower-ai{border-bottom:4px solid #6c8e65}.tooltip-host{position:relative;overflow:visible}.game-tooltip{z-index:40;visibility:hidden;color:#273033;width:min(330px,80vw);font-family:var(--font-geist-sans), sans-serif;text-align:left;white-space:normal;opacity:0;pointer-events:none;background:#f4e7c5;border:2px solid #11191a;padding:11px 12px;font-size:14px;font-weight:650;line-height:1.55;transition:opacity .12s,transform .12s,visibility .12s;display:block;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,5px);box-shadow:4px 4px #0f181973}.palette-button>.game-tooltip,.skill-button>.game-tooltip{color:#273033;font-size:14px;font-weight:650;line-height:1.55}.game-tooltip strong,.game-tooltip span,.game-tooltip b{text-overflow:clip;white-space:normal;display:block;overflow:visible}.game-tooltip strong{color:#172022;margin-bottom:3px;font-size:16px}.game-tooltip span+span{color:#4c5b5e;margin-top:4px}.game-tooltip b{color:#315d4c;margin-top:6px;font-size:14px}.tooltip-host:hover .game-tooltip,.tooltip-host:focus-visible .game-tooltip{visibility:visible;opacity:1;transform:translate(-50%)}.side-panel{background:#1d2d2f;flex-direction:column;min-height:100%;display:flex;position:relative}.side-top{background:#263b3d;border-bottom:3px solid #101718;justify-content:space-between;align-items:center;gap:10px;min-height:72px;padding:10px 12px;display:flex}.side-top strong{margin-top:3px;font-size:15px;display:block}.panel-eyebrow{color:#8da49d;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:900}.speed-controls{gap:4px;display:flex}.speed-controls button{cursor:pointer;width:37px;height:34px;color:var(--paper);font-family:var(--font-geist-mono), monospace;background:#172628;border:2px solid #101718;place-items:center;font-size:11px;font-weight:900;display:grid}.speed-controls button:hover{border-color:var(--yellow)}.context-panel{border-bottom:3px solid #101718;flex:1;padding:16px 14px}.context-panel h2{color:var(--paper);letter-spacing:-.035em;margin:5px 0 7px;font-size:21px;font-weight:950;line-height:1.1}.context-panel>p:not(.panel-eyebrow){color:#a9bbb5;margin:7px 0 12px;font-size:14px;line-height:1.58}.build-list{flex-direction:column;gap:6px;display:flex}.build-list button{cursor:pointer;text-align:left;background:#293e40;border:2px solid #101718;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:76px;padding:7px;display:grid}.build-list button:hover:not(:disabled){border-color:var(--yellow);background:#304849}.build-list button:disabled{opacity:.36}.tower-swatch{width:42px;height:42px;color:var(--white);border:2px solid #101718;place-items:center;font-size:20px;font-weight:950;display:grid}.build-list strong,.build-list small{display:block}.build-list strong{color:var(--paper);font-size:15px}.build-list small{color:#94aaa4;margin-top:3px;font-size:13px;line-height:1.4}.build-list b{color:var(--yellow);font-family:var(--font-geist-mono), monospace;font-size:13px}.station-details{border-left:3px solid var(--green-light);background:#263b3d;padding:9px 10px;color:#c9d7d1!important;font-size:13px!important;line-height:1.55!important}.station-heading,.event-heading{align-items:center;gap:10px;margin:8px 0 12px;display:flex}.station-heading>span,.event-heading>span{width:48px;height:48px;color:var(--white);border:3px solid #101718;flex:none;place-items:center;font-size:22px;font-weight:950;display:grid}.station-heading h2,.event-heading h2{margin:0;font-size:21px}.station-heading p,.event-heading p{font-family:var(--font-geist-mono), monospace;color:#93aaa3!important;margin:3px 0 0!important;font-size:12px!important}.station-stats{grid-template-columns:repeat(3,1fr);gap:4px;margin:12px 0;display:grid}.station-stats div{background:#263b3d;border:2px solid #101718;padding:8px}.station-stats span,.station-stats strong{display:block}.station-stats span{color:#8fa49e;font-size:11px}.station-stats strong{color:var(--paper);font-family:var(--font-geist-mono), monospace;margin-top:3px;font-size:16px}.upgrade-button{width:100%;margin-top:6px;font-size:14px;box-shadow:3px 3px #101718}.text-button{cursor:pointer;background:0 0;border:0;width:100%;padding:12px 5px 4px;font-size:10px;font-weight:800}.danger-button{color:#e4867c}.danger-button:hover{color:#ffada3;text-decoration:underline}.overdue-callout{color:#f2a59b;background:#492d2e;border:2px solid #8f3e3d;padding:8px;font-size:9px;font-weight:850}.event-work{margin:12px 0}.event-work>span{color:#9db0aa;justify-content:space-between;font-size:9px;display:flex}.event-work b{color:var(--paper);font-family:var(--font-geist-mono), monospace}.event-work>div{background:#101b1c;border:2px solid #101718;height:10px;margin-top:6px}.event-work i{background:var(--red);height:100%;display:block}.shield-note{border-left:4px solid var(--yellow);background:#3a392e;padding:8px 9px;color:#e7d492!important;font-size:9px!important}.priority-note{border-left:4px solid var(--blue);background:#263943;padding:8px 9px;color:#b8d6e7!important;font-size:9px!important}.route-legend{flex-direction:column;gap:5px;margin:13px 0;display:flex}.route-legend div{background:#243638;border:1px solid #3b5051;align-items:center;gap:8px;padding:6px 8px;display:flex}.route-legend i{border-radius:50%;flex:none;width:8px;height:8px}.route-legend span{color:#bacbc5;font-size:13px;font-weight:800}.wave-button{flex-direction:column;width:100%;margin-top:13px;padding:13px 10px}.wave-button small{color:#bed1c7;font-family:var(--font-geist-mono), monospace;margin-top:3px;font-size:11px}.active-wave-card{background:#263b3d;border:2px solid #101718;padding:10px}.active-wave-card span,.active-wave-card strong,.active-wave-card small{display:block}.active-wave-card span{color:#90a59f;font-size:8px}.active-wave-card strong{color:var(--yellow);font-family:var(--font-geist-mono), monospace;margin:2px 0 5px;font-size:19px}.active-wave-card small{color:#9eb2ac;font-size:8px;line-height:1.4}.handoff-panel{background:#313b35;border-bottom:3px solid #101718;padding:13px 14px}.handoff-panel h3{color:var(--paper);margin:4px 0;font-size:14px}.handoff-panel p:not(.panel-eyebrow){color:#aab8ac;margin:5px 0 9px;font-size:9px;line-height:1.5}.handoff-button{cursor:pointer;background:var(--yellow);width:100%;color:var(--ink);border:2px solid #182021;padding:8px;font-size:9px;font-weight:950}.handoff-button:disabled{opacity:.55}.side-help{background:#172527;flex-direction:column;gap:5px;margin-top:auto;padding:11px 14px;display:flex}.side-help p{color:#7f9690;letter-spacing:.07em;margin:0 0 3px;font-size:8px;font-weight:900}.side-help span{color:#95aaa4;font-size:8px}kbd{color:#d9e3dc;background:#26393b;border:1px solid #536d68;padding:1px 4px;font-size:8px}.game-footer{color:#78908a;letter-spacing:.035em;justify-content:space-between;gap:18px;padding:12px 2px 0;font-size:8px;display:flex}@media (width<=1220px){.game-console{grid-template-columns:minmax(0,1fr) 286px}.hud-strip{grid-template-columns:92px minmax(170px,1.2fr) 96px 126px 105px}.clock-block,.wave-block,.resource-block{padding:8px}.control-deck{grid-template-columns:minmax(300px,.9fr) minmax(400px,1.1fr)}.skill-group,.tower-group{padding-inline:8px}}@media (width<=980px){.game-page{padding:12px}.game-console{grid-template-columns:1fr}.play-column{border-right:0}.side-panel{border-top:4px solid #101718;grid-template-columns:1fr 1.4fr;display:grid}.side-top,.side-help{grid-column:1/-1}.context-panel{border-bottom:0;border-right:3px solid #101718;min-height:270px}.handoff-panel{border-bottom:0}}@media (width<=760px){.brand-bar{flex-direction:column;align-items:flex-start;gap:10px}.hud-strip{grid-template-columns:repeat(4,1fr)}.wave-block{order:2;grid-column:span 3}.clock-block{order:1}.points-resource,.energy-resource,.overtime-resource{order:3}.overtime-resource{grid-column:span 2}.control-deck{grid-template-columns:1fr}.control-label small{display:none}.board-frame{min-height:360px}.board-frame canvas{object-fit:fill;height:100%}.how-to-grid,.decision-grid{grid-template-columns:1fr}.how-to-grid{display:none}.decision-card{min-height:135px}.decision-card p{flex:none}.result-stats{grid-template-columns:repeat(2,1fr)}.side-panel{display:flex}.context-panel{border-bottom:3px solid #101718;border-right:0;min-height:0}.game-footer{flex-direction:column}}@media (width<=500px){.game-page{padding:8px}.brand-bar h1{font-size:23px}.version-chip{display:none}.hud-strip{grid-template-columns:repeat(2,1fr)}.wave-block{grid-column:span 2}.overtime-resource{grid-column:auto}.board-frame{min-height:330px}.difficulty-grid{grid-template-columns:1fr}.difficulty-card{min-height:72px}.skill-row{grid-template-columns:1fr}.tower-palette{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}body{background:#172326}.v2-game-page{color:#f7efd9;letter-spacing:0;flex-direction:column;width:min(1640px,100%);height:100svh;min-height:620px;padding:12px;display:flex;overflow:hidden}.v2-brand{flex:none;align-items:center;min-height:62px;margin:0;padding:0 6px 10px}.v2-brand h1{letter-spacing:0;font-size:32px;line-height:1.1}.v2-brand .brand-kicker{letter-spacing:0}.v2-run-status{background:#213638;border:2px solid #607c77;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;max-width:360px;display:grid;box-shadow:4px 4px #0d1517}.v2-run-status strong,.v2-run-status span{overflow-wrap:anywhere;min-width:0;padding:8px 11px}.v2-run-status strong{color:#172326;background:#d9aa45;font-size:15px}.v2-run-status span{color:#dce9df;font-size:14px}.v2-settings-button{color:#fff0c8;background:#263f40;border:1px solid #83a29b;border-radius:3px;min-height:32px;margin-right:5px;font-size:12px;font-weight:800}.v2-shell{background:#26383a;border:3px solid #0b1214;flex:auto;grid-template-columns:minmax(0,1fr) 330px;width:100%;min-height:0;display:grid;overflow:hidden;box-shadow:8px 8px #090f10}.v2-main{border-right:3px solid #0b1214;grid-template-rows:auto minmax(260px,1fr) auto;min-width:0;min-height:0;display:grid}.v2-hud{background:#0b1214;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;min-height:68px;padding:3px;display:grid}.v2-hud-cell{text-align:left;background:#142a2bd6;border:1px solid #dae9e238;grid-template-rows:auto auto;grid-template-columns:28px minmax(0,1fr);align-content:center;align-items:center;column-gap:6px;min-width:0;padding:8px 7px;display:grid}.v2-hud-icon{object-fit:contain;grid-row:1/3;width:28px;height:28px}.v2-hud-cell span{color:#a9c2bc;overflow-wrap:anywhere;width:100%;font-size:12px;line-height:1.25}.v2-hud-cell strong{color:#fff4d5;overflow-wrap:anywhere;width:100%;margin-top:3px;font-size:18px;line-height:1.3}.v2-hud-cell.v2-clock{background:#2e5b45e0}.v2-hud-cell.v2-clock strong{color:#fff;font-variant-numeric:tabular-nums;font-size:22px}.v2-canvas-wrap{touch-action:none;background:#d6c397;min-width:0;min-height:0;position:relative;overflow:hidden}.v2-canvas{width:100%;min-width:0;height:100%;display:block}.v2-pause-stamp{color:#a63635;z-index:5;background:#f5e8c8;border:3px solid #bd4945;padding:8px 18px;font-size:20px;font-weight:900;position:absolute;top:16px;left:50%;transform:translate(-50%)rotate(-2deg)}.v2-control-deck{z-index:10;background:#0b1214;border-top:3px solid #0b1214;grid-template-columns:minmax(310px,.8fr) minmax(520px,1.7fr);gap:2px;display:grid;position:relative;overflow:visible}.v2-control-group{background:#203537;min-width:0;padding:9px 10px 10px}.v2-control-group.tower-palette{display:block}.v2-control-group h2{color:#f3d187;letter-spacing:0;margin:0 0 7px;font-size:16px;line-height:1.2}.v2-button-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.v2-action-button,.v2-tower-button{color:#fff4d5;background:#294345;border:2px solid #5c7772;border-radius:4px;min-width:0;min-height:58px;position:relative;box-shadow:2px 2px #101a1c}.v2-action-button{text-align:left;grid-template-rows:1fr auto;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:1px 5px;padding:6px;display:grid}.v2-action-button>b{color:#f0bb50;grid-row:1/3;font-size:20px}.v2-action-button>span:not(.v2-tooltip){overflow-wrap:anywhere;min-width:0;font-size:14px;font-weight:900;line-height:1.2}.v2-action-button>small{color:#b9cec8;font-size:11px}.v2-action-button:disabled{opacity:.48}.v2-tower-scroll{grid-template-columns:repeat(5,minmax(92px,1fr));gap:6px;display:grid;overflow:visible}.v2-tower-button{text-align:left;grid-template-rows:auto auto;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:2px 7px;min-height:56px;padding:6px 7px;display:grid}.v2-tower-icon{object-fit:cover;background:#162a2b;border:1px solid #78948d;border-radius:3px;grid-row:1/3;width:42px;height:42px}.v2-art-fallback{background:#21393a;display:block;box-shadow:inset 0 0 0 1px #ffffff14}.v2-title-screen{z-index:900;background:#071311;position:fixed;inset:0;overflow:hidden}.v2-title-art{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.v2-title-credit{color:#fff;text-align:center;background:#061412e0;border-bottom:4px solid #deb544;justify-items:center;width:min(100%,640px);padding:12px 20px 10px;display:grid;position:absolute;top:0;left:50%;transform:translate(-50%)}.v2-title-credit strong{font-size:clamp(18px,2.1vw,30px);line-height:1.15}.v2-title-credit span{color:#c7d5cc;margin-top:3px;font-size:12px}.v2-title-actions{gap:10px;width:min(320px,100vw - 36px);display:grid;position:absolute;bottom:clamp(18px,5vh,56px);right:clamp(18px,5vw,72px)}.v2-title-actions button{color:#fff7dc;text-align:left;background:#16302bf0;border:2px solid #101c1b;border-radius:5px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:52px;padding:8px 16px;font-size:16px;font-weight:900;display:grid;box-shadow:4px 4px #00000075}.v2-title-actions button:hover,.v2-title-actions button:focus-visible{border-color:#f2c356;transform:translateY(-1px)}.v2-title-actions button:disabled{cursor:not-allowed;filter:saturate(.3);opacity:.62}.v2-title-actions .v2-title-new{color:#17221f;background:#e2b84b}.v2-menu-icon{object-fit:contain;width:34px;height:34px}.v2-title-secondary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.v2-title-secondary button{grid-template-columns:28px minmax(0,1fr);min-height:46px;padding:7px 10px;font-size:14px}.v2-title-secondary .v2-menu-icon{width:28px;height:28px}.v2-tower-button>span:not(.v2-tooltip){overflow-wrap:anywhere;min-width:0;font-size:13px;font-weight:850;line-height:1.2}.v2-tower-button>b{color:#f2c15e;grid-column:2;align-self:start;font-size:12px}.v2-tower-button.is-selected{background:#3c614f;border-color:#f0bb50;box-shadow:inset 0 0 0 1px #f0bb50,2px 2px #101a1c}.v2-tooltip{color:#e5eee8;text-align:left;white-space:pre-line;opacity:0;pointer-events:none;z-index:100;background:#142426;border:2px solid #d5ad59;border-radius:4px;width:min(420px,100vw - 32px);max-height:min(420px,55vh);padding:12px;font-size:16px;font-style:normal;font-weight:600;line-height:1.55;transition:opacity .12s,transform .12s;display:grid;position:absolute;bottom:calc(100% + 9px);left:0;overflow:auto;transform:translateY(5px);box-shadow:5px 5px #00000073}.skill-button>.v2-tooltip,.palette-button>.v2-tooltip{text-overflow:clip;white-space:pre-line;font-size:16px;line-height:1.55;display:grid;overflow:auto}.v2-tooltip strong{color:#ffd982;font-size:17px}.v2-tooltip em{color:#9fc6bb;margin-top:5px;font-size:14px;font-style:normal}.tooltip-host:hover>.v2-tooltip,.tooltip-host:focus>.v2-tooltip,.tooltip-host:focus-visible>.v2-tooltip{opacity:1;transform:translateY(0)}.v2-tower-button:nth-child(n+4)>.v2-tooltip{left:auto;right:0}.v2-sidebar{background:#192b2d;min-width:0;min-height:0;overflow:auto}.v2-panel{border-bottom:2px solid #0b1214;padding:14px}.v2-panel-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.v2-panel-heading>div{min-width:0}.v2-panel-heading span{color:#89aaa2;font-size:12px;font-weight:800}.v2-panel-heading h2{color:#fff2ce;overflow-wrap:anywhere;letter-spacing:0;margin:3px 0 0;font-size:18px;line-height:1.2}.v2-panel-heading>b{color:#f6cf79;border:2px solid #b9903e;flex:none;padding:4px 7px;font-size:13px}.v2-player-heading{justify-content:flex-start}.v2-player-heading>div{flex:auto}.v2-player-portrait{object-fit:cover;background:#142426;border:2px solid #b9903e;border-radius:4px;flex:0 0 52px;width:52px;height:52px}.v2-panel>p{color:#bbd0ca;white-space:pre-line;overflow-wrap:anywhere;margin:9px 0;font-size:13px;line-height:1.5}.v2-command-row,.v2-companion-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.v2-command-row button,.v2-companion-grid button,.v2-wide-command,.v2-promotion button,.v2-primary-command{color:#fff3d4;overflow-wrap:anywhere;background:#2a4547;border:2px solid #66817b;border-radius:4px;min-width:0;min-height:38px;font-size:13px;font-weight:850;line-height:1.2}.v2-wide-command,.v2-primary-command{background:#3f634f;border-color:#bd9039;width:100%;margin-top:9px}.v2-promotion{border-top:1px solid #48615d;grid-template-columns:minmax(0,1fr) 88px;align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:grid}.v2-promotion>div{gap:3px;min-width:0;display:grid}.v2-promotion b{color:#f5d58b;font-size:14px}.v2-promotion span{color:#a9c2bc;overflow-wrap:anywhere;font-size:12px;line-height:1.35}.v2-promotion button:disabled{opacity:.45}.v2-companion-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:9px}.v2-companion-status{gap:6px;margin-top:9px;display:grid}.v2-companion-status>p{color:#b9cec8;margin:0;font-size:13px;line-height:1.45}.v2-companion-status>.v2-replacement-warning{color:#ffe09a;background:#4a3c24;border:1px solid #e0b54f;padding:7px 8px;font-weight:800}.v2-companion-status>div{background:#21393a;border-left:3px solid #5aa583;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:3px 8px;padding:7px 8px;display:grid}.v2-companion-status b{color:#f4d58c;overflow-wrap:anywhere;grid-column:2/-1;font-size:13px}.v2-companion-status span{color:#bdd1cc;font-size:12px}.v2-companion-status .v2-companion-portrait{grid-row:1/3}.v2-companion-portrait{object-fit:cover;background:#142426;border:1px solid #6f9188;border-radius:3px;width:42px;height:42px}.v2-summon-guide{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:9px;display:grid}.v2-summon-guide>div{text-align:center;background:#203537;border:1px solid #59756f;align-content:center;justify-items:center;min-width:0;min-height:96px;padding:5px;display:grid;position:relative}.v2-summon-guide b,.v2-summon-guide>div>span:not(.v2-tooltip){overflow-wrap:anywhere;letter-spacing:0}.v2-summon-guide .v2-companion-portrait{margin-bottom:4px}.v2-companion-item-icon{object-fit:contain;width:24px;height:24px;position:absolute;top:4px;right:4px}.v2-summon-guide b{color:#fff0c7;font-size:12px}.v2-summon-guide>div>span:not(.v2-tooltip){color:#9fbbb4;margin-top:3px;font-size:11px}.v2-summon-guide .v2-tooltip{text-align:left;width:min(310px,82vw);bottom:calc(100% + 7px);left:auto;right:0}.v2-summon-guide .v2-tooltip em{color:#d3e1dd;white-space:normal;margin-top:5px;font-size:12px;font-style:normal;line-height:1.4;display:block}.v2-settings-modal{max-width:420px}.v2-setting-row{color:#e8f0ed;border-bottom:1px solid #526b66;justify-content:space-between;align-items:center;gap:16px;min-height:46px;font-size:15px;font-weight:750;display:flex}.v2-setting-row input{accent-color:#dfb24e;width:22px;height:22px}.v2-modal-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.v2-modal-actions>button:only-child{grid-column:1/-1}.v2-week-actions{gap:14px;margin-top:14px;display:grid}.v2-week-actions b,.v2-new-week-row label{color:#fff0c7;margin-bottom:7px;font-size:14px;display:block}.v2-day-replay-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.v2-day-replay-grid button{min-width:0;padding-inline:6px}.v2-new-week-row{grid-template-columns:minmax(0,1fr) minmax(160px,1fr) minmax(160px,1fr);align-items:end;gap:8px;display:grid}.v2-new-week-row label{margin:0}.v2-new-week-row select{color:#fff0c7;min-width:0;min-height:42px;font:inherit;background:#17292b;border:2px solid #708985;border-radius:4px;padding:8px;font-size:14px}.v2-game-page.is-high-contrast{filter:contrast(1.18)}.v2-game-page.is-high-contrast .v2-panel,.v2-game-page.is-high-contrast .v2-hud-cell{border-color:#f4d173}.v2-game-page.is-reduced-motion *,.v2-game-page.is-reduced-motion :before,.v2-game-page.is-reduced-motion :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.v2-inspector dl,.v2-report{background:#405754;gap:1px;margin:10px 0 0;display:grid}.v2-inspector-portrait{object-fit:contain;width:72px;height:72px;margin:10px auto 0;display:block}.v2-inspector dl div,.v2-report div{background:#203537;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:7px 9px;display:grid}.v2-inspector dt,.v2-report dt{color:#9bb6af;font-size:12px}.v2-inspector dd,.v2-report dd{color:#fff0c7;text-align:right;margin:0;font-size:13px;font-weight:850}.v2-modal-backdrop{z-index:1000;background:#080f11db;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow:auto}.v2-modal{background:#203537;border:3px solid #e1b658;border-radius:6px;width:min(660px,100%);max-height:calc(100svh - 32px);padding:22px;overflow:auto;box-shadow:8px 8px #080e10}.v2-modal h2{color:#fff0c6;letter-spacing:0;overflow-wrap:anywhere;margin:5px 0 14px;font-size:24px;line-height:1.25}.v2-modal p{color:#bed1cc;font-size:14px;line-height:1.55}.v2-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.v2-slot-grid button,.v2-card-choices button{color:#edf3ee;text-align:left;background:#182a2c;border:2px solid #57716d;border-radius:4px;gap:5px;min-width:0;min-height:64px;padding:9px;display:grid}.v2-slot-grid button.is-selected{background:#345743;border-color:#e7b850}.v2-slot-grid span,.v2-card-choices span{color:#abc3bd;overflow-wrap:anywhere;font-size:12px;line-height:1.4}.v2-form-grid{grid-template-columns:1.2fr 1.6fr 1fr;gap:10px;margin-top:15px;display:grid}.v2-form-grid label,.v2-form-grid fieldset{color:#bcd0cb;border:0;gap:6px;min-width:0;margin:0;padding:0;font-size:13px;display:grid}.v2-form-grid input,.v2-form-grid select{color:#fff2d0;width:100%;min-width:0;min-height:42px;font:inherit;background:#122326;border:2px solid #617c76;border-radius:4px;padding:7px 9px}.v2-segmented{grid-template-columns:repeat(2,minmax(0,1fr));min-height:42px;display:grid}.v2-segmented button{overflow-wrap:anywhere;background:#182b2d;border:2px solid #617c76;border-radius:0;min-width:0;padding:5px;font-size:12px;line-height:1.2}.v2-segmented button+button{border-left:0}.v2-segmented button.is-selected{color:#fff4d5;background:#47725b}.v2-form-error,.danger-text{color:#ff8b82!important}.v2-card-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.v2-card-choices button{min-height:150px}.v2-card-choice-icon{object-fit:contain;justify-self:center;width:58px;height:58px}.v2-card-choices b{color:#f4cc75;font-size:17px}.v2-tutorial{width:min(760px,100%)}.v2-tutorial-grid{border:1px solid #4e6964;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.v2-tutorial-grid section{border:1px solid #4e6964;min-width:0;padding:14px}.v2-tutorial-grid b{color:#f4cf7e;font-size:16px}.v2-tutorial-grid p{color:#c5d6d1;overflow-wrap:anywhere;margin:6px 0 0;font-size:14px;line-height:1.55}.v2-mobile-controls{display:none}@media (width<=1160px){.v2-shell{grid-template-columns:minmax(0,1fr) 280px}.v2-control-deck{grid-template-columns:minmax(300px,.85fr) minmax(440px,1.45fr)}.v2-tower-scroll{grid-template-columns:repeat(3,minmax(104px,1fr))}}@media (orientation:landscape) and (height<=600px){.v2-game-page{min-height:0;padding:4px}.v2-brand{min-height:38px;padding:0 3px 4px}.v2-brand .brand-kicker{display:none}.v2-brand h1{font-size:21px}.v2-run-status{max-width:280px}.v2-run-status strong,.v2-run-status span{padding:4px 7px;font-size:11px}.v2-shell{box-shadow:none;grid-template-columns:minmax(0,1fr) minmax(220px,28vw)}.v2-main{grid-template-rows:48px minmax(150px,1fr) 78px}.v2-hud{min-height:48px}.v2-hud-cell{grid-template-columns:20px minmax(0,1fr);column-gap:3px;padding:3px}.v2-hud-icon{width:20px;height:20px}.v2-hud-cell span{font-size:10px}.v2-hud-cell strong,.v2-hud-cell.v2-clock strong{margin-top:1px;font-size:14px}.v2-hud-cell.v2-clock strong{font-size:15px}.v2-control-deck{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);overflow:hidden}.v2-control-group{padding:5px 7px}.v2-control-group h2{margin-bottom:4px;font-size:12px}.v2-button-row{overscroll-behavior-inline:contain;gap:4px;display:flex;overflow-x:auto}.v2-action-button,.v2-tower-button{min-height:44px;padding:3px 5px}.v2-action-button{text-align:center;flex:0 0 108px;justify-content:center;align-items:center;display:flex}.v2-action-button>span:not(.v2-tooltip){width:100%;font-size:12px;line-height:1.2}.v2-action-button>b,.v2-action-button>small{display:none}.v2-tower-button>span:not(.v2-tooltip){font-size:12px}.v2-tower-button>b{font-size:11px}.v2-tower-scroll{gap:4px;display:flex;overflow-x:auto}.v2-tower-button{flex:0 0 132px;grid-template-columns:36px minmax(0,1fr)}.v2-tower-icon{width:36px;height:36px}.v2-sidebar{font-size:11px}.v2-panel{padding:8px}.v2-panel-heading h2{font-size:14px}.v2-player-portrait{flex-basis:42px;width:42px;height:42px}.v2-panel>p,.v2-promotion span{font-size:12px}.v2-command-row button,.v2-companion-grid button,.v2-wide-command,.v2-promotion button{min-height:34px;font-size:12px}.v2-companion-status>p,.v2-companion-status b,.v2-companion-status span,.v2-summon-guide b,.v2-summon-guide>div>span:not(.v2-tooltip){font-size:12px}.v2-mobile-controls{pointer-events:none;z-index:8;justify-content:space-between;align-items:flex-end;padding:10px 14px;display:flex;position:absolute;inset:0}.v2-joystick{pointer-events:auto;touch-action:none;background:#0f1f217a;border:2px solid #fff4d5b3;border-radius:50%;width:96px;height:96px;position:relative}.v2-joystick-knob{pointer-events:none;background:#4e8065;border:2px solid #fff2ce;border-radius:50%;width:40px;height:40px;position:absolute;top:27px;left:27px;box-shadow:2px 2px #00000073}.v2-mobile-skills{pointer-events:auto;grid-template-columns:repeat(2,48px);gap:7px;display:grid}.v2-mobile-skills button{color:#fff0c8;touch-action:manipulation;background:#24403ae6;border:2px solid #f1ce83;border-radius:50%;place-items:center;width:48px;height:48px;line-height:1;display:grid}.v2-mobile-skills b{font-size:16px}.v2-mobile-skills small{font-size:9px}.v2-modal{max-height:calc(100svh - 12px);padding:13px}.v2-modal h2{margin-bottom:8px;font-size:18px}.v2-form-grid{margin-top:8px}.v2-tutorial-grid section{padding:8px 10px}.v2-tutorial-grid b,.v2-tutorial-grid p{font-size:13px}.v2-tutorial-grid p{margin-top:3px;line-height:1.35}.v2-title-credit{border-bottom-width:2px;width:min(52%,420px);padding:6px 12px 5px}.v2-title-credit strong{font-size:15px}.v2-title-credit span{font-size:9px}.v2-title-actions{gap:6px;width:250px;bottom:12px;right:14px}.v2-title-actions button{grid-template-columns:28px minmax(0,1fr);gap:7px;min-height:42px;padding:5px 10px;font-size:13px}.v2-menu-icon{width:28px;height:28px}.v2-title-secondary{gap:6px}.v2-title-secondary button{grid-template-columns:22px minmax(0,1fr);min-height:38px;font-size:12px}.v2-title-secondary .v2-menu-icon{width:22px;height:22px}}@media (width<=760px) and (orientation:portrait){.v2-game-page{height:auto;min-height:100svh;overflow:visible}.v2-brand{flex-direction:column;align-items:flex-start}.v2-brand h1{font-size:25px}.v2-title-art{object-position:58% center}.v2-title-credit{width:100%}.v2-title-actions{width:auto;left:14px;right:14px}.v2-shell{grid-template-columns:1fr;overflow:visible}.v2-main{border-right:0;min-height:700px}.v2-hud{grid-template-columns:repeat(3,minmax(0,1fr))}.v2-control-deck{grid-template-columns:1fr;overflow:hidden}.v2-button-row{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-tower-scroll{display:flex;overflow-x:auto}.v2-tower-button{flex:0 0 138px}.v2-sidebar{overflow:visible}.v2-form-grid,.v2-slot-grid,.v2-card-choices,.v2-tutorial-grid{grid-template-columns:1fr}.v2-new-week-row{grid-template-columns:1fr;align-items:stretch}}.v2-shell{grid-template-columns:minmax(0,1fr);position:relative}.v2-main.unified-battle-hud{border-right:0;min-height:0;display:block;position:relative;overflow:hidden}.unified-battle-hud .v2-canvas-wrap{width:100%;height:100%;position:absolute;inset:0}.unified-battle-hud .v2-hud{pointer-events:none;z-index:20;background:0 0;grid-template-columns:repeat(6,minmax(76px,1fr));gap:5px;min-height:0;padding:0;display:grid;position:absolute;top:8px;left:8px;right:226px;overflow:hidden}.unified-battle-hud .v2-hud-cell{background:#0f2323e3;border:2px solid #dec47ed1;border-radius:4px;min-height:52px;padding:5px 7px;box-shadow:2px 2px #0000006b}.battle-command-bar{pointer-events:auto;z-index:25;gap:5px;display:flex;position:absolute;top:8px;right:8px}.battle-command-bar button,.battle-drawer-close{color:#fff4d5;touch-action:manipulation;background:#132b2af0;border:2px solid #d8bd78;border-radius:4px;place-items:center;width:48px;height:48px;padding:5px;font-size:17px;font-weight:900;display:grid;box-shadow:2px 2px #00000075}.battle-command-bar button:hover,.battle-command-bar button:focus-visible,.battle-drawer-close:hover,.battle-drawer-close:focus-visible{background:#315b4b;border-color:#fff0b0}.battle-command-icon{object-fit:contain;width:32px;height:32px}.v2-control-deck{pointer-events:none;z-index:22;background:0 0;border:0;grid-template-columns:none;align-items:flex-end;gap:8px;display:flex;position:absolute;bottom:8px;left:8px;right:8px;overflow:visible}.v2-control-group{pointer-events:none;background:0 0;min-width:0;padding:0}.v2-control-group.tower-palette{flex:auto;order:1;overflow:hidden}.v2-control-group[aria-label=小社技能]{flex:none;order:2}.battle-control-label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.v2-button-row,.v2-tower-scroll{pointer-events:auto;gap:6px;display:flex;overflow:visible}.v2-tower-scroll{overscroll-behavior-inline:contain;scrollbar-width:thin;padding:4px 2px;overflow:auto visible}.battle-skill-button,.battle-companion-button,.battle-tower-button{color:#fff4d5;touch-action:manipulation;background:#142e2bf0;border:2px solid #d7bc77;border-radius:50%;place-items:center;width:58px;min-width:58px;height:58px;min-height:58px;padding:4px;display:grid;position:relative;box-shadow:3px 3px #0000007a}.battle-tower-button{text-align:center;border-color:#78958d;border-radius:5px;flex:0 0 58px;grid-template:1fr/1fr}.battle-skill-button:hover,.battle-skill-button:focus-visible,.battle-companion-button:hover,.battle-companion-button:focus-visible,.battle-tower-button:hover,.battle-tower-button:focus-visible,.tooltip-host.is-held{background:#39644f;border-color:#ffe09a;box-shadow:0 0 0 2px #ffe09a59,3px 3px #0000007a}.battle-skill-button[aria-disabled=true],.battle-companion-button[aria-disabled=true],.battle-tower-button[aria-disabled=true]{filter:saturate(.45);opacity:.64}.battle-control-icon,.battle-tower-button .v2-tower-icon{object-fit:cover;background:#162a2b;border:0;border-radius:50%;grid-area:1/1;width:46px;height:46px}.battle-tower-button .v2-tower-icon{border-radius:3px}.battle-control-name,.battle-tower-button .v2-tower-name{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.battle-tower-button .v2-tower-role{display:none}.battle-control-badge,.battle-tower-button>b{color:#ffe39c;background:#122424;border:1px solid #efd189;border-radius:9px;place-items:center;min-width:22px;min-height:20px;padding:2px 4px;font-size:11px;font-weight:900;line-height:1;display:grid;position:absolute;bottom:-3px;right:-3px}.v2-tooltip{width:min(390px,100vw - 24px);max-height:min(390px,100vh - 120px);font-size:15px;line-height:1.5}.v2-control-deck .v2-tooltip{position:fixed;bottom:82px;left:18px;right:auto}.tooltip-host.is-held>.v2-tooltip{opacity:1;transform:translateY(0)}.v2-button-row .tooltip-host:nth-last-child(-n+3)>.v2-tooltip{left:auto;right:0}.battle-info-drawer{z-index:30;background:#142829f5;border:2px solid #d7bc77;border-radius:4px;width:min(360px,44vw);min-width:280px;display:block;position:absolute;top:66px;bottom:76px;right:8px;overflow:auto;box-shadow:6px 6px #0000007a}.battle-info-drawer[hidden]{display:none}.battle-drawer-close{float:right;z-index:2;width:40px;height:40px;margin:6px 6px -46px 0;font-size:25px;line-height:1;position:sticky;top:6px}.battle-info-drawer .v2-panel{padding:12px}@media (orientation:landscape) and (height<=600px){.v2-shell{grid-template-columns:minmax(0,1fr)}.v2-main.unified-battle-hud{display:block}.unified-battle-hud .v2-hud{grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;top:5px;left:5px;right:219px}.unified-battle-hud .v2-hud-cell{grid-template-columns:18px minmax(0,1fr);column-gap:2px;min-height:48px;padding:3px}.unified-battle-hud .v2-hud-icon{width:18px;height:18px}.unified-battle-hud .v2-hud-cell span{display:none}.unified-battle-hud .v2-hud-cell strong,.unified-battle-hud .v2-hud-cell.v2-clock strong{margin:0;font-size:12px;line-height:1.15}.battle-command-bar{gap:4px;top:5px;right:5px}.battle-command-bar button{width:48px;height:48px}.v2-control-deck{gap:5px;bottom:5px;left:5px;right:5px}.v2-control-deck .v2-tooltip{bottom:63px;left:8px;right:auto}.v2-control-deck .v2-button-row .v2-tooltip{left:auto;right:8px}.v2-button-row,.v2-tower-scroll{gap:4px}.battle-skill-button,.battle-companion-button,.battle-tower-button{flex-basis:50px;width:50px;min-width:50px;height:50px;min-height:50px;padding:3px}.battle-control-icon,.battle-tower-button .v2-tower-icon{width:40px;height:40px}.battle-info-drawer{width:min(330px,72vw);min-width:250px;top:58px;bottom:62px;right:5px}.v2-mobile-controls{z-index:18;padding:0}.v2-joystick{position:absolute;bottom:64px;left:10px}}@media (width<=760px) and (orientation:portrait){.v2-game-page{height:100svh;min-height:0;overflow:hidden}.v2-shell{overflow:hidden}.v2-main.unified-battle-hud{min-height:0}.unified-battle-hud .v2-hud{grid-template-columns:repeat(3,minmax(72px,1fr));right:8px}.battle-command-bar{top:126px}.v2-control-deck{flex-direction:column;align-items:stretch}.v2-control-group[aria-label=小社技能]{align-self:flex-end}.battle-info-drawer{width:calc(100vw - 16px);min-width:0;top:184px}}@media (orientation:landscape) and (width<=720px){.unified-battle-hud .v2-hud{grid-template-columns:repeat(3,minmax(0,1fr))}}.v2-game-page img,.v2-game-page canvas,.v2-game-page button,.v2-game-page .tooltip-host{-webkit-touch-callout:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.unified-battle-hud .v2-hud{grid-template-columns:1fr;gap:2px;width:76px;top:6px;left:6px;right:auto;overflow:visible}.unified-battle-hud .v2-hud-cell{min-height:32px;box-shadow:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0819197a;border:0;grid-template-columns:17px minmax(0,1fr);padding:2px 3px}.unified-battle-hud .v2-hud-cell strong,.unified-battle-hud .v2-hud-cell.v2-clock strong{text-shadow:0 1px 3px #000;font-size:11px;line-height:1.05}.battle-command-bar button,.battle-drawer-close{width:36px;height:36px;box-shadow:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#091c1c85;border:0;padding:4px}.battle-action-rail{pointer-events:none;z-index:24;flex-direction:column;align-items:center;gap:7px;display:flex;position:absolute;top:46px;bottom:5px;right:5px}.battle-action-rail .v2-control-group{flex:none}.battle-skill-rail,.battle-pet-rail{pointer-events:auto;flex-direction:column;align-items:center;gap:4px;display:flex}.battle-pet-rail{border-top:1px solid #efd1897a;padding-top:5px}.battle-action-rail .battle-skill-button,.battle-pet-shortcut{color:#fff4d5;width:44px;min-width:44px;height:44px;min-height:44px;box-shadow:none;touch-action:manipulation;background:#0a1f1fb8;border:1px solid #efd189d1;border-radius:50%;place-items:center;padding:3px;display:grid;position:relative}.battle-pet-shortcut{width:36px;min-width:36px;height:36px;min-height:36px}.battle-action-rail .battle-control-icon{width:36px;height:36px}.battle-pet-shortcut .battle-control-icon{width:30px;height:30px}.battle-pet-shortcut.is-inactive{filter:grayscale(.75);opacity:.6}.battle-action-rail .battle-control-badge{max-width:48px;min-height:16px;padding:1px 3px;font-size:8px;bottom:-3px;right:-5px}.battle-action-rail .v2-tooltip{width:min(310px,100vw - 130px);max-height:calc(100vh - 16px);font-size:12px;position:fixed;bottom:8px;left:auto;right:56px;overflow:auto}.v2-control-deck .tower-palette{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#081b1b94;padding:3px}.v2-placement-choice{background:#081b1ba3;padding:3px 7px;font-size:10px;bottom:68px;left:auto;right:64px}.v2-joystick{width:86px;height:86px}.battle-character-drawer,.battle-tower-drawer{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:30;background:#0c2323d6;border:1px solid #d7bc77a3;border-radius:4px;width:min(330px,54vw);min-width:250px;display:block;position:absolute;top:46px;bottom:5px;right:56px;overflow:auto;box-shadow:3px 3px #00000052}.battle-character-drawer[hidden],.battle-tower-drawer[hidden]{display:none}.battle-character-drawer .v2-panel,.battle-tower-drawer .v2-panel{background:0 0;padding:10px}.battle-tower-summary{gap:5px;margin:6px 0 9px;display:grid}.battle-tower-summary p{background:#0000002e;border-left:3px solid #d9bc75;margin:0;padding:6px 7px;font-size:12px;line-height:1.4}.battle-tower-summary .battle-tower-effect{color:#c8f2df;font-weight:750}.battle-tower-summary .battle-tower-effect.is-next{color:#f4d98f}.v2-settings-exit-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.v2-settings-exit-actions button{min-height:38px}.v2-settings-exit-actions .is-danger{color:#ffd5d1;border-color:#bd6c68}@media (orientation:landscape) and (height<=600px){.unified-battle-hud .v2-hud{grid-template-columns:1fr;width:72px;top:4px;left:4px;right:auto}.unified-battle-hud .v2-hud-cell{text-align:left;grid-template-columns:15px minmax(0,1fr);min-height:29px;padding:1px 2px}.unified-battle-hud .v2-hud-icon{width:15px;height:15px;display:block}.unified-battle-hud .v2-hud-cell strong,.unified-battle-hud .v2-hud-cell.v2-clock strong{font-size:10px}.battle-command-bar{top:4px;right:4px}.battle-action-rail{top:44px;bottom:4px;right:4px}.v2-control-deck{bottom:4px;left:86px;right:54px}.battle-character-drawer,.battle-tower-drawer{top:44px;bottom:4px;right:54px}}.v2-game-page{width:100%;min-height:0;padding:0}.v2-shell{box-shadow:none;border:0}.unified-battle-hud .v2-hud{gap:3px;top:5px;left:5px;right:270px}.unified-battle-hud .v2-hud-cell{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f2323ad;border:1px solid #e2ca8994;grid-template-columns:20px minmax(0,1fr);column-gap:3px;min-height:40px;padding:3px 5px;box-shadow:1px 1px #00000047}.unified-battle-hud .v2-hud-icon{width:20px;height:20px}.unified-battle-hud .v2-hud-cell span{font-size:9px;line-height:1.1}.unified-battle-hud .v2-hud-cell strong,.unified-battle-hud .v2-hud-cell.v2-clock strong{margin-top:0;font-size:13px;line-height:1.1}.battle-command-bar button{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#132b2ac2;width:48px;height:48px;box-shadow:1px 1px #00000052}.v2-tooltip,.skill-button>.v2-tooltip,.palette-button>.v2-tooltip{color:#edf5ef;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0c1d1ed1;border:1px solid #e1be6fd1;gap:3px;width:min(270px,100vw - 16px);max-height:min(168px,100svh - 92px);padding:8px 9px;font-size:12px;line-height:1.35;box-shadow:2px 2px #0000004d}.v2-tooltip strong{font-size:13px}.v2-tooltip em{margin-top:1px;font-size:11px}.v2-control-deck .v2-tooltip{bottom:68px;left:8px}.v2-control-deck .v2-button-row .v2-tooltip{left:auto;right:8px}.battle-info-drawer{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#142829d6;top:58px;bottom:70px;box-shadow:3px 3px #00000057}.v2-placement-choice{color:#fff0bd;pointer-events:none;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a1b1cc2;border:1px solid #efd189b8;border-radius:3px;max-width:min(250px,70vw);padding:5px 8px;font-size:12px;font-weight:850;line-height:1.2;position:absolute;bottom:68px;left:2px}.v2-placement-tower-preview{pointer-events:auto;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#091b1ce0;border:1px solid #efd189d1;border-radius:5px;grid-template-columns:minmax(0,1fr) auto 34px;align-items:center;gap:8px;width:min(560px,100vw - 104px);min-height:68px;padding:7px 8px;display:grid;position:absolute;bottom:70px;left:2px;box-shadow:2px 2px #00000061}.v2-placement-tower-copy{gap:1px;min-width:0;display:grid}.v2-placement-tower-copy strong,.v2-placement-tower-copy span,.v2-placement-tower-copy small{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.2;overflow:hidden}.v2-placement-tower-copy strong{color:#ffe39c;font-size:14px}.v2-placement-tower-copy span{color:#d8fff5;font-size:11px;font-weight:800}.v2-placement-tower-copy small{color:#e4ece7;font-size:10px}.v2-placement-confirm,.v2-placement-cancel{cursor:pointer;color:#fff8de;background:#3f6b57;border:1px solid #efd189;min-height:44px;font-weight:900}.v2-placement-confirm{min-width:82px;padding:5px 8px}.v2-placement-confirm b{color:#ffe39c}.v2-placement-confirm:disabled{cursor:not-allowed;filter:saturate(.35);opacity:.58}.v2-placement-cancel{background:#2c403de0;width:34px;min-width:34px;padding:0;font-size:22px}.v2-title-credit{color:#fff;text-align:left;text-shadow:0 2px 4px #000000e0;background:0 0;border:0;justify-items:start;width:auto;padding:0;inset:auto auto 16px 18px;transform:none}.v2-title-credit strong{font-size:clamp(15px,1.7vw,23px)}.v2-title-credit span{color:#fff;font-size:11px}.v2-select-wrap{min-width:0;display:block;position:relative}.v2-select-wrap select{appearance:none;padding-right:32px}.v2-select-caret{pointer-events:none;border-top:7px solid #f2cf7d;border-left:5px solid #0000;border-right:5px solid #0000;width:0;height:0;position:absolute;top:50%;right:12px;transform:translateY(-35%)}.v2-setup-modal{width:min(760px,100vw - 16px);max-height:calc(100dvh - 12px);padding:14px}.v2-setup-modal input,.v2-setup-modal select{font-size:16px}.v2-card-choices .v2-tooltip,.v2-promotion .v2-tooltip,.v2-command-row .v2-tooltip{left:auto;right:0}@media (orientation:landscape) and (height<=600px){.v2-game-page{padding:0}.unified-battle-hud .v2-hud{grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;top:4px;left:4px;right:264px}.unified-battle-hud .v2-hud-cell{grid-template-columns:16px minmax(0,1fr);min-height:36px;padding:2px 3px}.unified-battle-hud .v2-hud-icon{width:16px;height:16px}.unified-battle-hud .v2-hud-cell strong,.unified-battle-hud .v2-hud-cell.v2-clock strong{font-size:11px}.battle-command-bar{top:4px;right:4px}.v2-control-deck{bottom:4px;left:4px;right:4px}.v2-placement-choice{font-size:11px;bottom:60px}.v2-control-deck .v2-tooltip{bottom:60px}.v2-modal-backdrop{padding:4px}.v2-setup-modal{border-width:2px;width:min(760px,100vw - 8px);max-height:calc(100dvh - 8px);padding:9px 11px;box-shadow:3px 3px #080e10}.v2-setup-modal .panel-eyebrow{font-size:10px}.v2-setup-modal h2{margin:2px 0 7px;font-size:18px}.v2-setup-modal .v2-slot-grid{gap:5px}.v2-setup-modal .v2-slot-grid button{gap:2px;min-height:46px;padding:5px 7px}.v2-setup-modal .v2-form-grid{gap:7px;margin-top:7px}.v2-setup-modal .v2-form-grid label,.v2-setup-modal .v2-form-grid fieldset{gap:3px;font-size:11px}.v2-setup-modal .v2-form-grid input,.v2-setup-modal .v2-form-grid select,.v2-setup-modal .v2-segmented{min-height:36px}.v2-setup-modal .v2-primary-command{min-height:36px;margin-top:7px;padding:5px 10px}}@media (orientation:landscape) and (width<=720px){.unified-battle-hud .v2-hud{grid-template-columns:repeat(6,minmax(0,1fr))}.unified-battle-hud .v2-hud-icon{display:none}.unified-battle-hud .v2-hud-cell{text-align:center;grid-template-columns:minmax(0,1fr);display:grid}}html,body{width:100%;height:100%;min-height:100%;margin:0;overflow:hidden}.v2-game-page,.v2-shell,.v2-title-screen{width:100dvw;min-width:0;height:100dvh;min-height:0;margin:0;padding:0}.v2-title-screen{top:calc(0px - env(safe-area-inset-top));right:calc(0px - env(safe-area-inset-right));bottom:calc(0px - env(safe-area-inset-bottom));left:calc(0px - env(safe-area-inset-left));background:#071311;width:auto;max-width:none;height:auto;max-height:none;position:fixed}.v2-title-art{object-fit:cover;object-position:center;width:100%;max-width:none;height:100%;max-height:none;inset:0}.unified-battle-hud .v2-hud{grid-template-columns:1fr;gap:2px;width:76px;top:6px;left:6px;right:auto}.unified-battle-hud .v2-hud-cell{min-height:32px;box-shadow:none;background:#0819197a;border:0;grid-template-columns:17px minmax(0,1fr);padding:2px 3px}.unified-battle-hud .v2-hud-icon{width:17px;height:17px;display:block}.unified-battle-hud .v2-hud-cell span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.unified-battle-hud .v2-hud-cell strong,.unified-battle-hud .v2-hud-cell.v2-clock strong{margin:0;font-size:11px;line-height:1.05}.battle-command-bar{gap:2px;top:5px;right:5px}.battle-command-bar button,.battle-drawer-close{width:36px;height:36px;box-shadow:none;background:#091c1c85;border:0;padding:4px}.battle-command-icon{width:26px;height:26px}.battle-action-rail{top:46px;bottom:5px;right:5px}.v2-control-deck{bottom:5px;left:92px;right:56px}.v2-mobile-controls{bottom:2px;left:-6px}@media (orientation:landscape) and (height<=600px){.v2-title-screen{width:auto;height:auto}.v2-title-art{object-position:center top;width:100%;height:100%}.unified-battle-hud .v2-hud{grid-template-columns:1fr;gap:2px;width:72px;top:4px;left:4px;right:auto}.unified-battle-hud .v2-hud-cell{text-align:left;grid-template-columns:15px minmax(0,1fr);min-height:29px;padding:1px 2px}.unified-battle-hud .v2-hud-icon{width:15px;height:15px;display:block}.unified-battle-hud .v2-hud-cell strong,.unified-battle-hud .v2-hud-cell.v2-clock strong{font-size:10px}.battle-command-bar{top:4px;right:4px}.battle-action-rail{top:44px;bottom:4px;right:4px}.v2-control-deck{bottom:4px;left:86px;right:54px}}.unified-battle-hud .v2-hud{left:max(4px, calc(var(--world-offset-x,0px) - 76px));pointer-events:auto}.unified-battle-hud .v2-hud-cell{appearance:none;width:100%;color:inherit;font:inherit;text-align:left;cursor:help;margin:0}.unified-battle-hud .v2-hud-cell:focus-visible{outline-offset:1px;outline:2px solid #ffeba9e6}.unified-battle-hud .v2-hud-cell>.v2-tooltip{top:6px;bottom:auto;right:auto;left:max(84px, calc(var(--world-offset-x,0px) + 6px));text-align:left;white-space:normal;width:min(280px,100vw - 96px);max-height:min(150px,100vh - 12px);position:fixed}.battle-action-rail{top:auto;right:max(4px, calc(var(--world-offset-x,0px) - 48px));justify-content:flex-end;max-height:calc(100% - 48px);bottom:4px}.v2-mobile-controls{left:max(2px, calc(var(--world-offset-x,0px) - 12px));bottom:2px}.battle-tower-role{color:#d8fff5;font-weight:800;border-left-color:#67d7c1!important}@media (orientation:landscape) and (height<=600px){.unified-battle-hud .v2-hud{left:max(3px, calc(var(--world-offset-x,0px) - 72px))}.battle-action-rail{top:auto;right:max(3px, calc(var(--world-offset-x,0px) - 46px));gap:4px;bottom:3px}.v2-mobile-controls{left:max(1px, calc(var(--world-offset-x,0px) - 12px));bottom:1px}}@media (width>=901px) and (height>=601px){.unified-battle-hud .v2-hud{top:10px;left:max(10px, calc(var(--world-offset-x,0px) - 124px));gap:4px;width:118px}.unified-battle-hud .v2-hud-cell{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#081b1bc7;border:1px solid #e6cf91b3;grid-template-rows:auto auto;grid-template-columns:26px minmax(0,1fr);column-gap:6px;min-height:47px;padding:5px 7px;box-shadow:2px 2px #0000004d}.unified-battle-hud .v2-hud-icon{grid-row:1/3;width:24px;height:24px}.unified-battle-hud .v2-hud-cell>span:not(.v2-tooltip){clip:auto;color:#bcd0c7;white-space:nowrap;grid-column:2;width:auto;height:auto;font-size:10px;line-height:1.1;position:static;overflow:visible}.unified-battle-hud .v2-hud-cell strong,.unified-battle-hud .v2-hud-cell.v2-clock strong{grid-column:2;margin:1px 0 0;font-size:14px;line-height:1.1}.unified-battle-hud .v2-hud-cell>.v2-tooltip{top:10px;left:max(140px, calc(var(--world-offset-x,0px) + 10px));width:min(340px,100vw - 160px);max-height:210px;padding:11px 12px;font-size:14px}.battle-action-rail{flex-direction:column;align-items:center;gap:10px;max-height:calc(100% - 72px);inset:62px 10px auto auto}.battle-skill-rail,.battle-pet-rail{flex-direction:column;gap:8px}.battle-pet-rail{border-top:1px solid #efd1897a;border-left:0;padding-top:10px;padding-left:0}.battle-action-rail .battle-skill-button{border-width:2px;width:72px;min-width:72px;height:72px;min-height:72px;padding:5px}.battle-action-rail .battle-control-icon{width:60px;height:60px}.battle-pet-shortcut{width:56px;min-width:56px;height:56px;min-height:56px}.battle-pet-shortcut .battle-control-icon{width:48px;height:48px}.battle-action-rail .battle-control-badge{min-width:25px;min-height:19px;font-size:11px;bottom:-4px;right:-7px}.battle-action-rail .v2-tooltip{width:min(350px,100vw - 116px);max-height:min(310px,100vh - 76px);padding:11px 12px;font-size:14px;line-height:1.45;inset:62px 92px auto auto}.battle-action-rail .v2-tooltip strong{font-size:15px}.battle-command-bar button,.battle-drawer-close{width:44px;height:44px}.v2-control-deck{right:max(88px, calc(var(--world-offset-x,0px) + 12px));left:max(140px, calc(var(--world-offset-x,0px) + 12px))}.v2-control-group.tower-palette,.v2-control-group.tower-palette:hover,.v2-control-group.tower-palette:focus-within,.v2-control-group.tower-palette .v2-tower-scroll{overflow:visible}.v2-control-deck .tower-palette{-webkit-backdrop-filter:none;backdrop-filter:none}.v2-control-deck .tower-palette .v2-tooltip{bottom:88px;right:auto;left:max(140px, calc(var(--world-offset-x,0px) + 12px));width:min(370px,100vw - 240px);max-height:min(230px,100vh - 110px);padding:11px 12px;font-size:14px;line-height:1.45;position:fixed}}@media (orientation:landscape) and (height<=600px){.v2-control-deck .tower-palette{max-width:100%;overflow:hidden}.v2-control-deck .tower-palette .v2-tower-scroll{scrollbar-width:thin;gap:6px;padding:1px 20px 3px 1px;scroll-padding-inline:1px 20px;display:flex;overflow:auto hidden}.battle-tower-button{text-align:center;border-radius:50%;grid-template:1fr/1fr;place-items:center;width:62px;min-width:62px;height:62px;min-height:62px;padding:3px;display:grid}.battle-tower-button .v2-tower-icon{border-radius:50%;grid-area:1/1;width:54px;height:54px}.battle-tower-button .v2-tower-name,.battle-tower-button .v2-tower-role{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.battle-tower-button.is-selected{background:#3f6b57;border-color:#ffe39c;box-shadow:0 0 0 3px #ffe39c6b,3px 3px #0000007a}.battle-tower-button.is-unaffordable:not(.is-selected){filter:saturate(.42);opacity:.66}.battle-tower-button>b{text-align:center;min-width:26px;padding:2px 3px;font-size:11px;position:absolute;bottom:-3px;right:-3px}.v2-placement-tower-preview{width:min(440px,100vw - 146px);min-height:66px;bottom:70px;left:0;right:auto}.v2-placement-tower-preview[data-panel-side=left]{left:0;right:auto}.v2-placement-tower-preview[data-panel-side=right]{left:auto;right:54px}.battle-tower-drawer{overscroll-behavior:contain;width:min(320px,100vw - 124px);min-width:0;overflow:hidden auto}.battle-tower-drawer[data-panel-side=left]{left:54px;right:auto}.battle-tower-drawer[data-panel-side=right]{left:auto;right:54px}.battle-tower-drawer .v2-panel{min-width:0;padding:9px 10px 16px}.battle-tower-drawer .v2-panel-heading,.battle-tower-drawer .battle-tower-summary,.battle-tower-drawer .v2-command-row{min-width:0}.battle-tower-drawer .battle-tower-summary p{overflow-wrap:anywhere;word-break:normal}}@media (orientation:landscape) and (height<=600px) and (width<=720px){.v2-control-deck .tower-palette .v2-tower-scroll{gap:4px;padding-right:1px;overflow-x:hidden}.battle-tower-button{flex-basis:clamp(44px,11.1111vw - 19.7778px,58px);width:clamp(44px,11.1111vw - 19.7778px,58px);min-width:clamp(44px,11.1111vw - 19.7778px,58px);height:clamp(44px,11.1111vw - 19.7778px,58px);min-height:clamp(44px,11.1111vw - 19.7778px,58px)}.battle-tower-button .v2-tower-icon{width:calc(clamp(44px,11.1111vw - 19.7778px,58px) - 8px);height:calc(clamp(44px,11.1111vw - 19.7778px,58px) - 8px)}}.v2-game-page{width:auto;max-width:none;height:auto;max-height:none;position:fixed;inset:0;overflow:hidden}.v2-game-page>.v2-shell{width:100%;height:100%}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
