:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0d12;--panel:#14161c61;--panel-2:#ffffff14;--panel-solid:#20232b;--line:#ffffff29;--text:#fff;--dim:#f0f1f6c7;--accent:#ffb340;--accent-ink:#261600;--error:#ffa79f;--ok:#86e29a;--hp:#ff6259;--shield:#7fd8ff;--cooldown:#0000009e;--scrim:#0000008c;--font-body:"Noto Sans TC", -apple-system, "PingFang TC", "Microsoft JhengHei", sans-serif;--r-sheet:32px;--r-card:20px;--r-cell:16px;--blur:14px;--ui-scale:1}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font:400 14px / 1.45 var(--font-body);font-variant-numeric:tabular-nums;margin:0;overflow:hidden}h1,h2,h3,p{font-size:inherit;margin:0;font-weight:400}#game{position:fixed;inset:0}#game:empty{image-rendering:pixelated;background:url(/placeholder/stages/town/login-backdrop.webp) 50%/cover no-repeat}#ui{pointer-events:none;width:960px;height:540px;transform:translate(-50%, -50%) scale(var(--ui-scale));display:flex;position:fixed;top:50%;left:50%}#ui>*{pointer-events:auto}.glass{background:radial-gradient(120% 70% at 50% -12%, #fff3, transparent 62%), radial-gradient(90% 50% at 50% 112%, #ffffff17, transparent 70%), var(--panel);-webkit-backdrop-filter:var(--lens,) blur(var(--blur)) saturate(170%) brightness(.74);backdrop-filter:var(--lens,) blur(var(--blur)) saturate(170%) brightness(.74);position:relative;box-shadow:inset 0 1px #ffffff9e,inset 0 -1px #ffffff38,inset 1px 0 #ffffff2e,inset -1px 0 #ffffff2e,inset 0 0 18px #ffffff12,0 12px 32px #00000057,0 1px 3px #0000004d}@media (prefers-reduced-transparency:reduce){.glass{background:var(--panel-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass{background:var(--panel-solid)}}button,.btn{height:42px;font:inherit;color:var(--text);white-space:nowrap;cursor:pointer;background:linear-gradient(#fff3,#ffffff17);border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:15px;font-weight:500;text-decoration:none;display:flex;box-shadow:inset 0 1px #ffffff57,inset 0 0 0 1px #ffffff14}button:hover,.btn:hover{background:linear-gradient(#ffffff47,#ffffff26)}button.primary,.btn.primary{color:var(--accent-ink);background:linear-gradient(180deg, #ffcd7a, var(--accent) 58%, #f5a02c);font-weight:700;box-shadow:inset 0 1px #ffffffb8,inset 0 -1px #78420059,0 6px 18px #ffa02842}button.primary:hover,.btn.primary:hover{background:linear-gradient(#ffd891,#ffbd59 58%,#f9ab3f)}button:disabled,button:disabled:hover,button[aria-disabled=true],button[aria-disabled=true]:hover,.btn[aria-disabled=true]{color:var(--dim);cursor:default;background:#00000038;font-weight:500;box-shadow:inset 0 0 0 1px #ffffff1f}button.small,.btn.small{height:34px;padding:0 14px;font-size:14px}button.round,.btn.round{width:34px;height:34px;padding:0;font-size:18px}button.link,button.link:hover,a.link{height:auto;color:var(--text);box-shadow:none;text-underline-offset:3px;background:0 0;padding:0;font-size:13px;font-weight:400;-webkit-text-decoration:underline #ffffff73;text-decoration:underline #ffffff73;display:inline}button.link:hover,a.link:hover{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus-visible{outline:3px solid var(--text);outline-offset:2px;filter:brightness(1.12)drop-shadow(0 0 8px #ffb340e6);scroll-margin:8px}.seg>button:focus-visible,button.link:focus-visible{outline-offset:1px}.key{min-width:22px;height:22px;color:var(--text);background:#ffffff24;border-radius:7px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:500;line-height:1;display:inline-flex;box-shadow:inset 0 1px #ffffff47}.primary .key{color:var(--accent-ink);box-shadow:none;background:#5a32002e}button:disabled .key{color:var(--dim);background:#ffffff14}.hint,button.hint,button.hint:hover{height:auto;box-shadow:none;background:0 0;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:500;display:inline-flex}.chip{border-radius:999px;align-items:center;gap:12px;height:34px;padding:0 12px 0 6px;display:inline-flex}input{width:100%;height:44px;font:400 16px / 1 var(--font-body);color:var(--text);background:#0000004d;border:0;border-radius:999px;outline:0;padding:0 18px;box-shadow:inset 0 1px 2px #0006,inset 0 0 0 1px #ffffff1f}input:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);outline:0}input:-webkit-autofill{-webkit-text-fill-color:var(--text);caret-color:var(--text);transition:background-color 99999s}input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);caret-color:var(--text);transition:background-color 99999s}label{flex-direction:column;gap:6px;display:flex}.field-label{justify-content:space-between;padding:0 18px;font-size:13px;font-weight:500;display:flex}.seg{background:#0000003d;border-radius:999px;gap:2px;padding:3px;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff12}.seg>button,.seg>button:hover{height:32px;color:var(--dim);box-shadow:none;background:0 0;padding:0 16px;font-size:14px}.seg>button:hover{color:var(--text)}.seg>button.on,.seg>button[aria-selected=true]{color:var(--text);background:linear-gradient(#ffffff52,#ffffff2e);box-shadow:inset 0 1px #ffffff6b,0 2px 6px #00000038}button.tab,button.tab:hover{height:28px;color:var(--dim);box-shadow:none;background:0 0;padding:0;font-size:14px}button.tab.on,button.tab:hover{color:var(--text)}button.tab.on{font-weight:700}.cell,button.cell{border-radius:var(--r-cell);width:72px;height:72px;box-shadow:none;background:#ffffff17;justify-content:center;align-items:center;padding:0;display:flex;position:relative}button.cell:hover{background:#ffffff26}.cell.on,button.cell.on{box-shadow:inset 0 0 0 2px var(--accent);background:#ffb34033}.ico{width:64px;height:64px;image-rendering:pixelated;display:block}.lv,.worn{border-radius:99px;padding:0 5px;font-size:11px;font-weight:700;line-height:16px;position:absolute}.lv{color:#fff;background:#000000a8;top:4px;right:5px}.worn{color:#06240f;background:var(--ok);bottom:4px;left:5px}.well{border-radius:var(--r-card);background:var(--panel-2)}.card,button.card{text-align:center;white-space:normal;border-radius:var(--r-card);background:var(--panel-2);height:auto;box-shadow:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px;display:flex}button.card:hover{background:#ffffff24}.card.on,button.card.on{box-shadow:inset 0 0 0 2px var(--accent);background:#ffb34033}.price{align-items:center;gap:5px;font-weight:500;display:inline-flex}.coin{background:linear-gradient(180deg, #ffd98f, var(--accent));border-radius:50%;width:12px;height:12px;display:inline-block;box-shadow:inset 0 -1px #78420073}button.primary:not(:disabled) .coin{background:linear-gradient(#8a5510,#5a3400);box-shadow:inset 0 1px #ffffff59}.progress{background:#ffffff29;border-radius:99px;height:6px;overflow:hidden}.progress>i{background:var(--accent);border-radius:99px;height:100%;display:block}.dim{color:var(--dim)}.note{color:var(--dim);padding:0 18px;font-size:13px}.message{padding:0 18px;font-size:13px;font-weight:500}.message.error{color:var(--error)}.message.ok{color:var(--ok)}.screen{border-radius:30px;flex-direction:column;gap:12px;width:420px;max-height:100%;margin:auto;padding:26px;display:flex;overflow:auto}.screen h1{text-align:center;font-size:26px;font-weight:500;line-height:1.2}.screen>p:not([class]){padding:0 18px}.screen form{flex-direction:column;gap:12px;display:flex}.form-actions{flex-direction:row-reverse;justify-content:space-between;align-items:center;gap:16px;margin-top:8px;padding-left:18px;display:flex}.form-actions>button.primary{min-width:140px}.form-links{gap:16px;display:flex}.stack{flex-direction:column;gap:10px;display:flex}.row{flex-wrap:wrap;justify-content:space-between;gap:8px 16px;padding:0 18px;display:flex}.login-title{letter-spacing:6px;text-align:center;text-shadow:0 2px 18px #000000b3,0 1px 2px #000000b3;pointer-events:none;font-size:46px;font-weight:300;line-height:1.2;position:absolute;top:66px;left:0;right:0}#ui>.screen.login-choice{width:320px;min-height:318px;margin:148px auto auto;padding:18px}.login-choice .stack{flex:1}.login-choice .note{margin-top:auto;padding:16px 6px 2px}.login-keys{border-radius:17px;justify-content:center;align-items:center;gap:12px;width:186px;height:34px;display:flex;position:absolute;bottom:14px;right:16px}.overlay{z-index:10;background:var(--scrim);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.overlay .screen{transform:scale(var(--ui-scale));margin:0}.panel-backdrop{padding:20px;display:flex;position:absolute;inset:0}.panel{--blur:24px;border-radius:var(--r-sheet);outline:none;flex-direction:column;flex:1;gap:12px;min-width:0;padding:16px 20px;display:flex}.panel.compact{border-radius:30px;flex:none;width:420px;max-height:100%;margin:auto;padding:18px 26px 26px}.panel-header{align-items:center;gap:14px;min-height:38px;display:flex}.panel-header h2{padding-left:8px;font-size:22px;font-weight:700;line-height:1}.panel-header .price{margin-left:auto;font-size:15px}.panel-header>:not(.price)+.hint{margin-left:auto}.panel-body{scrollbar-color:#ffffff4d transparent;scrollbar-width:thin;flex:1;min-height:0;margin:-6px -4px;padding:6px 8px;overflow:auto}.panel-body>*+*{margin-top:12px}.stage-list{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.panel-body h3{margin:12px 0 8px;font-size:18px;font-weight:500}.panel-body h3:first-child{margin-top:0}.panel-body .note{padding:0}.panel-body .stack{width:320px}.panel-body .note+.stack,.panel-body .stack+.note{margin-top:12px}.panel-body .row{margin:8px 0;padding:0}.panel-keys{justify-content:flex-end;gap:12px;padding:0 4px;display:flex}.panel:not(:has(.panel-body button:not(:disabled),.seg button)) .panel-keys{display:none}.panel-footer{align-items:center;gap:14px;padding:0 4px;font-size:13px;display:flex}.panel-footer .player-name{font-weight:500}.panel-footer .player-name+*{margin-left:auto}.key-table{border-collapse:collapse}.key-table th{text-align:left;white-space:nowrap;padding:4px 16px 4px 0;font-weight:400}.key-table th .key+.key{margin-left:4px}.key-table th .key-joiner{color:var(--dim);margin:0 6px}.key-table td{color:var(--dim);padding:4px 0}.save-summary{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;font-size:13px;display:grid}.save-summary dt{color:var(--dim)}.save-summary dd{margin:0}.restaurant-shell{border-radius:999px;align-items:center;gap:12px;padding:8px 10px 8px 18px;display:flex;position:absolute;top:12px;left:12px;right:12px}.restaurant-shell[hidden],.furniture-catalog[hidden]{display:none}.restaurant-shell:has(~.panel-backdrop){visibility:hidden}.restaurant-shell h1,.furniture-header h1{font-size:18px;font-weight:500}.restaurant-shell .note{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding:0;overflow:hidden}.restaurant-actions{gap:8px;display:flex}.furniture-catalog{border-radius:var(--r-card);flex-direction:column;gap:8px;padding:10px 12px;display:flex;position:absolute;top:12px;left:12px;right:12px}.furniture-header{align-items:center;gap:12px;min-height:30px;padding-left:6px;display:flex}.furniture-hints{gap:12px;display:flex}.furniture-header .message{text-align:right;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding:0;overflow:hidden}.furniture-header .message[hidden]{visibility:hidden;display:block}.furniture-cards{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.furniture-card{gap:3px;padding:6px}.furniture-card h3{font-size:14px;font-weight:500}.furniture-card p{white-space:nowrap;font-size:11px}.furniture-buy{align-items:center;gap:6px;font-size:12px;display:flex}.food-ico{background:url(/placeholder/icons/food.png) 0 0/256px 256px no-repeat}.equipment-ico{background:url(/placeholder/icons/equipment.png) 0 0/256px 256px no-repeat}.restaurant-tab>*+*,.equipment-tab>*+*{margin-top:10px}.restaurant-tab .message,.equipment-tab .message{padding:0}.recipe-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.recipe{gap:12px;padding:10px;display:flex}.recipe .cell{flex:none}.recipe-info{flex-direction:column;flex:1;gap:2px;min-width:0;font-size:13px;display:flex}.panel-body .recipe h3,.panel-body .cooking h3{margin:0;font-size:15px}.recipe h3{justify-content:space-between;align-items:center;gap:8px;display:flex}.recipe-sell{align-items:center;gap:4px;font-size:13px;display:inline-flex}.recipe-lack{color:var(--error)}.recipe-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding-top:6px;display:flex}.stepper{align-items:center;gap:6px;display:inline-flex}.stepper-value{text-align:center;min-width:26px}.cooking{text-align:center;flex-direction:column;align-items:center;gap:12px;width:420px;margin:40px auto 0;padding:20px;display:flex}.cooking .progress{width:100%}.progress>i.filling{width:0;animation:linear forwards progress-fill}@keyframes progress-fill{to{width:100%}}.listing-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.listing-columns>section>*+*{margin-top:8px}.panel-body .listing-columns h3{margin-bottom:8px}.line{align-items:center;gap:8px;padding:6px 10px 6px 6px;display:flex}.line .cell{flex:none}.line-name{flex-direction:column;flex:1;min-width:0;font-size:14px;display:flex}.line-name .dim{font-size:13px}.line-qty{text-align:right;min-width:36px}.expedition-tab>*+*{margin-top:10px}.expedition-tab .message{padding:0}.expedition-status{flex-direction:column;gap:8px;padding:12px;display:flex}.panel-body .expedition-status h3{margin:0}.expedition-status .dim{margin:0;font-size:13px}.expedition-harvest{align-items:center;gap:24px;display:flex}.expedition-harvest .line{padding:0}.expedition-status .line-qty{font-size:15px;font-weight:700}.expedition-full{color:var(--accent);margin:0;font-size:13px}.expedition-full[hidden]{display:none}.expedition-floors{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.expedition-floor{padding:8px 10px 8px 14px}.bag-section+.bag-section{margin-top:14px}.bag-grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px 6px;display:grid}.bag-item{text-align:center;flex-direction:column;align-items:center;gap:4px;font-size:12px;display:flex}.qty{color:#fff;background:#000000a8;border-radius:99px;padding:0 5px;font-size:11px;font-weight:700;line-height:16px;position:absolute;bottom:4px;right:5px}.furniture-ico{object-fit:contain}.reward-items{gap:8px;display:flex}.reward-item{text-align:center;flex-direction:column;flex:1 1 0;align-items:center;gap:2px;min-width:0;font-size:13px;display:flex}.reward-item .dim{font-size:12px}.character-columns{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:12px;display:grid}.character-side{justify-items:stretch;gap:10px;display:grid}.character-side .seg{display:flex}.character-side .seg>button{flex:1;padding:0 4px}.stats-card{padding:12px 14px}.panel-body .stats-card h3{margin:0 0 8px;font-size:16px}.stats-card .dim{font-size:13px}.stats-card .save-summary{font-size:14px}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}button.slot-card{text-align:left;flex-direction:row;justify-content:flex-start;gap:10px;height:auto;padding:8px;font-weight:400}button.slot-card .cell{flex:none}#ui>.dialog-backdrop{z-index:4;background:var(--scrim);display:flex;position:absolute;inset:0}.dialog{--blur:24px;border-radius:30px;flex-direction:column;gap:12px;width:520px;max-height:calc(100% - 40px);margin:auto;padding:18px 22px;display:flex;overflow:auto}.dialog h2{padding-left:4px;font-size:18px;font-weight:500}.dialog .note{padding:0 4px}.dialog form{flex-direction:column;gap:12px;display:flex}.dialog .price{vertical-align:middle}.dialog-list{flex-direction:column;gap:8px;padding:4px;display:flex}.dialog-actions{justify-content:flex-end;gap:10px;display:flex}button.picker-row{border-radius:var(--r-card);text-align:left;width:100%;height:auto;box-shadow:none;flex:none;justify-content:flex-start;font-weight:400}button.picker-row:hover{background:#ffffff24}#ui>.notices{z-index:5;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:640px;display:flex;position:absolute;top:78px;left:50%;transform:translate(-50%)}.notice{border-radius:25px;align-items:center;gap:14px;padding:8px 8px 8px 20px;font-size:14px;display:flex}#ui:has(>.panel-backdrop .panel.compact)>.notices{align-items:stretch;width:256px;top:20px;left:auto;right:12px;transform:none}#ui:has(>.panel-backdrop .panel.compact) .notice{border-radius:var(--r-card);flex-wrap:wrap;justify-content:flex-end;padding:12px 14px}#ui>.link-layer{z-index:6;background:var(--scrim);display:flex;position:absolute;inset:0}.guest-badge{align-items:center;gap:10px;display:inline-flex}#ui>.hud{pointer-events:none;position:absolute;inset:0}.hud-party{border-radius:var(--r-card);width:236px;padding:10px 14px 9px;position:absolute;top:12px;left:12px}.hud-name{align-items:baseline;gap:8px;font-size:14px;line-height:18px;display:flex}.hud-name b{font-weight:700}.hud-name .dim{font-size:12px}.hud-member .bar{margin-top:5px}.hud-values{font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:4px;font-size:12px;line-height:15px;display:flex}.hud-companions{gap:12px;margin-top:7px;display:flex}.hud-companion{flex:1 1 0;min-width:0}.hud-companion .hud-name{justify-content:space-between;font-size:12px;line-height:15px}.hud-companion .hud-name b{font-weight:500}.hud-companion .hud-shield{font-size:11px}.hud-companion .bar{margin-top:3px}.hud-companion.downed{opacity:.5}.hud-companion.downed .hud-shield,.hud-numbers{color:var(--dim)}.hud-shield{color:var(--shield);font-weight:500}.hud-boss{border-radius:var(--r-card);width:300px;padding:10px 14px 12px;position:absolute;top:12px;right:12px}.hud-boss .hud-name{justify-content:space-between}.hud-boss .bar{height:8px;margin-top:6px}.hud-buff{color:var(--accent);border-radius:999px;padding:0 14px;font-size:13px;font-weight:500;line-height:28px;position:absolute;top:124px;left:12px}.hud-skills{border-radius:999px;gap:6px;width:280px;padding:8px;display:flex;position:absolute;top:12px;left:256px}.hud-hints{gap:14px;height:34px;padding:0 14px 0 8px;position:absolute;top:82px;left:256px}.hud-hints .hint{text-shadow:0 1px 2px #000000b3;font-size:12px}.bar{background:#ffffff2e;border-radius:99px;height:5px;position:relative;overflow:hidden}.bar>i{background:var(--hp);border-radius:99px;display:block;position:absolute;top:0;bottom:0;left:0}.skill{background:#ffffff26;border-radius:50%;flex:none;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;font-weight:500;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff4d}.skill.ready{color:var(--accent-ink);background:linear-gradient(180deg, #ffcd7a, var(--accent));box-shadow:inset 0 1px #ffffffb3}.skill .cd{background:conic-gradient(var(--cooldown) calc(var(--left,0) * 1turn), transparent 0);position:absolute;inset:0}.skill .sec{font-size:15px;font-weight:700;position:relative}.skill.ready .sec{font-size:18px}.skill.wide.ready .sec{font-size:13px}.skill .k{z-index:1;text-align:center;color:var(--dim);font-size:10px;font-weight:500;line-height:1;position:absolute;top:4px;left:0;right:0}.skill.ready .k{display:none}.skill.locked{color:var(--dim);background:#00000038;box-shadow:inset 0 0 0 1px #ffffff1f}.skill.locked .sec{font-size:12px;font-weight:500}.skill.locked .cd{display:none}.leader-pick,.party-pick,.dev-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.chat{border-radius:var(--r-card);cursor:pointer;flex-direction:column;gap:6px;width:372px;padding:8px 12px;font-size:13px;line-height:1.4;display:flex;position:absolute;bottom:12px;left:12px}.chat.open{z-index:3;cursor:auto}.chat.glass:not(.open){-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:#00000073}.chat:not(.open,.strip):after{content:"按 Enter 聊天";color:var(--dim);font-size:11px}.chat:has(~.panel-backdrop .panel:not(.compact)){visibility:hidden}.chat-log{scrollbar-width:thin;scrollbar-color:var(--line) transparent;max-height:240px;overflow-y:auto}.chat-log:empty{display:none}.chat:not(.open) .chat-log{overflow:hidden}.chat:not(.open) .chat-line:nth-last-child(n+4){display:none}.chat-line{overflow-wrap:anywhere}.chat-line time{color:var(--dim)}.chat-name{font-weight:500}.chat-line.system{color:var(--accent)}.chat-line.system time{color:inherit}.chat-latest{flex:1;min-width:0;display:none}.chat:not(.open) .chat-line{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-status{color:var(--error)}.chat-status[hidden]{display:none}input.chat-input{width:100%;height:28px;color:var(--text);background:var(--panel-2);font:inherit;border:0;border-radius:14px;outline:none;flex:none;margin:0;padding:0 12px}input.chat-input::placeholder{color:var(--dim)}input.chat-input:focus{box-shadow:inset 0 0 0 1px var(--accent)}.chat:not(.open) input.chat-input{display:none}.chat.strip:not(.open){border-radius:12px;flex-direction:row;align-items:center;height:24px;padding:0 12px;bottom:4px}.chat.strip:not(.open) .chat-log{display:none}.chat.strip:not(.open) .chat-latest{display:block}.chat.strip.offline:not(.open) .chat-latest,.chat.strip:not(.offline,.open) .chat-status{display:none}.chat-hint{z-index:3;border-radius:18px;padding:6px 16px;font-size:13px;position:absolute;top:496px;left:12px}.chat-hint[hidden]{display:none}
