/* ==========================================================================
   SkyLustr — inner pages: archive & filters, single product, story gallery,
   blog, cart / checkout / account, generic WooCommerce forms.
   ========================================================================== */

/* ---------- Breadcrumb & page head ---------- */
.sky-wc { padding-top: 18px; }
.sky-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 13px; color: var(--muted); margin-bottom: 14px; padding: 8px 14px; background: var(--bg); border-radius: 14px; width: fit-content; max-width: 100%; }
.sky-breadcrumb a { color: var(--text); font-weight: 700; }
.sky-breadcrumb a:hover { color: var(--sky-primary); }
.sky-breadcrumb__sep { width: 14px; height: 14px; opacity: .5; }
.sky-breadcrumb__home { width: 16px; height: 16px; color: var(--sky-primary); }
.sky-pagehead { padding: 22px 0 14px; }
.sky-pagehead__title { font-size: clamp(22px, 1vw + 16px, 30px); font-weight: 900; color: var(--ink); margin: 0 0 6px; }
.sky-pagehead__desc { color: var(--text); font-size: 14px; max-width: 900px; }

/* ---------- Archive ---------- */
.sky-arc .sky-cats { padding-block: 6px 18px; }
.sky-arc .sky-cats .sky-container { padding: 0; }
.sky-arc__head { display: flex; align-items: center; gap: 12px; margin: 4px 0 16px; }
.sky-arc__title { margin: 0; font-size: clamp(20px, 1vw + 14px, 28px); font-weight: 900; }
.sky-arc__count { padding: 3px 12px; border-radius: 10px; background: var(--p-50); color: var(--sky-primary); font-weight: 800; font-size: 13px; }
.sky-shop { display: grid; grid-template-columns: 290px minmax(0, 1fr); gap: 24px; align-items: start; }
.sky-shop--full { grid-template-columns: 1fr; }
.sky-shop__side { position: sticky; top: calc(var(--sticky-top) + 16px); max-height: calc(100vh - var(--sticky-top) - 32px); overflow: auto; scrollbar-width: thin; border-radius: var(--r-lg); }
.sky-shop__overlay, .sky-shop__close { display: none; }
.sky-filters { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 6px 16px 16px; }
.sky-filters__head { display: flex; align-items: center; justify-content: space-between; padding: 12px 0; border-bottom: 1px solid var(--line); position: sticky; top: 0; background: #fff; z-index: 2; }
.sky-filters__head > span { display: flex; align-items: center; gap: 8px; font-weight: 900; color: var(--ink); }
.sky-filters__head .sky-i { width: 20px; height: 20px; color: var(--sky-primary); }
.sky-filter { border-bottom: 1px solid var(--line); padding: 4px 0; }
.sky-filter summary { list-style: none; display: flex; align-items: center; justify-content: space-between; padding: 12px 0; cursor: pointer; font-weight: 800; color: var(--ink); font-size: 14px; }
.sky-filter summary::-webkit-details-marker { display: none; }
.sky-filter summary .sky-i { width: 18px; height: 18px; color: var(--muted); transition: transform .2s; }
.sky-filter[open] summary .sky-i { transform: rotate(180deg); }
.sky-filter__list { display: flex; flex-direction: column; gap: 8px; padding-bottom: 12px; max-height: 260px; overflow: auto; scrollbar-width: thin; }
.sky-filter__list .sky-check { justify-content: flex-start; }
.sky-filter__list .sky-check small { margin-right: auto; font-size: 11.5px; color: var(--muted); background: var(--bg); padding: 0 8px; border-radius: 8px; }
.sky-filter__list--pills, .sky-filter__list--colors { flex-direction: row; flex-wrap: wrap; gap: 8px; }
.sky-pill-check, .sky-cpick { position: relative; cursor: pointer; }
.sky-pill-check input, .sky-cpick input { position: absolute; opacity: 0; pointer-events: none; }
.sky-pill-check span { display: inline-flex; align-items: center; height: 36px; padding: 0 14px; border-radius: 12px; border: 1.5px solid var(--line); font-size: 13px; font-weight: 700; transition: all .2s; }
.sky-pill-check input:checked + span { border-color: var(--sky-primary); background: var(--p-50); color: var(--sky-primary); }
.sky-cpick { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px 4px 4px; border-radius: 99px; border: 1.5px solid var(--line); font-size: 12.5px; font-weight: 700; transition: border-color .2s; }
.sky-cpick i { width: 24px; height: 24px; border-radius: 50%; background: var(--c); box-shadow: inset 0 0 0 1px rgba(0,0,0,.15); }
.sky-cpick:has(input:checked) { border-color: var(--sky-primary); background: var(--p-50); color: var(--sky-primary); }
.sky-filter--toggles { display: grid; gap: 4px; padding: 10px 0; }
.sky-toggle { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 0; cursor: pointer; font-weight: 700; font-size: 13.5px; color: var(--ink); }
.sky-toggle span { display: inline-flex; align-items: center; gap: 8px; }
.sky-toggle span .sky-i { width: 18px; height: 18px; color: var(--sky-primary); }
.sky-toggle input { position: absolute; opacity: 0; pointer-events: none; }
.sky-toggle i { position: relative; width: 42px; height: 24px; border-radius: 99px; background: #d6dce6; transition: background .2s; flex: none; }
.sky-toggle i::after { content: ""; position: absolute; top: 3px; right: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 2px 4px rgba(0,0,0,.2); transition: transform .2s var(--ease); }
.sky-toggle input:checked + i { background: var(--sky-primary); }
.sky-toggle input:checked + i::after { transform: translateX(-18px); }
.sky-range { padding: 6px 4px 14px; }
.sky-range__track { position: relative; height: 26px; }
.sky-range__track > i { position: absolute; top: 11px; height: 4px; border-radius: 4px; background: var(--sky-primary); right: var(--from, 0%); left: var(--to, 0%); }
.sky-range__track::before { content: ""; position: absolute; inset: 11px 0 auto; height: 4px; border-radius: 4px; background: var(--line); }
.sky-range input[type=range] { position: absolute; inset: 0; width: 100%; margin: 0; background: none; pointer-events: none; -webkit-appearance: none; appearance: none; direction: rtl; }
.sky-range input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; pointer-events: auto; width: 22px; height: 22px; border-radius: 50%; background: #fff; border: 3px solid var(--sky-primary); box-shadow: var(--shadow-sm); cursor: grab; }
.sky-range input[type=range]::-moz-range-thumb { pointer-events: auto; width: 18px; height: 18px; border-radius: 50%; background: #fff; border: 3px solid var(--sky-primary); cursor: grab; }
.sky-range input[type=range]::-moz-range-track { background: none; }
.sky-range__vals { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 10px; }
.sky-range__vals span { display: flex; flex-direction: column; padding: 8px 10px; border-radius: 12px; background: var(--bg); }
.sky-range__vals small { font-size: 11px; color: var(--muted); font-weight: 700; }
.sky-range__vals b { font-size: 13.5px; color: var(--ink); }
.sky-filters__foot { padding-top: 14px; }
.sky-sortbar { display: flex; align-items: center; gap: 10px; padding: 8px 10px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); margin-bottom: 12px; }
.sky-sortbar__label { display: inline-flex; align-items: center; gap: 6px; font-weight: 800; font-size: 13.5px; color: var(--ink); flex: none; }
.sky-sortbar__label .sky-i { width: 18px; height: 18px; color: var(--sky-primary); }
.sky-sortbar__opts { display: flex; gap: 4px; overflow-x: auto; scrollbar-width: none; }
.sky-sortbar__opts button { height: 38px; padding: 0 14px; border-radius: 11px; font-size: 13.5px; font-weight: 700; color: var(--text); white-space: nowrap; transition: background .2s, color .2s; }
.sky-sortbar__opts button:hover { color: var(--sky-primary); }
.sky-sortbar__opts button.is-active { background: var(--p-50); color: var(--sky-primary); font-weight: 900; }
.sky-sortbar__select, .sky-sortbar__filter { display: none; }
.sky-sortbar__badge { min-width: 20px; height: 20px; padding: 0 6px; border-radius: 99px; background: var(--sky-primary); color: #fff; font-size: 11px; display: grid; place-items: center; }
.sky-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.sky-chips:empty { display: none; }
.sky-chip { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 8px 0 12px; border-radius: 11px; background: var(--p-50); color: var(--sky-primary); font-size: 12.5px; font-weight: 800; }
.sky-chip .sky-i { width: 14px; height: 14px; }
.sky-chip--clear { background: color-mix(in srgb, var(--danger) 8%, #fff); color: var(--danger); }
.sky-products-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; transition: opacity .25s; }
.sky-shop--full .sky-products-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.sky-products-grid.is-busy { opacity: .45; pointer-events: none; }
.sky-products-grid__item { min-width: 0; animation: skyFade .4s var(--ease) both; }
.sky-arc__empty { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 50px 20px; text-align: center; border: 1px dashed var(--line); border-radius: var(--r-lg); }
.sky-arc__empty .sky-i { width: 52px; height: 52px; color: var(--p-200); }
.sky-arc__empty b { color: var(--ink); font-size: 16px; }
.sky-arc__empty p { margin: 0; font-size: 13.5px; }
.sky-loadmore { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 28px 0 8px; }
.sky-loadmore .sky-btn { min-width: 240px; }
.sky-loadmore.is-loading .sky-btn { display: none; }
.sky-loadmore.is-loading .sky-loader { display: block; margin: 8px auto; }
.sky-arc__desc { margin-top: 30px; }
.sky-widget { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 18px; margin-top: 16px; }
.sky-widget__title { display: block; font-weight: 900; color: var(--ink); font-size: 15.5px; padding-bottom: 12px; margin-bottom: 12px; border-bottom: 1px solid var(--line); }

/* ---------- Generic boxes ---------- */
.sky-box { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 22px; margin-bottom: 20px; }
.sky-box__title { display: flex; align-items: center; gap: 8px; font-size: 17px; font-weight: 900; color: var(--ink); padding-bottom: 14px; margin-bottom: 18px; border-bottom: 1px solid var(--line); }
.sky-box__title > .sky-i { width: 34px; height: 34px; padding: 7px; border-radius: 11px; background: var(--p-50); color: var(--sky-primary); }
.sky-box__title em { font-style: normal; color: var(--sky-primary); }
.sky-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 10px; padding: 40px 16px; color: var(--muted); }
.sky-empty > .sky-i { width: 52px; height: 52px; color: var(--p-200); }
.sky-empty p { margin: 0; font-weight: 700; }
.sky-terms { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 13px; }
.sky-terms > span { display: inline-flex; align-items: center; gap: 6px; font-weight: 800; color: var(--muted); }
.sky-terms > span .sky-i { width: 18px; height: 18px; }
.sky-terms a { display: inline-block; padding: 4px 14px; border: 1px solid var(--line); border-radius: 999px; font-size: 12.5px; font-weight: 700; color: var(--text); background: #fff; }
.sky-terms a:hover { border-color: var(--sky-primary); color: var(--sky-primary); }

/* ---------- Single product ---------- */
.sky-sp__top { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr) 320px; gap: 26px; align-items: start; }
.sky-gallery { display: grid; grid-template-columns: 84px minmax(0, 1fr); grid-template-areas: "thumbs main"; gap: 14px; align-items: start; }
.sky-gallery__main { grid-area: main; position: relative; border: 1px solid var(--line); border-radius: var(--r-xl); background: #fff; overflow: hidden; }
.sky-gallery__swiper { aspect-ratio: 1; }
.sky-gallery__swiper .swiper-slide { display: flex; }
.sky-gallery__item { display: block; width: 100%; aspect-ratio: 1; cursor: zoom-in; padding: 0; }
.sky-gallery__item img { width: 100%; height: 100%; object-fit: cover; }
.sky-gallery__badges { position: absolute; top: 14px; right: 14px; z-index: 3; flex-direction: column; align-items: flex-start; pointer-events: none; }
.sky-gallery__badges .sky-badge { height: 28px; padding: 0 11px; font-size: 12px; }
.sky-gallery__off { position: absolute; bottom: 14px; right: 14px; z-index: 3; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 58px; height: 58px; border-radius: 18px; background: var(--danger); color: #fff; font-weight: 900; font-size: 17px; line-height: 1.1; box-shadow: 0 10px 20px -8px var(--danger); }
.sky-gallery__off small { font-size: 10px; font-weight: 700; opacity: .9; }
.sky-gallery__tools { position: absolute; top: 12px; left: 12px; z-index: 3; display: flex; flex-direction: column; gap: 8px; }
.sky-gallery__tools .sky-iconbtn { background: rgba(255,255,255,.94); box-shadow: var(--shadow-sm); color: var(--ink); }
.sky-gallery__tools .sky-iconbtn:hover { color: var(--sky-primary); }
.sky-gallery__arrow { position: absolute; top: 50%; z-index: 3; width: 34px; height: 76px; margin-top: -38px; display: grid; place-items: center; background: var(--sky-primary); color: #fff; transition: width .2s, opacity .2s; }
.sky-gallery__arrow:hover { width: 40px; }
.sky-gallery__arrow.swiper-button-disabled { opacity: .3; pointer-events: none; }
.sky-gallery__arrow--prev { right: 0; border-radius: 40px 0 0 40px; }
.sky-gallery__arrow--next { left: 0; border-radius: 0 40px 40px 0; }
.sky-gallery__hint { position: absolute; bottom: 14px; left: 14px; z-index: 3; display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 11px; background: rgba(24,32,47,.66); color: #fff; font-size: 12px; font-weight: 700; backdrop-filter: blur(6px); pointer-events: none; }
.sky-gallery__hint .sky-i { width: 15px; height: 15px; }
.sky-gallery__dots { display: none; }
.sky-gallery__thumbs { grid-area: thumbs; height: 100%; max-height: 560px; }
.sky-gallery__thumbs .swiper-slide { height: 84px !important; cursor: pointer; }
.sky-gallery__thumb { display: block; width: 84px; height: 84px; border-radius: 18px; overflow: hidden; border: 2px solid var(--line); background: #fff; transition: border-color .2s, opacity .2s; opacity: .65; }
.sky-gallery__thumbs .swiper-slide-thumb-active .sky-gallery__thumb { border-color: var(--sky-primary); opacity: 1; }
.sky-gallery__thumb img { width: 100%; height: 100%; object-fit: cover; }

.sky-summary { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.sky-summary__top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 13px; }
.sky-summary__cat { padding: 3px 12px; border-radius: 9px; background: var(--p-50); color: var(--sky-primary); font-weight: 800; }
.sky-summary__brand a { color: var(--sky-primary); font-weight: 800; }
.sky-summary__title { font-size: clamp(20px, .7vw + 15px, 27px); font-weight: 900; line-height: 1.6; margin: 0; }
.sky-summary__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; font-size: 13px; color: var(--muted); padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.sky-summary__rating { display: inline-flex; align-items: center; gap: 6px; color: var(--ink); }
.sky-summary__rating b { font-weight: 900; }
.sky-summary__rating small { color: var(--muted); }
.sky-summary__sku b { color: var(--ink); }
.sky-summary__excerpt { --fade: var(--page); font-size: 14px; }
.sky-features { background: var(--bg); border-radius: var(--r-lg); padding: 16px 18px; }
.sky-features__title { display: flex; align-items: center; gap: 6px; font-weight: 900; color: var(--ink); margin-bottom: 10px; }
.sky-features__title .sky-i { width: 18px; height: 18px; color: var(--sky-primary); }
.sky-features ul { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 10px; }
.sky-features li { display: flex; flex-direction: column; padding: 8px 12px; border-radius: 12px; background: #fff; font-size: 12.5px; line-height: 1.6; }
.sky-features li span { color: var(--muted); font-weight: 600; }
.sky-features li b { color: var(--ink); font-weight: 800; font-size: 13px; }

.sky-buybox { position: sticky; top: calc(var(--sticky-top) + 16px); background: #fff; border: 1px solid var(--line); border-radius: var(--r-xl); padding: 20px; box-shadow: var(--shadow); display: flex; flex-direction: column; gap: 14px; scroll-margin-top: 140px; }
.sky-buybox__head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.sky-buybox__stock { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 800; color: var(--success); }
.sky-buybox__stock i { width: 9px; height: 9px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px color-mix(in srgb, currentColor 18%, transparent); }
.sky-buybox__stock.is-out { color: var(--danger); }
.sky-buybox__perks { display: grid; gap: 8px; padding: 12px 0; border-block: 1px dashed var(--line); }
.sky-buybox__perks li { display: flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 700; }
.sky-buybox__perks .sky-i { width: 30px; height: 30px; padding: 6px; border-radius: 10px; background: var(--p-50); color: var(--sky-primary); }
.sky-buybox__price { display: flex; align-items: flex-end; justify-content: space-between; gap: 8px; }
.sky-buybox__price-label { font-size: 13px; color: var(--muted); font-weight: 700; }
.sky-buybox__price .sky-cprice { align-items: flex-end; }
.sky-buybox form.cart { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 !important; }
.sky-buybox form.cart:not(.variations_form), .sky-buybox .woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; gap: 10px; width: 100%; }
.sky-buybox table.variations { width: 100%; border: 0; margin: 0 !important; border-collapse: collapse; }
.sky-buybox table.variations tr { display: flex; flex-direction: column; gap: 8px; margin-bottom: 14px; }
.sky-buybox table.variations th, .sky-buybox table.variations td { padding: 0 !important; border: 0; text-align: start; background: none; line-height: 1.5; }
.sky-buybox table.variations label { font-size: 13.5px; font-weight: 800; color: var(--ink); margin: 0; }
.sky-buybox table.variations select { width: 100% !important; min-width: 0 !important; margin: 0 !important; }
.sky-swatch-wrap { position: relative; }
.sky-buybox table.variations .sky-swatch-wrap select[data-sky-swatched], .sky-swatch-wrap select[data-sky-swatched] { position: absolute !important; inset: 0 auto auto 0; width: 1px !important; min-width: 0 !important; height: 1px !important; min-height: 0 !important; padding: 0 !important; border: 0 !important; opacity: 0; pointer-events: none; clip-path: inset(50%); }
.sky-buybox .reset_variations:not([style*="visible"]) { display: none !important; }
.sky-buybox .reset_variations { font-size: 12px; color: var(--danger); display: inline-flex; align-items: center; gap: 4px; margin-top: 10px; font-weight: 700; padding: 4px 10px; border-radius: 10px; background: color-mix(in srgb, var(--danger) 7%, #fff); }
.sky-buybox .reset_variations .sky-i { width: 14px; height: 14px; }
.sky-buybox .single_variation_wrap { width: 100%; }
.sky-buybox .woocommerce-variation:empty, .sky-buybox .woocommerce-variation-description:empty { display: none; }
.sky-buybox .woocommerce-variation-price { display: none !important; }
.sky-buybox .woocommerce-variation-availability p { margin: 0 0 10px; font-size: 13px; font-weight: 700; }
.sky-buybox .woocommerce-variation-description:empty, .sky-buybox .woocommerce-variation-availability:empty { display: none; }
.sky-cprice.is-updating { animation: skyPriceIn .35s var(--ease); }
@keyframes skyPriceIn { from { opacity: .3; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.sky-buybox .woocommerce-variation-price .price { display: flex; flex-direction: column; align-items: flex-end; }
.sky-buybox .woocommerce-variation-price .amount { font-size: 22px; font-weight: 900; color: var(--ink); }
.sky-buybox .woocommerce-variation-price del .amount { font-size: 13px; color: var(--muted); }
.sky-buybox .woocommerce-variation-price ins { text-decoration: none; }
.sky-buybox .stock { font-size: 13px; font-weight: 700; margin: 0 0 4px; color: var(--success); width: 100%; }
.sky-buybox .stock.out-of-stock { color: var(--danger); }
.sky-buybox form.cart .quantity, .sky-buybox form.cart .button { float: none !important; margin: 0 !important; }
div.quantity { display: inline-flex; align-items: center; height: 52px; border: 1.5px solid var(--line); border-radius: 16px; padding: 4px; background: #fff; }
div.quantity .qty { width: 46px; height: 42px; border: 0 !important; text-align: center; font-weight: 900; font-size: 16px; background: transparent; padding: 0 !important; min-height: 0 !important; box-shadow: none !important; -moz-appearance: textfield; }
div.quantity .qty::-webkit-outer-spin-button, div.quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.sky-qty__btn { width: 38px; height: 42px; display: grid; place-items: center; border-radius: 12px; color: var(--sky-primary); }
.sky-qty__btn:hover { background: var(--p-50); }
.sky-qty__btn .sky-i { width: 18px; height: 18px; }
.sky-buybox .single_add_to_cart_button { flex: 1 1 100% !important; height: 54px; display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; border-radius: 16px !important; font-size: 15px !important; white-space: nowrap; background: var(--sky-primary) !important; box-shadow: 0 12px 24px -10px color-mix(in srgb, var(--sky-primary) 80%, transparent); }
.sky-buybox .single_add_to_cart_button::before { content: ""; width: 22px; height: 22px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.4'/%3E%3Ccircle cx='18' cy='20' r='1.4'/%3E%3Cpath d='M2.5 3h2.6l2.4 11.2a2 2 0 0 0 2 1.6h8.4a2 2 0 0 0 2-1.5L21.5 7H6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.4'/%3E%3Ccircle cx='18' cy='20' r='1.4'/%3E%3Cpath d='M2.5 3h2.6l2.4 11.2a2 2 0 0 0 2 1.6h8.4a2 2 0 0 0 2-1.5L21.5 7H6'/%3E%3C/svg%3E") center / contain no-repeat; }
.sky-buybox .single_add_to_cart_button.disabled { opacity: .5; }
.sky-buybox .single_add_to_cart_button.is-loading { opacity: .7; pointer-events: none; }

.sky-spnav { position: sticky; top: var(--sticky-top); z-index: 40; margin: 34px 0 20px; background: rgba(255,255,255,.94); backdrop-filter: blur(10px); border-bottom: 1px solid var(--line); transition: top .25s; }
.sky-spnav__in { display: flex; gap: 10px; padding: 10px 0; overflow-x: auto; scrollbar-width: none; }
.sky-spnav a { display: inline-flex; align-items: center; gap: 8px; height: 46px; padding: 0 22px; border: 1.5px solid var(--line); border-radius: 16px; font-weight: 800; white-space: nowrap; color: var(--ink); flex: none; transition: all .2s; }
.sky-spnav a .sky-i { width: 19px; height: 19px; }
.sky-spnav a small { background: var(--bg); padding: 0 8px; border-radius: 8px; font-size: 12px; }
.sky-spnav a.is-active { background: var(--sky-primary); color: #fff; border-color: var(--sky-primary); box-shadow: 0 10px 20px -10px var(--sky-primary); }
.sky-spnav a.is-active small { background: rgba(255,255,255,.2); }
.sky-sp__body { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 26px; align-items: start; }
.sky-sp__side { align-self: stretch; }
.sky-sp__sticky { position: sticky; top: calc(var(--sticky-top) + 84px); display: flex; flex-direction: column; gap: 16px; }
.sky-sp__content > .sky-box, .sky-sp__content > section { scroll-margin-top: calc(var(--sticky-top) + 90px); }
.sky-collapse { --fade: #fff; }
.sky-mini { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 14px; display: flex; flex-direction: column; gap: 12px; box-shadow: var(--shadow-sm); }
.sky-mini__top { display: flex; align-items: center; gap: 10px; }
.sky-mini__img { width: 56px; height: 56px; border-radius: 14px; overflow: hidden; background: var(--bg); flex: none; }
.sky-mini__img img { width: 100%; height: 100%; object-fit: cover; }
.sky-mini__name { font-weight: 800; font-size: 13.5px; color: var(--ink); line-height: 1.7; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.sky-mini .sky-cprice { flex-direction: row; align-items: center; justify-content: space-between; }

/* Specs table (Product Specifications plugin markup + WC attributes fallback) */
.dwspecs-product-table-group + .dwspecs-product-table-group { margin-top: 18px; }
.dwspecs-product-table .group-title { display: flex; align-items: center; gap: 8px; color: var(--sky-primary); font-weight: 900; font-size: 15.5px; margin-bottom: 8px; }
.dwspecs-product-table .group-title::before { content: ""; width: 6px; height: 18px; border-radius: 4px; background: var(--sky-accent); }
.dwspecs-product-table table, .woocommerce-product-attributes { width: 100%; border-collapse: separate; border-spacing: 0 8px; margin: 0; border: 0 !important; }
.dwspecs-product-table td, .woocommerce-product-attributes th, .woocommerce-product-attributes td { padding: 12px 16px !important; font-size: 14px; vertical-align: middle; border: 1px solid var(--line) !important; background: #fff; line-height: 1.8; text-align: start; }
.dwspecs-product-table td:first-child, .woocommerce-product-attributes th { width: 32%; background: var(--bg) !important; color: var(--text); font-weight: 700; border-radius: 0 14px 14px 0; border-left: 0 !important; }
.dwspecs-product-table td:last-child, .woocommerce-product-attributes td { color: var(--ink); font-weight: 700; border-radius: 14px 0 0 14px; }
.woocommerce-product-attributes td p { margin: 0; }
.dwspecs-product-table td svg { width: 18px; height: 18px; display: inline-block; vertical-align: middle; }
.dwspecs-product-table td.yes svg { fill: var(--success); }
.dwspecs-product-table td.no svg { fill: var(--danger); }

/* Rating box & reviews */
.sky-ratingbox { text-align: center; margin: 0; }
.sky-ratingbox.is-inline { display: none; }
.sky-ratingbox__title { display: block; font-weight: 900; color: var(--ink); font-size: 17px; margin-bottom: 8px; }
.sky-ratingbox__avg { display: flex; align-items: center; justify-content: center; gap: 8px; }
.sky-ratingbox__avg b { font-size: 30px; font-weight: 900; color: var(--sky-primary); line-height: 1; }
.sky-ratingbox__avg small { color: var(--muted); }
.sky-ratingbox__bars { display: grid; gap: 9px; margin: 16px 0; }
.sky-ratingbox__bars li { display: grid; grid-template-columns: 40px 1fr 34px; align-items: center; gap: 10px; font-size: 12px; }
.sky-ratingbox__bars span { display: inline-flex; align-items: center; gap: 2px; color: var(--ink); font-weight: 800; }
.sky-ratingbox__bars span .sky-i { width: 13px; height: 13px; color: var(--sky-accent); }
.sky-ratingbox__bars i { height: 7px; border-radius: 99px; background: var(--bg); position: relative; overflow: hidden; }
.sky-ratingbox__bars i::before { content: ""; position: absolute; inset: 0 0 0 auto; width: var(--w); background: var(--sky-accent); border-radius: inherit; }
.sky-ratingbox__bars small { color: var(--muted); }
.sky-reviews { scroll-margin-top: calc(var(--sticky-top) + 90px); }
.sky-reviews__title { border: 0; padding: 0; margin: 10px 0 14px; font-size: 19px; }
.sky-reviews .commentlist { margin: 0; }
.sky-reviews .commentlist li.review, .sky-reviews .commentlist li.comment { list-style: none; padding: 16px 0; border-bottom: 1px solid var(--line); }
.sky-reviews .commentlist li:last-child { border-bottom: 0; }
.sky-reviews .comment_container { display: flex; gap: 14px; }
.sky-reviews .comment_container img.avatar { width: 48px; height: 48px; border-radius: 16px; flex: none; position: static !important; padding: 0 !important; border: 0 !important; background: var(--bg); }
.sky-reviews .comment-text { flex: 1; margin: 0 !important; border: 0 !important; padding: 0 !important; display: flex; flex-direction: column; }
.sky-reviews .comment-text .meta { order: -1; margin: 0 0 4px !important; font-size: 13px; color: var(--muted); }
.sky-reviews .comment-text .meta strong { color: var(--ink); font-size: 14.5px; }
.sky-reviews .woocommerce-review__verified { color: var(--success); font-style: normal; font-size: 12px; }
.sky-reviews .star-rating { float: none !important; margin: 0 0 6px !important; color: var(--sky-accent); font-size: 13px; }
.sky-reviews .description p { margin: 0; line-height: 2; }
.sky-points { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.sky-point { display: inline-flex; align-items: center; gap: 4px; font-size: 12.5px; font-weight: 700; padding: 3px 10px; border-radius: 8px; }
.sky-point .sky-i { width: 14px; height: 14px; }
.sky-point--pro { background: color-mix(in srgb, var(--success) 10%, #fff); color: var(--success); }
.sky-point--con { background: color-mix(in srgb, var(--danger) 9%, #fff); color: var(--danger); }
#review_form .comment-form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 18px; }
#review_form .comment-form > * { grid-column: 1 / -1; margin: 0; }
#review_form .comment-form-author { grid-column: 1; }
#review_form .comment-form-email { grid-column: 2; }
#review_form .comment-form-cookies-consent { display: flex; gap: 8px; align-items: center; font-size: 13px; }
#review_form .comment-form-cookies-consent label { margin: 0; font-weight: 500; }
#review_form .form-submit input { width: auto; min-width: 180px; height: 50px; }
.sky-rate-input { border: 0; padding: 0; margin: 0; }
.sky-rate-input legend { font-weight: 800; font-size: 13.5px; color: var(--ink); margin-bottom: 6px; padding: 0; }
.sky-rate-input__stars { display: inline-flex; direction: ltr; gap: 4px; }
.sky-rate-input__stars input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.sky-rate-input__stars label { margin: 0; cursor: pointer; color: #d7dce5; transition: color .15s, transform .15s; }
.sky-rate-input__stars label .sky-i { width: 36px; height: 36px; stroke: none; }
.sky-rate-input__stars label:hover, .sky-rate-input__stars label:hover ~ label, .sky-rate-input__stars input:checked ~ label { color: var(--sky-accent); }
.sky-rate-input__stars label:hover { transform: scale(1.12); }
.sky-points-input { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.sky-points-input__row { display: flex; gap: 6px; margin-bottom: 6px; }
.sky-points-input__row input { flex: 1; min-height: 44px !important; }
.sky-points-input__row .sky-iconbtn { flex: none; border: 1px solid var(--line); }
.sky-points-input__col--pro label { color: var(--success); }
.sky-points-input__col--con label { color: var(--danger); }
.sky-points-input__col--pro .sky-iconbtn { color: var(--success); }
.sky-points-input__col--con .sky-iconbtn { color: var(--danger); }
.sky-related { padding-top: 40px; }

/* Story viewer (gallery) */
.sky-story { position: fixed; inset: 0; z-index: 500; background: #05070d; color: #fff; display: flex; flex-direction: column; visibility: hidden; opacity: 0; transition: opacity .3s, visibility .3s; touch-action: none; }
.sky-story.is-open { visibility: visible; opacity: 1; }
.sky-story__bars { position: absolute; top: 12px; right: 16px; left: 16px; z-index: 4; display: flex; gap: 4px; }
.sky-story__bars span { flex: 1; height: 3px; border-radius: 3px; background: rgba(255,255,255,.25); overflow: hidden; }
.sky-story__bars span.is-seen { background: #fff; }
.sky-story__bars span.is-current::after { content: ""; display: block; height: 100%; width: 100%; background: #fff; transform-origin: right; animation: skyStoryBar var(--story-d, 5s) linear forwards; }
.sky-story.is-zoomed .sky-story__bars span.is-current::after, .sky-story.is-paused .sky-story__bars span.is-current::after, .sky-story.is-stopped .sky-story__bars span.is-current::after { animation-play-state: paused; }
.sky-story__actions { display: flex; gap: 8px; }
.sky-story__btn { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: rgba(255,255,255,.12); backdrop-filter: blur(6px); transition: background .2s; }
.sky-story__btn:hover { background: rgba(255,255,255,.22); }
.sky-story__btn .sky-i { width: 22px; height: 22px; }
.sky-story__ic-play, .sky-story.is-stopped .sky-story__ic-pause { display: none; }
.sky-story.is-stopped .sky-story__ic-play { display: block; }
.sky-story.is-stopped .sky-story__pause { background: var(--sky-accent); color: var(--ink); }
.sky-story.is-single .sky-story__pause, .sky-story.is-single .sky-story__bars { display: none; }
@keyframes skyStoryBar { from { transform: scaleX(0); } }
.sky-story__top { position: absolute; top: 26px; right: 16px; left: 16px; z-index: 4; display: flex; align-items: center; justify-content: space-between; }
.sky-story__title { display: flex; align-items: center; gap: 10px; font-weight: 800; font-size: 14px; max-width: 70%; }
.sky-story__avatar { width: 38px; height: 38px; border-radius: 50%; overflow: hidden; border: 2px solid var(--sky-accent); flex: none; }
.sky-story__avatar img { width: 100%; height: 100%; object-fit: cover; }
.sky-story__close { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: rgba(255,255,255,.12); }
.sky-story__close .sky-i { width: 24px; height: 24px; }
.sky-story__stage { position: relative; flex: 1; overflow: hidden; display: grid; place-items: center; cursor: zoom-in; }
.sky-story.is-zoomed .sky-story__stage { cursor: grab; }
.sky-story__stage img { max-width: min(92vw, 1100px); max-height: 82vh; object-fit: contain; border-radius: 14px; transform-origin: center; transition: transform .2s var(--ease); user-select: none; will-change: transform; }
.sky-story.is-dragging .sky-story__stage img { transition: none; }
.sky-story__nav { position: absolute; top: 50%; z-index: 4; width: 52px; height: 52px; margin-top: -26px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: rgba(255,255,255,.12); backdrop-filter: blur(6px); }
.sky-story__nav:hover { background: var(--sky-primary); }
.sky-story__nav .sky-i { width: 24px; height: 24px; }
.sky-story__nav--prev { right: 20px; }
.sky-story__nav--next { left: 20px; }
.sky-story__hint { position: absolute; bottom: 22px; left: 50%; transform: translateX(-50%); z-index: 4; display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; border-radius: 99px; background: rgba(255,255,255,.12); backdrop-filter: blur(8px); font-size: 13px; font-weight: 700; white-space: nowrap; }
.sky-story__hint .sky-i { width: 18px; height: 18px; color: var(--sky-accent); }
.sky-story__hint small { padding: 1px 8px; border-radius: 8px; background: rgba(255,255,255,.18); font-weight: 800; }

.sky-stickybuy { display: none; }

/* ---------- Blog ---------- */
.sky-progress { position: fixed; top: 0; right: 0; left: 0; z-index: 120; height: 4px; background: transparent; }
.admin-bar .sky-progress { top: 32px; }
.sky-progress i { display: block; height: 100%; width: 0; margin-right: 0; background: linear-gradient(270deg, var(--sky-primary), var(--sky-accent)); border-radius: 0 0 4px 0; }
.sky-post-single { padding-top: 18px; }
.sky-phero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 32px; align-items: center; padding: 26px; border-radius: var(--r-xl); background: linear-gradient(135deg, var(--p-50), color-mix(in srgb, var(--sky-accent) 10%, #fff)); margin-bottom: 30px; }
.sky-phero__cat { display: inline-block; padding: 4px 14px; border-radius: 10px; background: var(--sky-primary); color: #fff; font-weight: 800; font-size: 12.5px; margin-bottom: 12px; }
.sky-phero__cat:hover { color: #fff; background: var(--p-600); }
.sky-phero__title { font-size: clamp(22px, 1.4vw + 16px, 34px); font-weight: 900; line-height: 1.6; margin-bottom: 12px; }
.sky-phero__excerpt { font-size: 15px; line-height: 2.1; }
.sky-phero__meta { display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: 13px; color: var(--muted); font-weight: 600; }
.sky-phero__meta span { display: inline-flex; align-items: center; gap: 6px; }
.sky-phero__meta .sky-i { width: 16px; height: 16px; }
.sky-phero__author { color: var(--ink); font-weight: 800; }
.sky-phero__author img { border-radius: 50%; }
.sky-phero__img img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; border-radius: var(--r-lg); box-shadow: var(--shadow); }
.sky-playout { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 34px; align-items: start; }
.sky-playout__side { align-self: stretch; }
.sky-playout__sticky { position: sticky; top: calc(var(--sticky-top) + 20px); display: flex; flex-direction: column; gap: 16px; max-height: calc(100vh - var(--sticky-top) - 40px); }
.sky-playout__sticky > .sky-toc { flex: 0 1 auto; min-height: 120px; max-height: none; }
.sky-playout__sticky > :not(.sky-toc) { flex: none; }
.sky-toc { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 16px; max-height: 60vh; overflow: auto; scrollbar-width: thin; }
.sky-toc__title { display: flex; align-items: center; gap: 8px; font-weight: 900; color: var(--ink); margin-bottom: 10px; }
.sky-toc__title .sky-i { width: 20px; height: 20px; color: var(--sky-primary); }
.sky-toc ol { counter-reset: toc; display: grid; gap: 2px; }
.sky-toc li a { display: block; padding: 6px 10px; border-radius: 10px; font-size: 13.5px; font-weight: 600; color: var(--text); border-right: 2px solid transparent; transition: all .2s; }
.sky-toc li a:hover { background: var(--bg); }
.sky-toc li a.is-active { background: var(--p-50); color: var(--sky-primary); border-right-color: var(--sky-primary); font-weight: 800; }
.sky-toc__l3 a { padding-right: 22px !important; font-size: 12.5px !important; }
.sky-pshare { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 14px 16px; }
.sky-pshare > span { display: block; font-weight: 900; color: var(--ink); margin-bottom: 10px; font-size: 14px; }
.sky-pshare div { display: flex; gap: 8px; flex-wrap: wrap; }
.sky-pshare a, .sky-pshare button { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; background: var(--bg); color: var(--text); transition: background .2s, color .2s; }
.sky-pshare a:hover, .sky-pshare button:hover { background: var(--sky-primary); color: #fff; }
.sky-pshare .sky-i { width: 19px; height: 19px; }
.sky-article { min-width: 0; }
.sky-prose--article { font-size: 16px; line-height: 2.2; }
.sky-prose--article h2 { font-size: 23px; padding-right: 14px; border-right: 4px solid var(--sky-accent); }
.sky-prose--article h2, .sky-prose--article h3 { scroll-margin-top: calc(var(--sticky-top) + 30px); }
.sky-article > .sky-terms { margin: 26px 0; }
.sky-author { display: flex; gap: 18px; padding: 22px; border-radius: var(--r-xl); background: var(--bg); margin: 26px 0; }
.sky-author img { width: 80px; height: 80px; border-radius: 24px; flex: none; }
.sky-author span { font-size: 12px; color: var(--muted); font-weight: 700; }
.sky-author b { display: block; font-size: 17px; color: var(--ink); margin-bottom: 4px; }
.sky-author p { font-size: 13.5px; margin-bottom: 6px; }
.sky-postnav { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 26px 0; }
.sky-postnav__item { display: flex; flex-direction: column; gap: 4px; padding: 16px 18px; border: 1px solid var(--line); border-radius: var(--r-lg); background: #fff; transition: box-shadow .2s, border-color .2s; }
.sky-postnav__item:hover { box-shadow: var(--shadow); border-color: transparent; }
.sky-postnav__item.is-next { text-align: left; grid-column: 2; }
.sky-postnav__item small { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; color: var(--muted); font-weight: 700; }
.sky-postnav__item.is-next small { justify-content: flex-end; }
.sky-postnav__item small .sky-i { width: 14px; height: 14px; }
.sky-postnav__item b { color: var(--ink); font-size: 14px; line-height: 1.7; }
.sky-related-posts { padding-top: 40px; }
.sky-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 24px; align-items: start; }
.sky-layout--full { grid-template-columns: 1fr; }
.sky-posts-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 18px; }
.sky-comments__list .comment { padding: 14px 0; border-bottom: 1px solid var(--line); }
.sky-comments__list .comment .children { padding-right: 24px; }
.sky-comments__list .comment-author { display: flex; align-items: center; gap: 10px; font-weight: 800; color: var(--ink); }
.sky-comments__list .comment-author img { border-radius: 14px; }
.sky-comments__list .comment-metadata { font-size: 12px; color: var(--muted); margin: 4px 0 8px; }
.sky-comments__list .reply a { font-size: 12.5px; font-weight: 800; color: var(--sky-primary); }
.sky-searchform { position: relative; max-width: 460px; width: 100%; margin: 6px auto 16px; }
.sky-searchform input { width: 100%; height: 48px; border: 1px solid var(--line); border-radius: 14px; padding: 0 16px 0 52px; background: var(--bg); outline: 0; }
.sky-searchform button { position: absolute; left: 6px; top: 6px; width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; background: var(--sky-primary); color: #fff; }
.sky-404 { text-align: center; padding: 60px 20px; margin-top: 30px; }
.sky-404__code { display: block; font-size: 110px; font-weight: 900; line-height: 1; color: var(--sky-primary); text-shadow: 6px 6px 0 var(--sky-accent); margin-bottom: 18px; }

/* ---------- Forms (comments, account, checkout) ---------- */
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select,
.sky-main input[type="text"], .sky-main input[type="email"], .sky-main input[type="tel"], .sky-main input[type="password"], .sky-main input[type="number"], .sky-main input[type="url"], .sky-main input[type="search"]:not(.sky-search input), .sky-main textarea, .sky-main select:not(.sky-sortbar__select) {
	width: 100%; min-height: 48px; border: 1.5px solid var(--line); border-radius: 14px; padding: 10px 14px; background: #fff; outline: 0; transition: border-color .2s, box-shadow .2s; font-size: 14px; line-height: 1.6;
}
.sky-main textarea { min-height: 120px; resize: vertical; }
.sky-main input:focus, .sky-main textarea:focus, .sky-main select:focus, .woocommerce form .form-row input.input-text:focus { border-color: var(--sky-primary); box-shadow: 0 0 0 4px var(--p-50); }
.sky-main select { appearance: none; -webkit-appearance: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%238a93a6' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat left 14px center; padding-left: 38px; }
.sky-main label { font-weight: 800; font-size: 13.5px; color: var(--ink); display: block; margin-bottom: 6px; }
.sky-main .sky-check, .sky-main .sky-toggle, .sky-main .sky-pill-check, .sky-main .sky-cpick { display: inline-flex; margin: 0; }
.sky-main .sky-toggle { display: flex; }
.required { color: var(--danger); text-decoration: none; border: 0; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .woocommerce .button.alt, .woocommerce-page .button, .wc-block-components-button:not(.is-link), .sky-main .comment-form .submit {
	background: var(--sky-primary) !important; color: #fff !important; border-radius: 14px !important; font-weight: 800 !important; padding: 13px 24px !important; border: 0 !important; line-height: 1.4 !important; font-family: var(--font) !important; transition: background .2s !important; min-height: 48px;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce .button.alt:hover { background: var(--p-600) !important; }
.woocommerce-info, .woocommerce-message, .woocommerce-error, .woocommerce-noreviews { border-radius: var(--r-md); border: 0 !important; background: var(--p-50) !important; color: var(--ink) !important; padding: 14px 18px !important; list-style: none; margin: 0 0 18px !important; font-weight: 700; }
.woocommerce-info::before, .woocommerce-message::before, .woocommerce-error::before { display: none !important; }
.woocommerce-error { background: color-mix(in srgb, var(--danger) 9%, #fff) !important; }
.woocommerce-message { background: color-mix(in srgb, var(--success) 10%, #fff) !important; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.woocommerce-message .button { order: 2; }

/* ---------- Steps ---------- */
.sky-steps { display: flex; align-items: center; justify-content: center; gap: 0; margin: 6px auto 26px; max-width: 760px; width: 100%; padding: 0; list-style: none; counter-reset: step; }
.sky-steps li { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 8px; position: relative; font-size: 13px; font-weight: 800; color: var(--muted); text-align: center; }
.sky-steps li::before { content: ""; position: absolute; top: 24px; left: 50%; width: 100%; height: 3px; background: var(--line); z-index: -1; }
.sky-steps li:first-child::before { display: none; }
.sky-steps li.is-done::before, .sky-steps li.is-current::before { background: var(--sky-primary); }
.sky-steps span { width: 50px; height: 50px; border-radius: 17px; display: grid; place-items: center; background: #fff; border: 2px solid var(--line); color: var(--muted); }
.sky-steps span .sky-i { width: 22px; height: 22px; }
.sky-steps .is-current span { background: var(--sky-primary); border-color: var(--sky-primary); color: #fff; box-shadow: 0 10px 20px -8px var(--sky-primary); }
.sky-steps .is-current b { color: var(--ink); }
.sky-steps .is-done span { background: var(--success); border-color: var(--success); color: #fff; }

/* ---------- Cart page (classic) ---------- */
.sky-wc-page { padding-bottom: 20px; }
.woocommerce-cart .sky-wc-page > .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 26px; align-items: start; }
.woocommerce-cart .sky-wc-page > .woocommerce > .sky-steps, .woocommerce-cart .sky-wc-page > .woocommerce > .sky-freeship, .woocommerce-cart .sky-wc-page > .woocommerce > .woocommerce-notices-wrapper, .woocommerce-cart .sky-wc-page > .woocommerce > .cart-empty, .woocommerce-cart .sky-wc-page > .woocommerce > .return-to-shop { grid-column: 1 / -1; }
.woocommerce-cart .sky-wc-page > .woocommerce > .sky-freeship { max-width: 760px; width: 100%; margin: 0 auto 6px; }
.woocommerce-cart-form { background: #fff; border: 1px solid var(--line); border-radius: var(--r-xl); padding: 8px 18px; }
.woocommerce table.shop_table { border: 0 !important; margin: 0 !important; border-collapse: collapse !important; }
.woocommerce table.shop_table th { font-size: 13px; font-weight: 800; color: var(--muted); border: 0 !important; padding: 14px 8px !important; background: none; }
.woocommerce table.shop_table td { border: 0 !important; border-top: 1px solid var(--line) !important; padding: 16px 8px !important; vertical-align: middle; }
.woocommerce-cart-form .product-thumbnail img { width: 84px !important; height: 84px; object-fit: cover; border-radius: 16px; }
.woocommerce-cart-form .product-name a { font-weight: 800; color: var(--ink); }
.woocommerce-cart-form .product-remove a.remove { width: 32px; height: 32px; display: grid !important; place-items: center; border-radius: 10px; background: color-mix(in srgb, var(--danger) 8%, #fff); color: var(--danger) !important; font-size: 20px; }
.woocommerce-cart-form .product-remove a.remove:hover { background: var(--danger); color: #fff !important; }
.woocommerce-cart-form .product-subtotal .amount { font-weight: 900; color: var(--ink); }
.woocommerce-cart-form td.actions { padding-top: 18px !important; }
.woocommerce-cart-form .coupon { display: flex; gap: 8px; align-items: center; float: right; }
.woocommerce-cart-form .coupon input#coupon_code { width: 200px !important; }
.woocommerce-cart-form button[name="update_cart"] { float: left; background: var(--p-50) !important; color: var(--sky-primary) !important; }
.cart-collaterals { width: 100% !important; grid-column: 2; grid-row: span 2; align-self: stretch; }
.woocommerce-cart .sky-wc-page > .woocommerce > .woocommerce-cart-form { grid-column: 1; }
.sky-cart-cross { grid-column: 1; min-width: 0; margin-top: 8px; padding: 18px 18px 6px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-xl); }
.sky-cart-cross .sky-head { margin-bottom: 14px; }
.cart-collaterals .cart_totals { width: 100% !important; float: none !important; position: sticky; top: calc(var(--sticky-top) + 16px); background: #fff; border: 1px solid var(--line); border-radius: var(--r-xl); padding: 20px; box-shadow: var(--shadow); }
.cart-collaterals .cart_totals h2 { font-size: 17px; font-weight: 900; margin-bottom: 10px; }
.cart-collaterals .cart_totals table th { padding-right: 0 !important; }
.cart-collaterals .order-total .amount { font-size: 20px; font-weight: 900; color: var(--sky-primary); }
.wc-proceed-to-checkout { padding-bottom: 0 !important; }
.wc-proceed-to-checkout .checkout-button { display: flex !important; align-items: center; justify-content: center; width: 100%; height: 56px; font-size: 15.5px !important; margin: 0 !important; }
.cross-sells { grid-column: 1 / -1; }
.cart-empty.woocommerce-info { text-align: center; padding: 30px !important; font-size: 16px; }
.return-to-shop { text-align: center; }

/* ---------- Checkout ---------- */
.sky-wc-page > .woocommerce::before, .sky-wc-page > .woocommerce::after, .woocommerce-checkout form.checkout::before, .woocommerce-checkout form.checkout::after { display: none !important; }
.sky-ck { display: grid; grid-template-columns: minmax(0, 1fr) 430px; gap: 24px; align-items: start; }
.sky-ck > .woocommerce-NoticeGroup, .sky-ck > .woocommerce-error, .sky-ck > .woocommerce-message { grid-column: 1 / -1; }
.sky-ck__main { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.sky-ck__side { align-self: stretch; min-width: 0; }
.sky-ck__sticky { position: sticky; top: calc(var(--sticky-top) + 16px); }
.sky-ck__card { background: #fff; border: 1px solid var(--line); border-radius: var(--r-xl); padding: 24px; box-shadow: var(--shadow-sm); }
.sky-ck__h, .woocommerce-checkout #customer_details h3 { display: flex; align-items: center; gap: 10px; margin: 0 0 18px; padding-bottom: 14px; border-bottom: 1px dashed var(--line); font-size: 17px; font-weight: 900; color: var(--ink); }
.sky-ck__h .sky-i { width: 36px; height: 36px; padding: 8px; border-radius: 12px; background: var(--p-50); color: var(--sky-primary); flex: none; }
.sky-ck__h small { margin-right: auto; font-size: 12px; font-weight: 800; color: var(--sky-primary); background: var(--p-50); border-radius: 9px; padding: 3px 10px; }
.sky-ck__note { display: flex; gap: 12px; padding: 14px 18px; border-radius: var(--r-lg); background: color-mix(in srgb, var(--sky-accent) 18%, #fff); color: var(--ink); font-size: 13.5px; font-weight: 600; }
.sky-ck__note > .sky-i { width: 22px; height: 22px; flex: none; color: var(--a-700); }
.sky-ck__note p { margin: 0; }
.woocommerce-checkout #customer_details { display: flex; flex-direction: column; gap: 22px; }
.woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2 { width: 100% !important; float: none !important; max-width: none; padding: 0; }
.woocommerce-checkout #customer_details .col-2:empty { display: none; }
.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-additional-fields__field-wrapper { display: flex; flex-wrap: wrap; justify-content: space-between; column-gap: 3%; }
.woocommerce form .form-row { padding: 0 !important; margin: 0 0 16px !important; width: 100%; float: none !important; }
.woocommerce form .form-row-first, .woocommerce form .form-row-last { width: 48.5% !important; }
.woocommerce form .form-row.sky-hide, .woocommerce form .form-row.hidden { display: none !important; }
.woocommerce form .form-row label { display: flex; align-items: center; gap: 3px; margin-bottom: 7px; font-size: 13px; font-weight: 800; color: var(--ink); line-height: 1.6; }
.woocommerce form .form-row label .optional { font-weight: 600; color: var(--muted); font-size: 11.5px; }
.woocommerce form .form-row .required { color: var(--danger); font-weight: 900; text-decoration: none; }
.woocommerce form .form-row .woocommerce-input-wrapper { display: block; width: 100%; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select { width: 100% !important; min-height: 50px; border: 1.5px solid var(--line) !important; border-radius: 14px !important; padding: 11px 14px !important; background: #fbfcfe !important; font-size: 14px; color: var(--ink); box-shadow: none; transition: border-color .2s, box-shadow .2s, background .2s; }
.woocommerce form .form-row textarea { min-height: 110px; }
.woocommerce form .form-row input.input-text:hover, .woocommerce form .form-row select:hover { border-color: #cfd6e2 !important; }
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus, .woocommerce form .form-row select:focus { border-color: var(--sky-primary) !important; background: #fff !important; box-shadow: 0 0 0 4px var(--p-50) !important; outline: 0; }
.woocommerce form .form-row.woocommerce-invalid input.input-text, .woocommerce form .form-row.woocommerce-invalid select, .woocommerce form .form-row.woocommerce-invalid .select2-selection { border-color: var(--danger) !important; background: color-mix(in srgb, var(--danger) 4%, #fff) !important; }
.woocommerce form .form-row.woocommerce-validated input.input-text, .woocommerce form .form-row.woocommerce-validated .select2-selection { border-color: color-mix(in srgb, var(--success) 55%, var(--line)) !important; }
.woocommerce form .form-row select { appearance: none; -webkit-appearance: none; background: #fbfcfe url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%238a93a6' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat left 14px center !important; padding-left: 40px !important; }
/* single-country text ("ایران") and read-only values */
.woocommerce form .form-row strong { display: flex; align-items: center; min-height: 50px; padding: 0 14px; border-radius: 14px; background: var(--bg); color: var(--ink); font-weight: 800; }
/* Select2 / SelectWoo (state, city plugins) */
.woocommerce .select2-container { width: 100% !important; }
.woocommerce .select2-container .select2-selection--single { height: 50px; border: 1.5px solid var(--line); border-radius: 14px; background: #fbfcfe; display: flex; align-items: center; transition: border-color .2s, box-shadow .2s; }
.woocommerce .select2-container .select2-selection--single .select2-selection__rendered { line-height: 48px; padding: 0 14px 0 40px; color: var(--ink); font-size: 14px; width: 100%; }
.woocommerce .select2-container .select2-selection--single .select2-selection__placeholder { color: var(--muted); }
.woocommerce .select2-container .select2-selection--single .select2-selection__arrow { height: 48px; left: 10px; right: auto; width: 24px; }
.woocommerce .select2-container--focus .select2-selection--single, .woocommerce .select2-container--open .select2-selection--single { border-color: var(--sky-primary); background: #fff; box-shadow: 0 0 0 4px var(--p-50); }
.select2-dropdown { border: 1.5px solid var(--line) !important; border-radius: 14px !important; overflow: hidden; box-shadow: var(--shadow-lg); font-family: var(--font); }
.select2-search--dropdown .select2-search__field { border: 1.5px solid var(--line) !important; border-radius: 10px !important; height: 40px; padding: 0 12px !important; font-family: var(--font); }
.select2-results__option { padding: 9px 14px !important; font-size: 13.5px; }
.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] { background: var(--sky-primary) !important; color: #fff !important; }
/* checkboxes (ship to different address, create account, terms) */
.woocommerce form .form-row .woocommerce-form__label-for-checkbox, #ship-to-different-address label, .woocommerce-form__label-for-checkbox { display: inline-flex !important; align-items: center; gap: 10px; cursor: pointer; font-weight: 700; }
.woocommerce form input[type="checkbox"], .woocommerce-checkout input[type="checkbox"], .woocommerce-checkout #payment input[type="radio"] { appearance: none; -webkit-appearance: none; width: 20px; height: 20px; margin: 0 !important; flex: none; border: 1.5px solid #c7cfdc; border-radius: 7px; background: #fff; display: inline-grid; place-items: center; cursor: pointer; transition: background .15s, border-color .15s; }
.woocommerce-checkout #payment input[type="radio"] { border-radius: 50%; }
.woocommerce form input[type="checkbox"]::after { content: ""; width: 9px; height: 5px; border-left: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(-45deg) translate(1px, -1px); opacity: 0; }
.woocommerce-checkout #payment input[type="radio"]::after { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #fff; opacity: 0; }
.woocommerce form input[type="checkbox"]:checked, .woocommerce-checkout #payment input[type="radio"]:checked { background: var(--sky-primary); border-color: var(--sky-primary); }
.woocommerce form input[type="checkbox"]:checked::after, .woocommerce-checkout #payment input[type="radio"]:checked::after { opacity: 1; }
#ship-to-different-address { margin: 0 0 14px; font-size: 15px; border: 0 !important; padding: 0 !important; }
.woocommerce-checkout .woocommerce-additional-fields h3 { display: none; }
/* Coupon & login toggles above the form */
.woocommerce-form-coupon-toggle .woocommerce-info, .woocommerce-form-login-toggle .woocommerce-info { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; background: var(--bg) !important; border: 1px dashed #cfd6e2 !important; }
.woocommerce-form-coupon-toggle .woocommerce-info a, .woocommerce-form-login-toggle .woocommerce-info a { color: var(--sky-primary); font-weight: 900; }
form.checkout_coupon, form.woocommerce-form-login { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; padding: 18px !important; margin: 0 0 18px !important; border: 1px solid var(--line) !important; border-radius: var(--r-lg) !important; background: #fff; }
form.checkout_coupon p:not(.form-row) { width: 100%; margin: 0; font-size: 13px; color: var(--muted); }
form.checkout_coupon .form-row-first { flex: 1; width: auto !important; margin: 0 !important; }
form.checkout_coupon .form-row-last { width: auto !important; margin: 0 !important; }
form.checkout_coupon .clear { display: none; }
/* Saved address picker */
.sky-ck-addr__h { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.sky-ck-addr__h a { font-size: 13px; font-weight: 800; color: var(--sky-primary); margin-bottom: 18px; }
.sky-ck-addr__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; }
.sky-ck-addr__i { position: relative; display: flex !important; gap: 10px; padding: 14px; border: 1.5px solid var(--line); border-radius: 16px; cursor: pointer; transition: border-color .2s, background .2s; margin: 0 !important; }
.sky-ck-addr__i:hover { border-color: var(--p-200); }
.sky-ck-addr__i input { appearance: none; -webkit-appearance: none; width: 20px; height: 20px; flex: none; border-radius: 50%; border: 1.5px solid #c7cfdc; margin-top: 2px; display: grid; place-items: center; }
.sky-ck-addr__i input::after { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #fff; }
.sky-ck-addr__i input:checked { background: var(--sky-primary); border-color: var(--sky-primary); }
.sky-ck-addr__i:has(input:checked) { border-color: var(--sky-primary); background: var(--p-50); }
.sky-ck-addr__b { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.sky-ck-addr__b b { display: flex; align-items: center; gap: 4px; color: var(--ink); font-size: 14px; }
.sky-ck-addr__b b .sky-i { width: 16px; height: 16px; }
.sky-ck-addr__b small { color: var(--muted); font-size: 12px; font-weight: 600; line-height: 1.7; }
.sky-ck-addr__save { margin-top: 12px; }
.sky-ck-addr__save[hidden] { display: none !important; }
.sky-ck-saved .woocommerce-billing-fields :is(#billing_country_field, #billing_state_field, #billing_city_field, #billing_address_1_field, #billing_address_2_field, #billing_postcode_field) { display: none !important; }
/* Order review */
.sky-ro { width: 100%; border: 0 !important; border-collapse: collapse; margin: 0 0 16px !important; }
.sky-ro tbody td { padding: 12px 0 !important; border: 0 !important; border-bottom: 1px dashed var(--line) !important; vertical-align: middle; background: none !important; }
.sky-ro__row { display: flex; gap: 12px; align-items: center; }
.sky-ro thead, .sky-ro .screen-reader-text { display: none; }
.sky-ro tfoot tr:first-child th, .sky-ro tfoot tr:first-child td { padding-top: 14px !important; }
.sky-ro__img { position: relative; flex: none; }
.sky-ro__img img { width: 62px !important; height: 62px; border-radius: 14px; object-fit: cover; background: var(--bg); display: block; }
.sky-ro__img i { position: absolute; top: -6px; right: -6px; min-width: 22px; height: 22px; padding: 0 5px; border-radius: 99px; background: var(--sky-primary); color: #fff; font-size: 11.5px; font-weight: 900; font-style: normal; display: grid; place-items: center; border: 2px solid #fff; }
.sky-ro__info { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.sky-ro__name { font-weight: 800; color: var(--ink); font-size: 13.5px; line-height: 1.6; }
.sky-ro__info .product-quantity { display: none; }
.sky-ro .variation { display: flex; flex-wrap: wrap; gap: 2px 8px; margin: 0; font-size: 12px; color: var(--muted); }
.sky-ro .variation dt, .sky-ro .variation dd { margin: 0; float: none; font-weight: 600; }
.sky-ro .variation dd p { margin: 0; }
.sky-ro .product-total { text-align: left !important; white-space: nowrap; font-weight: 900; color: var(--ink); font-size: 13.5px; }
.sky-ro tfoot th, .sky-ro tfoot td { padding: 9px 0 !important; border: 0 !important; background: none !important; font-size: 13.5px; }
.sky-ro tfoot th { font-weight: 700; color: var(--muted); text-align: right; }
.sky-ro tfoot td { text-align: left; font-weight: 800; color: var(--ink); }
.sky-ro .sky-ro__save td, .sky-ro .sky-ro__save th { color: var(--success); }
.sky-ro .order-total th, .sky-ro .order-total td { padding-top: 14px !important; border-top: 1px solid var(--line) !important; color: var(--ink); font-weight: 900; }
.sky-ro .order-total .amount { font-size: 20px; color: var(--sky-primary); }
.sky-ro #shipping_method { margin: 0; padding: 0; list-style: none; display: grid; gap: 6px; }
.sky-ro #shipping_method li { display: flex; align-items: center; gap: 6px; justify-content: flex-end; }
/* Payment */
.woocommerce-checkout #payment { background: none !important; border-radius: 0 !important; }
.woocommerce-checkout #payment ul.payment_methods { border: 0 !important; padding: 0 !important; margin: 0 0 14px !important; display: grid; gap: 8px; }
.woocommerce-checkout #payment ul.payment_methods li { padding: 12px 14px !important; border-radius: 16px; background: #fff; border: 1.5px solid var(--line); list-style: none; margin: 0 !important; transition: border-color .2s, background .2s; }
.woocommerce-checkout #payment ul.payment_methods li:has(input:checked) { border-color: var(--sky-primary); background: var(--p-50); }
.woocommerce-checkout #payment ul.payment_methods li > label { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-weight: 800; color: var(--ink); cursor: pointer; }
.woocommerce-checkout #payment ul.payment_methods li > input { vertical-align: middle; margin-left: 8px !important; }
.woocommerce-checkout #payment ul.payment_methods li img { max-height: 28px; width: auto; margin: 0 6px 0 0; vertical-align: middle; }
.woocommerce-checkout #payment div.payment_box { margin: 10px 0 0 !important; padding: 10px 12px !important; background: #fff !important; border-radius: 12px; font-size: 12.5px; color: var(--text); }
.woocommerce-checkout #payment div.payment_box::before { display: none; }
.woocommerce-checkout #payment div.payment_box p:last-child { margin: 0; }
.woocommerce-checkout #payment .form-row.place-order { margin: 0 !important; padding: 0 !important; }
.woocommerce-terms-and-conditions-wrapper { font-size: 12.5px; color: var(--muted); margin-bottom: 12px; }
.woocommerce-privacy-policy-text p { margin: 0 0 10px; font-size: 12px; color: var(--muted); }
.woocommerce-checkout #place_order { width: 100%; height: 56px; font-size: 16px !important; border-radius: 16px !important; box-shadow: 0 14px 28px -12px var(--sky-primary); }
.woocommerce-checkout .blockUI.blockOverlay { border-radius: var(--r-xl); background: rgba(255,255,255,.7) !important; }
.sky-ck-login { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 22px; border-radius: var(--r-xl); background: var(--p-50); font-weight: 800; color: var(--ink); }

/* ---------- Account ---------- */
.woocommerce-account .sky-wc-page > .woocommerce { display: block; }
.sky-wc-page .woocommerce-notices-wrapper:empty { display: none; }
.sky-acc { display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 24px; align-items: start; }
.woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { width: 100% !important; float: none !important; }
.sky-acc__main { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.sky-accnav { position: sticky; top: calc(var(--sticky-top) + 16px); background: #fff; border: 1px solid var(--line); border-radius: var(--r-xl); padding: 12px; overflow: hidden; box-shadow: var(--shadow-sm); }
.sky-accnav__logo { margin: -12px -12px 10px; padding: 18px 16px; background: var(--x-pattern), linear-gradient(150deg, var(--sky-primary), var(--p-800)); display: flex; justify-content: center; }
.sky-accnav__logo .sky-logo__text b { color: #fff; }
.sky-accnav__logo .sky-logo__text small { color: rgba(255,255,255,.75); }
.sky-accnav__logo img { max-height: 44px; filter: brightness(0) invert(1); }
.sky-accnav ul { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.sky-accnav li a { position: relative; display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: 14px; font-weight: 700; font-size: 14px; color: var(--text); transition: background .2s, color .2s; }
.sky-accnav li a .sky-i { width: 20px; height: 20px; color: var(--muted); transition: color .2s; }
.sky-accnav li a:hover { background: var(--bg); color: var(--ink); }
.sky-accnav li a:hover .sky-i { color: var(--sky-primary); }
.sky-accnav li.is-active a { background: var(--p-50); color: var(--sky-primary); font-weight: 900; }
.sky-accnav li.is-active a::before { content: ""; position: absolute; right: -12px; top: 10px; bottom: 10px; width: 4px; border-radius: 4px 0 0 4px; background: var(--sky-primary); }
.sky-accnav li.is-active a .sky-i { color: var(--sky-primary); }
.sky-accnav li.woocommerce-MyAccount-navigation-link--customer-logout { margin-top: 6px; padding-top: 6px; border-top: 1px solid var(--line); }
.sky-accnav li.woocommerce-MyAccount-navigation-link--customer-logout a, .sky-accnav li.woocommerce-MyAccount-navigation-link--customer-logout a .sky-i { color: var(--danger); }
.sky-accnav__n { margin-right: auto; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 99px; background: var(--danger); color: #fff; font-size: 11.5px; font-weight: 900; font-style: normal; display: grid; place-items: center; }
.sky-acc-card { background: #fff; border: 1px solid var(--line); border-radius: var(--r-xl); padding: 22px; box-shadow: var(--shadow-sm); min-width: 0; }
.sky-acc-h { display: flex; align-items: center; gap: 10px; margin: 0 0 18px; font-size: 17px; font-weight: 900; color: var(--ink); }
.sky-acc-h h2 { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 17px; font-weight: 900; color: var(--ink); }
.sky-acc-h .sky-i, .sky-acc-h h2 .sky-i { width: 36px; height: 36px; padding: 8px; border-radius: 12px; background: var(--p-50); color: var(--sky-primary); flex: none; }
.sky-acc-h--row { justify-content: space-between; }
.sky-acc-h--row .sky-btn .sky-i, .sky-acc-h--row .sky-linkbtn .sky-i { width: 16px; height: 16px; padding: 0; background: none; }
.sky-acc-sub { margin: -8px 0 16px; font-size: 13px; }
/* hero */
.sky-acc-hero { position: relative; overflow: hidden; padding: 0; }
.sky-acc-hero__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 22px; color: #fff; background: var(--x-pattern), radial-gradient(70% 140% at 0% 0%, rgba(255,255,255,.18), transparent 60%), linear-gradient(150deg, var(--sky-primary), var(--p-800)); }
.sky-acc-hero__me { display: flex; align-items: center; gap: 14px; min-width: 0; }
.sky-acc-hero__av img { width: 62px; height: 62px; border-radius: 20px; border: 3px solid rgba(255,255,255,.35); display: block; }
.sky-acc-hero__me b { display: block; font-size: 18px; font-weight: 900; }
.sky-acc-hero__me small { display: block; opacity: .85; font-size: 13px; font-weight: 600; }
.sky-acc-hero__tools { display: flex; gap: 8px; }
.sky-acc-tool { position: relative; width: 44px; height: 44px; border-radius: 14px; display: grid; place-items: center; color: #fff; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.2); transition: background .2s, color .2s; }
.sky-acc-tool:hover { background: #fff; color: var(--sky-primary); }
.sky-acc-tool.is-out:hover { color: var(--danger); }
.sky-acc-tool .sky-i { width: 21px; height: 21px; }
.sky-acc-tool i { position: absolute; top: -6px; left: -6px; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 99px; background: var(--sky-accent); color: var(--ink); font-size: 11px; font-weight: 900; font-style: normal; display: grid; place-items: center; }
.sky-acc-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; padding: 14px; }
.sky-acc-stat { --c: var(--sky-primary); display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 16px; background: var(--bg); transition: transform .2s, box-shadow .2s, background .2s; }
.sky-acc-stat:hover { background: #fff; box-shadow: var(--shadow); transform: translateY(-2px); }
.sky-acc-stat__ic { width: 44px; height: 44px; flex: none; border-radius: 14px; display: grid; place-items: center; color: var(--c); background: color-mix(in srgb, var(--c) 12%, #fff); }
.sky-acc-stat__ic .sky-i { width: 22px; height: 22px; }
.sky-acc-stat small { display: block; font-size: 12px; font-weight: 700; color: var(--muted); }
.sky-acc-stat b { display: block; font-size: 21px; font-weight: 900; color: var(--ink); line-height: 1.3; }
.sky-acc-stat.is-ok { --c: var(--success); }
.sky-acc-stat.is-warn { --c: #e8a200; }
.sky-acc-stat.is-love { --c: #e5487a; }
.sky-acc-stat.is-bad { --c: var(--danger); }
.sky-acc-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); gap: 18px; }
.sky-acc-info { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.sky-acc-info p { margin: 0; padding: 12px 14px; border-radius: 14px; background: var(--bg); }
.sky-acc-info label { display: block; font-size: 11.5px; font-weight: 700; color: var(--muted); margin: 0 0 2px; }
.sky-acc-info span { display: block; font-weight: 800; color: var(--ink); font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sky-acc-recent .sky-nav-btns { display: flex; gap: 6px; }
.sky-dash__orders { margin: 0; padding: 0; list-style: none; display: grid; gap: 6px; }
.sky-dash__orders li a { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; padding: 10px; border-radius: 14px; border: 1px solid var(--line); transition: background .2s, border-color .2s; }
.sky-dash__orders li a:hover { background: var(--bg); border-color: transparent; }
.sky-dash__thumbs { display: flex; padding-right: 12px; }
.sky-dash__thumbs img { width: 42px; height: 42px; border-radius: 12px; border: 2px solid #fff; margin-right: -12px; object-fit: cover; box-shadow: 0 4px 10px rgba(24,32,47,.12); }
.sky-dash__oinfo b { display: block; color: var(--ink); font-size: 14px; }
.sky-dash__oinfo small { color: var(--muted); font-size: 12px; }
.sky-status { display: inline-block; padding: 3px 10px; border-radius: 9px; font-size: 11.5px; font-weight: 800; background: var(--bg); color: var(--text); white-space: nowrap; }
.sky-status--processing, .sky-status--on-hold, .sky-status--pending { background: color-mix(in srgb, #e8a200 14%, #fff); color: #a66f00; }
.sky-status--completed { background: color-mix(in srgb, var(--success) 12%, #fff); color: var(--success); }
.sky-status--cancelled, .sky-status--failed, .sky-status--refunded { background: color-mix(in srgb, var(--danger) 10%, #fff); color: var(--danger); }
.sky-dash__links { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.sky-dash__links a { display: flex; align-items: center; gap: 10px; padding: 14px; border-radius: 16px; background: var(--bg); font-weight: 800; color: var(--ink); font-size: 13.5px; transition: background .2s, color .2s, transform .2s; }
.sky-dash__links a:hover { background: var(--p-50); color: var(--sky-primary); transform: translateY(-2px); }
.sky-dash__links .sky-i { width: 22px; height: 22px; color: var(--sky-primary); flex: none; }
.sky-empty--soft { padding: 26px 16px; border-radius: 16px; background: var(--bg); color: var(--muted); }
.sky-empty .sky-btn { margin-top: 8px; }
.sky-products-grid--acc { grid-template-columns: repeat(3, minmax(0, 1fr)); }
/* tables (orders, downloads) */
.sky-acc-ep table.shop_table { border: 1px solid var(--line) !important; border-radius: 16px !important; overflow: hidden; border-collapse: separate !important; border-spacing: 0; }
.sky-acc-ep table.shop_table th { background: var(--bg); font-weight: 800; color: var(--ink); font-size: 13px; padding: 12px 14px !important; }
.sky-acc-ep table.shop_table td { padding: 12px 14px !important; font-size: 13.5px; vertical-align: middle; }
.sky-acc-ep .woocommerce-orders-table .button, .sky-acc-ep .woocommerce-orders-table__cell-order-actions .button { padding: 7px 14px !important; min-height: 0; font-size: 12.5px !important; border-radius: 10px !important; margin: 2px; }
.sky-acc-ep .woocommerce-orders-table__cell-order-number a { font-weight: 900; color: var(--sky-primary); }
.sky-acc-ep .woocommerce-pagination { display: flex; gap: 8px; margin-top: 14px; }
/* edit account form */
.sky-acc-ep form.edit-account { display: flex; flex-wrap: wrap; justify-content: space-between; column-gap: 3%; }
.sky-acc-ep form.edit-account fieldset { width: 100%; margin: 10px 0 16px; padding: 18px; border: 1px dashed var(--line); border-radius: 16px; display: flex; flex-wrap: wrap; justify-content: space-between; column-gap: 3%; }
.sky-acc-ep form.edit-account legend { padding: 0 8px; font-weight: 900; color: var(--ink); }
.sky-acc-ep form.edit-account em { display: block; font-size: 12px; color: var(--muted); margin-top: 4px; }
.sky-acc-ep form.edit-account > p:last-of-type { width: 100%; }
.sky-acc-ep .woocommerce-address-fields__field-wrapper { display: flex; flex-wrap: wrap; justify-content: space-between; column-gap: 3%; }
/* order view */
.sky-acc-ep .woocommerce-order-details, .sky-acc-ep .woocommerce-customer-details { margin-top: 18px; }
.sky-acc-ep .woocommerce-order-details__title, .sky-acc-ep .woocommerce-column__title { font-size: 16px; font-weight: 900; margin-bottom: 12px; }
.sky-acc-ep mark { background: var(--p-50); color: var(--sky-primary); border-radius: 6px; padding: 0 6px; font-weight: 800; }
.sky-acc-ep address { padding: 16px; border-radius: 16px; background: var(--bg); border: 0 !important; font-style: normal; line-height: 2; }
/* track */
.sky-track { display: flex; gap: 10px; align-items: flex-end; flex-wrap: wrap; padding: 16px; border-radius: 18px; background: var(--bg); }
.sky-track label { flex: 1 1 220px; margin: 0 !important; }
.sky-track label span { display: block; margin-bottom: 6px; font-size: 13px; font-weight: 800; color: var(--ink); }
.sky-track input { width: 100%; height: 50px !important; }
.sky-track .sky-btn { height: 50px; }
.sky-track__quick { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 12px 0 0; font-size: 12.5px; color: var(--muted); font-weight: 700; }
.sky-track__quick a { padding: 3px 10px; border-radius: 9px; background: var(--p-50); color: var(--sky-primary); font-weight: 900; }
.sky-track__res { margin-top: 18px; }
.sky-trk { padding: 18px; border: 1px solid var(--line); border-radius: 18px; display: flex; flex-direction: column; gap: 16px; }
.sky-trk__head { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; font-size: 13.5px; color: var(--muted); font-weight: 700; }
.sky-trk__head b { color: var(--ink); font-size: 16px; }
.sky-trk__head mark { margin-right: auto; }
.sky-trk__steps { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; padding: 0; list-style: none; }
.sky-trk__steps li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center; font-size: 12.5px; font-weight: 800; color: var(--muted); }
.sky-trk__steps li::before { content: ""; position: absolute; top: 20px; left: 50%; width: 100%; height: 3px; background: var(--line); z-index: 0; }
.sky-trk__steps li:first-child::before { display: none; }
.sky-trk__steps li.is-on::before { background: var(--success); }
.sky-trk__steps i { position: relative; z-index: 1; width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: #fff; border: 2px solid var(--line); color: var(--muted); }
.sky-trk__steps i .sky-i { width: 20px; height: 20px; }
.sky-trk__steps li.is-on { color: var(--ink); }
.sky-trk__steps li.is-on i { background: var(--success); border-color: var(--success); color: #fff; }
.sky-trk__code { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 12px 14px; border-radius: 14px; background: color-mix(in srgb, var(--sky-accent) 18%, #fff); font-weight: 700; color: var(--ink); margin: 0 0 12px; }
.sky-trk__code > .sky-i { width: 22px; height: 22px; color: var(--a-700); }
.sky-trk__code .sky-iconbtn { width: 32px; height: 32px; }
.sky-trk__items { display: flex; flex-wrap: wrap; gap: 8px; }
.sky-trk__items span { position: relative; }
.sky-trk__items img { width: 54px; height: 54px; border-radius: 14px; object-fit: cover; }
.sky-trk__items i { position: absolute; top: -5px; right: -5px; min-width: 20px; height: 20px; border-radius: 99px; background: var(--sky-primary); color: #fff; font-size: 11px; font-style: normal; font-weight: 900; display: grid; place-items: center; border: 2px solid #fff; }
.sky-trk .sky-btn { align-self: flex-start; }
/* notices */
.sky-ntc { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.sky-ntc__i { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 14px; border-radius: 16px; border: 1.5px solid var(--p-200); background: var(--p-50); }
.sky-ntc__i.is-read { border-color: var(--line); background: #fff; }
.sky-ntc__ic { width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; background: #fff; color: var(--sky-primary); }
.sky-ntc__i.is-read .sky-ntc__ic { background: var(--bg); color: var(--muted); }
.sky-ntc__ic .sky-i { width: 20px; height: 20px; }
.sky-ntc__t b { display: block; color: var(--ink); font-size: 14px; }
.sky-ntc__t small { color: var(--muted); font-size: 12px; }
.sky-ntc__body { grid-column: 1 / -1; padding: 12px 14px; border-radius: 12px; background: var(--bg); font-size: 13.5px; }
/* coupons */
.sky-cpn { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
.sky-cpn__i { position: relative; display: flex; overflow: hidden; border-radius: 18px; border: 1.5px dashed var(--p-200); background: #fff; }
.sky-cpn__amount { flex: none; width: 96px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 12px; color: #fff; background: var(--x-pattern), linear-gradient(150deg, var(--sky-primary), var(--p-800)); }
.sky-cpn__amount b { font-size: 21px; font-weight: 900; line-height: 1.3; text-align: center; }
.sky-cpn__amount small { font-size: 12px; opacity: .85; }
.sky-cpn__i::before, .sky-cpn__i::after { content: ""; position: absolute; right: 86px; width: 20px; height: 20px; border-radius: 50%; background: var(--page); border: 1.5px dashed var(--p-200); }
.sky-cpn__i::before { top: -11px; }
.sky-cpn__i::after { bottom: -11px; }
.sky-cpn__info { flex: 1; min-width: 0; padding: 12px 22px 12px 14px; display: flex; flex-direction: column; gap: 4px; }
.sky-cpn__code { display: flex; align-items: center; gap: 8px; }
.sky-cpn__code b { font-size: 16px; font-weight: 900; color: var(--ink); letter-spacing: 1px; }
.sky-cpn__code .sky-iconbtn { width: 32px; height: 32px; }
.sky-cpn__info small { font-size: 12px; color: var(--muted); }
/* address book */
.sky-ab__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 16px; }
.sky-ab__top p { margin: 0; flex: 1 1 300px; font-size: 13px; }
.sky-ab.is-busy { opacity: .6; pointer-events: none; }
.sky-ab__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)); gap: 12px; }
.sky-ab__i { display: flex; flex-direction: column; gap: 10px; padding: 16px; border-radius: 18px; border: 1.5px solid var(--line); background: #fff; transition: border-color .2s, box-shadow .2s; }
.sky-ab__i:hover { box-shadow: var(--shadow); }
.sky-ab__i.is-def { border-color: var(--sky-primary); background: linear-gradient(180deg, var(--p-50), #fff 60%); }
.sky-ab__h { display: flex; align-items: center; gap: 10px; }
.sky-ab__h h3 { margin: 0; font-size: 15px; font-weight: 900; color: var(--ink); }
.sky-ab__ic { width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; background: var(--p-50); color: var(--sky-primary); }
.sky-ab__ic .sky-i { width: 20px; height: 20px; }
.sky-ab__badge { margin-right: auto; padding: 2px 10px; border-radius: 9px; background: var(--sky-primary); color: #fff; font-size: 11.5px; font-weight: 800; }
.sky-ab__line { margin: 0; font-size: 13.5px; line-height: 1.9; color: var(--text); }
.sky-ab__meta { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 12.5px; color: var(--muted); }
.sky-ab__meta li { display: flex; align-items: center; gap: 5px; }
.sky-ab__meta .sky-i { width: 15px; height: 15px; }
.sky-ab__meta b { color: var(--ink); }
.sky-ab__act { display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto; padding-top: 10px; border-top: 1px dashed var(--line); }
.sky-ab__act button { display: inline-flex; align-items: center; gap: 4px; padding: 6px 10px; border-radius: 10px; background: var(--bg); font-size: 12.5px; font-weight: 800; color: var(--ink); transition: background .2s, color .2s; }
.sky-ab__act button .sky-i { width: 15px; height: 15px; }
.sky-ab__act button:hover { background: var(--p-50); color: var(--sky-primary); }
.sky-ab__act button.is-del:hover { background: color-mix(in srgb, var(--danger) 10%, #fff); color: var(--danger); }
.sky-ab__form { margin-bottom: 18px; padding: 18px; border-radius: 18px; border: 1.5px solid var(--p-200); background: var(--p-50); }
.sky-ab__ft { display: block; margin-bottom: 14px; font-size: 15px; font-weight: 900; color: var(--ink); }
.sky-ab__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; }
.sky-ab__f { margin: 0 0 12px; }
.sky-ab__f.is-wide { grid-column: 1 / -1; }
.sky-ab__f label { display: block; font-size: 13px; font-weight: 800; color: var(--ink); margin-bottom: 6px; }
.sky-ab__f abbr { color: var(--danger); text-decoration: none; }
.sky-ab__f input, .sky-ab__f select, .sky-ab__f textarea { background: #fff !important; }
.sky-ab__f textarea { min-height: 80px !important; }
.sky-ab__msg { margin: 0 0 12px; padding: 10px 14px; border-radius: 12px; background: color-mix(in srgb, var(--danger) 9%, #fff); color: var(--danger); font-weight: 700; font-size: 13px; }
.sky-ab__btns { display: flex; gap: 8px; }
/* auth on the account page */
.sky-auth-page { max-width: 860px; margin: 10px auto 20px; }
.sky-auth--page { width: 100%; display: grid; grid-template-columns: 300px minmax(0, 1fr); overflow: hidden; border-radius: var(--r-xl); background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow-lg); }
.sky-auth__2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.sky-auth__2 .sky-input input { padding: 0 14px; }
.sky-auth__hp { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
/* Cart: cross-sells carousel */
.sky-cart-cross .sky-h2 { font-size: 19px; }
.sky-cart-cross .sky-head { margin-bottom: 14px; }
.woocommerce form.login, .woocommerce form.register { border: 0 !important; padding: 0 !important; margin: 0 !important; }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1279px) {
	.sky-sp__top { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	.sky-buybox { grid-column: 1 / -1; position: static; }
	.sky-products-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.sky-shop--full .sky-products-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.sky-playout { grid-template-columns: 260px minmax(0, 1fr); gap: 24px; }
}
@media (max-width: 991px) {
	.sky-shop { grid-template-columns: 1fr; }
	.sky-shop__side { position: fixed; inset: 0; z-index: 220; max-height: none; border-radius: 0; visibility: hidden; pointer-events: none; overflow: hidden; }
	.sky-shop__side.is-open { visibility: visible; pointer-events: auto; }
	.sky-shop__overlay { display: block; position: absolute; inset: 0; background: rgba(10,14,26,.55); opacity: 0; transition: opacity .3s; }
	.sky-shop__side.is-open .sky-shop__overlay { opacity: 1; }
	.sky-shop__panel { position: absolute; top: 0; bottom: 0; right: 0; width: min(90vw, 380px); background: #fff; overflow-y: auto; padding: 10px; transform: translateX(100%); transition: transform .35s var(--ease); }
	.sky-shop__side.is-open .sky-shop__panel { transform: none; }
	.sky-shop__close { display: grid; position: absolute; top: 12px; left: 12px; z-index: 3; background: var(--bg); }
	.sky-filters { border: 0; padding: 0 6px 80px; }
	.sky-filters__foot { position: fixed; bottom: 0; right: 0; width: min(90vw, 380px); padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid var(--line); }
	.sky-sortbar__filter { display: inline-flex; }
	.sky-sortbar__opts, .sky-sortbar__label { display: none; }
	.sky-sortbar__select { display: block; margin-right: auto; height: 40px; width: auto !important; min-height: 0 !important; border: 1.5px solid var(--line); border-radius: 12px; padding: 0 12px 0 34px; font-weight: 700; font-size: 13px; appearance: none; -webkit-appearance: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%238a93a6' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat left 10px center; }
	.sky-sp__body { grid-template-columns: minmax(0, 1fr); }
	.sky-sp__side { display: none; }
	.sky-ratingbox.is-inline { display: block; margin-bottom: 18px; }
	.sky-sp__sticky { position: static; }
	.sky-mini { display: none; }
	.sky-phero { grid-template-columns: 1fr; padding: 18px; }
	.sky-playout { grid-template-columns: minmax(0, 1fr); }
	.sky-playout__side { display: none; }
	.sky-pfloat { display: block; }
	.sky-layout { grid-template-columns: 1fr; }
	.woocommerce-cart .sky-wc-page > .woocommerce, .woocommerce-checkout form.checkout, .woocommerce-account .sky-wc-page > .woocommerce { grid-template-columns: minmax(0, 1fr); }
	.cart-collaterals { grid-column: 1; grid-row: auto; }
	.sky-cart-cross { order: 3; padding: 14px 12px 4px; }
	.sky-ck { grid-template-columns: minmax(0, 1fr); }
	.sky-ck__sticky { position: static; }
	.sky-acc { grid-template-columns: minmax(0, 1fr); }
	.sky-accnav { position: static; }
	.sky-accnav ul { display: flex; overflow-x: auto; gap: 6px; scrollbar-width: none; padding-bottom: 2px; }
	.sky-accnav ul::-webkit-scrollbar { display: none; }
	.sky-accnav li a { white-space: nowrap; background: var(--bg); padding: 9px 12px; }
	.sky-accnav li.is-active a::before { display: none; }
	.sky-accnav li.woocommerce-MyAccount-navigation-link--customer-logout { margin: 0; padding: 0; border: 0; }
	.sky-accnav__logo { display: none; }
	.sky-acc-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sky-acc-grid { grid-template-columns: minmax(0, 1fr); }
	.sky-products-grid--acc { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.single-product .sky-stickybuy { position: fixed; z-index: 95; bottom: 0; right: 0; left: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.97); backdrop-filter: blur(10px); border-top: 1px solid var(--line); box-shadow: 0 -10px 30px rgba(24,32,47,.1); }
	.single-product .sky-stickybuy .sky-btn { height: 50px; padding: 0 20px; flex: 1; max-width: 230px; }
	.single-product .sky-stickybuy .sky-cprice__now b { font-size: 18px; }
	.single-product { padding-bottom: 76px; }
	.single-product .sky-float { bottom: 92px; }
}
@media (max-width: 767px) {
	.sky-breadcrumb { font-size: 12px; overflow-x: auto; flex-wrap: nowrap; white-space: nowrap; scrollbar-width: none; }
	.sky-products-grid, .sky-shop--full .sky-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.sky-card__foot { gap: 6px; }
	.sky-sp__top { grid-template-columns: 1fr; gap: 18px; }
	.sky-gallery { grid-template-columns: 1fr; grid-template-areas: "main" "thumbs"; }
	.sky-gallery__thumbs { height: auto; }
	.sky-gallery__thumbs .swiper-slide { width: 66px !important; height: 66px !important; }
	.sky-gallery__thumb { width: 66px; height: 66px; border-radius: 14px; }
	.sky-gallery__dots { display: flex; position: absolute; bottom: 12px !important; left: 50% !important; transform: translateX(-50%); width: auto !important; z-index: 3; gap: 5px; padding: 5px 8px; border-radius: 99px; background: rgba(255,255,255,.85); }
	.sky-gallery__dots .swiper-pagination-bullet { width: 7px; height: 7px; margin: 0 !important; background: var(--p-200); opacity: 1; transition: width .3s; border-radius: 99px; }
	.sky-gallery__dots .swiper-pagination-bullet-active { width: 18px; background: var(--sky-primary); }
	.sky-gallery__arrow, .sky-gallery__hint { display: none; }
	.sky-features ul { grid-template-columns: 1fr; }
	.sky-spnav { margin-top: 24px; }
	.sky-spnav a { height: 42px; padding: 0 14px; font-size: 13.5px; flex: 1; justify-content: center; }
	.sky-box { padding: 16px; border-radius: 20px; }
	.dwspecs-product-table td, .woocommerce-product-attributes th, .woocommerce-product-attributes td { padding: 10px 12px !important; font-size: 13px; }
	#review_form .comment-form { grid-template-columns: 1fr; }
	#review_form .comment-form-author, #review_form .comment-form-email { grid-column: 1; }
	.sky-points-input { grid-template-columns: 1fr; }
	.sky-story__nav { display: none; }
	.sky-story__stage img { max-width: 100vw; border-radius: 0; }
	.sky-story__hint span { display: none; }
	.sky-postnav { grid-template-columns: 1fr; }
	.sky-postnav__item.is-next { grid-column: 1; }
	.sky-author { flex-direction: column; }
	.sky-steps b { font-size: 11px; }
	.sky-steps span { width: 42px; height: 42px; border-radius: 14px; }
	.sky-steps li::before { top: 20px; }
	.woocommerce-cart-form { padding: 4px 12px; }
	.woocommerce-cart-form .coupon { float: none; width: 100%; margin-bottom: 10px; }
	.woocommerce-cart-form .coupon input#coupon_code { width: 100% !important; }
	.woocommerce-cart-form button[name="update_cart"] { float: none; width: 100%; }
	.woocommerce form .form-row-first, .woocommerce form .form-row-last { width: 100% !important; }
	.sky-ck__card, .sky-acc-card { padding: 16px; }
	.sky-acc-hero { padding: 0; }
	.sky-acc-hero__top { padding: 16px; flex-wrap: wrap; }
	.sky-acc-hero__av img { width: 50px; height: 50px; }
	.sky-acc-stats { padding: 10px; gap: 8px; }
	.sky-acc-stat { padding: 10px; gap: 8px; }
	.sky-acc-stat__ic { width: 36px; height: 36px; }
	.sky-acc-info { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
	.sky-acc-info p { padding: 10px 12px; }
	.sky-dash__orders li a { grid-template-columns: auto minmax(0, 1fr); }
	.sky-dash__orders .sky-status { grid-column: 2; justify-self: start; }
	.sky-trk__steps { font-size: 11px; }
	.sky-trk__steps i { width: 34px; height: 34px; }
	.sky-trk__steps li::before { top: 16px; }
	.sky-ab__grid, .sky-auth__2 { grid-template-columns: minmax(0, 1fr); }
	.sky-auth--page { grid-template-columns: minmax(0, 1fr); }
	.sky-auth--page .sky-auth__side { display: none; }
	.sky-acc-ep table.shop_table_responsive tr { display: block; padding: 10px 0; border-bottom: 1px solid var(--line); }
	.sky-acc-ep table.shop_table_responsive td { display: flex; justify-content: space-between; gap: 8px; border: 0 !important; padding: 6px 12px !important; }
	.sky-acc-ep table.shop_table_responsive td::before { content: attr(data-title); font-weight: 800; color: var(--muted); }
	.sky-acc-ep table.shop_table_responsive thead { display: none; }
}

/* Cart table → stacked cards on small screens (replaces woocommerce-smallscreen) */
@media (max-width: 768px) {
	.woocommerce-cart-form { padding: 8px 12px; }
	.woocommerce-cart-form table.shop_table, .woocommerce-cart-form table.shop_table tbody, .woocommerce-cart-form table.shop_table tr, .woocommerce-cart-form table.shop_table td { display: block; width: 100%; }
	.woocommerce-cart-form table.shop_table thead { display: none; }
	.woocommerce-cart-form tr.cart_item { position: relative; display: grid !important; grid-template-columns: 84px minmax(0, 1fr); column-gap: 12px; padding: 14px 0; border-bottom: 1px dashed var(--line); }
	.woocommerce-cart-form tr.cart_item td { padding: 3px 0 !important; border: 0 !important; text-align: start !important; }
	.woocommerce-cart-form tr.cart_item td.product-thumbnail { grid-row: 1 / span 4; grid-column: 1; display: block !important; }
	.woocommerce-cart-form tr.cart_item td.product-thumbnail img { width: 84px !important; height: 84px; }
	.woocommerce-cart-form tr.cart_item td:not(.product-thumbnail) { grid-column: 2; }
	.woocommerce-cart-form tr.cart_item td.product-remove { position: absolute; top: 12px; left: 0; width: auto; }
	.woocommerce-cart-form tr.cart_item td.product-name { padding-left: 40px !important; }
	.woocommerce-cart-form tr.cart_item td.product-price, .woocommerce-cart-form tr.cart_item td.product-subtotal { display: flex; justify-content: space-between; gap: 8px; font-size: 13px; }
	.woocommerce-cart-form tr.cart_item td.product-price::before, .woocommerce-cart-form tr.cart_item td.product-subtotal::before { content: attr(data-title); color: var(--muted); font-weight: 600; }
	.woocommerce-cart-form td.actions { display: grid !important; gap: 10px; }
	.woocommerce-cart-form td.actions .coupon { float: none; width: 100%; }
	.woocommerce-cart-form td.actions .coupon input#coupon_code { flex: 1; width: auto !important; min-width: 0; }
	.woocommerce-cart-form button[name="update_cart"] { float: none; width: 100%; }
	.woocommerce-checkout table.shop_table td, .woocommerce-checkout table.shop_table th { padding: 10px 8px !important; }
}

/* Single post: floating TOC + share (mobile / tablet), opposite side of the contact button */
.sky-pfloat { display: none; position: fixed; bottom: 86px; left: 14px; z-index: 140; pointer-events: none; direction: rtl; }
.sky-pfloat--right { left: auto; right: 14px; }
.sky-pfloat__btns { display: flex; flex-direction: column; gap: 10px; align-items: flex-end; }
.sky-pfloat--right .sky-pfloat__btns { align-items: flex-start; }
.sky-pfloat__btn { pointer-events: auto; width: 50px; height: 50px; border-radius: 50%; display: grid; place-items: center; background: #fff; color: var(--ink); border: 1px solid var(--line); box-shadow: 0 10px 24px -8px rgba(24,32,47,.3); transition: background .2s, color .2s, transform .2s; }
.sky-pfloat__btn .sky-i { width: 22px; height: 22px; }
.sky-pfloat__btn[aria-expanded="true"] { background: var(--sky-primary); color: #fff; border-color: var(--sky-primary); transform: scale(1.05); }
.sky-pfloat__panel { position: absolute; bottom: 0; left: 62px; width: min(320px, calc(100vw - 168px)); max-height: min(60vh, 460px); overflow: auto; overscroll-behavior: contain; pointer-events: none; opacity: 0; visibility: hidden; transform: translateY(10px) scale(.97); transform-origin: bottom left; transition: opacity .22s, transform .25s var(--ease), visibility .25s; border-radius: var(--r-lg); box-shadow: var(--shadow-lg); background: #fff; }
.sky-pfloat--right .sky-pfloat__panel { left: auto; right: 62px; transform-origin: bottom right; }
.sky-pfloat__panel.is-open { pointer-events: auto; opacity: 1; visibility: visible; transform: none; }
.sky-pfloat__panel .sky-toc, .sky-pfloat__panel .sky-pshare { border: 0; max-height: none; }
@media (max-width: 991px) { .sky-pfloat { display: block; } }
