:root{font-family:Cairo,sans-serif;color:#1f2937;background:radial-gradient(circle at top left,rgba(37,211,102,.14),transparent 25%),radial-gradient(circle at bottom right,rgba(18,140,126,.2),transparent 28%),linear-gradient(180deg,#d8efe7,#e9f5f1 26%,#f6f8f8 26%,#f6f8f8);line-height:1.5;font-weight:500;--sidebar: #111b21;--sidebar-panel: #202c33;--sidebar-border: rgba(255, 255, 255, .07);--panel-strong: #f0f2f5;--panel-soft: rgba(255, 255, 255, .78);--chat-bg: #efeae2;--bubble-in: #ffffff;--bubble-out: #d9fdd3;--composer: #f0f2f5;--brand: #128c7e;--brand-strong: #25d366;--text-muted: #667781;--border: rgba(15, 23, 42, .08);--danger: #d93025;--shadow: 0 24px 80px rgba(17, 27, 33, .18)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background-attachment:fixed;overflow:hidden}button,input{font:inherit}button{cursor:pointer}.chat-heading-meta{display:flex;align-items:center;gap:8px;min-width:0}#root{min-height:100vh;height:100dvh}#root .header-status-chip{flex:0 0 auto;padding:4px 8px;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.01em}#root .header-status-chip.live{background:#25d36629;color:#087b54}#root .header-status-chip.pending{background:#128c7e1f;color:#0f6c62}.auth-shell,.app-shell{min-height:100vh;display:grid;padding:24px}.auth-shell .whatsapp-chat-header.call-live,.app-shell .whatsapp-chat-header.call-live{background:linear-gradient(135deg,#d9fdd3e0,#f0f2f5f5)}.auth-shell .whatsapp-chat-header.call-pending,.app-shell .whatsapp-chat-header.call-pending{background:linear-gradient(135deg,#e9f5f1f5,#f0f2f5f5)}.auth-shell{place-items:center}.whatsapp-incoming-call.call-session-active{box-shadow:inset 0 -1px #128c7e14}.auth-card{width:min(540px,100%);padding:34px;border-radius:30px;background:#ffffffe6;border:1px solid rgba(255,255,255,.7);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overscroll-behavior:contain}.whatsapp-messages-panel.conversation-open{padding-bottom:18px}.whatsapp-messages-panel.conversation-empty{padding-inline:20px}.hero-brand,.chat-contact-block,.current-user-block{display:flex;align-items:center;gap:16px}.hero-brand .whatsapp-composer.call-session-active,.chat-contact-block .whatsapp-composer.call-session-active,.current-user-block .whatsapp-composer.call-session-active{border-top-color:#128c7e29;box-shadow:0 -10px 30px #111b210d}.logo-mark{width:58px;height:58px;flex:0 0 auto}.logo-mark svg{width:100%;height:100%;display:block}.eyebrow{margin:0 0 8px;color:var(--brand);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}h1,h2,h3,p{margin-top:0}.muted,.empty-text{color:var(--text-muted)}.mode-switch{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:24px 0}.mode-switch button,.ghost-button,.primary-button,.user-card,.emoji-chip,.icon-circle{border:1px solid transparent;transition:transform .14s ease,background .14s ease,border-color .14s ease,box-shadow .14s ease}.mode-switch button,.ghost-button{background:#ffffffe0;border-color:var(--border);color:#111b21;padding:12px 16px;border-radius:16px}.mode-switch button.active,.primary-button{background:linear-gradient(135deg,#25d366,#128c7e);color:#fff}.primary-button,.ghost-button{padding:12px 18px;border-radius:16px}.auth-form{display:grid;gap:16px}.auth-form label{display:grid;gap:8px}input{width:100%;border:1px solid var(--border);border-radius:14px;padding:14px 16px;background:#fffffff5;color:#111b21}.error-box{color:var(--danger);background:#d9302514;border:1px solid rgba(217,48,37,.18);border-radius:16px;padding:12px 14px}.app-shell{grid-template-columns:minmax(0,1fr);gap:0;align-items:stretch;position:relative;height:100dvh;overflow:hidden}.names-sidebar{min-width:0;width:min(340px,calc(100vw - 48px))}.names-sidebar.collapsed{transform:translate(110%);opacity:0;pointer-events:none}.names-sidebar.open{transform:translate(0);opacity:1;pointer-events:auto}.sidebar-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#111b2147;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:15}.sidebar-backdrop.visible{opacity:1;pointer-events:auto}.whatsapp-sidebar{background:var(--sidebar);color:#e9edef;border-radius:28px;box-shadow:var(--shadow);overflow:hidden;display:grid;grid-template-rows:auto auto auto 1fr;position:absolute;inset:0 auto 0 0;z-index:20;transition:transform .18s ease,opacity .18s ease}.sidebar-topbar,.whatsapp-header{background:var(--sidebar-panel);padding:18px 20px}.sidebar-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--sidebar-border)}.sidebar-topbar-actions{display:flex;align-items:center;gap:8px}.sidebar-toggle{width:42px;min-width:42px;height:42px;padding:0;display:inline-flex;align-items:center;justify-content:center}.sidebar-hidden{display:none!important}.current-user-block h2,.current-user-block p,.chat-contact-block h2,.chat-contact-block p{margin-bottom:0}.sidebar-logout{background:#ffffff14;border-color:#ffffff14;color:#fff}.sidebar-search{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#111b21;border-bottom:1px solid var(--sidebar-border)}.sidebar-search input{background:#202c33;border-color:transparent;color:#e9edef}.sidebar-search input::placeholder{color:#8696a0}.whatsapp-header{border-bottom:1px solid var(--sidebar-border)}.whatsapp-header h3,.whatsapp-header p{color:#e9edef}.whatsapp-user-list{overflow:auto;background:#111b21}.whatsapp-user-card{width:100%;text-align:right;background:transparent;color:#e9edef;border:0;border-bottom:1px solid rgba(255,255,255,.04);padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px}.whatsapp-user-card:hover,.whatsapp-user-card.selected{background:#ffffff12}.names-sidebar.collapsed .whatsapp-user-card{justify-content:center;padding-inline:10px}.user-leading,.user-summary,.user-meta{display:flex;align-items:center}.user-leading{gap:10px}.names-sidebar.collapsed .user-leading{justify-content:center}.user-summary{flex-direction:column;align-items:flex-start;gap:2px}.user-summary span{font-size:.8rem;color:#8696a0}.compact-summary strong{font-size:.96rem}.user-meta{gap:8px}.names-sidebar.collapsed .user-meta{display:none}.avatar-circle{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;font-weight:800;letter-spacing:.04em;flex:0 0 auto}.avatar-circle.large{width:50px;height:50px}.presence-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.presence-dot.online{background:#25d366;box-shadow:0 0 0 4px #25d3662e}.presence-dot.offline{background:#8696a0}.status-pill{white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:.78rem}.status-pill.online{background:#25d36626;color:#9ef0bc}.status-pill.offline{background:#8696a026;color:#b7c3ca}.whatsapp-panel{background:#efeae2;border-radius:0 28px 28px 0;overflow:hidden;display:grid;grid-template-rows:auto auto 1fr auto;box-shadow:var(--shadow);height:calc(100dvh - 48px);min-height:0}.whatsapp-chat-header,.whatsapp-incoming-call,.whatsapp-composer{padding:14px 18px}.whatsapp-chat-header{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f0f2f5;border-bottom:1px solid rgba(17,27,33,.08);overflow:hidden;padding:10px 14px;min-height:68px}.chat-heading{display:grid;gap:2px}.chat-heading h2,.chat-heading p{margin-bottom:0}.chat-heading h2{font-size:1rem;line-height:1.15}.chat-heading p{font-size:.8rem}.whatsapp-chat-header .chat-contact-block{gap:12px;min-width:0;flex:1}.whatsapp-chat-header .avatar-circle.large{width:42px;height:42px;font-size:.92rem}.chat-header-side{display:flex;align-items:center}.chat-header-side-start{justify-content:flex-start}.chat-header-side-end{justify-content:flex-end}.whatsapp-actions{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;flex:0 0 auto}.contact-picker-button{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:10px 16px}.contact-picker-label{white-space:nowrap}.compact-contact-picker{width:34px;height:34px;min-width:34px;padding:0;border-radius:12px;justify-content:center;background:#fff;border:1px solid rgba(17,27,33,.08);box-shadow:none;color:#0f172a;order:3}.compact-contact-picker .button-icon{width:18px;height:18px}.icon-circle{width:46px;height:46px;border-radius:50%;display:inline-grid;place-items:center}.icon-circle svg{width:20px;height:20px}.call-button{background:#25d366;color:#fff;box-shadow:0 8px 18px #25d36647}.hangup-button{background:#f15c6d;color:#fff;box-shadow:0 8px 18px #f15c6d3d}.muted-circle{background:#fff;color:#54656f;border-color:#111b2114}.speaker-button.active{background:#d9fdd3;color:#128c7e;border-color:#128c7e2e}.call-button:disabled,.hangup-button:disabled,.send-button:disabled,.muted-circle:disabled,.ghost-button:disabled,.primary-button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none;transform:none}.whatsapp-incoming-call{display:flex;align-items:center;justify-content:space-between;gap:14px;background:linear-gradient(135deg,#25d36626,#128c7e1a);border-bottom:1px solid rgba(18,140,126,.12)}.incoming-call-copy p,.incoming-call-copy strong{margin-bottom:0}.accept-button,.reject-button{min-width:90px}.whatsapp-messages-panel{overflow:auto;padding:24px 28px;display:flex;flex-direction:column;gap:10px;min-height:0;background:linear-gradient(#efeae2f5,#efeae2f5),radial-gradient(circle at 25% 25%,rgba(18,140,126,.06) 0 2px,transparent 2px 100%),radial-gradient(circle at 75% 70%,rgba(37,211,102,.06) 0 2px,transparent 2px 100%);background-size:auto,28px 28px,32px 32px}.whatsapp-bubble{max-width:min(72%,560px);padding:10px 12px 8px;border-radius:10px;position:relative;box-shadow:0 2px 8px #111b2114}.whatsapp-bubble p{margin:0}.whatsapp-bubble time{display:block;margin-top:6px;font-size:.72rem;color:#667781;text-align:left}.whatsapp-bubble.outgoing{align-self:flex-start;background:var(--bubble-out)}.whatsapp-bubble.incoming{align-self:flex-end;background:var(--bubble-in)}.whatsapp-empty-state{margin:auto;text-align:center;color:var(--text-muted);display:grid;gap:10px;place-items:center}.whatsapp-composer{background:var(--composer);border-top:1px solid rgba(17,27,33,.08);position:sticky;bottom:0;z-index:2;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}.whatsapp-composer-main{display:grid;gap:10px}.composer-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-width:0}.composer-row input{background:#fff;border-color:transparent;border-radius:999px;padding:14px 18px;min-width:0}.send-button{background:#128c7e;color:#fff}.whatsapp-emoji-picker{display:flex;flex-wrap:wrap;gap:10px;padding:12px;border-radius:18px;background:#ffffffc2;border:1px solid rgba(17,27,33,.06)}.emoji-chip{min-width:46px;padding:10px 12px;background:#fff;border-radius:14px;border-color:#111b210f;font-size:1.15rem}.button-icon{width:18px;height:18px;flex:0 0 auto}.ghost-button:hover,.primary-button:hover,.mode-switch button:hover,.emoji-chip:hover,.icon-circle:hover,.whatsapp-user-card:hover{transform:translateY(-1px)}@media(max-width:1024px){.app-shell{grid-template-columns:1fr}.whatsapp-panel{height:calc(100dvh - 48px)}.names-sidebar{width:min(340px,100%)}.whatsapp-sidebar,.whatsapp-panel{border-radius:28px}}@media(max-width:640px){.auth-shell,.app-shell{padding:0}.whatsapp-panel{height:100dvh;border-radius:0;box-shadow:none}.names-sidebar{width:100%}.whatsapp-sidebar{border-radius:0}.sidebar-backdrop{top:0;right:0;bottom:0;left:0}.sidebar-topbar,.whatsapp-chat-header,.whatsapp-incoming-call{align-items:center}.whatsapp-chat-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;min-height:64px;padding-block:10px;position:sticky;top:0;z-index:3}.whatsapp-chat-header.call-live,.whatsapp-chat-header.call-pending{grid-template-columns:minmax(0,1fr) auto}.whatsapp-chat-header.call-live .chat-header-side-start,.whatsapp-chat-header.call-pending .chat-header-side-start{display:none}.composer-row{grid-template-columns:auto 1fr auto;gap:8px;align-items:end}.whatsapp-chat-header,.whatsapp-composer,.whatsapp-incoming-call,.whatsapp-messages-panel{padding-inline:12px}.whatsapp-messages-panel{padding-top:14px;padding-bottom:14px}.whatsapp-messages-panel.conversation-empty{padding-inline:16px}.contact-picker-button{justify-content:center}.compact-contact-picker{width:34px;min-width:34px;align-self:center}.whatsapp-chat-header .chat-header-side{min-width:0}.whatsapp-chat-header .chat-contact-block{width:100%;min-width:0;gap:10px}.whatsapp-chat-header .chat-heading{min-width:0}.whatsapp-chat-header .chat-heading h2,.whatsapp-chat-header .chat-heading p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whatsapp-chat-header .chat-heading-meta{gap:6px}.whatsapp-chat-header .header-status-chip{font-size:.66rem;padding:3px 7px}.whatsapp-chat-header .whatsapp-actions{justify-self:end;gap:6px;padding:4px;background:#ffffffb8;border:1px solid rgba(17,27,33,.06);border-radius:999px;box-shadow:0 10px 24px #111b2114}.whatsapp-chat-header .icon-circle{width:40px;height:40px}.whatsapp-chat-header .chat-contact-block .avatar-circle.large{width:38px;height:38px;font-size:.82rem}.whatsapp-chat-header .icon-circle svg{width:18px;height:18px}.whatsapp-incoming-call{flex-direction:column;align-items:stretch;gap:12px;padding-block:14px}.whatsapp-incoming-call .whatsapp-actions{justify-content:stretch}.accept-button,.reject-button{width:100%;min-width:0}.whatsapp-bubble{max-width:96%;padding:9px 11px 7px}.whatsapp-empty-state{max-width:240px;gap:8px}.whatsapp-empty-state h3{font-size:1rem}.whatsapp-empty-state p{font-size:.88rem}.whatsapp-composer{padding-top:10px;padding-inline:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}.composer-row input{min-height:44px;padding:12px 14px}.composer-row .icon-circle,.composer-row .send-button{width:42px;height:42px}.emoji-chip{min-width:42px;padding:8px 10px}}
