:root{--canvas:#111311;--surface:#1a1d1a;--strong:#242824;--border:#343934;--text:#f4f6f1;--muted:#a9b0a6;--accent:#70d69b;--accent2:#38b878;--danger:#ff806d;--warning:#e7b85c;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--text);background:var(--canvas)}
*{box-sizing:border-box}html,body{height:100%;margin:0}body{overflow:hidden}button,input,textarea{font:inherit}button{cursor:pointer}.muted{color:var(--muted)}.eyebrow{margin:0;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.08em}.error{margin:0;color:var(--danger);font-size:.86rem}.banner{margin:0 20px 12px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--danger) 45%,transparent);border-radius:8px;background:color-mix(in srgb,var(--danger) 12%,var(--surface))}
.login-shell{min-height:100%;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 15%,#1b2b21 0,transparent 38%)}.login-card{width:min(100%,420px);display:grid;gap:18px;padding:32px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 24px 80px #0008}.login-card h1,.brand h1{margin:2px 0 0;font-size:2.15rem;line-height:1}.login-card p{margin-block:0}.login-card label{display:grid;gap:7px;color:var(--muted);font-size:.82rem;font-weight:700}.login-card input{height:48px;padding:0 13px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:var(--strong);outline:none}.login-card input:focus{border-color:var(--accent)}.login-card button,.composer button{min-height:48px;border:0;border-radius:8px;color:#0a100c;background:var(--accent);font-weight:850}.login-card button:hover,.composer button:hover{background:var(--accent2)}
.app-shell{height:100%;display:grid;grid-template-columns:minmax(300px,360px) 1fr;background:var(--canvas)}.sidebar{min-width:0;display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--surface)}.brand{display:flex;align-items:center;justify-content:space-between;padding:22px 20px 16px}.header-actions{display:flex;gap:8px}.icon-button,.back{width:44px;height:44px;border:0;border-radius:9px;color:var(--muted);background:var(--strong);font-size:1.3rem}.icon-button:hover,.back:hover{color:var(--text)}.summary{display:flex;justify-content:space-between;align-items:center;padding:0 20px 14px;color:var(--muted);font-size:.8rem;font-weight:750}.pill{padding:7px 11px;border-radius:99px;color:var(--accent);background:#173425}.filters{display:flex;gap:7px;overflow:auto;padding:0 20px 12px;scrollbar-width:none}.filters::-webkit-scrollbar,.conversation-list::-webkit-scrollbar,.messages::-webkit-scrollbar{display:none}.filter{flex:0 0 auto;padding:7px 11px;border:1px solid var(--border);border-radius:99px;color:var(--muted);background:transparent;font-size:.75rem;font-weight:750}.filter.active{border-color:var(--accent);color:#08130d;background:var(--accent)}.conversation-list{flex:1;overflow:auto;padding:0 12px 16px;scrollbar-width:none}.conversation{width:100%;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 8px;border:0;border-bottom:1px solid var(--border);border-radius:0;text-align:left;color:var(--text);background:transparent}.conversation:hover,.conversation.selected{border-radius:9px;background:var(--strong)}.avatar{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:#07110b;background:var(--accent);font-weight:850;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.conversation-copy{min-width:0}.conversation-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:750}.preview-line{display:flex;gap:7px;margin-top:4px;min-width:0;font-size:.78rem}.platform{flex:0 0 auto;color:var(--accent);font-weight:750}.preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.badge{min-width:22px;padding:4px 6px;border-radius:99px;text-align:center;color:#1b0b08;background:var(--danger);font-size:.7rem;font-weight:850}
.empty-detail{display:grid;place-items:center;text-align:center}.empty-detail h2{margin-bottom:6px}.empty-icon{font-size:2.4rem;color:var(--accent)}.detail{min-width:0;display:flex;flex-direction:column;background:var(--canvas)}.detail-header{min-height:86px;display:flex;align-items:center;gap:14px;padding:16px 24px;border-bottom:1px solid var(--border);background:var(--surface)}.detail-header h2{margin:0;font-size:1.18rem}.detail-header p{margin:3px 0 0;font-size:.78rem}.back{display:none}.messages{flex:1;overflow:auto;display:flex;flex-direction:column;gap:9px;padding:24px clamp(16px,5vw,72px);scrollbar-width:none}.message{max-width:min(72%,720px);padding:10px 13px;border:1px solid #31513d;border-radius:13px;color:#8ef0b5;background:#26372e;white-space:pre-wrap;overflow-wrap:anywhere}.message.mine{align-self:flex-end;border-color:#4d5799;color:#cbd0ff;background:#353b69}.message-meta{display:flex;gap:7px;margin-bottom:4px;font-size:.72rem}.message-author{font-weight:800}.message-time{opacity:.68}.message-media{display:block;max-width:100%;max-height:420px;margin-top:8px;border-radius:8px}.composer{display:flex;align-items:flex-end;gap:10px;padding:14px clamp(16px,5vw,72px);border-top:1px solid var(--border);background:var(--surface)}.composer textarea{flex:1;max-height:140px;resize:none;padding:12px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--strong);outline:none}.composer textarea:focus{border-color:var(--accent)}.composer button{width:48px}.composer[hidden]{display:none}
.services-setup{position:fixed;inset:0;z-index:8;overflow:auto;background:var(--canvas)}.setup-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:20px clamp(20px,5vw,72px);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(12px)}.setup-header h2{margin:3px 0 0;font-size:1.5rem}.setup-content{width:min(100%,920px);display:grid;gap:22px;margin:auto;padding:30px clamp(20px,5vw,56px) 60px}.setup-intro{max-width:700px;margin:0;color:var(--muted);font-size:1rem;line-height:1.6}.service-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:22px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.service-card h3{margin:4px 0 6px;font-size:1.25rem}.service-card p{margin-block:0}.service-card button{grid-column:1/-1;min-height:48px;border:0;border-radius:9px;color:#08130d;background:var(--accent);font-weight:850}.setup-state{padding:7px 10px;border-radius:99px;color:var(--muted);background:var(--strong);font-size:.76rem;font-weight:800;white-space:nowrap}.setup-state[data-tone=success]{color:var(--accent);background:#173425}.setup-state[data-tone=warning]{color:var(--warning);background:#352b18}.debug-links{display:grid;gap:16px;padding:22px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.debug-links h3{margin:4px 0 6px;font-size:1.2rem}.debug-links p{margin-block:0}.debug-links nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.debug-links a{display:grid;place-items:center;min-height:46px;padding:8px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--strong);font-size:.82rem;font-weight:800;text-align:center;text-decoration:none}.debug-links a:hover,.debug-links a:focus-visible{border-color:var(--accent);color:#08130d;background:var(--accent)}.setup-note{margin:0;padding:16px;border-left:3px solid var(--warning);color:var(--muted);background:var(--surface);font-size:.86rem;line-height:1.5}
@media(max-width:720px){.app-shell{grid-template-columns:1fr}.sidebar{border:0}.detail,.empty-detail{position:fixed;inset:0;z-index:3}.empty-detail{display:none}.back{display:block}.detail-header{padding-inline:14px}.messages{padding:16px}.composer{padding:12px}.message{max-width:86%}.brand{padding-top:max(22px,env(safe-area-inset-top))}.service-cards{grid-template-columns:1fr}.debug-links nav{grid-template-columns:1fr}.setup-header{padding-top:max(20px,env(safe-area-inset-top))}}
[hidden]{display:none!important}
