/* Layout conectado: reaproveita a identidade do protótipo sem executar sua simulação. */
body{min-height:790px}.demo-bar{min-height:54px}.demo-bar #connection{order:0;width:auto;margin-left:auto;font-size:9px;color:#91dbbe}.auth-screen .auth-art{height:145px;margin-block:25px}.auth-screen h1{font-size:38px}.auth-screen .auth-description{font-size:13px}.auth-screen .auth-tabs{display:flex;gap:8px;margin:24px 0 12px}.auth-tabs button{flex:1;border:1px solid #41544a;background:#263b30;color:#b8d8c4;padding:11px;border-radius:12px;font-size:12px}.auth-tabs button[aria-pressed=true]{background:#83d8b9;color:#153d2a}.auth-screen label{display:block;margin:15px 0 8px;font-size:12px}#auth-form input,#new-chat-form input{width:100%;min-height:44px;margin-top:7px;padding:11px 13px;border:1px solid #41554a;border-radius:12px;background:#23392d;color:#e2f3e5;font-size:15px}#auth-form .primary{margin-top:15px}.auth-screen .field-help{margin-top:18px;font-size:11px}.form-error{color:#f3a69b!important;font-size:12px!important;min-height:16px}.shell{min-height:735px}.sidebar{min-height:735px}.list-empty{padding:30px 25px}.list-empty .primary{font-size:12px}.archive-row>svg{width:19px;height:19px;margin-right:20px}.contact{border:0;background:none;text-align:left;color:inherit;padding:0;min-width:0;flex:1}.contact h2{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:175px;margin:0}.contact p{margin:3px 0 0;font-size:10px!important}.chat-actions{display:flex;align-items:center;gap:1px}.row-retention{font-size:9px}.row-preview{max-width:255px}.contact-row{width:100%;border:0;background:none;display:flex;align-items:center;gap:12px;padding:15px 0;text-align:left}.contact-row small{display:block;color:#8ba99a;font-size:11px;margin-top:4px}.contact-row .list-avatar{width:42px;height:42px;font-size:18px}#contact-list{margin-top:18px}.older{border:0;background:#203a2b;color:#badac4;padding:8px;font-size:11px}.message-text{margin:0}.file-card{display:flex;gap:10px;align-items:center;border:0;background:#1b30294d;color:#d5eadd;border-radius:10px;padding:12px;width:100%;text-align:left;margin:4px 0}.file-card svg{width:24px;height:24px;flex-shrink:0}.file-card span{overflow-wrap:anywhere;font-size:12px}.file-card small{display:block;font-size:10px;margin-top:3px;color:#a0b8a8}.attachment-preview{width:100%;border-radius:10px;max-height:240px;object-fit:contain;background:#15231b}.message audio{max-width:100%;width:245px}.message video{max-width:100%;width:280px}.message a{color:#b4e3c9}.message-time{font-size:9px}.message-checks{font-size:9px;letter-spacing:0}.message-checks[title]{color:#a8c8b5}.message.deleted .message-text{font-style:italic;color:#a4b7a9}#pending-files{display:flex;gap:6px;overflow:auto;padding:8px 0}.pending-file{display:flex;align-items:center;gap:6px;background:#304d3b;border-radius:10px;font-size:10px;padding:8px;max-width:190px;flex-shrink:0}.pending-file span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pending-file button{border:0;background:none;color:#cae5d0;font-size:20px}.composer-wrap>p{font-size:9px}#toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);width:min(370px,90vw);padding:13px 18px;background:#2b4f3f;color:#edf9ee;border:1px solid #5b9475;border-radius:15px;font-size:12px;z-index:100;box-shadow:0 5px 20px #0005}.real-video-stage{position:relative;min-height:120px;border-radius:16px;overflow:hidden;background:#0d1913;margin-bottom:18px}#remote-video{display:block;width:100%;max-height:340px;object-fit:contain}#local-video{position:absolute;width:28%;right:8px;bottom:8px;border:1px solid #71b897;border-radius:10px}#call-dialog[data-kind=voice] .real-video-stage{height:0;min-height:0;overflow:hidden;margin:0}#call-dialog{max-height:94dvh;overflow:auto}.call-top{margin-bottom:20px}.call-person{padding:5px 0 15px}.call-person .list-avatar{margin:auto}.call-disclaimer{font-size:10px}#reject-call{text-align:center}.history-row{display:flex;width:100%;align-items:center;gap:12px;padding:17px 4px;border:0;border-bottom:1px solid #263d30;background:none;text-align:left}.history-row .list-avatar{width:43px;height:43px;font-size:18px}.history-row strong{display:block;font-size:13px}.history-row small{display:block;font-size:11px;color:#8ba999;margin-top:5px}.history-row>svg{width:19px;height:19px;color:#82caa7;margin-left:auto}.history-row.missed strong{color:#f39b91}#call-history{padding:0 23px}.profile-preview-link{margin-bottom:20px}.profile-version{padding-bottom:20px}.bottom-nav{z-index:5}.share-grid{grid-template-columns:repeat(4,1fr)}#new-chat-form .primary{margin-top:15px}body[data-screen=chat] main{height:calc(100dvh - 105px);min-height:440px;max-height:850px}body[data-screen=chat] .shell{min-height:0}#profile-form input[readonly]{opacity:.65}#send-message:disabled{opacity:.5}.messages{scroll-behavior:auto}.messages .empty{margin:auto;text-align:center}.message-more{cursor:pointer}#public-profile-bio{white-space:pre-wrap}.day{align-self:center}#call-dialog .call-controls{justify-content:center}body[data-screen=phone] .demo-bar{border-radius:27px 27px 0 0}button,input,textarea{touch-action:manipulation}svg{flex-shrink:0}
@media(max-width:480px){body{min-height:100dvh}.shell,.sidebar{min-height:calc(100dvh - 54px)}body[data-screen=chat] main{height:calc(100dvh - 54px);min-height:0;max-height:none}body[data-screen=phone] .demo-bar{border-radius:0}.auth-screen .auth-art{height:130px}.contact h2{max-width:140px}.demo-bar{min-height:54px}.composer-wrap{padding-bottom:max(8px,env(safe-area-inset-bottom))}.bottom-nav{bottom:max(12px,env(safe-area-inset-bottom))}}

