/* GelsinMagnet - DIY designer assets (separate layer) */
.gm-diy-nav{background:linear-gradient(135deg,#fff9f2,#fff);border-top:1px solid rgba(0,0,0,.04);border-bottom:1px solid rgba(0,0,0,.06)}
.gm-diy-nav__inner{display:flex;align-items:center;justify-content:center;min-height:46px}
.gm-diy-nav__link{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:#2b2b2b;text-decoration:none;padding:10px 0}
.gm-diy-nav__link:hover{color:#d97706}

/* Product designer */
.gm-personalizer-preview{position:absolute;inset:0;z-index:30 !important;pointer-events:none}
.main-image .swiper-container,.main-image .swiper-wrapper,.main-image .swiper-slide{position:relative;z-index:1}
.main-image .swiper-slide img{position:relative;z-index:1;background:transparent}
.main-image{position:relative}
.gm-preview-stage{position:absolute;inset:0;z-index:31;pointer-events:none}
.gm-preview-upload{display:none;position:absolute;overflow:hidden;align-items:center;justify-content:center;z-index:32;box-shadow:0 12px 28px rgba(0,0,0,.10);background:linear-gradient(135deg,#f8f8f8,#ececec)}
.gm-personalizer-preview.is-active .gm-preview-upload{display:flex}
.gm-preview-upload img{width:100%;height:100%;object-fit:cover;transform-origin:center center;max-width:none;max-height:none}
.gm-preview-slot-outline{position:absolute;border:1px dashed rgba(255,255,255,.55);box-shadow:0 0 0 1px rgba(17,24,39,.08) inset;z-index:33;opacity:.42}
.gm-preview-text{display:flex;opacity:0;visibility:hidden;position:absolute;z-index:40 !important;justify-content:center;align-items:center;text-align:center;pointer-events:none;min-height:1em}
.gm-personalizer-preview.has-name .gm-preview-name,.gm-personalizer-preview.has-age .gm-preview-age,.gm-personalizer-preview.has-date .gm-preview-date{opacity:1;visibility:visible}
.gm-preview-text span{display:block;width:100%;white-space:pre-line;word-break:break-word;text-shadow:0 2px 8px rgba(255,255,255,.75),0 0 1px rgba(0,0,0,.18)}
.gm-design-panel{margin:0 0 18px;padding:18px;border:1px solid #ececf2;border-radius:20px;background:linear-gradient(180deg,#ffffff 0%,#fbfbfd 100%);box-shadow:0 10px 32px rgba(18,26,52,.06)}
.gm-design-panel__title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;font-size:18px;font-weight:700;color:#1f2937}
.gm-design-panel__title small{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:12px;font-weight:700}
.gm-design-panel__desc{margin:0 0 14px;color:#5b6473;font-size:13px;line-height:1.55}
.gm-design-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.gm-design-grid--fields{margin-bottom:14px}
.gm-design-control,.gm-design-field{padding:12px;border-radius:14px;background:#fff;border:1px solid #eef0f6}
.gm-design-control label,.gm-design-field label{display:flex;justify-content:space-between;gap:12px;margin:0 0 8px;color:#30384a;font-size:13px;font-weight:700}
.gm-design-control input[type=range]{width:100%}
.gm-design-field input{width:100%;height:44px;border:1px solid #d9dfeb;border-radius:12px;padding:0 12px;color:#18202d}
.gm-design-field input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.10);outline:none}
.gm-design-status{margin-top:12px;padding:12px 14px;border-radius:14px;background:#f8fafc;border:1px dashed #d8deea;color:#475569;font-size:13px;line-height:1.55}
.gm-design-status strong{color:#111827}
.gm-design-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:999px;background:#f5f7fb;border:1px solid #e3e9f5;color:#41506a;font-size:12px;font-weight:700;margin-bottom:12px}
.product-option-file .btn,.gm-design-panel .btn{border-radius:14px}

/* Category page */
.gm-diy-intro{margin:8px 0 18px;padding:18px 20px;border-radius:18px;background:linear-gradient(135deg,#fff8f3,#fff);box-shadow:0 14px 36px rgba(17,24,39,.08);display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
.gm-diy-intro__title{font-size:24px;font-weight:800;color:#2a2a2a;margin:0}
.gm-diy-intro__text{margin:6px 0 0;color:#666;max-width:820px;line-height:1.55}
.gm-diy-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin:0 0 18px;padding:14px 16px;border:1px solid rgba(17,24,39,.08);border-radius:16px;background:#fff;box-shadow:0 12px 28px rgba(17,24,39,.05)}
.gm-diy-toolbar__left{display:flex;flex-wrap:wrap;gap:10px;align-items:center;flex:1 1 560px}
.gm-diy-search{position:relative;flex:1 1 320px}
.gm-diy-search input{width:100%;height:46px;border:1px solid #e6e6e6;border-radius:14px;padding:0 16px 0 42px;font-size:14px;outline:none;transition:.2s ease;box-shadow:none}
.gm-diy-search input:focus{border-color:#f29100;box-shadow:0 0 0 4px rgba(242,145,0,.12)}
.gm-diy-search:before{content:'\f002';font-family:FontAwesome;position:absolute;left:15px;top:50%;transform:translateY(-50%);color:#9aa0a6}
.gm-diy-chip{height:42px;padding:0 16px;border:1px solid #ececec;background:#fff;border-radius:999px;font-weight:700;color:#444;cursor:pointer;transition:.2s ease}
.gm-diy-chip.is-active,.gm-diy-chip:hover{background:#2a2a2a;color:#fff;border-color:#2a2a2a}
.gm-diy-toolbar__meta{display:flex;gap:12px;align-items:center;color:#666;font-size:13px}
.gm-diy-result-badge{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 10px;border-radius:999px;background:#fff3e0;color:#9c5c00;font-weight:800}
.gm-diy-empty{display:none;margin:14px 0 4px;padding:18px;border:1px dashed #e3c8a1;border-radius:16px;background:#fffaf4;color:#7a5d36;font-weight:600;text-align:center}
.gm-diy-empty.is-active{display:block}
.gm-diy-card .image{position:relative}
.gm-template-preview-badge{position:absolute;right:10px;bottom:10px;z-index:3;display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:rgba(17,24,39,.78);color:#fff;font-size:12px;font-weight:700;backdrop-filter:blur(4px)}
.gm-template-preview-thumb{position:absolute;left:10px;bottom:10px;z-index:3;width:58px;height:58px;border-radius:12px;overflow:hidden;border:2px solid rgba(255,255,255,.92);box-shadow:0 10px 24px rgba(0,0,0,.18);background:#fff}
.gm-template-preview-thumb img{width:100%;height:100%;object-fit:cover}
@media (max-width:768px){
  .gm-design-grid{grid-template-columns:1fr}
  .gm-design-panel{padding:14px}
  .gm-diy-intro{padding:16px}
  .gm-diy-intro__title{font-size:20px}
  .gm-diy-toolbar{padding:12px}
  .gm-diy-toolbar__left{flex-basis:100%}
  .gm-diy-toolbar__meta{width:100%;justify-content:space-between}
}

/* DIY page specific */
.gm-diy-enabled .main-image .swiper-slide{cursor:default;}
.gm-diy-enabled .main-image .swiper-slide[data-gallery]{pointer-events:none;}
.gm-diy-enabled .lightgallery-product-images{display:none !important;}
.gm-preview-guides{display:none !important;}
.gm-upload-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.gm-upload-btn{display:inline-flex;align-items:center;justify-content:center;height:42px;padding:0 18px;border-radius:12px;background:#2563eb;color:#fff;font-weight:700;cursor:pointer;box-shadow:0 8px 20px rgba(37,99,235,.16);}
.gm-upload-btn:hover{background:#1d4ed8;color:#fff;}
#gm-local-upload{position:absolute;left:-9999px;opacity:0;pointer-events:none;}
.gm-upload-name{font-size:13px;color:#6b7280;}

.gm-diy-enabled .zm-viewer,
.gm-diy-enabled .zm-handler{display:none !important;opacity:0 !important;visibility:hidden !important;}
.gm-diy-enabled .main-image img{pointer-events:none;cursor:default !important;}
.gm-diy-enabled .main-image .swiper-slide{cursor:default !important;}
