/* ═══ MIDNIGHT — Magazine editorial (serif, narrow column, list catalog) ═══ */
html[data-theme="midnight"]{
  --vx-font:'DM Sans',system-ui,sans-serif;
  --vx-display:'Playfair Display',Georgia,serif;
  --vx-bg:#faf8f5;
  --vx-surface:#fff;
  --vx-surface-2:#f5f0e8;
  --vx-text:#1c1917;
  --vx-muted:#78716c;
  --vx-border:rgba(28,25,23,.12);
  --vx-accent-solid:#b45309;
  --vx-accent-text:#fff;
  --vx-shadow:0 24px 60px -24px rgba(180,83,9,.18);
  --vx-radius:0;
  --vx-picker-bg:rgba(250,248,245,.98);
  --vx-skeleton-mid:#e7e5e4;
  color-scheme:light;
}
html[data-theme="midnight"].dark{
  --vx-bg:#050505;
  --vx-surface:#111;
  --vx-surface-2:#1a1814;
  --vx-text:#faf7f2;
  --vx-muted:#a8a29e;
  --vx-border:rgba(217,119,6,.16);
  --vx-accent-solid:#fbbf24;
  --vx-picker-bg:rgba(17,17,17,.98);
  --vx-skeleton-mid:#292524;
  color-scheme:dark;
}

html[data-theme="midnight"] .vx-shell-midnight{background:var(--vx-bg);color:var(--vx-text);font-family:var(--vx-font);min-height:100vh;padding-top:2.2rem}

.mi-mast{max-width:680px;margin:0 auto;padding:2rem 1.25rem 0;text-align:center}
.mi-date{font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;color:var(--vx-accent-solid);margin:0 0 1rem}
.mi-brand{display:inline-flex;flex-direction:column;align-items:center;gap:.65rem;text-decoration:none;color:var(--vx-text);margin-bottom:1.25rem}
.mi-brand span{font-family:var(--vx-display);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:600;letter-spacing:-.02em;line-height:1.1}
.mi-brand img{border-radius:50%;border:2px solid var(--vx-accent-solid);padding:.15rem}
.mi-nav{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .5rem;font-size:.8125rem;margin-bottom:1.25rem}
.mi-nav a{text-decoration:none;color:var(--vx-muted);font-weight:500}
.mi-nav a.on{color:var(--vx-text);font-weight:700;border-bottom:1px solid var(--vx-accent-solid)}
.mi-nav span{color:var(--vx-border)}
.mi-rule{border:0;border-top:1px solid var(--vx-border);margin:0}

.mi-main{max-width:680px;margin:0 auto;padding:0 1.25rem 3rem}
.mi-foot{max-width:680px;margin:0 auto;padding:0 1.25rem 2rem;text-align:center;font-size:.75rem;color:var(--vx-muted)}
.mi-foot p{margin:.75rem 0}
.mi-mode{border:1px solid var(--vx-border);background:transparent;color:var(--vx-muted);padding:.35rem .75rem;font-size:.7rem;cursor:pointer;font-family:var(--vx-font)}