/* Fotos no próprio balão, mantendo sua proporção e os metadados sobre a imagem. */
.photo-message .bubble{position:relative;padding:3px;min-width:0;overflow:hidden;border-radius:15px 15px 15px 4px}.photo-message.mine .bubble{border-radius:15px 15px 4px 15px}.chat-photo{width:min(300px,70vw);position:relative;overflow:hidden;border-radius:12px;background:#182c22;margin:0}.chat-photo:not(.loaded){min-height:180px;display:grid;place-content:center}.chat-photo+.chat-photo{margin-top:3px}.photo-open{display:block;width:100%;padding:0;border:0;background:none;border-radius:inherit;overflow:hidden;cursor:zoom-in}.photo-open:disabled{opacity:1}.chat-photo img{display:block;width:100%;height:auto;max-height:480px;object-fit:contain}.photo-state{padding:16px;text-align:center;font-size:11px;color:#b9d1c0}.photo-retry{border:1px solid #739681;border-radius:10px;background:#2f503c;color:#e6f1e8;padding:8px;margin:0 12px 10px;font-size:11px}.photo-message .message-text{padding:8px 9px 2px}.photo-message .message-meta{padding:1px 7px}.photo-only .message-meta{position:absolute;bottom:8px;right:8px;min-height:20px;border-radius:12px;background:#0006;color:white;padding:3px 7px;gap:5px;pointer-events:none;text-shadow:0 1px 3px #0008}.photo-only .message-meta .message-checks{color:white}.photo-only .message-meta .message-more{pointer-events:auto;color:white;font-size:14px;min-height:18px;min-width:20px}.photo-only .bubble::after{content:'';position:absolute;bottom:3px;left:3px;right:3px;height:48px;background:linear-gradient(transparent,#0004);pointer-events:none;border-radius:0 0 9px 2px}.photo-only .message-meta{z-index:1}
#photo-viewer{width:min(900px,100vw);max-width:100vw;height:min(900px,96dvh);max-height:100dvh;background:#0c1110;padding:0;border:1px solid #34483f;border-radius:18px;overflow:hidden}#photo-viewer::backdrop{background:#000d;backdrop-filter:blur(5px)}.photo-viewer-toolbar{height:58px;display:flex;align-items:center;justify-content:space-between;padding:9px 14px;color:#e4f3e9;border-bottom:1px solid #273d31}.photo-viewer-toolbar>span{font-size:13px}.photo-viewer-toolbar button{background:#263e30;border:0;border-radius:20px;color:#d5eedf;min-height:36px;padding:7px 16px;font-size:12px}.photo-viewer-toolbar button:first-child{font-size:25px;padding:0;width:36px}.photo-viewer-content{height:calc(100% - 58px);overflow:auto;display:grid;place-items:center;padding:12px}.photo-viewer-content img{display:block;width:100%;height:100%;min-height:0;max-width:100%;max-height:100%;object-fit:contain}@media(max-width:480px){#photo-viewer{width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0;margin:0}.photo-viewer-toolbar{padding-top:max(9px,env(safe-area-inset-top))}}

/* Gravador integrado ao rodapé da conversa. */
#voice-recorder{padding:8px 5px 4px}.recording-top{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:42px}.voice-clock{display:flex;align-items:center;gap:8px}.voice-clock strong{font-size:24px;font-weight:400;font-variant-numeric:tabular-nums}#recording-dot{width:7px;height:7px;border-radius:50%;background:#ff737f;animation:record-pulse 1s infinite}#recording-wave{height:34px;display:flex;align-items:center;gap:3px;overflow:hidden}#recording-wave i{display:block;width:3px;height:3px;border-radius:4px;background:#9bd6bf}#recording-status{font-size:11px;color:#a9bcb2;min-height:16px;margin:7px 0}#recording-preview{width:100%;height:38px;margin:8px 0}.recording-controls{display:flex;align-items:center;justify-content:space-between;padding:12px 0 6px}.recording-controls button{display:grid;place-items:center;width:46px;height:46px;border:0;border-radius:50%;background:none;color:#d3e5dc}.recording-controls svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}#pause-recording{color:#ff737f;border:2px solid currentColor;width:37px;height:37px;font-size:23px;line-height:1}#use-recording{background:#91d7b7;color:#173e2b}.recording-controls button:disabled{opacity:.35}.review-recording{display:block;margin:8px auto 0;border:0;background:none;color:#a6deca;font-size:11px;padding:8px}#composer[hidden],#voice-recorder[hidden]{display:none}@keyframes record-pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){#recording-dot{animation:none}}

.voice-message{display:flex;align-items:center;gap:10px;width:270px;max-width:100%;min-height:60px;padding:3px 0}.voice-play{border:0;background:none;color:#b8e6d0;display:grid;place-items:center;width:34px;height:40px;font-size:25px;flex-shrink:0}.voice-play svg{width:27px;height:27px;fill:currentColor}.voice-track{flex:1;min-width:0}.voice-track input{width:100%;height:24px;accent-color:#93dcbc;cursor:pointer}.voice-track small{display:block;font-size:10px;color:#b6cabc;font-variant-numeric:tabular-nums}.voice-avatar{position:relative;width:37px;height:37px;font-size:16px;flex-shrink:0}.voice-avatar svg{position:absolute;bottom:-4px;left:-5px;width:15px;height:18px;background:#284a3b;border-radius:5px;color:#a7dfc4;fill:none;stroke:currentColor;stroke-width:2}

.voice-track{position:relative}.voice-waveform{display:none;height:27px;align-items:center;justify-content:space-between;gap:2px;pointer-events:none}.voice-waveform i{width:3px;min-height:3px;flex:1;border-radius:4px;background:#aac8b7}.has-waveform .voice-waveform{display:flex}.has-waveform input{position:absolute;top:0;left:0;margin:0;opacity:.3}.has-waveform input:focus-visible{opacity:1}

.avatar-photo{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.profile-photo-editor{text-align:center;margin:15px 0}.profile-photo-editor .profile-large-avatar{display:flex;width:90px;height:90px;margin:0 auto 10px}.profile-photo-editor small{font-size:11px;color:#a4b8ad}.profile-photo-editor .settings-row{text-align:center;justify-content:center;padding:10px}#edit-profile-dialog{max-height:90dvh;overflow:auto}

.phone-choice{display:flex;gap:12px;align-items:flex-start;padding:18px 0;border-bottom:1px solid #35483e}.phone-choice input{width:20px;height:20px;flex-shrink:0;accent-color:#86d9be}.phone-choice strong{display:block;font-size:14px}.phone-choice small{display:block;color:#a5b9ac;font-size:12px;line-height:1.5;margin-top:6px}#phone-verification-note{font-size:12px}#phone-privacy-dialog{max-height:90dvh;overflow:auto}

/* Entrada por SMS mantém a identidade visual mobile. */
.sms-phone{display:flex;align-items:center;gap:10px}.sms-phone span{color:#80dac8}.sms-phone input{min-width:0;flex:1}#sms-code{font-size:24px;letter-spacing:.3em}#auth-method,#sms-back{margin:14px 0;padding:12px;width:100%;color:#80dac8;border:1px solid #34433d;border-radius:14px;background:transparent}
