.photo-drop.uploaded{border-style:solid;border-color:var(--accept)}.photo-drop.uploaded #photoLabel{color:var(--accept);font-weight:600}.msg-item{display:flex;align-items:center;gap:10px;background:#fbfbfe;border:1px solid var(--line);border-radius:10px;padding:9px 12px}.msg-item .msg-tag{font-size:.68rem;font-weight:700;padding:3px 8px;border-radius:999px;flex-shrink:0}.msg-item .msg-tag.received{background:#eff1f5;color:#4a4e5c}.msg-item .msg-tag.sent{background:#e9fbef;color:var(--accept)}.msg-item .msg-preview{flex:1;font-size:.84rem;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-item .msg-remove{background:0 0;border:none;color:var(--decline);font-size:1rem;cursor:pointer;flex-shrink:0;line-height:1}.phone-screen.dark{--snap-header-bg:#000;--snap-header-ink:#fff;--snap-body-bg:#000;--snap-received-bg:#1e1e1e;--snap-received-ink:#fff;--snap-input-bg:#000;--snap-inputbar-bg:#000;--snap-muted:#9a9a9a;--snap-notif-bg:#181818;--snap-notif-link:#4da3ff}.phone-screen.style-android .arrow-ios{display:none}.phone-screen.style-android .arrow-android{display:block}.phone-screen.style-android .statusbar-android{display:flex}.phone-screen.style-android .statusbar-ios{display:none}.date-pill{align-self:center;background:var(--snap-received-bg);color:var(--snap-muted);font-size:.66rem;font-weight:700;padding:5px 12px;border-radius:8px;margin-bottom:6px;letter-spacing:.3px}.msg-row.sent{justify-content:flex-end}.msg-row.received{justify-content:flex-start}.msg-avatar{width:20px;height:20px;border-radius:50%;flex-shrink:0;background-size:cover;background-position:center;background-image:linear-gradient(145deg,#9aa0ac,#6b7280);display:flex;align-items:center;justify-content:center;font-size:.52rem;font-weight:700;color:#fff;font-family:"Sora",sans-serif}.bubble{max-width:74%;padding:9px 13px;border-radius:18px;font-size:.82rem;line-height:1.4;position:relative;word-wrap:break-word}.bubble.received{background:var(--snap-received-bg);color:var(--snap-received-ink);border-bottom-left-radius:5px}.bubble.sent{background:linear-gradient(135deg,var(--primary) 0%,#4a7cff 100%);color:#fff;border-bottom-right-radius:5px}.bubble-time{display:block;font-size:.62rem;margin-top:3px;color:var(--snap-muted)}.bubble.sent .bubble-time{color:rgba(255,255,255,.75)}.bubble.received .bubble-time{text-align:left}.bubble.sent .bubble-time{text-align:right}.bubble.sent .bubble-time.tick-sent::after{content:" · Sent"}.bubble.sent .bubble-time.tick-delivered::after{content:" · Delivered"}.bubble.sent .bubble-time.tick-opened::after{content:" · Opened"}.typing-cluster{display:flex;align-items:center;gap:6px;margin-top:2px;width:100%}.typing-cluster.received{justify-content:flex-start}.typing-cluster.sent{justify-content:flex-end}.typing-bubble{background:var(--snap-received-bg);border-radius:16px;padding:10px 13px;display:flex;gap:3px;align-items:center;align-self:flex-start}.typing-bubble span{width:5px;height:5px;border-radius:50%;background:var(--snap-muted);display:inline-block;animation:snapTyping 1.2s infinite ease-in-out}.typing-bubble span:nth-child(2){animation-delay:.15s}.typing-bubble span:nth-child(3){animation-delay:.3s}.typing-bubble.sent{background:linear-gradient(135deg,var(--primary) 0%,#4a7cff 100%);align-self:flex-end}.typing-bubble.sent span{background:rgba(255,255,255,.85)}