/* Editorial hero */
.mi-hero{padding:2rem 0 1.5rem;text-align:center}
.mi-hero h1{font-family:var(--vx-display);font-size:clamp(2rem,5vw,3.25rem);font-weight:600;line-height:1.12;margin:0 0 1rem;letter-spacing:-.02em}
.mi-hero h1 em{font-style:italic;color:var(--vx-accent-solid);font-weight:500}
.mi-hero p{font-size:1.0625rem;line-height:1.7;color:var(--vx-muted);margin:0 auto 1.5rem;max-width:32rem}
.mi-hero .mi-btn{display:inline-block;padding:.75rem 1.75rem;background:var(--vx-accent-solid);color:var(--vx-accent-text);text-decoration:none;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.mi-cover{margin:2rem 0 0;border:1px solid var(--vx-border);padding:.5rem;background:var(--vx-surface)}
.mi-cover .vx-media{aspect-ratio:3/2}

.mi-trust{display:grid;gap:0;border-top:1px solid var(--vx-border);border-bottom:1px solid var(--vx-border);margin:1.5rem 0}
@media(min-width:640px){.mi-trust{grid-template-columns:repeat(4,1fr)}}
.mi-trust div{padding:.85rem .5rem;text-align:center;border-bottom:1px solid var(--vx-border)}
@media(min-width:640px){.mi-trust div{border-bottom:0;border-right:1px solid var(--vx-border)}.mi-trust div:last-child{border-right:0}}
.mi-trust strong{display:block;font-size:.75rem;font-weight:600;margin-bottom:.15rem;letter-spacing:.03em}
.mi-trust span{font-size:.65rem;color:var(--vx-muted);line-height:1.4}

.mi-heading{font-family:var(--vx-display);font-size:1.35rem;font-weight:600;margin:0 0 1rem;text-align:center;letter-spacing:-.01em}
.mi-depts{border-top:1px solid var(--vx-border)}
.mi-dept{display:flex;align-items:baseline;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--vx-border);text-decoration:none;color:var(--vx-text);transition:.2s padding-left}
.mi-dept:hover{padding-left:.5rem}
.mi-dept-num{font-family:var(--vx-display);color:var(--vx-accent-solid);font-size:.875rem;min-width:1.75rem}
.mi-dept span{font-size:1rem;font-weight:500}
.mi-dept.is-active span{font-weight:700;border-bottom:1px solid var(--vx-accent-solid)}

/* List rows — no card grid */
.mi-list{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--vx-border)}
.mi-row{border-bottom:1px solid var(--vx-border);transition:.2s background}
.mi-row:hover{background:var(--vx-surface-2)}
.mi-row a{display:grid;grid-template-columns:72px 1fr auto;gap:1rem;align-items:center;padding:1rem 0;text-decoration:none;color:inherit}
@media(max-width:520px){.mi-row a{grid-template-columns:56px 1fr;grid-template-rows:auto auto}.mi-row-price{grid-column:2;text-align:left!important}}
.mi-row-img{width:72px;height:72px;border:1px solid var(--vx-border);background:var(--vx-surface);position:relative}
.mi-row-img .vx-img{padding:.25rem}
.mi-row h3{margin:0 0 .25rem;font-family:var(--vx-display);font-size:1.0625rem;font-weight:600;line-height:1.25}
.mi-row p{margin:0;font-size:.8125rem;color:var(--vx-muted);line-height:1.45}
.mi-row-price{text-align:right;white-space:nowrap}
.mi-row-price strong{display:block;font-family:var(--vx-display);font-size:1.125rem;color:var(--vx-accent-solid)}
.mi-row-price s{font-size:.7rem;color:var(--vx-muted)}

.mi-section{padding:2rem 0}
.mi-section-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--vx-border)}
.mi-section-head h2{font-family:var(--vx-display);font-size:1.25rem;margin:0;font-weight:600}
.mi-section-head a{font-size:.75rem;color:var(--vx-accent-solid);text-decoration:none;font-weight:600;letter-spacing:.04em;text-transform:uppercase}

.mi-shop-head{text-align:center;padding:1.5rem 0;border-bottom:1px solid var(--vx-border);margin-bottom:1.5rem}
.mi-shop-head h1{font-family:var(--vx-display);font-size:clamp(1.75rem,4vw,2.5rem);margin:.25rem 0}
.mi-filters{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-bottom:1.5rem;align-items:center}
.mi-filters select{max-width:160px}

.mi-product-head{text-align:center;padding:1.5rem 0;border-bottom:1px solid var(--vx-border)}
.mi-product-head h1{font-family:var(--vx-display);font-size:clamp(1.75rem,4vw,2.75rem);font-weight:600;margin:.35rem 0 .75rem;line-height:1.1}
.mi-spread{padding:2rem 0;display:grid;gap:2rem}
.mi-spread-img{border:1px solid var(--vx-border);padding:.35rem;background:var(--vx-surface)}
.mi-checkout{border-top:1px solid var(--vx-border);padding-top:1.5rem;margin-top:1.5rem}
