*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Inter,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,system-ui,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:SF Mono,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,ui-monospace,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:49 100% 92%;--foreground:250 38% 15%;--card-foreground:250 38% 15%;--popover-foreground:250 38% 15%;--card:0 0% 100%;--popover:0 0% 100%;--secondary:50 100% 81%;--muted:50 100% 81%;--accent:50 100% 81%;--secondary-foreground:254 24% 34%;--accent-foreground:254 24% 34%;--muted-foreground:258 13% 50%;--border:46 53% 82%;--input:46 53% 82%;--primary:25 100% 50%;--ring:25 100% 50%;--primary-foreground:0 0% 100%;--destructive-foreground:0 0% 100%;--destructive:358 75% 59%;--radius:var(--radius-md);--space-1:4px;--space-12:48px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-lg:24px;--radius-md:16px;--radius-pill:9999px;--radius-sm:10px;--elev-flat:none;--focus-ring:0 0 0 4px #ff6b0042;--elev-raised:0 18px 44px #1d183624;--elev-ring:0 0 0 1px var(--border);--text-2xl:36px;--text-3xl:54px;--text-4xl:76px;--text-base:16px;--text-lg:18px;--text-sm:14px;--text-xl:24px;--text-xs:12px;--leading-body:1.52;--leading-tight:1.06;--font-display:Inter, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--font-body:Inter, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--font-mono:"SF Mono", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", ui-monospace, Menlo, monospace;--cjk-latin-shift:-.15em}body{font-family:var(--font-body)}.\!grid{display:grid!important}.grid{display:grid}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rounded-full{border-radius:9999px}.bg-primary{background-color:hsl(var(--primary))}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.text-lg{font-size:var(--text-lg);line-height:var(--leading-body)}.font-extrabold{font-weight:800}.text-primary-foreground{color:hsl(var(--primary-foreground))}.shadow-lg{--tw-shadow:var(--elev-raised);--tw-shadow-colored:var(--elev-raised);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0), var(--tw-enter-translate-y,0), 0) scale3d(var(--tw-enter-scale,1), var(--tw-enter-scale,1), var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0), var(--tw-exit-translate-y,0), 0) scale3d(var(--tw-exit-scale,1), var(--tw-exit-scale,1), var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.paused{animation-play-state:paused}html,body,#root{background-color:#08090a;min-height:100%}@media (prefers-color-scheme:light){html,body,#root{background-color:#fff}}body{background-color:hsl(var(--background));color:hsl(var(--foreground));margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.cjk-latin{font-size-adjust:.56;vertical-align:var(--cjk-latin-shift,-.15em)}:root{--fc-ink:#1d1835;--fc-panel:#fff;--fc-cell-a:#fffcf0;--fc-cell-b:#faefd1;--fc-frame:#b16625;--fc-frame-deep:#884a20;--fc-green:#2c9658;--fc-pink:#eb3370;--fc-ice:#76c7f9}.fc-app{min-height:100dvh;color:var(--fc-ink);font-family:var(--font-body);background:radial-gradient(1200px 600px at 85% -10%,#fff5c2e6,#0000 60%),radial-gradient(900px 520px at -10% 18%,#cef3dda6,#0000 55%),linear-gradient(#fff8d6 0%,#ffeec2 55%,#ffdfb8 100%);padding-bottom:30px;position:relative;overflow-x:hidden}body{background-color:#fff8d6}.fc-decor{pointer-events:none;z-index:0;position:fixed;inset:0}.fc-decor span{opacity:.28;font-size:40px;animation:9s ease-in-out infinite alternate fc-floaty;position:absolute}.fc-decor span:first-child{animation-delay:0s;top:14%;left:3%}.fc-decor span:nth-child(2){font-size:34px;animation-delay:-2s;top:10%;right:5%}.fc-decor span:nth-child(3){font-size:46px;animation-delay:-4s;bottom:16%;left:8%}.fc-decor span:nth-child(4){animation-delay:-1s;bottom:22%;right:9%}.fc-decor span:nth-child(5){font-size:30px;animation-delay:-3s;top:5%;left:46%}.fc-decor span:nth-child(6){font-size:36px;animation-delay:-5s;bottom:6%;right:30%}@keyframes fc-floaty{0%{transform:translateY(-10px)rotate(-8deg)}to{transform:translateY(14px)rotate(10deg)}}.fc-shell{z-index:1;max-width:1060px;margin:0 auto;padding:18px 16px 30px;position:relative}.fc-shell-game{max-width:580px}.fc-topbar{align-items:center;gap:12px;margin-bottom:16px;display:flex}.fc-topbar-mid{flex:1;min-width:0}.fc-topbar-actions{gap:8px;margin-left:auto;display:flex}.fc-topbar-sub{color:hsl(var(--muted-foreground));margin-top:2px;font-size:12px;font-weight:600}.fc-logo{font-family:var(--font-display);letter-spacing:.02em;background:linear-gradient(#ff9c33,#eb4d0a);-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px #ffffffd9)drop-shadow(0 6px 14px #b8561440);-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(24px,4.6vw,38px);font-weight:900;line-height:1.15}.fc-btn{cursor:pointer;font-family:var(--font-display);border-radius:var(--radius-pill);color:hsl(var(--primary-foreground));background:linear-gradient(180deg, #ff8d29, hsl(var(--primary)));box-shadow:0 4px 0 #b3500f, var(--elev-raised);border:0;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:15px;font-weight:800;transition:transform .12s,box-shadow .12s,filter .15s;display:inline-flex}.fc-btn:hover{filter:brightness(1.06);transform:translateY(-1px)}.fc-btn:active{transform:translateY(2px);box-shadow:0 2px #b3500f}.fc-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.fc-btn:focus-visible{box-shadow:var(--focus-ring), 0 4px 0 #b3500f;outline:none}.fc-btn-ghost{color:hsl(var(--secondary-foreground));background:var(--fc-panel);box-shadow:0 4px 0 #ebd9ad, var(--elev-ring)}.fc-btn-ghost:active{box-shadow:0 2px #ebd9ad}.fc-btn-icon{border-radius:50%;width:42px;height:42px;padding:0;font-size:19px}.fc-map-intro{background:var(--fc-panel);border:2px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--elev-raised);justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:18px 22px;display:flex}.fc-map-hello{margin:0 0 2px;font-size:15px;font-weight:700}.fc-map-stars{color:hsl(var(--muted-foreground));margin:0 0 12px;font-size:14px}.fc-map-mascot{filter:drop-shadow(0 6px 10px #7a4d1f40);font-size:62px;line-height:1.1;animation:2s ease-in-out infinite fc-bob}.fc-map-grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:14px;display:grid}.fc-level-card{text-align:center;color:inherit;background:var(--fc-panel);border:2px solid hsl(var(--border));border-radius:var(--radius-lg);cursor:pointer;box-shadow:0 4px 0 #edddb6, var(--elev-raised);flex-direction:column;align-items:center;gap:4px;padding:16px 10px 14px;font-family:inherit;transition:transform .15s,border-color .15s;display:flex;position:relative}.fc-level-card:hover{border-color:hsl(var(--primary));transform:translateY(-4px)rotate(-.5deg)}.fc-level-card.locked{opacity:.6;filter:grayscale(.9);cursor:not-allowed}.fc-level-card.locked:hover{border-color:hsl(var(--border));transform:none}.fc-level-card.current{border-color:hsl(var(--primary));animation:1.6s ease-in-out infinite fc-current-pulse}@keyframes fc-current-pulse{0%,to{box-shadow:0 4px #edddb6,0 0 #ff6a0073}50%{box-shadow:0 4px #edddb6,0 0 0 10px #ff6a0000}}.fc-level-num{font-family:var(--font-display);color:hsl(var(--primary));font-size:30px;font-weight:900;line-height:1}.fc-level-name{font-size:14px;font-weight:700}.fc-level-stars{letter-spacing:2px;font-size:13px}.fc-level-stars .off{opacity:.22;filter:grayscale()}.fc-level-best{color:hsl(var(--muted-foreground));font-size:11px}.fc-continue-badge{background:linear-gradient(180deg, #f04c83, hsl(var(--fc-pink)));color:#fff;border-radius:var(--radius-pill);padding:3px 10px;font-size:11px;font-weight:800;animation:1.4s ease-in-out infinite fc-bob;position:absolute;top:-10px;right:-6px;box-shadow:0 2px #ad1f4e}@keyframes fc-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.fc-foot-tip{text-align:center;color:hsl(var(--muted-foreground));margin-top:18px;font-size:13px}.fc-hud{background:var(--fc-panel);border:2px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--elev-raised);flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 16px;display:flex}.fc-hud-main{flex-direction:column;flex:1;gap:8px;min-width:200px;display:flex}.fc-hud-row1{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.fc-hud-title{font-family:var(--font-display);font-size:17px;font-weight:900}.fc-score-num{font-family:var(--font-display);color:hsl(var(--primary));font-size:24px;font-weight:900;line-height:1}.fc-moves{background:radial-gradient(circle at 32% 28%, #ff983d, hsl(var(--primary)));color:#fff;border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;width:66px;height:66px;display:flex;box-shadow:0 4px #b3500f}.fc-moves.low{animation:.9s ease-in-out infinite fc-low-pulse}@keyframes fc-low-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.fc-moves-num{font-family:var(--font-display);font-size:24px;font-weight:900;line-height:1.1}.fc-moves-label{opacity:.92;font-size:10px}.fc-chips{flex-wrap:wrap;gap:8px;display:flex}.fc-chip{background:hsl(var(--secondary));border-radius:var(--radius-pill);border:1.5px solid #ebd18e;align-items:center;gap:6px;padding:5px 12px;font-size:13px;font-weight:700;display:inline-flex}.fc-chip.done{color:#1b6a3c;background:#d6f5e3;border-color:#66cc91}.fc-chip-emoji{font-size:16px}.fc-progress{border-radius:var(--radius-pill);background:#f3eace;height:14px;position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #c9ba9c99}.fc-progress-fill{border-radius:var(--radius-pill);background:linear-gradient(90deg,#ffc61a,#ff700a,#ec3c77);height:100%;transition:width .45s cubic-bezier(.3,1,.4,1)}.fc-board-wrap{justify-content:center;padding:14px 0 4px;display:flex}.fc-board{border:3px solid var(--fc-frame);width:min(94vw,500px);box-shadow:0 8px 0 var(--fc-frame-deep), var(--elev-raised);touch-action:none;-webkit-user-select:none;user-select:none;background:linear-gradient(#fcf1e3,#f6e4cb);border-radius:22px;padding:10px;position:relative}.fc-board-inner{aspect-ratio:1;background:repeating-conic-gradient(var(--fc-cell-a) 0% 25%, var(--fc-cell-b) 0% 50%);background-size:25% 25%;border-radius:14px;width:100%;position:relative;overflow:hidden}.fc-board.fc-shake{animation:.38s ease-in-out fc-shake}@keyframes fc-shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)rotate(-.6deg)}40%{transform:translate(6px)rotate(.5deg)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}.fc-cell{will-change:transform;width:12.5%;height:12.5%;transition:transform .24s cubic-bezier(.34,1.32,.5,1);position:absolute;top:0;left:0}.fc-tile{border-radius:24%;place-items:center;width:100%;height:100%;animation:.42s cubic-bezier(.25,1.25,.45,1) backwards fc-drop;display:grid;position:relative;box-shadow:inset 0 -3px #6b4d2e29,inset 0 2px #ffffff80,0 3px 4px #6040202e}@keyframes fc-drop{0%{opacity:.4;transform:translateY(-120%)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.fc-fruit{filter:drop-shadow(0 2px 1px #47331f40);pointer-events:none;font-size:min(8.6vw,42px);line-height:1}.fc-tile:after{content:"";filter:blur(1px);pointer-events:none;background:#ffffffb3;border-radius:50%;width:36%;height:20%;position:absolute;top:7%;left:12%;transform:rotate(-20deg)}.fc-sp-row:before,.fc-sp-col:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#ffffffd9 0 3px,#0000 3px 8px);border-radius:18%;animation:.8s linear infinite fc-stripe;position:absolute;inset:8%}.fc-sp-col:before{background:repeating-linear-gradient(90deg,#ffffffd9 0 3px,#0000 3px 8px)}@keyframes fc-stripe{to{background-position:16px 16px}}.fc-sp-bomb{box-shadow:inset 0 0 0 3px #ffffff80,inset 0 -3px #6b4d2e33,0 3px 8px #7a1f1f59}.fc-sp-bomb:before{content:"";background:radial-gradient(circle,#ffffffa6,#ff791a59 60%,#0000 70%);border-radius:50%;animation:1s ease-in-out infinite fc-bomb-pulse;position:absolute;inset:10%}@keyframes fc-bomb-pulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.18)}}.fc-sp-badge{pointer-events:none;filter:drop-shadow(0 1px 1px #0000004d);z-index:2;font-size:min(4vw,18px);position:absolute;bottom:0;right:2%}.fc-sp-rainbow{background:conic-gradient(#f04242,#ff9f1a,#ffec1a,#3c3,#25aff4,#9947eb,#f04299);animation:3.2s linear infinite fc-spin}.fc-sp-rainbow:after{filter:none;background:#ffffffeb;width:auto;height:auto;inset:22%;transform:none}@keyframes fc-spin{to{transform:rotate(360deg)}}.fc-tile.fc-selected{box-shadow:0 0 0 3px hsl(var(--fc-pink)), 0 3px 6px #60402040;animation:.5s ease-in-out infinite fc-wobble}@keyframes fc-wobble{0%,to{transform:scale(1.08)rotate(0)}50%{transform:scale(1.12)rotate(4deg)}}.fc-tile.fc-hint{animation:1s ease-in-out infinite fc-hint-pulse}@keyframes fc-hint-pulse{0%,to{transform:scale(1);box-shadow:0 0 #ff6a00b3,0 3px 4px #6040202e}50%{transform:scale(1.07);box-shadow:0 0 0 9px #ff6a0000,0 3px 4px #6040202e}}.fc-tile.fc-pop{z-index:5;animation:.3s ease-in forwards fc-pop}@keyframes fc-pop{0%{transform:scale(1)}45%{transform:scale(1.28)rotate(8deg)}to{opacity:0;transform:scale(0)}}.fc-tile.fc-born{animation:.36s cubic-bezier(.3,1.6,.5,1) fc-born}@keyframes fc-born{0%{transform:scale(.2)}70%{transform:scale(1.15)}to{transform:scale(1)}}.fc-jelly{pointer-events:none;z-index:6;background:#c5e5fc8c;border:2px solid #94cff9e6;border-radius:20%;width:12.5%;height:12.5%;animation:.35s ease-out fc-jelly-in;position:absolute;top:0;left:0;box-shadow:inset 0 0 10px #ffffffe6}.fc-jelly.l2{background:#80cbfaad;border-width:3px;border-color:#47acebe6}.fc-jelly.l2:after{content:"❄";opacity:.85;place-items:center;font-size:min(4vw,16px);display:grid;position:absolute;inset:0}@keyframes fc-jelly-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.fc-particle{z-index:8;pointer-events:none;border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;animation:.65s ease-out forwards fc-particle;position:absolute}.fc-particle.emoji{text-align:center;background:0 0;width:16px;height:16px;margin:-8px 0 0 -8px;font-size:14px;line-height:16px}@keyframes fc-particle{0%{opacity:1;transform:translate(0)scale(1)}to{transform:translate(var(--dx), var(--dy)) scale(.2);opacity:0}}.fc-floater{z-index:9;pointer-events:none;white-space:nowrap;font-family:var(--font-display);font-weight:900;animation:.95s ease-out forwards fc-floater;position:absolute;transform:translate(-50%,-50%)}.fc-floater-score{color:hsl(var(--primary));text-shadow:0 1px #ffffffe6,0 2px 6px #7a4d1f4d;font-size:17px}.fc-floater-combo{color:hsl(var(--fc-pink));text-shadow:0 2px #fff,0 4px 10px #a3295259;font-size:clamp(20px,4.6vw,30px)}.fc-floater-big{color:hsl(var(--fc-green));text-shadow:0 2px #fff,0 4px 10px #1f7a454d;font-size:clamp(18px,4vw,26px)}@keyframes fc-floater{0%{opacity:0;transform:translate(-50%,-50%)scale(.6)}18%{opacity:1;transform:translate(-50%,-60%)scale(1.1)}to{opacity:0;transform:translate(-50%,-170%)scale(1)}}.fc-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#17132a8c;place-items:center;padding:18px;animation:.22s ease-out fc-fade;display:grid;position:fixed;inset:0}@keyframes fc-fade{0%{opacity:0}to{opacity:1}}.fc-modal{background:var(--fc-panel);border-radius:var(--radius-lg);text-align:center;border:2px solid hsl(var(--border));width:min(94vw,440px);max-height:90vh;box-shadow:var(--elev-raised), 0 10px 0 #ebd9ad;padding:26px 22px 22px;animation:.32s cubic-bezier(.3,1.4,.5,1) fc-pop-in;overflow-y:auto}@keyframes fc-pop-in{0%{opacity:0;transform:scale(.7)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.fc-modal-emoji{font-size:52px;line-height:1;animation:1.6s ease-in-out infinite fc-bob}.fc-modal-title{font-family:var(--font-display);margin:8px 0 2px;font-size:24px;font-weight:900}.fc-modal-sub{color:hsl(var(--muted-foreground));margin:0 0 12px;font-size:14px}.fc-modal-tip{color:hsl(var(--muted-foreground));background:hsl(var(--secondary));border-radius:var(--radius-md);margin-top:12px;padding:10px 12px;font-size:13px;line-height:1.5}.fc-modal-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;display:flex}.fc-goal-list{text-align:left;flex-direction:column;gap:8px;max-width:300px;margin:6px auto 0;display:flex}.fc-goal-row{background:hsl(var(--secondary));border-radius:var(--radius-md);align-items:center;gap:10px;padding:9px 14px;font-size:14px;font-weight:700;display:flex}.fc-goal-row .emoji{font-size:20px}.fc-win-stars{justify-content:center;gap:6px;margin:8px 0 2px;font-size:46px;display:flex}.fc-win-stars span{animation:.5s cubic-bezier(.3,1.6,.5,1) backwards fc-star-pop}.fc-win-stars span.off{opacity:.22;filter:grayscale();animation:none}@keyframes fc-star-pop{0%{opacity:0;transform:scale(0)rotate(-40deg)}to{opacity:1;transform:scale(1)rotate(0)}}.fc-win-score{margin:6px 0 0;font-size:16px}.fc-win-score b{font-family:var(--font-display);color:hsl(var(--primary));font-size:26px}.fc-new-best{color:#fff;border-radius:var(--radius-pill);background:#f0427c;margin-left:8px;padding:2px 10px;font-size:12px;font-weight:800;animation:1.2s ease-in-out infinite fc-bob;display:inline-block}.fc-lb-tabs{border-radius:var(--radius-pill);background:#f5edd6;justify-content:center;gap:6px;margin-top:4px;padding:4px;display:flex}.fc-lb-tab{border-radius:var(--radius-pill);cursor:pointer;color:hsl(var(--muted-foreground));background:0 0;border:0;padding:7px 16px;font-family:inherit;font-size:13px;font-weight:800}.fc-lb-tab.on{background:var(--fc-panel);color:hsl(var(--foreground));box-shadow:0 2px 6px #c2a7704d}.fc-lb-list{flex-direction:column;gap:6px;max-height:46vh;margin-top:12px;padding-right:4px;display:flex;overflow-y:auto}.fc-lb-row{border-radius:var(--radius-md);background:#fdfaed;align-items:center;gap:10px;padding:8px 12px;font-size:14px;display:flex}.fc-lb-row.me{background:hsl(var(--secondary));border:2px solid hsl(var(--primary));font-weight:800}.fc-lb-rank{text-align:center;width:30px;font-family:var(--font-display);flex:none;font-weight:900}.fc-lb-name{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.fc-lb-meta{color:hsl(var(--muted-foreground));flex:none;font-size:12px}.fc-lb-score{font-family:var(--font-display);color:hsl(var(--primary));flex:none;font-weight:900}.fc-lb-hint{color:hsl(var(--muted-foreground));text-align:center;margin:10px 0 0;font-size:11px}.fc-edit-btn{cursor:pointer;background:0 0;border:0;margin-left:4px;padding:0;font-size:13px}.fc-name-input{border:2px solid hsl(var(--primary));border-radius:var(--radius-sm);background:var(--fc-panel);width:130px;color:inherit;padding:6px 10px;font-family:inherit;font-size:14px;font-weight:700}.fc-name-input:focus-visible{box-shadow:var(--focus-ring);outline:none}.fc-toast{z-index:60;color:#fff;border-radius:var(--radius-pill);box-shadow:var(--elev-raised);pointer-events:none;background:#1d1835eb;max-width:90vw;padding:10px 18px;font-size:14px;font-weight:700;animation:.25s ease-out fc-toast-in;position:fixed;top:16px;left:50%;transform:translate(-50%)}@keyframes fc-toast-in{0%{opacity:0;transform:translate(-50%,-16px)}to{opacity:1;transform:translate(-50%)}}@media (width<=560px){.fc-hud{padding:10px 12px}.fc-moves{width:58px;height:58px}.fc-moves-num{font-size:20px}.fc-map-grid{grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:10px}}.fc-mode-section{flex-direction:column;gap:12px;margin-bottom:18px;display:flex}.fc-mode-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.fc-mode-card{text-align:left;color:inherit;background:var(--fc-panel);border:2px solid hsl(var(--border));border-radius:var(--radius-lg);cursor:pointer;box-shadow:0 4px 0 #edddb6, var(--elev-raised);flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;font-family:inherit;transition:transform .15s,border-color .15s;display:flex;position:relative}.fc-mode-card:hover{border-color:hsl(var(--primary));transform:translateY(-3px)}.fc-mode-icon{font-size:30px;line-height:1}.fc-mode-name{font-family:var(--font-display);font-size:16px;font-weight:900}.fc-mode-meta{color:hsl(var(--muted-foreground));font-size:12px}.fc-mode-done{color:#fff;background:#30a661;border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;font-weight:900;display:grid;position:absolute;top:10px;right:12px;box-shadow:0 2px #1f7a45}.fc-theme-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fc-theme-label{color:hsl(var(--muted-foreground));margin-right:2px;font-size:12px;font-weight:800}.fc-theme-chip{border:2px solid hsl(var(--border));background:var(--fc-panel);border-radius:var(--radius-pill);color:inherit;cursor:pointer;align-items:center;gap:6px;padding:6px 14px 6px 8px;font-family:inherit;font-size:13px;font-weight:700;transition:transform .12s,border-color .12s;display:inline-flex}.fc-theme-chip:hover{transform:translateY(-2px)}.fc-theme-chip.on{border-color:hsl(var(--primary));background:hsl(var(--secondary));box-shadow:0 2px #e9d5a5}.fc-theme-preview{font-size:18px}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
