/*! tailwindcss v4.2.2 | 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-border-style:solid;--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;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease: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;--color-red-100:oklch(93.6% .032 17.717);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-orange-100:oklch(95.4% .038 75.164);--color-orange-300:oklch(83.7% .128 66.29);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-orange-700:oklch(55.3% .195 38.402);--color-orange-800:oklch(47% .157 37.304);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-700:oklch(55.4% .135 66.442);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-700:oklch(37.3% .034 259.733);--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--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}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.z-1{z-index:1}.z-50{z-index:50}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.ml-1{margin-left:calc(var(--spacing) * 1)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-24{height:calc(var(--spacing) * 24)}.h-full{height:100%}.h-screen{height:100vh}.w-24{width:calc(var(--spacing) * 24)}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.gap-1{gap:calc(var(--spacing) * 1)}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-gray-400{border-color:var(--color-gray-400)}.border-gray-500{border-color:var(--color-gray-500)}.border-orange-500{border-color:var(--color-orange-500)}.border-orange-600{border-color:var(--color-orange-600)}.border-red-500{border-color:var(--color-red-500)}.border-red-600{border-color:var(--color-red-600)}.border-red-700{border-color:var(--color-red-700)}.border-yellow-500{border-color:var(--color-yellow-500)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-orange-100{background-color:var(--color-orange-100)}.bg-orange-300{background-color:var(--color-orange-300)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-300{background-color:var(--color-red-300)}.bg-red-400{background-color:var(--color-red-400)}.bg-yellow-100{background-color:var(--color-yellow-100)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-gray-400{color:var(--color-gray-400)}.text-gray-700{color:var(--color-gray-700)}.text-orange-700{color:var(--color-orange-700)}.text-orange-800{color:var(--color-orange-800)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-yellow-700{color:var(--color-yellow-700)}.capitalize{text-transform:capitalize}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.opacity-50{opacity:.5}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);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}.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,)}.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-filter{-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,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))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--excel-green:#107c41;--excel-green-hover:#0e6b38;--excel-green-light:#e6f4ea;--excel-selected-green:#217346;--excel-border:#d4d4d4;--excel-border-light:#e1e1e1;--excel-header-bg:#f3f3f3;--excel-header-border:#c4c4c4;--excel-gridline:#d4d4d4;--excel-row-header-bg:#f8f8f8;--excel-cell-bg:#fff;--excel-font:"Calibri", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;--excel-font-size:11px;--excel-font-size-sm:10px;--excel-font-size-lg:14px;--excel-cell-width:64px;--excel-cell-height:20px;--excel-row-header-width:24px;--excel-col-header-height:20px;--excel-scrollbar-size:17px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--excel-font);font-size:var(--excel-font-size);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f3f3f3;overflow:hidden}#root{width:100vw;height:100vh}.excel-titlebar{-webkit-user-select:none;user-select:none;background:linear-gradient(#107c41 0%,#0d6a38 100%);justify-content:space-between;align-items:center;height:30px;padding:0 8px;display:flex}.excel-titlebar-left{align-items:center;gap:8px;display:flex}.excel-titlebar-logo{color:#fff;text-shadow:0 1px 1px #0000004d;background:linear-gradient(135deg,#21a366 0%,#107c41 100%);border-radius:3px;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-weight:700;display:flex}.excel-titlebar-title{color:#fff;letter-spacing:.3px;font-size:12px;font-weight:400}.excel-titlebar-controls{height:100%;display:flex}.excel-titlebar-btn{color:#fff;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:46px;height:100%;font-size:10px;transition:background .1s;display:flex}.excel-titlebar-btn:hover{background:#ffffff1a}.excel-titlebar-btn.close:hover{background:#e81123}.excel-menubar{background:var(--excel-header-bg);border-bottom:1px solid var(--excel-border-light);-webkit-user-select:none;user-select:none;z-index:100;align-items:center;height:27px;padding:0 4px;display:flex;position:relative}.excel-menu-item{font-size:var(--excel-font-size);color:#444;cursor:pointer;border-radius:2px;padding:4px 10px;transition:background .1s;position:relative}.excel-menu-item:hover{background:#107c411a}.excel-menu-item.active{color:var(--excel-green);background:#107c4126}.excel-dropdown-menu{z-index:9999;background:#fff;border:1px solid #d4d4d4;border-radius:2px;min-width:140px;padding:4px 0;position:absolute;top:100%;left:0;box-shadow:0 2px 8px #00000026}.excel-dropdown-item{cursor:pointer;color:#333;white-space:nowrap;padding:6px 16px;font-size:12px;transition:background .15s}.excel-dropdown-item:hover{color:#107c41;background:#e8f5e9}.excel-ribbon{border-bottom:1px solid var(--excel-border);-webkit-user-select:none;user-select:none;background:linear-gradient(#f8f8f8 0%,#f0f0f0 100%);padding:2px 4px 4px}.excel-ribbon-tabs{gap:0;margin-bottom:2px;display:flex}.excel-ribbon-tab{font-size:var(--excel-font-size);color:#444;cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:none;padding:3px 12px;position:relative;top:1px}.excel-ribbon-tab:hover{background:#107c410d}.excel-ribbon-tab.active{border-color:var(--excel-border);border-top:2px solid var(--excel-green);background:#fff;font-weight:500}.excel-ribbon-content{border:1px solid var(--excel-border);background:#fff;border-top:none;gap:2px;padding:4px 8px;display:flex}.excel-ribbon-group{border-right:1px solid var(--excel-border-light);flex-direction:column;padding:0 8px;display:flex}.excel-ribbon-group:last-child{border-right:none}.excel-ribbon-group-label{color:#888;text-align:center;margin-top:2px;font-size:9px}.excel-ribbon-buttons{align-items:center;gap:2px;display:flex}.excel-ribbon-btn{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;padding:4px 6px;transition:all .1s;display:flex}.excel-ribbon-btn:hover{background:var(--excel-green-light);border-color:var(--excel-green)}.excel-ribbon-btn-icon{text-align:center;width:20px;font-size:14px}.excel-ribbon-btn-text{font-size:var(--excel-font-size);color:#444}.excel-ribbon-btn-small{font-size:var(--excel-font-size-sm);padding:2px 4px}.excel-formula-bar{border-bottom:1px solid var(--excel-border);background:#fff;align-items:center;gap:4px;height:24px;padding:0 4px;display:flex}.excel-name-box{border:1px solid var(--excel-border);width:100px;height:18px;font-size:var(--excel-font-size);color:#333;background:#fff;align-items:center;padding:0 6px;display:flex}.excel-name-box:focus-within{border-color:var(--excel-selected-green)}.excel-formula-separator{background:var(--excel-border);width:1px;height:20px;margin:0 4px}.excel-function-btn{color:#666;cursor:pointer;border-radius:2px;justify-content:center;align-items:center;width:20px;height:18px;font-size:10px;font-weight:700;display:flex}.excel-function-btn:hover{background:var(--excel-green-light)}.excel-formula-input{border:1px solid var(--excel-border);height:18px;font-size:var(--excel-font-size);background:#fff;flex:1;align-items:center;padding:0 6px;display:flex}.excel-formula-input:focus-within{border-color:var(--excel-selected-green)}.excel-grid-container{background:#f3f3f3;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.excel-grid-wrapper{background:#fff;flex:1;position:relative;overflow:auto}.excel-grid-wrapper::-webkit-scrollbar{width:var(--excel-scrollbar-size);height:var(--excel-scrollbar-size)}.excel-grid-wrapper::-webkit-scrollbar-track{border-left:1px solid var(--excel-border);border-top:1px solid var(--excel-border);background:#f0f0f0}.excel-grid-wrapper::-webkit-scrollbar-thumb{background:#c1c1c1;border:1px solid #f0f0f0}.excel-grid-wrapper::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.excel-grid-wrapper::-webkit-scrollbar-corner{background:#f0f0f0}.excel-table{border-collapse:separate;border-spacing:0;table-layout:fixed}.excel-col-header{background:var(--excel-header-bg);min-width:var(--excel-cell-width);width:var(--excel-cell-width);height:var(--excel-col-header-height);border:1px solid var(--excel-header-border);font-size:var(--excel-font-size);color:#333;text-align:center;vertical-align:middle;-webkit-user-select:none;user-select:none;z-index:20;background-image:linear-gradient(#f8f8f8 0%,#e8e8e8 100%);border-top:none;font-weight:400;position:sticky;top:0}.excel-col-header:first-child{z-index:30;position:sticky;left:0}.excel-col-header.highlighted{background:var(--excel-green-light);color:var(--excel-green)}.excel-row-header{background:var(--excel-header-bg);min-width:var(--excel-row-header-width);width:var(--excel-row-header-width);height:var(--excel-cell-height);border:1px solid var(--excel-header-border);font-size:var(--excel-font-size-sm);color:#333;text-align:center;vertical-align:middle;-webkit-user-select:none;user-select:none;z-index:10;background-image:linear-gradient(90deg,#f8f8f8 0%,#e8e8e8 100%);border-left:none;font-weight:400;position:sticky;left:0}.excel-row-header.highlighted{background:var(--excel-green-light);color:var(--excel-green)}.excel-cell{min-width:var(--excel-cell-width);width:var(--excel-cell-width);height:var(--excel-cell-height);border-right:1px dotted var(--excel-gridline);border-bottom:1px dotted var(--excel-gridline);background:var(--excel-cell-bg);font-size:var(--excel-font-size);vertical-align:middle;cursor:crosshair;padding:0 2px;position:relative}.excel-grid-wrapper:not(.settings-panel-wrapper):not(.stats-panel-wrapper) .excel-cell{min-width:var(--excel-cell-width)!important;width:var(--excel-cell-width)!important}.excel-grid-wrapper:not(.settings-panel-wrapper):not(.stats-panel-wrapper) .excel-row-header{min-width:var(--excel-row-header-width)!important;width:var(--excel-row-header-width)!important}.excel-grid-wrapper:not(.settings-panel-wrapper):not(.stats-panel-wrapper) .excel-col-header{min-width:var(--excel-cell-width)!important;width:var(--excel-cell-width)!important}.excel-grid-wrapper:not(.settings-panel-wrapper):not(.stats-panel-wrapper) .excel-corner-cell{min-width:var(--excel-row-header-width)!important;width:var(--excel-row-header-width)!important}.excel-cell.selected{outline:2px solid var(--excel-selected-green);outline-offset:-1px;z-index:5;background:#2173460d}.excel-cell:hover{background:#21734608}.excel-corner-cell{background:var(--excel-header-bg);min-width:var(--excel-row-header-width);width:var(--excel-row-header-width);height:var(--excel-col-header-height);border:1px solid var(--excel-header-border);z-index:40;cursor:pointer;background-image:linear-gradient(135deg,#f8f8f8 0%,#e0e0e0 100%);position:sticky;top:0;left:0}.target{cursor:crosshair;z-index:15;animation:.15s ease-out targetSpawn;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes targetSpawn{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.target-head{background:radial-gradient(circle at 30% 30%,#ff6b6b 0%,#dc2626 60%,#991b1b 100%);border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:relative;box-shadow:0 2px 4px #0000004d,inset 0 1px 2px #ffffff4d}.target-head:before{content:"";background:#fff6;border-radius:50%;width:5px;height:3px;position:absolute;top:3px;left:5px}.target-head-value{color:#fff;text-shadow:0 1px 2px #00000080;font-size:9px;font-weight:700}.target-body{background:linear-gradient(#f97316 0%,#ea580c 50%,#c2410c 100%);border-radius:3px;justify-content:center;align-items:center;width:22px;height:22px;display:flex;box-shadow:0 2px 4px #00000040,inset 0 1px 1px #fff3}.target-body-value{color:#fff;text-shadow:0 1px 1px #00000080;font-size:9px;font-weight:700}.target-feet{filter:drop-shadow(0 2px 3px #0000004d);border-bottom:22px solid #3b82f6;border-left:11px solid #0000;border-right:11px solid #0000;width:0;height:0;position:relative}.target-feet-value{color:#fff;text-shadow:0 1px 1px #00000080;font-size:9px;font-weight:700;position:absolute;top:6px;left:50%;transform:translate(-50%)}.target-headshot-line{border:2px solid red;box-shadow:0 0 8px #ff000080,inset 0 0 4px #ff00004d}@keyframes hitExplosion{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(2)}}.hit-explosion{pointer-events:none;z-index:100;background:radial-gradient(circle,#107c4199 0%,#0000 70%);border-radius:50%;width:30px;height:30px;animation:.3s ease-out forwards hitExplosion;position:absolute;top:50%;left:50%}@keyframes scorePopup{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}20%{opacity:1;transform:translate(-50%,-70%)scale(1.2)}to{opacity:0;transform:translate(-50%,-120%)scale(1)}}.score-popup{color:var(--excel-green);text-shadow:0 1px 2px #0000004d,0 0 10px #107c4180;pointer-events:none;z-index:100;white-space:nowrap;font-size:14px;font-weight:700;animation:.6s ease-out forwards scorePopup;position:absolute;top:50%;left:50%}.score-popup.combo{color:#f97316;text-shadow:0 1px 2px #0000004d,0 0 10px #f9731680}.score-popup.headshot{color:#dc2626;text-shadow:0 1px 2px #0000004d,0 0 10px #dc262680;font-size:16px}.score-popup.high-combo{font-size:18px;animation:.8s ease-out forwards scorePopupHighCombo}.score-popup.very-high-combo{font-size:22px;animation:1s ease-out forwards scorePopupVeryHighCombo}@keyframes scorePopupHighCombo{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}20%{opacity:1;transform:translate(-50%,-70%)scale(1.3)}to{opacity:0;transform:translate(-50%,-140%)scale(1)}}@keyframes scorePopupVeryHighCombo{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}15%{opacity:1;transform:translate(-50%,-80%)scale(1.5)}to{opacity:0;transform:translate(-50%,-180%)scale(1.2)}}.score-popup .combo-text{opacity:.9;font-size:.8em}.hit-cell-effect{pointer-events:none;z-index:50;animation:.4s ease-out forwards excelCellSelect}@keyframes excelCellSelect{0%{background:0 0;box-shadow:0 0 #0000,0 0 #0000}30%{background:#22c55e1a;box-shadow:0 0 0 2px #22c55e,0 0 0 4px #22c55e66}to{opacity:0;background:0 0;box-shadow:0 0 0 1px #22c55e,0 0 0 2px #22c55e33}}.hit-cell-effect.headshot{animation:.5s ease-out forwards excelCellSelectHeadshot}@keyframes excelCellSelectHeadshot{0%{background:0 0;box-shadow:0 0 #0000,0 0 #0000}30%{background:#f59e0b26;box-shadow:0 0 0 3px #f59e0b,0 0 0 6px #f59e0b66}to{opacity:0;background:0 0;box-shadow:0 0 0 1px #f59e0b,0 0 0 2px #f59e0b33}}.hit-cell-effect.high-combo{animation:.6s ease-out forwards excelCellSelectHighCombo}@keyframes excelCellSelectHighCombo{0%{background:0 0;transform:scale(1);box-shadow:0 0 #0000,0 0 #0000}20%{background:#f9731626;transform:scale(1.05);box-shadow:0 0 0 3px #f97316,0 0 0 6px #f9731666,0 0 20px #f973164d}to{opacity:0;background:0 0;transform:scale(1);box-shadow:0 0 0 1px #f97316,0 0 0 2px #f9731633}}.hit-cell-effect.very-high-combo{animation:.7s ease-out forwards excelCellSelectVeryHighCombo}@keyframes excelCellSelectVeryHighCombo{0%{background:0 0;transform:scale(1);box-shadow:0 0 #0000,0 0 #0000}15%{background:#ef444433;transform:scale(1.1);box-shadow:0 0 0 4px #ef4444,0 0 0 8px #ef444466,0 0 30px #ef444466}to{opacity:0;background:0 0;transform:scale(1);box-shadow:0 0 0 2px #ef4444,0 0 0 4px #ef444433}}.hit-cell-effect.extreme-combo{animation:.8s ease-out forwards excelCellSelectExtremeCombo}@keyframes excelCellSelectExtremeCombo{0%{background:0 0;transform:scale(1);box-shadow:0 0 #0000,0 0 #0000,0 0 #0000}10%{background:#dc262640;transform:scale(1.15);box-shadow:0 0 0 5px #dc2626,0 0 0 10px #dc262680,0 0 40px #dc262680}to{opacity:0;background:0 0;transform:scale(1);box-shadow:0 0 0 2px #dc2626,0 0 0 4px #dc262633}}@keyframes missShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.miss-shake{animation:.15s ease-in-out missShake}@keyframes missFlash{0%,to{background:0 0}50%{background:#dc26261a}}.miss-flash{animation:.2s ease-in-out missFlash}.excel-sheet-bar{border-top:1px solid var(--excel-border);-webkit-user-select:none;user-select:none;background:#f3f3f3;align-items:center;height:22px;display:flex}.excel-sheet-tabs{flex:1;align-items:flex-end;height:100%;display:flex;overflow:auto hidden}.excel-sheet-tab{border:1px solid var(--excel-border);color:#444;cursor:pointer;white-space:nowrap;background:linear-gradient(#e8e8e8 0%,#d8d8d8 100%);border-bottom:none;border-radius:3px 3px 0 0;flex-shrink:0;align-items:center;height:18px;margin-right:-1px;padding:2px 8px;font-size:11px;transition:all .1s;display:flex;position:relative}.excel-sheet-tab:hover{background:linear-gradient(#f0f0f0 0%,#e0e0e0 100%)}.excel-sheet-tab.active{height:19px;color:var(--excel-green);background:#fff;border-bottom:1px solid #fff;margin-bottom:-1px;font-weight:500}.excel-sheet-add{color:#666;cursor:pointer;border-radius:2px;justify-content:center;align-items:center;width:20px;height:20px;margin-left:4px;font-size:14px;display:flex}.excel-sheet-add:hover{background:var(--excel-green-light)}.excel-sheet-nav{gap:2px;margin-left:auto;padding-right:8px;display:flex}.excel-sheet-nav-btn{color:#888;cursor:pointer;border-radius:2px;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;display:flex}.excel-sheet-nav-btn:hover{background:var(--excel-green-light);color:var(--excel-green)}.excel-statusbar{color:#fff;height:22px;font-size:var(--excel-font-size-sm);-webkit-user-select:none;user-select:none;background:linear-gradient(#107c41 0%,#0d6a38 100%);justify-content:space-between;align-items:center;padding:0 8px;display:flex}.excel-statusbar-left{align-items:center;gap:16px;display:flex}.excel-statusbar-right{align-items:center;gap:12px;display:flex}.excel-statusbar-item{align-items:center;gap:4px;display:flex}.excel-statusbar-divider{background:#ffffff4d;width:1px;height:14px}.excel-statusbar-btn{cursor:pointer;font-size:var(--excel-font-size-sm);border-radius:2px;padding:2px 6px}.excel-statusbar-btn:hover{background:#ffffff26}.game-hud{z-index:50;color:#fff;font-size:var(--excel-font-size);box-shadow:none;background:0 0;justify-content:space-between;align-items:center;padding:6px 12px;display:flex;position:absolute;top:0;left:0;right:0}.game-hud-left{align-items:center;gap:20px;display:flex}.game-hud-right{align-items:center;gap:16px;display:flex}.game-stat{align-items:center;gap:6px;display:flex}.game-stat-label{opacity:.8;font-size:10px}.game-stat-value{font-size:14px;font-weight:700}.game-stat-value.score{color:#a7f3d0}.game-stat-value.combo{color:#fcd34d}.game-stat-value.time{color:#fff}.game-stat-value.time.warning{color:#fca5a5;animation:1s infinite pulse}@keyframes pulse{50%{opacity:.5}}.settings-sheet{background:#fff;flex:1;overflow:auto}.settings-table{border-collapse:collapse;width:100%;max-width:800px;margin:0 auto}.settings-table th{background:var(--excel-header-bg);border:1px solid var(--excel-border);text-align:left;color:var(--excel-green);padding:8px 16px;font-weight:500}.settings-table td{border:1px solid var(--excel-border);padding:8px 16px}.settings-table tr:nth-child(2n){background:#f9fafb}.settings-section-header{background:var(--excel-green)!important;color:#fff!important;font-weight:600!important}.settings-cell-input{width:100%;font-family:var(--excel-font);font-size:var(--excel-font-size);background:0 0;border:1px solid #0000;padding:2px 4px}.settings-cell-input:focus{border-color:var(--excel-selected-green);background:#fff;outline:none}.settings-cell-select{border:1px solid var(--excel-border);width:100%;font-family:var(--excel-font);font-size:var(--excel-font-size);cursor:pointer;background:#fff;border-radius:2px;padding:4px 8px}.settings-cell-select:focus{border-color:var(--excel-selected-green);outline:none}.settings-cell-range{-webkit-appearance:none;cursor:pointer;background:#e1e1e1;border-radius:3px;width:100%;height:6px}.settings-cell-range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--excel-green);cursor:pointer;border:2px solid #fff;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 3px #0000004d}.stats-sheet{background:#fff;flex:1;padding:20px;overflow:auto}.excel-grid-container .excel-grid-wrapper{flex:auto;min-height:100%;overflow:auto}.excel-grid-container .excel-table{min-width:100%}.excel-grid-wrapper:not(.settings-panel-wrapper):not(.stats-panel-wrapper) .excel-table{width:calc(var(--excel-row-header-width) + var(--excel-cell-width) * 30);min-width:calc(var(--excel-row-header-width) + var(--excel-cell-width) * 30)}.excel-grid-container>div{flex-direction:column;height:100%;display:flex}.stats-panel-container{background:#fff}.stats-panel-wrapper{overflow:auto!important}.stats-panel-wrapper .excel-table{table-layout:auto!important;width:100%!important}.stats-panel-wrapper .excel-cell{cursor:default!important;width:auto!important;min-width:80px!important;height:auto!important;min-height:28px!important}.settings-panel-container{background:#fff}.settings-panel-wrapper{overflow:auto!important}.settings-panel-wrapper .excel-table{table-layout:auto!important;width:100%!important}.settings-panel-wrapper .excel-cell{cursor:default!important;width:auto!important;min-width:80px!important;height:auto!important;min-height:28px!important}.stats-chart{border:1px solid var(--excel-border);background:#fff;margin-bottom:16px;padding:16px}.stats-chart-title{font-size:var(--excel-font-size-lg);color:#333;border-bottom:1px solid var(--excel-border-light);margin-bottom:12px;padding-bottom:8px;font-weight:600}.stats-bar-chart{align-items:flex-end;gap:8px;height:120px;padding-top:8px;display:flex}.stats-bar{background:linear-gradient(#21a366 0%,#107c41 100%);border-radius:2px 2px 0 0;flex:1;min-height:4px;position:relative}.stats-bar-label{color:#666;white-space:nowrap;font-size:9px;position:absolute;bottom:-20px;left:50%;transform:translate(-50%)}.stats-bar-value{color:#333;font-size:10px;font-weight:700;position:absolute;top:-16px;left:50%;transform:translate(-50%)}.hidden-overlay{z-index:100;background:#fff;flex-direction:column;display:flex;position:fixed;inset:0}.hidden-menu{border-bottom:1px solid var(--excel-border);background:#f3f3f3;gap:4px;padding:4px 8px;display:flex}.hidden-menu-item{font-size:var(--excel-font-size);cursor:pointer;border-radius:2px;padding:4px 12px}.hidden-menu-item:hover{background:var(--excel-green-light)}.hidden-content{color:#999;flex:1;justify-content:center;align-items:center;font-size:14px;display:flex}@keyframes comboPop{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.combo-pop{animation:.3s ease-out comboPop}.game-presets{gap:8px;margin-bottom:8px;display:flex}.game-preset-btn{border:1px solid var(--excel-border);font-size:var(--excel-font-size);cursor:pointer;background:linear-gradient(#f8f8f8 0%,#e8e8e8 100%);border-radius:3px;padding:6px 12px;transition:all .1s}.game-preset-btn:hover{border-color:var(--excel-green);background:linear-gradient(#f0f0f0 0%,#e0e0e0 100%)}.game-preset-btn.active{background:var(--excel-green-light);border-color:var(--excel-green);color:var(--excel-green);font-weight:500}.headshot-line-indicator{z-index:10;pointer-events:none;background:#ff000080;height:2px;position:absolute;left:0;right:0}.headshot-line-indicator:before,.headshot-line-indicator:after{content:"";border:4px solid #0000;width:0;height:0;position:absolute;top:50%;transform:translateY(-50%)}.headshot-line-indicator:before{border-right-color:#ff0000b3;left:-8px}.headshot-line-indicator:after{border-left-color:#ff0000b3;right:-8px}.crosshair-cursor{cursor:crosshair}.custom-crosshair{pointer-events:none;z-index:9999;position:fixed}.custom-crosshair-dot{background:#0f0;border-radius:50%;width:4px;height:4px;box-shadow:0 0 4px #00ff0080}.custom-crosshair-line{background:#0f0;position:absolute}.custom-crosshair-line.horizontal{width:12px;height:2px;top:50%;transform:translateY(-50%)}.custom-crosshair-line.vertical{width:2px;height:12px;left:50%;transform:translate(-50%)}.custom-crosshair-line.left{right:6px}.custom-crosshair-line.right{left:6px}.custom-crosshair-line.top{bottom:6px}.custom-crosshair-line.bottom{top:6px}.level-progress-hud{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;border-radius:8px;min-width:200px;padding:12px 16px;position:absolute;top:40px;right:12px}.level-header{border-bottom:1px solid #fff3;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:8px;display:flex}.level-badge{color:#22c55e;font-size:14px;font-weight:700}.level-difficulty{color:#ffffffb3;background:#ffffff1a;border-radius:4px;padding:2px 8px;font-size:11px}.level-objectives{flex-direction:column;gap:6px;display:flex}.level-objectives .objective{color:#fffc;align-items:center;gap:8px;padding:4px 0;font-size:11px;display:flex}.level-objectives .objective.complete,.level-objectives .objective.complete .obj-icon{color:#22c55e}.level-objectives .obj-icon{text-align:center;color:#ffffff80;width:16px}.level-objectives .obj-text{flex:1}.level-objectives .obj-progress{color:#ffffff80;font-family:monospace;font-size:10px}.level-result-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.level-result-overlay.completed{background:#22c55e4d}.level-result-overlay.failed{background:#ef44444d}.level-result-content{text-align:center;background:#fff;border-radius:12px;padding:32px 48px;animation:.3s ease-out resultPop;box-shadow:0 8px 32px #0003}@keyframes resultPop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.level-result-content h2{margin-bottom:8px;font-size:24px}.level-result-overlay.completed .level-result-content h2{color:#22c55e}.level-result-overlay.failed .level-result-content h2{color:#ef4444}.level-result-content p{color:#666;margin-bottom:12px;font-size:14px}.level-result-content .final-score{color:#333;font-size:18px;font-weight:700}.combo-progress-container{border:1px solid var(--excel-border);z-index:200;width:140px;font-family:var(--excel-font-family);background:#fffffff2;border-radius:6px;padding:6px 10px;position:absolute;top:50px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0000001a}.combo-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.combo-label{color:#666;font-size:12px;font-weight:500}.combo-value{font-size:24px;font-weight:700;transition:transform .2s,color .3s}.combo-value.pulse{animation:.3s ease-out comboPulse}@keyframes comboPulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.combo-multiplier{background:#0000001a;border-radius:4px;margin-left:auto;padding:2px 6px;font-size:14px;font-weight:700}.combo-progress-bar-wrapper{margin:6px 0}.combo-progress-bar-bg{border-radius:4px;height:8px;position:relative;overflow:visible}.combo-progress-bar-fill{border-radius:4px;height:100%;transition:width .3s,background-color .3s}.combo-progress-marker{position:absolute;top:-4px;transform:translate(-50%)}.combo-progress-marker:before{content:"";background:#0000004d;width:2px;height:16px;margin:0 auto;display:block}.marker-label{color:#666;white-space:nowrap;font-size:10px;position:absolute;top:-18px;left:50%;transform:translate(-50%)}.combo-footer{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.combo-level-label{font-size:12px;font-weight:600}.combo-next-hint{color:#999;font-size:10px}.combo-max-record{color:#999;text-align:center;border-top:1px solid #eee;margin-top:4px;padding-top:4px;font-size:10px}.survival-hud{z-index:200;flex-direction:column;gap:8px;display:flex;position:absolute;top:10px;left:10px}.survival-lives{border:1px solid var(--excel-border);background:#fffffff2;border-radius:6px;align-items:center;gap:4px;padding:6px 12px;display:flex;box-shadow:0 2px 8px #0000001a}.survival-life{font-size:18px;transition:transform .2s,opacity .3s}.survival-life.lost{opacity:.3;transform:scale(.8)}.survival-wave{border:1px solid var(--excel-border);color:#333;background:#fffffff2;border-radius:6px;padding:6px 12px;font-size:14px;font-weight:600;box-shadow:0 2px 8px #0000001a}.survival-wave span{color:var(--excel-green)}.headshot-only-indicator{writing-mode:vertical-rl;text-orientation:mixed;color:#fff;letter-spacing:2px;z-index:150;background:linear-gradient(#dc2626e6 0%,#b91c1ce6 100%);border-radius:0 6px 6px 0;padding:12px 6px;font-size:12px;font-weight:700;position:absolute;top:50%;left:10px;transform:translateY(-50%);box-shadow:2px 0 8px #dc26264d}.headshot-only-stats{border:1px solid var(--excel-border);z-index:200;background:#fffffff2;border-radius:6px;gap:16px;padding:8px 16px;font-size:14px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0000001a}.headshot-stat{align-items:center;gap:4px;display:flex}.headshot-stat-label{color:#666}.headshot-stat-value{color:#333;font-weight:700}.headshot-stat-value.highlight{color:#dc2626}@keyframes cellPulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes cellColorShift{0%{filter:hue-rotate()}to{filter:hue-rotate(360deg)}}.cell-animated{animation:1s ease-in-out infinite cellPulse}.cell-color-shift{animation:3s linear infinite cellColorShift}.cell-animate-slow{animation-duration:2s}.cell-animate-normal{animation-duration:1s}.cell-animate-fast{animation-duration:.5s}.excel-cell{will-change:background-color;transition:background-color .15s ease-out}.excel-cell:not(:hover){transition:none}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.excel-game-hub{background:#f3f3f3;flex-direction:column;flex:1;font-family:Calibri,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;display:flex;overflow:auto}.excel-game-hub .excel-sheet-wrapper{background:#fff;flex-direction:column;flex:1;min-height:100%;display:flex}.excel-game-hub .excel-col-headers-row{z-index:30;background:linear-gradient(#f8f8f8 0%,#e8e8e8 100%);border-bottom:1px solid #c4c4c4;display:flex;position:sticky;top:0}.excel-game-hub .excel-corner-cell{background:linear-gradient(135deg,#f8f8f8 0%,#e0e0e0 100%);border:1px solid #c4c4c4;border-top:none;width:40px;min-width:40px;height:24px}.excel-game-hub .excel-col-header{color:#333;text-align:center;-webkit-user-select:none;user-select:none;background:linear-gradient(#f8f8f8 0%,#e8e8e8 100%);border:1px solid #c4c4c4;border-top:none;border-left:none;flex:1;justify-content:center;align-items:center;min-width:120px;height:24px;font-size:11px;font-weight:400;display:flex}.excel-game-hub .excel-row{border-bottom:1px dotted #d4d4d4;min-height:28px;display:flex}.excel-game-hub .excel-row:hover{background:#107c4105}.excel-game-hub .excel-row-header{color:#333;text-align:center;-webkit-user-select:none;user-select:none;z-index:20;background:linear-gradient(90deg,#f8f8f8 0%,#e8e8e8 100%);border-top:1px solid #c4c4c4;border-bottom:none;border-left:none;border-right:1px solid #c4c4c4;justify-content:center;align-items:center;width:40px;min-width:40px;height:28px;font-size:10px;font-weight:400;display:flex;position:sticky;left:0}.excel-game-hub .excel-cell{cursor:default;background:#fff;border-right:1px dotted #d4d4d4;flex:1;align-items:center;min-width:120px;height:28px;padding:4px 8px;font-size:12px;display:flex;position:relative}.excel-game-hub .excel-cell:hover{background:#21734608}.excel-game-hub .excel-empty-cell{background:#f9fafb}.excel-game-hub .excel-title-cell{color:#fff;cursor:default;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);border-bottom:2px solid #0b4a1f;min-height:32px;padding:6px 12px;font-size:16px;font-weight:600}.excel-game-hub .excel-title-cell:hover{background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%)}.excel-game-hub .excel-title-icon{margin-right:8px;font-size:18px}.excel-game-hub .excel-title-text{font-weight:600}.excel-game-hub .excel-section-header{color:#fff;cursor:default;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);border-bottom:2px solid #0b4a1f;align-items:center;gap:6px;min-height:28px;padding:6px 10px;font-size:13px;font-weight:600;display:flex}.excel-game-hub .excel-section-header:hover{background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%)}.excel-game-hub .excel-section-header .section-icon{font-size:14px}.excel-game-hub .excel-start-cell{justify-content:center}.excel-game-hub .excel-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%);border:1px solid #15803d;border-radius:2px;align-items:center;gap:6px;padding:6px 16px;font-family:Calibri,sans-serif;font-size:13px;transition:all .15s;display:flex}.excel-game-hub .excel-button:hover{background:linear-gradient(135deg,#16a34a 0%,#15803d 100%);box-shadow:0 2px 4px #0000001a}.excel-game-hub .excel-button:disabled{color:#9ca3af;cursor:not-allowed;box-shadow:none;background:#d1d5db}.excel-game-hub .excel-start-btn{padding:8px 24px;font-size:14px;font-weight:600}.excel-game-hub .excel-start-btn .btn-icon{font-size:14px}.excel-game-hub .excel-start-btn .btn-text{font-weight:600}.excel-game-hub .excel-start-row{min-height:60px}.excel-game-hub .excel-main-start-cell{flex-direction:column;justify-content:center;align-items:center;padding:12px 8px}.excel-game-hub .excel-mock-text{color:#9ca3af;opacity:.8;margin-top:6px;font-size:11px;font-style:italic}.excel-game-hub .excel-mode-desc{color:#9ca3af;white-space:nowrap;font-size:10px;font-style:italic}@keyframes feedbackPulse{0%{opacity:0;transform:translateY(-2px)}50%{opacity:1}to{opacity:1;transform:translateY(0)}}@keyframes comboGlow{0%{box-shadow:0 0 5px #22c55e}50%{box-shadow:0 0 20px #22c55e,0 0 40px #22c55e}to{box-shadow:0 0 5px #22c55e}}@keyframes headshotGold{0%{filter:brightness()}50%{filter:brightness(1.5)sepia(.3)saturate(1.5)}to{filter:brightness()}}@keyframes achievementPop{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.fancy-feedback-container{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;background:#0009;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:12px 16px;animation:.3s ease-out feedbackSlideIn;display:flex;position:fixed;top:80px;right:20px}@keyframes feedbackSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.fancy-feedback-icon{font-size:32px;animation:.4s ease-out iconBounce}@keyframes iconBounce{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.fancy-feedback-combo{border:2px solid #22c55e;box-shadow:0 0 15px #22c55e66}.fancy-feedback-headshot{border:2px solid #f59e0b;box-shadow:0 0 15px #f59e0b66}.fancy-feedback-miss{border:2px solid #ef4444;box-shadow:0 0 10px #ef44444d}.fancy-feedback-achievement{border:2px solid #8b5cf6;box-shadow:0 0 20px #8b5cf680}.fancy-feedback-default{border:2px solid #3b82f6;box-shadow:0 0 10px #3b82f64d}.excel-game-hub .excel-main-start-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%);border:2px solid #15803d;border-radius:6px;align-items:center;gap:10px;padding:14px 48px;font-family:Calibri,sans-serif;font-size:18px;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 12px #22c55e4d}.excel-game-hub .excel-main-start-btn:hover{background:linear-gradient(135deg,#16a34a 0%,#15803d 100%);transform:translateY(-2px);box-shadow:0 6px 20px #22c55e66}.excel-game-hub .excel-main-start-btn:disabled{color:#9ca3af;cursor:not-allowed;box-shadow:none;background:#d1d5db;border-color:#9ca3af;transform:none}.excel-game-hub .excel-main-start-btn .main-btn-icon{font-size:20px}.excel-game-hub .excel-main-start-btn .main-btn-text{letter-spacing:.5px;font-weight:700}.excel-game-hub .excel-select{cursor:pointer;background:#fff;border:1px solid #d4d4d4;border-radius:2px;min-width:120px;padding:4px 8px;font-family:Calibri,sans-serif;font-size:12px}.excel-game-hub .excel-select:hover{border-color:#107c41}.excel-game-hub .excel-select:focus{border-color:#107c41;outline:none;box-shadow:0 0 0 1px #107c4133}.excel-game-hub .excel-inline-control{flex:1;align-items:center;gap:8px;display:flex}.excel-game-hub .excel-label{color:#374151;font-size:12px;font-weight:500}.excel-game-hub .excel-button-group{gap:4px;display:flex}.excel-game-hub .excel-mini-btn{cursor:pointer;background:#fff;border:1px solid #d4d4d4;border-radius:2px;padding:4px 10px;font-family:Calibri,sans-serif;font-size:11px;transition:all .15s}.excel-game-hub .excel-mini-btn:hover{background:#f0fdf4;border-color:#107c41}.excel-game-hub .excel-mini-btn.selected{color:#fff;background:#107c41;border-color:#107c41}.excel-game-hub .excel-quick-access-cell{justify-content:center;padding:6px 8px}.excel-game-hub .excel-quick-buttons{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.excel-game-hub .excel-quick-btn{cursor:pointer;white-space:nowrap;border:1px solid #d4d4d4;border-radius:2px;align-items:center;gap:3px;padding:4px 8px;font-family:Calibri,sans-serif;font-size:10px;font-weight:500;transition:all .15s;display:flex}.excel-game-hub .excel-quick-btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.excel-game-hub .excel-quick-btn.timed{color:#92400e;background:#fef3c7;border-color:#f59e0b}.excel-game-hub .excel-quick-btn.endless{color:#1e40af;background:#dbeafe;border-color:#3b82f6}.excel-game-hub .excel-quick-btn.zen{color:#6b21a8;background:#f3e8ff;border-color:#a855f7}.excel-game-hub .excel-quick-btn.headshot{color:#991b1b;background:#fee2e2;border-color:#dc2626}.excel-game-hub .excel-modes-row{min-height:auto}.excel-game-hub .excel-modes-cell{min-height:auto;padding:8px}.excel-game-hub .excel-mode-grid{flex-wrap:wrap;gap:12px;display:flex}.excel-game-hub .excel-mode-item{flex-direction:row;align-items:center;gap:6px;display:flex}.excel-game-hub .excel-mode-btn{cursor:pointer;background:#fff;border:1px solid #d4d4d4;border-radius:2px;flex-direction:column;align-items:center;gap:2px;min-width:50px;padding:4px 10px;font-family:Calibri,sans-serif;transition:all .15s;display:flex}.excel-game-hub .excel-mode-btn:hover{background:#f0fdf4;border-color:#107c41}.excel-game-hub .excel-mode-btn.selected{color:#fff;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);border-color:#107c41}.excel-game-hub .excel-mode-btn .mode-icon{font-size:14px}.excel-game-hub .excel-mode-btn .mode-name{font-size:10px;font-weight:500}.excel-game-hub .excel-fps-cell{padding:8px}.excel-game-hub .excel-fps-grid{flex-wrap:wrap;gap:6px;display:flex}.excel-game-hub .excel-fps-item{align-items:center;gap:4px;display:flex}.excel-game-hub .excel-fps-btn{cursor:pointer;background:#fff;border:1px solid #d4d4d4;border-radius:2px;flex-direction:column;align-items:center;gap:2px;min-width:45px;padding:4px 8px;font-family:Calibri,sans-serif;transition:all .15s;display:flex}.excel-game-hub .excel-fps-btn:hover{background:#f0fdf4;border-color:#107c41}.excel-game-hub .excel-fps-btn.selected{color:#fff;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);border-color:#107c41}.excel-game-hub .excel-fps-btn .fps-icon{font-size:12px}.excel-game-hub .excel-fps-btn .fps-name{font-size:9px;font-weight:500}.excel-game-hub .excel-config-cell{background:#f9fafb;padding:6px 8px}.excel-game-hub .excel-inline-config{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.excel-game-hub .config-label{color:#374151;font-size:11px;font-weight:500}.excel-game-hub .config-label-right{margin-left:16px}.excel-game-hub .excel-challenge-group{align-items:center;gap:8px;padding:4px 8px;display:flex}.excel-game-hub .group-icon{font-size:14px}.excel-game-hub .group-title{color:#374151;font-size:12px;font-weight:600}.excel-game-hub .excel-level-buttons{gap:4px;margin-left:8px;display:flex}.excel-game-hub .excel-level-btn{cursor:pointer;background:#fff;border:1px solid #d4d4d4;border-radius:2px;justify-content:center;align-items:center;width:22px;height:20px;font-family:Calibri,sans-serif;font-size:10px;font-weight:600;transition:all .15s;display:flex}.excel-game-hub .excel-level-btn:hover{transform:scale(1.1);box-shadow:0 2px 4px #0000001a}.excel-game-hub .excel-level-btn.beginner{color:#15803d;border-color:#22c55e}.excel-game-hub .excel-level-btn.beginner:hover{color:#fff;background:#22c55e}.excel-game-hub .excel-level-btn.intermediate{color:#1d4ed8;border-color:#2563eb}.excel-game-hub .excel-level-btn.intermediate:hover{color:#fff;background:#2563eb}.excel-game-hub .excel-level-btn.expert{color:#b91c1c;border-color:#dc2626}.excel-game-hub .excel-level-btn.expert:hover{color:#fff;background:#dc2626}.excel-game-hub .excel-difficulty-cell{padding:6px 8px}.excel-game-hub .excel-difficulty-grid{flex-wrap:wrap;gap:4px;display:flex}.excel-game-hub .excel-difficulty-btn{cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d4d4d4;border-radius:2px;padding:4px 8px;font-family:Calibri,sans-serif;font-size:10px;font-weight:500;transition:all .15s}.excel-game-hub .excel-difficulty-btn:hover{border-color:var(--diff-color);background:color-mix(in srgb, var(--diff-color) 10%, white)}.excel-game-hub .excel-difficulty-btn.selected{background:var(--diff-color);color:#fff;border-color:var(--diff-color)}.excel-game-hub .excel-nav-cell{background:#f9fafb;align-items:center;gap:16px;padding:6px 8px;display:flex}.excel-game-hub .nav-hint{color:#9ca3af;font-size:11px}.excel-game-hub .excel-nav-buttons{gap:8px;display:flex}.excel-game-hub .excel-nav-btn{cursor:pointer;background:#fff;border:1px solid #d4d4d4;border-radius:2px;padding:6px 14px;font-family:Calibri,sans-serif;font-size:11px;transition:all .15s}.excel-game-hub .excel-nav-btn:hover{background:#f0fdf4;border-color:#107c41}.excel-game-hub .excel-nav-btn--sub{color:#64748b;background:#f8fafc;padding:4px 10px;font-size:10px}.excel-game-hub .excel-nav-btn--sub:hover{color:#4f46e5;background:#eef2ff}.excel-game-hub .hub-nav-badge{color:#fff;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);border-radius:999px;margin-left:4px;padding:1px 4px;font-size:9px;font-weight:600;display:inline-block}@media (width<=768px){.excel-game-hub .excel-col-header{min-width:80px}.excel-game-hub .excel-cell{min-width:80px;padding:4px 6px}.excel-game-hub .excel-row-header,.excel-game-hub .excel-corner-cell{width:32px;min-width:32px}.excel-game-hub .excel-mode-grid{gap:4px}.excel-game-hub .excel-mode-btn{padding:6px 10px}.excel-game-hub .excel-fps-grid{gap:4px}.excel-game-hub .excel-fps-btn{padding:4px 8px}.excel-game-hub .excel-quick-buttons{gap:4px}.excel-game-hub .excel-quick-btn{padding:4px 8px;font-size:10px}}@media (width<=480px){.excel-game-hub .excel-title-text{font-size:13px}.excel-game-hub .excel-section-header{padding:4px 8px;font-size:11px}.excel-game-hub .excel-difficulty-grid{gap:2px}.excel-game-hub .excel-difficulty-btn{padding:4px 8px;font-size:10px}.excel-game-hub .excel-level-btn{width:24px;height:20px;font-size:10px}}.excel-game-hub::-webkit-scrollbar{width:17px;height:17px}.excel-game-hub::-webkit-scrollbar-track{background:#f0f0f0;border-top:1px solid #d4d4d4;border-left:1px solid #d4d4d4}.excel-game-hub::-webkit-scrollbar-thumb{background:#c1c1c1;border:1px solid #f0f0f0}.excel-game-hub::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.excel-game-hub::-webkit-scrollbar-corner{background:#f0f0f0}.exit-game-btn{z-index:1000;color:#fff;cursor:pointer;background:#dc2626e6;border:none;border-radius:4px;padding:8px 16px;font-family:Calibri,sans-serif;font-size:12px;font-weight:500;transition:all .2s;position:fixed;top:12px;right:12px;box-shadow:0 2px 8px #00000026}.exit-game-btn:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.arcade-hub-layout{background:#f3f3f3}.arcade-sheet-wrapper{gap:0}.hub-subtitle-cell{color:#475569;background:linear-gradient(90deg,#f8fafc 0%,#f1f5f9 100%);font-size:12px}.hub-wide-cell{min-height:52px;padding:8px}.hub-quick-row-wrap{min-height:56px}.hub-quick-row{grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr) auto minmax(160px,.9fr);align-items:center;gap:8px;width:100%;display:grid}.hub-quick-primary,.hub-quick-secondary,.hub-inline-btn{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #b7c7ba;border-radius:2px;height:32px;padding:0 10px;font-family:inherit;font-size:12px;transition:background .15s,border-color .15s,transform .15s}.hub-quick-primary{color:#fff;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);border-color:#0c5a2f;font-weight:600}.hub-quick-primary:hover,.hub-quick-secondary:hover,.hub-inline-btn:hover:not(:disabled){background:#f0fdf4;border-color:#107c41;transform:translateY(-1px)}.hub-quick-primary:hover{color:#fff;background:linear-gradient(135deg,#149452 0%,#0c5a2f 100%)}.hub-inline-btn:disabled{opacity:.5;cursor:not-allowed}.hub-quick-note{color:#64748b;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.hub-main-row{min-height:360px}.hub-main-cell{padding:8px;align-items:stretch!important}.hub-main-grid{grid-template-columns:minmax(0,1.75fr) minmax(280px,.95fr);gap:10px;width:100%;min-height:100%;display:grid}.hub-primary-panel,.hub-side-panel{background:#fbfcfb;border:1px solid #d7dfd8;flex-direction:column;display:flex}.hub-primary-panel{min-height:320px}.hub-secondary-column{gap:10px;display:grid}.hub-side-title{color:#fff;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);padding:6px 10px;font-size:12px;font-weight:600}.hub-game-table,.hub-mini-table{border-collapse:collapse;width:100%;font-size:12px}.hub-game-table th,.hub-game-table td,.hub-mini-table th,.hub-mini-table td{text-align:left;background:#fff;border:1px dotted #d4d4d4;padding:7px 8px}.hub-game-table th,.hub-mini-table th{color:#334155;background:#f8fafc;font-weight:600}.hub-game-table tbody tr{cursor:pointer}.hub-game-table tbody tr:hover td{background:#f7fbf8}.hub-game-table tbody tr.selected td{background:#edf7f0}.hub-game-chip{border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.hub-mini-table .state-active td:first-child{color:#107c41;font-weight:600}.hub-kpi-table td:last-child{color:#0f172a;font-weight:600}.hub-activity-list{gap:8px;margin:0;padding:10px;font-size:11px;list-style:none;display:grid}.hub-activity-list li{background:#fff;border:1px dotted #d4d4d4;padding:7px 8px}.hub-activity-list .tone-success{color:#166534;background:#f0fdf4}.hub-activity-list .tone-warning{color:#9a3412;background:#fff7ed}.hub-workbench-row{min-height:130px}.hub-workbench-cell{padding:10px;align-items:stretch!important}.hub-workbench-grid{gap:12px;width:100%;display:grid}.hub-mode-row{flex-wrap:wrap;gap:6px;display:flex}.excel-main-start-btn.compact{padding:10px 24px;font-size:14px}.excel-main-start-btn.compact.perler{background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%);border-color:#6d28d9;box-shadow:0 4px 12px #8b5cf647}.hub-workbench-actions{justify-content:flex-start;display:flex}.hub-perler-callout,.hub-coming-soon{justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.hub-perler-callout p,.hub-coming-soon p{color:#64748b;max-width:640px;margin:6px 0 0;font-size:12px}.hub-footer-nav-cell{background:#f8fafc;gap:14px}@media (width<=1200px){.hub-main-grid{grid-template-columns:1fr}.hub-quick-row{grid-template-columns:1fr 1fr}.hub-quick-note{grid-column:1/-1}}@media (width<=768px){.hub-quick-row{grid-template-columns:1fr}.hub-perler-callout,.hub-coming-soon{flex-direction:column;align-items:flex-start}}.config-center-row{min-height:180px}.config-center-cell{padding:10px;align-items:stretch!important}.config-center-grid{gap:14px;width:100%;display:grid}.compact-sheet-wrapper{gap:0}.compact-title-row{min-height:30px}.compact-title-cell{min-height:30px;padding:4px 10px;font-size:14px}.compact-quick-row-wrap{min-height:40px}.compact-quick-cell{padding:6px 8px}.hub-quick-row.compact{grid-template-columns:minmax(220px,1.4fr) 96px 96px;justify-content:start;align-items:center;gap:10px}.compact-main-row{min-height:420px}.compact-main-cell{padding:6px}.compact-main-grid{grid-template-columns:minmax(0,2.2fr) 210px;gap:8px}.compact-primary-panel,.compact-panel{background:#fff;border-color:#d4d4d4}.compact-secondary-column{align-content:start;gap:8px}.hub-game-table.compact{font-size:12px}.hub-game-table.compact th,.hub-game-table.compact td{padding:8px 10px}.hub-mini-table.compact{font-size:11px}.hub-mini-table.compact td,.hub-mini-table.compact th{padding:6px 8px}.compact-footer-nav-cell{justify-content:flex-start;padding:6px 8px}.compact-footer-nav-cell .excel-nav-buttons{flex-wrap:wrap;gap:10px}.compact-footer-nav-cell .excel-nav-btn{justify-content:center;min-width:72px}.hub-quick-row.compact .hub-quick-primary,.hub-quick-row.compact .hub-quick-secondary{white-space:nowrap;min-width:0;height:34px;padding:0 12px}.compact-nav-row{min-height:34px}@media (width<=1200px){.compact-main-grid{grid-template-columns:1fr}.hub-quick-row.compact{grid-template-columns:minmax(180px,1fr) 92px 92px}}@media (width<=768px){.hub-quick-row.compact{grid-template-columns:1fr}}.perler-shell{background:#f3f3f3;flex-direction:column;height:100%;display:flex}.perler-topbar{background:linear-gradient(#f8f8f8 0%,#ececec 100%);border-bottom:1px solid #d4d4d4;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.perler-topbar-copy{color:#475569;flex-direction:column;gap:4px;font-size:12px;display:flex}.perler-topbar-actions,.perler-side-actions{flex-wrap:wrap;gap:8px;display:flex}.perler-layout{flex:1;grid-template-columns:280px minmax(0,1fr) 260px;gap:10px;min-height:0;padding:10px;display:grid}.perler-left-panel,.perler-right-panel,.perler-main-panel,.perler-side-panel,.perler-modal{background:#fff;border:1px solid #d4d4d4}.perler-left-panel,.perler-right-panel{flex-direction:column;min-height:0;display:flex}.perler-main-panel{min-height:0;overflow:auto}.perler-panel-title{color:#fff;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);padding:6px 10px;font-size:12px;font-weight:600}.perler-filter-stack,.perler-meta-block,.perler-usage-list{gap:8px;padding:10px;font-size:12px;display:grid}.perler-filter-stack input,.perler-filter-stack select,.perler-import-form input,.perler-import-form select{height:32px;font:inherit;border:1px solid #cbd5e1;padding:0 8px}.perler-template-table{border-collapse:collapse;width:100%;font-size:12px}.perler-template-table th,.perler-template-table td{text-align:left;border:1px dotted #d4d4d4;padding:8px}.perler-template-table th{z-index:1;background:#f8fafc;position:sticky;top:0}.perler-template-table tbody tr{cursor:pointer}.perler-template-table tbody tr:hover td{background:#f7fbf8}.perler-template-table tbody tr.selected td{background:#edf7f0}.perler-inline-btn{height:32px;font:inherit;cursor:pointer;background:#fff;border:1px solid #b7c7ba;border-radius:2px;padding:0 10px}.perler-inline-btn.primary{color:#fff;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);border-color:#0c5a2f}.perler-inline-btn:disabled{opacity:.55;cursor:not-allowed}.perler-workspace-shell{padding:12px;overflow:auto}.perler-grid{background:#e2e8f0;gap:2px;padding:10px;display:grid}.perler-cell{aspect-ratio:1;cursor:pointer;border:1px solid #d4d4d4;min-width:18px;position:relative}.perler-cell.selected{outline-offset:-1px;outline:2px solid #107c41}.perler-cell-dot{opacity:.3;border-radius:999px;width:6px;height:6px;position:absolute;bottom:2px;right:2px}.perler-palette-grid{grid-template-columns:repeat(4,minmax(28px,1fr));gap:8px;padding:10px;display:grid}.perler-palette-list{gap:6px;padding:10px;display:grid}.perler-palette-row{font:inherit;cursor:pointer;background:#fff;border:1px solid #d4d4d4;grid-template-columns:22px 1fr auto;align-items:center;gap:8px;padding:6px 8px;display:grid}.perler-palette-row.selected{background:#edf7f0;border-color:#107c41}.perler-color-chip{cursor:pointer;border:2px solid #0000;width:20px;height:20px}.perler-color-chip.selected{border-color:#0f172a}.perler-palette-code{color:#334155;font-weight:600}.perler-palette-count{color:#64748b;font-size:11px}.perler-usage-row{grid-template-columns:16px 1fr auto;align-items:center;gap:8px;display:grid}.perler-usage-chip{border:1px solid #94a3b8;width:16px;height:16px}.perler-modal-backdrop{z-index:1000;background:#0f172a73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.perler-modal{width:min(520px,100vw - 32px)}.perler-import-form{gap:12px;padding:12px;display:grid}.perler-import-form label{gap:6px;font-size:12px;display:grid}.perler-finalize-copy{color:#475569;padding:12px;font-size:12px}.perler-finalize-copy p{margin:8px 0 0}@media (width<=1180px){.perler-layout{grid-template-columns:1fr}}.perler-import-note{color:#64748b;font-size:11px}.guided-workspace{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.canvas-workspace{align-items:start}.perler-board-block{gap:8px;min-width:0;display:grid}.perler-board-title{color:#334155;font-size:12px;font-weight:600}.perler-grid.reference,.perler-grid.play-grid{background:#e5e7eb}.perler-canvas-shell{background:#e5e7eb;max-width:100%;max-height:70vh;padding:10px;overflow:auto}.perler-canvas-board,.perler-final-canvas{image-rendering:pixelated;image-rendering:crisp-edges;display:block}.perler-cell.reference-cell{cursor:default}.perler-cell.correct{outline-offset:-1px;outline:1px solid #16a34a}.perler-cell.mismatch{outline-offset:-2px;outline:2px solid #dc2626}.perler-cell-bead{background:#ffffff40;border-radius:999px;position:absolute;inset:16%;box-shadow:inset 0 -1px 2px #0000002e}.perler-final-preview{justify-content:center;padding:0 12px 12px;display:flex;overflow:auto}@media (width<=1180px){.guided-workspace{grid-template-columns:1fr}}.perler-import-modal{width:min(560px,100vw - 32px)}.perler-workspace-toolbar{color:#475569;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.perler-toolbar-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.perler-workspace-toolbar label{align-items:center;gap:8px;display:flex}.perler-canvas-shell{border:1px solid #d4d4d4}.perler-layout.focus-layout,.canvas-workspace.view-focus,.canvas-workspace.view-reference{grid-template-columns:minmax(0,1fr)}.canvas-workspace.view-focus .player-panel,.canvas-workspace.view-reference .reference-panel{grid-column:1/-1}.canvas-workspace.view-focus .perler-canvas-shell,.canvas-workspace.view-reference .perler-canvas-shell{max-height:calc(100vh - 230px)}.pvz-sheet{--pvz-font-body:"Microsoft YaHei UI", "PingFang SC", "Segoe UI", sans-serif;--pvz-font-display:"Bahnschrift SemiCondensed", "Arial Narrow", var(--pvz-font-body);--pvz-text-strong:#10210f;--pvz-text-muted:#4b5e53;--pvz-border-soft:#26402129;--pvz-chip-shadow:inset 0 1px 0 #ffffffb3;height:100%;font-family:var(--pvz-font-body);color:var(--pvz-text-strong);background:#f3f3f3;flex-direction:column;gap:10px;padding:10px;display:flex;position:relative}.pvz-hud{grid-template-columns:minmax(0,1.75fr) auto;grid-template-areas:"overview controls""metrics metrics";align-items:stretch;gap:6px 8px;display:grid}.pvz-card-tray{flex-wrap:wrap;gap:8px;display:flex}.pvz-card-tray-shell{gap:6px;display:grid}.pvz-card-tray-meta{color:#54665d;flex-wrap:wrap;gap:8px;font-size:11px;display:flex}.pvz-card-tray-meta span{background:#fffc;border:1px solid #d9e2dc;border-radius:999px;padding:3px 8px}.pvz-hud-label{letter-spacing:.08em;color:#6f7f77;font-size:.65rem}.pvz-hud-bar{background:linear-gradient(#fffffffa 0%,#f8fafcfa 100%);border:1px solid #d4d4d4;border-radius:8px;align-items:center;gap:10px;min-width:0;padding:7px 10px;display:flex;box-shadow:inset 0 1px #fffc}.pvz-hud-bar--overview{grid-area:overview}.pvz-hud-bar--controls{grid-area:controls;justify-content:space-between}.pvz-hud-bar--metrics{grid-area:metrics}.pvz-hud-identity,.pvz-hud-controls-head{align-items:baseline;gap:8px;min-width:0;display:flex}.pvz-hud-title{color:#0f172a;white-space:nowrap;font-size:.88rem;line-height:1.1}.pvz-hud-chips,.pvz-hud-controls{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pvz-hud-summary,.pvz-hud-metrics{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.pvz-hud-summary{flex:1}.pvz-hud-chip{color:#334155;background:#ffffffe0;border:1px solid #d9e2dc;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex}.pvz-hud-chip--status.status-playing{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.pvz-hud-chip--status.status-won{color:#92400e;background:#fffbeb;border-color:#fde68a}.pvz-hud-chip--status.status-lost{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.pvz-hud-summary-item,.pvz-hud-metric{color:#475569;background:#ffffffb8;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:6px;min-width:0;min-height:26px;padding:0 9px;font-size:11px;display:inline-flex}.pvz-hud-summary-item strong,.pvz-hud-metric strong{color:#1f2937;white-space:nowrap;font-size:11px}.pvz-hud-metric{font-variant-numeric:tabular-nums}.pvz-setup-panel{background:#fff;border:1px solid #d4d4d4;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:12px;padding:10px 12px;display:grid}.pvz-setup-toolbar{border-bottom:1px solid #e5e7eb;grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;padding-bottom:10px;display:flex}.pvz-setup-toolbar-copy,.pvz-setup-toolbar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pvz-setup-toolbar-copy strong{color:#10210f;font-size:13px}.pvz-setup-panel.is-collapsed{grid-template-columns:1fr}.pvz-setup-copy{color:#475569;gap:4px;max-height:240px;padding-right:4px;font-size:12px;display:grid;overflow:auto}.pvz-scenario-detail-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:6px;display:grid}.pvz-scenario-detail-item{color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;padding:6px 8px;font-size:11px}.pvz-scenario-detail-item span{color:#475569;font-size:10px;display:block}.pvz-start-btn{color:#fff;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);border:1px solid #0c5a2f;border-radius:8px;min-height:40px;padding:9px 16px;font-size:13px;font-weight:700}.pvz-mode-panel{gap:10px;max-height:360px;padding-right:4px;display:grid;overflow:auto}.pvz-mode-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.pvz-adventure-pack-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.pvz-mode-tab,.pvz-scenario-card{color:#0f172a;background:#fff;border:1px solid #d4d4d4}.pvz-mode-tab{padding:8px 10px;font-size:12px}.pvz-mode-tab.active{background:#edf7f0;border-color:#107c41}.pvz-scenario-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:220px;padding-right:4px;display:grid;overflow:auto}.pvz-scenario-card{text-align:left;gap:4px;padding:8px 9px;display:grid}.pvz-scenario-card-topline{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.pvz-scenario-card.active{background:#edf7f0;border-color:#107c41}.pvz-scenario-card strong{font-size:12px}.pvz-scenario-card span,.pvz-scenario-card small{color:#475569}.pvz-scenario-card span{font-size:11px}.pvz-scenario-card small{font-size:10px}.pvz-hud-item,.pvz-card{background:#fff;border:1px solid #d4d4d4;padding:7px 8px;font-size:.74rem}.pvz-hud-btn{color:#1f2937;background:linear-gradient(#fff 0%,#f8fafc 100%);border:1px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;min-height:40px;padding:9px 14px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.pvz-wave-alert{color:#9a3412;white-space:nowrap;background:linear-gradient(#fff7ed 0%,#ffedd5 100%);border:1px solid #fbbf24;border-radius:8px;justify-content:center;align-items:center;min-height:34px;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.pvz-wave-alert--final{color:#b91c1c;background:linear-gradient(#fff1f2 0%,#ffe4e6 100%);border-color:#fca5a5}.pvz-card{cursor:pointer;align-content:start;gap:4px;min-width:76px;display:grid}.pvz-card.selected{background:#edf7f0;border-color:#107c41}.pvz-card--recommended{box-shadow:inset 0 0 0 1px #f59e0b2e}.pvz-card:disabled{opacity:.6;cursor:not-allowed}.pvz-card:focus-visible,.pvz-mode-tab:focus-visible,.pvz-scenario-card:focus-visible,.pvz-start-btn:focus-visible,.pvz-cell:focus-visible,.pvz-setup-copy select:focus-visible{outline-offset:2px;outline:2px solid #107c41}.pvz-card-name{color:var(--pvz-text-strong);font-size:.82rem;font-weight:700;line-height:1.15}.pvz-card-meta,.pvz-card-cooldown{color:#587065;font-size:.68rem}.pvz-card-topline{justify-content:space-between;align-items:center;gap:6px;display:flex}.pvz-card-short,.pvz-card-role,.pvz-unit-meta,.pvz-inline-short{box-shadow:var(--pvz-chip-shadow);border:1px solid #10210f1f;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.pvz-card-short{min-width:1.46rem;min-height:1.46rem;font-family:var(--pvz-font-display);padding:0 .3rem;font-size:.9rem;font-weight:700;line-height:1}.pvz-card-role,.pvz-unit-meta{letter-spacing:.05em;color:#3d5248;background:#ffffff94;padding:.12rem .34rem;font-size:.58rem}.pvz-unit-meta-row{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.pvz-card-stats{flex-wrap:wrap;gap:3px;display:flex}.pvz-card-stat,.pvz-unit-rate{letter-spacing:.04em;color:#3d5248;background:#fff9;border:1px solid #10210f1a;border-radius:999px;justify-content:center;align-items:center;padding:.1rem .32rem;font-size:.58rem;display:inline-flex}.pvz-card-stat--timing,.pvz-unit-rate{font-variant-numeric:tabular-nums;color:#155e75;background:#f0f9ffc7}.pvz-card-stat--recommend{color:#92400e;background:#fef3c7e0}.pvz-board-shell{background:#fff;border:1px solid #d4d4d4;flex:1;position:relative;overflow:auto}.pvz-setup-board-placeholder{color:#64748b;background:#fff;border:1px solid #d4d4d4;flex:1;justify-content:center;align-items:center;font-size:13px;display:flex}.pvz-board{gap:4px;padding:10px;display:grid}.pvz-row{grid-template-columns:repeat(9,84px);gap:5px;min-height:70px;display:grid;position:relative}.pvz-lawn-mower{z-index:3;pointer-events:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:20px;line-height:1;display:inline-flex;position:absolute;top:50%;transform:translate(-50%,-50%)}.pvz-lawn-mower--triggered{width:34px;font-size:18px}.pvz-cell{background:linear-gradient(#d9f99d 0%,#bbf7d0 100%);border:1px dotted #d4d4d4;min-height:70px;position:relative}.pvz-zombie-lane{pointer-events:none;position:absolute;inset:0}.pvz-projectile{border:1px solid #0f172a29;border-radius:999px;width:12px;height:12px;position:absolute;top:28px;transform:translate(-50%)}.pvz-projectile.kind-pea{background:radial-gradient(circle at 30% 30%,#dcfce7 0%,#16a34a 58%,#166534 100%)}.pvz-projectile.kind-double-pea{background:radial-gradient(circle at 30% 30%,#dcfce7 0%,#15803d 56%,#14532d 100%);box-shadow:-8px 0 0 -2px #15803df2,8px 0 0 -2px #15803df2,0 0 0 2px #16a34a33}.pvz-projectile.kind-snow-pea{background:radial-gradient(circle at 35% 35%,#eff6ff 0%,#67e8f9 55%,#2563eb 100%);width:13px;height:13px;box-shadow:0 0 0 2px #7dd3fc59}.pvz-projectile.kind-lobbed{background:linear-gradient(135deg,#d9f99d 0%,#84cc16 55%,#4d7c0f 100%);border-radius:4px;width:14px;height:14px;transform:translate(-50%)rotate(18deg)}.pvz-plant,.pvz-zombie{border:1px solid var(--pvz-border-soft);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border-radius:12px;place-items:center;gap:3px;min-width:60px;padding:4px 6px 5px;display:grid;position:absolute;top:7px}.pvz-unit-frame--armor{box-shadow:inset 0 0 0 2px #ffffff8c,0 0 0 1px #4d655a47}.pvz-plant{inset:7px}.pvz-zombie{transform:translate(-50%)}.pvz-unit-short-shell{--pvz-charge-progress:0;background:radial-gradient(circle,#ffffffe0 58%,#0000 59%),conic-gradient(from -90deg,#94a3b829 0turn 1turn);border-radius:999px;place-items:center;width:2rem;height:2rem;transition:background .18s linear;display:inline-grid;position:relative}.pvz-charge--sun{background:radial-gradient(circle, #fffbebf0 58%, transparent 59%), conic-gradient(from -90deg, #facc15 calc(var(--pvz-charge-progress) * 1turn), #facc1529 0)}.pvz-charge--attack{background:radial-gradient(circle, #f0fdf4f0 58%, transparent 59%), conic-gradient(from -90deg, #16a34a calc(var(--pvz-charge-progress) * 1turn), #16a34a29 0)}.pvz-charge--blast{background:radial-gradient(circle, #fff7edf0 58%, transparent 59%), conic-gradient(from -90deg, #f97316 calc(var(--pvz-charge-progress) * 1turn), #f9731629 0)}.pvz-unit-short{font-family:var(--pvz-font-display);letter-spacing:.02em;color:var(--pvz-text-strong);font-size:1rem;font-weight:700;line-height:1}.pvz-unit-short-badge{color:#33453d;background:#ffffffe6;border:1px solid #10210f1f;border-radius:999px;justify-content:center;align-items:center;min-width:.92rem;height:.92rem;padding:0 .2rem;font-size:.52rem;font-weight:800;line-height:1;display:inline-flex;position:absolute;bottom:-.08rem;right:-.12rem;box-shadow:0 1px 2px #0f172a1f}.pvz-unit-name{color:#33453d;text-align:center;font-size:.66rem;font-weight:700;line-height:1.05}.pvz-health-bar{background:#0f172a29;border-radius:999px;width:100%;height:6px;display:flex;overflow:hidden}.pvz-health-fill{height:100%;display:block}.pvz-health-fill--body{background:linear-gradient(90deg,#22c55e 0%,#84cc16 55%,#facc15 82%,#f97316 100%)}.pvz-health-fill--armor{background:linear-gradient(90deg,#cbd5e1 0%,#94a3b8 55%,#64748b 100%)}.pvz-health-bar--armored{box-shadow:inset 0 0 0 1px #4755692e}.pvz-trait--tank{color:#334155;background:#e2e8f0e0}.pvz-trait--fast{color:#7f1d1d;background:#fecdd3e0}.pvz-trait--ranged{color:#0f766e;background:#99f6e4e0}.pvz-trait--blast{color:#9a3412;background:#fed7aae6}.pvz-trait--support{color:#365314;background:#d9f99de0}.pvz-trait--pressure{color:#4c1d95;background:#e9d5ffe0}.pvz-inline-badge{border:1px solid var(--pvz-border-soft);color:#294034;border-radius:999px;align-items:center;gap:6px;padding:.28rem .48rem .28rem .3rem;font-size:.76rem;font-weight:600;display:inline-flex}.pvz-inline-short{min-width:1.4rem;min-height:1.4rem;font-family:var(--pvz-font-display);background:#ffffffa8;padding:0 .28rem;font-size:.88rem;line-height:1}.pvz-inline-list{flex-wrap:wrap;gap:6px;display:flex}.pvz-plant--sun,.pvz-card.pvz-plant--sun,.pvz-inline-badge.pvz-plant--sun{background:linear-gradient(#fef9c3f5 0%,#fef08aeb 100%)}.pvz-plant--pea,.pvz-card.pvz-plant--pea,.pvz-inline-badge.pvz-plant--pea{background:linear-gradient(#dcfce7f5 0%,#86efaceb 100%)}.pvz-plant--nut,.pvz-card.pvz-plant--nut,.pvz-inline-badge.pvz-plant--nut{background:linear-gradient(#fef3c7f5 0%,#fdba74eb 100%)}.pvz-plant--bomb,.pvz-card.pvz-plant--bomb,.pvz-inline-badge.pvz-plant--bomb{background:linear-gradient(#fee2e2f5 0%,#f87171e6 100%)}.pvz-plant--mine,.pvz-card.pvz-plant--mine,.pvz-inline-badge.pvz-plant--mine{background:linear-gradient(#fae8fff2 0%,#d8b4fee6 100%)}.pvz-plant--double,.pvz-card.pvz-plant--double,.pvz-inline-badge.pvz-plant--double{background:linear-gradient(#d1fae5f5 0%,#34d399e6 100%)}.pvz-plant--ice,.pvz-card.pvz-plant--ice,.pvz-inline-badge.pvz-plant--ice{background:linear-gradient(#e0f2fef5 0%,#7dd3fce6 100%)}.pvz-plant--lob,.pvz-card.pvz-plant--lob,.pvz-inline-badge.pvz-plant--lob{background:linear-gradient(#ecfdf5f5 0%,#84cc16e0 100%)}.pvz-plant--bite,.pvz-card.pvz-plant--bite,.pvz-inline-badge.pvz-plant--bite{background:linear-gradient(#fef08af2 0%,#a7f3d0e0 100%)}.pvz-plant--triple,.pvz-card.pvz-plant--triple,.pvz-inline-badge.pvz-plant--triple{background:linear-gradient(#dbeafef5 0%,#60a5fae6 100%)}.pvz-plant--fire,.pvz-card.pvz-plant--fire,.pvz-inline-badge.pvz-plant--fire{background:linear-gradient(#ffedd5f5 0%,#fb923ce6 100%)}.pvz-plant--kernel,.pvz-card.pvz-plant--kernel,.pvz-inline-badge.pvz-plant--kernel{background:linear-gradient(#fef9c3f5 0%,#facc15e6 100%)}.pvz-zombie--normal,.pvz-inline-badge.pvz-zombie--normal{background:linear-gradient(#f1f5f9f5 0%,#cbd5e1eb 100%)}.pvz-zombie--flag,.pvz-inline-badge.pvz-zombie--flag{background:linear-gradient(#fef2f2f5 0%,#fca5a5eb 100%)}.pvz-zombie--cone,.pvz-inline-badge.pvz-zombie--cone{background:linear-gradient(#ffedd5f5 0%,#fb923ce6 100%)}.pvz-zombie--bucket,.pvz-inline-badge.pvz-zombie--bucket{background:linear-gradient(#e2e8f0f5 0%,#94a3b8eb 100%)}.pvz-zombie--paper,.pvz-inline-badge.pvz-zombie--paper{background:linear-gradient(#faf5fff5 0%,#d8b4fee6 100%)}.pvz-zombie--pole,.pvz-inline-badge.pvz-zombie--pole{background:linear-gradient(#e0e7fff5 0%,#818cf8e6 100%)}.pvz-zombie--football,.pvz-inline-badge.pvz-zombie--football{background:linear-gradient(#ffe4e6f5 0%,#f43f5ee6 100%)}.pvz-zombie--door,.pvz-inline-badge.pvz-zombie--door{background:linear-gradient(#f0f9fff5 0%,#7dd3fceb 100%)}.pvz-zombie{border-color:#32443d2e}.pvz-zombie .pvz-unit-short{font-size:1.18rem}.pvz-zombie .pvz-unit-name{font-size:.68rem}.pvz-info-table{border-collapse:collapse;width:100%;font-size:.78rem}.pvz-info-table th{letter-spacing:.08em;color:#5d6c64;font-size:.7rem}.pvz-info-table td:nth-child(2),.pvz-info-table td:nth-child(3){font-variant-numeric:tabular-nums}.pvz-info-sheet{overflow:auto}.pvz-info-panel{background:#fff;border:1px solid #d4d4d4;padding:12px}.pvz-info-panel h3{margin:0 0 10px;font-size:.94rem}.pvz-info-table th,.pvz-info-table td{text-align:left;border:1px dotted #d4d4d4;padding:8px}.pvz-rule-list{color:#334155;margin:0;padding-left:18px;font-size:.78rem}@media (width<=1100px){.pvz-hud,.pvz-setup-panel,.pvz-scenario-grid,.pvz-mode-tabs,.pvz-adventure-pack-grid{grid-template-columns:1fr}.pvz-hud{grid-template-areas:"overview""controls""metrics"}.pvz-setup-toolbar{flex-direction:column;align-items:stretch}.pvz-setup-toolbar-actions{justify-content:space-between}.pvz-row{grid-template-columns:repeat(9,minmax(62px,1fr))}}@media (width<=760px){.pvz-hud-bar,.pvz-hud-identity,.pvz-hud-controls-head{flex-direction:column;align-items:stretch}.pvz-hud-chips,.pvz-hud-controls,.pvz-hud-summary,.pvz-hud-metrics{width:100%}.pvz-hud-btn{flex:140px}.pvz-result-panel{grid-template-columns:1fr}}.pvz-result-overlay{z-index:12;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a3d;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.pvz-result-panel{background:#fff;border:1px solid #d4d4d4;border-radius:12px;grid-template-columns:minmax(0,1fr) 190px;gap:14px;width:min(720px,100%);padding:16px;display:grid;box-shadow:0 18px 48px #0f172a2e}.pvz-result-panel--won{border-color:#107c41}.pvz-result-panel--lost{border-color:#b91c1c}.pvz-result-copy,.pvz-result-actions{gap:8px;display:grid}.pvz-result-title{color:#10210f;font-size:16px}.pvz-result-copy span{color:#475569;font-size:12px}.pvz-result-actions{align-content:start}.pvz-progress-stats{flex-wrap:wrap;gap:16px;display:flex}.pvz-stat-item{flex-direction:column;gap:2px;display:flex}.pvz-stat-label{color:#6b7280;font-size:.72rem}.pvz-stat-value{color:#107c41;font-size:1.1rem;font-weight:700}.pvz-scenario-card--completed{border-left:3px solid #107c41}.pvz-scenario-card--unlocked{border-left:3px solid #f59e0b}.pvz-scenario-card--locked{opacity:.55;cursor:not-allowed;border-left:3px solid #9ca3af}.pvz-card-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.pvz-status-badge{font-size:.85rem;line-height:1}.pvz-lock-hint{color:#ef4444;font-size:.7rem}.pvz-completed-hint{color:#107c41;font-size:.7rem}.pvz-recommended-cards{flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px;display:flex}.pvz-card-tag{color:#374151;background:#e5e7eb;border-radius:4px;padding:1px 6px;font-size:.68rem;display:inline-block}.pvz-small-btn{cursor:pointer;color:#6b7280;background:#fff;border:1px solid #d1d5db;border-radius:4px;transition:all .15s}.pvz-small-btn:hover{color:#ef4444;background:#f3f4f6;border-color:#ef4444}.pvz-card--locked{opacity:.45;cursor:not-allowed;filter:grayscale(.6)}.pvz-card-cooldown--locked{color:#ef4444;font-weight:600}.pvz-unlock-notice{background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border:1px solid #f59e0b;border-radius:6px;flex-direction:column;gap:4px;margin-top:8px;padding:8px 12px;display:flex}.pvz-unlock-notice strong{color:#92400e;font-size:.85rem}.pvz-unlock-notice span{color:#78350f;font-size:.78rem}.pvz-plant--attacking{animation:.3s ease-out pvz-attack-pulse}.pvz-plant--splash-attack{animation:.5s ease-out pvz-splash-pulse}.pvz-plant--range-attack{animation:.4s ease-out pvz-range-pulse}@keyframes pvz-attack-pulse{0%{transform:scale(1)}50%{transform:scale(1.05);box-shadow:0 0 8px #107c4199}to{transform:scale(1)}}@keyframes pvz-splash-pulse{0%{transform:scale(1)}30%{transform:scale(1.08);box-shadow:0 0 12px #ff8c00b3}to{transform:scale(1)}}@keyframes pvz-range-pulse{0%{transform:scale(1)}40%{transform:scale(1.06);box-shadow:0 0 10px #8a2be280}to{transform:scale(1)}}.pvz-zombie--stealth{opacity:.4;animation:1s infinite pvz-stealth-wave}.pvz-zombie--airborne{animation:.5s infinite pvz-fly-bounce}.pvz-zombie--summoning{animation:1s infinite pvz-summon-glow}@keyframes pvz-stealth-wave{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:.6;transform:translateY(-2px)}}@keyframes pvz-fly-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes pvz-summon-glow{0%,to{box-shadow:0 0 5px #ffd7004d}50%{box-shadow:0 0 15px #ffd70099}}.pvz-projectile--snow-pea{filter:drop-shadow(0 0 3px #3b82f699)}.pvz-projectile--fire-pea{filter:drop-shadow(0 0 4px #ff6400b3)}.pvz-projectile--shock{filter:drop-shadow(0 0 3px #facc1599)}.pvz-hit-effect--splash{background:radial-gradient(circle,#ff8c0066 0%,#0000 70%);border-radius:50%;animation:.3s ease-out forwards pvz-splash-expand;position:absolute}.pvz-hit-effect--slow{background:radial-gradient(circle,#3b82f680 0%,#0000 60%);border-radius:50%;animation:.5s ease-out forwards pvz-ice-freeze;position:absolute}.pvz-hit-effect--fire{background:radial-gradient(circle,#ff640099 0%,#0000 50%);border-radius:50%;animation:.2s ease-out forwards pvz-fire-burst;position:absolute}.pvz-hit-effect--shock{background:radial-gradient(circle,#facc1580 0%,#0000 60%);border-radius:50%;animation:.3s ease-out forwards pvz-shock-chain;position:absolute}@keyframes pvz-splash-expand{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(2)}}@keyframes pvz-ice-freeze{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(1.5)}}@keyframes pvz-fire-burst{0%{opacity:1;transform:scale(.2)}to{opacity:0;transform:scale(1)}}@keyframes pvz-shock-chain{0%{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(1.2)}}.pvz-zombie--boss{animation:1s infinite pvz-boss-glow;box-shadow:0 0 20px #ff000080}@keyframes pvz-boss-glow{0%,to{box-shadow:0 0 20px #ff000080}50%{box-shadow:0 0 30px #f00c}}.snake-sheet{background:#f3f3f3;flex-direction:column;gap:10px;height:100%;padding:10px;display:flex;position:relative}.snake-settings-shell{gap:10px;display:grid}.snake-settings-summary{background:#fff;border:1px solid #d4d4d4;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.snake-settings-summary strong{color:#0f172a;margin-bottom:4px;font-size:13px;display:block}.snake-settings-summary p{color:#475569;margin:0;font-size:12px}.snake-settings-actions{color:#64748b;justify-items:end;gap:6px;font-size:12px;display:grid}.snake-settings-toggle{color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1;padding:6px 10px;font-size:12px}.snake-config-panel{background:#fff;border:1px solid #d4d4d4;gap:10px;padding:10px;display:grid}.snake-config-header{gap:10px;display:grid}.snake-config-header strong{color:#0f172a;margin-bottom:4px;font-size:13px;display:block}.snake-config-header p{color:#475569;margin:0;font-size:12px}.snake-pack-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.snake-pack-tab{text-align:left;background:linear-gradient(#fcfdff 0%,#f8fafc 100%);border:1px solid #dbe4f0;border-top:3px solid #0000;gap:4px;padding:10px;display:grid}.snake-pack-tab.active{border-color:var(--snake-pack-accent,#107c41);border-top-color:var(--snake-pack-accent,#107c41);background:#f8fffb}.snake-pack-tab span{color:#0f172a;font-size:12px;font-weight:700}.snake-pack-tab small{color:#64748b;font-size:11px}.snake-preset-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.snake-preset-card{text-align:left;background:#f8fafc;border:1px solid #dbe4f0;gap:6px;min-height:120px;padding:10px;display:grid}.snake-preset-card.active{background:#edf7f0;border-color:#107c41;box-shadow:inset 0 0 0 1px #107c4126}.snake-preset-card p,.snake-preset-card small{margin:0}.snake-preset-card p{color:#334155;font-size:12px}.snake-preset-card small{color:#64748b;font-size:11px}.snake-preset-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.snake-preset-top strong{color:#0f172a;font-size:12px}.snake-preset-top span{color:#107c41;font-size:10px;font-weight:700}.snake-toolbar{background:#fff;border:1px solid #d4d4d4;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 10px;display:flex}.snake-toolbar label{color:#334155;align-items:center;gap:6px;font-size:12px;display:inline-flex}.snake-toolbar select{border:1px solid #cbd5e1;padding:2px 4px;font-size:12px}.snake-key-hint{color:#64748b;min-width:min(100%,320px);margin-left:auto;font-size:12px}.snake-main{flex:1;grid-template-columns:1fr 260px;gap:10px;min-height:0;display:grid}.snake-board-shell{background:#fff;border:1px solid #d4d4d4;padding:8px;overflow:auto}.snake-board-grid{gap:2px;display:grid}.snake-board-cell{color:#334155;background:#f8fafc;border:1px dotted #d4d4d4;place-items:center;min-height:24px;font-size:11px;display:grid}.snake-board-cell.obstacle{color:#1f2937;background:#cbd5e1;border-color:#94a3b8}.snake-board-cell.food{border-color:#93c5fd;font-weight:700}.snake-board-cell.food.letter,.snake-board-cell.food.digit{color:#1d4ed8;background:#dbeafe}.snake-board-cell.food.target{box-shadow:inset 0 0 0 2px #0f766e}.snake-board-cell.food.coin{color:#b45309;background:#fef3c7}.snake-board-cell.food.coffee{color:#78350f;background:#e7d7ce}.snake-board-cell.food.gold{color:#92400e;background:#fde68a}.snake-board-cell.food.error_na,.snake-board-cell.food.error_div,.snake-board-cell.food.meeting{color:#991b1b;background:#fecaca}.snake-board-cell.food.wild{color:#6d28d9;background:#ede9fe}.snake-board-cell.snake{color:#fff;border-color:#166534;font-weight:700}.snake-board-cell.snake.head{background:#15803d;font-weight:700}.snake-board-cell.snake.body{background:#22c55e}.snake-board-cell.snake.tail{color:#14532d;background:#86efac}.snake-side{flex-direction:column;gap:10px;min-width:0;display:flex}.snake-hud{background:#fff;border:1px solid #d4d4d4;gap:10px;padding:10px;display:grid}.snake-hud-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.snake-hud-item{color:#475569;border:1px dotted #cbd5e1;gap:3px;padding:6px;font-size:11px;display:grid}.snake-hud-item.wide{grid-column:1/-1}.snake-hud-item strong{color:#0f172a;font-size:13px}.snake-hud-event{color:#334155;border:1px solid #cbd5e1;padding:8px 10px;font-size:12px}.snake-hud-note{color:#475569;border-top:1px dashed #e2e8f0;gap:4px;padding-top:6px;font-size:11px;display:grid}.snake-hud-note strong{color:#0f766e}.snake-hud-event.success{color:#166534;background:#dcfce7;border-color:#86efac}.snake-hud-event.warning{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.snake-hud-event.info{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.snake-hud-actions{flex-wrap:wrap;gap:8px;display:flex}.snake-btn{color:#fff;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);border:1px solid #0c5a2f;padding:6px 10px;font-size:12px}.snake-btn:disabled{opacity:.45}.snake-btn.ghost{color:#334155;background:#fff;border-color:#64748b}.snake-pack-tab:focus-visible,.snake-preset-card:focus-visible,.snake-btn:focus-visible,.snake-toolbar select:focus-visible,.snake-settings-toggle:focus-visible{outline-offset:2px;outline:2px solid #107c41}.snake-legend{color:#334155;background:#fff;border:1px solid #d4d4d4;padding:10px;font-size:12px}.snake-legend h4{margin:0 0 8px;font-size:13px}.snake-legend p{margin:0 0 4px}.snake-legend-additional{color:#475569;border-top:1px dashed #e2e8f0;gap:4px;margin-top:6px;padding-top:6px;font-size:11px;display:grid}.snake-legend-additional strong{color:#0f766e}.snake-overlay{background:#0f172a66;place-items:center;display:grid;position:absolute;inset:44px 10px 10px}.snake-overlay-card{background:#fff;border:1px solid #d4d4d4;gap:10px;width:min(420px,100% - 20px);padding:16px;display:grid}.snake-overlay-card h3{color:#0f172a;margin:0;font-size:18px}.snake-overlay-card p{color:#334155;margin:0;font-size:13px}.snake-overlay-actions{gap:8px;display:flex}@media (width<=1100px){.snake-pack-tabs,.snake-preset-grid{grid-template-columns:1fr}.snake-settings-summary{flex-direction:column;align-items:flex-start}.snake-settings-actions{justify-items:start}.snake-main{grid-template-columns:1fr}.snake-key-hint{min-width:0;margin-left:0}}.tetris-sheet{background:linear-gradient(#eef4ff 0%,#f8fafc 100%);grid-template-rows:auto auto minmax(0,1fr) auto;gap:10px;height:100%;min-height:0;padding:10px;display:grid;position:relative;overflow:hidden}.tetris-settings-shell{gap:10px;display:grid}.tetris-settings-summary{background:#fff;border:1px solid #d4d4d4;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.tetris-settings-summary strong{color:#0f172a;margin-bottom:4px;font-size:13px;display:block}.tetris-settings-summary p{color:#475569;margin:0;font-size:12px}.tetris-settings-actions{color:#64748b;justify-items:end;gap:6px;font-size:12px;display:grid}.tetris-settings-toggle{color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1;padding:6px 10px;font-size:12px}.tetris-config-panel{background:#fff;border:1px solid #d4d4d4;gap:10px;padding:10px;display:grid}.tetris-config-copy strong{color:#0f172a;margin-bottom:4px;font-size:13px;display:block}.tetris-config-copy p{color:#475569;margin:0;font-size:12px}.tetris-config-target{background:#f1f5f9;border:1px dashed #e2e8f0;gap:4px;padding:8px;display:grid}.tetris-config-target strong{text-transform:uppercase;letter-spacing:.05em;color:#0f172a;font-size:11px}.tetris-config-target p{color:#1d4ed8;margin:0;font-size:13px;font-weight:600}.tetris-config-target small{color:#475569;font-size:11px}.tetris-pack-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.tetris-pack-tab{text-align:left;background:linear-gradient(#fdfefe 0%,#f8fafc 100%);border:1px solid #dbe4f0;border-top:3px solid #0000;gap:4px;padding:10px;display:grid}.tetris-pack-tab.active{border-color:var(--tetris-pack-accent,#2563eb);border-top-color:var(--tetris-pack-accent,#2563eb)}.tetris-pack-tab span{color:#0f172a;font-size:12px;font-weight:700}.tetris-pack-tab small{color:#64748b;font-size:11px}.tetris-preset-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.tetris-preset-card{text-align:left;background:#f8fafc;border:1px solid #dbe4f0;gap:6px;min-height:110px;padding:10px;display:grid}.tetris-preset-card.active{background:#eff6ff;border-color:#2563eb}.tetris-preset-card.disabled{opacity:.55}.tetris-preset-top{justify-content:space-between;gap:8px;display:flex}.tetris-preset-top strong{color:#0f172a;font-size:12px}.tetris-preset-top span{color:#2563eb;font-size:10px;font-weight:700}.tetris-preset-card p{color:#475569;margin:0;font-size:12px}.tetris-toolbar{background:#fff;border:1px solid #d4d4d4;justify-content:space-between;gap:8px;padding:8px;display:flex}.tetris-toolbar-group{align-items:center;gap:8px;display:flex}.tetris-toolbar button,.tetris-toolbar select{color:#1e293b;background:#fff;border:1px solid #cbd5e1;padding:6px 10px;font-size:12px}.tetris-main{grid-template-columns:minmax(0,1fr) 200px;align-items:stretch;gap:10px;min-height:0;display:grid}.tetris-board-shell{background:#fff;border:1px solid #d4d4d4;justify-content:center;align-items:center;min-height:0;padding:8px;display:flex;overflow:hidden}.tetris-board{aspect-ratio:1/2;background:#cbd5e1;gap:1px;width:auto;max-width:100%;height:min(100%,100dvh - 270px);max-height:100%;display:grid}.tetris-cell{background:#f8fafc;min-width:0;min-height:0}.tetris-cell.ghost{box-shadow:inset 0 0 0 2px #64748b73}.tetris-cell.active{box-shadow:inset 0 0 0 2px #fff9}.tetris-cell.kind-I{background:#38bdf8}.tetris-cell.kind-O{background:#facc15}.tetris-cell.kind-T{background:#a855f7}.tetris-cell.kind-S{background:#22c55e}.tetris-cell.kind-Z{background:#ef4444}.tetris-cell.kind-J{background:#3b82f6}.tetris-cell.kind-L{background:#f97316}.tetris-hud{align-content:start;gap:8px;min-height:0;display:grid}.tetris-hud-panel{background:#fff;border:1px solid #d4d4d4;padding:8px 10px}.tetris-hud-panel h4{color:#334155;margin:0 0 4px;font-size:12px}.tetris-hud-panel p{color:#0f172a;margin:0;font-size:14px;font-weight:600}.tetris-hud-kv{color:#475569;justify-content:space-between;align-items:baseline;gap:10px;margin-top:6px;font-size:12px;display:flex}.tetris-hud-kv strong{color:#0f172a;font-size:13px}.tetris-hud-goal-hint{color:#475569;margin:4px 0 0;font-size:12px;font-weight:500;line-height:1.4}.tetris-hud-queue{color:#475569;gap:6px;margin-top:6px;font-size:12px;display:grid}.tetris-next-list{color:#334155;margin:0;padding-left:16px;font-size:12px}.tetris-help{color:#475569;background:#fff;border:1px solid #d4d4d4;flex-wrap:wrap;gap:8px;padding:8px;font-size:12px;display:flex}.tetris-settings-shell.collapsed+.tetris-main .tetris-board{height:min(100%,100dvh - 190px)}.tetris-pack-tab:focus-visible,.tetris-preset-card:focus-visible,.tetris-toolbar button:focus-visible,.tetris-toolbar select:focus-visible,.tetris-overlay-actions button:focus-visible,.tetris-settings-toggle:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.tetris-overlay{background:#0f172a73;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.tetris-overlay-card{background:#fff;border:1px solid #d4d4d4;gap:10px;min-width:320px;max-width:420px;padding:18px;display:grid}.tetris-overlay-card h3{color:#0f172a;margin:0;font-size:18px}.tetris-overlay-card p{color:#475569;margin:0;font-size:13px}.tetris-overlay-actions{flex-wrap:wrap;gap:8px;display:flex}.tetris-overlay-actions button{color:#0f172a;background:#f8fafc;border:1px solid #94a3b8;padding:6px 10px;font-size:12px}@media (width<=1100px){.tetris-settings-summary{flex-direction:column;align-items:flex-start}.tetris-settings-actions{justify-items:start}.tetris-pack-tabs,.tetris-preset-grid{grid-template-columns:1fr}.tetris-main{grid-template-columns:minmax(0,1fr)}.tetris-board{height:min(100%,100dvh - 320px)}}.pacman-sheet{background:#f3f3f3;flex-direction:column;gap:10px;height:100%;padding:10px;display:flex;position:relative}.pacman-settings-shell{gap:10px;display:grid}.pacman-settings-shell.collapsed .pacman-config-panel,.pacman-settings-shell.collapsed .pacman-toolbar{display:none}.pacman-settings-summary{background:#fff;border:1px solid #d4d4d4;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.pacman-settings-summary strong{color:#0f172a;margin-bottom:4px;font-size:13px;display:block}.pacman-settings-summary p{color:#475569;margin:0;font-size:12px}.pacman-settings-actions{color:#64748b;justify-items:end;gap:6px;font-size:12px;display:grid}.pacman-settings-toggle{color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1;padding:6px 10px;font-size:12px}.pacman-config-panel{background:#fff;border:1px solid #d4d4d4;gap:10px;padding:10px;display:grid}.pacman-config-header{gap:10px;display:grid}.pacman-config-header strong{color:#0f172a;margin-bottom:4px;font-size:13px;display:block}.pacman-config-header p{color:#475569;margin:0;font-size:12px}.pacman-pack-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.pacman-pack-tab{text-align:left;background:linear-gradient(#fcfdff 0%,#f8fafc 100%);border:1px solid #dbe4f0;border-top:3px solid #0000;gap:4px;padding:10px;display:grid}.pacman-pack-tab.active{border-color:var(--pacman-pack-accent,#107c41);border-top-color:var(--pacman-pack-accent,#107c41);background:#f8fffb}.pacman-pack-tab span{color:#0f172a;font-size:12px;font-weight:700}.pacman-pack-tab small{color:#64748b;font-size:11px}.pacman-level-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.pacman-level-card{text-align:left;background:#f8fafc;border:1px solid #dbe4f0;gap:4px;min-height:80px;padding:8px;display:grid}.pacman-level-card.active{background:#edf7f0;border-color:#107c41;box-shadow:inset 0 0 0 1px #107c4126}.pacman-level-card.completed{background:#dcfce7;border-color:#22c55e}.pacman-level-card.locked{opacity:.5;cursor:not-allowed}.pacman-level-card p,.pacman-level-card small{margin:0}.pacman-level-card p{color:#334155;font-size:11px}.pacman-level-card small{color:#64748b;font-size:10px}.pacman-level-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.pacman-level-top strong{color:#0f172a;font-size:11px}.pacman-level-top span{color:#107c41;font-size:10px;font-weight:700}.pacman-toolbar{background:#fff;border:1px solid #d4d4d4;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 10px;display:flex}.pacman-session-brief{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px;display:grid}.pacman-session-card{background:#f8fafc;border:1px solid #d0d7de;border-radius:10px;padding:12px 14px}.pacman-session-card strong{color:#0f172a;margin-bottom:6px;display:block}.pacman-session-card p{color:#475569;margin:0;font-size:12px;line-height:1.5}.pacman-toolbar label{color:#334155;align-items:center;gap:6px;font-size:12px;display:inline-flex}.pacman-toolbar select{border:1px solid #cbd5e1;padding:2px 4px;font-size:12px}.pacman-key-hint{color:#64748b;min-width:min(100%,320px);margin-left:auto;font-size:12px}.pacman-progress-summary{color:#475569;flex-wrap:wrap;gap:8px 14px;font-size:12px;display:flex}.pacman-progress-summary span{white-space:nowrap}.pacman-main{flex:1;grid-template-columns:1fr 280px;gap:10px;min-height:0;display:grid}.pacman-board-shell{background:#000;border:1px solid #d4d4d4;padding:8px;position:relative;overflow:auto}.pacman-board-grid{background:#000;gap:0;display:grid}.pacman-board-cell{color:#fff;place-items:center;min-width:12px;min-height:12px;font-size:8px;display:grid;position:relative}.pacman-board-cell.wall{background:#1a1a2e;border:1px solid #2d2d44}.pacman-board-cell.path,.pacman-board-cell.pellet{background:#000}.pacman-board-cell.pellet:after{content:"·";color:#fbbf24;font-size:6px}.pacman-board-cell.energizer{background:#000}.pacman-board-cell.energizer:after{content:"○";color:#fbbf24;font-size:10px}.pacman-board-cell.ghostDoor{background:#fbbf24;height:2px}.pacman-board-cell.tunnel,.pacman-board-cell.fruitSpawn,.pacman-board-cell.pacmanSpawn,.pacman-board-cell.empty{background:#000}.pacman-board-cell.pacman{color:#fbbf24;background:0 0;font-size:12px;font-weight:700}.pacman-board-cell.ghost{background:0 0;font-size:10px;font-weight:700}.pacman-board-cell.ghost.multi{text-shadow:0 0 4px #ffffff73}.pacman-ghost-stack-count{color:#fff;background:#0f172ae6;border-radius:999px;padding:1px 2px;font-size:7px;line-height:1;position:absolute;bottom:-2px;right:0}.pacman-board-cell.ghost.blinky{color:red}.pacman-board-cell.ghost.pinky{color:#ffb8ff}.pacman-board-cell.ghost.inky{color:#0ff}.pacman-board-cell.ghost.clyde{color:#ffb852}.pacman-board-cell.ghost.frightened{color:#2121de}.pacman-board-cell.ghost.frightened-blink{color:#fff}.pacman-board-cell.ghost.eaten{color:#0000}.pacman-board-cell.ghost.eaten:after{content:"👀";color:#fff;font-size:6px}.pacman-board-cell.fruit{background:0 0;font-size:10px}.pacman-board-cell.fruit.cherry{color:red}.pacman-board-cell.fruit.strawberry{color:#ff6b6b}.pacman-board-cell.fruit.orange{color:orange}.pacman-board-cell.fruit.apple{color:#0f0}.pacman-board-cell.fruit.melon{color:#00ff7f}.pacman-board-cell.fruit.galaxian{color:#00f}.pacman-board-cell.fruit.bell{color:gold}.pacman-board-cell.fruit.key{color:#0ff}.pacman-side{flex-direction:column;gap:10px;min-width:0;display:flex}.pacman-hud{background:#fff;border:1px solid #d4d4d4;gap:10px;padding:10px;display:grid}.pacman-hud-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.pacman-hud-item{color:#475569;border:1px dotted #cbd5e1;gap:3px;padding:6px;font-size:11px;display:grid}.pacman-hud-item.wide{grid-column:1/-1}.pacman-hud-item strong{color:#0f172a;font-size:13px}.pacman-lives-row{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.pacman-life-icon{color:#facc15;text-shadow:0 0 6px #facc154d;font-size:15px;line-height:1}.pacman-hud-item.warning strong{color:#dc2626}.pacman-hud-item.success strong{color:#16a34a}.pacman-hud-event{color:#334155;border:1px solid #cbd5e1;padding:8px 10px;font-size:12px}.pacman-hud-note{color:#475569;border-top:1px dashed #e2e8f0;gap:4px;padding-top:6px;font-size:11px;display:grid}.pacman-hud-note strong{color:#0f766e}.pacman-hud-event.success{color:#166534;background:#dcfce7;border-color:#86efac}.pacman-hud-event.warning{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.pacman-hud-event.info{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.pacman-hud-actions{flex-wrap:wrap;gap:8px;display:flex}.pacman-btn{color:#fff;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);border:1px solid #0c5a2f;padding:6px 10px;font-size:12px}.pacman-btn:disabled{opacity:.45}.pacman-btn.ghost{color:#334155;background:#fff;border-color:#64748b}.pacman-pack-tab:focus-visible,.pacman-level-card:focus-visible,.pacman-btn:focus-visible,.pacman-toolbar select:focus-visible,.pacman-settings-toggle:focus-visible{outline-offset:2px;outline:2px solid #107c41}.pacman-legend{color:#334155;background:#fff;border:1px solid #d4d4d4;padding:10px;font-size:12px}.pacman-legend h4{margin:0 0 8px;font-size:13px}.pacman-legend p{margin:0 0 4px}.pacman-legend-additional{color:#475569;border-top:1px dashed #e2e8f0;gap:4px;margin-top:6px;padding-top:6px;font-size:11px;display:grid}.pacman-legend-additional strong{color:#0f766e}.pacman-overlay{background:#0f172a66;place-items:center;display:grid;position:absolute;inset:44px 10px 10px}.pacman-overlay-card{background:#fff;border:1px solid #d4d4d4;gap:10px;width:min(420px,100% - 20px);padding:16px;display:grid}.pacman-overlay-card h3{color:#0f172a;margin:0;font-size:18px}.pacman-overlay-card p{color:#334155;margin:0;font-size:13px}.pacman-overlay-hint{color:#64748b;font-size:12px}.pacman-overlay-stats{background:#f8fafc;border:1px dotted #cbd5e1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;display:grid}.pacman-overlay-stat{color:#475569;gap:3px;font-size:11px;display:grid}.pacman-overlay-stat strong{color:#0f172a;font-size:14px}.pacman-overlay-stat.success strong{color:#16a34a}.pacman-overlay-stat.warning strong{color:#dc2626}.pacman-overlay-analysis{color:#475569;border-top:1px dashed #e2e8f0;gap:6px;padding-top:10px;font-size:12px;display:grid}.pacman-overlay-analysis li{margin:0;padding-left:16px}.pacman-overlay-actions{flex-wrap:wrap;gap:8px;display:flex}.pacman-board-cell.pacman{animation:.3s steps(3,end) infinite pacman-chomp}.pacman-board-cell.pacman.dir-up{transform:rotate(-90deg)}.pacman-board-cell.pacman.dir-down{transform:rotate(90deg)}.pacman-board-cell.pacman.dir-left{transform:rotate(180deg)}.pacman-board-cell.pacman.dir-right{transform:rotate(0)}@keyframes pacman-chomp{0%{clip-path:polygon(100% 50%,100% 0%,50% 0%,0% 50%,50% 100%,100% 100%)}50%{clip-path:polygon(100% 50%,100% 35%,50% 35%,15% 50%,50% 65%,100% 65%)}to{clip-path:polygon(100% 50%,100% 50%,50% 50%,50% 50%,50% 50%,100% 50%)}}.pacman-board-cell.ghost{animation:.4s steps(2,end) infinite ghost-wobble}@keyframes ghost-wobble{0%{transform:scaleX(1)}50%{transform:scaleX(.9)}to{transform:scaleX(1)}}.pacman-board-cell.ghost.frightened-blink{animation:.25s steps(2,end) infinite frightened-blink}@keyframes frightened-blink{0%{color:#2121de}50%{color:#fff}to{color:#2121de}}.pacman-board-cell.pellet.eaten{animation:.15s ease-out forwards pellet-eaten}@keyframes pellet-eaten{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.5)}to{opacity:0;transform:scale(0)}}.pacman-board-cell.energizer{animation:.5s ease-in-out infinite energizer-pulse}@keyframes energizer-pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.3)}to{opacity:1;transform:scale(1)}}.pacman-board-cell.ghost.eaten{animation:.3s ease-out forwards ghost-eaten}@keyframes ghost-eaten{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.5)}to{opacity:0;transform:scale(0)}}.pacman-score-popup{color:#fff;pointer-events:none;z-index:100;font-size:12px;font-weight:700;animation:1s ease-out forwards score-float;position:absolute}.pacman-score-popup.score-200,.pacman-score-popup.score-400,.pacman-score-popup.score-800,.pacman-score-popup.score-1600{color:#fbbf24}@keyframes score-float{0%{opacity:1;transform:translateY(0)scale(1)}50%{opacity:.8;transform:translateY(-10px)scale(1.2)}to{opacity:0;transform:translateY(-20px)scale(.8)}}.pacman-board-cell.fruit.appearing{animation:.5s ease-out forwards fruit-appear}@keyframes fruit-appear{0%{opacity:0;transform:scale(0)}50%{opacity:.8;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.pacman-board-cell.fruit.disappearing{animation:.3s ease-out forwards fruit-disappear}@keyframes fruit-disappear{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}to{opacity:0;transform:scale(0)}}.pacman-board-cell.tunnel-enter{animation:.2s ease-out forwards tunnel-enter}.pacman-board-cell.tunnel-exit{animation:.2s ease-out forwards tunnel-exit}@keyframes tunnel-enter{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.5)translate(-5px)}to{opacity:0;transform:scale(0)}}@keyframes tunnel-exit{0%{opacity:0;transform:scale(0)}50%{opacity:.5;transform:scale(.5)translate(5px)}to{opacity:1;transform:scale(1)}}.pacman-board-cell.pacman.dying{animation:1s ease-out forwards pacman-death}@keyframes pacman-death{0%{opacity:1;transform:scale(1)}20%{opacity:.8;transform:scale(1.2)}40%{opacity:.6;transform:scale(.8)}60%{opacity:.4;clip-path:circle(30%);transform:scale(.5)}80%{opacity:.2;clip-path:circle(10%);transform:scale(.2)}to{opacity:0;clip-path:circle(0%);transform:scale(0)}}.pacman-board-cell.pacman.respawning{animation:1.5s ease-out forwards pacman-respawn}@keyframes pacman-respawn{0%{opacity:0;transform:scale(0)}30%{opacity:.3;transform:scale(.5)}50%{opacity:.5;transform:scale(.8)}70%{opacity:.8;transform:scale(1)}to{opacity:1;transform:scale(1)}}.pacman-frightened-indicator{color:#fff;background:#2121decc;border-radius:4px;align-items:center;gap:8px;padding:4px 8px;font-size:11px;display:flex;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.pacman-blink-warning{color:#fbbf24;animation:.5s ease-in-out infinite warning-pulse}@keyframes warning-pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.pacman-board-shell.victory{animation:.5s ease-out victory-flash}.pacman-board-shell.defeat{animation:.5s ease-out defeat-flash}@keyframes victory-flash{0%{box-shadow:0 0 #22c55e00}50%{box-shadow:0 0 20px 10px #22c55e80}to{box-shadow:0 0 #22c55e00}}@keyframes defeat-flash{0%{box-shadow:0 0 #ef444400}50%{box-shadow:0 0 20px 10px #ef444480}to{box-shadow:0 0 #ef444400}}.pacman-board-cell.ghost.eaten:after{animation:.5s ease-in-out infinite ghost-eyes-move}@keyframes ghost-eyes-move{0%{transform:translate(-1px)}50%{transform:translate(1px)}to{transform:translate(-1px)}}.pacman-guide-sheet{background:#f3f3f3;flex-direction:column;gap:10px;height:100%;padding:10px;display:flex}.pacman-guide-tabs{border-bottom:1px solid #d4d4d4;gap:8px;padding-bottom:8px;display:flex}.pacman-guide-tab{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:4px 4px 0 0;padding:8px 12px;font-size:12px}.pacman-guide-tab.active{color:#107c41;background:#edf7f0;border-color:#107c41 #107c41 #fff;font-weight:600}.pacman-guide-tab:focus-visible{outline-offset:2px;outline:2px solid #107c41}.pacman-guide-content{background:#fff;border:1px solid #d4d4d4;flex:1;padding:12px;overflow:auto}.pacman-guide-ghosts{gap:12px;display:grid}.pacman-ghost-selector{flex-wrap:wrap;gap:8px;display:flex}.pacman-ghost-btn{color:#334155;background:#fff;border:2px solid #d4d4d4;border-radius:4px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;display:flex}.pacman-ghost-btn.active{background:#f8fafc}.pacman-ghost-btn:focus-visible{outline-offset:2px;outline:2px solid}.pacman-ghost-icon{font-size:16px}.pacman-ghost-detail{background:#f8fafc;border:1px solid #e2e8f0;gap:10px;padding:12px;display:grid}.pacman-guide-level-picker{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.pacman-guide-level-picker select{background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:6px 8px;font-size:12px}.pacman-ghost-detail h3{margin:0;font-size:16px}.pacman-ghost-section{gap:4px;display:grid}.pacman-ghost-section h4{color:#0f172a;margin:0;font-size:13px}.pacman-ghost-section p{color:#334155;margin:0;font-size:12px;line-height:1.5}.pacman-ghost-section small{color:#64748b;font-size:11px}.pacman-ghost-stats{border-top:1px dashed #e2e8f0;gap:16px;padding-top:10px;display:flex}.pacman-ghost-summary{background:#fff;border:1px dotted #cbd5e1;padding:10px}.pacman-ghost-summary h4{color:#0f172a;margin:0 0 6px;font-size:13px}.pacman-ghost-summary p{color:#334155;margin:0;font-size:12px;line-height:1.5}.pacman-guide-fruits{gap:12px;display:grid}.pacman-fruit-selector{flex-wrap:wrap;gap:8px;display:flex}.pacman-fruit-btn{color:#334155;background:#fff;border:1px solid #d4d4d4;border-radius:4px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;display:flex}.pacman-fruit-btn.active{background:#fef3c7;border-color:#fbbf24}.pacman-fruit-btn:focus-visible{outline-offset:2px;outline:2px solid #fbbf24}.pacman-fruit-icon{font-size:16px}.pacman-fruit-score{color:#fbbf24;font-weight:600}.pacman-fruit-detail{background:#f8fafc;border:1px solid #e2e8f0;padding:12px}.pacman-fruit-detail h3{color:#fbbf24;margin:0 0 6px;font-size:16px}.pacman-fruit-detail p{color:#334155;margin:0;font-size:12px}.pacman-fruit-trigger-table{border:1px solid #d4d4d4;padding:10px}.pacman-fruit-trigger-table h4{color:#0f172a;margin:0 0 8px;font-size:13px}.pacman-fruit-table{border-collapse:collapse;width:100%;font-size:11px}.pacman-fruit-table th,.pacman-fruit-table td{text-align:center;border:1px solid #e2e8f0;padding:6px 8px}.pacman-fruit-table th{color:#0f172a;background:#f8fafc;font-weight:600}.pacman-fruit-table td{color:#334155}.pacman-fruit-stats{gap:16px;display:flex}.pacman-guide-maze{gap:12px;display:grid}.pacman-maze-tags{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pacman-maze-tag-card{background:#f8fafc;border:1px solid #e2e8f0;padding:10px}.pacman-maze-tag-card h4{color:#0f172a;margin:0 0 6px;font-size:13px}.pacman-maze-tag-card p{color:#334155;margin:0 0 6px;font-size:12px;line-height:1.4}.pacman-maze-tip{color:#0f766e;font-size:11px;font-weight:500;display:block}.pacman-maze-stats{border:1px solid #d4d4d4;padding:10px}.pacman-maze-stats h4{color:#0f172a;margin:0 0 8px;font-size:13px}.pacman-maze-stat-grid{flex-wrap:wrap;gap:16px;display:flex}.pacman-route-recommend{background:#fff;border:1px dotted #cbd5e1;padding:10px}.pacman-route-recommend h4{color:#0f172a;margin:0 0 8px;font-size:13px}.pacman-route-recommend ul{color:#334155;margin:0;padding-left:16px;font-size:12px}.pacman-route-recommend li{margin-bottom:4px;line-height:1.4}.pacman-guide-input{gap:12px;display:grid}.pacman-input-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pacman-input-card{background:#f8fafc;border:1px solid #e2e8f0;padding:10px}.pacman-input-card h4{color:#0f172a;margin:0 0 6px;font-size:13px}.pacman-input-card p{color:#334155;margin:0 0 6px;font-size:12px;line-height:1.4}.pacman-input-example{color:#64748b;background:#fff;border:1px dotted #cbd5e1;padding:6px;font-size:11px}.pacman-input-keys{border:1px solid #d4d4d4;padding:10px}.pacman-input-keys h4{color:#0f172a;margin:0 0 8px;font-size:13px}.pacman-key-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.pacman-key-item{color:#334155;align-items:center;gap:4px;font-size:11px;display:flex}.pacman-key-item kbd{background:#f8fafc;border:1px solid #cbd5e1;padding:2px 6px;font-family:monospace;font-size:10px}.pacman-score-table{border:1px solid #d4d4d4;padding:10px}.pacman-score-table h4{color:#0f172a;margin:0 0 8px;font-size:13px}.pacman-score-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.pacman-score-item{gap:2px;font-size:11px;display:grid}.pacman-score-label{color:#64748b}.pacman-score-value{color:#fbbf24;font-weight:600}.pacman-guide-practice{gap:12px;display:grid}.pacman-practice-modules{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pacman-practice-card{background:#f8fafc;border:1px solid #e2e8f0;padding:10px}.pacman-practice-card h4{color:#0f172a;margin:0 0 4px;font-size:13px}.pacman-practice-difficulty{color:#64748b;background:#fff;border-radius:4px;margin-bottom:6px;padding:2px 6px;font-size:11px;display:inline-block}.pacman-practice-card p{color:#334155;margin:0 0 8px;font-size:12px}.pacman-practice-meta{color:#475569;margin:0 0 6px;font-size:11px;line-height:1.4}.pacman-practice-return{color:#0f766e}.pacman-practice-records{color:#64748b;flex-wrap:wrap;gap:10px;margin:0 0 10px;font-size:11px;display:flex}.pacman-practice-btn{color:#64748b;background:#fff;border:1px solid #cbd5e1;padding:6px 10px;font-size:11px}.pacman-practice-btn:disabled{opacity:.5;cursor:not-allowed}.pacman-practice-progress{border:1px solid #d4d4d4;padding:10px}.pacman-guide-launch-note{color:#1d4ed8;background:#eff6ff;border-radius:8px;padding:10px 12px;font-size:12px}.pacman-practice-progress h4{color:#0f172a;margin:0 0 8px;font-size:13px}.pacman-practice-stats{flex-wrap:wrap;gap:16px;display:flex}.pacman-practice-pack-select{border:1px solid #d4d4d4;padding:10px}.pacman-practice-pack-select h4{color:#0f172a;margin:0 0 8px;font-size:13px}.pacman-play-btn{color:#fff;background:linear-gradient(135deg,#107c41 0%,#0c5a2f 100%);border:1px solid #0c5a2f;border-radius:4px;padding:10px 20px;font-size:14px;font-weight:600}.pacman-play-btn:focus-visible{outline-offset:2px;outline:2px solid #107c41}.pacman-stat-item{gap:2px;display:grid}.pacman-stat-label{color:#64748b;font-size:11px}.pacman-stat-value{color:#0f172a;font-size:14px;font-weight:600}@media (width<=1100px){.pacman-pack-tabs,.pacman-level-grid{grid-template-columns:1fr}.pacman-settings-summary{flex-direction:column;align-items:flex-start}.pacman-settings-actions{justify-items:start}.pacman-main{grid-template-columns:1fr}.pacman-key-hint{min-width:0;margin-left:0}.pacman-maze-tags,.pacman-input-items,.pacman-practice-modules,.pacman-key-grid,.pacman-score-grid{grid-template-columns:1fr}}.pacman-main{grid-template-columns:minmax(0,1fr) 240px;gap:12px}.pacman-board-shell{background:linear-gradient(0deg,#bec8d72e 1px,#0000 1px),linear-gradient(90deg,#bec8d72e 1px,#0000 1px),#f8fafc;background-size:var(--pacman-cell-size,24px) var(--pacman-cell-size,24px);justify-content:center;align-items:center;padding:16px;display:flex;overflow:auto}.pacman-board-grid{background:#050816;flex:none;box-shadow:0 0 0 1px #0f172a29,0 22px 48px #0f172a2e}.pacman-board-cell{width:var(--pacman-cell-size,24px);height:var(--pacman-cell-size,24px);min-width:var(--pacman-cell-size,24px);min-height:var(--pacman-cell-size,24px);font-size:calc(var(--pacman-cell-size,24px) * .62);border-bottom:1px solid #94a3b814;border-right:1px solid #94a3b814;line-height:1}.pacman-board-cell.wall{background:linear-gradient(135deg,#3853c4f0,#1a308afa);border-bottom-color:#bfdbfe1f;border-right-color:#bfdbfe1f;box-shadow:inset 0 0 0 1px #93c5fd3d,inset 0 0 18px #0f172a4d}.pacman-board-cell.path,.pacman-board-cell.pellet,.pacman-board-cell.energizer,.pacman-board-cell.ghostHouse,.pacman-board-cell.tunnel,.pacman-board-cell.fruitSpawn,.pacman-board-cell.pacmanSpawn,.pacman-board-cell.empty{background:#020617f5}.pacman-board-cell.ghostHouse{background:#080f26f5}.pacman-board-cell.pellet:after{content:"";width:calc(var(--pacman-cell-size,24px) * .16);height:calc(var(--pacman-cell-size,24px) * .16);background:#fef08a;border-radius:999px;box-shadow:0 0 8px #fef08a66}.pacman-board-cell.energizer:after{content:"";width:calc(var(--pacman-cell-size,24px) * .4);height:calc(var(--pacman-cell-size,24px) * .4);background:#fde68a;border-radius:999px;box-shadow:0 0 12px #fde68ab8}.pacman-board-cell.pacman{color:inherit;animation:none;overflow:visible}.pacman-board-cell.pacman.dir-up,.pacman-board-cell.pacman.dir-down,.pacman-board-cell.pacman.dir-left,.pacman-board-cell.pacman.dir-right{transform:none}.pacman-board-cell.pacman>span:not(.pacman-sprite){display:none}.pacman-sprite{width:calc(var(--pacman-cell-size,24px) * .84);height:calc(var(--pacman-cell-size,24px) * .84);background:radial-gradient(circle at 35% 35%,#fef08a 0%,#facc15 56%,#eab308 100%);border-radius:999px;position:relative;box-shadow:inset -2px -2px #92400e38,0 0 14px #facc1547}.pacman-sprite:after{content:"";clip-path:polygon(100% 50%,46% 10%,46% 90%);transform-origin:0;background:#050816;animation:.18s ease-in-out infinite alternate pacman-mouth;position:absolute;inset:-1px}.pacman-board-cell.pacman.dir-up .pacman-sprite{transform:rotate(-90deg)}.pacman-board-cell.pacman.dir-down .pacman-sprite{transform:rotate(90deg)}.pacman-board-cell.pacman.dir-left .pacman-sprite{transform:rotate(180deg)}.pacman-board-cell.pacman.dir-right .pacman-sprite{transform:rotate(0)}.pacman-board-cell.ghost{font-size:calc(var(--pacman-cell-size,24px) * .72);text-shadow:0 0 8px #0f172a59}.pacman-board-cell.ghost.eaten{opacity:1;color:#0000;text-shadow:none;animation:none;transform:none}.pacman-board-cell.ghost.eaten:after{content:"◉ ◉";font-size:calc(var(--pacman-cell-size,24px) * .26);letter-spacing:.08em;color:#fff}.pacman-board-cell.fruit{font-size:calc(var(--pacman-cell-size,24px) * .64)}.pacman-board-cell.pacman.dying,.pacman-board-cell.pacman.respawning{animation:none}.pacman-board-cell.pacman.dying .pacman-sprite{animation:1s ease-out forwards pacman-death}.pacman-board-cell.pacman.respawning .pacman-sprite{animation:1.5s ease-out forwards pacman-respawn}@keyframes pacman-mouth{0%{clip-path:polygon(100% 50%,46% 10%,46% 90%)}to{clip-path:polygon(100% 50%,58% 32%,58% 68%)}}@media (width<=1100px){.pacman-main{grid-template-columns:1fr}.pacman-board-shell{padding:10px}}.zuma-sheet{background:#0d0d1a;flex-direction:column;gap:8px;min-height:100%;padding:8px;display:flex}.zuma-hud{background:#1a1a2e;border-radius:4px;flex-wrap:wrap;gap:8px;padding:8px;display:flex}.zuma-hud-bar{background:#16213e;border-radius:3px;flex-direction:column;gap:4px;min-width:180px;padding:6px 10px;display:flex}.zuma-hud-bar--overview{flex:1;min-width:200px}.zuma-hud-bar--metrics{flex:2;min-width:300px}.zuma-hud-bar--objectives{flex:1.4;min-width:240px}.zuma-hud-bar--balls{min-width:120px}.zuma-hud-bar--controls{min-width:150px}.zuma-hud-identity{flex-direction:column;gap:2px;display:flex}.zuma-hud-label{color:#888;font-size:11px}.zuma-hud-title{color:#fff;font-size:14px}.zuma-hud-chips{flex-wrap:wrap;gap:4px;display:flex}.zuma-hud-chip{color:#ccc;background:#2a2a4e;border-radius:2px;padding:2px 6px;font-size:11px}.zuma-hud-chip--danger.danger-safe{color:#fff;background:#27ae60}.zuma-hud-chip--danger.danger-warning{color:#fff;background:#f39c12}.zuma-hud-chip--danger.danger-critical{color:#fff;background:#e74c3c}.zuma-hud-chip--status.status-playing{color:#fff;background:#3498db}.zuma-hud-chip--status.status-won{color:#fff;background:#27ae60}.zuma-hud-chip--status.status-lost{color:#fff;background:#e74c3c}.zuma-hud-metrics{flex-wrap:wrap;gap:8px;display:flex}.zuma-hud-metric{background:#1a1a3e;border-radius:2px;flex-direction:column;gap:2px;min-width:60px;padding:4px 8px;display:flex}.zuma-hud-metric strong{color:#888;font-size:10px}.zuma-hud-metric span{color:#fff;font-size:13px}.zuma-hud-objectives{flex-direction:column;gap:6px;display:flex}.zuma-hud-objective{color:#d7e3ff;background:#1a1a3e;border:1px solid #2f3b63;border-radius:3px;padding:6px 8px;font-size:11px}.zuma-hud-objective.is-complete{color:#d6ffe4;border-color:#27ae60}.zuma-hud-objective.is-failed{color:#ffd5d0;border-color:#e74c3c}.zuma-hud-balls-preview{flex-direction:column;align-items:center;gap:4px;display:flex}.zuma-ball-preview{border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.zuma-ball--red{background:#e74c3c}.zuma-ball--blue{background:#3498db}.zuma-ball--green{background:#27ae60}.zuma-ball--yellow{background:#f1c40f}.zuma-ball--purple{background:#9b59b6}.zuma-ball--orange{background:#e67e22}.zuma-ball--powerup{background:linear-gradient(135deg,#ff6b6b,#ffd93d)}.zuma-ball--unknown{background:#888}.zuma-ball-powerup-label{color:#fff;font-size:8px;font-weight:700}.zuma-hud-controls{flex-wrap:wrap;gap:4px;display:flex}.zuma-hud-btn{color:#fff;cursor:pointer;background:#2a2a4e;border:1px solid #3a3a5e;border-radius:3px;padding:6px 12px;font-size:12px;transition:background .2s}.zuma-hud-btn:hover{background:#3a3a6e}.zuma-hud-btn:focus-visible{outline-offset:2px;outline:2px solid #3498db}.zuma-speed-btn--fast{background:#f39c12;border-color:#f39c12}.zuma-danger-alert{color:#fff;background:#e74c3c;border-radius:3px;padding:8px 12px;font-size:14px;font-weight:700;animation:1s infinite zuma-danger-pulse}@keyframes zuma-danger-pulse{0%,to{opacity:1}50%{opacity:.7}}.zuma-board-container{background:#1a1a2e;border-radius:4px;justify-content:center;padding:8px;display:flex}.zuma-board-canvas{cursor:crosshair;border-radius:4px;max-width:100%;height:auto}.zuma-setup-panel{background:#1a1a2e;border-radius:4px;flex-direction:column;gap:8px;padding:8px;display:flex}.zuma-setup-panel.is-collapsed .zuma-setup-content{display:none}.zuma-setup-toolbar{background:#16213e;border-radius:3px;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.zuma-setup-toolbar-copy{flex-direction:column;gap:2px;display:flex}.zuma-setup-toolbar-copy strong{color:#fff;font-size:14px}.zuma-setup-toolbar-copy span{color:#888;font-size:11px}.zuma-setup-toolbar-actions{gap:6px;display:flex}.zuma-setup-toggle{color:#fff;cursor:pointer;background:#2a2a4e;border:1px solid #3a3a5e;border-radius:3px;padding:6px 12px;font-size:12px}.zuma-start-btn{color:#fff;cursor:pointer;background:#27ae60;border:1px solid #27ae60;border-radius:3px;padding:8px 16px;font-size:14px;font-weight:700}.zuma-start-btn:hover{background:#2ecc71}.zuma-start-btn:disabled{cursor:not-allowed;background:#555;border-color:#555}.zuma-setup-content{flex-direction:column;gap:8px;display:flex}.zuma-mode-tabs,.zuma-pack-tabs,.zuma-duration-tabs{flex-wrap:wrap;gap:4px;display:flex}.zuma-mode-tab,.zuma-pack-tab,.zuma-duration-tab{color:#ccc;cursor:pointer;background:#2a2a4e;border:1px solid #3a3a5e;border-radius:3px;padding:6px 12px;font-size:12px}.zuma-mode-tab.active,.zuma-pack-tab.active,.zuma-duration-tab.active{color:#fff;background:#3498db;border-color:#3498db}.zuma-level-grid{background:#16213e;border-radius:3px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;padding:8px;display:grid}.zuma-level-card{color:#ccc;cursor:pointer;text-align:left;background:#2a2a4e;border:1px solid #3a3a5e;border-radius:3px;flex-direction:column;gap:4px;padding:8px;display:flex}.zuma-level-card:hover{background:#3a3a6e}.zuma-level-card.active{color:#fff;background:#3498db;border-color:#3498db}.zuma-level-card.locked{color:#666;cursor:not-allowed;background:#1a1a3e;border-color:#2a2a4e}.zuma-level-card strong{color:inherit;font-size:13px}.zuma-level-card span{color:inherit;font-size:11px}.zuma-level-card small{color:inherit;opacity:.8;font-size:10px}.zuma-lock-hint{color:#e74c3c;opacity:1}.zuma-level-detail{background:#16213e;border-radius:3px;flex-direction:column;gap:4px;padding:8px;display:flex}.zuma-level-detail strong{color:#fff;font-size:13px}.zuma-level-detail span{color:#888;font-size:11px}.zuma-game-controls{justify-content:center;gap:8px;padding:8px;display:flex}.zuma-control-btn{color:#fff;cursor:pointer;background:#2a2a4e;border:1px solid #3a3a5e;border-radius:3px;padding:8px 16px;font-size:12px}.zuma-control-btn:hover{background:#3a3a6e}.zuma-control-btn:disabled{cursor:not-allowed;background:#555;border-color:#555}.zuma-result-overlay{z-index:100;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.zuma-result-panel{background:#1a1a2e;border-radius:8px;flex-direction:column;gap:12px;width:90%;max-width:400px;padding:16px;display:flex}.zuma-result-panel--won{border:2px solid #27ae60}.zuma-result-panel--lost{border:2px solid #e74c3c}.zuma-result-copy{flex-direction:column;gap:8px;display:flex}.zuma-result-title{color:#fff;font-size:18px}.zuma-result-subtitle{color:#888;font-size:13px}.zuma-result-stars{background:#16213e;border-radius:3px;align-items:center;gap:8px;padding:8px;display:flex}.zuma-result-stars-label{color:#888;font-size:12px}.zuma-result-stars-display{font-size:16px}.zuma-result-new-record{color:#f1c40f;font-size:12px;font-weight:700}.zuma-result-stats{flex-wrap:wrap;gap:8px;display:flex}.zuma-result-stat{background:#2a2a4e;border-radius:3px;flex-direction:column;gap:2px;min-width:80px;padding:6px 10px;display:flex}.zuma-result-stat strong{color:#888;font-size:10px}.zuma-result-stat span{color:#fff;font-size:14px}.zuma-result-summary{background:#16213e;border-radius:3px;flex-direction:column;gap:4px;padding:8px;display:flex}.zuma-result-summary span{color:#888;font-size:11px}.zuma-result-objectives{background:#16213e;border-radius:3px;flex-direction:column;gap:6px;padding:8px;display:flex}.zuma-result-objectives strong{color:#9fb7ff;font-size:12px}.zuma-result-objective{color:#d7e3ff;background:#202b4a;border:1px solid #2f3b63;border-radius:3px;padding:6px 8px;font-size:11px}.zuma-result-objective.is-complete{color:#d6ffe4;border-color:#27ae60}.zuma-result-objective.is-failed{color:#ffd5d0;border-color:#e74c3c}.zuma-result-failure-details{background:#2a2a4e;border-radius:3px;flex-direction:column;gap:6px;padding:8px;display:flex}.zuma-result-failure-reason{color:#e74c3c;font-size:13px}.zuma-result-failure-stats{color:#888;font-size:11px}.zuma-result-practice-recommendations{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.zuma-result-practice-recommendations strong{color:#888;font-size:11px}.zuma-result-practice-tag{color:#fff;background:#3498db;border-radius:2px;padding:2px 6px;font-size:10px}.zuma-result-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.zuma-result-btn{cursor:pointer;border-radius:4px;padding:10px 20px;font-size:14px}.zuma-result-btn--primary{color:#fff;background:#27ae60;border:1px solid #27ae60}.zuma-result-btn--secondary{color:#fff;background:#3498db;border:1px solid #3498db}.zuma-result-btn--tertiary{color:#ccc;background:#2a2a4e;border:1px solid #3a3a5e}.zuma-result-btn:hover{opacity:.9}.zuma-result-btn:focus-visible{outline-offset:2px;outline:2px solid #fff}.zuma-ball--burst{background:linear-gradient(135deg,#ff6b6b,#ff4757);animation:1s infinite zuma-powerup-pulse}.zuma-ball--lightning{background:linear-gradient(135deg,#ffd93d,#ffbe0b);animation:.8s infinite zuma-powerup-pulse}.zuma-ball--slow{background:linear-gradient(135deg,#6bcb77,#4ade80);animation:1.2s infinite zuma-powerup-pulse}.zuma-ball--rewind{background:linear-gradient(135deg,#4d96ff,#3b82f6);animation:1s infinite zuma-powerup-pulse}.zuma-ball--wild{background:linear-gradient(135deg,#c9b1ff,#a78bfa);animation:.6s infinite zuma-powerup-pulse}@keyframes zuma-powerup-pulse{0%,to{transform:scale(1);box-shadow:0 0 #fff6}50%{transform:scale(1.05);box-shadow:0 0 8px 4px #fff3}}.zuma-chain-rewinding{animation:.3s ease-out zuma-chain-rewind}@keyframes zuma-chain-rewind{0%{transform:translate(0)}to{transform:translate(-10px)}}.zuma-chain-slowed{opacity:.7;filter:brightness(.8)}.zuma-chain-slowed:after{content:"";border-radius:inherit;background:#6bcb774d;animation:1s infinite zuma-slow-overlay;position:absolute;inset:0}@keyframes zuma-slow-overlay{0%,to{opacity:.3}50%{opacity:.5}}.zuma-finish-line-critical{animation:.5s infinite zuma-finish-critical}@keyframes zuma-finish-critical{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.zuma-finish-line-warning{animation:1s infinite zuma-finish-warning}@keyframes zuma-finish-warning{0%,to{opacity:.8}50%{opacity:1}}.zuma-score-popup{color:gold;pointer-events:none;z-index:10;font-size:14px;font-weight:700;animation:.8s ease-out forwards zuma-score-float;position:absolute}@keyframes zuma-score-float{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-30px)scale(1.2)}}.zuma-chain-combo-indicator{color:#fff;pointer-events:none;z-index:15;background:linear-gradient(135deg,#f39c12,#e74c3c);border-radius:4px;padding:4px 8px;font-size:12px;font-weight:700;animation:.4s ease-out forwards zuma-combo-pop;position:absolute}@keyframes zuma-combo-pop{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.2)}to{opacity:0;transform:scale(1)translateY(-20px)}}.zuma-clear-effect{pointer-events:none;z-index:5;background:radial-gradient(circle,#ffc86499 0%,#0000 70%);border-radius:50%;animation:.3s ease-out forwards zuma-clear-expand;position:absolute}@keyframes zuma-clear-expand{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(2)}}.zuma-insert-effect{pointer-events:none;z-index:5;border:2px solid #fffc;border-radius:50%;animation:.2s ease-out forwards zuma-insert-ring;position:absolute}@keyframes zuma-insert-ring{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.zuma-powerup-effect{pointer-events:none;z-index:20;border-radius:50%;animation:.5s ease-out forwards zuma-powerup-burst;position:absolute}.zuma-powerup-effect--burst{background:radial-gradient(circle,#ff6b6bcc 0%,#0000 60%)}.zuma-powerup-effect--lightning{background:radial-gradient(circle,#ffd93dcc 0%,#0000 60%)}.zuma-powerup-effect--slow{background:radial-gradient(circle,#6bcb77cc 0%,#0000 60%)}.zuma-powerup-effect--rewind{background:radial-gradient(circle,#4d96ffcc 0%,#0000 60%)}.zuma-powerup-effect--wild{background:radial-gradient(circle,#c9b1ffcc 0%,#0000 60%)}@keyframes zuma-powerup-burst{0%{opacity:1;transform:scale(.5)}50%{opacity:.8;transform:scale(2)}to{opacity:0;transform:scale(3)}}.zuma-danger-overlay{pointer-events:none;z-index:50;position:fixed;inset:0}.zuma-danger-overlay--critical{background:radial-gradient(#e74c3c1a 0%,#0000 70%);animation:.5s infinite zuma-danger-screen}.zuma-danger-overlay--warning{background:radial-gradient(#f39c120d 0%,#0000 70%);animation:1s infinite zuma-danger-screen}@keyframes zuma-danger-screen{0%,to{opacity:.5}50%{opacity:1}}.zuma-collection-sheet{background:#0d0d1a;flex-direction:column;gap:8px;min-height:100%;padding:8px;display:flex}.zuma-collection-tabs{background:#1a1a2e;border-radius:4px;flex-wrap:wrap;gap:4px;padding:8px;display:flex}.zuma-collection-tab{color:#ccc;cursor:pointer;background:#2a2a4e;border:1px solid #3a3a5e;border-radius:3px;padding:8px 16px;font-size:13px}.zuma-collection-tab.active{color:#fff;background:#3498db;border-color:#3498db}.zuma-collection-content{flex:1;overflow-y:auto}.zuma-collection-section{background:#1a1a2e;border-radius:4px;flex-direction:column;gap:12px;padding:12px;display:flex}.zuma-collection-section h3{color:#fff;margin:0;font-size:16px}.zuma-collection-intro{color:#888;font-size:13px;line-height:1.5}.zuma-ball-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.zuma-ball-card{background:#16213e;border-radius:4px;align-items:center;gap:12px;padding:12px;display:flex}.zuma-ball-card .zuma-ball-preview{width:32px;height:32px}.zuma-ball-info{flex-direction:column;gap:4px;display:flex}.zuma-ball-info strong{color:#fff;font-size:14px}.zuma-ball-info span{color:#888;font-size:12px}.zuma-tip{color:#3498db;opacity:.9;font-size:11px}.zuma-rule-box{background:#16213e;border:1px solid #2a2a4e;border-radius:4px;flex-direction:column;gap:8px;padding:12px;display:flex}.zuma-rule-box h4{color:#fff;margin:0;font-size:13px}.zuma-rule-box ul{margin:0;padding-left:16px;list-style:outside}.zuma-rule-box li{color:#888;font-size:12px;line-height:1.5}.zuma-powerup-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;display:grid}.zuma-powerup-card{background:#16213e;border-radius:4px;gap:12px;padding:12px;display:flex}.zuma-powerup-icon{background:#2a2a4e;border-radius:4px;justify-content:center;align-items:center;width:40px;height:40px;font-size:24px;display:flex}.zuma-powerup-info{flex-direction:column;flex:1;gap:6px;display:flex}.zuma-powerup-info strong{color:#fff;font-size:14px}.zuma-powerup-effect-label{color:#888;font-size:12px}.zuma-powerup-strategy{background:#2a2a4e;border-radius:3px;flex-direction:column;gap:4px;padding:8px;display:flex}.zuma-powerup-strategy small{color:#666;font-size:10px}.zuma-powerup-strategy p{color:#3498db;margin:0;font-size:11px}.zuma-track-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.zuma-track-card{background:#16213e;border-radius:4px;flex-direction:column;gap:8px;padding:12px;display:flex}.zuma-track-header{justify-content:space-between;align-items:center;display:flex}.zuma-track-header strong{color:#fff;font-size:14px}.zuma-intensity-badge{border-radius:2px;padding:2px 6px;font-size:10px;font-weight:700}.intensity-S1{color:#fff;background:#27ae60}.intensity-S2{color:#fff;background:#f39c12}.intensity-S3{color:#fff;background:#e67e22}.intensity-S4{color:#fff;background:#e74c3c}.intensity-S5{color:#fff;background:#c0392b}.zuma-track-details{flex-direction:column;gap:4px;display:flex}.zuma-track-details span{color:#888;font-size:12px}.zuma-track-length{color:#666}.zuma-boss-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.zuma-boss-card{background:#16213e;border-radius:4px;gap:12px;padding:12px;display:flex}.zuma-boss-phase{color:#f39c12;white-space:nowrap;font-size:12px;font-weight:700}.zuma-boss-info{flex-direction:column;gap:4px;display:flex}.zuma-boss-info strong{color:#fff;font-size:13px}.zuma-boss-info span{color:#888;font-size:11px}.zuma-practice-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;display:grid}.zuma-practice-card{background:#16213e;border-radius:4px;flex-direction:column;gap:8px;padding:12px;display:flex}.zuma-practice-header{justify-content:space-between;align-items:center;display:flex}.zuma-practice-header strong{color:#fff;font-size:14px}.zuma-practice-details{flex-direction:column;gap:4px;display:flex}.zuma-practice-details span{color:#888;font-size:12px}.zuma-practice-stats{background:#2a2a4e;border-radius:3px;gap:8px;padding:6px;display:flex}.zuma-practice-stats small{color:#666;font-size:11px}.zuma-practice-start-btn{color:#fff;cursor:pointer;background:#27ae60;border:1px solid #27ae60;border-radius:3px;padding:8px 16px;font-size:13px}.zuma-practice-start-btn:hover{background:#2ecc71}.zuma-progress-summary{background:#16213e;border-radius:4px;flex-direction:column;gap:8px;padding:12px;display:flex}.zuma-progress-summary h4{color:#fff;margin:0;font-size:13px}.zuma-progress-stats{flex-wrap:wrap;gap:12px;display:flex}.zuma-progress-stats span{color:#888;font-size:12px}.zuma-practice-sheet{background:#0d0d1a;flex-direction:column;gap:8px;min-height:100%;padding:8px;display:flex}.zuma-practice-intro{background:#1a1a2e;border-radius:4px;flex-direction:column;gap:12px;max-width:500px;margin:auto;padding:16px;display:flex}.zuma-practice-intro-header{justify-content:space-between;align-items:center;display:flex}.zuma-practice-intro-header h2{color:#fff;margin:0;font-size:18px}.zuma-practice-duration{color:#888;font-size:12px}.zuma-practice-description{color:#888;font-size:14px;line-height:1.5}.zuma-practice-objective{background:#16213e;border-radius:4px;flex-direction:column;gap:4px;padding:12px;display:flex}.zuma-practice-objective strong{color:#f39c12;font-size:12px}.zuma-practice-objective span{color:#fff;font-size:13px}.zuma-practice-config{background:#2a2a4e;border-radius:3px;flex-wrap:wrap;gap:8px;padding:8px;display:flex}.zuma-practice-config span{color:#888;font-size:11px}.zuma-practice-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.zuma-practice-exit-btn{color:#ccc;cursor:pointer;background:#2a2a4e;border:1px solid #3a3a5e;border-radius:3px;padding:8px 16px;font-size:13px}.zuma-practice-controls{justify-content:center;gap:8px;padding:8px;display:flex}.zuma-practice-timer{text-align:center;color:#f39c12;background:#16213e;border-radius:3px;padding:8px;font-size:14px}.zuma-practice-result{background:#1a1a2e;border-radius:4px;flex-direction:column;gap:16px;max-width:500px;margin:auto;padding:16px;display:flex}.zuma-practice-result-header{justify-content:space-between;align-items:center;display:flex}.zuma-practice-result-header h2{color:#fff;margin:0;font-size:18px}.zuma-result-badge{border-radius:3px;padding:4px 12px;font-size:12px;font-weight:700}.zuma-result-badge.completed{color:#fff;background:#27ae60}.zuma-result-badge.partial{color:#fff;background:#f39c12}.zuma-practice-score{background:#16213e;border-radius:4px;flex-direction:column;align-items:center;gap:4px;padding:16px;display:flex}.zuma-practice-score strong{color:#888;font-size:12px}.zuma-score-value{color:#fff;font-size:32px;font-weight:700}.zuma-practice-objectives{flex-direction:column;gap:8px;display:flex}.zuma-practice-objectives h3{color:#fff;margin:0;font-size:14px}.zuma-objective-item{background:#2a2a4e;border-radius:3px;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.zuma-objective-item.achieved{background:#27ae60}.zuma-objective-item.missed{background:#e74c3c}.zuma-objective-name,.zuma-objective-value{color:#fff;font-size:12px}.zuma-objective-status{color:#fff;font-size:14px}.zuma-practice-stats{flex-direction:column;gap:8px;display:flex}.zuma-practice-stats h3{color:#fff;margin:0;font-size:14px}.zuma-stats-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;display:grid}.zuma-stat-item{text-align:center;background:#2a2a4e;border-radius:3px;flex-direction:column;gap:4px;padding:8px;display:flex}.zuma-stat-item span{color:#888;font-size:11px}.zuma-stat-item strong{color:#fff;font-size:14px}.zuma-practice-retry-btn{color:#fff;cursor:pointer;background:#27ae60;border:1px solid #27ae60;border-radius:3px;padding:10px 20px;font-size:14px}.zuma-practice-error{text-align:center;background:#1a1a2e;border-radius:4px;flex-direction:column;gap:12px;max-width:400px;margin:auto;padding:16px;display:flex}.zuma-practice-error h3{color:#e74c3c;margin:0;font-size:16px}.zuma-practice-error p{color:#888;font-size:13px}.zuma-practice-error button{color:#ccc;cursor:pointer;background:#2a2a4e;border:1px solid #3a3a5e;border-radius:3px;padding:8px 16px;font-size:13px}.match3-sheet{--match3-font-body:"Microsoft YaHei UI", "PingFang SC", "Segoe UI", sans-serif;--match3-font-display:"Bahnschrift SemiCondensed", "Arial Narrow", var(--match3-font-body);--match3-text-strong:#1a1a2e;--match3-text-muted:#4a4a6a;--match3-border-soft:#1a1a2e1f;height:100%;font-family:var(--match3-font-body);color:var(--match3-text-strong);background:#f8f8fc;flex-direction:column;gap:10px;padding:10px;display:flex;position:relative}.match3-hud{grid-template-columns:minmax(0,1.9fr) auto;grid-template-areas:"overview controls""metrics metrics";align-items:stretch;gap:6px 8px;display:grid}.match3-hud-bar{background:linear-gradient(#fffffffa 0%,#f6f8fcfa 100%);border:1px solid #d4d4d4;border-radius:10px;gap:10px;min-width:0;padding:9px 11px;display:grid;box-shadow:0 6px 18px #0f172a0a,inset 0 1px #fffc}.match3-hud-bar--overview{grid-area:overview}.match3-hud-bar--controls{grid-area:controls;align-content:start}.match3-hud-bar--metrics{grid-area:metrics}.match3-hud-overview-main{justify-content:space-between;align-items:center;gap:10px;display:flex}.match3-hud-primary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.match3-hud-label{letter-spacing:.08em;color:#6f7f8f;font-size:.65rem}.match3-hud-identity,.match3-hud-controls-head{align-items:baseline;gap:8px;min-width:0;display:flex}.match3-hud-title{color:#1a1a2e;white-space:nowrap;font-size:.95rem;line-height:1.1}.match3-hud-chips,.match3-hud-controls{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.match3-hud-summary,.match3-hud-metrics{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.match3-hud-summary{flex:1}.match3-hud-hero-card{background:linear-gradient(#fffffff5 0%,#f8fafce6 100%);border:1px solid #e2e8f0;border-radius:12px;gap:3px;padding:10px 12px;display:grid}.match3-hud-hero-card--goal{background:linear-gradient(#eef2fff5 0%,#fffffff0 100%);border-color:#6366f138}.match3-hud-hero-card--resource{background:linear-gradient(#ecfdf5f5 0%,#fffffff0 100%);border-color:#10b98138}.match3-hud-hero-card--resource.is-critical{background:linear-gradient(#fef2f2fa 0%,#fffffff0 100%);border-color:#ef444459;box-shadow:inset 0 0 0 1px #f871711f}.match3-hud-hero-card--score{background:linear-gradient(#fffbebf5 0%,#fffffff0 100%);border-color:#f59e0b38}.match3-hud-hero-label{color:#64748b;letter-spacing:.05em;font-size:11px;font-weight:700}.match3-hud-hero-value{color:#0f172a;font-size:1.55rem;line-height:1}.match3-hud-hero-caption{color:#475569;font-size:11px}.match3-hud-chip{color:#334155;background:#ffffffe0;border:1px solid #d9e2dc;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex}.match3-hud-chip--status.status-playing{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.match3-hud-chip--status.status-won{color:#92400e;background:#fffbeb;border-color:#fde68a}.match3-hud-chip--status.status-lost{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.match3-hud-summary-item,.match3-hud-metric{color:#475569;background:#ffffffb8;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:6px;min-width:0;min-height:26px;padding:0 9px;font-size:11px;display:inline-flex}.match3-hud-summary-item strong,.match3-hud-metric strong{color:#1f2937;white-space:nowrap;font-size:11px}.match3-hud-metric{font-variant-numeric:tabular-nums}.match3-goal-item{background:#fffc;border:1px solid #e2e8f0;border-radius:12px;flex:200px;gap:7px;min-width:0;padding:8px 10px;display:grid}.match3-goal-item-copy{align-items:flex-start;gap:8px;display:flex}.match3-goal-item-text{gap:2px;min-width:0;display:grid}.match3-goal-item-text strong{color:#1f2937;font-size:12px}.match3-goal-item-text span{color:#64748b;font-size:11px}.match3-goal-progress-bar{background:#e2e8f0;border-radius:999px;width:100%;height:6px;overflow:hidden}.match3-goal-progress-bar span{border-radius:inherit;background:linear-gradient(90deg,#6366f1 0%,#8b5cf6 100%);height:100%;display:block}.match3-hud-btn{color:#1f2937;background:linear-gradient(#fff 0%,#f8fafc 100%);border:1px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;min-height:40px;padding:9px 14px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.match3-hud-btn:focus-visible{outline-offset:2px;outline:2px solid #6366f1}.match3-hud-btn--fast{color:#fff;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border-color:#f59e0b}.match3-hud-btn--progress{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border-color:#059669}.match3-hud-btn--fast:hover{background:linear-gradient(135deg,#d97706 0%,#b45309 100%)}.match3-setup-panel{background:#fff;border:1px solid #d4d4d4;border-radius:10px;grid-template-columns:minmax(0,.92fr) minmax(320px,1.08fr);gap:12px;padding:10px 12px 12px;display:grid;box-shadow:0 6px 18px #0f172a0a}.match3-setup-toolbar{border-bottom:1px solid #e5e7eb;grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;padding-bottom:10px;display:flex}.match3-setup-toolbar-copy,.match3-setup-toolbar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.match3-setup-toolbar-copy strong{color:#1a1a2e;font-size:13px}.match3-setup-panel.is-collapsed{grid-template-columns:1fr}.match3-setup-copy{color:#475569;gap:8px;max-height:240px;padding-right:4px;font-size:12px;display:grid;overflow:auto}.match3-setup-hero{background:linear-gradient(#f8fafc 0%,#fff 100%);border:1px solid #e2e8f0;border-radius:10px;gap:8px;padding:10px;display:grid}.match3-setup-hero-copy{gap:3px;display:grid}.match3-setup-hero-copy strong{color:#1a1a2e;font-size:14px}.match3-setup-facts{flex-wrap:wrap;gap:6px;display:flex}.match3-setup-fact{color:#475569;background:#fff;border:1px solid #dbe4ee;border-radius:999px;align-items:center;gap:6px;padding:5px 9px;font-size:11px;display:inline-flex}.match3-setup-fact strong{color:#1f2937}.match3-setup-goals{flex-wrap:wrap;gap:6px;display:flex}.match3-setup-goal-pill{color:#4338ca;background:#eef2ffbd;border:1px solid #6366f12e;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:11px;display:inline-flex}.match3-start-btn{color:#fff;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);border:1px solid #4f46e5;border-radius:8px;min-height:40px;padding:9px 16px;font-size:13px;font-weight:700}.match3-mode-panel{gap:10px;max-height:360px;padding-right:4px;display:grid;overflow:auto}.match3-mode-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.match3-mode-tab,.match3-level-card{color:#1a1a2e;background:#fff;border:1px solid #d4d4d4}.match3-mode-tab{padding:8px 10px;font-size:12px}.match3-mode-tab.active{background:#eef2ff;border-color:#6366f1}.match3-mode-tab:focus-visible,.match3-level-card:focus-visible,.match3-start-btn:focus-visible{outline-offset:2px;outline:2px solid #6366f1}.match3-level-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:220px;padding-right:4px;display:grid;overflow:auto}.match3-level-card{text-align:left;border-radius:10px;gap:6px;padding:8px 9px;display:grid}.match3-level-card.active{background:#eef2ff;border-color:#6366f1}.match3-level-card strong{font-size:12px}.match3-level-card span,.match3-level-card small{color:#475569}.match3-level-card span{font-size:11px}.match3-level-card small{font-size:10px}.match3-level-card-head,.match3-level-card-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.match3-level-card-difficulty{color:#475569;background:#f8fafc;border:1px solid #dbe4ee;border-radius:999px;flex:none;padding:2px 6px;font-size:10px}.match3-level-card--completed{border-left:3px solid #6366f1}.match3-level-card--unlocked{border-left:3px solid #f59e0b}.match3-level-card--locked{opacity:.55;cursor:not-allowed;border-left:3px solid #9ca3af}.match3-lock-hint{color:#ef4444;font-size:.7rem}.match3-board-shell{background:#fff;border:1px solid #d4d4d4;border-radius:10px;flex:1;position:relative;overflow:auto}.match3-board-feedback{z-index:18;pointer-events:none;gap:6px;display:grid;position:absolute;top:10px;right:10px}.match3-board-feedback-item{background:#ffffffeb;border:1px solid #0000;border-radius:10px;gap:2px;min-width:220px;max-width:280px;padding:8px 10px;animation:.18s ease-out match3-feedback-enter;display:grid;box-shadow:0 10px 24px #0f172a1f}.match3-board-feedback-item strong{color:#0f172a;font-size:12px}.match3-board-feedback-item span{color:#475569;font-size:11px}.match3-board-feedback-item--valid{background:#f0fdf4f5;border-color:#22c55e42}.match3-board-feedback-item--invalid{background:#fef2f2f5;border-color:#ef444442}.match3-board-feedback-item--match{background:#eef2fff5;border-color:#6366f142}.match3-board-feedback-item--drop{background:#fffbebf5;border-color:#f59e0b42}.match3-setup-board-placeholder{color:#64748b;background:#fff;border:1px solid #d4d4d4;flex:1;justify-content:center;align-items:center;font-size:13px;display:flex}.match3-board{gap:4px;padding:14px 10px 10px;display:grid}.match3-row{gap:4px;display:flex}.match3-cell{cursor:pointer;background:linear-gradient(#fbfdff 0%,#f1f5f9 100%);border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex;position:relative;overflow:hidden}.match3-cell:focus-visible{outline-offset:2px;outline:2px solid #6366f1}.match3-cell--selected{border-color:#6366f1;box-shadow:0 0 0 2px #6366f129,0 8px 16px #6366f12e}.match3-cell--focused{border-color:#94a3b8;box-shadow:inset 0 0 0 2px #94a3b873}.match3-cell--adjacent{border-color:#6366f14d;box-shadow:inset 0 0 0 1px #6366f11f}.match3-cell--special-ready{background:linear-gradient(#f8fafc 0%,#f8f5ff 100%)}.match3-cell--drop-cargo{border-color:#f59e0b4d}.match3-cell--blocked{background:linear-gradient(#f8fafc 0%,#eef2f7 100%)}.match3-cell--portal{box-shadow:inset 0 0 0 1px #06b6d433}.match3-cell--drop-exit:after{content:"EXIT";color:#166534;letter-spacing:.08em;font-size:9px;font-weight:700;position:absolute;bottom:3px;right:4px}.match3-cell-badge{letter-spacing:.04em;color:#92400e;background:#fff7edeb;border:1px solid #fbbf2466;border-radius:999px;align-items:center;min-height:14px;padding:0 4px;font-size:8px;font-weight:700;display:inline-flex;position:absolute;bottom:4px;left:4px}.match3-tile{border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:700;display:flex;position:relative}.match3-tile--red{color:#b91c1c;background:linear-gradient(135deg,#fee2e2 0%,#fca5a5 100%)}.match3-tile--orange{color:#c2410c;background:linear-gradient(135deg,#ffedd5 0%,#fdba74 100%)}.match3-tile--yellow{color:#a16207;background:linear-gradient(135deg,#fef9c3 0%,#fde047 100%)}.match3-tile--green{color:#166534;background:linear-gradient(135deg,#dcfce7 0%,#86efac 100%)}.match3-tile--blue{color:#1d4ed8;background:linear-gradient(135deg,#dbeafe 0%,#60a5fa 100%)}.match3-tile--purple{color:#7c3aed;background:linear-gradient(135deg,#f3e8ff 0%,#c084fc 100%)}.match3-tile--special{box-shadow:0 0 0 1px #6366f129,0 4px 8px #6366f11f}.match3-tile--striped-h:after,.match3-tile--striped-v:after{content:"";background:#fff9;position:absolute}.match3-tile--striped-h:after{width:100%;height:4px;top:50%;transform:translateY(-50%)}.match3-tile--striped-v:after{width:4px;height:100%;left:50%;transform:translate(-50%)}.match3-tile--wrapped{border:2px solid #6366f1cc}.match3-tile--colorBomb{color:#fff;background:linear-gradient(135deg,#1a1a2e 0%,#4a4a6a 50%,#1a1a2e 100%);border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff2e,0 0 10px #3b82f629}.match3-tile--drop-item{box-shadow:0 8px 14px #f59e0b29}.match3-tile--fresh{animation:.24s ease-out match3-tile-fresh}.match3-obstacle{pointer-events:none;border-radius:6px;justify-content:center;align-items:center;font-size:14px;display:flex;position:absolute;inset:0}.match3-obstacle--frost1{background:#93c5fd66;border:1px solid #3b82f699}.match3-obstacle--frost2{background:#93c5fd99;border:2px solid #3b82f6cc}.match3-obstacle--chain{background:#64748b4d;border:1px dashed #475569cc}.match3-obstacle--box{background:#b4530933;border:2px solid #b4530999}.match3-obstacle--stone{background:#6b728066;border:2px solid #4b5563cc}.match3-obstacle--spreader{background:#8b5cf64d;border:1px solid #8b5cf699;animation:2.2s ease-in-out infinite match3-spreader-pulse}.match3-goal-progress{flex-wrap:wrap;gap:6px;display:flex}.match3-goal-item--completed{background:#eef2ffd6;border-color:#6366f13d}.match3-goal-icon{background:#ffffffd9;border:1px solid #94a3b82e;border-radius:6px;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;display:inline-flex}.match3-combo-indicator{color:#92400e;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border:1px solid #f59e0b;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.match3-combo-indicator--active{animation:.3s ease-out match3-combo-pulse}.match3-threat-warning{color:#b91c1c;background:linear-gradient(135deg,#fee2e2 0%,#fecaca 100%);border:1px solid #ef4444;border-radius:999px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:600;display:inline-flex}.match3-result-overlay{z-index:12;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1a1a2e3d;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.match3-result-panel{background:#fff;border:1px solid #d4d4d4;border-radius:12px;grid-template-columns:minmax(0,1fr) 190px;gap:14px;width:min(720px,100%);padding:16px;display:grid;box-shadow:0 18px 48px #1a1a2e2e}.match3-result-panel--won{border-color:#6366f1}.match3-result-panel--lost{border-color:#b91c1c}.match3-result-copy,.match3-result-actions{gap:8px;display:grid}.match3-result-hero{gap:6px;display:grid}.match3-result-kicker{letter-spacing:.08em;border-radius:999px;align-items:center;width:fit-content;min-height:28px;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.match3-result-kicker--won{color:#4338ca;background:#eef2ff}.match3-result-kicker--lost{color:#b91c1c;background:#fef2f2}.match3-result-title{color:#1a1a2e;font-size:20px}.match3-result-emotion{color:#0f172a;font-size:14px;font-weight:700}.match3-result-copy span{color:#475569;font-size:12px}.match3-result-actions{align-content:start}.match3-stars{gap:4px;display:flex}.match3-result-badges{flex-wrap:wrap;gap:6px;display:flex}.match3-result-badge{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:11px;display:inline-flex}.match3-result-badge--record{color:#b45309;background:#fffbeb;border-color:#f59e0b4d}.match3-result-highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.match3-result-highlight-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;gap:4px;padding:10px;display:grid}.match3-result-highlight-card--score{background:linear-gradient(#eef2ffeb 0%,#fffffff5 100%);border-color:#6366f140}.match3-result-highlight-card span{color:#64748b;font-size:11px}.match3-result-highlight-card strong{color:#0f172a;font-size:22px;line-height:1}.match3-result-highlight-card small{color:#64748b;font-size:10px}.match3-star{justify-content:center;align-items:center;width:24px;height:24px;font-size:18px;display:inline-flex}.match3-star--filled{color:#f59e0b}.match3-star--empty{color:#d1d5db}.match3-score-breakdown{background:#fff;border:1px solid #e2e8f0;border-radius:10px;gap:4px;padding:10px;font-size:11px;display:grid}.match3-score-row{justify-content:space-between;gap:8px;display:flex}.match3-score-label{color:#6b7280}.match3-score-value{font-variant-numeric:tabular-nums;color:#1f2937;font-weight:600}.match3-unlock-notice{background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border:1px solid #f59e0b;border-radius:6px;flex-direction:column;gap:4px;margin-top:8px;padding:8px 12px;display:flex}.match3-unlock-notice strong{color:#92400e;font-size:.85rem}.match3-unlock-notice span{color:#78350f;font-size:.78rem}.match3-result-goals{gap:6px;display:grid}.match3-result-goal{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;gap:6px;padding:8px 10px;display:grid}.match3-result-goal.is-complete{background:#f0fdf4f0;border-color:#22c55e42}.match3-result-goal-copy{justify-content:space-between;align-items:center;gap:10px;display:flex}.match3-result-goal-copy strong{color:#1f2937;font-size:12px}.match3-result-goal-copy span{color:#64748b;font-size:11px}.match3-result-goal-bar{background:#dbe4ee;border-radius:999px;width:100%;height:6px;overflow:hidden}.match3-result-goal-bar span{border-radius:inherit;background:linear-gradient(90deg,#22c55e 0%,#16a34a 100%);height:100%;display:block}.match3-result-suggestion{font-weight:600;color:#b91c1c!important}.match3-result-next{font-weight:600;color:#166534!important}@keyframes match3-match-flash{0%{opacity:1;transform:scale(1)}30%{opacity:.9;transform:scale(1.3)}60%{opacity:.6;transform:scale(1.5)}to{opacity:0;transform:scale(0)}}@keyframes match3-drop-in{0%{opacity:0;transform:translateY(-34px)scale(.92)}65%{opacity:1;transform:translateY(4px)scale(1.02)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes match3-wrapped-pulse{0%,to{box-shadow:0 0 4px #6366f166}50%{box-shadow:0 0 12px #6366f1cc}}@keyframes match3-colorbomb-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes match3-spreader-pulse{0%,to{opacity:.75;box-shadow:inset 0 0 #8b5cf624}50%{opacity:1;box-shadow:inset 0 0 0 2px #8b5cf624}}@keyframes match3-combo-pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@media (width<=1100px){.match3-hud,.match3-setup-panel,.match3-level-grid,.match3-mode-tabs{grid-template-columns:1fr}.match3-hud{grid-template-areas:"overview""controls""metrics"}.match3-hud-primary,.match3-result-highlight-grid{grid-template-columns:1fr}.match3-hud-overview-main{flex-direction:column;align-items:flex-start}.match3-setup-toolbar{flex-direction:column;align-items:stretch}.match3-setup-toolbar-actions{justify-content:space-between}}.match3-cell--swapping{animation:.25s ease-out match3-swap}.match3-cell--swap-invalid{animation:.3s ease-out match3-swap-invalid}.match3-cell--matched{animation:.35s ease-out forwards match3-match-flash}.match3-cell--dropping{animation:.25s ease-out match3-drop-in}.match3-cell--chain-1{animation:.4s ease-out match3-chain-flash-1}.match3-cell--chain-2{animation:.4s ease-out match3-chain-flash-2}.match3-cell--chain-3{animation:.4s ease-out match3-chain-flash-3}.match3-cell--chain-4{animation:.4s ease-out match3-chain-flash-4}.match3-tile--striped-h.match3-tile--triggering{animation:.3s ease-out match3-striped-h-trigger}.match3-tile--striped-h.match3-tile--triggering:before{content:"";background:linear-gradient(90deg,#0000 0%,#ffffffe6 50%,#0000 100%);width:100%;height:6px;animation:.3s ease-out forwards match3-striped-h-beam;position:absolute;top:50%;left:0}.match3-tile--striped-v.match3-tile--triggering{animation:.3s ease-out match3-striped-v-trigger}.match3-tile--striped-v.match3-tile--triggering:before{content:"";background:linear-gradient(#0000 0%,#ffffffe6 50%,#0000 100%);width:6px;height:100%;animation:.3s ease-out forwards match3-striped-v-beam;position:absolute;top:0;left:50%}.match3-tile--wrapped.match3-tile--triggering{animation:.35s ease-out match3-wrapped-trigger}.match3-tile--wrapped.match3-tile--triggering:before{content:"";background:radial-gradient(circle,#6366f199 0%,#0000 70%);border-radius:12px;animation:.35s ease-out forwards match3-wrapped-blast;position:absolute;inset:-8px}.match3-tile--colorBomb.match3-tile--triggering{animation:.4s ease-out match3-colorbomb-trigger}.match3-tile--colorBomb.match3-tile--triggering:before{content:"";background:radial-gradient(circle,#fffc 0%,#6366f166 30%,#0000 70%);border-radius:50%;animation:.4s ease-out forwards match3-colorbomb-blast;position:absolute;inset:-20px}.match3-obstacle--breaking{animation:.3s ease-out forwards match3-obstacle-break}.match3-obstacle--frost1.match3-obstacle--breaking{animation:.25s ease-out forwards match3-frost-break}.match3-obstacle--frost2.match3-obstacle--breaking{animation:.35s ease-out forwards match3-frost-break}.match3-obstacle--chain.match3-obstacle--breaking{animation:.25s ease-out forwards match3-chain-break}.match3-obstacle--box.match3-obstacle--breaking{animation:.3s ease-out forwards match3-box-break}.match3-obstacle--stone.match3-obstacle--breaking{animation:.35s ease-out forwards match3-stone-break}.match3-score-popup{color:#f59e0b;text-shadow:0 1px 2px #0000004d;pointer-events:none;z-index:10;font-size:14px;font-weight:700;animation:.8s ease-out forwards match3-score-float;position:absolute}.match3-score-popup--combo{color:#6366f1;font-size:16px}.match3-score-popup--special{color:#ec4899;font-size:18px}.match3-score-popup--chain{font-size:20px;animation:.9s ease-out forwards match3-score-float-chain}.match3-chain-indicator{color:#f59e0b;text-shadow:0 2px 4px #0006;pointer-events:none;z-index:15;font-size:24px;font-weight:900;animation:.5s ease-out forwards match3-chain-pop;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.match3-chain-indicator--level-1{color:#fbbf24;font-size:20px}.match3-chain-indicator--level-2{color:#f97316;font-size:22px}.match3-chain-indicator--level-3{color:#ef4444;font-size:24px}.match3-chain-indicator--level-4{color:#dc2626;font-size:28px;animation:.6s ease-out forwards match3-chain-pop-max}.match3-special-effect{pointer-events:none;z-index:20;position:absolute;inset:0}.match3-special-effect--cross{background:linear-gradient(90deg,#0000 45%,#6366f14d 50%,#0000 55%),linear-gradient(#0000 45%,#6366f14d 50%,#0000 55%);animation:.3s ease-out forwards match3-cross-flash}.match3-special-effect--blast{background:radial-gradient(circle,#6366f180 0%,#0000 60%);animation:.35s ease-out forwards match3-blast-flash}.match3-special-effect--clear{background:radial-gradient(circle,#fff9 0%,#0000 50%);animation:.4s ease-out forwards match3-clear-flash}@keyframes match3-swap{0%{transform:scale(1);box-shadow:0 0 #22c55e00}50%{transform:scale(1.08);box-shadow:0 0 18px #22c55e47}to{transform:scale(1);box-shadow:0 0 #22c55e00}}@keyframes match3-swap-invalid{0%,to{transform:translate(0);box-shadow:0 0 #ef444400}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-4px);box-shadow:0 0 18px #ef444438}80%{transform:translate(4px)}}@keyframes match3-chain-flash-1{0%{box-shadow:0 0 #fbbf2400}50%{box-shadow:0 0 12px #fbbf2499}to{box-shadow:0 0 #fbbf2400}}@keyframes match3-chain-flash-2{0%{box-shadow:0 0 #f9731600}50%{box-shadow:0 0 16px #f97316b3}to{box-shadow:0 0 #f9731600}}@keyframes match3-chain-flash-3{0%{box-shadow:0 0 #ef444400}50%{box-shadow:0 0 20px #ef4444cc}to{box-shadow:0 0 #ef444400}}@keyframes match3-chain-flash-4{0%{box-shadow:0 0 #dc262600}50%{box-shadow:0 0 24px #dc2626e6}to{box-shadow:0 0 #dc262600}}@keyframes match3-striped-h-trigger{0%{transform:scale(1)}50%{transform:scale(1.2)}to{opacity:0;transform:scale(0)}}@keyframes match3-striped-h-beam{0%{opacity:1;transform:translateY(-50%)scaleX(0)}to{opacity:0;transform:translateY(-50%)scaleX(3)}}@keyframes match3-striped-v-trigger{0%{transform:scale(1)}50%{transform:scale(1.2)}to{opacity:0;transform:scale(0)}}@keyframes match3-striped-v-beam{0%{opacity:1;transform:translate(-50%)scaleY(0)}to{opacity:0;transform:translate(-50%)scaleY(3)}}@keyframes match3-wrapped-trigger{0%{transform:scale(1)}50%{transform:scale(1.3)}to{opacity:0;transform:scale(0)}}@keyframes match3-wrapped-blast{0%{opacity:1;transform:scale(0)}50%{opacity:.8;transform:scale(1.5)}to{opacity:0;transform:scale(2)}}@keyframes match3-colorbomb-trigger{0%{transform:scale(1)rotate(0)}50%{transform:scale(1.5)rotate(180deg)}to{opacity:0;transform:scale(0)rotate(360deg)}}@keyframes match3-colorbomb-blast{0%{opacity:1;transform:scale(0)}50%{opacity:.6;transform:scale(2)}to{opacity:0;transform:scale(3)}}@keyframes match3-obstacle-break{0%{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}to{opacity:0;transform:scale(0)}}@keyframes match3-frost-break{0%{opacity:1;filter:blur();transform:scale(1)}50%{opacity:.6;filter:blur(2px);transform:scale(1.2)}to{opacity:0;filter:blur(4px);transform:scale(0)}}@keyframes match3-chain-break{0%{opacity:1;transform:scale(1)rotate(0)}50%{opacity:.5;transform:scale(1.3)rotate(15deg)}to{opacity:0;transform:scale(0)rotate(30deg)}}@keyframes match3-box-break{0%{opacity:1;transform:scale(1)}30%{opacity:.9;transform:scale(1.1)}60%{opacity:.6;transform:scale(.8)}to{opacity:0;transform:scale(0)}}@keyframes match3-stone-break{0%{opacity:1;transform:scale(1)}30%{opacity:.9;transform:scale(1.05)}60%{opacity:.5;transform:scale(.9)}to{opacity:0;transform:scale(0)}}@keyframes match3-score-float{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-30px)scale(1.2)}}@keyframes match3-score-float-chain{0%{opacity:1;transform:translateY(0)scale(1)}50%{opacity:1;transform:translateY(-20px)scale(1.4)}to{opacity:0;transform:translateY(-40px)scale(1.6)}}@keyframes match3-chain-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(0)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.2)}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}@keyframes match3-chain-pop-max{0%{opacity:0;transform:translate(-50%,-50%)scale(0)}30%{opacity:1;transform:translate(-50%,-50%)scale(1.5)}60%{opacity:1;transform:translate(-50%,-50%)scale(1.3)}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}@keyframes match3-cross-flash{0%{opacity:0}50%{opacity:1}to{opacity:0}}@keyframes match3-blast-flash{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}@keyframes match3-clear-flash{0%{opacity:0}30%{opacity:1}to{opacity:0}}@keyframes match3-feedback-enter{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes match3-tile-fresh{0%{opacity:.6;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.match3-lab-sheet{height:100%;font-family:var(--match3-font-body);background:#f8f8fc;flex-direction:column;gap:12px;padding:12px;display:flex}.match3-lab-header{background:#fff;border:1px solid #d4d4d4;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.match3-lab-tabs{flex-wrap:wrap;gap:6px;display:flex}.match3-lab-tab{color:#475569;background:#f8fafc;border:1px solid #d4d4d4;border-radius:6px;padding:8px 14px;font-size:12px;font-weight:600}.match3-lab-tab.active{color:#4f46e5;background:#eef2ff;border-color:#6366f1}.match3-lab-tab:focus-visible{outline-offset:2px;outline:2px solid #6366f1}.match3-lab-progress-summary{color:#64748b;flex-wrap:wrap;gap:8px;font-size:11px;display:flex}.match3-lab-content{background:#fff;border:1px solid #d4d4d4;border-radius:8px;flex:1;padding:12px;overflow:auto}.match3-lab-section{gap:16px;display:grid}.match3-lab-section h3{color:#1a1a2e;border-bottom:1px solid #e5e7eb;margin:0;padding-bottom:8px;font-size:14px}.match3-block-grid,.match3-obstacle-grid,.match3-goal-grid,.match3-combo-grid,.match3-chain-grid,.match3-practice-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.match3-block-card,.match3-obstacle-card,.match3-goal-card,.match3-combo-card,.match3-chain-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;gap:6px;padding:10px;display:grid}.match3-block-card--special{background:linear-gradient(135deg,#faf5ff 0%,#f3e8ff 100%);border-color:#c084fc}.match3-block-preview,.match3-obstacle-preview,.match3-goal-icon{border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;font-weight:700;display:flex}.match3-block-info,.match3-obstacle-info,.match3-goal-info{gap:4px;display:grid}.match3-block-info strong,.match3-obstacle-info strong,.match3-goal-info strong{color:#1a1a2e;font-size:13px}.match3-block-info span,.match3-obstacle-info span,.match3-goal-info span{color:#475569;font-size:11px}.match3-block-info small,.match3-obstacle-info small,.match3-goal-info small{color:#6b7280;font-size:10px}.match3-combo-card{grid-template-columns:1fr}.match3-combo-header{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.match3-combo-header strong{color:#1a1a2e;font-size:12px}.match3-combo-result{color:#92400e;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border:1px solid #f59e0b;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.match3-combo-range span,.match3-combo-tip small{color:#475569;font-size:11px}.match3-chain-card{text-align:center}.match3-chain-level{color:#1a1a2e;font-size:12px;font-weight:700}.match3-chain-multiplier{color:#f59e0b;font-size:18px;font-weight:900}.match3-practice-card{text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;gap:6px;padding:10px;display:grid}.match3-practice-card--easy{background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-color:#86efac}.match3-practice-card--medium{background:linear-gradient(135deg,#fffbeb 0%,#fef3c7 100%);border-color:#fde047}.match3-practice-card--hard{background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);border-color:#fca5a5}.match3-practice-card:focus-visible{outline-offset:2px;outline:2px solid #6366f1}.match3-practice-header strong{color:#1a1a2e;font-size:12px}.match3-practice-difficulty{border-radius:999px;padding:2px 6px;font-size:10px;font-weight:600}.match3-practice-difficulty--easy{color:#166534;background:#dcfce7}.match3-practice-difficulty--medium{color:#92400e;background:#fef3c7}.match3-practice-difficulty--hard{color:#b91c1c;background:#fee2e2}.match3-practice-card span{color:#475569;font-size:11px}.match3-practice-hint{color:#9ca3af;font-size:10px}.match3-practice-stats{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.match3-practice-stat-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;gap:4px;padding:8px 10px;display:grid}.match3-practice-stat-label{color:#6b7280;font-size:10px}.match3-practice-stat-value{color:#1a1a2e;font-size:14px;font-weight:700}.match3-practice-module{background:#f8f8fc;border-radius:8px;flex-direction:column;gap:12px;padding:16px;display:flex}.match3-practice-header{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.match3-practice-header h2{color:#1a1a2e;margin:0;font-size:16px;font-weight:700}.match3-practice-info{gap:8px;display:grid}.match3-practice-info p{color:#475569;margin:0;font-size:12px}.match3-practice-stats-bar{color:#64748b;flex-wrap:wrap;gap:12px;font-size:11px;display:flex}.match3-practice-tips{background:#eef2ff;border-radius:6px;gap:4px;padding:8px;display:grid}.match3-practice-tips small{color:#4f46e5;font-size:10px}.match3-board--practice{max-width:320px;margin:0 auto}.match3-cell--selected{outline-offset:-3px;outline:3px solid #6366f1}.match3-practice-message{text-align:center;border-radius:6px;padding:12px;font-size:14px;font-weight:600}.match3-practice-message--success{color:#166534;background:#dcfce7;border:1px solid #86efac}.match3-practice-message--fail{color:#b91c1c;background:#fee2e2;border:1px solid #fca5a5}.match3-practice-controls{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.match3-practice-btn{cursor:pointer;border:1px solid #d4d4d4;border-radius:6px;padding:8px 16px;font-size:12px;font-weight:600}.match3-practice-btn--reset{color:#475569;background:#f8fafc}.match3-practice-btn--reset:hover{background:#e2e8f0}.match3-practice-btn--exit{color:#4f46e5;background:#eef2ff;border-color:#6366f1}.match3-practice-btn--exit:hover{color:#fff;background:#6366f1}.match3-board-container{flex:1;position:relative}.match3-pause-overlay{z-index:20;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1a1a2e99;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.match3-pause-content{text-align:center;background:#fff;border-radius:12px;gap:12px;padding:24px 32px;display:grid;box-shadow:0 12px 32px #1a1a2e33}.match3-pause-content h2{color:#1a1a2e;margin:0;font-size:18px;font-weight:700}.match3-pause-content p{color:#475569;margin:0;font-size:12px}.match3-pause-resume-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);border:1px solid #6366f1;border-radius:8px;padding:12px 24px;font-size:14px;font-weight:700}.match3-pause-resume-btn:hover{background:linear-gradient(135deg,#4f46e5 0%,#3730a3 100%)}.match3-pause-resume-btn:focus-visible{outline-offset:2px;outline:2px solid #6366f1}.match3-shuffle-hint{z-index:25;color:#fff;background:#6366f1e6;border-radius:8px;padding:12px 24px;font-size:14px;font-weight:600;animation:1.5s ease-out forwards match3-shuffle-hint-fade;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes match3-shuffle-hint-fade{0%{opacity:0;transform:translate(-50%,-50%)scale(.8)}20%{opacity:1;transform:translate(-50%,-50%)scale(1)}80%{opacity:1}to{opacity:0}}@media (width<=760px){.match3-hud-bar,.match3-hud-identity,.match3-hud-controls-head{flex-direction:column;align-items:stretch}.match3-hud-chips,.match3-hud-controls,.match3-hud-summary,.match3-hud-metrics{width:100%}.match3-hud-btn{flex:140px}.match3-board-feedback{left:8px;right:8px}.match3-board-feedback-item{min-width:0;max-width:none}.match3-result-panel{grid-template-columns:1fr}.match3-cell{width:40px;height:40px}.match3-tile{width:30px;height:30px;font-size:14px}.match3-score-popup{font-size:12px}.match3-score-popup--combo{font-size:14px}.match3-score-popup--special{font-size:16px}.match3-score-popup--chain{font-size:18px}.match3-chain-indicator{font-size:20px}.match3-chain-indicator--level-4{font-size:24px}.match3-lab-tabs{flex-direction:column;width:100%}.match3-lab-tab{width:100%}.match3-block-grid,.match3-obstacle-grid,.match3-goal-grid,.match3-combo-grid,.match3-chain-grid,.match3-practice-grid{grid-template-columns:1fr}}.game2048-sheet{gap:16px;padding:12px;display:grid}.game2048-hud{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.game2048-stat-card{background:linear-gradient(#fff 0%,#fafaf9 100%);border:1px solid #d6d3d1;border-radius:10px;gap:6px;padding:12px 14px;display:grid}.game2048-stat-label{color:#78716c;font-size:12px}.game2048-main{gap:12px;display:grid}.game2048-title-block h2{color:#44403c;margin:0;font-size:28px}.game2048-title-block p{color:#78716c;margin:4px 0 0;font-size:12px}.game2048-board-shell{background:#bbada0;border:1px solid #d6d3d1;border-radius:12px;width:fit-content;padding:14px;position:relative}.game2048-grid{gap:10px;display:grid}.game2048-grid-row{grid-template-columns:repeat(4,88px);gap:10px;display:grid}.game2048-cell{background:#eee4da59;border-radius:8px;justify-content:center;align-items:center;width:88px;height:88px;display:flex}.game2048-tile{color:#776e65;border-radius:8px;justify-content:center;align-items:center;width:100%;height:100%;font-size:28px;font-weight:700;display:flex}.game2048-tile--2{background:#eee4da}.game2048-tile--4{background:#ede0c8}.game2048-tile--8{color:#f9f6f2;background:#f2b179}.game2048-tile--16{color:#f9f6f2;background:#f59563}.game2048-tile--32{color:#f9f6f2;background:#f67c5f}.game2048-tile--64{color:#f9f6f2;background:#f65e3b}.game2048-tile--128{color:#f9f6f2;background:#edcf72;font-size:24px}.game2048-tile--256{color:#f9f6f2;background:#edcc61;font-size:24px}.game2048-tile--512{color:#f9f6f2;background:#edc850;font-size:24px}.game2048-tile--1024{color:#f9f6f2;background:#edc53f;font-size:20px}.game2048-tile--2048{color:#f9f6f2;background:#edc22e;font-size:20px}.game2048-overlay{background:#faf8efc7;border-radius:12px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.game2048-overlay-card{text-align:center;background:#fff;border:1px solid #d6d3d1;border-radius:12px;gap:12px;min-width:260px;padding:18px;display:grid}.game2048-overlay-card h3{color:#44403c;margin:0}.game2048-overlay-card p{color:#57534e;margin:0}.game2048-overlay-actions,.game2048-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.game2048-toolbar button,.game2048-overlay-actions button{background:#fff;border:1px solid #d6d3d1;border-radius:8px;padding:8px 12px}.game2048-help{color:#78716c;font-size:12px}.fantasy-lane-sheet,.fantasy-lane-info-sheet{--fantasy-lane-font-body:"Microsoft YaHei UI", "PingFang SC", "Segoe UI", sans-serif;--fantasy-lane-font-display:"Bahnschrift SemiCondensed", "Arial Narrow", var(--fantasy-lane-font-body);--fantasy-lane-text-strong:#0f172a;--fantasy-lane-text-muted:#475569;--fantasy-lane-border:#d4d4d4;--fantasy-lane-border-soft:#e5e7eb;--fantasy-lane-sheet-bg:#f3f3f3;--fantasy-lane-panel-bg:#fff;--fantasy-lane-chip-bg:#f8fafceb;--fantasy-lane-player-accent:#2563eb;--fantasy-lane-enemy-accent:#dc2626;--fantasy-lane-success:#107c41;--fantasy-lane-warn:#d97706;--fantasy-lane-danger:#b91c1c;background:var(--fantasy-lane-sheet-bg);height:100%;color:var(--fantasy-lane-text-strong);font-family:var(--fantasy-lane-font-body);overflow:auto}.fantasy-lane-sheet{flex-direction:column;gap:10px;padding:10px;display:flex;position:relative}.fantasy-lane-layout{flex:1;grid-template-columns:280px minmax(0,1fr);gap:10px;min-height:0;display:grid}.fantasy-lane-layout.has-collapsed-sidebar{grid-template-columns:140px minmax(0,1fr)}.fantasy-lane-sidebar,.fantasy-lane-main,.fantasy-lane-info-panel{border:1px solid var(--fantasy-lane-border);background:var(--fantasy-lane-panel-bg);border-radius:8px;box-shadow:inset 0 1px #ffffffc7}.fantasy-lane-sidebar{flex-direction:column;gap:10px;min-height:0;padding:10px;display:flex;overflow:auto}.fantasy-lane-sidebar.is-collapsed{padding:8px;overflow:auto}.fantasy-lane-sidebar-compact{flex-direction:column;gap:8px;display:flex}.fantasy-lane-sidebar-expand-btn{border:1px solid var(--fantasy-lane-border);background:var(--fantasy-lane-chip-bg);cursor:pointer;width:100%;color:var(--fantasy-lane-text-muted);border-radius:6px;padding:6px;font-size:12px}.fantasy-lane-sidebar-expand-btn:hover{background:#e2e8f0}.fantasy-lane-sidebar-compact-info{border:1px solid var(--fantasy-lane-border);background:var(--fantasy-lane-chip-bg);border-radius:6px;flex-direction:column;gap:2px;padding:6px;font-size:10px;display:flex}.fantasy-lane-sidebar-compact-info strong{color:var(--fantasy-lane-text-strong);font-size:12px}.fantasy-lane-sidebar-compact-info span{color:var(--fantasy-lane-text-muted)}.fantasy-lane-sidebar-compact-units{flex-direction:column;gap:6px;display:flex}.fantasy-lane-compact-unit{border:1px solid var(--fantasy-lane-border);background:var(--fantasy-lane-panel-bg);cursor:pointer;text-align:left;border-radius:6px;align-items:flex-start;gap:6px;padding:6px;display:flex}.fantasy-lane-compact-unit:disabled{opacity:.5;cursor:not-allowed}.fantasy-lane-compact-unit.is-cooling{background:#fffbeb;border-color:#f59e0b}.fantasy-lane-compact-unit-preview{flex-shrink:0;width:32px;height:32px}.fantasy-lane-compact-unit-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.fantasy-lane-compact-unit-row{align-items:center;gap:4px;display:flex}.fantasy-lane-compact-unit-key{background:var(--fantasy-lane-player-accent);color:#fff;border-radius:3px;justify-content:center;align-items:center;width:16px;height:16px;font-size:9px;font-weight:600;display:flex}.fantasy-lane-compact-unit-name{color:var(--fantasy-lane-text-strong);font-size:11px;font-weight:600}.fantasy-lane-compact-unit-tag{color:#64748b;background:#f1f5f9;border-radius:3px;padding:1px 4px;font-size:9px}.fantasy-lane-compact-unit-cd{color:#d97706;background:#fef3c7;border-radius:3px;padding:1px 4px;font-size:9px}.fantasy-lane-compact-unit-badges{gap:3px;display:flex}.fantasy-lane-compact-unit-badge{color:#475569;background:#e2e8f0;border-radius:2px;padding:1px 3px;font-size:8px}.fantasy-lane-main{flex-direction:column;gap:10px;min-height:0;padding:10px;display:flex;overflow:hidden}.fantasy-lane-hud{border-bottom:1px solid var(--fantasy-lane-border);background:#f8fafc;align-items:center;gap:8px;padding:6px 10px;display:flex;overflow-x:auto}.fantasy-lane-hud-stats{flex-shrink:0;gap:12px;display:flex}.fantasy-lane-hud-stat{flex-direction:column;align-items:flex-start;line-height:1.2;display:flex}.fantasy-lane-hud-stat small{color:#64748b;font-size:10px}.fantasy-lane-hud-stat strong{color:#0f172a;font-size:13px;font-weight:600}.fantasy-lane-hud-bases{flex-shrink:0;align-items:center;gap:8px;display:flex}.fantasy-lane-hud-base{flex-direction:column;gap:2px;min-width:70px;display:flex}.fantasy-lane-hud-base small{color:#64748b;font-size:10px}.fantasy-lane-hud-bar{background:#e2e8f0;border-radius:2px;height:4px;overflow:hidden}.fantasy-lane-hud-bar span{background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:2px;height:100%;display:block}.fantasy-lane-hud-bar--enemy span{background:linear-gradient(90deg,#ef4444,#f87171)}.fantasy-lane-hud-frontline{flex-direction:column;align-items:center;min-width:80px;display:flex}.fantasy-lane-hud-frontline small{color:#64748b;font-size:10px}.fantasy-lane-hud-frontline span{color:#475569;font-size:11px}.fantasy-lane-hud-queue{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.fantasy-lane-hud-queue small{color:#64748b;font-size:10px}.fantasy-lane-hud-queue span{color:#475569;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.fantasy-lane-hud-skills{flex-shrink:0;gap:6px;display:flex}.fantasy-lane-hud-skill{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:4px;flex-direction:column;align-items:center;min-width:50px;padding:4px 8px;font-size:10px;display:flex;position:relative}.fantasy-lane-hud-skill:disabled{opacity:.5;cursor:not-allowed}.fantasy-lane-hud-skill-cooldown{width:16px;height:16px;position:absolute;top:2px;right:2px}.fantasy-lane-hud-skill strong{color:#2563eb;font-size:14px;font-weight:700}.fantasy-lane-hud-skill small{color:#64748b;font-size:10px}.fantasy-lane-hud-actions{flex-shrink:0;gap:6px;display:flex}.fantasy-lane-hud-actions button{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:4px;padding:4px 10px;font-size:11px}.fantasy-lane-hud-actions button:hover{background:#f1f5f9}.fantasy-lane-stat-card,.fantasy-lane-base-card,.fantasy-lane-frontline-meter,.fantasy-lane-queue-card,.fantasy-lane-briefing-card{border:1px solid var(--fantasy-lane-border);background:linear-gradient(#fffffffa 0%,#f8fafcfa 100%);border-radius:8px;flex-direction:column;gap:4px;min-width:96px;padding:7px 10px;display:flex}.fantasy-lane-briefing-card{gap:8px;min-width:0;padding:9px 10px}.fantasy-lane-briefing-card--phase{background:linear-gradient(#fffbebf5 0%,#fffffffa 100%)}.fantasy-lane-briefing-card--critical{background:linear-gradient(#fef2f2fa 0%,#fffffffa 100%);border-color:#dc26263d}.fantasy-lane-briefing-card--warning{border-color:#f59e0b3d}.fantasy-lane-briefing-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.fantasy-lane-briefing-head strong{color:#0f172a;font-size:13px}.fantasy-lane-briefing-card p,.fantasy-lane-boss-phase-note span{color:#475569;margin:0;font-size:11px}.fantasy-lane-briefing-meta,.fantasy-lane-phase-track,.fantasy-lane-boss-phase-track,.fantasy-lane-main-phase-strip,.fantasy-lane-main-boss-strip,.fantasy-lane-result-summary,.fantasy-lane-result-insight,.fantasy-lane-result-boss-strip{flex-wrap:wrap;gap:6px;display:flex}.fantasy-lane-briefing-meta span,.fantasy-lane-boss-phase-note strong,.fantasy-lane-base-note,.fantasy-lane-boss-meter-tag,.fantasy-lane-phase-pill,.fantasy-lane-boss-phase-pill,.fantasy-lane-result-summary span,.fantasy-lane-result-insight span{color:#475569;background:#f8fafcf5;border:1px solid #dbe3ef;border-radius:999px;align-items:center;min-height:22px;padding:0 8px;font-size:10px;display:inline-flex}.fantasy-lane-phase-pill{color:#334155}.fantasy-lane-phase-pill.is-active{color:#1d4ed8;background:#dbeafef5;border-color:#2563eb42}.fantasy-lane-boss-phase-pill{border-style:dashed}.fantasy-lane-boss-phase-pill.is-queued{color:#b45309;background:#fff7edf5;border-color:#f59e0b4d}.fantasy-lane-boss-phase-pill.is-active{color:#b91c1c;background:#fef2f2f5;border-color:#dc26263d}.fantasy-lane-boss-phase-pill.is-cleared{color:#166534;background:#f0fdf4f5;border-color:#107c413d}.fantasy-lane-boss-phase-note{gap:6px;display:grid}.fantasy-lane-base-note,.fantasy-lane-boss-meter-tag{align-self:flex-start;margin-top:2px}.fantasy-lane-base-card--player{background:linear-gradient(#eff6fffa 0%,#dbeafee0 100%);border-color:#2563eb38}.fantasy-lane-base-card--enemy{background:linear-gradient(#fef2f2fa 0%,#fee2e2e0 100%);border-color:#dc262633}.fantasy-lane-stat-label,.fantasy-lane-kicker,.fantasy-lane-frontline-meter span,.fantasy-lane-base-card span{letter-spacing:.08em;color:#64748b;font-size:10px}.fantasy-lane-stat-card strong,.fantasy-lane-base-card strong,.fantasy-lane-frontline-meter strong{color:var(--fantasy-lane-text-strong);font-size:13px;line-height:1.1}.fantasy-lane-frontline-meter{justify-content:center;align-items:center;min-width:120px}.fantasy-lane-queue-card{min-width:0}.fantasy-lane-base-card-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.fantasy-lane-base-bar{background:#2563eb1f;border-radius:999px;height:7px;overflow:hidden}.fantasy-lane-base-bar span{border-radius:inherit;background:linear-gradient(90deg,#2563eb 0%,#60a5fa 100%);height:100%;display:block}.fantasy-lane-base-bar--enemy{background:#dc26261f}.fantasy-lane-base-bar--enemy span{background:linear-gradient(90deg,#ef4444 0%,#f97316 100%)}.fantasy-lane-queue-card-head,.fantasy-lane-queue-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.fantasy-lane-queue-meta{flex-wrap:wrap}.fantasy-lane-queue-meta small{color:#64748b;font-size:10px}.fantasy-lane-meter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;display:grid}.fantasy-lane-frontline-meter small,.fantasy-lane-meter-grid small,.fantasy-lane-overtime-tag{color:var(--fantasy-lane-warn);font-size:10px}.fantasy-lane-meter-grid small{color:#475569;background:#ffffffb8;border:1px solid #94a3b847;border-radius:999px;justify-content:center;align-items:center;min-height:22px;display:inline-flex}.fantasy-lane-overtime-tag{color:#b45309}.fantasy-lane-hud-actions,.fantasy-lane-result-actions,.fantasy-lane-link-row,.fantasy-lane-skill-stack{flex-wrap:wrap;gap:8px;display:flex}.fantasy-lane-btn,.fantasy-lane-tabset button,.fantasy-lane-chip,.fantasy-lane-level-card,.fantasy-lane-mini-card,.fantasy-lane-skill-btn,.fantasy-lane-link-btn{border:1px solid var(--fantasy-lane-border);color:#1f2937;background:linear-gradient(#fff 0%,#f8fafc 100%);border-radius:6px}.fantasy-lane-btn,.fantasy-lane-link-btn{cursor:pointer;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.fantasy-lane-btn:disabled,.fantasy-lane-chip:disabled,.fantasy-lane-level-card:disabled,.fantasy-lane-mini-card:disabled,.fantasy-lane-unit-card:disabled,.fantasy-lane-skill-btn:disabled{opacity:.56;cursor:not-allowed}.fantasy-lane-btn--primary{color:#fff;background:linear-gradient(135deg,#16a34a 0%,#0c5a2f 100%);border-color:#0c5a2f;font-weight:700}.fantasy-lane-btn--primary:hover{background:linear-gradient(135deg,#15803d 0%,#0c5a2f 100%)}.fantasy-lane-btn--muted,.fantasy-lane-link-btn{background:linear-gradient(#fff 0%,#f8fafc 100%)}.fantasy-lane-sidebar-toolbar,.fantasy-lane-loadout-head,.fantasy-lane-roster-card-head,.fantasy-lane-info-panel--header{justify-content:space-between;align-items:center;gap:10px;display:flex}.fantasy-lane-sidebar-toolbar,.fantasy-lane-info-panel--header{border-bottom:1px solid var(--fantasy-lane-border-soft);padding-bottom:10px}.fantasy-lane-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a99;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.fantasy-lane-modal{border:1px solid var(--fantasy-lane-border);background:#fff;border-radius:12px;flex-direction:column;width:min(600px,90vw);max-height:80vh;display:flex;box-shadow:0 20px 60px #0f172a4d}.fantasy-lane-modal-header{border-bottom:1px solid var(--fantasy-lane-border-soft);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.fantasy-lane-modal-header h4{color:#0f172a;margin:0;font-size:14px}.fantasy-lane-modal-close{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:18px;display:flex}.fantasy-lane-modal-close:hover{background:#f1f5f9}.fantasy-lane-modal-body{flex-direction:column;flex:1;gap:12px;min-height:0;padding:12px 16px;display:flex;overflow:auto}.fantasy-lane-level-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.fantasy-lane-level-card{border:1px solid var(--fantasy-lane-border);text-align:left;cursor:pointer;background:linear-gradient(#fff 0%,#f8fafc 100%);border-radius:8px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.fantasy-lane-level-card:disabled{opacity:.5;cursor:not-allowed}.fantasy-lane-level-card.is-active{border-color:var(--fantasy-lane-player-accent);background:#eff6ff}.fantasy-lane-level-card strong{color:#0f172a;font-size:12px}.fantasy-lane-level-card span{color:#475569;font-size:11px}.fantasy-lane-level-status{color:#16a34a;font-size:14px}.fantasy-lane-btn--small{cursor:pointer;min-height:26px;padding:4px 10px;font-size:11px;font-weight:600}.fantasy-lane-quick-picks{padding:8px 0}.fantasy-lane-quick-pick-row{gap:8px;display:flex}.fantasy-lane-quick-pick-item{border:1px solid var(--fantasy-lane-border);background:var(--fantasy-lane-chip-bg);border-radius:6px;flex:1;align-items:center;gap:6px;padding:6px 8px;font-size:11px;display:flex}.fantasy-lane-quick-pick-label{color:var(--fantasy-lane-text-muted);flex-shrink:0;font-size:10px}.fantasy-lane-quick-pick-value{color:var(--fantasy-lane-text-strong);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.fantasy-lane-quick-pick-item .fantasy-lane-btn--small{flex-shrink:0;min-height:24px;padding:4px 8px;font-size:10px}.fantasy-lane-tabset{border:1px solid var(--fantasy-lane-border);background:#f8fafc;border-radius:8px;padding:2px;display:inline-flex}.fantasy-lane-tabset button{color:#475569;background:0 0;border:0;padding:7px 11px;font-size:12px}.fantasy-lane-tabset button.is-active{color:#0f172a;background:#fff;box-shadow:0 1px 2px #0f172a14}.fantasy-lane-chapter-strip,.fantasy-lane-card-grid{gap:8px;display:grid}.fantasy-lane-chapter-strip{grid-template-columns:repeat(auto-fit,minmax(106px,1fr))}.fantasy-lane-level-list,.fantasy-lane-card-grid,.fantasy-lane-roster-grid{gap:8px;display:grid}.fantasy-lane-level-list{grid-template-columns:1fr}.fantasy-lane-card-grid{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.fantasy-lane-roster-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.fantasy-lane-chip,.fantasy-lane-level-card,.fantasy-lane-mini-card,.fantasy-lane-roster-card,.fantasy-lane-skill-btn{text-align:left}.fantasy-lane-chip{cursor:pointer;justify-content:center;align-items:center;min-height:34px;padding:6px 10px;font-size:12px;display:inline-flex}.fantasy-lane-level-card,.fantasy-lane-mini-card,.fantasy-lane-roster-card{flex-direction:column;gap:5px;padding:9px 10px;display:flex}.fantasy-lane-level-card.is-active,.fantasy-lane-mini-card.is-active,.fantasy-lane-chip.is-active{border-color:var(--fantasy-lane-player-accent);background:#eff6ff;box-shadow:inset 0 0 0 1px #2563eb1a}.fantasy-lane-mini-card.is-static{cursor:default}.fantasy-lane-mini-card--unit.is-cooling{opacity:.62}.fantasy-lane-warning-list,.fantasy-lane-footer-note,.fantasy-lane-roster-meta,.fantasy-lane-result-grid{flex-wrap:wrap;gap:8px;display:flex}.fantasy-lane-warning-chip,.fantasy-lane-footer-note span,.fantasy-lane-roster-meta span,.fantasy-lane-result-grid div{background:var(--fantasy-lane-chip-bg);color:#475569;border:1px solid #e2e8f0;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:11px;display:inline-flex}.fantasy-lane-warning-chip{color:var(--fantasy-lane-danger);background:#fef2f2;border-color:#fecaca}.fantasy-lane-warning-chip--ok{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.fantasy-lane-main-head{border-bottom:1px solid var(--fantasy-lane-border-soft);align-items:flex-start;gap:12px;padding-bottom:10px;display:flex}.fantasy-lane-main-title{flex-direction:column;gap:4px;min-width:0;display:flex}.fantasy-lane-main-stripes{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fantasy-lane-strip-sep{color:#94a3b8;font-size:12px}.fantasy-lane-main-head h2,.fantasy-lane-info-panel h2,.fantasy-lane-info-panel h3,.fantasy-lane-pick-block h4{margin:0}.fantasy-lane-main-head h2,.fantasy-lane-info-panel h2{font-size:16px}.fantasy-lane-info-panel h3,.fantasy-lane-pick-block h4{font-size:13px}.fantasy-lane-main-head p,.fantasy-lane-info-panel p,.fantasy-lane-pick-block p{color:var(--fantasy-lane-text-muted);margin:4px 0 0;font-size:12px}.fantasy-lane-skill-btn{cursor:pointer;flex-direction:column;gap:4px;min-width:122px;padding:8px 10px;display:flex}.fantasy-lane-skill-btn strong{font-size:12px}.fantasy-lane-skill-btn span{color:#475569;font-size:11px}.fantasy-lane-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.fantasy-lane-skill-btn--tactical{background:linear-gradient(#fff 0%,#f8fbff 100%)}.fantasy-lane-board-shell{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.fantasy-lane-queue-list{flex-wrap:wrap;gap:8px;display:flex}.fantasy-lane-queue-list span{color:#334155;background:#f8fafcf5;border:1px solid #dbe3ef;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:11px;display:inline-flex}.fantasy-lane-queue-list span.is-empty{color:#94a3b8;border-style:dashed}.fantasy-lane-warning-banner{color:#9a3412;background:linear-gradient(#fff7ed 0%,#ffedd5 100%);border:1px solid #f59e0b;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-height:36px;padding:7px 10px;font-size:12px;font-weight:700;display:flex}.fantasy-lane-battlefield{border:1px solid var(--fantasy-lane-border);background:linear-gradient(90deg,#2563eb14 0 11%,#0000 11% 89%,#dc262614 89% 100%),linear-gradient(#dbeafe6b 0 31%,#ffffff0d 31% 45%,#fff0 45% 58%,#dcfce742 58% 100%),repeating-linear-gradient(90deg,#94a3b829 0 1px,#0000 1px 5%),repeating-linear-gradient(#94a3b81f 0 1px,#0000 1px 12%);border-radius:10px;width:100%;min-height:420px;position:relative;overflow:hidden}.fantasy-lane-battlefield-stage-banner{z-index:6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);text-align:center;pointer-events:none;background:#ffffffdb;border:1px solid #94a3b83d;border-radius:999px;flex-direction:column;align-items:center;gap:3px;min-width:min(420px,100% - 140px);padding:6px 10px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%)}.fantasy-lane-battlefield-stage-banner strong{color:#0f172a;font-size:11px}.fantasy-lane-battlefield-stage-banner span{color:#475569;font-size:10px}.fantasy-lane-battlefield.is-alert:after{content:"";pointer-events:none;background:linear-gradient(90deg,#f59e0b1a,#0000 18% 82%,#f59e0b1a),linear-gradient(#f59e0b2e,#0000 18% 82%,#f59e0b1f);animation:.9s ease-in-out infinite alternate fantasy-lane-alert-pulse;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #f59e0b47}.fantasy-lane-battlefield-zone,.fantasy-lane-battlefield-clash-zone,.fantasy-lane-clash-line,.fantasy-lane-battlefield-base,.fantasy-lane-battlefield-render-layer,.fantasy-lane-projectile,.fantasy-lane-impact,.fantasy-lane-unit{position:absolute}.fantasy-lane-battlefield-render-layer{z-index:3;pointer-events:none;inset:0}.fantasy-lane-battlefield-canvas{width:100%;height:100%;display:block}.fantasy-lane-battlefield-debug-toggle{z-index:7;color:#475569;letter-spacing:.02em;cursor:pointer;background:#ffffffdb;border:1px solid #94a3b85c;border-radius:999px;min-width:36px;min-height:22px;padding:0 8px;font-size:10px;font-weight:700;position:absolute;top:10px;right:10px}.fantasy-lane-battlefield-debug-toggle:hover{color:#1d4ed8;border-color:#3b82f661}.fantasy-lane-battlefield-debug-toggle.is-active{color:#1d4ed8;background:#dbeafeeb;border-color:#1d4ed875}.fantasy-lane-battlefield-clash-zone{z-index:2;pointer-events:none;background:linear-gradient(90deg,#fbbf2414 0%,#fbbf2405 50%,#fbbf2414 100%);border-left:1px solid #d9770633;border-right:1px solid #d9770633;top:18%;bottom:12%}.fantasy-lane-clash-zone-label{color:#92400e;white-space:nowrap;background:#fffbebeb;border:1px solid #f59e0b61;border-radius:999px;align-items:center;min-height:24px;padding:0 10px;font-size:10px;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.fantasy-lane-battlefield-zone{z-index:0;pointer-events:none;width:11%;top:0;bottom:0}.fantasy-lane-battlefield-zone--player{background:linear-gradient(90deg,#2563eb24 0%,#2563eb0a 100%);left:0}.fantasy-lane-battlefield-zone--enemy{background:linear-gradient(270deg,#dc262624 0%,#dc26260a 100%);right:0}.fantasy-lane-battlefield-base{text-align:center;z-index:4;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffffe0;border:1px dashed #cbd5e1;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:74px;min-height:96px;padding:10px 8px;display:flex;top:50%;transform:translateY(-50%)}.fantasy-lane-battlefield-base strong{color:#334155;font-size:11px}.fantasy-lane-battlefield-base small{color:#0f172a;font-size:12px}.fantasy-lane-battlefield-base--player{left:10px}.fantasy-lane-battlefield-base--enemy{right:10px}.fantasy-lane-clash-line{z-index:1;pointer-events:none;z-index:1;border-left:1px dashed #d97706b8;width:0;top:0;bottom:0}.fantasy-lane-clash-line span{color:#9a3412;background:#fff7ede6;border:1px solid #fbbf246b;border-radius:999px;align-items:center;min-height:20px;padding:0 8px;font-size:10px;display:inline-flex;position:absolute;top:12px;left:8px}.fantasy-lane-unit{will-change:transform;flex-direction:column;align-items:center;gap:4px;width:74px;transition:transform .12s,filter .12s,opacity .12s;display:flex;transform:translate(-50%,-58%)}.fantasy-lane-unit.is-air{z-index:5;filter:drop-shadow(0 8px 14px #2563eb2e)}.fantasy-lane-unit.is-ground{z-index:3}.fantasy-lane-unit.is-boss .fantasy-lane-unit-body{filter:drop-shadow(0 0 10px #dc262652)}.fantasy-lane-unit.is-boss{transform:translate(-50%,-60%)scale(1.06)}.fantasy-lane-unit.is-boss .fantasy-lane-unit-caption{color:#b91c1c;background:#fef2f2f0;border-color:#dc262647}.fantasy-lane-unit--player .fantasy-lane-unit-caption{color:#1d4ed8}.fantasy-lane-unit--enemy .fantasy-lane-unit-caption{color:#b91c1c}.fantasy-lane-unit.is-attacking{transform:translate(-50%,-58%)scale(1.04)}.fantasy-lane-unit.is-hit{filter:brightness(1.16)saturate(1.1)}.fantasy-lane-unit.is-blocked .fantasy-lane-unit-caption{color:#b45309}.fantasy-lane-unit:after{content:"";box-shadow:0 0 0 1px var(--fantasy-unit-accent,transparent);opacity:0;border-radius:18px;transition:opacity .12s,box-shadow .12s;position:absolute;inset:8px}.fantasy-lane-unit.is-attacking:after,.fantasy-lane-unit.is-hit:after,.fantasy-lane-unit.is-blocked:after,.fantasy-lane-unit.is-boss:after{opacity:.6}.fantasy-lane-unit-body{width:100%;min-height:62px;box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;padding:0;display:flex}.fantasy-lane-unit-health{background:#0f172a1f;border-radius:999px;width:52px;height:6px;overflow:hidden}.fantasy-lane-unit-health-fill{border-radius:inherit;background:linear-gradient(90deg,#16a34a 0%,#84cc16 100%);height:100%;display:block}.fantasy-lane-unit-caption{text-overflow:ellipsis;white-space:nowrap;text-align:center;color:#475569;background:#ffffffd1;border:1px solid #94a3b833;border-radius:999px;max-width:78px;padding:1px 6px;font-size:10px;overflow:hidden}.fantasy-lane-projectile{pointer-events:none;z-index:4;justify-content:center;align-items:center;display:flex}.fantasy-lane-projectile-trail{opacity:.45;background:linear-gradient(90deg,#fff0,currentColor);border-radius:999px;width:18px;height:2px;position:absolute}.fantasy-lane-projectile-glow{opacity:.42;background:radial-gradient(circle,currentColor 0%,#ffffff26 45%,#0000 70%);border-radius:999px;width:18px;height:18px;position:absolute;transform:scale(1.15)}.fantasy-lane-projectile-core{background:currentColor;border-radius:999px;width:8px;height:8px;display:block;box-shadow:0 0 8px}.fantasy-lane-projectile--arrow .fantasy-lane-projectile-core{clip-path:polygon(0 50%,18% 0,78% 0,100% 50%,78% 100%,18% 100%);background:linear-gradient(90deg,#0000 0%,currentColor 18% 100%);border-radius:0;width:16px;height:3px}.fantasy-lane-projectile--bolt .fantasy-lane-projectile-core{clip-path:polygon(0 50%,10% 0,76% 0,100% 50%,76% 100%,10% 100%);background:linear-gradient(90deg,#7c2d12 0%,currentColor 30%,#f1f5f9 92%);border-radius:0;width:18px;height:4px}.fantasy-lane-projectile--shot .fantasy-lane-projectile-core{width:6px;height:6px;box-shadow:0 0 12px}.fantasy-lane-projectile--glob .fantasy-lane-projectile-core,.fantasy-lane-projectile--orb .fantasy-lane-projectile-core{background:radial-gradient(circle at 35% 35%,#fff 0%,currentColor 48%,#0f172a99 100%);width:10px;height:10px}.fantasy-lane-projectile--fireball .fantasy-lane-projectile-core{background:radial-gradient(circle at 35% 35%,#fef3c7 0%,currentColor 55%,#991b1b 100%);width:12px;height:12px;box-shadow:0 0 14px}.fantasy-lane-projectile--spark .fantasy-lane-projectile-core{clip-path:polygon(0 60%,16% 26%,34% 48%,47% 0,66% 40%,84% 18%,100% 48%,86% 100%,64% 66%,48% 100%,34% 60%,16% 80%);background:linear-gradient(90deg,#0000 0%,currentColor 18%,#fef08a 58%,currentColor 100%);border-radius:0;width:18px;height:8px}.fantasy-lane-projectile--javelin .fantasy-lane-projectile-core{clip-path:polygon(0 50%,16% 12%,84% 12%,100% 50%,84% 88%,16% 88%);background:linear-gradient(90deg,#0000 0%,currentColor 14% 100%);border-radius:0;width:14px;height:3px}.fantasy-lane-projectile--shard .fantasy-lane-projectile-core{clip-path:polygon(0 50%,24% 0,100% 50%,24% 100%);background:linear-gradient(90deg,#fff3,currentColor 28%,#e0f2fe 100%);border-radius:0;width:14px;height:6px}.fantasy-lane-projectile--holy_bolt .fantasy-lane-projectile-core{background:radial-gradient(circle at 35% 35%,#fef3c7 0%,#fbbf24 55%,#b45309 100%);width:10px;height:10px;box-shadow:0 0 12px #fbbf24}.fantasy-lane-projectile--leaf .fantasy-lane-projectile-core{background:linear-gradient(135deg,#4ade80 0%,#166534 100%);border-radius:50% 0;width:12px;height:8px;box-shadow:0 0 8px #22c55e}.fantasy-lane-projectile--element_orb .fantasy-lane-projectile-core{background:conic-gradient(#ef4444,#3b82f6,#22c55e,#ef4444);border-radius:50%;width:14px;height:14px;animation:1s linear infinite elementSpin;box-shadow:0 0 12px #6366f199}@keyframes elementSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fantasy-lane-projectile--heal_beam .fantasy-lane-projectile-core{background:linear-gradient(#fff 0%,#dcfce7 100%);border-radius:4px;width:8px;height:16px;box-shadow:0 0 10px #22c55e}.fantasy-lane-projectile--bomb .fantasy-lane-projectile-core{background:radial-gradient(circle at 35% 35%,#92400e 0%,#78350f 60%,#451a03 100%);border-radius:50%;width:12px;height:12px;box-shadow:0 0 8px #ef4444}.fantasy-lane-projectile--slash .fantasy-lane-projectile-core{clip-path:polygon(0 50%,20% 0,80% 0,100% 50%,80% 100%,20% 100%);background:linear-gradient(90deg,#0000 0%,#e5e7eb 30%,#fbbf24 70%,#0000 100%);border-radius:0;width:20px;height:4px}.fantasy-lane-projectile--gust .fantasy-lane-projectile-core{opacity:.8;background:linear-gradient(90deg,#0000 0%,#38bdf8 40%,#e0f2fe 100%);border-radius:50%;width:16px;height:6px}.fantasy-lane-projectile--stone .fantasy-lane-projectile-core{background:linear-gradient(135deg,#9ca3af 0%,#4b5563 100%);border-radius:2px;width:10px;height:10px;box-shadow:0 0 6px #6b7280}.fantasy-lane-projectile.is-air .fantasy-lane-projectile-core{filter:drop-shadow(0 0 6px)}.fantasy-lane-impact{opacity:.72;pointer-events:none;border:2px solid;border-radius:999px;width:18px;height:18px;animation:.32s ease-out forwards fantasy-lane-impact-pulse;transform:translate(-50%,-50%)}.fantasy-lane-impact--aoe{border-width:3px;width:40px;height:40px;animation:.5s ease-out forwards aoeExplosion}.fantasy-lane-impact--aoe:before{opacity:.5;border:2px solid;border-radius:50%;width:60px;height:60px;animation:.5s ease-out forwards aoeRing}.fantasy-lane-impact--aoe:after{opacity:.8;background:currentColor;border-radius:50%;width:20px;height:20px;animation:.3s ease-out forwards aoeCore}@keyframes aoeExplosion{0%{opacity:1;transform:translate(-50%,-50%)scale(.3)}50%{opacity:.8;transform:translate(-50%,-50%)scale(1.2)}to{opacity:0;transform:translate(-50%,-50%)scale(1.5)}}@keyframes aoeRing{0%{opacity:.8;transform:translate(-50%,-50%)scale(.5)}to{opacity:0;transform:translate(-50%,-50%)scale(2)}}@keyframes aoeCore{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.5)}}.fantasy-lane-impact--physical{background:radial-gradient(circle,#9ca3af 0%,#0000 70%)}.fantasy-lane-impact--physical:after{background:#6b7280;box-shadow:0 0 8px #9ca3af}.fantasy-lane-impact--magic{background:radial-gradient(circle,#a78bfa 0%,#0000 70%)}.fantasy-lane-impact--magic:after{background:#8b5cf6;box-shadow:0 0 10px #a78bfa}.fantasy-lane-impact--pierce{background:radial-gradient(circle,#60a5fa 0%,#0000 70%)}.fantasy-lane-impact--pierce:after{background:linear-gradient(90deg,#0000,#3b82f6,#0000);border-radius:2px;width:24px;height:4px;box-shadow:0 0 8px #60a5fa}.fantasy-lane-impact--blast{background:radial-gradient(circle,#fb923c 0%,#0000 70%)}.fantasy-lane-impact--blast:after{background:#ef4444;box-shadow:0 0 12px #fb923c}.fantasy-lane-impact--siege{background:radial-gradient(circle,#92400e 0%,#0000 70%)}.fantasy-lane-impact--siege:after{background:#78350f;box-shadow:0 0 8px #92400e}.fantasy-lane-impact--antiAir{background:radial-gradient(circle,#22d3ee 0%,#0000 70%)}.fantasy-lane-impact--antiAir:after{background:#06b6d4;box-shadow:0 0 10px #22d3ee}.fantasy-lane-impact:before,.fantasy-lane-impact:after{content:"";pointer-events:none;position:absolute;inset:50%;transform:translate(-50%,-50%)}.fantasy-lane-impact:before{background:radial-gradient(circle,currentColor 0%,#ffffff1a 70%,#0000 100%);border-radius:999px;width:60%;height:60%}.fantasy-lane-impact--hit:after{background:linear-gradient(90deg,#0000 0 34%,currentColor 34% 66%,#0000 66% 100%),linear-gradient(0deg,#0000 0 34%,currentColor 34% 66%,#0000 66% 100%);border-radius:0;width:22px;height:22px;transform:translate(-50%,-50%)rotate(45deg)}.fantasy-lane-impact--aoe{width:30px;height:30px}.fantasy-lane-impact--aoe:after{opacity:.35;border:2px solid;border-radius:999px;width:42px;height:42px}.fantasy-lane-impact--skill{width:40px;height:40px}.fantasy-lane-impact--skill:after{opacity:.42;border:2px dashed;border-radius:999px;width:54px;height:54px}.fantasy-lane-battlefield--critical .fantasy-lane-clash-line span,.fantasy-lane-result-card--critical .fantasy-lane-result-badge{box-shadow:0 0 0 1px #dc26263d,0 0 14px #dc26262e}.fantasy-lane-battlefield--warning .fantasy-lane-clash-line span{box-shadow:0 0 0 1px #f59e0b33,0 0 12px #f59e0b29}.fantasy-lane-impact.is-air{z-index:4}.fantasy-lane-unit-card{border:1px solid var(--fantasy-lane-border);text-align:left;background:linear-gradient(#fff 0%,#f8fafc 100%);border-radius:10px;flex-direction:column;gap:8px;padding:12px;transition:all .2s;display:flex}.fantasy-lane-unit-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f}.fantasy-lane-unit-card.is-active{border-color:var(--fantasy-lane-player-accent);background:#eff6ff;box-shadow:inset 0 0 0 1px #2563eb1a}.fantasy-lane-unit-card.is-cooling{opacity:.64}.fantasy-lane-unit-card-header{align-items:flex-start;gap:12px;display:flex}.fantasy-lane-unit-card-icon{background:linear-gradient(#f8fafc 0%,#fff 100%);border:1px solid #94a3b833;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.fantasy-lane-unit-card-title{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.fantasy-lane-unit-card-name-row{align-items:center;gap:8px;display:flex}.fantasy-lane-unit-card-name-row strong{color:#0f172a;font-size:15px;font-weight:600}.fantasy-lane-unit-card-icon-text{opacity:.8;font-size:16px}.fantasy-lane-unit-card-tags{flex-wrap:wrap;gap:4px;display:flex}.fantasy-lane-tag{border-radius:4px;align-items:center;padding:2px 8px;font-size:11px;font-weight:500;line-height:1.4;display:inline-flex}.fantasy-lane-tag--primary{color:#4338ca;background:#e0e7ff}.fantasy-lane-tag--role-fighter{color:#dc2626;background:#fee2e2}.fantasy-lane-tag--role-sniper{color:#16a34a;background:#dcfce7}.fantasy-lane-tag--role-caster{color:#9333ea;background:#f3e8ff}.fantasy-lane-tag--role-siege{color:#ea580c;background:#ffedd5}.fantasy-lane-tag--role-air_sup{color:#0891b2;background:#cffafe}.fantasy-lane-tag--role-finisher{color:#d97706;background:#fef3c7}.fantasy-lane-tag--secondary{color:#64748b;background:#f1f5f9}.fantasy-lane-tag--feature{color:#a16207;background:#fef9c3}.fantasy-lane-tag--target{color:#059669;background:#ecfdf5}.fantasy-lane-unit-card-desc{color:#64748b;min-height:18px;font-size:12px;line-height:1.5}.fantasy-lane-unit-card-stats{border-top:1px solid #e2e8f0;flex-wrap:wrap;gap:12px;padding-top:8px;display:flex}.fantasy-lane-unit-stat{color:#64748b;font-size:12px}.fantasy-lane-unit-stat strong{color:#0f172a;font-weight:600}.fantasy-lane-unit-stars{color:#fbbf24}.fantasy-lane-unit-fragments{color:#8b5cf6}.fantasy-lane-unit--locked{opacity:.6}.fantasy-lane-unit--locked .fantasy-lane-unit-card-icon{background:#f1f5f9}.fantasy-lane-locked-icon{color:#94a3b8;font-size:24px}.fantasy-lane-unlock-hint{color:#94a3b8;font-size:11px}.fantasy-lane-unit-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.fantasy-lane-unit-grid--compact{grid-template-columns:1fr}.fantasy-lane-unit-card--compact{gap:6px;padding:8px}.fantasy-lane-unit-card--compact .fantasy-lane-unit-card-header{gap:8px}.fantasy-lane-unit-card--compact .fantasy-lane-unit-card-icon{width:48px;height:48px}.fantasy-lane-unit-card--compact .fantasy-lane-unit-card-name-row strong{font-size:13px}.fantasy-lane-unit-card--compact .fantasy-lane-unit-card-icon-text{font-size:14px}.fantasy-lane-unit-card--compact .fantasy-lane-tag{padding:1px 6px;font-size:10px}.fantasy-lane-unit-card--compact .fantasy-lane-unit-card-stats{gap:8px;padding-top:6px}.fantasy-lane-unit-card--compact .fantasy-lane-unit-stat{font-size:11px}.fantasy-lane-unit-card-preview{background:linear-gradient(#f8fafc 0%,#fff 100%);border:1px solid #94a3b833;border-radius:8px;justify-content:center;align-items:center;min-height:68px;display:flex}.fantasy-lane-unit-card-preview--compact{min-height:58px}.fantasy-lane-unit-card-body{flex-direction:column;gap:4px;min-width:0;display:flex}.fantasy-lane-unit-card-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.fantasy-lane-unit-card-head strong{color:#0f172a;font-size:12px}.fantasy-lane-unit-card-head small,.fantasy-lane-unit-card-body span,.fantasy-lane-unit-facts small{color:#475569}.fantasy-lane-unit-card-body span{font-size:11px}.fantasy-lane-unit-flags,.fantasy-lane-unit-facts{flex-wrap:wrap;gap:6px;display:flex}.fantasy-lane-unit-flags span,.fantasy-lane-unit-facts small{background:#f8fafcf5;border:1px solid #dbe3ef;border-radius:999px;align-items:center;min-height:22px;padding:0 7px;font-size:10px;display:inline-flex}.fantasy-lane-level-summary{border:1px solid var(--fantasy-lane-border-soft);background:linear-gradient(#f8fafceb 0%,#fffffff5 100%);border-radius:8px;padding:10px}.fantasy-lane-level-summary-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.fantasy-lane-level-summary-head h4{margin:0}.fantasy-lane-level-summary-head strong{color:#334155;font-size:11px}.fantasy-lane-level-summary-text{color:#475569;margin:0 0 8px;font-size:11px;line-height:1.5}.fantasy-lane-warning-chip--neutral{color:#1d4ed8;background:#eff6ff;border-color:#dbeafe}.fantasy-lane-roster-card-preview{background:linear-gradient(#f8fafc 0%,#fff 100%);border:1px solid #94a3b82e;border-radius:8px;justify-content:center;align-items:center;min-height:76px;display:flex}.fantasy-lane-unit-sprite{filter:drop-shadow(0 4px 6px #0f172a24);display:block}.fantasy-lane-footer-note{padding-top:2px}.fantasy-lane-footer-note strong{color:#334155;font-size:11px}.fantasy-lane-result-overlay{z-index:12;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a38;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.fantasy-lane-result-card{border:1px solid var(--fantasy-lane-border);background:#fff;border-radius:10px;flex-direction:column;gap:12px;width:min(680px,100%);padding:16px;display:flex;box-shadow:0 18px 48px #0f172a2e}.fantasy-lane-result-badge{border-radius:999px;align-self:flex-start;align-items:center;min-height:24px;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.fantasy-lane-result-badge--won{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.fantasy-lane-result-badge--lost{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.fantasy-lane-result-card h3{margin:0;font-size:16px}.fantasy-lane-result-context{gap:4px;display:grid}.fantasy-lane-result-context strong{color:#0f172a;font-size:13px}.fantasy-lane-result-context span{color:#475569;font-size:11px}.fantasy-lane-result-stars{color:#f59e0b;font-size:24px}.fantasy-lane-result-grid div{justify-content:center;gap:6px;min-width:84px}.fantasy-lane-result-grid strong{color:#0f172a}.fantasy-lane-result-tips{color:#475569;gap:4px;font-size:12px;display:grid}.fantasy-lane-info-sheet{flex-direction:column;gap:10px;padding:10px;display:flex}.fantasy-lane-info-panel{flex-direction:column;gap:10px;padding:12px;display:flex}.fantasy-lane-info-panel strong,.fantasy-lane-roster-card strong,.fantasy-lane-level-card strong,.fantasy-lane-mini-card strong{color:#0f172a}.fantasy-lane-level-card span,.fantasy-lane-level-card small,.fantasy-lane-mini-card span,.fantasy-lane-mini-card small,.fantasy-lane-roster-card p,.fantasy-lane-roster-card small,.fantasy-lane-roster-card span{color:#475569}@keyframes fantasy-lane-impact-pulse{0%{opacity:.8;transform:translate(-50%,-50%)scale(.5)}to{opacity:0;transform:translate(-50%,-50%)scale(1.8)}}@keyframes fantasy-lane-alert-pulse{0%{opacity:.45}to{opacity:.9}}.fantasy-lane-btn:focus-visible,.fantasy-lane-link-btn:focus-visible,.fantasy-lane-tabset button:focus-visible,.fantasy-lane-chip:focus-visible,.fantasy-lane-level-card:focus-visible,.fantasy-lane-mini-card:focus-visible,.fantasy-lane-unit-card:focus-visible,.fantasy-lane-skill-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}@media (width<=1100px){.fantasy-lane-layout,.fantasy-lane-hud{grid-template-columns:1fr}.fantasy-lane-hud-group--metrics,.fantasy-lane-hud-group--wide,.fantasy-lane-hud-group--briefing{grid-template-columns:repeat(2,minmax(0,1fr))}.fantasy-lane-hud-group--wide{justify-content:flex-start}.fantasy-lane-frontline-meter{grid-column:1/-1}.fantasy-lane-battlefield{min-height:380px}}@media (width<=760px){.fantasy-lane-sheet,.fantasy-lane-info-sheet,.fantasy-lane-sidebar,.fantasy-lane-main,.fantasy-lane-info-panel{padding:8px}.fantasy-lane-main-head,.fantasy-lane-sidebar-toolbar,.fantasy-lane-info-panel--header{flex-direction:column;align-items:stretch}.fantasy-lane-skill-grid,.fantasy-lane-hud-group--briefing,.fantasy-lane-hud-group--metrics,.fantasy-lane-hud-group--wide{grid-template-columns:1fr}.fantasy-lane-hud-actions .fantasy-lane-btn,.fantasy-lane-result-actions .fantasy-lane-btn,.fantasy-lane-skill-stack .fantasy-lane-skill-btn{flex:140px}.fantasy-lane-battlefield{min-height:340px}.fantasy-lane-battlefield-stage-banner{min-width:calc(100% - 32px);top:36px}.fantasy-lane-unit{width:64px}.fantasy-lane-battlefield-counter span,.fantasy-lane-battlefield-marker span{font-size:10px}.fantasy-lane-battlefield-base{width:64px;min-height:84px}.fantasy-lane-unit-card{grid-template-columns:74px minmax(0,1fr)}}.fantasy-lane-roster-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.fantasy-lane-roster-toolbar h3{margin:0}.fantasy-lane-roster-filters{gap:6px;display:flex}.fantasy-lane-roster-filter{border:1px solid var(--fantasy-lane-border);cursor:pointer;color:var(--fantasy-lane-text-muted);background:#fff;border-radius:4px;padding:4px 10px;font-size:11px}.fantasy-lane-roster-filter.is-active{background:var(--fantasy-lane-player-accent);color:#fff;border-color:var(--fantasy-lane-player-accent)}.fantasy-lane-roster-filter--ground.is-active{background:#16a34a;border-color:#16a34a}.fantasy-lane-roster-filter--air.is-active{background:#2563eb;border-color:#2563eb}.fantasy-lane-roster-unlock-filters{color:var(--fantasy-lane-text-muted);align-items:center;gap:6px;font-size:11px;display:flex}.fantasy-lane-roster-unlock-filter{border:1px solid var(--fantasy-lane-border);cursor:pointer;color:var(--fantasy-lane-text-muted);background:#fff;border-radius:4px;padding:4px 10px;font-size:11px}.fantasy-lane-roster-unlock-filter.is-active{color:#fff;background:#7c3aed;border-color:#7c3aed}.fantasy-lane-roster-section{margin-top:12px}.fantasy-lane-roster-section-header{color:#fff;border-radius:4px 4px 0 0;padding:6px 10px;font-size:12px;font-weight:600}.fantasy-lane-roster-section-header--ground{background:#16a34a}.fantasy-lane-roster-section-header--air{background:#2563eb}.fantasy-lane-roster-table,.fantasy-lane-hero-table,.fantasy-lane-tactical-table,.fantasy-lane-chapter-table,.fantasy-lane-level-table{border:1px solid var(--fantasy-lane-border);border-radius:6px;flex-direction:column;display:flex;overflow:hidden}.fantasy-lane-roster-table-header,.fantasy-lane-hero-table-header,.fantasy-lane-tactical-table-header,.fantasy-lane-chapter-table-header,.fantasy-lane-level-table-header{color:#475569;border-bottom:1px solid var(--fantasy-lane-border);background:#f1f5f9;font-size:11px;font-weight:600;display:grid}.fantasy-lane-roster-table-header{grid-template-columns:48px 1fr 80px 70px 50px 50px 70px 70px 80px}.fantasy-lane-hero-table-header{grid-template-columns:100px 1fr 1fr 80px}.fantasy-lane-tactical-table-header{grid-template-columns:120px 1fr 80px}.fantasy-lane-chapter-table-header{grid-template-columns:50px 1fr 80px 120px}.fantasy-lane-level-table-header{grid-template-columns:50px 1fr 80px 80px 80px}.fantasy-lane-roster-table-header span,.fantasy-lane-hero-table-header span,.fantasy-lane-tactical-table-header span,.fantasy-lane-chapter-table-header span,.fantasy-lane-level-table-header span{padding:8px 10px}.fantasy-lane-roster-table-row,.fantasy-lane-hero-table-row,.fantasy-lane-tactical-table-row,.fantasy-lane-chapter-table-row,.fantasy-lane-level-table-row{cursor:pointer;text-align:left;background:#fff;border-bottom:1px solid #e2e8f0;align-items:center;padding:8px 10px;font-size:11px;display:grid}.fantasy-lane-roster-table-row:last-child,.fantasy-lane-hero-table-row:last-child,.fantasy-lane-tactical-table-row:last-child,.fantasy-lane-chapter-table-row:last-child,.fantasy-lane-level-table-row:last-child{border-bottom:none}.fantasy-lane-roster-table-row.is-alt,.fantasy-lane-hero-table-row.is-alt,.fantasy-lane-tactical-table-row.is-alt,.fantasy-lane-chapter-table-row.is-alt,.fantasy-lane-level-table-row.is-alt{background:#f8fafc}.fantasy-lane-roster-table-row.is-active,.fantasy-lane-chapter-table-row.is-active,.fantasy-lane-level-table-row.is-active{border-left:3px solid var(--fantasy-lane-player-accent);background:#eff6ff}.fantasy-lane-roster-table-row{grid-template-columns:48px 1fr 80px 70px 50px 50px 70px 70px 80px}.fantasy-lane-hero-table-row{grid-template-columns:100px 1fr 1fr 80px}.fantasy-lane-tactical-table-row{grid-template-columns:120px 1fr 80px}.fantasy-lane-chapter-table-row{grid-template-columns:50px 1fr 80px 120px}.fantasy-lane-level-table-row{grid-template-columns:50px 1fr 80px 80px 80px}.fantasy-lane-roster-table-row span,.fantasy-lane-hero-table-row span,.fantasy-lane-tactical-table-row span,.fantasy-lane-chapter-table-row span,.fantasy-lane-level-table-row span{padding:4px 6px}.fantasy-lane-roster-table-row small,.fantasy-lane-hero-table-row small,.fantasy-lane-chapter-table-row small,.fantasy-lane-level-table-row small{color:#64748b;font-size:10px;display:block}.fantasy-lane-unit--locked{opacity:.5;filter:grayscale();pointer-events:none}.fantasy-lane-locked-icon{color:#94a3b8;background:#e2e8f0;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;font-weight:700;display:flex}.fantasy-lane-unlock-hint{color:#94a3b8;font-style:italic}.fantasy-lane-unit-stars{letter-spacing:1px;font-size:10px}.fantasy-lane-unit-fragments{color:#7c3aed;font-size:10px;font-weight:500}.fantasy-lane-unit-actions{border-top:1px dashed #dbe4f0;justify-content:space-between;align-items:center;gap:12px;padding-top:6px;display:flex}.fantasy-lane-unit-bonus{color:#1d4ed8;font-size:11px;font-weight:500;line-height:1.4}.fantasy-lane-roster-col-stars,.fantasy-lane-roster-col-fragments{color:var(--fantasy-lane-text-muted);justify-content:center;align-items:center;font-size:10px;display:flex}.fantasy-lane-tag{border-radius:3px;padding:2px 6px;font-size:10px;font-weight:500;display:inline-block}.fantasy-lane-tag--role-dps{color:#b91c1c;background:#fee2e2}.fantasy-lane-tag--role-tank{color:#1d4ed8;background:#dbeafe}.fantasy-lane-tag--role-support{color:#166534;background:#dcfce7}.fantasy-lane-tag--role-control{color:#b45309;background:#fef3c7}.fantasy-lane-tag--range-melee{color:#b91c1c;background:#fee2e2}.fantasy-lane-tag--range-short{color:#c2410c;background:#ffedd5}.fantasy-lane-tag--range-medium{color:#a16207;background:#fef3c7}.fantasy-lane-tag--range-long{color:#1d4ed8;background:#dbeafe}.fantasy-lane-tag--range-ultra{color:#7c3aed;background:#f3e8ff}.fantasy-lane-tag--status-completed{color:#166534;background:#dcfce7}.fantasy-lane-tag--status-unlocked{color:#1d4ed8;background:#dbeafe}.fantasy-lane-tag--status-locked{color:#94a3b8;background:#f1f5f9}.fantasy-lane-tag--chapter-0{color:#166534;background:#dcfce7}.fantasy-lane-tag--chapter-1{color:#1d4ed8;background:#dbeafe}.fantasy-lane-tag--chapter-2{color:#a16207;background:#fef3c7}.fantasy-lane-tag--chapter-3{color:#7c3aed;background:#f3e8ff}.fantasy-lane-tag--chapter-4{color:#b91c1c;background:#fee2e2}.fantasy-lane-progress-bar{background:#e2e8f0;border-radius:3px;height:6px;overflow:hidden}.fantasy-lane-progress-bar-fill{background:linear-gradient(90deg,#f59e0b,#fbbf24);border-radius:3px;height:100%;transition:width .3s}.fantasy-lane-progress-bar-fill.is-complete{background:linear-gradient(90deg,#16a34a,#22c55e)}.fantasy-lane-progress-overview{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.fantasy-lane-progress-stat{border:1px solid var(--fantasy-lane-border);background:#f8fafc;border-radius:6px;flex-direction:column;gap:4px;padding:10px;display:flex}.fantasy-lane-progress-label{color:#64748b;font-size:10px}.fantasy-lane-progress-stat strong{color:#0f172a;font-size:14px}.fantasy-lane-chapter-progress-detail{color:#475569;gap:16px;margin-bottom:12px;font-size:12px;display:flex}.fantasy-lane-level-detail-table{flex-direction:column;gap:8px;display:flex}.fantasy-lane-level-detail-row{border-bottom:1px solid #e2e8f0;grid-template-columns:100px 1fr;gap:12px;padding:8px 0;font-size:12px;display:grid}.fantasy-lane-level-detail-row:last-child{border-bottom:none}.fantasy-lane-level-detail-label{color:#64748b;font-weight:500}.fantasy-lane-level-detail-value{color:#0f172a}.fantasy-lane-rewards{background:#f8fafc;border-radius:8px;flex-direction:column;gap:12px;margin-top:12px;padding:16px;display:flex}.fantasy-lane-rewards-title{color:#1e293b;font-size:14px;font-weight:600}.fantasy-lane-rewards-list{flex-wrap:wrap;gap:12px;display:flex}.fantasy-lane-reward-unit{text-align:center;background:#fff;border:2px solid #fbbf24;border-radius:8px;width:100px;padding:8px;animation:1.5s ease-out rewardFlyIn;position:relative}.fantasy-lane-reward-unit:after{content:"新！";color:#fff;background:#fbbf24;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600;animation:1.5s infinite glowPulse;position:absolute;top:-8px;right:-8px}.fantasy-lane-reward-unit-name{color:#1e293b;margin-top:4px;font-size:11px;font-weight:500}.fantasy-lane-reward-unit-hint{color:#64748b;margin-top:2px;font-size:9px}.fantasy-lane-reward-fragment{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;width:80px;padding:8px}.fantasy-lane-reward-fragment-icon{font-size:20px}.fantasy-lane-reward-fragment-name{color:#64748b;margin-top:4px;font-size:10px}.fantasy-lane-reward-fragment-count{color:#3b82f6;margin-top:2px;font-size:12px;font-weight:600}.fantasy-lane-unit--locked{opacity:.4;filter:grayscale();cursor:not-allowed}.fantasy-lane-unit--locked .fantasy-lane-unit-icon{color:#94a3b8;justify-content:center;align-items:center;font-size:24px;display:flex}.fantasy-lane-unit--locked .fantasy-lane-unit-name{color:#64748b}.fantasy-lane-unit--locked .fantasy-lane-unit-hint{color:#94a3b8;margin-top:4px;font-size:10px}@keyframes rewardFlyIn{0%{opacity:0;transform:translateY(-30px)scale(.8)}50%{opacity:1;transform:translateY(5px)scale(1.05)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes glowPulse{0%,to{box-shadow:0 0 4px #fbbf2466}50%{box-shadow:0 0 12px #fbbf24cc}}.fantasy-lane-loadout-presets{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.fantasy-lane-loadout-preset{align-items:center;gap:4px;display:inline-flex}.fantasy-lane-roster-progress{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.fantasy-lane-unit-intel{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.fantasy-lane-unit-intel span{color:#475569;background:#f8fafcf5;border:1px solid #dbe3ef;border-radius:999px;align-items:center;min-height:20px;padding:0 6px;font-size:10px;display:inline-flex}.fantasy-lane-roster-toolbar--expanded{flex-direction:column;align-items:stretch;gap:8px}.fantasy-lane-roster-toolbar-main{justify-content:space-between;align-items:center;gap:12px;display:flex}.fantasy-lane-roster-count,.fantasy-lane-empty-hint{color:#64748b;font-size:12px}.fantasy-lane-empty-hint{padding:12px 0 4px}.fantasy-lane-roster-filter-grid{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.fantasy-lane-roster-filter-group{align-items:center;gap:6px;min-width:0;display:inline-flex}.fantasy-lane-roster-filter-label{color:#475569;white-space:nowrap;flex:none;font-size:11px;font-weight:600}.fantasy-lane-roster-filter-select{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:4px;min-width:88px;height:26px;padding:0 24px 0 8px;font-size:11px;line-height:24px}.fantasy-lane-roster-filter-select:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 2px #2563eb1f}.fantasy-lane-roster-filter-apply{align-self:center;height:26px;padding:0 10px}.fantasy-lane-roster-unit-card{gap:10px}.fantasy-lane-roster-unit-meta,.fantasy-lane-roster-unit-facts{flex-wrap:wrap;gap:6px;display:flex}.fantasy-lane-roster-unit-meta-item,.fantasy-lane-roster-unit-facts span{color:#475569;background:#f8fafcf5;border:1px solid #dbe3ef;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:11px;display:inline-flex}.fantasy-lane-roster-unit-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.fantasy-lane-roster-unit-metric,.fantasy-lane-result-stat-card,.fantasy-lane-result-identity-card,.fantasy-lane-result-detail-card{background:#fbfdff;border:1px solid #dbe3ef;border-radius:8px;gap:4px;padding:8px 10px;display:grid}.fantasy-lane-roster-unit-metric span,.fantasy-lane-result-stat-card span,.fantasy-lane-result-identity-card span,.fantasy-lane-result-detail-card span{color:#64748b;font-size:10px}.fantasy-lane-roster-unit-metric strong,.fantasy-lane-result-stat-card strong,.fantasy-lane-result-identity-card strong,.fantasy-lane-result-detail-card strong{color:#0f172a;font-size:13px}.fantasy-lane-unit-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:2px;display:flex}.fantasy-lane-unit-bonus{color:#475569;font-size:11px}.fantasy-lane-hero-table-header--wide,.fantasy-lane-hero-table-row--wide{grid-template-columns:120px 120px 1.4fr 1.4fr 90px}.fantasy-lane-hero-col-skillid{color:#64748b}.fantasy-lane-result-card--won{border-color:#107c4152}.fantasy-lane-result-card--lost{border-color:#b91c1c47}.fantasy-lane-result-summarybar{border-bottom:1px solid #94a3b83d;justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;display:flex}.fantasy-lane-result-summarybar-main{align-items:center;gap:12px;min-width:0;display:flex}.fantasy-lane-result-summarybar-main strong{color:#0f172a;font-size:15px}.fantasy-lane-result-summarybar-meta{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.fantasy-lane-result-summarybar-meta span{color:#475569;background:#f8fafcf5;border:1px solid #94a3b838;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:11px;display:inline-flex}.fantasy-lane-result-table{color:#e2e8f0;background:#0c1226f0;border:1px solid #94a3b83d;border-radius:10px;gap:0;display:grid;overflow:hidden}.fantasy-lane-result-table-header,.fantasy-lane-result-table-row{grid-template-columns:minmax(180px,1.1fr) 120px repeat(3,minmax(0,1fr));display:grid}.fantasy-lane-result-table-header{background:#1e293bf0;border-bottom:1px solid #60a5fa2e}.fantasy-lane-result-table-header span{color:#cbd5e1;padding:10px 12px;font-size:12px;font-weight:600}.fantasy-lane-result-table-row{background:linear-gradient(90deg,#1e293bf5 0%,#252e52eb 100%);border-bottom:1px solid #60a5fa1f;min-height:88px}.fantasy-lane-result-table-row.is-alt{background:linear-gradient(90deg,#18223ef5 0%,#212a46eb 100%)}.fantasy-lane-result-table-row.is-highlight{background:linear-gradient(90deg,#781c36f5 0%,#6c345feb 100%)}.fantasy-lane-result-player-cell,.fantasy-lane-result-main-cell,.fantasy-lane-result-metric-cell{padding:10px 12px}.fantasy-lane-result-player-cell{border-right:1px solid #60a5fa1f;align-items:center;gap:12px;display:flex}.fantasy-lane-result-avatar{color:#f8fafc;background:linear-gradient(135deg,#fbbf242e 0%,#f472b61f 100%);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;font-weight:800;display:flex}.fantasy-lane-result-avatar--highlight{color:#fff7ed;background:linear-gradient(135deg,#f59e0b 0%,#f97316 100%)}.fantasy-lane-result-player-meta{gap:4px;min-width:0;display:grid}.fantasy-lane-result-player-meta strong{color:#f8fafc;font-size:15px}.fantasy-lane-result-player-meta span,.fantasy-lane-result-main-cell span,.fantasy-lane-result-metric-head span{color:#cbd5e1;font-size:11px}.fantasy-lane-result-main-cell{border-right:1px solid #60a5fa1f;align-content:center;gap:6px;display:grid}.fantasy-lane-result-main-cell strong{color:#f8fafc;font-size:36px;line-height:1}.fantasy-lane-result-metric-cell{border-right:1px solid #60a5fa1a;align-content:center;gap:8px;display:grid}.fantasy-lane-result-table-row>:last-child{border-right:none}.fantasy-lane-result-metric-head{gap:4px;display:grid}.fantasy-lane-result-metric-head strong{color:#f8fafc;font-size:22px;line-height:1}.fantasy-lane-result-metric-bar{background:#0f172ab8;border-radius:3px;height:18px;position:relative;overflow:hidden}.fantasy-lane-result-metric-fill{border-radius:inherit;position:absolute;inset:0 auto 0 0}.fantasy-lane-result-metric-fill--red{background:linear-gradient(90deg,#be123c 0%,#ef4444 100%)}.fantasy-lane-result-metric-fill--blue{background:linear-gradient(90deg,#1d4ed8 0%,#60a5fa 100%)}.fantasy-lane-result-metric-fill--gold{background:linear-gradient(90deg,#b45309 0%,#f59e0b 100%)}.fantasy-lane-result-metric-fill--green{background:linear-gradient(90deg,#15803d 0%,#22c55e 100%)}.fantasy-lane-result-metric-bar small{color:#f8fafc;align-items:center;font-size:11px;font-weight:700;display:flex;position:absolute;inset:0 8px 0 auto}.fantasy-lane-result-footbar{gap:10px;display:grid}.fantasy-lane-result-footbar-group{gap:8px;display:grid}.fantasy-lane-result-footbar-group>span{color:#334155;font-size:12px;font-weight:600}.fantasy-lane-result-footbar-items{flex-wrap:wrap;gap:8px;display:flex}.fantasy-lane-result-chip{background:#f8fafcf5;border:1px solid #94a3b83d;border-radius:999px;align-items:center;gap:8px;min-height:32px;padding:4px 10px 4px 6px;display:inline-flex}.fantasy-lane-result-chip strong,.fantasy-lane-result-footbar-empty{color:#334155;font-size:11px}@media (width<=980px){.fantasy-lane-roster-unit-metrics,.fantasy-lane-result-table-header,.fantasy-lane-result-table-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.fantasy-lane-roster-toolbar-main,.fantasy-lane-result-summarybar,.fantasy-lane-result-summarybar-main{flex-direction:column;align-items:stretch}.fantasy-lane-roster-unit-metrics,.fantasy-lane-result-table-header,.fantasy-lane-result-table-row{grid-template-columns:1fr}.fantasy-lane-result-table-header{display:none}.fantasy-lane-result-table-row{border-bottom:1px solid #60a5fa1f}.fantasy-lane-result-player-cell,.fantasy-lane-result-main-cell,.fantasy-lane-result-metric-cell{border-bottom:1px solid #60a5fa14;border-right:none}.fantasy-lane-result-table-row>:last-child{border-bottom:none}}.fantasy-lane-unit-card--expanded{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626}.fantasy-lane-expand-indicator{color:#64748b;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin-left:auto;font-size:10px;display:inline-flex}.fantasy-lane-unit-card--expanded .fantasy-lane-expand-indicator{color:#3b82f6}.fantasy-lane-unit-details{border-top:1px dashed var(--fantasy-lane-border-soft);margin-top:10px;padding-top:10px;animation:.2s ease-out fantasy-lane-expand-fade}@keyframes fantasy-lane-expand-fade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.fantasy-lane-hero-icon{align-items:center;margin-right:6px;font-size:18px;line-height:1;display:inline-flex}.fantasy-lane-hero-col-name{align-items:center;display:flex}.fantasy-lane-tactical-icon{align-items:center;margin-right:6px;font-size:18px;line-height:1;display:inline-flex}.fantasy-lane-tactical-col-name{align-items:center;display:flex}.fantasy-lane-result-core-stats{border:1px solid var(--fantasy-lane-border-soft);background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border-radius:12px;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0;padding:16px;display:grid}.fantasy-lane-result-stat{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.fantasy-lane-result-stat-label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-size:11px}.fantasy-lane-result-stat strong{color:#0f172a;font-size:20px;font-weight:700}.fantasy-lane-result-stat-sub{color:#94a3b8;font-size:10px}.fantasy-lane-result-deployment{margin:16px 0}.fantasy-lane-result-deployment h4{color:#475569;border-bottom:1px solid var(--fantasy-lane-border-soft);margin:0 0 10px;padding-bottom:6px;font-size:13px}.fantasy-lane-result-deployment-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;display:grid}.fantasy-lane-result-deployment-card{border:1px solid var(--fantasy-lane-border);text-align:center;background:#fff;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;display:flex}.fantasy-lane-result-deployment-card strong{color:#0f172a;font-size:11px}.fantasy-lane-result-deployment-card span{color:#64748b;font-size:10px}.fantasy-lane-result-economy{margin:16px 0}.fantasy-lane-result-economy h4{color:#475569;border-bottom:1px solid var(--fantasy-lane-border-soft);margin:0 0 10px;padding-bottom:6px;font-size:13px}.fantasy-lane-result-economy-items{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.fantasy-lane-result-economy-item{text-align:center;background:#f8fafc;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:10px;display:flex}.fantasy-lane-result-economy-item span{color:#64748b;font-size:10px}.fantasy-lane-result-economy-item strong{color:#0f172a;font-size:16px;font-weight:700}.fantasy-lane-result-skills{margin:16px 0}.fantasy-lane-result-skills h4{color:#475569;border-bottom:1px solid var(--fantasy-lane-border-soft);margin:0 0 10px;padding-bottom:6px;font-size:13px}.fantasy-lane-result-skill-items{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.fantasy-lane-result-skill-item{text-align:center;background:#f8fafc;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:10px;display:flex}.fantasy-lane-result-skill-item span{color:#64748b;font-size:10px}.fantasy-lane-result-skill-item strong{color:#0f172a;font-size:16px;font-weight:700}.fantasy-lane-result-failure-tips{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin:16px 0;padding:14px 16px}.fantasy-lane-result-failure-tips h4{color:#b91c1c;margin:0 0 8px;font-size:13px}.fantasy-lane-result-failure-tips ul{margin:0;padding:0 0 0 18px;list-style:outside}.fantasy-lane-result-failure-tips li{color:#7f1d1d;margin-bottom:4px;font-size:11px;line-height:1.5}.gold-miner-sheet,.gold-miner-guide{background:linear-gradient(#f8fafc 0%,#f1f5f9 100%);flex-direction:column;gap:16px;min-height:100%;padding:18px;display:flex}.gold-miner-hud,.gold-miner-guide__panel,.gold-miner-sheet__meta{background:#ffffffeb;border:1px solid #cbd5e1;border-radius:14px;box-shadow:0 14px 30px #0f172a14}.gold-miner-hud{justify-content:space-between;gap:16px;padding:16px 18px;display:flex}.gold-miner-hud__summary{grid-template-columns:repeat(7,minmax(0,1fr));gap:14px;width:100%;display:grid}.gold-miner-hud__summary div{flex-direction:column;gap:4px;display:flex}.gold-miner-hud__label{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:12px}.gold-miner-hud__actions,.gold-miner-overlay__actions,.gold-miner-sheet__mode-switch{align-items:center;gap:10px;display:flex}.gold-miner-btn,.gold-miner-pill,.gold-miner-shop__item{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:10px 14px;transition:transform .12s,box-shadow .12s}.gold-miner-btn:disabled,.gold-miner-shop__item:disabled{opacity:.52;cursor:not-allowed}.gold-miner-btn--accent,.gold-miner-pill.active{color:#fff;background:#d97706;border-color:#d97706}.gold-miner-sheet__meta{color:#334155;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.gold-miner-board{background:#e2e8f0;border:1px solid #cbd5e1;border-radius:20px;align-self:center;width:100%;max-width:920px;box-shadow:0 24px 50px #0f172a1f}.gold-miner-overlay{z-index:20;background:#0f172a73;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.gold-miner-overlay__panel{background:#fff;border-radius:20px;flex-direction:column;gap:18px;width:min(860px,100%);max-height:90vh;padding:24px;display:flex;overflow:auto;box-shadow:0 26px 60px #0f172a3d}.gold-miner-overlay__result{color:#475569;flex-wrap:wrap;gap:14px;display:flex}.gold-miner-shop,.gold-miner-guide__grid{gap:14px;display:grid}.gold-miner-shop__grid,.gold-miner-guide__grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.gold-miner-shop__item,.gold-miner-guide__card{text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:8px;padding:14px;display:flex}.gold-miner-guide__panel{padding:18px}@media (width<=1100px){.gold-miner-hud,.gold-miner-sheet__meta{flex-direction:column;align-items:stretch}.gold-miner-hud__summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.save-manager-overlay{z-index:2000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.save-manager-dialog{background:#fff;border-radius:4px;flex-direction:column;width:500px;max-height:80vh;display:flex;box-shadow:0 4px 20px #0003}.save-manager-header{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.save-manager-header h3{color:#333;margin:0;font-size:16px}.save-manager-close{cursor:pointer;color:#666;background:0 0;border:none;padding:4px 8px;font-size:18px}.save-manager-close:hover{color:#333}.save-manager-actions{border-bottom:1px solid #e0e0e0;padding:12px 20px}.save-manager-btn{cursor:pointer;background:#fff;border:1px solid #d4d4d4;border-radius:2px;padding:6px 16px;font-size:13px;transition:all .15s}.save-manager-btn:hover{background:#f5f5f5}.save-manager-btn.primary{color:#fff;background:#107c41;border-color:#107c41}.save-manager-btn.primary:hover{background:#0e6b38}.save-manager-btn.danger{color:#dc2626;border-color:#dc2626}.save-manager-btn.danger:hover{background:#fef2f2}.save-manager-btn.small{padding:4px 10px;font-size:12px}.save-manager-new-save{border-bottom:1px solid #e0e0e0;align-items:center;gap:8px;padding:12px 20px;display:flex}.save-manager-new-save input{border:1px solid #d4d4d4;border-radius:2px;flex:1;padding:6px 10px;font-size:13px}.save-manager-list{flex:1;padding:12px 20px;overflow-y:auto}.save-manager-empty{text-align:center;color:#999;padding:40px 0}.save-manager-item{cursor:pointer;border:1px solid #e0e0e0;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px;transition:all .15s;display:flex}.save-manager-item:hover{background:#f8fdf9;border-color:#107c41}.save-manager-item.selected{background:#e8f5e9;border-color:#107c41}.save-manager-item-info{flex-direction:column;gap:4px;display:flex}.save-manager-item-name{color:#333;font-weight:500}.save-manager-item-game{color:#666;background:#f0f0f0;border-radius:2px;width:fit-content;padding:2px 6px;font-size:11px;display:inline-block}.save-manager-item-time{color:#999;font-size:11px}.save-manager-item-actions{gap:8px;display:flex}.game-selector-overlay{z-index:2000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.game-selector-dialog{background:#fff;border-radius:4px;width:400px;box-shadow:0 4px 20px #0003}.game-selector-header{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.game-selector-header h3{color:#333;margin:0;font-size:16px}.game-selector-close{cursor:pointer;color:#666;background:0 0;border:none;padding:4px 8px;font-size:18px}.game-selector-close:hover{color:#333}.game-selector-list{padding:12px}.game-selector-item{cursor:pointer;text-align:left;background:#fff;border:1px solid #e0e0e0;border-radius:4px;align-items:center;gap:12px;width:100%;margin-bottom:8px;padding:12px;transition:all .15s;display:flex}.game-selector-item:hover{background:#f8fdf9;border-color:#107c41}.game-selector-icon{font-size:28px}.game-selector-info{flex-direction:column;gap:2px;display:flex}.game-selector-name{color:#333;font-weight:500}.game-selector-desc{color:#666;font-size:12px}
