:root {
  --pdp-ink: #182235;
  --pdp-muted: #697489;
  --pdp-line: #e5e8ef;
  --pdp-page: #f7f8fb;
  --pdp-surface: #ffffff;
  --pdp-accent: #4657bd;
  --pdp-accent-deep: #303f98;
  --pdp-accent-soft: #eef0ff;
  --pdp-success: #2b7a61;
  --pdp-radius: 22px;
}
.product-page { padding: 30px 0 70px; background: var(--pdp-page); color: var(--pdp-ink); }
.product-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin: 0 0 20px; color:#8490a2; font-size:.84rem; font-weight:600; }
.product-breadcrumb a { color:#5c6779; text-decoration:none; transition:color .2s ease; }
.product-breadcrumb a:hover { color:var(--pdp-accent); }
.product-breadcrumb i { color:#b3bac6; font-size:.64rem; }
.product-shell { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(370px,.92fr); gap:clamp(28px,4vw,58px); align-items:start; }
.product-gallery { min-width:0; }
.pdp-gallery-stage { position:relative; }
.product-main-frame { min-height:600px; display:flex; align-items:center; justify-content:center; overflow:hidden; background:linear-gradient(145deg,#f1f2f5,#fbfbfc 54%,#edeeef); border:1px solid rgba(227,230,237,.9); border-radius:var(--pdp-radius); }
.product-main-frame img { width:100%; height:100%; max-height:680px; object-fit:contain; mix-blend-mode:multiply; transition:transform .45s ease; }
.pdp-gallery-stage:hover .product-main-frame img { transform:scale(1.018); }
.pdp-sale-badge { position:absolute; z-index:2; top:16px; left:16px; padding:7px 11px; border-radius:999px; background:#202c4a; color:#fff; font-size:.72rem; font-weight:800; letter-spacing:.03em; box-shadow:0 7px 16px rgba(22,31,57,.14); }
.pdp-image-zoom { position:absolute; z-index:2; top:14px; right:14px; width:40px; height:40px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.72); border-radius:50%; color:#34415d; background:rgba(255,255,255,.88); backdrop-filter:blur(8px); transition:transform .2s ease,background .2s ease; }
.pdp-image-zoom:hover { transform:scale(1.05); background:#fff; }
.product-thumbnails { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.product-thumb-button { width:72px; height:72px; padding:0; overflow:hidden; border:1px solid #e2e5eb; border-radius:13px; background:#f4f5f7; cursor:pointer; transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.product-thumb-button:hover { transform:translateY(-2px); border-color:#aab4d1; }
.product-thumb-button.active { border:2px solid var(--pdp-accent); box-shadow:0 0 0 3px rgba(70,87,189,.11); }
.product-thumb-button img { width:100%; height:100%; object-fit:cover; }
.product-information { position:sticky; top:22px; padding:4px 0; }
.pdp-topline { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.pdp-collection, .product-brand { color:var(--pdp-accent); text-transform:uppercase; letter-spacing:.12em; font-size:.69rem; font-weight:850; }
.pdp-save-button { width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--pdp-line); border-radius:50%; color:#49546a; background:#fff; transition:color .2s ease,border-color .2s ease,transform .2s ease; }
.pdp-save-button:hover { transform:translateY(-2px); color:#b34c69; border-color:#d8b6c0; }
.product-name { margin:0; max-width:720px; color:var(--pdp-ink); font-size:clamp(2rem,3.2vw,3.15rem); line-height:1.09; letter-spacing:-.055em; font-weight:800; }
.product-meta { display:flex; align-items:center; flex-wrap:wrap; gap:9px; margin:17px 0 0; color:var(--pdp-muted); font-size:.84rem; }
.pdp-meta-dot { width:4px; height:4px; border-radius:50%; background:#b7bfcc; }
.product-rating { color:#8c6c16; font-weight:750; }
.product-stock { display:inline-flex; align-items:center; padding:5px 9px; border-radius:999px; font-weight:750; }
.product-stock.in { color:#20664f; background:#eaf6f0; }
.product-stock.out { color:#9d3f4e; background:#fdeff1; }
.pdp-sku { color:#929aaa; }
.product-price-row { display:flex; align-items:baseline; flex-wrap:wrap; gap:12px; margin:27px 0 19px; padding-top:22px; border-top:1px solid var(--pdp-line); }
.product-price { color:#19233b; font-size:clamp(1.75rem,2.6vw,2.25rem); letter-spacing:-.045em; font-weight:850; }
.product-old-price { color:#9ba4b2; font-size:1rem; text-decoration:line-through; }
.product-discount { color:#3950a5; background:var(--pdp-accent-soft); border-radius:999px; padding:5px 9px; font-size:.72rem; font-weight:800; }
.product-description { max-width:620px; margin:0; color:#596477; line-height:1.72; font-size:.95rem; }
.product-option { margin-top:25px; }
.product-option-label { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; color:#303c54; font-size:.91rem; font-weight:800; }
.product-option-label strong { color:#697489; font-weight:650; }
.product-color-list,.product-size-list { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.product-color { width:34px; height:34px; border:2px solid rgba(42,52,72,.12); border-radius:50%; box-shadow:inset 0 0 0 3px rgba(255,255,255,.78); cursor:pointer; transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.product-color:hover { transform:scale(1.08); }
.product-color.active { border-color:var(--pdp-accent); box-shadow:0 0 0 3px rgba(70,87,189,.17),inset 0 0 0 3px rgba(255,255,255,.8); }
.product-color.disabled { opacity:.32; cursor:not-allowed; }
.product-size { min-width:52px; min-height:42px; padding:8px 12px; border:1px solid #dfe3eb; border-radius:11px; color:#3f4b62; background:#fff; font-size:.85rem; font-weight:750; transition:all .2s ease; }
.product-size:hover:not(.disabled) { border-color:#aab4d1; color:var(--pdp-accent); }
.product-size.active { border-color:var(--pdp-accent); background:var(--pdp-accent); color:#fff; box-shadow:0 7px 15px rgba(70,87,189,.18); }
.product-size.disabled { opacity:.34; text-decoration:line-through; cursor:not-allowed; }
.product-selection-message { display:block; margin-top:10px; color:#788398; font-size:.8rem; }
.pdp-size-link { padding:0; border:0; background:transparent; color:var(--pdp-accent); font-size:.8rem; font-weight:750; }
.product-actions { display:flex; gap:12px; margin-top:28px; }
.pdp-quantity-picker { display:grid; grid-template-columns:38px 50px 38px; align-items:center; height:52px; overflow:hidden; border:1px solid #dfe3eb; border-radius:13px; background:#fff; }
.pdp-quantity-picker button { height:100%; border:0; background:#fff; color:#3e4a62; font-size:1.18rem; }
.pdp-quantity-picker button:hover { background:#f3f5fb; color:var(--pdp-accent); }
.pdp-quantity-picker input { width:100%; border:0; outline:0; text-align:center; color:#26334e; font-weight:800; -moz-appearance:textfield; }
.pdp-quantity-picker input::-webkit-inner-spin-button,.pdp-quantity-picker input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.product-add-button { min-height:52px; flex:1; display:flex; align-items:center; justify-content:center; gap:10px; border:1px solid var(--pdp-accent); border-radius:13px; color:#fff; background:var(--pdp-accent); font-weight:800; letter-spacing:.005em; transition:transform .2s ease,background .2s ease,box-shadow .2s ease; }
.product-add-button:hover:not(:disabled) { transform:translateY(-2px); color:#fff; background:var(--pdp-accent-deep); box-shadow:0 12px 22px rgba(48,63,152,.23); }
.product-add-button:disabled { opacity:.48; cursor:not-allowed; }
.pdp-stock-note { display:flex; gap:10px; align-items:flex-start; margin-top:16px; padding:12px 13px; border:1px solid #eed5d9; border-radius:12px; color:#8c4050; background:#fff7f8; font-size:.84rem; line-height:1.5; }
.product-trust { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:26px; padding-top:21px; border-top:1px solid var(--pdp-line); }
.product-trust-item { display:flex; align-items:flex-start; gap:9px; color:#48546c; font-size:.79rem; line-height:1.3; }
.product-trust-item>i { display:grid; flex:0 0 auto; place-items:center; width:30px; height:30px; border-radius:10px; color:#4053af; background:#eff1ff; font-size:.78rem; }
.product-trust-item span { display:grid; gap:2px; }
.product-trust-item strong { color:#344057; font-size:.78rem; }
.product-trust-item small { color:#818b9b; font-size:.72rem; }
.pdp-detail-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:18px; margin-top:46px; }
.pdp-detail-card { padding:28px; border:1px solid var(--pdp-line); border-radius:var(--pdp-radius); background:#fff; }
.pdp-section-kicker { display:block; margin-bottom:8px; color:#7e8cab; font-size:.69rem; font-weight:850; letter-spacing:.13em; }
.pdp-detail-card h2 { margin:0 0 15px; color:#202b42; font-size:1.25rem; font-weight:800; letter-spacing:-.03em; }
.pdp-rich-text { color:#5c6677; line-height:1.85; white-space:pre-line; }
.pdp-facts { display:grid; gap:14px; padding:0; margin:0; list-style:none; }
.pdp-facts li { display:flex; gap:10px; color:#5a6577; line-height:1.55; font-size:.9rem; }
.pdp-facts i { margin-top:4px; color:#3e8a70; }
.product-details-section { margin-top:42px; }
.product-section-card { padding:28px; border:1px solid var(--pdp-line); border-radius:var(--pdp-radius); background:#fff; }
.product-section-card h2 { color:#202b42; font-size:1.28rem; font-weight:800; }
.related-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.related-card { display:block; padding:10px; border:1px solid #e7e9ee; border-radius:15px; color:#26334e; background:#fff; text-decoration:none; transition:transform .2s ease,box-shadow .2s ease; }
.related-card:hover { color:#26334e; transform:translateY(-3px); box-shadow:0 14px 25px rgba(25,35,61,.09); }
.related-card img { width:100%; aspect-ratio:1/1; border-radius:10px; object-fit:contain; background:#f4f5f7; }
.related-card strong { display:block; min-height:37px; margin-top:10px; font-size:.85rem; line-height:1.4; }
.related-card span { display:block; margin-top:7px; color:var(--pdp-accent); font-size:.88rem; font-weight:850; }
.review-item { padding:18px 0; border-bottom:1px solid var(--pdp-line); }
.review-item:last-child { border-bottom:0; }
.review-heading { display:flex; justify-content:space-between; gap:12px; color:#35415a; }
.review-score { color:#977014; font-weight:800; }
.size-guide-trigger { width:100%; display:flex; align-items:center; gap:12px; margin-top:20px; padding:14px 16px; border:1px solid #e1e5ee; border-radius:14px; color:#29354d; background:#fbfbfd; text-align:left; transition:background .2s ease,border-color .2s ease; }
.size-guide-trigger:hover { border-color:#abb4d2; background:#fff; }
.size-guide-trigger>i:first-child { display:grid; place-items:center; width:36px; height:36px; border-radius:10px; color:var(--pdp-accent); background:#eef0ff; }
.size-guide-trigger span { display:grid; gap:2px; }
.size-guide-trigger small { color:#738096; }
.size-guide-modal { overflow:hidden; border:0; border-radius:22px; }
.size-guide-modal .modal-header { padding:22px 24px; border-bottom:1px solid var(--pdp-line); }
.size-guide-modal .modal-body { padding:24px; }
.size-guide-kicker { display:block; margin-bottom:4px; color:#7a88a8; font-size:.7rem; font-weight:850; letter-spacing:.13em; }
.size-guide-description { color:#5c6677; line-height:1.7; }
.pdp-image-modal { position:relative; overflow:hidden; border:0; border-radius:22px; background:#f4f4f6; }
.pdp-image-modal img { display:block; width:100%; max-height:85vh; object-fit:contain; }
.pdp-modal-close { position:absolute; z-index:2; top:16px; right:16px; padding:10px; border-radius:50%; background:rgba(255,255,255,.9); }
.pdp-empty-state { max-width:540px; margin:30px auto; padding:52px 28px; border:1px dashed #cbd1df; border-radius:24px; background:#fff; text-align:center; }
.pdp-empty-state i { display:grid; place-items:center; width:58px; height:58px; margin:0 auto 16px; border-radius:18px; color:#4b5db9; background:#eff1ff; font-size:1.35rem; }
.pdp-empty-state h1 { color:#24314b; font-size:1.5rem; font-weight:800; }
.pdp-empty-state p { color:#6c7688; }
@media (max-width: 991px) { .product-shell { grid-template-columns:1fr; gap:24px; } .product-information { position:static; } .product-main-frame { min-height:460px; } .pdp-detail-grid { grid-template-columns:1fr; } .related-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width: 575px) { .product-page { padding:16px 0 48px; } .product-breadcrumb { margin-bottom:14px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; flex-wrap:nowrap; } .product-main-frame { min-height:350px; border-radius:17px; } .product-thumb-button { width:58px; height:58px; border-radius:11px; } .product-thumbnails { gap:8px; } .product-name { font-size:2rem; } .product-actions { gap:9px; } .pdp-quantity-picker { grid-template-columns:34px 42px 34px; height:50px; } .product-add-button { min-height:50px; } .product-trust { grid-template-columns:1fr; gap:13px; } .pdp-detail-grid,.product-details-section { margin-top:28px; } .pdp-detail-card,.product-section-card { padding:21px 18px; border-radius:17px; } .related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; } }
