:root{color-scheme:dark;--bg:#101116;--panel:#17181f;--line:#2c2e3b;--text:#f1f1f6;--muted:#969aad;--accent:#8c7bff;--accent2:#6e5bde;--danger:#ff8896;font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:14px}
.ui-icon{display:block;width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.topbar .icon{transition:color .15s ease,background-color .15s ease,border-color .15s ease}
.topbar .icon:hover{color:#ded8ff;border-color:#625384;background:#282335}
.icon,.send,.archive,.pending button{line-height:1}
.send,.archive,.pending button{display:inline-grid;place-items:center}
.archive .ui-icon,.pending .ui-icon{width:14px;height:14px}
.pending button{width:22px;height:22px;flex-shrink:0}
.pending-image{width:48px;height:48px;object-fit:cover;border-radius:6px;cursor:zoom-in;flex-shrink:0}.pending span{overflow-wrap:anywhere;min-width:0}.pending{max-width:100%}
.checkbox-label{flex-direction:row;align-items:center}.checkbox-label input{width:16px;height:16px;accent-color:var(--accent)}#design-preset{max-width:none}.redesign-button{font-size:11px;text-align:left;border-color:#51456b;background:#242034;margin-bottom:12px;color:#d3c7ff}.redesign-button:hover{background:#312845}
#image-dialog[open]{padding:10px 12px 12px;overflow:auto;max-height:95dvh}
#image-dialog .image-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-bottom:9px;min-height:36px}
#slide-counter{margin-right:auto;color:var(--muted);font-size:12px;padding-left:4px;font-variant-numeric:tabular-nums}
#image-dialog #image-close{position:static}
#image-dialog .image-stage{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;gap:10px;align-items:center}
#image-dialog #large-image{grid-column:2;grid-row:1;max-width:calc(90vw - 100px);max-height:calc(95dvh - 82px)}
#image-dialog .slide-nav{width:38px;height:48px;background:#242532;border-color:#444558;border-radius:12px}
#image-dialog .slide-nav:hover:not(:disabled){background:#353048;border-color:var(--accent);color:#e5dfff}
#image-dialog .slide-nav:disabled{cursor:default;opacity:.25}
#image-dialog .previous{grid-column:1;grid-row:1}#image-dialog .next{grid-column:3;grid-row:1}
#image-dialog .image-stage:has(#slide-previous[hidden]){grid-template-columns:minmax(0,1fr)}
#image-dialog .image-stage:has(#slide-previous[hidden]) #large-image{grid-column:1;max-width:90vw}
@media(max-width:650px){#image-dialog .image-stage{grid-template-columns:28px minmax(0,1fr) 28px;gap:5px}#image-dialog .slide-nav{width:28px;height:42px}#image-dialog #large-image{max-width:calc(90vw - 70px)}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);overflow:hidden}button,input,select,textarea{font:inherit}button,a.button{cursor:pointer}button:disabled{opacity:.45;cursor:wait}button{color:inherit;background:none;border:1px solid var(--line);border-radius:10px;padding:10px 14px}button:hover,a.button:hover{background:#242532}button:focus-visible,a:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}a{color:var(--accent);text-decoration:none}select,input,textarea{color:var(--text);border:1px solid var(--line);background:#1b1c25;border-radius:9px;padding:10px}select{max-width:300px}textarea{resize:none}h1,h2,p{margin:0}.app{display:grid;grid-template-columns:260px minmax(0,1fr);height:100dvh;min-height:0}.sidebar{display:flex;flex-direction:column;min-height:0;padding:24px 16px 16px;border-right:1px solid var(--line);background:#14151b}.brand{display:flex;align-items:center;gap:12px;color:var(--text);font-weight:700;font-size:19px;padding:0 4px 24px}.brand-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,#ab9dff,#5944bd);color:white;font-size:25px}.brand-sub{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:4px}.primary{background:var(--accent2);border-color:var(--accent2);color:#fff}.primary:hover{background:#7b69ed}.new-chat{width:100%;padding:12px}.section-label{font-size:10px;color:var(--muted);letter-spacing:.12em;margin:28px 8px 10px}#chat-list{overflow-y:auto;min-height:0;flex:1}.chat-item{display:flex;align-items:center;gap:5px;border:1px solid transparent;border-radius:11px;padding:12px 10px;margin-bottom:6px;cursor:pointer}.chat-item:hover{background:#1c1d27}.chat-item.active{background:#242035;border-color:#463d66}.chat-item-info{min-width:0;flex:1}.chat-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:13px}.chat-item small{display:block;color:var(--muted);font-size:10px;margin-top:7px}.archive{padding:0;width:23px;height:23px;flex-shrink:0;border:0;color:var(--muted)}.sidebar-footer{border-top:1px solid var(--line);padding:17px 3px 0;font-size:11px;line-height:1.8}.sidebar-footer small{display:block;color:var(--muted);font-size:10px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#ffbc66;margin-right:7px}.dot.ok{background:#52cf9f}.workspace{display:flex;flex-direction:column;min-width:0;min-height:0}.topbar{display:flex;align-items:center;gap:10px;min-height:78px;padding:14px 22px;border-bottom:1px solid var(--line);flex-shrink:0}.chat-heading{min-width:0;flex:1}.chat-heading h1{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-heading p{color:var(--muted);font-size:11px;margin-top:7px}.icon{padding:0;display:inline-grid;place-items:center;width:36px;height:36px;flex-shrink:0;font-size:20px;color:#b8bad0}.work-area{display:flex;flex:1;min-height:0;min-width:0}.chat-pane{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0}.messages{overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0;padding:30px max(24px,calc((100% - 900px)/2));scrollbar-gutter:stable}.welcome{max-width:700px;margin:clamp(20px,8vh,90px) auto 0}.welcome .eyebrow{color:var(--accent);font-size:12px;font-weight:600;letter-spacing:.06em}.welcome h2{font-size:clamp(26px,3vw,40px);line-height:1.2;margin:17px 0}.welcome p{color:var(--muted);line-height:1.8;max-width:580px}.suggestions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}.suggestion{text-align:left;padding:16px;font-size:13px;line-height:1.5;background:#191a23}.suggestion span{display:block;color:var(--muted);font-size:11px;margin-top:6px}.message{display:flex;gap:13px;margin-bottom:29px;max-width:900px}.avatar{display:grid;place-items:center;width:33px;height:33px;flex-shrink:0;border-radius:11px;background:#2c2f3e;color:#bfc3d8;font-weight:700;font-size:11px}.assistant .avatar{background:#32284c;color:#baa5ff;font-size:18px}.message-main{min-width:0;flex:1}.message-name{font-weight:600;font-size:12px;display:flex;align-items:center;gap:10px;margin:2px 0 10px}.message-name time{font-weight:400;font-size:10px;color:var(--muted)}.message-body{font-size:14px;line-height:1.75;overflow-wrap:anywhere}.message-body p{white-space:pre-wrap;margin:0 0 12px}.message-body pre{white-space:pre-wrap;background:#1b1c25;border:1px solid var(--line);padding:14px;border-radius:10px;overflow:auto;font-size:12px}.message-body strong{color:white}.message.error .message-body{color:var(--danger)}.message-meta{color:var(--muted);font-size:10px;margin-top:12px}.attachments,.outputs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.file-card{display:flex;gap:9px;align-items:center;max-width:300px;border:1px solid var(--line);padding:10px;border-radius:10px;background:#1b1c25;color:var(--text);font-size:12px;overflow-wrap:anywhere}.file-card small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.attachment-image{display:block;max-height:200px;max-width:260px;object-fit:contain;border-radius:9px;border:1px solid var(--line);cursor:zoom-in}.outputs{margin:15px 0}.outputs .file-card{border-color:#4b416e}.file-buttons{display:flex;gap:8px;margin-top:8px;font-size:11px}.trace{color:var(--muted);font-size:11px;margin-top:13px}.trace summary{cursor:pointer}.trace pre{white-space:pre-wrap;padding:10px;background:#17181f;border-radius:7px;line-height:1.7}.status{margin:0 24px 8px;color:var(--muted);font-size:12px;display:flex;align-items:center;gap:9px;flex-shrink:0}.spinner{width:13px;height:13px;border:2px solid #4b435c;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.composer-area{flex-shrink:0;padding:10px 24px 16px;background:var(--bg)}.composer{max-width:950px;margin:auto;display:flex;align-items:flex-end;gap:9px;padding:9px;border:1px solid #464154;background:#1b1b25;border-radius:16px}.composer:focus-within{border-color:var(--accent)}#input{background:transparent;resize:none;border:0;outline:none;min-height:38px;max-height:170px;flex:1;padding:8px 4px;line-height:1.6;min-width:0}.composer .icon{border:0}.send{width:38px;height:38px;padding:0;font-size:25px;background:var(--accent2);border:0;flex-shrink:0;border-radius:11px}.stop{font-size:13px;background:#5b3548}.composer-note{font-size:10px;color:var(--muted);text-align:center;margin-top:9px}.pending-files{display:flex;gap:8px;max-width:950px;margin:0 auto 8px;flex-wrap:wrap}.pending{font-size:11px;border:1px solid var(--line);background:#262231;padding:7px 10px;border-radius:9px;display:flex;align-items:center;gap:9px}.pending button{border:0;padding:0;color:var(--muted)}.preview-panel{width:350px;min-width:280px;flex-shrink:0;border-left:1px solid var(--line);display:flex;flex-direction:column;min-height:0;padding:17px 15px;background:#15161d}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.preview-header h2{font-size:14px}#deck-select{width:100%;max-width:none;font-size:11px}.deck-actions{display:flex;gap:7px;margin:12px 0}.button{display:inline-block;border:1px solid var(--line);border-radius:8px;padding:9px;font-size:11px;text-align:center;white-space:nowrap}.deck-actions>*{flex:1}.style-info,.deck-warning{font-size:10px;color:var(--muted);line-height:1.6;margin-bottom:10px}.deck-warning{color:#e0b47d}.slides{flex:1;min-height:0;overflow-y:auto}.slide-card{margin:0 0 16px;border-radius:9px;overflow:hidden;border:1px solid var(--line);background:#1b1c25}.slide-card img{width:100%;display:block;cursor:zoom-in}.slide-caption{display:flex;justify-content:space-between;padding:8px 10px;font-size:10px;color:var(--muted)}.slide-caption button{border:0;padding:0;font-size:10px;color:var(--accent)}.preview-note{font-size:10px;color:var(--muted);line-height:1.6;padding-top:10px;border-top:1px solid var(--line)}dialog{color:var(--text);background:#1a1b24;border:1px solid #464154;border-radius:16px;padding:24px;max-width:600px;width:calc(100% - 40px)}dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:19px}.dialog-heading h2{font-size:19px}label{display:flex;flex-direction:column;gap:8px;color:#bdc0d0;font-size:12px;margin-bottom:17px}label input,label textarea{width:100%}.setting-row{display:flex;gap:20px}.setting-row label{flex:1}.hint{font-size:11px;color:var(--muted);line-height:1.6;margin:0 0 20px}#image-dialog{width:auto;max-width:95vw;max-height:95vh;padding:45px 12px 12px}#large-image{display:block;max-width:90vw;max-height:80vh;object-fit:contain}#image-close{position:absolute;right:10px;top:7px}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#3e2932;border:1px solid #71505a;color:#ffd6dd;padding:14px 22px;border-radius:11px;z-index:100;max-width:80vw;font-size:13px}.mobile{display:none}[hidden]{display:none!important}.drop-active{outline:2px dashed var(--accent);outline-offset:-6px}::-webkit-scrollbar{width:7px}::-webkit-scrollbar-thumb{background:#363645;border-radius:8px}::-webkit-scrollbar-track{background:transparent}@media(max-width:1150px){.sidebar{padding:20px 12px}.app{grid-template-columns:225px minmax(0,1fr)}.preview-panel{width:300px}.topbar{padding:12px 16px;gap:6px}#model{max-width:210px;font-size:11px}.messages{padding:24px 18px}.composer-area{padding:10px 16px 14px}}@media(max-width:850px){.preview-panel{position:absolute;right:0;top:78px;bottom:0;z-index:20;width:min(380px,90vw);box-shadow:-10px 0 40px #0008}.topbar .chat-heading{min-width:70px}#model{max-width:170px}.composer-note{font-size:9px}}@media(max-width:650px){.app{grid-template-columns:minmax(0,1fr)}.sidebar{display:none;position:absolute;left:0;top:0;bottom:0;width:260px;z-index:30;box-shadow:10px 0 40px #0009}.sidebar.open{display:flex}.mobile{display:inline-grid}.topbar{min-height:74px;padding:10px;gap:5px}#model{max-width:150px;font-size:10px}.chat-heading h1{font-size:12px}.chat-heading p{font-size:9px}.topbar .icon{width:30px;height:32px}.messages{padding:22px 13px}.composer-area{padding:7px 10px 12px}.suggestions{grid-template-columns:1fr}.welcome h2{font-size:28px}.message{gap:9px}.avatar{width:28px;height:28px}.message-body{font-size:13px}.preview-panel{top:74px}}
