:root{color-scheme:light;--ink:#141414;--muted:#73777c;--line:#e9eaec;--sidebar:#f8f8f9;--selected:#eeeef1;--blue:#2864bc;--font:16px;--rail:275px}
*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;font-size:var(--font);color:var(--ink);background:#fff;letter-spacing:0}body{display:flex;height:100dvh;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:0}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:wait}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button{border:0;background:none}button:hover{background-color:#f2f2f4}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--blue);outline-offset:3px}[hidden]{display:none!important}h1,h2,h3,h4,p{margin:0}svg{width:22px;height:22px;flex-shrink:0;stroke-width:1.8}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;top:-60px;left:300px;z-index:100;background:white;padding:12px}.skip-link:focus{top:8px}.muted{color:var(--muted);line-height:1.7;font-size:14px}.compact{font-size:12px}.danger{color:#b32222}.sidebar{width:var(--rail);flex:0 0 var(--rail);background:var(--sidebar);border-right:1px solid var(--line);padding:12px 12px 20px;display:flex;flex-direction:column;position:relative;z-index:30}.brand{display:flex;align-items:center;gap:12px;color:#090909;padding:0 10px;margin:0 0 14px;height:43px}.brand:hover{text-decoration:none}.brand strong{font-size:26px;font-weight:750}.brand-symbol{position:relative;display:block;width:45px;height:43px;overflow:hidden;flex:0 0 45px}.brand-symbol img{max-width:none;width:118px;height:49px;position:absolute;left:-6px;top:-2px}.side-nav{display:flex;flex-direction:column;gap:4px}.nav-item{color:#171717;width:100%;display:flex;align-items:center;gap:14px;padding:10px 13px;border-radius:8px;text-align:left;min-height:41px}.nav-item:hover{background:var(--selected);text-decoration:none}.nav-item.active,.nav-item[aria-expanded=true]{background:var(--selected)}.nav-item .chevron{margin-left:auto;width:18px}.sidebar-recent{border-top:1px solid var(--line);margin:13px 10px 0;padding-top:16px;min-height:0;display:flex;flex-direction:column;flex:1}.sidebar-recent>p{font-size:13px;color:var(--muted);margin-bottom:12px}.recent-list{overflow-y:auto;margin:0 -10px}.recent-item{display:flex;align-items:center;gap:10px;border-radius:8px;position:relative;padding:0 7px}.recent-item.active{background:var(--selected)}.recent-link{flex:1;min-width:0;display:flex;align-items:center;gap:10px;padding:10px 6px;font-size:14px;color:#171717;text-align:left}.recent-link svg{width:19px}.recent-link span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-delete{opacity:0;width:26px;height:28px;border-radius:4px;flex-shrink:0}.recent-delete svg{width:16px;height:16px}.recent-item:hover .recent-delete,.recent-item:focus-within .recent-delete{opacity:1}.recent-empty{color:var(--muted);font-size:12px;padding:4px 13px}.sidebar-footer{margin:16px 10px 0;padding-top:12px;border-top:1px solid var(--line)}.sidebar-footer button{padding:10px 0}.more-menu{position:absolute;left:calc(100% - 6px);top:150px;min-width:210px;background:white;padding:8px;border-radius:6px;box-shadow:0 7px 24px #00000014;z-index:50}.more-menu button{display:flex;gap:16px;align-items:center;width:100%;padding:12px;border-radius:4px;text-align:left}.app-main{flex:1;min-width:0;display:flex;flex-direction:column;height:100dvh}.topbar{height:62px;min-height:62px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 10px 0 15px;gap:16px;position:relative}.topbar-start{display:flex;align-items:center;gap:16px;flex:1;min-width:0}.topbar-note{color:var(--muted);font-size:13px;white-space:nowrap}.top-title{position:absolute;left:50%;transform:translateX(-50%);font-size:15px;font-weight:600;max-width:35%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.mobile-note{display:none}.account-button{color:white;background:#222326;border-radius:12px;padding:9px 22px;min-height:38px;font-size:14px;white-space:nowrap;max-width:170px;overflow:hidden;text-overflow:ellipsis}.account-button:hover{background:#393a3d}.icon-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;height:34px;width:34px;border-radius:5px;padding:6px}.text-button{display:inline-flex;gap:10px;align-items:center;padding:7px 8px;border-radius:4px;line-height:1.4;font-size:14px}.primary-button{display:inline-flex;justify-content:center;align-items:center;gap:9px;background:#17181a;color:white;padding:9px 15px;border-radius:5px;font-size:14px;min-height:38px;white-space:nowrap}.primary-button svg{width:19px;height:19px}.primary-button:hover{background:#333438}.sidebar-collapsed .sidebar{display:none}.chat-main{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.chat-stage{flex:1;overflow-y:auto;min-height:0;scrollbar-gutter:stable}.welcome{max-width:1028px;margin:auto;padding:0 0 20px;height:100%;min-height:420px;display:flex;flex-direction:column}.welcome h1{display:flex;align-items:center;justify-content:center;gap:13px;font-size:34px;font-weight:700;flex:1;text-align:center;padding-top:60px}.welcome-paw{display:inline-flex;position:relative;transform:rotate(-12deg);color:#b4a3e5}.welcome-paw svg{width:39px;height:39px;fill:currentColor;stroke-width:1}.welcome-paw:before,.welcome-paw:after{content:"";position:absolute;top:-14px;width:3px;height:12px;border-radius:2px;background:currentColor}.welcome-paw:before{left:12px;transform:rotate(-16deg)}.welcome-paw:after{right:4px;transform:rotate(28deg)}.recommendations{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:20px 0 4px}.recommendations p{font-size:12px;color:var(--muted);margin-left:4px;margin-bottom:2px}.recommendations button{border:1px solid #eeeeef;border-radius:16px;box-shadow:0 2px 5px #00000003;font-size:13px;line-height:1.6;text-align:left;padding:9px 15px;background:white;max-width:100%}.recommendations button:hover{border-color:#c4c6cb;background:#fafafa}.composer-wrap{width:min(1028px,calc(100% - 80px));margin:0 auto 16px;flex-shrink:0}.composer{border:1px solid #e0e9f2;border-radius:24px;background:white;box-shadow:0 5px 18px #418dcb0a;padding:16px 18px 12px;position:relative}.composer:focus-within{border-color:#b8cce0}.composer textarea{border:0;resize:none;outline:none;width:100%;min-height:48px;max-height:144px;line-height:1.6;background:transparent;font-size:16px;padding:0 2px}.composer textarea:focus-visible{outline:none}.composer textarea::placeholder{color:#93969a}.composer-tools{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:7px}.composer-left,.composer-right{display:flex;gap:10px;align-items:center;min-width:0}.tool-divider{height:24px;width:1px;background:var(--line)}.composer .icon-button{width:29px;height:29px}.export-entry{font-size:14px;padding:5px 3px}.send-button{height:40px;width:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;background:#111214;flex-shrink:0}.send-button:hover{background:#333438}.send-button svg{width:24px;height:24px}.char-count{color:var(--muted);font-size:12px}.attachment-preview{display:flex;gap:10px;margin-bottom:12px;overflow-x:auto}.attachment-tile{position:relative;width:68px;flex:0 0 68px;height:68px}.attachment-tile img{width:100%;height:100%;object-fit:cover;border-radius:6px}.attachment-tile button{position:absolute;right:-3px;top:-3px;width:22px;height:22px;background:#202124;color:white;border-radius:50%;display:grid;place-items:center}.attachment-tile button svg{width:13px;height:13px}.chat-pet-context{font-size:12px;color:var(--muted);margin:0 6px 8px;display:flex;align-items:center;gap:7px}.chat-pet-context svg{height:15px;width:15px}.messages{max-width:1028px;padding:50px 8px 50px;margin:auto}.message{margin-bottom:42px;font-size:16px;line-height:1.85;overflow-wrap:anywhere}.user-message{display:flex;justify-content:flex-end}.user-message .message-body{max-width:80%;padding:13px 18px;background:#f5f5f6;border-radius:16px;white-space:pre-wrap}.assistant-message .message-identity{display:flex;gap:12px;align-items:center;color:var(--muted);font-size:14px;margin-bottom:18px}.message-identity .brand-symbol{width:30px;flex-basis:30px;height:29px}.message-identity .brand-symbol img{width:78px;height:33px;left:-4px;top:-2px}.assistant-message h2{font-size:22px;line-height:1.5;margin-bottom:16px}.assistant-message h3{font-size:19px;line-height:1.5;margin:24px 0 12px}.assistant-message p{margin-bottom:12px;white-space:pre-wrap}.assistant-message ul{padding-left:24px;line-height:2.2;margin:4px 0 22px}.message-images{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.message-images img{max-width:220px;max-height:220px;object-fit:contain;border-radius:8px}.message-actions{display:flex;gap:4px;margin-top:15px}.message-actions .icon-button{color:#787d83;height:30px;width:30px}.message-actions svg{height:17px;width:17px}.typing-line{color:var(--muted);display:flex;gap:8px;align-items:center}.typing-line span{width:6px;height:6px;background:#8a8c90;border-radius:50%;animation:pulse 1.2s ease-in-out infinite}.typing-line span:nth-child(2){animation-delay:.15s}.typing-line span:nth-child(3){animation-delay:.3s}@keyframes pulse{50%{opacity:.3}}.dialog{border:0;border-radius:8px;padding:32px;width:min(490px,calc(100% - 32px));max-height:90dvh;overflow:auto;color:var(--ink);box-shadow:0 15px 60px #0003}.dialog::backdrop{background:#0004}.dialog h2{font-size:24px;line-height:1.45;margin:0 30px 16px 0}.dialog p{line-height:1.7}.dialog-close{position:absolute;right:13px;top:13px}.dialog-wide{width:min(640px,calc(100% - 32px))}.editor-form{display:flex;flex-direction:column;gap:17px;margin-top:20px}.editor-form label{font-size:14px;display:flex;flex-direction:column;gap:7px;line-height:1.5}.editor-form input:not([type=checkbox],[type=file]),.editor-form select,.editor-form textarea{width:100%;border:1px solid #d9dce0;border-radius:4px;padding:10px 12px;background:white;min-width:0}.editor-form input:not([type=checkbox],[type=file]),.editor-form select{min-height:42px}.editor-form textarea{resize:vertical;line-height:1.6}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.check-label{flex-direction:row!important;align-items:center}.check-label input{accent-color:#17181a;width:17px;height:17px}.form-error{color:#b32222;font-size:13px;line-height:1.6}.form-footer{display:flex;align-items:center;justify-content:flex-end;gap:14px}.code-row{display:flex;gap:8px}.code-row input{min-width:0;flex:1}.code-row button{white-space:nowrap;font-size:13px;border:1px solid #d9dce0;border-radius:4px;padding:0 12px}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:20px;font-size:24px;font-weight:700}.auth-form .primary-button{margin-top:3px}.local-preview{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.local-preview .text-button{width:100%;justify-content:center;background:#f5f5f6;padding:11px}.local-preview p{font-size:12px;color:var(--muted);margin-top:8px;text-align:center}.dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);gap:20px}.settings-row select{border:1px solid #ddd;border-radius:4px;padding:6px}.settings-row input{accent-color:#222}.help-list h3{font-size:16px;margin:22px 0 8px}.help-list p{color:#5c6167;font-size:14px;line-height:1.8}.privacy-actions{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:20px}.toast{position:fixed;z-index:100;bottom:28px;left:50%;transform:translate(-50%,16px);background:#202124;color:white;border-radius:6px;padding:11px 20px;font-size:13px;opacity:0;pointer-events:none;max-width:calc(100% - 32px);transition:opacity .18s,transform .18s}.toast.show{opacity:1;transform:translate(-50%,0)}.no-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.mobile-backdrop{display:none}
.chat-pet-context select{border:0;border-bottom:1px solid #d7dbe0;background:transparent;font-size:12px;max-width:180px}.message{font-size:var(--font)}.recent-delete{position:absolute;right:6px;top:9px;background:var(--selected)}
@media(max-width:800px){.topbar-start{flex:0 0 34px;width:34px}.recent-link{padding-right:32px}}
@media(min-width:801px){.nav-item{font-size:18px}.recent-link{font-size:15px}.topbar-note{font-size:14px}.top-title{font-size:16px}.export-entry{font-size:16px}.recommendations button{font-size:14px}.composer textarea{font-size:18px}.welcome h1{padding-top:130px}}
@media(min-width:1700px){.welcome,.messages{max-width:1100px}.composer-wrap{width:min(1100px,calc(100% - 80px))}}
@media(max-width:1150px){:root{--rail:240px}.topbar-note{font-size:11px}.top-title{max-width:30%;font-size:14px}.welcome{padding-left:28px;padding-right:28px}.welcome h1{font-size:28px}.messages{padding-left:32px;padding-right:32px}.composer-wrap{width:calc(100% - 56px)}.topbar-start{gap:6px}}
@media(max-width:800px){.sidebar{position:fixed;left:0;top:0;height:100dvh;transform:translateX(-100%);width:260px}.sidebar-collapsed .sidebar{display:flex}.sidebar-open .sidebar{transform:translateX(0)}.sidebar-open .mobile-backdrop{display:block;position:fixed;inset:0;background:#0004;z-index:25}.app-main{width:100%}.more-menu{left:12px;top:193px;width:236px}.topbar-note{display:none}.top-title{position:static;transform:none;margin:auto;max-width:calc(100% - 150px);flex:1;text-align:center}.topbar-start{flex:0}.account-button{max-width:120px;padding:9px 16px}.topbar{padding:0 12px;gap:8px;height:70px;min-height:70px}.top-title-wrap{flex:1;min-width:0;text-align:center}.top-title-wrap .top-title{max-width:100%;display:block}.mobile-note{display:block;font-size:10px;color:var(--muted);margin-top:3px}.welcome{min-height:360px;padding:0 22px 16px}.welcome h1{font-size:25px;padding-top:30px;gap:9px}.welcome-paw svg{width:30px;height:30px}.welcome-paw:before,.welcome-paw:after{height:8px;top:-10px}.recommendations{gap:8px}.recommendations button{font-size:12px;padding:8px 12px}.composer-wrap{width:calc(100% - 30px);margin-bottom:max(12px,env(safe-area-inset-bottom))}.composer{padding:14px 14px 10px;border-radius:20px}.composer textarea{font-size:16px;min-height:45px}.composer-left{gap:6px}.export-entry{font-size:12px;gap:6px}.export-entry svg{width:19px}.send-button{width:36px;height:36px}.messages{padding:28px 22px 24px}.message{font-size:15px;margin-bottom:30px}.assistant-message h2{font-size:21px}.assistant-message h3{font-size:18px}.user-message .message-body{max-width:90%}.message-images img{max-width:160px;max-height:170px}.dialog{padding:26px 22px}.form-pair{gap:12px}.recent-delete{opacity:1}.char-count{display:none}.skip-link{left:16px}}
@media(max-width:400px){.welcome h1{font-size:22px}.welcome-paw svg{width:26px;height:26px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:800px){.topbar-start{flex:0 0 34px;width:34px}}
.composer textarea::placeholder{color:#70757b}
.welcome{min-height:150px}
.recommendations{padding:0 0 20px;gap:10px}
.recommendation-heading{display:flex;align-items:center;gap:9px;height:24px}
.recommendation-heading p{margin:0}
.recommended-topics{display:flex;flex-direction:column;align-items:flex-start;gap:9px;width:100%}
.composer{border-color:#bed0e7;isolation:isolate}
.composer::before{content:"";position:absolute;inset:-1px;color:#5790d8;border:1.5px solid currentColor;border-radius:inherit;box-shadow:0 0 12px 1px #5790d83d;box-shadow:0 0 12px 1px color-mix(in srgb,currentColor 24%,transparent);opacity:.24;pointer-events:none;animation:composer-breathe 5s ease-in-out infinite,composer-tint 18s ease-in-out infinite}
@keyframes composer-breathe{0%,100%{opacity:.24}50%{opacity:.88}}
@keyframes composer-tint{0%,100%{color:#5790d8}33.333%{color:#a279d4}66.667%{color:#36b6bd}}
.page-hidden .composer::before{animation-play-state:paused}
.no-motion .composer::before{animation:none;opacity:.35;box-shadow:none}
@media(max-width:800px){.recommendations{padding-bottom:16px}.recommended-topics{gap:8px}}
@media(max-height:670px){.welcome h1{padding-top:0}.recommendations{max-height:34dvh;overflow-y:auto}}
@media(prefers-reduced-motion:reduce){.composer::before{animation:none;opacity:.35;box-shadow:none}}
.chat-main{--chat-column:1028px;--chat-gutter:80px}
.image-model-field{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:8px;margin:4px 0 8px;font-size:13px}
.image-model-field select{width:100%;min-width:0;min-height:38px;padding:6px 10px;border:1px solid var(--line);border-radius:6px;background:#fff;font:inherit}
@media(max-width:800px){.image-model-field{grid-template-columns:1fr;gap:4px}.image-model-field select{font-size:16px;min-height:44px}}
.messages,.composer-wrap{width:min(var(--chat-column),calc(100% - var(--chat-gutter)));max-width:none}
.messages{padding-left:0;padding-right:0}
.chat-pet-context{margin-left:0;margin-right:0}
.chat-stage{scrollbar-width:thin}
.chat-stage::-webkit-scrollbar{width:8px}
/* Base both columns on the chat viewport, not the scroll area's reduced width. */
@supports(width:1cqw){
  .chat-main{container-type:inline-size}
  .messages{width:min(var(--chat-column),calc(100cqw - var(--chat-gutter)));margin-left:max(calc(var(--chat-gutter) / 2),calc((100cqw - var(--chat-column)) / 2));margin-right:0}
}
@media(min-width:1700px){.chat-main{--chat-column:1100px}}
@media(max-width:1150px){.chat-main{--chat-gutter:56px}}
@media(max-width:800px){.chat-main{--chat-gutter:30px}}
@media(max-width:800px){
  .topbar-start{flex:0 0 44px;width:44px}
  .topbar .icon-button,.dialog-close,.message-actions .icon-button{width:44px;height:44px}
  .account-button,.nav-item,.primary-button{min-height:44px}
  .sidebar .recent-item{grid-template-columns:minmax(0,1fr) 44px}
  .sidebar .recent-delete{width:44px;height:44px}
  .sidebar .recent-link{padding-right:4px}
  .composer .icon-button,.send-button{width:44px;height:44px}
  .dialog input:not([type=checkbox],[type=file]),.dialog select,.dialog textarea{font-size:16px}
}
