/*
 * MemberStore front-end styles.
 *
 * Served as a versioned, long-cache module asset (MemberStore_Module::serveAsset).
 * Keeps presentation out of the Smarty templates and gives the dashboard,
 * marketplace, checkout postage chooser and live-update affordances a consistent,
 * mobile-friendly look that layers on top of the site theme.
 *
 * Claude Code / 16th Jun 2026
 */

/* Layout helpers ---------------------------------------------------------- */
.memberstore-dashboard{ display:flex; flex-direction:column; gap:1.25rem; }
.memberstore-dashboard__nav{ display:flex; flex-wrap:wrap; gap:.5rem; }

.memberstore-analytics__cards{ list-style:none; margin:0; padding:0;
	display:grid; grid-template-columns:repeat(auto-fit,minmax(8rem,1fr)); gap:.75rem; }
.memberstore-analytics__value{ display:block; font-size:1.5rem; font-weight:700; }

/* Cards / grids ----------------------------------------------------------- */
.memberstore-products,
.membersite-marketplace__grid{ list-style:none; margin:0; padding:0;
	display:grid; grid-template-columns:repeat(auto-fill,minmax(12rem,1fr)); gap:1rem; }
.marketplace-card{ display:flex; flex-direction:column; gap:.5rem;
	border:1px solid rgba(0,0,0,.1); border-radius:.5rem; padding:.75rem; background:#fff; }
.marketplace-card__title{ font-size:1rem; margin:0; }
.memberstore-card__category,
.memberstore-product__language{ color:#667085; font-size:.9rem; }
.memberstore-card__summary{ color:#4b5563; font-size:.9rem; line-height:1.45; }

/* Public storefront ------------------------------------------------------ */
.memberstore-storefront{ --ms-public-ink:#172033; --ms-public-muted:#667085; --ms-public-accent:#3157d5; max-width:76rem; margin:0 auto; color:var(--ms-public-ink); }
.memberstore-storefront__hero{ display:flex; justify-content:space-between; align-items:flex-end; gap:2rem; margin:0 0 1.5rem; padding:1.5rem; border-radius:1.1rem; background:linear-gradient(135deg,#f0f4ff,#fff 58%,#eefaf4); }
.memberstore-storefront__hero h2{ margin:.15rem 0 .35rem; font-size:clamp(1.55rem,3vw,2.25rem); }.memberstore-storefront__hero p{ max-width:42rem; margin:0; color:var(--ms-public-muted); font-size:1rem; }
.memberstore-storefront__eyebrow,.memberstore-product-page__eyebrow{ color:var(--ms-public-accent,#3157d5); font-size:.75rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.memberstore-storefront__count{ flex:0 0 auto; padding:.45rem .7rem; border-radius:999px; background:#fff; box-shadow:0 3px 12px rgba(23,32,51,.08); font-weight:750; }
.memberstore-storefront__grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(16rem,1fr)); gap:1.25rem; }
.memberstore-storefront-card{ min-width:0; overflow:hidden; border:1px solid #e4e8ef; border-radius:1rem; background:#fff; box-shadow:0 8px 24px rgba(23,32,51,.06); transition:transform .18s,box-shadow .18s; }
.memberstore-storefront-card:hover{ transform:translateY(-3px); box-shadow:0 14px 34px rgba(23,32,51,.12); }
.memberstore-storefront-card__media{ display:grid; place-items:center; aspect-ratio:4/3; overflow:hidden; background:#f2f4f8; text-decoration:none; }
.memberstore-storefront-card__media img{ width:100%; height:100%; object-fit:cover; transition:transform .25s; }.memberstore-storefront-card:hover .memberstore-storefront-card__media img{ transform:scale(1.025); }
.memberstore-storefront-card__placeholder,.memberstore-product-page__placeholder{ display:grid; place-items:center; width:100%; height:100%; background:linear-gradient(135deg,#e8edff,#eef9f3); color:#3157d5; font-size:4rem; font-weight:900; }
.memberstore-storefront-card__body{ display:flex; flex-direction:column; min-height:13rem; padding:1rem; }
.memberstore-storefront-card__category{ overflow:hidden; color:#3157d5; font-size:.72rem; font-weight:800; letter-spacing:.06em; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.memberstore-storefront-card h3{ margin:.35rem 0 .2rem; font-size:1.13rem; line-height:1.25; }.memberstore-storefront-card h3 a{ color:inherit; text-decoration:none; }.memberstore-storefront-card h3 a:hover{ color:#3157d5; }
.memberstore-storefront-card__subtitle{ margin:.1rem 0; color:#475467; font-weight:650; }.memberstore-storefront-card__summary{ display:-webkit-box; overflow:hidden; margin:.55rem 0 1rem; color:var(--ms-public-muted); line-height:1.5; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.memberstore-storefront-card footer{ display:flex; justify-content:space-between; align-items:center; gap:.75rem; margin-top:auto; padding-top:.8rem; border-top:1px solid #eef1f5; }.memberstore-storefront-card footer strong{ color:#172033; }.memberstore-storefront-card__cta{ color:#3157d5; font-weight:800; text-decoration:none; white-space:nowrap; }
.memberstore-storefront__empty{ max-width:36rem; margin:2rem auto; padding:2.5rem; border:1px solid #e4e8ef; border-radius:1rem; background:#fff; text-align:center; }
.memberstore-storefront__actions{ display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem; }
.memberstore-owner-preview{ display:flex; align-items:center; gap:.55rem; margin:0 0 1rem; padding:.55rem .75rem; border:1px solid #f0d48a; border-radius:.65rem; background:#fffaf0; color:#694b00; font-size:.88rem; }
.memberstore-owner-preview__dot{ flex:0 0 .55rem; width:.55rem; height:.55rem; border-radius:50%; background:#d89b00; box-shadow:0 0 0 3px rgba(216,155,0,.15); }
.memberstore-owner-preview a{ margin-left:auto; color:inherit; font-weight:800; white-space:nowrap; }
@media(max-width:600px){.memberstore-owner-preview{align-items:flex-start;flex-wrap:wrap}.memberstore-owner-preview a{width:100%;margin-left:1.1rem}}

/* Public product page ---------------------------------------------------- */
.memberstore-product-page{ --ms-public-ink:#172033; --ms-public-muted:#667085; max-width:76rem; margin:0 auto; color:var(--ms-public-ink); }
.memberstore-product-page__hero{ display:grid; grid-template-columns:minmax(0,1fr) minmax(20rem,.7fr); gap:1.25rem; align-items:stretch; padding:0; border:1px solid #e4e8ef; border-radius:.8rem; background:#fff; box-shadow:0 10px 26px rgba(23,32,51,.06); }
.memberstore-product-page__media{ display:grid; place-items:center; min-height:24rem; overflow:hidden; border-radius:.8rem 0 0 .8rem; background:#f3f5f8; }.memberstore-product-page__media img{ display:block; width:100%; max-width:42rem; max-height:36rem; object-fit:contain; margin:auto; }
.memberstore-product-page__buy{ display:flex; min-width:0; flex-direction:column; justify-content:center; padding:1.35rem; }
.memberstore-product-page__buy h2{ margin:.3rem 0 .45rem; font-size:clamp(1.7rem,3vw,2.55rem); line-height:1.08; }.memberstore-product-page__subtitle{ margin:.2rem 0 .8rem; color:#475467; font-size:1.08rem; }.memberstore-product-page__rating{ color:#8a5a00; font-weight:750; }
.memberstore-product-page__purchase{ display:grid; gap:.8rem; margin:1.25rem 0; padding:1rem; border-radius:.8rem; background:#f6f8ff; }.memberstore-product-page__purchase label{ display:flex; flex-direction:column; gap:.35rem; font-weight:800; }.memberstore-product-page__purchase select{ width:100%; box-sizing:border-box; padding:.72rem; border:1px solid #cfd6e4; border-radius:.55rem; background:#fff; font:inherit; }
.memberstore-product-page__basket{ width:100%; padding:.8rem 1rem !important; border-color:#3157d5 !important; background:#3157d5 !important; color:#fff !important; font-weight:850 !important; }.memberstore-product-page__basket:disabled{ opacity:.5; cursor:not-allowed; }
.memberstore-product-page__notice{ padding:.7rem .8rem; border-radius:.6rem; background:#eef4ff; font-weight:700; }.memberstore-product-page__notice--warn{ background:#fff2e8; color:#8a3d00; }.memberstore-product-page__fulfil{ color:#18794e; font-weight:750; }.memberstore-product-page__message{ margin-top:.75rem; }
.memberstore-product-page__content{ display:grid; grid-template-columns:minmax(0,2fr) minmax(15rem,1fr); gap:1rem; margin-top:1rem; }.memberstore-product-page__description,.memberstore-product-page__content aside,.memberstore-product-page__reviews,.memberstore-product-page__recommendations{ padding:1.25rem; border:1px solid #e4e8ef; border-radius:.8rem; background:#fff; }.memberstore-product-page__description h2,.memberstore-product-page__reviews h2,.memberstore-product-page__recommendations h2{ margin-top:0; }.memberstore-product-page__description{ overflow-wrap:anywhere; line-height:1.65; }.memberstore-product-page__description img{ max-width:100%; height:auto; }
.memberstore-product-page__details summary{ cursor:pointer; font-weight:850; }.memberstore-product-page__details div{ margin-top:.75rem; line-height:1.55; }.memberstore-product-page__promotion{ margin-top:1rem; padding-top:1rem; border-top:1px solid #e4e8ef; }
.memberstore-product-page__reviews{ margin-top:1.5rem; }.memberstore-product-page__review-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(14rem,1fr)); gap:1rem; }.memberstore-product-page__review-grid article{ padding:1rem; border-radius:.75rem; background:#f7f8fb; }.memberstore-product-page__review-grid h3{ margin:.25rem 0; }.memberstore-product-page__stars{ color:#8a5a00; font-weight:800; }
.memberstore-product-page__content--single{ grid-template-columns:minmax(0,1fr); }
.memberstore-product-page__recommendations{ margin-top:1rem; }.memberstore-product-page__carousel{ display:grid; grid-auto-flow:column; grid-auto-columns:minmax(11rem,14rem); gap:.85rem; overflow-x:auto; padding:.15rem .1rem .5rem; scroll-snap-type:x proximity; }.memberstore-recommendation-card{ display:grid; gap:.55rem; min-width:0; padding:.65rem; border:1px solid #e4e8ef; border-radius:.65rem; color:#172033; text-decoration:none; scroll-snap-align:start; }.memberstore-recommendation-card img,.memberstore-recommendation-card>span{ display:grid; width:100%; aspect-ratio:1; place-items:center; border-radius:.5rem; background:#f2f4f8; object-fit:cover; color:#3157d5; font-size:2rem; font-weight:850; }.memberstore-recommendation-card strong{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.memberstore-recommendation-card small{ color:#667085; font-weight:750; }

/* Public storefront ------------------------------------------------------ */
.memberstore-storefront{ --ms-public-ink:#172033; --ms-public-muted:#667085; --ms-public-accent:#3157d5; max-width:76rem; margin:0 auto; color:var(--ms-public-ink); }
.memberstore-storefront__hero{ display:flex; justify-content:space-between; align-items:flex-end; gap:2rem; margin:0 0 1.5rem; padding:1.5rem; border-radius:1.1rem; background:linear-gradient(135deg,#f0f4ff,#fff 58%,#eefaf4); }
.memberstore-storefront__hero h2{ margin:.15rem 0 .35rem; font-size:clamp(1.55rem,3vw,2.25rem); }.memberstore-storefront__hero p{ max-width:42rem; margin:0; color:var(--ms-public-muted); font-size:1rem; }
.memberstore-storefront__eyebrow,.memberstore-product-page__eyebrow{ color:var(--ms-public-accent,#3157d5); font-size:.75rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.memberstore-storefront__count{ flex:0 0 auto; padding:.45rem .7rem; border-radius:999px; background:#fff; box-shadow:0 3px 12px rgba(23,32,51,.08); font-weight:750; }
.memberstore-storefront__grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(16rem,1fr)); gap:1.25rem; }
.memberstore-storefront-card{ min-width:0; overflow:hidden; border:1px solid #e4e8ef; border-radius:1rem; background:#fff; box-shadow:0 8px 24px rgba(23,32,51,.06); transition:transform .18s,box-shadow .18s; }
.memberstore-storefront-card:hover{ transform:translateY(-3px); box-shadow:0 14px 34px rgba(23,32,51,.12); }
.memberstore-storefront-card__media{ display:grid; place-items:center; aspect-ratio:4/3; overflow:hidden; background:#f2f4f8; text-decoration:none; }
.memberstore-storefront-card__media img{ width:100%; height:100%; object-fit:cover; transition:transform .25s; }.memberstore-storefront-card:hover .memberstore-storefront-card__media img{ transform:scale(1.025); }
.memberstore-storefront-card__placeholder,.memberstore-product-page__placeholder{ display:grid; place-items:center; width:100%; height:100%; background:linear-gradient(135deg,#e8edff,#eef9f3); color:#3157d5; font-size:4rem; font-weight:900; }
.memberstore-storefront-card__body{ display:flex; flex-direction:column; min-height:13rem; padding:1rem; }
.memberstore-storefront-card__category{ overflow:hidden; color:#3157d5; font-size:.72rem; font-weight:800; letter-spacing:.06em; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.memberstore-storefront-card h3{ margin:.35rem 0 .2rem; font-size:1.13rem; line-height:1.25; }.memberstore-storefront-card h3 a{ color:inherit; text-decoration:none; }.memberstore-storefront-card h3 a:hover{ color:#3157d5; }
.memberstore-storefront-card__subtitle{ margin:.1rem 0; color:#475467; font-weight:650; }.memberstore-storefront-card__summary{ display:-webkit-box; overflow:hidden; margin:.55rem 0 1rem; color:var(--ms-public-muted); line-height:1.5; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.memberstore-storefront-card footer{ display:flex; justify-content:space-between; align-items:center; gap:.75rem; margin-top:auto; padding-top:.8rem; border-top:1px solid #eef1f5; }.memberstore-storefront-card footer strong{ color:#172033; }.memberstore-storefront-card__cta{ color:#3157d5; font-weight:800; text-decoration:none; white-space:nowrap; }
.memberstore-storefront__empty{ max-width:36rem; margin:2rem auto; padding:2.5rem; border:1px solid #e4e8ef; border-radius:1rem; background:#fff; text-align:center; }

/* Public product page ---------------------------------------------------- */
.memberstore-product-page{ --ms-public-ink:#172033; --ms-public-muted:#667085; max-width:76rem; margin:0 auto; color:var(--ms-public-ink); }
.memberstore-product-page__hero{ display:grid; grid-template-columns:minmax(0,1.12fr) minmax(19rem,.88fr); gap:2rem; align-items:center; padding:1.5rem; border:1px solid #e4e8ef; border-radius:1.2rem; background:#fff; box-shadow:0 12px 35px rgba(23,32,51,.07); }
.memberstore-product-page__media{ display:grid; place-items:center; min-height:24rem; overflow:hidden; border-radius:.9rem; background:#f3f5f8; }.memberstore-product-page__media img{ display:block; width:100%; max-width:42rem; max-height:36rem; object-fit:contain; margin:auto; }
.memberstore-product-page__buy h2{ margin:.3rem 0 .45rem; font-size:clamp(1.7rem,3vw,2.55rem); line-height:1.08; }.memberstore-product-page__subtitle{ margin:.2rem 0 .8rem; color:#475467; font-size:1.08rem; }.memberstore-product-page__rating{ color:#8a5a00; font-weight:750; }
.memberstore-product-page__purchase{ display:grid; gap:.8rem; margin:1.25rem 0; padding:1rem; border-radius:.8rem; background:#f6f8ff; }.memberstore-product-page__purchase label{ display:flex; flex-direction:column; gap:.35rem; font-weight:800; }.memberstore-product-page__purchase select{ width:100%; box-sizing:border-box; padding:.72rem; border:1px solid #cfd6e4; border-radius:.55rem; background:#fff; font:inherit; }
.memberstore-product-page__basket{ width:100%; padding:.8rem 1rem !important; border-color:#3157d5 !important; background:#3157d5 !important; color:#fff !important; font-weight:850 !important; }.memberstore-product-page__basket:disabled{ opacity:.5; cursor:not-allowed; }
.memberstore-product-page__notice{ padding:.7rem .8rem; border-radius:.6rem; background:#eef4ff; font-weight:700; }.memberstore-product-page__notice--warn{ background:#fff2e8; color:#8a3d00; }.memberstore-product-page__fulfil{ color:#18794e; font-weight:750; }.memberstore-product-page__message{ margin-top:.75rem; }
.memberstore-product-page__content{ display:grid; grid-template-columns:minmax(0,2fr) minmax(15rem,1fr); gap:1.5rem; margin-top:1.5rem; }.memberstore-product-page__description,.memberstore-product-page__content aside,.memberstore-product-page__reviews{ padding:1.4rem; border:1px solid #e4e8ef; border-radius:1rem; background:#fff; }.memberstore-product-page__description h2,.memberstore-product-page__reviews h2{ margin-top:0; }.memberstore-product-page__description{ overflow-wrap:anywhere; line-height:1.65; }.memberstore-product-page__description img{ max-width:100%; height:auto; }
.memberstore-product-page__details summary{ cursor:pointer; font-weight:850; }.memberstore-product-page__details div{ margin-top:.75rem; line-height:1.55; }.memberstore-product-page__promotion{ margin-top:1rem; padding-top:1rem; border-top:1px solid #e4e8ef; }
.memberstore-product-page__reviews{ margin-top:1.5rem; }.memberstore-product-page__review-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(14rem,1fr)); gap:1rem; }.memberstore-product-page__review-grid article{ padding:1rem; border-radius:.75rem; background:#f7f8fb; }.memberstore-product-page__review-grid h3{ margin:.25rem 0; }.memberstore-product-page__stars{ color:#8a5a00; font-weight:800; }

/* Public storefront ------------------------------------------------------ */
.memberstore-storefront{ --ms-public-ink:#172033; --ms-public-muted:#667085; --ms-public-accent:#3157d5; max-width:76rem; margin:0 auto; color:var(--ms-public-ink); }
.memberstore-storefront__hero{ display:flex; justify-content:space-between; align-items:flex-end; gap:2rem; margin:0 0 1.5rem; padding:1.5rem; border-radius:1.1rem; background:linear-gradient(135deg,#f0f4ff,#fff 58%,#eefaf4); }
.memberstore-storefront__hero h2{ margin:.15rem 0 .35rem; font-size:clamp(1.55rem,3vw,2.25rem); }.memberstore-storefront__hero p{ max-width:42rem; margin:0; color:var(--ms-public-muted); font-size:1rem; }
.memberstore-storefront__eyebrow,.memberstore-product-page__eyebrow{ color:var(--ms-public-accent,#3157d5); font-size:.75rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.memberstore-storefront__count{ flex:0 0 auto; padding:.45rem .7rem; border-radius:999px; background:#fff; box-shadow:0 3px 12px rgba(23,32,51,.08); font-weight:750; }
.memberstore-storefront__grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(16rem,1fr)); gap:1.25rem; }
.memberstore-storefront-card{ min-width:0; overflow:hidden; border:1px solid #e4e8ef; border-radius:1rem; background:#fff; box-shadow:0 8px 24px rgba(23,32,51,.06); transition:transform .18s,box-shadow .18s; }
.memberstore-storefront-card:hover{ transform:translateY(-3px); box-shadow:0 14px 34px rgba(23,32,51,.12); }
.memberstore-storefront-card__media{ display:grid; place-items:center; aspect-ratio:4/3; overflow:hidden; background:#f2f4f8; text-decoration:none; }
.memberstore-storefront-card__media img{ width:100%; height:100%; object-fit:cover; transition:transform .25s; }.memberstore-storefront-card:hover .memberstore-storefront-card__media img{ transform:scale(1.025); }
.memberstore-storefront-card__placeholder,.memberstore-product-page__placeholder{ display:grid; place-items:center; width:100%; height:100%; background:linear-gradient(135deg,#e8edff,#eef9f3); color:#3157d5; font-size:4rem; font-weight:900; }
.memberstore-storefront-card__body{ display:flex; flex-direction:column; min-height:13rem; padding:1rem; }
.memberstore-storefront-card__category{ overflow:hidden; color:#3157d5; font-size:.72rem; font-weight:800; letter-spacing:.06em; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.memberstore-storefront-card h3{ margin:.35rem 0 .2rem; font-size:1.13rem; line-height:1.25; }.memberstore-storefront-card h3 a{ color:inherit; text-decoration:none; }.memberstore-storefront-card h3 a:hover{ color:#3157d5; }
.memberstore-storefront-card__subtitle{ margin:.1rem 0; color:#475467; font-weight:650; }.memberstore-storefront-card__summary{ display:-webkit-box; overflow:hidden; margin:.55rem 0 1rem; color:var(--ms-public-muted); line-height:1.5; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.memberstore-storefront-card footer{ display:flex; justify-content:space-between; align-items:center; gap:.75rem; margin-top:auto; padding-top:.8rem; border-top:1px solid #eef1f5; }.memberstore-storefront-card footer strong{ color:#172033; }.memberstore-storefront-card__cta{ color:#3157d5; font-weight:800; text-decoration:none; white-space:nowrap; }
.memberstore-storefront__empty{ max-width:36rem; margin:2rem auto; padding:2.5rem; border:1px solid #e4e8ef; border-radius:1rem; background:#fff; text-align:center; }

/* Public product page ---------------------------------------------------- */
.memberstore-product-page{ --ms-public-ink:#172033; --ms-public-muted:#667085; max-width:76rem; margin:0 auto; color:var(--ms-public-ink); }
.memberstore-product-page__hero{ display:grid; grid-template-columns:minmax(0,1.12fr) minmax(19rem,.88fr); gap:2rem; align-items:center; padding:1.5rem; border:1px solid #e4e8ef; border-radius:1.2rem; background:#fff; box-shadow:0 12px 35px rgba(23,32,51,.07); }
.memberstore-product-page__media{ display:grid; place-items:center; min-height:24rem; overflow:hidden; border-radius:.9rem; background:#f3f5f8; }.memberstore-product-page__media img{ display:block; width:100%; max-width:42rem; max-height:36rem; object-fit:contain; margin:auto; }
.memberstore-product-page__buy h2{ margin:.3rem 0 .45rem; font-size:clamp(1.7rem,3vw,2.55rem); line-height:1.08; }.memberstore-product-page__subtitle{ margin:.2rem 0 .8rem; color:#475467; font-size:1.08rem; }.memberstore-product-page__rating{ color:#8a5a00; font-weight:750; }
.memberstore-product-page__purchase{ display:grid; gap:.8rem; margin:1.25rem 0; padding:1rem; border-radius:.8rem; background:#f6f8ff; }.memberstore-product-page__purchase label{ display:flex; flex-direction:column; gap:.35rem; font-weight:800; }.memberstore-product-page__purchase select{ width:100%; box-sizing:border-box; padding:.72rem; border:1px solid #cfd6e4; border-radius:.55rem; background:#fff; font:inherit; }
.memberstore-product-page__basket{ width:100%; padding:.8rem 1rem !important; border-color:#3157d5 !important; background:#3157d5 !important; color:#fff !important; font-weight:850 !important; }.memberstore-product-page__basket:disabled{ opacity:.5; cursor:not-allowed; }
.memberstore-product-page__notice{ padding:.7rem .8rem; border-radius:.6rem; background:#eef4ff; font-weight:700; }.memberstore-product-page__notice--warn{ background:#fff2e8; color:#8a3d00; }.memberstore-product-page__fulfil{ color:#18794e; font-weight:750; }.memberstore-product-page__message{ margin-top:.75rem; }
.memberstore-product-page__content{ display:grid; grid-template-columns:minmax(0,2fr) minmax(15rem,1fr); gap:1.5rem; margin-top:1.5rem; }.memberstore-product-page__description,.memberstore-product-page__content aside,.memberstore-product-page__reviews{ padding:1.4rem; border:1px solid #e4e8ef; border-radius:1rem; background:#fff; }.memberstore-product-page__description h2,.memberstore-product-page__reviews h2{ margin-top:0; }.memberstore-product-page__description{ overflow-wrap:anywhere; line-height:1.65; }.memberstore-product-page__description img{ max-width:100%; height:auto; }
.memberstore-product-page__details summary{ cursor:pointer; font-weight:850; }.memberstore-product-page__details div{ margin-top:.75rem; line-height:1.55; }.memberstore-product-page__promotion{ margin-top:1rem; padding-top:1rem; border-top:1px solid #e4e8ef; }
.memberstore-product-page__reviews{ margin-top:1.5rem; }.memberstore-product-page__review-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(14rem,1fr)); gap:1rem; }.memberstore-product-page__review-grid article{ padding:1rem; border-radius:.75rem; background:#f7f8fb; }.memberstore-product-page__review-grid h3{ margin:.25rem 0; }.memberstore-product-page__stars{ color:#8a5a00; font-weight:800; }

/* Member marketplace ----------------------------------------------------- */
.memberstore-marketplace,.memberstore-market-product,.memberstore-market-basket,.memberstore-market-checkout,.memberstore-market-order{ --mm-ink:#17213a; --mm-muted:#667085; --mm-blue:#3157d5; max-width:78rem; margin:0 auto; color:var(--mm-ink); }
.memberstore-sr-only{ position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.memberstore-marketplace__action-row{ min-height:2.9rem; margin-bottom:.9rem; }.memberstore-marketplace__action-row:after{ display:block; clear:both; content:""; }.memberstore-marketplace__search-toggle{ float:right; width:2.8rem; height:2.8rem; padding:0!important; border-radius:50%!important; font-size:1.1rem!important; }
.memberstore-marketplace__search{ display:flex; justify-content:center; gap:.65rem; width:min(100%,38rem); margin:0 auto 1.5rem; padding:.75rem; border-radius:1rem; background:#f4f6fb; }.memberstore-marketplace__search[hidden]{ display:none; }.memberstore-marketplace__search input{ flex:1; min-width:0; padding:.78rem 1rem; border:1px solid #d5dbea; border-radius:.7rem; background:#fff; font:inherit; }
.memberstore-market-product__supplier{ display:inline-flex; align-items:center; gap:.55rem; margin-bottom:.4rem; color:var(--mm-ink); text-decoration:none; cursor:pointer; }
.memberstore-market-product__supplier-avatar{ display:grid; flex:0 0 2.2rem; width:2.2rem; height:2.2rem; place-items:center; overflow:hidden; border-radius:50%; background:#edf2ff; color:#3157d5; font-weight:850; object-fit:cover; }
.memberstore-market-product__supplier-name{ font-size:.95rem; color:var(--mm-muted); }
.memberstore-market-product__supplier-name strong{ color:var(--mm-ink); }
.memberstore-market-product__resell-label{ font-weight:850; color:#18794e; }
.memberstore-market-product__resell-detail{ color:#4b5563; font-size:.86rem; }
.memberstore-market-product__content--single{ grid-template-columns:1fr; }
.memberstore-marketplace__tabs{ display:flex; flex-wrap:wrap; justify-content:center; gap:.5rem; margin:0 0 1rem; }
.memberstore-marketplace__tab{ margin:0; }
.memberstore-marketplace__tab--active{ box-shadow:inset 0 -3px 0 currentColor; font-weight:800; }
.memberstore-marketplace__locale{ margin:0 0 1.25rem; text-align:center; color:var(--mm-muted); }
.memberstore-marketplace__grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(16.5rem,1fr)); gap:1.4rem; clear:both; }
.memberstore-market-card{ display:flex; min-width:0; flex-direction:column; overflow:hidden; border:1px solid #e1e6ef; border-radius:1.1rem; background:#fff; box-shadow:0 10px 28px rgba(18,34,66,.07); transition:transform .18s ease,box-shadow .18s ease; }.memberstore-market-card:hover{ transform:translateY(-3px); box-shadow:0 17px 38px rgba(18,34,66,.13); }
.memberstore-market-card__media{ display:grid; place-items:center; aspect-ratio:1/1; overflow:hidden; background:linear-gradient(145deg,#f4f6fa,#e9edf5); text-decoration:none; }.memberstore-market-card__media img{ display:block; width:100%; height:100%; object-fit:cover; transition:transform .25s ease; }.memberstore-market-card:hover .memberstore-market-card__media img{ transform:scale(1.025); }.memberstore-market-card__placeholder{ font:800 4rem/1 Georgia,serif; color:#aab4ca; }
.memberstore-market-card__body{ display:flex; flex:1; flex-direction:column; padding:1.1rem; }.memberstore-market-card__meta{ align-self:flex-start; padding:.2rem .48rem; border-radius:999px; background:#edf2ff; color:#3157d5; font-size:.72rem; font-weight:850; letter-spacing:.05em; }.memberstore-market-card h2{ margin:.55rem 0 .35rem; font-size:1.2rem; line-height:1.2; }.memberstore-market-card h2 a{ color:var(--mm-ink); text-decoration:none; }.memberstore-market-card__body>p{ min-height:3.2em; margin:.35rem 0 .75rem; color:var(--mm-muted); line-height:1.55; }.memberstore-market-card__price{ margin-top:auto; font-size:1.22rem; font-weight:900; }.memberstore-market-card__margin{ min-height:0!important; margin:.3rem 0!important; color:#18794e!important; font-size:.86rem; }.memberstore-market-card footer{ display:grid; gap:.5rem; margin-top:.8rem; }.memberstore-market-card footer form,.memberstore-market-card footer button{ width:100%; }.memberstore-market-card__buy{ border-color:var(--mm-blue)!important; background:var(--mm-blue)!important; color:#fff!important; text-align:center; }
.memberstore-marketplace__empty{ display:grid; place-items:center; min-height:18rem; padding:2rem; border:1px dashed #cbd3e2; border-radius:1rem; background:#fafbfc; text-align:center; }.memberstore-marketplace__empty>span{ font-size:2.5rem; }.memberstore-marketplace__empty h2{ margin:.5rem 0; }
.memberstore-market-product__hero{ display:grid; grid-template-columns:minmax(0,1.12fr) minmax(19rem,.88fr); gap:2.2rem; align-items:center; padding:1.5rem; border:1px solid #e1e6ef; border-radius:1.25rem; background:#fff; box-shadow:0 15px 42px rgba(18,34,66,.08); }.memberstore-market-product__media{ display:grid; place-items:center; min-height:28rem; overflow:hidden; border-radius:1rem; background:#f1f4f8; }.memberstore-market-product__media img{ display:block; width:100%; max-height:40rem; object-fit:contain; }.memberstore-market-product__eyebrow{ color:var(--mm-blue); font-size:.75rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }.memberstore-market-product__buy h2{ margin:.45rem 0; font-size:clamp(2rem,4vw,3.2rem); line-height:1.02; }.memberstore-market-product__subtitle,.memberstore-market-product__summary{ color:var(--mm-muted); line-height:1.55; }.memberstore-market-product__purchase{ display:grid; gap:.8rem; margin:1.25rem 0; padding:1rem; border-radius:.9rem; background:#f3f6ff; }.memberstore-market-product__purchase label{ display:grid; gap:.35rem; font-weight:800; }.memberstore-market-product__purchase select{ width:100%; padding:.78rem; border:1px solid #cbd4e5; border-radius:.6rem; background:#fff; font:inherit; }.memberstore-market-product__purchase button{ width:100%; padding:.82rem!important; border-color:var(--mm-blue)!important; background:var(--mm-blue)!important; color:#fff!important; }.memberstore-market-product__fulfil{ color:#18794e; font-weight:800; }.memberstore-market-product__resell{ display:grid; gap:.55rem; margin-top:1rem; padding:1rem; border:1px solid #d8e9df; border-radius:.8rem; background:#f3fbf6; }.memberstore-market-product__resell>strong{ color:#18794e; font-size:1.15rem; }.memberstore-market-product__content{ display:grid; grid-template-columns:minmax(0,2fr) minmax(15rem,1fr); gap:1.4rem; margin-top:1.4rem; }.memberstore-market-product__content>div,.memberstore-market-product__content aside{ padding:1.4rem; border:1px solid #e1e6ef; border-radius:1rem; background:#fff; line-height:1.65; }.memberstore-market-product__content h2,.memberstore-market-product__content h3{ margin-top:0; }.memberstore-market-product__content img{ max-width:100%; height:auto; }
.memberstore-market-basket,.memberstore-market-checkout,.memberstore-market-order{ padding:1.5rem; border:1px solid #e1e6ef; border-radius:1.15rem; background:#fff; box-shadow:0 12px 34px rgba(18,34,66,.07); }.memberstore-market-basket__heading{ display:flex; align-items:end; justify-content:space-between; gap:1rem; padding-bottom:1rem; border-bottom:1px solid #e8ebf1; }.memberstore-market-basket__heading span{ color:var(--mm-blue); font-size:.75rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }.memberstore-market-basket__heading h2{ margin:.2rem 0 0; }.memberstore-market-basket__heading>strong{ font-size:1.35rem; }.memberstore-market-basket__lines article{ display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:1.2rem; align-items:center; padding:1.1rem 0; border-bottom:1px solid #edf0f5; }.memberstore-market-basket__lines h3{ margin:0 0 .25rem; }.memberstore-market-basket__lines article>div span{ color:var(--mm-muted); }.memberstore-market-basket__lines form{ display:flex; gap:.5rem; align-items:end; }.memberstore-market-basket__lines label{ display:grid; gap:.25rem; font-size:.8rem; font-weight:800; }.memberstore-market-basket__lines input{ width:4.5rem; padding:.55rem; border:1px solid #cbd3df; border-radius:.45rem; }.memberstore-market-basket>footer{ display:flex; align-items:center; justify-content:space-between; gap:1rem; padding-top:1.2rem; }.memberstore-market-basket>footer .dc-button{ padding:.8rem 1.4rem!important; }
.memberstore-market-checkout__layout{ display:grid; grid-template-columns:minmax(0,1.6fr) minmax(18rem,.8fr); gap:1.5rem; }.memberstore-market-checkout fieldset{ margin:0 0 1rem; padding:1.1rem; border:1px solid #dfe4ed; border-radius:.8rem; }.memberstore-market-checkout legend{ padding:0 .4rem; font-weight:900; }.memberstore-market-checkout__fields{ display:grid; grid-template-columns:repeat(3,1fr); gap:.7rem; }.memberstore-market-checkout label{ display:grid; gap:.3rem; font-weight:750; }.memberstore-market-checkout input,.memberstore-market-checkout select{ box-sizing:border-box; width:100%; padding:.68rem; border:1px solid #ccd4e1; border-radius:.5rem; background:#fff; font:inherit; }.memberstore-market-checkout__shipping label,.memberstore-market-checkout__payments label{ display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:.7rem; align-items:start; padding:.75rem; border-radius:.55rem; background:#f7f8fb; }.memberstore-market-checkout__shipping input,.memberstore-market-checkout__payments input{ width:auto; margin-top:.2rem; }.memberstore-market-checkout__shipping small,.memberstore-market-checkout__payments small{ display:block; color:var(--mm-muted); font-weight:400; }.memberstore-market-checkout__place{ width:100%; padding:.85rem!important; border-color:var(--mm-blue)!important; background:var(--mm-blue)!important; color:#fff!important; }.memberstore-market-checkout__layout>aside{ align-self:start; position:sticky; top:1rem; padding:1.2rem; border-radius:.9rem; background:#f4f6fb; }.memberstore-market-checkout__layout>aside h2{ margin-top:0; }.memberstore-market-checkout__layout>aside>p{ display:flex; justify-content:space-between; gap:1rem; }.memberstore-market-checkout__total{ font-size:1.1rem; }.memberstore-market-checkout__layout>aside form{ display:grid; gap:.65rem; margin-top:1rem; }
.memberstore-market-order{ max-width:46rem; text-align:center; }.memberstore-market-order>span{ color:var(--mm-blue); font-weight:900; letter-spacing:.08em; text-transform:uppercase; }.memberstore-market-order h2{ font-size:2rem; }.memberstore-market-order>strong{ display:block; margin:.8rem; font-size:1.5rem; }

/* Basket and public order status ---------------------------------------- */
.memberstore-commerce-card{ max-width:70rem; margin:0 auto; border:1px solid #e2e8f0; border-radius:1rem; background:#fff; padding:2rem 2.25rem; box-shadow:0 10px 28px rgba(15,23,42,.06); }
/* Shared primary "continue" action button, so add-to-basket, proceed-to-checkout
   and place-order all read as the same forward step across product/basket/checkout. */
.memberstore-action{ border-color:#3157d5!important; background:#3157d5!important; color:#fff!important; font-weight:800; }
.memberstore-action:hover,.memberstore-action:focus{ border-color:#274bb5!important; background:#274bb5!important; }
.memberstore-commerce-card__heading,.memberstore-orderstatus__header,.memberstore-commerce-card__footer{ display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.memberstore-commerce-card__footer{ justify-content:flex-end; }
.memberstore-commerce-card__heading{ padding-bottom:1rem; border-bottom:1px solid #e2e8f0; }
.memberstore-commerce-card__heading h2{ margin:0; }
.memberstore-commerce-table{ width:100%; border-collapse:collapse; margin:1rem 0; }
.memberstore-commerce-table th,.memberstore-commerce-table td{ padding:.8rem .65rem; border-bottom:1px solid #eef2f7; text-align:left; }
.memberstore-commerce-table input[type=number]{ width:5rem; }
/* Numeric columns (qty, price, totals) sit right so the decimals line up. */
.memberstore-commerce-table th.memberstore-num,.memberstore-commerce-table td.memberstore-num{ text-align:right; white-space:nowrap; }
.memberstore-basket__total{ display:flex; flex-direction:column; margin:0; }
.memberstore-basket__total strong{ font-size:1.25rem; }
.memberstore-commerce-card__primary{ margin-left:auto; }
/* Basket product thumbnails use the SocialMedia-style blurred cover behind an
   uncropped contained image, preserving the whole product inside a fixed tile. */
.memberstore-basket__media-col{ width:84px; }
.memberstore-basket__media{ width:84px; }
.memberstore-basket__thumb-link{ display:inline-block; line-height:0; border-radius:8px; }
.memberstore-basket__thumb-link:focus-visible{ outline:2px solid #3157d5; outline-offset:2px; }
.memberstore-basket__thumb{ width:72px; height:72px; border-radius:8px; object-fit:cover; display:block; background:#eef1f6; }
.memberstore-basket__thumb-stage{ position:relative; display:block; width:72px; height:72px; overflow:hidden; border-radius:8px; background:#eef1f6; }
.memberstore-basket__thumb-backdrop,.memberstore-basket__thumb-main{ position:absolute; inset:0; display:block; width:100%; height:100%; }
.memberstore-basket__thumb-backdrop{ object-fit:cover; filter:blur(8px); opacity:.78; transform:scale(1.16); }
.memberstore-basket__thumb-main{ z-index:1; object-fit:contain; }

/* Product-card images retain the complete cover/artwork. A softly blurred crop
   fills the fixed tile behind it so mixed portrait/landscape assets align. */
.memberstore-storefront-card__media,.memberstore-market-card__media,.memberstore-recommendation-card__media{ position:relative; isolation:isolate; overflow:hidden; background:#eef1f6; }
.memberstore-recommendation-card__media{ display:block; width:100%; aspect-ratio:1; border-radius:.5rem; }
.memberstore-storefront-card__media .memberstore-card-image__backdrop,.memberstore-storefront-card__media .memberstore-card-image__main,.memberstore-market-card__media .memberstore-card-image__backdrop,.memberstore-market-card__media .memberstore-card-image__main,.memberstore-recommendation-card__media .memberstore-card-image__backdrop,.memberstore-recommendation-card__media .memberstore-card-image__main{ position:absolute; inset:0; display:block; width:100%; height:100%; margin:0; border-radius:0; }
.memberstore-card-image__backdrop{ z-index:0; object-fit:cover!important; filter:blur(16px); opacity:.72; transform:scale(1.14); }
.memberstore-card-image__main{ z-index:1; object-fit:contain!important; }
.memberstore-storefront-card:hover .memberstore-card-image__main,.memberstore-market-card:hover .memberstore-card-image__main{ transform:scale(1.025); }
.memberstore-basket__thumb--empty{ background:#eef1f6 url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%239aa6bb'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M21%2016V8a2%202%200%200%200-1-1.73l-7-4a2%202%200%200%200-2%200l-7%204A2%202%200%200%200%203%208v8a2%202%200%200%200%201%201.73l7%204a2%202%200%200%200%202%200l7-4A2%202%200%200%200%2021%2016z'/%3E%3Cpath%20d='M3.27%206.96%2012%2012.01l8.73-5.05'/%3E%3Cpath%20d='M12%2022.08V12'/%3E%3C/svg%3E") center / 34px no-repeat; }
.memberstore-basket__title{ text-decoration:none; color:inherit; }
.memberstore-basket__title:hover strong{ text-decoration:underline; }
.memberstore-basket__supplier{ display:block; margin-top:.25rem; color:#667085; font-size:.86rem; }.memberstore-basket__supplier strong{ color:#475467; font-weight:700; }
.memberstore-basket__supplier-user[data-user-hover-card]{ cursor:pointer; text-decoration:underline; text-decoration-style:dotted; text-underline-offset:.18em; }
.memberstore-basket__supplier-user[data-user-hover-card]:focus-visible{ outline:2px solid #3157d5; outline-offset:2px; border-radius:2px; }
.memberstore-basket__qty-col{ width:13rem; }
.memberstore-basket__qty{ display:flex; justify-content:flex-end; gap:.4rem; align-items:center; margin:0; }
.memberstore-orderstatus__header{ padding-bottom:1rem; border-bottom:1px solid #e2e8f0; }
.memberstore-orderstatus__eyebrow{ color:#3157d5; font-size:.78rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.memberstore-orderstatus__header strong{ font-size:1.35rem; }
.memberstore-orderstatus__state{ display:flex; gap:.9rem; align-items:flex-start; margin-top:1.2rem; padding:1rem; border-radius:.75rem; }
.memberstore-orderstatus__state--waiting{ background:#fff8e6; color:#744b00; }
.memberstore-orderstatus__state--refunded{ background:#f3efff; color:#4c2f86; }
.memberstore-orderstatus__state > span{ font-size:1.4rem; }.memberstore-orderstatus__state p{ margin:.2rem 0 0; }
.marketplace-card__lang{ display:inline-block; font-size:.7rem; font-weight:700;
	padding:.1rem .4rem; border-radius:.25rem; background:rgba(0,0,0,.06); }
.marketplace-card__actions{ margin-top:auto; }

/* Fulfilment / consignment address --------------------------------------- */
.memberstore-consignment__address{ display:block; font-style:normal;
	background:rgba(0,0,0,.04); border-radius:.375rem; padding:.5rem .75rem; margin:.5rem 0; }
.memberstore-consignment__digital{ color:#555; font-style:italic; }

/* Postage chooser --------------------------------------------------------- */
.memberstore-postage{ display:flex; flex-direction:column; gap:.75rem; margin:1rem 0; }
.memberstore-postage__group{ border:1px solid rgba(0,0,0,.1); border-radius:.5rem; padding:.75rem; }
.memberstore-postage__option{ display:flex; align-items:baseline; gap:.5rem; padding:.25rem 0; }
.memberstore-postage__option .memberstore-postage__est{ color:#555; font-size:.85rem; }

/* Flash + live update affordances ---------------------------------------- */
.membersite-marketplace__flash,
.memberstore-error{ padding:.6rem .9rem; border-radius:.375rem; margin:.75rem 0; }
.membersite-marketplace__flash--ok{ background:#e6f6ec; color:#1c5b32; }
.membersite-marketplace__flash--warn,
.memberstore-error{ background:#fdecea; color:#7a271a; }

.memberstore-live-updated{ outline:2px solid #f5b301; outline-offset:2px; transition:outline-color .3s; }
#memberstore-live-banner{ position:sticky; top:0; z-index:5;
	background:#fff5d6; border:1px solid #f5b301; border-radius:.375rem; padding:.5rem .9rem; }
.memberstore-status-slot{ display:inline-block; margin:0 .4rem; padding:.1rem .5rem;
	font-size:.85em; border-radius:.75rem; background:#eef1f4; color:#33424f; }
.memberstore-live-updated .memberstore-status-slot{ background:#fff0c2; color:#5a4500; }
.memberstore-checkout__total-with-postage{ font-weight:600; margin:.5rem 0 1rem; }
/* Basket/checkout line table: the total row is divided off and larger. */
.memberstore-commerce-table tfoot th,.memberstore-commerce-table tfoot td{ border-top:2px solid #e2e8f0; border-bottom:0; padding-top:.9rem; }
.memberstore-commerce-table tfoot td strong{ font-size:1.15rem; }
.memberstore-checkout__total-label{ font-weight:600; }
.memberstore-checkout__line-note{ color:#667085; font-size:.85rem; }
.memberstore-postage__noscript{ font-size:.9em; color:#5a4500; }
.memberstore-checkout__destination{ display:flex; flex-wrap:wrap; align-items:flex-end; gap:.6rem; margin:1rem 0; }
.memberstore-checkout__destination label{ display:flex; flex-direction:column; gap:.25rem; font-size:.9rem; }
.memberstore-checkout__postage-notice{ padding:.6rem .9rem; border-radius:.375rem; margin:.75rem 0;
	background:#fff8e6; color:#7a5200; border:1px solid #f5d08a; }
.memberstore-live-detail{ display:inline-block; margin-left:.4rem; font-size:.8em; color:#1c5b32; font-style:italic; }

/* Tabbed store admin (/store/admin/ route) -------------------------------- */
.memberstore-admin__hero{ display:grid; grid-template-columns:minmax(0,1fr) minmax(10rem,16rem) auto;
	align-items:center; gap:1rem; margin-bottom:1rem; }
.memberstore-admin__hero p{ margin:.25rem 0; }
.memberstore-admin__progress{ display:flex; flex-direction:column; gap:.35rem; font-size:.9rem; }
.memberstore-progress{ height:.45rem; background:rgba(0,0,0,.1); border-radius:999px; overflow:hidden; }
.memberstore-progress span{ display:block; height:100%; background:#1c5b32; border-radius:inherit; }
.memberstore-admin__primary{ margin-left:auto; white-space:nowrap; }
.memberstore-admin__tabs{ display:flex; gap:.35rem; overflow-x:auto; overflow-y:hidden; padding:.25rem 0; -webkit-overflow-scrolling:touch;
	scrollbar-width:none; white-space:nowrap; margin-bottom:1.25rem; }
.memberstore-admin__tabs::-webkit-scrollbar{ display:none; }
.memberstore-admin__tab{ display:inline-block; margin:0; text-decoration:none; white-space:nowrap; }
.memberstore-admin__tab--active{ font-weight:700; }
.memberstore-admin__panel{ margin-top:0; }
.memberstore-admin__preview{ width:100%; height:600px; border:1px solid rgba(0,0,0,.1); border-radius:.5rem; }
.memberstore-admin-global{ --ms-admin-ink:#172033; --ms-admin-muted:#667085; --ms-admin-line:#e5e9f0; max-width:86rem; margin:0 auto; color:var(--ms-admin-ink); }
.memberstore-admin-global .memberstore-analytics__cards{ grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin:1rem 0 1.4rem; }
.memberstore-staff-hero-card{ display:flex; align-items:center; gap:.9rem; min-height:5.5rem; box-sizing:border-box; padding:1rem; border:1px solid var(--ms-admin-line); border-radius:.85rem; background:#fff; box-shadow:0 5px 16px rgba(23,32,51,.05); }
.memberstore-staff-hero-card__icon{ display:grid; place-items:center; flex:0 0 2.7rem; height:2.7rem; border-radius:.7rem; background:#edf1ff; color:#3157d5; font-size:1.25rem; font-weight:850; }
.memberstore-staff-hero-card strong{ display:block; color:var(--ms-admin-ink); font-size:1.65rem; line-height:1; }.memberstore-staff-hero-card strong small{ color:#98a2b3; font-size:.85rem; }.memberstore-staff-hero-card div>span{ display:block; margin-top:.35rem; color:var(--ms-admin-muted); font-size:.82rem; font-weight:700; }
.memberstore-staff-chart{ position:relative; margin-bottom:1rem; padding:1.2rem; border:1px solid var(--ms-admin-line); border-radius:.85rem; background:#fff; }
.memberstore-staff-chart__canvas{ position:relative; height:11rem; }.memberstore-staff-chart__canvas canvas{ width:100%; height:100%; }
.memberstore-staff-chart__head,.memberstore-admin__section-heading{ display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }
.memberstore-staff-chart__head h2,.memberstore-admin__section-heading h2{ margin:0; }.memberstore-staff-chart__head p,.memberstore-admin__section-heading p{ margin:.2rem 0 1rem; color:#667085; }
.memberstore-admin__section-actions{ display:flex; align-items:center; justify-content:flex-end; gap:.5rem; margin-left:auto; }
.memberstore-starter-filter{ align-items:center; gap:.45rem; white-space:nowrap; }.memberstore-starter-filter b{ color:#344054; font-size:.85rem; }
.memberstore-table-toolbar{ min-height:2.5rem; margin-bottom:.75rem; }.memberstore-table-toolbar::after{ display:block; clear:both; content:""; }.memberstore-table-toolbar .memberstore-export-csv{ float:right; }
.memberstore-export-csv{ float:right; white-space:nowrap; }
.memberstore-chart-menu{ position:relative; }.memberstore-chart-menu>button{ border:1px solid #d5dae3; border-radius:.5rem; background:#fff; padding:.45rem .7rem; cursor:pointer; }
.memberstore-chart-menu>div{ position:absolute; z-index:10; right:0; top:2.4rem; min-width:10rem; padding:.55rem; border:1px solid #d5dae3; border-radius:.55rem; background:#fff; box-shadow:0 10px 24px rgba(15,23,42,.15); }
.memberstore-chart-menu>div button,.memberstore-chart-menu>div label{ display:block; width:100%; padding:.35rem; border:0; background:transparent; text-align:left; cursor:pointer; }
.memberstore-staff-panel{ overflow:hidden; padding:1rem; border:1px solid var(--ms-admin-line); border-radius:.85rem; background:#fff; }.memberstore-staff-filter{ display:flex; gap:.5rem; justify-content:flex-end; align-items:center; }
.memberstore-filter-toggle{ display:grid; width:2.5rem; height:2.5rem; place-items:center; border:1px solid #d5dae3; border-radius:.55rem; background:#fff; font-size:1.1rem; cursor:pointer; }.memberstore-filter-toggle[aria-expanded=true]{ border-color:#3157d5; background:#eef2ff; }
.memberstore-product-filters{ display:grid; grid-template-columns:minmax(12rem,1fr) minmax(14rem,1.3fr); gap:1rem; align-items:end; margin:0 0 1rem; padding:1rem; border:1px solid #dfe4ec; border-radius:.7rem; background:#f7f8fb; }.memberstore-product-filters[hidden]{ display:none; }.memberstore-product-filters label{ display:flex; min-width:0; flex-direction:column; gap:.35rem; font-weight:750; }.memberstore-product-filters select,.memberstore-product-filters input[type=search]{ width:100%; box-sizing:border-box; padding:.6rem .7rem; border:1px solid #cfd6e1; border-radius:.5rem; background:#fff; font:inherit; }
.memberstore-staff-table-wrap,.memberstore-types-table-wrap{ width:100%; overflow-x:auto; }
.memberstore-staff-table,.memberstore-types-table{ width:100%; border-collapse:separate; border-spacing:0; }
.memberstore-staff-table th,.memberstore-types-table th{ padding:.72rem .8rem; border-bottom:1px solid #dfe4ec; background:#f7f8fb; color:#667085; font-size:.72rem; font-weight:850; letter-spacing:.055em; text-align:left; text-transform:uppercase; white-space:nowrap; }
.memberstore-staff-table td,.memberstore-types-table td{ padding:.8rem; border-bottom:1px solid #edf0f4; vertical-align:middle; }.memberstore-staff-table tbody tr:hover,.memberstore-types-table tbody tr:hover{ background:#fafbff; }.memberstore-staff-table tbody tr:last-child td,.memberstore-types-table tbody tr:last-child td{ border-bottom:0; }
.memberstore-staff-table th:first-child,.memberstore-types-table th:first-child{ border-top-left-radius:.55rem; }.memberstore-staff-table th:last-child,.memberstore-types-table th:last-child{ border-top-right-radius:.55rem; }
.memberstore-order-ref{ color:#3157d5; }.memberstore-staff-status{ display:inline-flex; padding:.24rem .55rem; border-radius:999px; background:#eef1f5; color:#475467; font-size:.76rem; font-weight:800; white-space:nowrap; }.memberstore-staff-status--paid,.memberstore-staff-status--yes{ background:#e8f7ee; color:#17603b; }.memberstore-staff-status--awaiting-payment{ background:#fff4dd; color:#7a4d00; }.memberstore-staff-status--cancelled,.memberstore-staff-status--overdue{ background:#feeceb; color:#9f2d24; }
.memberstore-staff-status--refunded{ background:#ede9fe; color:#4c2f86; }
.memberstore-staff-empty{ padding:2rem; color:#667085; text-align:center; }
.memberstore-staff-avatar,.memberstore-staff-product-image{ display:block; width:3rem; height:3rem; border-radius:50%; object-fit:cover; background:#eef2f7; }
.memberstore-staff-product-image{ border-radius:.45rem; }.memberstore-staff-avatar--fallback,.memberstore-staff-product-image--fallback{ display:grid; place-items:center; font-weight:800; color:#667085; }
.memberstore-staff-user{ display:inline-flex; align-items:center; gap:.6rem; }
.memberstore-types-admin__intro{ max-width:52rem; margin:0 0 .75rem; color:#667085; }.memberstore-types-table td:first-child{ width:6rem; }.memberstore-types-table td:last-child{ width:5rem; text-align:center; }.memberstore-types-table th:last-child{ text-align:center; }.memberstore-type-row--saving{ opacity:.55; }
.memberstore-switch{ display:inline-flex; position:relative; cursor:pointer; }.memberstore-switch input{ position:absolute; opacity:0; pointer-events:none; }.memberstore-switch>span{ display:block; position:relative; width:2.45rem; height:1.35rem; border-radius:999px; background:#cbd2dd; transition:background .15s; }.memberstore-switch>span::after{ content:""; position:absolute; top:.18rem; left:.18rem; width:.99rem; height:.99rem; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.25); transition:transform .15s; }.memberstore-switch input:checked+span{ background:#3157d5; }.memberstore-switch input:checked+span::after{ transform:translateX(1.1rem); }.memberstore-switch input:focus-visible+span{ outline:3px solid rgba(49,87,213,.22); outline-offset:2px; }
.memberstore-sr-only{ position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.memberstore-type-add{ display:grid; grid-template-columns:1fr 2fr auto; gap:.6rem; margin-top:1rem; }.memberstore-type-add input{ min-width:0; }
.memberstore-type-add[hidden]{ display:none !important; }
.memberstore-admin__actions::after{ display:block; clear:both; content:""; }
.memberstore-admin__action-right{ margin-left:auto; }

/* Product editor --------------------------------------------------------- */
.memberstore-product-edit{ --ms-edit-ink:#172033; --ms-edit-muted:#667085; --ms-edit-line:#e3e8ef; --ms-edit-accent:#3157d5; max-width:86rem; margin:0 auto; color:var(--ms-edit-ink); }
.memberstore-product-edit,.memberstore-product-edit *{ box-sizing:border-box; }
.memberstore-product-edit__form{ display:flex; flex-direction:column; gap:1.25rem; }
.memberstore-product-edit__header{ display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding:1.35rem 1.5rem; border:1px solid var(--ms-edit-line); border-radius:1rem; background:linear-gradient(135deg,#f3f6ff,#fff 60%); box-shadow:0 8px 24px rgba(23,32,51,.06); }
.memberstore-product-edit__header h2{ margin:.15rem 0 .3rem; font-size:clamp(1.55rem,2.5vw,2.15rem); line-height:1.15; }.memberstore-product-edit__header p{ margin:0; color:var(--ms-edit-muted); }
.memberstore-product-edit__eyebrow{ color:var(--ms-edit-accent); font-size:.73rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.memberstore-product-edit__header-actions{ display:flex; align-items:center; gap:.8rem; flex:0 0 auto; }.memberstore-product-edit__saved{ color:#17603b; font-weight:800; white-space:nowrap; }
.memberstore-product-edit__save{ padding:.7rem 1.1rem !important; border-color:var(--ms-edit-accent) !important; background:var(--ms-edit-accent) !important; color:#fff !important; font-weight:800 !important; }
.memberstore-toast{ position:fixed; z-index:10000; right:1rem; bottom:1rem; display:flex; align-items:center; gap:1rem; padding:.8rem 1rem; border-radius:.65rem; background:#172033; color:#fff; box-shadow:0 10px 30px rgba(0,0,0,.25); }.memberstore-toast button{ border:0; background:transparent; color:#b9c8ff; font:inherit; font-weight:800; cursor:pointer; }
.memberstore-product-edit__layout{ display:grid; grid-template-columns:minmax(0,2fr) minmax(18rem,.72fr); gap:1.25rem; align-items:start; }
.memberstore-product-edit__main,.memberstore-product-edit__side{ display:flex; min-width:0; flex-direction:column; gap:1.25rem; }.memberstore-product-edit__side{ position:static; }
.memberstore-product-edit [hidden]{ display:none !important; }
.memberstore-version-tab [data-version-tab-identity]{ color:var(--ms-edit-muted); font-size:.75rem; line-height:1.35; }
.memberstore-product-edit__section{ min-width:0; padding:1.25rem; border:1px solid var(--ms-edit-line); border-radius:.9rem; background:#fff; box-shadow:0 5px 18px rgba(23,32,51,.045); }
.memberstore-product-edit__section>h3{ margin:0 0 .35rem; }.memberstore-product-edit__section-heading{ display:flex; align-items:flex-start; gap:.8rem; margin-bottom:1rem; }.memberstore-product-edit__section-heading h3{ margin:0; font-size:1.15rem; }.memberstore-product-edit__section-heading p,.memberstore-product-edit__hint{ margin:.2rem 0 0; color:var(--ms-edit-muted); line-height:1.45; }
.memberstore-product-edit__step{ display:grid; flex:0 0 1.8rem; width:1.8rem; height:1.8rem; place-items:center; border-radius:50%; background:#eaf0ff; color:var(--ms-edit-accent); font-size:.82rem; font-weight:900; }
.memberstore-product-edit label,.memberstore-version-panel label{ display:flex; min-width:0; flex-direction:column; gap:.35rem; color:#344054; font-weight:750; }.memberstore-product-edit label small{ color:var(--ms-edit-muted); font-weight:500; }
.memberstore-product-edit input[type=text],.memberstore-product-edit input[type=number],.memberstore-product-edit select,.memberstore-product-edit textarea{ width:100%; min-width:0; padding:.7rem .75rem; border:1px solid #cfd6e1; border-radius:.55rem; background:#fff; color:var(--ms-edit-ink); font:inherit; }.memberstore-product-edit textarea{ resize:vertical; line-height:1.5; }.memberstore-product-edit input:focus,.memberstore-product-edit select:focus,.memberstore-product-edit textarea:focus{ outline:3px solid rgba(49,87,213,.16); border-color:#7790e6; }
.memberstore-product-edit__field-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }.memberstore-product-edit__field--wide{ grid-column:1/-1; }
.memberstore-version-workspace{ display:grid; grid-template-columns:minmax(10rem,.32fr) minmax(0,1fr); overflow:hidden; border:1px solid var(--ms-edit-line); border-radius:.75rem; background:#f8f9fc; }
.memberstore-version-workspace__rail{ display:flex; min-width:0; flex-direction:column; padding:.65rem; border-right:1px solid var(--ms-edit-line); background:#f4f6fa; }.memberstore-version-tabs{ display:flex; flex-direction:column; gap:.4rem; }
.memberstore-version-tab{ display:flex; width:100%; min-width:0; flex-direction:column; gap:.18rem; padding:.65rem .7rem; border:1px solid transparent; border-radius:.55rem; background:transparent; color:#344054; text-align:left; cursor:pointer; }.memberstore-version-tab strong,.memberstore-version-tab span{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.memberstore-version-tab span{ color:var(--ms-edit-muted); font-size:.82rem; }.memberstore-version-tab:hover{ background:#fff; }.memberstore-version-tab--active{ border-color:#cbd6fb; background:#fff; color:var(--ms-edit-accent); box-shadow:0 2px 8px rgba(49,87,213,.08); }
.memberstore-version-add{ margin-top:.55rem; padding:.55rem; border:1px dashed #aeb9cd; border-radius:.5rem; background:transparent; color:var(--ms-edit-accent); font-weight:800; cursor:pointer; }.memberstore-version-add:hover{ border-color:var(--ms-edit-accent); background:#eef2ff; }
.memberstore-version-panels{ min-width:0; padding:1rem; background:#fff; }.memberstore-version-panel{ position:relative; display:grid; min-width:0; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin:0; padding:2.35rem 0 0; border:0; }.memberstore-version-panel[hidden]{ display:none; }.memberstore-version-panel legend{ position:absolute; top:0; left:0; padding:0; font-size:1rem; font-weight:850; }.memberstore-version-remove{ position:absolute; top:-.2rem; right:0; padding:.25rem .45rem; border:0; background:transparent; color:#b42318; cursor:pointer; }.memberstore-version-remove:disabled{ opacity:.35; cursor:not-allowed; }
.memberstore-version-admin-links{ display:flex; grid-column:1/-1; flex-wrap:wrap; gap:.55rem; padding:.65rem; border:1px solid #d8e0f5; border-radius:.55rem; background:#f4f7ff; }.memberstore-version-admin-links a{ display:inline-block; padding:.4rem .6rem; border:1px solid #b9c8f4; border-radius:.4rem; background:#fff; color:var(--ms-edit-accent); font-size:.84rem; font-weight:800; text-decoration:none; }.memberstore-version-admin-links a:hover,.memberstore-version-admin-links a:focus{ border-color:var(--ms-edit-accent); text-decoration:underline; }
.memberstore-product-edit__price-grid,.memberstore-product-edit__stock-fields{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; grid-column:1/-1; }
.memberstore-product-edit__stock-fields[hidden],.memberstore-product-edit__file-input{ display:none !important; }
.memberstore-product-edit__image{ display:grid; width:100%; min-height:13rem; margin:.85rem 0; place-items:center; overflow:hidden; border:1px dashed #aeb9c7; border-radius:.75rem; background:#f6f8fb; }.memberstore-product-edit__image img{ display:block; width:100%; max-height:20rem; object-fit:contain; }.memberstore-product-edit__image span{ display:flex; flex-direction:column; align-items:center; gap:.45rem; color:var(--ms-edit-muted); }.memberstore-product-edit__image span b{ font-size:2rem; color:var(--ms-edit-accent); }.memberstore-product-edit__image img[hidden],.memberstore-product-edit__image span[hidden]{ display:none; }
.memberstore-product-edit__secondary{ width:100%; text-align:center; }.memberstore-product-edit__stock-fields{ margin-top:.8rem; }.memberstore-product-edit__check{ flex-direction:row !important; align-items:flex-start; gap:.65rem !important; margin-top:1rem; padding:.75rem; border-radius:.6rem; background:#f7f8fb; cursor:pointer; }.memberstore-product-edit__check input{ flex:0 0 auto; margin-top:.2rem; }.memberstore-product-edit__check span{ display:flex; flex-direction:column; gap:.15rem; }.memberstore-product-edit__percent{ display:flex; align-items:center; gap:.4rem; margin-top:.75rem; }.memberstore-product-edit__percent input{ max-width:7rem; }
.memberstore-product-links{ display:grid; grid-column:1/-1; gap:.65rem; margin:.65rem 0 0; padding:.75rem; border:1px solid var(--ms-edit-line); border-radius:.65rem; background:#fafbfc; }.memberstore-product-links[hidden]{display:none}.memberstore-product-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem;align-items:center}.memberstore-product-links>[data-add-product-link]{justify-self:end}
.memberstore-product-edit__footer{ display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.25rem; border:1px solid var(--ms-edit-line); border-radius:.85rem; background:#fff; color:var(--ms-edit-muted); }.memberstore-product-edit__empty{ padding:2rem; border:1px solid var(--ms-edit-line); border-radius:.9rem; background:#fff; text-align:center; }
.memberstore-subtitle-toggle{ margin-left:.35rem; padding:.05rem .35rem; border:0; background:transparent; cursor:pointer; }
.memberstore-product-edit__image[role=button]{ cursor:pointer; outline:none; }
.memberstore-product-edit__image[role=button]:focus-visible,.memberstore-product-edit__image.is-dragging{ outline:3px solid rgba(49,87,213,.3); outline-offset:3px; background:#edf2ff; }
.memberstore-product-edit__image--disabled{ cursor:not-allowed; border-style:dashed; background:#f1f3f7; opacity:.7; }
.memberstore-product-edit__section--disabled h3{ color:var(--ms-edit-muted); }
.memberstore-table-thumb{ display:block; width:78px; height:78px; overflow:hidden; border-radius:.55rem; background:#eef2f7; }
.memberstore-table-thumb img{ display:block; width:100%; height:100%; object-fit:cover; }
/* Owner administration: consistent cards, navigation and product details. */
.memberstore-admin{ --ms-admin-line:#e2e8f0; --ms-admin-muted:#64748b; }
.memberstore-admin .memberstore-admin__hero{ display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:1.25rem; margin:0 0 1.25rem; padding:1rem 1.25rem; border:1px solid var(--ms-admin-line); border-radius:1rem; background:#f8fafc; }
.memberstore-admin .memberstore-admin__tabs{ display:flex; flex-wrap:wrap; gap:.4rem; margin:0 0 1.5rem; padding:.5rem; border:1px solid var(--ms-admin-line); border-radius:1rem; background:#f8fafc; }
.memberstore-admin .memberstore-admin__tab{ padding:.65rem .85rem; border:1px solid var(--ms-admin-line); border-radius:.6rem; background:#fff; text-decoration:none; }
.memberstore-admin .memberstore-admin__tab,.memberstore-admin .memberstore-admin__tab:visited,.memberstore-admin .memberstore-admin__tab:hover,.memberstore-admin .memberstore-admin__tab:focus{ color:#172033; }
.memberstore-admin .memberstore-admin__tab--active{ background:#e8f3f2; border-color:var(--ms-admin-line); color:#172033; font-weight:750; }
.memberstore-admin .memberstore-admin__primary,.memberstore-admin .memberstore-admin__action-right{ color:#172033; }
.memberstore-admin .memberstore-admin__panel{ padding:1.5rem; border:1px solid var(--ms-admin-line); border-radius:1rem; background:#fff; box-shadow:0 8px 25px #17203306; }
.memberstore-admin .memberstore-admin__section-heading:empty{ display:none; }
.memberstore-admin .memberstore-admin__section-heading--actions{ justify-content:flex-end; }
.memberstore-admin [data-memberstore-table]{ overflow-x:auto; }
.memberstore-admin table{ width:100%; border-collapse:separate; border-spacing:0; }
.memberstore-admin th{ padding:.8rem; text-align:left; background:#f8fafc; color:#475569; font-size:.8rem; }
.memberstore-admin td{ padding:1rem .8rem; vertical-align:middle; border-bottom:1px solid var(--ms-admin-line); }
.memberstore-admin tbody tr:hover{ background:#fafcfd; }
.memberstore-admin td:last-child{ min-width:10rem; }
.memberstore-admin .memberstore-inline-form{ margin:0 0 .4rem; }
.memberstore-cell-detail,.memberstore-muted{ display:block; color:#64748b; font-size:.8rem; margin-top:.35rem; }
.memberstore-person{ display:block; margin:.2rem 0; }
.memberstore-person .dc-mention{ display:inline-flex; align-items:center; gap:.5rem; white-space:normal; text-decoration:none; }
.memberstore-person img{ width:40px; height:40px; border-radius:50%; object-fit:cover; }
.memberstore-preview-thumb{ border:0; padding:0; cursor:pointer; }
.memberstore-preview-button{ margin:.25rem 0; }
.memberstore-preview-title{ border:0; padding:0; background:none; text-align:left; font:inherit; font-weight:750; color:inherit; cursor:pointer; }
.memberstore-preview-title:hover{ text-decoration:underline; }
.memberstore-admin td .dc-button,.memberstore-product-preview .dc-button{ padding:.6rem .85rem; border:1px solid #cbd5e1; border-radius:.6rem; background:#fff; color:#334155; font:inherit; font-weight:650; cursor:pointer; text-decoration:none; }
.memberstore-admin td .memberstore-inline-form .dc-button{ background:#236e70; border-color:#236e70; color:#fff; }
.memberstore-admin td .memberstore-inline-form .dc-button--danger{ background:#fff; border-color:#e4b9b9; color:#9b3131; }
.memberstore-product-preview{ width:min(1100px,94vw); max-height:90vh; padding:0; border:0; border-radius:1rem; background:#fff; box-shadow:0 24px 80px #0004; }
.memberstore-product-preview::backdrop{ background:#0f172a99; }
.memberstore-product-preview>header{ position:sticky; top:0; z-index:2; display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1rem 1.4rem; background:#fff; border-bottom:1px solid #e2e8f0; }
.memberstore-product-preview [data-preview-body]{ padding:1.25rem; }
.memberstore-preview-prices p{ display:flex; justify-content:space-between; gap:1rem; padding:.7rem 0; border-bottom:1px solid #e2e8f0; }
.memberstore-preview-creators{ display:flex; flex-direction:column; gap:.3rem; }
@media(max-width:700px){ .memberstore-admin .memberstore-admin__panel{padding:.8rem;} .memberstore-admin .memberstore-admin__hero{flex-wrap:wrap;} .memberstore-product-preview .memberstore-product-page__hero{grid-template-columns:1fr;} }
/* Badges for state/status cells in AJAX tables */
.memberstore-badge{ display:inline-block; padding:.1rem .4rem; border-radius:.75rem;
	font-size:.8em; background:#eef1f4; color:#33424f; }
.memberstore-badge--paid, .memberstore-badge--complete{ background:#e6f6ec; color:#1c5b32; }
.memberstore-badge--overdue, .memberstore-badge--disputed{ background:#fdecea; color:#7a271a; }
.memberstore-badge--due{ background:#fff5d6; color:#5a4500; }
.memberstore-badge--draft, .memberstore-badge--muted{ background:#f0f0f0; color:#666; }
.memberstore-badge--refunded{ background:#ede9fe; color:#4c2f86; }
.memberstore-badge--live{ background:#e6f6ec; color:#1c5b32; }

/* Payment method CRUD list ------------------------------------------------ */
.memberstore-payments__item{ display:flex; align-items:center; flex-wrap:wrap; gap:.5rem; padding:.5rem 0; border-bottom:1px solid #eef1f4; }
.memberstore-payments__label{ font-weight:600; margin-right:.25rem; }
.memberstore-payments__actions{ margin-left:auto; display:flex; gap:.4rem; }
.memberstore-inline-form{ display:inline; margin:0; }
.memberstore-table-action{ display:flex; flex-wrap:wrap; gap:.35rem; align-items:center; min-width:15rem; }
.memberstore-table-action input[type=text]{ width:8rem; min-width:0; padding:.35rem .45rem; border:1px solid #d0d5dd; border-radius:.35rem; font:inherit; }
.dc-button--danger{ background:#fdecea; color:#7a271a; border-color:#f3c0ba; }
.dc-button--danger:hover{ background:#f8d7d2; }

/* Timeline posting toggle ------------------------------------------------- */
.memberstore-toggle{ display:flex; align-items:center; gap:.5rem; margin:.5rem 0; }
.memberstore-toggle input{ width:auto; }

/* Product publish banner -------------------------------------------------- */
.memberstore-product-edit__publish{ margin-bottom:1rem; padding:1rem; }
.memberstore-product-edit__publish-row{ display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.memberstore-product-edit__publish-row p{ margin:.25rem 0 0; color:#667065; }
.memberstore-success{ color:#1c5b32; background:#e6f6ec; padding:.5rem .75rem; border-radius:.4rem; }
.memberstore-notice{ color:#5a4500; background:#fff5d6; padding:.5rem .75rem; border-radius:.4rem; }

/* Products status filter -------------------------------------------------- */
.memberstore-products-toolbar{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.75rem 1rem; margin-bottom:.75rem; }
.memberstore-products-filter{ display:flex; flex-wrap:wrap; align-items:center; gap:.55rem 1rem; }
.memberstore-products-filter strong,.memberstore-products-filter label{ font-weight:700; color:#344054; white-space:nowrap; }
.memberstore-products-filter label{ display:inline-flex; align-items:center; gap:.35rem; }
.memberstore-products-filter select{ padding:.3rem .55rem; border:1px solid #d0d5dd; border-radius:.4rem; background:#fff; font:inherit; color:#172033; cursor:pointer; }
.memberstore-products-toolbar__actions{ display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:.5rem; margin-left:auto; }
.memberstore-settings-panel{ overflow:hidden; margin:0 0 .75rem; border:1px solid #dce3ef; border-radius:.8rem; background:#fff; }
.memberstore-settings-panel>summary{ display:flex; align-items:center; gap:.65rem; padding:1rem 1.15rem; cursor:pointer; list-style:none; background:#f8fafc; color:#172033; font-size:1.05rem; font-weight:800; }
.memberstore-settings-panel>summary::-webkit-details-marker{ display:none; }
.memberstore-settings-panel>summary::before{ content:'\203A'; width:1rem; color:#3157d5; font-size:1.45rem; line-height:1; transform-origin:center; transition:transform .15s ease; }
.memberstore-settings-panel[open]>summary{ background:#f3f6ff; }
.memberstore-settings-panel[open]>summary::before{ transform:rotate(90deg); }
.memberstore-settings-panel>.memberstore-admin__panel{ margin:0; padding:1rem 1.15rem; border:0; border-top:1px solid #e5e9f0; border-radius:0; box-shadow:none; }
.memberstore-order-filters{ display:flex; flex-wrap:wrap; align-items:end; gap:.7rem 1rem; margin-bottom:1rem; }
.memberstore-order-filters label{ display:grid; gap:.3rem; color:#344054; font-weight:700; }
.memberstore-order-filters input,.memberstore-order-filters select{ min-height:2.25rem; padding:.35rem .55rem; border:1px solid #d0d5dd; border-radius:.45rem; background:#fff; font:inherit; }
.memberstore-order-thumbs{ display:inline-flex; align-items:center; min-width:3.5rem; }
.memberstore-order-thumbs img{ width:2.6rem; height:2.6rem; object-fit:cover; border:2px solid #fff; border-radius:.45rem; box-shadow:0 1px 4px rgba(23,32,51,.18); }
.memberstore-order-thumbs img+img{ margin-left:-1.2rem; }
.memberstore-order-thumbs small{ margin-left:.3rem; font-weight:800; }

/* AJAX sortable tables ---------------------------------------------------- */
.memberstore-tables{ display:flex; flex-direction:column; gap:.5rem; }
.memberstore-table{ width:100%; border-collapse:collapse; margin:.5rem 0 1rem; }
.memberstore-table th, .memberstore-table td{ text-align:left; padding:.4rem .6rem; border-bottom:1px solid rgba(0,0,0,.08); }
.memberstore-table tr[data-product-url],.memberstore-table tr[data-row-url]{ cursor:pointer; }
.memberstore-table tr[data-product-url]:hover,.memberstore-table tr[data-row-url]:hover{ background:#fafbff; }
.memberstore-product-link{ color:#3157d5; font-weight:700; text-decoration:none; }
.memberstore-product-link:hover{ text-decoration:none; }
.memberstore-seed-switch{ align-items:center; gap:.5rem; }
.memberstore-seed-switch b{ min-width:1.8rem; color:#475467; font-size:.78rem; }
.memberstore-sort{ background:none; border:0; padding:0; font:inherit; font-weight:700; cursor:pointer; color:inherit; }
.memberstore-sort:hover{ text-decoration:underline; }
.memberstore-pager{ display:flex; align-items:center; gap:.75rem; }
.memberstore-infinite-sentinel{ display:flex; justify-content:center; padding:1rem 0 .25rem; }
.memberstore-empty{ color:#555; font-style:italic; }
[data-memberstore-table][aria-busy="true"]{ opacity:.6; }

/* Owner admin polish ----------------------------------------------------- */
.memberstore-admin a.memberstore-admin__progress,.memberstore-admin__progress{ display:block; color:inherit; text-decoration:none; }
.memberstore-admin a.memberstore-admin__progress span,.memberstore-admin__progress span{ text-decoration:none; }
.memberstore-setup-grid,.memberstore-postage-rates{ display:grid; grid-template-columns:repeat(auto-fit,minmax(17rem,1fr)); gap:1rem; }
.memberstore-admin-card{ min-width:0; padding:1rem; border:1px solid #e3e8ef; border-radius:.65rem; background:#fff; }
.memberstore-admin-card h3{ margin-top:0; }.memberstore-store-settings-form h3{ margin-bottom:.35rem; }.memberstore-store-settings__meta{ margin:.35rem 0 1.1rem; color:#667085; font-size:.9rem; }.memberstore-store-settings__meta strong{ color:#172033; }.memberstore-store-settings-fields{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }.memberstore-store-settings-fields label{ display:grid; gap:.35rem; color:#344054; font-weight:700; }.memberstore-store-settings-fields input,.memberstore-store-settings-fields textarea{ box-sizing:border-box; width:100%; padding:.65rem .75rem; border:1px solid #d0d5dd; border-radius:.5rem; background:#fff; color:#172033; font:inherit; }.memberstore-store-settings-fields input:focus,.memberstore-store-settings-fields textarea:focus{ border-color:#2c8f89; outline:3px solid #2c8f8930; }.memberstore-store-settings-fields__intro{ grid-column:1 / -1; }.memberstore-store-settings__actions{ display:flex; justify-content:flex-end; margin-top:1rem; padding-top:1rem; border-top:1px solid #e3e8ef; }.memberstore-payment-method{ display:grid; gap:.75rem; margin-top:.75rem; }
.memberstore-publication-form{ margin:0; }.memberstore-store-toggle{ display:inline-flex; align-items:center; gap:.65rem; min-width:11rem; padding:.35rem .8rem .35rem .35rem; border:1px solid #b8c7d5; border-radius:999px; background:#f1f5f9; color:#172033; font:inherit; font-weight:750; cursor:pointer; }.memberstore-store-toggle:disabled{ cursor:not-allowed; opacity:.55; }.memberstore-store-toggle__track{ display:inline-flex; align-items:center; width:2.65rem; height:1.5rem; padding:.15rem; box-sizing:border-box; border-radius:999px; background:#94a3b8; transition:background .2s ease; }.memberstore-store-toggle__thumb{ display:block; width:1.2rem; height:1.2rem; border-radius:50%; background:#fff; box-shadow:0 1px 3px #17203355; transition:transform .2s ease; }.memberstore-store-toggle--on{ border-color:#17603b; background:#e6f6ec; color:#17603b; }.memberstore-store-toggle--on .memberstore-store-toggle__track{ background:#17603b; }.memberstore-store-toggle--on .memberstore-store-toggle__thumb{ transform:translateX(1.15rem); }
.memberstore-payment-method[hidden]{ display:none; }
.memberstore-icon-button{ display:inline-grid; width:2rem; height:2rem; place-items:center; border:1px solid #d0d5dd; border-radius:.5rem; background:#fff; color:#172033; font:inherit; cursor:pointer; }
.memberstore-modal[hidden]{ display:none; }.memberstore-modal{ position:fixed; z-index:10000; inset:0; display:grid; place-items:center; padding:1rem; background:rgba(15,23,42,.48); }
.memberstore-modal__panel{ width:min(44rem,100%); max-height:calc(100vh - 2rem); overflow:auto; padding:1rem; border-radius:.75rem; background:#fff; box-shadow:0 20px 60px rgba(15,23,42,.35); }
.memberstore-modal__panel--confirm{ width:min(28rem,100%); }
.memberstore-modal__head{ display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:.75rem; }.memberstore-modal__head h3{ margin:0; }
.memberstore-modal__actions{ display:flex; justify-content:flex-end; gap:.5rem; margin-top:1rem; }
.memberstore-payment-options{ display:grid; grid-template-columns:repeat(auto-fit,minmax(13rem,1fr)); gap:.75rem; }
.memberstore-payment-option{ display:flex; min-height:6rem; flex-direction:column; gap:.35rem; padding:.85rem; border:1px solid #dfe4ec; border-radius:.65rem; background:#f8fafc; color:#172033; text-align:left; cursor:pointer; }
.memberstore-payment-option:hover,.memberstore-payment-option:focus{ border-color:#3157d5; background:#eef3ff; outline:none; }
.memberstore-payment-option span{ color:#667085; font-size:.9rem; line-height:1.35; }
.memberstore-analytics__cards li,.memberstore-staff-hero-card{ list-style:none; }
.memberstore-analytics__cards li{ display:block; padding:1rem; border:1px solid #e3e8ef; border-radius:.65rem; background:#fff; }
.memberstore-commission-form{ max-width:34rem; }
.memberstore-timeline-console{ display:grid; grid-template-columns:minmax(12rem,.35fr) minmax(0,1fr); gap:1rem; align-items:start; }
.memberstore-timeline-console__summary{ display:grid; gap:.25rem; padding:1rem; border:1px solid #e3e8ef; border-radius:.65rem; background:#f8fafc; }
.memberstore-timeline-console__summary span{ color:#17603b; font-weight:800; }
.memberstore-timeline-settings{ display:grid; gap:.75rem; min-width:0; }

/* Final public product-page overrides after legacy duplicate blocks. */
.memberstore-product-page__hero{ grid-template-columns:minmax(0,1fr) minmax(20rem,.7fr); gap:1.25rem; align-items:stretch; padding:0; border-radius:.8rem; box-shadow:0 10px 26px rgba(23,32,51,.06); }
.memberstore-product-page__media{ min-height:24rem; border-radius:.8rem 0 0 .8rem; }
.memberstore-product-page__buy{ display:flex; min-width:0; flex-direction:column; justify-content:center; padding:1.35rem; }
.memberstore-product-page__content{ gap:1rem; margin-top:1rem; }.memberstore-product-page__description,.memberstore-product-page__content aside,.memberstore-product-page__reviews,.memberstore-product-page__recommendations{ padding:1.25rem; border-radius:.8rem; }
.memberstore-product-page__recommendations{ margin-top:1rem; }.memberstore-product-page__carousel{ display:grid; grid-auto-flow:column; grid-auto-columns:minmax(11rem,14rem); gap:.85rem; overflow-x:auto; padding:.15rem .1rem .5rem; scroll-snap-type:x proximity; }.memberstore-recommendation-card{ display:grid; gap:.55rem; min-width:0; padding:.65rem; border:1px solid #e4e8ef; border-radius:.65rem; color:#172033; text-decoration:none; scroll-snap-align:start; }.memberstore-recommendation-card img,.memberstore-recommendation-card>span{ display:grid; width:100%; aspect-ratio:1; place-items:center; border-radius:.5rem; background:#f2f4f8; object-fit:cover; color:#3157d5; font-size:2rem; font-weight:850; }.memberstore-recommendation-card strong{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.memberstore-recommendation-card small{ color:#667085; font-weight:750; }

/* Staff provider console ------------------------------------------------- */
.memberstore-provider-console{ display:grid; grid-template-columns:repeat(auto-fit,minmax(18rem,1fr)); gap:1rem; margin:1rem 0; }
.memberstore-provider-console__panel{ padding:1rem; border:1px solid #e3e8ef; border-radius:.5rem; background:#fff; }
.memberstore-provider-console__panel h3{ margin-top:0; }
.memberstore-provider-console__form{ display:grid; gap:.65rem; }
.memberstore-provider-console__form label{ display:grid; gap:.25rem; font-weight:700; color:#344054; }
.memberstore-provider-console__form input,.memberstore-provider-console__form select{ max-width:100%; padding:.45rem .55rem; border:1px solid #d0d5dd; border-radius:.35rem; font:inherit; }
.memberstore-provider-console__status{ margin:.5rem 0 1rem; padding-left:1.2rem; }
.memberstore-provider-console__status strong{ color:#17603b; }
.memberstore-provider-console__status span{ color:#9f2d24; }

/* Staff order detail ----------------------------------------------------- */
.memberstore-order-admin{ max-width:86rem; margin:0 auto; color:#172033; }.memberstore-order-admin__hero{ display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.4rem; border:1px solid #e3e8ef; border-radius:1rem; background:linear-gradient(135deg,#f3f6ff,#fff 60%); }.memberstore-order-admin__hero h2{ margin:.1rem 0; font-size:2rem; }.memberstore-order-admin__hero p{ margin:0; color:#667085; }.memberstore-order-admin__hero>div:last-child{ display:flex; align-items:flex-end; flex-direction:column; gap:.5rem; }.memberstore-order-admin__hero>div:last-child>strong{ font-size:1.6rem; }
.memberstore-order-admin__facts{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin:1rem 0; }.memberstore-order-admin__facts>div,.memberstore-order-admin__panel{ padding:1rem; border:1px solid #e3e8ef; border-radius:.8rem; background:#fff; }.memberstore-order-admin__facts span{ display:block; margin-bottom:.35rem; color:#667085; font-size:.75rem; font-weight:800; text-transform:uppercase; }.memberstore-order-admin__panel{ margin-top:1rem; }.memberstore-order-admin__panel h3{ margin-top:0; }

/* Owner order actions ---------------------------------------------------- */
.memberstore-order-admin__actions{ background:linear-gradient(135deg,#f3f6ff,#fff 70%); }
.memberstore-order-admin__action-row{ display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:.6rem; }
.memberstore-order-admin__action-row .memberstore-inline-form{ display:inline-flex; flex-wrap:wrap; align-items:center; gap:.4rem; }
.memberstore-order-admin__action-row input[type="text"]{ min-width:14rem; padding:.5rem .65rem; border:1px solid #cdd5e2; border-radius:.5rem; }
.memberstore-order-admin__receipt-preview{ margin-top:1rem; }
.memberstore-order-admin__receipt-preview h4{ margin:0 0 .5rem; }
.memberstore-order-admin__receipt-frame{ max-height:32rem; overflow:auto; padding:1rem; border:1px solid #e3e8ef; border-radius:.6rem; background:#fff; }
.memberstore-storefront__intro{ max-width:42rem; color:var(--ms-public-muted); font-size:1rem; line-height:1.6; }
.memberstore-storefront__intro :first-child{ margin-top:0; }
.memberstore-storefront__intro :last-child{ margin-bottom:0; }

/* Toggle (advanced controls) --------------------------------------------- */
[data-memberstore-toggle]{ cursor:pointer; }
.memberstore-advanced{ margin-top:.75rem; }
.memberstore-advanced summary{ cursor:pointer; font-weight:700; }

/* Mobile tightening ------------------------------------------------------- */
@media (max-width:960px){
	.memberstore-admin-global .memberstore-analytics__cards{ grid-template-columns:repeat(2,minmax(0,1fr)); }
	.memberstore-order-admin__facts{ grid-template-columns:repeat(2,minmax(0,1fr)); }
	.memberstore-product-edit__layout{ grid-template-columns:1fr; }
	.memberstore-product-edit__side{ position:static; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
	.memberstore-product-edit__section--image{ grid-row:span 2; }
}
@media (max-width:600px){
	.memberstore-dashboard{ gap:1rem; }
	.memberstore-products,
	.membersite-marketplace__grid{ grid-template-columns:repeat(auto-fill,minmax(9rem,1fr)); }
	.memberstore-dashboard__nav .dc-button{ flex:1 1 auto; text-align:center; }
	.memberstore-admin__hero{ grid-template-columns:1fr; align-items:start; }
	.memberstore-admin .memberstore-admin__hero{ grid-template-columns:1fr; }
	.memberstore-admin__primary{ margin-left:0; justify-self:stretch; text-align:center; }
	.memberstore-admin__tabs .dc-button{ text-align:center; }
	.memberstore-marketplace__grid{ grid-template-columns:repeat(auto-fill,minmax(14rem,1fr)); }
	.memberstore-market-product__hero,.memberstore-market-product__content,.memberstore-market-checkout__layout{ grid-template-columns:1fr; }
	.memberstore-product-page__hero,.memberstore-product-page__content{ grid-template-columns:1fr; }
	.memberstore-timeline-console{ grid-template-columns:1fr; }
	.memberstore-product-page__media{ min-height:18rem; border-radius:.8rem .8rem 0 0; }
	.memberstore-market-product__media{ min-height:18rem; }
	.memberstore-market-checkout__layout>aside{ position:static; }
	.memberstore-market-checkout__fields{ grid-template-columns:1fr; }
	.memberstore-market-basket__lines article{ grid-template-columns:1fr; }
	.memberstore-market-basket__lines form{ flex-wrap:wrap; }
	.memberstore-product-edit__header,.memberstore-product-edit__footer{ align-items:stretch; flex-direction:column; }
	.memberstore-admin-global .memberstore-analytics__cards,.memberstore-product-filters,.memberstore-order-admin__facts{ grid-template-columns:1fr; }
	.memberstore-order-admin__hero{ align-items:flex-start; flex-direction:column; }.memberstore-order-admin__hero>div:last-child{ align-items:flex-start; }
	.memberstore-product-edit__header-actions{ align-items:stretch; flex-direction:column; }
	.memberstore-product-edit__layout,.memberstore-product-edit__side,.memberstore-product-edit__field-grid{ display:grid; grid-template-columns:1fr; }
	.memberstore-version-workspace{ grid-template-columns:1fr; }
	.memberstore-version-workspace__rail{ border-right:0; border-bottom:1px solid var(--ms-edit-line); }
	.memberstore-version-tabs{ flex-direction:row; overflow-x:auto; }.memberstore-version-tab{ min-width:9rem; }
	.memberstore-version-panel,.memberstore-product-edit__price-grid,.memberstore-product-edit__stock-fields{ grid-template-columns:1fr; }
}

/* Owner admin: at-a-glance metrics, setup checklist, timeline form ---------- */
/* The hero cards reuse the staff palette tokens, so define them on the owner
   admin root too (the staff dashboard sets them on .memberstore-admin-global). */
.memberstore-admin{ --ms-admin-ink:#172033; --ms-admin-muted:#667085; --ms-admin-line:#e5e9f0; }
.memberstore-admin__metrics{ margin:0 0 1.1rem; }
.memberstore-admin__metrics .memberstore-analytics__cards{ grid-template-columns:repeat(auto-fit,minmax(11rem,1fr)); gap:1rem; }
.memberstore-admin__metrics a.memberstore-staff-hero-card,
.memberstore-admin__metrics a.memberstore-staff-hero-card:hover,
.memberstore-admin__metrics a.memberstore-staff-hero-card:focus{ color:inherit; text-decoration:none; }
.memberstore-admin__metrics a.memberstore-staff-hero-card:hover,
.memberstore-admin__metrics a.memberstore-staff-hero-card:focus-visible{ border-color:#aebce0; box-shadow:0 7px 20px rgba(23,32,51,.1); }
.memberstore-admin__metrics [data-metric-value]{ min-width:3ch; font-variant-numeric:tabular-nums; }
.memberstore-spinner{ display:inline-block; width:1.15rem; height:1.15rem; border:2px solid #cdd5e2; border-top-color:#3157d5; border-radius:50%; animation:memberstore-spin .7s linear infinite; }
@keyframes memberstore-spin{ to{ transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce){ .memberstore-spinner{ animation-duration:1.6s; } }

.memberstore-setup-checklist__head{ display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.memberstore-setup-checklist__head h2{ margin:0; font-size:1.17em; line-height:1.25; font-weight:700; }
.memberstore-setup-checklist__head p{ margin:.25rem 0 0; color:var(--ms-admin-muted); }
.memberstore-setup-checklist__progress{ display:grid; gap:.35rem; min-width:9rem; text-align:right; }
.memberstore-setup-checklist__progress strong{ font-size:1.4rem; color:#1c5b32; }
.memberstore-setup-checklist__progress .memberstore-progress{ width:100%; }
.memberstore-setup-checklist__steps{ list-style:none; margin:1.1rem 0 0; padding:0; display:grid; gap:.6rem; }
.memberstore-setup-step{ display:flex; align-items:center; gap:.85rem; padding:.75rem .9rem; border:1px solid var(--ms-admin-line); border-radius:.7rem; background:#fff; }
.memberstore-setup-step__marker{ display:grid; place-items:center; flex:0 0 1.9rem; height:1.9rem; border-radius:50%; background:#eef1f6; color:#475467; font-weight:800; }
.memberstore-setup-step--done{ border-color:#bfe6cd; background:#f2fbf5; }
.memberstore-setup-step--done .memberstore-setup-step__marker{ background:#1c5b32; color:#fff; }
.memberstore-setup-step__label{ flex:1 1 auto; font-weight:650; color:var(--ms-admin-ink); }
.memberstore-setup-step--done .memberstore-setup-step__label{ color:#475467; }
.memberstore-setup-step__action{ flex:0 0 auto; white-space:nowrap; }
.memberstore-setup-step__pending{ flex:0 0 auto; white-space:nowrap; color:#98a2b3; font-size:.85rem; font-style:italic; }

.memberstore-field{ display:grid; gap:.35rem; }
.memberstore-field__label{ font-weight:650; color:#344054; }
.memberstore-field input{ width:100%; box-sizing:border-box; padding:.55rem .7rem; border:1px solid #d0d5dd; border-radius:.5rem; font:inherit; }
.memberstore-field input:focus,.memberstore-field textarea:focus{ border-color:#3157d5; outline:2px solid rgba(49,87,213,.18); outline-offset:1px; }

.memberstore-postage-defaults{ display:grid; grid-template-columns:repeat(auto-fit,minmax(16rem,1fr)); gap:1rem; margin:1rem 0 1.6rem; }
.memberstore-postage-rate h3{ margin:0 0 .15rem; }.memberstore-postage-rate h3 small{ color:#667085; font-weight:600; }
.memberstore-postage-rate label{ display:grid; gap:.3rem; margin:.6rem 0; font-weight:650; }
.memberstore-postage-rate input{ width:100%; box-sizing:border-box; padding:.5rem .6rem; border:1px solid #d0d5dd; border-radius:.5rem; font:inherit; }
.memberstore-postage-rate__status{ display:inline-block; margin-left:.6rem; font-size:.85rem; }
.memberstore-postage-rate__status--ok{ color:#18794e; }.memberstore-postage-rate__status--error{ color:#b42318; }
.memberstore-postage-extra__heading{ margin-top:1.4rem; }
.memberstore-postage-extra-table td:last-child,.memberstore-postage-extra-table th:last-child{ width:1%; text-align:right; white-space:nowrap; }
.memberstore-postage-add{ display:flex; flex-wrap:wrap; align-items:flex-end; gap:.75rem; margin-top:1rem; padding:1rem; border:1px solid #e3e8ef; border-radius:.65rem; background:#f8fafc; }
.memberstore-postage-add label{ display:grid; gap:.3rem; font-weight:650; }
.memberstore-postage-add select,.memberstore-postage-add input{ padding:.5rem .6rem; border:1px solid #d0d5dd; border-radius:.5rem; font:inherit; }
[data-memberstore-subpanel][hidden]{ display:none; }

/* Reviews: moderation status badges, per-row actions, respond modal and the
   review detail / CRUD page. Claude Code / 27th Jun 2026 */
.memberstore-badge--pending{ background:#fff5d6; color:#5a4500; }
.memberstore-badge--published{ background:#e6f6ec; color:#1c5b32; }
.memberstore-badge--hidden{ background:#f0f0f0; color:#666; }
.memberstore-badge--hidden_globally,.memberstore-badge--hidden_locally{ background:#f0f0f0; color:#666; }
.memberstore-product-page__owner-response .badge{display:inline-block;margin-bottom:.35rem;padding:.2rem .55rem;border-radius:999px;font-size:.78rem;font-weight:700}
.memberstore-product-page__owner-response .badge-supplier{background:#e7f1ff;color:#174f8a}
.memberstore-product-page__owner-response .badge-reseller{background:#f1eafe;color:#5b328a}
.memberstore-review-actions{ display:flex; flex-wrap:wrap; gap:.4rem; align-items:center; }
.memberstore-review-actions .memberstore-inline-form{ display:inline-flex; margin:0; }
.memberstore-modal__panel--wide{ width:min(56rem,100%); padding:1.5rem; }
.memberstore-review-quote{ margin:0 0 1rem; padding:.6rem .9rem; border-left:3px solid #c7d2e8; background:#f6f8fc; color:#475467; font-style:italic; border-radius:.3rem; }
.memberstore-review-quote[hidden]{ display:none; }
.memberstore-review-respond-form textarea,.memberstore-review-detail__respond textarea,.memberstore-posts-card__fields textarea{ width:100%; min-height:7rem; padding:.7rem .8rem; border:1px solid #d0d5dd; border-radius:.5rem; font:inherit; resize:vertical; }

/* Review detail page */
.memberstore-review-detail__head{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.memberstore-review-detail__product{ display:flex; align-items:center; gap:.9rem; }
.memberstore-review-detail__thumb{ width:4rem; height:4rem; object-fit:cover; border-radius:.5rem; background:#eef2f7; }
.memberstore-review-detail__product-label{ display:block; font-size:.8rem; text-transform:uppercase; letter-spacing:.04em; color:#667085; }
.memberstore-review-detail__product-title{ font-size:1.15rem; }
.memberstore-review-detail__grid{ display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:1.5rem; }
.memberstore-review-detail__stars{ font-size:1.3rem; color:#e8a33d; letter-spacing:.1rem; margin-bottom:.5rem; }
.memberstore-review-detail__verified{ margin-left:.5rem; vertical-align:middle; font-size:.75rem; }
.memberstore-review-detail__subject{ margin:.2rem 0 .6rem; }
.memberstore-review-detail__body{ color:#1d2939; line-height:1.55; }
.memberstore-review-detail__response{ margin-top:1.2rem; padding:.9rem 1rem; background:#f6f8fc; border-radius:.6rem; }
.memberstore-review-detail__response h3{ margin:0 0 .4rem; font-size:.95rem; }
.memberstore-review-detail__aside{ border-left:1px solid #eaecf0; padding-left:1.5rem; }
.memberstore-review-detail__aside h3{ margin:0 0 .6rem; font-size:.95rem; }
.memberstore-review-detail__meta{ margin:1rem 0 0; display:grid; grid-template-columns:auto 1fr; gap:.3rem .8rem; }
.memberstore-review-detail__meta dt{ color:#667085; }
.memberstore-review-detail__meta dd{ margin:0; font-weight:600; }
.memberstore-review-detail__actions{ display:flex; flex-wrap:wrap; gap:.5rem; margin:1.4rem 0; }
.memberstore-review-detail__respond{ border-top:1px solid #eaecf0; padding-top:1.2rem; }
@media (max-width:48rem){
	.memberstore-review-detail__grid{ grid-template-columns:1fr; }
	.memberstore-review-detail__aside{ border-left:0; padding-left:0; border-top:1px solid #eaecf0; padding-top:1rem; }
}

/* Posts tab */
.memberstore-posts-card{ border:1px solid #eaecf0; border-radius:.7rem; padding:1.1rem 1.2rem; margin-bottom:1.1rem; background:#fff; }
.memberstore-posts-card__toggle{ display:flex; gap:.6rem; align-items:flex-start; font-size:1rem; }
.memberstore-posts-card__fields{ margin-top:1rem; display:grid; gap:.9rem; }
.memberstore-posts-form__save{ margin-top:.5rem; }

/* Product-page polish ----------------------------------------------------- */
.memberstore-product-page__content{ grid-template-columns:minmax(0,2fr) minmax(15rem,1fr); }
.memberstore-product-page__content--single{ grid-template-columns:minmax(0,1fr); }
.memberstore-product-page__description{ width:100%; box-sizing:border-box; }
.memberstore-product-page__supplier{ display:inline-flex; align-items:center; gap:.6rem; width:fit-content; max-width:100%; margin:0 0 .8rem; color:#172033; text-decoration:none; }
.memberstore-product-page__supplier:hover,.memberstore-product-page__supplier:focus{ text-decoration:none; }
.memberstore-product-page__supplier-avatar{ display:grid; flex:0 0 2.4rem; width:2.4rem; height:2.4rem; place-items:center; overflow:hidden; border-radius:50%; background:#edf2ff; color:#3157d5; font-weight:850; object-fit:cover; }
.memberstore-product-page__supplier strong{ color:#172033; }
.memberstore-product-page__supplier small{ display:block; margin-top:.05rem; color:#667085; font-size:.82rem; font-weight:700; }
.memberstore-product-page__supplier--platform{ padding:.55rem .7rem; border:1px solid #d8e4ff; border-radius:.75rem; background:#f6f9ff; }
.memberstore-product-page__summary{ margin:.55rem 0 1rem; color:#475467; line-height:1.55; }
.memberstore-product-page__reviews{ display:grid; gap:1rem; }
.memberstore-review-form__toggle{ justify-self:start; }
.memberstore-review-form{ display:grid; gap:1rem; margin-top:.25rem; padding:1rem; border:1px solid #dce3ef; border-radius:.85rem; background:#f8fafc; }
.memberstore-review-form[hidden]{ display:none; }
.memberstore-review-form__grid{ display:grid; grid-template-columns:minmax(7rem,.35fr) minmax(12rem,.65fr); gap:.85rem; align-items:start; }
.memberstore-review-form label{ display:grid; gap:.35rem; margin:0; color:#172033; font-weight:750; }
.memberstore-review-form select,.memberstore-review-form input,.memberstore-review-form textarea{ width:100%; box-sizing:border-box; padding:.62rem .7rem; border:1px solid #cfd6e4; border-radius:.55rem; background:#fff; font:inherit; }
.memberstore-review-form textarea{ resize:vertical; min-height:8rem; }
.memberstore-review-form__body{ grid-column:1 / -1; }
.memberstore-review-form__actions{ display:flex; justify-content:flex-end; }
.memberstore-star-rating{ display:flex; flex-direction:row-reverse; justify-content:flex-end; gap:.12rem; margin:0; padding:0; border:0; }
.memberstore-star-rating legend{ width:100%; margin:0 0 .15rem; color:#172033; font-weight:750; }
.memberstore-star-rating input{ position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.memberstore-star-rating label{ display:block; color:#d0d5dd; font-size:2rem; line-height:1; cursor:pointer; transition:color .12s, transform .12s; }
.memberstore-star-rating label:hover,.memberstore-star-rating label:hover ~ label,.memberstore-star-rating input:checked ~ label{ color:#f59e0b; }
.memberstore-star-rating input:focus + label{ outline:2px solid rgba(49,87,213,.35); outline-offset:2px; border-radius:.2rem; }
.memberstore-star-rating label:hover{ transform:translateY(-1px); }
.memberstore-recommendation-card,.memberstore-recommendation-card:link,.memberstore-recommendation-card:visited,.memberstore-recommendation-card:hover,.memberstore-recommendation-card:focus{ text-decoration:none; }
.memberstore-recommendation-card strong,.memberstore-recommendation-card small{ text-decoration:none; }
@media (max-width:600px){
	.memberstore-product-page__content,.memberstore-review-form__grid{ grid-template-columns:1fr; }
	.memberstore-review-form__actions{ justify-content:stretch; }
	.memberstore-review-form__actions .dc-button{ width:100%; }
}

/* Star ratings: gold filled / grey empty. Claude Code / 27th Jun 2026 */
.memberstore-stars{ display:inline-flex; gap:.05rem; line-height:1; white-space:nowrap; }
.memberstore-stars__on{ color:#f59e0b; }
.memberstore-stars__off{ color:#d0d5dd; }
.memberstore-product-page__rating{ display:inline-flex; align-items:center; gap:.5rem; font-size:1.05rem; }
.memberstore-product-page__rating-count{ color:#667085; font-size:.9rem; }
.memberstore-product-page__stars{ font-size:1.05rem; }
.memberstore-product-page__review-cta{ margin-top:.5rem; }

/* Review detail: product link through to the storefront (never underlined). */
.memberstore-review-detail__product-link,.memberstore-review-detail__product-link:link,.memberstore-review-detail__product-link:visited,.memberstore-review-detail__product-link:hover,.memberstore-review-detail__product-link:focus{ display:flex; align-items:center; gap:.9rem; color:inherit; text-decoration:none; }
.memberstore-review-detail__product-link:focus-visible{ outline:2px solid rgba(49,87,213,.35); outline-offset:2px; border-radius:.4rem; }
.memberstore-market-card__store-actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.memberstore-market-card__store-actions form{margin:0}
.memberstore-attention{margin:1rem 0;border-left:4px solid #b54708}.memberstore-attention h2{margin-top:0}.memberstore-attention ul{display:grid;gap:.4rem;margin-bottom:0}

/* Refunds ----------------------------------------------------------------- */
.memberstore-order-admin__refund{ flex-wrap:wrap; gap:.4rem; }
.memberstore-order-admin__refund input[type="text"]{ min-width:9rem; }
.memberstore-order-admin__refund input,.memberstore-order-admin__refund select{padding:.5rem .65rem;border:1px solid #cdd5e2;border-radius:.5rem;background:#fff;font:inherit}.memberstore-order-admin__refund [hidden]{display:none}
.memberstore-order-admin__refund-total{ margin:0 0 .8rem; color:#475467; }
.memberstore-orderstatus__product-links{margin-top:1rem;padding:1rem;border:1px solid #dfe4ec;border-radius:.75rem;background:#fff}.memberstore-orderstatus__product-links h3{margin:0}.memberstore-orderstatus__product-links>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}
.memberstore-basket-group{border:1px solid #dce6e5;border-radius:12px;margin:0 0 1.25rem;padding:1rem;background:#fff}
.memberstore-basket-group__header{display:flex;align-items:center;justify-content:space-between;margin:0 0 .75rem}
.memberstore-basket-group__header h2{font-size:1.15rem;margin:0;color:var(--memberstore-accent,#087f78)}
.memberstore-basket-group__header span{display:inline-block;margin-top:.2rem;font-size:.82rem;font-weight:700;letter-spacing:.04em;color:#667}
.memberstore-product-page__single-version{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.75rem .85rem;border:1px solid #dbe2ef;border-radius:.6rem;background:#fff}
.memberstore-product-page__single-version span{font-weight:750}.memberstore-product-page__single-version strong{white-space:nowrap;color:#172033}
.memberstore-product-page>.memberstore-product-page__promotion{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0 0;padding:1rem 1.25rem;border:1px solid #d8e4ff;border-radius:.8rem;background:#f6f9ff}
.memberstore-product-page>.memberstore-product-page__promotion p{margin:0;font-weight:700}.memberstore-product-page>.memberstore-product-page__promotion form{margin-left:auto}
@media(max-width:700px){.memberstore-product-page>.memberstore-product-page__promotion{align-items:stretch;flex-direction:column}.memberstore-product-page>.memberstore-product-page__promotion form{margin-left:0}.memberstore-product-page>.memberstore-product-page__promotion .dc-button{width:100%}}
