        /* --- GENEL AYARLAR --- */
        :root {
            /* — Marka renkleri — */
            --primary: #00f2ff;
            --secondary: #bd00ff;
            --highlight: #ff0000;

            /* — Zeminler — */
            --bg: #050505;
            --surface: #111;          /* kart/panel zemini */
            --surface-2: #0f172a;     /* koyu lacivert yüzey (input, kutu) */

            /* — Kenarlıklar — */
            --border: #1e293b;
            --border-2: #334155;

            /* — Yazı renkleri (tek kaynak) — */
            --text: #ffffff;          /* ana yazı */
            --text-2: #e2e8f0;        /* açık gri yazı */
            --text-3: #cbd5e1;        /* ikincil yazı */
            --text-muted: #94a3b8;    /* soluk yazı — ERİŞİLEBİLİR (eski #64748b çok soluktu, kontrast düşüktü) */

            /* — Boşluk ölçeği (4/8 sistemi) — */
            --space-1: 4px;  --space-2: 8px;  --space-3: 12px;
            --space-4: 16px; --space-6: 24px; --space-8: 32px;

            /* — Köşe yuvarlaklığı — */
            --radius-sm: 6px; --radius-md: 10px; --radius-lg: 16px; --radius-pill: 50px;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Montserrat', sans-serif;
            background-color: var(--bg);
            background: radial-gradient(circle at center, #1a1a1a 0%, #000000 100%);
            color: var(--text);
            overflow-x: hidden;
        }

        a {
            text-decoration: none;
            color: inherit;
            transition: 0.3s;
        }

        /* ARKA PLAN HAYALET MODU KURALI */
        #bg-canvas {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            z-index: -1;
            pointer-events: none;
        }

        /* HEADER */
        header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 20px 5%;
            background: rgba(5, 5, 5, 0.9);
            backdrop-filter: blur(10px);
            position: fixed;
            width: 100%;
            top: 0;
            z-index: 1000;
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        }

        .logo {
            font-size: 24px;
            font-weight: 900;
            letter-spacing: -1px;
        }

        .logo span {
            background: linear-gradient(to right, var(--primary), var(--secondary));
            -webkit-background-clip: text;
            background-clip: text;
            -webkit-text-fill-color: transparent;
        }

        .contact-btn {
            padding: 10px 25px;
            border: 2px solid var(--primary);
            border-radius: 50px;
            color: var(--primary);
            font-weight: bold;
            background: transparent;
            cursor: pointer;
        }

        .contact-btn:hover {
            background: var(--primary);
            color: #000;
            box-shadow: 0 0 20px var(--primary);
        }

        /* ÜRÜN ARAMA KUTUSU */
        .search-wrapper {
            position: relative;
            max-width: 500px;
            margin: 0 auto 30px;
            padding: 0 20px;
        }

        .search-wrapper .search-icon {
            position: absolute;
            left: 38px;
            top: 50%;
            transform: translateY(-50%);
            color: var(--text-muted);
            font-size: 0.95rem;
            pointer-events: none;
        }

        .search-wrapper input[type="search"] {
            width: 100%;
            padding: 14px 20px 14px 46px;
            border: 2px solid var(--border);
            background: var(--surface-2);
            color: var(--text-2);
            border-radius: 50px;
            font-size: 1rem;
            transition: border-color 0.2s, box-shadow 0.2s;
            font-family: inherit;
        }

        .search-wrapper input[type="search"]:focus {
            outline: none;
            border-color: var(--primary);
            box-shadow: 0 0 20px rgba(0, 242, 255, 0.15);
        }

        .search-wrapper input[type="search"]::placeholder {
            color: var(--text-muted);
        }

        /* KATEGORİ NAVBAR */
        .category-nav {
            display: flex;
            gap: 28px;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
        }

        .category-nav a {
            color: var(--text-3);
            text-decoration: none;
            font-weight: 600;
            font-size: 0.95rem;
            padding: 6px 2px;
            border-bottom: 2px solid transparent;
            transition: color 0.2s, border-color 0.2s;
            white-space: nowrap;
        }

        .category-nav a:hover {
            color: var(--primary);
        }

        .category-nav a.active {
            color: var(--primary);
            border-bottom-color: var(--primary);
        }

        @media (max-width: 900px) {
            .category-nav { display: none !important; }
        }

        /* HERO BÖLÜMÜ */
        .hero {
            min-height: 100vh;
            display: flex;
            flex-direction: row;
            align-items: center;
            justify-content: center;
            gap: 60px;
            max-width: 1400px;
            margin: 0 auto;
            padding: 120px 20px 50px 20px;
        }

        .hero-content {
            flex: 1;
            text-align: left;
            z-index: 2;
            max-width: 650px;
        }

        .hero h1 {
            font-size: 4.5rem;
            line-height: 1.1;
            margin-bottom: 20px;
            text-shadow: 0 0 30px rgba(0, 242, 255, 0.1);
        }

        .typing-cursor {
            display: inline-block;
            width: 4px;
            height: 1em;
            background-color: var(--primary);
            margin-left: 5px;
            animation: blink 0.7s infinite;
            vertical-align: middle;
        }

        @keyframes blink {

            0%,
            100% {
                opacity: 1;
            }

            50% {
                opacity: 0;
            }
        }

        .hero h1 span {
            color: var(--primary);
        }

        .hero p {
            font-size: 1.2rem;
            color: #ccc;
            max-width: 600px;
            margin-bottom: 40px;
            line-height: 1.6;
        }

        .btn-glow {
            padding: 15px 40px;
            border-radius: 50px;
            font-weight: bold;
            font-size: 1.1rem;
            border: none;
            cursor: pointer;
            background: linear-gradient(45deg, var(--primary), var(--secondary));
            color: white;
            box-shadow: 0 0 30px rgba(0, 242, 255, 0.3);
            transition: 0.3s;
        }

        .btn-glow:hover {
            transform: scale(1.05);
            box-shadow: 0 0 50px rgba(0, 242, 255, 0.6);
        }

        /* HERO TARAYICI GÖRSELİ */
        .hero-visual {
            flex: 1;
            display: flex;
            justify-content: center;
            align-items: center;
            position: relative;
            max-width: 500px;
        }

        .scanner-wrapper {
            position: relative;
            width: 350px;
            height: 500px;
        }

        .scanner-frame {
            width: 100%;
            height: 100%;
            border: 4px solid #333;
            border-radius: 15px;
            background: #000;
            position: relative;
            box-shadow: 0 0 40px rgba(0, 242, 255, 0.15);
            overflow: hidden;
            z-index: 1;
        }

        .slideshow-container {
            width: 100%;
            height: 100%;
            position: relative;
        }

        .slide-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            opacity: 0;
            position: absolute;
            top: 0;
            left: 0;
            transition: opacity 1.5s ease-in-out;
        }

        .slide-img.active {
            opacity: 0.9;
        }

        .hero-slide {
            object-fit: fill !important;
        }

        .scanner-phone {
            position: absolute;
            bottom: -30px;
            right: -15px;
            font-size: 140px;
            color: var(--text);
            text-shadow: 0 0 20px var(--primary);
            animation: floatPhone 3s ease-in-out infinite;
            z-index: 10;
        }

        .scan-line {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 4px;
            background: var(--primary);
            box-shadow: 0 0 20px var(--primary), 0 0 10px var(--primary);
            animation: scanning 3s linear infinite;
            opacity: 0.8;
            z-index: 3;
        }

        /* Kategori sayfası hero kapağı (scanner yerine) */
        .category-hero-cover {
            width: 100%;
            max-width: 500px;
            aspect-ratio: 1 / 1;
            border-radius: 20px;
            overflow: hidden;
            border: 2px solid rgba(0, 242, 255, 0.3);
            box-shadow: 0 0 40px rgba(0, 242, 255, 0.2);
        }

        .category-hero-cover img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        .category-hero-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            background: linear-gradient(135deg, var(--surface-2), var(--border));
        }

        .category-hero-icon i {
            font-size: 8rem;
            color: var(--primary);
            text-shadow: 0 0 40px rgba(0, 242, 255, 0.4);
        }

        @keyframes floatPhone {

            0%,
            100% {
                transform: translateY(0);
            }

            50% {
                transform: translateY(-20px);
            }
        }

        @keyframes scanning {
            0% {
                top: 0;
                opacity: 0;
            }

            10% {
                opacity: 1;
            }

            90% {
                opacity: 1;
            }

            100% {
                top: 100%;
                opacity: 0;
            }
        }

        @media (max-width: 1100px) {
            .hero {
                flex-direction: column-reverse;
                text-align: center;
                padding-top: 100px;
                gap: 50px;
            }

            .hero-content {
                text-align: center;
                margin: 0 auto;
            }

            .hero h1 {
                font-size: 3rem;
            }

            .hero-visual {
                transform: scale(0.9);
            }
        }

        /* VİTRİN GALERİ */
        .section {
            padding: 80px 5%;
        }

        .section-title {
            font-size: 2.5rem;
            margin-bottom: 50px;
            text-align: center;
        }

        .section-title span {
            color: var(--secondary);
        }

        .gallery-container {
            display: flex;
            gap: 40px;
            justify-content: center;
            flex-wrap: wrap;
            padding: 20px;
            perspective: 1000px;
        }

        .gallery-item {
            width: 320px;
            height: 480px;
            background: var(--surface);
            border-radius: 15px;
            position: relative;
            border: 2px solid #333;
            cursor: pointer;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
            transform-style: preserve-3d;
            transform: perspective(1000px);
            transition: transform 0.1s ease-out;
            overflow: hidden;
            /* Mobilde karta cift dokununca tarayicinin metni yakinlastirmasini
               (cift-dokun zoom) engeller; iki parmakla yakinlastirma yine calisir. */
            touch-action: manipulation;
        }

        .vitrin-badge {
            position: absolute;
            top: 12px;
            left: 12px;
            z-index: 8;
            padding: 5px 12px;
            border-radius: 6px;
            font-size: 0.7rem;
            font-weight: 800;
            letter-spacing: 0.5px;
            text-transform: uppercase;
            pointer-events: none;
            box-shadow: 0 2px 8px rgba(0,0,0,0.4);
        }
        .vitrin-badge-yeni {
            background: linear-gradient(135deg, #00f2ff, #0ea5e9);
            color: #000;
        }
        .vitrin-badge-cok_satan {
            background: linear-gradient(135deg, #f59e0b, #ef4444);
            color: #fff;
        }
        .vitrin-badge-sinirli {
            background: linear-gradient(135deg, #a855f7, #ec4899);
            color: #fff;
        }
        .vitrin-badge-yakinda {
            background: linear-gradient(135deg, #64748b, #f59e0b);
            color: #fff;
        }
        .vitrin-badge-indirim {
            position: absolute;
            top: 12px;
            right: 12px;
            z-index: 8;
            padding: 5px 10px;
            border-radius: 6px;
            font-size: 0.8rem;
            font-weight: 800;
            background: #10b981;
            color: #fff;
            pointer-events: none;
            box-shadow: 0 2px 8px rgba(0,0,0,0.4);
        }

        /* ===== "YAKINDA" MODU — sipariş arayüzü kapalı teaser =====
           badge='yakinda' ürün açılınca JS #productModal'a .yakinda-modu ekler.
           Sipariş makinesini (boyut/çerçeve/adımlar + çerçeve şeridi) gizler,
           sadece "Çok Yakında!" kutusunu ve ürün görseli/açıklamasını bırakır. */
        #productModal.yakinda-modu .step-bar,
        #productModal.yakinda-modu #boyutSecimAlani,
        #productModal.yakinda-modu #cerceveRenkAlani,
        #productModal.yakinda-modu #step1-design,
        #productModal.yakinda-modu #step2-shipping,
        #productModal.yakinda-modu #step3-payment,
        #productModal.yakinda-modu .cerceve-thumb-strip {
            display: none !important;
        }
        #productModal.yakinda-modu #yakindaNotice {
            display: block !important;
        }
        .yakinda-notice {
            background: linear-gradient(135deg, var(--border), var(--surface-2));
            border: 1px solid #f59e0b;
            border-radius: 12px;
            padding: 36px 24px;
            text-align: center;
            margin-top: 10px;
        }
        .yakinda-notice-ikon {
            font-size: 2.6rem;
            color: #f59e0b;
            margin-bottom: 14px;
        }
        .yakinda-notice h3 {
            color: #f59e0b;
            font-size: 1.5rem;
            margin: 0 0 10px;
        }
        .yakinda-notice p {
            color: var(--text-3);
            font-size: 0.95rem;
            line-height: 1.7;
            margin: 0;
        }

        .gallery-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.4);
            opacity: 0;
            transition: 0.4s;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 5;
            border-radius: 13px;
            transform: translateZ(30px);
        }

        .rotate-icon {
            width: 70px;
            height: 70px;
            background: rgba(0, 0, 0, 0.8);
            border: 2px solid var(--primary);
            border-radius: 50%;
            color: var(--primary);
            font-size: 30px;
            display: flex;
            align-items: center;
            justify-content: center;
            transform: scale(0);
            transition: 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        }

        .gallery-item:hover .gallery-overlay {
            opacity: 1;
        }

        .gallery-item:hover .rotate-icon {
            transform: scale(1) rotate(360deg);
        }

        .favori-btn {
            position: absolute;
            top: 12px;
            right: 12px;
            z-index: 10;
            background: rgba(0,0,0,0.55);
            border: none;
            border-radius: 50%;
            width: 36px;
            height: 36px;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            font-size: 1rem;
            color: #fff;
            transition: background 0.2s, transform 0.15s;
            backdrop-filter: blur(4px);
        }
        .favori-btn:hover { background: rgba(0,0,0,0.8); transform: scale(1.15); }
        .favori-btn.aktif { color: #ef4444; }

        .gallery-info {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            padding: 20px;
            background: linear-gradient(to top, black, transparent);
            z-index: 6;
            border-bottom-left-radius: 13px;
            border-bottom-right-radius: 13px;
            transform: translateZ(20px);
        }

        .gallery-info h4 {
            color: white;
            margin-bottom: 5px;
            font-size: 1.3rem;
            text-shadow: 0 2px 4px rgba(0, 0, 0, 0.8);
        }

        .gallery-info p {
            font-size: 0.9rem;
            color: var(--primary);
            font-weight: bold;
            text-shadow: 0 2px 4px rgba(0, 0, 0, 0.8);
        }

        /* GÜVEN BANTI & YORUMLAR */
        .trust-bar {
            display: flex;
            justify-content: space-around;
            flex-wrap: wrap;
            gap: 20px;
            padding: 50px 5%;
            background: rgba(255, 255, 255, 0.02);
            border-top: 1px solid #222;
            border-bottom: 1px solid #222;
            margin-top: 50px;
        }

        .trust-item {
            text-align: center;
            flex: 1;
            min-width: 150px;
        }

        .trust-item i {
            font-size: 2.5rem;
            color: var(--primary);
            margin-bottom: 15px;
            text-shadow: 0 0 15px var(--primary);
        }

        .trust-item h3 {
            font-size: 1.1rem;
            margin-bottom: 5px;
        }

        .trust-item p {
            font-size: 0.8rem;
            color: #888;
        }

        .reviews-container {
            display: flex;
            gap: 30px;
            justify-content: center;
            flex-wrap: wrap;
            margin-top: 30px;
        }

        .review-card {
            background: var(--surface);
            padding: 30px;
            border-radius: 15px;
            border: 1px solid #333;
            width: 300px;
            transition: 0.3s;
        }

        .review-card:hover {
            border-color: var(--secondary);
            transform: translateY(-5px);
        }

        .stars {
            color: #FFD700;
            margin-bottom: 15px;
        }

        .review-text {
            font-style: italic;
            color: #ccc;
            font-size: 0.9rem;
            margin-bottom: 20px;
            line-height: 1.5;
        }

        .review-author {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .author-icon {
            width: 40px;
            height: 40px;
            background: #333;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--primary);
        }

        /* VİDEO & FOOTER */
        .video-container {
            position: relative;
            width: 90%;
            max-width: 800px;
            margin: 0 auto;
            border-radius: 20px;
            overflow: hidden;
            border: 1px solid #333;
        }

        video {
            width: 100%;
            display: block;
            border-radius: 20px;
        }

        .neon-border {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            border-radius: 20px;
            pointer-events: none;
            box-shadow: inset 0 0 20px var(--primary);
            animation: pulseNeon 2s infinite alternate;
        }

        @keyframes pulseNeon {
            0% {
                box-shadow: inset 0 0 10px var(--primary);
                border: 1px solid var(--primary);
            }

            100% {
                box-shadow: inset 0 0 30px var(--secondary);
                border: 1px solid var(--secondary);
            }
        }

        footer {
            background: #000;
            padding: 60px 5% 20px 5%;
            border-top: 1px solid #222;
            color: #ccc;
        }

        .footer-content {
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: 40px;
            max-width: 1200px;
            margin: 0 auto;
        }

        .footer-col h3 {
            color: white;
            margin-bottom: 20px;
            font-size: 1.2rem;
        }

        .footer-col p {
            font-size: 0.9rem;
            margin-bottom: 10px;
            color: #888;
        }

        .social-links {
            display: flex;
            gap: 15px;
            margin-top: 20px;
        }

        .social-btn {
            width: 40px;
            height: 40px;
            border-radius: 50%;
            border: 1px solid #444;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: 0.3s;
            cursor: pointer;
            color: var(--text-2);
            text-decoration: none;
        }

        .social-btn:hover {
            background: var(--primary);
            color: #000;
            border-color: var(--primary);
        }

        .copyright {
            text-align: center;
            margin-top: 50px;
            font-size: 0.8rem;
            color: #555;
            border-top: 1px solid #111;
            padding-top: 20px;
        }

        /* YÜZEN WHATSAPP BUTONU */
        .wa-float {
            position: fixed;
            bottom: 30px;
            right: 30px;
            width: 60px;
            height: 60px;
            background-color: #25d366;
            color: #FFF;
            border-radius: 50px;
            text-align: center;
            font-size: 35px;
            box-shadow: 0 0 20px rgba(37, 211, 102, 0.5);
            z-index: 1000;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.3s ease;
            animation: pulse-wa 2s infinite;
        }

        .wa-float:hover {
            transform: scale(1.1);
            color: #fff;
            box-shadow: 0 0 30px rgba(37, 211, 102, 0.8);
        }

        @keyframes pulse-wa {
            0% {
                box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
            }

            70% {
                box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
            }

            100% {
                box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
            }
        }

        /* --- MODAL (GELİŞMİŞ SİMETRİK) --- */
        .modal-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.95);
            /* 14 Haz: 2000'di. Test bandi (9999) ve Pixi (9998) modalin ustunde
               kaliyordu -> kapat (X) gorunmuyordu. Modal artik her seyin ustunde. */
            z-index: 100000;
            display: none;
            justify-content: center;
            /* 20 Haz: align-items:center idi. Modal ekran yüksekliğinden uzun olunca
               Firefox dikey-ortalanmış flex çocuğun ÜSTÜNÜ kırpıyor ve yukarı kaydırtmıyordu
               -> kapat (X) görünmüyordu. flex-start + .modal-container'da margin:auto ile
               içerik sığarsa ortalanır, uzun olursa üstten erişilebilir kalır (tüm tarayıcılar). */
            align-items: flex-start;
            overflow-y: auto;
            padding: 20px 0;
        }

        .modal-container {
            display: flex;
            flex-wrap: wrap;
            width: 90%;
            max-width: 900px;
            background: #121212;
            border: 1px solid #333;
            border-radius: 15px;
            overflow: hidden;
            box-shadow: 0 0 50px rgba(0, 242, 255, 0.1);
            position: relative;
            /* auto: sığdığında dikey ortalar, uzun olduğunda üst boşluğu yutmaz (X erişilir kalır) */
            margin: auto;
        }

        .modal-left {
            flex: 1;
            min-width: 300px;
            background: #000;
            padding: 30px;
            display: flex;
            flex-direction: column;
            border-right: 1px solid #333;
        }

        .modal-header-left {
            margin-bottom: 20px;
        }

        #modalProductName {
            font-size: 1.8rem;
            font-weight: 900;
            color: var(--text);
            margin-bottom: 5px;
        }

        .order-id-box {
            font-size: 0.9rem;
            color: #888;
        }

        .preview-container {
            width: 100%;
            max-width: 300px;
            margin: 0 auto 30px auto;
            /* Sabit en-boy kutusu: görsel (renk/kesit) değişince yükseklik sabit
               kalır, alttaki içerik ZIPLAMAZ. Tablolar dikey olduğu için 3:4. */
            aspect-ratio: 3 / 4;
            border-radius: 10px;
            overflow: hidden;
            background: #0a0a0a;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
        }

        .preview-img {
            width: 100%;
            height: 100%;
            /* contain: farklı boyuttaki görseller kutuya tam sığar, kırpılmaz,
               oran bozulmaz; kalan boşluk koyu arka planla doldurulur. */
            object-fit: contain;
            display: block;
        }

        /* Çerçeve önizleme thumbnail şeridi */
        .cerceve-thumb-strip {
            display: none;
            gap: 8px;
            justify-content: center;
            flex-wrap: wrap;
            max-width: 300px;
            margin: 12px auto 20px auto;
        }

        .cerceve-thumb {
            width: 52px;
            height: 52px;
            border-radius: 8px;
            border: 2px solid var(--border-2);
            background: var(--border);
            cursor: pointer;
            object-fit: cover;
            transition: border-color 0.2s, transform 0.15s;
            display: block;
        }

        .cerceve-thumb:hover {
            transform: translateY(-2px);
        }

        .cerceve-thumb.active {
            border-color: var(--primary);
            box-shadow: 0 0 0 2px rgba(0, 242, 254, 0.3);
        }

        /* Ürün açıklaması (R2'deki aciklama.txt — admin paneldeki Müşteri Açıklaması) */
        .urun-aciklama-alani {
            background: #0a0a0a;
            border: 1px solid #1f2937;
            border-radius: 10px;
            padding: 18px 20px;
            margin-top: 20px;
            font-size: 0.92rem;
            color: var(--text-3);
            line-height: 1.55;
        }

        .urun-aciklama-bolum {
            margin-bottom: 14px;
        }

        .urun-aciklama-bolum:last-child {
            margin-bottom: 0;
        }

        .urun-aciklama-bolum + .urun-aciklama-bolum {
            border-top: 1px solid #1f2937;
            padding-top: 12px;
        }

        .urun-aciklama-baslik {
            font-size: 0.78rem;
            font-weight: 700;
            color: var(--primary);
            text-transform: uppercase;
            letter-spacing: 0.5px;
            margin-bottom: 6px;
        }

        .urun-aciklama-metin {
            color: var(--text-muted);
            font-weight: 300;
            white-space: pre-wrap;
            word-wrap: break-word;
        }

        /* Form içindeki renk seçici butonları */
        .cerceve-renk-grup {
            display: flex;
            gap: 10px;
            flex-wrap: wrap;
        }

        .cerceve-renk-btn {
            flex: 1;
            min-width: 70px;
            padding: 10px 8px;
            background: var(--border);
            border: 2px solid var(--border-2);
            border-radius: 10px;
            color: var(--text-2);
            cursor: pointer;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 6px;
            font-size: 0.8rem;
            transition: border-color 0.2s, background 0.2s;
        }

        .cerceve-renk-btn:hover {
            border-color: #475569;
        }

        .cerceve-renk-btn.active {
            border-color: var(--primary);
            background: rgba(0, 242, 254, 0.08);
        }

        .cerceve-renk-yuvarlak {
            width: 24px;
            height: 24px;
            border-radius: 50%;
            border: 1px solid #475569;
        }

        .interactive-design-container {
            width: 100%;
            max-width: 300px;
            margin: 0 auto;
            position: relative;
            border-radius: 5px;
            border: 1px solid #333;
            overflow: hidden;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
        }

        .design-preview {
            width: 100%;
            aspect-ratio: 2 / 3;
            background-size: cover;
            background-position: center;
            position: relative;
        }

        .highlight-box {
            position: absolute;
            border: 2px solid var(--highlight);
            background: rgba(255, 0, 0, 0.2);
            display: none;
            pointer-events: none;
            box-shadow: 0 0 10px var(--highlight);
            transition: 0.2s;
        }

        #hl-title {
            top: 59%;
            left: 1%;
            width: 90%;
            height: 8%;
        }

        #hl-date {
            top: 70%;
            left: 15%;
            width: 20%;
            height: 3%;
        }

        #hl-message {
            top: 80%;
            left: 1%;
            width: 90%;
            height: 11%;
        }

        #hl-cast {
            top: 92%;
            left: 1%;
            width: 90%;
            height: 4%;
        }

        .highlight-box.active {
            display: block;
            animation: blinkBox 1s infinite alternate;
        }

        @keyframes blinkBox {
            from {
                opacity: 0.5;
            }

            to {
                opacity: 1;
            }
        }

        .modal-right {
            flex: 1.5;
            min-width: 300px;
            padding: 30px;
            max-height: 90vh;
            overflow-y: auto;
        }

        .close-modal {
            position: absolute;
            top: 15px;
            right: 20px;
            font-size: 24px;
            cursor: pointer;
            color: #fff;
            z-index: 10;
        }

        .form-group {
            margin-bottom: 20px;
            transition: 0.3s;
        }

        .form-label {
            display: block;
            color: var(--primary);
            margin-bottom: 5px;
            font-size: 0.9rem;
            font-weight: bold;
        }

        .form-note {
            display: block;
            color: var(--text-muted);
            font-size: 0.75rem;
            margin-bottom: 8px;
            font-style: italic;
        }

        .form-select,
        .form-input,
        .form-textarea {
            width: 100%;
            padding: 12px;
            background: #1f1f1f;
            border: 1px solid #333;
            color: white;
            border-radius: 8px;
            font-family: 'Montserrat', sans-serif;
            outline: none;
            transition: border-color 0.3s;
        }

        .form-input:focus,
        .form-textarea:focus {
            border-color: var(--primary);
        }

        /* --- SİPARİŞ ADIM BARI --- */
        .step-bar {
            display: flex;
            justify-content: space-between;
            margin-bottom: 25px;
            border-bottom: 2px solid #333;
            padding-bottom: 10px;
        }
        .step-title {
            color: #555;
            font-size: 1.1rem;
        }
        .step-title.active {
            color: var(--primary);
            font-weight: bold;
        }

        .file-upload-btn {
            display: block;
            width: 100%;
            padding: 15px;
            text-align: center;
            border: 2px dashed #444;
            border-radius: 8px;
            color: #888;
            cursor: pointer;
            transition: 0.3s;
        }

        .file-upload-btn:hover {
            border-color: var(--primary);
            color: white;
            background: rgba(0, 242, 255, 0.05);
        }

        .size-options {
            display: flex;
            gap: 10px;
        }

        .size-radio {
            display: none;
        }

        .size-label {
            padding: 10px 15px;
            border: 1px solid #444;
            border-radius: 5px;
            cursor: pointer;
            color: #aaa;
            font-size: 0.9rem;
            flex: 1;
            text-align: center;
        }

        .size-radio:checked+.size-label {
            background: var(--primary);
            color: black;
            border-color: var(--primary);
            font-weight: bold;
        }

        .radio-group {
            display: flex;
            gap: 15px;
            margin-top: 5px;
        }

        .radio-label {
            display: flex;
            align-items: center;
            gap: 5px;
            cursor: pointer;
            color: #ccc;
            font-size: 0.9rem;
        }

        .radio-label input {
            accent-color: var(--primary);
        }

        .submit-wa-btn {
            width: 100%;
            padding: 15px;
            background: #25D366;
            color: white;
            font-weight: bold;
            border: none;
            border-radius: 8px;
            cursor: pointer;
            font-size: 1.1rem;
            margin-top: 20px;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 10px;
            transition: 0.3s;
        }

        .submit-wa-btn:hover {
            background: #1ebc57;
            box-shadow: 0 0 15px rgba(37, 211, 102, 0.4);
        }

        /* 📱 MOBİL UYUMLULUK DÜZELTMESİ (768px ve altı ekranlar) */
        /* Neden fırlamışlardı? Çünkü masaüstünde 'yan yana' duruyorlardı.
           Bu kod, mobilde 'dikey' durmalarını emredecek. */
        @media (max-width: 768px) {
            .panel-container {
                flex-direction: column;
                /* Masaüstündeki row'u, column (dikey) yapıyoruz */
                height: auto;
                /* Mobilde yüksekliği otomatik yapıyoruz ki sığsın */
            }

            .panel-sidebar {
                width: 100% !important;
                /* Mobilde menüyü tam genişlikte göster */
                border-right: none;
                border-bottom: 1px solid #333;
                /* Menünün altına ufak bir çizgi */
                margin-bottom: 15px;
            }

            .panel-content {
                width: 100% !important;
                /* Mobilde sipariş detaylarını tam genişlikte göster */
                flex: none;
                /* Masaüstündeki flex: 1'i iptal et */
            }

            /* Mobilde menü başlığının stilini de ufakça düzeltelim */
            .panel-header {
                font-size: 1.2rem;
            }
        }

        /* --- 🔐 ÜYELİK EKRANI TASARIMI 🔐 --- */
        .auth-container {
            max-width: 400px;
            padding: 40px;
            background: #121212;
            border: 1px solid #333;
            border-radius: 15px;
            box-shadow: 0 0 50px rgba(189, 0, 255, 0.15);
            position: relative;
            text-align: center;
            margin: 20px;
        }

        .auth-title {
            font-size: 1.8rem;
            margin-bottom: 20px;
            color: white;
            font-weight: 900;
        }

        .auth-title span {
            color: var(--secondary);
        }

        .auth-switch {
            display: flex;
            justify-content: center;
            gap: 30px;
            margin-bottom: 30px;
            border-bottom: 1px solid #333;
            padding-bottom: 15px;
        }

        .switch-btn {
            background: none;
            border: none;
            color: #666;
            font-size: 1.2rem;
            cursor: pointer;
            transition: 0.3s;
            font-family: 'Montserrat', sans-serif;
            font-weight: bold;
        }

        .switch-btn.active {
            color: var(--secondary);
            text-shadow: 0 0 10px rgba(189, 0, 255, 0.5);
        }

        .auth-btn {
            width: 100%;
            padding: 15px;
            background: linear-gradient(45deg, var(--secondary), var(--primary));
            color: white;
            border: none;
            border-radius: 8px;
            font-weight: bold;
            cursor: pointer;
            font-size: 1.1rem;
            margin-top: 20px;
            transition: 0.3s;
        }

        .auth-btn:hover {
            box-shadow: 0 0 20px rgba(189, 0, 255, 0.4);
            transform: translateY(-2px);
        }

        /* --- 🚀 YENİ PROFESYONEL MÜŞTERİ PANELİ --- */
        .panel-container {
            display: flex;
            width: 95%;
            max-width: 1200px;
            height: 85vh;
            background: #121212;
            border: 1px solid #333;
            border-radius: 15px;
            overflow: hidden;
            position: relative;
            margin: 20px auto;
        }

        .panel-sidebar {
            width: 280px;
            background: #0a0a0a;
            border-right: 1px solid #222;
            display: flex;
            flex-direction: column;
            padding: 30px 0;
            overflow-y: auto;
        }

        .panel-user-info {
            text-align: center;
            padding: 0 20px 20px 20px;
            border-bottom: 1px solid #222;
            margin-bottom: 20px;
        }

        .panel-user-info i {
            font-size: 3.5rem;
            color: var(--primary);
            margin-bottom: 10px;
        }

        .panel-user-info h3 {
            color: white;
            font-size: 1.2rem;
        }

        .panel-user-info p {
            color: #888;
            font-size: 0.85rem;
        }

        .panel-menu-item {
            padding: 18px 25px;
            color: #aaa;
            cursor: pointer;
            transition: 0.3s;
            display: flex;
            align-items: center;
            gap: 15px;
            font-weight: bold;
            border-left: 4px solid transparent;
            font-size: 1rem;
        }

        .panel-menu-item:hover {
            background: #1a1a1a;
            color: white;
        }

        .panel-menu-item.active {
            background: rgba(0, 242, 255, 0.05);
            color: var(--primary);
            border-left-color: var(--primary);
        }

        .panel-content {
            flex: 1;
            padding: 40px;
            overflow-y: auto;
            background: #111;
        }

        .panel-tab-content {
            display: none;
        }

        .panel-tab-content.active {
            display: block;
            animation: fadeIn 0.4s ease;
        }

        @keyframes fadeIn {
            from {
                opacity: 0;
                transform: translateY(10px);
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .panel-header {
            font-size: 2rem;
            color: white;
            margin-bottom: 30px;
            border-bottom: 2px solid #222;
            padding-bottom: 15px;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .order-card {
            background: #1a1a1a;
            border: 1px solid #333;
            border-radius: 12px;
            padding: 25px;
            margin-bottom: 20px;
            display: flex;
            flex-direction: column;
            gap: 20px;
            transition: 0.3s;
        }

        .order-card:hover {
            border-color: var(--secondary);
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.5);
        }

        .order-header-info {
            display: flex;
            justify-content: space-between;
            border-bottom: 1px dashed #444;
            padding-bottom: 15px;
            font-size: 0.95rem;
            color: #ccc;
            flex-wrap: wrap;
            gap: 10px;
        }

        .order-body {
            display: flex;
            gap: 25px;
            align-items: center;
            flex-wrap: wrap;
        }

        .order-img {
            width: 100px;
            height: 100px;
            object-fit: cover;
            border-radius: 10px;
            border: 2px solid #333;
        }

        .order-details {
            flex: 1;
            min-width: 250px;
        }

        .order-details h4 {
            font-size: 1.2rem;
            margin-bottom: 5px;
            color: white;
        }

        .order-details p {
            color: #888;
            font-size: 0.9rem;
            margin-bottom: 5px;
        }

        .order-status {
            padding: 6px 15px;
            border-radius: 20px;
            font-size: 0.85rem;
            font-weight: bold;
            display: inline-block;
        }

        .status-hazirlaniyor {
            background: rgba(255, 170, 0, 0.15);
            color: #ffaa00;
            border: 1px solid #ffaa00;
        }

        .status-kargoda {
            background: rgba(0, 242, 255, 0.15);
            color: var(--primary);
            border: 1px solid var(--primary);
        }

        .status-teslim {
            background: rgba(37, 211, 102, 0.15);
            color: #25D366;
            border: 1px solid #25D366;
        }

        .order-action-btn {
            padding: 10px 20px;
            background: #222;
            color: white;
            border: 1px solid #444;
            border-radius: 8px;
            cursor: pointer;
            transition: 0.3s;
            font-weight: bold;
        }

        .order-action-btn:hover {
            background: var(--primary);
            color: #000;
            border-color: var(--primary);
        }

        /* --- 📦 SİPARİŞ DURUM TIMELINE --- */
        .timeline-container {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            margin: 20px 0 10px 0;
            padding: 16px 10px;
            background: #1a1a1a;
            border-radius: 12px;
            border: 1px solid #2a2a2a;
            position: relative;
        }
        .timeline-step {
            display: flex;
            flex-direction: column;
            align-items: center;
            flex: 1;
            position: relative;
            z-index: 1;
        }
        .timeline-step .step-icon {
            width: 38px;
            height: 38px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 0.85rem;
            border: 2px solid #333;
            background: #111;
            color: #555;
            transition: all 0.3s;
            position: relative;
        }
        .timeline-step.completed .step-icon {
            background: rgba(0, 242, 255, 0.15);
            border-color: var(--primary);
            color: var(--primary);
        }
        .timeline-step.active .step-icon {
            background: var(--primary);
            border-color: var(--primary);
            color: #000;
            box-shadow: 0 0 12px rgba(0, 242, 255, 0.4);
            animation: timelinePulse 2s infinite;
        }
        .timeline-step.cancelled .step-icon {
            background: rgba(255, 68, 68, 0.15);
            border-color: #ff4444;
            color: #ff4444;
        }
        @keyframes timelinePulse {
            0%, 100% { box-shadow: 0 0 8px rgba(0, 242, 255, 0.3); }
            50% { box-shadow: 0 0 18px rgba(0, 242, 255, 0.6); }
        }
        .timeline-step .step-label {
            font-size: 0.65rem;
            color: #555;
            margin-top: 6px;
            text-align: center;
            line-height: 1.2;
            max-width: 70px;
        }
        .timeline-step.completed .step-label,
        .timeline-step.active .step-label { color: #ccc; }
        .timeline-step.cancelled .step-label { color: #ff4444; }
        .timeline-line {
            position: absolute;
            top: 34px;
            left: 15%;
            right: 15%;
            height: 2px;
            background: #333;
            z-index: 0;
        }
        .timeline-line-fill {
            height: 100%;
            background: var(--primary);
            transition: width 0.5s ease;
        }
        .kargo-takip-box {
            margin-top: 12px;
            padding: 12px 16px;
            background: rgba(0, 242, 255, 0.08);
            border: 1px solid rgba(0, 242, 255, 0.25);
            border-radius: 10px;
            display: flex;
            align-items: center;
            gap: 10px;
        }
        .kargo-takip-box i { color: var(--primary); font-size: 1.2rem; }
        .kargo-takip-box span { color: #ccc; font-size: 0.85rem; }
        .kargo-takip-box b { color: var(--primary); }

        /* --- 📄 SİPARİŞ DETAY MODALI --- */
        #orderDetailsModal .modal-container {
            max-width: 500px;
            background: #121212;
            border: 1px solid #333;
            z-index: 3000;
            flex-direction: column;
        }

        .detail-row {
            display: flex;
            justify-content: space-between;
            border-bottom: 1px dashed #333;
            padding: 12px 0;
        }

        .detail-row span:first-child {
            color: #aaa;
            font-weight: bold;
            font-size: 0.95rem;
        }

        .detail-row span:last-child {
            color: #fff;
            text-align: right;
            font-size: 0.95rem;
        }

        .cancel-btn {
            width: 100%;
            padding: 15px;
            background: transparent;
            color: #ff4444;
            border: 1px solid #ff4444;
            border-radius: 8px;
            font-weight: bold;
            cursor: pointer;
            margin-top: 20px;
            transition: 0.3s;
        }

        .cancel-btn:hover {
            background: #ff4444;
            color: white;
        }

        /* --- 🎛️ SİPARİŞ FİLTRE BUTONLARI --- */
        .filter-container {
            display: flex;
            gap: 10px;
            margin-bottom: 25px;
            border-bottom: 1px solid #333;
            padding-bottom: 15px;
            overflow-x: auto;
        }

        .filter-btn {
            background: transparent;
            color: #888;
            border: 1px solid #333;
            padding: 8px 18px;
            border-radius: 50px;
            font-size: 0.9rem;
            font-weight: bold;
            cursor: pointer;
            transition: 0.3s;
            white-space: nowrap;
        }

        .filter-btn:hover {
            border-color: #666;
            color: #fff;
        }

        .filter-btn.active {
            background: rgba(0, 242, 255, 0.1);
            color: var(--primary);
            border-color: var(--primary);
        }

        .status-iptal {
            background: rgba(255, 68, 68, 0.15);
            color: #ff4444;
            border: 1px solid #ff4444;
        }

        .status-tasarim {
            background: rgba(139, 92, 246, 0.15);
            color: #a78bfa;
            border: 1px solid #8b5cf6;
            animation: pulse-tasarim 2s infinite;
        }

        @keyframes pulse-tasarim {
            0%, 100% { box-shadow: 0 0 0 0 rgba(139, 92, 246, 0.4); }
            50% { box-shadow: 0 0 0 6px rgba(139, 92, 246, 0); }
        }

        .onay-btn {
            width: 100%;
            padding: 15px;
            background: #8b5cf6;
            color: #fff;
            border: none;
            border-radius: 8px;
            font-weight: bold;
            cursor: pointer;
            margin-top: 12px;
            font-size: 1rem;
            transition: 0.3s;
        }

        .onay-btn:hover { background: #7c3aed; }

        .revizyon-btn {
            width: 100%;
            padding: 12px;
            background: transparent;
            color: var(--text-muted);
            border: 1px solid var(--border-2);
            border-radius: 8px;
            font-weight: bold;
            cursor: pointer;
            margin-top: 8px;
            font-size: 0.9rem;
            transition: 0.3s;
        }

        .revizyon-btn:hover { border-color: #f59e0b; color: #f59e0b; }

/* --- SSS STİLLERİ --- */
        .sss-item { border-bottom: 1px solid var(--border); overflow: hidden; }
        .sss-soru {
            display: flex; justify-content: space-between; align-items: center;
            padding: 18px 0; cursor: pointer; color: var(--text-2); font-weight: bold;
            font-size: 1rem; gap: 10px;
        }
        .sss-soru:hover { color: var(--primary); }
        .sss-soru i { transition: transform 0.3s; color: var(--primary); flex-shrink: 0; }
        .sss-cevap { max-height: 0; overflow: hidden; transition: max-height 0.35s ease; }
        .sss-cevap p { padding: 0 0 16px; color: var(--text-muted); font-size: 0.95rem; line-height: 1.7; margin: 0; }
        .sss-item.acik .sss-soru i { transform: rotate(180deg); }
        .sss-item.acik .sss-cevap { max-height: 300px; }

        /* ============================================================
           MODAL DİKEY DÖNÜŞÜM — 768px ve altı
           ============================================================ */
        @media (max-width: 900px) {
            .modal-container {
                flex-direction: column !important;
                flex-wrap: nowrap !important;
                width: 100% !important;
                max-width: 100% !important;
                margin: 0 !important;
                border-radius: 0 !important;
                max-height: 100vh;
                height: 100vh;
                overflow-y: auto;
            }
            .modal-left {
                min-width: unset !important;
                width: 100% !important;
                flex: none !important;
                border-right: none !important;
                border-bottom: 1px solid #333;
                padding: 20px;
            }
            .modal-right {
                min-width: unset !important;
                width: 100% !important;
                flex: none !important;
                padding: 20px;
                /* Pixi avatarı (mobilde ~60px, sağ-altta sabit) ürün kartı açıkken üstte
                   durur; formun en alttaki butonları onun altında kalmasın diye alt boşluk.
                   Avatar bu boş alanda durur, hiçbir butonu kapatmaz. */
                padding-bottom: 110px;
                max-height: unset !important;
                overflow-y: visible;
            }
            .preview-container { max-width: 220px; }
            .interactive-design-container { max-width: 220px; }
            #modalProductName { font-size: 1.4rem; }
            .size-options { flex-wrap: wrap; }
            .size-label { padding: 8px 10px; font-size: 0.8rem; }
            .step-bar { gap: 5px; }
            .step-title { font-size: 0.85rem; }

            /* Bug 2 (14 Haz): Tam ekran modalde icerik kayinca kapat (X) dugmesi
               de yukari kayip gozden kayboluyordu (mobilde kapatilamiyordu).
               Ekran kosesine SABITLE -> kaydirsan da hep erisilebilir.
               (.close-modal normalde position:absolute) */
            .close-modal {
                position: fixed;
                top: 12px;
                right: 12px;
                width: 42px;
                height: 42px;
                display: flex;
                align-items: center;
                justify-content: center;
                background: rgba(0, 0, 0, 0.6);
                border-radius: 50%;
                font-size: 26px;
                line-height: 1;
                z-index: 2147483000;
            }

            /* Bug 3 (14 Haz): iOS Safari, yazi tipi 16px'in ALTINDA olan bir alana
               dokununca otomatik yakinlasir (zoom) ve cirkin gorunur. Tum form
               alanlarini 16px yaparak bunu engelle. */
            /* 20 Haz: !important eklendi. Bu GENEL güvenlik ağıdır — daha özgül
               (specificity yüksek) bir kural (örn. .pixi-input-alani textarea) bunu
               ezip 16px'in altına düşürürse iOS yine zoom yapıyordu. !important ile
               sitedeki HER input/textarea/select mobilde garanti 16px olur, zoom olmaz. */
            input,
            textarea,
            select,
            .form-input,
            .form-textarea,
            .form-select {
                font-size: 16px !important;
            }
        }

        /* ============================================================
           MOBİL UYUMLULUK — 480px ve altı (telefon)
           ============================================================ */
        @media (max-width: 480px) {

            /* --- HEADER --- */
            header {
                padding: 12px 4%;
                flex-wrap: wrap;
                gap: 8px;
                /* Bug 7 (14 Haz): mobilde navbar daha opak -> arkadaki basliklar
                   menunun icinden sizmasin */
                background: rgba(5, 5, 5, 0.97);
            }
            .logo { font-size: 20px; }

            /* Bug 5a (14 Haz): Pixi maskotu sag-altta sabit; footer'daki yasal
               linkleri (KVKK, Gizlilik, Mesafeli Satis...) kapatiyordu.
               Footer'in altina bosluk ekle -> son yazilar Pixi'nin ustunde kalir. */
            footer {
                padding-bottom: 120px;
            }
            #guestButtons, #userButtons {
                gap: 8px !important;
            }
            .contact-btn {
                padding: 8px 14px;
                font-size: 0.75rem;
            }

            /* --- HERO --- */
            .hero {
                padding: 90px 15px 30px 15px;
                gap: 30px;
            }
            .hero h1 { font-size: 2rem; }
            .hero p { font-size: 0.95rem; margin-bottom: 25px; }
            .btn-glow { padding: 12px 28px; font-size: 0.95rem; }
            .hero-visual { transform: scale(0.7); }
            .scanner-wrapper { width: 280px; height: 400px; }

            /* --- GÜVEN BANTI --- */
            .trust-bar {
                flex-direction: column;
                gap: 25px;
                padding: 30px 5%;
            }
            .trust-item i { font-size: 2rem; }

            /* --- VİTRİN GALERİ --- */
            .section { padding: 50px 4%; }
            .section-title { font-size: 1.6rem; margin-bottom: 30px; }
            .gallery-container { gap: 20px; padding: 10px; }
            .gallery-item {
                width: 100%;
                max-width: 320px;
                height: 420px;
            }

            /* --- YORUM KARTLARI --- */
            .review-card {
                width: 100%;
                padding: 20px;
            }

            /* --- VİDEO --- */
            .video-container { width: 95%; }

            /* --- HAKKIMIZDA --- */
            #hakkimizda > div {
                gap: 30px !important;
            }
            #hakkimizda h2 { font-size: 1.5rem !important; }

            /* --- AUTH MODALİ --- */
            .auth-container {
                max-width: 95%;
                padding: 25px 20px;
                margin: 10px;
            }

            /* --- MÜŞTERİ PANELİ --- */
            .panel-container {
                width: 100%;
                height: auto;
                margin: 10px auto;
                flex-direction: column;
                border-radius: 10px;
            }
            .panel-sidebar {
                width: 100% !important;
                border-right: none;
                border-bottom: 1px solid #222;
                padding: 15px 0;
                flex-direction: row;
                flex-wrap: wrap;
                justify-content: center;
                overflow-x: auto;
            }
            .panel-user-info {
                width: 100%;
                padding: 0 15px 15px;
            }
            .panel-user-info i { font-size: 2.5rem; }
            .panel-menu-item {
                padding: 12px 15px;
                font-size: 0.8rem;
                gap: 8px;
                border-left: none;
                border-bottom: 3px solid transparent;
                white-space: nowrap;
            }
            .panel-menu-item.active {
                border-left-color: transparent;
                border-bottom-color: var(--primary);
            }
            .panel-content {
                width: 100% !important;
                padding: 20px 15px;
                flex: none;
            }
            .panel-header { font-size: 1.3rem; }

            /* --- SİPARİŞ KARTLARI --- */
            .order-card { padding: 15px; }
            .order-body { flex-direction: column; align-items: flex-start; }
            .order-img { width: 80px; height: 80px; }
            .order-details { min-width: unset; }

            /* --- TIMELINE --- */
            .timeline-container { padding: 12px 5px; }
            .timeline-step .step-icon { width: 32px; height: 32px; font-size: 0.75rem; }
            .timeline-step .step-label { font-size: 0.55rem; max-width: 60px; }
            .timeline-line { top: 30px; }

            /* --- FOOTER --- */
            .footer-content {
                flex-direction: column;
                gap: 30px;
                text-align: center;
            }
            .social-links { justify-content: center; }

            .copyright p { font-size: 0.7rem !important; }

            /* --- WHATSAPP BUTONU --- */
            .wa-float {
                width: 50px;
                height: 50px;
                font-size: 28px;
                bottom: 20px;
                right: 15px;
            }

            /* --- SİPARİŞ DETAY MODALİ --- */
            #orderDetailsModal .modal-container {
                width: 95%;
                margin: 10px;
            }
            .detail-row { flex-direction: column; gap: 4px; }
            .detail-row span:last-child { text-align: left; }

            /* --- FİLTRE BUTONLARI --- */
            .filter-container { gap: 6px; padding-bottom: 10px; }
            .filter-btn { padding: 6px 12px; font-size: 0.8rem; }

            /* --- KARGO TAKİP --- */
            .kargo-takip-box { flex-direction: column; align-items: flex-start; gap: 6px; }
        }

        /* ============================================================
           TABLET UYUMLULUK — 481px-768px
           ============================================================ */
        @media (min-width: 481px) and (max-width: 768px) {

            header { padding: 15px 4%; }
            .contact-btn { padding: 9px 18px; font-size: 0.85rem; }

            .hero h1 { font-size: 2.5rem; }
            .hero p { font-size: 1rem; }
            .hero-visual { transform: scale(0.8); }

            .section-title { font-size: 1.8rem; }

            .gallery-item {
                width: 280px;
                height: 420px;
            }

            .trust-bar { gap: 15px; }
            .trust-item { min-width: 120px; }
            .trust-item i { font-size: 2rem; }
            .trust-item h3 { font-size: 0.95rem; }

            .footer-content { gap: 25px; }

            .review-card { width: 260px; }
        }

/* === FAZ 4.9-A12-F2: Müşteri Sipariş Ekranı Animasyon Galerisi === */
.animasyon-galeri-grup {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
    gap: 10px;
    margin-top: 8px;
}
.animasyon-kart {
    cursor: pointer;
    border: 2px solid var(--border-2);
    border-radius: 10px;
    overflow: hidden;
    background: var(--surface-2);
    transition: transform 0.15s, border-color 0.15s, box-shadow 0.15s;
    position: relative;
}
.animasyon-kart:hover { transform: translateY(-2px); border-color: var(--text-muted); }
.animasyon-kart.active {
    border-color: var(--primary, #f59e0b);
    box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.25);
}
.animasyon-kart-thumb {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    background-size: cover;
    background-position: center;
    background-color: var(--border);
    display: flex;
    align-items: center;
    justify-content: center;
}
.animasyon-play-btn {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: none;
    background: rgba(0,0,0,0.65);
    color: #fff;
    font-size: 0.85rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, transform 0.15s;
}
.animasyon-play-btn:hover { background: var(--primary, #f59e0b); transform: scale(1.08); }
.animasyon-kart-isim {
    padding: 6px 4px;
    text-align: center;
    color: var(--text-2);
    font-size: 0.78rem;
    font-weight: 500;
    background: var(--surface-2);
}
.animasyon-kart.active .animasyon-kart-isim {
    color: var(--primary, #f59e0b);
}
.animasyon-secim-bos {
    color: var(--text-muted);
    font-size: 0.85rem;
    font-style: italic;
    padding: 8px 0;
}

#animasyonPreviewModal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.85);
    z-index: 10000;
    justify-content: center;
    align-items: center;
    padding: 20px;
}
#animasyonPreviewModal .ap-icerik {
    background: var(--surface-2);
    border: 1px solid var(--border-2);
    border-radius: 12px;
    padding: 20px;
    max-width: 640px;
    width: 100%;
    position: relative;
}
#animasyonPreviewModal .ap-baslik {
    color: var(--primary, #f59e0b);
    margin: 0 0 12px;
    font-size: 1rem;
    font-weight: 600;
}
#animasyonPreviewModal .ap-kapat {
    position: absolute;
    top: 8px;
    right: 12px;
    background: none;
    border: none;
    color: var(--text-muted);
    font-size: 1.5rem;
    cursor: pointer;
    line-height: 1;
}
#animasyonPreviewModal video {
    width: 100%;
    max-height: 70vh;
    border-radius: 8px;
    background: #000;
}

/* Animasyon önizleme videosu açıkken ürün kartının kapatma X'i gizlenir.
   İkisi de sağ üstte ve kart X'inin z-index'i çok yüksek (2147483000) olduğundan,
   videoyu kapatayım derken kart kapanıyordu. Önizleme boyunca tek X kalır
   (videonunki); video kapanınca kart X'i geri gelir (js/main.js: ap-onizleme-acik). */
body.ap-onizleme-acik .close-modal { display: none !important; }

/* ============================================================
   ERİŞİLEBİLİRLİK — 1. ADIM (klavye odak halkaları + hareket azalt)
   NOT: Görsel tasarımı DEĞİŞTİRMEZ. :focus-visible sadece KLAVYE ile
   gezen kullanıcıya görünür (fare tıklamasında çıkmaz). Neon temayla uyumlu.
   ============================================================ */

/* Klavye odak halkası — tüm etkileşimli öğeler (eskiden hiçbiri göstermiyordu) */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible,
[role="button"]:focus-visible {
    outline: 3px solid var(--primary);
    outline-offset: 3px;
    border-radius: 6px;
}

/* Koyu/parlak zeminlerde halkanın seçilmesi için hafif dış hâle */
button:focus-visible,
[role="button"]:focus-visible,
.btn-glow:focus-visible,
.contact-btn:focus-visible {
    box-shadow: 0 0 0 3px rgba(0, 242, 255, 0.35);
}

/* "Hareketi azalt" sistem tercihi açıksa animasyon/geçişleri yumuşat
   (migren/hareket hassasiyeti olan kullanıcılar için — WCAG önerisi) */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
    }
}

