/* SOKK — footer helpers, EU CTA, classic-WooCommerce bridge to theme tokens. */
/* ---- token bridge: prototype variables → theme.json presets ----
   Ported prototype CSS references --bg/--ink/--line/… — alias them to the WP
   preset variables so those rules work verbatim and follow style variations. */
:root{
	--bg:var(--wp--preset--color--base);
	--surface:var(--wp--preset--color--surface);
	--raise:var(--wp--preset--color--raise);
	--ink:var(--wp--preset--color--contrast);
	--muted:var(--wp--preset--color--muted);
	--faint:var(--wp--preset--color--faint);
	--line:var(--wp--preset--color--line);
	--accent:var(--wp--preset--color--accent);
	--footer-bg:var(--wp--preset--color--footer);
	--maxw:var(--wp--style--global--wide-size,1480px);
	--gut:var(--wp--preset--spacing--40);
	--sans:var(--wp--preset--font-family--sans);
	--mono:var(--wp--preset--font-family--mono);
}
.sokk-footer a{color:inherit;text-decoration:none}
.sokk-footer a:hover{text-decoration:underline;color:inherit}
.sokk-eu-cta{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.16);margin-top:36px;padding-top:28px}
.sokk-eu-cta a{display:inline-flex;align-items:center;gap:10px;font-family:var(--wp--preset--font-family--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:#fff;border:1px solid rgba(255,255,255,.55);padding:10px 16px;transition:background .2s,color .2s}
.sokk-eu-cta a span{opacity:.6;letter-spacing:.04em}
.sokk-eu-cta a:hover{background:#fff;color:var(--wp--preset--color--footer)}
.sokk-eu-cta small{font-family:var(--wp--preset--font-family--mono);font-size:11px;letter-spacing:.06em;color:rgba(255,255,255,.5)}
/* classic Woo output (shortcodes, widgets) → SOKK tokens */
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-weight:700;text-transform:uppercase;letter-spacing:-.01em;font-size:15px;color:var(--wp--preset--color--contrast)}
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{font-family:var(--wp--preset--font-family--mono);color:var(--wp--preset--color--contrast);font-size:13px}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt{border-radius:0;font-family:var(--wp--preset--font-family--mono);font-size:12px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;padding:13px 22px;background:var(--wp--preset--color--contrast);color:var(--wp--preset--color--base);border:1px solid var(--wp--preset--color--contrast);transition:background .25s,color .25s}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:transparent;color:var(--wp--preset--color--contrast)}
.woocommerce span.onsale{border-radius:0;background:var(--wp--preset--color--contrast);color:var(--wp--preset--color--base);font-family:var(--wp--preset--font-family--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;line-height:1;min-width:0;min-height:0;padding:7px 10px}
.woocommerce .star-rating span::before{color:var(--wp--preset--color--accent)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce select,.woocommerce .quantity .qty{border-radius:0;border:1px solid var(--wp--preset--color--line);background:var(--wp--preset--color--raise);color:var(--wp--preset--color--contrast);padding:11px 13px}
.woocommerce nav.woocommerce-pagination ul{border:none}
.woocommerce nav.woocommerce-pagination ul li{border:none}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{font-family:var(--wp--preset--font-family--mono);letter-spacing:.06em}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--wp--preset--color--contrast);color:var(--wp--preset--color--base)}
/* block-based Woo (product-collection, cart/checkout/mini-cart blocks) → SOKK tokens */
.wp-block-woocommerce-product-template .wp-block-post-title,.wp-block-woocommerce-product-template .wp-block-post-title a{font-weight:700;text-transform:uppercase;letter-spacing:-.01em;text-decoration:none}
.wc-block-components-product-price,.wp-block-woocommerce-product-price{font-family:var(--wp--preset--font-family--mono);font-size:13px}
.wp-block-woocommerce-product-image img{aspect-ratio:4/5;object-fit:cover;width:100%}
.wc-block-breadcrumbs{font-family:var(--wp--preset--font-family--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--wp--preset--color--muted)}
.wc-block-breadcrumbs a{color:inherit;text-decoration:none}
.wc-block-catalog-sorting select,.woocommerce-ordering select{border-radius:0;border:1px solid var(--wp--preset--color--line);background:var(--wp--preset--color--raise);font-family:var(--wp--preset--font-family--mono);font-size:12px;padding:9px 12px}
.wc-block-components-button,.wc-block-components-button:not(.is-link){border-radius:0!important;font-family:var(--wp--preset--font-family--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;background:var(--wp--preset--color--contrast);color:var(--wp--preset--color--base);border:1px solid var(--wp--preset--color--contrast)}
.wc-block-components-button:hover{background:transparent;color:var(--wp--preset--color--contrast)}
.wc-block-components-quantity-selector{border-radius:0;border:1px solid var(--wp--preset--color--line)}
.wc-block-cart-item__product .wc-block-components-product-name{font-weight:700;text-transform:uppercase;letter-spacing:-.01em;color:var(--wp--preset--color--contrast);text-decoration:none}
.wc-block-components-totals-item,.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-family:var(--wp--preset--font-family--mono)}
.wc-block-components-sidebar .wc-block-components-panel,.wc-block-components-sidebar{background:var(--wp--preset--color--surface)}
.wc-block-components-text-input input,.wc-block-components-combobox .components-combobox-control__input,.wc-block-components-select .components-custom-select-control__button{border-radius:0!important;border-color:var(--wp--preset--color--line)!important;background:var(--wp--preset--color--raise)}
.wc-block-components-notice-banner{border-radius:0}
.wc-block-mini-cart__button{color:inherit}
.wc-block-mini-cart__drawer{background:var(--wp--preset--color--base)}
.wc-block-mini-cart__title,.wc-block-mini-cart__drawer h2{text-transform:uppercase;letter-spacing:-.01em}
.wp-block-woocommerce-add-to-cart-form select,.wp-block-woocommerce-add-to-cart-form .qty{border-radius:0;border:1px solid var(--wp--preset--color--line);background:var(--wp--preset--color--raise);padding:11px 13px;font-family:var(--wp--preset--font-family--mono)}
.wp-block-woocommerce-add-to-cart-form table.variations th{font-family:var(--wp--preset--font-family--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--muted);text-align:left}
.wc-tabs-wrapper ul.tabs li a,.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-family:var(--wp--preset--font-family--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--wp--preset--color--muted)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--wp--preset--color--contrast)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs li{border-color:var(--wp--preset--color--line);border-radius:0;background:transparent}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}
.woocommerce-MyAccount-navigation ul li a{font-family:var(--wp--preset--font-family--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--wp--preset--color--muted);text-decoration:none;display:block;padding:10px 12px;border:1px solid transparent}
.woocommerce-MyAccount-navigation ul li.is-active a{color:var(--wp--preset--color--contrast);border-color:var(--wp--preset--color--line);background:var(--wp--preset--color--surface)}
.woocommerce table.shop_table{border-radius:0;border-color:var(--wp--preset--color--line)}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:var(--wp--preset--color--line)}
.wp-block-search .wp-block-search__input{border-radius:0;border:1px solid var(--wp--preset--color--line);background:var(--wp--preset--color--raise);font-family:var(--wp--preset--font-family--mono);font-size:12px;padding:8px 10px}
.wp-block-search .wp-block-search__button{border-radius:0;background:transparent;border:none;color:var(--wp--preset--color--contrast)}
.wp-block-details{border-top:1px solid var(--wp--preset--color--line);padding:16px 0}
.wp-block-details summary{font-weight:700;text-transform:uppercase;letter-spacing:-.01em;cursor:pointer}
.wp-block-details:last-of-type{border-bottom:1px solid var(--wp--preset--color--line)}
/* always-on copies of block styles + layout helpers */
.is-style-eyebrow{font-family:var(--wp--preset--font-family--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--wp--preset--color--muted)}
.is-style-ghost .wp-block-button__link{background:transparent;color:var(--wp--preset--color--contrast)}
.is-style-ghost .wp-block-button__link:hover{background:var(--wp--preset--color--contrast);color:var(--wp--preset--color--base)}
.sokk-measure{max-width:600px}
.sokk-tile a{color:inherit;text-decoration:none}
.sokk-tile a:hover{text-decoration:underline}

/* ================================================================
   Prototype port (styles.css → WP). Everything below reads the
   bridge variables, so all six style variations restyle it free.
   ================================================================ */

/* ---- type ---- */
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.mono{font-family:var(--mono);letter-spacing:.02em}
.display{font-weight:700;line-height:.92;letter-spacing:-.025em;text-transform:uppercase;text-wrap:balance;margin:0}
h1.wp-block-heading,h2.wp-block-heading{text-wrap:balance}
::selection{background:var(--ink);color:var(--bg)}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background .5s ease,color .5s ease}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-thumb{background:var(--line);border:3px solid var(--bg)}

/* ---- layout ---- */
.wrap{max-width:var(--maxw);margin:0 auto;padding-inline:var(--gut);width:100%}
.section{padding-block:clamp(56px,9vw,140px)}
.rule{height:1px;background:var(--line);border:0;margin:0}

