.chat-page{height:calc(100vh - 56px);height:calc(100dvh - 56px);background:var(--surface);overflow:hidden;position:relative}.chat-page,.chat-sidebar{display:flex;min-height:0}.chat-sidebar{width:320px;min-width:280px;border-right:1px solid var(--border);flex-direction:column;background:var(--surface-raised);transition:width .3s ease,min-width .3s ease,border-right-width .3s ease}.chat-sidebar.hidden{width:0;min-width:0;overflow:hidden;border-right-width:0}.chat-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.chat-sidebar-header h2{font-family:var(--font-heading);font-size:18px;font-weight:700;color:var(--text);margin:0}.chat-sidebar-header-actions{display:flex;align-items:center;gap:4px}.chat-sidebar-collapse,.chat-sidebar-new{width:32px;height:32px;border:none;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px;color:var(--text-muted);transition:background .15s,color .15s}.chat-sidebar-collapse:hover,.chat-sidebar-new:hover{background:var(--surface-sunken);color:var(--text)}.chat-main-sidebar-toggle{width:36px;height:36px;border:none;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px;color:var(--text-muted);transition:background .15s,color .15s}.chat-main-sidebar-toggle:hover{background:var(--surface-sunken);color:var(--text)}.chat-sidebar-search{display:flex;align-items:center;gap:6px;margin:8px 12px 4px;padding:6px 10px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:8px;color:var(--text-subtle);transition:border-color .15s}.chat-sidebar-search:focus-within{border-color:var(--brand)}.chat-sidebar-search input{flex:1;border:none;outline:none;background:transparent;color:var(--text);font-size:13px;font-family:inherit}.chat-sidebar-search input::-moz-placeholder{color:var(--text-disabled)}.chat-sidebar-search input::placeholder{color:var(--text-disabled)}.chat-sidebar-list{flex:1 1 0;min-height:0;overflow-y:auto;padding:8px}.chat-sidebar-list::-webkit-scrollbar{width:4px}.chat-sidebar-list::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:2px}.chat-conv{display:flex;align-items:center;gap:12px;padding:12px;border:none;background:none;width:100%;text-align:left;border-radius:10px;cursor:pointer;transition:background .15s;font-family:inherit}.chat-conv:hover{background:var(--surface-sunken)}.chat-conv.active{background:rgba(167,139,250,.15)}.chat-conv-avatar{-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top;background:var(--surface-sunken)}.chat-conv-avatar,.chat-conv-avatar-placeholder{width:44px;height:44px;border-radius:50%;flex-shrink:0;border:3px solid var(--bg-base,#08080c);outline:2px solid #f43f6f;outline-offset:0;box-sizing:border-box}.chat-conv-avatar-placeholder{background:var(--brand-gradient);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px}.chat-conv-info{flex:1;min-width:0}.chat-conv-top{display:flex;align-items:baseline;gap:8px;justify-content:space-between}.chat-conv-name{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-conv-time{font-size:10px;color:var(--text-subtle);flex-shrink:0}.chat-conv-last{font-size:12px;color:var(--text-subtle);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-sidebar-empty{padding:40px 20px;text-align:center;color:var(--text-subtle);font-size:13px;line-height:1.55}.chat-sidebar-loading{display:flex;align-items:center;justify-content:center;padding:40px}.chat-main{flex:1 1 0;display:flex;flex-direction:column;min-width:0;min-height:0;position:relative;background:var(--surface)}.chat-empty,.chat-guest-banner,.chat-input-area,.chat-main-header,.chat-messages{position:relative;z-index:1}.chat-main-header{z-index:10;display:flex;align-items:center;flex:0 0 auto;gap:12px;padding:12px 20px;border-bottom:1px solid var(--border);background:var(--surface);min-height:56px}.chat-main-back{display:none;border:none;background:none;cursor:pointer;color:var(--text-muted);padding:4px}.chat-main-avatar{width:52px;height:52px;flex-shrink:0;border-radius:50%;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top;background:var(--surface-sunken);box-sizing:border-box}.chat-main-namecol{display:flex;flex-direction:column;gap:2px;min-width:0}.chat-main-name{font-size:15px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-main-lang{margin-left:auto;position:relative}.chat-lang-trigger{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:var(--radius-full);border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--text);font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s}.chat-lang-trigger:hover{background:var(--surface-sunken)}.chat-lang-trigger-prefix{color:var(--text-subtle);margin-right:2px}.chat-lang-trigger-value{color:var(--text)}.chat-lang-menu{position:absolute;right:0;top:calc(100% + 6px);min-width:160px;background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.12);overflow:hidden;z-index:20}.chat-lang-item{width:100%;text-align:left;padding:10px 14px;border:none;background:none;font-size:13px;font-weight:500;font-family:inherit;color:var(--text);cursor:pointer;transition:background .12s}.chat-lang-item:hover{background:var(--surface-sunken)}.chat-lang-item.active{background:rgba(244,63,111,.08);color:var(--brand)}.chat-main-newchat .chat-lang-menu{min-width:388px;max-width:min(92vw,388px)}.chat-mode-compare-menu{padding:8px;display:flex;flex-direction:column;gap:8px}.chat-mode-model-summary{display:flex;flex-direction:column;gap:4px;padding:2px 4px 4px}.chat-mode-model-card{display:flex;align-items:baseline;gap:6px;min-width:0}.chat-mode-model-card .chat-mode-compare-provider{min-height:auto;padding:0;border:none;background:transparent;font-size:12px;font-weight:800}.chat-mode-model-text{color:var(--text-muted);font-size:12px;font-weight:600;line-height:1.45}.chat-mode-group{display:flex;flex-direction:column;gap:7px;padding:8px;border-radius:14px;background:color-mix(in srgb,var(--surface-sunken) 94%,transparent);border:1px solid color-mix(in srgb,var(--border) 86%,transparent)}.chat-mode-group-head{display:flex;flex-direction:column;gap:2px}.chat-mode-group-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.chat-mode-group-title{font-size:15px;font-weight:700;color:var(--text)}.chat-mode-group-price-hint{font-size:12px;color:var(--text-subtle);line-height:1.3;white-space:nowrap}.chat-mode-group-usecase{font-size:12px;color:var(--text-muted);line-height:1.3}.chat-mode-group-options{display:flex;flex-direction:column;gap:8px}.chat-mode-group-options--compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.chat-mode-compare-option{position:relative;padding:8px;border-radius:12px;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);background:var(--surface);display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:0;min-height:44px}.chat-mode-compare-option:hover{background:color-mix(in srgb,var(--surface) 90%,var(--brand) 10%)}.chat-mode-compare-option.active{border-color:color-mix(in srgb,var(--brand) 56%,var(--border) 44%);background:color-mix(in srgb,var(--surface) 86%,var(--brand) 14%)}.chat-mode-compare-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.chat-mode-compare-badges{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0}.chat-mode-compare-provider{display:inline-flex;align-items:center;gap:4px;min-height:24px;padding:0 9px;border-radius:999px;border:1px solid transparent;font-size:11px;font-weight:700;letter-spacing:.04em}.chat-mode-compare-provider--apple{color:#c53469;background:rgba(248,84,129,.1);border-color:rgba(248,84,129,.18)}.chat-mode-compare-provider--banana{color:#7a5400;background:rgba(250,204,21,.16);border-color:rgba(234,179,8,.28)}.chat-mode-compare-provider-icon{font-size:12px;line-height:1}.chat-mode-compare-vip{position:absolute;top:-8px;right:-6px;z-index:2;pointer-events:none;display:inline-flex;align-items:center;justify-content:center;min-height:18px;padding:0 6px;border-radius:7px;background:linear-gradient(135deg,#facc15,#f59e0b);border:1px solid color-mix(in srgb,var(--surface) 82%,transparent);color:#4c3200;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 4px 10px rgba(245,158,11,.18)}.chat-mode-compare-price{flex:0 0 auto;margin-left:0;display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:999px;background:color-mix(in srgb,var(--brand) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--brand) 24%,var(--border));color:var(--brand);opacity:1;font-size:12px;font-weight:700;box-shadow:0 4px 10px rgba(244,63,111,.08)}.chat-mode-compare-tag{display:inline-flex;align-items:center;min-height:21px;padding:0 6px;border-radius:999px;border:1px solid transparent;font-size:10.5px;font-weight:600;line-height:1.2;white-space:nowrap}.chat-mode-compare-tag--apple{background:rgba(248,84,129,.08);border-color:rgba(248,84,129,.16);color:#c53469}.chat-mode-compare-tag--banana{background:rgba(250,204,21,.16);border-color:rgba(234,179,8,.28);color:#7a5400}@media (max-width:560px){.chat-main-newchat .chat-lang-menu{min-width:min(92vw,388px)}.chat-mode-group-options--compare{grid-template-columns:1fr}.chat-mode-group-title-row{flex-direction:column;align-items:flex-start;gap:2px}.chat-mode-group-price-hint{white-space:normal}}.chat-main-detail-toggle{margin-left:8px;width:34px;height:34px;border:none;background:transparent;color:var(--text-muted);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.chat-main-detail-toggle:hover{background:var(--surface-sunken);color:var(--text)}.chat-main-mode-badge{align-self:flex-start;display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:var(--radius-full);background:var(--surface-sunken);border:1px solid var(--chat-mode-badge-border);color:var(--text-muted);font-size:var(--size-tiny);font-weight:600;white-space:nowrap}.chat-main-meta{gap:var(--space-2)}.chat-hdr-stats,.chat-main-meta{display:flex;align-items:center;min-width:0}.chat-hdr-stats{flex-wrap:wrap;gap:var(--space-1)}.chat-hdr-stat{display:inline-flex;align-items:center;gap:var(--space-1);height:20px;padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--surface-sunken);border:1px solid var(--border);font:var(--caption);color:var(--text);white-space:nowrap}.chat-hdr-stat-emoji{line-height:1}.chat-hdr-stat-val{font-weight:700;color:var(--text)}.chat-hdr-stat-stage{color:var(--text-subtle)}.chat-main-script-btn{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:var(--radius-full);border:1px solid var(--chat-action-btn);background:var(--chat-action-btn);color:#fff;font-size:var(--size-caption);font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity .15s}.chat-main-script-btn:hover{opacity:.9}.chat-main-newchat{margin-left:auto}.chat-main-newchat .chat-lang-trigger{background:var(--chat-action-btn);border-color:var(--chat-action-btn);color:#fff;transition:opacity .15s}.chat-main-newchat .chat-lang-trigger:hover{background:var(--chat-action-btn);opacity:.9}.chat-main-newchat .chat-lang-trigger-value{color:#fff}.script-drawer-mask{position:absolute;inset:0;z-index:60;display:flex;justify-content:flex-end;background:var(--scrim-mask)}.script-drawer{position:relative;width:100%;max-width:38rem;height:100%;display:flex;flex-direction:column;background:var(--surface-raised);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);animation:scriptDrawerIn .18s ease-out}@keyframes scriptDrawerIn{0%{transform:translateX(16px);opacity:.6}to{transform:translateX(0);opacity:1}}.script-drawer-head{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.script-drawer-close{width:32px;height:32px;border:none;background:transparent;color:var(--text-muted);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.script-drawer-close:hover{background:var(--surface-sunken);color:var(--text)}.script-drawer-tabs{flex-shrink:0;padding:0 16px;background:var(--surface-raised)}.script-drawer-body{flex:1;overflow-y:auto;padding:14px;margin-top:0}.script-drawer-body.chat-asp-body{margin-top:0}.script-drawer-body::-webkit-scrollbar{width:4px}.script-drawer-body::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:2px}.script-drawer-foot{flex-shrink:0;display:flex;justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);background:var(--surface-raised)}.asp-save-btn{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-5);border:1px solid var(--brand);border-radius:var(--radius-md);background:var(--brand);color:#fff;font:var(--caption);font-size:var(--size-body-sm);font-family:inherit;font-weight:600;cursor:pointer;transition:opacity .15s}.asp-save-btn:hover{opacity:.88}.asp-save-btn:disabled{opacity:.5;cursor:default}.asp-confirm-mask{position:absolute;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--scrim-mask)}.asp-confirm{width:100%;max-width:22rem;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.asp-confirm-title{font:var(--h4);color:var(--text)}.asp-confirm-body{font:var(--body);color:var(--text-muted)}.asp-confirm-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-1)}.asp-confirm-cancel,.asp-confirm-ok{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font:var(--caption);font-family:inherit;font-weight:600;cursor:pointer;transition:opacity .15s,background .15s,color .15s}.asp-confirm-cancel{border:1px solid var(--border-strong);background:transparent;color:var(--text-muted)}.asp-confirm-cancel:hover{background:var(--surface-sunken);color:var(--text)}.asp-confirm-ok{border:1px solid var(--brand);background:var(--brand);color:#fff}.asp-confirm-ok:hover{opacity:.88}.asp-confirm-ok:disabled{opacity:.5;cursor:default}.chat-lang-btn{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--text-subtle);cursor:pointer;transition:all .15s;font-family:inherit}.chat-lang-btn.active{background:var(--text);color:var(--surface);border-color:var(--text)}.chat-messages{flex:1 1 0;min-height:0;overflow-y:auto;overflow-anchor:none;background:var(--surface)}.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:2px}.chat-messages-inner{max-width:768px;margin:0 auto;width:100%;padding:24px 16px;display:flex;flex-direction:column;gap:16px}.chat-load-earlier{display:flex;justify-content:center;padding:var(--space-2) 0}.chat-load-earlier-btn{font:var(--caption);font-family:var(--font);color:var(--text-subtle);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-full);padding:var(--space-2) var(--space-4);cursor:pointer;transition:background .15s,color .15s}.chat-load-earlier-btn:hover{background:var(--surface-sunken);color:var(--text)}.chat-msg{display:flex;gap:10px;max-width:75%;animation:chatFadeIn .2s ease-out}.chat-msg.user{align-self:flex-end;flex-direction:row-reverse;align-items:flex-end}.chat-msg.character{align-self:flex-start}.chat-msg--no-enter,.chat-msg--streaming{animation:none}.chat-msg--no-enter,.chat-msg--no-enter *{transition:none!important}.chat-msg.character.chat-msg--streaming:not(.chat-msg--rp):not(.chat-msg--novel){width:75%;max-width:75%}.chat-msg--streaming>div{width:100%;min-width:0}.chat-msg--streaming .chat-msg-bubble{width:100%;box-sizing:border-box}.chat-msg--chat{align-items:flex-end}.chat-msg-avatar{width:32px;height:32px;border-radius:50%;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top;background:var(--surface-sunken);flex-shrink:0;margin-top:2px;box-sizing:border-box}.chat-msg--chat .chat-msg-avatar{margin-top:0}.chat-msg-bubble{padding:10px 14px;border-radius:16px;font-size:var(--size-body);line-height:1.55;word-break:break-word}.chat-msg.character .chat-msg-bubble{background:var(--surface-bubble-ai);color:var(--text);border-bottom-left-radius:4px}.chat-msg--rp{max-width:100%;width:100%}.chat-msg--rp>div{width:100%;min-width:0}.chat-msg.character .chat-msg-bubble--rp-card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-xl);padding:12px 16px}.chat-msg.user .chat-msg-bubble{background:var(--brand-gradient);color:#fff;border-bottom-right-radius:4px}.chat-msg-bubble--novel{font:var(--body-lg);font-family:var(--font-heading);font-size:var(--size-body)}.chat-msg--novel{max-width:100%;width:100%}.chat-msg--novel>div{width:100%;min-width:0}.chat-msg.character .chat-msg-bubble--novel{background:transparent;border:none;border-radius:0;border-bottom-left-radius:0;padding:0}.chat-msg-author-note{padding-left:var(--space-4);border-left:2px solid var(--brand)}.chat-msg-author-note-tag{margin-bottom:var(--space-1);font-size:var(--size-micro);text-transform:uppercase;letter-spacing:.06em;color:var(--brand)}.chat-msg-author-note-text{font-size:var(--size-body);line-height:1.9;font-style:italic;color:var(--text-muted)}.chat-msg-author-note-text,.chat-msg-para{margin:0;white-space:pre-wrap}.chat-msg-para+.chat-msg-para{margin-top:.4em}.chat-msg.character .chat-msg-action{color:var(--text-subtle);font-style:italic}.chat-msg.character .chat-msg-dialogue{color:var(--rp-c-amber)}.chat-msg.character .chat-msg-text{color:var(--text)}.chat-msg.user .chat-msg-self{color:#fff}.chat-loading-dots{display:inline-flex;align-items:center;gap:3px;padding:12px 16px;min-height:20px}.chat-loading-dots span{width:6px;height:6px;border-radius:50%;background:var(--text-subtle);animation:chatLoadingDot 1.2s ease-in-out infinite both}.chat-loading-dots span:first-child{animation-delay:-.32s}.chat-loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes chatLoadingDot{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.chat-msg-footer{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-1);padding:0 var(--space-1)}.chat-msg-time{font-size:var(--size-micro);color:var(--text-disabled);flex-shrink:0;margin-left:auto}.chat-act-btn{display:inline-flex;align-items:center;gap:var(--space-1);background:none;border:none;padding:0;cursor:pointer;font:var(--caption);font-family:var(--font);color:var(--text-subtle);transition:color .15s,opacity .15s}.chat-act-btn:hover{color:var(--text)}.chat-act-btn--continue{color:var(--brand);font-weight:600}.chat-act-btn--continue:hover{color:var(--brand);opacity:.8}.chat-streaming-cursor{position:relative;padding-right:18px}.chat-streaming-cursor:after{content:"";position:absolute;right:10px;bottom:12px;width:2px;height:1em;background:currentColor;opacity:.72;animation:chatBlink 1.1s step-end infinite}.chat-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-subtle);text-align:center;padding:40px}.chat-empty-icon{width:80px;height:80px;margin-bottom:16px;color:var(--border-strong)}.chat-empty h3{font-size:18px;font-weight:600;color:var(--text-muted);margin:0 0 8px}.chat-empty p{font-size:13px;color:var(--text-subtle);margin:0}.chat-empty-intro,.chat-novel-intro{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-2);padding:var(--space-10) var(--space-4);color:var(--text-subtle)}.chat-empty-intro-icon,.chat-novel-intro-icon{width:56px;height:56px;margin-bottom:var(--space-2);color:var(--text-muted)}.chat-empty-intro-title,.chat-novel-intro-title{margin:0;font-size:var(--size-h2);font-weight:700;color:var(--text)}.chat-empty-intro-sub,.chat-novel-intro-sub{margin:0;font-size:var(--size-body);color:var(--text-muted)}.chat-empty-intro-hint,.chat-novel-intro-hint{font-size:var(--size-caption);color:var(--text-subtle)}.chat-input-area{flex:0 0 auto;padding:12px 20px 16px;border-top:1px solid var(--border);background:var(--surface)}.chat-input-row{display:flex;align-items:flex-end;gap:8px}.chat-input{flex:1;resize:none;border:1px solid var(--border-strong);border-radius:20px;padding:10px 16px;font-size:14px;font-family:inherit;line-height:1.5;min-height:38px;max-height:120px;outline:none;background:var(--surface-raised);color:var(--text);transition:border-color .15s}.chat-input:focus{border-color:var(--brand)}.chat-input::-moz-placeholder{color:var(--text-disabled)}.chat-input::placeholder{color:var(--text-disabled)}.chat-input-lang{position:relative;flex-shrink:0;align-self:flex-end}.chat-input-lang .chat-lang-trigger{height:42px;padding:0 10px;gap:3px;border-radius:var(--radius-md)}.chat-lang-globe{font-size:var(--size-body-sm);line-height:1}.chat-input-lang .chat-lang-menu{top:auto;bottom:calc(100% + 6px);right:auto;left:0;min-width:160px}.chat-lang-menu-label{padding:6px 14px;font-size:var(--size-micro);text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);border-bottom:1px solid var(--border)}.chat-input-lang .chat-lang-item{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-input-lang .chat-lang-item.active{background:var(--surface-sunken);color:var(--text);font-weight:600}.chat-lang-check{color:var(--emerald);font-weight:700}.chat-send-btn{width:42px;height:42px;border-radius:50%;border:none;background:var(--brand-gradient);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .15s,transform .1s}.chat-send-btn:hover{opacity:.9}.chat-send-btn:active{transform:scale(.95)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.chat-stop-btn{background:var(--red)!important}.chat-stop-btn:hover{opacity:.85}.chat-guest-landing{flex:1;display:flex;align-items:center;justify-content:center;min-height:min(560px,calc(100vh - 56px));min-height:min(560px,calc(100dvh - 56px));padding:56px 24px 64px;background:radial-gradient(ellipse at 28% 18%,rgba(244,63,111,.2),transparent 52%),radial-gradient(ellipse at 72% 78%,rgba(146,90,239,.18),transparent 54%),linear-gradient(135deg,var(--bg-base) 0,#1a0a1f 52%,#0a0a1a 100%)}.chat-guest-landing-inner{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:520px}.chat-guest-landing-title{font-size:28px;font-weight:700;line-height:1.3;letter-spacing:-.01em;color:#fff;margin:0 0 30px;text-shadow:0 2px 8px rgba(0,0,0,.3)}.chat-guest-landing .chat-guest-landing-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:9999px;font-size:14px;font-weight:600;color:hsla(0,0%,100%,.92);background:rgba(17,17,28,.55);border:1px solid rgba(236,72,153,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-decoration:none;transition:background .25s,border-color .25s,color .25s,transform .25s}.chat-guest-landing .chat-guest-landing-btn:hover{color:#fff;background:rgba(236,72,153,.12);border-color:rgba(236,72,153,.55)}.chat-guest-landing-btn svg{transition:transform .25s}.chat-guest-landing-btn:hover svg{transform:translateX(2px)}@media (min-width:768px){.chat-guest-landing-title{font-size:32px}}.chat-guest-banner{flex:0 0 auto;padding:10px 20px;background:rgba(15,15,25,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid hsla(0,0%,100%,.08);font-size:13px;font-weight:500;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.35)}.chat-guest-banner button{background:none;border:none;color:#ff6b95;font-weight:700;cursor:pointer;text-decoration:underline;font-size:13px;font-family:inherit;text-shadow:inherit}.chat-guest-banner button:hover{color:#ff8fa8}.chat-lang-confirm{flex:0 0 auto;margin:0 var(--space-4) var(--space-2);padding:var(--space-3) var(--space-4);background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-lg)}.chat-lang-confirm-msg{margin:0;font:var(--body-sm);color:var(--text);line-height:1.55}.chat-lang-confirm-native{margin-top:4px;color:var(--text-subtle)}.chat-lang-confirm-actions{display:flex;gap:var(--space-2);margin-top:10px}.chat-lang-confirm-cancel,.chat-lang-confirm-ok{padding:6px 14px;border-radius:var(--radius-md);font:var(--body-sm);font-weight:600;cursor:pointer;border:1px solid var(--border-strong);font-family:inherit}.chat-lang-confirm-ok{background:var(--brand);color:#fff;border-color:transparent}.chat-lang-confirm-ok:hover{opacity:.9}.chat-lang-confirm-cancel{background:var(--surface-raised);color:var(--text)}.chat-lang-confirm-cancel:hover{background:var(--surface-sunken)}.chat-spinner{width:20px;height:20px;border:2.5px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:chatSpin .8s linear infinite}.chat-err{align-self:center;display:flex;flex-direction:column;margin:4px 0}.chat-err,.chat-err-pill{align-items:center;gap:8px}.chat-err-pill{display:inline-flex;padding:6px 12px;background:rgba(251,146,60,.12);border:1px solid rgba(251,146,60,.3);border-radius:999px;font-size:12px;color:#c2410c}.chat-err-dot{width:6px;height:6px;border-radius:50%;background:#f97316}.chat-err-label{font-weight:600}.chat-err-toggle{display:inline-flex;align-items:center;gap:2px;padding:0;border:none;background:none;color:inherit;font-size:12px;text-decoration:underline;cursor:pointer}.chat-err-detail{max-width:420px;padding:10px 14px;background:rgba(251,146,60,.08);border:1px solid rgba(251,146,60,.25);border-radius:10px;font-size:12px;color:#9a3412;line-height:1.55}.chat-error-toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.25);color:var(--red);padding:10px 20px;border-radius:10px;font-size:13px;z-index:100;animation:chatFadeIn .2s ease-out}@keyframes chatFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes chatBlink{0%,to{opacity:1}50%{opacity:0}}@keyframes chatSpin{to{transform:rotate(1turn)}}.chat-msg-media{max-width:240px;border-radius:8px;display:block}.chat-detail{width:320px;min-width:0;min-height:0;max-width:92vw;flex-shrink:0;border-left:1px solid var(--border);background:var(--surface-raised);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;transition:width .3s ease,min-width .3s ease,border-left-width .3s ease}.chat-detail.hidden{width:0;min-width:0;overflow:hidden;border-left-width:0}.chat-detail::-webkit-scrollbar{width:4px}.chat-detail::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:2px}.chat-detail-cover{position:relative;width:100%;aspect-ratio:4/5;background:var(--surface-sunken);flex-shrink:0}.chat-detail-img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.chat-detail-close{position:absolute;top:8px;left:8px;width:32px;height:32px;border:none;background:rgba(0,0,0,.4);color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;z-index:2}.chat-detail-close:hover{background:rgba(0,0,0,.6)}.chat-detail-nav{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border:none;background:rgba(0,0,0,.4);color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s,background .15s;z-index:2}.chat-detail-cover:hover .chat-detail-nav{opacity:1}.chat-detail-nav:hover{background:rgba(0,0,0,.6)}.chat-detail-nav-prev{left:8px}.chat-detail-nav-next{right:8px}.chat-detail-indicator{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);padding:4px 12px;background:rgba(0,0,0,.5);color:#fff;font-size:12px;border-radius:999px;z-index:2;pointer-events:none}.chat-detail-thumbs{display:flex;gap:8px;padding:8px 16px;overflow-x:auto;flex-shrink:0;border-bottom:1px solid var(--border)}.chat-detail-thumbs::-webkit-scrollbar{height:4px}.chat-detail-thumbs::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:2px}.chat-detail-thumb{width:48px;height:48px;flex-shrink:0;border:2px solid var(--border);background:var(--surface-sunken);border-radius:8px;overflow:hidden;cursor:pointer;padding:0;transition:border-color .15s}.chat-detail-thumb.active,.chat-detail-thumb:hover{border-color:var(--brand)}.chat-detail-thumb img,.chat-detail-thumb video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top;display:block;pointer-events:none}.chat-detail-body{padding:5px 20px 24px;display:flex;flex-direction:column;gap:.4rem}.chat-detail-name{font-family:var(--font-heading);font-size:20px;font-weight:700;color:var(--text);margin:0}.chat-detail-desc{font-size:13px;line-height:1.55;color:var(--text-muted);margin:0}.chat-detail-desc-toggle{border:none;background:none;padding:0;color:var(--brand);font-size:12px;cursor:pointer;font-family:inherit}.chat-detail-desc-toggle:hover{text-decoration:underline}.chat-detail-view-media{display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border:1px solid var(--brand);border-radius:10px;color:var(--brand);background:transparent;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;font-family:inherit;transition:background .15s}.chat-detail-view-media:hover{background:rgba(236,72,153,.08)}.chat-detail-generate{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;border:none;border-radius:10px;background:var(--brand-gradient);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s,transform .1s;font-family:inherit}.chat-detail-generate:hover{opacity:.92}.chat-detail-generate:active{transform:scale(.98)}.chat-mode-compare-popover{position:fixed;right:auto;min-width:0;max-width:calc(100vw - 24px);overflow:visible;border-radius:14px;box-shadow:0 18px 48px rgba(15,23,42,.16);z-index:60}.chat-mode-compare-popover--compact{padding:6px;gap:5px}.chat-mode-compare-popover--compact .chat-mode-model-summary{gap:2px;padding-bottom:2px}.chat-mode-compare-popover--compact .chat-mode-model-card{gap:5px}.chat-mode-compare-popover--compact .chat-mode-model-text{font-size:11px;line-height:1.25}.chat-mode-compare-popover--compact .chat-mode-group{gap:4px;padding:6px;border-radius:12px}.chat-mode-compare-popover--compact .chat-mode-group-head{gap:1px}.chat-mode-compare-popover--compact .chat-mode-group-title{font-size:13px}.chat-mode-compare-popover--compact .chat-mode-group-price-hint,.chat-mode-compare-popover--compact .chat-mode-group-usecase{font-size:11px;line-height:1.18}.chat-mode-compare-popover--compact .chat-mode-group-options--compare{gap:5px}.chat-mode-compare-popover--compact .chat-mode-compare-option{min-height:36px;padding:5px 6px;border-radius:10px}.chat-mode-compare-popover--compact .chat-mode-compare-provider{min-height:22px;padding:3px 8px;font-size:11px}.chat-mode-compare-popover--compact .chat-mode-compare-price{min-height:20px}.chat-detail-stats{display:flex;align-items:center;justify-content:space-between;padding:2px 0;font-size:13px}.chat-detail-likes{display:inline-flex;align-items:center;gap:6px;color:var(--text-subtle);border:none;background:none;padding:0;font:inherit;cursor:pointer;transition:color .15s}.chat-detail-likes svg{color:var(--text-disabled);transition:color .15s}.chat-detail-likes:hover:not(:disabled) svg{color:var(--pink-400)}.chat-detail-likes.is-liked svg{color:var(--pink-500)}.chat-detail-likes:disabled{cursor:default}.chat-detail-stat-delete{border:none;background:none;padding:4px;color:var(--text-subtle);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .15s}.chat-detail-stat-delete:hover{color:var(--red)}.chat-detail-history-row{position:relative;border-radius:12px;background:var(--surface-sunken);border:1px solid color-mix(in srgb,var(--border) 82%,transparent);transition:background .15s,border-color .15s,box-shadow .15s}.chat-detail-history-row:hover{background:color-mix(in srgb,var(--surface-sunken) 72%,var(--brand) 28%);border-color:color-mix(in srgb,var(--border) 55%,var(--brand) 45%)}.chat-detail-history-row.active{background:linear-gradient(135deg,rgba(236,72,130,.88),rgba(244,114,182,.82));border-color:hsla(0,0%,100%,.18);box-shadow:0 10px 24px rgba(236,72,130,.18)}.chat-detail-history-row.active .chat-detail-history-item{color:#fff}.chat-detail-history-row.active .chat-detail-history-provider--banana,.chat-detail-history-row.active .chat-detail-history-row.active .chat-detail-history-provider--apple{color:#fff;background:hsla(0,0%,100%,.16);border-color:hsla(0,0%,100%,.24)}.chat-detail-history-row.active .chat-detail-history-del{color:hsla(0,0%,100%,.9);background:hsla(0,0%,100%,.08)}.chat-detail-history-row .chat-detail-history-item{flex:1;background:transparent}.chat-detail-history-row .chat-detail-history-item:hover{background:transparent}.chat-detail-history-del{position:absolute;top:50%;right:8px;transform:translateY(-50%);z-index:2;width:24px;height:24px;border:none;background:transparent;color:#7f1d1d;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:999px;transition:color .15s,background .15s}.chat-detail-history-del:hover:not(:disabled){color:var(--red);background:hsla(0,0%,100%,.72)}.chat-detail-history-del:disabled{opacity:.5;cursor:default}.chat-detail-section{padding-top:12px;border-top:1px solid var(--border)}.chat-detail-section-title{font-size:13px;font-weight:600;color:var(--text-subtle);margin:0 0 8px;text-transform:uppercase;letter-spacing:.04em}.chat-detail-history{list-style:none;margin:0;padding:10px 0 0;display:flex;flex-direction:column;gap:10px}.chat-detail-history-item{width:100%;text-align:left;padding:12px 44px 10px 12px;border:none;background:transparent;color:var(--text-muted);border-radius:12px;font-size:12px;line-height:1.4;cursor:pointer;font-family:inherit;overflow:visible;transition:color .15s;display:flex;align-items:center;gap:10px}.chat-detail-history-tag{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;min-width:28px;height:28px;border-radius:10px;background:hsla(0,0%,100%,.92);box-shadow:inset 0 0 0 1px rgba(15,23,42,.06);font-size:14px;line-height:1}.chat-detail-history-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.chat-detail-history-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden;text-overflow:ellipsis;white-space:normal}.chat-detail-history-meta{display:flex;align-items:center;gap:8px;min-width:0}.chat-detail-history-provider{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:1px 8px;border-radius:999px;border:1px solid transparent;font-size:10px;font-weight:700;letter-spacing:.04em;line-height:1.2}.chat-detail-history-provider--apple{color:#e11d48;background:rgba(255,241,242,.98);border-color:rgba(251,113,133,.38)}.chat-detail-history-provider--banana{color:#a16207;background:hsla(55,97%,88%,.98);border-color:rgba(250,204,21,.42)}.chat-detail-history-provider-icon{font-size:11px;line-height:1}.chat-detail-history-provider-icon,.chat-detail-history-provider-label{display:inline-flex;align-items:center}.chat-detail-history-item:hover{color:var(--text)}.chat-detail-history-loading{display:flex;justify-content:center;padding:12px}.chat-detail-empty{font-size:12px;color:var(--text-subtle);margin:0}.chat-asp{margin-top:4px;padding:12px 0 4px;border-top:1px solid var(--border)}.chat-asp-header{width:100%;justify-content:space-between;padding:4px 0;border:none;background:none;cursor:pointer;font-family:inherit}.chat-asp-header,.chat-asp-header-title{display:flex;align-items:center;color:var(--text)}.chat-asp-header-title{gap:8px;font-size:var(--size-body-sm);font-weight:600}.chat-asp-saving{font-size:var(--size-micro);color:var(--asp-accent);animation:chatBlink 1.2s linear infinite}.chat-asp-body{margin-top:12px;display:flex;flex-direction:column;gap:16px}.chat-asp-tabs{display:flex;gap:var(--space-1);overflow-x:auto;border-bottom:1px solid var(--border)}.chat-asp-tab{display:inline-flex;align-items:center;gap:var(--space-1);white-space:nowrap;padding:var(--space-2) var(--space-3);background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--text-muted);font:var(--caption);font-size:var(--size-tiny);cursor:pointer;transition:color .12s,border-color .12s}.chat-asp-tab:hover{color:var(--text)}.chat-asp-tab.active{color:var(--asp-sel-text);border-bottom-color:var(--asp-sel-border);font-weight:700}.chat-asp-textarea{resize:vertical;min-height:64px;font-family:inherit}.wb-entry{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-sunken);margin-bottom:var(--space-2)}.wb-entry-off{opacity:.55}.wb-entry-head{display:flex;align-items:center;justify-content:space-between}.wb-toggle{display:inline-flex;align-items:center;gap:var(--space-1);font:var(--caption);font-size:var(--size-tiny);color:var(--text-muted);cursor:pointer}.wb-entry-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.wb-meta-item{display:inline-flex;align-items:center;gap:var(--space-1);font:var(--caption);font-size:var(--size-tiny);color:var(--text-muted)}.wb-meta-item .rp-stat-num{width:56px}.chat-asp-field{position:relative}.chat-asp-row{display:flex;justify-content:space-between}.chat-asp-label,.chat-asp-row{align-items:center;margin-bottom:6px}.chat-asp-label{display:inline-flex;gap:6px;font-size:var(--size-tiny);color:var(--text-muted)}.chat-asp-label-strong{font-weight:600;color:var(--text);font-size:var(--size-tiny)}.chat-asp-hint{font-size:var(--size-micro);color:var(--text-subtle);margin:0 0 10px}.chat-asp-divider{height:1px;background:var(--border)}.chat-asp-badge{font-size:var(--size-micro);color:var(--asp-sel-text);background:var(--asp-sel-bg);padding:2px 8px;border-radius:4px}.chat-detail-delete{margin-top:8px;padding:8px 12px;border:1px solid rgba(239,68,68,.3);background:transparent;color:var(--red);border-radius:8px;font-size:12px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:6px;justify-content:center;font-family:inherit;transition:background .15s,border-color .15s}.chat-detail-delete:hover{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.5)}.chat-confirm-mask{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1000;padding:14px}.chat-confirm{width:100%;max-width:420px;background:var(--surface-raised);border:1px solid var(--border);border-radius:14px;padding:20px 24px 18px;box-shadow:0 20px 60px rgba(0,0,0,.4)}.chat-confirm-title{font-size:14px;font-weight:700;color:var(--text);margin:0 0 8px}.chat-confirm-msg{font-size:13px;color:var(--text-muted);margin:0 0 16px;line-height:1.6}.chat-confirm-actions{display:flex;justify-content:flex-end;gap:8px}.chat-confirm-btn{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;border:1px solid var(--border-strong);background:transparent;color:var(--text);transition:background .15s,border-color .15s}.chat-confirm-btn.secondary:hover{background:var(--surface-sunken)}.chat-confirm-btn.danger{background:var(--red);border-color:var(--red);color:#fff}.chat-confirm-btn.danger:hover{opacity:.9}.chat-confirm-btn:disabled{opacity:.6;cursor:not-allowed}.chat-modal-mask{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:40px 16px 16px}.chat-modal{width:100%;max-width:1100px;max-height:calc(100vh - 80px);background:var(--surface);border:1px solid var(--border);border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.4)}.chat-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border)}.chat-modal-title{font-family:var(--font-heading);font-size:18px;font-weight:700;color:var(--text);margin:0}.chat-modal-close{width:32px;height:32px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background .15s}.chat-modal-close:hover{background:var(--surface-sunken)}.chat-modal-controls{padding:12px 20px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-bottom:1px solid var(--border)}.chat-modal-search{flex:1 1 240px;min-width:200px;padding:8px 12px;border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--text);border-radius:8px;font-size:14px;font-family:inherit;outline:none;transition:border-color .15s}.chat-modal-search:focus{border-color:var(--brand)}.chat-modal-search::-moz-placeholder{color:var(--text-disabled)}.chat-modal-search::placeholder{color:var(--text-disabled)}.chat-modal-filters{display:flex;gap:6px;flex-wrap:wrap}.chat-modal-filter{padding:6px 12px;border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--text-muted);border-radius:999px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s}.chat-modal-filter:hover{border-color:var(--brand);color:var(--text)}.chat-modal-filter.active{background:var(--brand-gradient);border-color:transparent;color:#fff}.chat-modal-filters-row2{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.chat-modal-select{flex:1;min-width:140px;padding:6px 10px;background:var(--surface-raised);color:var(--text)}.chat-modal-reset,.chat-modal-select{border:1px solid var(--border-strong);border-radius:8px;font-size:12px;font-family:inherit;cursor:pointer}.chat-modal-reset{padding:6px 14px;background:transparent;color:var(--text-muted);font-weight:600;transition:all .15s}.chat-modal-reset:hover{border-color:var(--brand);color:var(--brand)}.chat-modal-body{flex:1;overflow-y:auto;padding:16px 20px 24px}@media (max-width:768px){.chat-page{height:calc(100vh - 56px);height:calc(100dvh - 56px)}.chat-sidebar{width:100%;position:absolute;inset:0;z-index:10;background:var(--surface)}.chat-sidebar.hidden{display:none}.chat-main{position:absolute;inset:0;z-index:11}.chat-main.hidden{display:none}.chat-main-back{display:flex}.chat-detail{position:absolute;inset:0;z-index:12;width:100%;max-width:100%;min-width:0;border-left:none}.chat-detail.hidden{display:none}.chat-modal{max-width:100%;max-height:calc(100vh - 40px);border-radius:12px}.chat-modal-mask{padding:20px 12px 12px}.chat-msg{max-width:85%}.chat-msg.character.chat-msg--streaming:not(.chat-msg--rp):not(.chat-msg--novel){width:85%;max-width:85%}.chat-messages-inner{padding:16px}.chat-main-header{padding:var(--space-2) var(--space-3);gap:var(--space-2)}.chat-main-avatar{width:40px;height:40px}.chat-main-newchat .chat-lang-trigger{width:32px;padding:0;justify-content:center;gap:0}.chat-main-newchat .chat-lang-trigger .chat-lang-trigger-value,.chat-main-newchat .chat-lang-trigger>svg:last-child{display:none}.chat-main-script-btn{width:30px;padding:0;justify-content:center;gap:0}.chat-main-script-btn>span{display:none}.chat-main-newchat .chat-lang-menu{min-width:220px;max-width:calc(100vw - var(--space-3) - var(--space-3))}.chat-main-namecol{flex:1 1 auto;min-width:0}.chat-hdr-stats{flex-wrap:nowrap;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none}.chat-hdr-stats::-webkit-scrollbar{display:none}}.rp-statusbar{margin-top:8px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--rp-mood-neutral);font-size:12px;display:flex;flex-direction:column;gap:7px;transition:background .25s ease}.rp-statusbar[data-mood=rose]{background:var(--rp-mood-rose)}.rp-statusbar[data-mood=pink]{background:var(--rp-mood-pink)}.rp-statusbar[data-mood=amber]{background:var(--rp-mood-amber)}.rp-statusbar[data-mood=slate]{background:var(--rp-mood-slate)}.rp-statusbar[data-mood=neutral]{background:var(--rp-mood-neutral)}.rp-mood-row{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center}.rp-mood-item{color:var(--text);font-weight:500}.rp-mood-key{color:var(--text-subtle);margin-right:5px;font-weight:400}.rp-bar-row{display:flex;align-items:center;gap:8px}.rp-bar-label{width:56px;flex-shrink:0;color:var(--text-subtle);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-bar-track{flex:1;height:7px;border-radius:999px;background:var(--border-strong);overflow:hidden}.rp-bar-fill{display:block;height:100%;border-radius:999px;background:var(--rp-c-auto);transition:width .25s ease}.rp-bar-val{width:26px;text-align:right;font-variant-numeric:tabular-nums;color:var(--text-muted)}.rp-bar-stage,.rp-bar-val{flex-shrink:0;font-size:11px}.rp-bar-stage{color:var(--text);font-weight:500}.rp-delta{flex-shrink:0;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}.rp-delta[data-dir=up]{color:var(--rp-c-emerald)}.rp-delta[data-dir=down]{color:var(--rp-c-rose)}.rp-bar-fill[data-stage=hostile]{background:var(--rp-c-red)}.rp-bar-fill[data-stage=wary]{background:var(--rp-c-orange)}.rp-bar-fill[data-stage=stranger]{background:var(--rp-c-neutral)}.rp-bar-fill[data-stage=familiar]{background:var(--rp-c-sky)}.rp-bar-fill[data-stage=trust]{background:var(--rp-c-emerald)}.rp-bar-fill[data-stage=intimate]{background:var(--rp-c-pink)}.rp-bar-fill[data-stage=romantic]{background:var(--rp-c-rose)}.rp-bar-fill[data-color=red]{background:var(--rp-c-red)}.rp-bar-fill[data-color=orange]{background:var(--rp-c-orange)}.rp-bar-fill[data-color=amber]{background:var(--rp-c-amber)}.rp-bar-fill[data-color=emerald]{background:var(--rp-c-emerald)}.rp-bar-fill[data-color=sky]{background:var(--rp-c-sky)}.rp-bar-fill[data-color=blue]{background:var(--rp-c-blue)}.rp-bar-fill[data-color=purple]{background:var(--rp-c-purple)}.rp-bar-fill[data-color=pink]{background:var(--rp-c-pink)}.rp-bar-fill[data-color=rose]{background:var(--rp-c-rose)}.rp-options{margin-top:10px;display:flex;flex-direction:column;gap:6px}.rp-options-title{font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-subtle);margin-bottom:2px}.rp-option-btn{width:100%;text-align:left;padding:8px 11px;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface-sunken);color:var(--text);font-size:13px;line-height:1.35;cursor:pointer;transition:border-color .15s,background .15s}.rp-option-btn:hover:not(:disabled){border-color:var(--brand);background:var(--surface-pink-soft)}.rp-option-btn:disabled{opacity:.5;cursor:not-allowed}.rp-option-num{color:var(--brand);font-weight:600;margin-right:7px;font-variant-numeric:tabular-nums}.chat-modepick-mask{position:absolute;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:14px;background:var(--scrim-mask);animation:chatModepickFadeIn .2s ease-out;transition:background .45s ease}.chat-modepick-mask.closing{background:transparent;pointer-events:none}@keyframes chatModepickFadeIn{0%{opacity:0}to{opacity:1}}.chat-modepick-card{width:min(calc(100vw - 32px),430px);display:flex;flex-direction:column;gap:8px;padding:10px;background:var(--surface);border:1px solid var(--border-strong);border-radius:16px;box-shadow:0 18px 48px rgba(15,23,42,.16);transform-origin:center center;transition:transform .48s cubic-bezier(.4,0,.2,1),opacity .48s cubic-bezier(.4,0,.2,1);will-change:transform,opacity}.chat-modepick-head{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 8px 4px;text-align:center}.chat-modepick-title{margin:0;font-family:var(--font);font-size:21px;font-weight:800;line-height:1.2;color:var(--brand);letter-spacing:0}.chat-modepick-panel.chat-mode-compare-menu{width:100%;padding:8px;border-radius:14px;background:var(--surface);overflow:visible}.chat-modepick-panel .chat-mode-model-summary{padding-top:0}.chat-modepick-panel .chat-mode-group{padding:8px}.chat-modepick-panel .chat-mode-group-options--compare{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-modepick-panel .chat-mode-compare-option{min-height:44px;padding:8px}.chat-modepick-recommended{box-shadow:inset 0 0 0 1px rgba(248,84,129,.1)}.chat-modepick-recommend-badge{position:absolute;top:-7px;right:-6px;z-index:3;display:inline-flex;align-items:center;justify-content:center;min-height:18px;padding:0 7px;border-radius:999px;background:var(--brand);border:1px solid color-mix(in srgb,var(--surface) 82%,transparent);color:#fff;font-size:9px;font-weight:800;line-height:1;box-shadow:0 4px 10px rgba(244,63,111,.18)}.chat-modepick-price-free{flex:0 0 auto;display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:999px;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.18);color:#15803d;font-size:11px;font-weight:800}html.dark .chat-modepick-card,html.dark .chat-modepick-panel.chat-mode-compare-menu{background:var(--surface)}@media (max-width:640px){.chat-modepick-mask{padding:12px}.chat-modepick-card{width:min(calc(100vw - 24px),430px);gap:6px;padding:8px;border-radius:14px}.chat-modepick-head{padding:6px 6px 2px}.chat-modepick-title{font-size:19px}.chat-modepick-panel.chat-mode-compare-menu{padding:6px;gap:6px}.chat-modepick-panel .chat-mode-group{padding:7px}.chat-modepick-panel .chat-mode-group-title{font-size:14px}.chat-modepick-panel .chat-mode-group-price-hint,.chat-modepick-panel .chat-mode-group-usecase,.chat-modepick-panel .chat-mode-model-text{font-size:11px}.chat-modepick-panel .chat-mode-group-title-row{flex-direction:row;align-items:baseline}.chat-modepick-panel .chat-mode-group-price-hint{white-space:nowrap}.chat-modepick-panel .chat-mode-group-options--compare{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-modepick-panel .chat-mode-compare-option{min-height:40px;padding:6px}.chat-modepick-panel .chat-mode-compare-price,.chat-modepick-panel .chat-mode-compare-provider,.chat-modepick-price-free{min-height:22px;padding:0 7px;font-size:10px}}@media (max-width:360px){.chat-modepick-panel .chat-mode-group-options--compare{grid-template-columns:1fr}}.chat-asp-input{width:100%;padding:7px 10px;border:1px solid var(--asp-chip-border);border-radius:8px;background:var(--surface-raised);color:var(--text);font-size:var(--size-body-sm);outline:none}.chat-asp-input:focus{border-color:var(--asp-sel-border)}.chat-asp-input::-moz-placeholder{color:var(--text-disabled)}.chat-asp-input::placeholder{color:var(--text-disabled)}.asp-input-sm{width:96px}.rp-stat-edit{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--asp-chip-border);border-radius:10px;background:var(--surface-sunken);margin-bottom:8px}.rp-stat-edit-row{display:flex;gap:6px;align-items:center}.rp-stat-emoji{width:52px;flex-shrink:0;text-align:center}.rp-stat-num{width:64px;flex-shrink:0}.rp-stat-remove{flex-shrink:0;padding:6px 10px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-raised);color:var(--text-muted);font-size:var(--size-tiny);cursor:pointer}.rp-stat-remove:hover{border-color:var(--brand);color:var(--brand)}.rp-stat-add{width:100%;padding:8px;border:1px dashed var(--border-strong);border-radius:8px;background:transparent;color:var(--text-muted);font-size:var(--size-tiny);cursor:pointer}.rp-stat-add:hover{border-color:var(--brand);color:var(--brand)}.rp-stat-colors{display:flex;flex-wrap:wrap;gap:var(--space-1)}.rp-stat-color{width:20px;height:20px;border-radius:50%;border:2px solid transparent;padding:0;cursor:pointer;box-shadow:inset 0 0 0 1px var(--border)}.rp-stat-color.active{border-color:var(--text)}.rp-stat-color[data-color=red]{background:var(--rp-c-red)}.rp-stat-color[data-color=orange]{background:var(--rp-c-orange)}.rp-stat-color[data-color=amber]{background:var(--rp-c-amber)}.rp-stat-color[data-color=emerald]{background:var(--rp-c-emerald)}.rp-stat-color[data-color=sky]{background:var(--rp-c-sky)}.rp-stat-color[data-color=blue]{background:var(--rp-c-blue)}.rp-stat-color[data-color=purple]{background:var(--rp-c-purple)}.rp-stat-color[data-color=pink]{background:var(--rp-c-pink)}.rp-stat-color[data-color=rose]{background:var(--rp-c-rose)}.asp-group{display:flex;flex-direction:column}.asp-group-title{display:flex;align-items:baseline;gap:6px;font:var(--caption);font-size:var(--size-tiny);font-weight:600;color:var(--text);margin-bottom:6px}.asp-group-title-hint{font-size:var(--size-micro);font-weight:400;color:var(--text-subtle)}.asp-group-hover-hint{flex:1 1 0;min-width:0;min-height:1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--size-micro);font-weight:400;color:var(--asp-sel-text)}.asp-chips{display:flex;flex-wrap:wrap;gap:6px}.asp-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--asp-chip-border);border-radius:var(--radius-md);background:transparent;color:var(--text-muted);font:var(--caption);font-size:var(--size-tiny);font-family:inherit;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.asp-chip:hover{background:var(--surface-sunken)}.asp-chip.active{border-color:var(--asp-sel-border);background:var(--asp-sel-bg);color:var(--asp-sel-text);font-weight:600}.asp-nsfw-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--asp-sky-border);border-radius:var(--radius-lg);background:var(--asp-sky-bg)}.asp-nsfw-card-title{display:flex;align-items:baseline;gap:6px;font-weight:600}.asp-nsfw-card-hint,.asp-nsfw-card-title{font-size:var(--size-micro);color:var(--asp-sky-text)}.asp-nsfw-card-hint{font-weight:400;opacity:.7}.asp-nsfw-presets{display:flex;flex-wrap:wrap;gap:6px}.asp-preset-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--asp-sky-btn-border);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--asp-sky-text);font:var(--caption);font-size:var(--size-tiny);font-family:inherit;font-weight:500;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.asp-preset-btn:hover{background:var(--asp-sky-bg)}.asp-preset-btn.active{border-color:var(--asp-sky-fill);background:var(--asp-sky-fill);color:#fff;font-weight:600;box-shadow:var(--shadow-sm)}.asp-nsfw-transition{display:flex;align-items:center;gap:6px;padding-left:var(--space-2);font-size:var(--size-micro);color:var(--text-subtle)}.asp-nsfw-modules{display:flex;flex-direction:column;gap:var(--space-2);padding-left:var(--space-3);border-left:2px solid var(--asp-chip-border)}.asp-nsfw-modules-row{display:flex;flex-wrap:wrap;gap:4px}.asp-nsfw-exclusive{display:inline-flex;gap:4px;width:-moz-fit-content;width:fit-content;padding:4px;border:1px solid var(--asp-rose-border);border-radius:var(--radius-md);background:var(--asp-rose-bg)}.asp-info{display:flex;flex-direction:column;gap:4px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-sunken)}.asp-info-title{font:var(--caption);font-size:var(--size-tiny);font-weight:600;color:var(--text)}.asp-info-body{font-size:var(--size-micro);color:var(--text-muted);line-height:1.6;margin:0}.asp-num-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.asp-quick{padding:3px 9px;border:1px solid var(--asp-chip-border);border-radius:var(--radius-md);background:transparent;color:var(--text-muted);font-size:var(--size-micro);font-family:inherit;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.asp-quick:hover{background:var(--surface-sunken)}.asp-quick.active{border-color:var(--asp-sel-border);background:var(--asp-sel-bg);color:var(--asp-sel-text);font-weight:600}.asp-slider-wrap{position:relative;width:100%;max-width:260px}.asp-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:24px;background:transparent;cursor:pointer;outline:none;margin:0}.asp-slider::-webkit-slider-runnable-track{height:4px;border-radius:var(--radius-full);background:var(--asp-chip-border)}.asp-slider::-moz-range-track{height:4px;border-radius:var(--radius-full);background:var(--asp-chip-border)}.asp-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;margin-top:-10px;border-radius:var(--radius-full);background:var(--thumb-icon,none) center /16px 14px no-repeat,var(--asp-sel-text);border:none;box-shadow:0 0 0 2px var(--surface),var(--shadow-sm);cursor:pointer}.asp-slider::-moz-range-thumb{width:24px;height:24px;border-radius:var(--radius-full);background:var(--thumb-icon,none) center /16px 14px no-repeat,var(--asp-sel-text);border:none;box-shadow:0 0 0 2px var(--surface),var(--shadow-sm);cursor:pointer}.asp-slider-ticks{position:relative;height:16px;margin-top:8px}.asp-slider-tick{position:absolute;transform:translateX(-50%);padding:0;border:none;background:transparent;color:var(--text-muted);font-size:var(--size-micro);font-family:inherit;cursor:pointer;white-space:nowrap;transition:color .12s,font-weight .12s}.asp-slider-tick.active{color:var(--asp-sel-text);font-weight:600}.ai-chat-seo-content,.ai-chat-seo-intro{background:var(--surface);color:var(--text)}.ai-chat-seo-intro{padding:40px 20px 26px;text-align:center;border-top:1px solid var(--border)}.ai-chat-seo-title{max-width:860px;margin:0 auto 12px;color:var(--text);font-size:36px;font-weight:800;line-height:1.2;letter-spacing:0}.ai-chat-seo-lead{max-width:760px;margin:0 auto;color:var(--text-muted);font-size:15px;line-height:1.7}.ai-chat-seo-ctas{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:20px}.ai-chat-seo-cta{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 16px;border-radius:var(--radius-full);border:1px solid var(--brand);background:var(--surface-raised);color:var(--brand);font-weight:700;text-decoration:none;box-shadow:var(--shadow-sm);transition:transform .18s,background .18s,border-color .18s}.ai-chat-seo-cta.primary{background:var(--brand);color:#fff;box-shadow:0 10px 22px rgba(244,63,111,.22)}.ai-chat-seo-cta:hover{transform:translateY(-1px);background:var(--surface-pink-soft)}.ai-chat-seo-cta.primary:hover{background:var(--brand-deep)}.ai-chat-seo-content{padding:8px 20px 68px}.ai-chat-seo-content-inner{max-width:920px;margin:0 auto}.ai-chat-seo-section{margin-top:34px}.ai-chat-seo-h2{margin:0 0 14px;color:var(--text);font-size:22px;font-weight:800;line-height:1.25;letter-spacing:0}.ai-chat-seo-list,.ai-chat-seo-p{color:var(--text-muted);font-size:14px;line-height:1.75}.ai-chat-seo-p{margin:0 0 12px}.ai-chat-seo-list{margin:12px 0 0;padding-left:22px}.ai-chat-seo-faqs,.ai-chat-seo-links{display:grid;gap:14px}.ai-chat-seo-faq,.ai-chat-seo-link{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);box-shadow:var(--shadow-sm)}.ai-chat-seo-faq{padding:14px 16px}.ai-chat-seo-faq summary{cursor:pointer;color:var(--text);font-weight:800}.ai-chat-seo-faq p{margin:12px 0 0;color:var(--text-muted);line-height:1.7}.ai-chat-seo-links{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.ai-chat-seo-link{display:block;padding:14px;text-decoration:none;transition:transform .18s,border-color .18s,background .18s}.ai-chat-seo-link:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--brand) 48%,var(--border));background:var(--surface-overlay)}.ai-chat-seo-link strong{display:block;margin-bottom:6px;color:var(--text)}.ai-chat-seo-link span{color:var(--text-muted);line-height:1.55}html.dark .ai-chat-seo-intro{border-top-color:var(--border-d)}html.dark .ai-chat-seo-cta{background:var(--surface-raised);color:var(--brand-pink-dark)}html.dark .ai-chat-seo-cta.primary{background:var(--brand);color:#fff}@media (max-width:767px){.chat-guest-landing{min-height:420px;padding:44px 20px 52px}.ai-chat-seo-intro{padding:34px 18px 22px}.ai-chat-seo-content{padding:6px 18px 54px}.ai-chat-seo-title{font-size:28px;line-height:1.25}.ai-chat-seo-lead{font-size:14px;line-height:1.7}.ai-chat-seo-h2{font-size:20px}}