.mj-variants{--picker-accent:#c49a44;--picker-blue:#2455df;--picker-polygon:polygon(25% 2%,75% 2%,100% 50%,75% 98%,25% 98%,0 50%);position:relative;padding:22px 0 0;border-top:1px solid var(--theme-border);color:var(--theme-ink);isolation:isolate}
.mj-variants--dragon{--picker-accent:#e8a724}
.mj-variants--olympus{--picker-accent:#c7a657}
.mj-variants [hidden]{display:none!important}
.mj-variants fieldset{min-width:0;margin:0 0 22px;padding:0;border:0}
.mj-variants legend{display:flex;align-items:center;gap:12px;max-width:100%;padding:0;margin:0 0 14px;color:var(--theme-ink);font-size:.9rem;font-weight:800;letter-spacing:.07em}
.mj-variants__colors legend span{color:var(--theme-muted);font-size:.8rem;letter-spacing:0;font-weight:500}
.mj-variants__color-options{display:flex;flex-wrap:wrap;gap:10px}
.mj-variants .mj-variants__color{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:8px 12px;border:1px solid var(--theme-border);border-radius:7px;background:var(--theme-surface);color:var(--theme-ink);font:inherit;font-size:.85rem;cursor:pointer;letter-spacing:0;text-transform:none}
.mj-variants .mj-variants__color[aria-pressed=true]{border-color:var(--picker-accent);box-shadow:0 0 0 1px var(--picker-accent)}
.mj-variants__swatch{display:block;width:24px;height:24px;flex:0 0 24px;border:1px solid #8b94a7;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 3px var(--theme-surface)}
.mj-variants__color-check{visibility:hidden;color:var(--theme-link);font-weight:800}
.mj-variants__color[aria-pressed=true] .mj-variants__color-check{visibility:visible}
.mj-variants .mj-variants__color:disabled{opacity:.5;cursor:not-allowed;text-decoration:line-through}
.mj-variants__sizes legend{width:100%}
.mj-variants__sizes legend::after{content:"";height:2px;min-width:22px;flex:1;background:linear-gradient(90deg,var(--picker-accent),var(--theme-border) 70%,transparent);transform:skewX(-28deg)}
.mj-variants__ornament{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid var(--picker-accent);border-radius:50%;color:var(--picker-accent);font-size:20px;letter-spacing:0;background:var(--theme-surface)}
.mj-variants__size-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:3px 0 5px}
.mj-variants .mj-variants__size{position:relative;display:grid;place-items:center;min-width:0;min-height:60px;aspect-ratio:1.1;max-height:86px;padding:10px 5px;border:0;border-radius:5px;background:transparent;color:var(--theme-ink);font:inherit;font-size:clamp(1rem,2vw,1.4rem);font-weight:800;cursor:pointer;isolation:isolate}
.mj-variants__size::before,.mj-variants__hex{position:absolute;inset:0;clip-path:var(--picker-polygon);z-index:-1}
.mj-variants__size::before{content:"";background:var(--theme-ink)}
.mj-variants__hex{inset:2px;background:var(--theme-surface)}
.mj-variants__size[aria-pressed=true]::before{background:#9ab7ff;filter:drop-shadow(0 0 4px #2455df88)}
.mj-variants__size[aria-pressed=true] .mj-variants__hex{background:linear-gradient(140deg,#2b61ed,#09216e)}
.mj-variants .mj-variants__size[aria-pressed=true]{color:#fff}
.mj-variants__size-label{position:relative;z-index:1;overflow-wrap:anywhere}
.mj-variants__check{position:absolute;right:3px;top:-5px;display:none;place-items:center;width:23px;height:23px;border:2px solid var(--theme-surface);border-radius:50%;background:#2455df;color:#fff;font:800 13px/1 sans-serif}
.mj-variants__size[aria-pressed=true] .mj-variants__check{display:grid}
.mj-variants .mj-variants__size:disabled{color:var(--theme-muted);cursor:not-allowed}
.mj-variants__size:disabled::before{background:var(--theme-border)}
.mj-variants__size:disabled .mj-variants__hex{background:var(--theme-soft)}
.mj-variants__size:disabled .mj-variants__size-label{text-decoration:line-through;opacity:.65}
.mj-variants__size:disabled::after{content:"";position:absolute;inset:50% 8%;height:1px;background:var(--theme-muted);transform:rotate(-48deg);opacity:.6}
.mj-variants__availability{display:flex;align-items:center;gap:10px;min-height:45px;margin:4px 0 22px;padding:11px 14px;border-left:3px solid var(--picker-accent);border-top:1px solid var(--picker-accent);border-bottom:1px solid var(--theme-border);background:var(--theme-soft);color:var(--theme-ink);font-size:.86rem;font-weight:700;line-height:1.4}
.mj-variants__availability::before{content:"✦";color:var(--picker-accent);font-size:20px}
.mj-variants .mj-variants__submit.btn{display:flex;align-items:center;justify-content:center;gap:12px;min-height:60px;padding:17px 18px;border:1px solid var(--picker-accent);border-left:4px solid var(--picker-accent);border-radius:2px;background:linear-gradient(115deg,#15264c,#071026);color:#fff;box-shadow:0 3px 0 #0002;line-height:1.4;letter-spacing:.025em;font-size:.86rem}
.mj-variants__submit svg{flex-shrink:0;color:#f1cc77}
.mj-variants .mj-variants__submit.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.mj-variants button:focus-visible{outline:3px solid var(--theme-link);outline-offset:4px}
@media(hover:hover){.mj-variants__size:not(:disabled):hover::before{background:var(--picker-accent)}.mj-variants .mj-variants__submit.btn:not(:disabled):hover{background:#1c3570}.mj-variants .mj-variants__color:not(:disabled):hover{border-color:var(--picker-accent)}}
@media(max-width:360px){.mj-variants__size-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mj-variants .mj-variants__size{aspect-ratio:1.15;max-height:76px}.mj-variants .mj-variants__submit.btn{font-size:.76rem;padding-inline:10px;gap:8px}}
/* Compact product purchase panel; gallery and shared page styles stay unchanged. */
.detail .detail-info.detail-info--compact{padding:24px clamp(20px,3vw,48px)}
.detail .detail-info--compact>p.kicker{margin:0 0 10px;font-size:.72rem}
.detail .detail-info.detail-info--compact h1{margin:10px 0 14px;font-size:clamp(1.8rem,2.5vw,2.6rem);line-height:1.08;letter-spacing:-.045em}
.detail .detail-info--compact>p.detail-price{margin:0 0 10px;font-size:1.15rem}
.detail .detail-info--compact>p:not(.kicker):not(.detail-price){margin:10px 0;font-size:.88rem;line-height:1.45}
.detail .detail-info--compact form.mj-variants{margin-top:16px;padding-top:14px}
.detail .detail-info--compact .mj-variants fieldset{margin-bottom:12px}
.detail .detail-info--compact .mj-variants legend{margin-bottom:8px;gap:9px;font-size:.78rem}
.detail .detail-info--compact .mj-variants__color-options{gap:8px}
.detail .detail-info--compact .mj-variants .mj-variants__color{min-height:44px;padding:6px 10px;font-size:.78rem}
.detail .detail-info--compact .mj-variants__swatch{width:20px;height:20px;flex-basis:20px}
.detail .detail-info--compact .mj-variants__ornament{width:24px;height:24px;flex-basis:24px;font-size:16px}
.detail .detail-info--compact .mj-variants__size-options{grid-template-columns:repeat(auto-fit,minmax(44px,56px));gap:9px;padding:3px 0}
.detail .detail-info--compact .mj-variants .mj-variants__size{height:52px;min-height:48px;max-height:52px;aspect-ratio:auto;padding:5px;font-size:1rem}
.detail .detail-info--compact .mj-variants__check{width:19px;height:19px;font-size:11px;right:-1px;top:-4px}
.detail .detail-info--compact .mj-variants__availability{min-height:36px;margin:2px 0 12px;padding:6px 10px;gap:8px;font-size:.78rem}
.detail .detail-info--compact .mj-variants__availability::before{font-size:16px}
.detail .detail-info--compact .mj-variants .mj-variants__submit.btn{min-height:48px;margin-top:0;padding:10px 14px;gap:9px;font-size:.78rem}
.detail .detail-info--compact .mj-variants__submit svg{width:20px;height:20px}
.detail .detail-info--compact .shipping-calculator{margin:16px 0 12px}
.detail .detail-info--compact .shipping-calculator__header{padding:10px 14px;gap:10px}
.detail .detail-info--compact .shipping-calculator__header h2{font-size:.9rem}
.detail .detail-info--compact .shipping-calculator__icon{width:32px;height:32px;min-width:32px}
.detail .detail-info--compact .shipping-calculator form.shipping-calculator__form{margin-top:0;padding:12px 14px}
.detail .detail-info--compact .shipping-calculator__form input,.detail .detail-info--compact .shipping-calculator__form button{min-height:44px;padding:10px;font-size:.8rem}
@media(max-width:360px){.detail .detail-info--compact .mj-variants__size-options{gap:6px}.detail .detail-info.detail-info--compact{padding:20px 16px}}
.detail .detail-info--compact>form{margin-top:12px}
.detail .detail-info--compact .favorite-btn{min-height:44px;margin-top:0;padding:10px 14px;font-size:.75rem}
@media(min-width:1000px){.detail .detail-info--compact .shipping-calculator{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.detail .detail-info--compact .shipping-calculator__header{border-bottom:0;border-right:1px solid var(--theme-border)}.detail .detail-info--compact .shipping-calculator__header span:not(.shipping-calculator__icon){font-size:.55rem}.detail .detail-info--compact .shipping-calculator__header h2{font-size:.78rem}.detail .detail-info--compact .shipping-calculator__form label{font-size:.6rem;margin-bottom:6px}.detail .detail-info--compact .shipping-calculator__status,.detail .detail-info--compact .shipping-results{grid-column:1/-1}}