/* ---- knit tile (pure CSS product placeholder) ---- */
.tile{position:relative;width:100%;aspect-ratio:4/5;overflow:hidden;background:var(--tc,#ccc);isolation:isolate}
.tile.tall{aspect-ratio:3/4}
.tile.wide{aspect-ratio:1/1}
.tile.fill{position:absolute;inset:0;height:100%;aspect-ratio:auto}
.tile.rib::after,.tile.marl::after,.tile.mesh::after{content:"";position:absolute;inset:0;z-index:1;background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.10) 0 3px,rgba(0,0,0,.05) 3px 4px,rgba(0,0,0,.10) 4px 7px,rgba(255,255,255,.05) 7px 8px);mix-blend-mode:soft-light;opacity:.9}
.tile.terry::after,.tile.plush::after{content:"";position:absolute;inset:0;z-index:1;background-image:radial-gradient(rgba(255,255,255,.16) .8px,transparent 1.1px),radial-gradient(rgba(0,0,0,.10) .8px,transparent 1.1px);background-size:5px 5px,5px 5px;background-position:0 0,2.5px 2.5px;mix-blend-mode:soft-light;opacity:.8}
.tile.sheer::after{content:"";position:absolute;inset:0;z-index:1;background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 2px,rgba(0,0,0,.03) 2px 3px);opacity:.7}
.tile.marl{background-image:linear-gradient(135deg,rgba(255,255,255,.18) 0 25%,transparent 0 50%,rgba(255,255,255,.18) 0 75%,transparent 0);background-size:7px 7px}
.tile.mesh::before{content:"";position:absolute;inset:0;z-index:1;background-image:radial-gradient(circle,transparent 1.4px,var(--tc,#ccc) 1.6px);background-size:8px 8px;opacity:.5}
.tile .welt{position:absolute;left:0;right:0;z-index:2;height:14%;background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.16) 0 2px,rgba(0,0,0,.10) 2px 4px);box-shadow:0 1px 0 rgba(0,0,0,.06),0 -1px 0 rgba(255,255,255,.10) inset;mix-blend-mode:soft-light}
.tile .welt.top{top:0}
.tile .welt.bottom{bottom:0;height:9%}
.tile .sheen{position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(120% 70% at 30% 12%,rgba(255,255,255,.18),transparent 55%),linear-gradient(180deg,transparent 60%,rgba(0,0,0,.12))}
.tile.flat::after,.tile.flat::before{display:none}

/* ---- prototype button + link + chips ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:15px 26px;border:1px solid var(--ink);background:var(--ink);color:var(--bg);transition:background .25s,color .25s,transform .15s,opacity .2s;white-space:nowrap;text-decoration:none}
.btn:hover{background:transparent;color:var(--ink)}
.btn:active{transform:translateY(1px)}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:var(--bg)}
.btn.block{width:100%}
.btn.sm{padding:11px 18px;font-size:11px}
.btn[disabled]{opacity:.4;pointer-events:none}
.link-u{position:relative;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding-bottom:3px;text-decoration:none;color:inherit}
.link-u::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}
.link-u:hover::after{transform:scaleX(1)}
.chip{width:18px;height:18px;border-radius:50%;border:1px solid rgba(0,0,0,.18);position:relative;cursor:pointer;flex:none}
.chip[data-on="true"]{box-shadow:0 0 0 1.5px var(--bg),0 0 0 3px var(--ink)}
.size-pill{min-width:46px;height:42px;padding:0 12px;border:1px solid var(--line);background:var(--raise);font-family:var(--mono);font-size:12px;letter-spacing:.06em;display:inline-flex;align-items:center;justify-content:center;transition:border-color .2s,background .2s,color .2s}
.size-pill[data-on="true"]{border-color:var(--ink);background:var(--ink);color:var(--bg)}
.size-pill:hover:not([data-on="true"]){border-color:var(--ink)}
.shop-now{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:2px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);text-decoration:none}
.shop-now.light{border-color:rgba(255,255,255,.9);color:#fff}

/* ---- utilities & motion ---- */
.flex{display:flex}.between{justify-content:space-between}.center{align-items:center}
.col{flex-direction:column}.grow{flex:1}
.hide-mob{}
@media(max-width:760px){.hide-mob{display:none !important}.section{padding-block:clamp(40px,12vw,72px)}}
.fade-up{animation:fadeUp .7s cubic-bezier(.2,.7,.2,1) both}
@keyframes fadeUp{from{transform:translateY(16px)}to{transform:none}}
@keyframes marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes toastIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.fade-up{animation:none}}

/* ---- grids & responsive (verbatim breakpoints) ---- */
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(28px,2.4vw,40px) clamp(12px,1.6vw,20px)}
.cgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2vw,28px)}
@media(max-width:1080px){.pgrid{grid-template-columns:repeat(3,1fr)}.cgrid{grid-template-columns:repeat(2,1fr)}.wall{grid-template-columns:repeat(5,1fr)}}
@media(max-width:680px){.pgrid{grid-template-columns:repeat(2,1fr);gap:26px 12px}.cgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.wall{grid-template-columns:repeat(2,1fr)}.catrow{grid-template-columns:repeat(2,1fr) !important}}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr !important}.hero-split{grid-template-columns:1fr !important;height:auto !important}.hero-split > a{height:62vw !important;min-height:300px}.split-banners{grid-template-columns:1fr !important}.split-banners > a{height:72vw !important;min-height:340px !important}.split2{grid-template-columns:1fr !important;gap:32px !important}.pdp{grid-template-columns:1fr !important}.pdp-info{position:static !important}}
.rail::-webkit-scrollbar{height:0}
.rail{scrollbar-width:none}
.filter-scroll::-webkit-scrollbar{display:none}
.filter-scroll{scrollbar-width:none}
@media(min-width:761px) and (max-width:1080px){.acct-stats{grid-template-columns:repeat(2,1fr) !important}}
@media(max-width:760px){.acct-stats{grid-template-columns:1fr !important}}
@media(max-width:640px){.news-modal{grid-template-columns:1fr !important}}
@media(max-width:760px){.filter-panel-grid{grid-template-columns:1fr !important}}

