:root{--wa-primary: #173B6C;--wa-primary-dark: #0F2849;--wa-primary-light: #1E4D8C;--wa-accent: #2A5FA8;--wa-bg: #111B21;--wa-panel: #1F2C33;--wa-panel-header: #202C33;--wa-border: #2A3942;--wa-text: #E9EDEF;--wa-text-secondary: #8696A0;--wa-bubble-out: #1C3A5E;--wa-bubble-in: #202C33;--wa-chatbg: #0B141A;--wa-input-bg: #2A3942;--wa-hover: #2A3942;--wa-green: #00A884;--wa-blue: #53BDEB;--wa-unread: #00A884;--wa-danger: #EA4335;--aparti-primary: #173B6C;--aparti-primary-dark: #0F2849;--aparti-accent: #2A5FA8;--aparti-bg: #111B21;--aparti-panel: #1F2C33;--aparti-border: #2A3942;--aparti-text: #E9EDEF;--aparti-muted: #8696A0;--aparti-bubble-out: #1C3A5E;--aparti-bubble-in: #202C33;--aparti-chatbg: #0B141A;--aparti-success: #00A884}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;overflow:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--wa-bg);color:var(--wa-text);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}button{font-family:inherit;cursor:pointer}input,textarea{font-family:inherit}a{color:var(--wa-accent)}.app-shell{display:flex;height:100vh;height:100dvh;overflow:hidden}.sidebar{width:100%;max-width:420px;display:flex;flex-direction:column;background:var(--wa-panel);border-right:1px solid var(--wa-border);min-width:0}.sidebar-header{background:var(--wa-panel-header);padding:10px 16px;display:flex;align-items:center;gap:12px;height:60px;flex-shrink:0}.sidebar-header .name{flex:1;min-width:0;font-weight:500;font-size:15px;color:var(--wa-text)}.sidebar-header .name small{display:block;font-size:12px;color:var(--wa-text-secondary);font-weight:400;margin-top:1px}.sidebar-header button{background:none;border:none;color:var(--wa-text-secondary);width:40px;height:40px;border-radius:50%;font-size:18px}.sidebar-header button:hover{background:var(--wa-hover)}.sidebar-header img{width:40px;height:40px;border-radius:50%}.search-bar{padding:8px 12px;flex-shrink:0}.search-bar input{width:100%;padding:8px 14px;border:none;border-radius:8px;background:var(--wa-input-bg);color:var(--wa-text);font-size:14px;outline:none}.search-bar input::placeholder{color:var(--wa-text-secondary)}.chat-list{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.chat-list::-webkit-scrollbar{width:6px}.chat-list::-webkit-scrollbar-thumb{background:var(--wa-border);border-radius:3px}.chat-item{display:flex;align-items:center;gap:14px;padding:12px 16px;cursor:pointer;border-bottom:1px solid rgba(134,150,160,.08);transition:background .15s}.chat-item:hover,.chat-item.active{background:var(--wa-hover)}.chat-item .avatar{width:50px;height:50px;border-radius:50%;background:var(--wa-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:18px;flex-shrink:0}.chat-item .meta{flex:1;min-width:0}.chat-item .meta .top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:3px}.chat-item .meta .name{font-weight:500;font-size:16px;color:var(--wa-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-item .meta .time{font-size:12px;color:var(--wa-text-secondary);flex-shrink:0;margin-left:8px}.chat-item .meta .preview{font-size:14px;color:var(--wa-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center}.chat-item .badge{background:var(--wa-unread);color:#fff;border-radius:12px;padding:1px 7px;font-size:11px;font-weight:700;margin-left:auto;flex-shrink:0}.chat-view{flex:1;display:flex;flex-direction:column;background:var(--wa-chatbg);min-width:0;position:relative}.chat-view.empty{display:flex;align-items:center;justify-content:center;color:var(--wa-text-secondary);flex-direction:column;gap:16px}.chat-view.empty img{width:250px;opacity:.3}.chat-header{background:var(--wa-panel-header);padding:10px 16px;display:flex;align-items:center;gap:12px;height:60px;flex-shrink:0;border-bottom:1px solid var(--wa-border)}.chat-header .avatar{width:40px;height:40px;border-radius:50%;background:var(--wa-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:15px}.chat-header .info{flex:1;min-width:0}.chat-header .info .name{font-weight:500;font-size:16px;color:var(--wa-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-header .info .status{font-size:13px;color:var(--wa-text-secondary)}.chat-header .actions{display:flex;gap:4px}.chat-header .actions button{background:none;border:none;color:var(--wa-text-secondary);width:40px;height:40px;border-radius:50%;font-size:18px}.chat-header .actions button:hover{background:var(--wa-hover)}.btn-back{display:none;background:none;border:none;color:var(--wa-text);width:36px;height:36px;border-radius:50%;font-size:20px;margin-right:4px;align-items:center;justify-content:center}.messages{flex:1;overflow-y:auto;padding:16px 60px 8px;display:flex;flex-direction:column;gap:2px;-webkit-overflow-scrolling:touch}.messages::-webkit-scrollbar{width:6px}.messages::-webkit-scrollbar-thumb{background:var(--wa-border);border-radius:3px}.bubble{max-width:65%;padding:6px 8px 4px;border-radius:8px;font-size:14.2px;line-height:1.35;word-wrap:break-word;position:relative;box-shadow:0 1px .5px #00000021}.bubble.in{background:var(--wa-bubble-in);align-self:flex-start;border-top-left-radius:0}.bubble.out{background:var(--wa-bubble-out);align-self:flex-end;border-top-right-radius:0}.bubble .sender{font-size:12.5px;font-weight:500;color:var(--wa-accent);margin-bottom:2px}.bubble .text{white-space:pre-wrap;color:var(--wa-text)}.bubble .meta{display:flex;gap:4px;align-items:center;justify-content:flex-end;font-size:11px;color:var(--wa-text-secondary);margin-top:2px}.bubble .ticks{display:inline-block;font-size:14px;margin-left:2px}.bubble .ticks.read{color:var(--wa-blue)}.bubble img.media{max-width:320px;max-height:320px;border-radius:6px;display:block;margin-bottom:4px;cursor:pointer}.bubble video.media{max-width:360px;border-radius:6px;display:block;margin-bottom:4px}.bubble audio{display:block;margin-bottom:4px;width:100%}.bubble .file{display:flex;align-items:center;gap:10px;padding:8px;background:#00000026;border-radius:6px;margin-bottom:4px;cursor:pointer;text-decoration:none;color:inherit}.bubble .file .icon{width:36px;height:36px;background:var(--wa-accent);color:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center}.bubble .location{width:240px;height:120px;background:var(--wa-input-bg);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--wa-text-secondary);margin-bottom:4px;text-decoration:none}.bubble .contact-card{display:flex;gap:10px;padding:8px;background:#00000026;border-radius:6px;margin-bottom:4px}.bubble .contact-card .av{width:40px;height:40px;border-radius:50%;background:var(--wa-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600}.day-divider{align-self:center;background:var(--wa-panel-header);color:var(--wa-text-secondary);font-size:12.5px;padding:5px 12px;border-radius:8px;margin:10px 0;box-shadow:0 1px .5px #00000021}.typing{font-size:13px;color:var(--wa-green);padding:4px 60px;font-style:italic}.composer{background:var(--wa-panel-header);padding:6px 10px;padding-bottom:calc(6px + env(safe-area-inset-bottom));display:flex;gap:6px;align-items:center;flex-shrink:0;border-top:1px solid var(--wa-border)}.composer button.icon-btn{background:none;border:none;color:var(--wa-text-secondary);width:40px;height:40px;border-radius:50%;font-size:20px;flex-shrink:0}.composer button.icon-btn:hover{background:var(--wa-hover);color:var(--wa-text)}.composer input.text-input{flex:1;padding:10px 14px;border:none;border-radius:8px;background:var(--wa-input-bg);color:var(--wa-text);font-size:15px;outline:none;min-width:0}.composer input.text-input::placeholder{color:var(--wa-text-secondary)}.composer button.send{background:var(--wa-primary);color:#fff;border:none;width:42px;height:42px;border-radius:50%;font-size:18px;flex-shrink:0}.composer button.send:hover{background:var(--wa-primary-light)}.call-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f2849f2;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.call-overlay .who{font-size:22px;font-weight:600;margin:16px 0 4px}.call-overlay .state{color:var(--wa-text-secondary);margin-bottom:24px}.call-overlay video{width:80vw;max-width:720px;max-height:60vh;background:#000;border-radius:12px;margin-bottom:24px}.call-overlay .av-big{width:140px;height:140px;border-radius:50%;background:var(--wa-accent);display:flex;align-items:center;justify-content:center;font-size:56px;font-weight:600;margin-bottom:16px}.call-overlay .controls{display:flex;gap:18px}.call-overlay .controls button{width:60px;height:60px;border-radius:50%;border:none;font-size:22px;color:#fff;background:#ffffff26}.call-overlay .controls button.end{background:var(--wa-danger)}.call-overlay .controls button.accept{background:var(--wa-green)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:500}.modal{background:var(--wa-panel);border-radius:8px;padding:0;width:420px;max-width:90vw;max-height:80vh;overflow-y:auto;color:var(--wa-text)}.modal h2{margin:0;padding:16px 20px;font-size:18px;font-weight:500;background:var(--wa-panel-header);border-bottom:1px solid var(--wa-border);position:sticky;top:0;z-index:1}.modal .user-row{display:flex;align-items:center;gap:14px;padding:10px 20px;cursor:pointer;border-bottom:1px solid rgba(134,150,160,.08)}.modal .user-row:hover{background:var(--wa-hover)}.modal .user-row .av{width:44px;height:44px;border-radius:50%;background:var(--wa-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.modal .actions-row{display:flex;gap:8px;justify-content:flex-end;padding:12px 20px;border-top:1px solid var(--wa-border)}.modal .actions-row button{padding:8px 16px;border-radius:6px;border:none;font-size:14px}.modal .actions-row button.primary{background:var(--wa-primary);color:#fff}.modal .actions-row button.ghost{background:none;color:var(--wa-text-secondary)}.wa-login{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--wa-bg);padding:20px 16px;overflow:hidden}.wa-login-bg{display:none}.wa-login-content{display:flex;flex-direction:column;align-items:center;width:100%}.wa-login-card{background:var(--wa-panel);border-radius:8px;box-shadow:0 4px 24px #0000004d;width:100%;max-width:440px;padding:48px 32px 36px;box-sizing:border-box;overflow:hidden}@media (max-width:500px){.wa-login-card{padding:32px 24px 28px}}.wa-logo{text-align:center;margin-bottom:16px}.wa-logo img{width:72px;height:72px;border-radius:18px;box-shadow:0 4px 16px #0003}.wa-logo.small img{width:56px;height:56px}.wa-login-card h1{text-align:center;font-size:22px;font-weight:600;color:var(--wa-text);margin:0 0 8px}.wa-subtitle{text-align:center;color:var(--wa-text-secondary);font-size:14px;margin:0 0 28px;line-height:1.5}.wa-err{background:#ea433526;border:1px solid rgba(234,67,53,.3);color:#ff6b6b;padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:16px;line-height:1.4;white-space:pre-wrap}.wa-info{background:#2a5fa826;border:1px solid rgba(42,95,168,.3);color:var(--wa-blue);padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:16px;line-height:1.4}.wa-phone-row{display:flex;gap:8px;margin-bottom:24px}.wa-country{flex:0 0 auto;display:flex;align-items:center;gap:6px;background:var(--wa-input-bg);border:1px solid var(--wa-border);border-radius:8px;padding:12px 14px;font-size:15px;font-weight:500;color:var(--wa-text)}.wa-flag{font-size:20px}.wa-phone-input{flex:1;min-width:0;border:1px solid var(--wa-border);border-radius:8px;padding:12px 14px;font-size:18px;font-weight:500;letter-spacing:1.5px;color:var(--wa-text);background:var(--wa-input-bg);outline:none;transition:border-color .15s;box-sizing:border-box}.wa-phone-input:focus{border-color:var(--wa-accent)}.wa-phone-input::placeholder{color:var(--wa-text-secondary);font-weight:400;letter-spacing:2px}.wa-otp-row{display:flex;gap:8px;justify-content:center;margin-bottom:24px}.wa-otp-box{width:48px;height:56px;border:2px solid var(--wa-border);border-radius:10px;text-align:center;font-size:24px;font-weight:700;color:var(--wa-text);background:var(--wa-input-bg);outline:none;transition:border-color .15s}.wa-otp-box:focus{border-color:var(--wa-accent)}.wa-otp-actions{display:flex;justify-content:space-between;margin-top:12px}.wa-otp-actions button{background:none;border:none;color:var(--wa-accent);font-size:13px;cursor:pointer;padding:0}.wa-otp-actions button:disabled{color:var(--wa-text-secondary);cursor:default}.wa-input{width:100%;padding:12px 14px;border:1px solid var(--wa-border);border-radius:8px;font-size:15px;margin-bottom:12px;outline:none;color:var(--wa-text);background:var(--wa-input-bg)}.wa-input:focus{border-color:var(--wa-accent)}.wa-btn{width:100%;padding:14px;border:none;border-radius:8px;background:var(--wa-primary);color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:background .15s}.wa-btn:hover{background:var(--wa-primary-light)}.wa-btn:disabled{opacity:.6;cursor:default}.wa-hint{text-align:center;font-size:12px;color:var(--wa-text-secondary);margin-top:20px;line-height:1.5}.wa-admin-link{text-align:center;font-size:12px;margin-top:12px}.wa-admin-link a{color:var(--wa-accent);text-decoration:none}.wa-admin-link a:hover{text-decoration:underline}.wa-footer{color:#ffffff4d;font-size:11px;margin-top:20px;text-align:center}@media (max-width:820px){.app-shell{flex-direction:column}.sidebar{max-width:100%;width:100%;height:100%}.chat-view{display:none;width:100%;position:absolute;top:0;right:0;bottom:0;left:0;z-index:10}.chat-view.empty,.app-shell.has-active .sidebar{display:none}.app-shell.has-active .chat-view{display:flex}.btn-back{display:inline-flex;align-items:center;justify-content:center}.messages{padding:10px 12px}.bubble{max-width:85%;font-size:15px}.bubble img.media{max-width:75vw;max-height:60vw}.bubble video.media{max-width:80vw}.composer{padding:6px 8px;gap:4px}.composer button.icon-btn{width:36px;height:36px;font-size:18px}.composer input.text-input{padding:10px 12px}.composer button.send{width:40px;height:40px;font-size:16px}.typing{padding:4px 12px}.modal{width:94vw;max-height:90vh}}@media (max-width:820px){input,textarea,select,.composer input.text-input{font-size:16px!important}}
