.visit-page{padding-bottom:18px}.visit-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0 30px}.visit-shortcuts button{display:flex;align-items:center;gap:9px;text-align:left;padding:14px 10px;border:1px solid #dfebf4;border-radius:16px;background:#fff9;color:#54738c;min-height:73px}.visit-shortcuts button:first-child{grid-column:1/-1}.visit-shortcuts button:disabled{opacity:.6}.visit-shortcuts strong{font-size:12px;display:block}.visit-shortcuts small{display:block;font-size:10px;line-height:1.5;margin-top:4px;color:#8196a8}.visit-link-icon{display:flex;align-items:center;justify-content:center;width:31px;min-width:31px;height:31px;background:#edf5fc;border-radius:10px}.visit-shortcuts button>svg{margin-left:auto;flex-shrink:0}.song-heading{display:flex;justify-content:space-between;align-items:center}.song-heading h2{display:flex;align-items:center;gap:8px;font-size:18px;margin:0;color:#385774}.song-heading small{color:#8298aa;font-size:11px}.song-guidance{font-size:12px;line-height:1.8;color:#8398a9;display:flex;align-items:center;gap:3px;margin:11px 0 17px}.song-search{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e1ebf4;border-radius:14px;padding:12px 14px;color:#93a9bc}.song-search input{min-width:0;width:100%;border:0;outline:0;background:none;font:inherit;color:#395c76;font-size:14px}.song-tags{display:flex;gap:7px;overflow-x:auto;padding:12px 0 16px;scrollbar-width:none}.song-tags button{border:1px solid #e1ebf4;background:#fff7;padding:7px 12px;border-radius:20px;white-space:nowrap;color:#8098ae;font-size:11px}.song-tags .selected{background:#dfedf9;color:#507fa5;border-color:#cfe3f4}.song-list{background:#fff9;border:1px solid #e4edf6;border-radius:19px;overflow:hidden}.song-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #eaf0f6;min-height:72px}.song-row:last-child{border-bottom:0}.song-number{font-size:10px;letter-spacing:1px;color:#a5b7c5;font-variant-numeric:tabular-nums}.song-select{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:0;background:none;flex:1;min-width:0;padding:2px 0;color:#729bb9}.song-select>span{min-width:0}.song-select strong{display:block;font-size:14px;font-weight:500;color:#3d5d78;overflow-wrap:anywhere}.song-select small{display:block;font-size:10px;color:#97aabb;margin-top:5px}.song-select>svg{flex-shrink:0}.song-select:disabled{opacity:.5}.song-copy{border:0;background:#edf5fa;min-width:32px;height:32px;border-radius:10px;color:#759ab6;display:grid;place-items:center}.song-empty{text-align:center;line-height:1.8;padding:30px 18px;font-size:13px;color:#8a9eb0}.song-pagination{display:flex;justify-content:space-between;margin-top:16px}.song-pagination button{display:flex;align-items:center;gap:5px;border:1px solid #dce8f2;background:#fff8;border-radius:12px;padding:10px;color:#6d90ad;font-size:12px}.song-pagination button:disabled{opacity:.4}.song-cooldown,.song-demo{color:#809bb1;font-size:12px;text-align:center;padding:8px;border-radius:10px;background:#eaf3fa}.song-error{font-size:12px;padding-bottom:12px;color:#a16868}.song-copy-dialog textarea{width:100%;resize:none;padding:12px;margin:12px 0;border:1px solid #d4e5f0;border-radius:12px;color:#47667e;background:#f6faff;font:inherit;-webkit-user-select:text;user-select:text}.visit-shortcuts{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:20px 0 26px}.visit-shortcuts button{flex-direction:column;gap:8px;padding:13px 3px;min-height:88px;text-align:center;position:relative;border-radius:14px}.visit-shortcuts button:first-child{grid-column:auto}.visit-shortcuts strong{font-size:10px;white-space:nowrap}.visit-shortcuts small{font-size:8px;margin-top:4px}.visit-shortcuts button:not(:disabled) small{display:none}.visit-shortcuts button>svg{position:absolute;right:4px;top:4px;width:11px;height:11px;opacity:.5}.visit-shortcuts .visit-link-icon{width:33px;height:33px}.visit-shortcuts button:disabled{opacity:.65}.flavor-progress{position:absolute;z-index:6;top:18px;left:50%;transform:translate(-50%);width:min(288px,calc(100% - 36px));padding:13px 14px 10px;border:1px solid rgba(255,255,255,.8);border-radius:23px;background:#fafdffe0;box-shadow:0 4px 22px #366b8b0d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#405d71;pointer-events:none}.flavor-pies{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.flavor-meter{display:flex;flex-direction:column;align-items:center;gap:3px}.flavor-meter svg{width:36px;height:36px;overflow:visible}.flavor-meter path{fill:#dce6ed;stroke:#f8fcff;stroke-width:1.3;stroke-linejoin:round;transition:fill .25s}.flavor-meter path.filled{fill:var(--flavor-color)}.flavor-meter>span{font-size:11px;letter-spacing:1px}.flavor-meter small{font-size:10px;color:#788b99;font-variant-numeric:tabular-nums}.flavor-progress>p{font-size:10px;text-align:center;line-height:1.5;margin:8px 0 0;color:#6d8190}.flavor-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin:6px 0 2px}.flavor-tags>span{display:inline-block;font-size:10px;line-height:1.6;color:var(--flavor-color);padding:1px 7px;border:1px solid currentColor;border-radius:20px}.flavor-tags>.unconfigured{color:#8298aa}[data-theme=dark] .flavor-progress{background:#1c2837eb;border-color:#4a5d70;color:#e1e9f1}[data-theme=dark] .flavor-meter path{fill:#465366;stroke:#243044}[data-theme=dark] .flavor-meter path.filled{fill:var(--flavor-color)}[data-theme=dark] .flavor-progress>p,[data-theme=dark] .flavor-meter small{color:#b2c2d1}@media(max-height:600px){.flavor-progress{top:10px;padding:7px 12px}.flavor-meter svg{width:26px;height:26px}.flavor-progress>p{margin-top:4px}.flavor-meter{gap:1px}}@media(prefers-reduced-motion:reduce){.flavor-meter path{transition:none}}.page-home .room-world .room-speech{top:max(22%,150px)}@media(max-height:600px){.page-home .room-world .room-speech{top:110px}}.placed-art{position:absolute;inset:0;display:block;pointer-events:none;overflow:hidden}.placed-art-crop{position:absolute;display:block;overflow:hidden}.placed-art-crop>img{position:absolute;display:block;max-width:none;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.food-picker{padding:14px 22px calc(22px + env(safe-area-inset-bottom));max-height:75svh;max-height:75dvh;overflow:hidden}.food-picker[open]{display:flex;flex-direction:column}.food-picker .sheet-handle{flex-shrink:0;margin-bottom:14px}.food-picker header{display:flex;align-items:center;gap:10px;flex-shrink:0}.food-picker header h2{font-size:18px;letter-spacing:.5px;text-align:left;flex:1}.food-picker header .icon-button{width:44px;height:44px;background:transparent}.food-picker-icon{display:flex;align-items:center;justify-content:center;background:#fcf0e1;color:#bb9065;width:40px;height:40px;border-radius:14px}.food-picker>p{flex-shrink:0;text-align:left;margin:10px 0 18px;color:#8298aa}.food-picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;overflow-y:auto;overscroll-behavior:contain;padding:5px 4px 8px;margin:0 -4px;min-height:0}.food-picker-option{display:flex;flex-direction:column;align-items:center;min-width:0;padding:14px 12px 16px;background:#f1f6fa;border:1px solid #e1ebf3;border-radius:19px;text-align:center}.food-picker-option:active{background:#e7f0f7}.food-picker-art{display:block;width:100%;height:92px;margin-bottom:12px}.food-picker-art svg{width:100%;height:100%}.food-picker-option strong{font-size:13px;font-weight:500;line-height:1.6;overflow-wrap:anywhere}.food-picker-option small{font-size:10px;line-height:1.6;color:#8298aa;margin-top:5px;overflow-wrap:anywhere}.food-picker>p.food-picker-empty{text-align:center;padding:24px 0}@media(max-height:550px){.food-picker{max-height:88dvh}.food-picker-art{height:58px;margin-bottom:6px}.food-picker-option{padding:10px}}.draw-results.draw-reveal-modal{padding:20px;max-height:calc(100dvh - 32px);overscroll-behavior:contain;box-shadow:0 24px 90px #09192c55}.draw-results .draw-dialog-header{position:static;gap:10px;padding:0;background:transparent;align-items:center}.draw-dialog-header>div:first-child{min-width:0}.draw-dialog-header small{display:block;font-size:10px;letter-spacing:1px;margin-bottom:7px;color:#8396aa;overflow-wrap:anywhere}.draw-results .draw-dialog-header h2{font-size:19px;line-height:1.4}.draw-header-actions{display:flex;gap:2px;align-items:center;flex-shrink:0}.draw-skip{display:flex;align-items:center;gap:5px;min-height:44px;padding:8px;background:none;border:0;font-size:11px;color:#70879e}.draw-header-actions .icon-button{width:36px;height:44px}.draw-progress{font-size:11px;color:#8094aa;margin:19px 0 12px;min-height:18px;line-height:1.6}.draw-results .draw-summary-note{font-size:11px;line-height:1.8;margin-top:16px}.draw-stage{position:relative;isolation:isolate;display:grid;place-items:center;height:340px;max-height:49dvh;min-height:230px;overflow:hidden;border-radius:21px;background:radial-gradient(ellipse at 50% 44%,color-mix(in srgb,var(--draw-glow),#0c182a 78%),#101d30 73%);border:1px solid color-mix(in srgb,var(--draw-color),#102037 68%);color:var(--draw-color)}.draw-stage:after{content:"";position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--draw-color) 18%,transparent);border-radius:15px;pointer-events:none;z-index:-1}.draw-aura{position:absolute;inset:0;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--draw-color) 18%,transparent),transparent 65%);opacity:.7;z-index:-1}.draw-orbit{position:absolute;width:228px;height:228px;border:1px solid color-mix(in srgb,var(--draw-color) 30%,transparent);border-radius:50%;z-index:-1;animation:draw-orbit 20s linear infinite}.draw-orbit:before{content:"";width:6px;height:6px;background:var(--draw-color);box-shadow:0 0 15px var(--draw-color);border-radius:50%;position:absolute;left:50%;top:-3px}.orbit-two{width:262px;height:262px;border-style:dashed;opacity:.35;animation-direction:reverse;animation-duration:32s}.draw-rays{position:absolute;inset:0;z-index:-1;opacity:.55}.draw-rays i{position:absolute;left:50%;top:44%;width:2px;height:140px;transform-origin:50% 0;transform:rotate(var(--angle));background:linear-gradient(var(--draw-color),transparent 80%);opacity:.5}.draw-common .draw-rays{opacity:.16}.draw-epic .orbit-two{border-width:2px}.draw-legendary .draw-rays i{width:12px;opacity:.3;clip-path:polygon(45% 0,55% 0,100% 100%,0 100%)}.draw-sparks{position:absolute;inset:0;z-index:-1}.draw-sparks i{position:absolute;left:50%;top:44%;width:var(--size);height:var(--size);background:var(--draw-color);transform:rotate(var(--angle)) translateY(var(--distance));clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:draw-twinkle 3.4s var(--delay) ease-in-out infinite;opacity:.5}.draw-seal{position:relative;display:grid;place-items:center;width:125px;height:165px;border:1px solid color-mix(in srgb,var(--draw-color) 70%,transparent);border-radius:22px;background:linear-gradient(140deg,#ffffff12,#ffffff03);box-shadow:0 0 35px color-mix(in srgb,var(--draw-glow) 40%,transparent),inset 0 0 22px #ffffff05;transform:rotate(-5deg)}.draw-seal span{font-size:68px;text-shadow:0 0 22px var(--draw-glow)}.draw-seal i{position:absolute;inset:9px;border:1px solid color-mix(in srgb,var(--draw-color) 23%,transparent);border-radius:14px}.draw-stage[data-phase=summoning] .draw-seal{animation:draw-gather var(--draw-opening) ease-out both}.draw-stage[data-phase=revealing] .draw-seal{animation:draw-open var(--draw-duration) ease-in both}.draw-stage[data-phase=revealing] .draw-aura{animation:draw-bloom var(--draw-duration) ease-out both}.draw-revealed-card{display:flex;flex-direction:column;align-items:center;text-align:center;width:78%;max-width:255px;padding:18px 14px 20px;border-radius:20px;background:linear-gradient(150deg,#16263ef2,#15243cf0);border:1px solid color-mix(in srgb,var(--draw-color) 60%,transparent);box-shadow:0 0 35px color-mix(in srgb,var(--draw-glow) 26%,transparent);animation:draw-card-arrive .42s cubic-bezier(.16,.85,.3,1) both}.draw-rarity{font-size:11px;letter-spacing:5px;padding-left:5px}.draw-reward-art{height:132px;width:100%;display:grid;place-items:center;margin:10px 0}.draw-reward-art>svg{width:100%;height:100%;max-width:178px}.draw-reward-art>svg.lucide{width:65px;height:65px}.draw-revealed-card h3{font-size:18px;line-height:1.5;font-weight:500;color:#f2f6ff;margin:0;overflow-wrap:anywhere}.draw-revealed-card p{font-size:11px;line-height:1.5;margin:8px 0 0}.draw-stage-caption{position:absolute;bottom:11px;left:10px;right:10px;text-align:center;font-size:10px;letter-spacing:1px;margin:0;opacity:.8;pointer-events:none}.draw-step-dots{min-height:30px;display:flex;gap:6px;align-items:center;justify-content:center;padding:8px 0;flex-wrap:wrap}.draw-step-dots i{height:4px;width:4px;border-radius:5px;background:#c3d0dc}.draw-step-dots .is-past{background:#8caac3}.draw-step-dots .is-current{width:16px;background:var(--draw-glow)}.draw-results .draw-continue{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:46px}.draw-results .draw-continue:disabled{opacity:.45;cursor:wait}.draw-results.draw-reveal-modal .reward{animation:none}.draw-results.draw-reveal-modal .reward-art{height:82px}.draw-reveal-modal .reward strong{overflow-wrap:anywhere}html[data-theme=dark] .draw-results .draw-dialog-header{background:transparent}html[data-theme=dark] :is(.draw-dialog-header small,.draw-skip,.draw-progress){color:var(--night-muted)}html[data-theme=dark] .draw-step-dots i{background:var(--night-border)}html[data-theme=dark] .draw-step-dots .is-current{background:var(--draw-color)}html[data-theme=dark] .draw-step-dots .is-past{background:var(--night-muted)}@keyframes draw-gather{0%{opacity:0;transform:translateY(28px) scale(.55) rotate(-14deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(-5deg)}}@keyframes draw-open{0%{opacity:1;transform:rotate(-5deg) scale(1)}60%{opacity:1;transform:rotate(0) scale(1.07);box-shadow:0 0 55px var(--draw-glow)}to{opacity:0;transform:rotate(0) scale(1.23)}}@keyframes draw-bloom{0%{opacity:.4;transform:scale(.65)}to{opacity:1;transform:scale(1.25)}}@keyframes draw-card-arrive{0%{opacity:0;transform:translateY(12px) scale(.91)}to{opacity:1;transform:none}}@keyframes draw-orbit{to{transform:rotate(360deg)}}@keyframes draw-twinkle{0%,to{opacity:.25}50%{opacity:.8}}.draw-reveal-modal.is-reduced :is(.draw-seal,.draw-aura,.draw-orbit,.draw-sparks i,.draw-revealed-card){animation:none}.draw-reveal-modal.is-reduced .draw-rays{opacity:.2}@media(prefers-reduced-motion:reduce){.draw-reveal-modal :is(.draw-seal,.draw-aura,.draw-orbit,.draw-sparks i,.draw-revealed-card){animation:none}}@media(max-height:650px){.draw-results.draw-reveal-modal{padding:14px}.draw-reward-art{height:85px;margin:7px 0}.draw-revealed-card{padding:12px}.draw-revealed-card h3{font-size:16px}.draw-stage-caption{bottom:8px}.draw-progress{margin-top:10px}.draw-step-dots{min-height:26px}}.draw-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.affection-balance{display:flex;gap:8px;align-items:center;color:#bd718b;font-size:13px;margin:-12px 0 20px}.affection-balance strong{font-size:17px}.acquisition-tabs{display:grid;grid-template-columns:repeat(3,1fr);background:#eaf1f7;border-radius:16px;padding:4px;margin-bottom:22px;gap:3px}.acquisition-tabs button{border:0;background:transparent;color:#738aa2;padding:11px 3px;border-radius:12px;font-size:13px}.acquisition-tabs button[aria-selected=true]{background:#fff;color:#385f80;box-shadow:0 2px 8px #426a8d0c}.category-tabs{flex-wrap:wrap}.rarity{font-size:10px;letter-spacing:1px}.rarity-common{--rarity:#7c93a6;color:var(--rarity)}.rarity-rare{--rarity:#4d93bd;color:var(--rarity)}.rarity-epic{--rarity:#9873ba;color:var(--rarity)}.rarity-legendary{--rarity:#b28c43;color:var(--rarity)}.food-gain{font-size:10px!important;line-height:1.6!important;min-height:0!important;color:#ae7c8b!important}.affection-progress{font-size:10px;color:#8e7996;margin:10px 0}.affection-progress progress{display:block;width:100%;height:5px;margin:8px 0;border:0;border-radius:5px;accent-color:#c796b3}.wish-pool{padding:22px 18px;border:1px solid #dbe6f1;background:linear-gradient(155deg,#fff,#edf2fa);border-radius:22px;margin-bottom:20px}.wish-heading{display:flex;align-items:center;gap:14px}.wish-heading h2{font-size:20px;margin:0 0 7px;color:#456780}.wish-heading p{font-size:12px;line-height:1.7;margin:0;color:#8699ac}.wish-symbol{font-size:48px;color:#b89a62}.rarity-odds{display:grid;grid-template-columns:repeat(4,1fr);margin:22px 0;gap:6px}.rarity-odds span{font-size:11px;text-align:center;background:#fff9;border-radius:12px;padding:12px 2px}.rarity-odds strong{display:block;font-size:18px;margin-top:7px;font-weight:500}.wish-rules{font-size:12px;line-height:1.85;color:#8796a8}.wish-pool details{font-size:12px;color:#687f96;margin:17px 0}.wish-pool summary{cursor:pointer;min-height:32px;display:list-item;line-height:32px}.prize-list{padding:0;list-style:none}.prize-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #dae4ed}.prize-list small{display:block;font-size:10px;color:#8c9eae;margin-top:5px}.draw-buttons{display:flex;gap:10px;margin-top:18px}.draw-buttons button{display:flex;justify-content:center;align-items:center;gap:6px;flex:1;min-height:46px;padding:10px 6px;font-size:12px}.draw-history h2{font-size:15px;color:#668098}.draw-history>button{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;text-align:left;background:transparent;border:0;border-bottom:1px solid #e1e9f0;color:#6d8399;padding:14px 0;font-size:12px}.draw-history small{display:block;font-size:10px;color:#9ab;margin-top:5px}.draw-results{width:min(440px,calc(100% - 28px));max-height:85dvh;overflow:auto;border:1px solid #dbe4ed;border-radius:24px;padding:22px;background:#f7faff;color:#52708a;box-sizing:border-box}.draw-results::backdrop{background:#25456466;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.draw-results header{display:flex;align-items:center;justify-content:space-between}.draw-results h2{margin:0;font-size:20px}.draw-results>p{font-size:12px;color:#8b99ad}.reward-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.reward{border:1px solid color-mix(in srgb,var(--rarity),white 70%);border-top:3px solid var(--rarity);background:#fff;border-radius:14px;padding:10px;text-align:center;animation:reward-arrive .35s both}.reward-art{display:flex;height:70px;align-items:center;justify-content:center}.reward-art>svg{width:65px;height:65px;max-width:100%;display:block}.reward strong{display:block;font-size:12px;margin:6px 0;color:#546c85}.reward>small{font-size:9px}.reward>span:last-child{font-size:10px}.draw-results header{position:sticky;top:-22px;padding:10px 0;background:#f7faff;z-index:1}.draw-results>.primary{width:100%;min-height:44px}.wish-pools button:disabled{opacity:.45;cursor:not-allowed}@keyframes reward-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.reward{animation:none}}.pool-selector{display:flex;gap:8px;overflow-x:auto;padding:3px 2px 12px;margin-bottom:8px;scrollbar-width:thin}.pool-selector button{flex-shrink:0;min-height:44px;border:1px solid #d8e5ee;border-radius:14px;padding:10px 16px;background:#eff5fa;color:#7893a9;font-size:12px}.pool-selector [aria-selected=true]{background:#dcecf8;border-color:#8eb5d2;color:#365e80}.pool-hero{position:relative;isolation:isolate;border-radius:17px;overflow:hidden;min-height:245px;margin:-8px -4px 20px;border:1px solid var(--pool-accent)}.pool-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;pointer-events:none}.pool-cover{display:block;width:100%;height:205px;object-fit:contain;padding:15px 10px;position:relative;z-index:1;pointer-events:none}.pool-emblem{height:170px;display:grid;place-items:center;color:var(--pool-accent);font-size:82px;text-shadow:0 0 38px currentColor}.pool-caption{position:relative;z-index:2;padding:16px 18px}.pool-hero .pool-caption h2{font-size:22px;line-height:1.4;margin:0 0 7px;overflow-wrap:anywhere}.pool-caption p{font-size:12px;line-height:1.8;opacity:.85;margin:0;overflow-wrap:anywhere}.pool-particles{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.pool-particles i{position:absolute;width:5px;height:5px;background:currentColor;border-radius:50%;opacity:.7;animation:pool-float var(--particle-duration) var(--particle-delay) linear infinite}.pool-particles.effect-stars i{clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);width:10px;height:10px}.pool-particles.effect-petals i{width:9px;height:6px;border-radius:80% 0}.pool-particles.is-still i{animation:none}@keyframes pool-float{0%{transform:translateY(-80px) rotate(0);opacity:0}20%,80%{opacity:.75}to{transform:translate(30px,180px) rotate(160deg);opacity:0}}@media(prefers-reduced-motion:reduce){.pool-particles i{animation:none}}html[data-theme=dark] .pool-selector button{background:var(--night-soft);color:var(--night-muted);border-color:var(--night-border)}html[data-theme=dark] .pool-selector [aria-selected=true]{background:var(--night-raised);color:var(--night-accent);border-color:var(--night-accent)}:root{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;color:#344e65;background:#eef4f8;font-weight:400;-webkit-font-smoothing:antialiased;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 20% 0,#e1effa 0,transparent 45%),radial-gradient(ellipse at 90% 80%,#eae6f3 0,transparent 40%),#f1f6fa;min-height:100vh}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #6aafcf;outline-offset:4px}svg{flex-shrink:0}img{max-width:100%}.app-shell{max-width:480px;min-height:100svh;margin:auto;background:#f7fafc;box-shadow:0 0 90px #547a9011}.topbar{height:calc(59px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 23px 0;display:flex;align-items:center;gap:11px}.brand-mark{font-family:serif;font-size:23px;color:#527e9d;position:relative;line-height:30px}.brand-mark>span{font-size:10px;position:absolute;right:-7px;top:-5px;color:#a4c5d7}.build-badge{font-size:10px;letter-spacing:1px;color:#92a4b3;padding-left:5px}.balance{margin-left:auto;background:#e8f1f8;border:1px solid #dcebf4;padding:7px 11px;border-radius:20px;display:flex;align-items:center;gap:6px;color:#527da1;font-size:12px}.balance strong{font-variant-numeric:tabular-nums;letter-spacing:.5px}.page{padding:0 21px calc(107px + env(safe-area-inset-bottom))}.eyebrow{font-size:8px;letter-spacing:2px;color:#8ea5b7;font-weight:500}.room-intro{display:flex;align-items:center;justify-content:space-between;padding:12px 1px 20px}h1{font-size:23px;font-weight:650;letter-spacing:1px;margin:7px 0 0}.room-intro h1>span{font-size:15px;color:#d9bd80;margin-left:7px}.icon-button{display:flex;align-items:center;justify-content:center;width:39px;height:39px;border-radius:50%;background:#edf3f7;color:#839cae}.sound-button{background:#fff;border:1px solid #e5edf4;box-shadow:0 3px 12px #43607906}.room-scene{height:clamp(335px,53svh,485px);position:relative;border-radius:26px;overflow:hidden;isolation:isolate;background:#e4edf3;border:4px solid #fff;box-shadow:0 10px 26px #345f7c0d;--facing:1;--bounce:0px;--sx:1;--sy:1;--shadow-scale:1}.room-background{width:100%;height:100%;object-fit:cover;object-position:center;position:absolute;inset:0;z-index:-2;pointer-events:none}.room-scene:after{content:"";position:absolute;inset:auto 0 0;height:43px;background:linear-gradient(transparent,#e0d3c15c);pointer-events:none;z-index:-1}.room-time,.room-affection{position:absolute;top:15px;padding:7px 9px;background:#ffffffe8;color:#7f95a5;border-radius:20px;font-size:9px;display:flex;align-items:center;gap:5px}.room-time{left:13px}.room-affection{right:13px;color:#b58490}.sun-dot{height:5px;width:5px;background:#dabc80;border-radius:100%}.room-speech{position:absolute;left:9%;right:9%;top:25%;padding:13px 12px;border-radius:17px;text-align:center;background:#fffffff0;color:#637f94;font-size:12px;line-height:1.8;box-shadow:0 5px 18px #33526e06;z-index:1}.room-speech:after{content:"";position:absolute;bottom:-5px;left:50%;width:10px;height:10px;background:#fffffff0;transform:rotate(45deg)}.room-shadow{position:absolute;width:43%;height:4%;left:calc(28.5% + var(--walk-x));bottom:17%;opacity:.48;transform:scale(var(--shadow-scale));pointer-events:none}.room-shadow svg{width:100%;height:100%}.pet-position{position:absolute;width:59%;left:calc(20.5% + var(--walk-x));bottom:14%;will-change:left}.pet-facing{transform:scaleX(var(--facing))}.pet-body{padding:0;display:block;width:100%;position:relative;transform-origin:50% 89%;transform:translateY(var(--bounce)) scale(var(--sx),var(--sy));transition:none}.pet-body:disabled{opacity:1}.pet-body>img{display:block;width:100%;pointer-events:none;-webkit-user-select:none;user-select:none}.room-food{width:28%;height:23%;position:absolute;left:calc(36% + var(--walk-x));bottom:9%;pointer-events:none;z-index:3;animation:food-in var(--foodInMs) ease-out}.room-food svg,.room-effect svg{width:100%;height:100%}.room-effect{width:13%;height:14%;position:absolute;left:calc(66% + var(--walk-x));bottom:45%;pointer-events:none;animation:float var(--effectFloatMs) ease-in-out infinite}.pet-body.pat,.pet-body.greet{animation:hop var(--hopMs) ease-in-out}.pet-body.feed{animation:chew var(--chewMs) ease-in-out infinite}.pet-body.sleep{animation:breath var(--sleepMs) ease-in-out infinite}.room-scene[data-motion=rest][data-mode=idle] .pet-body{animation:breath var(--idleBreathMs) ease-in-out infinite}.room-bottom-label{position:absolute;bottom:14px;left:0;right:0;text-align:center;color:#857d76;font-size:9px;letter-spacing:1px;pointer-events:none}.room-actions{display:grid;grid-template-columns:repeat(4,1fr);padding:22px 0 21px;gap:8px}.room-actions button{display:flex;align-items:center;flex-direction:column;gap:9px;font-size:11px;color:#71879a;padding:0}.action-icon{position:relative;display:flex;justify-content:center;align-items:center;width:52px;height:52px;border-radius:19px;border:1px solid #ffffff;box-shadow:0 4px 10px #54708908}.pink{background:#faedef;color:#c990a2}.peach{background:#fcf0e1;color:#c8a075}.blue{background:#e8f2fa;color:#78a4c1}.purple{background:#eeeafa;color:#a39abf}.action-icon small{position:absolute;top:-4px;right:-3px;min-width:19px;height:19px;border-radius:10px;background:#fff;color:#bc956d;border:1px solid #f3e5d6;font-size:10px;line-height:18px}.visit-card{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:15px 14px;background:linear-gradient(115deg,#ebf3fa,#edf0fa);border:1px solid #e2eaf2;border-radius:17px}.visit-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#fff9;border-radius:13px;color:#7c9db8}.visit-card>span:nth-child(2){flex:1}.visit-card strong{font-size:12px;font-weight:600;display:block}.visit-card small{font-size:9px;color:#92a1b1;display:block;margin-top:6px}.visit-card>svg{color:#8fa9c0}.install-strip{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;font-size:10px;color:#93a6b5;padding:16px 0 2px}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;height:calc(77px + env(safe-area-inset-bottom));padding:9px 15px calc(7px + env(safe-area-inset-bottom));border-top:1px solid #e9f0f5;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:grid;grid-template-columns:repeat(4,1fr);z-index:10}.bottom-nav button{display:flex;align-items:center;flex-direction:column;gap:3px;font-size:10px;color:#a1b0bd;position:relative}.bottom-nav button>span{width:43px;height:31px;display:flex;align-items:center;justify-content:center;border-radius:12px}.bottom-nav button.active{color:#5c8caf}.bottom-nav button.active>span{background:#edf4f9}.bottom-nav i{width:3px;height:3px;background:#7ca6c1;border-radius:50%;margin-top:1px}.page-title{padding:22px 0 25px}.page-title h1{font-size:22px;letter-spacing:.5px;margin-top:10px}.page-title p{font-size:11px;color:#93a5b4;margin:11px 0 0;line-height:1.8}.collection-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:19px}.collection-toolbar>span{font-size:10px;color:#a0b0bd}.segmented{background:#eaf1f6;padding:4px;border-radius:20px;display:flex;gap:4px}.segmented button{font-size:10px;padding:7px 12px;border-radius:20px;color:#8ca1b2}.segmented button.active{color:#587e9c;background:#fff;box-shadow:0 2px 4px #37577808}.item-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.item-card{border:1px solid #e8eef3;border-radius:19px;background:#fff;overflow:hidden}.item-art{height:153px;padding:22px 17px;position:relative;background:radial-gradient(ellipse at 50% 80%,#e7f0f7,transparent 65%),#f2f7fa}.item-art>svg{width:100%;height:100%}.equipped-badge,.stock-badge{position:absolute;left:8px;top:9px;padding:4px 6px;background:#ffffffd9;border-radius:10px;font-size:8px;color:#81a4b3;display:flex;align-items:center;gap:3px}.stock-badge{color:#b29a83}.item-info{padding:13px 12px}.item-info h2{font-size:12px;font-weight:600;margin:0}.item-info p{font-size:9px;line-height:1.5;color:#9aaab6;margin:7px 0 12px}.item-button{border-radius:10px;background:#eaf2f8;color:#7094af;width:100%;min-height:35px;font-size:10px;display:flex;align-items:center;justify-content:center;gap:4px}.item-button.quiet{background:#f4f7f9;color:#9cabb7}.page-note{font-size:10px;color:#9cabb7;text-align:center;line-height:1.8;margin:20px 0}.points-card{position:relative;overflow:hidden;border:1px solid #dce9f5;background:linear-gradient(130deg,#e0edf9,#eff0fc);padding:27px 25px 23px;border-radius:25px}.points-card>p{font-size:11px;color:#7897b2;margin:0 0 13px}.points-card>strong{font-size:48px;line-height:1;letter-spacing:1px;font-weight:550;color:#4a7295;display:block}.points-label{font-size:9px;display:block;color:#8ea5b9;margin-top:13px}.points-card>button{display:flex;align-items:center;gap:18px;margin-top:26px;font-size:11px;background:#ffffff94;border-radius:12px;padding:11px 13px;color:#6a8fae}.points-stars{position:absolute;right:28px;top:21px;color:#b7cce3;font-size:58px;transform:rotate(13deg)}.points-stars>span{position:absolute;right:65px;top:66px;font-size:24px;color:#d1d6ed}.gift-demo{display:flex;align-items:center;gap:12px;width:100%;border:1px solid #f0e8dc;background:#fbf6ed;border-radius:18px;padding:17px 13px;margin-top:18px;text-align:left}.gift-icon{color:#c4a27b;display:flex}.gift-demo>span:nth-child(2){flex:1}.gift-demo strong{font-size:11px;font-weight:600;color:#9c805f;display:block}.gift-demo small{font-size:9px;color:#b4a28c;display:block;margin-top:7px}.gift-demo>b{font-size:16px;font-weight:500;color:#b4936b}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:30px 0 16px}.section-heading h2,.settings-group h2{font-size:12px;font-weight:600;margin:0}.section-heading>span{font-size:9px;color:#a4b3bf}.empty-state{padding:35px 10px;text-align:center;color:#b0c2d0}.empty-state p{font-size:12px;color:#8ea6ba;margin:15px 0 8px}.empty-state small{font-size:10px;color:#a8b6c0}.ledger{background:#fff;border:1px solid #e9eff4;border-radius:18px;padding:0 14px}.ledger-row{display:flex;align-items:center;gap:10px;padding:17px 0;border-bottom:1px solid #f0f4f7}.ledger-row:last-child{border:0}.ledger-symbol{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:#f2f5f8;border-radius:12px;color:#a5b6c2}.ledger-symbol.plus{background:#faf4e9;color:#c7aa7c}.ledger-row>div{flex:1}.ledger-row strong{display:block;font-size:11px;font-weight:500}.ledger-row small{display:block;font-size:9px;color:#a6b4bf;margin-top:6px}.ledger-row>b{font-weight:500;font-size:13px;color:#8f9cab}.ledger-row>b.positive{color:#b79b6f}.profile-card{display:flex;align-items:center;gap:14px;background:linear-gradient(130deg,#edf4fa,#f1f1fb);border:1px solid #e4ecf4;border-radius:20px;padding:18px 14px;margin-bottom:25px}.profile-card>img{width:65px;height:65px;object-fit:contain}.profile-card>div{flex:1}.profile-card h2{font-size:14px;margin:0;font-weight:600}.profile-card p{font-size:10px;color:#90a4b5;margin:9px 0 0;display:flex;gap:4px;align-items:center}.profile-card>svg{color:#c5b6cf;margin-right:8px}.settings-group{margin-bottom:22px;background:#fff;border:1px solid #e8eef3;border-radius:18px;padding:18px 15px 3px}.settings-group h2{color:#92a6b7;font-size:10px;margin-bottom:3px;letter-spacing:.5px}.toggle-row,.settings-link{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;text-align:left;padding:17px 0;border-bottom:1px solid #f1f5f8}.toggle-row:last-child,.settings-link:last-child{border:0}.toggle-row strong,.settings-link>span{font-size:12px;font-weight:400;display:block}.toggle-row small,.settings-link small{font-size:9px;line-height:1.7;color:#a1b0bd;display:block;margin-top:6px}.switch{width:36px;height:22px;flex-shrink:0;border-radius:20px;background:#e7edf2;padding:3px;transition:background .2s}.switch i{display:block;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #4563;transition:transform .2s}.switch.on{background:#92b5cc}.switch.on i{transform:translate(14px)}.settings-link>svg{color:#a3b6c5}.cache-status{padding:14px 0;font-size:9px;color:#a0afbc;display:flex;align-items:center;gap:6px;line-height:1.7}.status-dot{width:5px;height:5px;border-radius:50%;background:#d6c6a4;flex-shrink:0}.status-dot.ready{background:#94b9ac}.version-note{text-align:center;font-size:9px;color:#b1bdc8;line-height:2.2;padding:4px 0}.connection-banner,.update-banner{display:flex;align-items:center;gap:6px;margin:0 21px 7px;padding:9px 10px;font-size:10px;line-height:1.7;color:#a38e6e;background:#faf4e9;border-radius:10px}.update-banner{justify-content:space-between;background:#e9f3fa;color:#6488a4}.update-banner button{font-size:10px;text-decoration:underline}.toast{position:fixed;bottom:calc(94px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);width:max-content;max-width:min(88vw,420px);background:#35546aed;color:#fff;font-size:11px;line-height:1.7;padding:12px 17px;border-radius:14px;box-shadow:0 5px 20px #263f6520;z-index:40;pointer-events:none;text-align:center}.sheet{position:fixed;inset:auto 0 0;margin:0 auto;width:min(100%,480px);max-width:480px;max-height:90svh;border:0;border-radius:29px 29px 0 0;background:#fbfdff;color:#3e5d75;padding:14px 26px calc(24px + env(safe-area-inset-bottom));box-shadow:0 -10px 70px #28476520}.sheet::backdrop{background:#2f496256;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sheet-handle{width:35px;height:4px;border-radius:4px;background:#dfe8ef;margin:0 auto 19px}.sheet-close{position:absolute;top:25px;right:19px;width:30px;height:30px}.sheet-icon{width:58px;height:58px;background:#eaf3fa;color:#8daec7;border-radius:20px;display:flex;align-items:center;justify-content:center;margin:4px auto 17px}.sheet h2{font-size:20px;text-align:center;margin:0;font-weight:600;letter-spacing:1px}.sheet>p{font-size:11px;line-height:1.9;color:#96a8b7;text-align:center;margin:15px 0 22px}.install-step{display:flex;align-items:start;gap:13px;margin:24px 0}.install-step>span{width:26px;height:26px;background:#eaf2f8;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#799eb9;font-size:12px}.install-step strong{display:flex;gap:5px;align-items:center;font-size:12px;font-weight:500}.install-step small{font-size:10px;color:#98abbc;line-height:1.7;display:block;margin-top:7px}.sheet>p.sheet-tip{background:#f0f5f9;text-align:left;border-radius:12px;padding:12px 14px;font-size:10px;margin:24px 0 12px}.primary{width:100%;padding:14px;background:#84a9c5;color:#fff;border-radius:13px;font-size:12px;margin:8px 0}.text-button{width:100%;text-align:center;padding:13px;font-size:11px;color:#92a7b8}.platform-links button{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:18px 0;border-bottom:1px solid #eaf0f5}.platform-links button:last-child{border:0}.platform-icon{display:flex;width:40px;height:40px;align-items:center;justify-content:center;background:#edf4fa;color:#8aaac2;border-radius:14px}.platform-links button>span:nth-child(2){flex:1}.platform-links strong{display:block;font-size:12px;font-weight:500}.platform-links small{display:block;font-size:10px;color:#a6b5c1;margin-top:7px}.platform-links button>svg{color:#9fb3c2}.loading-screen{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.loading-screen>img{width:140px}.loading-screen h1{font-size:19px;margin:20px 0 5px}.loading-screen p{font-size:12px;color:#92a7b8}@keyframes hop{0%,to{transform:scale(1)}20%{transform:scale(1.08,.9)}48%{transform:translateY(-25px) scale(.97,1.04)}80%{transform:scale(1.06,.93)}}@keyframes chew{0%,to{transform:scale(1)}50%{transform:scale(1.02,.985)}}@keyframes breath{0%,to{transform:scaleY(.995)}50%{transform:scale(.993,1.014)}}@keyframes float{0%,to{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-8px) rotate(5deg)}}@keyframes food-in{0%{transform:translate(25px,38px);opacity:0}to{transform:translate(0);opacity:1}}.room-scene[data-reduced=true] *{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(min-width:700px){.app-shell{border-left:1px solid #e3edf5;border-right:1px solid #e3edf5}.topbar{padding-top:9px;height:67px}.room-scene{height:480px}.page{padding-inline:26px}.room-actions{padding-block:24px}.bottom-nav{border-inline:1px solid #e5edf4}.sheet{bottom:18px;border-radius:27px}}@media(max-width:359px){.page{padding-inline:15px}.topbar{padding-inline:18px}h1{font-size:21px}.action-icon{width:46px;height:46px}.item-art{height:135px}.item-info p{font-size:8px}.room-speech{font-size:11px}}.placed-decoration{position:absolute;pointer-events:none}.placed-decoration svg{width:100%;height:100%}.pet-position{z-index:2}.room-effect{z-index:4}.room-speech{z-index:6}.room-shadow{z-index:0}.food-picker{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;font-size:13px;color:var(--muted)}.food-picker select{max-width:65%;border:1px solid #c8dceb;border-radius:12px;padding:8px;background:#fff;color:inherit;font:inherit}.auth-screen{max-width:480px;min-height:100svh;margin:auto;padding:calc(24px + env(safe-area-inset-top)) 26px calc(32px + env(safe-area-inset-bottom));text-align:center;background:radial-gradient(ellipse at 50% 8%,#dcecf8 0,transparent 48%),#f7fafc}.auth-hero{height:150px;position:relative;display:flex;align-items:center;justify-content:center;margin:4px 0 10px}.auth-hero img{width:145px;filter:drop-shadow(0 10px 13px #7198b322);animation:auth-float 4s ease-in-out infinite}.auth-sparkle{position:absolute;left:17%;top:34px;color:#b0cbdc;font-size:23px}.auth-sparkle.second{left:auto;right:17%;top:94px;color:#d6b67a;font-size:20px}.auth-screen h1{font-size:25px;margin-top:12px}.auth-description{font-size:12px;color:#8299ac;line-height:1.9;margin:14px 0 24px}.auth-card{background:#fff;border:1px solid #e3edf4;border-radius:25px;padding:20px;box-shadow:0 12px 36px #6486a00a;text-align:left}.auth-tabs{margin-bottom:22px;display:grid;grid-template-columns:1fr 1fr}.auth-tabs button{font-size:13px;min-height:40px}.form-field{display:flex;flex-direction:column;gap:9px;font-size:12px;font-weight:600;color:#5b7890;margin:18px 0}.form-field small{font-size:10px;line-height:1.7;font-weight:400;color:#8c9eaf}.form-field input{min-width:0;width:100%;border:1px solid #dce7ef;background:#f7fafc;border-radius:12px;padding:12px 13px;min-height:46px;font:inherit;font-size:16px;font-weight:400;color:#344e65;outline:none}.form-field input:focus{border-color:#8cb6ce;box-shadow:0 0 0 3px #9bc0d41c}.form-field input:disabled{opacity:.65}.password-field{position:relative;display:flex}.password-field input{padding-right:47px}.password-toggle{position:absolute;right:2px;top:1px;height:44px;width:44px;display:grid;place-items:center;color:#8ca5b7}.auth-submit{display:flex;gap:10px;align-items:center;justify-content:center;min-height:48px;margin-top:25px}.auth-footnote{max-width:310px;margin:20px auto 0;font-size:10px;line-height:1.9;color:#93a5b4}.form-error{font-size:12px;color:#a75461;line-height:1.7;background:#fff2f3;padding:10px 12px;border-radius:10px}.form-notice{font-size:11px;line-height:1.8;color:#7b8ea0;display:flex;align-items:center;gap:7px}.secondary{display:flex;align-items:center;justify-content:center;gap:6px;padding:11px 12px;min-height:44px;font-size:11px;color:#638ba9;background:#eaf3f9;border:1px solid #dce9f2;border-radius:12px}.sync-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;padding:8px 22px;background:#fff3e2;color:#a27b48}.sync-banner button{min-height:40px;color:#647e94;flex-shrink:0}.pending-banner{margin:8px 21px 14px;padding:16px;border-radius:16px;background:#fff6e9;border:1px solid #f0e5d2;color:#947951;font-size:12px}.pending-banner p{font-size:11px;margin:9px 0}.pending-banner small{display:block;line-height:1.7;font-size:10px}.pending-banner .secondary{margin-top:13px;width:100%;background:#fffaf2;border-color:#eee0c9;color:#96774a}.account-sync{display:flex;gap:7px;align-items:center;font-size:10px;color:#829aac;padding:0 4px 13px;margin-top:-7px}.account-sync>span:nth-child(2){flex:1}.account-sync button{width:42px;height:42px;display:grid;place-items:center;color:#789db6}.binding-card{padding:20px;background:linear-gradient(130deg,#f0f6fb,#f4f6fc);border:1px solid #e1ebf3;border-radius:20px;margin:8px 0 23px}.binding-heading{display:flex;align-items:center;gap:10px}.binding-heading h2{font-size:13px;font-weight:600;margin:0}.binding-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:#fff9;color:#8aacbe}.binding-card p{font-size:11px;line-height:1.9;color:#859bae;margin:13px 0}.binding-card .bound-uid{font-size:15px;color:#577d98;letter-spacing:1px}.binding-card.bound{background:linear-gradient(120deg,#edf5f4,#f2f7fa)}.binding-card.bound .binding-icon{color:#86aaa1}.binding-card .binding-note{font-size:9px;line-height:1.9;margin:17px 0 0;color:#9baaba}.binding-card .form-error{color:#a75461}.binding-card .form-field{margin:17px 0}.binding-challenge>strong{display:block;font-size:12px;color:#799ab4;margin-top:18px}.binding-challenge .binding-code{font-family:ui-monospace,SFMono-Regular,monospace;font-size:15px;letter-spacing:.2px;background:#fff}.binding-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.binding-challenge>small{display:block;text-align:center;font-size:10px;color:#99a8b6;margin-top:15px}.binding-challenge .text-button{width:100%;min-height:44px}.logout-button{display:block;width:100%;min-height:46px;margin:18px 0;border:1px solid #e3ebf2;border-radius:13px;color:#8297aa;font-size:12px;background:#fff}.account-preview-link{border-radius:14px;background:#eff4f9;margin:16px 0}.profile-card h2{overflow-wrap:anywhere}.item-art>svg:not(:has(image)){display:block;margin:24px auto;color:#b2c5d2}.sheet{max-height:calc(100dvh - 36px);overflow:auto}.toast{z-index:30}@keyframes auth-float{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-7px) rotate(2deg)}}@media(prefers-reduced-motion:reduce){.auth-hero img{animation:none}}@media(max-width:360px){.auth-screen{padding-left:20px;padding-right:20px}.auth-card,.binding-card{padding:16px}.binding-buttons{grid-template-columns:1fr}.room-intro h1{font-size:21px}}.app-shell.is-home{height:100svh;height:100dvh;min-height:0;display:flex;flex-direction:column;padding-bottom:calc(70px + env(safe-area-inset-bottom))}.page.page-home{display:flex;flex:1;min-height:0;padding:calc(8px + env(safe-area-inset-top)) 8px 8px}.is-home>.connection-banner,.is-home>.update-banner,.is-home>.pending-banner{flex-shrink:0;margin:8px 8px 0}.is-home>.sync-banner{flex-shrink:0;font-size:10px;padding:0 14px}.is-home>.sync-banner button{min-height:32px}.pet-room{display:flex;flex:1;min-height:0;min-width:0}.pet-room .room-scene{flex:1;height:auto;min-height:0;border:1px solid #91b5cc;border-radius:25px;box-shadow:inset 0 0 0 3px #ffffffbf,0 2px 12px #5a81951a;outline:3px solid #ffffffa6;outline-offset:-4px}.room-tint{position:absolute;inset:0;pointer-events:none;z-index:-1;mix-blend-mode:multiply}.room-world{position:absolute;inset:0 0 86px}.room-world .room-speech{top:22%;left:8%;right:8%;font-size:12px;animation:subtitle-in .18s ease-out}.pet-hit{display:block;width:100%;padding:0}.pet-hit:disabled{opacity:1}.pet-hit img{display:block;width:100%;pointer-events:none;-webkit-user-select:none;user-select:none}.pet-body>button{position:relative;z-index:0}.pet-room .room-actions{position:absolute;bottom:10px;left:12px;right:12px;z-index:8;padding:8px 4px 7px;gap:0;border:1px solid #ffffffce;border-radius:22px;background:#ffffffd9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 6px 20px #3a65891a}.pet-room .room-actions button{min-height:54px;gap:3px;font-size:10px;line-height:1.5}.pet-room .action-icon{width:36px;height:33px;border:0;border-radius:12px;box-shadow:none;background:transparent}.bottom-nav{height:calc(70px + env(safe-area-inset-bottom));padding-top:7px;padding-bottom:calc(5px + env(safe-area-inset-bottom))}.profile-visit{margin-bottom:22px}.page:not(.page-home){padding-top:calc(10px + env(safe-area-inset-top))}.collection-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 10px}.collection-title>p{width:100%}.collection-balance{display:flex;align-items:center;gap:5px;color:#648fac;font-size:14px;font-variant-numeric:tabular-nums}.category-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;background:#eaf1f6;padding:5px;border-radius:17px;margin-bottom:16px}.category-tabs button{border-radius:12px;min-height:42px;font-size:13px;color:#8c9eae}.category-tabs [aria-selected=true]{background:#fff;color:#547c99;box-shadow:0 2px 6px #3859750a}.collection-toolbar{min-height:38px;margin-bottom:12px;gap:12px}.owned-filter,.arrange-open{display:flex;gap:5px;align-items:center;min-height:40px;font-size:11px;color:#8fa3b4}.owned-filter.active{color:#537f9e}.owned-filter svg{border:1px solid #bdcdd8;border-radius:4px;color:transparent}.owned-filter.active svg{color:#6d99b5;background:#e6f0f7}.arrange-open{color:#6289a5}.collection-tip{font-size:11px;color:#8fa3b3;line-height:1.8;margin:0 0 15px}.background-preview{padding:0;height:172px;background:#e7f1f7}.background-preview>svg{width:100%;height:100%;display:block}.preview-tint{position:absolute;inset:0;mix-blend-mode:multiply;pointer-events:none}.equipped-badge{z-index:1}.item-button{min-height:42px}.item-info p{min-height:28px}.layout-editor{position:fixed;inset:0;width:min(100%,480px);height:100svh;height:100dvh;max-width:480px;max-height:100dvh;margin:auto;border:0;border-radius:0;background:#f7fafc;color:#344e65;padding:calc(10px + env(safe-area-inset-top)) 12px calc(10px + env(safe-area-inset-bottom));overflow:hidden}.layout-editor[open]{display:flex;flex-direction:column;gap:8px}.layout-editor::backdrop{background:#31465e80}.layout-editor header{display:flex;justify-content:space-between;align-items:center;padding:0 3px;flex-shrink:0}.layout-editor h2{font-size:17px;margin:0;font-weight:600}.layout-editor .icon-button{width:40px;height:40px}.layout-hint{font-size:11px;line-height:1.6;color:#8b9faf;margin:0 4px 5px;flex-shrink:0}.layout-preview{display:flex;flex:1;min-height:0}.editing .room-world{bottom:0}.editing *{animation:none!important}.placed-decoration.movable{pointer-events:auto;touch-action:none;cursor:grab;padding:0;border:1px dashed transparent;border-radius:10px;background:transparent}.placed-decoration.movable.selected{border-color:#548eae;background:#fff3;outline:2px solid #ffffffb3;outline-offset:1px}.placed-decoration.movable:active{cursor:grabbing}.placed-decoration.movable svg{pointer-events:none}.pet-body>.placed-decoration{position:absolute}.layout-tools{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-shrink:0}.layout-tools label{display:flex;align-items:center;gap:6px;font-size:10px;color:#8aa1b4;min-width:0}.layout-tools select{min-height:44px;border:0;border-radius:12px;background:#eaf1f7;font:inherit;font-size:16px;color:#527a98;padding:0 6px;max-width:150px}.layout-tools>button{min-height:44px;font-size:10px;color:#86a0b3;flex-shrink:0}.layout-editor footer{display:flex;gap:9px;flex-shrink:0}.layout-editor footer button{flex:1;margin:0;min-height:46px}.layout-editor .form-error{margin:0;flex-shrink:0;font-size:11px;padding:6px}@keyframes subtitle-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(max-height:550px){.pet-room .room-actions{padding:2px;bottom:7px}.room-world{bottom:69px}.page.page-home{padding-top:4px}.room-world .room-speech{top:8%;padding:6px}.layout-hint{display:none}.layout-tools select{min-height:35px}.layout-editor footer button{min-height:36px;padding:8px}.layout-editor{gap:4px}}.editing .pet-position{pointer-events:none}.editing .pet-body>.movable{pointer-events:auto}.danmaku-auth .auth-hero{height:126px}.danmaku-auth .auth-hero img{width:130px}.danmaku-auth h1{font-size:23px;letter-spacing:.3px}.danmaku-auth .auth-description{margin-bottom:20px}.danmaku-auth .auth-card{padding:20px}.danmaku-auth .form-field:first-child{margin-top:0}.login-step{display:flex;align-items:center;gap:9px;font-size:14px;color:#6289a6}.login-challenge>p{font-size:12px;line-height:1.9;color:#8197ab;margin:16px 0}.login-command{font-family:ui-monospace,monospace!important;letter-spacing:.2px}.login-challenge>small{display:block;text-align:center;font-size:10px;color:#95a7b5;margin-top:14px}.login-challenge .text-button{padding:10px;min-height:42px}.login-privacy{font-size:10px;line-height:1.8;color:#96a7b5;margin:14px 0 0;padding-top:14px;border-top:1px solid #edf2f6}.danmaku-auth .auth-footnote{font-size:11px;line-height:1.9}.danmaku-auth .auth-submit{margin-top:20px}.danmaku-auth .binding-buttons{grid-template-columns:1fr 1fr}.danmaku-auth .binding-buttons button{font-size:11px;padding-inline:5px}@media(max-width:359px){.danmaku-auth h1{font-size:21px}.danmaku-auth{padding-inline:16px}.danmaku-auth .auth-card{padding:17px}.danmaku-auth .login-command{font-size:14px}.danmaku-auth .auth-hero{height:108px}.danmaku-auth .auth-hero img{width:112px}}.bottom-nav{grid-template-columns:repeat(4,1fr)}button.collection-balance{order:-1;min-height:40px;padding:8px 13px;border-radius:20px;margin-bottom:15px;background:#eaf3fa;cursor:pointer;border:1px solid #d4e5f2;transition:background .2s}.collection-title>div{width:100%}button.collection-balance:hover{background:#e0eef9}.points-back{display:flex;align-items:center;gap:6px;border:0;background:none;color:#5785a4;padding:8px 0;margin-bottom:10px;font:inherit}.appearance-settings{padding-bottom:13px}.appearance-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:14px}.appearance-options button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;min-height:68px;padding:10px 4px;border-radius:13px;border:1px solid #e1ebf3;background:#f5f8fb;color:#6a8399;font-size:11px}.appearance-options [aria-pressed=true]{background:#e8f2fa;color:#456e90;border-color:#7daccd;box-shadow:inset 0 0 0 1px #7daccd}.appearance-settings>p{margin:12px 0 0;color:#859bad;font-size:10px;line-height:1.8}html[data-theme=dark]{color:var(--night-text);background:var(--night-canvas)}html[data-theme=dark] body{background:radial-gradient(ellipse at 20% 0,#1d3047 0,transparent 55%),radial-gradient(ellipse at 90% 80%,#27253e 0,transparent 50%),var(--night-canvas)}html[data-theme=dark] :is(.app-shell,.layout-editor){background:var(--night-page);color:var(--night-text);border-color:var(--night-border)}html[data-theme=dark] .app-shell{box-shadow:0 0 90px #0003}html[data-theme=dark] .bottom-nav{background:var(--night-glass);border-color:var(--night-border)}html[data-theme=dark] .bottom-nav button{color:var(--night-muted)}html[data-theme=dark] .bottom-nav button.active{color:var(--night-accent)}html[data-theme=dark] .bottom-nav button.active>span{background:var(--night-raised)}html[data-theme=dark] .bottom-nav i{background:var(--night-accent)}html[data-theme=dark] :is(button,a,input,select,textarea):focus-visible{outline-color:var(--night-accent)}html[data-theme=dark] .pet-room .room-scene{background:var(--night-page);border-color:#6b87a4;box-shadow:inset 0 0 0 3px #b6d2ef22,0 2px 12px #0003;outline-color:#b6d2ef22}html[data-theme=dark] .pet-room .room-actions{background:var(--night-glass);border-color:#91b8d24d;box-shadow:0 6px 20px #0003}html[data-theme=dark] .pet-room .room-actions button{color:var(--night-text)}html[data-theme=dark] .pink{color:var(--night-pink)}html[data-theme=dark] .peach{color:var(--night-gold)}html[data-theme=dark] .blue{color:var(--night-accent)}html[data-theme=dark] .purple{color:var(--night-purple)}html[data-theme=dark] .room-speech{background:var(--night-glass);color:var(--night-text);box-shadow:0 5px 18px #0002}html[data-theme=dark] .room-speech:after{background:var(--night-glass)}html[data-theme=dark] :is(.settings-group,.item-card,.ledger,.auth-card,.visit-shortcuts button,.song-catalog,.food-picker-option,.logout-button){background:var(--night-surface);border-color:var(--night-border)}html[data-theme=dark] :is(.profile-card,.binding-card,.binding-card.bound,.points-card,.wish-pool){background:linear-gradient(130deg,var(--night-surface),#222e45);border-color:var(--night-border)}html[data-theme=dark] :is(.item-art,.background-preview){background:radial-gradient(ellipse at 50% 80%,#38506b55,transparent 65%),var(--night-soft)}html[data-theme=dark] :is(.item-button,.secondary,.icon-button,.sheet-icon,.platform-icon,.visit-icon,.binding-icon,.account-preview-link,.install-step>span,.layout-tools select){background:var(--night-soft);color:var(--night-accent);border-color:var(--night-border)}html[data-theme=dark] :is(.item-button.quiet,.ledger-symbol){background:var(--night-soft);color:var(--night-muted)}html[data-theme=dark] :is(.equipped-badge,.stock-badge){background:var(--night-glass);color:var(--night-accent)}html[data-theme=dark] .primary{background:var(--night-primary);color:var(--night-on-primary)}html[data-theme=dark] :is(.category-tabs,.segmented,.acquisition-tabs){background:var(--night-soft)}html[data-theme=dark] :is(.category-tabs button,.segmented button,.acquisition-tabs button){color:var(--night-muted)}html[data-theme=dark] :is(.category-tabs [aria-selected=true],.segmented button.active,.acquisition-tabs [aria-selected=true]){background:var(--night-raised);color:var(--night-accent);box-shadow:0 2px 6px #0002}html[data-theme=dark] button.collection-balance{background:var(--night-soft);color:var(--night-accent);border-color:var(--night-border)}html[data-theme=dark] button.collection-balance:hover{background:var(--night-raised)}html[data-theme=dark] :is(.owned-filter.active,.arrange-open,.points-back){color:var(--night-accent)}html[data-theme=dark] .owned-filter svg{border-color:var(--night-muted)}html[data-theme=dark] .owned-filter.active svg{color:var(--night-accent);background:var(--night-soft)}html[data-theme=dark] :is(.toggle-row,.settings-link,.ledger-row,.platform-links button,.login-privacy){border-color:var(--night-border)}html[data-theme=dark] .switch{background:#425369}html[data-theme=dark] .switch.on{background:#7ea7c9}html[data-theme=dark] .switch i{background:#e0ebf5}html[data-theme=dark] :is(.eyebrow,.page-title p,.collection-toolbar>span,.item-info p,.page-note,.collection-tip,.owned-filter,.section-heading>span,.ledger-row small,.ledger-row>b,.profile-card p,.settings-group h2,.toggle-row small,.settings-link small,.settings-link>svg,.cache-status,.version-note,.sheet>p,.install-step small,.text-button,.platform-links small,.platform-links button>svg,.loading-screen p,.layout-hint,.layout-tools label,.layout-tools>button,.appearance-settings>p,.food-picker-hint,.food-picker-option small,.empty-state,.empty-state p,.empty-state small){color:var(--night-muted)}html[data-theme=dark] :is(.points-card>p,.points-card>strong,.points-card>button,.binding-card .bound-uid,.binding-challenge>strong,.account-sync button){color:var(--night-accent)}html[data-theme=dark] .points-card>button{background:var(--night-raised)}html[data-theme=dark] .points-label{color:var(--night-muted)}html[data-theme=dark] :is(.points-stars,.points-stars>span){color:#607898}html[data-theme=dark] :is(.gift-demo,.connection-banner,.sync-banner,.pending-banner){background:var(--night-warning-bg);color:var(--night-gold);border-color:#66533d}html[data-theme=dark] :is(.gift-demo strong,.gift-demo small,.gift-demo>b,.gift-icon,.ledger-row>b.positive){color:var(--night-gold)}html[data-theme=dark] .ledger-symbol.plus{color:var(--night-gold);background:var(--night-warning-bg)}html[data-theme=dark] .pending-banner .secondary{color:var(--night-gold);background:#41382e;border-color:#66533d}html[data-theme=dark] .sync-banner button{color:var(--night-accent)}html[data-theme=dark] .update-banner{background:var(--night-soft);color:var(--night-accent)}html[data-theme=dark] .toast{background:#2d4159f5;color:var(--night-text);box-shadow:0 5px 20px #0004}html[data-theme=dark] :is(.sheet,.draw-results,.draw-results header){background:var(--night-surface);color:var(--night-text);border-color:var(--night-border)}html[data-theme=dark] dialog::backdrop{background:#040b17a3}html[data-theme=dark] .sheet-handle{background:var(--night-border)}html[data-theme=dark] .sheet>p.sheet-tip{background:var(--night-soft)}html[data-theme=dark] .food-picker-option{color:var(--night-text)}html[data-theme=dark] .food-picker-option:active{background:var(--night-raised)}html[data-theme=dark] .food-picker-icon{background:var(--night-warning-bg);color:var(--night-gold)}html[data-theme=dark] .placed-decoration.movable.selected{border-color:var(--night-accent);outline-color:#bbd9f477;background:#a4c9eb22}html[data-theme=dark] .auth-screen{background:radial-gradient(ellipse at 50% 8%,#283f5b 0,transparent 48%),var(--night-page);color:var(--night-text)}html[data-theme=dark] :is(.auth-description,.auth-footnote,.form-field small,.form-notice,.account-sync,.binding-card p,.binding-card .binding-note,.binding-challenge>small,.login-challenge>p,.login-challenge>small,.login-privacy){color:var(--night-muted)}html[data-theme=dark] :is(.form-field,.login-step,.password-toggle){color:var(--night-accent)}html[data-theme=dark] :is(.form-field input,.binding-challenge .binding-code,.food-picker select){background:var(--night-page);color:var(--night-text);border-color:var(--night-border)}html[data-theme=dark] .form-field input:focus{border-color:var(--night-accent)}html[data-theme=dark] :is(.form-error,.binding-card .form-error){background:var(--night-danger-bg);color:var(--night-danger)}html[data-theme=dark] .binding-card.bound .binding-icon{color:var(--night-success)}html[data-theme=dark] .profile-card>svg{color:var(--night-purple)}html[data-theme=dark] .appearance-options button{background:var(--night-soft);color:var(--night-muted);border-color:var(--night-border)}html[data-theme=dark] .appearance-options [aria-pressed=true]{background:var(--night-raised);color:var(--night-accent);border-color:var(--night-accent);box-shadow:inset 0 0 0 1px var(--night-accent)}html[data-theme=dark] .affection-balance{color:var(--night-pink)}html[data-theme=dark] .food-gain{color:var(--night-pink)!important}html[data-theme=dark] .affection-progress{color:var(--night-purple)}html[data-theme=dark] .rarity-common{--rarity: #a4b9ca}html[data-theme=dark] .rarity-rare{--rarity: #8cc2e5}html[data-theme=dark] .rarity-epic{--rarity: #ccb0eb}html[data-theme=dark] .rarity-legendary{--rarity: #e1c187}html[data-theme=dark] :is(.wish-pool h2,.reward strong,.song-heading h2){color:var(--night-text)}html[data-theme=dark] :is(.wish-heading p,.wish-rules,.wish-pool details,.draw-history>button,.draw-results>p,.prize-list small,.draw-history h2,.draw-history small){color:var(--night-muted)}html[data-theme=dark] :is(.rarity-odds>span,.reward){background:var(--night-soft)}html[data-theme=dark] .reward{border-color:color-mix(in srgb,var(--rarity),var(--night-soft) 70%);border-top-color:var(--rarity)}html[data-theme=dark] :is(.prize-list li,.draw-history>button){border-color:var(--night-border)}html[data-theme=dark] :is(.visit-shortcuts button,.song-search,.song-list,.song-pagination button,.song-tags button){background:var(--night-surface);border-color:var(--night-border);color:var(--night-muted)}html[data-theme=dark] :is(.visit-link-icon,.song-copy){background:var(--night-soft);color:var(--night-accent)}html[data-theme=dark] :is(.visit-shortcuts strong,.song-search input,.song-select strong){color:var(--night-text)}html[data-theme=dark] :is(.visit-shortcuts small,.visit-shortcuts button>svg,.song-select small,.song-number,.song-meta,.song-heading small,.song-guidance,.song-pagination,.song-empty,.song-copy-dialog>p){color:var(--night-muted)}html[data-theme=dark] .song-row{border-color:var(--night-border)}html[data-theme=dark] .song-tags .selected{background:var(--night-raised);color:var(--night-accent);border-color:var(--night-border)}html[data-theme=dark] :is(.song-cooldown,.song-demo){background:var(--night-soft);color:var(--night-accent)}html[data-theme=dark] .song-copy-dialog textarea{background:var(--night-page);color:var(--night-text);border-color:var(--night-border)}html[data-theme=dark] .song-error{color:var(--night-danger)}
