:root{font-family:Arial,Helvetica,system-ui,sans-serif;color:#101010;background:#f8f9fa;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--blue:#0075bf;--grey:#777}*{box-sizing:border-box}body{margin:0}button,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:default}button,a,select{-webkit-tap-highlight-color:transparent}button:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #84c7f3;outline-offset:3px}button{border:0}svg{flex-shrink:0}button:disabled{opacity:.45}.chat-app{height:100dvh;display:flex;flex-direction:column;transition:transform .45s ease;background:#f8f9fa}.voice-behind{transform:translate(-15%)}.chat-header{flex-shrink:0;background:#fff;border-bottom:1px solid #dedede}.header-inner{max-width:1400px;margin:auto;display:flex;align-items:center;gap:32px;height:95px;padding:12px 36px}.language{display:flex;align-items:center;gap:9px;color:#737373;position:relative}.language select{appearance:none;background:none;color:inherit;border:0;padding:10px 23px 10px 0;font-weight:600;font-size:18px;cursor:pointer;max-width:120px}.language>svg:last-child{position:absolute;right:0;pointer-events:none}.identity{display:flex;align-items:center;gap:18px}.header-portrait{width:60px;height:60px;position:relative;flex-shrink:0}.header-portrait img,.welcome-portrait,.voice-open img{width:100%;height:100%;object-fit:cover;object-position:44% 18%;border-radius:50%;border:1px solid #ddd}.header-portrait i{position:absolute;width:16px;height:16px;bottom:0;right:0;border-radius:50%;border:3px solid white;background:#acb3b7}.header-portrait i.online{background:#10b981}.identity strong{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:700;line-height:1.2}.identity strong>span{font-size:16px;color:#0067a9;background:#e6f4ff;border-radius:16px;letter-spacing:2px;padding:4px 13px;font-weight:600}.identity p{margin:6px 0 0;font-size:18px;color:#777}.clear-button{margin-left:auto;background:none;color:#777;padding:12px;display:grid;place-items:center;border-radius:12px}.clear-button:hover{background:#f4f6f8}.chat-scroll{flex:1;overflow:auto;scrollbar-width:thin;display:flex;flex-direction:column;min-height:0}.empty-state{width:min(100%,1020px);margin:auto;flex-shrink:0;text-align:center;padding:50px 28px 65px}.welcome-portrait{width:96px;height:96px;margin-bottom:28px}.empty-state h1{font-size:42px;letter-spacing:-1.2px;line-height:1.2;margin:0 0 15px;font-weight:700}.empty-state>p{font-size:22px;line-height:1.55;color:#777;max-width:850px;margin:0 auto 50px}.suggestions{display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:left;max-width:920px;margin:0 auto}.suggestions button{background:#fff;border:1px solid #dedede;border-radius:24px;box-shadow:0 2px 4px #0000000b;padding:22px 26px;display:flex;align-items:center;gap:18px;text-align:left;font-size:20px;font-weight:600;line-height:1.35;transition:border-color .16s,box-shadow .16s,background .16s;min-height:76px}.suggestions button svg{color:var(--blue)}.suggestions button:hover{border-color:var(--blue);background:#f9fcff;box-shadow:0 5px 20px #0075bf14}.composer-area{flex-shrink:0;background:#fff;border-top:1px solid #dedede;padding:18px 32px 9px}.composer{width:100%;max-width:1500px;margin:auto;display:flex;align-items:flex-end;gap:12px}.round{display:grid;place-items:center;width:66px;height:66px;flex-shrink:0;border-radius:50%;background:#f3f3f3;color:#777;transition:background .15s}.round.blue{background:var(--blue);color:#fff}.round.blue:hover:not(:disabled){background:#0064a5}.round.recording{background:#ef4444;color:#fff}.round:disabled{opacity:1;background:#f3f3f3;color:#858585}.composer textarea{display:block;resize:none;min-height:78px;max-height:150px;flex:1;min-width:0;border:1px solid #ddd;border-radius:35px;padding:23px 24px;color:#222;line-height:30px;font-size:22px;box-shadow:0 2px 3px #00000008;background:#fff;outline-offset:1px}.composer textarea::placeholder{color:#777}.voice-open{width:72px;height:72px;display:grid;place-items:center;padding:4px;background:#fff;border:1px solid #add1ec;border-radius:50%;flex-shrink:0}.voice-open:hover{border-color:var(--blue);box-shadow:0 0 0 3px #e6f4ff}.attachment-control{position:relative;flex-shrink:0}.attachment-menu{position:absolute;bottom:calc(100% + 18px);left:0;background:#fff;border:1px solid #ddd;border-radius:22px;padding:13px;box-shadow:0 12px 26px #0003;width:330px;z-index:10}.attachment-menu button{display:flex;align-items:center;gap:16px;border-radius:13px;text-align:left;background:none;width:100%;padding:12px}.attachment-menu button:hover{background:#f1f8fd}.menu-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;color:var(--blue);background:#e5f4ff;flex-shrink:0}.attachment-menu strong{display:block;font-size:21px}.attachment-menu small{display:block;font-size:16px;color:#777;margin-top:4px}.privacy-note{font-size:10px;color:#909090;text-align:center;line-height:1.4;margin-top:10px}.notice{max-width:1000px;margin:0 auto 12px;background:#fff6e7;border:1px solid #eed6ad;color:#725329;padding:10px 12px;border-radius:10px;font-size:13px;display:flex;align-items:center;gap:12px}.notice button{margin-left:auto;background:none;color:inherit;padding:5px}.attachment-chips{display:flex;flex-wrap:wrap;gap:8px;max-width:1300px;margin:0 auto 12px}.attachment-chip{display:flex;align-items:center;gap:8px;border:1px solid #dde6ec;background:#f8fbfd;padding:6px 8px;border-radius:10px;max-width:270px;font-size:12px}.attachment-chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-chip>img{width:32px;height:32px;object-fit:cover;border-radius:5px}.attachment-chip button{padding:4px;display:grid;place-items:center;background:transparent;color:#777}.dictation-status{max-width:1000px;margin:0 auto 10px;display:flex;gap:8px;align-items:center;color:var(--blue);font-size:13px}.dictation-status span{width:7px;height:7px;background:#ef4444;border-radius:50%;animation:pulse 1s infinite}.dictation-status small{color:#888;margin-left:auto}.messages{width:min(100%,950px);margin:0 auto;padding:30px 28px}.message{margin-bottom:24px;max-width:90%;font-size:17px;line-height:1.65}.message.user{margin-left:auto;background:#e7f3fc;border-radius:22px 22px 5px;padding:17px 22px;width:fit-content}.message.assistant{padding:5px 0;max-width:96%}.message-name{display:block;font-size:12px;color:#6e8491;font-weight:600;margin-bottom:7px}.message-text{white-space:pre-wrap;overflow-wrap:anywhere}.message-files{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.message-file{max-width:230px;background:#fff;border:1px solid #e0e8ed;border-radius:10px;padding:8px;display:flex;flex-direction:column;gap:5px;font-size:11px;color:#657684;overflow:hidden}.message-file img{max-width:210px;max-height:160px;object-fit:contain}.message-file span{overflow-wrap:anywhere}.thinking{font-size:14px;color:#7b8790;display:flex;gap:5px;align-items:center;margin:20px 0}.thinking span{width:5px;height:5px;background:#7fadd0;border-radius:50%;animation:pulse 1s infinite}.thinking span:nth-child(2){animation-delay:.2s}.thinking span:nth-child(3){animation-delay:.4s;margin-right:7px}.voice-screen{position:fixed;inset:0;background:#fff;z-index:30;display:flex;flex-direction:column;align-items:center;overflow-y:auto;animation:slide-in .45s ease}.voice-character{flex:1;min-height:290px;display:grid;place-items:center;width:100%;padding:40px 20px 10px}.avatar-stage{width:min(38vh,360px);height:min(38vh,360px);position:relative;flex-shrink:0}.avatar-disc{position:absolute;inset:0;border:2px solid var(--blue);border-radius:50%;overflow:hidden;background:#fff;isolation:isolate;box-shadow:0 0 45px 5px #eaf5fb66}.avatar-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:44% 18%}.avatar-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 10%;transform:scale(1.04) translate(4%);opacity:0;transition:opacity .6s}.avatar-video.is-visible{opacity:1}.summon-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2}.orbit,.orbit-spark{display:none}.orb-halo{position:absolute;inset:-20px;border-radius:50%;background:radial-gradient(circle,#e1f3ff44 0%,transparent 70%)}.voice-bottom{flex-shrink:0;text-align:center;max-width:650px;width:100%;padding:12px 24px 45px;min-height:240px}.voice-status{color:#777;font-size:23px;margin:0 0 48px;line-height:1.5}.voice-transcript{font-size:16px;color:#777;margin:-30px 0 25px}.voice-notice{font-size:14px;color:#8c5c2a;margin:-25px 0 23px}.voice-actions{display:flex;justify-content:center;align-items:center;gap:24px}.voice-actions button{width:84px;height:84px;border-radius:50%;display:grid;place-items:center}.voice-mic{background:#fff;border:1px solid #ddd;color:var(--blue)}.voice-mic.is-muted{background:#f3f3f3;color:#888}.voice-close{background:#f43f45;color:#fff;box-shadow:0 4px 7px #0001}.voice-close:hover{background:#df3037}@keyframes pulse{50%{opacity:.3}}@keyframes slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@media(min-width:1500px){.header-inner{height:110px}.empty-state{padding:65px 28px 70px}.empty-state h1{font-size:46px}.welcome-portrait{width:106px;height:106px}.empty-state>p{font-size:24px}.suggestions button{font-size:21px}.composer-area{padding:20px 50px 11px}.avatar-stage{width:400px;height:400px}.voice-status{font-size:25px}.voice-bottom{min-height:270px;padding-bottom:50px}}@media(max-width:850px){.header-inner{height:82px;padding:12px 20px;gap:22px}.language select{font-size:15px}.language>svg:first-child{width:19px}.header-portrait{width:48px;height:48px}.identity{gap:12px}.identity strong{font-size:21px}.identity strong>span{font-size:12px}.identity p{font-size:13px}.empty-state{padding:35px 24px}.empty-state h1{font-size:35px}.empty-state>p{font-size:18px;margin-bottom:30px}.welcome-portrait{width:83px;height:83px;margin-bottom:22px}.suggestions button{font-size:16px;padding:17px 18px;border-radius:20px;gap:12px}.composer-area{padding:13px 18px 8px}.composer{gap:9px}.round{width:49px;height:49px}.voice-open{width:54px;height:54px}.composer textarea{min-height:59px;padding:15px 18px;font-size:17px;line-height:27px;border-radius:28px}.round svg{width:22px;height:22px}.attachment-menu{width:290px}.voice-bottom{padding-bottom:30px;min-height:220px}.voice-actions button{width:73px;height:73px}.voice-status{font-size:21px;margin-bottom:35px}}@media(max-width:540px){.header-inner{padding:10px 14px;gap:14px;height:77px}.language{gap:5px}.language select{font-size:13px;padding-right:17px;max-width:90px}.language>svg:first-child{width:18px}.language>svg:last-child{width:12px}.header-portrait{width:40px;height:40px}.header-portrait i{width:13px;height:13px}.identity{gap:9px;min-width:0}.identity strong{font-size:18px;gap:6px}.identity strong>span{font-size:10px;padding:3px 7px}.identity p{font-size:10px;margin-top:4px;max-width:200px}.clear-button{padding:5px;flex-shrink:0}.clear-button svg{width:20px;height:20px}.empty-state{padding:32px 18px}.empty-state h1{font-size:30px;letter-spacing:-.7px}.empty-state>p{font-size:16px;line-height:1.55;margin-bottom:27px}.welcome-portrait{width:72px;height:72px;margin-bottom:20px}.suggestions{grid-template-columns:1fr;gap:10px}.suggestions button{font-size:15px;min-height:60px;padding:16px 18px;border-radius:18px}.suggestions button svg{width:21px;height:21px}.composer-area{padding:10px 10px max(7px,env(safe-area-inset-bottom))}.composer{gap:6px;align-items:center}.round{width:38px;height:38px}.round svg{width:21px;height:21px}.voice-open{width:42px;height:42px;padding:3px}.composer textarea{padding:12px 13px;min-height:49px;line-height:24px;font-size:16px;border-radius:24px}.privacy-note{font-size:8px;line-height:1.5;margin-top:7px}.attachment-menu{left:0;bottom:calc(100% + 15px);width:min(310px,calc(100vw - 24px));padding:8px}.attachment-menu strong{font-size:18px}.attachment-menu small{font-size:14px}.menu-icon{width:45px;height:45px}.messages{padding:22px 16px}.message{font-size:16px;max-width:94%}.message.user{padding:13px 16px}.avatar-stage{width:270px;height:270px;max-width:76vw;max-height:76vw}.voice-character{min-height:310px;padding-top:35px}.voice-bottom{min-height:210px;padding-bottom:max(30px,env(safe-area-inset-bottom))}.voice-actions button{width:72px;height:72px}.voice-status{font-size:21px;margin-bottom:32px}.dictation-status{font-size:12px}.dictation-status small{display:none}}@media(max-height:650px)and (min-width:700px){.empty-state{padding:22px}.welcome-portrait{width:60px;height:60px;margin-bottom:12px}.empty-state h1{font-size:30px}.empty-state>p{font-size:17px;margin-bottom:20px}.suggestions button{font-size:16px;padding:14px 20px;min-height:57px}.header-inner{height:75px}.avatar-stage{width:230px;height:230px}.voice-bottom{min-height:180px;padding-bottom:20px}.voice-status{margin-bottom:22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.portrait-crop{display:inline-block;overflow:hidden;border-radius:50%;border:1px solid #ddd}.header-portrait .portrait-crop{width:100%;height:100%}.portrait-crop img{width:100%;height:100%;object-fit:cover;transform:scale(1.5);transform-origin:50% 22%;border:0}.voice-open{overflow:hidden}.voice-open img{transform:scale(1.42);transform-origin:50% 20%}@media(max-height:850px)and (min-width:700px){.header-inner{height:82px}.header-portrait{width:50px;height:50px}.identity strong{font-size:22px}.identity p{font-size:15px}.empty-state{padding:26px}.welcome-portrait{width:76px;height:76px;margin-bottom:20px}.empty-state h1{font-size:35px}.empty-state>p{font-size:19px;margin-bottom:28px;max-width:760px}.suggestions button{font-size:17px;padding:16px 22px;min-height:64px;border-radius:22px}.composer-area{padding-top:13px}.round{width:52px;height:52px}.voice-open{width:58px;height:58px}.composer textarea{min-height:64px;font-size:19px;padding:17px 22px}.avatar-stage{width:310px;height:310px}.voice-bottom{min-height:200px;padding-bottom:30px}.voice-status{margin-bottom:30px}}.portrait-crop img{object-position:44% 8%;transform:scale(1.35);transform-origin:50% 16%}.voice-open img{transform:scale(1.35);transform-origin:50% 16%}.language-picker{position:relative;flex-shrink:0;z-index:20}.language-trigger{display:flex;gap:8px;align-items:center;background:none;color:#737373;font-weight:600;padding:10px 0;font-size:17px}.language-trigger>span{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.language-popover{position:absolute;inset-block-start:calc(100% + 14px);inset-inline-start:0;width:min(330px,calc(100vw - 32px));border:1px solid #dce2e7;border-radius:18px;background:#fff;box-shadow:0 12px 35px #102a4329;padding:12px}.language-popover input{font:inherit;width:100%;border:1px solid #ccd8e1;background:#f7fafc;padding:12px;border-radius:10px;outline-color:var(--blue);font-size:16px}.language-popover ul{list-style:none;margin:8px 0 0;padding:0;max-height:min(360px,55dvh);overflow:auto}.language-popover li button{display:flex;align-items:center;gap:10px;width:100%;padding:11px 10px;border-radius:10px;text-align:start;background:none;font-size:16px}.language-popover li button:hover,.language-popover li button[aria-current]{background:#e8f5ff;color:#006aa9}.language-popover li small{color:#77838c;font-size:12px;margin-inline-start:auto}.language-popover p{font-size:13px;color:#777;padding:5px}.translation-status{padding:9px 20px;background:#e8f5ff;color:#006aa9;font-size:13px;text-align:center}.dictation-status.formatting span{background:var(--blue)}.dictation-status button,.dictation-retry button{background:#e8f5ff;color:#006aa9;border-radius:8px;padding:7px 10px;font-size:12px;margin-inline-start:auto}.dictation-retry{max-width:1000px;margin:0 auto 10px;padding:10px;background:#fff7e7;border-radius:10px;color:#765421;font-size:13px;display:flex;align-items:center;gap:10px}.formatting button,.dictation-retry button{flex-shrink:0}.suggestions button{text-align:start}html[dir=rtl] .clear-button,html[dir=rtl] .message.user{margin-left:0;margin-right:auto}html[dir=rtl] .attachment-menu{left:auto;right:0}html[dir=rtl] .notice button{margin-left:0;margin-right:auto}html[dir=rtl] .message-text{text-align:start}@media(max-width:600px){.language-trigger{font-size:13px;gap:5px}.language-trigger>span{max-width:84px}.language-trigger>svg:first-child{width:18px}.language-popover{inset-inline-start:-6px}.dictation-status,.dictation-retry{flex-wrap:wrap}.dictation-status small{margin-left:0}.language-picker{max-width:128px}}@media(max-width:540px){.identity>div{min-width:0}.identity strong{flex-wrap:wrap;row-gap:2px}.identity strong>span{max-width:100%;letter-spacing:0;white-space:normal;line-height:1.2}.language-trigger>span{max-width:75px}}.clear-control{position:relative;margin-inline-start:auto;flex-shrink:0}.clear-tooltip{position:absolute;inset-inline-end:0;top:calc(100% + 7px);z-index:20;padding:8px 12px;background:#243443;color:#fff;border-radius:8px;font-size:14px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s}.clear-control:focus-within .clear-tooltip{opacity:1}@media(hover:hover){.clear-control:hover .clear-tooltip{opacity:1}}.clear-control:has(dialog[open]) .clear-tooltip{opacity:0}.clear-dialog{border:1px solid #dbe3e9;border-radius:20px;padding:28px;max-width:440px;width:calc(100% - 32px);color:#172a39;box-shadow:0 16px 60px #0003}.clear-dialog::backdrop{background:#10233380}.clear-dialog h2{font-size:21px;line-height:1.5;margin:0 0 24px}.clear-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}.clear-actions button{padding:12px 18px;border-radius:10px;background:#eef2f5;min-height:44px}.clear-actions .confirm-clear{background:#0075bf;color:#fff}.markdown{white-space:normal}.markdown p{margin:0 0 1em}.markdown>:last-child{margin-bottom:0}.markdown strong{font-weight:700;color:#142331}.markdown a{color:#0066a6;text-decoration:underline;text-underline-offset:3px}.markdown a:hover{color:#004570}.markdown a:focus-visible{outline:3px solid #84c7f3;outline-offset:3px}.markdown ul,.markdown ol{padding-inline-start:1.5em;margin:.7em 0}.markdown li{margin:.3em 0}.markdown h1,.markdown h2,.markdown h3,.markdown h4{font-size:1.15em;line-height:1.4;margin:1.2em 0 .5em}.markdown pre{white-space:pre;overflow:auto;background:#edf2f5;padding:14px;border-radius:10px}.markdown code{font-size:.9em;background:#edf2f5;padding:.1em .25em;border-radius:4px}.markdown pre code{padding:0}.markdown blockquote{margin:1em 0;padding-inline-start:1em;border-inline-start:3px solid #a7cce4;color:#526675}.message-table{overflow-x:auto;max-width:100%}.message-table table{border-collapse:collapse}.message-table th,.message-table td{border:1px solid #d7e1e8;padding:8px 12px;text-align:start}.voice-actions{flex-wrap:wrap;justify-content:center}.speech-play{border:1px solid #ffffff66;border-radius:24px;padding:12px 20px;background:#fff;color:#153a78;font:inherit;cursor:pointer;min-height:48px}.avatar-layers{position:absolute;inset:0;opacity:0;transition:opacity .6s}.avatar-layers.is-visible{opacity:1}.avatar-layers .avatar-layer{transition:none;pointer-events:none}@media(prefers-reduced-motion:reduce){.avatar-layers{display:none}}.avatar-loading{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle,#eafaff,#f8fcff 65%)}.avatar-load-dot{width:10px;height:10px;border-radius:50%;background:#00a8d6;box-shadow:0 0 18px #00bfff66}.avatar-load-dot.is-failed{background:#7c939f;box-shadow:none}
