.category-filter-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;color:#1f2d3d}.category-filter-title span{font-size:12px;color:#748297}.category-filter-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.category-filter-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid #d9e2ed;border-radius:9px;background:#fff;color:#334155;text-decoration:none;font-weight:700;font-size:13px;transition:.15s}.category-filter-btn:hover{border-color:#1264df;color:#1264df}.category-filter-btn.active{background:#1264df;color:#fff;border-color:#1264df}.category-filter-btn span{min-width:22px;text-align:center;padding:2px 6px;border-radius:999px;background:#eef3f9;color:#52637a;font-size:11px}.category-filter-btn.active span{background:rgba(255,255,255,.2);color:#fff}@media(max-width:600px){.category-filter-title{display:block}.category-filter-title span{display:block;margin-top:4px}.category-filter-btn{flex:1;justify-content:center;min-width:130px}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#16243a;background:#f7f9fc}.container{width:min(1180px,92%);margin:auto}.topbar{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid #e6ebf2}.nav{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#16243a}.brand-logo{display:grid;place-items:center;width:43px;height:43px;background:linear-gradient(135deg,#0969ff,#23ad62);border-radius:12px;color:#fff;font-weight:900}.brand b,.brand small{display:block}.brand small{font-size:11px;color:#6c7889;margin-top:2px}nav{display:flex;gap:24px;align-items:center}nav a{text-decoration:none;color:#263b57;font-weight:700;font-size:14px}.admin-link{padding:9px 13px;background:#eff5ff;border-radius:9px}.hero{background:linear-gradient(125deg,#061c3b,#0b58bd);padding:72px 0;color:#fff}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:40px}.pill{display:inline-block;padding:8px 12px;border-radius:20px;border:1px solid #ffffff44;background:#ffffff12;font-size:12px;font-weight:800}.hero h1{font-size:clamp(38px,5vw,62px);line-height:1.05;margin:18px 0}.hero h1 span{color:#ffd228}.hero p{font-size:18px;color:#d9e7fb;line-height:1.6}.btn{display:inline-block;border:0;border-radius:10px;padding:12px 17px;text-decoration:none;font-weight:800;cursor:pointer;font-size:14px}.btn-yellow{background:#ffd228;color:#16243a}.btn-outline{color:#fff;border:1px solid #ffffff66;margin-left:8px}.btn-blue{background:#1264df;color:#fff}.btn-light{background:#edf2f7;color:#22344d}.hero-icons{height:280px;position:relative}.hero-icons div{position:absolute;display:grid;place-items:center;background:#fff;border-radius:24px;box-shadow:0 18px 40px #0003;font-size:70px}.hero-icons div:nth-child(1){width:155px;height:155px;left:0;top:35px;transform:rotate(-7deg)}.hero-icons div:nth-child(2){width:165px;height:170px;right:0;top:5px;transform:rotate(6deg)}.hero-icons div:nth-child(3){width:120px;height:120px;left:115px;bottom:0}.hero-icons div:nth-child(4){width:130px;height:120px;right:95px;bottom:-5px;transform:rotate(-4deg)}.category-section{padding:46px 0 12px}.category-section h2,.catalog h2{margin:0 0 17px;font-size:28px}.category-row{display:flex;gap:10px;flex-wrap:wrap}.category-row a{padding:10px 14px;background:#fff;border:1px solid #dce5f1;border-radius:10px;color:#273a53;text-decoration:none;font-weight:700}.category-row a.active{background:#1264df;color:#fff;border-color:#1264df}.catalog{padding:38px 0 60px}.catalog-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.catalog-head p{margin:0;color:#738196}.search-form{display:flex;gap:9px}.search-form input{min-width:260px;padding:12px 14px;border:1px solid #d8e1ed;border-radius:9px}.products{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;box-shadow:0 5px 16px #1b2c4208}.product-img{height:200px;background:#edf4ff;position:relative}.product-img img{width:100%;height:100%;object-fit:cover}.placeholder{width:100%;height:100%;display:grid;place-items:center;font-size:70px;color:#91a2ba}.placeholder small{font-size:11px;position:absolute;bottom:12px;background:#ffffffd9;padding:5px 8px;border-radius:7px}.featured{position:absolute;top:10px;left:10px;background:#ffd228;padding:6px 8px;border-radius:7px;font-size:11px;font-weight:800}.product-body{padding:16px}.cat-label{font-size:11px;font-weight:800;color:#1264df}.product-body h3{margin:7px 0;font-size:18px}.product-body p{color:#6b788b;font-size:13px;line-height:1.45;min-height:39px}.price{font-size:20px;font-weight:900;color:#125dcc;margin:13px 0}.price small{font-size:12px;color:#738196}.wa-btn{display:block;text-align:center;background:#18a64a;color:#fff;text-decoration:none;font-weight:800;padding:11px;border-radius:9px}.wa-btn.big{padding:13px 18px}.empty{grid-column:1/-1;background:#fff;border-radius:15px;padding:35px;text-align:center}.contact{background:#0a2a52;color:#fff;padding:48px 0}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.contact h2{margin:0 0 8px}.contact p{margin:0;color:#d3e2f4}footer{padding:24px 0;background:#071a32;color:#d8e2ee}.footer-inner{display:flex;justify-content:space-between;align-items:center}.footer-inner small{display:block;color:#8fa1b7;margin-top:5px}

