@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@500;600;700&display=swap";:root{color-scheme:dark;font-family:DM Sans,sans-serif;color:#ecefed;background:#171a18;font-synthesis:none}*{box-sizing:border-box}html,body,#app{min-width:320px;min-height:100%;margin:0}body{background:#171a18;overscroll-behavior:none}button,textarea{font:inherit}button{color:inherit}svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}button:focus-visible,textarea:focus-visible{outline:2px solid #8be0b3;outline-offset:2px}.app-shell{min-height:100dvh;display:flex;flex-direction:column}.chat-header{position:fixed;z-index:10;inset:0 0 auto;height:calc(64px + env(safe-area-inset-top));display:flex;align-items:center;justify-content:space-between;padding:env(safe-area-inset-top) 22px 0;background:#171a18db;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:10px;color:#f2f5f3;text-decoration:none;font:600 16px Manrope}.brand-mark,.avatar,.empty-logo{display:grid;place-items:center;background:#82dbae;color:#0d2518}.brand-mark{width:31px;height:31px;border-radius:10px}.brand-mark svg{width:16px}.new-chat{display:flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid #343936;border-radius:10px;background:transparent;color:#b8bfbb;font-size:12px;cursor:pointer}.new-chat:hover{background:#232724}.new-chat svg{width:16px}.chat{min-height:100dvh;display:flex;flex:1;flex-direction:column;padding-top:calc(64px + env(safe-area-inset-top))}.empty-state{width:100%;max-width:760px;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;margin:auto;padding:0 20px 148px}.empty-logo{width:48px;height:48px;margin-bottom:20px;border-radius:16px;box-shadow:0 12px 35px #49b17c29}.empty-logo svg{width:24px}.empty-state h1{margin:0;font:500 clamp(26px,4vw,34px) "Manrope";letter-spacing:-.04em}.message-list{width:min(760px,calc(100% - 32px));margin:0 auto;padding:38px 0 190px}.message{display:flex;align-items:flex-start;gap:14px;margin-bottom:30px}.message.user{justify-content:flex-end}.message-content{max-width:86%;color:#dfe4e1;font-size:15px;line-height:1.72;white-space:pre-wrap}.message.user .message-content{padding:10px 16px;border-radius:20px 20px 5px;background:#2b302d}.avatar{width:30px;height:30px;flex:0 0 auto;border-radius:10px}.avatar svg{width:15px}.typing{display:flex;gap:5px;padding:10px 0}.typing i{width:5px;height:5px;border-radius:50%;background:#90a098;animation:typing 1s ease-in-out infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}.assistant-progress{display:flex;align-items:center;gap:10px;color:#99a49e;font-size:13px}.assistant-progress .typing{padding:10px 0}.composer-zone{position:fixed;z-index:8;inset:auto 0 0;padding:28px 20px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(transparent,#171a18 32%)}.chat-composer{width:min(760px,100%);min-height:60px;display:flex;align-items:flex-end;gap:8px;margin:auto;padding:10px 10px 10px 18px;border:1px solid #3a403c;border-radius:22px;background:#242825;box-shadow:0 12px 38px #00000047}.chat-composer:focus-within{border-color:#56625b}.chat-composer textarea{max-height:140px;min-height:38px;flex:1;resize:none;padding:9px 0 6px;overflow-y:auto;border:0;outline:0;background:transparent;color:#eef1ef;font-size:15px;line-height:1.45}.chat-composer textarea::placeholder{color:#858d88}.voice-button,.send-button{width:40px;height:40px;display:grid;flex:0 0 auto;place-items:center;padding:0;border:0;border-radius:50%;cursor:pointer}.voice-button{background:transparent;color:#c1c7c3}.voice-button:hover{background:#343a36}.send-button{background:#e8eeea;color:#151916}.send-button:disabled{background:#353b37;color:#747d77;cursor:default}.composer-zone>p{margin:8px 0 0;color:#737b76;text-align:center;font-size:10px}.chat-error{width:min(720px,calc(100% - 32px));margin:0 auto 9px;color:#ffada1;text-align:center;font-size:12px}.voice-screen{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(30px + env(safe-area-inset-top)) 30px calc(30px + env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 40%,#222a26 0,#111412,#0b0d0c)}.voice-sphere{position:relative;width:min(250px,58vw);aspect-ratio:1;margin-bottom:34px;border-radius:50%;background:radial-gradient(circle at 36% 30%,#d5fff0 0,#75e0b0 17%,#3b8fd0 48%,#6041b8 72%,#171b31);box-shadow:0 0 80px #43abdd47,0 0 150px #6041b82e;animation:sphere-breathe 3.2s ease-in-out infinite;overflow:hidden}.sphere-core{position:absolute;top:9%;right:9%;bottom:9%;left:9%;border-radius:46% 54% 58% 42%/43% 40% 60% 57%;background:conic-gradient(from 40deg,rgba(255,255,255,.7),transparent 18%,rgba(86,231,183,.62) 38%,rgba(61,96,224,.75) 62%,rgba(193,89,238,.45) 82%,rgba(255,255,255,.7));filter:blur(13px);animation:sphere-turn 6s linear infinite}.sphere-light{position:absolute;border-radius:50%;filter:blur(18px);mix-blend-mode:screen}.sphere-light.one{width:50%;height:35%;top:8%;left:9%;background:#dbfff1b8;animation:drift-one 4s ease-in-out infinite alternate}.sphere-light.two{width:44%;height:48%;right:3%;bottom:5%;background:#c460ff73;animation:drift-two 4.6s ease-in-out infinite alternate}.voice-screen h2{margin:0 0 9px;font:500 25px Manrope;letter-spacing:-.03em}.voice-caption{min-height:22px;max-width:520px;margin:0;color:#aab4ae;text-align:center;font-size:14px}.voice-operations{width:min(420px,calc(100vw - 48px));display:grid;gap:7px;margin-top:20px;padding:13px 15px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:#ffffff09;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.voice-operation{display:flex;align-items:center;gap:10px;color:#8f9993;font-size:12px;line-height:1.35}.voice-operation.active{color:#e1e8e4}.voice-operation.done{color:#91a49a}.voice-operation.error{color:#ffada1}.operation-state{width:16px;height:16px;display:grid;flex:0 0 auto;place-items:center;border:1px solid #53615a;border-radius:50%;color:#8be0b3;font-size:10px}.voice-operation.active .operation-state{border-color:#82dbae;border-top-color:transparent;animation:operation-spin .8s linear infinite}.voice-operation.error .operation-state{border-color:#ffada1;color:#ffada1}.voice-error{max-width:420px;margin:10px 0 0;color:#ffada1;text-align:center;font-size:12px}.voice-screen>button{position:absolute;bottom:calc(28px + env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;gap:8px;border:0;background:transparent;color:#9ba49f;font-size:11px;cursor:pointer}.voice-screen>button span{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#e9ecea;color:#171a18}@keyframes typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes operation-spin{to{transform:rotate(360deg)}}@keyframes sphere-breathe{0%,to{transform:scale(.97)}50%{transform:scale(1.035)}}@keyframes sphere-turn{to{transform:rotate(360deg)}}@keyframes drift-one{to{transform:translate(45%,22%) rotate(30deg)}}@keyframes drift-two{to{transform:translate(-42%,-28%) scale(1.18)}}@media (max-width: 640px){.chat-header{height:calc(58px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 14px 0}.chat{padding-top:calc(58px + env(safe-area-inset-top))}.message-list{width:calc(100% - 24px);padding-top:24px}.message-content{max-width:90%;font-size:14px}.composer-zone{padding-inline:10px}.chat-composer{border-radius:20px}.empty-state{padding-bottom:128px}.voice-sphere{width:min(220px,56vw);margin-bottom:28px}.voice-operations{margin-top:16px}}
