:root {
  --k2r2-navy: #12143c;
  --k2r2-blue: #2f8fe8;
  --k2r2-cyan: #05c7c7;
  --k2r2-green: #66ef9b;
  --sidebar-w: 292px;
  --sidebar-compact-w: 74px;
}
body { font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.btn-k2r2 { --bs-btn-color:#fff; --bs-btn-bg:var(--k2r2-navy); --bs-btn-border-color:var(--k2r2-navy); --bs-btn-hover-bg:#20245b; --bs-btn-hover-border-color:#20245b; }
.auth-visual { background: radial-gradient(circle at 25% 20%, rgba(102,239,155,.28), transparent 34%), linear-gradient(145deg, #13153f 0%, #17256d 58%, #097e9f 100%); overflow:hidden; position:relative; }
.auth-visual::before,.auth-visual::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.11); border-radius:50%; }
.auth-visual::before { width:620px;height:620px;right:-210px;top:-180px; }.auth-visual::after{width:420px;height:420px;left:-170px;bottom:-180px}
.auth-visual-content { position:relative; z-index:1; max-width:600px; }.auth-robot{max-width:320px;width:70%;filter:drop-shadow(0 28px 40px rgba(0,0,0,.28));border-radius:28px}.brand-avatar{width:58px;height:58px;object-fit:cover;border-radius:16px}.auth-card-wrap{max-width:620px}.eyebrow{font-size:.76rem;letter-spacing:.14em;font-weight:800;color:var(--k2r2-cyan)}
.otp-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.6rem}.otp{text-align:center;font-size:1.5rem;font-weight:700;padding:.75rem .2rem}.otp:focus{border-color:var(--k2r2-cyan);box-shadow:0 0 0 .25rem rgba(5,199,199,.14)}
.app-shell{height:100vh;overflow:hidden;background:var(--bs-tertiary-bg)}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);background:var(--bs-body-bg);border-right:1px solid var(--bs-border-color);z-index:1030;transition:width .2s ease}.sidebar.compact{width:var(--sidebar-compact-w)}.sidebar.compact .sidebar-label,.sidebar.compact .accordion-button::after,.sidebar.compact .hover-action,.sidebar.compact .chat-actions{display:none!important}.sidebar.compact .accordion-button{justify-content:center}.sidebar.compact .sidebar-action{padding-inline:.5rem}.sidebar-logo{width:42px;height:42px;border-radius:12px;object-fit:cover}.btn-icon{width:36px;height:36px;display:inline-grid;place-items:center;padding:0;border:0;background:transparent;border-radius:10px}.btn-icon:hover{background:var(--bs-tertiary-bg)}.sidebar-scroll{overflow-y:auto}.section-title{font-size:.7rem;letter-spacing:.09em;font-weight:800;color:var(--bs-secondary-color)}.project-row:hover,.nav-chat:hover{background:var(--bs-tertiary-bg)}.project-row .accordion-button{font-size:.92rem;min-width:0}.project-row .accordion-button::after{background-size:.8rem}.hover-action{opacity:0}.project-row:hover .hover-action{opacity:1}.nav-chat{position:relative;width:100%;display:flex;align-items:center;gap:.6rem;border:0;background:transparent;padding:.58rem .65rem;border-radius:.6rem;font-size:.88rem;color:var(--bs-body-color);text-align:left}.nav-chat.active{background:rgba(5,199,199,.12);color:#087f86;font-weight:600}.chat-actions{display:none;gap:.5rem;margin-left:auto}.nav-chat:hover .chat-actions{display:flex}.account-button{border:0;background:transparent;border-radius:12px;padding:.55rem}.account-button:hover{background:var(--bs-tertiary-bg)}.avatar{width:38px;height:38px;border-radius:50%;background:var(--k2r2-navy);color:#fff;display:grid;place-items:center;font-size:.8rem;font-weight:700;flex:0 0 auto}
.app-shell[data-hydrating="true"]{visibility:hidden}
.message-ai{flex-direction:column;align-items:flex-start;gap:0}
.chat-pane{margin-left:var(--sidebar-w);height:100vh;display:flex;flex-direction:column;transition:margin-left .2s ease;background:var(--bs-body-bg)}.sidebar.compact + .chat-pane{margin-left:var(--sidebar-compact-w)}.chat-header{min-height:72px;background:color-mix(in srgb,var(--bs-body-bg) 88%,transparent);backdrop-filter:blur(12px);z-index:10}.header-select{max-width:160px}.tools-menu{min-width:260px}.min-w-0{min-width:0}.chat-content{flex:1;overflow-y:auto;padding:28px max(20px,calc((100% - 920px)/2));}.day-separator{text-align:center;color:var(--bs-secondary-color);font-size:.75rem;margin:10px 0 28px}.day-separator span{background:var(--bs-tertiary-bg);padding:.3rem .75rem;border-radius:999px}.message{display:flex;margin-bottom:28px;gap:12px}.message-user{justify-content:flex-end;flex-direction:column;align-items:flex-end}.message-meta{font-size:.74rem;color:var(--bs-secondary-color);margin-bottom:.35rem}.message-bubble{max-width:780px;border-radius:18px;padding:15px 18px;line-height:1.62}.message-user .message-bubble{background:var(--k2r2-navy);color:#fff;border-bottom-right-radius:5px}.message-ai .message-bubble{background:var(--bs-tertiary-bg);border-bottom-left-radius:5px}.ai-avatar img{width:38px;height:38px;border-radius:12px;object-fit:cover}.message-main{min-width:0}.attachment-chip,.upload-preview{display:flex;align-items:center;gap:.6rem;background:var(--bs-tertiary-bg);padding:.55rem .75rem;border:1px solid var(--bs-border-color);border-radius:12px;font-size:.84rem}.attachment-chip small{color:var(--bs-secondary-color)}.insight-card{height:100%;padding:12px;border-radius:12px;background:var(--bs-body-bg);border:1px solid var(--bs-border-color);display:flex;flex-direction:column;gap:3px}.insight-card small{color:var(--bs-secondary-color)}.insight-card strong{font-size:1.08rem}.source-box{font-size:.82rem;padding:10px 12px;border-radius:10px;background:rgba(47,143,232,.1);color:color-mix(in srgb,var(--bs-body-color) 80%,var(--k2r2-blue))}.message-actions{display:flex;gap:.25rem;margin-top:.35rem}.message-actions button{border:0;background:transparent;color:var(--bs-secondary-color);border-radius:8px;padding:.3rem .45rem}.message-actions button:hover{background:var(--bs-tertiary-bg);color:var(--bs-body-color)}
.composer-wrap{background:linear-gradient(transparent,var(--bs-body-bg) 22%);padding-top:26px}.composer{max-width:920px;margin:auto;border:1px solid var(--bs-border-color);border-radius:18px;background:var(--bs-body-bg);overflow:hidden}.composer textarea{resize:none;padding:14px 16px;max-height:180px}.send-btn{width:38px;height:38px}.upload-preview{max-width:920px;margin:auto}.drop-zone{border:1.5px dashed var(--bs-border-color);border-radius:16px;padding:28px;text-align:center;background:var(--bs-tertiary-bg)}.tool-card{display:flex;gap:.75rem;align-items:flex-start;padding:14px;border:1px solid var(--bs-border-color);border-radius:12px;height:100%}.tool-card small{display:block;color:var(--bs-secondary-color)}.danger-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(220,53,69,.1);color:var(--bs-danger);font-size:1.4rem}
@media(max-width:991.98px){.sidebar{transform:translateX(-100%);box-shadow:0 0 30px rgba(0,0,0,.18)}.sidebar.mobile-open{transform:translateX(0)}.chat-pane,.sidebar.compact + .chat-pane{margin-left:0}.header-select{max-width:125px}.chat-content{padding-inline:18px}.auth-card-wrap{max-width:680px}}
@media(max-width:575.98px){.header-select{width:108px}.chat-header{gap:.5rem!important}.message-bubble{padding:13px 14px}.otp-grid{gap:.35rem}.otp{font-size:1.2rem}}
.message.message-ai{flex-direction:column;align-items:flex-start;gap:0}
.message-actions .edit-message,.message-actions .regenerate-message,.message-actions .delete-message{display:inline-flex;align-items:center;gap:.35rem}
.generated-image{max-width:min(100%,640px)}.generated-image img{display:block;max-width:100%;border-radius:14px;border:1px solid var(--bs-border-color)}
.message-user.message-editing .message-bubble{width:min(920px,100%);max-width:100%}.message-user.message-editing .message-bubble textarea{width:100%;min-height:120px}