/* ADMIN */
.admin-body{background:#f1f4f8}.sidebar{position:fixed;left:0;top:0;bottom:0;width:235px;background:#0b2343;padding:24px 16px;color:white}.side-brand{color:white;margin-bottom:25px}.sidebar>a{display:block;color:#d9e6f6;text-decoration:none;padding:12px 13px;border-radius:9px;margin:5px 0;font-weight:700}.sidebar>a:hover{background:#153963}.admin-main{margin-left:235px;padding:30px;max-width:1500px}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.admin-top h1{margin:0}.admin-top p{margin:6px 0 0;color:#76859a}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px}.stats>div{background:#fff;border-radius:14px;padding:22px;border:1px solid #e0e7f0}.stats b{display:block;font-size:34px;color:#1264df}.stats span{color:#748297}.panel{background:#fff;border:1px solid #e0e7f0;border-radius:15px;padding:20px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:13px 11px;border-bottom:1px solid #e9eef4;text-align:left;font-size:14px}th{background:#f8fafc;color:#52637a}.thumb{width:52px;height:52px;object-fit:cover;border-radius:8px}.actions{white-space:nowrap}.actions a{margin-right:10px}.danger-link{color:#d73737;text-decoration:none}.alert{padding:12px 14px;border-radius:10px;margin-bottom:16px}.alert.success{background:#e9f9ef;color:#137638}.alert.danger{background:#fdecec;color:#a92d2d}.form-panel{max-width:900px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label,.form-stack label{display:block;font-weight:700;font-size:13px}.form-grid input,.form-grid select,.form-grid textarea,.form-stack input,.inline-form input{width:100%;padding:11px 12px;border:1px solid #d9e2ed;border-radius:8px;margin-top:7px;font:inherit}.full-span{grid-column:1/-1}.check{display:flex!important;align-items:center;gap:8px}.check input{width:auto!important;margin:0!important}.preview-img{max-width:220px;border-radius:10px}.form-actions{display:flex;gap:9px}.login-card{width:min(420px,92%);margin:8vh auto;background:#fff;padding:28px;border-radius:16px;border:1px solid #e0e7f0;box-shadow:0 15px 50px #23395616}.center{justify-content:center}.login-card h2{text-align:center}.form-stack{display:grid;gap:15px}.full{width:100%}.back-link{display:block;text-align:center;margin-top:18px;color:#45607f;text-decoration:none}.inline-form{display:flex;gap:10px;margin-bottom:18px}.inline-form input{margin:0}.form-grid small{display:block;color:#7a8798;margin-top:6px}

@media(max-width:950px){.products{grid-template-columns:repeat(3,1fr)}.hero-grid{grid-template-columns:1fr}.hero-icons{display:none}.sidebar{position:static;width:100%;display:flex;gap:7px;align-items:center;overflow:auto}.sidebar .side-brand{margin:0 15px 0 0}.sidebar>a{white-space:nowrap}.admin-main{margin-left:0;padding:20px}.stats{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:700px){nav{display:none}.products{grid-template-columns:repeat(2,1fr)}.catalog-head,.contact-inner,.footer-inner{align-items:stretch;flex-direction:column}.search-form{flex-direction:column}.search-form input{min-width:0}.stats{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.full-span{grid-column:auto}.admin-top{align-items:stretch;flex-direction:column}.sidebar{display:block}.sidebar .side-brand{margin-bottom:12px}.sidebar>a{display:inline-block}.inline-form{flex-direction:column}}
@media(max-width:450px){.products{grid-template-columns:1fr}}.send-file-link{padding:10px 14px!important;background:#18a64a!important;color:#fff!important;border-color:#18a64a!important}.file-page{padding:55px 0 70px;min-height:calc(100vh - 160px)}.file-card{max-width:760px;margin:auto;background:#fff;border:1px solid #e0e7f0;border-radius:18px;padding:30px;box-shadow:0 10px 35px #23395610}.file-card h1{margin:14px 0 8px;font-size:34px}.file-card>p{color:#6d7b8f;line-height:1.6;margin-bottom:25px}.blue-pill{color:#1264df!important;border-color:#1264df!important;background:#edf4ff!important}.form-stack select,.form-stack textarea,.form-stack input[type=text],.form-stack input[type=number],.form-stack input[type=file]{width:100%;padding:12px;border:1px solid #d9e2ed;border-radius:9px;margin-top:7px;font:inherit;background:#fff}.form-stack textarea{resize:vertical}.form-stack small{display:block;color:#7a8798;margin-top:6px}.file-card .alert{display:flex;align-items:center;gap:12px;flex-wrap:wrap}

.gallery-main{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.gallery-main img{display:block}.gallery-dots{position:absolute;right:10px;bottom:10px;background:#000b;color:#fff;border-radius:8px;padding:6px 9px;font-size:11px;font-weight:700}.lightbox{display:none;position:fixed;inset:0;background:#000d;z-index:1000;align-items:center;justify-content:center;padding:55px}.lightbox.show{display:flex}.lightbox img{max-width:92vw;max-height:84vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px #0008}.lightbox-close,.lightbox-nav{position:absolute;border:0;background:#ffffff22;color:#fff;cursor:pointer;border-radius:50%;width:44px;height:44px;font-size:30px}.lightbox-close{right:22px;top:18px}.lightbox-nav{top:50%;transform:translateY(-50%);font-size:26px}.lightbox-nav.prev{left:22px}.lightbox-nav.next{right:22px}.lightbox-count{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);color:#fff;background:#0008;padding:7px 12px;border-radius:20px;font-weight:700;font-size:12px}.admin-gallery{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px}.admin-gallery>div{display:flex;flex-direction:column;gap:7px}.admin-gallery .preview-img{width:150px;height:110px;object-fit:cover}

/* PRODUCT IMAGE GALLERY - CLICK + SWIPE */
.product-gallery{position:relative;width:100%;height:100%;touch-action:pan-y;overflow:hidden}
.product-gallery .gallery-main{position:relative;width:100%;height:100%;z-index:1}
.product-gallery .gallery-main img{user-select:none;-webkit-user-drag:none}
.card-gallery-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:38px;height:38px;border:0;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:22px;line-height:38px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.95}
.card-gallery-btn:hover{background:rgba(0,0,0,.8)}
.card-prev{left:9px}.card-next{right:9px}
.gallery-dots{z-index:4;pointer-events:none}.gallery-main{cursor:zoom-in}
.lightbox{touch-action:none}
.lightbox img{user-select:none;-webkit-user-drag:none}
@media(max-width:600px){.card-gallery-btn{width:34px;height:34px;font-size:19px}.lightbox{padding:45px 10px}.lightbox img{max-width:96vw;max-height:78vh}.lightbox-nav{width:40px;height:40px}.lightbox-nav.prev{left:8px}.lightbox-nav.next{right:8px}}

/* FILTER PRODUK ADMIN */
.product-filter-panel{margin-bottom:18px}.product-filter{display:grid;grid-template-columns:minmax(220px,1.8fr) repeat(3,minmax(150px,1fr)) auto;gap:12px;align-items:end}.filter-field label{display:block;font-size:12px;font-weight:800;color:#52637a;margin-bottom:6px}.filter-field input,.filter-field select{width:100%;padding:11px 12px;border:1px solid #d9e2ed;border-radius:8px;background:#fff;font:inherit}.filter-actions{display:flex;gap:8px}.filter-actions .btn{white-space:nowrap}.filter-result{margin-top:13px;font-size:13px;color:#748297}.filter-result b{color:#1264df}@media(max-width:1050px){.product-filter{grid-template-columns:1fr 1fr}.filter-search{grid-column:1/-1}}@media(max-width:600px){.product-filter{grid-template-columns:1fr}.filter-search{grid-column:auto}.filter-actions{width:100%}.filter-actions .btn{flex:1;text-align:center}}