/* ---- header (SOKK chrome) ---- */
.sokk-topbar{border-bottom:1px solid var(--line)}
.sokk-topbar p{font-family:var(--mono);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.sokk-header{position:sticky;top:0;z-index:40;background:var(--bg);border-bottom:1px solid var(--line);transition:background .3s}
.sokk-hd-grid{display:grid !important;grid-template-columns:1fr auto 1fr;align-items:center;min-height:64px}
.sokk-hd-grid > :first-child{justify-self:start}
.sokk-hd-grid > :nth-child(2){justify-self:center}
.sokk-hd-grid > :last-child{justify-self:end}
.sokk-header .wp-block-site-title{font-weight:800;letter-spacing:-.01em;text-transform:uppercase;line-height:1}
.sokk-header .wp-block-site-title a{text-decoration:none;display:inline-flex;align-items:baseline}
.sokk-header .wp-block-site-title a::after{content:"\00ae";font-family:var(--mono);font-weight:500;font-size:.28em;letter-spacing:0;color:var(--muted);transform:translateY(-.9em);display:inline-block;margin-left:2px}
.sokk-header .wp-block-navigation a{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sokk-header .wp-block-navigation a:hover{color:var(--ink)}
.hd-ico{color:var(--ink);display:inline-flex;align-items:center;justify-content:center;transition:opacity .2s;position:relative;text-decoration:none}
.hd-ico:hover{opacity:.55}
.hd-badge{position:absolute;top:-7px;right:-9px;min-width:15px;height:15px;padding:0 3px;border-radius:8px;background:var(--ink);color:var(--bg);font-family:var(--mono);font-size:9px;display:flex;align-items:center;justify-content:center;line-height:1}
.sokk-hd-icons{display:flex;align-items:center;gap:18px}
.sokk-region-chip{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink);text-decoration:none;transition:opacity .2s}
.sokk-region-chip:hover{opacity:.55}
.sokk-region-chip .sokk-region-sym{color:var(--muted)}
.sokk-header .wc-block-mini-cart__badge{top:-7px;right:-9px;min-width:15px;height:15px;border-radius:8px;background:var(--ink);color:var(--bg);font-family:var(--mono);font-size:9px}

/* ---- banner shades & labels ---- */
.sokk-banner{position:relative;overflow:hidden;display:block}
.sokk-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(0,0,0,.44));pointer-events:none;z-index:2}
.sokk-shade.cine{background:linear-gradient(180deg,rgba(0,0,0,.1),transparent 50%,rgba(0,0,0,.42))}
.sokk-shade.wall{top:auto;height:46%;background:linear-gradient(180deg,transparent,rgba(0,0,0,.34))}
.sokk-banner-label{position:absolute;left:0;bottom:0;z-index:3;padding:clamp(18px,2.6vw,40px);max-width:540px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.sokk-banner-label .kicker{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.82)}
.sokk-banner-label h1,.sokk-banner-label h2{color:#fff;font-size:clamp(26px,3vw,46px);margin:0;line-height:1;font-weight:700;letter-spacing:-.025em;text-transform:uppercase}
.sokk-banner-label p{color:rgba(255,255,255,.86);font-size:13.5px;line-height:1.5;margin:0;max-width:380px}

/* ---- home sections ---- */
.wall{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;background:var(--line)}
.wall a{display:block;position:relative;overflow:hidden}
.sokk-hero-wall{position:relative;background:var(--surface)}
.catrow{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:var(--line)}
.sokk-catcell{background:var(--bg);text-align:left;display:block;text-decoration:none;color:inherit}
.sokk-catcell .sokk-catmeta{padding:12px 14px 18px}
.sokk-catcell .sokk-catmeta .mono{font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.sokk-catcell .sokk-catmeta .shop-now{margin-top:6px}
.sokk-cine{position:relative;height:clamp(360px,64vh,680px);overflow:hidden}
.split-banners{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--line)}
.split-banners > a{position:relative;overflow:hidden;display:block;height:clamp(420px,66vh,720px)}
.sokk-rail-head{display:flex;justify-content:center;align-items:center;margin-bottom:26px}
.sokk-rail-head .eyebrow{letter-spacing:.2em}
.sokk-rail .wc-block-product-template{display:grid !important;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:clamp(12px,1.5vw,20px);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:none}
.sokk-rail .wc-block-product-template::-webkit-scrollbar{height:0}
.sokk-rail .wc-block-product-template > li{scroll-snap-align:start;width:auto !important}

/* ---- footer (SOKK dark) ---- */
.sokk-footer{border-top:1px solid rgba(255,255,255,.06)}
.sokk-footer .is-style-eyebrow{color:rgba(255,255,255,.5)}
.sokk-foot-top{padding-bottom:56px;border-bottom:1px solid rgba(255,255,255,.16)}
.sokk-footer .sokk-links{padding-top:48px}
.sokk-footer .sokk-links a{color:rgba(255,255,255,.6);text-decoration:none;font-size:14px;line-height:1.35;transition:color .2s}
.sokk-footer .sokk-links a:hover{color:#fff;text-decoration:none}
.sokk-footer .sokk-links p{font-size:14px;line-height:2;color:rgba(255,255,255,.7)}
.sokk-news{max-width:340px}
.sokk-news p{font-size:14px;line-height:1.5;opacity:.8;margin:0}
.sokk-news-form{display:flex;border-bottom:1px solid rgba(255,255,255,.4);margin-top:4px}
.sokk-news-form input{flex:1;background:none;border:none;color:#F5F5F7;padding:10px 0;font-family:var(--mono);font-size:13px;outline:none}
.sokk-news-form input::placeholder{color:rgba(255,255,255,.45)}
.sokk-news-form button{background:none;border:none;color:#F5F5F7;font-family:var(--mono);font-size:12px;letter-spacing:.1em;cursor:pointer}
.sokk-meta-row{margin-top:52px;padding-top:32px;border-top:1px solid rgba(255,255,255,.16)}
.sokk-region-btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.28);padding:8px 13px;text-decoration:none;transition:border-color .2s}
.sokk-region-btn:hover{border-color:rgba(255,255,255,.7)}
.sokk-region-btn span{color:rgba(255,255,255,.55)}
.sokk-dots{display:flex;gap:10px}
.sokk-dot{width:26px;height:26px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);border:none;padding:0;cursor:pointer}
.sokk-dot[data-on="true"]{box-shadow:0 0 0 2px var(--footer-bg),0 0 0 3.5px rgba(255,255,255,.9)}

/* ---- brand transition splash (used by M4 view script; inert until then) ---- */
.bt{position:fixed;inset:0;z-index:300;background:var(--bg);color:var(--ink);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;will-change:transform;overflow:hidden}
.bt-word{display:inline-flex;align-items:baseline;gap:4px;font-family:var(--sans);font-weight:700;text-transform:uppercase;letter-spacing:-.03em;line-height:1;font-size:clamp(56px,11vw,150px)}
.bt-word .reg{font-family:var(--mono);font-weight:500;font-size:.26em;letter-spacing:0;transform:translateY(-1.9em);color:var(--muted)}
.bt-line{width:min(46vw,460px);height:1px;background:var(--ink);transform-origin:center}
.bt-tag{font-family:var(--mono);font-size:11px;letter-spacing:.42em;text-transform:uppercase;color:var(--muted);padding-left:.42em}
.bt-intro{animation:bt-panel-up 2.05s cubic-bezier(.76,0,.24,1) forwards}
.bt-intro .bt-word{clip-path:inset(0 0 110% 0);opacity:0;animation:bt-word-reveal 1.05s cubic-bezier(.22,1,.36,1) .12s forwards}
.bt-intro .bt-line{transform:scaleX(0);animation:bt-line-draw .9s cubic-bezier(.76,0,.24,1) .55s forwards}
.bt-intro .bt-tag{opacity:0;animation:bt-fade-in .7s ease 1s forwards}
@keyframes bt-word-reveal{0%{clip-path:inset(0 0 110% 0);opacity:0;transform:translateY(10px)}55%{opacity:1}100%{clip-path:inset(0 0 -2% 0);opacity:1;transform:translateY(0)}}
@keyframes bt-line-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes bt-fade-in{from{opacity:0}to{opacity:1}}
@keyframes bt-panel-up{0%,62%{transform:translateY(0)}100%{transform:translateY(-101%)}}
@media (prefers-reduced-motion:reduce){.bt{display:none !important}}

/* ---- Liquid Glass skin (inert until html[data-glass="1"]; wired in M5) ---- */
html[data-glass="1"]{background:radial-gradient(48vw 46vh at 8% 6%,#8ab6ff 0%,transparent 60%),radial-gradient(46vw 44vh at 96% 4%,#ffb0dd 0%,transparent 60%),radial-gradient(50vw 50vh at 94% 96%,#6cf0c8 0%,transparent 60%),radial-gradient(48vw 46vh at 4% 98%,#ffd98a 0%,transparent 58%),radial-gradient(40vw 40vh at 50% 50%,#c9a8ff 0%,transparent 70%),linear-gradient(135deg,#e7edfa,#f3ecfb);background-attachment:fixed}
html[data-glass="1"] body{background:var(--bg);position:relative}
html[data-glass="1"] body::before{content:"";position:fixed;inset:-20%;z-index:-1;pointer-events:none;background:radial-gradient(38vw 38vw at 20% 25%,rgba(120,170,255,.55),transparent 60%),radial-gradient(34vw 34vw at 82% 18%,rgba(255,150,210,.5),transparent 60%),radial-gradient(40vw 40vw at 78% 82%,rgba(90,235,195,.5),transparent 60%),radial-gradient(34vw 34vw at 24% 86%,rgba(255,205,120,.5),transparent 60%);filter:blur(40px) saturate(140%);animation:glassDrift 26s ease-in-out infinite alternate}
@keyframes glassDrift{0%{transform:translate3d(-3%,-2%,0) scale(1.05) rotate(0deg)}50%{transform:translate3d(3%,2%,0) scale(1.12) rotate(4deg)}100%{transform:translate3d(-2%,3%,0) scale(1.06) rotate(-3deg)}}
@media(prefers-reduced-motion:reduce){html[data-glass="1"] body::before{animation:none}}
html[data-glass="1"] .sokk-header{-webkit-backdrop-filter:blur(30px) saturate(190%) !important;backdrop-filter:blur(30px) saturate(190%) !important;background:rgba(255,255,255,.85) !important;border-bottom:1px solid rgba(255,255,255,.6);box-shadow:0 1px 0 rgba(255,255,255,.85) inset,0 -1px 0 rgba(0,0,0,.04) inset,0 10px 30px -18px rgba(30,50,90,.35)}
html[data-glass="1"] .glassy,html[data-glass="1"] .glass-card{-webkit-backdrop-filter:blur(26px) saturate(185%);backdrop-filter:blur(26px) saturate(185%);background:linear-gradient(150deg,rgba(255,255,255,.62),rgba(255,255,255,.4)) !important;border:1px solid rgba(255,255,255,.7);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 1px 24px -8px rgba(120,150,210,.35),0 24px 60px -34px rgba(30,50,90,.4);border-radius:22px}
html[data-glass="1"] .tile{border-radius:22px;box-shadow:0 18px 50px -28px rgba(30,50,90,.5)}
html[data-glass="1"] .cgrid .tile,html[data-glass="1"] .pgrid .tile{box-shadow:0 14px 40px -26px rgba(30,50,90,.45)}
html[data-glass="1"] .btn,html[data-glass="1"] .wp-element-button{border-radius:980px;background:linear-gradient(180deg,#3a93ff,#0071e3) !important;border:1px solid rgba(255,255,255,.35) !important;color:#fff !important;box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 8px 22px -8px rgba(0,113,227,.7),0 2px 6px rgba(0,113,227,.35);position:relative;overflow:hidden;transition:transform .15s,box-shadow .25s,filter .25s}
html[data-glass="1"] .btn:hover,html[data-glass="1"] .wp-element-button:hover{filter:brightness(1.05);box-shadow:0 1px 0 rgba(255,255,255,.7) inset,0 12px 30px -8px rgba(0,113,227,.8)}
html[data-glass="1"] .btn.ghost,html[data-glass="1"] .is-style-ghost .wp-element-button{background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.32)) !important;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(255,255,255,.7) !important;color:var(--ink) !important;box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 8px 22px -12px rgba(30,50,90,.35)}
html[data-glass="1"] .size-pill,html[data-glass="1"] select,html[data-glass="1"] input:not(.sokk-news-form input){border-radius:13px;-webkit-backdrop-filter:blur(10px) saturate(170%);backdrop-filter:blur(10px) saturate(170%);background:linear-gradient(180deg,rgba(255,255,255,.6),rgba(255,255,255,.38)) !important;border:1px solid rgba(255,255,255,.65) !important;box-shadow:0 1px 0 rgba(255,255,255,.85) inset}
html[data-glass="1"] .sokk-footer input{border-radius:0 !important;background:none !important;border:none !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important;box-shadow:none !important}
html[data-glass="1"] .size-pill[data-on="true"]{background:linear-gradient(180deg,#3a93ff,#0071e3) !important;color:#fff !important;border-color:rgba(255,255,255,.4) !important;box-shadow:0 6px 16px -6px rgba(0,113,227,.7)}
html[data-glass="1"] .chip{box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 2px 6px rgba(30,50,90,.2)}
@media(prefers-reduced-transparency:reduce){html[data-glass="1"] body::before{display:none}html[data-glass="1"]{background:#eef1f8}html[data-glass="1"] .sokk-header{background:rgba(255,255,255,.95) !important}}

/* ---- pattern structure glue (M2 rebuilt sections) ---- */
.sokk-cover-link{position:absolute;inset:0;z-index:2;display:block}
.sokk-banner-label{pointer-events:none}
.sokk-banner-label a{pointer-events:auto}
.split-banners > .wp-block-group.sokk-banner{position:relative;overflow:hidden;height:clamp(420px,66vh,720px)}
@media(max-width:900px){.split-banners > .wp-block-group.sokk-banner{height:72vw !important;min-height:340px !important}}
.sokk-catcell{position:relative;display:block;text-decoration:none;color:inherit}
.sokk-catcell .sokk-catmeta{display:block;padding:12px 14px 18px}
.sokk-catcell .sokk-catmeta .mono{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.sokk-catcell .sokk-catmeta .shop-now{display:inline-block;margin-top:6px}
.sokk-card-cat,.sokk-card-cat a{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-decoration:none}
.sokk-arrivals .wp-block-post-title,.sokk-arrivals .wp-block-post-title a{font-size:13.5px;font-weight:500;line-height:1.25;text-transform:none;letter-spacing:0}

/* ---- content pages (M2b) ---- */
.sokk-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,48px)}
.split2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px)}
.sokk-stores{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--line);border:1px solid var(--line)}
.sokk-store-card{background:var(--surface);padding:26px 24px}
.sokk-store-card h3{font-size:24px;font-weight:700;letter-spacing:-.025em;text-transform:uppercase;line-height:.92;margin:0}
.sokk-store-card p{font-size:14px;color:var(--muted);margin:12px 0 0;line-height:1.6}
.sokk-faq{max-width:760px}
.sokk-faq .wp-block-details summary{font-size:clamp(16px,1.8vw,20px);font-weight:500;text-transform:none;letter-spacing:0;padding:6px 0;list-style:none;position:relative;padding-right:36px}
.sokk-faq .wp-block-details summary::-webkit-details-marker{display:none}
.sokk-faq .wp-block-details summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-family:var(--mono);font-size:18px;transition:transform .3s}
.sokk-faq .wp-block-details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.sokk-faq .wp-block-details p{font-size:15px;line-height:1.6;color:var(--muted);max-width:620px;margin:0 0 8px}
.sokk-contact-form{display:flex;flex-direction:column;gap:14px}
.sokk-contact-form label span{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.sokk-contact-form input,.sokk-contact-form textarea{width:100%;background:var(--raise);border:1px solid var(--line);padding:12px 14px;font-size:15px;color:var(--ink);outline:none;font-family:var(--sans);border-radius:0}
.sokk-contact-form textarea{resize:vertical}
.sokk-contact-form .btn{align-self:flex-start;cursor:pointer}

/* ---- M3a: quick add + wishlist ---- */
.wc-block-product-template li{position:relative}
.sokk-quick-add{position:absolute;left:0;right:0;top:0;aspect-ratio:4/5;pointer-events:none;display:flex;align-items:flex-end;justify-content:center;z-index:5}
.sokk-qa-panel{pointer-events:auto;display:flex;flex-direction:column;gap:8px;align-items:center;width:100%;padding:10px 12px;opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.wc-block-product-template li:hover .sokk-qa-panel,.sokk-quick-add:focus-within .sokk-qa-panel{opacity:1;transform:none}
.sokk-qa-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.sokk-qa-sizes{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}
.sokk-qa-sizes .size-pill{min-width:38px;height:34px;padding:0 8px;font-size:11px;cursor:pointer}
.sokk-qa-sizes .size-pill[disabled]{text-decoration:line-through;opacity:.45;cursor:default;pointer-events:none}
.sokk-qa-added{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);pointer-events:none;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:var(--bg);padding:9px 14px;animation:toastIn .25s ease}
@media(hover:none){.sokk-qa-panel{opacity:1;transform:none}}
.sokk-wl-toggle{background:none;border:none;padding:4px;color:var(--ink);cursor:pointer;display:inline-flex;transition:opacity .2s}
.sokk-wl-toggle:hover{opacity:.6}
.sokk-wl-toggle svg{fill:none}
.sokk-wl-toggle.is-on svg{fill:currentColor}
.sokk-wl-toggle.is-square{width:54px;height:54px;border:1px solid var(--line);align-items:center;justify-content:center;padding:0}
.wc-block-product-template li .wp-block-sokk-wishlist-toggle,.wc-block-product-template li .sokk-wl-toggle{position:absolute;top:10px;right:10px;z-index:6}
.sokk-wl-link{position:relative}
.sokk-wl-count{font-size:12px;color:var(--muted);margin:0}
.sokk-wl-card{position:relative}
.sokk-wl-card .sokk-wl-media{display:block}
.sokk-wl-card img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:var(--line)}
.sokk-wl-card .sokk-wl-toggle{position:absolute;top:10px;right:10px;z-index:6}
.sokk-wl-meta{display:flex;justify-content:space-between;gap:10px;margin-top:12px;align-items:flex-start}
.sokk-wl-meta a{font-weight:700;text-transform:uppercase;letter-spacing:-.01em;font-size:14px;text-decoration:none;color:inherit}
.sokk-wl-meta .mono{font-size:12.5px;flex:none}
.sokk-wl-empty{text-align:center;padding:clamp(40px,8vw,90px) 0}
.sokk-wl-empty-heart{color:var(--faint);display:flex;justify-content:center;margin-bottom:18px}
.sokk-wl-empty-title{font-size:clamp(24px,3vw,40px)}
.sokk-wl-empty-copy{color:var(--muted);font-size:14px;margin-top:8px}
.sokk-wl-empty .btn{margin-top:22px}

/* ---- M3b: reward meter / cart upsell / cart toast ---- */
.sokk-reward-meter{padding:14px 0;border-bottom:1px solid var(--line)}
.sokk-rm-label{font-size:11px;color:var(--muted);margin:0 0 10px}
.sokk-rm-label strong{color:var(--ink);font-weight:400}
.sokk-rm-done{color:var(--ink)}
.sokk-rm-track{position:relative;height:3px;background:var(--line)}
.sokk-rm-fill{height:100%;width:0;background:var(--ink);transition:width .45s}
.sokk-rm-dot{position:absolute;top:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:var(--bg);box-shadow:inset 0 0 0 1.5px var(--line);transition:background .3s}
.sokk-rm-dot.is-hit{background:var(--ink);box-shadow:none}
.sokk-rm-labels{display:flex;justify-content:space-between;margin-top:9px}
.sokk-rm-labels span{font-size:9.5px;letter-spacing:.03em;text-transform:uppercase;color:var(--faint)}
.sokk-rm-labels span.is-hit{color:var(--ink)}
.sokk-rm-labels span.is-hit::before{content:"✓ "}
.sokk-cart-upsell{padding:13px 0 2px;border-top:1px solid var(--line)}
.sokk-cu-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.sokk-cu-note{font-size:10px;color:var(--faint);letter-spacing:.04em}
.sokk-cu-row{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line)}
.sokk-cu-thumb{width:50px;height:62px;flex:none;overflow:hidden;background:var(--line);display:block}
.sokk-cu-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.sokk-cu-main{min-width:0;flex:1;display:block}
.sokk-cu-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.sokk-cu-txt{min-width:0;display:block}
.sokk-cu-name{display:block;font-size:13.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sokk-cu-price{display:block;font-size:11px;color:var(--muted);margin-top:2px}
.sokk-cu-add{flex:none;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--ink);background:none;color:var(--ink);padding:7px 12px;cursor:pointer}
.sokk-cu-add.is-gone{display:none}
.sokk-cu-cancel{flex:none;font-size:12px;color:var(--muted);background:none;border:none;cursor:pointer}
.sokk-cu-added{flex:none;font-size:10.5px;color:var(--muted)}
.sokk-cu-colors{display:flex;gap:6px;margin-top:9px}
.sokk-cu-colors[hidden]{display:none}
.sokk-cu-chip{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.18);cursor:pointer;flex:none;padding:0}
.sokk-cu-chip[data-on="true"]{box-shadow:0 0 0 1.5px var(--bg),0 0 0 3px var(--ink)}
.sokk-cu-sizes[hidden]{display:none}
.sokk-cu-sizes{display:flex;gap:5px;margin-top:9px}
.sokk-cu-size{flex:1;height:30px;font-family:var(--mono);font-size:10.5px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;transition:background .15s,color .15s}
.sokk-cu-size:hover:not([disabled]){background:var(--ink);color:var(--bg)}
.sokk-cu-size[disabled]{opacity:.35;text-decoration:line-through;cursor:not-allowed}
.sokk-cart-toast{position:fixed;z-index:88;right:clamp(12px,2vw,24px);bottom:clamp(12px,2vw,24px);width:min(360px,calc(100vw - 24px));background:var(--bg);border:1px solid var(--line);box-shadow:0 14px 44px rgba(0,0,0,.20);animation:toastIn .38s cubic-bezier(.2,.7,.2,1)}
.sokk-ct-main{padding:14px 16px;display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line)}
.sokk-ct-thumb{width:40px;height:50px;flex:none;overflow:hidden;background:var(--line);display:block}
.sokk-ct-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.sokk-ct-txt{flex:1;min-width:0;display:block}
.sokk-ct-kicker{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sokk-ct-name{display:block;font-size:13.5px;font-weight:500;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sokk-ct-meta{display:block;font-size:10.5px;color:var(--muted)}
.sokk-ct-close{flex:none;font-size:12px;color:var(--muted);background:none;border:none;cursor:pointer}
.sokk-ct-rec{padding:11px 16px}
.sokk-ct-rec-row{display:flex;gap:10px;align-items:center}
.sokk-ct-rec-thumb{width:30px;height:38px;flex:none;overflow:hidden;background:var(--line);display:block}
.sokk-ct-rec-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.sokk-ct-rec-txt{flex:1;min-width:0;display:block}
.sokk-ct-rec-kicker{display:block;font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.sokk-ct-rec-name{display:block;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sokk-ct-rec-add{flex:none;font-size:10px;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--ink);background:none;color:var(--ink);padding:6px 10px;cursor:pointer}
.sokk-ct-rec-add.is-gone{display:none}
.sokk-ct-rec-cancel{flex:none;font-size:12px;color:var(--muted);background:none;border:none;cursor:pointer}
.sokk-ct-rec-added{flex:none;font-size:10px;color:var(--muted)}
.sokk-ct-rec-sizes{display:flex;gap:5px;margin-top:9px}
.sokk-ct-rec-sizes .sokk-cu-size{height:28px}
.sokk-ct-view{display:block;width:100%;padding:13px;background:var(--ink);color:var(--bg);font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;text-align:center;text-decoration:none;border:none;cursor:pointer}
.sokk-cart-toast.is-editor-preview{position:static;width:auto;max-width:360px}

/* ---- M4a: search overlay / recently viewed / rail arrows / header frost ---- */
.sokk-header.is-scrolled{background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
body.sokk-lock{overflow:hidden}
.sokk-so{position:fixed;inset:0;z-index:95}
.sokk-so-scrim{position:absolute;inset:0;background:rgba(0,0,0,.4)}
.sokk-so-sheet{position:absolute;left:0;right:0;top:0;background:var(--bg);border-bottom:1px solid var(--line);max-height:86vh;overflow-y:auto;animation:sokkSheetIn .3s cubic-bezier(.2,.7,.2,1)}
@keyframes sokkSheetIn{from{transform:translateY(-14px);opacity:.6}to{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){.sokk-so-sheet{animation:none}}
.sokk-so-inner{padding-top:22px;padding-bottom:28px}
.sokk-so-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.sokk-so-close{font-size:12px;background:none;border:none;color:var(--ink);cursor:pointer}
.sokk-so-inputrow{display:flex;align-items:center;gap:14px;border-bottom:1.5px solid var(--ink);padding-bottom:12px}
.sokk-so-inputrow svg{color:var(--muted);flex:none}
.sokk-so-inputrow input{flex:1;background:transparent;border:none;outline:none;font-family:var(--sans);font-size:clamp(20px,3vw,34px);color:var(--ink);min-width:0}
.sokk-so-clear{font-size:12px;color:var(--muted);background:none;border:none;cursor:pointer}
.sokk-so-popular{margin-top:26px}
.sokk-so-kicker{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sokk-so-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.sokk-so-chips.is-centered{justify-content:center;gap:9px;margin-top:18px}
.sokk-so-chip{font-size:12px;letter-spacing:.05em;text-transform:uppercase;padding:9px 16px;border:1px solid var(--line);background:none;color:var(--ink);cursor:pointer;text-decoration:none;display:inline-block;transition:border-color .2s}
.sokk-so-chip:hover{border-color:var(--ink)}
.sokk-so-results{margin-top:24px}
.sokk-so-count{font-size:11px;color:var(--muted)}
.sokk-so-grid{margin-top:18px}
.sokk-so-card{display:block;text-decoration:none;color:inherit}
.sokk-so-card img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:var(--line)}
.sokk-so-card-meta{display:flex;justify-content:space-between;gap:10px;margin-top:10px}
.sokk-so-card-name{font-size:13.5px;font-weight:500}
.sokk-so-card-meta .mono{font-size:12px;flex:none}
.sokk-so-empty{text-align:center;padding:clamp(30px,5vw,56px) 0;max-width:420px;margin:0 auto}
.sokk-so-empty-ico{color:var(--faint);display:flex;justify-content:center;margin-bottom:16px}
.sokk-so-empty-title{font-size:clamp(22px,3vw,32px)}
.sokk-so-empty-copy{color:var(--muted);font-size:14px;margin-top:8px}
.sokk-so-shopall{margin-top:22px}
.sokk-recent{padding-block:clamp(40px,6vw,90px)}
.sokk-recent-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:14px}
.sokk-recent-head h2{font-size:clamp(24px,3.4vw,44px)}
.sokk-recent-all{color:var(--muted)}
.sokk-recent-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:clamp(12px,1.5vw,20px);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}
.sokk-recent-card{display:block;color:inherit;scroll-snap-align:start;position:relative}
.sokk-rc-media{position:relative;overflow:hidden}
.sokk-rc-link{display:block}
.sokk-rc-media img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:var(--line)}
.sokk-rc-tag{position:absolute;top:12px;left:12px;z-index:5;background:var(--bg);color:var(--ink);padding:4px 8px;font-size:10px;letter-spacing:.12em}
.sokk-rc-wish{position:absolute;top:8px;right:8px;z-index:6;width:32px;height:32px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}
.sokk-rc-qa{position:absolute;left:12px;right:12px;bottom:12px;z-index:5;background:var(--bg);color:var(--ink);opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}
.sokk-recent-card:hover .sokk-rc-qa,.sokk-recent-card:focus-within .sokk-rc-qa{opacity:1;transform:none}
@media(hover:none){.sokk-rc-qa{opacity:1;transform:none}}
.sokk-rc-added{padding:12px 14px;text-align:center;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.sokk-rc-added[hidden]{display:none}
.sokk-rc-trigger{display:flex;justify-content:space-between;align-items:center;width:100%;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:11px 14px;background:none;border:none;color:inherit;cursor:pointer}
.sokk-rc-trigger[hidden]{display:none}
.sokk-rc-picker{padding:9px 10px}
.sokk-rc-picker[hidden]{display:none}
.sokk-rc-picker-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-inline:2px}
.sokk-rc-picker-label{font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sokk-rc-close{font-size:11px;color:var(--muted);background:none;border:none;cursor:pointer}
.sokk-rc-sizes{display:flex;gap:5px}
.sokk-rc-size{flex:1;height:34px;font-family:var(--mono);font-size:11px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;transition:background .15s,color .15s}
.sokk-rc-size:hover:not([disabled]){background:var(--ink);color:var(--bg)}
.sokk-rc-size[disabled]{opacity:.35;text-decoration:line-through;cursor:not-allowed}
.sokk-rc-info{display:flex;justify-content:space-between;gap:12px;margin-top:13px;align-items:flex-start}
.sokk-rc-txt{min-width:0;text-decoration:none;color:inherit;display:block}
.sokk-rc-name{display:block;font-size:14px;font-weight:500;letter-spacing:-.01em;line-height:1.25}
.sokk-rc-meta{display:block;font-size:11px;color:var(--muted);letter-spacing:.03em;margin-top:4px}
.sokk-rc-price{font-size:13px;flex:none}
.sokk-rc-colors{display:flex;gap:6px;margin-top:10px}
.sokk-rc-colors[hidden]{display:none}
.sokk-rc-chip{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.18);cursor:pointer;flex:none;padding:0}
.sokk-rc-chip[data-on="true"]{box-shadow:0 0 0 1.5px var(--bg),0 0 0 3px var(--ink)}
.sokk-rail-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}
.sokk-rail-head .eyebrow{letter-spacing:.2em}
.sokk-rail-spacer{width:80px}
.sokk-rail-btns{display:flex;gap:8px;width:80px;justify-content:flex-end}
.sokk-rail-btn{width:34px;height:34px;border:1px solid var(--line);background:none;color:var(--ink);font-size:13px;cursor:pointer;transition:border-color .2s}
.sokk-rail-btn:hover{border-color:var(--ink)}

/* ---- M4b: hero slider / mega menu / pdp stickybar ---- */
.sokk-hs{position:relative;height:clamp(440px,78vh,820px);overflow:hidden;background:var(--line)}
.sokk-hs-track{display:flex;height:100%;touch-action:pan-y;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.sokk-hs-track[data-dragging="true"]{transition:none}
.sokk-hs-track > *{flex:0 0 100%;min-width:0;height:100%;position:relative;margin:0}
.sokk-hs-slide{position:relative;overflow:hidden;height:100%}
.sokk-hs-slide .sokk-banner-label{max-width:600px;padding-bottom:clamp(54px,6vw,104px);gap:13px}
.sokk-hs-slide .sokk-banner-label h2{font-size:clamp(40px,7vw,116px);line-height:.95}
.sokk-hs-dots{position:absolute;bottom:20px;left:0;right:0;z-index:12;display:flex;justify-content:center;gap:9px}
.sokk-hs-dot{height:3px;width:16px;padding:0;border:none;background:rgba(255,255,255,.5);cursor:pointer;transition:width .3s,background .3s}
.sokk-hs-dot.is-on{width:30px;background:#fff}
.sokk-hs-ctrls{position:absolute;bottom:clamp(16px,2vw,28px);right:clamp(16px,2vw,40px);z-index:12;display:flex;align-items:center;gap:10px}
.sokk-hs-arrow{width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.26);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.4);font-size:17px;cursor:pointer}
.sokk-hs-counter{color:rgba(255,255,255,.85);font-size:11px;letter-spacing:.1em;margin-left:4px}
/* mega menu */
.sokk-mm{display:contents}
.sokk-mm-nav{display:flex;gap:26px;align-items:center}
.sokk-mm-link{color:var(--muted);cursor:pointer;background:none;border:none}
.sokk-mm-link:hover,.sokk-mm-link[aria-expanded="true"]{color:var(--ink)}
.sokk-mm-panel{position:absolute;left:0;right:0;top:100%;z-index:39;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 24px 44px -30px rgba(0,0,0,.35);animation:sokkMMin .22s ease}
@keyframes sokkMMin{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.sokk-mm-panel{animation:none}}
.sokk-mm-grid{display:grid;grid-template-columns:1fr 1fr 2fr;gap:clamp(24px,4vw,72px);padding:32px var(--gut) 40px}
.sokk-mm-links{display:flex;flex-direction:column;gap:11px;margin-top:18px}
.sokk-mm-shopall{font-size:15px;font-weight:500;color:var(--ink);text-decoration:none}
.sokk-mm-height{font-size:14px;color:var(--muted);text-decoration:none}
.sokk-mm-height:hover,.sokk-mm-shopall:hover{color:var(--ink)}
.sokk-mm-note{font-size:14px;line-height:1.55;color:var(--muted);margin:18px 0 0;max-width:240px}
.sokk-mm-col .shop-now{margin-top:16px}
.sokk-mm-products{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sokk-mm-card{display:block;text-decoration:none;color:inherit}
.sokk-mm-card img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:var(--line)}
.sokk-mm-card-meta{display:flex;justify-content:space-between;gap:8px;margin-top:10px;align-items:baseline}
.sokk-mm-card-meta [data-nowrap]{font-size:13px;font-weight:500}
.sokk-mm-card-meta .mono{font-size:12px;flex:none}
.hide-desk{display:none}
@media(max-width:760px){.hide-desk{display:block}.sokk-mm-nav{display:none}}
/* pdp sticky bar (mobile only) */
.sokk-stickybar{display:none}
.sokk-stickybar-spacer{display:none}
@media(max-width:760px){
	.sokk-stickybar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--bg);border-top:1px solid var(--line);padding:11px var(--gut);justify-content:space-between;align-items:center;gap:12px}
	.sokk-stickybar-spacer{display:block;height:70px}
}
.sokk-sb-info{min-width:0}
.sokk-sb-name{display:block;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sokk-sb-price{display:block;font-size:12px;color:var(--muted)}
.sokk-sb-btn{flex:none}
.sokk-stickybar.is-editor-preview{display:flex;position:static}

/* ---- M5: region modal / palette dots / withdrawal form ---- */
.sokk-region-modal-root{display:contents}
.sokk-rm-overlay{position:fixed;inset:0;z-index:96;background:rgba(0,0,0,.45);display:flex;align-items:flex-start;justify-content:center;padding:clamp(16px,9vh,120px) 16px;animation:sokkFadeIn .2s ease}
@keyframes sokkFadeIn{from{opacity:0}to{opacity:1}}
.sokk-rm{width:100%;max-width:460px;background:var(--bg);border:1px solid var(--line);display:flex;flex-direction:column;max-height:78vh;overflow:hidden;animation:sokkSheetIn .25s cubic-bezier(.2,.7,.2,1)}
.sokk-rm-head{padding:22px var(--gut) 16px;border-bottom:1px solid var(--line)}
.sokk-rm-titlerow{display:flex;justify-content:space-between;align-items:center}
.sokk-rm-title{font-size:24px}
.sokk-rm-close{font-size:12px;color:var(--muted);background:none;border:none;cursor:pointer}
.sokk-rm-sub{margin:8px 0 16px;font-size:13px;color:var(--muted);line-height:1.45}
.sokk-rm-geo{display:block;margin-top:6px;font-size:11px;color:var(--faint);letter-spacing:.02em}
.sokk-rm-search{width:100%;background:var(--raise);border:1px solid var(--line);padding:11px 14px;font-size:12.5px;letter-spacing:.02em;color:var(--ink);outline:none}
.sokk-rm-search:focus{border-color:var(--ink)}
.sokk-rm-list{overflow-y:auto;padding:8px 0}
.sokk-rm-row{width:100%;text-align:left;padding:13px var(--gut);gap:16px;display:flex;justify-content:space-between;align-items:center;background:none;border:none;cursor:pointer;transition:background .15s}
.sokk-rm-row:hover,.sokk-rm-row[data-on="true"]{background:var(--surface)}
.sokk-rm-row-l{display:flex;align-items:center;gap:12px}
.sokk-rm-row-code{font-size:10.5px;letter-spacing:.08em;color:var(--muted);width:24px}
.sokk-rm-row-name{font-size:14.5px}
.sokk-rm-row[data-on="true"] .sokk-rm-row-name{font-weight:600}
.sokk-rm-row-r{display:flex;align-items:center;gap:12px}
.sokk-rm-row-cur{font-size:12px;color:var(--muted)}
.sokk-rm-row-tick{width:14px;display:flex;justify-content:center;color:var(--ink)}
.sokk-rm-empty{font-size:12px;color:var(--muted);text-align:center;padding:28px 0}
/* withdrawal form */
.sokk-wd-progress{display:flex;gap:22px;margin-top:30px;flex-wrap:wrap}
.sokk-wd-progress-step{display:flex;align-items:center;gap:9px;opacity:.45}
.sokk-wd-progress-step.is-on,.sokk-wd-progress-step.is-done{opacity:1}
.sokk-wd-num{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;background:transparent;color:var(--muted);border:1px solid var(--line)}
.sokk-wd-progress-step.is-on .sokk-wd-num,.sokk-wd-progress-step.is-done .sokk-wd-num{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.sokk-wd-plabel{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase}
.sokk-wd-form,.sokk-wd-review,.sokk-wd-receipt{display:flex;flex-direction:column;gap:20px;max-width:640px}
.sokk-wd-card{background:var(--surface);border:1px solid var(--line);padding:18px 20px}
.sokk-wd-statement{font-size:15px;line-height:1.55;margin:10px 0 0;color:var(--ink)}
.sokk-wd-label{display:block}
.sokk-wd-label > span{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sokk-wd-label > span em{font-style:normal;color:var(--faint);margin-left:8px}
.sokk-wd-label input,.sokk-wd-label textarea{width:100%;background:var(--raise);border:1px solid var(--line);padding:12px 14px;font-size:15px;color:var(--ink);outline:none;margin-top:6px;font-family:var(--sans);border-radius:0}
.sokk-wd-label textarea{resize:vertical}
.sokk-wd-2col{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sokk-wd-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.sokk-wd-note{font-size:11px;line-height:1.6;color:var(--faint);letter-spacing:.02em}
.sokk-wd-submit{align-self:flex-start}
.sokk-wd-rows{display:flex;flex-direction:column}
.sokk-wd-row{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:13px 0;border-top:1px solid var(--line)}
.sokk-wd-row:last-child{border-bottom:1px solid var(--line)}
.sokk-wd-row > span:first-child{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sokk-wd-row > span:last-child{font-size:15px;line-height:1.5;white-space:pre-wrap;color:var(--ink)}
.sokk-wd-fineprint{font-size:14px;line-height:1.6;color:var(--muted)}
.sokk-wd-error{font-size:13px;color:#c0392b}
.sokk-wd-actions{display:flex;gap:14px;flex-wrap:wrap}
.sokk-wd-receipt-card{border:1px solid var(--ink);background:var(--surface);padding:26px}
.sokk-wd-receipt-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.sokk-wd-receipt-head h2{font-size:30px}
.sokk-wd-ref{font-size:12px;border:1px solid var(--line);padding:6px 11px}
.sokk-wd-receipt-copy{font-size:14.5px;line-height:1.6;color:var(--muted);margin-top:14px;max-width:520px}
.sokk-wd-aside{position:sticky;top:96px}
@media(max-width:900px){.sokk-wd-2col{grid-template-columns:1fr}.sokk-wd-row{grid-template-columns:110px 1fr}.sokk-wd-aside{position:static}}

/* ---- M6: PDP polish + a11y focus ring ---- */
/* Sticky info column on desktop (prototype pins the info while gallery scrolls) */
@media(min-width:901px){
	.single-product .wp-block-columns > .wp-block-column:last-child{position:sticky;top:84px;align-self:flex-start}
}
/* PDP gallery: stack images vertically, hide the flex thumbnails (prototype look) */
.single-product .woocommerce-product-gallery{width:100% !important}
.single-product .woocommerce-product-gallery .flex-control-thumbs{display:flex;gap:8px;margin-top:8px;padding:0;list-style:none}
.single-product .woocommerce-product-gallery__image img{aspect-ratio:4/5;object-fit:cover}
/* Visible keyboard focus everywhere (prototype relied on hover only) */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible,.size-pill:focus-visible,.sokk-qa-sizes .size-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sokk-so-chip:focus-visible,.sokk-rm-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
/* Skip-friendly: ensure interactive overlays sit above sticky header focus */
.sokk-so,.sokk-rm-overlay{isolation:isolate}

/* ---- audit fixes: PDP accordions / buy row / PLP filter drawer ---- */
.sokk-pdp-buy{display:flex;gap:12px;align-items:flex-start;flex-wrap:nowrap}
.sokk-pdp-buy .wp-block-woocommerce-add-to-cart-form{flex:1;min-width:0;margin:0}
.sokk-pdp-buy .sokk-wl-toggle.is-square{flex:none}
.sokk-pdp-acc{border-top:1px solid var(--line);padding:0}
.sokk-pdp-acc:last-of-type{border-bottom:1px solid var(--line)}
.sokk-pdp-acc summary{list-style:none;cursor:pointer;padding:16px 0;font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;position:relative;padding-right:28px}
.sokk-pdp-acc summary::-webkit-details-marker{display:none}
.sokk-pdp-acc summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-family:var(--mono);font-size:16px;transition:transform .3s}
.sokk-pdp-acc[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.sokk-pdp-acc p{font-size:14px;line-height:1.6;color:var(--muted);padding-bottom:18px;margin:0}
.sokk-filter-drawer{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sokk-filter-drawer > summary{list-style:none;cursor:pointer;padding:14px 0;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;position:relative;padding-right:24px}
.sokk-filter-drawer > summary::-webkit-details-marker{display:none}
.sokk-filter-drawer > summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-family:var(--mono);font-size:15px;transition:transform .3s}
.sokk-filter-drawer[open] > summary::after{transform:translateY(-50%) rotate(45deg)}
.sokk-filter-grid{gap:clamp(20px,3vw,40px) !important;padding:8px 0 20px}
@media(max-width:900px){.sokk-filter-grid{grid-template-columns:1fr 1fr !important}}
@media(max-width:560px){.sokk-filter-grid{grid-template-columns:1fr !important}}
.sokk-filter-foot{padding:14px 0;border-top:1px solid var(--line)}
.sokk-filter-drawer .wc-block-components-product-sort-select,.sokk-filter-drawer .wp-block-heading{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}

/* ================================================================
   设计还原度审查修复（第二批）—— CSS 类
   ================================================================ */
/* #9/#12/#13 Hero Slider：标签落到居中 1480 列左缘、正文排版、专属遮罩 */
.sokk-hs-slide .sokk-banner-label{left:50%;right:auto;transform:translateX(-50%);width:min(100% - 2*var(--gut), var(--maxw));max-width:var(--maxw);padding-left:var(--gut);padding-right:var(--gut);box-sizing:border-box}
.sokk-hs-slide .sokk-banner-label p{font-size:14.5px;color:rgba(255,255,255,.9);max-width:420px}
.sokk-hs-slide .sokk-shade.cine{background:linear-gradient(180deg,rgba(0,0,0,.14),transparent 42%,rgba(0,0,0,.48))}
/* #15 Manifesto 标题宽度 900 */
.sokk-manifesto h2,.sokk-manifesto .wp-block-heading{max-width:900px;margin-inline:auto}
/* #16 HeroWall 标签盒像素还原 */
.sokk-hero-wall .sokk-banner-label{max-width:460px;gap:11px}
.sokk-hero-wall .sokk-banner-label .kicker{color:rgba(255,255,255,.85)}
.sokk-hero-wall .sokk-banner-label h1{white-space:nowrap}
/* #10 New Arrivals 卡片：分类+名左列，价格右侧同行顶对齐 */
.sokk-card-meta{align-items:flex-start;gap:10px}
.sokk-card-meta > .wp-block-woocommerce-product-price{flex:none;font-size:12.5px;margin:0}
.sokk-card-meta .sokk-card-cat{margin:0}
/* #31 PDP 心愿方钮：边框 ink、已存态整钮反色 */
.sokk-wl-toggle.is-square{border-color:var(--ink);transition:background .2s,color .2s}
.sokk-wl-toggle.is-square.is-on{background:var(--ink);color:var(--bg)}
.sokk-wl-toggle.is-square.is-on svg{fill:currentColor;stroke:currentColor}
/* #30 服务承诺 3 项 mono 小字 */
.sokk-pdp-promise{display:flex;flex-wrap:wrap;gap:18px;margin-top:16px}
.sokk-pdp-promise span{font-family:var(--mono);font-size:10px;letter-spacing:.05em;color:var(--muted)}
.sokk-pdp-promise span::before{content:"— "}
/* #35 Pairs with 标题行 More 链接 */
.sokk-pairs-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:var(--wp--preset--spacing--50)}
/* #61 玻璃主按钮 hover 高光扫过 */
html[data-glass="1"] .btn,html[data-glass="1"] .wp-element-button{position:relative;overflow:hidden}
html[data-glass="1"] .btn::after,html[data-glass="1"] .wp-element-button::after{content:"";position:absolute;top:0;left:-60%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);transition:left .55s ease;pointer-events:none}
html[data-glass="1"] .btn:hover::after,html[data-glass="1"] .wp-element-button:hover::after{left:130%}
html[data-glass="1"] .btn.ghost::after,html[data-glass="1"] .is-style-ghost .wp-element-button::after{display:none}
/* #62 玻璃磨砂覆盖等价表面：搜索面板 / mini-cart 抽屉 / 心愿方钮 */
html[data-glass="1"] .sokk-so-sheet,html[data-glass="1"] .glass-sheet{background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.56)) !important;-webkit-backdrop-filter:blur(32px) saturate(190%);backdrop-filter:blur(32px) saturate(190%);border-bottom:1px solid rgba(255,255,255,.6) !important;box-shadow:0 1px 0 rgba(255,255,255,.85) inset,0 24px 60px -26px rgba(30,50,90,.45)}
html[data-glass="1"] .wc-block-mini-cart__drawer,html[data-glass="1"] .sokk-rm{background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,255,255,.62)) !important;-webkit-backdrop-filter:blur(30px) saturate(190%);backdrop-filter:blur(30px) saturate(190%);box-shadow:inset 1px 1px 0 rgba(255,255,255,.8),0 30px 90px -30px rgba(30,50,90,.45)}
html[data-glass="1"] .sokk-wl-toggle.is-square{-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.32)) !important;border:1px solid rgba(255,255,255,.7) !important;border-radius:16px}
html[data-glass="1"] .sokk-wl-toggle.is-square.is-on{background:linear-gradient(180deg,#3a93ff,#0071e3) !important;color:#fff !important;border-color:rgba(255,255,255,.4) !important}
/* #7 header 磨砂 + mega 打开联动：mega 开时回实底 */
.sokk-header.is-scrolled.sokk-mm-open{background:var(--bg) !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important}
/* #64 移动端 Ship to 入口 */
.sokk-mobile-region{display:none}
@media(max-width:760px){.sokk-mobile-region{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink);text-decoration:none;padding:6px 0}}
/* #4/#59 页脚当前配色名 */
.sokk-dots{align-items:center}
.sokk-palette-name{font-size:11px;color:rgba(255,255,255,.5);margin-left:6px}
.sokk-meta-row{justify-content:space-between}
/* #45 奖励条空车隐藏（hydration 前隐藏，有货再显示） */
.sokk-reward-meter[hidden]{display:none}
/* #17 Quick add 两步式：trigger → picker（Select size + 关闭） */
.sokk-qa-trigger{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);background:none;border:none;cursor:pointer;padding:4px 0}
.sokk-qa-picker-head{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:8px}
.sokk-qa-close{background:none;border:none;color:var(--muted);cursor:pointer;font-size:12px}
/* #19 PLP 分类切换 pill 行 */
.sokk-cat-pills{gap:8px;position:sticky;top:64px;z-index:10;background:var(--bg);padding-block:8px}
.sokk-cat-pill{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);border:1px solid var(--line);padding:8px 14px;text-decoration:none;transition:border-color .2s,background .2s}
.sokk-cat-pill:hover{border-color:var(--ink)}
.woocommerce-page.term-everyday .sokk-cat-pill[href*="everyday"],.woocommerce-page.term-sport .sokk-cat-pill[href*="sport"],.woocommerce-page.term-sheer .sokk-cat-pill[href*="sheer"],.woocommerce-page.term-cashmere .sokk-cat-pill[href*="cashmere"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
/* #36 PDP tag eyebrow spacing */
.sokk-pdp-tag{margin-bottom:10px}
/* #35 Pairs with More link */
.sokk-pairs-more{color:var(--muted)}
/* ---- self-contained PDP: variation swatches / notify me / size guide ---- */
/* swatches drive Woo's own variation form; hide the native dropdown rows */
.single-product .variations_form .variations,
.single-product .variations_form .reset_variations{display:none !important}
.single-product .variations_form .single_variation_wrap{margin-top:0}
.sokk-swatches{margin-top:28px}
.sokk-sw-group + .sokk-sw-group{margin-top:26px}
.sokk-sw-head{margin-bottom:12px}
.sokk-sw-colour-name{font-size:11px;color:var(--muted)}
.sokk-sw-guide{color:var(--muted);font-size:11px}
.sokk-sw-chips{display:flex;gap:10px;flex-wrap:wrap}
.sokk-sw-chip{width:28px;height:28px;border-radius:50%;cursor:pointer}
.sokk-sw-pills{display:flex;gap:8px;flex-wrap:wrap}
.sokk-sw-pill{cursor:pointer}
.sokk-sw-pill[data-out="true"],.sokk-sw-pill:disabled{opacity:.4;text-decoration:line-through;cursor:not-allowed;pointer-events:none}
.sokk-sw-hint{font-size:11px;color:var(--faint);margin-top:10px}
.sokk-sw-hint[hidden]{display:none}
.sokk-sw-soldout{font-size:11px;color:var(--muted);margin-top:10px}
/* #39 desktop add-to-cart "Added ✓" accent flash */
.single-product .single_add_to_cart_button.sokk-added{background:var(--accent)!important;border-color:var(--accent)!important;color:var(--ink)!important}
/* notify me (sold-out only) */
.sokk-notify{margin-top:12px}
.sokk-notify-open{background:var(--surface);color:var(--ink);border-color:var(--ink)}
.sokk-notify-open[hidden],.sokk-notify-form[hidden],.sokk-notify-done[hidden],.sokk-notify-error[hidden]{display:none}
.sokk-notify-form{margin-top:10px}
.sokk-notify-label{display:block;font-size:11px;color:var(--muted);margin-bottom:8px}
.sokk-notify-row{display:flex;gap:10px}
.sokk-notify-row input[type=email]{flex:1;min-width:0;background:var(--raise);border:1px solid var(--line);padding:12px 14px;font-family:var(--mono);font-size:12px;color:var(--ink);outline:none}
.sokk-notify-hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
.sokk-notify-done{margin-top:12px;font-size:12px;color:var(--ink)}
.sokk-notify-error{display:block;margin-top:8px;font-size:11px;color:#b23b3b}
/* size guide modal */
.sokk-sg-overlay{position:fixed;inset:0;z-index:92;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,visibility .25s}
.sokk-sg-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.sokk-sg-card{width:100%;max-width:520px;background:var(--raise);border:1px solid var(--line);padding:clamp(22px,3vw,34px);transform:translateY(-14px);transition:transform .3s}
.sokk-sg-overlay.is-open .sokk-sg-card{transform:none}
.sokk-sg-head{margin-bottom:18px}
.sokk-sg-close{font-size:12px;background:none;border:none;color:var(--ink);cursor:pointer}
.sokk-sg-title{font-size:28px;margin:0 0 16px}
.sokk-sg-table{width:100%;border-collapse:collapse;font-size:13.5px}
.sokk-sg-table th{text-align:left;padding:10px 8px;border-bottom:1px solid var(--ink);font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:400}
.sokk-sg-table td{padding:12px 8px;border-bottom:1px solid var(--line)}
.sokk-sg-table .sokk-sg-size{font-weight:600}
.sokk-sg-note{font-size:13px;color:var(--muted);margin:16px 0 0;line-height:1.5}
/* bundle nudge (cart / checkout) */
.sokk-bundle-nudge{margin:12px 0}
.sokk-bundle-nudge[hidden]{display:none}
.sokk-bundle-need[hidden],.sokk-bundle-done[hidden]{display:none}
.sokk-bundle-need{font-size:12px;letter-spacing:.02em;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:10px 14px;margin:0}
.sokk-bundle-done{gap:12px;padding:10px 14px;background:var(--surface);border:1px solid var(--line)}
.sokk-bundle-badge{font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink)}
.sokk-bundle-amount{font-size:12px;color:var(--ink)}
/* mobile drawer (#2) */
.sokk-mobile-drawer{display:inline-flex}
.sokk-md-trigger{background:none;border:none;padding:4px;cursor:pointer}
.sokk-md-overlay{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.4);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,visibility .3s}
.sokk-md-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.sokk-md-panel{position:absolute;left:0;top:0;bottom:0;width:82%;max-width:360px;background:var(--bg);transform:translateX(-100%);transition:transform .4s cubic-bezier(.2,.7,.2,1);padding:22px clamp(18px,5vw,26px);display:flex;flex-direction:column;gap:4px;overflow-y:auto}
.sokk-md-overlay.is-open .sokk-md-panel{transform:none}
.sokk-md-head{margin-bottom:28px}
.sokk-md-brand{font-size:22px;text-decoration:none;color:inherit}
.sokk-md-close{font-size:12px;background:none;border:none;color:var(--ink);cursor:pointer}
.sokk-md-cats{display:flex;flex-direction:column}
.sokk-md-cat{font-size:34px;text-align:left;padding:10px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;background:none;cursor:pointer}
.sokk-md-cat:last-child{border-bottom:none}
.sokk-md-utils{margin-top:auto;padding-top:24px;display:flex;flex-direction:column;gap:14px}
.sokk-md-util{color:var(--muted);text-align:left;background:none;border:none;cursor:pointer;text-decoration:none}
/* editorial Cover blocks (hero slider / cinematic / split / wall) — Media
   Library photo when set; on-brand colour + prototype knit texture by default */
