.d-chat-panel{position:absolute;top:8px;right:8px;bottom:8px;width:340px;display:flex;flex-direction:column;background:var(--glass-strong);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--glass-border);border-radius:22px;box-shadow:0 24px 60px #4a3a222e;overflow:hidden;z-index:20;animation:dchat-in .32s cubic-bezier(.3,1.35,.4,1)}.d-chat-panel.is-moved{right:auto;bottom:auto}@keyframes dchat-in{0%{transform:scale(.88);opacity:0}to{transform:scale(1);opacity:1}}.d-chat-panel.is-closing{animation:dchat-out .18s cubic-bezier(.5,0,.75,.4) forwards;pointer-events:none}@keyframes dchat-out{0%{transform:scale(1);opacity:1}to{transform:scale(.94);opacity:0}}.d-chat-panel.is-standalone{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;border-radius:0;box-shadow:none;animation:none;background:linear-gradient(180deg,#f7fbff,#eaf2fa)}.d-chat-panel.is-standalone .dchat-head{-webkit-app-region:drag;-webkit-user-select:none;user-select:none;cursor:default;background:#fffbf0c7}.d-chat-panel.is-standalone .dchat-head:active{cursor:default}.d-chat-panel.is-standalone .dchat-head button,.d-chat-panel.is-standalone .dchat-quota,.d-chat-panel.is-standalone .dchat-confirm-mask,.d-chat-panel.is-standalone .dchat-confirm-mask *{-webkit-app-region:no-drag}.d-chat-panel.is-standalone.is-mac .dchat-head{padding-left:80px}.dchat-icon-btn.dchat-win-close:hover{background:#e0604f1f;color:var(--danger)}.dchat-win-loading{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--ink-soft);font-size:14px;background:linear-gradient(180deg,#f7fbff,#eaf2fa)}.dchat-resize{position:absolute;left:-3px;top:0;bottom:0;width:8px;cursor:col-resize;z-index:3}.dchat-resize.right{left:auto;right:-3px}.dchat-resize.top{left:0;right:0;top:-3px;bottom:auto;width:auto;height:8px;cursor:row-resize}.dchat-resize.bottom{left:0;right:0;top:auto;bottom:-3px;width:auto;height:8px;cursor:row-resize}.dchat-resize:after{content:"";position:absolute;left:3px;top:12%;bottom:12%;width:2px;border-radius:2px;background:#4a3a222e;opacity:0;transition:opacity .15s ease}.dchat-resize.right:after{left:auto;right:3px}.dchat-resize.top:after{left:12%;right:12%;top:3px;bottom:auto;width:auto;height:2px}.dchat-resize.bottom:after{left:12%;right:12%;top:auto;bottom:3px;width:auto;height:2px}.dchat-resize:hover:after,.dchat-resize:active:after{opacity:1}.d-home-grid>.d-stage{z-index:1}.dchat-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid rgba(74,58,34,.08);background:#fffbf0b3;cursor:grab;-webkit-user-select:none;user-select:none}.dchat-head:active{cursor:grabbing}.dchat-head button{cursor:pointer}.dchat-avatar{width:42px;height:42px;flex-shrink:0;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffedcd,#ffd9a0);border:2px solid #fff;box-shadow:0 4px 10px #e8833a4d;overflow:hidden;position:relative}.dchat-avatar-zoom{position:absolute;left:50%;transform:translate(-50%);line-height:0}.dchat-info{flex:1;min-width:0}.dchat-name{font-size:15px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:6px;min-width:0}.dchat-nick{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.dchat-ptag{font-size:10px;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--accent-soft),var(--accent));border-radius:999px;padding:2px 8px;white-space:nowrap;flex-shrink:0}.dchat-mood{font-size:11px;color:var(--ink-soft);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dchat-quota{flex:none;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;line-height:1;background:#fffcf6d9;border:1px solid rgba(74,58,34,.14);border-radius:999px;white-space:nowrap;cursor:default}.dchat-quota.out{background:#e0604f1a;border-color:#e0604f40;filter:grayscale(.35)}.dchat-head-actions{align-self:flex-start;flex-shrink:0;display:flex;align-items:center;gap:6px}.dchat-icon-btn{width:26px;height:26px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:50%;cursor:pointer;background:transparent;color:var(--ink-soft);transition:background .15s ease,color .15s ease}.dchat-icon-btn:hover:not(:disabled){background:#4a3a2214;color:var(--ink)}.dchat-icon-btn:disabled{opacity:.35;cursor:not-allowed}.dchat-msg-col{min-width:0}.dchat-bubble-row{position:relative;display:flex;align-items:center;gap:6px}.dchat-msg.user .dchat-bubble-row{flex-direction:row-reverse}.dchat-del{flex-shrink:0;width:20px;height:20px;padding:0;border:none;border-radius:50%;cursor:pointer;background:#4a3a221a;color:var(--ink-soft);font-size:10px;line-height:20px;text-align:center;opacity:0;transition:opacity .15s ease,background .15s ease,color .15s ease}.dchat-msg.user:hover .dchat-del,.dchat-del:focus-visible{opacity:1}.dchat-del:hover{background:#e0604f2e;color:#e0604f}.dchat-pop-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:29}.dchat-del-pop{position:absolute;bottom:calc(100% + 8px);right:0;z-index:30;display:flex;flex-direction:column;padding:6px;min-width:168px;background:var(--glass-strong);border:1px solid var(--glass-border);border-radius:12px;box-shadow:0 12px 30px #4a3a2233;animation:d-pop-in .18s var(--ease-spring, ease)}.dchat-del-opt,.dchat-del-cancel{border:none;background:transparent;cursor:pointer;font-size:12px;color:var(--ink);white-space:nowrap;padding:7px 12px;border-radius:8px;text-align:left}.dchat-del-opt:hover{background:#4a3a2212}.dchat-del-opt.danger{color:#e0604f}.dchat-del-opt.danger:hover{background:#e0604f1a}.dchat-del-cancel{color:var(--ink-soft);text-align:center;border-top:1px solid rgba(74,58,34,.08);border-radius:0 0 6px 6px;margin-top:2px;padding-top:9px}.dchat-del-opt:disabled,.dchat-del-cancel:disabled{opacity:.5;cursor:not-allowed}.dchat-confirm-mask{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;background:#4a3a2247;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:18px;animation:dchat-fade .15s ease}.dchat-confirm{background:var(--glass-strong);border:1px solid var(--glass-border);border-radius:18px;padding:22px 20px 18px;width:100%;max-width:280px;text-align:center;box-shadow:0 20px 50px #4a3a2240;animation:d-pop-in .2s var(--ease-spring, ease)}.dchat-confirm-emoji{font-size:30px}.dchat-confirm-title{font-size:15px;font-weight:800;margin:8px 0 6px;color:var(--ink)}.dchat-confirm-sub{font-size:12px;line-height:1.7;color:var(--ink-soft)}.dchat-confirm-actions{display:flex;gap:10px;justify-content:center;margin-top:16px}.dchat-confirm-danger{background:linear-gradient(135deg,#f08372,#e0604f);color:#fff;border-color:transparent}.dchat-confirm-danger:disabled{opacity:.6}@keyframes dchat-fade{0%{opacity:0}to{opacity:1}}.dchat-memory{background:var(--glass-strong);border:1px solid var(--glass-border);border-radius:18px;width:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 50px #4a3a2240;animation:d-pop-in .2s var(--ease-spring, ease)}.dchat-memory-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:16px 14px 10px 16px}.dchat-memory-title{font-size:14px;font-weight:800;color:var(--ink)}.dchat-memory-sub{font-size:11px;line-height:1.5;color:var(--ink-soft);margin-top:3px}.dchat-memory-body{flex:1;overflow-y:auto;padding:2px 16px 12px;display:flex;flex-direction:column;gap:14px}.dchat-memory-empty{text-align:center;color:var(--ink-faint);font-size:12px;line-height:1.8;padding:40px 8px}.dchat-memory-sec h6{font-size:10px;font-weight:700;letter-spacing:.06em;color:var(--accent-deep);margin:0 0 7px}.dchat-memory-summary{margin:0;font-size:12px;line-height:1.75;color:var(--ink);background:#e8833a14;border:1px solid rgba(232,131,58,.18);border-radius:12px;padding:9px 11px}.dchat-memory-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.dchat-memory-list li{font-size:12px;line-height:1.6;color:var(--ink);background:var(--glass, rgba(255, 255, 255, .55));border:1px solid var(--glass-border);border-radius:10px;padding:7px 10px;overflow-wrap:anywhere}.dchat-memory-event{display:flex;gap:8px;align-items:baseline}.dchat-memory-time{flex-shrink:0;font-size:10px;font-weight:700;color:var(--accent-deep);background:#e8833a1f;border-radius:999px;padding:1px 7px;white-space:nowrap}.dchat-memory-foot{display:flex;flex-direction:column;align-items:flex-end;gap:8px;padding:10px 16px 14px;border-top:1px solid var(--glass-border)}.dchat-memory-hint{font-size:10px;line-height:1.5;color:var(--ink-faint);align-self:flex-start}.dchat-forget-mask{z-index:41}.dchat-body{flex:1;overflow-y:auto;padding:14px 12px;display:flex;flex-direction:column;gap:12px}.dchat-more{text-align:center;color:var(--ink-faint);font-size:12px;padding:2px 0 4px}.dchat-empty{text-align:center;color:var(--ink-faint);font-size:12px;padding:24px 0}.dchat-msg{display:flex;gap:8px;max-width:88%}.dchat-msg.assistant{align-self:flex-start}.dchat-msg.user{align-self:flex-end;flex-direction:row-reverse}.dchat-mini-avatar{width:28px;height:28px;flex-shrink:0;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffedcd,#ffd9a0);border:1.5px solid #fff;overflow:hidden;position:relative}.dchat-bubble{padding:10px 14px;border-radius:16px;font-size:13.5px;line-height:1.6;color:var(--ink);word-break:break-word;white-space:pre-wrap}.dchat-msg.assistant .dchat-bubble{background:#fff;border:1px solid rgba(74,58,34,.08);border-top-left-radius:4px;box-shadow:0 2px 8px #4a3a220f}.dchat-msg.user .dchat-bubble{background:linear-gradient(135deg,var(--accent-soft),var(--accent));color:#fff;border-top-right-radius:4px}.dchat-meta{font-size:10px;color:var(--ink-faint);margin-top:3px;padding:0 4px}.dchat-msg.user .dchat-meta{text-align:right}.dchat-billed{color:var(--accent-deep)}.dchat-billing-tip{align-self:center;font-size:11px;color:var(--ink-soft);background:#4a3a220f;padding:4px 12px;border-radius:999px}.dchat-billing-tip b{color:var(--accent-deep)}.dchat-typing{display:inline-flex;gap:4px;align-items:center}.dchat-typing span{width:6px;height:6px;border-radius:50%;background:var(--ink-faint);animation:dchat-dot 1.2s ease-in-out infinite}.dchat-typing span:nth-child(2){animation-delay:.2s}.dchat-typing span:nth-child(3){animation-delay:.4s}.dchat-bubble.streaming:after{content:"▍";margin-left:1px;color:var(--accent);animation:dchat-caret .8s steps(1) infinite}@keyframes dchat-caret{50%{opacity:0}}@keyframes dchat-dot{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.dchat-guide{text-align:center;padding:30px 18px;display:flex;flex-direction:column;gap:10px;align-items:center}.dchat-guide-emoji{font-size:40px}.dchat-guide-title{font-weight:700;color:var(--ink);font-size:15px}.dchat-guide-sub{font-size:12px;color:var(--ink-soft);line-height:1.7}.dchat-nocoin{margin:0 12px 8px;padding:8px 10px;font-size:12px;color:var(--accent-deep);background:#e8833a1a;border:1px solid rgba(232,131,58,.3);border-radius:10px;display:flex;align-items:center;gap:4px;flex-wrap:wrap}.dchat-link{border:none;background:transparent;cursor:pointer;color:var(--accent-deep);font-weight:700;font-size:12px;text-decoration:underline;padding:0 2px}.dchat-nocoin-x{margin-left:auto;border:none;background:transparent;cursor:pointer;color:var(--ink-faint);font-size:12px}.dchat-foot{display:flex;gap:8px;padding:12px 14px;border-top:1px solid rgba(74,58,34,.08);background:#fffbf0b3}.dchat-input{flex:1;border:1px solid rgba(74,58,34,.15);border-radius:999px;padding:10px 16px;font-size:13px;color:var(--ink);background:#fff;outline:none}.dchat-input::placeholder{color:var(--ink-faint);font-size:12px}.dchat-input:focus{border-color:var(--accent-soft);box-shadow:0 0 0 3px #e8833a26}.dchat-input:disabled{opacity:.55}.dchat-send{width:40px;height:40px;flex-shrink:0;border:none;border-radius:50%;cursor:pointer;font-size:16px;color:#fff;background:linear-gradient(135deg,var(--accent-soft),var(--accent));box-shadow:0 4px 12px #e8833a59;transition:transform .15s ease,opacity .15s ease}.dchat-send:hover:not(:disabled){transform:scale(1.08)}.dchat-send:disabled{opacity:.5;cursor:not-allowed}.dchat-send.is-stop{background:linear-gradient(135deg,#a98f76,#8a735c);box-shadow:0 4px 12px #5a48344d}.dchat-stop{display:inline-block;width:12px;height:12px;border-radius:3px;background:#fff}.dchat-copy{flex-shrink:0;width:20px;height:20px;padding:0;border:none;border-radius:50%;cursor:pointer;background:#4a3a221a;color:var(--ink-soft);display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease,background .15s ease,color .15s ease}.dchat-copy svg{width:11px;height:11px}.dchat-msg.assistant:hover .dchat-copy,.dchat-copy:focus-visible{opacity:1}.dchat-copy:hover{background:#4a3a2233;color:var(--ink)}.dchat-cut{color:var(--ink-faint);font-style:italic}.dchat-topics{margin-top:auto;display:flex;flex-direction:column}.dchat-topics .dchat-empty{padding:8px 0 10px}.dchat-topics-hint{font-size:11px;color:var(--ink-faint);text-align:center;margin-bottom:8px}.dchat-topics-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.dchat-topic{border:1px solid rgba(232,131,58,.35);background:#ffffffd9;color:var(--accent-deep);font-size:12px;padding:6px 12px;border-radius:999px;cursor:pointer;transition:transform .12s ease,background .12s ease,border-color .12s ease}.dchat-topic:hover:not(:disabled){background:#e8833a1f;border-color:#e8833a8c;transform:translateY(-1px)}.dchat-topic:disabled{opacity:.5;cursor:not-allowed}.d-chat-panel.is-drawer{position:fixed;top:12px;right:12px;bottom:12px;width:min(360px,calc(100vw - 24px));height:auto;z-index:60;animation:dchat-slide-in .28s cubic-bezier(.3,1.2,.4,1);--glass-strong: rgba(255, 252, 246, .97);--danger: #e0604f;--accent-soft: #f2a64f;--accent-deep: #c46a1f;--ink-faint: rgba(74, 58, 34, .4);--ease-spring: cubic-bezier(.3, 1.35, .4, 1)}@keyframes dchat-slide-in{0%{transform:translate(28px);opacity:0}to{transform:translate(0);opacity:1}}.d-chat-panel.is-drawer .dchat-head{cursor:default}.d-chat-panel.is-drawer .d-btn,.d-chat-panel.is-mobile .d-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:12px;border:1px solid rgba(74,58,34,.12);font-size:14px;font-weight:700;cursor:pointer;background:#ffffffd9;color:var(--ink);transition:transform .12s,opacity .12s}.d-chat-panel.is-drawer .d-btn-primary,.d-chat-panel.is-mobile .d-btn-primary{background:linear-gradient(135deg,var(--accent-soft),var(--accent));color:#fff;border-color:transparent;box-shadow:0 8px 18px #e8833a61}.d-chat-panel.is-drawer .d-btn-primary:hover:not(:disabled),.d-chat-panel.is-mobile .d-btn-primary:hover:not(:disabled){transform:translateY(-2px)}.d-chat-panel.is-drawer .d-btn-ghost,.d-chat-panel.is-mobile .d-btn-ghost{background:#ffffffb3}.d-chat-panel.is-drawer .d-btn-sm,.d-chat-panel.is-mobile .d-btn-sm{padding:6px 14px;font-size:12px;border-radius:999px}.d-chat-panel.is-drawer .d-btn:disabled,.d-chat-panel.is-mobile .d-btn:disabled{opacity:.55;cursor:not-allowed}.d-chat-panel.is-mobile{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding-top:var(--safe-top, 0);padding-bottom:var(--safe-bottom, 0);border:0;border-radius:0;box-shadow:none;z-index:80;background:linear-gradient(180deg,#fffdf7,#f6efe2);animation:dchat-mobile-in .28s cubic-bezier(.3,1.2,.4,1);--accent-deep: #c46a1f;--ink-faint: rgba(74, 58, 34, .4)}@keyframes dchat-mobile-in{0%{transform:translateY(28px);opacity:0}to{transform:translateY(0);opacity:1}}.d-chat-panel.is-mobile .dchat-head{cursor:default;padding-left:16px;padding-right:12px}.d-chat-panel.is-mobile .dchat-primary:active:not(:disabled){transform:scale(.97)}.im-link{color:#2b7fff;text-decoration:underline;text-underline-offset:2px;word-break:break-all;cursor:pointer}.bubble-row.mine .im-link,.d-msg.me .im-link,.m-im-bubble.mine .im-link{color:#fff}.ext-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:#2a201280;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:24px;animation:im-fade .18s ease both}.ext-card{width:min(340px,100%);background:linear-gradient(180deg,#fff7ec,#fffdf8 58%);border:1px solid rgba(255,255,255,.7);border-radius:20px;padding:22px 20px 18px;box-shadow:0 18px 50px #50320a52;text-align:center;animation:ext-pop .3s cubic-bezier(.34,1.56,.64,1) both}@keyframes ext-pop{0%{opacity:0;transform:scale(.92) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.ext-badge{width:46px;height:46px;margin:0 auto 12px;border-radius:999px;background:linear-gradient(135deg,#f2a036,#cf6a22);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px #e8833a66}.ext-badge svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ext-title{font-size:16px;font-weight:700;color:#3a2c18}.ext-desc{margin-top:7px;font-size:13px;line-height:1.6;color:#3a2c18a6}.ext-url{margin-top:12px;padding:9px 12px;border-radius:12px;background:#f5f1e8;border:1px solid rgba(176,106,24,.18);font-size:13px;font-weight:700;color:#b06a18;word-break:break-all;display:flex;align-items:center;justify-content:center;gap:6px}.ext-safe{margin-top:10px;font-size:12px;line-height:1.5;color:#3a2c186b}.ext-actions{display:flex;gap:10px;margin-top:16px}.ext-btn{flex:1;height:40px;border-radius:999px;border:none;font-size:14px;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;text-decoration:none;transition:transform .12s ease}.ext-btn:active{transform:scale(.97)}.ext-btn-cancel{background:#4a3a221a;color:#6b5a40}.ext-btn-go{background:linear-gradient(135deg,#f2a036,#cf6a22);color:#fff;font-weight:700;box-shadow:0 6px 14px #e8833a5c}@media(prefers-reduced-motion:reduce){.ext-mask,.ext-card{animation:none}}.im-recall-slot{align-self:stretch;display:flex;justify-content:center}.im-recall-row{display:flex;justify-content:center;margin:6px 0}.im-recall-text{font-size:12px;color:#4a3a2280;background:#78643c14;border-radius:999px;padding:3px 12px}.im-recall-btn{flex:none;width:20px;height:20px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;font-family:inherit;color:#4a3a22b8;cursor:pointer;opacity:0;transition:opacity .15s ease,color .15s ease,background .15s ease}.im-recall-btn:hover{opacity:1;color:#d1602f;background:#e8833a1f}.bubble-row:hover .im-recall-btn:not(.im-retry-btn),.d-msg:hover .im-recall-btn:not(.im-retry-btn){opacity:.9}.im-retry-btn{opacity:.95;color:#d95a4a}.im-retry-btn:hover{color:#c8452f}.im-recall-btn.im-recall-busy{opacity:1;cursor:default}.im-recall-btn.im-recall-busy:hover{color:#4a3a22b8;background:transparent}.im-recall-spin{animation:im-spin .8s linear infinite}.d-msg.me .im-recall-btn{color:#fff}.d-msg.me:hover .im-recall-btn:not(.im-retry-btn):not(:hover){background:#00000029}.d-msg.me .im-recall-btn:hover{color:#e8833a;background:#fff}.d-msg.me .im-recall-busy,.d-msg.me .im-recall-busy:hover{color:#fff;background:#00000029}.d-msg.me .im-retry-btn{color:#d93a2a;background:#ffffffeb}.d-msg.me .im-retry-btn:hover{color:#b3261e;background:#fff}.im-img-wrap{position:relative;display:inline-block;border-radius:12px;overflow:hidden;line-height:0;vertical-align:top}.im-img{display:block;width:auto;max-width:min(220px,58vw);max-height:300px;border-radius:12px;object-fit:cover;cursor:zoom-in;background:#78643c14}.im-img-mask{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#2820146b;color:#fff;font-size:13px;line-height:1.4;text-align:center}.im-img-mask-fail{flex-direction:column;gap:8px;background:#2820148c;cursor:default}.im-img-fail-text{font-weight:700}.im-img-retry{border:1px solid rgba(255,255,255,.85);background:transparent;color:#fff;border-radius:999px;padding:3px 14px;font-size:12px;font-family:inherit;cursor:pointer}.im-img-retry:hover{background:#ffffff2e}.img-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;background:#000000db;display:flex;align-items:center;justify-content:center;padding:20px;animation:im-fade .15s ease;cursor:zoom-out}.img-lightbox img{width:auto;height:auto;max-width:92vw;max-height:92vh;object-fit:contain;border-radius:8px;box-shadow:0 10px 50px #0009}.im-sticker{display:block;width:96px;height:96px}.bubble-row.send-failed .im-sticker,.d-bubble-failed .im-sticker,.m-im-bubble-failed .im-sticker{opacity:.38;filter:grayscale(.55)}.im-sticker-anchor{position:relative;flex:none;display:inline-flex}.im-sticker-panel{position:absolute;bottom:calc(100% + 10px);right:0;z-index:60;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:10px;background:#fff;border-radius:18px;box-shadow:0 12px 38px #503c1e38;animation:im-fade .15s ease}.im-sticker-cell{border:none;background:transparent;padding:4px;border-radius:12px;cursor:pointer;line-height:0;transition:background .12s ease,transform .12s ease}.im-sticker-cell:hover{background:#e8833a1f}.im-sticker-cell:active{transform:scale(.9)}.im-sticker-panel-img{width:62px;height:62px}.im-sticker-anchor .is-active,.im-sticker-anchor .is-active:hover:not(:disabled){color:#e8833a;background:#e8833a24}.m-sheet .im-sticker-panel-img{width:56px;height:56px}.m-sheet .im-sticker-bare{width:84px;height:84px}.im-quote-btn{flex:none;width:20px;height:20px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;font-family:inherit;color:#4a3a22b8;cursor:pointer;opacity:0;transition:opacity .15s ease,color .15s ease,background .15s ease}.im-quote-btn:hover{opacity:1;color:#d1602f;background:#e8833a1f}.bubble-row:hover .im-quote-btn,.d-msg:hover .im-quote-btn{opacity:.9}.d-msg.me .im-quote-btn{color:#fff}.d-msg.me:hover .im-quote-btn:not(:hover){background:#00000029}.d-msg.me .im-quote-btn:hover{color:#e8833a;background:#fff}.im-bubble-line{flex:none;display:flex;align-items:center;gap:6px;width:fit-content;max-width:100%}.bubble-row.mine .im-bubble-line{flex-direction:row-reverse}.im-status-out{flex:none;display:inline-flex;align-items:center;justify-content:center}.im-status-out .im-status.im-clock{color:#78643c8c}.im-bubble-foot{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:4px}.bubble-row:not(.mine) .im-bubble-foot,.d-msg.them .im-bubble-foot{flex-direction:row-reverse}.im-bubble-acts{display:inline-flex;align-items:center;gap:2px;min-height:20px}.im-bubble-meta{display:inline-flex;align-items:center;gap:6px}.bubble-row.mine .im-quote-btn,.bubble-row.mine .im-recall-btn:not(.im-retry-btn){color:#fff}.bubble-row.mine:hover .im-quote-btn:not(:hover),.bubble-row.mine:hover .im-recall-btn:not(.im-retry-btn):not(:hover){background:#00000029}.bubble-row.mine .im-quote-btn:hover,.bubble-row.mine .im-recall-btn:not(.im-retry-btn):hover{color:#e8833a;background:#fff}.bubble-row.mine .im-recall-busy,.bubble-row.mine .im-recall-busy:hover{color:#fff;background:#00000029}.im-quote-bar{flex:none;display:flex;align-items:center;gap:8px;margin:0 14px 6px;padding:7px 10px;border-left:3px solid #e8833a;background:#e8833a17;border-radius:8px;font-size:12px;line-height:1.4;min-width:0;animation:im-fade .15s ease}.im-quote-bar-tag{flex:none;font-size:11px;font-weight:700;color:#e8833a}.im-quote-bar-body{flex:1;min-width:0;display:flex;gap:4px;white-space:nowrap;overflow:hidden}.im-quote-bar-name{flex:none;font-weight:700;color:#8a5a2b}.im-quote-bar-name:after{content:"："}.im-quote-bar-text{overflow:hidden;text-overflow:ellipsis;color:#4a3a22b8}.im-quote-bar-x{flex:none;width:20px;height:20px;padding:0;border:none;border-radius:50%;background:transparent;color:#4a3a228c;font-size:16px;line-height:1;cursor:pointer}.im-quote-bar-x:hover{color:#3a2c18;background:#0000000f}.m-sheet .im-quote-bar{margin-left:0;margin-right:0}.im-quote-card{display:flex;align-items:baseline;gap:6px;width:100%;min-width:0;margin:0 0 6px;padding:5px 9px;border:none;border-left:3px solid rgba(232,131,58,.75);border-radius:6px;background:#e8833a1f;font-family:inherit;font-size:12px;line-height:1.4;text-align:left;cursor:pointer;box-sizing:border-box}.im-quote-card-name{flex:none;font-weight:700;color:#c2611f}.im-quote-card-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;color:#4a3a22c7}.im-quote-card.is-me{border-left-color:#fffc;background:#fff3}.im-quote-card.is-me .im-quote-card-name{color:#fff}.im-quote-card.is-me .im-quote-card-text{color:#ffffffeb}.im-quote-card.is-img{border-left-color:#e8833a;background:#fff;box-shadow:0 2px 8px #7850142e}@keyframes im-quote-flash{0%,to{box-shadow:0 0 #e8833a00}30%{box-shadow:0 0 0 3px #e8833a8c,0 0 12px #e8833a8c}}.im-flash .bubble,.im-flash .d-im-bubble,.im-flash .m-im-bubble,.im-flash .im-img-wrap{animation:im-quote-flash 1.5s ease 2}.im-sheet-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:#00000059;display:flex;align-items:flex-end;justify-content:center;animation:im-fade .15s ease}.im-sheet{width:100%;max-width:520px;background:#f2f2f7;border-radius:16px 16px 0 0;padding:8px 10px calc(10px + env(safe-area-inset-bottom,0px));animation:im-sheet-up .18s ease}.im-sheet-title{text-align:center;font-size:12px;color:#3c322880;padding:10px 0 6px}.im-sheet-item{display:block;width:100%;border:none;background:#fff;border-radius:12px;padding:15px 0;margin-bottom:8px;font-size:16px;font-family:inherit;color:#1c1c1e;cursor:pointer}.im-sheet-item.danger{color:#e0453c;font-weight:600}.im-sheet-item:active{background:#e9e9ee}.im-sheet-cancel{margin-top:4px;font-weight:600;border-radius:12px}@keyframes im-fade{0%{opacity:0}to{opacity:1}}@keyframes im-spin{to{transform:rotate(360deg)}}@keyframes im-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.wcal{--wcal-ink: #4a3f35;--wcal-ink-light: #8a7d6d;--wcal-work: #5b8def;--wcal-holiday: #f0984c;--wcal-shift: #9b7ede;--wcal-rest: #c8bfb2;--wcal-fish: #f0984c;width:100%;color:var(--wcal-ink);font-size:14px}.wcal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.wcal-title{font-size:16px;font-weight:800;display:flex;align-items:center;gap:8px}.wcal-today-btn{border:1px solid rgba(90,70,50,.25);background:#fff9;color:var(--wcal-ink-light);font-size:12px;border-radius:999px;padding:2px 10px;cursor:pointer}.wcal-today-btn:hover{color:var(--wcal-ink)}.wcal-nav{width:32px;height:32px;border-radius:50%;border:1px solid rgba(90,70,50,.25);background:#fff9;color:var(--wcal-ink);font-size:18px;line-height:1;cursor:pointer}.wcal-nav:hover:not(:disabled){background:#fff}.wcal-nav:disabled{opacity:.3;cursor:default}.wcal-week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px}.wcal-week-cell{text-align:center;font-size:12px;color:var(--wcal-ink-light);padding:4px 0}.wcal-loading{text-align:center;color:var(--wcal-ink-light);font-size:13px;padding:24px 0}.wcal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.wcal-cell{position:relative;aspect-ratio:1;border:none;border-radius:10px;background:#ffffff8c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:2px;font-family:inherit;color:var(--wcal-ink)}.wcal-cell.is-blank{background:transparent}.wcal-cell.is-restday{background:#c8bfb242;color:var(--wcal-ink-light)}.wcal-cell.is-holiday{background:#f0984c29}.wcal-cell.is-shift{background:#9b7ede24}.wcal-cell.is-future .wcal-day,.wcal-cell.is-future .wcal-holiday{opacity:.5}.wcal-cell.is-clickable{cursor:pointer}.wcal-cell.is-clickable:hover:not(.is-today){background:#fffffff2;box-shadow:0 2px 8px #5a463226}.wcal-cell:disabled{cursor:default}.wcal-cell.is-today{background:var(--wcal-work);color:#fff}.wcal-cell.is-today .wcal-day{color:#fff}.wcal-cell.is-today .wcal-holiday{color:#fff;opacity:.9}.wcal-cell.is-today.is-clickable:hover{box-shadow:0 2px 10px #5b8def73}.wcal-day{font-size:14px;font-weight:700;line-height:1.1}.wcal-holiday{font-size:10px;line-height:1;color:var(--wcal-holiday);font-weight:700;background:#f0984c26;border-radius:999px;padding:2px 6px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wcal-badge.is-shift{position:absolute;top:3px;left:3px;font-size:9px;line-height:1;padding:2px 3px;border-radius:4px;background:var(--wcal-shift);color:#fff}.wcal-fish{position:absolute;top:3px;right:3px;font-size:10px;line-height:1;background:#ffffffd9;border-radius:50%;padding:2px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.1))}.wcal-cell.has-report{background:#5b8def1f}.wcal-cell.has-report .wcal-day{color:var(--wcal-work)}.wcal-cell.is-payday .wcal-day{color:#d4930d}.wcal-cell.is-today.is-payday .wcal-day{color:#fff}.wcal-pay{position:absolute;bottom:3px;left:3px;font-size:10px;line-height:1;background:#ffffffd9;border-radius:50%;padding:2px}.wcal-legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;font-size:11px;color:var(--wcal-ink-light);align-items:center}.wcal-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:3px;vertical-align:middle}.wcal-dot.is-holiday{background:var(--wcal-holiday)}.wcal-dot.is-shift{background:var(--wcal-shift)}.wcal-dot.is-restday{background:var(--wcal-rest)}.wcal-tdot{position:absolute;bottom:4px;right:5px;width:7px;height:7px;border-radius:50%;pointer-events:none}.wcal-tdot.is-pending{background:var(--wcal-fish);box-shadow:0 0 0 2px #ffffffbf}.wcal-tdot.is-done{width:5px;height:5px;bottom:5px;right:6px;background:var(--wcal-rest)}.wcal-legend .wcal-tdot{position:static;display:inline-block;margin-right:3px;vertical-align:middle;box-shadow:none}.wcal-tip{margin-top:6px;font-size:11px;color:var(--wcal-ink-light);text-align:center}.wcal-aside-sec+.wcal-aside-sec{border-top:1px solid rgba(90,70,50,.12);margin-top:14px;padding-top:14px}.wcal-aside-sec-title{font-size:14px;font-weight:800;margin-bottom:10px}.wcal-aside-stat{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--wcal-ink-light);padding:4px 0}.wcal-aside-stat b{color:var(--wcal-ink);font-size:14px}.wcal-aside-holiday{display:flex;flex-direction:column;gap:3px;font-size:13px}.wcal-aside-holiday b{font-size:15px}.wcal-aside-holiday span{color:var(--wcal-ink-light)}.wcal-aside-holiday em{font-style:normal;color:var(--wcal-holiday);font-weight:800}.wcal-aside-report{display:flex;justify-content:space-between;align-items:center;width:100%;border:none;border-radius:10px;background:#ffffff8c;padding:9px 12px;margin-bottom:6px;font-family:inherit;font-size:13px;color:var(--wcal-ink);cursor:pointer}.wcal-aside-report:hover{background:#fff;box-shadow:0 2px 8px #5a46321f}.wcal-aside-report i{font-style:normal;color:var(--wcal-ink-light)}.wcal-aside-empty{font-size:12px;color:var(--wcal-ink-light);line-height:1.6}.modal-card.wcal-modal{width:min(760px,94vw);max-width:760px}.wcal-modal-title{font-size:16px;font-weight:800;margin-bottom:12px;color:var(--wcal-ink)}.wcal-modal-body{display:flex;gap:18px;align-items:flex-start}.wcal-modal-cal{flex:1;min-width:0}.wcal-modal-aside{width:230px;flex-shrink:0}@media(max-width:640px){.modal-card.wcal-modal{width:calc(100vw - 24px);max-width:480px}.wcal-modal-body{flex-direction:column}.wcal-modal-aside{width:100%}}.modal-card.tdro-modal{width:min(440px,calc(100vw - 32px));max-height:82vh;overflow-y:auto;padding:22px 24px 24px}.tdro-sheet-body{padding-bottom:4px}.tdro-head{font-size:16px;font-weight:800;color:var(--wcal-ink);margin-bottom:14px}.tdro-sub{font-size:13px;font-weight:800;color:var(--wcal-ink);margin:4px 0 8px}.tdro-sub-report{margin-top:18px}.tdro-list{display:flex;flex-direction:column;gap:8px}.tdro-item{display:flex;align-items:flex-start;gap:10px;background:#fff9;border:1px solid rgba(90,70,50,.1);border-radius:12px;padding:10px 12px}.tdro-item.is-done{opacity:.55}.tdro-item.is-done .tdro-title{text-decoration:line-through}.tdro-item.is-pulse{animation:tdro-pulse .9s ease-in-out 3}@keyframes tdro-pulse{0%,to{box-shadow:0 0 #f0984c00;border-color:#5a46321a}50%{box-shadow:0 0 0 4px #f0984c47;border-color:var(--wcal-fish)}}.tdro-check{flex-shrink:0;width:20px;height:20px;margin-top:1px;border-radius:50%;border:2px solid rgba(90,70,50,.3);display:inline-flex;align-items:center;justify-content:center;font-size:12px;color:#fff}.tdro-check.is-checked{background:var(--wcal-rest);border-color:var(--wcal-rest)}.tdro-main{flex:1;min-width:0}.tdro-title{font-size:14px;font-weight:700;color:var(--wcal-ink);line-height:1.4;word-break:break-word}.tdro-meta{display:flex;align-items:center;gap:8px;margin-top:3px;font-size:12px;color:var(--wcal-ink-light)}.tdro-tag{border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700}.tdro-tag.is-due{background:#f0984c29;color:var(--wcal-fish)}.tdro-tag.is-overdue{background:#dc503c24;color:#c8463a}.tdro-guide{margin-top:12px;border:1px dashed rgba(90,70,50,.25);border-radius:10px;padding:9px 12px;font-size:12px;color:var(--wcal-ink-light);text-align:center;background:#fff6}.tdro-report{display:flex;align-items:center;gap:8px;width:100%;border:none;border-radius:12px;background:#5b8def1a;padding:10px 12px;font-family:inherit;font-size:13px;color:var(--wcal-ink);cursor:pointer;text-align:left}.tdro-report:hover{background:#5b8def2e}.tdro-report-title{font-weight:800;flex-shrink:0}.tdro-report-rate{color:var(--wcal-work);font-weight:700;flex-shrink:0;font-size:12px}.tdro-report-comment{flex:1;min-width:0;color:var(--wcal-ink-light);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.tdro-report-go{flex-shrink:0;color:var(--wcal-ink-light)}.tdro-report-none{font-size:12px;color:var(--wcal-ink-light);padding:2px}.wrp-card{--wrp-work: #5b8def;--wrp-comm: #9b7ede;--wrp-slack: #f0984c;--wrp-other: #a8a29e;background:linear-gradient(160deg,#fffdf7,#fdf3e3);border:1px solid #eadfc8;border-radius:16px;padding:18px 18px 14px;color:#4a4036;font-size:14px;line-height:1.5}.wrp-head{display:flex;align-items:baseline;gap:8px;border-bottom:1px dashed #e3d5b8;padding-bottom:10px}.wrp-fish{font-size:20px}.wrp-title{font-size:17px;font-weight:700;letter-spacing:1px}.wrp-date{margin-left:auto;color:#a08b6d;font-size:12px}.wrp-rank{text-align:center;padding:12px 0 4px}.wrp-rank-title{font-size:20px;font-weight:800}.wrp-rank-卷王{color:#3f7d53}.wrp-rank-劳逸结合{color:#5b8def}.wrp-rank-摸鱼能手{color:#e08a3c}.wrp-rank-摸鱼仙人{color:#c05a3a}.wrp-comment{margin:6px 0 0;color:#8a7a63;font-size:13px}.wrp-trio{display:flex;gap:8px;margin:12px 0 10px}.wrp-cell{flex:1;background:#ffffffa6;border:1px solid #f0e6d0;border-radius:10px;padding:8px 4px;text-align:center;display:flex;flex-direction:column;gap:2px}.wrp-num{font-size:16px;font-weight:700}.wrp-c-work{color:var(--wrp-work)}.wrp-c-comm{color:var(--wrp-comm)}.wrp-c-slack{color:var(--wrp-slack)}.wrp-label{font-size:11px;color:#a08b6d}.wrp-rate-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.wrp-rate-bar{flex:1;height:8px;background:#f0e6d0;border-radius:4px;overflow:hidden}.wrp-rate-bar i{display:block;height:100%;background:linear-gradient(90deg,#f5c06a,var(--wrp-slack));border-radius:4px}.wrp-rate-num{font-weight:700;color:var(--wrp-slack);min-width:38px;text-align:right}.wrp-section{margin-top:12px}.wrp-sec-title{font-size:12px;font-weight:700;color:#a08b6d;letter-spacing:2px;margin-bottom:6px}.wrp-bar-row{display:flex;align-items:center;gap:8px;padding:3px 0}.wrp-bar-label{width:84px;flex-shrink:0;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wrp-bar{flex:1;height:10px;background:#f3ecdc;border-radius:5px;overflow:hidden}.wrp-bar i{display:block;height:100%;border-radius:5px}.wrp-bar-slack{background:var(--wrp-slack)}.wrp-bar-work{background:var(--wrp-work)}.wrp-bar-comm{background:var(--wrp-comm)}.wrp-bar-other{background:var(--wrp-other)}.wrp-bar-num{width:52px;flex-shrink:0;text-align:right;font-size:12px;color:#8a7a63}.wrp-side{flex-shrink:0;font-size:10px;padding:1px 5px;border-radius:6px}.wrp-side-work{background:#5b8def24;color:var(--wrp-work)}.wrp-side-comm{background:#9b7ede24;color:var(--wrp-comm)}.wrp-side-slack{background:#f0984c29;color:var(--wrp-slack)}.wrp-side-other{background:#a8a29e29;color:var(--wrp-other)}.wrp-misc{margin-top:12px;display:flex;flex-direction:column;gap:6px}.wrp-peak{font-size:13px}.wrp-peak b{color:var(--wrp-slack)}.wrp-tags{display:flex;gap:6px;flex-wrap:wrap}.wrp-tag{background:#fff;border:1px solid #ecd9b0;color:#b07830;border-radius:999px;font-size:11px;padding:2px 10px}.wrp-compare{font-size:12px}.wrp-compare.up{color:#c05a3a}.wrp-compare.down{color:#3f7d53}.wrp-foot{margin-top:12px;border-top:1px dashed #e3d5b8;padding-top:8px;text-align:center;font-size:11px;color:#b3a284}.wrp-modal{width:400px;max-width:calc(100vw - 48px);max-height:86vh;overflow-y:auto;padding:14px}.wrp-modal-share{margin-top:12px;width:100%}.wrp-empty{text-align:center;padding:28px 12px;color:#8a7a63;font-size:13px;display:flex;flex-direction:column;gap:8px;align-items:center}.wrp-empty-emo{font-size:34px}
