*{box-sizing:border-box}body{margin:0;background:#f5f7fb;color:#1f2328;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-shell{min-height:100vh}.side-nav{border-right:1px solid #e8ecf3}.brand{height:64px;display:flex;align-items:center;gap:10px;padding:0 18px}.brand-mark{width:34px;height:34px;border-radius:6px;display:grid;place-items:center;background:#121826;color:#fff;font-weight:700}.brand-subtitle{display:block;font-size:12px;line-height:16px}.topbar{height:64px;padding:0 24px;background:#fff;border-bottom:1px solid #e8ecf3;display:flex;align-items:center;justify-content:space-between}.tenant-select{width:220px}.page-content{padding:24px;overflow:auto}.page-title{width:100%;justify-content:space-between;margin-bottom:12px}.metric-row{background:#fff;border:1px solid #e8ecf3;border-radius:8px;padding:18px;margin-bottom:22px}.narrow-page{max-width:880px}.login-screen{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#f7f9fc,#eaf1fb)}.login-panel{width:380px;background:#fff;border:1px solid #e8ecf3;border-radius:8px;padding:28px;box-shadow:0 18px 50px #141f3814}.conversation-main{background:#fff;border:1px solid #e8ecf3;border-radius:8px;min-height:calc(100vh - 112px);display:flex;flex-direction:column}.conversation-header{padding:18px 20px;border-bottom:1px solid #e8ecf3;display:flex;align-items:center;justify-content:space-between}.message-list{flex:1;padding:20px;background:#f8fafc;overflow:auto}.message-row{display:flex;margin-bottom:12px}.message-row.user{justify-content:flex-start}.message-row.ai,.message-row.human{justify-content:flex-end}.message-bubble{max-width:560px;padding:10px 12px;border-radius:8px;background:#fff;border:1px solid #e8ecf3;line-height:1.6}.message-row.ai .message-bubble{background:#eef6ff;border-color:#cce4ff}.message-row.human .message-bubble{background:#f0fdf4;border-color:#bbf7d0}.message-meta{color:#667085;font-size:12px;margin-bottom:4px}.composer{padding:16px;border-top:1px solid #e8ecf3;display:grid;grid-template-columns:1fr 120px;gap:12px;align-items:end}@media(max-width:900px){.side-nav{display:none}.page-content{padding:16px}.composer{grid-template-columns:1fr}}
