@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI','Microsoft YaHei',sans-serif;color:#262628;background:#fff;font-synthesis:none;--muted:#8c8c93;--border:#ececef;--surface:#f7f7f8;--text:#262628;--accent:#323236;--side:#f8f8f9;--white:#fff}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #aebcfd;outline-offset:2px}button svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}button [data-icon],button[data-icon]{display:inline-flex;align-items:center;justify-content:center}.app-shell{display:flex;min-height:100dvh}.sidebar{width:252px;flex:none;height:100dvh;position:sticky;top:0;display:flex;flex-direction:column;background:var(--side);border-right:1px solid #f1f1f2;padding:20px 14px 14px;z-index:20}.side-top{display:flex;align-items:center;justify-content:space-between;padding:0 4px 22px}.brand{display:flex;align-items:center;gap:9px;color:var(--text);font-size:17px;font-weight:700;text-decoration:none;letter-spacing:-.035em}.brand b{font-size:11px;letter-spacing:.02em;color:#8c8c94}.brand-mark{width:29px;height:29px;display:grid;place-items:center;background:#252528;color:#fff;border-radius:10px;font-size:23px;line-height:1}.icon-button{border:0;background:transparent;color:#7d7d84;width:34px;height:34px;display:grid;place-items:center;border-radius:9px}.icon-button:hover{background:#ededf0;color:var(--text)}.new-chat{display:flex;align-items:center;gap:9px;border:1px solid #e6e6e9;background:var(--white);height:42px;border-radius:11px;padding:0 11px;color:var(--text);font-weight:600;font-size:13px;box-shadow:0 1px 3px #14141809}.new-chat:hover{border-color:#d2d2d7}.new-chat .shortcut{margin-left:auto;color:#aaaab0;font-size:11px;font-weight:400}.main-nav{display:grid;gap:3px;margin-top:19px}.main-nav button,.history-item{border:0;background:transparent;display:flex;gap:11px;align-items:center;text-align:left;width:100%;height:38px;padding:0 10px;border-radius:9px;color:#69696f;font-size:13px}.main-nav button.active{background:#eaeaec;color:#202024;font-weight:700}.main-nav button:hover,.history-item:hover{background:#ededf0}.nav-tag{margin-left:auto;font-size:10px;color:#a2a2a9}.side-section{margin-top:29px;min-height:0;display:flex;flex-direction:column;flex:1}.section-heading{display:flex;align-items:center;justify-content:space-between;padding:0 6px;color:#a0a0a7;font-size:11px;font-weight:700}.section-heading .icon-button{width:28px;height:28px}.section-heading svg{width:15px;height:15px}.history-list{overflow:auto;margin-top:6px}.history-empty{font-size:12px;color:#aaaab0;padding:12px 8px}.history-item{font-size:12px;justify-content:space-between}.history-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item.active{background:#eaeaec;color:var(--text)}.history-delete{border:0;background:transparent;color:#999;padding:2px;display:none}.history-item:hover .history-delete{display:block}.side-bottom{margin-top:auto;display:grid;gap:10px}.upgrade{display:flex;align-items:center;text-align:left;gap:10px;background:linear-gradient(130deg,#f2f0fb,#f8f4ed);border:1px solid #eae6f4;border-radius:12px;padding:12px 10px;color:#34303d}.upgrade-icon{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:9px;background:#fff;color:#a077e1}.upgrade strong,.profile strong{display:block;font-size:12px}.upgrade small,.profile small{display:block;color:#9993a4;font-size:10px;margin-top:4px}.upgrade-arrow{margin-left:auto;color:#aaa2bb}.profile{display:flex;gap:10px;align-items:center;text-align:left;background:transparent;border:0;color:var(--text);padding:7px 4px;border-radius:9px}.profile:hover{background:#ededf0}.avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e6dfd6;color:#786c5d;font-size:12px;font-weight:700}.profile-dots{margin-left:auto;color:#999;font-weight:700}.main{min-width:0;flex:1;height:100dvh;display:flex;flex-direction:column;background:var(--white)}.topbar{height:67px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;flex:none}.top-left,.top-right{display:flex;align-items:center;gap:10px}.model-trigger{display:flex;align-items:center;gap:9px;padding:8px 10px;background:transparent;border:0;border-radius:10px;color:var(--text);font-weight:700;font-size:14px}.model-trigger:hover{background:var(--surface)}.model-trigger svg{height:14px;width:14px;color:#a6a6ae}.model-dot{display:grid;place-items:center;width:26px;height:26px;color:#fff;background:#303036;border-radius:9px;font-size:18px}.preview-pill{display:flex;align-items:center;gap:7px;color:#8b8b91;font-size:11px;border:1px solid #eeeeef;border-radius:30px;padding:7px 10px}.preview-pill span{width:6px;height:6px;border-radius:50%;background:#b5a7db}.mobile-menu{display:none}.view{flex:1;min-height:0;overflow:auto}.chat-page{max-width:820px;min-height:100%;margin:auto;padding:26px 30px 27px;display:flex;flex-direction:column}.welcome{margin:auto 0 0;text-align:center}.hello-icon{width:47px;height:47px;border-radius:17px;display:grid;place-items:center;margin:0 auto 21px;background:#242428;color:white;font-size:34px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:700;color:#b3afb9;margin-bottom:13px}.welcome h1{font-size:clamp(26px,3.2vw,38px);letter-spacing:-.055em;margin:0;font-weight:700;line-height:1.25}.welcome p{color:#a0a0a8;font-size:14px;margin:12px 0 29px}.suggestions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:24px;text-align:left}.suggestion{border:1px solid #ededf0;background:var(--white);border-radius:13px;padding:15px 13px;text-align:left;min-height:100px;color:#4f4f55;transition:border-color .15s,transform .15s}.suggestion:hover{border-color:#c9c9d0;transform:translateY(-2px)}.suggestion .symbol{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;margin-bottom:11px;font-size:14px}.suggestion:nth-child(1) .symbol{background:#fff0df;color:#db9a48}.suggestion:nth-child(2) .symbol{background:#eee9ff;color:#8e7cd5}.suggestion:nth-child(3) .symbol{background:#e7f4ee;color:#65a489}.suggestion:nth-child(4) .symbol{background:#e8f0fc;color:#7493cb}.suggestion strong{font-size:12px;display:block}.suggestion small{font-size:11px;color:#a8a8af;display:block;margin-top:5px;line-height:1.4}.composer-wrap{margin-top:auto}.composer{border:1px solid #e4e4e8;border-radius:18px;background:var(--white);box-shadow:0 7px 25px #1a1a2a0b;overflow:hidden;padding:15px 15px 11px}.composer textarea{width:100%;min-height:47px;max-height:170px;resize:vertical;border:0;outline:0;color:var(--text);background:transparent;font-size:14px;line-height:1.6}.composer textarea::placeholder{color:#aaaab1}.composer-actions{display:flex;align-items:center;gap:7px}.tool-btn{display:inline-flex;gap:6px;align-items:center;border:1px solid #eeeeef;background:var(--white);border-radius:9px;padding:7px 9px;color:#73737a;font-size:11px}.tool-btn:hover,.tool-btn.selected{border-color:#d4cee9;background:#f6f3ff;color:#725caf}.tool-btn svg{width:14px;height:14px}.spacer{flex:1}.send-btn{width:34px;height:34px;border:0;border-radius:11px;background:#28282d;color:white;display:grid;place-items:center}.send-btn:hover{background:#4a4a50}.send-btn svg{width:17px;height:17px}.composer-foot{text-align:center;color:#babac0;font-size:10px;margin-top:12px}.chat-messages{display:grid;gap:22px;padding:8px 0 28px}.message-row{display:flex;gap:12px;align-items:flex-start}.message-avatar{width:29px;height:29px;border-radius:10px;display:grid;place-items:center;flex:none;background:#26262a;color:white;font-size:18px}.message-row.user{justify-content:flex-end}.message-row.user .message-body{background:#f3f3f5;padding:12px 15px;border-radius:16px 16px 4px 16px}.message-body{line-height:1.75;font-size:14px;max-width:80%;white-space:pre-wrap;overflow-wrap:anywhere}.message-label{color:#9d9da4;font-size:11px;margin:0 0 4px}.chat-messages+.composer-wrap{margin-top:auto}.page-body{max-width:1160px;margin:0 auto;padding:42px 48px 64px}.page-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:#aaa4b0}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:9px 0 28px}.page-heading h1{font-size:30px;letter-spacing:-.05em;margin:0}.page-heading p{font-size:13px;color:#9999a1;margin:10px 0 0;line-height:1.6}.page-search{width:min(310px,100%);display:flex;align-items:center;border:1px solid var(--border);border-radius:11px;padding:0 12px;height:41px;gap:8px;color:#999}.page-search svg{width:16px;height:16px;stroke:currentColor;fill:none}.page-search input{border:0;outline:0;min-width:0;width:100%;background:transparent;font-size:12px;color:var(--text)}.tabs{display:flex;gap:6px;overflow:auto;margin-bottom:22px}.tabs button{white-space:nowrap;border:0;background:transparent;color:#8f8f98;font-size:12px;padding:8px 13px;border-radius:8px}.tabs button.active,.tabs button:hover{background:#f1f1f3;color:#333338}.model-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.model-card{position:relative;text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:13px;min-height:155px;padding:17px;background:var(--white);border:1px solid var(--border);border-radius:15px;color:var(--text)}.model-card:hover{border-color:#cbcad2;box-shadow:0 5px 20px #1d1d250a}.model-icon{width:37px;height:37px;border-radius:12px;display:grid;place-items:center;color:#fff;font-size:16px;font-weight:700}.model-card strong{font-size:13px}.model-card p{font-size:11px;line-height:1.5;color:#a0a0a8;margin:5px 0 0}.model-card .card-meta{color:#a7a7af;font-size:10px;margin-top:auto}.favorite{position:absolute;right:13px;top:13px;border:0;background:none;color:#c5c5cb;font-size:18px;padding:3px;z-index:1}.favorite.on{color:#e1ad57}.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.gallery-card{border:0;border-radius:15px;overflow:hidden;text-align:left;padding:0;background:#f3f3f5;color:#fff;position:relative;aspect-ratio:1/1.12}.gallery-card img{width:100%;height:100%;object-fit:cover;display:block}.gallery-card:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#000a)}.gallery-card span{position:absolute;bottom:13px;left:13px;right:13px;z-index:1;font-size:11px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.empty-state{min-height:330px;display:grid;place-content:center;text-align:center;color:#a3a3aa}.empty-illustration{width:60px;height:60px;margin:0 auto 18px;border-radius:20px;background:#f5f4f8;display:grid;place-items:center;color:#aaa4b6;font-size:25px}.empty-state strong{color:#57575d;font-size:14px}.empty-state p{font-size:12px;line-height:1.7}.action-button{border:0;background:#28282d;color:white;border-radius:10px;padding:10px 15px;font-size:12px;font-weight:600}.action-button.secondary{background:#f1f1f3;color:#49494e}.project-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.project-card{border:1px solid var(--border);padding:18px;border-radius:14px;font-size:13px}.project-card small{display:block;color:#aaa;margin-top:8px}.backdrop{display:none}dialog{border:0;border-radius:18px;padding:0;background:var(--white);color:var(--text);width:min(500px,calc(100vw - 30px));box-shadow:0 18px 70px #0002}dialog::backdrop{background:#14141b55}.dialog-head{padding:21px 22px 13px;display:flex;justify-content:space-between;align-items:center}.dialog-head h2{font-size:17px;letter-spacing:-.03em;margin:0}.dialog-body{padding:0 22px 22px}.dialog-body p{color:#92929a;font-size:12px;line-height:1.8}.dialog-search{width:100%;border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:11px 12px;color:var(--text);font-size:13px}.model-list{max-height:min(440px,56vh);overflow:auto;margin-top:12px}.model-option{width:100%;border:0;background:none;border-radius:10px;display:flex;align-items:center;gap:10px;text-align:left;padding:10px;color:var(--text)}.model-option:hover{background:var(--surface)}.model-option .model-icon{width:31px;height:31px;border-radius:10px;font-size:13px}.model-option strong{font-size:12px}.model-option small{display:block;color:#aaa;font-size:10px;margin-top:3px}.model-option .check{margin-left:auto;color:#8b78c7}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border);font-size:13px}.settings-row small{display:block;color:#aaa;font-size:11px;margin-top:5px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);background:#242428;color:white;padding:11px 16px;font-size:12px;border-radius:10px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:50}.toast.show{opacity:1;transform:translate(-50%,0)}
body.dark{--text:#ececef;--muted:#a0a0a8;--border:#37373c;--surface:#29292d;--side:#202023;--white:#18181a;background:#18181a}.dark .sidebar{border-color:#303033}.dark .main-nav button.active,.dark .history-item.active{background:#333338;color:#fff}.dark .main-nav button:hover,.dark .history-item:hover,.dark .icon-button:hover,.dark .profile:hover{background:#303034}.dark .new-chat,.dark .composer,.dark .suggestion,.dark .model-card,.dark .tool-btn{border-color:#3b3b40}.dark .message-row.user .message-body{background:#303034}.dark .tabs button.active,.dark .tabs button:hover,.dark .action-button.secondary{background:#303034;color:#eee}.dark .upgrade{background:#34303d;border-color:#494353}.dark .upgrade strong{color:#eee}.dark .empty-illustration{background:#29282f}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.suggestions{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.page-body{padding:35px 28px 50px}}
@media(max-width:680px){.sidebar{position:fixed;left:0;top:0;transform:translateX(-100%);transition:transform .2s;width:270px;box-shadow:none}.app-shell.sidebar-open .sidebar{transform:translateX(0);box-shadow:12px 0 40px #0002}.app-shell.sidebar-open .backdrop{display:block;position:fixed;inset:0;background:#0005;z-index:19}.mobile-menu{display:grid}.topbar{padding:0 14px;height:61px}.preview-pill{font-size:10px}.chat-page{padding:10px 18px 22px}.welcome h1{font-size:27px}.suggestions{gap:8px}.suggestion{min-height:90px;padding:11px}.suggestion .symbol{margin-bottom:7px}.page-body{padding:28px 18px 45px}.page-heading{align-items:start;flex-direction:column}.page-heading h1{font-size:26px}.page-search{width:100%}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-btn{font-size:0;gap:0;padding:8px}.tool-btn svg{width:16px;height:16px}.message-body{max-width:90%}}
