:root { --hijau: #006B3D; --emas: #D4AF37; --krem: #ffffff ; --abu-lembut: #f4f4f4; --teks: #333; --putih: #fff; --batas: #e0e0e0; --merah: #E53935; } .mode-gelap { --hijau: #009E57; --krem: #1a1a1a; --abu-lembut: #2a2a2a; --teks: #eee; --putih: #2c2c2c; --batas: #444; --merah: #ff5c5c; } * {margin:0; padding:0; box-sizing:border-box; font-family:'Segoe UI',sans-serif;} body {background:var(--krem); color:var(--teks); line-height:1.6; transition:.3s;} a {text-decoration:none;} .container {max-width:1200px; margin:0 auto; padding:0 20px;} /* === PITA MOTIF PALING ATAS & BAWAH — DIPASTIKAN TAMPIL PENUH === */ .pita-motif, .pita-bawah { height: 32px !important; min-height: 32px !important; max-height: 32px !important; display: block !important; visibility: visible !important; overflow: visible !important; line-height: 32px !important; margin: 0 !important; padding: 0 !important; border: none !important; background: linear-gradient(90deg, #8B2323, #D4AF37, #006B3D, #8B2323); background-size: 200% 100%; animation: pita-gerak 20s linear infinite; border-bottom: 2px solid #B8860B; } @keyframes pita-gerak { 0% {background-position:0 0;} 100% {background-position:200% 0;} } /* === HEADER UTAMA — JARAK KONSISTEN, TIDAK TURUN KE KONTEN === */ .header-baru { background: var(--putih); box-shadow: 0 3px 10px rgba(0,0,0,.08); padding: 14px 0 0 !important; /* ✅ UBAH: 10px → 0px */ position: sticky; top: 0; z-index: 990; margin: 0; margin-bottom: 20px !important; /* biarkan ini untuk jarak ke konten utama */ min-height: auto !important; transition: padding 0.3s ease; } .header-baru.menu-sembunyi { padding-bottom: 0 !important; margin-bottom: 20px !important; min-height: 80px; } .header-baru.menu-sembunyi .header-baris-atas { margin-bottom: 20px !important; } .header-baris-atas { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; margin-bottom: 0; /* ✅ UBAH: 16px → 0px */ transition: margin-bottom 0.3s ease; } /* Logo */ .logo-grup { display: flex; align-items: center; gap: 12px; } .logo-kki { display: flex; flex-direction: column; line-height: 1.2; } .logo-teks { font-size: 2rem; font-weight: 900; color: #a53f04; letter-spacing: 1px; text-shadow: 0 0 6px rgba(255,255,255,0.4); } /* === Warna Putih di Mode Gelap === */ .mode-gelap .logo-teks { color: #ffffff !important; text-shadow: 0 0 6px rgba(255,255,255,0.4); } .logo-slogan { font-size: .75rem; color: var(--teks); opacity: 0.7; } .logo-pemisah { width: 2px; height: 40px; background: linear-gradient(#8B2323, #D4AF37, #006B3D); } .tombol-mode { background: none; border: none; font-size: 20px; cursor: pointer; padding: 6px 10px; border-radius: 6px; background: var(--abu-lembut); } /* === FORM PENCARIAN === */ #formPencarian { display: flex !important; align-items: center; gap: 0; border: 1px solid var(--batas); border-radius: 25px; overflow: hidden; background: var(--putih); width: 100%; max-width: 100%; } .pilih-pencarian { display: inline-block !important; height: 44px; padding: 0 12px; border: none; border-right: 1px solid var(--batas); background: var(--putih); font-size: 14px; color: var(--teks); white-space: nowrap; flex-shrink: 0; /* ✅ Jangan mengecil */ flex: 0 0 auto; /* ✅ Lebar sesuai isi, tidak dipaksa */ min-width: 110px; /* ✅ Lebar aman */ max-width: 140px; /* ✅ Jangan terlalu lebar */ border-radius: 0; outline: none; -webkit-appearance: none; appearance: none; background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e"); background-repeat: no-repeat; background-position: right 8px center; background-size: 14px; padding-right: 30px; } .mode-gelap .pilih-pencarian { background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ccc' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e"); } .input-pencarian { flex: 1; /* ✅ Ambil sisa ruang */ min-width: 0; /* ✅ Bisa mengecil wajar */ height: 44px; padding: 0 12px; border: none; background: transparent; font-size: 14px; color: var(--teks); outline: none; box-shadow: none; } .tombol-pencarian { height: 44px; width: 50px; min-width: 50px; /* ✅ KUNCI: TIDAK BOLEH mengecil! */ border: none; background: var(--hijau); color: #fff; font-size: 18px; cursor: pointer; flex-shrink: 0; /* ✅ Tetap ukuran asli */ border-radius: 0; display: flex; align-items: center; justify-content: center; } /* === RESPONSIVE HP === */ @media (max-width: 768px) { #formPencarian { flex-wrap: nowrap !important; } .pilih-pencarian { min-width: 90px; /* ✅ Lebar lebih kecil di HP */ max-width: 110px; /* ✅ Batas aman */ padding-left: 8px; padding-right: 28px; font-size: 13px; } .input-pencarian { padding: 0 8px; font-size: 14px; } .tombol-pencarian { width: 48px; /* ✅ Sedikit lebih kecil tapi masih utuh */ min-width: 48px; } } /* === MENU NAVIGASI — TAMPIL PENUH, TIDAK TERPOTONG === */ .menu-atas { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--batas); padding-top: 10px; padding-bottom: 8px !important; margin-top: 4px; transition: all 0.3s ease-in-out; transform: translateY(0); opacity: 1; height: auto; overflow: visible !important; position: relative; background: var(--putih); /* ✅ Mengikuti variabel tema */ } /* ✅ TAMBAHKAN BAGIAN INI DI BAWAHNYA */ /* === Mode Gelap: Menu Latar Gelap + Teks Putih === */ .mode-gelap .menu-atas { background: var(--putih); /* jadi #2c2c2c */ border-top-color: var(--batas); } /* ✅ Teks menu jadi PUTIH di mode gelap */ .mode-gelap .daftar-menu a { color: var(--teks); /* otomatis jadi #eee dari variabel */ } /* ✅ Saat hover tetap terlihat jelas */ .mode-gelap .daftar-menu a:hover { background: rgba(0,158,87,.15); color: var(--hijau); /* jadi #009E57 */ } /* ✅ Submenu juga ikut gelap */ .mode-gelap .submenu { background: #2a2a2a; border-color: #444; } .mode-gelap .submenu a { color: #eee; } .mode-gelap .submenu a:hover { background: rgba(0,158,87,.15); color: var(--hijau); } .menu-atas.sembunyi { transform: translateY(-100%); opacity: 0; height: 0 !important; max-height: 0 !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; border: none !important; border-top: none !important; border-bottom: none !important; overflow: hidden !important; pointer-events: none; line-height: 0; font-size: 0; } .daftar-menu { display: flex; list-style: none; gap: 6px; flex-wrap: wrap; } .daftar-menu > li {position:relative;} .daftar-menu a { display: block; padding: 8px 14px; color: var(--teks); font-weight: 500; border-radius: 6px; } .daftar-menu a:hover { background: var(--abu-lembut); color: var(--hijau); } .label-baru { background: var(--merah); color: #fff; font-size: .7rem; padding: 1px 6px; border-radius: 10px; margin-left: 4px; } /* Submenu Turun */ .menu-turun { position: relative; } .menu-turun > a { cursor: pointer; } .submenu { position: absolute; top: 100%; left: 0; min-width: 200px; background: var(--putih); box-shadow: 0 6px 16px rgba(0,0,0,.12); border-radius: 8px; padding: 8px 0; display: none; z-index: 9999; } .menu-turun:hover .submenu { display: block; } .submenu li { list-style: none; } .submenu a { padding: 8px 16px; } /* Wishlist Kanan */ .menu-ikon-kanan { display: flex; align-items: center; gap: 14px; } .tombol-wishlist { padding: 6px 12px; border: 1px solid var(--batas); border-radius: 20px; color: var(--teks); font-weight: 500; display: flex; align-items: center; gap: 4px; position: relative; text-decoration: none; } .tombol-wishlist:hover { background: rgba(255,220,220,.15); border-color: var(--merah); } .lencana-wish { position: absolute; top: -8px; right: -8px; background: var(--merah); color: #fff; font-size: .7rem; font-weight: bold; min-width: 18px; height: 18px; border-radius: 50%; display: flex; align-items: center; justify-content: center; } /* === TATA LETAK === */ .tata-letak { display: grid; grid-template-columns: 260px 1fr; gap: 24px; margin: 24px auto; } .kotak-kategori { background: var(--putih); border-radius: 10px; padding: 20px; box-shadow: 0 2px 8px rgba(0,0,0,.05); } .kotak-kategori h3 {color:var(--hijau); margin-bottom:14px;} .daftar-kategori li { padding: 8px 0; border-bottom: 1px solid var(--batas); list-style: none; } .daftar-kategori a { display: block; padding: 4px 6px; border-radius: 4px; color: var(--teks); } .daftar-kategori a:hover, .daftar-kategori a.aktif { background: var(--abu-lembut); color: var(--hijau); } /* === SLIDER — KHUSUS HALAMAN BERANDA DIASET TERSEKARANG === */ .slider-penuh { width: 100%; height: 400px !important; /* ✅ Tidak 90vh lagi — ukuran wajar */ min-height: 420px !important; position: relative; overflow: hidden; margin-top: 0 !important; clear: both !important; } .slider-penuh-bungkus {width:100%; height:100%; position:relative;} .slide-penuh { width:100%; height:100%; position:absolute; top:0; left:0; opacity:0; transition:opacity 0.5s ease-in-out; } .slide-penuh.aktif {opacity:1;} .slide-penuh img { width:100%; height:100%; object-fit:cover; /* ✅ Gambar penuh tidak terpotong */ display:block; } .teks-slide-penuh { position:absolute; bottom:4px; left:50%; transform:translateX(-50%); background:rgba(0,0,0,0.6); color:#fff; padding:2px 16px; font-size:13px; border-radius:4px; white-space:nowrap; } .tombol-slide { position:absolute; top:50%; transform:translateY(-50%); background:rgba(0,0,0,0.4); color:#fff; border:none; width:28px; height:28px; border-radius:50%; font-size:12px; cursor:pointer; display:flex; align-items:center; justify-content:center; z-index:10; } .tombol-slide:hover {background:rgba(0,0,0,0.7);} .tombol-slide.kiri {left:8px;} .tombol-slide.kanan {right:8px;} /* === PRODUK === */ .judul-bagian { font-size:1.4rem; color:var(--hijau); margin:30px 0 18px; padding-bottom:8px; border-bottom:2px solid var(--emas); display:inline-block; } .produk-kisi { display: grid; grid-template-columns:repeat(auto-fill, minmax(220px,1fr)); gap:20px; } .produk-kartu { background:var(--putih); border-radius:10px; overflow:hidden; box-shadow:0 2px 8px rgba(0,0,0,.05); cursor:pointer; transition:.2s; } .produk-kartu:hover { transform:translateY(-4px); box-shadow:0 6px 16px rgba(0,0,0,.1); } .produk-gambar { height:180px; background:var(--abu-lembut); display:flex; align-items:center; justify-content:center; font-size:2.5rem; } .produk-gambar img {width:100%; height:100%; object-fit:cover;} .produk-isi {padding:16px;} .produk-nama {font-weight:600; margin-bottom:6px; color:var(--teks);} .produk-harga { color:var(--hijau); font-weight:bold; font-size:1.05rem; margin-bottom:10px; } .wishlist-ikon { border:none; background:none; font-size:1.2rem; cursor:pointer; color: var(--teks); } .wishlist-ikon.aktif {color:var(--merah);} /* === BLOG === */ .blog-kisi { display:grid; grid-template-columns:repeat(auto-fill, minmax(300px,1fr)); gap:20px; } .blog-kartu { background:var(--putih); border-radius:10px; overflow:hidden; box-shadow:0 2px 8px rgba(0,0,0,.05); } .blog-gambar { height:160px; background:var(--abu-lembut); display:flex; align-items:center; justify-content:center; font-size:2rem; } .blog-gambar img {width:100%; height:100%; object-fit:cover;} .blog-kategori { display:inline-block; background:var(--emas); color: #111; font-size:.85rem; padding:2px 10px; border-radius:20px; margin:10px 0 6px 10px; } .blog-judul {padding:0 10px; font-size:1.1rem; color:var(--teks);} .blog-isi {padding:10px; font-size:.95rem; color:var(--teks); opacity: 0.8;} .baca-selengkapnya { padding:10px; color:var(--hijau); display:inline-block; font-weight:500; } /* === PETA === */ .peta-bingkai { background:var(--putih); padding:20px; border-radius:10px; margin-bottom:40px; } /* === FOOTER === */ .footer { background:#2c2c2c; color:#ddd; padding:20px; text-align:center; margin-top:40px; } /* === PINTASAN NAVIGASI === */ .pintasan-nav { position: fixed !important; z-index: 9999 !important; background: var(--putih); box-shadow: 0 -2px 10px rgba(0,0,0,.1); border-radius: 16px; padding: 8px 4px; } .pintasan-item { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 2px; color: var(--teks); opacity: 0.8; text-decoration: none; padding: 6px 10px; border-radius: 8px; transition: all 0.2s; } .pintasan-item:hover { background: rgba(0,107,61,.08); color: var(--hijau); opacity: 1; } .pintasan-ikon { font-size: 20px; line-height: 1; } .pintasan-teks { font-size: 11px; } /* === TOMBOL SCROLL KE ATAS === */ .tombol-scroll-atas { position: fixed !important; z-index: 9998 !important; border: none; width: 44px; height: 44px; border-radius: 50%; background: var(--hijau); color: #fff; font-size: 18px; cursor: pointer; box-shadow: 0 3px 10px rgba(0,0,0,.2); display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: all 0.3s ease; } .tombol-scroll-atas.tampil { opacity: 1; visibility: visible; } .tombol-scroll-atas:hover { filter: brightness(.9); transform: scale(1.05); } /* Mode Gelap untuk Pintasan */ .mode-gelap .pintasan-nav { background: var(--putih); box-shadow: 0 -2px 10px rgba(0,0,0,.3); } .mode-gelap .pintasan-item { color: var(--teks); } .mode-gelap .pintasan-item:hover { background: rgba(0,158,87,.15); color: var(--hijau); } /* === RESPONSIF HP — PITA BAWAH TIDAK MENUTUPI NAVIGASI === */ @media (min-width: 769px) { .pintasan-nav { right: 16px; bottom: 24px; flex-direction: column; border-radius: 16px; padding: 10px 6px; } .tombol-scroll-atas { bottom: 24px; right: 24px; } } @media (max-width: 768px) { body { padding-bottom: 85px !important; /* ✅ Beri ruang bawah agar pita tidak tertutup navigasi */ } .pintasan-nav { position: fixed !important; bottom: 0 !important; left: 0 !important; right: 0 !important; display: flex !important; flex-direction: row !important; justify-content: space-around !important; align-items: center !important; border-radius: 16px 16px 0 0 !important; padding: 10px 4px !important; width: 100% !important; box-shadow: 0 -2px 10px rgba(0,0,0,.15) !important; } .pintasan-item { display: flex !important; flex-direction: column !important; padding: 6px 12px !important; gap: 4px !important; } .pintasan-ikon { font-size: 22px !important; } .pintasan-teks { font-size: 11px !important; } .tombol-scroll-atas { bottom: 90px; right: 16px; } /* ✅ Pita bawah di HP — beri jarak aman */ .pita-bawah { margin-bottom: 60px !important; position: relative !important; z-index: 1 !important; } } @media(max-width:900px){ .tata-letak {grid-template-columns:1fr;} .header-baris-atas {flex-direction:column; align-items:stretch;} .menu-atas {flex-direction:column; gap:12px;} .daftar-menu {justify-content:center;} .kotak-pencarian {width:100%; min-width:unset;} } /* === PERBAIKAN WARNA TEKS WISHLIST DI MODE GELAP === */ .wishlist-nama-toko, .wishlist-nama-produk, .wishlist-info, .wishlist-judul, .wishlist-total-label, .wishlist-subtotal-label, .wishlist-pesan-teks, .wishlist-breadcrumb, .wishlist-harga { color: var(--teks) !important; } .wishlist-harga-kanan, .wishlist-subtotal-nilai, .wishlist-total-nilai { color: #ff6b6b !important; } .wishlist-produk-baris, .wishlist-penjual-bungkus { border-color: var(--batas) !important; } /* === PERBAIKAN TEKS HALAMAN DETAIL PRODUK === */ .detail-kategori, .detail-nama, .detail-dilihat { color: var(--teks) !important; } .detail-harga { color: var(--hijau) !important; font-weight: bold; } .mode-gelap .detail-kategori, .mode-gelap .detail-nama, .mode-gelap .detail-dilihat { color: var(--teks) !important; } .mode-gelap .detail-harga { color: var(--hijau) !important; } /* === PERBAIKAN TEKS DI KARTU PRODUK KATALOG === */ .produk-nama a, .produk-nama { color: var(--teks) !important; text-decoration: none !important; } .produk-nama a:hover { color: var(--hijau) !important; } .produk-harga { color: var(--hijau) !important; font-weight: bold; } .produk-dilihat { color: var(--teks) !important; opacity: 0.75; } .mode-gelap .produk-nama a, .mode-gelap .produk-nama { color: var(--teks) !important; } .mode-gelap .produk-harga { color: var(--hijau) !important; } .mode-gelap .produk-dilihat { color: var(--teks) !important; opacity: 0.7; } /* === FOOTER SELALU DI BAWAH LAYAR === */ html, body { height: 100%; margin: 0; display: flex; flex-direction: column; } .tata-letak, .container { flex: 1; } .footer { background: var(--krem); color: var(--teks); padding: 18px 20px; text-align: center; margin-top: auto; border-top: 1px solid var(--batas); } .footer p { margin: 0; font-size: 14px; } /* === PITA MOTIF DI BAWAH FOOTER === */ .pita-bawah { margin-top: 0; border-top: none; border-bottom: none; } /* === PEMBATAS MOTIF HALAMAN BERANDA === */ .pembatas-motif { width: 100% !important; height: auto !important; margin: 0 !important; padding: 0 !important; line-height: 0 !important; display: block !important; background: transparent !important; visibility: visible !important; } .pembatas-motif img { width: 100% !important; height: auto !important; max-height: 50px !important; display: block !important; margin: 0 !important; padding: 0 !important; border: none !important; }