.chat-root{color:#e8e8e8;background:#000;height:100svh;font-family:Söhne,Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;display:flex;overflow:hidden}.chat-sidebar{z-index:40;background:#000;border-right:1px solid #ffffff0f;flex-direction:column;flex-shrink:0;width:240px;transition:width .25s cubic-bezier(.4,0,.2,1),opacity .2s;display:flex;position:relative;overflow:hidden}.chat-sidebar.closed{border-right:none;width:0}.sidebar-header{flex-shrink:0;gap:8px;padding:14px 12px;display:flex}.sidebar-btn{color:#d4d4d4;cursor:pointer;background:0 0;border:1px solid #ffffff14;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-family:inherit;font-size:.82rem;font-weight:500;transition:all .15s;display:flex}.sidebar-btn:hover{background:#ffffff0a}.sidebar-btn.primary{flex:1}.sidebar-search{padding:0 12px 10px}.sidebar-search input{color:#fff;background:#ffffff0a;border:none;border-radius:8px;outline:none;width:100%;padding:8px 12px 8px 32px;font-family:inherit;font-size:.8rem}.sidebar-search input::placeholder{color:#fff3}.sidebar-body{flex:1;padding:0 8px 16px;overflow-y:auto}.sidebar-body::-webkit-scrollbar{width:3px}.sidebar-body::-webkit-scrollbar-thumb{background:#ffffff0f;border-radius:3px}.sidebar-label{text-transform:uppercase;letter-spacing:.1em;color:#fff3;-webkit-user-select:none;user-select:none;padding:20px 10px 8px;font-size:.6rem;font-weight:600}.sidebar-item{color:#ffffff80;cursor:pointer;text-align:left;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-family:inherit;font-size:.82rem;transition:all .12s;display:flex;overflow:hidden}.sidebar-item:hover{color:#ffffffb3;background:#ffffff0a}.sidebar-item.active{color:#fff;background:#ffffff12}.sidebar-item-icon{opacity:.5;flex-shrink:0;justify-content:center;align-items:center;width:20px;display:flex}.sidebar-footer{border-top:1px solid #ffffff0d;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px;display:flex}.sidebar-user{cursor:pointer;align-items:center;gap:8px;display:flex}.sidebar-avatar{color:#fff6;background:#ffffff0f;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.7rem;font-weight:600;display:flex}.sidebar-username{color:#ffffff80;font-size:.78rem;font-weight:500}.sidebar-actions{gap:4px;display:flex}.icon-btn{color:#ffffff40;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;transition:all .15s;display:flex}.icon-btn:hover{color:#ffffffb3;background:#ffffff0f}.chat-main{background:#000;flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.chat-topbar{background:#000;border-bottom:1px solid #ffffff0d;flex-shrink:0;justify-content:space-between;align-items:center;height:48px;padding:0 20px;display:flex}.topbar-left{align-items:center;gap:12px;display:flex}.topbar-model{cursor:pointer;color:#d4d4d4;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-family:inherit;font-size:.88rem;font-weight:600;transition:background .15s;display:flex}.topbar-model:hover{background:#ffffff0a}.topbar-right{align-items:center;gap:8px;display:flex}.topbar-link{color:#ffffff59;border-radius:6px;padding:4px 10px;font-size:.78rem;font-weight:500;text-decoration:none;transition:all .15s}.topbar-link:hover{color:#ffffffb3}.chat-messages{flex:1;position:relative;overflow-y:auto}.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-thumb{background:#ffffff0a;border-radius:4px}.messages-inner{max-width:720px;margin:0 auto;padding:32px 28px 160px}.chat-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:40px 24px;display:flex}.chat-empty-icon{background:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:24px;font-size:1.3rem;display:flex}.chat-empty h1{letter-spacing:-.02em;color:#fff;margin-bottom:0;font-size:1.5rem;font-weight:500}.msg-row{align-items:flex-start;gap:14px;margin-bottom:0;padding:20px 0;display:flex}.msg-row.user{justify-content:flex-end}.msg-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-top:2px;font-size:.75rem;display:flex}.msg-avatar.assistant-av{color:#fff9;background:#ffffff0f}.msg-body{flex:1;min-width:0}.msg-content{color:#ffffffd9;font-size:.92rem;font-weight:350;line-height:1.8}.msg-content.user-msg{color:#fff;background:#111;border-radius:18px;max-width:85%;padding:12px 18px;display:inline-block}.msg-content p{margin:0 0 14px;line-height:1.8}.msg-content p:last-child{margin-bottom:0}.msg-content strong{color:#fff;font-weight:600}.msg-content em{color:#ffffff80}.msg-content ul,.msg-content ol{margin:10px 0 16px;padding-left:20px}.msg-content li{color:#ffffffbf;margin-bottom:8px;line-height:1.8}.msg-content h1{color:#fff;border-bottom:1px solid #ffffff0f;margin:28px 0 12px;padding-bottom:8px;font-size:1.3rem;font-weight:700}.msg-content h2{color:#fff;margin:24px 0 8px;font-size:1.1rem;font-weight:700}.msg-content h3{color:#ffffffe6;margin:20px 0 6px;font-size:1rem;font-weight:600}.msg-content blockquote{color:#ffffff73;background:#ffffff05;border-left:2px solid #ffffff1a;border-radius:0 8px 8px 0;margin:14px 0;padding:8px 16px;font-style:italic}.msg-content a{color:#ffffffa6;text-underline-offset:3px;text-decoration:underline}.msg-content a:hover{color:#fff}.msg-content code:not(pre code){color:#fff;background:#ffffff14;border:1px solid #ffffff0d;border-radius:5px;padding:2px 6px;font-family:SF Mono,Fira Code,monospace;font-size:.85rem}.typing-cursor:after{content:"●";color:#fff;vertical-align:middle;margin-left:6px;font-size:.7em;animation:1s cubic-bezier(.4,0,.6,1) infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3;transform:scale(.8)}}.msg-content table{border-collapse:collapse;border:1px solid #ffffff14;border-radius:12px;width:100%;margin:18px 0;overflow:hidden}.msg-content thead{background:#ffffff08}.msg-content th{text-align:left;color:#fff;border-bottom:1px solid #ffffff0f;padding:10px 12px;font-weight:600}.msg-content td{color:#ffffffa6;border-bottom:1px solid #ffffff08;padding:10px 12px}.msg-content tr:last-child td{border-bottom:none}.code-block{background:#111;border:1px solid #ffffff0f;border-radius:10px;margin:14px 0;overflow:hidden}.code-header{background:#ffffff08;border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.code-lang{color:#ffffff4d;text-transform:uppercase;letter-spacing:.05em;font-size:.65rem;font-weight:600}.code-actions{gap:4px;display:flex}.code-btn{color:#fff6;cursor:pointer;background:#ffffff0a;border:none;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-family:inherit;font-size:.7rem;transition:all .15s;display:flex}.code-btn:hover{color:#fff;background:#ffffff14}.code-btn.copied{color:#22c55e;background:#22c55e1f}.code-block pre{background:0 0;margin:0;padding:16px;overflow-x:auto}.code-block code{color:#ffffffb3;white-space:pre;font-family:SF Mono,Fira Code,monospace;font-size:.82rem;line-height:1.65}.msg-actions{opacity:0;gap:2px;margin-top:8px;transition:opacity .15s;display:flex}.msg-row:hover .msg-actions{opacity:1}.action-btn{color:#fff3;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;display:flex}.action-btn:hover{color:#ffffffb3;background:#ffffff0f}.loading-dots{align-items:center;gap:4px;padding:8px 0;display:flex}.loading-dot{background:#ffffff40;border-radius:50%;width:5px;height:5px;animation:.8s ease-in-out infinite alternate dotPulse}.loading-dot:nth-child(2){animation-delay:.15s}.loading-dot:nth-child(3){animation-delay:.3s}@keyframes dotPulse{0%{opacity:.3}to{opacity:1}}.input-wrapper{z-index:10;background:linear-gradient(#0000,#000 20%);padding:0 20px 24px;position:relative}.input-container{max-width:720px;margin:0 auto}.input-box{background:#111;border:1px solid #ffffff0f;border-radius:22px;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 4px 24px #0006}.input-box:focus-within{border-color:#ffffff26;transform:translateY(-1px);box-shadow:0 0 0 1px #ffffff0d,0 8px 32px #0009}.input-box textarea{color:#fff;resize:none;background:0 0;border:none;outline:none;width:100%;min-height:56px;max-height:240px;padding:18px 20px 4px;font-family:inherit;font-size:.95rem;line-height:1.6}.input-box textarea::placeholder{color:#ffffff40}.input-toolbar{justify-content:space-between;align-items:center;padding:6px 12px 10px;display:flex}.toolbar-left{align-items:center;gap:4px;display:flex}.toolbar-right{align-items:center;gap:6px;display:flex}.tool-btn{color:#ffffff59;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:18px;align-items:center;gap:5px;padding:5px 10px;font-family:inherit;font-size:.76rem;transition:all .15s;display:flex}.tool-btn:hover{color:#fff9;background:#ffffff0a}.tool-btn.active{color:#fff;background:#ffffff14}.send-btn{cursor:pointer;color:#ffffff4d;background:#ffffff1f;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.send-btn.ready{color:#000;background:#fff}.send-btn:disabled{opacity:.2;cursor:not-allowed}.attach-btn{color:#ffffff40;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.attach-btn:hover{color:#fff9}.input-disclaimer{text-align:center;color:#ffffff2e;margin-top:10px;font-size:.68rem;font-weight:400}.file-preview{flex-wrap:wrap;align-items:center;gap:8px;padding:4px 14px 10px;display:flex}.file-chip{color:#ffffff80;background:#ffffff0d;border:1px solid #ffffff0f;border-radius:18px;align-items:center;gap:6px;padding:5px 12px;font-size:.72rem;display:inline-flex}.file-chip button{color:#ffffff4d;cursor:pointer;background:0 0;border:none;padding:0;display:flex}.upload-indicator{color:#fff6;align-items:center;gap:8px;padding:4px 16px 10px;font-size:.75rem;display:flex}.error-bar{max-width:720px;margin:16px auto 0;padding:0 28px}.error-inner{background:#ef44440f;border:1px solid #ef44441f;border-radius:12px;align-items:center;gap:12px;padding:12px 16px;display:flex}.error-inner p{color:#f87171;flex:1;margin:0;font-size:.82rem}.error-inner button{color:#fff;cursor:pointer;background:#ffffff0f;border:none;border-radius:6px;padding:5px 12px;font-family:inherit;font-size:.75rem}.status-pill{background:#ffffff08;border:1px solid #ffffff0d;border-radius:18px;align-items:center;gap:8px;width:fit-content;margin:0 auto 12px;padding:8px 14px;display:flex}.status-pill .spinner{border:1.5px solid #ffffff14;border-top-color:#fff9;border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin}.status-pill span{color:#ffffff80;font-size:.73rem;font-weight:500}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000d9;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-box{background:#111;border:1px solid #ffffff0f;border-radius:18px;flex-direction:column;width:100%;max-width:640px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 24px 80px #000000b3}.modal-header{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h2{color:#fff;margin:0;font-size:1.02rem;font-weight:600}.modal-tabs{border-bottom:1px solid #ffffff0d;gap:2px;padding:8px 16px;display:flex;overflow-x:auto}.modal-tab{color:#fff6;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;padding:8px 14px;font-family:inherit;font-size:.8rem;font-weight:500;transition:all .12s}.modal-tab:hover{background:#ffffff0a}.modal-tab.active{color:#fff;background:#ffffff14}.modal-body{flex:1;padding:24px;overflow-y:auto}.modal-body::-webkit-scrollbar{width:3px}.modal-body::-webkit-scrollbar-thumb{background:#ffffff0f;border-radius:3px}.setting-row{border-bottom:1px solid #ffffff08;justify-content:space-between;align-items:center;padding:14px 0;display:flex}.setting-row label{color:#d4d4d4;font-size:.86rem}.setting-select{color:#fff9;background:#ffffff0d;border:1px solid #ffffff0f;border-radius:8px;outline:none;padding:6px 10px;font-family:inherit;font-size:.82rem}.toggle{cursor:pointer;background:#ffffff14;border:none;border-radius:20px;width:40px;height:22px;transition:background .2s;position:relative}.toggle.on{background:#10b981}.toggle .knob{background:#fff;border-radius:50%;width:16px;height:16px;transition:left .2s;position:absolute;top:3px;left:3px}.toggle.on .knob{left:21px}.setting-textarea{color:#fff;resize:none;background:#ffffff08;border:1px solid #ffffff0d;border-radius:10px;outline:none;width:100%;height:100px;margin-top:8px;padding:12px 14px;font-family:inherit;font-size:.85rem}.logout-modal{text-align:center;background:#111;border:1px solid #ffffff0f;border-radius:18px;width:320px;padding:28px}.logout-modal h4{color:#fff;margin-bottom:8px;font-size:1.02rem;font-weight:600}.logout-modal p{color:#ffffff59;margin-bottom:20px;font-size:.82rem}.logout-btns{gap:10px;display:flex}.logout-btns button{cursor:pointer;border-radius:10px;flex:1;padding:10px;font-family:inherit;font-size:.84rem;font-weight:500;transition:all .15s}.btn-cancel{color:#fff;background:#ffffff0d;border:1px solid #ffffff0f}.btn-confirm{color:#000;background:#fff;border:none;font-weight:600}.model-dropdown{z-index:9999;background:#111;border:1px solid #ffffff14;border-radius:14px;min-width:220px;padding:6px;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 16px 48px #000000b3}.model-dropdown-label{color:#fff3;text-transform:uppercase;letter-spacing:.06em;padding:8px 10px 4px;font-size:.6rem;font-weight:600}.model-option{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:8px 10px;font-family:inherit;transition:background .12s;display:flex}.model-option:hover{background:#ffffff0a}.model-option.active{background:#ffffff0f}.model-option .name{color:#fff9;flex:1;font-size:.82rem}.model-option.active .name{color:#fff}@media (max-width:768px){.chat-sidebar{z-index:200;position:fixed;top:0;bottom:0;left:0;box-shadow:8px 0 30px #0009}.chat-sidebar.closed{width:0;box-shadow:none}.mobile-backdrop{z-index:190;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;position:fixed;inset:0}.messages-inner{padding:20px 16px 160px}.input-wrapper{padding:0 12px 12px}.modal-backdrop{padding:0}.modal-box{border-radius:0;max-width:100%;max-height:100%}}@media (max-width:480px){.msg-content.user-msg{max-width:92%}.chat-topbar{padding:0 12px}}
.workspace-root{z-index:40;background:#0a0a0a;border-left:1px solid #ffffff14;flex-direction:column;flex-shrink:0;width:50%;max-width:800px;transition:width .3s cubic-bezier(.4,0,.2,1),opacity .2s,transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;box-shadow:-10px 0 30px #0000004d}.workspace-root.closed{opacity:0;pointer-events:none;width:0%;box-shadow:none;border-left-color:#0000}@media (max-width:1024px){.workspace-root{z-index:2000;width:100%;max-width:none;position:fixed;top:0;bottom:0;right:0}.workspace-root.closed{opacity:1;width:100%;transform:translate(100%)}}.workspace-root.fullscreen{z-index:2000;width:100%!important}.workspace-header{background:#0d0d0d;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;height:52px;padding:0 16px;display:flex}.workspace-tabs{gap:4px;display:flex}.workspace-tab{color:#fff6;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:6px 12px;font-size:.8rem;font-weight:500;transition:all .2s;display:flex}.workspace-tab:hover{color:#ffffffb3;background:#ffffff0a}.workspace-tab.active{color:#fff;background:#ffffff14}.workspace-actions{align-items:center;gap:8px;display:flex}.workspace-icon-btn{color:#fff6;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.workspace-icon-btn:hover{color:#fff;background:#ffffff0f}.workspace-icon-btn.close:hover{color:#f87171;background:#ef44441a}.workspace-divider{background:#ffffff14;width:1px;height:20px;margin:0 4px}.workspace-content{flex:1;position:relative;overflow:hidden}.preview-area{background:#fff;width:100%;height:100%}.code-area{width:100%;height:100%;padding:20px;overflow-y:auto}.code-area pre{color:#fffc;margin:0;font-family:SF Mono,Fira Code,monospace;font-size:.85rem;line-height:1.6}.workspace-footer{background:#0d0d0d;border-top:1px solid #ffffff0d;justify-content:space-between;align-items:center;height:40px;padding:0 16px;display:flex}.footer-info{color:#ffffff4d;align-items:center;gap:8px;font-size:.7rem;display:flex}.footer-actions{gap:4px;display:flex}.footer-btn{color:#fff3;cursor:pointer;background:0 0;border:none;padding:4px}.footer-btn:hover{color:#ffffff80}.no-scrollbar::-webkit-scrollbar{display:none}