.sokk-cover-slide.wp-block-cover{padding:0}
.sokk-hs-slide.wp-block-cover{min-height:0}
.sokk-cover-slide .wp-block-cover__inner-container{position:static;width:100%;max-width:none;padding:0}
/* default (no photo): keep the prototype sheen over the solid colour */
.sokk-cover-slide:not(:has(.wp-block-cover__image-background)) .wp-block-cover__background::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 70% at 30% 12%,rgba(255,255,255,.16),transparent 55%),linear-gradient(180deg,transparent 58%,rgba(0,0,0,.16))}
/* default knit textures (mirror .tile.{type}); hidden once a photo is set */
.sokk-cover-slide.sokk-knit-rib:not(:has(.wp-block-cover__image-background)) .wp-block-cover__background::before,
.sokk-cover-slide.sokk-knit-terry:not(:has(.wp-block-cover__image-background)) .wp-block-cover__background::before,
.sokk-cover-slide.sokk-knit-plush:not(:has(.wp-block-cover__image-background)) .wp-block-cover__background::before,
.sokk-cover-slide.sokk-knit-sheer:not(:has(.wp-block-cover__image-background)) .wp-block-cover__background::before{content:"";position:absolute;inset:0;pointer-events:none;mix-blend-mode:soft-light}
.sokk-cover-slide.sokk-knit-rib:not(:has(.wp-block-cover__image-background)) .wp-block-cover__background::before{background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.10) 0 3px,rgba(0,0,0,.05) 3px 4px,rgba(0,0,0,.10) 4px 7px,rgba(255,255,255,.05) 7px 8px);opacity:.9}
.sokk-cover-slide.sokk-knit-terry:not(:has(.wp-block-cover__image-background)) .wp-block-cover__background::before,
.sokk-cover-slide.sokk-knit-plush:not(:has(.wp-block-cover__image-background)) .wp-block-cover__background::before{background-image:radial-gradient(rgba(255,255,255,.16) .8px,transparent 1.1px),radial-gradient(rgba(0,0,0,.10) .8px,transparent 1.1px);background-size:5px 5px,5px 5px;background-position:0 0,2.5px 2.5px;opacity:.8}
.sokk-cover-slide.sokk-knit-sheer:not(:has(.wp-block-cover__image-background)) .wp-block-cover__background::before{background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 2px,rgba(0,0,0,.03) 2px 3px);opacity:.7;mix-blend-mode:normal}
/* photo present: soften the colour overlay so the image reads, keep text legible */
.sokk-cover-slide:has(.wp-block-cover__image-background) .wp-block-cover__background{opacity:.3}
.sokk-cover-slide:has(.wp-block-cover__image-background) .wp-block-cover__image-background{z-index:0}
.sokk-cover-slide:has(.wp-block-cover__image-background)::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.12),transparent 44%,rgba(0,0,0,.5))}
/* category tiles show each category's own Media Library image */
.sokk-catimg{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:var(--line)}
/* split banners are now Cover blocks */
.split-banners > .sokk-banner{position:relative;overflow:hidden;min-height:clamp(420px,66vh,720px);height:auto}
@media(max-width:900px){.split-banners > .sokk-banner{min-height:72vw !important}}
/* #14 New Arrivals full-bleed rail — cards align to content on the left, bleed right */
.sokk-rail-fb .wc-block-product-template{padding-left:max(var(--gut),calc((100vw - var(--maxw)) / 2));padding-right:var(--gut);scroll-padding-left:max(var(--gut),calc((100vw - var(--maxw)) / 2))}
/* #23 result count below the grid, centered */
.sokk-result-count{text-align:center}
.sokk-result-count .woocommerce-result-count{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--muted);margin:0}
/* #37 PDP price-row pack / spec chips */
.sokk-pdp-price-row{align-items:center;gap:14px}
.sokk-product-meta{display:inline-flex;align-items:center;gap:10px}
.sokk-pm-pack{font-size:11px;color:var(--muted);border:1px solid var(--line);padding:3px 8px}
.sokk-pm-spec{font-size:11px;color:var(--muted)}
/* footer colophon (follows site title/tagline) */
.sokk-colophon{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:rgba(255,255,255,.5);margin:0}
/* #33 review summary + histogram (real WooCommerce reviews) */
.sokk-reviews-grid{align-items:start}
.sokk-reviews-h{font-size:clamp(26px,3vw,40px)}
.sokk-reviews-avg{gap:12px;margin-top:16px}
.sokk-reviews-num{font-size:40px;line-height:1}
.sokk-reviews-count{font-size:11px;color:var(--muted);margin-top:4px}
.sokk-stars{display:inline-block;position:relative;font-size:16px;line-height:1;letter-spacing:1px;font-family:Arial,sans-serif}
.sokk-stars::before{content:"★★★★★";color:var(--line)}
.sokk-stars::after{content:"★★★★★";color:var(--ink);position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;width:calc(var(--v,0)/5*100%)}
.sokk-reviews-hist{margin-top:20px;display:flex;flex-direction:column;gap:7px}
.sokk-reviews-row{gap:10px}
.sokk-reviews-star{font-size:11px;color:var(--muted);width:24px;flex:none}
.sokk-reviews-track{flex:1;height:4px;background:var(--line)}
.sokk-reviews-fill{height:100%;background:var(--ink)}
.sokk-reviews-none{font-size:12px;color:var(--muted);margin-top:14px}
.sokk-reviews-grid .wp-block-woocommerce-product-reviews{margin-top:0}
@media(max-width:760px){.sokk-reviews-grid .wp-block-column{flex-basis:100%!important}}
/* #27b mobile PDP gallery: horizontal snap swipe + counter + dots */
.sokk-gallery{position:relative}
.sokk-gallery-count,.sokk-gallery-dots{display:none}
@media(max-width:760px){
	.single-product .woocommerce-product-gallery__wrapper{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0}
	.single-product .woocommerce-product-gallery__wrapper::-webkit-scrollbar{display:none}
	.single-product .woocommerce-product-gallery__image{flex:0 0 100%;scroll-snap-align:start;margin:0 !important}
	.sokk-gallery-count{display:block;position:absolute;top:12px;left:12px;z-index:6;background:rgba(0,0,0,.4);color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.5);padding:5px 9px;font-size:10.5px;letter-spacing:.06em}
	.sokk-gallery-dots{display:flex;position:absolute;bottom:12px;left:0;right:0;z-index:6;justify-content:center;gap:7px;pointer-events:none}
	.sokk-gallery-dot{width:7px;height:7px;border-radius:50%;padding:0;border:none;background:rgba(255,255,255,.55);cursor:pointer;transition:background .2s,width .2s;pointer-events:auto}
	.sokk-gallery-dot.is-on{background:#fff;width:18px;border-radius:4px}
}