/* ============================================================
   ÜRÜN VİTRİNİ CİLA — 2. parti (kart tutarlılık + net CTA + mobil)
   Sadece kartların görünümü/hissi; ürün verisi ve JS akışı DEĞİŞMEZ.
   ============================================================ */

/* (1) HATA FIX: indirim rozeti ile favori kalbi ikisi de sağ-üstteydi
   (üst üste biniyordu). Rozeti kalbin soluna al (12+36+8=56px). */
.vitrin-badge-indirim {
    right: 56px;
}

/* (2) Kartın tamamına yumuşak "yükselme" + neon kenar (premium his).
   JS'in 3D eğim transform'una dokunmaz — ayrı özellikler (shadow/border). */
.gallery-item {
    transition: transform 0.1s ease-out, box-shadow 0.25s ease, border-color 0.25s ease;
}
.gallery-item:hover {
    border-color: var(--primary);
    box-shadow: 0 18px 44px rgba(0, 242, 255, 0.16), 0 10px 30px rgba(0, 0, 0, 0.6);
}

/* (3) Her kartta kalıcı "İncele →" ipucu. Özellikle MOBİLDE kritik:
   telefonda hover yok, kartın tıklanabilir olduğu belli olmalı.
   Masaüstünde hover'da dolu renge döner (net çağrı). */
