*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{direction:rtl;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;background:#f0f2f5;color:#111b21}#app{min-height:100vh}.view{display:none}.view.active{display:flex}h1,h2,h3{margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:none;padding:.45rem .9rem;font-size:.95rem;cursor:pointer;transition:background-color .15s ease-in-out,box-shadow .15s ease-in-out;background:#e4e6eb;color:#111b21}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:#00a884;color:#fff}.btn.primary:hover:not(:disabled){background:#029972}.btn.secondary{background:#d0e6ff;color:#075e54}.top-bar .btn.subtle{color:#e9edef}.top-bar .btn.subtle:hover:not(:disabled){background:#ffffff1a}.btn.subtle:hover:not(:disabled){background:#0000000f}.btn.tiny{padding:.2rem .6rem;font-size:.8rem;border-radius:999px}.btn.icon{width:32px;height:32px;padding:0;border-radius:50%;background:transparent;font-size:18px}.btn.icon:hover:not(:disabled){background:#0000000f}.full-width{width:100%}#loginView{align-items:center;justify-content:center;padding:1.5rem}.login-card{background:#fff;padding:1.5rem 1.75rem;border-radius:16px;box-shadow:0 8px 24px #0000001f;width:100%;max-width:420px}.app-title{text-align:center;margin-bottom:1.25rem;letter-spacing:3px}.form-group{margin-bottom:.9rem}.form-group label{display:block;margin-bottom:.25rem;font-size:.9rem;color:#54656f}.form-group input,.send-message-bar textarea{width:100%;border-radius:10px;border:1px solid #ced0d4;padding:.45rem .6rem;font-size:.95rem;outline:none}.form-group input:focus,.send-message-bar textarea:focus{border-color:#00a884;box-shadow:0 0 0 2px #00a88426}.divider{border-top:1px solid #e2e3e5;margin:1rem 0}.helper-text{margin-top:.7rem;font-size:.85rem;color:#54656f}.top-bar{display:flex;align-items:center;justify-content:space-between;background:#202c33;color:#e9edef;padding:.6rem .8rem}.top-bar-left,.top-bar-center,.top-bar-right{display:flex;align-items:center;gap:.3rem}.top-bar-center{justify-content:center;flex:1;text-align:center}.app-logo{font-weight:600;letter-spacing:2px}.user-label{font-size:.85rem;color:#8696a0}.user-number{font-weight:500}#chatView{height:100vh;flex-direction:column}.chat-layout{flex:1;display:flex;min-height:0}.contacts-panel{background:#fff;border-left:1px solid #ddd;display:flex;flex-direction:column;min-width:260px;max-width:360px}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:.7rem .9rem;border-bottom:1px solid #e2e3e5}.panel-header h2{font-size:1rem}.panel-status{font-size:.85rem;color:#54656f;padding:0 .9rem .4rem}.contacts-list{flex:1;overflow-y:auto}.contact-item{padding:.6rem .9rem;border-bottom:1px solid #f0f2f5;cursor:pointer;transition:background-color .1s ease-in-out}.contact-item:hover{background-color:#f5f6f6}.contact-item.active{background-color:#e7f6ee}.contact-main-row{display:flex;justify-content:space-between;align-items:center}.contact-number{font-weight:500}.contact-last-time{font-size:.8rem;color:#8696a0;margin-inline-start:.5rem}.contact-sub-row{font-size:.8rem;color:#54656f;margin-top:.2rem}.conversation-panel{flex:1;display:flex;flex-direction:column;background:#efeae2}.conversation-header{display:flex;align-items:center;padding:.5rem .8rem;background:#202c33;color:#e9edef}.back-button{display:none;margin-inline-end:.5rem;border-radius:999px;border:none;background:transparent;color:#e9edef;font-size:1.1rem;cursor:pointer}.back-button:hover{background:#ffffff1a}.conversation-title{flex:1;display:flex;flex-direction:column}.conversation-title .contact-number{font-size:.95rem}.conversation-title .contact-last-time{font-size:.75rem;color:#8696a0}.messages-container{flex:1;overflow-y:auto;padding:.8rem;background:#efeae2;display:flex;flex-direction:column;gap:.35rem}.empty-state{margin:auto;text-align:center;color:#54656f;font-size:.95rem}.message-row{display:flex}.message-row.sent{justify-content:flex-start}.message-row.received{justify-content:flex-end}.message-bubble{max-width:80%;padding:.4rem .6rem;border-radius:12px;position:relative;font-size:.9rem;line-height:1.4;box-shadow:0 1px .5px #00000021}.message-row.sent .message-bubble{background:#d9fdd3}.message-row.received .message-bubble{background:#fff}.message-text{white-space:pre-wrap;word-wrap:break-word}.message-meta{font-size:.7rem;color:#8696a0;text-align:left;margin-top:.2rem}.send-message-bar{display:flex;align-items:center;gap:.4rem;padding:.5rem .7rem;background:#f0f2f5;border-top:1px solid #d3d6da}.send-message-bar textarea{resize:none;max-height:120px}.modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}.modal.hidden{display:none}.modal-backdrop{position:absolute;inset:0;background:#00000059}.modal-content{position:relative;background:#fff;padding:1rem 1.2rem;border-radius:12px;max-width:520px;width:90%;max-height:80vh;overflow:auto;box-shadow:0 8px 24px #00000040;z-index:1}.modal-content h3{margin-bottom:.7rem}.modal-close{position:absolute;top:.4rem;left:.5rem;border:none;background:transparent;font-size:1.2rem;cursor:pointer}.json-viewer{background:#0b1020;color:#e6f4ff;padding:.7rem;border-radius:8px;font-size:.8rem;overflow-x:auto}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.error-message{color:#e74c3c;font-size:.85rem}@media(max-width:768px){.chat-layout{flex-direction:row}.contacts-panel,.conversation-panel{width:100%}#chatView:not(.show-conversation) .contacts-panel{display:flex}#chatView:not(.show-conversation) .conversation-panel{display:none}#chatView.show-conversation .contacts-panel{display:none}#chatView.show-conversation .conversation-panel{display:flex}.back-button{display:inline-flex}}@media(min-width:769px){.chat-layout,.contacts-panel,.conversation-panel{display:flex}#chatView .contacts-panel{flex:0 0 32%;max-width:360px}#chatView .conversation-panel{flex:1}}.top-bar .btn.subtle,.conversation-header .btn.icon{color:#e9edef!important;background:transparent}.top-bar .btn.subtle:hover:not(:disabled),.conversation-header .btn.icon:hover:not(:disabled){background:#ffffff1a!important}.date-separator-row{display:flex;justify-content:center;margin:.4rem 0}.date-separator{background:#00000029;color:#f0f2f5;padding:.15rem .6rem;border-radius:999px;font-size:.75rem}
