:root{--bg:#f4f7ff;--panel:#fff;--panel-soft:#eef3ff;--text-main:#1f2a44;--text-sub:#5d6787;--line:#d8e1ff;--primary:#2f6bff;--primary-deep:#1d50cf;--shadow:0 12px 40px #2f6bff29;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#app,.app-shell{width:100%;height:100vh;margin:0;padding:0;overflow:hidden}body{color:var(--text-main);background:radial-gradient(circle at 10% 10%, #ecf2ff 0%, transparent 35%), radial-gradient(circle at 85% 25%, #e6eeff 0%, transparent 30%), var(--bg);margin:0;padding:0;overflow:hidden}.home-page{justify-content:center;align-items:center;height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.chat-page{justify-content:stretch;align-items:stretch;height:100vh;padding:0;display:flex}.hero-gradient-bg{z-index:0;background:radial-gradient(circle at 18% 18%,#5c8aff4d 0%,#0000 34%),radial-gradient(circle at 76% 20%,#40c4ff42 0%,#0000 28%),radial-gradient(circle at 50% 88%,#725cff40 0%,#0000 40%),linear-gradient(135deg,#060c1f 0%,#111f45 45%,#1b1650 100%);position:absolute;inset:0}.hero-grid-mask{z-index:0;background-image:linear-gradient(#94aeff14 1px,#0000 1px),linear-gradient(90deg,#94aeff14 1px,#0000 1px);background-size:34px 34px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 45%,#000 35%,#0000 90%);mask-image:radial-gradient(circle at 50% 45%,#000 35%,#0000 90%)}.hero-noise-layer{z-index:0;opacity:.22;pointer-events:none;background-image:radial-gradient(#a9c7ff42 .6px,#0000 .6px);background-size:4px 4px;position:absolute;inset:0}.star-field{pointer-events:none;z-index:0;background-repeat:repeat;animation:8s linear infinite twinkle;position:absolute;inset:-20%}.star-field-1{background-image:radial-gradient(2px 2px at 12% 18%,#fffffff2,#0000 60%),radial-gradient(1.5px 1.5px at 28% 42%,#b8d9ffe6,#0000 60%),radial-gradient(2px 2px at 56% 24%,#ffffffe6,#0000 65%),radial-gradient(1.6px 1.6px at 74% 52%,#92d6ffe6,#0000 60%),radial-gradient(2px 2px at 86% 32%,#fffffff2,#0000 65%);background-size:420px 320px}.star-field-2{opacity:.8;background-image:radial-gradient(1.6px 1.6px at 10% 68%,#ffffffe6,#0000 62%),radial-gradient(2px 2px at 32% 78%,#97d2ffe6,#0000 62%),radial-gradient(1.5px 1.5px at 52% 66%,#fffffff2,#0000 62%),radial-gradient(1.8px 1.8px at 70% 82%,#abbbffeb,#0000 62%),radial-gradient(2px 2px at 92% 70%,#ffffffe6,#0000 62%);background-size:560px 420px;animation-duration:12s;animation-direction:reverse}.shooting-star{filter:drop-shadow(0 0 8px #b8d9ffcc);z-index:0;pointer-events:none;opacity:0;background:linear-gradient(90deg,#fff0,#b4dcffe6,#fff0);border-radius:99px;width:180px;height:2px;position:absolute;transform:rotate(-25deg)}.shooting-star-1{animation:6.5s ease-in-out infinite meteor;top:16%;left:58%}.shooting-star-2{animation:7.8s ease-in-out 2.4s infinite meteor;top:28%;left:24%}.chat-layout{grid-template-columns:300px minmax(0,1fr);align-items:stretch;gap:0;width:100%;height:100vh;transition:all .3s;display:grid}.chat-layout.sidebar-collapsed{grid-template-columns:60px minmax(0,1fr)}.session-sidebar{width:100%;height:100vh;box-shadow:none;background:#fff;border:none;border-radius:0;flex-direction:column;gap:10px;margin:0;padding:14px;transition:all .3s;display:flex;position:relative}.sidebar-header{border-bottom:1px solid #f0f0f0;flex-direction:column;flex-shrink:0;gap:12px;padding-bottom:16px;display:flex}.session-list{flex:1;padding-top:12px;overflow:hidden auto}.chat-card{width:100%;height:100vh;box-shadow:none;border:none;border-radius:0;margin:0;padding:0}.sidebar-title{margin:0;font-size:16px}.user-info,.sidebar-tip{color:var(--text-sub);margin:0;font-size:12px}.full-width{width:100%}.auth-panel{flex-direction:column;gap:8px;display:flex}.auth-tabs{grid-template-columns:1fr 1fr;gap:8px;display:grid}.auth-input{height:38px;font-size:13px}.auth-btn{border-radius:16px;width:100%;min-width:0;height:62px;font-size:30px}.session-list{flex-direction:column;gap:8px;margin-top:6px;display:flex;overflow-y:auto}.session-item{text-align:left;cursor:pointer;background:#f8faff;border:1px solid #dbe5ff;border-radius:10px;flex-direction:column;gap:4px;padding:8px;display:flex}.session-item.active{background:#edf3ff;border-color:#bdd0ff}.session-title{color:#24304f;font-size:13px}.hero-card,.chat-card{background:var(--panel);width:100%;box-shadow:var(--shadow);border:1px solid #ffffffa6;border-radius:24px;flex:1}.hero-card{text-align:center;padding:72px 52px}.hero-card-home{position:relative;overflow:hidden}.premium-hero{text-align:left;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(145deg,#14224ab8,#1a2d5da3);border:1px solid #a6c4ff7a;grid-template-columns:1.2fr .9fr;gap:22px;width:min(1120px,96vw);animation:.6s heroFadeIn;display:grid;box-shadow:0 28px 60px #060e2875,inset 0 1px #b6d0ff59}.hero-main{padding-right:8px}.premium-title{font-size:48px;line-height:1.15}.premium-title span{background:linear-gradient(90deg,#78a8ff,#8b8eff,#53d2ff);color:#0000;-webkit-background-clip:text;background-clip:text;margin-top:8px;display:block}.hero-tag{color:#d9e6ff;letter-spacing:.8px;background:#5f8bff33;border:1px solid #87afff85;border-radius:999px;width:fit-content;margin:0 auto 12px;padding:4px 10px;font-size:12px}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.hero-sub-btn{min-width:220px;height:56px;font-size:24px}.premium-btn{min-width:220px;height:56px;font-size:24px;transition:transform .2s,box-shadow .2s;box-shadow:0 12px 24px #ff916c3d}.premium-btn:hover{transform:translateY(-2px)scale(1.01);box-shadow:0 16px 28px #ff916c52}.premium-sub-btn{color:#dce9ff;background:#6389ec38;border-color:#a9c7ff99;transition:all .2s}.premium-sub-btn:hover{background:#79a3ff59;border-color:#b7d2ffe6;transform:translateY(-1px)}.hero-side-cards{align-content:center;gap:12px;display:grid}.hero-feature-card{background:linear-gradient(145deg,#213870ad,#1a2d5fa3);border:1px solid #7fa6ff66;border-radius:14px;padding:14px;transition:transform .2s,box-shadow .2s;box-shadow:0 10px 22px #0713365c}.hero-feature-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px #2d4a822e}.hero-feature-card h4{color:#e2ecff;margin:0 0 6px;font-size:15px}.hero-feature-card p{color:#b9cfff;margin:0;font-size:13px;line-height:1.55}.stat-card{color:#fff;background:linear-gradient(130deg,#245ad7f2,#4d82ffeb);border-color:#8fb2ff8c}.stat-card h4{color:#fff}.stat-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:8px;display:grid}.stat-grid strong{font-size:18px;line-height:1.2;display:block}.stat-grid span{opacity:.92;margin-top:2px;font-size:11px;display:block}.hero-user-tip{color:#b9ceff;margin:16px 0 0;font-size:13px}.hero-glow{filter:blur(48px);z-index:0;pointer-events:none;border-radius:50%;width:280px;height:280px;position:absolute}.hero-glow-left{background:#5c8dff57;top:12%;left:8%}.hero-glow-right{background:#51dbff47;bottom:14%;right:10%}.hero-glow-center{background:#8c65ff38;top:25%;left:42%}.floating-orb{pointer-events:none;z-index:1;opacity:0;background:linear-gradient(145deg,#fff,#8eb6ff);border-radius:50%;width:8px;height:8px;animation:9s linear infinite floatUp;position:absolute;box-shadow:0 0 14px #618dffb3}.orb-1{animation-delay:0s;bottom:-30px;left:8%}.orb-2{width:10px;height:10px;animation-delay:1.5s;bottom:-50px;left:22%}.orb-3{animation-delay:3.2s;bottom:-24px;left:48%}.orb-4{width:9px;height:9px;animation-delay:2.2s;bottom:-42px;left:66%}.orb-5{animation-delay:4.4s;bottom:-38px;left:80%}.orb-6{width:7px;height:7px;animation-delay:5.1s;bottom:-28px;left:92%}.home-page .hero-card{z-index:1;position:relative}.auth-modal-mask{z-index:30;background:#131f3a6b;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.auth-modal{background:#fff;border:1px solid #8bb1ffb3;border-radius:24px;flex-direction:column;gap:12px;width:min(700px,94vw);padding:22px 24px 24px;display:flex;box-shadow:0 24px 80px #08143985}.premium-auth-modal{color:#e7efff;background:linear-gradient(#0c1942f2,#11214ff5);border:1px solid #92b4ffb8;animation:.22s ease-out modalPop}.auth-title{color:#edf3ff;margin:2px 0 0;font-size:38px}.auth-subtitle{color:#b7ccff;margin:0 0 2px;font-size:26px}.auth-close-btn{color:#dbe8ff;cursor:pointer;background:#759cff33;border:1px solid #a3c2ffcc;border-radius:50%;align-self:flex-end;width:28px;height:28px;font-size:18px;line-height:1}.auth-error{margin:0}.auth-tabs{gap:12px;margin-top:2px}.auth-tabs .sub-btn{color:#d8e7ff;background:#7698f033;border-color:#aac9ff9e;border-radius:16px;width:100%;height:56px;font-size:26px;font-weight:600}.auth-tabs .sub-btn.active{color:#fff;background:linear-gradient(120deg,#3c6cffe6,#5e8fffdb);border-color:#8eb5fff5}.auth-input::placeholder{color:#d3e1ffb3}.password-input-container{flex:1;min-width:0;position:relative}.password-input{width:100%;padding-right:50px}.password-toggle{cursor:pointer;z-index:1;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;margin:0;padding:8px;transition:background-color .2s;display:flex;position:absolute;top:50%;right:16px;transform:translateY(-50%)}.password-toggle:hover{background-color:#ffb79733}.eye-icon{color:#ff8e6a;width:20px;height:20px;transition:color .2s,transform .2s;display:inline-block;position:relative}.password-toggle:hover .eye-icon{color:#ff758c;transform:scale(1.1)}.eye-icon:before{content:"";background:#ffffff1a;border:2px solid;border-radius:50%;width:16px;height:16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.eye-icon:after{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #fffc}.eye-icon.eye-closed:after{content:"";width:16px;height:2px;box-shadow:none;background:currentColor;border-radius:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.eye-icon.eye-closed:before{border-radius:50%;width:16px;height:16px}.password-group{margin-bottom:16px}.auth-btn{border-radius:16px;height:62px;font-size:30px}.auth-btn:disabled{opacity:.72}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes modalPop{0%{opacity:0;transform:scale(.96)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes floatUp{0%{opacity:0;transform:translateY(0)translate(0)}10%{opacity:.9}50%{opacity:.72;transform:translateY(-46vh)translate(18px)}90%{opacity:.1}to{opacity:0;transform:translateY(-90vh)translate(-12px)}}@keyframes twinkle{0%,to{opacity:.42;transform:translateY(0)}50%{opacity:.9;transform:translateY(-8px)}}@keyframes meteor{0%,70%,to{opacity:0;transform:translate(0,0)rotate(-25deg)}75%{opacity:1}95%{opacity:0;transform:translate(-220px,150px)rotate(-25deg)}}.hero-title{letter-spacing:1px;margin:0;font-size:44px}.hero-desc{width:min(560px,100%);color:var(--text-sub);margin:20px auto 34px;font-size:18px;line-height:1.7}.primary-btn,.send-btn,.mode-btn{cursor:pointer;border:none;transition:all .2s}.primary-btn,.send-btn{color:#fff;background:linear-gradient(135deg,#ff8e6a,#ff758c);font-weight:600}.primary-btn{border-radius:14px;min-width:180px;height:48px;font-size:16px}.primary-btn:hover,.send-btn:hover{background:linear-gradient(135deg,#ff758c,#ff8e6a);transform:translateY(-1px)}.chat-card{background:#fff;flex-direction:column;width:100%;height:100vh;margin:0;padding:0;display:flex;position:relative;overflow:hidden}.chat-header{border-bottom:1px solid var(--line);background:linear-gradient(#fafdff,#f3f8ff);justify-content:space-between;align-items:center;gap:20px;width:100%;padding:22px 26px;display:flex}.header-left{align-items:center;gap:14px;display:flex}.menu-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;width:32px;height:32px;padding:4px;display:none}.menu-toggle span{background:#8f4030;border-radius:1px;width:24px;height:2px;transition:all .3s;display:block}.menu-toggle:hover span{background:#ff8e6a}.header-title-wrap{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.sidebar-overlay{display:none}.context-menu{z-index:1000;background:#fff;border:1px solid #0000001a;border-radius:12px;min-width:120px;padding:8px 0;position:fixed;box-shadow:0 8px 32px #0003}.context-menu-item{text-align:left;color:#333;cursor:pointer;background:0 0;border:none;width:100%;padding:10px 16px;font-size:14px;transition:background .2s;display:block}.context-menu-item:hover{background:#ffb79733}.context-menu{display:none}.mode-row{justify-content:space-between;align-items:flex-start;gap:12px;width:100%;display:flex}.action-group{flex-shrink:0;gap:10px;margin-bottom:12px;display:flex}@media (width<=768px){.context-menu{display:block}.mode-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chat-body{padding:10px}}.header-avatar{cursor:pointer;border:2px solid #e6f0ff;border-radius:50%;width:40px;height:40px;transition:all .2s;overflow:hidden}.header-avatar:hover{border-color:#b3d1ff;transform:scale(1.05)}.header-avatar img{width:100%;height:100%}.sidebar-title-wrapper{align-items:center;gap:6px;display:flex}.help-icon-mini{cursor:pointer;justify-content:center;align-items:center;display:flex;position:relative}.help-icon-mini-inner{color:#999;border:1px solid #ccc;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:12px;font-weight:500;transition:all .2s;display:flex}.help-icon-mini:hover .help-icon-mini-inner{color:#ff8e6a;border-color:#ff8e6a}.help-tip{color:#444;z-index:1000;background:#fff;border:1px solid #eee;border-radius:10px;min-width:300px;padding:14px;font-size:13px;line-height:1.5;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 4px 16px #0000001f}.help-tip p{margin:0 0 8px}.help-tip p:last-child{margin-bottom:0}.help-email{color:#ff8e6a;font-family:monospace;font-weight:600}.help-tip:before{content:"";object-fit:cover;background:#fff;border-top:1px solid #f0f0f0;border-right:1px solid #f0f0f0;width:12px;height:12px;position:absolute;top:-6px;right:12px;transform:rotate(-45deg)}.chat-header h2{margin:0 0 6px;font-size:22px}.header-actions{align-items:center;gap:12px;display:flex}.chat-id{color:var(--text-sub);white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;margin:0;font-size:13px;overflow:hidden}.mode-badge{color:var(--primary-deep);background:#eaf1ff;border:1px solid #d4e0ff;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:600}.error-notice{color:#b42222;background:#fff2f2;border:1px solid #ffcfcf;border-radius:10px;margin:10px 16px 0;padding:10px 12px;font-size:13px;line-height:1.5}.chat-body{background:linear-gradient(#fcfdff 0%,#f7faff 100%);flex:1;padding:25px 20px 20px;overflow-y:auto}.message-row{width:100%;margin-bottom:16px;display:flex}.message-content{align-items:flex-start;gap:10px;max-width:100%;padding-bottom:28px;display:flex;position:relative}.message-content-user{flex-direction:row-reverse;margin-left:auto}.message-content-ai{margin-right:auto}.message-bubble{text-align:left;white-space:pre-wrap;word-break:break-word;border-radius:14px;max-width:min(72vw,700px);padding:12px 14px;font-size:15px;line-height:1.65;position:relative;box-shadow:0 6px 18px #42577a24}.message-tools{opacity:0;pointer-events:none;gap:6px;margin:-8px -4px;padding:8px 4px;transition:opacity .15s,transform .15s;display:flex;position:absolute;bottom:4px;right:8px;transform:translateY(-2px)}.download-link{color:#fff;background:linear-gradient(135deg,#ff8e6a,#ff758c);border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #ff8e6a4d}.download-link:hover{color:#fff;text-decoration:none;transform:translateY(-2px);box-shadow:0 6px 16px #ff8e6a66}.download-link:active{transform:translateY(0);box-shadow:0 2px 8px #ff8e6a4d}.download-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff8e6a,#ff758c);border:none;border-radius:8px;outline:none;align-items:center;gap:4px;padding:6px 12px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #ff8e6a4d}.download-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ff8e6a66}.download-btn:active{transform:translateY(0);box-shadow:0 2px 8px #ff8e6a4d}.download-preview{vertical-align:middle;display:inline-block}.message-tools:hover{opacity:1;pointer-events:auto;transform:translateY(0)}.message-bubble:hover .message-tools{opacity:.01;pointer-events:auto}.message-bubble:hover .message-tools:hover{opacity:1;transform:translateY(0)}.tool-btn{color:#465783;cursor:pointer;background:#f6f8ff;border:1px solid #cfd9f8;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:inline-flex}.tool-btn svg{fill:currentColor;width:14px;height:14px}.tool-btn:hover{color:#2f4f9e;background:#eaf0ff}.message-avatar{-webkit-user-select:none;user-select:none;border-radius:50%;flex:0 0 32px;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;transition:all .2s;display:flex;overflow:hidden;box-shadow:0 4px 10px #32487433}.message-avatar.avatar-user{cursor:pointer;border:2px solid #ffb797cc}.message-avatar.avatar-user:hover{border-color:#ff916ceb;transform:scale(1.08);box-shadow:0 6px 16px #a561404d}.message-avatar img{object-fit:cover;width:100%;height:100%}.bubble-user{color:#fff;background:linear-gradient(145deg,#2e6bff,#2358d6);border:1px solid #255fe5}.bubble-ai{color:#24304f;background:#fff;border:1px solid #dbe5ff}.markdown-body{white-space:normal;word-wrap:break-word;word-break:break-word;color:#333;font-size:15px;line-height:1.7}.markdown-body p{margin:.6em 0}.markdown-body h1,.markdown-body h2,.markdown-body h3{margin:0 0 10px;line-height:1.35}.markdown-body ul,.markdown-body ol{margin:.5em 0;padding-left:1.5em}.markdown-body pre{background:#f3f6ff;border:1px solid #d9e4ff;border-radius:10px;margin:8px 0;padding:10px 12px;overflow-x:auto}.markdown-body code{font-family:Consolas,Courier New,monospace;font-size:13px}.markdown-body hr{border:0;border-top:2px solid #e0e6ff;margin:1.5em 0}.markdown-body img{border-radius:8px;max-width:100%;margin:8px 0}.markdown-body .image-link{flex-direction:column;align-items:center;margin:6px 3px;text-decoration:none;display:inline-flex}.markdown-body .image-thumbnail{object-fit:cover;border-radius:4px;width:40px;height:35px;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 4px #00000014}.markdown-body .image-thumbnail:hover{transform:scale(1.05);box-shadow:0 3px 12px #00000026}.markdown-body .image-caption{color:#666;text-overflow:ellipsis;white-space:nowrap;max-width:80px;margin-top:3px;font-size:11px;overflow:hidden}.chat-footer{border-top:1px solid var(--line);background:#fff;padding:14px 16px 16px}.footer-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.scroll-bottom-btn{z-index:8;color:#2a52b8;cursor:pointer;background:#edf3ff;border:1px solid #c5d6ff;border-radius:999px;height:34px;padding:0 14px;font-size:13px;position:absolute;bottom:132px;right:22px;box-shadow:0 6px 16px #2a52b82e}.stream-debug-panel{z-index:9;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#f8fbfff5;border:1px dashed #c7d5ff;border-radius:10px;width:min(340px,88vw);padding:8px 10px;position:absolute;bottom:182px;right:16px;display:none!important}.stream-debug-panel summary{cursor:pointer;color:#2a52b8;font-size:12px;font-weight:700}.stream-debug-grid{gap:4px;margin-top:6px;display:grid}.stream-debug-grid p{color:#394a73;word-break:break-word;margin:0;font-size:12px;line-height:1.4}.mode-group{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.action-group{gap:10px;margin-bottom:12px;display:flex}.mode-btn{color:#455171;background:var(--panel-soft);border:1px solid #0000;border-radius:10px;height:36px;padding:0 14px;font-size:13px}.mode-btn.active{color:#ff9a6a;background:#fff8f5;border-color:#ffd4b8;font-weight:600}.mode-btn:disabled,.send-btn:disabled{cursor:not-allowed;opacity:.6}.sub-btn{color:#3f4f78;background:#f5f8ff;border:1px solid #cfd9f8;border-radius:10px;height:34px;padding:0 12px;font-size:13px}.stop-btn{color:#c03a3a;background:#fff3f3;border-color:#ffcaca}.retry-btn{color:#2b56c5;background:#edf3ff;border-color:#cddcff}.session-btn{color:#2a52b8;background:#f0f5ff;border-color:#c8d7ff}.sub-btn:disabled{cursor:not-allowed;opacity:.6}.composer{align-items:center;gap:10px;display:flex}.composer-input{resize:none;box-sizing:border-box;border:1px solid #ccd9ff;border-radius:12px;outline:none;flex:1;min-height:44px;max-height:144px;padding:10px 14px;font-family:inherit;font-size:15px;line-height:20px;overflow:hidden}.composer-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2f6bff24}.send-btn{white-space:nowrap;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:100px;min-height:44px;font-size:15px;display:flex}@media (width<=768px){.premium-hero{text-align:center;grid-template-columns:1fr;gap:14px}.hero-main{padding-right:0}.premium-title{font-size:34px}.hero-side-cards{text-align:left}.stat-grid{grid-template-columns:1fr;gap:6px}.home-page{padding:12px}.hero-card{padding:36px 18px}.hero-actions{flex-direction:column;gap:10px}.hero-title{margin-bottom:12px;font-size:28px}.hero-desc{font-size:15px;line-height:1.6}.hero-actions .primary-btn,.hero-actions .sub-btn,.hero-actions .premium-sub-btn,.hero-actions .hero-sub-btn{border-radius:12px;min-width:200px;height:48px;padding:0 20px;font-size:15px}}@media (width<=1024px){.chat-page{padding:14px}.chat-card{border-radius:16px;width:100%;height:96vh}.chat-header{padding:16px}.chat-body{padding:14px}.chat-footer{padding:12px}.scroll-bottom-btn{bottom:144px;right:14px}.stream-debug-panel{bottom:184px;right:10px}}.home-page{background:#fff4ec}.hero-gradient-bg{background:radial-gradient(circle at 14% 18%,#ffc49d75 0%,#0000 34%),radial-gradient(circle at 85% 12%,#ffd6ae6b 0%,#0000 36%),radial-gradient(circle at 78% 80%,#ffa98b52 0%,#0000 34%),linear-gradient(135deg,#fff5ee 0%,#ffe9de 48%,#ffe5d8 100%)}.hero-grid-mask{background-image:radial-gradient(#ffb78c2e 1px,#0000 1px);background-size:8px 8px;-webkit-mask-image:radial-gradient(circle at 50% 45%,#000 28%,#0000 88%);mask-image:radial-gradient(circle at 50% 45%,#000 28%,#0000 88%)}.hero-noise-layer{opacity:.18;background-image:radial-gradient(#ffa17538 .7px,#0000 .7px)}.warm-blob{filter:blur(42px);pointer-events:none;z-index:0;border-radius:50%;width:340px;height:340px;animation:8s ease-in-out infinite breathe;position:absolute}.warm-blob-1{background:#ffb08475;top:-20px;left:-40px}.warm-blob-2{background:#ffcd9e6b;animation-delay:1.3s;top:8%;right:3%}.warm-blob-3{background:#ff907c57;animation-delay:2.8s;bottom:-80px;right:22%}.spark{z-index:0;pointer-events:none;background:radial-gradient(circle,#fffffffa,#ffb49466 65%,#0000 100%);border-radius:50%;width:10px;height:10px;animation:9s linear infinite floatSoft;position:absolute}.spark-1{animation-delay:.2s;bottom:-18px;left:20%}.spark-2{width:8px;height:8px;animation-delay:1.7s;bottom:-24px;left:34%}.spark-3{width:9px;height:9px;animation-delay:3.1s;bottom:-22px;left:64%}.spark-4{width:7px;height:7px;animation-delay:4.4s;bottom:-26px;left:82%}.premium-hero{text-align:center;background:linear-gradient(145deg,#fffcf9d1,#fff2e9c2);border:1px solid #ffc4a5b8;justify-content:center;display:flex;box-shadow:0 28px 60px #d4875a33,inset 0 1px #ffffffe6}.hero-main{max-width:840px;padding-right:0}.hero-tag{color:#b4513f;background:#ffbc9a3d;border:1px solid #ffaf8794;font-size:20px}.premium-title{font-size:56px}.premium-title span{background:linear-gradient(90deg,#ff8e6a,#ff758c,#ffb06f);-webkit-background-clip:text;background-clip:text}.hero-desc{color:#aa5b4c;width:min(760px,100%);font-size:28px}.hero-side-cards,.hero-glow,.floating-orb,.star-field,.shooting-star{display:none!important}.hero-user-tip{color:#a95b4f;font-size:18px}.primary-btn{min-width:220px;height:56px;font-size:24px}.premium-sub-btn{color:#9f4a3c;background:#ffdecda8;border-color:#ffad8ed6;min-width:220px;height:56px;font-size:24px}.premium-sub-btn:hover{background:#ffcfbce6;border-color:#ff9176eb}.auth-modal{border:1px solid #ffad8fcc;border-radius:24px;width:min(700px,94vw);padding:22px 24px 24px;box-shadow:0 24px 80px #a5614052}.premium-auth-modal{color:#8f4636;background:linear-gradient(#fff9f5fa,#ffede0fa)}.auth-title{color:#8f4030;font-size:42px}.auth-subtitle{color:#b05f4c;font-size:24px}.auth-close-btn{color:#a6594a;background:#ffdcc9b8;border:1px solid #ffad8fcc}.auth-close-btn:hover{background:#ffcbb1f2}.premium-auth-modal .auth-tabs{gap:12px}.premium-auth-modal .auth-tabs .sub-btn{color:#9d4f41;background:#ffe3d2b8;border-color:#ffb290ad;border-radius:16px;width:100%;height:56px;font-size:26px;font-weight:600}.premium-auth-modal .auth-tabs .sub-btn.active{color:#fff;background:linear-gradient(120deg,#ff916ceb,#ff7991db);border-color:#ff9a7cf5}.auth-input{color:#8a3f31;background:#ffffffd1;border-color:#ffb797c7;border-radius:14px;height:54px;font-size:24px}.input-group{align-items:center;gap:16px;margin-bottom:16px;display:flex}.input-label{color:#8f4030;flex-shrink:0;min-width:80px;font-size:18px;font-weight:600}.input-hint{color:#b05f4c;font-size:14px;font-weight:400}.auth-input{color:#8a3f31;background:#fffffff2;border-color:#ffb797c7;border-radius:14px;flex:1;height:64px;padding:0 16px;font-size:18px;transition:all .2s;box-shadow:inset 0 2px 4px #ffb7971a}.auth-input:focus{background:#fff;border-color:#ff916ceb;outline:none;box-shadow:0 0 0 3px #ffb7974d,inset 0 2px 4px #ffb79726}.auth-input::placeholder{color:#aa6658ad;font-style:italic}.auth-btn{border-radius:16px;height:62px;margin-top:8px;font-size:24px}@keyframes breathe{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.78;transform:scale(1.08)}}@keyframes floatSoft{0%{opacity:0;transform:translateY(0)translate(0)}10%{opacity:.8}50%{opacity:.55;transform:translateY(-42vh)translate(10px)}to{opacity:0;transform:translateY(-84vh)translate(-6px)}}@media (width<=768px){.premium-title{font-size:38px}.hero-desc{font-size:20px}.hero-tag{font-size:16px}.primary-btn,.sub-btn,.premium-sub-btn,.hero-sub-btn{min-width:100%;height:56px;font-size:22px}}::-webkit-scrollbar{width:8px!important;height:8px!important}::-webkit-scrollbar-track{background:#f0f8ff80!important;border-radius:4px!important}::-webkit-scrollbar-thumb{background:#add8e699!important;border-radius:4px!important;transition:background .2s!important}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#ffc8b4b3,#add8e6b3)!important}*{scrollbar-width:thin;scrollbar-color:#add8e699 #f0f8ff80}.sidebar-toggle{color:#fff;cursor:pointer;z-index:10;opacity:0;pointer-events:auto;background:linear-gradient(135deg,#ffc4a8,#ffb5bd);border:1px solid #ffc4a880;border-radius:0 10px 10px 0;justify-content:center;align-items:center;width:36px;height:80px;font-size:20px;font-weight:700;transition:all .3s;display:flex;position:absolute;top:50%;left:300px;transform:translateY(-50%);box-shadow:0 2px 8px #ffc4a84d}.sidebar-toggle:hover{opacity:1;background:linear-gradient(135deg,#ffb5bd,#ffc4a8);transform:translateY(-50%)scale(1.05)}.sidebar-toggle.collapsed{background:linear-gradient(135deg,#ffc4a8,#ffb5bd);left:60px}.session-sidebar.collapsed{width:60px;overflow:hidden}.session-sidebar.collapsed .sidebar-title,.session-sidebar.collapsed .user-info,.session-sidebar.collapsed .session-title,.session-sidebar.collapsed small{display:none}.session-sidebar.collapsed .sub-btn{background:#fff0e6cc;border:1px solid #ffbea080;height:auto;min-height:40px;padding:8px;font-size:14px}.session-sidebar.collapsed .session-btn:before{content:"";margin-right:0}.session-sidebar.collapsed .session-btn span{display:none}.session-sidebar.collapsed .sidebar-title-wrapper{justify-content:center;padding-top:8px;display:flex}.session-sidebar.collapsed .help-icon-mini{position:relative}.session-sidebar.collapsed .help-tip{z-index:9999;min-width:260px;max-width:calc(100vw - 80px);position:fixed;top:20px;left:70px}@media (width<=768px){.sidebar-toggle{display:none}.chat-layout{grid-template-columns:1fr;position:relative}.chat-layout.sidebar-collapsed{grid-template-columns:1fr}.session-sidebar{z-index:100;-webkit-overflow-scrolling:touch;width:280px;max-width:85vw;height:100vh;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0;overflow-y:auto;transform:translate(0);box-shadow:4px 0 30px #0000004d}.session-sidebar.collapsed{box-shadow:none;transform:translate(-100%)}.sidebar-header{gap:12px;padding:16px 16px 12px}.sidebar-title-wrapper{margin-bottom:8px}.sidebar-title{font-size:16px}.user-info{padding:6px 10px;font-size:13px}.session-btn{width:100%;height:34px;font-size:13px;flex:none!important;min-width:auto!important}.sidebar-header .sub-btn.full-width{width:100%;height:34px;padding:0 12px;font-size:13px;flex:none!important;min-width:auto!important}.session-list{gap:8px;padding:12px 10px}.session-item{border-radius:10px;padding:10px 12px;font-size:14px}.session-item small{font-size:11px}.chat-layout.sidebar-collapsed .chat-card{margin-left:0}.chat-card{z-index:1;box-shadow:none!important;border:none!important;border-radius:0!important;flex-direction:column!important;margin:0!important;padding:0!important;display:flex!important;position:fixed!important;inset:0!important;overflow:hidden!important}.sidebar-overlay{z-index:50;background:#00000080;display:none;position:fixed;inset:0}.sidebar-overlay.active{display:block}.menu-toggle{display:flex}.chat-header{gap:10px;padding:10px 12px}.header-title-wrap{min-width:0}.chat-header h2{white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;width:50px;margin-bottom:2px;font-size:16px;overflow:hidden}.chat-id{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.header-left{gap:8px;min-width:0}.header-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.chat-header .header-actions .sub-btn.session-btn{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border-radius:8px!important;flex-shrink:1!important;width:auto!important;min-width:65px!important;max-width:85px!important;height:32px!important;padding:0 10px!important;font-size:12px!important}.header-avatar{width:32px;height:32px}.mode-badge{flex-shrink:0;padding:4px 6px;font-size:11px}.chat-body{padding:10px}.message-row{margin-bottom:12px}.message-content{gap:8px;padding-bottom:24px}.message-bubble{max-width:82vw;padding:8px 10px;font-size:14px;line-height:1.5}.message-avatar{flex:0 0 28px;width:28px;height:28px}.message-tools{opacity:0;pointer-events:none;gap:4px;transition:opacity .2s,transform .2s;bottom:2px;right:4px;transform:translateY(4px)}.message-row.active .message-tools,.message-bubble:active+.message-tools,.message-row:active .message-tools{opacity:1;pointer-events:auto;transform:translateY(0)}.tool-btn{width:28px;height:28px}.tool-btn svg{width:16px;height:16px}.chat-footer{padding:10px 10px calc(10px + env(safe-area-inset-bottom));border-radius:0}.footer-top{gap:10px;margin-bottom:10px;display:block}.mode-row{flex-wrap:wrap;align-items:stretch;gap:8px;display:flex}.mode-group{display:contents}.mode-btn{white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box;color:#666;border-radius:17px;flex:0 0 calc(33.3333% - 5.33333px);justify-content:center;align-items:center;height:34px;padding:0 10px;font-size:12px;line-height:1;display:flex;overflow:hidden}.mode-btn.active{color:#ff9a6a;background:#fff8f5;border-color:#ffd4b8;font-weight:600}.action-group{justify-content:flex-end;align-self:center;align-items:center;height:36px;flex-wrap:nowrap!important;flex-shrink:1!important;gap:8px!important;width:180px!important;margin-left:auto!important;display:flex!important}.chat-footer .sub-btn.stop-btn,.chat-footer .sub-btn.retry-btn{white-space:nowrap;text-overflow:ellipsis;text-align:center;border-radius:8px;flex:50%;justify-content:center;align-items:center;min-width:80px;height:34px;padding:0 18px;font-size:13px;line-height:1;display:inline-flex;overflow:hidden}.stop-btn,.retry-btn{margin-left:0}.composer{align-items:flex-end;gap:8px}.composer-input{min-height:44px;max-height:120px;padding:10px 12px;font-size:15px}.send-btn{flex-shrink:0;width:auto;min-width:60px;height:44px;padding:0 14px;font-size:14px}.scroll-bottom-btn{height:36px;padding:0 12px;font-size:12px;bottom:100px;right:10px}}.settings-page{background:linear-gradient(135deg,#fff5ee 0%,#ffe9de 48%,#ffe5d8 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.settings-container{flex-direction:column;gap:20px;width:100%;max-width:1200px;display:flex}.settings-header{align-items:center;gap:16px;padding:0 20px;display:flex}.back-btn{color:#9f4a3c;cursor:pointer;background:#ffdecda8;border:1px solid #ffad8ed6;border-radius:10px;height:40px;padding:0 16px;font-size:15px;transition:all .2s}.back-btn:hover{background:#ffcfbce6;border-color:#ff9176eb}.settings-title{color:#8f4030;margin:0;font-size:28px}.settings-card{background:#fffffff2;border:1px solid #ffad8fcc;border-radius:20px;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:40px;padding:28px;display:flex;box-shadow:0 12px 40px #a5614033}.section-title{color:#8f4030;text-align:center;margin:0 0 20px;font-size:18px;font-weight:600}.avatar-section{border-right:1px solid #ffb79780;flex-direction:column;flex:0 0 300px;align-items:center;padding:20px;display:flex}.avatar-preview-wrapper{justify-content:center;margin-bottom:20px;display:flex}.avatar-preview{object-fit:cover;border:3px solid #ffb797cc;border-radius:50%;width:140px;height:140px;box-shadow:0 8px 24px #a5614033}.avatar-upload{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.file-input{display:none}.upload-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff8e6a,#ff758c);border:1px solid #ff916ceb;border-radius:12px;justify-content:center;align-items:center;height:44px;padding:0 24px;font-size:15px;font-weight:600;transition:all .2s;display:inline-flex}.upload-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #ff916c52}.upload-hint{color:#b05f4c;text-align:center;font-size:13px}.user-info-section{flex:1;min-width:300px;padding:20px}.info-item{border-bottom:1px solid #ffb7974d;justify-content:space-between;align-items:center;padding:14px 0;display:flex}.info-item:last-child{border-bottom:none}.info-item.readonly{opacity:.7}.info-item.readonly .info-value{color:#b05f4c;font-style:italic}.info-item.editable{transition:all .2s}.info-item.editable:hover{background:#ffb7971a}.info-label{color:#b05f4c;font-size:15px;font-weight:500}.info-value{color:#8f4030;font-size:15px}.edit-icon{color:#ff8e6a;opacity:0;font-size:12px;transition:opacity .2s}.info-item.editable:hover .edit-icon{opacity:1}.settings-page .error-notice{color:#b42222;background:#fff2f2;border:1px solid #ffcfcf;border-radius:12px;margin:0 0 16px;padding:12px 16px;font-size:14px}.settings-page .success-notice{color:#2e7d32;background:#f1f8f1;border:1px solid #c8e6c9;border-radius:12px;margin:0;padding:12px 16px;font-size:14px}.user-avatar-wrapper{cursor:pointer;border:2px solid #ffb797cc;border-radius:50%;flex-shrink:0;width:40px;height:40px;transition:all .2s;overflow:hidden}.user-avatar-wrapper:hover{border-color:#ff916ceb;transform:scale(1.08);box-shadow:0 4px 12px #a5614040}.user-avatar{object-fit:cover;width:100%;height:100%}.header-left{flex:1;min-width:0}.nickname-edit{flex:1;justify-content:flex-end;align-items:center;gap:10px;display:flex}.nickname-input{color:#8a3f31;background:#ffffffd1;border:1px solid #ffb797c7;border-radius:8px;flex:1;max-width:200px;height:36px;padding:0 12px;font-size:14px}.nickname-input:focus{border-color:#ff916ceb;outline:none;box-shadow:0 0 0 3px #ffb79733}.edit-btn{color:#9f4a3c;cursor:pointer;background:#ffdecda8;border:1px solid #ffad8ed6;border-radius:8px;height:32px;padding:0 12px;font-size:13px;transition:all .2s}.edit-btn:hover{background:#ffcfbce6;border-color:#ff9176eb}.avatar-modal{z-index:1000;background:#000c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.avatar-modal-content{border-radius:12px;max-width:90vw;max-height:90vh;position:relative;overflow:hidden;box-shadow:0 20px 60px #00000080}.avatar-modal-image{object-fit:contain;width:100%;max-width:600px;height:100%;max-height:600px}.avatar-modal-close{color:#333;cursor:pointer;background:#ffffffe6;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;font-weight:700;transition:all .2s;display:flex;position:absolute;top:10px;right:10px}.avatar-modal-close:hover{background:#fff;transform:scale(1.1)}@media (width<=768px){.settings-page{align-items:flex-start;padding:16px 12px}.settings-container{gap:16px}.settings-header{padding:0}.settings-title{font-size:24px}.settings-card{flex-direction:column;gap:24px;padding:20px}.avatar-section{border-bottom:1px solid #ffb79780;border-right:none;flex:none;width:100%;padding:16px 0}.avatar-preview{width:120px;height:120px}.user-info-section{flex:none;min-width:100%;padding:16px 0}.user-avatar-wrapper{width:36px;height:36px}.nickname-input{max-width:150px}.avatar-modal-image{max-width:90vw;max-height:90vh}.upload-hint{text-align:center;font-size:12px}.info-item{padding:12px 0}.info-item.editable{margin:4px 0;padding:10px 12px}.info-item.editable .edit-icon{opacity:1}.info-label,.info-value{font-size:14px}.section-title{margin-bottom:16px;font-size:16px}}
