*{box-sizing:border-box}[hidden]{display:none!important}:root{--font-body:"PingFang SC", "HarmonyOS Sans SC", "Noto Sans SC", "Microsoft YaHei UI", system-ui, sans-serif;--app-width:480px;--col-width:640px}:root[data-theme=night]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:#0f2b24;--bg-layer:radial-gradient(900px 600px at 85% -10%, #c9a2271a, transparent 60%), linear-gradient(180deg, #123028 0%, #0f2b24 55%, #0c231d 100%);--fg:#eef2ea;--fg-soft:#a9bdb2;--fg-faint:#7a8f83;--line:#eef2ea1a;--accent:#c9a227;--accent-hover:#dab63f;--accent-ink:#241d05;--bubble-ai-bg:#ffffff0d;--bubble-user-bg:#c9a227;--bubble-user-fg:#241d05;--bubble-error-bg:#c46a5229;--surface:#ffffff0d;--surface-strong:#123028;--border-soft:#eef2ea24;--border-accent:#c9a22759;--stop:#e2a37b;--shadow-panel:0 18px 44px #040a0880;--focus-ring:#c9a22752;--scrollbar:#a9bdb24d;--input-bg:#ffffff0d;--card-shadow:0 24px 70px #0f2b2447;--border-w:1px;--radius-bubble:12px;--radius-panel:14px;--radius-field:23px;--shadow-sticker:none;--shadow-sticker-strong:none}:root[data-theme=garden]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-base:#fdf3e3;--bg-layer:radial-gradient(440px 320px at 10% 6%, #ff9d7e29, transparent 70%), radial-gradient(520px 400px at 92% 94%, #93cbb133, transparent 70%), radial-gradient(380px 300px at 88% 10%, #ffd77a38, transparent 70%);--fg:#5b4a3f;--fg-soft:#8a7565;--fg-faint:#b3a190;--line:#5b4a3f59;--accent:#ff9d7e;--accent-hover:#ffb094;--accent-ink:#4a2c1e;--bubble-ai-bg:#fff;--bubble-user-bg:#ffd77a;--bubble-user-fg:#4a3a1a;--bubble-error-bg:#ffe9db;--surface:#fff;--surface-strong:#fdf3e3;--border-soft:#5b4a3f;--border-accent:#ff9d7e;--stop:#c25e3a;--shadow-panel:5px 5px 0 #5b4a3f40;--focus-ring:#ff9d7e59;--scrollbar:#5b4a3f4d;--input-bg:#fff;--card-shadow:0 24px 70px #5b4a3f38;--border-w:2px;--radius-bubble:18px;--radius-panel:18px;--radius-field:18px;--shadow-sticker:3px 3px 0 #5b4a3f38;--shadow-sticker-strong:3px 3px 0 #5b4a3f59}html,body{height:100%;margin:0}body{font:400 15px/1.8 var(--font-body);letter-spacing:.01em;color:var(--fg);background:var(--bg-base);-webkit-font-smoothing:antialiased;transition:color .6s}#ambience{z-index:-1;pointer-events:none;width:100%;height:100%;animation:2.4s ease-out both ambience-in;position:absolute;inset:0}#app{z-index:1;width:100%;height:100dvh;max-width:var(--app-width);padding-bottom:env(safe-area-inset-bottom);background:var(--bg-layer), var(--bg-base);flex-direction:column;margin:0 auto;display:flex;position:relative}@media (width>=560px){body{background:#f6f6f4;padding-block:24px}#app{height:calc(100dvh - 48px);box-shadow:var(--card-shadow);border:1px solid #0000001a;border-radius:28px;overflow:hidden}}.disclaimer,#messages,.farewell-bar,#composer,.footnote{width:100%;max-width:calc(var(--col-width) + 48px);margin-left:auto;margin-right:auto}.topbar{z-index:20;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:14px clamp(16px,4vw,28px);animation:.7s ease-out both rise;display:flex;position:relative}:root[data-theme=garden] .topbar{border-bottom-color:#0000;padding-bottom:8px}.app-name{font:600 18px/1 var(--font-body);letter-spacing:.12em;color:var(--fg);margin:0}.app-name:before{content:"〜 ";color:var(--accent);letter-spacing:0}:root[data-theme=garden] .app-name{border:2px solid var(--border-soft);box-shadow:var(--shadow-sticker);background:#fff;border-radius:999px;padding:9px 16px;font-size:15px}:root[data-theme=garden] .app-name:before{content:"☺ ";color:#e8a13c;letter-spacing:0}.topbar-actions{gap:6px;display:flex}.topbar-actions button{font:500 12.5px/1 var(--font-body);color:var(--fg-soft);background:var(--surface);border:var(--border-w) solid var(--border-soft);cursor:pointer;box-shadow:var(--shadow-sticker);border-radius:999px;padding:8px 13px;transition:color .25s,background-color .25s,border-color .25s,transform .12s,box-shadow .12s}.topbar-actions button:hover{color:var(--fg);border-color:var(--border-accent)}:root[data-theme=garden] .topbar-actions button{color:var(--fg);font-weight:600}:root[data-theme=garden] .topbar-actions button:hover{border-color:var(--border-soft);transform:translate(1px,1px);box-shadow:2px 2px #5b4a3f38}:root[data-theme=garden] .topbar-actions button:active{box-shadow:none;transform:translate(3px,3px)}#balance{font-variant-numeric:tabular-nums;color:var(--accent);border-color:var(--border-accent)}:root[data-theme=garden] #balance{color:var(--fg);border-color:var(--border-soft);background:#ffd77a}#theme-toggle,#model-toggle,#music-toggle{padding:7px 11px;font-size:14px}#music-toggle.music-off,#model-toggle{opacity:.55}#model-toggle.model-deep{opacity:1;color:var(--accent);border-color:var(--border-accent)}.player{z-index:30;border:var(--border-w) solid var(--border-soft);border-radius:var(--radius-panel);background:var(--surface-strong);width:min(272px,100vw - 32px);box-shadow:var(--shadow-panel);padding:16px 16px 10px;animation:.35s ease-out both rise;position:absolute;top:calc(100% - 6px);right:clamp(16px,4vw,28px)}:root[data-theme=garden] .player{background:#fff}.player-now{align-items:flex-start;gap:10px;display:flex}.player-note{color:var(--accent);font-size:16px;line-height:1.5;animation:3.2s ease-in-out infinite breathe}.player.paused .player-note{opacity:.4;animation:none}.player-title{letter-spacing:.04em;color:var(--fg);font-size:15px;font-weight:600}.player-mood{color:var(--fg-soft);font-size:11.5px}.player-controls{gap:8px;margin:12px 0 8px;display:flex}.player-controls button{font:500 12.5px/1 var(--font-body);color:var(--fg-soft);background:var(--surface);border:var(--border-w) solid var(--border-soft);cursor:pointer;border-radius:999px;padding:6px 14px;transition:color .3s,border-color .3s,background-color .3s}.player-controls button:hover{color:var(--fg);border-color:var(--border-accent)}:root[data-theme=garden] .player-controls button{color:var(--fg);background:var(--surface-strong)}:root[data-theme=garden] .player-controls button:hover{border-color:var(--border-soft);background:#ffd77a}.player-list{border-top:1px solid var(--line);scrollbar-width:thin;scrollbar-color:var(--scrollbar) transparent;max-height:min(300px,46dvh);margin:0;padding:6px 0 0;list-style:none;overflow-y:auto}:root[data-theme=garden] .player-list{border-top:2px dotted #5b4a3f40}.player-list button{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:baseline;gap:8px;width:100%;padding:7px 8px;transition:background-color .25s;display:flex}.player-list button:hover{background:var(--surface)}:root[data-theme=garden] .player-list button:hover{background:var(--surface-strong)}.track-name{color:var(--fg-soft);font-size:13px}.player-list button.current .track-name{color:var(--fg);font-weight:500}.player-list button.current .track-name:before{content:"♪ ";color:var(--accent)}.track-mood{color:var(--fg-soft);opacity:.75;flex:none;font-size:10.5px}.disclaimer{background:var(--surface);border:1px solid var(--line);width:calc(100% - 32px);color:var(--fg-soft);border-radius:12px;align-items:flex-start;gap:10px;margin-top:12px;padding:11px 15px;font-size:12px;line-height:1.75;animation:.7s ease-out .1s both rise;display:flex}:root[data-theme=garden] .disclaimer{border:2px solid #5b4a3f59;border-radius:14px}.disclaimer p{flex:1;margin:0}#disclaimer-close{color:var(--fg-soft);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;padding:2px 6px;font-size:15px;line-height:1;transition:color .3s}#disclaimer-close:hover{color:var(--fg)}#messages{scrollbar-width:none;overscroll-behavior:contain;flex-direction:column;flex:1;gap:14px;padding:16px 24px 8px;display:flex;overflow-y:auto}#messages::-webkit-scrollbar{display:none}.bubble-run{display:contents}.bubble{white-space:pre-wrap;word-break:break-word;max-width:82%;padding:12px 16px;font-size:15px;line-height:1.75;transition:background-color .6s,color .6s;animation:.45s ease-out both rise}.bubble.assistant{background:var(--bubble-ai-bg);color:var(--fg);border-left:3px solid var(--accent);border-radius:3px var(--radius-bubble) var(--radius-bubble) 3px;align-self:flex-start}.bubble.user{background:var(--bubble-user-bg);color:var(--bubble-user-fg);border-radius:var(--radius-bubble) 3px var(--radius-bubble) var(--radius-bubble);align-self:flex-end}:root[data-theme=garden] .bubble.assistant,:root[data-theme=garden] .bubble.user{border:2px solid var(--border-soft);border-radius:var(--radius-bubble);box-shadow:var(--shadow-sticker)}:root[data-theme=garden] .bubble.assistant{color:var(--fg)}.bubble.pending{min-width:64px;min-height:46px}.bubble.pending:after{content:"· · ·";letter-spacing:.2em;color:var(--fg-soft);animation:1.6s ease-in-out infinite breathe}.bubble .stream-in{animation:.45s ease-out both stream-in}@keyframes stream-in{0%{opacity:0}to{opacity:1}}.bubble.interrupted{opacity:.6;border-left-style:dashed}:root[data-theme=garden] .bubble.interrupted{border-style:dashed}.bubble.truncated{border-bottom:1px dashed var(--border-soft)}.bubble.error{background:var(--bubble-error-bg);color:var(--fg);border-left:3px solid var(--stop);border-radius:3px var(--radius-bubble) var(--radius-bubble) 3px;align-self:flex-start;font-size:14px}:root[data-theme=garden] .bubble.error{border:2px solid var(--stop);border-radius:var(--radius-bubble);box-shadow:var(--shadow-sticker)}.bubble.error p{margin:0 0 8px}.bubble.error button{font:500 13px/1 var(--font-body);color:var(--fg);background:var(--surface);border:var(--border-w) solid var(--border-soft);cursor:pointer;border-radius:999px;padding:7px 16px;transition:border-color .3s}.bubble.error button:hover{border-color:var(--border-accent)}.farewell-bar{justify-content:flex-end;padding:2px 24px 0;display:flex}#farewell,#tuck{font:400 12.5px/1 var(--font-body);letter-spacing:.06em;color:var(--fg-soft);cursor:pointer;opacity:.85;background:0 0;border:none;padding:6px 4px;transition:opacity .3s,color .3s}#farewell:hover,#tuck:hover{opacity:1;color:var(--fg)}#tuck:disabled{opacity:.4;cursor:default}.archive-card{align-self:stretch;animation:.45s ease-out both rise}.archive-head{text-align:left;width:100%;font:400 12.5px/1.4 var(--font-body);letter-spacing:.05em;color:var(--fg-faint);background:var(--surface);border:var(--border-w) dashed var(--border-soft);border-radius:var(--radius-bubble);cursor:pointer;padding:10px 14px;transition:color .3s,border-color .3s}.archive-head:hover{color:var(--fg-soft);border-color:var(--border-accent)}.archive-head:before{content:"✦ ";color:var(--accent);opacity:.7}.archive-body{opacity:.82;flex-direction:column;gap:10px;padding:12px 0 4px;font-size:14px;display:flex}.tuck-status{color:var(--fg-faint);letter-spacing:.05em;align-self:center;padding:6px 0;font-size:12.5px;transition:color .6s;animation:.45s ease-out both rise}.tuck-status.done{color:var(--fg-soft)}#messages.tucking{animation:.48s ease-in both tuck-away}@keyframes tuck-away{to{opacity:0;transform:translateY(-14px)}}#composer{border-top:1px solid var(--line);align-items:flex-end;gap:10px;padding:10px 24px;display:flex}:root[data-theme=garden] #composer{border-top:none}#input{resize:none;font:400 15px/1.7 var(--font-body);letter-spacing:.01em;color:var(--fg);border:var(--border-w) solid var(--border-soft);border-radius:var(--radius-field);background:var(--input-bg);box-shadow:var(--shadow-sticker);scrollbar-width:none;outline:none;flex:1;max-height:160px;padding:12px 18px;transition:border-color .3s,box-shadow .3s,background-color .6s}#input::-webkit-scrollbar{display:none}#input::placeholder{color:var(--fg-soft);opacity:.75}#input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring), var(--shadow-sticker)}#send,#stop{font:600 14px/1 var(--font-body);letter-spacing:.08em;border:var(--border-w) solid transparent;cursor:pointer;border-radius:999px;flex:none;padding:13px 22px;transition:background-color .2s,transform .15s,box-shadow .12s}#send{color:var(--accent-ink);background:var(--accent);box-shadow:var(--shadow-sticker-strong)}#send:hover{background:var(--accent-hover)}#send:active{transform:scale(.96)}:root[data-theme=garden] #send{border-color:var(--border-soft);font-weight:700}:root[data-theme=garden] #send:hover{transform:translate(1px,1px);box-shadow:2px 2px #5b4a3f59}:root[data-theme=garden] #send:active{box-shadow:none;transform:translate(3px,3px)}#stop{color:var(--stop);background:0 0;border-color:currentColor}#stop:hover{background:var(--surface)}.footnote{letter-spacing:.02em;color:var(--fg-faint);text-align:center;text-wrap:balance;padding:6px 24px 14px;font-size:11px}dialog{border:var(--border-w) solid var(--border-soft);width:min(340px,100vw - 48px);color:var(--fg);background:var(--surface-strong);box-shadow:var(--shadow-panel);border-radius:16px;padding:24px 26px}:root[data-theme=garden] dialog{border-radius:22px;box-shadow:6px 6px #5b4a3f4d}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#040a088c}:root[data-theme=garden] dialog::backdrop{background:#5b4a3f4d}dialog h2{font:600 17px/1.4 var(--font-body);letter-spacing:.04em;margin:0 0 6px}dialog p{color:var(--fg-soft);margin:0 0 12px;font-size:12.5px}dialog label{color:var(--fg-soft);font-size:13px;display:block}dialog input,dialog select{font:400 15px/1.5 var(--font-body);color:var(--fg);border:var(--border-w) solid var(--border-soft);background:var(--input-bg);border-radius:10px;outline:none;width:100%;margin:10px 0 16px;padding:10px 12px;transition:border-color .3s,box-shadow .3s;display:block}dialog input:focus-visible,dialog select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}#recharge-dialog{width:min(360px,100vw - 48px)}#recharge-dialog section>h2{margin-bottom:10px}.amount-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0 12px;display:grid}.amount-option{font:500 14px/1 var(--font-body);font-variant-numeric:tabular-nums;color:var(--fg);background:var(--surface);border:var(--border-w) solid var(--border-soft);cursor:pointer;border-radius:10px;padding:12px 0;transition:border-color .25s,background-color .25s,color .25s,transform .12s,box-shadow .12s}.amount-option:hover{border-color:var(--border-accent)}:root[data-theme=garden] .amount-option{border-radius:12px;font-weight:600;box-shadow:2px 2px #5b4a3f33}.amount-option.selected{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}:root[data-theme=garden] .amount-option.selected{color:var(--fg);border-color:var(--border-soft);box-shadow:none;background:#ffd77a;transform:translate(2px,2px)}.recharge-error{color:var(--stop);font-size:13px}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}#recharge-dialog button.primary{font:600 14px/1 var(--font-body);letter-spacing:.06em;color:var(--accent-ink);background:var(--accent);border:var(--border-w) solid transparent;cursor:pointer;border-radius:10px;padding:11px 18px;transition:background-color .3s}#recharge-dialog button.primary:hover{background:var(--accent-hover)}#recharge-dialog button.primary:disabled{opacity:.55;cursor:default}:root[data-theme=garden] #recharge-dialog button.primary{border-color:var(--border-soft);border-radius:12px;font-weight:700}#recharge-dialog button.ghost{font:400 14px/1 var(--font-body);color:var(--fg-soft);border:var(--border-w) solid var(--border-soft);cursor:pointer;background:0 0;border-radius:10px;padding:11px 16px;transition:color .3s,border-color .3s}#recharge-dialog button.ghost:hover{color:var(--fg);border-color:var(--border-accent)}:root[data-theme=garden] #recharge-dialog button.ghost{background:#fff;border-radius:12px}.pay-tabs{gap:8px;margin:12px 0;display:flex}.pay-tab{font:500 13px/1 var(--font-body);color:var(--fg-soft);background:var(--surface);border:var(--border-w) solid var(--border-soft);cursor:pointer;border-radius:10px;flex:1;padding:10px 0;transition:color .25s,border-color .25s,background-color .25s}:root[data-theme=garden] .pay-tab{border-radius:12px;font-weight:600}.pay-tab.wechat.active{color:#fff;background:#07c160;border-color:#07c160}.pay-tab.alipay.active{color:#fff;background:#1677ff;border-color:#1677ff}.qr-wrap{background:#fff;border:2px solid #0000;border-radius:12px;justify-content:center;width:fit-content;margin:0 auto 12px;padding:14px;transition:border-color .25s;display:flex}.qr-wrap.wechat{border-color:#07c160}.qr-wrap.alipay{border-color:#1677ff}.pay-hint{text-align:center;font-variant-numeric:tabular-nums}#recharge-pay .primary{width:100%;display:block}.bonus-option{width:100%;font:500 13.5px/1.5 var(--font-body);color:var(--accent);border:1.5px dashed var(--accent);cursor:pointer;background:0 0;border-radius:10px;margin:12px 0 2px;padding:12px 10px;transition:background-color .25s,color .25s;display:block}.bonus-option:hover{color:var(--accent-ink);background:var(--accent)}.bonus-option:disabled{opacity:.55;cursor:default}:root[data-theme=garden] .bonus-option{color:var(--accent-ink);border:2px dashed var(--accent);background:#fff;border-radius:14px;font-weight:600}:root[data-theme=garden] .bonus-option:hover{background:#ffe9db}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}:root[data-theme=garden] .bubble{animation:.45s cubic-bezier(.34,1.56,.64,1) both plush-rise}@keyframes plush-rise{0%{opacity:0;transform:translateY(12px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes breathe{0%,to{opacity:.35}50%{opacity:.9}}@keyframes ambience-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=520px){.topbar{padding-top:calc(10px + env(safe-area-inset-top))}.app-name{letter-spacing:.06em}.disclaimer{width:calc(100% - 24px)}#messages,.farewell-bar,#composer,.footnote{padding-left:12px;padding-right:12px}.bubble{max-width:90%}#send,#stop{padding:13px 16px}}
