        *, *:focus, *:focus-visible, *:active { box-sizing: border-box; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; -webkit-tap-highlight-color: transparent !important; outline: none !important; }
        button, a, input, textarea, select { -webkit-touch-callout: none; }
        html{height:100%;overflow:hidden;}
        body{background-color:#0f111a;margin:0;padding:0;display:flex;justify-content:center;height:100%;height:100dvh;width:100%;position:fixed;top:0;left:0;right:0;bottom:0;overflow:hidden;}
        .chat-container{width:100%;max-width:480px;background:#1a1c24;display:flex;flex-direction:column;height:100%;height:100dvh;position:relative;overflow:hidden;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);}
        .chat-container.keyboard-open .input-area{padding-bottom:8px;}
        .header{background:#1a1c24;color:#fff;padding:6px 12px;padding-top:max(6px,env(safe-area-inset-top));font-size:1.2rem;font-weight:bold;border-bottom:1px solid #282c37;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;position:relative;z-index:40;}
        .header-title{font-size:1.15rem;font-weight:bold;letter-spacing:0.3px;line-height:1;white-space:nowrap;user-select:none;-webkit-user-select:none;}
        .chat-status-bar{background:#14161f;border-bottom:1px solid #232734;padding:4px 14px;display:flex;align-items:center;justify-content:flex-start;flex-shrink:0;z-index:5;cursor:pointer;transition:background-color .2s ease;}
        .chat-status-bar:hover{background:#181b26;}
        /* SABİTLENMİŞ MESAJ BARI (PINNED MESSAGE BAR) */
        .pinned-message-bar{display:flex;align-items:center;background:rgba(20,22,31,0.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,0.08);padding:6px 12px 6px 14px;gap:10px;z-index:20;flex-shrink:0;user-select:none;-webkit-user-select:none;box-shadow:0 3px 10px rgba(0,0,0,0.35);animation:pinnedBarSlideDown 0.22s cubic-bezier(0.175,0.885,0.32,1.2);}
        @keyframes pinnedBarSlideDown{from{opacity:0;transform:translateY(-8px);}to{opacity:1;transform:translateY(0);}}
        .pinned-bar-indicator{width:3.5px;height:28px;border-radius:3px;background:#f59e0b;flex-shrink:0;transition:background-color .2s ease,box-shadow .2s ease;box-shadow:0 0 8px rgba(245,158,11,0.4);}
        .pinned-bar-indicator.aysegull{background:#ff4081;box-shadow:0 0 8px rgba(255,64,129,0.4);}
        .pinned-bar-indicator.yakup{background:#38bdf8;box-shadow:0 0 8px rgba(56,189,248,0.4);}
        .pinned-bar-content{flex:1;min-width:0;cursor:pointer;display:flex;flex-direction:column;gap:2px;}
        .pinned-bar-content:active{opacity:0.8;}
        .pinned-bar-header{display:flex;align-items:center;gap:5px;line-height:1.1;}
        .pinned-bar-icon{font-size:0.82rem;line-height:1;}
        .pinned-bar-title{font-size:0.74rem;font-weight:700;color:#e2e8f0;letter-spacing:0.2px;}
        .pinned-bar-counter{font-size:0.65rem;font-weight:700;color:#94a3b8;background:rgba(255,255,255,0.08);padding:1px 6px;border-radius:8px;margin-left:2px;}
        .pinned-bar-snippet{font-size:0.80rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;}
        .pinned-bar-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;}
        .pinned-bar-btn{background:transparent;border:none;color:#64748b;cursor:pointer;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .15s ease;padding:0;flex-shrink:0;}
        .pinned-bar-btn:hover{background:rgba(255,255,255,0.08);color:#cbd5e1;}
        .pinned-bar-btn:active{transform:scale(0.92);}
        .pinned-bar-btn.unpin:hover{color:#ff5252;background:rgba(255,82,82,0.15);}
        .pinned-bar-btn svg{width:15px;height:15px;fill:currentColor;}
        .header-partner-status{display:inline-flex;align-items:center;gap:6px;font-size:0.72rem;font-weight:600;color:#8e9297;letter-spacing:0.25px;line-height:1;transition:color .25s ease;user-select:none;-webkit-user-select:none;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
        .header-partner-status.online{color:#43b581;}
        .header-partner-status.online .status-pulse-dot{background:#43b581;box-shadow:0 0 8px rgba(67,181,129,0.8);animation:statusPulse 2s infinite ease-in-out;}
        .header-partner-status.typing{color:#38bdf8;}
        .header-partner-status.typing .status-pulse-dot{background:#38bdf8;box-shadow:0 0 8px rgba(56,189,248,0.9);animation:typingPulse 1.2s infinite ease-in-out;}
        .header-partner-status .status-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-flex;align-items:center;}
        .status-pulse-dot{width:7px;height:7px;border-radius:50%;background:#72767d;transition:all .3s ease;flex-shrink:0;}
        .typing-dots{display:inline-flex;align-items:center;gap:2.5px;margin-left:3px;}
        .typing-dots span{width:3.5px;height:3.5px;border-radius:50%;background:currentColor;display:inline-block;animation:typingBounce 1.4s infinite ease-in-out both;}
        .typing-dots span:nth-child(1){animation-delay:-0.32s;}
        .typing-dots span:nth-child(2){animation-delay:-0.16s;}
        @keyframes typingBounce{
            0%,80%,100%{transform:scale(0.35);opacity:0.35;}
            40%{transform:scale(1.15);opacity:1;}
        }
        @keyframes typingPulse{
            0%,100%{transform:scale(0.95);box-shadow:0 0 0 0 rgba(56,189,248,0.7);}
            50%{transform:scale(1.25);box-shadow:0 0 0 4px rgba(56,189,248,0);}
        }
        @keyframes statusPulse{
            0%{transform:scale(0.95);box-shadow:0 0 0 0 rgba(67,181,129,0.7);}
            70%{transform:scale(1.15);box-shadow:0 0 0 5px rgba(67,181,129,0);}
            100%{transform:scale(0.95);box-shadow:0 0 0 0 rgba(67,181,129,0);}
        }
        .header-actions{display:flex;align-items:center;gap:7px;}
        .icon-btn{background:#282c37;border:none;color:#a0a5b1;cursor:pointer;width:40px;height:40px;border-radius:50%;transition: all 0.2s ease;display:flex;align-items:center;justify-content:center;box-shadow: 0 3px 6px rgba(0,0,0,0.25);flex-shrink:0;user-select:none;-webkit-user-select:none;}
        .icon-btn:active{color:#fff;background:#3a3f4e;transform:scale(0.92);box-shadow: 0 1px 3px rgba(0,0,0,0.2);}
        .icon-btn svg{width:20px;height:20px;fill:currentColor;}
        .profile-btn{display:inline-flex;align-items:center;gap:7px;padding:3px 12px 3px 4px;border-radius:22px;border:1px solid rgba(255,255,255,0.15);background:#20222b;color:#fff;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px rgba(0,0,0,0.3);user-select:none;-webkit-user-select:none;white-space:nowrap;height:40px;flex-shrink:0;}
        .profile-btn:active{transform:scale(0.93);filter:brightness(0.9);}
        .profile-avatar-circle{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,0.25);display:inline-flex;align-items:center;justify-content:center;font-size:.84rem;font-weight:800;line-height:1;color:#fff;box-shadow:0 1px 3px rgba(0,0,0,0.3);overflow:hidden;}
        .profile-avatar-circle img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block;}
        .profile-name{font-size:.84rem;letter-spacing:0.2px;}
        .profile-btn.profile-Ayşegüll{background:linear-gradient(135deg,#a82e5b 0%,#6e1c39 100%);border-color:#ff4081;box-shadow:0 2px 8px rgba(233,30,99,0.35);}
        .profile-btn.profile-Ayşegüll .profile-avatar-circle{background:#ff4081;}
        .profile-btn.profile-Yakup{background:linear-gradient(135deg,#2b4c6f 0%,#1a2f45 100%);border-color:#3498db;box-shadow:0 2px 8px rgba(52,152,219,0.35);}
        .profile-btn.profile-Yakup .profile-avatar-circle{background:#3498db;}
        /* ==========================================
           UYGULAMALAR AÇILIR MENÜSÜ (APPS DROPDOWN)
           ========================================== */
        .apps-dropdown-wrapper{position:relative;display:inline-flex;}
        .apps-dropdown-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.3);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:998;display:none;opacity:0;transition:opacity .2s ease;}
        .apps-dropdown-backdrop.active{display:block;opacity:1;}
        .apps-dropdown-menu{position:absolute;top:calc(100% + 12px);left:0;right:auto;width:228px;max-width:calc(100vw - 32px);background:rgba(26,28,36,0.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,0.12);border-radius:18px;padding:7px;box-shadow:0 14px 38px rgba(0,0,0,0.65),0 4px 14px rgba(0,0,0,0.4);z-index:999;display:none;flex-direction:column;gap:3px;transform-origin:var(--menu-transform-origin, top left);animation:appsMenuPop .18s cubic-bezier(0.16,1,0.3,1) forwards;}
        .apps-dropdown-menu::before{content:'';position:absolute;top:-6px;left:var(--arrow-left, 18px);right:auto;width:12px;height:12px;background:rgba(26,28,36,0.98);border-top:1px solid rgba(255,255,255,0.14);border-left:1px solid rgba(255,255,255,0.14);transform:rotate(45deg);z-index:1;}
        .apps-dropdown-menu.open{display:flex;}
        @keyframes appsMenuPop{0%{opacity:0;transform:translateY(-8px) scale(0.94);}100%{opacity:1;transform:translateY(0) scale(1);}}
        .apps-menu-header{display:flex;align-items:center;justify-content:space-between;padding:5px 8px 6px;border-bottom:1px solid rgba(255,255,255,0.08);margin-bottom:3px;}
        .apps-menu-title{font-size:0.70rem;font-weight:700;color:#8e9297;text-transform:uppercase;letter-spacing:0.8px;}
        .apps-menu-item{display:flex;align-items:center;gap:10px;padding:8px 9px;border-radius:12px;text-decoration:none;color:#e2e8f0;transition:background-color .15s ease,transform .1s ease;user-select:none;-webkit-user-select:none;cursor:pointer;}
        .apps-menu-item:hover{background:rgba(255,255,255,0.08);color:#fff;}
        .apps-menu-item:active{background:rgba(255,255,255,0.14);transform:scale(0.98);}
        .apps-item-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 6px rgba(0,0,0,0.3);}
        .apps-item-icon svg{width:18px;height:18px;fill:#fff;}
        .apps-item-icon.icon-galeri{background:linear-gradient(135deg,#10b981 0%,#059669 100%);}
        .apps-item-icon.icon-vs{background:linear-gradient(135deg,#f59e0b 0%,#ef4444 100%);}
        .apps-item-icon.icon-masal{background:linear-gradient(135deg,#8b5cf6 0%,#6366f1 100%);}
        .apps-item-icon.icon-mektup{background:linear-gradient(135deg,#f43f5e 0%,#e11d48 100%);}
        .apps-item-content{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0;text-align:left;}
        .apps-item-name{font-size:0.85rem;font-weight:600;color:#f1f5f9;letter-spacing:0.2px;line-height:1.2;}
        .apps-item-desc{font-size:0.70rem;color:#94a3b8;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
        .apps-item-arrow{width:16px;height:16px;fill:#64748b;flex-shrink:0;transition:transform .15s ease,fill .15s ease;}
        .apps-menu-item:hover .apps-item-arrow{fill:#cbd5e1;transform:translateX(2px);}
        .apps-menu-btn.active{background:#3a3f4e;color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,0.18);}
        /* ==========================================
           AKILLI SOHBET İÇİ ARAMA (SMART SEARCH)
           ========================================== */
        .search-toggle-btn.active{background:#3a3f4e;color:#f59e0b;box-shadow:0 0 0 2px rgba(245,158,11,0.35);}
        .chat-search-bar{
            display:none;
            align-items:center;
            gap:6px;
            padding:5px 8px;
            min-height:42px;
            background:#161824;
            border-bottom:1px solid #282d3d;
            flex-shrink:0;
            z-index:35;
            position:relative;
            animation:searchSlideDown .18s cubic-bezier(0.16,1,0.3,1) forwards;
        }
        .chat-search-bar.open{display:flex;}
        @keyframes searchSlideDown{0%{opacity:0;transform:translateY(-6px);}100%{opacity:1;transform:translateY(0);}}
        .search-input-container{
            flex:1;
            display:flex;
            align-items:center;
            gap:6px;
            background:#1f2332;
            border:1.5px solid #333a4c;
            border-radius:20px;
            padding:4px 9px;
            min-height:32px;
            transition:border-color .2s ease, box-shadow .2s ease;
        }
        .search-input-container:focus-within{border-color:#f59e0b;box-shadow:0 0 0 2px rgba(245,158,11,0.2);}
        .search-input-icon{width:15px;height:15px;fill:#94a3b8;flex-shrink:0;}
        .chat-search-input{
            flex:1;
            background:transparent;
            border:none;
            color:#fff;
            font-size:0.90rem;
            font-weight:500;
            outline:none;
            padding:1px 0;
            width:100%;
            min-width:0;
        }
        .chat-search-input::placeholder{color:#788094;font-size:0.82rem;}
        .search-clear-btn{
            background:rgba(255,255,255,0.08);
            border:none;
            color:#94a3b8;
            cursor:pointer;
            width:20px;
            height:20px;
            border-radius:50%;
            font-size:0.75rem;
            display:flex;
            align-items:center;
            justify-content:center;
            transition:all .15s ease;
            flex-shrink:0;
        }
        .search-clear-btn:hover{background:#ff5252;color:#fff;}
        .search-nav-controls{display:flex;align-items:center;gap:4px;flex-shrink:0;}
        .search-counter-badge{
            font-size:0.70rem;
            font-weight:700;
            color:#cbd5e1;
            background:#252939;
            padding:3px 6px;
            border-radius:10px;
            white-space:nowrap;
            user-select:none;
            -webkit-user-select:none;
            border:1px solid rgba(255,255,255,0.06);
        }
        .chat-search-bar.drawer-open .search-counter-badge,
        .chat-search-bar.drawer-open #chat-search-counter{
            display:none !important;
        }
        .search-step-btn,.search-list-btn{
            background:#252939;
            border:1px solid rgba(255,255,255,0.08);
            color:#a0a5b1;
            cursor:pointer;
            width:32px;
            height:32px;
            border-radius:50%;
            display:flex;
            align-items:center;
            justify-content:center;
            transition:all .15s ease;
            flex-shrink:0;
            user-select:none;
            -webkit-user-select:none;
        }
        .search-step-btn svg,.search-list-btn svg{width:16px;height:16px;fill:currentColor;}
        .search-step-btn:disabled,.search-list-btn:disabled{opacity:0.35;cursor:not-allowed;}
        .search-step-btn:not(:disabled):hover,.search-list-btn:not(:disabled):hover{background:#343a4e;color:#fff;border-color:rgba(255,255,255,0.18);}
        .search-step-btn:not(:disabled):active,.search-list-btn:not(:disabled):active{transform:scale(0.92);}
        .search-list-btn.active{background:#f59e0b;color:#1e212c;border-color:#f59e0b;}
        .search-list-btn.active svg{fill:#1e212c;}

        /* ARAMA SONUÇ LİSTESİ - SAYFANIN KALANINI TAMAMEN DOLDURAN PANEL */
        .search-results-drawer{
            display:none;
            flex-direction:column;
            position:absolute;
            left:0;
            right:0;
            bottom:0;
            top:var(--search-drawer-top, 110px);
            background:rgba(18,20,28,0.98);
            backdrop-filter:blur(20px);
            -webkit-backdrop-filter:blur(20px);
            z-index:45;
            overflow:hidden;
            box-shadow:0 14px 32px rgba(0,0,0,0.65);
            animation:searchDrawerFadeIn .18s cubic-bezier(0.16,1,0.3,1) forwards;
        }
        .search-results-drawer.open{display:flex;}
        @keyframes searchDrawerFadeIn{0%{opacity:0;transform:translateY(4px);}100%{opacity:1;transform:translateY(0);}}
        .search-drawer-header{
            display:flex;
            align-items:center;
            justify-content:space-between;
            padding:9px 14px;
            background:#151722;
            border-bottom:1px solid #252938;
            flex-shrink:0;
        }
        .search-drawer-title{font-size:0.78rem;font-weight:700;color:#cbd5e1;letter-spacing:0.3px;}
        .search-filter-pills{display:flex;gap:5px;}
        .search-filter-pill{
            background:#232737;
            border:1px solid rgba(255,255,255,0.06);
            color:#94a3b8;
            padding:4px 11px;
            border-radius:14px;
            font-size:0.74rem;
            font-weight:600;
            cursor:pointer;
            transition:all .15s ease;
        }
        .search-filter-pill.active{background:#f59e0b;color:#1e212c;border-color:#f59e0b;font-weight:700;}
        .search-results-list{
            flex:1;
            overflow-y:auto;
            padding:10px 12px;
            display:flex;
            flex-direction:column;
            gap:8px;
            -webkit-overflow-scrolling:touch;
            padding-bottom:max(24px, env(safe-area-inset-bottom, 24px));
        }
        .search-results-list::-webkit-scrollbar{width:5px;}
        .search-results-list::-webkit-scrollbar-thumb{background:#32384a;border-radius:4px;}
        .search-result-card{
            background:#1a1d29;
            border:1px solid #282d3d;
            border-radius:14px;
            padding:11px 14px;
            cursor:pointer;
            transition:all .15s ease;
            display:flex;
            flex-direction:column;
            gap:5px;
            text-align:left;
        }
        .search-result-card:hover{background:#232738;border-color:#3c435a;}
        .search-result-card:active{transform:scale(0.99);}
        .search-result-card.active{
            border-color:#f59e0b;
            background:#26231c;
            box-shadow:inset 4px 0 0 #f59e0b, 0 4px 16px rgba(0,0,0,0.35);
        }
        .search-card-meta{display:flex;align-items:center;justify-content:space-between;}
        .search-card-sender{font-size:0.72rem;font-weight:700;padding:2px 7px;border-radius:8px;}
        .search-card-sender.badge-aysegull{background:rgba(233,30,99,0.22);color:#ff4081;}
        .search-card-sender.badge-yakup{background:rgba(52,152,219,0.22);color:#3498db;}
        .search-card-date{font-size:0.72rem;color:#8e9297;}
        .search-card-text{
            font-size:0.86rem;
            color:#e2e8f0;
            line-height:1.35;
            overflow:hidden;
            text-overflow:ellipsis;
            display:-webkit-box;
            -webkit-line-clamp:3;
            -webkit-box-orient:vertical;
        }
        .search-empty-state{padding:35px 20px;text-align:center;color:#8e9297;display:flex;flex-direction:column;align-items:center;gap:10px;}
        .search-empty-icon{font-size:2rem;}
        .search-empty-text{font-size:0.88rem;color:#cbd5e1;font-weight:600;}

        /* ARAMA DAHA FAZLA YÜKLE BUTONU */
        .search-load-more-wrap{display:flex;justify-content:center;padding:8px 0 14px 0;}
        .search-load-older-btn, .search-load-more-btn{
            background:#232737;
            border:1px solid #363c50;
            color:#cbd5e1;
            font-size:0.75rem;
            font-weight:600;
            padding:7px 16px;
            border-radius:18px;
            cursor:pointer;
            display:inline-flex;
            align-items:center;
            gap:6px;
            transition:all .15s ease;
        }
        .search-load-older-btn svg, .search-load-more-btn svg{fill:currentColor;}
        .search-load-older-btn:hover, .search-load-more-btn:hover{
            background:#2a3044;
            border-color:#f59e0b;
            color:#f59e0b;
        }
        .search-load-older-btn:active, .search-load-more-btn:active{transform:scale(0.98);}
        .search-load-older-btn:disabled, .search-load-more-btn:disabled{opacity:0.6;cursor:not-allowed;}
        .search-mini-spinner{
            width:12px;
            height:12px;
            border:2px solid rgba(255,255,255,0.3);
            border-top-color:#f59e0b;
            border-radius:50%;
            animation:searchMiniSpin .6s linear infinite;
            display:inline-block;
        }
        @keyframes searchMiniSpin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}

        /* MESAJ VURGULARI */
        mark.search-highlight{background:rgba(245,158,11,0.38);color:#fbbf24;border-radius:3px;padding:0 2px;font-weight:700;}
        .message.search-match-bubble{box-shadow:0 0 0 1px rgba(245,158,11,0.35);}
        .message.search-active-bubble{box-shadow:0 0 0 2.5px #f59e0b,0 0 22px rgba(245,158,11,0.65) !important;transition:box-shadow .2s ease;}
        @media (max-width:440px){.header{padding:5px 12px;padding-top:max(5px,env(safe-area-inset-top));}.header-actions{gap:5px;}.icon-btn{width:36px;height:36px;}.icon-btn svg{width:18px;height:18px;}.profile-btn{height:36px;padding:2px 9px 2px 3px;font-size:.8rem;}.profile-avatar-circle{width:26px;height:26px;font-size:.78rem;}
        .sticky-date-wrapper{top:calc(max(5px, env(safe-area-inset-top, 0px)) + 69px);z-index:36;}
        .chat-search-bar.open ~ .sticky-date-wrapper{top:calc(max(5px, env(safe-area-inset-top, 0px)) + 118px);z-index:36;}
        .chat-date-badge{font-size:0.71rem;padding:3px 10px;}
        }
        @media (max-width:390px){.profile-name{display:none;}.profile-btn{width:36px;height:36px;padding:0;justify-content:center;border-radius:50%;}.profile-avatar-circle{width:100%;height:100%;font-size:.88rem;border-radius:50%;}
        .input-area{padding:7px 6px;padding-bottom:max(7px, env(safe-area-inset-bottom));}
        .photo-btn{margin-right:4px;width:34px;}
        .photo-btn svg{width:22px;height:22px;}
        .send-btn{margin-left:4px;width:34px;}
        .input-area textarea{padding:9px 10px;}
        .input-area textarea::placeholder{font-size:0.81rem;}
        }
        .input-area{position:relative;display:flex;align-items:flex-end;padding:8px 8px;padding-bottom:max(8px, env(safe-area-inset-bottom));background:#1a1c24;border-top:1px solid #282c37;z-index:10;}
        .input-area textarea{flex:1;min-height:40px;max-height:120px;padding:9px 12px;border:1px solid #282c37;background:#15171e;color:#fff;border-radius:18px;outline:none;font-size:16px;line-height:1.4;resize:none;overflow-y:hidden;box-sizing:border-box;}
        .input-area textarea:focus{border-color:#72767d;}
        .input-area textarea::placeholder{color:#72767d;font-size:0.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:22px;}
        .photo-btn{background:transparent;color:#8e9297;border:none;padding:0;margin-right:6px;margin-bottom:2px;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:color .2s,opacity .2s,transform .15s;flex-shrink:0;-webkit-tap-highlight-color:transparent;}
        .photo-btn svg{width:23px;height:23px;fill:currentColor;}
        .photo-btn:hover,.photo-btn:active{color:#fff;}
        .photo-btn:active{transform:scale(0.92);}
        .voice-record-btn{background:transparent;color:#8e9297;border:none;padding:0;margin-left:6px;margin-bottom:2px;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:color .2s,opacity .2s,transform .15s;flex-shrink:0;-webkit-tap-highlight-color:transparent;}
        .voice-record-btn svg{width:22px;height:22px;fill:currentColor;}
        .voice-record-btn:hover{color:#ff4081;}
        .voice-record-btn:active{color:#fff;transform:scale(0.92);}
        .send-btn{background:transparent;color:#72767d;border:none;padding:0;margin-left:6px;margin-bottom:2px;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:color .2s,opacity .2s,transform .15s;flex-shrink:0;}
        .send-btn svg{width:20px;height:20px;fill:currentColor;} .send-btn:active{color:#fff;transform:scale(0.92);} .send-btn:active svg{opacity:.7;}
        .chat-box{flex:1;padding:12px;display:flex;flex-direction:column;gap:8px;background:#0f111a;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;}
        .chat-date-separator{display:flex;justify-content:center;align-items:center;margin:12px 0 6px 0;padding:2px 0;user-select:none;-webkit-user-select:none;position:relative;z-index:2;flex-shrink:0;}
        .chat-date-badge{display:inline-flex;align-items:center;justify-content:center;background:rgba(22,25,35,0.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.08);color:#94a3b8;font-size:0.73rem;font-weight:600;letter-spacing:0.25px;padding:4px 12px;border-radius:14px;box-shadow:0 2px 8px rgba(0,0,0,0.35);line-height:1.3;text-align:center;white-space:nowrap;transition:background .2s,color .2s,transform .15s;}
        .sticky-date-wrapper{position:absolute;top:calc(max(6px, env(safe-area-inset-top, 0px)) + 74px);left:0;right:0;display:flex;justify-content:center;pointer-events:none;z-index:36;opacity:0;transform:translateY(-8px);transition:opacity 0.22s cubic-bezier(0.4,0,0.2,1),transform 0.22s cubic-bezier(0.4,0,0.2,1);}
        .pinned-message-bar.has-messages ~ .sticky-date-wrapper{top:calc(max(6px, env(safe-area-inset-top, 0px)) + 116px);z-index:36;}
        .chat-search-bar.open ~ .sticky-date-wrapper{top:calc(max(6px, env(safe-area-inset-top, 0px)) + 124px);z-index:36;}
        .chat-search-bar.open ~ .pinned-message-bar.has-messages ~ .sticky-date-wrapper{top:calc(max(6px, env(safe-area-inset-top, 0px)) + 166px);z-index:36;}
        .sticky-date-wrapper.visible{opacity:1;transform:translateY(0);}
        .sticky-date-wrapper .chat-date-badge{background:rgba(26,29,40,0.95);border-color:rgba(255,255,255,0.15);color:#e2e8f0;box-shadow:0 4px 14px rgba(0,0,0,0.55);}
        .message{min-width:65px;max-width:85%;padding:8px 12px;border-radius:16px;line-height:1.4;word-wrap:break-word;font-size:.95rem;display:flex;flex-direction:column;position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:margin-bottom .15s ease,box-shadow .2s ease;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;}
        .message.is-pinned{box-shadow:0 0 0 1.5px rgba(245,158,11,0.4),0 3px 10px rgba(0,0,0,0.3);}
        .msg-pin-icon{font-size:0.65rem;line-height:1;margin-right:2px;display:inline-flex;align-items:center;user-select:none;-webkit-user-select:none;opacity:0.9;filter:drop-shadow(0 1px 2px rgba(0,0,0,0.6));animation:pinPop 0.2s cubic-bezier(0.175,0.885,0.32,1.2);}
        @keyframes pinPop{from{transform:scale(0.4) rotate(-20deg);opacity:0;}to{transform:scale(1) rotate(0deg);opacity:0.9;}}
        .msg-favorite-icon{font-size:0.65rem;line-height:1;margin-right:2px;display:inline-flex;align-items:center;user-select:none;-webkit-user-select:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,0.6));animation:favPop 0.2s cubic-bezier(0.175,0.885,0.32,1.2);}
        @keyframes favPop{from{transform:scale(0.3) rotate(35deg);opacity:0;}to{transform:scale(1) rotate(0deg);opacity:1;}}
        .message.has-reactions{margin-bottom:14px;}
        .msg-Yakup{background:#2c3e50;color:#fff;} .msg-Ayşegüll{background:#882b4b;color:#fff;}
        .msg-right{align-self:flex-end;border-top-right-radius:4px;} .msg-left{align-self:flex-start;border-top-left-radius:4px;}
        .msg-text{margin-bottom:2px;white-space:pre-wrap;word-break:break-word;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;}
        @media (hover: hover) and (pointer: fine){
            .msg-text{user-select:text;-webkit-user-select:text;cursor:text;}
        }
        .msg-text a.chat-link{color:#38bdf8;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:2.5px;word-break:break-all;cursor:pointer;transition:color .15s ease,opacity .15s ease;}
        .msg-text a.chat-link:hover{color:#bae6fd;text-decoration-thickness:2px;}
        .msg-text a.chat-link:active{opacity:0.7;}
        .msg-Ayşegüll .msg-text a.chat-link{color:#93c5fd;}
        .msg-Ayşegüll .msg-text a.chat-link:hover{color:#dbeafe;}
        .msg-Yakup .msg-text a.chat-link{color:#38bdf8;}
        .msg-Yakup .msg-text a.chat-link:hover{color:#bae6fd;}
        .msg-footer{display:flex;justify-content:flex-end;align-items:center;font-size:.65rem;user-select:none;gap:3px;white-space:nowrap;}
        .msg-edited{opacity:.65;font-size:.62rem;font-style:italic;margin-right:1px;white-space:nowrap;}
        .msg-time{opacity:.75;white-space:nowrap;}
        .msg-tick{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;line-height:1;transition:color .2s ease;}
        .msg-tick svg{display:block;height:8.5px;}
        .msg-tick.sent svg{width:9.5px;}
        .msg-tick.delivered svg,.msg-tick.read svg{width:13px;}
        .msg-tick.sent,.msg-tick.delivered{color:#8e9297;}
        .msg-tick.pending{color:rgba(255,255,255,0.6);}
        .msg-tick.pending svg{width:8.5px;animation:spinClock 2s linear infinite;}
        @keyframes spinClock{0%{opacity:0.5;}50%{opacity:1;}100%{opacity:0.5;}}
        .message.is-optimistic{opacity:0.85;transition:opacity .25s ease;}
        .msg-tick.failed{color:#ff5252;}
        .msg-tick.failed svg{width:10px;height:10px;}
        .message.is-failed{opacity:0.96;box-shadow:0 0 0 1.5px rgba(255,82,82,0.75), 0 4px 14px rgba(255,82,82,0.18);}
        .msg-retry-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;margin-top:6px;margin-bottom:3px;padding:5px 7px;border-radius:10px;background:rgba(15,17,26,0.48);border:1px solid rgba(255,82,82,0.42);}
        .msg-retry-label{font-size:0.71rem;font-weight:700;color:#fca5a5;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;}
        .msg-retry-actions{display:inline-flex;align-items:center;gap:5px;margin-left:auto;}
        .msg-retry-btn{border:none;border-radius:7px;padding:3px 8px;font-size:0.71rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:3px;transition:transform .12s ease, background .15s ease, color .15s ease;white-space:nowrap;}
        .msg-retry-btn:active{transform:scale(0.94);}
        .msg-retry-btn.retry{background:#ef4444;color:#fff;box-shadow:0 2px 6px rgba(239,68,68,0.35);}
        .msg-retry-btn.retry:hover{background:#dc2626;}
        .msg-retry-btn.discard{background:rgba(255,255,255,0.12);color:#e2e8f0;}
        .msg-retry-btn.discard:hover{background:rgba(255,82,82,0.25);color:#fca5a5;}
        .msg-tick.read{color:#43b581;}
        .msg-tick.read svg{animation:tickPop .25s ease-out;}
        @keyframes tickPop{0%{transform:scale(0.8);}50%{transform:scale(1.2);}100%{transform:scale(1);}}
        .msg-reactions{display:none;position:absolute;right:6px;bottom:-10px;flex-direction:row;align-items:center;gap:2px;z-index:5;}
        .reaction-pill{background:transparent;border:none;padding:0 2px;font-size:1.05rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;gap:2px;user-select:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.6));transition:transform .15s,filter .15s;}
        .reaction-pill:active{transform:scale(1.25);}
        .reaction-pill.active{transform:scale(1.15);filter:drop-shadow(0 0 5px rgba(233,30,99,0.8)) drop-shadow(0 2px 4px rgba(0,0,0,0.6));}
        .reaction-pill .reactor-count{font-size:0.72rem;color:#fff;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,0.9);}
        .reaction-picker{position:fixed;display:none;flex-direction:column;background:rgba(26,28,36,0.96);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid #3a3f4e;border-radius:18px;padding:7px 8px;gap:5px;box-shadow:0 10px 30px rgba(0,0,0,0.65);z-index:9999;width:min(290px, 92vw);animation:pickerPop 0.16s cubic-bezier(0.175,0.885,0.32,1.275);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;}
        .reaction-picker::-webkit-scrollbar{display:none;}
        .reaction-picker.visible{display:flex;}
        @keyframes pickerPop{from{transform:scale(0.7);opacity:0;}to{transform:scale(1);opacity:1;}}
        .reaction-emojis-row{display:flex;align-items:center;justify-content:center;gap:3px;padding:2px 0;}
        .reaction-btn{background:transparent;border:none;font-size:1.24rem;cursor:pointer;padding:4px;border-radius:50%;line-height:1;transition:transform .15s;display:flex;align-items:center;justify-content:center;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;}
        @keyframes heartBurst{
            0%{transform:translate(-50%,-50%) scale(0.2);opacity:0;filter:drop-shadow(0 0 0 rgba(255,64,129,0));}
            45%{transform:translate(-50%,-50%) scale(1.4) rotate(-6deg);opacity:1;filter:drop-shadow(0 0 16px rgba(255,64,129,0.95));}
            70%{transform:translate(-50%,-50%) scale(1.55) rotate(4deg);opacity:0.95;filter:drop-shadow(0 0 22px rgba(255,64,129,0.9));}
            100%{transform:translate(-50%,-65%) scale(1.85) rotate(0deg);opacity:0;filter:drop-shadow(0 0 28px rgba(255,64,129,0));}
        }
        .heart-burst{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2.8rem;pointer-events:none;animation:heartBurst .65s cubic-bezier(0.175,0.885,0.32,1.275) forwards;z-index:25;user-select:none;-webkit-user-select:none;}
        .reaction-actions-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,0.08);margin-top:2px;padding-top:5px;gap:3px;width:100%;}
        .reaction-action-btn,.reaction-reply-btn{flex:1 1 0;min-width:0;background:transparent;border:none;color:#cbd5e1;font-size:.74rem;cursor:pointer;padding:5px 3px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:4px;transition:background .15s,color .15s,opacity .15s,transform .1s;font-weight:600;white-space:nowrap;user-select:none;}
        .reaction-action-btn:hover,.reaction-reply-btn:hover{background:#282c37;color:#fff;}
        .reaction-action-btn:active,.reaction-reply-btn:active{transform:scale(0.96);}
        .reaction-action-btn svg,.reaction-reply-btn svg{width:13px;height:13px;fill:currentColor;flex-shrink:0;}
        .reaction-action-btn.copy:hover{background:rgba(46,204,113,0.18);color:#2ecc71;}
        .reaction-action-btn.copy:active{background:rgba(46,204,113,0.28);color:#2ecc71;}
        .reaction-action-btn.pin:hover{background:rgba(245,158,11,0.18);color:#f59e0b;}
        .reaction-action-btn.pin:active{background:rgba(245,158,11,0.28);color:#f59e0b;}
        .reaction-action-btn.pin.is-pinned{color:#f59e0b;}
        .reaction-action-btn.favorite:hover{background:rgba(251,191,36,0.18);color:#fbbf24;}
        .reaction-action-btn.favorite:active{background:rgba(251,191,36,0.28);color:#fbbf24;}
        .reaction-action-btn.favorite.is-favorite{color:#fbbf24;}
        .reaction-action-btn.reply:hover{background:rgba(56,189,248,0.18);color:#38bdf8;}
        .reaction-action-btn.reply:active{background:rgba(56,189,248,0.28);color:#38bdf8;}
        .reaction-action-btn.delete:hover{background:rgba(255,82,82,0.18);color:#ff5252;}
        .reaction-action-btn.delete:active{background:rgba(255,82,82,0.28);color:#ff5252;}
        .reaction-action-btn.edit:hover{background:rgba(167,139,250,0.18);color:#a78bfa;}
        .reaction-action-btn.edit:active{background:rgba(167,139,250,0.28);color:#a78bfa;}
        .reaction-action-btn.is-disabled{opacity:0.35;filter:grayscale(0.9);cursor:default;pointer-events:none;}
        .reaction-action-btn.is-disabled:hover{background:transparent;color:#cbd5e1;}
        .reaction-action-btn.is-disabled:active{transform:none;}
        .msg-quote{background:rgba(0,0,0,0.35);border-left:4px solid #72767d;border-radius:8px;padding:5px 10px;margin-bottom:6px;cursor:pointer;font-size:.82rem;display:flex;flex-direction:column;gap:2px;transition:filter .15s,transform .15s;user-select:none;text-align:left;box-shadow:0 1px 3px rgba(0,0,0,0.3);}
        .msg-quote:active{filter:brightness(0.85);transform:scale(0.99);}
        .msg-quote .quote-sender{font-weight:700;font-size:.75rem;color:#a0a5b1;letter-spacing:0.2px;}
        .msg-quote .quote-text{color:#f1f5f9;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.8rem;}
        /* Ayşegüll'ün alıntılanan mesajı (Kendi rengi: Bordo / Fuşya) */
        .msg-quote.quote-Ayşegüll{background:#611e35;border-left-color:#ff4081;}
        .msg-quote.quote-Ayşegüll .quote-sender{color:#ff80ab;}
        .msg-Ayşegüll .msg-quote.quote-Ayşegüll{background:#501529;}
        /* Yakup'un alıntılanan mesajı (Kendi rengi: Koyu Lacivert / Mavi) */
        .msg-quote.quote-Yakup{background:#1c2b38;border-left-color:#3498db;}
        .msg-quote.quote-Yakup .quote-sender{color:#5dade2;}
        .msg-Yakup .msg-quote.quote-Yakup{background:#16222d;}
        /* Silinmiş alıntılanan mesaj */
        .msg-quote.quote-deleted{background:rgba(30, 32, 40, 0.55);border-left-color:#64748b;}
        .msg-quote.quote-deleted .quote-sender{color:#94a3b8;}
        @keyframes flashHighlight{
            0%{box-shadow:0 0 0 0 rgba(29,78,216,0);filter:brightness(1);transform:scale(1);}
            15%{box-shadow:0 0 0 4px #1d4ed8,0 0 25px rgba(29,78,216,0.9),inset 0 0 15px rgba(29,78,216,0.35);filter:brightness(1.2);transform:scale(1.025);}
            35%{box-shadow:0 0 0 2.5px #1d4ed8,0 0 12px rgba(29,78,216,0.5);filter:brightness(1.1);transform:scale(1.01);}
            55%{box-shadow:0 0 0 4px #1d4ed8,0 0 28px rgba(29,78,216,0.95),inset 0 0 15px rgba(29,78,216,0.35);filter:brightness(1.2);transform:scale(1.025);}
            80%{box-shadow:0 0 0 2px rgba(29,78,216,0.5),0 0 14px rgba(29,78,216,0.3);filter:brightness(1.05);transform:scale(1);}
            100%{box-shadow:0 0 0 0 rgba(29,78,216,0);filter:brightness(1);transform:scale(1);}
        }
        .flash-highlight{animation:flashHighlight 2.8s cubic-bezier(0.22,1,0.36,1) forwards;z-index:20 !important;}
        /* ==========================================
           ZENGİN BAĞLANTI ÖNİZLEMESİ (LINK PREVIEW / OPENGRAPH)
           ========================================== */
        .msg-link-preview{
            display:flex;
            flex-direction:column;
            margin-top:6px;
            margin-bottom:4px;
            border-radius:12px;
            overflow:hidden;
            background:rgba(0,0,0,0.28);
            border:1px solid rgba(255,255,255,0.10);
            border-left:3.5px solid #38bdf8;
            text-decoration:none;
            transition:transform .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease;
            user-select:none;
            -webkit-user-select:none;
            cursor:pointer;
            max-width:100%;
            text-align:left;
        }
        .msg-Ayşegüll .msg-link-preview{
            border-left-color:#ff4081;
            background:rgba(40,10,22,0.40);
        }
        .msg-Yakup .msg-link-preview{
            border-left-color:#38bdf8;
            background:rgba(12,24,38,0.40);
        }
        .msg-link-preview:hover{
            background:rgba(0,0,0,0.42);
            border-color:rgba(255,255,255,0.22);
            box-shadow:0 4px 14px rgba(0,0,0,0.35);
        }
        .msg-link-preview:active{
            transform:scale(0.985);
            filter:brightness(0.95);
        }
        .link-preview-image-wrap{
            width:100%;
            max-height:160px;
            overflow:hidden;
            background:#0c0d13;
            position:relative;
        }
        .link-preview-image{
            width:100%;
            height:100%;
            max-height:160px;
            object-fit:cover;
            display:block;
            transition:transform .25s ease;
        }
        .msg-link-preview:hover .link-preview-image{
            transform:scale(1.02);
        }
        .link-preview-body{
            padding:7px 10px 8px;
            display:flex;
            flex-direction:column;
            gap:3px;
        }
        .link-preview-site{
            display:inline-flex;
            align-items:center;
            gap:5px;
            font-size:0.68rem;
            font-weight:700;
            color:#94a3b8;
            text-transform:uppercase;
            letter-spacing:0.4px;
            line-height:1;
        }
        .link-preview-favicon{
            width:13px;
            height:13px;
            border-radius:3px;
            object-fit:contain;
            flex-shrink:0;
        }
        .link-preview-title{
            font-size:0.84rem;
            font-weight:700;
            color:#f8fafc;
            line-height:1.25;
            display:-webkit-box;
            -webkit-line-clamp:2;
            -webkit-box-orient:vertical;
            overflow:hidden;
            text-overflow:ellipsis;
            margin-top:1px;
        }
        .link-preview-desc{
            font-size:0.74rem;
            color:#cbd5e1;
            line-height:1.32;
            display:-webkit-box;
            -webkit-line-clamp:2;
            -webkit-box-orient:vertical;
            overflow:hidden;
            text-overflow:ellipsis;
            opacity:0.88;
        }
        .fav-card .msg-link-preview{
            background:rgba(0,0,0,0.35);
            margin-top:4px;
            margin-bottom:2px;
        }
        .reply-preview-bar{display:none;align-items:center;justify-content:space-between;background:#15171e;border-top:1px solid #282c37;border-bottom:1px solid #282c37;padding:6px 12px;z-index:10;}
        .reply-preview-bar.active{display:flex;}
        .reply-preview-info{display:flex;flex-direction:column;border-left:3px solid #e91e63;padding-left:8px;overflow:hidden;max-width:calc(100% - 35px);text-align:left;}
        .reply-preview-bar.reply-to-Yakup .reply-preview-info{border-left-color:#3498db;}
        .reply-preview-bar.reply-to-Yakup .reply-preview-title{color:#3498db;}
        .reply-preview-bar.reply-to-Ayşegüll .reply-preview-info{border-left-color:#ff4081;}
        .reply-preview-bar.reply-to-Ayşegüll .reply-preview-title{color:#ff4081;}
        .reply-preview-title{font-size:.75rem;font-weight:bold;color:#e91e63;}
        .reply-preview-snippet{font-size:.8rem;color:#a0a5b1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
        .reply-cancel-btn{background:transparent;border:none;color:#72767d;font-size:1.1rem;cursor:pointer;padding:4px;line-height:1;transition:color .15s;}
        .reply-cancel-btn:hover,.reply-cancel-btn:active{color:#ff5252;}
        .edit-preview-bar{display:none;align-items:center;justify-content:space-between;background:#15171e;border-top:1px solid #282c37;border-bottom:1px solid #282c37;padding:6px 12px;z-index:10;}
        .edit-preview-bar.active{display:flex;}
        .edit-preview-info{display:flex;flex-direction:column;border-left:3px solid #3498db;padding-left:8px;overflow:hidden;max-width:calc(100% - 35px);text-align:left;}
        .edit-preview-title{font-size:.75rem;font-weight:bold;color:#3498db;}
        .edit-preview-snippet{font-size:.8rem;color:#a0a5b1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
        .edit-cancel-btn{background:transparent;border:none;color:#72767d;font-size:1.1rem;cursor:pointer;padding:4px;line-height:1;transition:color .15s;}
        .edit-cancel-btn:hover,.edit-cancel-btn:active{color:#ff5252;}

        .photo-preview-bar{display:none;align-items:center;gap:12px;background:#15171e;border-top:1px solid #282c37;border-bottom:1px solid #282c37;padding:8px 12px;z-index:10;}
        .photo-preview-bar.active{display:flex;}
        .photo-preview-thumb-wrap{width:46px;height:46px;border-radius:10px;overflow:hidden;background:#20222b;border:1px solid #282c37;flex-shrink:0;}
        .photo-preview-thumb-wrap img{width:100%;height:100%;object-fit:cover;display:block;}
        .photo-preview-info{flex:1;display:flex;flex-direction:column;gap:2px;overflow:hidden;text-align:left;}
        .photo-preview-title{font-size:.82rem;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
        .photo-preview-size{font-size:.72rem;color:#8e9297;}
        .photo-cancel-btn{background:transparent;border:none;color:#72767d;font-size:1.1rem;cursor:pointer;padding:4px;line-height:1;transition:color .15s;}
        .photo-cancel-btn:hover,.photo-cancel-btn:active{color:#ff5252;}

        /* Sohbet Fotoğraf Balonları */
        .message.has-image{padding:5px 5px 4px 5px;}
        .message.has-image .msg-quote{margin:2px 2px 6px 2px;}
        .message.has-image .msg-text{padding:6px 6px 2px 6px;}
        .message.has-image .msg-footer{padding:3px 4px 2px 4px;}
        
        .msg-image-wrap{position:relative;border-radius:12px;overflow:hidden;min-width:140px;max-width:320px;cursor:pointer;display:block;background:#15171e;line-height:0;user-select:none;-webkit-user-select:none;}
        .msg-image-wrap img{display:block;width:100%;max-height:360px;object-fit:cover;border-radius:12px;transition:transform .2s ease, filter .2s ease;-webkit-touch-callout:none;pointer-events:none;}
        .msg-image-wrap:active img{filter:brightness(0.92);transform:scale(0.99);}

        .quote-thumb{width:30px;height:30px;border-radius:6px;object-fit:cover;flex-shrink:0;border:1px solid rgba(255,255,255,0.2);}
        .quote-content{display:flex;align-items:center;gap:8px;min-width:0;}
        .quote-inner-text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1;}
        .reply-preview-thumb{width:32px;height:32px;border-radius:6px;object-fit:cover;flex-shrink:0;border:1px solid rgba(255,255,255,0.2);margin-right:8px;}

        @media (max-width:480px){
            .msg-image-wrap{max-width:min(78vw, 300px);}
            .msg-image-wrap img{max-height:280px;}
        }

        .history-panel{position:absolute;top:0;left:0;width:100%;height:100%;background:#1a1c24;z-index:100;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s ease-in-out;}
        .history-panel.open{transform:translateX(0);}
        .history-header{
            display:flex;
            justify-content:space-between;
            align-items:center;
            padding:8px 12px;
            padding-top:max(8px, env(safe-area-inset-top));
            padding-left:max(12px, env(safe-area-inset-left));
            padding-right:max(12px, env(safe-area-inset-right));
            background:#15171e;
            border-bottom:1px solid #282c37;
            font-size:0.95rem;
            color:#fff;
            font-weight:bold;
            flex-shrink:0;
        }
        .close-btn, .history-close-btn{
            background:#15171e;
            color:#ff5252;
            border:1px solid #282c37;
            border-radius:8px;
            width:36px;
            height:36px;
            min-width:36px;
            min-height:36px;
            display:inline-flex;
            align-items:center;
            justify-content:center;
            cursor:pointer;
            touch-action:manipulation;
            -webkit-tap-highlight-color:transparent;
            user-select:none;
            -webkit-user-select:none;
            transition:.2s;
            flex-shrink:0;
            padding:0;
            margin:0;
            outline:none;
        }
        .close-btn:hover, .history-close-btn:hover{
            background:#1f232e;
            border-color:rgba(255, 82, 82, 0.4);
            color:#ff7878;
        }
        .close-btn:active, .history-close-btn:active{
            background:#282c37;
            color:#fff;
            transform:scale(0.92);
        }
        .close-btn svg, .history-close-btn svg{
            width:20px;
            height:20px;
            fill:currentColor;
            pointer-events:none;
        }
        .history-filters{
            display:flex;
            align-items:center;
            gap:6px;
            padding:8px 12px;
            background:#1a1c24;
            border-bottom:1px solid #282c37;
            flex-shrink:0;
        }
        .date-nav-btn{
            background:#15171e;
            color:#72767d;
            border:1px solid #282c37;
            border-radius:8px;
            width:36px;
            height:36px;
            min-width:36px;
            min-height:36px;
            display:flex;
            align-items:center;
            justify-content:center;
            cursor:pointer;
            touch-action:manipulation;
            -webkit-tap-highlight-color:transparent;
            transition:.2s;
            flex-shrink:0;
            padding:0;
        }
        .date-nav-btn:hover{background:#1f232e;border-color:#3e4453;color:#a0a5b1;}
        .date-nav-btn:active{background:#282c37;color:#fff;transform:scale(0.92);}
        .date-nav-btn svg{width:20px;height:20px;fill:currentColor;pointer-events:none;}
        .history-filters input[type="date"]{
            flex:1;
            height:36px;
            padding:6px 8px;
            background:#0f111a;
            color:#fff;
            border:1px solid #282c37;
            border-radius:8px;
            outline:none;
            font-size:.9rem;
            text-align:center;
            color-scheme:dark;
            box-sizing:border-box;
        }
        .chat-older-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 0;font-size:0.8rem;color:#72767d;}
        .chat-older-loading .loading-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,0.15);border-top-color:#e2b714;border-radius:50%;animation:spin 0.7s linear infinite;}
        @keyframes spin{to{transform:rotate(360deg);}}
        .chat-toast{
            position:fixed;
            top:calc(56px + env(safe-area-inset-top, 0px));
            left:50%;
            transform:translate(-50%, -15px);
            background:rgba(20,22,30,0.96);
            border:1px solid rgba(255,255,255,0.16);
            color:#fff;
            padding:9px 18px;
            border-radius:22px;
            font-size:0.84rem;
            font-weight:600;
            box-shadow:0 8px 24px rgba(0,0,0,0.55);
            z-index:10050;
            pointer-events:none;
            opacity:0;
            transition:opacity .25s cubic-bezier(0.2, 0.9, 0.3, 1), transform .25s cubic-bezier(0.2, 0.9, 0.3, 1), background .2s, border-color .2s, box-shadow .2s;
            display:flex;
            align-items:center;
            gap:8px;
            backdrop-filter:blur(12px);
            -webkit-backdrop-filter:blur(12px);
            white-space:nowrap;
            max-width:92vw;
        }
        .chat-toast.visible{opacity:1;transform:translate(-50%, 0);}
        .toast-spinner{
            width:15px;
            height:15px;
            border:2.5px solid rgba(255,255,255,0.22);
            border-top-color:#e2b714;
            border-radius:50%;
            animation:toastSpin 0.75s linear infinite;
            flex-shrink:0;
        }
        @keyframes toastSpin{to{transform:rotate(360deg);}}
        .toast-icon{display:inline-flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;flex-shrink:0;}

        /* Tema: Ayşegüll (Pembe / Fuşya Vurgu) */
        .chat-toast.user-Ayşegüll,
        .chat-toast.user-aysegull{
            border-color:rgba(255,64,129,0.45);
            box-shadow:0 8px 25px rgba(255,64,129,0.25), 0 4px 12px rgba(0,0,0,0.5);
            background:rgba(32, 20, 28, 0.97);
        }
        .chat-toast.user-Ayşegüll .toast-spinner,
        .chat-toast.user-aysegull .toast-spinner{
            border-top-color:#ff4081;
        }
        .chat-toast.toast-success.user-Ayşegüll,
        .chat-toast.toast-success.user-aysegull{
            background:linear-gradient(135deg, rgba(46, 20, 36, 0.98), rgba(28, 18, 25, 0.98));
            border-color:rgba(255,64,129,0.65);
            box-shadow:0 8px 30px rgba(255,64,129,0.4), 0 4px 14px rgba(0,0,0,0.5);
        }

        /* Tema: Yakup (Mavi Vurgu) */
        .chat-toast.user-Yakup,
        .chat-toast.user-yakup{
            border-color:rgba(52,152,219,0.45);
            box-shadow:0 8px 25px rgba(52,152,219,0.25), 0 4px 12px rgba(0,0,0,0.5);
            background:rgba(18, 24, 34, 0.97);
        }
        .chat-toast.user-Yakup .toast-spinner,
        .chat-toast.user-yakup .toast-spinner{
            border-top-color:#3498db;
        }
        .chat-toast.toast-success.user-Yakup,
        .chat-toast.toast-success.user-yakup{
            background:linear-gradient(135deg, rgba(20, 32, 48, 0.98), rgba(16, 22, 32, 0.98));
            border-color:rgba(52,152,219,0.65);
            box-shadow:0 8px 30px rgba(52,152,219,0.4), 0 4px 14px rgba(0,0,0,0.5);
        }

        /* Hata (Error) Durumu */
        .chat-toast.toast-error{
            border-color:rgba(255,82,82,0.55);
            background:rgba(35, 18, 22, 0.97);
            box-shadow:0 8px 25px rgba(255,82,82,0.3), 0 4px 12px rgba(0,0,0,0.5);
        }
        .scroll-bottom-btn{position:absolute;right:16px;bottom:calc(60px + max(8px, env(safe-area-inset-bottom)));width:40px;height:40px;border-radius:50%;background:rgba(30,32,42,0.92);border:1px solid rgba(255,255,255,0.18);color:#e2e8f0;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(0,0,0,0.45);cursor:pointer;z-index:25;opacity:0;transform:scale(0.6) translateY(12px);pointer-events:none;transition:opacity .25s ease, transform .25s cubic-bezier(0.175,0.885,0.32,1.275), bottom .2s ease, background .15s, color .15s;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);user-select:none;-webkit-user-select:none;}
        .scroll-bottom-btn.visible{opacity:1;transform:scale(1) translateY(0);pointer-events:auto;}
        .scroll-bottom-btn:hover{background:#2a2f3d;color:#fff;box-shadow:0 6px 20px rgba(0,0,0,0.55);}
        .scroll-bottom-btn:active{transform:scale(0.92);}
        .scroll-bottom-btn svg{width:22px;height:22px;fill:currentColor;}
        .chat-container:has(.reply-preview-bar.active) .scroll-bottom-btn,
        .chat-container.has-reply .scroll-bottom-btn,
        .chat-container:has(.edit-preview-bar.active) .scroll-bottom-btn,
        .chat-container.has-edit .scroll-bottom-btn,
        .chat-container:has(.photo-preview-bar.active) .scroll-bottom-btn,
        .chat-container.has-photo .scroll-bottom-btn{bottom:calc(110px + max(8px, env(safe-area-inset-bottom)));}

        /* PROFİL PANELİ MODAL STİLLERİ */
        .profile-modal{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:9999;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease, visibility .25s ease;}
        .profile-modal.open{opacity:1;visibility:visible;pointer-events:auto;}
        .profile-modal-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
        .profile-modal-sheet{position:relative;width:92%;max-width:380px;background:#1a1c24;border:1px solid #282c37;border-radius:24px;padding:22px;box-shadow:0 16px 40px rgba(0,0,0,0.6);transform:scale(0.92);transition:transform .25s cubic-bezier(0.175,0.885,0.32,1.275);z-index:2;display:flex;flex-direction:column;gap:18px;}
        .profile-modal.open .profile-modal-sheet{transform:scale(1);}
        .profile-modal-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #282c37;padding-bottom:12px;}
        .profile-modal-title{font-size:1.1rem;font-weight:700;color:#fff;display:flex;align-items:center;gap:6px;}
        .profile-modal-close{background:transparent;border:none;color:#ff5252;font-size:1.3rem;font-weight:bold;cursor:pointer;padding:4px;line-height:1;transition:transform .15s, opacity .15s;}
        .profile-modal-close:hover{opacity:0.8;transform:scale(1.15);}
        .profile-cards-container{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;}
        .profile-card{flex:1;background:#15171e;border:1px solid #282c37;border-radius:18px;padding:18px 8px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;position:relative;transition:border-color .2s, box-shadow .2s;}
        .profile-card.user-Ayşegüll,
        .profile-card.user-aysegull{border-color:rgba(255,64,129,0.35);box-shadow:0 4px 18px rgba(255,64,129,0.12);}
        .profile-card.user-Yakup,
        .profile-card.user-yakup{border-color:rgba(52,152,219,0.35);box-shadow:0 4px 18px rgba(52,152,219,0.12);}
        .profile-photo-wrapper{position:relative;width:84px;height:84px;border-radius:50%;cursor:pointer;user-select:none;-webkit-user-select:none;transition:transform .15s ease;}
        .profile-photo-wrapper:hover{transform:scale(1.03);}
        .profile-photo{width:100%;height:100%;border-radius:50%;overflow:hidden;background:#20222b;display:flex;align-items:center;justify-content:center;border:3px solid #282c37;box-shadow:0 4px 12px rgba(0,0,0,0.4);transition:transform .2s, border-color .2s, box-shadow .2s;}
        .profile-photo img{width:100%;height:100%;object-fit:cover;display:block;}
        .profile-photo .profile-initial{font-size:2.2rem;font-weight:800;color:#fff;}
        .profile-card.user-Ayşegüll .profile-photo,
        .profile-card.user-aysegull .profile-photo{border-color:#ff4081;box-shadow:0 0 18px rgba(255,64,129,0.45);}
        .profile-card.user-Yakup .profile-photo,
        .profile-card.user-yakup .profile-photo{border-color:#3498db;box-shadow:0 0 18px rgba(52,152,219,0.45);}
        .profile-photo-overlay{
            position:absolute;
            bottom:0;
            right:0;
            width:30px;
            height:30px;
            min-width:30px;
            min-height:30px;
            border-radius:50%;
            background:#2a2e3d;
            color:#fff;
            display:inline-flex;
            align-items:center;
            justify-content:center;
            box-shadow:0 3px 8px rgba(0,0,0,0.55);
            border:3px solid #15171e;
            transition:transform .15s ease, background .15s ease, box-shadow .15s ease;
            cursor:pointer;
            z-index:5;
            padding:0;
            margin:0;
            outline:none;
            touch-action:manipulation;
            -webkit-tap-highlight-color:transparent;
        }
        .profile-card.user-Ayşegüll .profile-photo-overlay,
        .profile-card.user-aysegull .profile-photo-overlay{
            background:linear-gradient(135deg,#ff4081 0%,#d81b60 100%);
            color:#fff;
            box-shadow:0 3px 10px rgba(255,64,129,0.45);
        }
        .profile-card.user-Yakup .profile-photo-overlay,
        .profile-card.user-yakup .profile-photo-overlay{
            background:linear-gradient(135deg,#3498db 0%,#1976d2 100%);
            color:#fff;
            box-shadow:0 3px 10px rgba(52,152,219,0.45);
        }
        .profile-photo-overlay:hover{transform:scale(1.12);filter:brightness(1.1);}
        .profile-photo-overlay:active{transform:scale(0.92);}
        .profile-photo-overlay svg{width:16px;height:16px;fill:currentColor;pointer-events:none;display:block;flex-shrink:0;}
        .profile-photo-wrapper.is-uploading .profile-photo{
            opacity:0.5;
            filter:brightness(0.7) blur(1px);
        }
        .profile-photo-wrapper.is-uploading::after{
            content:'';
            position:absolute;
            top:50%;
            left:50%;
            width:30px;
            height:30px;
            margin:-15px 0 0 -15px;
            border:3px solid rgba(255,255,255,0.25);
            border-top-color:#e2b714;
            border-radius:50%;
            animation:toastSpin 0.75s linear infinite;
            z-index:8;
            pointer-events:none;
        }
        .profile-card.user-Ayşegüll .profile-photo-wrapper.is-uploading::after,
        .profile-card.user-aysegull .profile-photo-wrapper.is-uploading::after{
            border-top-color:#ff4081;
        }
        .profile-card.user-Yakup .profile-photo-wrapper.is-uploading::after,
        .profile-card.user-yakup .profile-photo-wrapper.is-uploading::after{
            border-top-color:#3498db;
        }
        .profile-photo-overlay.is-uploading{
            pointer-events:none;
            opacity:0.5;
            transform:scale(0.85);
        }
        .profile-cards-divider{font-size:1.3rem;color:#ff4081;display:flex;align-items:center;justify-content:center;padding:0 2px;animation:heartPulse 1.8s infinite ease-in-out;}
        @keyframes heartPulse{0%,100%{transform:scale(1);}50%{transform:scale(1.25);}}
        .profile-user-name{font-size:0.95rem;font-weight:700;color:#fff;}
        .modal-stats-wrapper{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;}
        .modal-stats-title{font-size:0.68rem;font-weight:700;color:#94a3b8;letter-spacing:0.6px;text-transform:uppercase;opacity:0.85;display:flex;align-items:center;gap:4px;}
        .modal-stats-panel{display:flex;align-items:center;justify-content:space-around;width:100%;background:#15171e;border:1px solid #282c37;border-radius:16px;padding:12px 14px;box-shadow:inset 0 1px 3px rgba(0,0,0,0.3);}
        .modal-stat-box{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;}
        .modal-stat-divider{width:1px;height:30px;background:#282c37;margin:0 8px;}
        .modal-stat-label{font-size:0.75rem;color:#8e9297;font-weight:600;letter-spacing:0.3px;}
        .modal-stat-value{font-size:1.15rem;font-weight:800;color:#fff;letter-spacing:0.5px;background:linear-gradient(135deg,#ff80ab 0%,#64b5f6 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}

        .profile-history-open-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 14px;background:#15171e;border:1px solid #282c37;border-radius:14px;color:#cbd5e1;font-size:0.83rem;font-weight:600;cursor:pointer;transition:background .2s, border-color .2s, transform .1s;}
        .profile-history-open-btn:hover{background:#1e222d;border-color:rgba(226,183,20,0.5);color:#fff;}
        .profile-history-open-btn:active{transform:scale(0.98);}
        .profile-history-open-btn svg{width:16px;height:16px;fill:#e2b714;flex-shrink:0;}
        .chat-media-open-btn{margin-top:-8px;}
        .chat-media-open-btn svg{fill:#38bdf8;}
        .chat-media-open-btn:hover{border-color:rgba(56,189,248,0.5);}
        .voice-gallery-open-btn{margin-top:-8px;}
        .voice-gallery-open-btn svg{fill:#10b981;}
        .voice-gallery-open-btn:hover{border-color:rgba(16,185,129,0.5);}
        .push-notif-open-btn{margin-top:-8px;}
        .push-notif-open-btn svg{fill:#ff79c6;transition:fill .2s ease;}
        .push-notif-open-btn:hover{border-color:rgba(255,121,198,0.5);}
        .push-notif-open-btn.push-active{border-color:rgba(67,181,129,0.5);background:rgba(67,181,129,0.08);color:#e2e8f0;}
        .push-notif-open-btn.push-active svg{fill:#43b581;}
        .push-notif-open-btn.push-disabled{opacity:0.6;cursor:not-allowed;}
        .audio-settings-btn{margin-top:-8px;}
        .audio-settings-btn svg{fill:#a78bfa;transition:fill .2s ease;}
        .audio-settings-btn:hover{border-color:rgba(167,139,250,0.5);}
        .audio-settings-btn.audio-muted{opacity:0.75;border-color:#334155;color:#94a3b8;}
        .audio-settings-btn.audio-muted svg{fill:#64748b;}

        /* ANLIK FOTOĞRAFLAR MODAL */
        .chat-media-sheet{max-width:440px;}
        .chat-media-modal .profile-history-title svg{fill:#38bdf8;}
        .cm-count-badge{font-size:0.7rem;font-weight:700;padding:2px 7px;border-radius:10px;background:rgba(56,189,248,0.18);color:#38bdf8;margin-left:6px;}
        .chat-media-body{display:grid;grid-template-columns:repeat(2, 1fr);gap:10px;align-content:start;}
        .chat-media-body.has-empty,
        .chat-media-body.has-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;}
        .cm-card{background:#15171e;border:1px solid #282c37;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s, transform .15s, box-shadow .2s;position:relative;}
        .cm-card:hover{border-color:rgba(255,255,255,0.22);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,0.5);}
        .cm-card.user-Ayşegüll:hover{border-color:rgba(255,64,129,0.5);}
        .cm-card.user-Yakup:hover{border-color:rgba(52,152,219,0.5);}
        .cm-thumb-wrap{position:relative;width:100%;aspect-ratio:1/1;background:#20222b;overflow:hidden;cursor:pointer;}
        .cm-thumb-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease;}
        .cm-thumb-wrap:hover .cm-thumb-img{transform:scale(1.06);}
        .cm-thumb-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.3);opacity:0;display:flex;align-items:center;justify-content:center;transition:opacity .2s;}
        .cm-thumb-wrap:hover .cm-thumb-overlay{opacity:1;}
        .cm-thumb-overlay svg{width:22px;height:22px;fill:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.6));}
        .cm-info{padding:8px 10px;display:flex;flex-direction:column;gap:4px;min-width:0;cursor:pointer;}
        .cm-meta{display:flex;align-items:center;justify-content:space-between;gap:4px;}
        .cm-date{font-size:0.68rem;color:#8e9297;display:flex;align-items:center;gap:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
        .cm-date svg{width:12px;height:12px;fill:#8e9297;flex-shrink:0;}
        .cm-caption{font-size:0.7rem;color:#cbd5e1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:3px;border-top:1px dashed rgba(255,255,255,0.08);}
        .cm-goto-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:2px 4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:color .15s, background .15s;}
        .cm-goto-btn:hover{color:#38bdf8;background:rgba(56,189,248,0.15);}
        .cm-goto-btn svg{width:14px;height:14px;fill:currentColor;}

        /* SESLİ MESAJLAR MODAL */
        .voice-gallery-sheet{max-width:440px;}
        .voice-gallery-modal .profile-history-title svg{fill:#10b981;}
        .vg-count-badge{background:rgba(16,185,129,0.18);color:#10b981;}
        .voice-gallery-body{display:flex;flex-direction:column;gap:10px;align-content:stretch;}
        .voice-gallery-body.has-empty,
        .voice-gallery-body.has-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;}
        .vg-card{background:#15171e;border:1px solid #282c37;border-radius:16px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;transition:border-color .2s, transform .15s, box-shadow .2s;position:relative;}
        .vg-card:hover{border-color:rgba(255,255,255,0.22);transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,0,0,0.4);}
        .vg-card.user-Ayşegüll:hover{border-color:rgba(255,64,129,0.5);}
        .vg-card.user-Yakup:hover{border-color:rgba(52,152,219,0.5);}
        .vg-header{display:flex;align-items:center;justify-content:space-between;gap:8px;}
        .vg-meta-left{display:flex;align-items:center;gap:8px;min-width:0;}
        .vg-card .voice-player{margin:2px 0 0 0;}
        .vg-card.user-Ayşegüll .voice-play-btn{background:rgba(255,64,129,0.2);color:#ff80ab;}
        .vg-card.user-Ayşegüll .voice-play-btn:hover{background:rgba(255,64,129,0.32);}
        .vg-card.user-Ayşegüll .voice-play-btn.is-playing{background:#ff4081;color:#fff;box-shadow:0 0 12px rgba(255,64,129,0.5);}
        .vg-card.user-Ayşegüll .voice-wave-bar.played{background:#ff80ab;box-shadow:0 0 4px rgba(255,64,129,0.6);}
        .vg-card.user-Yakup .voice-play-btn{background:rgba(52,152,219,0.2);color:#64b5f6;}
        .vg-card.user-Yakup .voice-play-btn:hover{background:rgba(52,152,219,0.32);}
        .vg-card.user-Yakup .voice-play-btn.is-playing{background:#3498db;color:#fff;box-shadow:0 0 12px rgba(52,152,219,0.5);}
        .vg-card.user-Yakup .voice-wave-bar.played{background:#64b5f6;box-shadow:0 0 4px rgba(52,152,219,0.6);}

        /* FAVORİ MESAJLAR MODAL */
        .favorites-sheet{max-width:440px;}
        .favorites-modal .profile-history-title svg{fill:#fbbf24;}
        .fav-count-badge{background:rgba(251,191,36,0.18);color:#fbbf24;}
        .favorites-body{display:flex;flex-direction:column;gap:10px;align-content:stretch;}
        .favorites-body.has-empty,
        .favorites-body.has-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;}
        .fav-card{background:#15171e;border:1px solid #282c37;border-radius:16px;padding:11px 13px;display:flex;flex-direction:column;gap:8px;transition:border-color .2s, transform .15s, box-shadow .2s, opacity .2s;position:relative;cursor:pointer;}
        .fav-card:hover{border-color:rgba(251,191,36,0.4);transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,0,0,0.4);}
        .fav-card:active{transform:scale(0.99);}
        .fav-card.removing{opacity:0;transform:scale(0.92);}
        .fav-card.user-Ayşegüll:hover{border-color:rgba(255,64,129,0.5);}
        .fav-card.user-Yakup:hover{border-color:rgba(52,152,219,0.5);}
        .fav-header{display:flex;align-items:center;justify-content:space-between;gap:8px;}
        .fav-meta-left{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0;}
        .fav-by-badge{font-size:0.70rem;font-weight:700;color:#fbbf24;background:rgba(251,191,36,0.12);padding:1px 7px;border-radius:10px;display:inline-flex;align-items:center;gap:3px;}
        .fav-actions{display:flex;align-items:center;gap:5px;flex-shrink:0;}
        .fav-action-btn{background:rgba(255,255,255,0.08);border:none;color:#94a3b8;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;padding:0;}
        .fav-action-btn:hover{background:rgba(255,255,255,0.18);color:#fff;}
        .fav-action-btn:active{transform:scale(0.92);}
        .fav-goto-btn svg{width:14px;height:14px;fill:currentColor;}
        .fav-unfav-btn{font-size:0.82rem;}
        .fav-unfav-btn:hover{background:rgba(239,68,68,0.2);color:#ef4444;transform:scale(1.08);}
        .fav-content{font-size:0.88rem;color:#e2e8f0;line-height:1.4;word-break:break-word;}
        .fav-text{max-height:120px;overflow:hidden;text-overflow:ellipsis;}
        .fav-media-wrap{margin-bottom:4px;}
        .fav-thumb{max-width:140px;max-height:100px;border-radius:8px;object-fit:cover;display:block;}
        .fav-voice-chip{display:inline-flex;align-items:center;gap:6px;background:rgba(56,189,248,0.12);color:#38bdf8;border-radius:12px;padding:4px 10px;font-size:0.78rem;font-weight:600;}
        .fav-voice-chip svg{width:15px;height:15px;fill:currentColor;}

        /* ESKİ PROFİL FOTOĞRAFLARI MODAL */
        .profile-history-modal{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:10001;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease, visibility .25s ease;}
        .profile-history-modal.open{opacity:1;visibility:visible;pointer-events:auto;}
        .profile-history-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
        .profile-history-sheet{position:relative;width:92%;max-width:390px;max-height:84vh;background:#1a1c24;border:1px solid #282c37;border-radius:24px;padding:20px;box-shadow:0 16px 40px rgba(0,0,0,0.7);display:flex;flex-direction:column;gap:12px;z-index:2;transform:scale(0.92);transition:transform .25s cubic-bezier(0.175,0.885,0.32,1.275);}
        .profile-history-modal.open .profile-history-sheet{transform:scale(1);}
        .profile-history-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #282c37;padding-bottom:10px;}
        .profile-history-title{font-size:1.05rem;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px;}
        .profile-history-title svg{width:18px;height:18px;fill:#e2b714;}
        .profile-history-close{background:transparent;border:none;color:#ff5252;font-size:1.3rem;font-weight:bold;cursor:pointer;padding:4px;line-height:1;transition:transform .15s, opacity .15s;}
        .profile-history-close:hover{opacity:0.8;transform:scale(1.15);}
        .profile-history-tabs{display:flex;gap:8px;width:100%;}
        .ph-tab{flex:1;padding:7px 10px;background:#15171e;border:1px solid #282c37;border-radius:12px;color:#8e9297;font-size:0.78rem;font-weight:600;cursor:pointer;transition:all .15s;text-align:center;}
        .ph-tab.active{background:#282c37;color:#fff;border-color:rgba(255,255,255,0.25);}
        .ph-tab.ph-tab-aysegull.active{background:rgba(255,64,129,0.18);border-color:#ff4081;color:#ff80ab;}
        .ph-tab.ph-tab-yakup.active{background:rgba(52,152,219,0.18);border-color:#3498db;color:#64b5f6;}
        .profile-history-body{flex:1;overflow-y:auto;max-height:calc(84vh - 150px);display:flex;flex-direction:column;gap:10px;padding-right:2px;min-height:140px;}
        .profile-history-body::-webkit-scrollbar{width:5px;}
        .profile-history-body::-webkit-scrollbar-track{background:transparent;}
        .profile-history-body::-webkit-scrollbar-thumb{background:#282c37;border-radius:10px;}
        .ph-loading{text-align:center;color:#8e9297;font-size:0.85rem;padding:30px 0;}
        .ph-more-loading{grid-column:1 / -1;text-align:center;color:#8e9297;font-size:0.78rem;padding:10px 0;}
        .ph-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 16px;color:#8e9297;}
        .ph-empty-icon{font-size:2.2rem;margin-bottom:8px;}
        .ph-empty-text{font-size:0.88rem;color:#cbd5e1;font-weight:600;}
        .ph-empty-sub{font-size:0.75rem;color:#72767d;margin-top:4px;}
        .ph-item{display:flex;align-items:center;gap:12px;background:#15171e;border:1px solid #282c37;border-radius:16px;padding:9px 12px;transition:border-color .15s, background .15s;}
        .ph-item:hover{border-color:rgba(255,255,255,0.15);background:#1a1e28;}
        .ph-thumb-wrap{position:relative;width:56px;height:56px;border-radius:50%;overflow:hidden;flex-shrink:0;cursor:pointer;border:2px solid #282c37;transition:transform .15s, border-color .15s;}
        .ph-thumb-wrap:hover{transform:scale(1.08);border-color:#e2b714;}
        .ph-item.user-Ayşegüll .ph-thumb-wrap{border-color:rgba(255,64,129,0.5);}
        .ph-item.user-Yakup .ph-thumb-wrap{border-color:rgba(52,152,219,0.5);}
        .ph-thumb-img{width:100%;height:100%;object-fit:cover;display:block;}
        .ph-info{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0;cursor:pointer;}
        .ph-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
        .ph-user-badge{font-size:0.7rem;font-weight:700;padding:2px 7px;border-radius:8px;text-transform:uppercase;letter-spacing:0.3px;}
        .ph-badge-aysegull{background:rgba(255,64,129,0.18);color:#ff80ab;}
        .ph-badge-yakup{background:rgba(52,152,219,0.18);color:#64b5f6;}
        .ph-active-badge{font-size:0.62rem;font-weight:700;padding:1px 6px;border-radius:6px;background:rgba(67,181,129,0.2);color:#43b581;letter-spacing:0.3px;}
        .ph-date{font-size:0.74rem;color:#8e9297;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
        .ph-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;}
        .ph-restore-btn{
            background:rgba(226,183,20,0.14);
            border:1px solid rgba(226,183,20,0.38);
            color:#e2b714;
            font-size:0.75rem;
            font-weight:700;
            padding:6px 12px;
            border-radius:12px;
            cursor:pointer;
            transition:all .15s ease;
            touch-action:manipulation;
            -webkit-tap-highlight-color:transparent;
            user-select:none;
            -webkit-user-select:none;
            white-space:nowrap;
        }
        .ph-restore-btn:hover{background:#e2b714;color:#15171e;}
        .ph-restore-btn:active{transform:scale(0.93);}
        .ph-item.user-Ayşegüll .ph-restore-btn,
        .ph-item.user-aysegull .ph-restore-btn{
            background:rgba(255,64,129,0.16);
            border-color:rgba(255,64,129,0.4);
            color:#ff80ab;
        }
        .ph-item.user-Ayşegüll .ph-restore-btn:hover,
        .ph-item.user-aysegull .ph-restore-btn:hover{
            background:#ff4081;
            color:#fff;
            box-shadow:0 0 12px rgba(255,64,129,0.4);
        }
        .ph-item.user-Ayşegüll .ph-restore-btn:active,
        .ph-item.user-aysegull .ph-restore-btn:active{
            background:#e91e63;
            color:#fff;
        }
        .ph-item.user-Yakup .ph-restore-btn,
        .ph-item.user-yakup .ph-restore-btn{
            background:rgba(52,152,219,0.16);
            border-color:rgba(52,152,219,0.4);
            color:#64b5f6;
        }
        .ph-item.user-Yakup .ph-restore-btn:hover,
        .ph-item.user-yakup .ph-restore-btn:hover{
            background:#3498db;
            color:#fff;
            box-shadow:0 0 12px rgba(52,152,219,0.4);
        }
        .ph-item.user-Yakup .ph-restore-btn:active,
        .ph-item.user-yakup .ph-restore-btn:active{
            background:#2980b9;
            color:#fff;
        }

        /* TAM EKRAN FOTOĞRAF (LIGHTBOX) */
        .photo-lightbox{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;z-index:10005;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease, visibility .25s ease;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;}
        .photo-lightbox.open{opacity:1;visibility:visible;pointer-events:auto;}
        .photo-lightbox-content{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:24px 16px;box-sizing:border-box;overflow:hidden;touch-action:none;}
        .photo-lightbox-card{position:relative;display:flex;flex-direction:column;align-items:stretch;max-width:92vw;background:#15171e;border-radius:18px;overflow:hidden;border:2px solid rgba(255,255,255,0.18);box-shadow:0 16px 48px rgba(0,0,0,0.85);will-change:transform;touch-action:none;user-select:none;-webkit-user-select:none;z-index:2;}
        .photo-lightbox-card.user-Ayşegüll{border-color:rgba(255,64,129,0.5);}
        .photo-lightbox-card.user-Yakup{border-color:rgba(52,152,219,0.5);}
        .photo-lightbox-content img{display:block;width:100%;height:auto;max-width:92vw;max-height:76vh;object-fit:contain;border:none;border-radius:0;box-shadow:none;user-select:none;-webkit-user-select:none;}
        .photo-lightbox-content img.is-zoomed{cursor:grab;}
        .photo-lightbox-content img.is-dragging{cursor:grabbing;}
        .photo-lightbox-header{position:absolute;top:20px;left:20px;right:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;z-index:10;pointer-events:none;}
        .photo-lightbox.open .photo-lightbox-header > *{pointer-events:auto;}
        .photo-lightbox-caption{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:100%;box-sizing:border-box;background:#15171e;border-top:1px solid #282c37;padding:10px 14px;border-radius:0;font-size:0.8rem;color:#fff;}
        .photo-lightbox.open .photo-lightbox-caption{pointer-events:auto;}
        .lightbox-meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
        .lightbox-badge{font-size:0.7rem;font-weight:700;padding:2px 8px;border-radius:8px;text-transform:uppercase;letter-spacing:0.3px;}
        .badge-aysegull{background:rgba(255,64,129,0.22);color:#ff80ab;border:1px solid rgba(255,64,129,0.4);}
        .badge-yakup{background:rgba(52,152,219,0.22);color:#64b5f6;border:1px solid rgba(52,152,219,0.4);}
        .lightbox-date{font-size:0.74rem;color:#8e9297;display:flex;align-items:center;gap:5px;white-space:nowrap;}
        .lightbox-date svg{width:13px;height:13px;fill:#8e9297;flex-shrink:0;}
        .lightbox-caption-text{font-size:0.8rem;color:#cbd5e1;line-height:1.4;max-height:4.5em;overflow-y:auto;word-break:break-word;padding-top:6px;border-top:1px dashed rgba(255,255,255,0.1);user-select:text;-webkit-user-select:text;}
        .photo-lightbox-close{background:rgba(255,255,255,0.15);border:none;color:#ff5252;font-size:1.35rem;font-weight:bold;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s, background .15s;margin-left:auto;flex-shrink:0;}
        .photo-lightbox-close:hover{background:rgba(255,255,255,0.25);transform:scale(1.1);}
        .photo-lightbox-footer{position:absolute;bottom:calc(24px + env(safe-area-inset-bottom, 0px));left:50%;transform:translateX(-50%);z-index:10010;display:flex;align-items:center;justify-content:center;pointer-events:none;}
        .photo-lightbox.open .photo-lightbox-footer{pointer-events:auto;}
        .photo-lightbox-delete-btn{background:rgba(220,38,38,0.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.25);color:#fff;border-radius:24px;padding:9px 18px;font-size:0.84rem;font-weight:700;box-shadow:0 4px 20px rgba(0,0,0,0.6);display:flex;align-items:center;gap:8px;cursor:pointer;transition:transform .15s, background .15s, box-shadow .15s;user-select:none;-webkit-user-select:none;}
        .photo-lightbox-delete-btn:hover{background:rgba(239,68,68,0.95);transform:scale(1.05);box-shadow:0 6px 24px rgba(239,68,68,0.45);}
        .photo-lightbox-delete-btn:active{transform:scale(0.95);}
        .photo-lightbox-delete-btn svg{width:16px;height:16px;fill:#fff;flex-shrink:0;}

        /* SİLME ONAY MODAL STİLLERİ */
        .confirm-modal{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:10020;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease, visibility .2s ease;}
        .confirm-modal.open{opacity:1;visibility:visible;pointer-events:auto;}
        .confirm-modal-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}
        .confirm-modal-sheet{position:relative;width:88%;max-width:340px;background:#1a1c24;border:1px solid #282c37;border-radius:22px;padding:24px 20px 20px 20px;box-shadow:0 20px 50px rgba(0,0,0,0.75);display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;z-index:2;transform:scale(0.9);transition:transform .22s cubic-bezier(0.175,0.885,0.32,1.275);}
        .confirm-modal.open .confirm-modal-sheet{transform:scale(1);}
        .confirm-modal-icon{display:flex;align-items:center;justify-content:center;}
        .confirm-icon-circle.danger{width:56px;height:56px;border-radius:50%;background:rgba(220,38,38,0.15);border:2px solid rgba(220,38,38,0.35);display:flex;align-items:center;justify-content:center;box-shadow:0 0 20px rgba(220,38,38,0.25);}
        .confirm-icon-circle.danger svg{width:26px;height:26px;fill:#ef4444;}
        .confirm-modal-content{display:flex;flex-direction:column;gap:6px;}
        .confirm-modal-title{font-size:1.15rem;font-weight:700;color:#fff;}
        .confirm-modal-desc{font-size:0.83rem;color:#94a3b8;line-height:1.45;}
        .confirm-modal-actions{display:flex;align-items:center;gap:10px;width:100%;margin-top:6px;}
        .confirm-btn{flex:1;padding:11px 14px;border-radius:14px;font-size:0.85rem;font-weight:700;cursor:pointer;transition:transform .12s, background .15s, border-color .15s;display:flex;align-items:center;justify-content:center;user-select:none;-webkit-user-select:none;}
        .confirm-btn:active{transform:scale(0.96);}
        .confirm-btn-cancel{background:#20222b;border:1px solid #282c37;color:#cbd5e1;}
        .confirm-btn-cancel:hover{background:#282c37;color:#fff;}
        .confirm-btn-danger{background:linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);border:1px solid rgba(255,255,255,0.15);color:#fff;box-shadow:0 4px 14px rgba(220,38,38,0.4);}
        .confirm-btn-danger:hover{background:linear-gradient(135deg, #ef4444 0%, #dc2626 100%);box-shadow:0 6px 18px rgba(220,38,38,0.55);}

        /* PROFİL GERİ YÜKLEME ONAY MODAL STİLLERİ */
        .confirm-icon-circle.restore{
            width:56px;
            height:56px;
            border-radius:50%;
            background:rgba(52,152,219,0.15);
            border:2px solid rgba(52,152,219,0.4);
            display:flex;
            align-items:center;
            justify-content:center;
            box-shadow:0 0 20px rgba(52,152,219,0.25);
            overflow:hidden;
            position:relative;
        }
        .confirm-icon-circle.restore .restore-thumb-img{
            width:100%;
            height:100%;
            object-fit:cover;
            border-radius:50%;
        }
        .confirm-icon-circle.restore svg{
            width:26px;
            height:26px;
            fill:#3498db;
        }
        .confirm-btn-restore{
            background:linear-gradient(135deg, #3498db 0%, #2980b9 100%);
            border:1px solid rgba(255,255,255,0.15);
            color:#fff;
            box-shadow:0 4px 14px rgba(52,152,219,0.4);
        }
        .confirm-btn-restore:hover{
            background:linear-gradient(135deg, #64b5f6 0%, #3498db 100%);
            box-shadow:0 6px 18px rgba(52,152,219,0.55);
        }

        /* Ayşegüll Teması */
        .confirm-modal.theme-aysegull .confirm-icon-circle.restore{
            background:rgba(255,64,129,0.15);
            border-color:rgba(255,64,129,0.45);
            box-shadow:0 0 20px rgba(255,64,129,0.25);
        }
        .confirm-modal.theme-aysegull .confirm-icon-circle.restore svg{
            fill:#ff4081;
        }
        .confirm-modal.theme-aysegull .confirm-btn-restore{
            background:linear-gradient(135deg, #ff4081 0%, #e91e63 100%);
            box-shadow:0 4px 14px rgba(255,64,129,0.4);
        }
        .confirm-modal.theme-aysegull .confirm-btn-restore:hover{
            background:linear-gradient(135deg, #ff80ab 0%, #ff4081 100%);
            box-shadow:0 6px 18px rgba(255,64,129,0.55);
        }

        /* Yakup Teması */
        .confirm-modal.theme-yakup .confirm-icon-circle.restore{
            background:rgba(52,152,219,0.15);
            border-color:rgba(52,152,219,0.45);
            box-shadow:0 0 20px rgba(52,152,219,0.25);
        }
        .confirm-modal.theme-yakup .confirm-icon-circle.restore svg{
            fill:#3498db;
        }
        .confirm-modal.theme-yakup .confirm-btn-restore{
            background:linear-gradient(135deg, #3498db 0%, #2980b9 100%);
            box-shadow:0 4px 14px rgba(52,152,219,0.4);
        }
        .confirm-modal.theme-yakup .confirm-btn-restore:hover{
            background:linear-gradient(135deg, #64b5f6 0%, #3498db 100%);
            box-shadow:0 6px 18px rgba(52,152,219,0.55);
        }

        /* BİLDİRİM YÖNETİM MODAL STİLLERİ */
        .push-manage-sheet{
            max-width:350px;
            padding:26px 20px 22px 20px;
        }
        .confirm-icon-circle.push-icon-circle{
            width:62px;
            height:62px;
            border-radius:50%;
            background:rgba(245,158,11,0.12);
            border:2px solid rgba(245,158,11,0.35);
            display:flex;
            align-items:center;
            justify-content:center;
            box-shadow:0 0 24px rgba(245,158,11,0.2);
        }
        .push-modal-emoji{
            font-size:32px;
            line-height:1;
            filter:drop-shadow(0 2px 6px rgba(0,0,0,0.3));
        }
        .push-modal-buttons{
            display:flex;
            flex-direction:column;
            gap:10px;
            width:100%;
            margin-top:6px;
        }
        .push-modal-btn{
            width:100%;
            padding:12px 16px;
            border-radius:14px;
            font-size:0.88rem;
            font-weight:700;
            cursor:pointer;
            transition:transform .12s, background .15s, border-color .15s, box-shadow .15s;
            display:flex;
            align-items:center;
            justify-content:center;
            gap:9px;
            user-select:none;
            -webkit-user-select:none;
            border:1px solid transparent;
        }
        .push-modal-btn:active{
            transform:scale(0.97);
        }
        .push-modal-btn svg{
            width:18px;
            height:18px;
            fill:currentColor;
            flex-shrink:0;
        }
        .push-btn-test{
            background:linear-gradient(135deg, #10b981 0%, #059669 100%);
            border:1px solid rgba(255,255,255,0.15);
            color:#fff;
            box-shadow:0 4px 14px rgba(16,185,129,0.35);
        }
        .push-btn-test:hover{
            background:linear-gradient(135deg, #34d399 0%, #10b981 100%);
            box-shadow:0 6px 18px rgba(16,185,129,0.5);
        }
        .push-btn-disable{
            background:rgba(239,68,68,0.08);
            border:1px solid rgba(239,68,68,0.32);
            color:#f87171;
        }
        .push-btn-disable:hover{
            background:rgba(239,68,68,0.18);
            border-color:rgba(239,68,68,0.5);
            color:#fff;
        }
        .push-btn-cancel{
            background:#20222b;
            border:1px solid #282c37;
            color:#94a3b8;
        }
        .push-btn-cancel:hover{
            background:#282c37;
            color:#fff;
        }

        /* ==========================================================================
           SESLİ MESAJ (VOICE NOTES) & CANLI KAYIT BARI STİLLERİ
           ========================================================================== */

        /* Canlı Kayıt Barı (Input bar üzerine tam oturan overlay) */
        .voice-recording-bar{
            position:absolute;
            inset:0;
            background:#15171e;
            border-top:1px solid #282c37;
            display:none;
            align-items:center;
            justify-content:space-between;
            padding:0 10px;
            padding-bottom:max(0px, env(safe-area-inset-bottom));
            z-index:25;
        }
        .voice-recording-bar.active{
            display:flex;
            animation:voiceBarSlideIn .18s cubic-bezier(0.16, 1, 0.3, 1);
        }
        @keyframes voiceBarSlideIn{
            from{opacity:0;transform:translateY(6px);}
            to{opacity:1;transform:translateY(0);}
        }

        /* Kayıt Süresi ve Kırmızı Yanıp Sönen Nokta */
        .voice-recording-indicator{
            display:flex;
            align-items:center;
            gap:8px;
            flex-shrink:0;
            min-width:68px;
        }
        .voice-rec-dot{
            width:10px;
            height:10px;
            border-radius:50%;
            background:#ff4757;
            box-shadow:0 0 10px rgba(255,71,87,0.85);
            animation:voiceRecDotPulse 1.2s ease-in-out infinite;
        }
        @keyframes voiceRecDotPulse{
            0%{transform:scale(0.85);opacity:0.6;}
            50%{transform:scale(1.25);opacity:1;}
            100%{transform:scale(0.85);opacity:0.6;}
        }
        .voice-record-timer{
            font-size:0.88rem;
            font-weight:700;
            color:#f1f5f9;
            font-variant-numeric:tabular-nums;
            letter-spacing:0.3px;
        }

        /* Canlı Görselleştirici Çubukları */
        .voice-waveform-visualizer{
            flex:1;
            display:flex;
            align-items:center;
            justify-content:center;
            gap:3px;
            height:32px;
            margin:0 10px;
            overflow:hidden;
        }
        .rec-wave-bar{
            width:3px;
            height:5px;
            min-height:4px;
            border-radius:3px;
            background:linear-gradient(180deg, #ff4081 0%, #3498db 100%);
            transition:height 0.08s ease;
        }

        /* Kayıt Eylem Butonları (İptal & Gönder) */
        .voice-recording-actions{
            display:flex;
            align-items:center;
            gap:8px;
            flex-shrink:0;
        }
        .voice-action-btn{
            width:36px;
            height:36px;
            border-radius:50%;
            border:none;
            cursor:pointer;
            display:inline-flex;
            align-items:center;
            justify-content:center;
            transition:transform .12s, background .15s, box-shadow .15s;
            -webkit-tap-highlight-color:transparent;
            outline:none;
            padding:0;
        }
        .voice-action-btn:active{
            transform:scale(0.92);
        }
        .voice-cancel-btn{
            background:rgba(239,68,68,0.14);
            color:#ef4444;
            border:1px solid rgba(239,68,68,0.3);
        }
        .voice-cancel-btn:hover{
            background:rgba(239,68,68,0.28);
            color:#fff;
        }
        .voice-cancel-btn svg{
            width:17px;
            height:17px;
            fill:currentColor;
        }
        .voice-send-btn{
            background:linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
            color:#fff;
            box-shadow:0 3px 12px rgba(37,99,235,0.45);
        }
        .voice-send-btn:hover{
            background:linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
            box-shadow:0 4px 16px rgba(37,99,235,0.6);
        }
        .voice-send-btn svg{
            width:17px;
            height:17px;
            fill:currentColor;
        }

        /* ==========================================================================
           SOHBET BALONUNDAKİ ÖZEL SES OYNATICI (VOICE PLAYER BUBBLE)
           ========================================================================== */
        .message.has-voice{
            min-width:210px;
            max-width:320px;
            padding:8px 10px 5px 10px;
        }
        @media (max-width:480px){
            .message.has-voice{
                max-width:min(86vw, 305px);
            }
        }
        .voice-player{
            display:flex;
            align-items:center;
            gap:10px;
            width:100%;
            user-select:none;
            -webkit-user-select:none;
            margin:2px 0 4px 0;
        }
        .voice-play-btn{
            width:40px;
            height:40px;
            min-width:40px;
            min-height:40px;
            border-radius:50%;
            border:none;
            cursor:pointer;
            display:flex;
            align-items:center;
            justify-content:center;
            background:rgba(255,255,255,0.18);
            color:#fff;
            transition:transform .12s, background .15s, box-shadow .15s;
            flex-shrink:0;
            outline:none;
            -webkit-tap-highlight-color:transparent;
            padding:0;
        }
        .voice-play-btn:hover{
            background:rgba(255,255,255,0.28);
        }
        .voice-play-btn:active{
            transform:scale(0.92);
        }
        .voice-play-btn svg{
            width:20px;
            height:20px;
            fill:currentColor;
            pointer-events:none;
        }
        .voice-play-btn.is-playing{
            background:rgba(255,255,255,0.32);
            box-shadow:0 0 14px rgba(255,255,255,0.25);
        }

        .voice-player-main{
            flex:1;
            display:flex;
            flex-direction:column;
            gap:5px;
            min-width:0;
            justify-content:center;
        }

        /* Tıklanabilir Dalga Formu (Seekable Waveform) */
        .voice-waveform{
            display:flex;
            align-items:center;
            gap:2px;
            height:28px;
            cursor:pointer;
            padding:2px 0;
            position:relative;
            touch-action:none;
        }
        .voice-wave-bar{
            width:3px;
            border-radius:2px;
            background:rgba(255,255,255,0.35);
            transition:background .1s, transform .1s;
            flex-shrink:0;
            pointer-events:none;
        }
        .voice-wave-bar.played{
            background:#fff;
            box-shadow:0 0 4px rgba(255,255,255,0.45);
        }

        /* Bilgi Satırı: Süre & Hız Kontrolü */
        .voice-player-info{
            display:flex;
            align-items:center;
            justify-content:space-between;
            font-size:0.71rem;
            color:rgba(255,255,255,0.75);
            line-height:1;
        }
        .voice-player-time{
            font-variant-numeric:tabular-nums;
            font-weight:600;
            letter-spacing:0.25px;
        }
        .voice-speed-btn{
            background:rgba(255,255,255,0.14);
            border:1px solid rgba(255,255,255,0.24);
            border-radius:10px;
            color:#fff;
            font-size:0.67rem;
            font-weight:700;
            padding:1px 6px;
            cursor:pointer;
            line-height:1.4;
            transition:background .15s, transform .1s;
            -webkit-tap-highlight-color:transparent;
            outline:none;
        }
        .voice-speed-btn:hover{
            background:rgba(255,255,255,0.25);
        }
        .voice-speed-btn:active{
            transform:scale(0.92);
        }

