:root{
    --primary:#6c4cff;
    --primary-dark:#5235d6;
    --bg:#f5f7fb;
    --sidebar:#121421;
    --text:#1c2030;
    --muted:#73798c;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}
.auth-bg{background:radial-gradient(circle at top left,#816cff 0,#5139cc 35%,#15172b 100%)}
.auth-card{width:100%;max-width:440px;border-radius:24px}
.brand-mark{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#7b61ff,#4d33d1);color:#fff;font-size:34px;font-weight:800;box-shadow:0 12px 30px rgba(91,67,218,.3)}
.brand-mark.small{width:42px;height:42px;border-radius:13px;font-size:26px;box-shadow:none}
.btn-primary{background:var(--primary);border-color:var(--primary)}
.btn-primary:hover,.btn-primary:focus{background:var(--primary-dark);border-color:var(--primary-dark)}
.form-control{border-radius:12px;padding:.8rem 1rem}
.app-shell{height:100vh;display:flex;overflow:hidden}
.sidebar{width:285px;background:var(--sidebar);color:#fff;padding:20px;display:flex;flex-direction:column;flex-shrink:0}
.sidebar-brand{display:flex;align-items:center;gap:12px;margin-bottom:24px}
.sidebar-brand strong,.sidebar-brand small{display:block}.sidebar-brand small{color:#8f95aa}
.sidebar-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#747b91;margin:8px 8px}
.conversation-list{overflow-y:auto;flex:1}
.conversation-item{width:100%;border:0;background:transparent;color:#cbd0df;padding:11px 12px;border-radius:10px;display:flex;gap:10px;align-items:center;text-align:left;margin-bottom:4px}
.conversation-item:hover,.conversation-item.active{background:#222638;color:#fff}
.conversation-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-bottom{border-top:1px solid #2a2d3d;padding-top:12px}
.sidebar-bottom a{display:flex;gap:11px;padding:10px 8px;color:#cbd0df;text-decoration:none}
.main-panel{flex:1;display:flex;flex-direction:column;min-width:0;background:#fff}
.topbar{height:76px;border-bottom:1px solid #edf0f5;display:flex;align-items:center;padding:0 28px;gap:14px}
.topbar h1{font-size:1rem;margin:0;font-weight:700}.topbar small{color:var(--muted)}
.user-chip{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:.9rem}
.chat-area{flex:1;overflow-y:auto;padding:32px 24px}
.welcome{max-width:780px;margin:8vh auto 0;text-align:center}
.welcome-icon{width:74px;height:74px;border-radius:23px;background:linear-gradient(135deg,#7b61ff,#4d33d1);color:#fff;display:grid;place-items:center;font-size:42px;font-weight:800;margin:0 auto 24px}
.welcome h2{font-size:2rem;font-weight:750}.welcome p{color:var(--muted)}
.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:30px}
.quick-prompt{background:#fff;border:1px solid #e5e8f0;border-radius:14px;padding:17px;text-align:left;transition:.2s}
.quick-prompt:hover{border-color:#b8adff;box-shadow:0 8px 25px rgba(40,35,80,.08);transform:translateY(-1px)}
.messages{max-width:900px;margin:0 auto}
.message-row{display:flex;gap:14px;margin-bottom:24px;align-items:flex-start}
.message-user{flex-direction:row-reverse}
.message-avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;background:#ebe8ff;color:var(--primary);font-weight:800}
.message-user .message-avatar{background:#1e2232;color:#fff}
.message-bubble{max-width:min(760px,82%);background:#f3f5f9;border-radius:18px;padding:14px 17px;line-height:1.62;box-shadow:0 1px 0 rgba(0,0,0,.02)}
.message-user .message-bubble{background:var(--primary);color:#fff}
.message-bubble p:last-child{margin-bottom:0}.message-bubble ul{margin-bottom:.4rem}
.composer-wrap{padding:14px 24px 18px;background:linear-gradient(transparent,#fff 25%)}
.composer{max-width:900px;margin:auto;border:1px solid #dfe3ec;border-radius:20px;padding:9px 10px 9px 17px;display:flex;align-items:flex-end;background:#fff;box-shadow:0 10px 35px rgba(28,32,48,.08)}
.composer textarea{border:0;outline:0;resize:none;flex:1;max-height:180px;padding:8px 0;background:transparent}
.composer button{width:42px;height:42px;border-radius:13px}
.composer-wrap>small{display:block;text-align:center;color:#9499a8;margin-top:7px}
.typing{display:flex;gap:5px;padding:8px 3px}.typing span{width:7px;height:7px;background:#8d92a2;border-radius:50%;animation:bounce 1.2s infinite}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}
@keyframes bounce{0%,70%,100%{transform:translateY(0)}35%{transform:translateY(-6px)}}
.page-bg{background:#f5f7fb;min-height:100vh}
.integration-card{background:#fff;border:1px solid #e7eaf1;border-radius:18px;padding:22px;display:flex;align-items:center;gap:18px;box-shadow:0 8px 25px rgba(30,34,50,.04);height:100%}
.integration-card h3{font-size:1.1rem;margin-bottom:5px}
.integration-icon{width:54px;height:54px;border-radius:16px;background:#eef0f5;display:grid;place-items:center;font-size:25px}.integration-icon.google{background:#fff1ed;color:#db4437}
@media(max-width:991.98px){
.sidebar{position:fixed;left:-295px;top:0;bottom:0;z-index:1000;transition:.25s}.sidebar.open{left:0;box-shadow:10px 0 30px rgba(0,0,0,.2)}
.topbar{padding:0 14px}.user-chip span{display:none}.chat-area{padding:22px 14px}.composer-wrap{padding:10px 12px 14px}.quick-grid{grid-template-columns:1fr}.welcome{margin-top:3vh}.message-bubble{max-width:88%}
}
