*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;background:#fff}#app{height:100dvh;height:100vh;display:flex;flex-direction:column}.page{--bg: #ffffff;--sf: #f4f4f5;--sf2: #e8e8ea;--b1: rgba(0,0,0,.1);--b2: rgba(0,0,0,.08);--t1: #1a1a1a;--t2: #5a5a5a;--t3: #ababab;--acc: #10a37f;display:flex;flex-direction:column;height:100%;width:100%;background:var(--bg);color:var(--t1);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Segoe UI,sans-serif;font-size:15px;-webkit-font-smoothing:antialiased;overflow:hidden}.hd{flex-shrink:0;height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--b2);background:var(--bg)}.hd-brand{display:flex;align-items:center;gap:8px}.hd-logo{width:28px;height:28px;border-radius:8px;background:var(--acc);display:flex;align-items:center;justify-content:center}.hd-name{font-size:14px;font-weight:600}.hd-right{display:flex;align-items:center;gap:8px}.hd-dot-wrap{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--t3)}.hd-dot{width:6px;height:6px;border-radius:50%;background:var(--acc);animation:pulse 2.4s infinite}@keyframes pulse{0%,to{box-shadow:0 0 #10a37f80}60%{box-shadow:0 0 0 5px #10a37f00}}.hd-clear{width:30px;height:30px;border-radius:8px;background:none;border:none;cursor:pointer;color:var(--t3);display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.hd-clear:hover{background:var(--sf);color:var(--t2)}.err-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px;text-align:center}.err-title{font-size:17px;font-weight:600}.err-msg{font-size:13.5px;color:var(--t2);line-height:1.65;max-width:320px}.main{flex:1;display:flex;flex-direction:column;overflow:hidden}.scroller{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.scroller::-webkit-scrollbar{width:4px}.scroller::-webkit-scrollbar-track{background:transparent}.scroller::-webkit-scrollbar-thumb{background:var(--sf2);border-radius:2px}.thread{max-width:760px;width:100%;margin:0 auto;padding:24px 20px 28px}.welcome{display:flex;flex-direction:column;align-items:center;text-align:center;padding:56px 0 40px}.w-ava{width:48px;height:48px;border-radius:50%;background:var(--acc);display:flex;align-items:center;justify-content:center;margin-bottom:22px}.w-h1{font-size:28px;font-weight:700;letter-spacing:-.025em;line-height:1.2;margin-bottom:10px}.w-sub{font-size:14.5px;color:var(--t2);line-height:1.65;max-width:360px;margin-bottom:30px}.sug-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;width:100%;max-width:480px}.sug-btn{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;min-height:68px;padding:12px 14px;background:var(--sf);border:1px solid var(--b2);border-radius:12px;cursor:pointer;text-align:left;transition:background .12s,border-color .12s}.sug-btn:hover{background:var(--sf2);border-color:#00000024}.sug-btn:active{transform:scale(.97)}.sug-text{font-size:13px;color:var(--t2);line-height:1.45;flex:1;align-self:flex-start;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.sug-btn:hover .sug-text{color:var(--t1)}.sug-arr{color:var(--t3);flex-shrink:0;transition:color .12s}.sug-btn:hover .sug-arr{color:var(--acc)}.row{display:flex;padding:6px 0;animation:fadein .22s ease both}@keyframes fadein{0%{opacity:0;transform:translateY(8px)}to{opacity:1}}.row-u{justify-content:flex-end}.bubble-u{max-width:min(70%,540px);background:#10a37f;border-radius:18px 18px 4px;padding:11px 16px;font-size:15px;line-height:1.65;color:#fff;word-break:break-word}.row-a{align-items:flex-start;gap:12px;padding:10px 0}.a-ava{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--acc);display:flex;align-items:center;justify-content:center;margin-top:1px}.a-body{flex:1;min-width:0}.a-text{font-size:15px;line-height:1.75;color:var(--t1);word-break:break-word}.a-text code{background:var(--sf2);color:#c00000;padding:2px 6px;border-radius:5px;font-size:13px;border:1px solid var(--b2);font-family:Menlo,SF Mono,monospace}.a-text pre{background:#f6f8fa;border:1px solid var(--b2);border-radius:8px;padding:12px 16px;overflow-x:auto;margin:10px 0;font-size:13px}.a-text pre code{background:none;border:none;padding:0;color:#24292e}.a-text strong{color:#000;font-weight:600}.caret{display:inline-block;width:2px;height:15px;background:var(--t2);vertical-align:middle;margin-left:1px;border-radius:1px;animation:blink .6s steps(1) infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.src-btn{display:inline-flex;align-items:center;gap:5px;margin-top:12px;background:none;border:1px solid var(--b2);border-radius:7px;padding:4px 9px;font-size:11.5px;color:var(--t3);cursor:pointer;transition:background .12s,color .12s}.src-btn:hover{background:var(--sf);color:var(--t2)}.src-arr{display:inline-block;transition:transform .18s;font-style:normal}.src-arr.open{transform:rotate(180deg)}.src-list{margin-top:7px;display:flex;flex-direction:column;gap:4px}.src-row{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;background:var(--sf);border:1px solid var(--b2);border-radius:7px;font-size:12px;color:var(--t2);line-height:1.5}.src-n{flex-shrink:0;width:17px;height:17px;border-radius:4px;background:var(--sf2);border:1px solid rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:var(--t3)}.src-txt{flex:1}.src-pct{flex-shrink:0;font-size:11px;color:var(--acc);font-weight:600}.a-foot{margin-top:8px;font-size:11px;color:var(--t3)}.dots{display:flex;gap:4px;align-items:center;padding:4px 0}.dots span{width:6px;height:6px;border-radius:50%;background:var(--t3);animation:bounce 1.3s ease-in-out infinite}.dots span:nth-child(2){animation-delay:.15s}.dots span:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,60%,to{transform:translateY(0);opacity:.35}30%{transform:translateY(-5px);opacity:1}}.input-wrap{flex-shrink:0;max-width:760px;width:100%;margin:0 auto;padding:8px 20px calc(14px + env(safe-area-inset-bottom))}.input-box{position:relative;display:flex;align-items:flex-end;background:transparent;border:1px solid var(--b1);border-radius:16px;padding:12px 50px 12px 16px;transition:border-color .15s}.input-box.focus{border-color:#00000040}.input-box.busy{opacity:.55;pointer-events:none}.input-box textarea{flex:1;border:none;outline:none;resize:none;background:transparent;color:var(--t1);font-size:15px;line-height:1.6;font-family:inherit;min-height:24px;max-height:160px;caret-color:var(--t1);-webkit-appearance:none}.input-box textarea::placeholder{color:var(--t3)}.send-btn{position:absolute;right:10px;bottom:10px;width:33px;height:33px;border-radius:10px;border:none;background:var(--sf2);color:var(--t3);cursor:not-allowed;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s,transform .12s}.send-btn.on{background:var(--acc);color:#fff;cursor:pointer}.send-btn.on:hover{background:#0d9268;transform:scale(1.05)}.send-btn.on:active{transform:scale(.94)}.input-note{text-align:center;margin-top:7px;font-size:11px;color:var(--t3)}@media (max-width: 540px){.hd{padding:0 12px}.hd-dot-wrap{display:none}.thread{padding:14px 14px 18px}.welcome{padding:32px 0 26px}.w-ava{width:40px;height:40px;margin-bottom:16px}.w-h1{font-size:22px}.w-sub{font-size:13.5px;margin-bottom:22px}.sug-grid{grid-template-columns:1fr}.sug-btn{min-height:auto;padding:11px 12px}.bubble-u{max-width:88%;font-size:14.5px}.a-text{font-size:14.5px}.row-a{gap:10px}.input-wrap{padding:6px 12px calc(10px + env(safe-area-inset-bottom))}.input-box{padding:10px 46px 10px 14px}.input-box textarea{font-size:16px}.send-btn{right:8px;bottom:8px;width:30px;height:30px;border-radius:8px}.input-note{display:none}}@media (max-height: 500px) and (orientation: landscape){.welcome{padding:12px 0 14px}.w-ava{width:32px;height:32px;margin-bottom:8px}.w-h1{font-size:18px}.w-sub{display:none}.sug-grid{grid-template-columns:repeat(2,1fr)}.input-note{display:none}}@media (min-width: 768px){.thread{padding:32px 0 28px}.welcome{padding:68px 0 48px}.w-h1{font-size:34px}.input-wrap{padding:10px 24px calc(18px + env(safe-area-inset-bottom))}}