.gallery-info::after {
    content: "İncele →";
    display: inline-block;
    margin-top: 10px;
    padding: 6px 14px;
    border: 1px solid var(--primary);
    border-radius: var(--radius-pill);
    color: var(--primary);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.3px;
    background: rgba(0, 242, 255, 0.08);
    transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}
.gallery-item:hover .gallery-info::after {
    background: var(--primary);
    color: #000;
    transform: translateX(3px);
}

/* (4) Favori kalbi dokunma alanı 36→42px (mobil dokunma standardına yaklaş) */
.favori-btn {
    width: 42px;
    height: 42px;
    font-size: 1.05rem;
}

/* ============================================================
   İNCE CİLA — 3. parti (buton hiyerarşisi)
   Header'da tek ANA buton: "Sipariş Ver" dolu/vurgulu (asıl aksiyon).
   "Giriş Yap" çerçeveli (ikincil) kalır → hangisi ana buton belli olur.
   ============================================================ */
.contact-btn-primary {
    background: linear-gradient(135deg, var(--primary), #0ea5e9);
    border-color: transparent;
    color: #001014;
    box-shadow: 0 4px 16px rgba(0, 242, 255, 0.30);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.contact-btn-primary:hover {
    background: linear-gradient(135deg, var(--primary), #0ea5e9);
    color: #001014;
    transform: translateY(-1px);
    box-shadow: 0 6px 22px rgba(0, 242, 255, 0.45);
}

/* ============================================================
   MOBİL DOKUNMA ALANLARI — 4. parti (parmak dostu ≥44px hedef)
   Telefonda header butonları 35px, çerez 34px, footer linkleri 14-18px'ti
   → parmakla zor/yanlış basılıyordu. SADECE dokunmalı boyutta büyür;
   masaüstü görünüm aynı kalır. (Yatay kayma denetimi: temiz ✅)
   ============================================================ */
@media (max-width: 768px) {
    .contact-btn {
        min-height: 44px;
        padding-top: 11px;
        padding-bottom: 11px;
    }
    /* footer menü + yasal linkleri: dikey tıklama alanını genişlet */
    .footer-col a {
        display: inline-block;
        padding: 7px 0;
    }
    .social-btn {
        width: 44px;
        height: 44px;
    }
}

/* (5) Alt bilgi yazıları (başlık/alt başlık/fiyat) AÇIK görsellerde soluk
   okunuyordu → karartmayı güçlendir + yukarı taşı, yazılar her görselde net.
   Alt başlık rengini de var(--text-3)'e çek (eski cyan alt başlık kafa karıştırıyordu). */
.gallery-info {
    padding: 44px 20px 20px;
    background: linear-gradient(to top,
        rgba(0, 0, 0, 0.98) 0%,
        rgba(0, 0, 0, 0.93) 70%,
        rgba(0, 0, 0, 0.60) 88%,
        transparent 100%);
}
.gallery-info h4 {
    color: #fff;
    font-size: 1.35rem;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.95), 0 0 3px rgba(0, 0, 0, 0.9);
}
.gallery-info p {
    color: var(--text-2);
    font-weight: 600;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.9);
}
