body { font-family: ui-sans-serif, system-ui, sans-serif; }


a, button { transition: opacity .15s ease; }

 a:hover, button:hover { opacity: .82; }


button { cursor: pointer; }


.chat-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:calc(100vh - 145px);overflow:hidden;border:1px solid #d9dbe1;border-radius:16px;background:#fff}

.chat-sidebar{display:flex;flex-direction:column;gap:18px;padding:16px;background:#071a3d;color:#fff}

.new-chat{width:100%;border:1px solid #c9a978;border-radius:9px;padding:10px;background:transparent;color:#fff;text-align:left;font-weight:600}

.chat-label{margin:6px 0;color:#c9a978;font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}

.chat-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px}

.chat-section-head .chat-label{margin-bottom:0}

.chat-add{flex:0 0 22px;width:22px;height:22px;border:1px solid #c9a978;border-radius:6px;background:transparent;color:#c9a978;font-size:14px;line-height:1}

.chat-add:hover{background:#18305e;opacity:1}

.chat-inline-form{display:flex;gap:6px}

.chat-inline-form input{flex:1;min-width:0;border:1px solid #c9a978;border-radius:7px;padding:7px 8px;background:#0d2247;color:#fff;font:inherit;font-size:.8rem;outline:none}

.chat-inline-form input::placeholder{color:#8aa0c9}

.chat-inline-form button{border:0;border-radius:7px;padding:0 10px;background:#c9a978;color:#071a3d;font-weight:700;font-size:.8rem}

.chat-projects{display:flex;flex-direction:column;gap:8px}

.chat-projects-list{display:flex;flex-direction:column;gap:2px}

.project-row{display:flex;align-items:center;gap:4px}

.project-link{display:flex;flex:1;min-width:0;align-items:center;gap:7px;overflow:hidden;padding:8px 9px;border-radius:7px;color:#e8ecf6;text-decoration:none}

.project-link.is-active,.project-link:hover{background:#18305e;opacity:1}

.project-icon{flex:0 0 auto;color:#c9a978;font-size:.62rem;transform:rotate(90deg)}

.project-name{overflow:hidden;flex:1;min-width:0;font-size:.86rem;white-space:nowrap;text-overflow:ellipsis}

.project-count{flex:0 0 auto;color:#93a3c4;font-size:.72rem}

.project-delete{margin:0}

.project-delete button{border:0;border-radius:6px;padding:2px 6px;background:transparent;color:#93a3c4;font-size:14px;line-height:1}

.project-delete button:hover{background:#4a2a26;color:#fca5a5;opacity:1}

.chat-clear-filter{flex:0 0 auto;color:#c9a978;font-size:.72rem;text-decoration:none}

.chat-clear-filter:hover{opacity:1;text-decoration:underline}

.chat-history-empty{margin:6px 2px;color:#93a3c4;font-size:.78rem}

.chat-folder-form{margin-left:auto;display:flex;align-items:center}

.chat-folder-form select{border:1px solid #d5d9df;border-radius:8px;padding:6px 8px;background:#fff;color:#071a3d;font:inherit;font-size:.78rem}

.chat-history{flex:1;min-height:0;overflow:auto}

.conversation-link{display:block;overflow:hidden;margin:4px 0;padding:10px;border-radius:7px;color:#e8ecf6;text-decoration:none;white-space:nowrap;text-overflow:ellipsis}

.conversation-link.is-active,.conversation-link:hover{background:#18305e;opacity:1}

.back-dashboard{color:#dce5f8;text-decoration:none}

.chat-main{display:flex;min-width:0;flex-direction:column;background:#fbfaf7}

.chat-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #e6e1d9}

.chat-header h1{margin:0;font-size:1rem}

.chat-header p{margin:2px 0 0;color:#64748b;font-size:.78rem}

.online-dot{color:#167143;font-size:.8rem}

.online-dot::before{content:'';display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#23a569}

.chat-messages{flex:1;overflow:auto;padding:28px clamp(16px,5vw,80px)}

.chat-empty{display:grid;place-content:center;height:100%;min-height:340px;text-align:center}

.chat-empty h2{margin:12px 0 5px;font-size:1.8rem}

.chat-empty p{margin:0;color:#64748b}

.chat-mark{margin:auto;display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:#071a3d;color:#c9a978;font-size:24px}

.message{display:flex;align-items:flex-start;gap:12px;max-width:820px;margin:0 auto 22px;width:100%}

.message-assistant{justify-content:flex-start}

.message-user{justify-content:flex-end}

.message-avatar{display:grid;flex:0 0 36px;place-items:center;width:36px;height:36px;border-radius:12px;background:#e9edf3;color:#071a3d;font-size:.8rem;font-weight:700}

.message-assistant .message-avatar{background:#071a3d;color:#c9a978}

.message-user .message-avatar{order:2;background:#111827;color:#f8fafc}

.message-content{min-width:0;max-width:720px;line-height:1.6;padding:14px 16px;border-radius:22px;background:#f8f9ff;color:#0f172a;box-shadow:0 10px 30px rgba(7,10,41,.06)}

.message-user .message-content{background:#071a3d;color:#f8fafc}

.message-content p{margin:0;white-space:pre-wrap;word-break:break-word}

.message-user .message-content p{color:inherit}

.message-error .message-content{color:#b42318}

.chat-composer{display:flex;gap:10px;align-items:flex-end;margin:0 auto;width:min(820px,calc(100% - 32px));padding:12px 14px;border:1px solid #d5d9df;border-radius:15px;background:#fff;box-shadow:0 8px 20px #071a3d0d}

.chat-composer textarea{width:100%;max-height:180px;resize:none;border:0;outline:0;font:inherit;line-height:1.45}

.chat-composer button{display:grid;place-items:center;flex:0 0 35px;width:35px;height:35px;border:0;border-radius:9px;background:#071a3d;color:#fff;font-size:20px}

.chat-composer button:disabled{background:#94a3b8}

.chat-note{margin:8px 0 17px;text-align:center;color:#8590a1;font-size:.72rem}

@media(max-width:700px){.chat-shell{grid-template-columns:1fr}

.chat-sidebar{display:none}

.chat-messages{padding:22px 16px}

.chat-header{padding:14px 16px}

}

@media(min-width:701px){main:has(.chat-shell){max-width:100%;padding:0}

body:has(.chat-shell) header nav{max-width:100%}

.chat-shell{height:calc(100dvh - 73px);height:calc(100vh - 73px);min-height:0;border:0;border-radius:0}

.chat-messages{padding:28px clamp(16px,4vw,48px)}

.message{max-width:none}

.chat-composer{width:calc(100% - 32px)}

}

.sidebar-utilities{display:flex;flex-direction:column;gap:2px;margin-top:-10px}
.sidebar-action{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:8px;color:#3f4149;font-size:.86rem;text-decoration:none}
.sidebar-action:hover{background:#e9e9f0;opacity:1}
.sidebar-icon{display:inline-grid;place-items:center;width:14px;color:#525561;font-size:1rem}
.chat-shell{border:0;border-radius:0;background:#fff}
.chat-sidebar{gap:17px;padding:10px 8px;background:#f7f6fc;color:#3d3f47;border-right:1px solid #dedee6}
.new-chat{padding:7px 8px;border:0;border-radius:8px;background:transparent;color:#3f4149;font-size:.86rem;font-weight:400}
.new-chat:hover{background:#e9e9f0;opacity:1}
.chat-label{margin:6px 0;color:#a2a2ad;font-size:.78rem;font-weight:500;letter-spacing:0;text-transform:none}
.chat-add{border:0;color:#646673}
.chat-add:hover{background:#e9e9f0;color:#32343b}
.chat-projects{gap:5px}
.project-link{padding:7px 8px;color:#41434b}
.project-link.is-active,.project-link:hover{background:#e6e6ed;color:#30323a}
.project-icon{color:#505360;transform:none}
.project-count{display:none}
.project-delete{display:none}
.project-name{font-size:.86rem}
.chat-history-empty{margin:4px 24px;color:#b8b8c1;font-size:.8rem}
.conversation-link{margin:2px 0 2px 24px;padding:6px 8px;color:#565862;font-size:.82rem}
.conversation-link.is-active,.conversation-link:hover{background:#e6e6ed;color:#30323a}
.back-dashboard{margin-top:auto;padding:8px;color:#747681;font-size:.78rem}
.chat-main{position:relative;background:#fff}
.chat-header{display:none}
.chat-messages{padding:24px clamp(18px,6vw,100px);scroll-behavior:smooth}
.chat-empty{min-height:0;height:100%;padding-bottom:118px}
.chat-empty h2{margin:0;color:#242428;font-size:1.75rem;font-weight:500;letter-spacing:-.025em}
.message{max-width:760px}
.chat-composer{gap:0;display:block;flex:none;margin:0 auto;width:min(640px,calc(100% - 32px));padding:11px 14px 7px;border:1px solid #dddddf;border-radius:19px;background:#fff;box-shadow:0 7px 22px rgba(26,27,31,.11)}
.chat-composer textarea{display:block;min-height:32px;padding:2px 0 7px;color:#27272b;font-size:.85rem;line-height:1.45}
.chat-composer textarea::placeholder{color:#96969f}
.composer-toolbar{display:flex;align-items:center;gap:9px;min-height:30px}
.composer-toolbar button{display:block;flex:0 0 auto;width:auto;height:auto;padding:0;border:0;background:transparent;color:#6f7079;font:inherit}
.composer-plus{font-size:22px!important;font-weight:300!important;line-height:1}
.approval-control{font-size:.76rem!important;color:#96969f!important}
.approval-control span{font-size:.85rem;margin-right:3px}
.composer-spacer{flex:1}
.model-control{font-size:.72rem!important;color:#34353b!important;white-space:nowrap}
.model-control span{color:#999aa3;margin-left:3px}
.model-picker{position:relative}.model-picker-menu{position:absolute;right:0;bottom:calc(100% + 12px);z-index:20;width:248px;padding:7px 0;border:1px solid #32343a;border-radius:8px;background:#202126;color:#e7e7ea;box-shadow:0 14px 35px rgba(0,0,0,.25)}.model-picker-menu.hidden{display:none}.model-menu-title{margin:6px 11px 5px;color:#898b95;font-size:.7rem}.model-menu-divider{margin-top:8px;padding-top:9px;border-top:1px solid #35363b}.model-option{display:flex!important;align-items:center;gap:8px;width:100%!important;padding:6px 11px!important;color:#e7e7ea!important;text-align:left;font-size:.76rem!important}.model-option:hover,.model-option.is-selected{background:#303138!important;opacity:1}.model-option-icon{width:12px;color:#b9bac3}.model-option:nth-of-type(3) .model-option-icon{color:#52c276}.model-check{margin-left:auto;color:#41cd91;font-size:.9rem}
.upgrade-plan-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 6px 8px;padding:9px 7px 10px;border-bottom:1px solid #35363b}.upgrade-plan-row span{display:flex;flex-direction:column;gap:2px;font-size:.74rem}.upgrade-plan-row strong{color:#fff;font-weight:600}.upgrade-plan-row small{color:#a8a9b1;font-size:.65rem}.upgrade-plan-row a{padding:5px 10px;border:1px solid #6f717b;border-radius:14px;color:#fff;font-size:.69rem;text-decoration:none}.upgrade-plan-row a:hover{background:#35363b;opacity:1}
.message{max-width:920px;margin-bottom:34px}.message-avatar{display:none}.message-user{justify-content:flex-end}.message-user .message-content{max-width:min(72%,620px);padding:17px 28px;border-radius:37px;background:#f1f1f1;color:#22242a;box-shadow:none}.message-assistant .message-content{max-width:none;padding:0;background:transparent;color:#242529;box-shadow:none;font-size:1rem;line-height:1.58}.message-content p{white-space:pre-wrap}.message-assistant .message-content p{white-space:normal}.message-assistant .message-content h1,.message-assistant .message-content h2,.message-assistant .message-content h3{margin:26px 0 12px;color:#202126;font-weight:500;line-height:1.22}.message-assistant .message-content h1{font-size:1.5rem}.message-assistant .message-content h2{font-size:1.3rem}.message-assistant .message-content h3{font-size:1.08rem;font-weight:600}.message-assistant .message-content strong{font-weight:700}.message-assistant .message-content hr{margin:25px 0;border:0;border-top:1px solid #d7d7d7}
.voice-control{font-size:17px!important;line-height:1}
.chat-composer #send-button{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;border-radius:50%;background:#272930;color:#fff;font-size:18px;line-height:1}
.chat-composer #send-button:disabled{background:#a8a9b1}
.composer-context{display:flex;align-items:center;gap:13px;width:min(614px,calc(100% - 58px));height:40px;margin:0 auto 8px;padding:0 14px;border-radius:0 0 18px 18px;background:#f6f6f6;color:#4f5058;font-size:.75rem}
.context-folder{display:flex;align-items:center;gap:5px}
.context-plugin{display:flex;align-items:center;gap:3px}
.context-plugin i{display:block;width:11px;height:11px;border-radius:3px;background:#3182f6}
.context-plugin i:nth-child(2){background:#ed4d4f;margin-left:-5px}
.context-plugin i:nth-child(3){background:#4caf50;margin-left:-5px}
.chat-note{display:none}

@media(min-width:701px){body:has(.chat-shell)>header{display:none}
main:has(.chat-shell){max-width:none;padding:0}
.chat-shell{grid-template-columns:267px minmax(0,1fr);height:100dvh;min-height:100dvh}
.chat-messages{padding:24px clamp(18px,6vw,100px)}
.chat-composer{width:min(640px,calc(100% - 32px))}
}

@media(max-width:700px){.sidebar-utilities{display:none}
.chat-composer{margin-bottom:0}
.composer-context{width:calc(100% - 58px)}
.approval-control,.model-control{display:none}
.chat-empty{padding-bottom:88px}
}
.conversation-row{position:relative;display:flex;align-items:center;margin:2px 0 2px 16px;border-radius:8px}.conversation-row.is-active,.conversation-row:hover{background:#e6e6ed}.conversation-row .conversation-link{flex:1;min-width:0;margin:0;padding:7px 4px 7px 8px;background:transparent!important;color:#565862}.conversation-row.is-active .conversation-link,.conversation-row:hover .conversation-link{color:#30323a}.conversation-pin-form{display:none;margin:0}.conversation-row:hover .conversation-pin-form,.conversation-row.is-active .conversation-pin-form{display:block}.conversation-pin,.conversation-menu summary{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:5px;background:transparent;color:#747680;font-size:14px;line-height:1}.conversation-pin:hover,.conversation-menu summary:hover{background:#d8d8e1;opacity:1}.conversation-pin.is-pinned{display:grid;color:#3e414b}.conversation-menu{position:relative;margin-right:3px}.conversation-menu summary{list-style:none;font-size:11px;font-weight:700;letter-spacing:1px}.conversation-menu summary::-webkit-details-marker{display:none}.conversation-menu-popover{position:absolute;z-index:30;top:28px;right:0;width:178px;padding:6px;border:1px solid #e2e2e8;border-radius:14px;background:#fff;box-shadow:0 10px 28px rgba(20,20,28,.16)}.conversation-menu-popover button,.conversation-menu-popover label{display:flex;align-items:center;gap:9px;width:100%;min-height:30px;padding:6px 8px;border:0;border-radius:7px;background:transparent;color:#25262c;font:inherit;font-size:.77rem;text-align:left}.conversation-menu-popover button:hover,.conversation-menu-popover label:hover{background:#f0f0f3;opacity:1}.conversation-menu-popover form{margin:0}.conversation-menu-popover select{max-width:94px;margin-left:auto;border:0;background:transparent;color:#555762;font:inherit;font-size:.68rem;outline:0}.conversation-menu-popover .delete-chat{color:#ef3a48}.rename-dialog{width:min(360px,calc(100% - 32px));border:0;border-radius:16px;padding:0;box-shadow:0 18px 55px rgba(0,0,0,.2)}.rename-dialog::backdrop{background:rgba(15,16,20,.25)}.rename-dialog form{display:grid;gap:14px;padding:20px}.rename-dialog h2{margin:0;font-size:1rem}.rename-dialog input[type=text]{border:1px solid #d7d7dd;border-radius:8px;padding:9px 10px;font:inherit;outline-color:#6d6f7a}.rename-dialog form>div{display:flex;justify-content:flex-end;gap:8px}.rename-dialog button{border:0;border-radius:8px;padding:8px 12px;background:#282a31;color:#fff;font:inherit;font-size:.8rem}.rename-dialog .rename-cancel{background:#ededf0;color:#45464d}
