@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,600;1,600;1,700&family=Geist+Mono:wght@400;500;600&family=Noto+Sans+SC:wght@400;500;600&display=swap";.voice-overlay{position:fixed;inset:0;z-index:200;background:#7864702e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center}.call-card{width:min(316px,86vw);min-height:448px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:40px 24px 30px;border-radius:30px;border:1px solid rgba(255,255,255,.6);background:#ffffffad;background-image:linear-gradient(165deg,#ffffff8c,#ffffff0d 60%);box-shadow:0 18px 50px #4a3f4b38;-webkit-backdrop-filter:blur(32px) saturate(150%);backdrop-filter:blur(32px) saturate(150%)}.call-card-head{display:flex;flex-direction:column;align-items:center;gap:12px}.call-card-name{color:#4a4548;font-family:var(--font-display);font-size:23px;font-weight:600;letter-spacing:.02em}.call-card-mid{display:flex;flex-direction:column;align-items:center;gap:8px}.call-timer{display:flex;align-items:center;gap:14px}.call-timer time{color:#4a3f4b;font-family:var(--font-display);font-size:40px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.04em}.call-status{min-height:20px;color:#806c79;font-size:14px}.call-error{color:var(--negative);font-size:12px;text-align:center}.call-wave{display:flex;align-items:center;gap:3px}.call-wave i{width:2.5px;height:8px;border-radius:2px;background:#c1a0ac;opacity:.55}.call-wave i:nth-child(2){height:13px}.call-wave i:nth-child(3){height:18px}.call-wave i:nth-child(4){height:13px}.call-wave--active i{animation:wave-bounce 1s ease-in-out infinite;opacity:.9}.call-wave--active i:nth-child(2){animation-delay:.12s}.call-wave--active i:nth-child(3){animation-delay:.24s}.call-wave--active i:nth-child(4){animation-delay:.36s}.call-wave--active i:nth-child(5){animation-delay:.48s}@keyframes wave-bounce{0%,to{transform:scaleY(.6)}50%{transform:scaleY(1.4)}}.call-controls{display:flex;align-items:flex-start;gap:30px}.call-control{display:flex;flex-direction:column;align-items:center;gap:7px}.call-control>span{color:#806c79;font-size:12px}.call-btn{width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.6);background:#f0d9e4b3;color:#806c79;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--duration-fast) var(--ease-default),background var(--duration-fast)}.call-btn:hover{transform:scale(1.05)}.call-btn--active{background:#d9a7bc;color:#fff}.call-btn--hangup{width:60px;height:60px;border:0;background:#d47f9d;color:#fff;box-shadow:0 8px 20px #d47f9d73}.call-btn--hangup:hover{background:#c56d8d}.voice-overlay--deep{flex-direction:column;align-items:stretch;justify-content:flex-start;background:#faf3f7ad;backdrop-filter:blur(36px) saturate(140%);-webkit-backdrop-filter:blur(36px) saturate(140%)}.deep-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:calc(12px + env(safe-area-inset-top)) 14px 4px}.deep-header .deep-shrink{justify-self:start}.deep-header .deep-langs{justify-self:end}.deep-elapsed{color:#4a3f4b;font-family:var(--font-display);font-size:23px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.08em}.deep-hero{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 0 14px}.deep-hero .avatar{width:118px;height:118px;font-size:40px}.deep-hero strong{color:#4a4548;font-family:var(--font-display);font-size:25px;font-weight:600;letter-spacing:.02em}.deep-hero span{min-height:18px;color:#806c79;font-size:13px}.deep-shrink{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.6);background:#fff9;color:#806c79;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.deep-langs{display:flex;gap:6px}.deep-langs button{min-width:34px;height:30px;padding:0 10px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.6);background:#ffffff8c;color:#806c79;font-size:12px;cursor:pointer}.deep-langs button.on{background:#d47f9d;border-color:#d47f9d;color:#fff}.deep-stream{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:10px 16px;overscroll-behavior:contain}.deep-turn{display:flex}.deep-turn--user{justify-content:flex-end}.deep-turn--assistant{justify-content:flex-start}.deep-turn-bubble{max-width:84%;padding:9px 14px;border-radius:18px;font-size:15px;line-height:1.6;text-align:justify;text-justify:inter-character}.deep-turn-bubble p{margin:0;white-space:pre-line;word-break:break-word}.deep-turn--assistant .deep-turn-bubble{background:#ffffff8c;color:#4a4548}.deep-turn--user .deep-turn-bubble{background:#f0d9e480;color:#4a4548}.deep-turn-divider{display:block;height:1px;margin:7px 0;background:#4a3f4b1f}.deep-turn-zh{color:#806c79;font-size:13px}.deep-interim{margin:0;align-self:flex-end;color:#a08a95;font-size:13px}.deep-error{margin:0;text-align:center;color:var(--negative);font-size:13px}.deep-footer{display:flex;flex-direction:column;gap:14px;padding:8px 18px calc(18px + env(safe-area-inset-bottom))}.deep-footer .call-controls{justify-content:center}.deep-input{display:flex;align-items:center;gap:8px;padding:5px 5px 5px 16px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.65);background:#ffffffb3}.deep-input input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#4a4548;font-size:15px}.deep-input input::placeholder{color:#b598a3}.deep-send{width:38px;height:38px;border-radius:50%;border:0;background:#d47f9d;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.deep-send:disabled{opacity:.45;cursor:default}:root[data-theme=dark] .call-card,:root[data-theme=dark] .voice-overlay--deep{background-color:#201b21b8}:root[data-theme=dark] .call-card{border-color:#ffffff1f;background-image:linear-gradient(165deg,#ffffff1a,#ffffff05 60%)}:root[data-theme=dark] .call-card-name,:root[data-theme=dark] .deep-hero strong{color:#f0d9e4}:root[data-theme=dark] .deep-elapsed{color:#f0d9e4}:root[data-theme=dark] .call-timer time{color:#f0d9e4}:root[data-theme=dark] .deep-turn--assistant .deep-turn-bubble{background:#4a3f4bcc;color:#f0d9e4}:root[data-theme=dark] .deep-input{background:#322b33cc;border-color:#ffffff1f}:root[data-theme=dark] .deep-input input{color:#f0d9e4}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .call-card,:root:not([data-theme=light]) .voice-overlay--deep{background-color:#201b21b8}:root:not([data-theme=light]) .call-card{border-color:#ffffff1f;background-image:linear-gradient(165deg,#ffffff1a,#ffffff05 60%)}:root:not([data-theme=light]) .call-card-name,:root:not([data-theme=light]) .deep-hero strong{color:#f0d9e4}:root:not([data-theme=light]) .deep-elapsed{color:#f0d9e4}:root:not([data-theme=light]) .call-timer time{color:#f0d9e4}:root:not([data-theme=light]) .deep-turn--assistant .deep-turn-bubble{background:#4a3f4bcc;color:#f0d9e4}:root:not([data-theme=light]) .deep-input{background:#322b33cc;border-color:#ffffff1f}:root:not([data-theme=light]) .deep-input input{color:#f0d9e4}}.call-bubble{display:flex;align-items:center;gap:10px;padding:10px 16px 10px 12px;border:1px solid var(--line);border-radius:var(--radius-bubble);background:var(--card);cursor:pointer;text-align:left;transition:border-color var(--duration-fast) var(--ease-default)}.call-bubble:hover{border-color:var(--dim)}.call-bubble-icon{width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.call-bubble--missed .call-bubble-icon{background:var(--dim)}.call-bubble-text{display:flex;flex-direction:column;gap:1px}.call-bubble-title{font-size:14px;color:var(--text)}.call-bubble-sub{font-size:12px;color:var(--text-soft)}.call-bubble--missed .call-bubble-sub{color:var(--dim)}.call-detail{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-sm) 0 var(--space-lg)}.call-detail-meta{display:flex;justify-content:space-between;font-size:13px;color:var(--text-soft);padding:0 2px}.call-detail-players{display:flex;flex-direction:column;gap:var(--space-sm)}.call-player{display:flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);color:var(--text);font-size:13px;cursor:pointer;width:fit-content}.call-player:hover{border-color:var(--dim)}.call-user-audio{width:100%;height:36px}.call-detail-turns{display:flex;flex-direction:column;gap:var(--space-sm)}.call-turn{display:flex}.call-turn--user{justify-content:flex-end}.call-turn--assistant{justify-content:flex-start}.call-turn-text{max-width:82%;padding:8px 13px;border-radius:var(--radius-lg);font-size:14px;line-height:1.55;white-space:pre-line;word-break:break-word}.call-turn--user .call-turn-text{background:var(--accent);color:#fff}.call-turn--assistant .call-turn-text{background:var(--panel);color:var(--text)}.call-detail-empty{text-align:center;color:var(--dim);font-size:13px;padding:var(--space-lg) 0}.call-history{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-sm) 0 var(--space-lg)}.call-history-search{display:flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);color:var(--dim)}.call-history-search input{flex:1;border:none;outline:none;background:transparent;color:var(--text);font-size:14px}.call-history-list{display:flex;flex-direction:column}.call-history-item{display:flex;align-items:center;gap:12px;padding:11px 6px;border:none;border-bottom:1px solid var(--line-soft);background:transparent;cursor:pointer;text-align:left}.call-history-item:hover{background:var(--card)}.call-history-icon{width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.call-history-icon.missed{background:var(--dim)}.call-history-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.call-history-top{display:flex;justify-content:space-between;gap:8px}.call-history-time{font-size:13px;color:var(--text)}.call-history-duration{font-size:12px;color:var(--text-soft)}.call-history-snippet{font-size:12px;color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vn-wrap{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.message-row.user .vn-wrap{align-items:flex-end}.vn-pill{display:flex;align-items:center;gap:9px;min-width:150px;padding:11px 16px;border:0;border-radius:var(--radius-bubble);cursor:pointer;transition:transform var(--duration-fast) var(--ease-default);-webkit-user-select:none;user-select:none;touch-action:manipulation}.vn-pill:active{transform:scale(.97)}.vn-pill--assistant{background:var(--assistant-bubble);color:var(--chat-text)}:root[data-skin=rose] .vn-pill--assistant{color:#fff}.vn-pill--user{background:var(--user-bubble);color:var(--chat-text)}:root[data-skin=rose] .vn-pill--user{color:#16131f}.vn-bars{display:flex;align-items:center;gap:2.5px;flex:1}.vn-bars i{width:2.5px;border-radius:2px;background:currentColor;opacity:.75}.vn-pill.playing .vn-bars i{animation:wave-bounce 1s ease-in-out infinite}.vn-pill.playing .vn-bars i:nth-child(2n){animation-delay:.15s}.vn-pill.playing .vn-bars i:nth-child(3n){animation-delay:.3s}.vn-dur{font-size:13px;opacity:.85;font-variant-numeric:tabular-nums}.vn-reveal{max-width:100%;padding:9px 13px;border:1px solid rgba(128,108,121,.55);border-radius:var(--radius-lg);background:#806c7980;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f4ecf0;font-size:14px;line-height:1.6;text-align:justify;text-justify:inter-character}.vn-reveal p{margin:0;white-space:pre-line;word-break:break-word}.vn-reveal--user{background:#c1a0ac73;border-color:#c1a0aca6;color:#4a3f4b}.vn-divider{display:block;height:1px;margin:7px 0;background:#ffffff59}.vn-zh{color:inherit;opacity:.82;font-size:12.5px}.vn-menu-overlay{position:fixed;inset:0;z-index:90}.rec-hint{display:flex;align-items:center;gap:8px;padding:6px 4px 0;color:var(--negative);font-size:13px}.rec-dot{width:9px;height:9px;border-radius:50%;background:var(--negative);animation:rec-pulse 1s ease-in-out infinite}@keyframes rec-pulse{0%,to{opacity:1}50%{opacity:.35}}.send-button.recording{background:var(--negative)!important}.action-seg{max-width:82%;padding:8px 14px;border:0;border-radius:var(--radius-bubble);background:#4a3f4b73;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-size:15px;line-height:1.6;font-style:italic;align-self:flex-start;white-space:pre-line;word-break:break-word}.vn-action{font-style:italic;opacity:.8}.vn-pending{align-self:flex-start;padding:10px 16px;border-radius:var(--radius-bubble);background:color-mix(in srgb,var(--assistant-bubble) 55%,transparent)}.msg-atts{display:flex;flex-wrap:wrap;gap:6px;justify-content:inherit}.message-row.user .msg-atts{justify-content:flex-end}.msg-att-img{max-width:200px;max-height:240px;border-radius:var(--radius-md);border:1px solid var(--line-soft);display:block}.msg-att-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);color:var(--text-soft);font-size:12.5px}.bubble-dots{display:flex;align-items:center;min-height:24px;padding:4px 2px}.bubble-dots .thinking-dots{transform:scale(1.3);transform-origin:left center}.tool-chain{max-width:84%;align-self:flex-start;border-radius:14px;background:color-mix(in srgb,var(--panel) 55%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden}.chain-head{display:flex;align-items:center;gap:7px;width:100%;padding:7px 12px;border:0;background:transparent;color:var(--text-soft);font-size:12.5px;cursor:pointer}.chain-head .chain-arrow{margin-left:auto;transition:transform var(--duration-fast)}.tool-chain.open .chain-arrow{transform:rotate(180deg)}.spin{animation:chain-spin 1s linear infinite}@keyframes chain-spin{to{transform:rotate(360deg)}}.chain-steps{list-style:none;margin:0;padding:2px 12px 8px 14px}.chain-step{position:relative;padding-left:16px}.chain-step:before{content:"";position:absolute;left:6px;top:18px;bottom:-4px;width:1px;background:color-mix(in srgb,var(--text-soft) 25%,transparent)}.chain-step:last-child:before{display:none}.chain-dot{position:absolute;left:0;top:5px;color:var(--text-soft);display:flex}.step-error .chain-dot{color:var(--negative)}.chain-step-row{display:flex;align-items:center;gap:8px;width:100%;padding:4px 0;border:0;background:transparent;color:var(--text-soft);font-size:12.5px;cursor:pointer;text-align:left}.chain-verb{color:var(--text);font-size:13px}.chain-brief{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--dim);font-size:11.5px}.chain-detail pre{margin:2px 0 8px;padding:8px 10px;border-radius:8px;background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--text-soft);font-family:var(--font-mono);font-size:11px;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}.bottom-sheet.tp-sheet{height:54dvh;max-height:none;margin:0 10px 6px;border-radius:22px;transition:height .3s cubic-bezier(.3,.9,.3,1),margin .3s cubic-bezier(.3,.9,.3,1),border-radius .3s cubic-bezier(.3,.9,.3,1)}.bottom-sheet.tp-sheet:after{display:none}.bottom-sheet.tp-sheet.sheet-expanded .bottom-sheet-body{padding-left:30px;padding-right:30px}.bottom-sheet.tp-sheet.sheet-expanded{height:calc(100dvh - env(safe-area-inset-top,0px) - 14px);margin:0;border-radius:22px 22px 0 0}.tp-list{list-style:none;margin:0;padding:6px 2px 10px}.tp-item{display:flex;gap:12px;position:relative;padding:8px 0}.tp-item:before{content:"";position:absolute;left:8px;top:30px;bottom:-10px;width:1.5px;background:color-mix(in srgb,var(--chat-text, currentColor) 12%,transparent)}.tp-item:last-child:before{display:none}.tp-ic{flex:none;width:17px;height:17px;margin-top:4px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent, #b8956a)}.tp-think .tp-ic{opacity:.75}.tp-text{margin:0;color:var(--chat-text);font-size:16px;line-height:1.8;white-space:pre-wrap;word-break:break-word}.tp-body{flex:1;min-width:0}.tp-tool-row{display:flex;align-items:baseline;gap:10px;width:100%;padding:2px 0;background:none;border:none;box-shadow:none;color:var(--chat-text);font:inherit;text-align:left;cursor:pointer}.tp-verb{font-size:16px}.tp-error .tp-ic{color:#c0665e}.tp-raw{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:11px;color:var(--chat-text);opacity:.38;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-detail pre{margin:6px 0 2px;padding:9px 11px;border-radius:10px;background:color-mix(in srgb,var(--chat-text, currentColor) 6%,transparent);color:var(--chat-text);font-size:11.5px;line-height:1.55;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}.tp-done .tp-ic{opacity:.8}.tp-sheet .thinking-content{font-size:16px}.cloud-row{display:flex;margin:2px 0 2px 4px}[data-msgstyle=wechat] .message-row.assistant{grid-template-columns:0 minmax(0,1fr);gap:0}[data-msgstyle=wechat] .message-row.assistant>.avatar{display:none}.wc-seg{display:flex;align-items:flex-start;gap:9px;width:100%}.wc-seg>.avatar{width:36px;height:36px;flex:none;margin-top:5px}.wc-seg-body{flex:1;min-width:0;display:flex;justify-content:flex-start}[data-msgstyle=wechat] .message-segments,[data-msgstyle=wechat] .message-inner{gap:22px}[data-msgstyle=wechat] .message-row.assistant>.message-meta{margin-left:45px}[data-msgstyle=wechat] .message-row.assistant .action-seg{margin-left:45px}.msgstyle-demo{display:flex;flex-wrap:wrap;align-items:center;gap:3px 4px;width:46px}.msgstyle-demo i{width:9px;height:9px;border-radius:50%;background:currentColor;opacity:.55}.msgstyle-demo b{width:22px;height:7px;border-radius:4px;background:currentColor;opacity:.3}.msgstyle-demo--kakao b:last-child{margin-left:13px}.message-row.row-follow>.avatar{visibility:hidden}.message-row.row-follow{margin-top:-26px}[data-msgstyle=wechat] .message-row.row-follow>.avatar{visibility:visible}[data-msgstyle=wechat] .message-row.row-follow{margin-top:0}.msg-asides{margin:2px 2px 0 8px;font-size:12.5px;font-style:italic;line-height:1.6;color:var(--text-soft, #a29d92);opacity:.92;word-break:break-word}[data-msgstyle=wechat] .message-row.assistant .msg-asides{margin-left:53px}.chat-shot{max-width:min(78%,340px);border-radius:16px;display:block;box-shadow:0 2px 10px #00000014}.shot-expired{padding:12px 16px;border-radius:14px;border:1px dashed color-mix(in srgb,var(--chat-text) 22%,transparent);color:var(--chat-text);opacity:.55;font-size:13px}.memory-card{margin:0;max-width:min(78%,340px);border-radius:16px;overflow:hidden;background:var(--assistant-bubble);box-shadow:0 2px 10px #00000014}.memory-card img{display:block;width:100%}.memory-card figcaption{display:flex;flex-direction:column;gap:2px;padding:9px 13px 11px}.memory-album{font-size:11px;letter-spacing:1px;color:var(--accent, #b8956a);font-family:var(--font-mono)}.memory-note{font-size:13.5px;color:var(--chat-text);line-height:1.55}[data-as=non] .message-row.assistant{grid-template-columns:minmax(0,1fr) 36px}[data-as=non] .message-row.assistant>.avatar{display:none}[data-as=non] .message-row.assistant>.message-meta{grid-column:1;display:flex;justify-content:flex-end;justify-self:end}[data-as=non] .message-row.assistant>.message-meta .dot{order:3}[data-as=non] .message-row.assistant>.message-meta .time{order:2}[data-as=non] .message-row.assistant>.message-meta .thinking-cloud-btn{order:1}[data-as=non] .message-row.assistant>.message-column{grid-column:1;align-items:flex-end}[data-as=non] .message-row.assistant .message-segments{align-items:flex-end}[data-as=non] .message-row.assistant .message-bubble{background:var(--user-bubble)}[data-as=non] .message-row.user{grid-template-columns:36px minmax(0,1fr);margin-left:0}[data-as=non] .message-row.user>.avatar{grid-column:1;visibility:visible}[data-as=non] .message-row.user>.message-column{grid-column:2;align-items:flex-start}[data-as=non] .message-row.user .message-segments{align-items:flex-start}[data-as=non] .message-row.user .message-bubble{background:var(--assistant-bubble)}.gal-panel{width:100%;padding:14px 16px calc(24px + env(safe-area-inset-bottom));max-width:640px;margin:0 auto;justify-self:center}.gal-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:64px 20px;color:var(--chat-text);opacity:.6;text-align:center}.gal-empty p{margin:0;font-size:15px}.gal-empty small{font-size:12.5px;opacity:.8}.gal-album-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 4px;border:0;background:none;box-shadow:none;color:var(--chat-text);border-bottom:1px solid color-mix(in srgb,var(--chat-text) 8%,transparent);cursor:pointer;text-align:left}.gal-album-info{display:flex;flex-direction:column;gap:3px}.gal-album-info strong{font-size:16px;font-weight:600}.gal-album-info small{font-size:12px;opacity:.55}.gal-album-previews{display:flex;gap:6px}.gal-album-previews img{width:46px;height:46px;object-fit:cover;border-radius:10px}.gal-back{display:inline-flex;align-items:center;gap:2px;margin:0 0 6px -6px;padding:6px 10px;border:0;background:none;box-shadow:none;color:var(--chat-text);opacity:.7;font-size:14px;cursor:pointer}.gal-album-title{margin:2px 0 14px;font-size:20px}.gal-album-title span{font-size:12.5px;font-weight:400;opacity:.5;margin-left:8px}.gal-day{margin-bottom:20px}.gal-day h4{margin:0 0 8px;font-size:12.5px;font-family:var(--font-mono);opacity:.55;font-weight:500}.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.gal-cell{margin:0;cursor:pointer}.gal-cell img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px;display:block}.gal-cell figcaption{margin-top:5px;font-size:12px;line-height:1.5;color:var(--chat-text);opacity:.72;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.gal-lightbox{position:fixed;inset:0;z-index:3000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;background:#141210e0}.gal-lightbox img{max-width:100%;max-height:72dvh;border-radius:12px}.gal-lightbox-meta{text-align:center;color:#f0ece4;max-width:480px}.gal-lightbox-meta .gal-note{margin:0 0 6px;font-size:15px;line-height:1.7}.gal-lightbox-meta small{font-size:12px;opacity:.6;font-family:var(--font-mono)}.collect-card{display:flex;align-items:center;gap:12px;max-width:min(84%,360px);padding:10px 14px 10px 10px;border-radius:16px;background:var(--assistant-bubble);box-shadow:0 2px 10px #00000012}.collect-thumb{position:relative;flex:none}.collect-thumb img{width:52px;height:52px;object-fit:cover;border-radius:12px;display:block}.collect-star{position:absolute;left:-5px;bottom:-5px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:var(--accent, #b8956a);color:#fff;font-size:11px;line-height:1}.collect-body{display:flex;flex-direction:column;gap:1px;min-width:0}.collect-body small{font-size:10.5px;letter-spacing:1.5px;color:var(--accent, #b8956a);font-family:var(--font-mono)}.collect-body strong{font-size:14.5px;font-weight:600;color:var(--chat-text)}.collect-body em{font-size:12.5px;font-style:italic;color:var(--chat-text);opacity:.6;line-height:1.5}.gal-album-head{margin:2px 0 18px}.gal-album-head h3{margin:0;font-size:26px;display:flex;align-items:center;gap:8px}.gal-star{color:var(--accent, #b8956a);font-size:16px;opacity:.8}.gal-album-head small{font-size:12px;font-family:var(--font-mono);opacity:.55}.gal-album-desc{margin:8px 0 0;font-size:13.5px;font-style:italic;color:var(--chat-text);opacity:.7;line-height:1.6}.gal-album-desc-empty{opacity:.3}.gal-dayhead{margin:0 0 8px;display:flex;align-items:baseline;gap:2px}.gal-dayhead b{font-size:26px;font-weight:700;color:var(--chat-text);opacity:.85}.gal-dayhead span{font-size:12px;font-family:var(--font-mono);opacity:.45}.collect-card{margin-top:10px}[data-msgstyle=wechat] .message-row.assistant .collect-card{margin-left:45px;margin-top:14px}:root[data-theme=dark] .collect-card{background:#c1a0ac29;box-shadow:none}:root[data-theme=dark] .collect-body small{color:#f0d9e4}:root[data-theme=dark] .collect-body strong{color:#f7f3f5}:root[data-theme=dark] .collect-body em{color:#f7f3f59e;opacity:1}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .collect-card{background:#c1a0ac29;box-shadow:none}:root:not([data-theme=light]) .collect-body small{color:#f0d9e4}:root:not([data-theme=light]) .collect-body strong{color:#f7f3f5}:root:not([data-theme=light]) .collect-body em{color:#f7f3f59e;opacity:1}}.pic-stack{position:relative;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;max-width:min(84%,360px);border-radius:16px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.pic-stack::-webkit-scrollbar{display:none}.pic-stack>img,.pic-stack .chat-shot,.pic-stack .memory-card{flex:0 0 100%;width:100%;max-width:100%;scroll-snap-align:center;border-radius:0}.pic-stack>img{object-fit:cover;display:block}.pic-count{position:absolute;top:8px;right:8px;padding:3px 9px;border-radius:999px;background:#0000006b;color:#fff;font-size:11px;pointer-events:none}.pic-stack-user{margin-left:auto}.gal-swipe{max-width:100%}.gal-swipe img{max-height:400px;cursor:pointer}.gal-cluster{grid-column:1 / -1}.gal-album-card{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;margin-bottom:12px;border:0;border-radius:18px;background:var(--assistant-bubble);box-shadow:0 2px 10px #0000000f;color:var(--chat-text);text-align:left;cursor:pointer}.gal-album-card .gal-album-info{gap:4px;min-width:0}.gal-album-card strong{font-size:18px;font-weight:650}.gal-album-card small{font-size:11.5px;font-family:var(--font-mono);opacity:.65;display:flex;align-items:center;gap:8px}.gal-tag{color:var(--accent, #b8956a);opacity:1}.gal-album-card p{margin:2px 0 0;font-size:12.5px;font-style:italic;opacity:.6;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.gal-album-cover{width:72px;height:72px;flex:none;object-fit:cover;border-radius:14px}:root[data-skin=rose] .collect-card{background:#4a3f4bd1;box-shadow:none}:root[data-skin=rose] .collect-body small{color:#f0d9e4}:root[data-skin=rose] .collect-body strong{color:#fff}:root[data-skin=rose] .collect-body em{color:#ffffffad;opacity:1}:root[data-skin=rose] .gal-album-card{background:#4a3f4bd1;box-shadow:none}:root[data-skin=rose] .gal-album-card strong{color:#fff}:root[data-skin=rose] .gal-album-card small{color:#ffffffc7}:root[data-skin=rose] .gal-album-card .gal-tag{color:#f0d9e4}:root[data-skin=rose] .gal-album-card p{color:#ffffffad}.cmd-edge{position:fixed;right:0;top:34%;z-index:1500;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 9px 10px 11px;border:0;border-radius:14px 0 0 14px;background:#fffffff0;color:#6d6258;box-shadow:0 4px 16px #463c3224;cursor:pointer}.cmd-edge-time{font-family:var(--font-mono);font-size:11.5px;font-variant-numeric:tabular-nums}.cmd-edge-queue{font-size:10px;opacity:.6;font-family:var(--font-mono)}.cmd-edge-line{position:absolute;right:1px;top:6px;bottom:6px;width:3px;border-radius:2px;background:#786c6029;overflow:hidden}.cmd-edge-line i{position:absolute;inset:0;border-radius:2px;background:#8b8378;transform-origin:bottom;transition:transform .4s linear}.cmd-edge.cmd-over{color:#b85c4a}.cmd-edge.cmd-over .cmd-edge-line i{background:#b85c4a}.cmd-card{position:fixed;right:12px;top:calc(76px + env(safe-area-inset-top));z-index:1500;width:min(320px,calc(100vw - 24px));padding:14px 16px 12px;border-radius:20px;background:#fffffff5;color:#443c48;box-shadow:0 10px 32px #463c322e;touch-action:pan-y;user-select:none;-webkit-user-select:none}:root[data-skin=rose] .cmd-card,:root[data-skin=rose] .cmd-edge{background:#f9eef4f7}.cmd-card header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.cmd-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;letter-spacing:1px;color:#b0837a}.cmd-badge i{width:7px;height:7px;border-radius:50%;background:#c96a5c}.cmd-collapse{border:0;background:none;box-shadow:none;color:inherit;opacity:.55;padding:4px;cursor:pointer}.cmd-card h5{margin:0 0 8px;font-size:16.5px;font-weight:650;line-height:1.45}.cmd-time-row{display:flex;align-items:baseline;gap:8px}.cmd-time{font-family:var(--font-mono);font-size:34px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:1px}.cmd-time-label{font-size:12.5px;opacity:.6}.cmd-since{margin-left:auto;font-size:11.5px;font-family:var(--font-mono);opacity:.45}.cmd-track{height:5px;margin:10px 0;border-radius:3px;background:#786c6024;overflow:hidden}.cmd-track i{display:block;height:100%;border-radius:3px;background:#8b8378;transform-origin:left;transition:transform .4s linear}.cmd-card.cmd-over .cmd-time,.cmd-card.cmd-over .cmd-time-label{color:#b85c4a}.cmd-card.cmd-over .cmd-track i{background:#b85c4a}.cmd-card footer{display:flex;align-items:center;justify-content:space-between}.cmd-swipe-hint{font-size:12px;opacity:.5}.cmd-cancel{position:relative;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:0;border-radius:999px;background:none;box-shadow:none;color:inherit;opacity:.55;font-size:12px;cursor:pointer}.cmd-hold-ring{width:16px;height:16px;transform:rotate(-90deg)}.cmd-hold-ring circle{fill:none;stroke:currentColor;stroke-width:2.4;stroke-dasharray:50.3;stroke-dashoffset:50.3}.cmd-cancel.holding{opacity:1;color:#b85c4a}.cmd-cancel.holding .cmd-hold-ring circle{animation:cmd-hold-fill 1.2s linear forwards}@keyframes cmd-hold-fill{to{stroke-dashoffset:0}}.cmd-toast{position:fixed;right:14px;top:calc(84px + env(safe-area-inset-top));z-index:1500;padding:9px 16px;border-radius:999px;background:#fffffff5;box-shadow:0 6px 20px #463c3229;font-size:13.5px;color:#4e7a52;animation:cmd-toast-in .25s ease}.cmd-toast-cancelled{color:#b85c4a}@keyframes cmd-toast-in{0%{transform:translateY(-8px);opacity:0}}.cmd-card{top:auto;bottom:calc(128px + env(safe-area-inset-bottom));transform-origin:right bottom;animation:cmd-pop .28s cubic-bezier(.34,1.4,.5,1)}@keyframes cmd-pop{0%{transform:scale(.55) translate(30px,24px);opacity:0}to{transform:scale(1) translate(0);opacity:1}}.cmd-edge{top:auto;bottom:calc(180px + env(safe-area-inset-bottom));animation:cmd-edge-in .22s ease}@keyframes cmd-edge-in{0%{transform:translate(14px);opacity:0}}.cmd-toast{top:auto;bottom:calc(150px + env(safe-area-inset-bottom))}.cmd-badge{color:var(--accent, #c1a0ac)}.cmd-badge i,.cmd-track i,.cmd-edge-line i{background:var(--accent, #c1a0ac)}.cmd-card.cmd-over .cmd-time,.cmd-card.cmd-over .cmd-time-label{color:var(--accent, #c1a0ac)}.cmd-card.cmd-over .cmd-track i{background:var(--accent, #c1a0ac)}.cmd-edge.cmd-over{color:var(--accent, #c1a0ac)}.cmd-edge.cmd-over .cmd-edge-line i{background:var(--accent, #c1a0ac)}.cmd-cancel.holding,.cmd-toast-cancelled{color:#d78a70}[data-msgstyle=wechat] .message-row.assistant.msg-solo{grid-template-columns:36px minmax(0,1fr);gap:0 9px}[data-msgstyle=wechat] .message-row.assistant.msg-solo>.avatar{display:inline-grid}:root{--bg: #faf9f5;--card: #f5f3ed;--panel: #f0eee6;--surface: #eae7df;--line: #ddd9ce;--line-soft: rgba(0, 0, 0, .06);--text: #1a1a18;--text-soft: #6b6860;--dim: #a09a8e;--accent: #c47a38;--accent-hover: #b06a2e;--positive: #6a9b5c;--negative: #c45a4a;--info: #5a8fb4;--font-display: "Cormorant Garamond", "Iowan Old Style", "Baskerville", "Times New Roman", serif;--font-body: "SF Pro Text", "PingFang SC", "Hiragino Sans GB", "Noto Sans SC", system-ui, sans-serif;--font-mono: "Geist Mono", "SF Mono", "SFMono-Regular", "JetBrains Mono", "IBM Plex Mono", ui-monospace, monospace;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-pill: 999px;--radius-bubble: 20px;--space-xs: 4px;--space-sm: 8px;--space-md: 14px;--space-lg: 20px;--space-xl: 30px;--ease-default: cubic-bezier(.25, .1, .25, 1);--duration-fast: .15s;--duration-normal: .22s;--duration-slow: .32s;--z-sidebar: 40;--z-sheet: 50;--z-toast: 60;--chat-bg: #faf9f5;--chat-text: #2b2a27;--chat-dim: #8a867c;--chat-dim-light: #9a968d;--assistant-bubble: #f0eee6;--user-bubble: #f2ede8;--control-bg: #f0eee6;--primary-dark: #1f1f1d;color-scheme:light}:root[data-theme=dark]{--bg: #262624;--card: #30302e;--panel: #383836;--surface: #3d3d3a;--line: #4a4a46;--line-soft: rgba(255, 255, 255, .06);--text: #e8e4d8;--text-soft: #b0aa9a;--dim: #7a7468;--chat-bg: #262624;--chat-text: #e8e4d8;--chat-dim: #b0aa9a;--chat-dim-light: #8c867a;--assistant-bubble: #30302e;--user-bubble: #383532;--control-bg: #383836;--primary-dark: #e8e4d8;color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #262624;--card: #30302e;--panel: #383836;--surface: #3d3d3a;--line: #4a4a46;--line-soft: rgba(255, 255, 255, .06);--text: #e8e4d8;--text-soft: #b0aa9a;--dim: #7a7468;--chat-bg: #262624;--chat-text: #e8e4d8;--chat-dim: #b0aa9a;--chat-dim-light: #8c867a;--assistant-bubble: #30302e;--user-bubble: #383532;--control-bg: #383836;--primary-dark: #e8e4d8;color-scheme:dark}}:root[data-skin=rose]{--bg: #ffffff;--card: #ffffff;--panel: #f0d9e4;--surface: #f0d9e4;--line: #c1a0ac;--line-soft: rgba(22, 19, 31, .08);--text: #16131f;--text-soft: #806c79;--dim: #c1a0ac;--accent: #c1a0ac;--accent-hover: #806c79;--positive: #8aa87e;--negative: #c96a6a;--info: #806c79;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--radius-bubble: 18px;--chat-bg: #ffffff;--chat-text: #16131f;--chat-dim: #806c79;--chat-dim-light: #c1a0ac;--assistant-bubble: #16131f;--user-bubble: #f0d9e4;--control-bg: #f0d9e4;--primary-dark: #4a3f4b;color-scheme:light}:root[data-skin=rose][data-theme=dark]{--bg: #16131f;--card: #4a3f4b;--panel: #4a3f4b;--surface: #4a3f4b;--line: #806c79;--line-soft: rgba(240, 217, 228, .08);--text: #f0d9e4;--text-soft: #c1a0ac;--dim: #806c79;--accent: #c1a0ac;--accent-hover: #f0d9e4;--chat-bg: #16131f;--chat-text: #f0d9e4;--chat-dim: #c1a0ac;--chat-dim-light: #806c79;--assistant-bubble: #4a3f4b;--user-bubble: #f0d9e4;--control-bg: #4a3f4b;--primary-dark: #f0d9e4;color-scheme:dark}@media(prefers-color-scheme:dark){:root[data-skin=rose]:not([data-theme=light]){--bg: #16131f;--card: #4a3f4b;--panel: #4a3f4b;--surface: #4a3f4b;--line: #806c79;--line-soft: rgba(240, 217, 228, .08);--text: #f0d9e4;--text-soft: #c1a0ac;--dim: #806c79;--accent: #c1a0ac;--accent-hover: #f0d9e4;--chat-bg: #16131f;--chat-text: #f0d9e4;--chat-dim: #c1a0ac;--chat-dim-light: #806c79;--assistant-bubble: #4a3f4b;--user-bubble: #f0d9e4;--control-bg: #4a3f4b;--primary-dark: #f0d9e4;color-scheme:dark}}:root[data-skin=rose] .message-bubble{color:#fff}:root[data-skin=rose] .message-row.user .message-bubble{color:#16131f}:root[data-skin=rose][data-theme=dark] .message-row.user .message-bubble{color:#16131f}:root[data-skin=rose] .input-bar{background:#806c79;border-color:#806c79;box-shadow:0 8px 24px #16131f24}:root[data-skin=rose] .input-bar textarea{color:#fff}:root[data-skin=rose] .input-bar textarea::placeholder{color:#f0d9e4}:root[data-skin=rose] .input-bar .composer-control{color:#f0d9e4;background:#4a3f4b}:root[data-skin=rose] .input-bar .composer-primary{color:#f0d9e4;background:#4a3f4b}:root[data-skin=rose] .input-bar .composer-primary:hover{color:#fff;background:#16131f}:root[data-skin=rose] .input-bar .stop-button{color:#f0d9e4;background:#16131f}:root[data-skin=rose] .composer-model{background:#4a3f4b}:root[data-skin=rose] .composer-model select{color:#f0d9e4;background:#4a3f4b}:root[data-skin=rose] .call-turn--user .call-turn-text{background:#f0d9e4;color:#16131f}:root[data-skin=rose] .call-turn--assistant .call-turn-text{background:#16131f;color:#fff}:root[data-wallpaper],:root[data-wallpaper] body,:root[data-wallpaper] #root,:root[data-wallpaper] .chat-mode,:root[data-wallpaper] .chat-mode .main-shell,:root[data-wallpaper] .chat-view{background-image:var(--wallpaper);background-size:cover;background-position:center}:root[data-wallpaper] .chat-view:before{content:"";position:absolute;inset:0;z-index:0;background:var(--wallpaper) center / cover no-repeat;filter:blur(var(--wallpaper-blur, 0px));transform:scale(1.06);pointer-events:none}:root[data-wallpaper] .message-list{position:relative;z-index:1;background:transparent}:root[data-bubble=glass] .message-bubble{background:color-mix(in srgb,var(--assistant-bubble) 62%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}:root[data-bubble=glass] .message-row.user .message-bubble{background:color-mix(in srgb,var(--user-bubble) 60%,transparent)}:root[data-bubble=glass] .call-bubble{background:color-mix(in srgb,var(--card) 62%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.skin-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.skin-choice button{min-height:76px;display:grid;place-items:center;align-content:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text-soft);background:var(--card);cursor:pointer}.skin-choice button.active{border-color:var(--accent);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.skin-swatches{display:flex;gap:5px}.skin-swatches i{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.08)}.wallpaper-picker{display:flex;flex-direction:column;gap:10px}.wallpaper-preview{width:100%;height:120px;padding:0;overflow:hidden;border:1px dashed var(--line);border-radius:var(--radius-md);background:var(--card);cursor:pointer}.wallpaper-preview img{width:100%;height:100%;object-fit:cover;display:block}.wallpaper-empty{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--dim)}.wallpaper-empty i{font-style:normal;font-size:13px}.wallpaper-actions{display:flex;gap:8px}.wallpaper-actions button{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);color:var(--text-soft);font-size:13px;cursor:pointer}.wallpaper-actions button:hover{border-color:var(--dim)}.wallpaper-actions button.danger{color:var(--negative)}.wallpaper-error{margin:0;color:var(--negative);font-size:12px}.appearance-entry{width:100%;display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--card);color:var(--dim);cursor:pointer;text-align:left}.appearance-entry:hover{border-color:var(--dim)}.appearance-entry-icon{width:34px;height:34px;border-radius:50%;background:var(--panel);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.appearance-entry-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.appearance-entry-text strong{color:var(--text);font-size:15px;font-weight:600}.appearance-entry-text small{color:var(--text-soft);font-size:12px}.appearance-sheet{display:flex;flex-direction:column;gap:22px;padding:6px 0 24px}.appearance-sheet h4{margin:0 0 10px;color:var(--text-soft);font-size:13px;font-weight:600}.appearance-slider{width:100%;accent-color:var(--accent)}.appearance-hint{margin:0;color:var(--dim);font-size:13px}.bubble-demo{width:44px;height:20px;border-radius:10px}.bubble-demo--solid{background:var(--user-bubble);border:1px solid var(--line)}.bubble-demo--glass{background:color-mix(in srgb,var(--user-bubble) 55%,transparent);border:1px solid color-mix(in srgb,var(--line) 60%,transparent)}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0;overflow:hidden;background:var(--chat-bg)}body{min-height:100dvh;background:var(--chat-bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}button,input,textarea{color:inherit;font:inherit;letter-spacing:0}button{border:0;cursor:pointer}button:disabled{cursor:default;opacity:.55}input,textarea{outline:0}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:2px}.app-layout{width:100%;min-height:100dvh;height:100dvh;display:grid;grid-template-columns:286px minmax(0,1fr);background:var(--bg)}.desktop-sidebar-slot{min-width:0;min-height:0;display:grid}.desktop-sidebar-slot>.sidebar{height:100%}.mobile-drawer-layer{display:none}.main-shell{min-width:0;min-height:0;position:relative;display:grid;grid-template-rows:62px minmax(0,1fr)}.topbar{height:62px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;padding:0 var(--space-md);border-bottom:1px solid var(--line-soft);background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(18px);z-index:10}.topbar-title{min-width:0;text-align:center}.topbar-title h1{margin:0;overflow:hidden;font-size:16px;font-weight:600;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.topbar-title span{display:block;overflow:hidden;color:var(--dim);font-size:10px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;border-radius:var(--radius-sm);color:var(--text-soft);background:transparent;transition:color var(--duration-fast),background var(--duration-fast),transform var(--duration-fast)}.button:hover{color:var(--text);background:var(--surface)}.button:active{transform:scale(.97)}.button-primary{color:#fff;background:var(--accent)}.button-primary:hover{color:#fff;background:var(--accent-hover)}.button-danger:hover{color:var(--negative);background:color-mix(in srgb,var(--negative) 10%,transparent)}.button-icon{width:38px;min-width:38px;padding:0;border-radius:50%}.sidebar{min-width:0;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:var(--space-lg);padding:22px 16px 14px;border-right:1px solid var(--line);background:var(--panel);z-index:var(--z-sidebar)}.brand-header{display:flex;align-items:center;gap:11px;padding:2px 7px}.brand-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--accent)}.brand-header div{min-width:0;display:grid}.brand-header strong{font-family:var(--font-display);font-size:24px;font-weight:700;line-height:1}.brand-header small,.sidebar-foot{color:var(--dim);font-family:var(--font-mono);font-size:8px}.brand-header small,.sidebar-foot,.topbar-title h1,.topbar-title span,.date-separator,.message-meta,.message-meta .time,.composer-model select,.attachment-chip,.status-line,.connection-meta,.tool-row strong,.tool-call strong{font-feature-settings:"zero" 1,"tnum" 1;font-variant-numeric:tabular-nums slashed-zero}.nav-menu{display:grid;gap:3px}.nav-menu button{height:42px;display:flex;align-items:center;gap:12px;padding:0 12px;border-radius:var(--radius-sm);color:var(--text-soft);background:transparent;text-align:left}.nav-menu button:hover{color:var(--text);background:color-mix(in srgb,var(--surface) 72%,transparent)}.nav-menu button.active{color:var(--accent);background:var(--card);box-shadow:inset 3px 0 0 var(--accent)}.chat-history{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.section-label{height:34px;display:flex;align-items:center;justify-content:space-between;padding:0 7px 0 11px;color:var(--dim);font-size:11px}.section-label .button{width:30px;min-width:30px;min-height:30px}.history-list{min-height:0;overflow-y:auto;padding-right:2px}.history-list button{width:100%;display:grid;gap:1px;padding:9px 11px;border-radius:var(--radius-sm);color:var(--text-soft);background:transparent;text-align:left}.history-list button:hover,.history-list button.current{background:color-mix(in srgb,var(--card) 76%,transparent)}.history-list strong,.history-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-list strong{font-size:13px;font-weight:500}.history-list small{color:var(--dim);font-size:10px}.sidebar-foot{margin:0;padding:0 8px}.drawer-profile-entry{margin-top:auto;padding:13px 4px calc(4px + env(safe-area-inset-bottom));border-top:1px solid var(--line-soft)}.drawer-profile-btn{width:100%;min-height:46px;display:flex;align-items:center;gap:10px;padding:4px 8px;border-radius:var(--radius-pill);color:var(--text-soft);background:transparent;text-align:left}.drawer-profile-btn:hover,.drawer-profile-btn.active{color:var(--text);background:color-mix(in srgb,var(--card) 72%,transparent)}.drawer-profile-btn .avatar{width:34px;height:34px}.drawer-profile-btn span:last-child{min-width:0;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.drawer-overlay{display:none}.chat-mode,.chat-mode .main-shell,.chat-view,.message-list{background:var(--chat-bg)}.chat-mode .main-shell{grid-template-rows:minmax(0,1fr)}.topbar-float{position:absolute;top:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:calc(10px + env(safe-area-inset-top)) 12px 0;background:transparent;pointer-events:none}.topbar-float .float-btn,.topbar-float .float-capsule{pointer-events:auto}.float-btn,.float-capsule{border:1px solid rgba(255,255,255,.5);background:#ffffff8c;background-image:linear-gradient(165deg,#ffffff80,#ffffff0d 60%);box-shadow:0 2px 12px #00000014;-webkit-backdrop-filter:blur(20px) saturate(150%);backdrop-filter:blur(20px) saturate(150%)}.float-btn{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#3a3a3a;cursor:pointer}.float-capsule{display:flex;align-items:center;gap:0;padding:3px;border-radius:var(--radius-pill)}.float-capsule button{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:#3a3a3a;cursor:pointer}.float-capsule button:hover,.float-btn:hover{color:#111}:root[data-theme=dark] .float-btn,:root[data-theme=dark] .float-capsule{border-color:#ffffff1f;background:#3230348c;background-image:linear-gradient(165deg,#ffffff24,#ffffff05 60%)}:root[data-theme=dark] .float-btn,:root[data-theme=dark] .float-capsule button{color:#d8d4d8}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .float-btn,:root:not([data-theme=light]) .float-capsule{border-color:#ffffff1f;background:#3230348c;background-image:linear-gradient(165deg,#ffffff24,#ffffff05 60%)}:root:not([data-theme=light]) .float-btn,:root:not([data-theme=light]) .float-capsule button{color:#d8d4d8}}.chat-mode .topbar{border:0;background:transparent;box-shadow:none;backdrop-filter:none}.chat-mode .topbar-title h1{color:var(--chat-text);font-family:var(--font-mono);font-size:17px;font-weight:600;line-height:1.25}.chat-mode .topbar-title span{color:var(--chat-dim);font-family:var(--font-mono);font-size:12px;font-weight:400}.chat-mode .topbar .button{color:var(--chat-text);background:transparent;box-shadow:none}.chat-mode .topbar .button:hover{background:color-mix(in srgb,var(--control-bg) 55%,transparent)}.chat-mode .topbar svg{width:17px;height:17px}.chat-view{min-width:0;min-height:0;height:100%;position:relative;display:grid;grid-template-rows:minmax(0,1fr);overflow:hidden;color:var(--chat-text)}.message-list{min-height:0;height:100%;overflow-y:auto;border:0;box-shadow:none;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.message-inner{width:min(100%,720px);min-height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:flex-end;gap:34px;padding:74px 18px 178px}.message-row{width:100%;display:grid;grid-template-columns:36px minmax(0,1fr);gap:0 9px;align-items:start}.message-row>.message-meta{grid-column:2;grid-row:1;margin-bottom:4px}.message-row>.message-meta .button{min-height:20px;width:24px;min-width:24px}.message-row>.avatar{grid-column:1;grid-row:2;align-self:start;margin-top:5px}.message-row>.message-column{grid-column:2;grid-row:2}.message-row.user{margin-left:auto;grid-template-columns:minmax(0,1fr) 36px}.message-row.user>.avatar{grid-column:2}.message-row.user>.message-column{grid-column:1;align-items:flex-end}.message-column{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.date-separator{display:flex;align-items:center;gap:12px;margin:18px 0 16px;color:#8f8a80;font-family:var(--font-mono);font-size:12px;line-height:1}.date-separator:before,.date-separator:after{content:"";height:1px;flex:1;background:#78736a1f}.message-meta{min-height:20px;display:flex;align-items:center;gap:8px;margin:0 2px 6px;color:#8f8a80;font-family:var(--font-mono);font-size:12px;line-height:1}.assistant-meta{width:fit-content;max-width:100%;display:inline-flex}.assistant-meta .dot{width:7px;height:7px;flex:none;border-radius:50%;background:#1f1f1d}.message-meta .time{color:#6f6a61;font-family:var(--font-mono);font-size:12px}.user-meta{justify-content:flex-end;align-self:flex-end}.user-meta .name{color:#8f8a80;font-size:12px;font-weight:400}.message-segments{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.message-row.user .message-segments{align-items:flex-end}.message-bubble{min-width:34px;max-width:calc(100% - 45px);padding:10px 16px;border:0;border-radius:18px;color:var(--chat-text);background:var(--assistant-bubble);box-shadow:none;font-size:16px;line-height:1.65;overflow-wrap:anywhere;white-space:pre-line;word-break:break-word;text-align:justify;text-justify:inter-character}.message-row.user .message-bubble{color:var(--chat-text);background:var(--user-bubble)}.message-bubble p{margin:0 0 .7em}.message-bubble p:last-child{margin-bottom:0}.message-bubble pre{max-width:100%;overflow-x:auto;padding:12px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface) 70%,transparent);font-family:var(--font-mono);font-size:12px}.message-bubble code{font-family:var(--font-mono);font-size:.9em}.message-bubble a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}.message-actions{display:flex;gap:2px;padding:2px 4px;animation:actions-in var(--duration-normal) var(--ease-default)}.message-actions .button{width:29px;min-width:29px;min-height:29px}.avatar{flex:none;display:inline-grid;place-items:center;overflow:hidden;border:0;border-radius:50%;color:var(--text-soft);background:var(--surface);box-shadow:none;font-family:var(--font-display);font-size:18px}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-sm{width:28px;height:28px}.avatar-md{width:36px;height:36px}.avatar-lg{width:64px;height:64px;font-size:25px}.tool-call{width:min(100%,560px);margin-bottom:8px;overflow:hidden;color:var(--text-soft)}.tool-call{border:1px solid var(--line);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--panel) 72%,transparent)}.thinking-cloud-btn{width:18px;height:18px;margin:0;display:inline-flex;align-items:center;justify-content:center;flex:none;padding:0;border:0;border-radius:var(--radius-pill);color:#a29d92;background:transparent;box-shadow:none}.thinking-cloud-btn:hover{opacity:.76}.thinking-cloud-btn:active{opacity:.58;transform:scale(.96)}.thinking-cloud-btn svg{width:14px;height:14px;stroke-width:2.4}.tool-call>button{width:100%;display:flex;align-items:center;gap:8px;padding:8px 11px;color:inherit;background:transparent;text-align:left}.tool-call>button .tool-status svg:last-child{transition:transform var(--duration-normal)}.tool-call.open>button .tool-status svg:last-child{transform:rotate(180deg)}.tool-detail pre{margin:0;padding:11px;overflow:auto;white-space:pre-wrap;color:var(--chat-dim);background:transparent;font-family:var(--font-mono);font-size:12px;line-height:1.6}.tool-detail pre{border-top:1px solid var(--line)}.tool-call>button>span:nth-child(2){min-width:0;flex:1;display:grid}.tool-call small{color:var(--dim);font-size:9px}.tool-call strong{overflow:hidden;color:var(--text-soft);font-family:var(--font-mono);font-size:11px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.tool-glyph{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;color:var(--info);background:color-mix(in srgb,var(--info) 10%,transparent)}.tool-status{display:flex;align-items:center;gap:6px}.tool-running .tool-status svg:first-child,.status-line svg,.loading-state:before{animation:spin 1s linear infinite}.tool-success .tool-status svg:first-child{color:var(--positive)}.tool-error .tool-status svg:first-child{color:var(--negative)}.tool-detail label{display:block;padding:8px 11px 3px;color:var(--dim);font-size:9px;text-transform:uppercase}.typing-indicator{min-width:36px;height:20px;display:inline-flex;align-items:center;justify-content:center;gap:4px}.typing-indicator i{width:4px;height:4px;border-radius:50%;background:currentColor;animation:dot 1.2s infinite}.typing-indicator i:nth-child(2){animation-delay:.16s}.typing-indicator i:nth-child(3){animation-delay:.32s}.thinking-dots{min-height:24px;display:inline-flex;align-items:center;gap:5px;padding:6px 2px;color:#b8b2a8}.thinking-dots span{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.35;animation:thinking-bounce 1s infinite ease-in-out}.thinking-dots span:nth-child(2){animation-delay:.16s}.thinking-dots span:nth-child(3){animation-delay:.32s}.claw-pet{position:fixed;right:8px;bottom:calc(118px + env(safe-area-inset-bottom));z-index:30;width:128px;height:128px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.claw-pet:active{cursor:grabbing}.claw-pet img{width:100%;height:100%;display:block;pointer-events:none}.claw-pet.missing{display:none}.chat-empty{margin:auto;padding:70px 20px;text-align:center}.chat-empty span,.eyebrow{color:var(--accent);font-family:var(--font-mono);font-size:9px;letter-spacing:.12em}.chat-empty h2{margin:12px 0 5px;font-family:var(--font-display);font-size:clamp(28px,4vw,38px);font-weight:600}.chat-empty p{margin:0;color:var(--dim)}.composer-area{position:fixed;left:286px;right:0;bottom:0;z-index:20;padding:6px 12px calc(10px + env(safe-area-inset-bottom));border:0!important;background:transparent!important;background-image:none!important;box-shadow:none!important;pointer-events:none}.status-line-spacer{height:25px}.status-line{width:min(100%,760px);height:25px;margin:0 auto;display:flex;align-items:center;gap:7px;padding-left:12px;color:var(--dim);font-size:11px;pointer-events:none}.input-bar{width:min(100%,760px);min-height:112px;margin:0 auto;display:flex;flex-direction:column;padding:12px 14px 5px;border:1px solid rgba(255,255,255,.55);border-radius:26px;background:#ffffffbd;box-shadow:0 8px 24px #1c1a160f,0 1px #ffffffb8 inset;-webkit-backdrop-filter:blur(18px) saturate(120%);backdrop-filter:blur(18px) saturate(120%);pointer-events:auto}:root[data-theme=dark] .input-bar{background:color-mix(in srgb,var(--card) 82%,transparent)}.input-bar textarea{width:100%;min-height:42px;max-height:160px;resize:none;padding:2px 2px 10px;border:0;outline:0;background:transparent;color:var(--chat-text);font-size:16px;line-height:1.5}.input-bar textarea::placeholder{color:#a5a195}.composer-controls{display:flex;align-items:center;gap:8px}.composer-spacer{min-width:0;flex:1}.input-bar .composer-control,.input-bar .composer-primary{width:36px;min-width:36px;height:36px;min-height:36px;border-radius:50%;box-shadow:none}.input-bar .composer-control{color:var(--chat-text);background:var(--control-bg)}.input-bar .composer-primary{width:40px;min-width:40px;height:40px;min-height:40px;color:var(--chat-bg);background:var(--primary-dark)}.input-bar .composer-primary:hover{color:var(--chat-bg);background:color-mix(in srgb,var(--primary-dark) 88%,transparent)}.input-bar .stop-button{color:var(--chat-bg);background:var(--primary-dark)}.send-button svg{width:21px;height:21px}.stop-glyph{width:12px;height:12px;display:block;border-radius:3px;background:currentColor}.composer-model{flex:0 0 auto;width:auto;max-width:max-content;height:36px;min-width:0;display:inline-flex;align-items:center;border-radius:var(--radius-pill);background:var(--control-bg);box-shadow:none;white-space:nowrap}.composer-model select{width:auto;max-width:118px;height:36px;padding:0 16px;border:0;border-radius:inherit;outline:0;appearance:none;-webkit-appearance:none;color:var(--chat-text);background:transparent;font-family:var(--font-mono);font-size:14px;font-weight:400;text-align:center;text-align-last:center;overflow:hidden;text-overflow:ellipsis}.channel-pill{flex:0 0 auto;height:36px;padding:0 14px;border:0;border-radius:var(--radius-pill);background:var(--primary-dark);color:var(--chat-bg);font-family:var(--font-mono);font-size:13px;font-weight:600;letter-spacing:.5px;cursor:pointer;transition:opacity .15s}.channel-pill:hover{opacity:.85}.attachment-strip{display:flex;gap:6px;margin-bottom:8px;overflow-x:auto}.attachment-chip{min-width:0;max-width:220px;height:30px;display:flex;align-items:center;gap:6px;padding:0 5px 0 9px;border-radius:var(--radius-pill);color:var(--chat-dim);background:var(--control-bg);font-size:11px}.attachment-chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-chip button{width:24px;height:24px;flex:none;display:grid;place-items:center;padding:0;border-radius:50%;color:inherit;background:transparent}.attachment-error{margin:-2px 2px 6px;color:var(--negative);font-size:11px}.visually-hidden{width:1px!important;height:1px!important;position:absolute!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.inline-error{width:min(100%,760px);margin:0 auto 4px;color:var(--negative);font-size:11px;text-align:center}.bottom-sheet-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:flex-end;justify-content:center}.bottom-sheet-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;background:#28262266}.bottom-sheet{position:relative;width:100%;max-width:640px;max-height:86dvh;min-height:300px;display:flex;flex-direction:column;overflow:hidden;border-radius:24px 24px 0 0;background:var(--chat-bg);animation:sheet-rise .22s ease}.sheet-grabber{width:38px;height:5px;margin:10px auto 0;flex-shrink:0;border-radius:var(--radius-pill);background:var(--line)}.bottom-sheet-body{flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:6px 20px calc(20px + env(safe-area-inset-bottom))}.thinking-content{margin:0;color:var(--chat-text);background:transparent;border:0;box-shadow:none;font-family:var(--font-body);font-size:15.5px;line-height:1.85;white-space:pre-wrap;word-break:break-word}.panel-page{min-height:0;overflow-y:auto;padding:36px clamp(20px,4vw,54px) 70px}.panel-heading{width:min(100%,980px);margin:0 auto 32px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:25px}.panel-heading h2{margin:4px 0 3px;font-family:var(--font-display);font-size:34px;font-weight:600}.panel-heading p{margin:0;color:var(--text-soft);font-size:12px}.panel-actions{display:flex;align-items:center;gap:7px}.panel-notice,.panel-empty,.loading-state{width:min(100%,980px);margin:0 auto;padding:20px;color:var(--text-soft);text-align:center}.panel-notice{display:grid;border:1px solid color-mix(in srgb,var(--negative) 35%,var(--line));border-radius:var(--radius-sm);color:var(--negative);background:color-mix(in srgb,var(--negative) 6%,transparent)}.panel-notice span{font-size:12px}.connection-list{width:min(100%,980px);margin:0 auto;display:grid;gap:12px}.connection-card{padding:18px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card)}.connection-card>header{display:flex;justify-content:space-between;gap:20px}.connection-card h3{margin:9px 0 0;font-size:16px}.connection-card p{max-width:680px;margin:2px 0 0;overflow:hidden;color:var(--dim);font-family:var(--font-mono);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.connection-meta{display:flex;gap:18px;margin-top:13px;color:var(--text-soft);font-size:10px}.connection-error{color:var(--negative)!important;font-family:var(--font-body)!important;white-space:normal!important}.connection-card>footer{display:flex;justify-content:flex-end;gap:2px;margin-top:10px;padding-top:9px;border-top:1px solid var(--line-soft)}.connection-card>footer .button{width:32px;min-width:32px;min-height:32px}.badge{display:inline-flex;align-items:center;gap:6px;color:var(--dim);font-size:9px}.badge i{width:7px;height:7px;border-radius:50%;background:var(--dim)}.badge-connected i{background:var(--positive);box-shadow:0 0 0 3px color-mix(in srgb,var(--positive) 12%,transparent)}.badge-error i{background:var(--negative)}.badge-connecting i,.badge-reconnecting i{background:var(--info);animation:pulse 1.4s infinite}.toggle{width:42px;height:24px;position:relative;flex:none;padding:3px;border-radius:var(--radius-pill);background:var(--surface);transition:background var(--duration-normal)}.toggle span{width:18px;height:18px;display:block;border-radius:50%;background:var(--dim);transition:transform var(--duration-normal),background var(--duration-normal)}.toggle.on{background:color-mix(in srgb,var(--positive) 26%,var(--surface))}.toggle.on span{transform:translate(18px);background:var(--positive)}.tool-list{display:grid;gap:1px;margin-top:14px;border-top:1px solid var(--line-soft)}.tool-row>button{width:100%;min-height:46px;display:grid;grid-template-columns:27px minmax(0,1fr) 18px;align-items:center;gap:8px;padding:6px 2px;color:var(--text-soft);background:transparent;text-align:left}.tool-row>button>span{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:var(--surface)}.tool-row>button div{min-width:0;display:grid}.tool-row strong,.tool-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-row strong{font-family:var(--font-mono);font-size:11px}.tool-row small{color:var(--dim);font-size:10px}.tool-row>pre{margin:0 0 8px 36px;padding:10px;overflow:auto;border-radius:var(--radius-sm);color:var(--dim);background:var(--panel);font-family:var(--font-mono);font-size:10px}.empty-copy{color:var(--dim);font-size:11px}.sheet-layer{position:fixed;inset:0;display:grid;place-items:center;padding:20px;background:#1413116b;backdrop-filter:blur(4px);z-index:var(--z-sheet);animation:fade-in var(--duration-normal)}.sheet{width:min(100%,570px);max-height:min(760px,calc(100dvh - 40px));overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--bg);box-shadow:0 28px 80px #00000038;animation:sheet-in var(--duration-slow) var(--ease-default)}.sheet-header{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 20px;border-bottom:1px solid var(--line)}.sheet-header h2{margin:0;font-family:var(--font-display);font-size:23px}.sheet-body{min-height:0;overflow-y:auto;padding:22px}.connection-form{display:grid;gap:16px}.connection-form label{display:grid;gap:6px;color:var(--text-soft);font-size:11px}.connection-form input,.connection-form textarea,.profile-editor input{width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;background:var(--card)}.connection-form fieldset{margin:0;padding:0;border:0}.connection-form legend{margin-bottom:6px;color:var(--text-soft);font-size:11px}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:3px;border-radius:var(--radius-sm);background:var(--panel)}.segmented button{height:34px;border-radius:6px;color:var(--text-soft);background:transparent}.segmented button.active{color:var(--text);background:var(--card);box-shadow:0 2px 7px #00000012}.form-toggle{display:flex;align-items:center;justify-content:space-between;gap:20px}.form-toggle>span{display:grid}.form-toggle small{color:var(--dim)}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:5px}.settings-panel{padding-bottom:90px;background:var(--bg)}.settings-profile-page{width:min(100%,720px);margin:0 auto}.settings-hero{display:grid;justify-items:center;padding:18px 0 30px;text-align:center}.settings-avatar-pair{height:76px;display:flex;align-items:center;justify-content:center;margin-bottom:13px}.settings-avatar-pair .avatar{width:72px;height:72px;border:4px solid var(--bg);box-shadow:0 8px 24px #1a181414}.settings-avatar-pair .avatar+.avatar{margin-left:-16px}.settings-title{margin:0;color:var(--text);font-family:var(--font-display);font-size:32px;font-style:italic;font-weight:700;line-height:1.05}.together-label{margin-top:16px;color:var(--dim);font-family:var(--font-body);font-size:12px;letter-spacing:.16em}.together-days{margin-top:5px;display:flex;align-items:baseline;justify-content:center;gap:8px;color:var(--text)}.together-days strong{font-family:var(--font-display);font-size:74px;font-weight:700;line-height:.92;letter-spacing:0}.together-days span{font-family:var(--font-body);font-size:18px}.since-line{margin:6px 0 0;color:var(--dim);font-family:var(--font-mono);font-size:12px;letter-spacing:.28em;font-feature-settings:"zero" 1,"tnum" 1;font-variant-numeric:tabular-nums slashed-zero}.settings-list{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.settings-row{width:100%;min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 4px;border-bottom:1px solid var(--line-soft);color:var(--text);background:transparent;text-align:left}.settings-row:last-child{border-bottom:0}.settings-row strong{font-family:var(--font-display);font-size:27px;font-weight:600;line-height:1}.settings-row span{color:var(--dim);font-family:var(--font-mono);font-size:13px;font-feature-settings:"zero" 1,"tnum" 1;font-variant-numeric:tabular-nums slashed-zero}.settings-edit-section{margin-top:34px}.settings-section{width:min(100%,780px);margin:0 auto 34px}.settings-section>h3{margin:0 0 12px;color:var(--dim);font-family:var(--font-display);font-size:24px;font-weight:600}.profile-editor{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:4px 18px;padding:16px 0;border-top:1px solid var(--line)}.profile-editor:last-child{border-bottom:1px solid var(--line)}.profile-editor>h3{margin:0;color:var(--text-soft);font-size:13px;font-weight:500}.profile-row{grid-column:2;display:grid;grid-template-columns:64px minmax(0,1fr) 38px;align-items:end;gap:14px}.profile-row label{display:grid;gap:5px;color:var(--dim);font-size:10px}.avatar-edit{position:relative;padding:0;border-radius:50%;background:transparent}.avatar-edit>span:last-child{width:23px;height:23px;position:absolute;right:-1px;bottom:-1px;display:grid;place-items:center;border:2px solid var(--bg);border-radius:50%;color:#fff;background:var(--accent)}.model-selector{position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.model-current{width:100%;min-height:65px;display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:transparent;text-align:left}.model-current span,.model-options button span{display:grid}.model-current small,.model-options small{color:var(--dim);font-size:10px}.model-current strong,.model-options strong{font-size:13px;font-weight:500}.model-options{position:absolute;top:calc(100% + 6px);left:0;right:0;padding:5px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card);box-shadow:0 16px 42px #00000029;z-index:5}.model-options button{width:100%;min-height:52px;display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-radius:6px;background:transparent;text-align:left}.model-options button:hover{background:var(--surface)}.theme-choice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.theme-choice button{min-height:76px;display:grid;place-items:center;align-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text-soft);background:var(--card)}.theme-choice button.active{border-color:var(--accent);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dot{0%,60%,to{transform:translateY(0);opacity:.35}30%{transform:translateY(-4px);opacity:1}}@keyframes thinking-bounce{0%,80%,to{transform:translateY(0);opacity:.28}40%{transform:translateY(-2px);opacity:.9}}@keyframes pulse{50%{opacity:.35}}@keyframes fade-in{0%{opacity:0}}@keyframes sheet-in{0%{transform:translateY(16px);opacity:0}}@keyframes sheet-rise{0%{transform:translateY(24px);opacity:.6}to{transform:translateY(0);opacity:1}}@keyframes actions-in{0%{transform:translateY(-3px);opacity:0}}@media(max-width:760px){.app-layout{display:block}.main-shell{width:100%;height:100dvh;grid-template-rows:calc(56px + env(safe-area-inset-top)) minmax(0,1fr)}.topbar{height:calc(56px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.desktop-sidebar-slot{display:none}.mobile-drawer-layer{position:fixed;inset:0;width:100vw;height:100dvh;z-index:1000;display:block;visibility:hidden;pointer-events:none}.mobile-drawer-layer.open{visibility:visible}.mobile-drawer-layer .drawer-overlay{display:block;position:absolute;inset:0;visibility:hidden;opacity:0;background:#28262266;z-index:0;transition:opacity var(--duration-normal),visibility var(--duration-normal);pointer-events:none}.mobile-drawer-layer .drawer-overlay.open{visibility:visible;opacity:1;pointer-events:auto}.mobile-drawer-layer .sidebar{width:min(84vw,330px);height:100dvh;position:absolute;inset:0 auto 0 0;padding:calc(16px + env(safe-area-inset-top)) 16px calc(14px + env(safe-area-inset-bottom));border-right:0;background:var(--bg);transform:translate(-102%);transition:transform var(--duration-slow) var(--ease-default);box-shadow:4px 0 24px #0000001f;pointer-events:auto}.mobile-drawer-layer .sidebar.open{transform:translate(0)}.message-inner{gap:34px;padding:22px 18px 178px}.message-row{grid-template-columns:36px minmax(0,1fr);gap:0 8px}.message-row.user{grid-template-columns:minmax(0,1fr) 36px}.avatar-md{width:36px;height:36px;font-size:15px}.message-bubble{max-width:calc(100% - 45px);padding:10px 16px;font-size:16px}.composer-area{left:0;padding:6px 10px max(8px,calc(env(safe-area-inset-bottom,0px) - 2px))}.input-bar{min-height:0;padding:12px 14px 8px;border-radius:26px}.composer-model select{max-width:112px}.panel-page{padding:24px 16px calc(40px + env(safe-area-inset-bottom))}.panel-heading{display:block;margin-bottom:22px}.panel-heading h2{font-size:29px}.panel-heading p{max-width:270px}.panel-actions{margin-top:14px;justify-content:flex-end}.connection-card{padding:15px}.sheet-layer{align-items:end;padding:0}.sheet{width:100%;height:100dvh;max-height:none;border:0;border-radius:0}.sheet-header{padding-top:env(safe-area-inset-top);height:calc(58px + env(safe-area-inset-top))}.sheet-body{padding-bottom:calc(22px + env(safe-area-inset-bottom))}.profile-editor{grid-template-columns:1fr}.profile-row{grid-column:1;grid-template-columns:58px minmax(0,1fr) 36px}.avatar-lg{width:58px;height:58px}.theme-choice button{min-height:67px;font-size:12px}.settings-title{font-size:29px}.together-days strong{font-size:68px}.settings-row strong{font-size:26px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.topbar-actions{display:flex;align-items:center;gap:2px;justify-content:flex-end}.sheet-overlay{position:fixed;inset:0;background:#00000040;z-index:900;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.model-sheet{position:fixed;bottom:0;left:0;right:0;z-index:901;padding:12px 24px 32px;border-radius:20px 20px 0 0;background:#ffffffe0;-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%);box-shadow:0 -8px 32px #00000014;max-height:70vh;overflow-y:auto}:root[data-theme=dark] .model-sheet{background:#30302eeb}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .model-sheet{background:#30302eeb}}.sheet-handle{width:36px;height:4px;margin:0 auto 16px;border-radius:2px;background:#0000001f}:root[data-theme=dark] .sheet-handle{background:#ffffff26}.sheet-title{text-align:center;font-size:16px;font-weight:600;margin:0 0 20px;color:var(--chat-text)}.sheet-section{margin-bottom:18px}.sheet-section-label{font-size:12px;font-weight:600;letter-spacing:1px;color:var(--accent, #b8956a);margin-bottom:10px;font-family:var(--font-mono)}.sheet-pills{display:flex;gap:0;border-radius:14px;overflow:hidden;border:1px solid rgba(0,0,0,.06)}:root[data-theme=dark] .sheet-pills{border-color:#ffffff14}.sheet-pill{flex:1;padding:12px 8px;border:0;background:var(--control-bg);color:var(--chat-text);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s,color .15s;text-align:center}.sheet-pill+.sheet-pill{border-left:1px solid rgba(0,0,0,.06)}:root[data-theme=dark] .sheet-pill+.sheet-pill{border-left-color:#ffffff0f}.sheet-pill.active{background:var(--primary-dark);color:var(--chat-bg);font-weight:600}.sheet-hint{font-size:13px;color:var(--chat-text);opacity:.55;margin:8px 0 0;line-height:1.4}.sheet-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.sheet-toggle-row>div{flex:1}.sheet-toggle-row strong{font-size:15px;font-weight:600;color:var(--chat-text)}.sheet-toggle{width:52px;height:30px;border-radius:15px;border:0;background:var(--control-bg);position:relative;cursor:pointer;transition:background .2s;flex-shrink:0}.sheet-toggle.on{background:var(--accent, #b8956a)}.sheet-toggle-knob{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:12px;background:#fff;box-shadow:0 1px 3px #00000026;transition:transform .2s}.sheet-toggle.on .sheet-toggle-knob{transform:translate(22px)}.sheet-footer{text-align:center;font-size:13px;color:var(--chat-text);opacity:.4;margin:8px 0 0}.drawer-trigger{width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:var(--chat-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s}.drawer-trigger:hover{opacity:.7}.quick-drawer{position:fixed;top:56px;right:12px;z-index:901;min-width:180px;padding:8px 0;border-radius:16px;background:#ffffffe0;-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%);box-shadow:0 8px 32px #0000001a,0 0 0 1px #0000000a}:root[data-theme=dark] .quick-drawer{background:#30302eeb;box-shadow:0 8px 32px #0000004d,0 0 0 1px #ffffff0f}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .quick-drawer{background:#30302eeb}}.drawer-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 20px;border:0;background:transparent;color:var(--chat-text);font-size:15px;cursor:pointer;transition:background .1s;text-align:left}.drawer-item:hover:not(:disabled){background:#0000000a}:root[data-theme=dark] .drawer-item:hover:not(:disabled){background:#ffffff0f}.drawer-item.disabled{opacity:.35;cursor:default}.model-pill-compact{flex:0 0 auto;height:36px;padding:0 14px;border:0;border-radius:var(--radius-pill);background:var(--control-bg);color:var(--chat-text);font-family:var(--font-mono);font-size:14px;font-weight:400;cursor:pointer;transition:opacity .15s;white-space:nowrap;text-align:center}.model-pill-compact:hover{opacity:.75}.sidebar-relationship{display:flex;flex-direction:column;align-items:center;padding:10px 4px 30px;text-align:center}.relationship-avatars{display:flex;align-items:center;justify-content:center;margin-bottom:13px}.relationship-avatars>.avatar,.relationship-avatars>button{margin-left:-8px}.relationship-avatars>:first-child{margin-left:0}.relationship-avatars>button{padding:0;border-radius:50%;background:transparent}.relationship-avatars .avatar{width:58px;height:58px;border:3px solid var(--bg)}.sidebar-relationship h2{margin:0;color:var(--text);font-family:var(--font-display);font-size:26px;font-weight:600;line-height:1.15}.sidebar-relationship h2 span{color:var(--dim);font-weight:400}.sidebar-relationship p{margin:12px 0 2px;color:var(--dim);font-size:12px}.relationship-days{display:flex;align-items:baseline;justify-content:center;gap:6px;color:var(--text)}.relationship-days strong{font-family:var(--font-display);font-size:58px;font-weight:600;line-height:1}.relationship-days span{font-size:14px}.sidebar-relationship small{margin-top:6px;color:var(--dim);font-family:var(--font-mono);font-size:10px}.sidebar-feature-list{min-height:0;border-top:1px solid rgba(120,115,106,.1)}.sidebar-feature-list button{width:100%;min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 10px;border-bottom:1px solid rgba(120,115,106,.1);color:var(--text);background:transparent;text-align:left}.sidebar-feature-list button:hover{background:#78736a09}.sidebar-feature-list button>span{font-family:var(--font-display);font-size:24px}.sidebar-feature-list button small{color:var(--dim);font-family:var(--font-mono);font-size:8px}.sidebar-profile-foot{padding-top:12px;border-top:1px solid rgba(120,115,106,.1)}.sidebar-profile-foot button{width:100%;min-height:54px;display:flex;align-items:center;gap:10px;padding:4px 8px;color:var(--text-soft);background:transparent;text-align:left}.sidebar-profile-foot .avatar{width:40px;height:40px}.bottom-sheet-overlay{--sheet-drag-y: 0px;--sheet-backdrop-opacity: 1;position:fixed;inset:0;z-index:2000;display:flex;align-items:flex-end;justify-content:center}.bottom-sheet-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;opacity:var(--sheet-backdrop-opacity);background:#28262266;transition:opacity .3s cubic-bezier(.22,1,.36,1)}.bottom-sheet{position:relative;width:100%;max-width:640px;max-height:70dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden;border-radius:24px 24px 0 0;background:var(--chat-bg);transform:translateY(var(--sheet-drag-y));animation:sheet-rise .32s cubic-bezier(.22,1,.36,1);will-change:transform;touch-action:pan-y}.bottom-sheet-large{max-height:86dvh;min-height:300px}.bottom-sheet-overlay.closing .bottom-sheet{animation:sheet-lower .26s cubic-bezier(.25,.1,.25,1) forwards}.bottom-sheet-overlay.closing .bottom-sheet-backdrop{opacity:0;transition-duration:.26s}.bottom-sheet:after{content:"";position:absolute;top:100%;left:0;right:0;height:80px;background:var(--chat-bg)}.sheet-grabber{width:38px;height:5px;margin:10px auto 0;flex-shrink:0;border-radius:var(--radius-pill);background:var(--line);touch-action:none}.bottom-sheet-header{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;padding:12px 16px 10px}.bottom-sheet-header h2{margin:0;overflow:hidden;color:var(--chat-text);font-family:var(--font-body);font-size:17px;font-weight:600;line-height:1.25;text-align:center;text-overflow:ellipsis;white-space:nowrap}.bottom-sheet-close{width:40px;height:40px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;color:var(--chat-text);background:transparent;box-shadow:none}.bottom-sheet-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:6px 20px calc(20px + env(safe-area-inset-bottom))}@keyframes sheet-rise{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheet-lower{0%{transform:translateY(0)}to{transform:translateY(100%)}}.chat-search{color:var(--chat-text)}.chat-search-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:18px;padding:3px;border-radius:var(--radius-pill);background:var(--control-bg)}.chat-search-tabs button{height:36px;border-radius:var(--radius-pill);color:var(--chat-dim);background:transparent;font-size:13px}.chat-search-tabs button.active{color:var(--chat-text);background:#ffffffbd;box-shadow:0 2px 8px #1e1c180d}.chat-search-input{height:46px;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid rgba(120,115,106,.1);border-radius:15px;color:var(--dim);background:#ffffff7a}.chat-search-input input{min-width:0;flex:1;border:0;color:var(--chat-text);background:transparent;font-size:16px}.chat-search-input input::placeholder{color:var(--dim)}.chat-search-empty{margin:42px 0;color:var(--dim);font-size:13px;text-align:center}.chat-search-results{display:grid;gap:1px;margin-top:14px;border-top:1px solid rgba(120,115,106,.08)}.chat-search-result{width:100%;display:grid;gap:6px;padding:13px 8px;border-bottom:1px solid rgba(120,115,106,.08);color:var(--chat-text);background:transparent;text-align:left}.chat-search-result:hover{background:#78736a09}.chat-search-result>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.chat-search-result span{color:var(--chat-dim);font-size:11px}.chat-search-result.user span{color:var(--accent)}.chat-search-result time{color:var(--dim);font-family:var(--font-mono);font-size:10px}.chat-search-result p{margin:0;overflow:hidden;font-size:13px;line-height:1.55;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.calendar-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding:0 4px}.calendar-heading strong{font-family:var(--font-body);font-size:18px;font-weight:600}.calendar-heading>div{display:flex;gap:4px}.calendar-heading button{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--chat-text);background:transparent}.calendar-heading button:hover{background:var(--control-bg)}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}.calendar-weekdays{margin-bottom:7px;color:var(--dim);font-family:var(--font-mono);font-size:9px}.calendar-grid{row-gap:7px}.calendar-grid>span,.calendar-grid button{aspect-ratio:1;min-width:0;display:grid;place-items:center;border-radius:50%;color:var(--chat-text);background:transparent;font-family:var(--font-mono);font-size:13px}.calendar-grid button:not(:disabled):hover{background:var(--control-bg)}.calendar-grid button:disabled{color:color-mix(in srgb,var(--dim) 38%,transparent);opacity:1}.calendar-grid button.selected{color:#fff;background:var(--accent)}@keyframes search-highlight{0%,42%{filter:brightness(.96);box-shadow:0 0 0 4px #c47a3829}to{filter:none;box-shadow:none}}.message-row.search-highlight .message-bubble{animation:search-highlight 1.05s ease-out}.message-action-menu{min-width:150px;position:fixed;z-index:var(--z-toast, 1200);display:grid;gap:2px;padding:6px;border:1px solid rgba(255,255,255,.55);border-radius:18px;background:#ffffffc2;box-shadow:0 10px 28px #1e1c181a,inset 0 1px #ffffffa6;-webkit-backdrop-filter:blur(18px) saturate(125%);backdrop-filter:blur(18px) saturate(125%)}.action-item{width:100%;min-height:42px;display:flex;align-items:center;gap:10px;padding:0 13px;border-radius:12px;color:var(--text);background:transparent;font-size:14px;text-align:left}.action-item:hover,.action-item:active{background:#78736a14}.copy-feedback{position:fixed;left:50%;bottom:calc(142px + env(safe-area-inset-bottom));z-index:var(--z-toast, 1200);transform:translate(-50%);padding:7px 12px;border:1px solid rgba(255,255,255,.5);border-radius:var(--radius-pill);color:var(--text-soft);background:#fffc;box-shadow:0 6px 20px #1e1c1814;font-size:13px}.rewrite-state{min-height:22px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-2px 0 4px;padding:0 2px 4px;border-bottom:1px solid rgba(120,115,106,.08);color:var(--dim);font-size:11px}.rewrite-state button{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:transparent}.scroll-to-latest{position:fixed;left:50%;bottom:calc(130px + env(safe-area-inset-bottom));z-index:25;width:38px;height:38px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.55);border-radius:50%;color:#2b2a27b3;background:#ffffffd1;box-shadow:0 6px 18px #1e1c1814;transform:translate(-50%)}@media all and (display-mode:standalone){html,body,.app-layout{height:100vh;min-height:100vh}.main-shell{height:100vh}.chat-mode,.chat-mode .main-shell,.chat-view{min-height:100vh}.mobile-drawer-layer{height:100vh}}.promptbook-list{display:flex;flex-direction:column;gap:10px;padding:4px 2px 14px}.promptbook-note{margin:0 0 2px;color:var(--dim);font-size:12.5px;line-height:1.6}.promptbook-row{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:1px solid var(--border, rgba(0, 0, 0, .08));border-radius:14px;background:transparent;color:inherit;text-align:left}button.promptbook-row{cursor:pointer;font:inherit}.promptbook-row-text{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0;background:none;border:0;padding:0;text-align:left;cursor:pointer;color:inherit;font:inherit}.promptbook-row-text strong{font-size:14.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.promptbook-row-text small{color:var(--dim);font-size:12px}.promptbook-actions{display:flex;gap:10px;margin-top:4px}.promptbook-base{max-height:62vh;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.7;padding:4px 2px 16px;margin:0}.promptbook-editor{display:flex;flex-direction:column;gap:10px;padding-bottom:12px}.promptbook-editor input{padding:10px 12px;border-radius:10px;border:1px solid var(--border, rgba(0, 0, 0, .12));background:transparent;color:inherit;font:inherit;font-size:14px}.promptbook-editor textarea{min-height:46vh;resize:vertical;padding:12px;border-radius:12px;border:1px solid var(--border, rgba(0, 0, 0, .12));background:transparent;color:inherit;font:inherit;font-size:13.5px;line-height:1.7}.promptbook-editor-foot{display:flex;align-items:center;justify-content:space-between}.promptbook-editor-foot small{color:var(--dim)}.promptbook-editor-foot>div{display:flex;gap:8px}.cloud-mid{margin:2px 0 0}.xhs-card-row{max-width:min(300px,82%)}.xhs-card{display:block;overflow:hidden;border-radius:14px;border:1px solid rgba(0,0,0,.08);background:var(--panel-bg, rgba(255, 255, 255, .9));text-decoration:none;color:inherit}.xhs-card-cover{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;background:#0000000d}.xhs-card-cover-empty{display:block}.xhs-card-body{display:flex;flex-direction:column;gap:6px;padding:10px 12px 9px;position:relative}.xhs-card-title{font-size:13.5px;line-height:1.45;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.xhs-card-meta{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--dim)}.xhs-card-avatar{width:16px;height:16px;border-radius:50%;object-fit:cover}.xhs-card-author{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:40%}.xhs-card-likes{margin-left:auto}.xhs-card-brand{position:absolute;right:12px;top:-24px;padding:1px 7px;border-radius:999px;background:#ff2442;color:#fff;font-size:10px;letter-spacing:.5px}.xhs-card-loading .xhs-card-title{color:var(--dim);font-weight:400}.xhs-plain-link{word-break:break-all}:root[data-skin=rose] .xhs-card{border-color:#f0d9e42e;background:#4a3f4b80}.msg-aside-live{color:#d97742}:root[data-skin=rose] .msg-aside-live{color:#f0d9e4}.photo-deck{position:relative;width:min(58vw,240px);aspect-ratio:3 / 4;touch-action:pan-y;margin:4px 26px 10px 22px;flex:none}.photo-deck-card{position:absolute;inset:0;border-radius:12px;overflow:hidden;background:#0000000f;box-shadow:0 3px 14px #0003}.photo-deck-card img{width:100%;height:100%;object-fit:cover;display:block}.photo-deck-card .chat-shot,.photo-deck-card .memory-card{width:100%;height:100%}.photo-deck-card .chat-shot img,.photo-deck-card .memory-card img{width:100%;height:100%;object-fit:cover}.photo-deck-count{position:absolute;right:10px;bottom:10px;z-index:99;background:#00000073;color:#fff;font-size:11px;padding:2px 8px;border-radius:999px;pointer-events:none}:root[data-skin=rose] .photo-deck-card{background:#f0d9e414}.img-lightbox{position:fixed;inset:0;z-index:1200;background:#000000ed;display:flex;align-items:center;justify-content:center}.img-lightbox img{max-width:100vw;max-height:100vh;object-fit:contain}.photo-deck-card img.chat-shot{object-fit:cover}.chat-shot,.msg-att-img,.memory-card img{cursor:zoom-in}.file-card{display:flex;align-items:center;gap:10px;max-width:min(78%,300px);padding:12px 14px;border-radius:14px;border:1px solid rgba(0,0,0,.08);background:var(--panel-bg, rgba(255, 255, 255, .9));text-align:left;cursor:pointer;font:inherit;color:inherit}.file-card-icon{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#0000000f}.file-card-body{display:flex;flex-direction:column;gap:3px;min-width:0}.file-card-name{font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-card-meta{font-size:11.5px;color:var(--dim)}:root[data-skin=rose] .file-card{border-color:#f0d9e42e;background:#4a3f4b80}:root[data-skin=rose] .file-card-icon{background:#f0d9e41f}.filesheet-list{display:flex;flex-direction:column;gap:8px;padding:4px 0 16px}.filesheet-empty{color:var(--dim);font-size:13px;text-align:center;padding:28px 0}.filerow-wrap{position:relative;overflow:hidden;border-radius:14px}.filerow-delete{position:absolute;right:0;top:0;bottom:0;width:72px;border:0;background:#e0484f;color:#fff;font-size:13.5px;cursor:pointer}.filerow{position:relative;z-index:1;display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:1px solid rgba(0,0,0,.08);border-radius:14px;background:var(--panel-bg, #fff);text-align:left;font:inherit;color:inherit;touch-action:pan-y;cursor:pointer}.filerow-icon{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#0000000f}.filerow-body{display:flex;flex-direction:column;gap:3px;min-width:0}.filerow-name{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filerow-meta{font-size:11.5px;color:var(--dim)}:root[data-skin=rose] .filerow{background:#4a3f4b99;border-color:#f0d9e424}.termcard{display:block;width:min(88%,340px);margin:2px 0 8px;padding:0;border:0;border-radius:14px;overflow:hidden;background:#1d1a22;color:#d9d4e0;text-align:left;font:inherit;cursor:pointer;box-shadow:0 3px 12px #0000002e}.termcard-head{display:flex;align-items:center;gap:8px;padding:10px 14px 8px;font-size:12.5px}.termcard-dot{width:8px;height:8px;border-radius:50%;background:#7bc47f}.termcard-dot.running{background:#e8b04b;animation:termpulse 1.2s ease-in-out infinite}@keyframes termpulse{50%{opacity:.35}}.termcard-body{padding:0 14px 12px;display:flex;flex-direction:column;gap:6px}.termcard-line{display:flex;align-items:baseline;gap:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.termcard-mark{flex:none;color:#7bc47f}.term-running .termcard-mark{color:#e8b04b}.term-error .termcard-mark{color:#e0484f}.termcard-text{color:#d9d4e0}.termcard-raw{margin-left:auto;color:#6d6678;font-size:11px;overflow:hidden;text-overflow:ellipsis;max-width:40%;white-space:nowrap}.termcard-more{color:#6d6678;font-size:11.5px;padding-top:2px}.termcard-full{display:flex;flex-direction:column;gap:10px;background:#1d1a22;border-radius:14px;padding:14px}.float-right{display:flex;align-items:center;gap:8px}.termcard-wrap{display:flex;flex-direction:column;gap:6px;width:min(88%,340px);margin:2px 0 8px}.termcard-head{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--dim)}.termcard-chip{font-family:ui-monospace,Menlo,monospace;font-size:11px;padding:2px 8px;border-radius:999px;background:#00000014;color:inherit}.termcard-state{font-size:12px}.termcard-chips{display:flex;flex-wrap:wrap;gap:6px}.termcard-file{font-size:11.5px;padding:3px 9px;border-radius:999px;background:#0000000f;color:var(--dim)}.termcard-all{align-self:flex-start;border:0;background:none;color:var(--dim);font-size:12px;cursor:pointer;padding:0}.termcard-fullsheet{width:100%}:root[data-skin=rose] .termcard-chip,:root[data-skin=rose] .termcard-file{background:#f0d9e41a}.chat-search-divider{margin:14px 0 6px;color:var(--dim);font-size:12px;text-align:center}.chat-notice{position:relative;z-index:21;margin:0 auto 4px;padding:6px 14px;max-width:min(88%,480px);border-radius:999px;background:#00000073;color:#fff;font-size:11.5px;line-height:1.5;text-align:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}:root[data-skin=rose] .chat-notice{background:#4a3f4bd9;color:#f0d9e4}.termcard-shell{display:flex;flex-direction:column;gap:9px;width:min(90%,350px);margin:2px 0 8px;padding:13px 14px 12px;border-radius:18px;background:#ffffffd1;border:1px solid rgba(0,0,0,.06);box-shadow:0 3px 14px #1c1a1614;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.termcard-top{display:flex;align-items:center;gap:9px}.termcard-badge{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#2f9e44;color:#fff;font-size:14px;font-weight:700}.termcard-badge.running{background:#e8b04b}.termcard-title{font-size:13.5px;font-weight:700}.termcard-expand{margin-left:auto;border:0;background:none;color:var(--dim);font-size:15px;cursor:pointer;padding:2px 4px}.termcard-tabs{display:flex;align-items:center}.termcard-shell .termcard-chip{background:#00000012}.termcard-shell .termcard-state{margin-left:auto;display:flex;align-items:center;gap:5px;font-size:12px;color:var(--dim)}.termcard-shell .termcard{width:100%;margin:0;box-shadow:none;border-radius:12px;cursor:default}.termcard-shell .termcard-body{padding:10px 12px}.termcard-progress{display:flex;align-items:center;gap:10px}.termcard-bar{flex:1;height:4px;border-radius:999px;background:#2f9e44}.termcard-bar.running{background:linear-gradient(90deg,#2f9e44 60%,#2f9e4440 60%)}.termcard-progress-text{font-size:11.5px;color:var(--dim);white-space:nowrap}.termcard-shell .termcard-all{align-self:flex-start;padding:5px 12px;border-radius:999px;background:#0000000f;color:inherit;font-size:12px}:root[data-skin=rose] .termcard-shell{background:#4a3f4bc7;border-color:#f0d9e424;color:#f0d9e4}:root[data-skin=rose] .termcard-shell .termcard-title{color:#f0d9e4}:root[data-skin=rose] .termcard-shell .termcard-chip{background:#f0d9e41f;color:#f0d9e4}:root[data-skin=rose] .termcard-shell .termcard-state,:root[data-skin=rose] .termcard-shell .termcard-progress-text,:root[data-skin=rose] .termcard-shell .termcard-expand{color:#c1a0ac}:root[data-skin=rose] .termcard-shell .termcard-all{background:#f0d9e41f;color:#f0d9e4}.stalled-dots{opacity:.55}.mind-panel{display:flex;flex-direction:column;gap:22px;padding:18px 18px 40px;max-width:720px;margin:0 auto;width:100%}.mind-head h2{margin:0;font-family:var(--font-display);font-size:26px}.mind-head p{margin:4px 0 0;color:var(--dim);font-size:13px}.mind-section>h3{margin:0 0 10px;font-size:15px;color:var(--dim);font-weight:600;letter-spacing:.06em}.mind-card{display:flex;flex-direction:column;gap:10px;padding:16px 18px;border-radius:16px;background:var(--panel-bg, rgba(255, 255, 255, .82));border:1px solid rgba(0,0,0,.06);margin-bottom:10px}.mind-drive{display:flex;align-items:center;gap:12px}.mind-drive-label{flex:none;width:44px;font-size:13.5px}.mind-drive-track{flex:1;height:6px;border-radius:999px;background:#00000012;overflow:hidden}.mind-drive-bar{display:block;height:100%;border-radius:999px;background:#d47f9d;transition:width .5s ease}.mind-drive-val{flex:none;width:26px;text-align:right;font-size:11.5px;color:var(--dim);font-variant-numeric:tabular-nums}.mind-text{margin:0;font-size:13.5px;line-height:1.75}.mind-pre{margin:0;font-size:12.5px;line-height:1.7;white-space:pre-wrap;word-break:break-word;font-family:inherit}.mind-empty{margin:0;color:var(--dim);font-size:12.5px}.mind-card-title{font-size:13px;color:var(--dim)}:root[data-skin=rose] .mind-card{background:#4a3f4b8c;border-color:#f0d9e424}:root[data-skin=rose] .mind-drive-track{background:#f0d9e424}:root[data-skin=rose] .mind-drive-bar{background:#f0d9e4}.mind-dream-wrap{width:min(100%,430px);margin:0 auto;aspect-ratio:9 / 15;border-radius:20px;overflow:hidden;border:1px solid rgba(240,217,228,.16);box-shadow:0 10px 34px #00000047;background:#16131f}.mind-dream-frame{width:100%;height:100%;border:0;display:block}.mind-full-frame{position:fixed;inset:0;z-index:44;width:100vw;height:100dvh;border:0;background:#16131f;display:block}.mind-frame-sakura{background:#f9e9ed}@media(display-mode:standalone){.mind-full-frame{height:100vh}}.inside-letter{margin:6px 0 2px;padding:10px 14px 11px;max-width:min(78%,420px);border-radius:4px 14px 14px;background:#fffcf4ed;border:1px solid rgba(178,148,118,.28);box-shadow:0 2px 10px #3c281412;font-size:13.5px;line-height:1.8;color:#48382eeb;font-style:italic}.inside-letter .inside-tag{display:inline-block;margin-bottom:4px;padding:1px 9px;border-radius:999px;font-size:10.5px;font-style:normal;letter-spacing:.1em;background:#d47f9d26;color:#c06f8f}.inside-letter .inside-body{white-space:pre-wrap}.send-button,.send-button *{-webkit-touch-callout:none!important;-webkit-user-select:none!important;user-select:none!important;-webkit-user-drag:none;touch-action:manipulation}.trail-panel{position:fixed;inset:0;z-index:1200;overflow-y:auto;padding:calc(14px + env(safe-area-inset-top)) 22px calc(32px + env(safe-area-inset-bottom));background:#fff;-webkit-overflow-scrolling:touch}.trail-title{font-family:Pinyon Script,cursive;font-weight:400;font-size:38px;line-height:1.1;margin:0 0 6px;color:#16131f;cursor:pointer}.trail-empty{font-size:13px;color:#806c79;margin-top:56px;text-align:center;line-height:2}.trail-day>h2{font-size:22px;font-weight:700;color:#16131f;margin:26px 0 16px;display:flex;align-items:baseline;gap:10px}.trail-day>h2 span{font-size:13px;font-weight:500;color:#806c79}.trail-line{position:relative;padding-left:22px;display:flex;flex-direction:column;gap:16px}.trail-line:before{content:"";position:absolute;left:3.5px;top:10px;bottom:10px;width:2px;background:#f0d9e4;border-radius:2px}.trail-card{position:relative;background:#fff;border-radius:20px;padding:15px 16px;box-shadow:0 6px 22px #f0d9e4d9,0 2px 8px #c1a0ac47;transition:box-shadow .18s ease}.trail-card.open{box-shadow:0 10px 28px #f0d9e4,0 3px 10px #c1a0ac66}.trail-card:before{content:"";position:absolute;left:-22.6px;top:22px;width:7px;height:7px;border-radius:50%;background:#16131f;box-shadow:0 0 0 3px #fff}.trail-card header{display:flex;align-items:center;gap:7px}.trail-card header .trail-cat{font-size:13px;font-weight:600;color:#4a3f4b}.trail-card header time{margin-left:auto;font-size:12px;color:#806c79;flex-shrink:0;font-variant-numeric:tabular-nums}.trail-icon{font-size:14px}.trail-badge{font-style:normal;font-size:10px;font-weight:500;padding:3px 10px;border-radius:999px;background:#16131f;color:#fff;flex-shrink:0}.trail-card h3{margin:9px 0 0;font-size:14px;font-weight:400;line-height:1.65;color:#4a3f4b}.trail-card p{margin:10px 0 0;padding-top:10px;border-top:1px solid #F0D9E4;font-size:13px;line-height:1.75;color:#806c79;white-space:pre-wrap;word-break:break-word}.trail-skip{position:relative;display:flex;align-items:center;gap:8px;font-size:11px;color:#806c79;padding:2px 4px}.trail-skip .dot{position:absolute;left:-20.5px;width:5px;height:5px;border-radius:50%;background:#c1a0ac;opacity:.7}.trail-skip time{margin-left:auto;font-variant-numeric:tabular-nums}.diary-panel{--dj-bg: #faf9f5;--dj-card: #ffffff;--dj-ink: #262624;--dj-sub: #a3a099;--dj-line: #f0eee6;--dj-accent: #e07a6a;--dj-shadow: rgba(38, 38, 36, .07);position:fixed;inset:0;z-index:1200;overflow-y:auto;padding:calc(14px + env(safe-area-inset-top)) 20px calc(32px + env(safe-area-inset-bottom));background:var(--dj-bg);-webkit-overflow-scrolling:touch;color:var(--dj-ink)}:root[data-theme=dark] .diary-panel{--dj-bg: #16131F;--dj-card: #221c26;--dj-ink: #F0D9E4;--dj-sub: #806C79;--dj-line: #4A3F4B;--dj-accent: #C1A0AC;--dj-shadow: rgba(0, 0, 0, .4)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .diary-panel{--dj-bg: #16131F;--dj-card: #221c26;--dj-ink: #F0D9E4;--dj-sub: #806C79;--dj-line: #4A3F4B;--dj-accent: #C1A0AC;--dj-shadow: rgba(0, 0, 0, .4)}}.diary-title{font-family:Pinyon Script,cursive;font-weight:400;font-size:38px;line-height:1.1;margin:0 0 14px;color:var(--dj-ink);cursor:pointer}.diary-empty{font-size:13px;color:var(--dj-sub);margin-top:48px;text-align:center;line-height:2}.diary-hub{display:grid;grid-template-columns:1fr 1fr;gap:14px}.diary-card{transform:rotate(var(--rot, 0deg));background:var(--dj-card);border:1px solid var(--dj-line);border-radius:16px;padding:18px 14px;text-align:left;display:flex;flex-direction:column;gap:6px;box-shadow:0 4px 14px var(--dj-shadow);cursor:pointer;font:inherit;color:inherit}.diary-card.lead{grid-column:1 / -1;padding:22px 16px}.diary-card strong{font-size:16px;font-weight:600;color:var(--dj-ink)}.diary-card span{font-size:12px;color:var(--dj-sub)}.diary-list section>h2{font-size:15px;font-weight:700;color:var(--dj-ink);margin:22px 0 10px}.diary-row{width:100%;text-align:left;background:var(--dj-card);border:1px solid var(--dj-line);border-radius:12px;padding:12px 14px;margin-bottom:8px;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;cursor:pointer;font:inherit;color:inherit}.diary-row strong{font-size:14px;font-weight:500;color:var(--dj-ink)}.diary-row span{font-size:11px;color:var(--dj-sub)}.diary-row em{font-style:normal;font-size:10px;color:var(--dj-accent);border:1px solid var(--dj-accent);border-radius:999px;padding:1px 7px}.diary-full{background:var(--dj-card);border:1px solid var(--dj-line);border-radius:16px;padding:18px 16px;box-shadow:0 6px 20px var(--dj-shadow);cursor:pointer}.diary-full h3{margin:0 0 10px;font-size:14px;color:var(--dj-sub);font-weight:600}.diary-full p{margin:0;font-size:14px;line-height:1.85;color:var(--dj-ink);white-space:pre-wrap;word-break:break-word}.diary-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.diary-note{border:none;border-radius:10px;padding:14px 12px;min-height:88px;display:flex;flex-direction:column;justify-content:space-between;gap:8px;text-align:left;cursor:pointer;font:inherit}.diary-note strong{font-size:13px;font-weight:500;color:var(--dj-ink);line-height:1.5}.diary-note span{font-size:10px;color:var(--dj-sub)}.diary-night-row{display:flex;gap:12px;background:var(--dj-card);border:1px solid var(--dj-line);border-radius:12px;padding:12px 14px;margin-bottom:8px}.diary-night-row time{font-size:12px;color:var(--dj-sub);font-variant-numeric:tabular-nums;flex-shrink:0}.diary-night-row p{margin:0;font-size:13px;line-height:1.7;color:var(--dj-ink);white-space:pre-wrap}.diary-quote{margin:0 0 14px;background:var(--dj-card);border-left:3px solid var(--dj-accent);border-radius:0 12px 12px 0;padding:14px 16px}.diary-quote p{margin:0;font-size:14px;line-height:1.7;color:var(--dj-ink)}.diary-quote span{display:block;margin-top:8px;font-size:12px;color:var(--dj-sub);line-height:1.6}.diary-quote time{display:block;margin-top:6px;font-size:11px;color:var(--dj-sub)}.diary-her-input{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.diary-her-input textarea{background:var(--dj-card);border:1px solid var(--dj-line);border-radius:12px;padding:12px;font:inherit;font-size:14px;color:var(--dj-ink);resize:vertical}.diary-her-input button{align-self:flex-end;background:var(--dj-ink);color:var(--dj-bg);border:none;border-radius:999px;padding:7px 20px;font-size:13px;cursor:pointer}.diary-her-input button:disabled{opacity:.35}.diary-her-row{background:var(--dj-card);border:1px solid var(--dj-line);border-radius:12px;padding:12px 14px;margin-bottom:8px}.diary-her-row time{font-size:11px;color:var(--dj-sub)}.diary-her-row p{margin:6px 0 0;font-size:14px;line-height:1.7;color:var(--dj-ink);white-space:pre-wrap}.diary-news{font-family:Georgia,Songti SC,serif}.diary-news .np-head{font-size:24px;border-bottom:3px double var(--dj-ink);padding-bottom:8px;margin:8px 0 14px}.diary-news .np-sec{font-size:16px;margin:18px 0 8px;border-left:4px solid var(--dj-accent);padding-left:8px}.diary-news p{font-size:14px;line-height:1.85;margin:0 0 10px;color:var(--dj-ink)}.diary-news .np-note{border-left:3px solid var(--dj-accent);background:var(--dj-card);padding:10px 12px;border-radius:0 10px 10px 0;color:var(--dj-sub)}.diary-news .np-dates{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.diary-news .np-dates button{background:var(--dj-card);border:1px solid var(--dj-line);border-radius:999px;padding:5px 14px;font-size:12px;color:var(--dj-sub);cursor:pointer}@keyframes dw-page-in{0%{transform:translate(100%)}to{transform:translate(0)}}.trail-panel,.diary-panel{animation:dw-page-in .28s cubic-bezier(.22,.9,.3,1);box-shadow:-12px 0 32px #00000029;touch-action:pan-y;will-change:transform}
