/*
Theme Name: Meow Vision Checkout Modal
Theme URI: https://heming.org
Author: HEMING.ORG
Description: Apple Editorial inspired WordPress theme with restrained Liquid Glass navigation and content-first surfaces.
Version: 3.0.68-dev11
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: meow-vision-alipay-key-fix
Tags: blog, one-column, custom-logo, custom-menu, featured-images, threaded-comments
*/

:root {
  --vision-bg-top: #e3e9f1;
  --vision-bg-mid: #dce3eb;
  --vision-bg-bottom: #d3dbe5;
  --vision-surface: rgba(249,250,252,.88);
  --vision-surface-solid: #fbfbfc;
  --vision-glass: rgba(250,252,255,.66);
  --vision-glass-strong: rgba(255,255,255,.80);
  --vision-text: #17181b;
  --vision-secondary: #5f636c;
  --vision-muted: #8a8e97;
  --vision-border: rgba(255,255,255,.82);
  --vision-line: rgba(26,29,35,.08);
  --vision-accent: #3976d8;
  --vision-accent-soft: rgba(57,118,216,.12);
  --vision-shadow: 0 20px 58px rgba(48,61,78,.16);
  --vision-shadow-soft: 0 10px 30px rgba(48,61,78,.10);
  --vision-radius-xl: 30px;
  --vision-radius-lg: 22px;
  --vision-radius-md: 16px;
  --vision-radius-sm: 12px;
  --vision-toolbar-bg: rgba(255,255,255,.82);
  --vision-card-bg: rgba(249,250,252,.88);
  --vision-glass-blur: 24px;
  --vision-width: min(1120px, calc(100vw - 48px));
  --vision-reading: min(760px, calc(100vw - 48px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--vision-text);
  background:
    radial-gradient(circle at 18% -8%, rgba(131,166,211,.20), transparent 34%),
    linear-gradient(165deg, var(--vision-bg-top) 0%, var(--vision-bg-mid) 50%, var(--vision-bg-bottom) 100%);
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  min-height: 100vh;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; display: block; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }

.vision-background { position: fixed; inset: 0; overflow: hidden; pointer-events: none; z-index: -2; }
.vision-background span { position: absolute; border-radius: 50%; filter: blur(2px); opacity: .34; }
.vision-background span:nth-child(1) { width: 56vw; height: 56vw; left: -22vw; top: -25vw; background: radial-gradient(circle, rgba(122,164,220,.22), transparent 68%); }
.vision-background span:nth-child(2) { width: 45vw; height: 45vw; right: -18vw; top: 20vh; background: radial-gradient(circle, rgba(215,188,171,.12), transparent 70%); }
.vision-background span:nth-child(3) { width: 52vw; height: 52vw; left: 22vw; bottom: -36vw; background: radial-gradient(circle, rgba(145,177,202,.16), transparent 70%); }

.vision-page { min-height: 100vh; padding: 22px 0 84px; }
.site-header { position: sticky; top: 14px; z-index: 100; width: var(--vision-width); margin: 0 auto 72px; }
.vision-glass {
  background: var(--vision-toolbar-bg);
  border: 1px solid rgba(255,255,255,.88);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -1px 0 rgba(59,72,90,.08),
    0 14px 38px rgba(43,56,74,.16);
  -webkit-backdrop-filter: blur(26px) saturate(118%);
  backdrop-filter: blur(26px) saturate(118%);
}
.site-header-inner { min-height: 64px; border-radius: 24px; padding: 10px 12px 10px 20px; display: flex; align-items: center; justify-content: space-between; gap: 20px; position: relative; }
.site-header-inner::after { content: ""; position: absolute; left: 22px; right: 22px; bottom: -1px; height: 1px; background: linear-gradient(90deg, transparent, rgba(43,56,74,.16), transparent); pointer-events: none; }
.site-branding { min-width: 0; display: flex; align-items: center; gap: 12px; }
.custom-logo-link { flex: 0 0 auto; }
.custom-logo { width: 38px; height: 38px; object-fit: cover; border-radius: 12px; }
.brand-copy { min-width: 0; }
.site-title { margin: 0; font-size: 16px; line-height: 1.15; font-weight: 700; letter-spacing: -.02em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.main-navigation { display: flex; align-items: center; gap: 8px; position: relative; }
.primary-menu { display: flex; align-items: center; gap: 2px; list-style: none; padding: 0; margin: 0 8px 0 0; }
.primary-menu a { display: block; padding: 9px 11px; border-radius: 11px; color: #3f434b; font-size: 13px; font-weight: 580; transition: background .22s ease, color .22s ease; }
.primary-menu a:hover, .primary-menu .current-menu-item > a { background: rgba(255,255,255,.58); color: var(--vision-text); }
.vision-icon-button { width: 42px; height: 42px; border: 0; border-radius: 50%; display: inline-grid; place-items: center; background: rgba(255,255,255,.56); border: 1px solid rgba(67,80,98,.10); box-shadow: inset 0 1px 0 rgba(255,255,255,.92), 0 5px 14px rgba(55,66,84,.09); cursor: pointer; transition: transform .22s ease, background .22s ease; }
.vision-icon-button:hover { transform: translateY(-1px); background: rgba(255,255,255,.86); }
.vision-icon-button:active { transform: scale(.95); }
.vision-icon-button svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.meow-nav-top-btn { display: none; font-size: 10px; font-weight: 700; }
.meow-nav-top-btn.show { display: inline-grid; }
.menu-toggle { display: none; }

.site-main { width: var(--vision-width); margin: 0 auto; }
.vision-hero { max-width: 780px; margin-inline:0; padding: 16px 0 54px; text-align:left; }
.vision-eyebrow { margin: 0 0 14px; color: var(--vision-accent); font-size: 12px; font-weight: 750; letter-spacing: .16em; }
.vision-hero h1 { margin: 0; max-width: 100%; overflow-wrap:anywhere; font-size: clamp(44px, 7vw, 82px); line-height: 1.02; letter-spacing: -.04em; font-weight: 760; }
.vision-hero-description { margin: 26px 0 0; max-width: 650px; color: var(--vision-secondary); font-size: clamp(17px, 2vw, 22px); line-height: 1.55; letter-spacing: -.015em; }

.posts-list { display: grid; grid-template-columns: repeat(12, minmax(0,1fr)); gap: 22px; }
.vision-surface { background: var(--vision-card-bg); border: 1px solid rgba(70,82,98,.09); box-shadow: 0 10px 30px rgba(48,61,78,.09); }
.post-card { grid-column: span 6; border-radius: var(--vision-radius-xl); overflow: hidden; opacity: 1; transform: none; transition: opacity .6s ease, transform .6s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease; }
.post-card.is-visible { opacity: 1; transform: none; }
.post-card:hover { transform: translateY(-4px); box-shadow: var(--vision-shadow); }
.post-card:nth-child(5n+1) { grid-column: span 8; }
.post-card:nth-child(5n+2) { grid-column: span 4; }
.post-card-link { display: flex; flex-direction: column; height: 100%; }
.post-thumbnail { aspect-ratio: 16/9; overflow: hidden; background: #dfe4ea; }
.post-thumbnail img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.8,.2,1); }
.post-card:hover .post-thumbnail img { transform: scale(1.025); }
.post-card-body { display: flex; flex-direction: column; flex: 1; padding: 28px 30px 30px; }
.post-card-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; margin-bottom: 15px; color: var(--vision-muted); font-size: 11px; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.post-card-meta span + span:before { content: "·"; margin-right: 14px; }
.post-title { margin: 0; font-size: clamp(22px, 2.35vw, 32px); line-height: 1.18; letter-spacing: -.028em; font-weight: 720; overflow-wrap: anywhere; text-wrap: pretty; }
.post-excerpt { margin-top: 18px; color: var(--vision-secondary); font-size: 15px; line-height: 1.78; }
.post-excerpt p { margin: 0; }



.meow-pagination-inline { width: max-content; max-width: 100%; margin: 34px auto 0; padding: 6px; border-radius: 999px; display: flex; gap: 4px; }
.meow-pagination-inline .page-numbers { min-width: 38px; height: 38px; padding: 0 12px; border-radius: 999px; display: grid; place-items: center; font-size: 13px; }
.meow-pagination-inline .current { background: rgba(255,255,255,.82); box-shadow: 0 3px 10px rgba(45,55,70,.08); }

.singular-main { width: var(--vision-reading); }
.entry-content-wrap { border-radius: 34px; overflow: hidden; }
.entry-header { padding: clamp(34px, 7vw, 72px) clamp(28px, 8vw, 78px) 36px; }
.entry-header .post-title { font-size: clamp(34px, 5.3vw, 56px); line-height: 1.1; letter-spacing: -.032em; text-wrap: balance; }
.entry-cover { margin: 0 clamp(18px, 3vw, 28px); border-radius: 24px; overflow: hidden; }
.entry-cover img { width: 100%; max-height: 620px; object-fit: cover; }
.entry-content { padding: 44px clamp(28px, 8vw, 78px) 72px; color: var(--vision-secondary); font-size: clamp(16px, 2vw, 18px); line-height: 1.86; overflow-wrap: anywhere; word-break: break-word; }
.entry-content > :first-child { margin-top: 0; }
.entry-content > :last-child { margin-bottom: 0; }
.entry-content h2, .entry-content h3, .entry-content h4 { color: var(--vision-text); line-height: 1.25; letter-spacing: -.025em; }
.entry-content h2 { margin: 2.2em 0 .8em; font-size: 1.75em; }
.entry-content h3 { margin: 1.9em 0 .7em; font-size: 1.35em; }
.entry-content p { margin: 0 0 1.35em; }
.entry-content a { color: var(--vision-accent); text-decoration: underline; text-decoration-color: rgba(var(--vision-accent-rgb),.28); text-underline-offset: 3px; }
.entry-content img, .entry-content video, .entry-content iframe { max-width: 100%; border-radius: 18px; }
.entry-content video { width: 100%; height: auto; }
.entry-content blockquote { margin: 2em 0; padding: 20px 24px; border-left: 3px solid var(--vision-accent); border-radius: 0 15px 15px 0; background: rgba(var(--vision-accent-rgb),.07); color: var(--vision-secondary); }
.entry-content pre { max-width: 100%; overflow: auto; padding: 20px; border-radius: 16px; background: #202228; color: #f1f3f6; }
.entry-content code { overflow-wrap: anywhere; }
.entry-content table { width: 100%; border-collapse: collapse; display: block; overflow-x: auto; }
.entry-content th, .entry-content td { padding: 12px; border-bottom: 1px solid var(--vision-line); text-align: left; }

.vision-comments { margin-top: 24px; padding: clamp(26px, 5vw, 48px); border-radius: 30px; background: rgba(255,255,255,.72); border: 1px solid rgba(255,255,255,.74); box-shadow: var(--vision-shadow-soft); }
.meow-comment-list { list-style: none; padding: 0; margin: 0 0 34px; }
.meow-comment-list .children { list-style: none; margin: 18px 0 0 32px; padding-left: 18px; border-left: 1px solid var(--vision-line); }
.meow-comment { margin-bottom: 24px; }
.meow-comment-body { display: flex; gap: 14px; }
.meow-comment-avatar img { width: 40px; height: 40px; border-radius: 50%; }
.meow-comment-main { min-width: 0; flex: 1; }
.meow-comment-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.meow-comment-author-line { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; font-size: 13px; font-weight: 700; }
.meow-comment-parent-avatar img { width: 22px; height: 22px; border-radius: 50%; }
.meow-reply-word, .meow-comment-parent { color: var(--vision-muted); font-weight: 500; }
.meow-comment-reply a { color: var(--vision-accent); font-size: 12px; }
.meow-comment-text { color: var(--vision-secondary); font-size: 14px; }
.meow-comment-text p { margin: 7px 0 0; }
.meow-comment-form { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.meow-comment-form p { margin: 0; }
.comment-form-comment { grid-column: 1/-1; }
.meow-comment-form input, .meow-comment-form textarea { width: 100%; border: 1px solid var(--vision-line); background: var(--vision-control-bg); border-radius: 14px; padding: 13px 14px; outline: none; transition: border-color .2s ease, box-shadow .2s ease; }
.meow-comment-form textarea { min-height: 130px; resize: vertical; }
.meow-comment-form input:focus, .meow-comment-form textarea:focus { border-color: rgba(var(--vision-accent-rgb),.42); box-shadow: 0 0 0 4px var(--vision-accent-soft); }
.form-submit { grid-column: 1/-1; }
.form-submit button { border: 0; border-radius: 999px; padding: 12px 22px; background: var(--vision-text); color: white; cursor: pointer; }


.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

@media (max-width: 860px) {
  :root { --vision-width: min(100% - 28px, 760px); --vision-reading: min(100% - 28px, 760px); }
  .vision-page { padding-top: 12px; }
  .site-header { top: 8px; margin-bottom: 48px; }
  .site-header-inner { min-height: 58px; padding: 8px 8px 8px 15px; border-radius: 21px; }
    .primary-menu { position: absolute; right: 0; top: calc(100% + 10px); width: min(280px, calc(100vw - 28px)); display: none; flex-direction: column; align-items: stretch; gap: 4px; padding: 9px; margin: 0; border: 1px solid rgba(255,255,255,.72); border-radius: 20px; background: rgba(250,251,253,.82); box-shadow: var(--vision-shadow); -webkit-backdrop-filter: blur(24px) saturate(120%); backdrop-filter: blur(24px) saturate(120%); }
  .main-navigation.is-open .primary-menu { display: flex; }
  .primary-menu a { padding: 12px 14px; }
  .menu-toggle { display: inline-grid; }
  .vision-hero { padding-bottom: 38px; }
  .posts-list { grid-template-columns: 1fr; gap: 16px; }
  .post-card, .post-card:nth-child(5n+1), .post-card:nth-child(5n+2) { grid-column: auto; }
  .post-card-body { padding: 24px; }
  .post-title { font-size: clamp(23px, 4.2vw, 27px); }
  .entry-header .post-title { font-size: clamp(32px, 6.2vw, 40px); }
  .entry-content-wrap { border-radius: 26px; }
  .entry-header { padding: 38px 26px 28px; }
  .entry-content { padding: 34px 26px 50px; }
  .entry-cover { margin: 0 14px; border-radius: 18px; }
  .meow-comment-form { grid-template-columns: 1fr; }
  .comment-form-comment, .form-submit { grid-column: auto; }
}

@media (max-width: 520px) {
  body { font-size: 15px; }
  .site-title { font-size: 14px; }
  .vision-icon-button { width: 39px; height: 39px; }
  .vision-hero h1 { font-size: 44px; }
  .vision-hero-description { font-size: 17px; }
  .post-card { border-radius: 24px; }
  .post-card-body { padding: 22px; }
  .post-title { font-size: clamp(22px, 6.2vw, 25px); line-height: 1.2; }
  .entry-header .post-title { font-size: clamp(30px, 8.4vw, 34px); line-height: 1.12; }
  .entry-content { font-size: 16px; line-height: 1.82; padding-left: 22px; padding-right: 22px; }
  .vision-comments { padding: 24px 20px; border-radius: 24px; }
  .meow-comment-list .children { margin-left: 10px; padding-left: 12px; }
}

@media (max-width: 380px) {
  .post-title { font-size: 21px; }
  .entry-header .post-title { font-size: 29px; }
  .entry-header { padding-left: 21px; padding-right: 21px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
  .post-card { opacity: 1; transform: none; }
}

/* Meow Vision 2.1 — Hero profile and social cards */
.vision-hero-socials{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:10px;margin-top:24px;width:fit-content;max-width:100%}
.vision-social-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(48,61,78,.10);border-radius:50%;background:transparent;box-shadow:none;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.vision-social-icon:hover{transform:translateY(-2px);background:rgba(255,255,255,.48);box-shadow:0 8px 18px rgba(48,61,78,.08)}
.vision-social-icon:active{transform:scale(.94)}
.vision-social-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.vision-social-icon svg .mv-fill{fill:currentColor;stroke:none}
.vision-social-popover{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:20px;background:rgba(38,47,61,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.vision-social-popover[hidden]{display:none}
.vision-social-card{position:relative;width:min(340px,100%);padding:30px 24px 24px;border-radius:28px;text-align:center;animation:visionCardIn .22s cubic-bezier(.2,.8,.2,1)}
.vision-social-close{position:absolute;top:12px;right:12px;width:34px;height:34px;border:1px solid rgba(48,61,78,.09);border-radius:50%;background:rgba(255,255,255,.52);cursor:pointer;font-size:22px;line-height:1}
.vision-social-title{font-size:18px;font-weight:730;letter-spacing:-.02em;margin-bottom:14px}
.vision-social-qr{display:none;justify-content:center;margin:4px 0 16px}.vision-social-qr.has-image{display:flex}
.vision-social-qr img{width:min(190px,72vw);padding:10px;background:#fff;border-radius:20px;box-shadow:0 8px 24px rgba(32,39,50,.10)}
.vision-social-value{min-height:28px;padding:11px 14px;border-radius:14px;background:rgba(255,255,255,.38);color:var(--vision-secondary);overflow-wrap:anywhere;white-space:pre-wrap}
.vision-social-copy{margin-top:16px;min-width:112px;padding:10px 18px;border:0;border-radius:999px;background:var(--vision-text);color:#fff;cursor:pointer;font-weight:650}
.vision-social-copy.is-copied{background:var(--vision-accent)}
.vision-ad{max-width:100%;margin:0 auto 28px;overflow:hidden}.vision-ad img,.vision-ad iframe,.vision-ad ins{max-width:100%}
@keyframes visionCardIn{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:600px){.vision-hero-socials{gap:8px}.vision-social-icon{width:40px;height:40px}.vision-social-card{border-radius:24px}}

.comment-privacy-note{grid-column:1/-1;margin:2px 0 0!important;color:var(--vision-muted);font-size:12px}

/* 2.3.1 palette safety: selected preset is authoritative; OS dark mode no longer overrides it. */


/* 2.3.2 restrained Liquid Glass refinement */
.site-header-inner{min-height:58px;border-radius:20px;padding:8px 10px 8px 18px}
.site-header-inner::after{display:none!important}
.vision-icon-button{width:40px;height:40px;box-shadow:none;transition:background .2s ease,border-color .2s ease,transform .16s ease}
.vision-icon-button:hover{transform:none}
.vision-icon-button:active{transform:scale(.96)}
.vision-surface{border-radius:22px}
.post-card{border-radius:22px;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,opacity .6s ease}
.post-card:hover{transform:scale(1.006);box-shadow:var(--vision-shadow-soft)}
.vision-hero-socials{width:max-content;max-width:100%;padding:5px 7px;border:1px solid var(--vision-border);border-radius:999px;background:var(--vision-control-bg);-webkit-backdrop-filter:blur(20px) saturate(104%);backdrop-filter:blur(20px) saturate(104%)}
.vision-social-icon{width:38px;height:38px;border-color:transparent!important;transition:background .2s ease,transform .16s ease}
.vision-social-icon:hover{transform:none;box-shadow:none}
.vision-social-icon:active{transform:scale(.96)}
.entry-content-wrap{border-radius:26px}
.vision-comments{border-radius:22px}
.vision-social-card{border-radius:22px}
@media(max-width:782px){.site-header-inner{min-height:56px;border-radius:19px}.post-card,.vision-comments{border-radius:20px}.entry-content-wrap{border-radius:22px}}

/* Meow Vision 2.4 — optical liquid glass */
:root{--mv-light-x:50%;--mv-light-y:0%;--mv-light-speed:0;--mv-ray-radius:340px;--mv-ray-alpha:.22;--mv-card-ray-alpha:.16}
.site-header-inner,.primary-menu,.vision-hero-socials,.vision-social-card,.post-card{position:relative;isolation:isolate;overflow:hidden}
.site-header-inner::before,.primary-menu::before,.vision-hero-socials::before,.vision-social-card::before,.post-card::before{content:"";position:absolute;z-index:-1;inset:-1px;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(circle var(--mv-ray-radius) at var(--mv-light-x) var(--mv-light-y),rgba(255,255,255,var(--mv-ray-alpha)),rgba(255,255,255,.055) 24%,transparent 58%);transition:opacity .32s ease}
.site-header-inner::after,.primary-menu::after,.vision-hero-socials::after,.vision-social-card::after{content:"";position:absolute;z-index:2;inset:0;border-radius:inherit;pointer-events:none;padding:1px;background:linear-gradient(125deg,rgba(255,255,255,.72),rgba(255,255,255,.10) 38%,rgba(255,255,255,.02) 62%,rgba(255,255,255,.30));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.58}
html.mv-dynamic-glass .site-header-inner::before,html.mv-dynamic-glass .primary-menu::before,html.mv-dynamic-glass .vision-hero-socials::before,html.mv-dynamic-glass .vision-social-card::before{opacity:1}
html.mv-dynamic-glass .post-card:is(:hover,:focus-within)::before{opacity:1;--mv-ray-alpha:var(--mv-card-ray-alpha)}
html.mv-dynamic-fluid .site-header-inner,html.mv-dynamic-cinematic .site-header-inner{transform:translate3d(var(--mv-tilt-x,0px),var(--mv-tilt-y,0px),0)}
html.mv-dynamic-cinematic .site-header-inner::after,html.mv-dynamic-cinematic .primary-menu::after{opacity:.78}
@media (hover:none),(pointer:coarse){html.mv-dynamic-glass{--mv-ray-alpha:.13;--mv-card-ray-alpha:0}.post-card::before{display:none}.site-header-inner{transform:none!important}}
@media (prefers-reduced-motion:reduce){.site-header-inner::before,.primary-menu::before,.vision-hero-socials::before,.vision-social-card::before,.post-card::before{display:none!important}.site-header-inner{transform:none!important}}


/* 2.5.0 — iOS-inspired consistency pass */
:root{
  --vision-radius-control:12px;
  --vision-radius-input:14px;
  --vision-radius-panel:20px;
  --vision-radius-card:22px;
  --vision-radius-large:26px;
  --vision-motion: cubic-bezier(.22,.78,.22,1);
}
/* The navigation layer remains the clearest glass; content surfaces stay quieter. */
.site-header-inner{border-radius:var(--vision-radius-panel);}
.vision-icon-button{border-radius:12px;}
.vision-icon-button:hover{transform:none;}
.primary-menu{border-radius:var(--vision-radius-panel);}
.vision-surface,.post-card,.vision-comments{border-radius:var(--vision-radius-card);}
.entry-content-wrap{border-radius:var(--vision-radius-large);}
.vision-social-card{border-radius:var(--vision-radius-card);}

/* Reduce competing visual hierarchy and keep editorial typography calm. */
.vision-hero h1{font-size:clamp(42px,6.2vw,72px);line-height:1.035;letter-spacing:-.037em;font-weight:730;}
.vision-hero-description{font-size:clamp(16px,1.7vw,20px);line-height:1.58;max-width:620px;}
.post-title{font-weight:700;letter-spacing:-.024em;}
.entry-header .post-title{font-size:clamp(32px,4.8vw,52px);line-height:1.12;letter-spacing:-.028em;}
.post-card-meta{letter-spacing:.065em;font-weight:620;}

/* Material feedback rather than web-template lift. */
.post-card:hover,.vision-social-icon:hover,.mv-noop{transform:none;}
.post-card:hover{box-shadow:0 10px 30px rgba(36,48,64,.075);}
.post-card,.vision-icon-button,.vision-social-icon{transition:background-color .22s ease,border-color .22s ease,box-shadow .28s ease,transform .16s var(--vision-motion);}
.post-card:active{transform:scale(.996);}
.vision-icon-button:active,.vision-social-icon:active{transform:scale(.95);}

/* Reading layer: neutral separators and less decorative content chrome. */
.entry-content hr{border:0;border-top:1px solid var(--vision-line);margin:2.4em 0;}
.entry-content blockquote{border-left-width:2px;border-radius:0 var(--vision-radius-input) var(--vision-radius-input) 0;}
.entry-content pre{border-radius:var(--vision-radius-input);}
.entry-content img,.entry-content video,.entry-content iframe{border-radius:16px;}
.form-submit button{min-height:42px;transition:opacity .2s ease,transform .16s var(--vision-motion);}
.form-submit button:hover{opacity:.88;}
.form-submit button:active{transform:scale(.98);}

@media(max-width:782px){
  .vision-hero{padding-top:44px;padding-bottom:38px;}
  .vision-hero h1{font-size:clamp(38px,11vw,46px);line-height:1.06;}
  .vision-hero-description{font-size:16px;line-height:1.6;margin-top:18px;}
  .post-title{font-size:clamp(21px,5.9vw,24px);line-height:1.24;}
  .entry-header .post-title{font-size:clamp(28px,8vw,32px);line-height:1.16;}
  .entry-content{padding-top:32px;padding-bottom:52px;line-height:1.78;}
  .site-header-inner{border-radius:18px;}
  .primary-menu,.post-card,.vision-comments{border-radius:18px;}
  .entry-content-wrap{border-radius:20px;}
}
@media(max-width:380px){
  .vision-hero h1{font-size:38px;}
  .entry-header .post-title{font-size:27px;}
}

/* 2.5.2 — mobile menu must remain an independent floating layer */
@media (max-width: 860px) {
  .site-header-inner {
    overflow: visible;
  }
  .main-navigation {
    position: static;
  }
  .primary-menu {
    position: absolute;
    z-index: 30;
    top: calc(100% + 10px);
    right: 8px;
    left: auto;
    width: min(280px, calc(100vw - 44px));
    max-height: min(70vh, 520px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .main-navigation.is-open .primary-menu {
    display: flex;
  }
}


/* 2.5.2 — interaction, accessibility and rendering safety */
.vision-icon-button:focus-visible,
.primary-menu a:focus-visible,
.vision-social-icon:focus-visible,
.vision-social-close:focus-visible,
.vision-social-copy:focus-visible,
.meow-pagination-inline a:focus-visible,
.meow-comment-form input:focus-visible,
.meow-comment-form textarea:focus-visible {
  outline: 2px solid var(--vision-accent);
  outline-offset: 3px;
}
html.mv-light-idle .site-header-inner::before,
html.mv-light-idle .primary-menu::before,
html.mv-light-idle .vision-hero-socials::before,
html.mv-light-idle .vision-social-card::before { opacity: .42; }
.post-card::before {
  background: radial-gradient(circle var(--mv-ray-radius) at var(--mv-local-x,50%) var(--mv-local-y,20%),rgba(255,255,255,var(--mv-card-ray-alpha)),rgba(255,255,255,.045) 24%,transparent 58%);
}
@media (max-width:860px) {
  .site-header-inner { min-width:0; }
  .site-branding { flex:1 1 auto; }
  .main-navigation { flex:0 0 auto; }
  .primary-menu { box-sizing:border-box; }
}
@media (prefers-reduced-transparency: reduce) {
  .site-header-inner,.primary-menu,.vision-hero-socials,.vision-social-card,.vision-surface,.vision-comments {
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
}

/* Meow Vision 2.6 — extensible toolbar and search */
.vision-toolbar-actions{display:flex;align-items:center;gap:8px;order:1}
.main-navigation>.primary-menu{order:2}
.vision-search-panel{position:fixed;inset:0;z-index:9999;display:grid;place-items:start center;padding:clamp(84px,15vh,150px) 18px 30px;background:rgba(18,22,29,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;transition:opacity .18s ease}
.vision-search-panel[hidden]{display:none}
.vision-search-panel.is-open{opacity:1}
.vision-search-card{position:relative;width:min(620px,100%);padding:30px;border:1px solid var(--vision-border);border-radius:26px;background:var(--vision-toolbar-bg);box-shadow:var(--vision-shadow);-webkit-backdrop-filter:blur(var(--vision-glass-blur)) saturate(106%);backdrop-filter:blur(var(--vision-glass-blur)) saturate(106%);transform:translateY(-10px) scale(.985);opacity:0;transition:transform .28s cubic-bezier(.2,.85,.25,1),opacity .2s ease}
.vision-search-panel.is-open .vision-search-card{transform:none;opacity:1}
.vision-search-close{position:absolute;right:15px;top:15px;width:36px;height:36px;border:1px solid var(--vision-border);border-radius:12px;background:var(--vision-control-bg);color:var(--vision-text);font-size:24px;line-height:1;cursor:pointer}
.vision-search-kicker{display:block;margin-bottom:8px;color:var(--vision-accent);font-size:11px;font-weight:750;letter-spacing:.16em}
.vision-search-card h2{margin:0 46px 22px 0;color:var(--vision-text);font-size:clamp(26px,4vw,38px);line-height:1.12;letter-spacing:-.035em}
.vision-search-field{display:flex;align-items:center;gap:10px;padding:7px 7px 7px 15px;border:1px solid var(--vision-border);border-radius:16px;background:var(--vision-control-bg);transition:border-color .2s ease,box-shadow .2s ease}
.vision-search-field:focus-within{border-color:rgba(var(--vision-accent-rgb),.42);box-shadow:0 0 0 4px rgba(var(--vision-accent-rgb),.08)}
.vision-search-field svg{flex:0 0 auto;width:20px;height:20px;fill:none;stroke:var(--vision-secondary);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.vision-search-field input{min-width:0;flex:1;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:var(--vision-text)!important;font:inherit;font-size:16px}
.vision-search-field input::placeholder{color:var(--vision-muted)}
.vision-search-field button{flex:0 0 auto;border:0;border-radius:12px;padding:11px 17px;background:var(--vision-text);color:var(--vision-bg-top);font-weight:700;cursor:pointer}
.vision-search-hint{margin:12px 2px 0;color:var(--vision-muted);font-size:12px}
.search-results-header{margin-bottom:26px}
.search-results-header .page-title{margin:0;color:var(--vision-text);font-size:clamp(32px,6vw,58px);letter-spacing:-.045em}
.search-results-header p{color:var(--vision-secondary)}
@media(max-width:860px){.vision-toolbar-actions{gap:5px}.main-navigation>.primary-menu{order:3}.vision-search-card{padding:24px 18px 20px;border-radius:22px}.vision-search-panel{padding-top:82px}.vision-search-field{padding-left:12px}.vision-search-field button{padding:10px 14px}}
@media(prefers-reduced-motion:reduce){.vision-search-panel,.vision-search-card{transition:none!important}}

/* Meow Vision 2.7 — bilingual toolbar slot */
.mv-language-glyph{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;font-size:9.5px;font-weight:780;line-height:1;letter-spacing:.075em;color:currentColor;transform:translateX(.35px)}
.vision-language-popover{position:fixed;inset:0;z-index:9990;pointer-events:none}
.vision-language-popover[hidden]{display:none}
.vision-language-card{position:absolute;top:78px;right:auto;width:190px;padding:10px;border:1px solid var(--vision-border);border-radius:19px;background:var(--vision-toolbar-bg);box-shadow:var(--vision-shadow);-webkit-backdrop-filter:blur(var(--vision-glass-blur)) saturate(108%);backdrop-filter:blur(var(--vision-glass-blur)) saturate(108%);opacity:0;transform:translateY(-7px) scale(.97);transform-origin:top right;transition:opacity .16s ease,transform .2s cubic-bezier(.2,.8,.2,1);pointer-events:auto}
.vision-language-popover.is-open .vision-language-card{opacity:1;transform:none}
.vision-language-title{display:block;padding:7px 9px 8px;color:var(--vision-muted);font-size:10px;font-weight:760;letter-spacing:.13em;text-transform:uppercase}
.vision-language-option{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:0 11px;border-radius:12px;color:var(--vision-secondary);text-decoration:none!important;font-size:14px;font-weight:650;transition:background .18s ease,color .18s ease}
.vision-language-option:hover,.vision-language-option:focus-visible{background:var(--vision-hover-bg);color:var(--vision-text)}
.vision-language-option.is-active{background:var(--vision-accent-soft);color:var(--vision-accent)}
.vision-language-option i{font-style:normal;font-size:9px;font-weight:780;letter-spacing:.08em;opacity:.62}
@media(max-width:860px){.vision-language-card{width:178px}}
@media(prefers-reduced-motion:reduce){.vision-language-card{transition:none!important}}

/* 2.7.4 — bilingual comment cookie consent */
.comment-form-cookies-consent{grid-column:1/-1;display:flex;align-items:flex-start;gap:9px;margin:2px 0!important;color:var(--vision-muted);font-size:12px;line-height:1.55}
.comment-form-cookies-consent input{width:15px!important;height:15px;margin:2px 0 0;padding:0;flex:0 0 auto;accent-color:var(--vision-accent)}
.comment-form-cookies-consent label{cursor:pointer}


/* Meow Vision 2.9.1 — unified Liquid Glass design system */
:root{
 --mv-radius-xs:10px;--mv-radius-sm:14px;--mv-radius-md:18px;--mv-radius-lg:22px;--mv-radius-xl:28px;
 --mv-transition:cubic-bezier(.22,.78,.22,1);
}
/* One optical light source: upper-left highlight, lower-right depth. */
.site-header-inner,.primary-menu,.vision-search-card,.vision-language-card,.vision-social-card,.mv-reference-card{
 position:relative;isolation:isolate;
}
.site-header-inner::after,.primary-menu::after,.vision-search-card::after,.vision-language-card::after,.vision-social-card::after{
 opacity:.72!important;background:linear-gradient(132deg,rgba(255,255,255,.88),rgba(255,255,255,.18) 31%,transparent 59%,rgba(var(--vision-accent-rgb),.12) 82%,rgba(255,255,255,.34))!important;
}
.site-header-inner{border-radius:var(--mv-radius-lg)!important;}
.primary-menu,.vision-search-card,.vision-social-card{border-radius:var(--mv-radius-xl)!important;}
.vision-language-card{border-radius:var(--mv-radius-md)!important;}
.vision-icon-button,.vision-search-close,.vision-social-close{border-radius:var(--mv-radius-sm)!important;}
.vision-search-field,.meow-comment-form input,.meow-comment-form textarea{border-radius:var(--mv-radius-sm)!important;}
.vision-surface,.post-card,.vision-comments{border-radius:var(--mv-radius-lg)!important;}
.entry-content-wrap{border-radius:var(--mv-radius-xl)!important;}
/* Editorial content is quieter than floating controls. */
.post-card{box-shadow:var(--vision-shadow-soft)!important;transition:border-color .24s ease,box-shadow .3s ease,transform .18s var(--mv-transition)!important;}
.post-card:hover{transform:translateY(-2px)!important;border-color:rgba(var(--vision-accent-rgb),.16)!important;box-shadow:0 16px 42px rgba(30,42,58,.10)!important;}
.post-card::before{opacity:0!important;}
html.mv-dynamic-glass .post-card:is(:hover,:focus-within)::before{opacity:.45!important;}
/* Reduce nested-glass clutter. */
.vision-hero-socials{background:transparent!important;border-color:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:3px!important;}
.vision-social-icon{background:var(--mv-control-bg)!important;border:1px solid var(--mv-glass-border-low)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.42)!important;}
.post-card-body{padding:25px 27px 28px;}
.post-card-meta{margin-bottom:12px;}
.post-excerpt{margin-top:14px;}
/* Remove blanket blur from page overlays; only the panel is glass. */
.vision-search-panel{background:rgba(18,22,29,.12)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;}
/* Refined controls */
.primary-menu a,.vision-language-option{border-radius:var(--mv-radius-sm)!important;}
.meow-pagination-inline{background:var(--mv-glass-bg)!important;border:1px solid var(--mv-glass-border)!important;box-shadow:inset 0 1px 0 var(--mv-glass-highlight),var(--vision-shadow-soft)!important;-webkit-backdrop-filter:blur(var(--mv-glass-blur)) saturate(135%);backdrop-filter:blur(var(--mv-glass-blur)) saturate(135%);}
.meow-pagination-inline .current{background:var(--mv-control-hover)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.48)!important;}
@media(max-width:782px){
 .site-header-inner,.primary-menu,.post-card,.vision-comments{border-radius:18px!important;}
 .entry-content-wrap,.vision-search-card,.vision-social-card{border-radius:22px!important;}
 .post-card-body{padding:22px 21px 24px;}
}


/* Meow Vision 2.9.3 — responsive toolbar and viewport-safe floating panels */
html { -webkit-text-size-adjust: 100%; }
.site-header {
  padding-left: env(safe-area-inset-left, 0px);
  padding-right: env(safe-area-inset-right, 0px);
}
.site-header-inner { min-width: 0; }
.site-branding { flex: 1 1 auto; overflow: hidden; }
.main-navigation { flex: 0 0 auto; min-width: 0; }
.vision-toolbar-actions { flex-wrap: nowrap; }
.vision-icon-button { flex: 0 0 auto; touch-action: manipulation; -webkit-tap-highlight-color: transparent; }

@media (max-width: 860px) {
  .primary-menu {
    position: fixed;
    z-index: 9991;
    top: auto;
    right: auto;
    left: auto;
    width: min(280px, calc(100vw - 28px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)));
    max-width: calc(100vw - 28px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px));
    max-height: min(70dvh, 520px);
    padding-bottom: max(9px, env(safe-area-inset-bottom, 0px));
    transform-origin: top right;
  }
}

@media (max-width: 520px) {
  :root {
    --vision-width: min(100% - 20px, 760px);
    --vision-reading: min(100% - 20px, 760px);
  }
  .site-header { top: max(6px, env(safe-area-inset-top, 0px)); }
  .site-header-inner { gap: 8px; padding: 7px 7px 7px 12px; min-height: 54px; }
  .site-branding { gap: 8px; }
  .custom-logo { width: 34px; height: 34px; border-radius: 10px; }
  .brand-copy { max-width: clamp(62px, 24vw, 132px); }
  .site-title { font-size: 13px; }
  .vision-toolbar-actions { gap: 4px; }
  .vision-icon-button { width: 38px; height: 38px; }
  .vision-icon-button svg { width: 19px; height: 19px; }
  .vision-language-card {
    width: min(178px, calc(100vw - 24px - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)));
  }
}

@media (max-width: 390px) {
  .site-header-inner { padding-left: 10px; }
  .brand-copy { max-width: 78px; }
  .vision-toolbar-actions { gap: 3px; }
  .vision-icon-button { width: 36px; height: 36px; }
}

@media (max-width: 350px) {
  .brand-copy { max-width: 54px; }
  .site-title { font-size: 12px; }
  .custom-logo { width: 31px; height: 31px; }
  .vision-icon-button { width: 34px; height: 34px; border-radius: 10px !important; }
  .vision-icon-button svg { width: 18px; height: 18px; }
  .mv-language-glyph { font-size: 8.5px; min-width: 19px; }
}

@media (orientation: landscape) and (max-height: 500px) {
  .site-header { top: max(4px, env(safe-area-inset-top, 0px)); margin-bottom: 28px; }
  .site-header-inner { min-height: 50px; padding-top: 5px; padding-bottom: 5px; }
  .primary-menu { max-height: calc(100dvh - 68px - env(safe-area-inset-bottom, 0px)); }
  .vision-language-card { max-height: calc(100dvh - 24px); overflow-y: auto; }
}

@supports not (height: 100dvh) {
  @media (max-width: 860px) {
    .primary-menu { max-height: min(70vh, 520px); }
  }
}

/* Meow Vision 2.9.3 — clearer, touch-friendly mobile navigation */
@media (max-width: 860px) {
  .primary-menu {
    gap: 7px;
    padding: 11px;
    background:
      linear-gradient(145deg, rgba(var(--mv-glass-rgb), .72), rgba(var(--mv-glass-strong-rgb), .52));
    border-color: rgba(255,255,255,.76);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.88),
      0 22px 54px rgba(28,36,50,.20);
    overscroll-behavior: contain;
    scrollbar-width: thin;
  }
  .primary-menu > li,
  .primary-menu .menu-item {
    position: relative;
    display: block;
    width: 100%;
    margin: 0;
  }
  .primary-menu a {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 50px;
    width: 100%;
    padding: 12px 42px 12px 16px;
    color: var(--vision-text);
    font-size: 15px;
    font-weight: 680;
    line-height: 1.35;
    letter-spacing: -.01em;
    background: rgba(var(--mv-content-rgb), .50);
    border: 1px solid rgba(255,255,255,.52);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.55),
      0 5px 15px rgba(35,45,62,.06);
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
    transition: transform .16s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
  }
  .primary-menu a::before {
    content: "";
    flex: 0 0 auto;
    width: 7px;
    height: 7px;
    margin-right: 12px;
    border-radius: 50%;
    background: rgba(var(--vision-accent-rgb), .45);
    box-shadow: 0 0 0 4px rgba(var(--vision-accent-rgb), .08);
  }
  .primary-menu a::after {
    content: "";
    position: absolute;
    right: 17px;
    top: 50%;
    width: 7px;
    height: 7px;
    border-top: 1.8px solid currentColor;
    border-right: 1.8px solid currentColor;
    opacity: .42;
    transform: translateY(-50%) rotate(45deg);
  }
  .primary-menu a:hover,
  .primary-menu a:focus-visible {
    color: var(--vision-text);
    background: rgba(var(--mv-glass-strong-rgb), .76);
    border-color: rgba(var(--vision-accent-rgb), .26);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.76),
      0 8px 20px rgba(35,45,62,.10),
      0 0 0 3px rgba(var(--vision-accent-rgb), .08);
    outline: none;
  }
  .primary-menu a:active {
    transform: scale(.975);
    background: rgba(var(--mv-glass-strong-rgb), .88);
  }
  .primary-menu .current-menu-item > a,
  .primary-menu .current-menu-ancestor > a,
  .primary-menu .current_page_item > a {
    color: var(--vision-text);
    background: linear-gradient(135deg, rgba(var(--vision-accent-rgb), .17), rgba(var(--mv-glass-strong-rgb), .74));
    border-color: rgba(var(--vision-accent-rgb), .30);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.72),
      0 8px 22px rgba(var(--vision-accent-rgb), .10);
  }
  .primary-menu .current-menu-item > a::before,
  .primary-menu .current-menu-ancestor > a::before,
  .primary-menu .current_page_item > a::before {
    background: var(--vision-accent);
    box-shadow: 0 0 0 4px rgba(var(--vision-accent-rgb), .14), 0 0 12px rgba(var(--vision-accent-rgb), .34);
  }
  .primary-menu .sub-menu {
    list-style: none;
    margin: 6px 0 0;
    padding: 0 0 0 14px;
    display: grid;
    gap: 6px;
  }
  .primary-menu .sub-menu a {
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 14px;
    font-weight: 620;
    background: rgba(var(--mv-content-rgb), .38);
  }
  .primary-menu .sub-menu a::before {
    width: 5px;
    height: 5px;
    margin-right: 10px;
  }
}

@media (max-width: 390px) {
  .primary-menu { gap: 6px; padding: 9px; }
  .primary-menu a { min-height: 48px; padding: 11px 38px 11px 14px; font-size: 14.5px; }
  .primary-menu a::after { right: 15px; }
}

@media (orientation: landscape) and (max-height: 500px) {
  .primary-menu { gap: 5px; padding: 8px; }
  .primary-menu a { min-height: 42px; padding-top: 8px; padding-bottom: 8px; }
}

/* Friend Links Template */
.friend-links-page .entry-content-wrap{max-width:1180px}.friend-links-intro{margin-bottom:24px}.friend-links-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:14px;margin-top:24px}.friend-link-card{display:grid;grid-template-columns:48px minmax(72px,.8fr) minmax(0,1.2fr) 32px;gap:12px;align-items:center;min-width:0;min-height:78px;padding:13px 14px;text-decoration:none;color:var(--vision-text);border:1px solid var(--mv-glass-border-low);border-radius:22px;background:var(--mv-card-bg);box-shadow:inset 0 1px 0 var(--mv-glass-highlight),0 14px 34px rgba(var(--mv-shadow-rgb),.09);overflow:hidden;transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}.friend-link-card:hover{transform:translateY(-3px);border-color:rgba(var(--vision-accent-rgb),.32);background:var(--mv-control-hover);box-shadow:inset 0 1px 0 var(--mv-glass-highlight),0 18px 42px rgba(var(--mv-shadow-rgb),.13)}.friend-link-card:active{transform:scale(.985)}.friend-link-card:focus-visible{outline:2px solid rgba(var(--vision-accent-rgb),.58);outline-offset:3px}.friend-link-logo{width:48px;height:48px;border-radius:15px;overflow:hidden;display:grid;place-items:center;background:var(--mv-control-bg);border:1px solid var(--mv-glass-border-low);box-shadow:inset 0 1px 0 var(--mv-glass-highlight);transition:transform .22s ease}.friend-link-card:hover .friend-link-logo{transform:scale(1.04)}.friend-link-logo img{width:100%;height:100%;object-fit:cover}.friend-link-fallback{font-weight:800;font-size:19px;color:var(--vision-accent)}.friend-link-name,.friend-link-domain{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-link-name{font-size:15.5px;font-weight:760;letter-spacing:.01em}.friend-link-domain{font-size:13px;color:var(--vision-muted)}.friend-link-icon{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;justify-self:end;background:var(--mv-control-bg);border:1px solid var(--mv-glass-border-low);box-shadow:inset 0 1px 0 var(--mv-glass-highlight);font-size:14px;line-height:1;filter:saturate(.88);opacity:.82;transition:transform .22s ease,opacity .22s ease,background .22s ease}.friend-link-card:hover .friend-link-icon{transform:scale(1.08) rotate(-6deg);opacity:1;background:var(--mv-control-hover)}.friend-links-empty{grid-column:1/-1;padding:34px;text-align:center;border:1px dashed var(--mv-glass-border-low);border-radius:22px;color:var(--vision-muted)}
@media(min-width:1280px){.friend-links-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.friend-links-page .entry-content-wrap{max-width:100%}.friend-links-list{grid-template-columns:1fr;gap:10px;margin-top:18px}.friend-link-card{grid-template-columns:40px minmax(64px,.72fr) minmax(0,1.28fr) 28px;gap:9px;min-height:66px;padding:10px 11px;border-radius:18px}.friend-link-logo{width:40px;height:40px;border-radius:12px}.friend-link-name{font-size:14px}.friend-link-domain{font-size:12.5px}.friend-link-icon{width:27px;height:27px;font-size:13px}}
@media(max-width:380px){.friend-link-card{grid-template-columns:38px minmax(56px,.65fr) minmax(0,1.35fr) 26px;gap:7px;padding:9px}.friend-link-logo{width:38px;height:38px}.friend-link-name{font-size:13.5px}.friend-link-domain{font-size:12px}.friend-link-icon{width:25px;height:25px;font-size:12px}}


/* Meow Vision 3.0.1 — optional icon-only social presentation */
.vision-hero-socials.is-icon-only{
  padding:0!important;
  gap:14px;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  overflow:visible;
}
.vision-hero-socials.is-icon-only::before,
.vision-hero-socials.is-icon-only::after{display:none!important;content:none!important}
.vision-hero-socials.is-icon-only .vision-social-icon{
  width:30px;
  height:30px;
  padding:4px;
  border:0!important;
  border-radius:8px;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
.vision-hero-socials.is-icon-only .vision-social-icon svg{width:20px;height:20px}
.vision-hero-socials.is-icon-only .vision-social-icon:hover{
  color:var(--vision-accent)!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:translateY(-1px);
}
.vision-hero-socials.is-icon-only .vision-social-icon:active{transform:scale(.9)}
.vision-hero-socials.is-icon-only .vision-social-icon:focus-visible{
  outline:2px solid var(--vision-accent);
  outline-offset:4px;
}
.mv-social-display-setting{margin-bottom:18px}
@media(max-width:600px){
  .vision-hero-socials.is-icon-only{gap:11px}
  .vision-hero-socials.is-icon-only .vision-social-icon{width:28px;height:28px;padding:3px}
  .vision-hero-socials.is-icon-only .vision-social-icon svg{width:19px;height:19px}
}

/* 3.0.3: Single-post titles should use the available line width naturally.
   `text-wrap: balance` can intentionally rebalance multi-line headings and make
   the first line wrap early even when usable space remains. Keep this scoped
   to single posts so pages, cards and responsive sizing remain unchanged. */
body.single .entry-header .post-title {
  text-wrap: wrap;
}

/* Shop preview: only necessary product labels; inherit all theme appearance variables. */
.mv-shop-card-details{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:auto;padding-top:14px;color:var(--vision-secondary);font-size:13px}
.mv-shop-card-price{font-weight:750;color:var(--vision-text);font-variant-numeric:tabular-nums}
.mv-shop-card-marker{display:inline-flex;align-items:center;gap:5px}
.mv-shop-detail{margin-top:26px;padding:22px;border:1px solid var(--vision-line);border-radius:var(--vision-radius-md);background:var(--vision-surface)}
.mv-shop-detail-price{font-size:24px;font-weight:750;color:var(--vision-text)}
.mv-shop-detail-note{font-size:13px;color:var(--vision-secondary);margin:8px 0 0}

/* 3.0.6: compact product-only cards, retaining original Meow appearance tokens. */
.post-card.mv-product-card, .post-card.mv-product-card:nth-child(5n+1), .post-card.mv-product-card:nth-child(5n+2){grid-column:span 6}
.post-card.mv-product-card .post-card-link{display:flex;flex-direction:row;align-items:stretch;min-height:152px;height:100%}
.post-card.mv-product-card .post-thumbnail{flex:0 0 36%;width:36%;aspect-ratio:auto;min-height:152px}
.post-card.mv-product-card .post-thumbnail img{height:100%;object-fit:cover}
.post-card.mv-product-card .post-card-body{min-width:0;padding:18px 20px;justify-content:center;flex:1}
.post-card.mv-product-card .post-card-meta{margin-bottom:7px;font-size:10px}
.post-card.mv-product-card .post-title{font-size:clamp(15px,1.5vw,19px);line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.post-card.mv-product-card .post-excerpt{display:none}
.post-card.mv-product-card .mv-shop-card-details{margin-top:12px;padding:0;gap:5px 12px;font-size:12px;color:var(--vision-muted)}
.post-card.mv-product-card .mv-shop-card-price{font-size:15px;font-weight:650;color:var(--vision-text)}
.post-card.mv-product-card .mv-shop-card-marker{font-size:0;gap:0;color:var(--vision-muted)}
.post-card.mv-product-card .mv-shop-card-marker svg{width:15px;height:15px;stroke:currentColor}
@media(max-width:782px){
.post-card.mv-product-card,.post-card.mv-product-card:nth-child(5n+1),.post-card.mv-product-card:nth-child(5n+2){grid-column:auto}
.post-card.mv-product-card .post-card-link{min-height:116px}
.post-card.mv-product-card .post-thumbnail{flex-basis:32%;width:32%;min-height:116px}
.post-card.mv-product-card .post-card-body{padding:13px 14px}
.post-card.mv-product-card .post-card-meta{margin-bottom:5px;font-size:10px}
.post-card.mv-product-card .post-title{font-size:15px;line-height:1.35}
.post-card.mv-product-card .mv-shop-card-details{margin-top:9px;font-size:11px;gap:5px 9px}
.post-card.mv-product-card .mv-shop-card-price{font-size:14px}
}

/* 3.0.7: product-only image frame; no cropping or edge-to-edge cover. */
.post-card.mv-product-card .post-thumbnail{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  align-self:center;
  flex:0 0 132px;
  width:132px;
  height:116px;
  min-height:0;
  margin:12px 0 12px 12px;
  padding:10px;
  overflow:hidden;
  border-radius:12px;
  background:var(--vision-surface);
  border:1px solid var(--vision-line);
  aspect-ratio:auto;
}
.post-card.mv-product-card .post-thumbnail img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  border-radius:0;
}
.post-card.mv-product-card .post-card-meta{display:none}
@media(max-width:782px){
  .post-card.mv-product-card .post-card-link{min-height:108px}
  .post-card.mv-product-card .post-thumbnail{
    flex:0 0 96px;
    width:96px;
    height:96px;
    min-height:0;
    margin:10px 0 10px 10px;
    padding:8px;
    border-radius:10px;
  }
  .post-card.mv-product-card .post-card-body{padding:12px 14px}
}

/* 3.0.8: responsive product image container; preserve existing Meow appearance. */
.post-card.mv-product-card .post-thumbnail{
  flex:0 1 clamp(108px, 12vw, 160px);
  width:clamp(108px, 12vw, 160px);
  height:auto;
  aspect-ratio:1 / 1;
  margin:clamp(10px, 1.4vw, 16px) 0 clamp(10px, 1.4vw, 16px) clamp(10px, 1.4vw, 16px);
  padding:clamp(7px, 1vw, 12px);
}
.post-card.mv-product-card .post-thumbnail img{object-fit:contain}
@media(max-width:782px){
  .post-card.mv-product-card .post-card-link{min-height:0}
  .post-card.mv-product-card .post-thumbnail{
    flex:0 1 clamp(72px, 23vw, 116px);
    width:clamp(72px, 23vw, 116px);
    height:auto;
    aspect-ratio:1 / 1;
    margin:clamp(8px, 2.5vw, 12px) 0 clamp(8px, 2.5vw, 12px) clamp(8px, 2.5vw, 12px);
    padding:clamp(6px, 1.8vw, 10px);
  }
  .post-card.mv-product-card .post-card-body{padding:clamp(10px, 3vw, 15px)}
}

/* 3.0.9: product image fills its responsive inner frame, not the whole card. */
.post-card.mv-product-card .post-thumbnail {padding:0;}
.post-card.mv-product-card .post-thumbnail img {width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit;}

/* 3.0.10: product-only information hierarchy; preserve theme appearance. */
.post-card.mv-product-card .post-card-body{justify-content:flex-start;align-self:stretch;}
.post-card.mv-product-card .post-title{margin-top:0;}
.post-card.mv-product-card .mv-shop-card-summary{font-size:12px;line-height:1.55;color:var(--vision-muted);margin-top:7px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;}
.post-card.mv-product-card .mv-shop-card-details{margin-top:auto;padding-top:10px;display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:nowrap;gap:8px;}
.post-card.mv-product-card .mv-shop-card-values{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0;}
.post-card.mv-product-card .mv-shop-card-delivery{font-size:11px;line-height:1.3;color:var(--vision-muted);}
.post-card.mv-product-card .mv-shop-card-marker{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;align-self:flex-end;color:var(--vision-muted);font-size:0;}
.post-card.mv-product-card .mv-shop-card-marker svg{width:clamp(21px,2vw,27px);height:clamp(21px,2vw,27px);stroke:currentColor;}
@media(max-width:782px){
.post-card.mv-product-card .mv-shop-card-summary{font-size:11px;margin-top:5px;}
.post-card.mv-product-card .mv-shop-card-details{padding-top:7px;}
.post-card.mv-product-card .mv-shop-card-marker svg{width:23px;height:23px;}
}

/* 3.0.11: paired image and content frames; product cards only. */
.post-card.mv-product-card .post-card-link{
  --mv-product-gap:clamp(8px,1.4vw,14px);
  padding:var(--mv-product-gap);
  gap:var(--mv-product-gap);
  align-items:stretch;
}
.post-card.mv-product-card .post-thumbnail{
  flex:0 0 clamp(100px,13vw,156px);
  width:clamp(100px,13vw,156px);
  height:auto;
  aspect-ratio:1 / 1;
  align-self:stretch;
  margin:0;
  min-height:0;
  border-radius:clamp(10px,1.3vw,14px);
  overflow:hidden;
  background:var(--vision-surface);
  border:1px solid var(--vision-line);
}
.post-card.mv-product-card .post-thumbnail img{
  width:100%;height:100%;object-fit:cover;object-position:center;
}
.post-card.mv-product-card .post-card-body{
  flex:1 1 0;
  min-width:0;
  min-height:clamp(100px,13vw,156px);
  padding:clamp(10px,1.5vw,16px);
  border:1px solid var(--vision-line);
  border-radius:clamp(10px,1.3vw,14px);
  background:var(--vision-surface);
  justify-content:flex-start;
}
.post-card.mv-product-card .mv-shop-card-marker{color:var(--vision-secondary);opacity:1;visibility:visible;}
.post-card.mv-product-card .mv-shop-card-marker svg{display:block;width:clamp(23px,2.4vw,29px);height:clamp(23px,2.4vw,29px);stroke:currentColor;fill:none;opacity:1;}
@media(max-width:782px){
  .post-card.mv-product-card .post-card-link{--mv-product-gap:clamp(7px,2.3vw,11px);}
  .post-card.mv-product-card .post-thumbnail{flex-basis:clamp(84px,27vw,118px);width:clamp(84px,27vw,118px);}
  .post-card.mv-product-card .post-card-body{min-height:clamp(84px,27vw,118px);padding:clamp(8px,2.6vw,12px);}
  .post-card.mv-product-card .mv-shop-card-marker svg{width:24px;height:24px;}
}

/* 3.0.12: The theme's --vision-surface can be light under dark presets.
   Keep the information frame transparent so it inherits the parent card's
   active preset surface and readable text colors. Do not modify palettes. */
.post-card.mv-product-card .post-card-body {
  background: transparent;
  color: inherit;
  border-color: var(--vision-line);
}
.post-card.mv-product-card .post-title,
.post-card.mv-product-card .mv-shop-card-price { color: var(--vision-text); }
.post-card.mv-product-card .mv-shop-card-summary,
.post-card.mv-product-card .mv-shop-card-delivery,
.post-card.mv-product-card .mv-shop-card-marker { color: var(--vision-secondary); }

/* 3.0.13: Compact stock / delivery / up to four custom tags above price. */
.post-card.mv-product-card .mv-shop-card-values{display:flex;flex-direction:column;gap:7px;min-width:0;flex:1 1 auto;}
.post-card.mv-product-card .mv-shop-card-status{display:flex;flex-wrap:wrap;align-items:center;gap:3px 9px;min-width:0;line-height:1.4;}
.post-card.mv-product-card .mv-shop-card-stock,
.post-card.mv-product-card .mv-shop-card-tag{font-size:11px;color:var(--vision-secondary);font-weight:400;overflow-wrap:anywhere;}
.post-card.mv-product-card .mv-shop-card-delivery{font-size:11px;line-height:1.4;}
.post-card.mv-product-card .mv-shop-card-price{font-size:clamp(15px,1.5vw,18px);line-height:1.3;}
@media(max-width:782px){
  .post-card.mv-product-card .mv-shop-card-values{gap:5px;}
  .post-card.mv-product-card .mv-shop-card-status{gap:2px 7px;}
  .post-card.mv-product-card .mv-shop-card-stock,
  .post-card.mv-product-card .mv-shop-card-tag,
  .post-card.mv-product-card .mv-shop-card-delivery{font-size:10px;}
  .post-card.mv-product-card .mv-shop-card-price{font-size:15px;}
}

/* 3.0.14: product detail panel inherits its actual surrounding surface.
   Avoid --vision-surface, which can be light in dark appearance presets. */
body.single-meow_product .mv-shop-detail {
  box-sizing:border-box;
  margin-top:clamp(20px,3vw,30px);
  padding:clamp(16px,3vw,24px);
  border:1px solid var(--vision-line, rgba(128,128,128,.25));
  border-radius:var(--vision-radius-md,18px);
  background:transparent;
  color:inherit;
  box-shadow:none;
}
body.single-meow_product .mv-shop-detail-price {
  font-size:clamp(24px,4vw,32px);
  font-weight:750;
  line-height:1.25;
  color:var(--vision-text,inherit);
  font-variant-numeric:tabular-nums;
}
body.single-meow_product .mv-shop-detail-status {
  display:flex; flex-wrap:wrap; align-items:center;
  gap:6px 14px; margin-top:12px;
  color:var(--vision-secondary,inherit);
  font-size:clamp(12px,2vw,14px); line-height:1.6;
}
body.single-meow_product .mv-shop-detail-note {
  margin:16px 0 0;
  padding-top:12px;
  border-top:1px solid var(--vision-line,rgba(128,128,128,.25));
  font-size:12px;
  color:var(--vision-secondary,inherit);
  line-height:1.6;
}


/* 3.0.16: subtle product marker animation; the entire card remains the link. */
.post-card.mv-product-card .mv-shop-card-marker svg {
  transform-origin:50% 70%;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .28s ease;
  will-change:transform;
}
@media (hover:hover) and (pointer:fine) {
  .post-card.mv-product-card .post-card-link:hover .mv-shop-card-marker svg {
    animation:mv-shop-cart-nudge .48s ease-out both;
  }
}
.post-card.mv-product-card .post-card-link:active .mv-shop-card-marker svg {
  transform:translateY(-2px) rotate(-7deg) scale(1.08);
}
@keyframes mv-shop-cart-nudge {
  0% {transform:translateY(0) rotate(0)}
  40% {transform:translateY(-3px) rotate(-8deg)}
  70% {transform:translateY(-1px) rotate(3deg)}
  100% {transform:translateY(0) rotate(0)}
}
@media (prefers-reduced-motion:reduce) {
  .post-card.mv-product-card .mv-shop-card-marker svg {animation:none!important;transition:none!important;transform:none!important}
}

/* Shop archive controls: inherit the existing Meow theme surface and text palette. */
.mv-shop-hub-head{margin-bottom:22px}
.mv-shop-hub-head h1{margin:0 0 16px}
.mv-shop-hub-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 12px}
.mv-shop-search{display:flex;align-items:center;flex:1 1 240px;min-width:0;gap:8px}
.mv-shop-search input{min-width:0;flex:1;border:1px solid var(--vision-border,rgba(128,128,128,.3));border-radius:12px;background:transparent;color:var(--vision-text);font:inherit;padding:11px 12px}
.mv-shop-search button,.mv-shop-order-toggle{border:1px solid var(--vision-border,rgba(128,128,128,.3));border-radius:12px;background:transparent;color:var(--vision-text);font:inherit;padding:11px 14px;cursor:pointer;text-decoration:none}
.mv-shop-search button:hover,.mv-shop-order-toggle:hover{opacity:.75}
.mv-shop-order-panel{border:1px solid var(--vision-border,rgba(128,128,128,.3));border-radius:14px;padding:16px;margin:0 0 18px;color:var(--vision-text)}
.mv-shop-order-panel p{margin:0;color:var(--vision-muted,var(--vision-text));opacity:.75}
.mv-shop-hub-count{opacity:.7;margin:0 0 16px}
@media(max-width:600px){.mv-shop-hub-tools{align-items:stretch;flex-direction:column}.mv-shop-search,.mv-shop-order-toggle{width:100%;box-sizing:border-box}.mv-shop-search{flex-basis:auto}}

/* 3.0.18: compact shop controls only; no global theme appearance changes. */
.mv-shop-hub .mv-shop-hub-head h1{margin-bottom:12px}
.mv-shop-hub .mv-shop-hub-tools{display:flex;flex-wrap:nowrap;align-items:stretch;gap:8px;margin-bottom:12px}
.mv-shop-hub .mv-shop-search{display:flex;flex:1 1 auto;min-width:0;width:auto;gap:6px}
.mv-shop-hub .mv-shop-search input{flex:1 1 auto;width:0;min-width:0;height:38px;padding:7px 10px;border-radius:10px;font-size:14px;box-sizing:border-box}
.mv-shop-hub .mv-shop-search button{flex:0 0 38px;width:38px;height:38px;padding:9px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;box-sizing:border-box}
.mv-shop-hub .mv-shop-search button svg,.mv-shop-hub .mv-shop-order-toggle svg{width:18px;height:18px;display:block}
.mv-shop-hub .mv-shop-order-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:0 0 auto;width:auto;height:38px;padding:7px 10px;border-radius:10px;box-sizing:border-box;font-size:13px;white-space:nowrap}
.mv-shop-hub .mv-shop-order-panel{padding:10px 12px;margin-bottom:14px;border-radius:10px;font-size:13px}
@media(max-width:600px){.mv-shop-hub .mv-shop-hub-tools{flex-direction:row;align-items:stretch;gap:6px}.mv-shop-hub .mv-shop-search{flex:1 1 auto;width:auto;min-width:0}.mv-shop-hub .mv-shop-order-toggle{width:auto;flex:0 0 auto;padding-inline:8px}.mv-shop-hub .mv-shop-search input{font-size:14px}}

/* 3.0.19: icon only in shop archive heading. */
.mv-shop-hub .mv-shop-title{display:flex;align-items:center;gap:.45em}
.mv-shop-hub .mv-shop-title-icon{width:.9em;height:.9em;flex:none;color:inherit}


/* 3.0.20: Put the search action INSIDE its input boundary. */
.mv-shop-hub .mv-shop-search{position:relative;display:flex;align-items:center;gap:0;}
.mv-shop-hub .mv-shop-search input{width:100%;flex:1 1 auto;padding-right:48px;}
.mv-shop-hub .mv-shop-search button{
  position:absolute;right:3px;top:50%;transform:translateY(-50%);
  width:32px;height:32px;min-width:32px;flex:none;padding:7px;
  border:0;border-radius:8px;background:transparent;color:var(--vision-secondary);
  display:inline-flex;align-items:center;justify-content:center;
}
.mv-shop-hub .mv-shop-search button:hover{background:rgba(128,128,128,.12);opacity:1;}
.mv-shop-hub .mv-shop-search button:focus-visible{outline:2px solid var(--vision-accent);outline-offset:0;}

/* Desktop/tablet: keep Meow's article cards untouched, but make products
   self-contained square tiles so horizontal products cannot stretch article cards. */
@media (min-width:861px){
  .posts-list{align-items:start;}
  .posts-list > .post-card{align-self:start;}
  .posts-list > .post-card:not(.mv-product-card) .post-card-link{height:auto;}
  .posts-list > .post-card.mv-product-card,
  .posts-list > .post-card.mv-product-card:nth-child(5n+1),
  .posts-list > .post-card.mv-product-card:nth-child(5n+2){
    grid-column:span 4;aspect-ratio:1 / 1;min-width:0;min-height:0;
  }
  .posts-list > .post-card.mv-product-card .post-card-link{
    box-sizing:border-box;display:flex;flex-direction:column;
    width:100%;height:100%;min-height:0;gap:9px;padding:10px;
  }
  .posts-list > .post-card.mv-product-card .post-thumbnail{
    box-sizing:border-box;display:block;flex:0 0 43%;
    width:100%;height:43%;min-height:0;max-height:43%;margin:0;
    aspect-ratio:auto;border-radius:10px;overflow:hidden;
  }
  .posts-list > .post-card.mv-product-card .post-thumbnail img{
    width:100%;height:100%;object-fit:cover;
  }
  .posts-list > .post-card.mv-product-card .post-card-body{
    box-sizing:border-box;display:flex;flex:1 1 0;
    min-width:0;min-height:0;height:auto;padding:clamp(8px,1vw,13px);
    overflow:hidden;align-self:stretch;
  }
  .posts-list > .post-card.mv-product-card .post-title{font-size:clamp(14px,1.35vw,18px);line-height:1.3;}
  .posts-list > .post-card.mv-product-card .mv-shop-card-summary{
    margin-top:3px;font-size:11px;line-height:1.4;-webkit-line-clamp:1;
  }
  .posts-list > .post-card.mv-product-card .mv-shop-card-details{padding-top:4px;gap:5px;}
  .posts-list > .post-card.mv-product-card .mv-shop-card-values{gap:3px;}
  .posts-list > .post-card.mv-product-card .mv-shop-card-status{
    max-height:2.8em;overflow:hidden;gap:1px 6px;font-size:10px;
  }
  .posts-list > .post-card.mv-product-card .mv-shop-card-stock,
  .posts-list > .post-card.mv-product-card .mv-shop-card-tag,
  .posts-list > .post-card.mv-product-card .mv-shop-card-delivery{font-size:10px;line-height:1.3;}
  .posts-list > .post-card.mv-product-card .mv-shop-card-price{font-size:clamp(14px,1.4vw,18px);}
  .posts-list > .post-card.mv-product-card .mv-shop-card-marker svg{width:23px;height:23px;}
}
/* At smaller tablets, two square product tiles per row provide legible text. */
@media (min-width:861px) and (max-width:1100px){
  .posts-list > .post-card.mv-product-card,
  .posts-list > .post-card.mv-product-card:nth-child(5n+1),
  .posts-list > .post-card.mv-product-card:nth-child(5n+2){grid-column:span 6;}
}
/* 860px and below: keep the previously approved horizontal mobile layout. */

/* 3.0.21: dedicated shop grid. Homepage mixed article layout is unchanged. */
@media (min-width:861px){
  .mv-shop-hub > .posts-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.5vw,22px);align-items:start;}
  .mv-shop-hub > .posts-list > .post-card.mv-product-card,
  .mv-shop-hub > .posts-list > .post-card.mv-product-card:nth-child(5n+1),
  .mv-shop-hub > .posts-list > .post-card.mv-product-card:nth-child(5n+2){grid-column:auto;aspect-ratio:1 / 1;width:100%;min-width:0;}
}
@media (min-width:861px) and (max-width:1100px){
  .mv-shop-hub > .posts-list{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* 3.0.23: Homepage-only mixed-feed masonry. A tiny grid-row unit lets each
   article and product occupy its intrinsic height instead of sharing the
   tallest card's row. JS measures and sets row spans, preserving DOM order. */
@media (min-width:1201px) {
  .posts-list.mv-home-mixed-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:start;
    grid-auto-flow:row;
    column-gap:22px;
  }
  .posts-list.mv-home-mixed-grid > .post-card,
  .posts-list.mv-home-mixed-grid > .post-card:nth-child(5n+1),
  .posts-list.mv-home-mixed-grid > .post-card:nth-child(5n+2) {
    grid-column:span 1;
    align-self:start;
    min-width:0;
  }
  .posts-list.mv-home-mixed-grid > .post-card:not(.mv-product-card) {
    height:auto;
    aspect-ratio:auto;
  }
  .posts-list.mv-home-mixed-grid > .post-card:not(.mv-product-card) .post-card-link {
    height:auto;
    min-height:0;
  }
  .posts-list.mv-home-mixed-grid > .post-card:not(.mv-product-card) .post-card-body {
    flex:0 0 auto;
  }
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card {
    aspect-ratio:1 / 1;
  }
  /* Enabled only after script initializes; non-JS fallback stays a regular grid. */
  .posts-list.mv-home-mixed-grid.mv-masonry-ready {
    grid-auto-rows:8px;
    row-gap:8px;
  }
}

/* 3.0.24: Restore horizontal product cards ONLY on the large-screen
   homepage. Shop archive retains its square multi-column product tiles. */
@media (min-width:861px) {
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card {
    aspect-ratio:auto;
    height:auto;
    min-height:0;
  }
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card .post-card-link {
    display:flex;
    flex-direction:row;
    align-items:stretch;
    width:100%;
    height:auto;
    min-height:0;
    gap:clamp(8px,1.4vw,14px);
    padding:clamp(8px,1.4vw,14px);
  }
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card .post-thumbnail {
    display:block;
    flex:0 0 clamp(100px,13vw,156px);
    width:clamp(100px,13vw,156px);
    height:auto;
    max-height:none;
    min-height:0;
    align-self:stretch;
    aspect-ratio:1 / 1;
    margin:0;
  }
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card .post-card-body {
    flex:1 1 0;
    height:auto;
    min-height:clamp(100px,13vw,156px);
    overflow:visible;
    padding:clamp(10px,1.5vw,16px);
  }
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card .mv-shop-card-summary {
    -webkit-line-clamp:2;
  }
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card .mv-shop-card-status {
    max-height:none;
    overflow:visible;
  }
}

/* 3.0.25: Tablet/landscape homepage safeguard.
   Keep shop archive untouched; avoid 12-column fallback when home-specific
   masonry class is missing. Only adjust the feed grid, not article styling. */
@media (min-width: 861px) and (max-width: 1200px) {
  body.home .site-main > .posts-list,
  body.blog .site-main > .posts-list,
  .posts-list.mv-home-mixed-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:auto;
    grid-auto-flow:row;
    align-items:start;
    gap:clamp(12px,2vw,22px);
  }
  body.home .site-main > .posts-list > .post-card,
  body.blog .site-main > .posts-list > .post-card,
  .posts-list.mv-home-mixed-grid > .post-card {
    grid-column:span 1;
    grid-row:auto;
    min-width:0;
    align-self:start;
  }
  body.home .site-main > .posts-list > .post-card:not(.mv-product-card) .post-card-link,
  body.blog .site-main > .posts-list > .post-card:not(.mv-product-card) .post-card-link {
    height:auto;
  }
}
@media (max-width: 860px) {
  body.home .site-main > .posts-list,
  body.blog .site-main > .posts-list,
  .posts-list.mv-home-mixed-grid {
    grid-template-columns:minmax(0,1fr);
    grid-auto-rows:auto;
  }
  body.home .site-main > .posts-list > .post-card,
  body.blog .site-main > .posts-list > .post-card,
  .posts-list.mv-home-mixed-grid > .post-card {
    grid-column:auto;
    grid-row:auto;
    min-width:0;
  }
}

/* 3.0.26: SHOP ARCHIVE ONLY. Square tiles are image-first (80/20).
   The home feed and mobile horizontal product cards are untouched. */
@media (min-width:861px) {
  .mv-shop-hub > .posts-list > .post-card.mv-product-card {
    aspect-ratio:1 / 1;
    overflow:hidden;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card > .post-card-link {
    display:grid;
    grid-template-rows:minmax(0,4fr) minmax(0,1fr);
    grid-template-columns:minmax(0,1fr);
    gap:0;
    padding:clamp(7px,.8vw,11px);
    height:100%;
    min-height:0;
    box-sizing:border-box;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-thumbnail {
    display:block;
    width:100%;
    height:100%;
    min-height:0;
    max-height:none;
    flex:none;
    aspect-ratio:auto;
    margin:0;
    border-radius:10px 10px 7px 7px;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-thumbnail img {
    width:100%;height:100%;object-fit:cover;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-card-body {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    align-self:stretch;
    width:100%;
    height:100%;
    min-height:0;
    padding:clamp(4px,.55vw,8px) clamp(5px,.7vw,10px);
    gap:2px 7px;
    box-sizing:border-box;
    overflow:hidden;
    border-radius:0 0 9px 9px;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-title {
    flex:1 1 100%;
    min-width:0;
    margin:0;
    font-size:clamp(12px,1.12vw,16px);
    line-height:1.15;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-summary,
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-status {
    display:none;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-details {
    display:flex;
    flex:1 1 100%;
    min-width:0;
    align-items:center;
    justify-content:space-between;
    margin:0;
    padding:0;
    gap:6px;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-values {
    min-width:0;gap:0;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-price {
    font-size:clamp(13px,1.3vw,18px);
    line-height:1.15;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-marker svg {
    width:clamp(18px,1.65vw,24px);
    height:clamp(18px,1.65vw,24px);
  }
}

/* 3.0.27: Separate framed image and framed info areas on shop tiles only.
   Image frame occupies four fifths of the inner square's usable height;
   product image fills its own frame, never the outer card. */
@media (min-width:861px) {
  .mv-shop-hub > .posts-list > .post-card.mv-product-card > .post-card-link {
    gap:clamp(5px,.55vw,9px);
    grid-template-rows:minmax(0,4fr) minmax(0,1fr);
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-thumbnail {
    box-sizing:border-box;
    overflow:hidden;
    border:1px solid var(--vision-line);
    border-radius:clamp(9px,1vw,14px);
    background:transparent;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-thumbnail img {
    display:block;
    width:100%;height:100%;object-fit:cover;object-position:center;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-card-body {
    box-sizing:border-box;
    border:1px solid var(--vision-line);
    border-radius:clamp(8px,.9vw,12px);
    background:transparent;
    color:inherit;
  }
}

/* 3.0.28: Shop-only fluid square cards. Never change the blog layout or
   mobile horizontal cards. The 4:1 image/info grid and both inner frames stay. */
@media (min-width:861px) {
  main.site-main.mv-shop-hub {
    width:min(100% - 48px, 1660px);
    max-width:none;
  }
  .mv-shop-hub > .posts-list {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:clamp(14px,1.4vw,26px);
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card {
    container-type:inline-size;
    min-width:0;
    aspect-ratio:1;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card > .post-card-link {
    padding:clamp(8px,2.2cqw,17px);
    gap:clamp(5px,1.5cqw,11px);
    grid-template-rows:minmax(0,4fr) minmax(0,1fr);
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-thumbnail {
    border-radius:clamp(9px,3cqw,18px);
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-card-body {
    border-radius:clamp(8px,2.5cqw,16px);
    padding:clamp(5px,1.8cqw,13px) clamp(7px,2.2cqw,16px);
    gap:clamp(2px,.8cqw,6px) clamp(5px,1.5cqw,11px);
    align-content:center;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-title {
    font-size:clamp(13px,3.5cqw,21px);
    line-height:1.22;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-details {
    gap:clamp(5px,1.4cqw,10px);
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-price {
    font-size:clamp(14px,3.8cqw,23px);
    line-height:1.2;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-marker svg {
    width:clamp(19px,5.5cqw,32px);
    height:clamp(19px,5.5cqw,32px);
  }
  /* The bigger square supplies room for a second title line and useful
     status data; do not shrink fonts to force all custom tags into view. */
  @container (min-width:410px) {
    .post-title {
      white-space:normal;
      display:-webkit-box;
      -webkit-box-orient:vertical;
      -webkit-line-clamp:2;
      line-clamp:2;
    }
    .mv-shop-card-status {
      display:flex;
      flex-wrap:nowrap;
      overflow:hidden;
      gap:clamp(5px,1.5cqw,10px);
      white-space:nowrap;
    }
    .mv-shop-card-status > * {
      flex:0 1 auto;
      min-width:0;
      overflow:hidden;
      text-overflow:ellipsis;
      white-space:nowrap;
      font-size:clamp(10px,2.5cqw,13px);
    }
  }
}
@media (min-width:861px) and (max-width:1200px) {
  .mv-shop-hub > .posts-list {grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* 3.0.29: Shop archive square cards only: framed 70% image / 30% info.
   Override the earlier shop-only display:none rule with equal or higher
   specificity; make the expanded space actually reveal product metadata. */
@media (min-width:861px) {
  .mv-shop-hub > .posts-list > .post-card.mv-product-card > .post-card-link {
    grid-template-rows:minmax(0,7fr) minmax(0,3fr);
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-card-body {
    position:relative;
    display:flex;
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:stretch;
    justify-content:space-between;
    align-content:normal;
    gap:clamp(3px,0.8cqw,7px);
    padding:clamp(7px,1.9cqw,14px) clamp(9px,2.2cqw,17px);
    overflow:hidden;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-title {
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
    white-space:normal;
    overflow:hidden;
    text-overflow:ellipsis;
    flex:0 0 auto;
    min-width:0;
    line-height:1.2;
    font-size:clamp(13px,3.2cqw,20px);
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-details {
    display:flex;
    flex:1 1 auto;
    min-height:0;
    flex-direction:column;
    align-items:stretch;
    justify-content:space-between;
    gap:clamp(3px,0.8cqw,7px);
    padding:0;
    margin:0;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-values {
    display:flex;
    flex:1 1 auto;
    min-height:0;
    flex-direction:column;
    gap:0;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-status {
    display:flex;
    flex-wrap:wrap;
    flex-direction:row;
    align-content:start;
    align-items:center;
    gap:clamp(2px,.5cqw,5px) clamp(5px,1.5cqw,11px);
    overflow:hidden;
    max-height:100%;
    white-space:normal;
    line-height:1.25;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-status > * {
    flex:0 1 auto;
    min-width:0;
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:clamp(10px,2.45cqw,13px);
    line-height:1.3;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-price {
    flex:0 0 auto;
    padding-right:clamp(26px,6cqw,42px);
    font-size:clamp(15px,3.8cqw,23px);
    line-height:1.2;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-marker {
    position:absolute;
    right:clamp(9px,2.2cqw,17px);
    bottom:clamp(7px,1.9cqw,14px);
    margin:0;
    flex:none;
  }
}

/* 3.0.30: Shop-only balanced 80/20 square cards. Keep product typography
   readable; optional metadata belongs on the product detail page. */
@media (min-width:861px) {
  .mv-shop-hub > .posts-list > .post-card.mv-product-card > .post-card-link {
    grid-template-rows:minmax(0,4fr) minmax(0,1fr);
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-card-body {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:space-between;
    gap:clamp(2px,.6cqw,5px);
    padding:clamp(6px,1.6cqw,11px) clamp(9px,2.3cqw,16px);
    overflow:hidden;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-title {
    display:block;
    flex:0 1 auto;
    min-height:0;
    margin:0;
    font-size:clamp(15px,4.1cqw,23px);
    line-height:1.2;
    font-weight:600;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-summary,
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-status {
    display:none;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-details {
    display:flex;
    flex:0 0 auto;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    min-height:0;
    margin:0;
    padding:0;
    gap:8px;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-values {
    display:flex;
    flex:1 1 auto;
    min-width:0;
    min-height:0;
    justify-content:center;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-price {
    padding:0;
    font-size:clamp(16px,4.5cqw,26px);
    line-height:1.15;
    font-weight:650;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-marker {
    position:static;
    display:inline-flex;
    align-self:center;
    flex:0 0 auto;
    margin:0;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-marker svg {
    width:clamp(21px,5.5cqw,32px);
    height:clamp(21px,5.5cqw,32px);
  }
}

/* 3.0.31 — Product details only: feature image precedes the single title.
   Desktop and tablet title typography remains unchanged. */
body.single-meow_product .entry-cover:first-child {
  margin-top: clamp(18px, 3vw, 28px);
}
body.single-meow_product .entry-cover + .entry-header {
  padding-top: clamp(18px, 3vw, 30px);
}
@media (max-width: 600px) {
  body.single-meow_product .entry-header .post-title {
    font-size: clamp(22px, 5.8vw, 26px);
    line-height: 1.22;
  }
  body.single-meow_product .entry-cover + .entry-header {
    padding-top: 18px;
  }
}

/* 3.0.34: Square cards on the shop archive only at tablet/landscape widths.
   Homepage products and ordinary article grid are not targeted. */
@media (min-width:700px) and (max-width:1200px),
       (orientation:landscape) and (min-width:600px) and (max-width:699px) {
  .mv-shop-hub > .posts-list {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:clamp(12px,2vw,22px);
    grid-auto-rows:auto;
    grid-auto-flow:row;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card,
  .mv-shop-hub > .posts-list > .post-card.mv-product-card:nth-child(5n+1),
  .mv-shop-hub > .posts-list > .post-card.mv-product-card:nth-child(5n+2) {
    grid-column:span 1;
  }
  /* Framed 80/20 squares exclusively in the shop. */
  .mv-shop-hub > .posts-list > .post-card.mv-product-card {
    aspect-ratio:1 / 1;
    width:100%;
    min-width:0;
    min-height:0;
    height:auto;
    overflow:hidden;
    container-type:inline-size;
    align-self:start;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card > .post-card-link {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:minmax(0,4fr) minmax(0,1fr);
    padding:clamp(7px,2.1cqw,14px);
    gap:clamp(5px,1.5cqw,10px);
    width:100%;height:100%;min-height:0;
    align-items:stretch;
    box-sizing:border-box;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-thumbnail {
    display:block;
    flex:none;
    width:100%;height:100%;min-height:0;max-height:none;
    aspect-ratio:auto;
    margin:0;padding:0;
    overflow:hidden;
    border:1px solid var(--vision-line);
    border-radius:clamp(9px,3cqw,16px);
    background:transparent;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-thumbnail img {
    display:block;width:100%;height:100%;max-width:none;max-height:none;
    object-fit:cover;object-position:center;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-card-body {
    display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;
    flex:none;align-self:stretch;
    width:100%;height:100%;min-height:0;
    padding:clamp(5px,1.6cqw,10px) clamp(7px,2.2cqw,13px);
    gap:clamp(2px,.5cqw,5px);
    overflow:hidden;
    border:1px solid var(--vision-line);
    border-radius:clamp(8px,2.5cqw,14px);
    background:transparent;
    box-sizing:border-box;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .post-title {
    display:block;flex:0 1 auto;min-height:0;
    margin:0;padding:0;
    font-size:clamp(13px,4.2cqw,20px);line-height:1.18;font-weight:600;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-summary,
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-status {
    display:none;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-details {
    display:flex;flex:0 0 auto;flex-direction:row;align-items:center;
    justify-content:space-between;min-height:0;
    margin:0;padding:0;gap:6px;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-values {
    display:flex;flex:1 1 auto;min-width:0;min-height:0;
    justify-content:center;gap:0;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-price {
    padding:0;font-size:clamp(15px,4.6cqw,24px);line-height:1.12;font-weight:650;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-marker {
    position:static;display:inline-flex;flex:none;align-self:center;
    margin:0;padding:0;
  }
  .mv-shop-hub > .posts-list > .post-card.mv-product-card .mv-shop-card-marker svg {
    width:clamp(20px,5.5cqw,29px);height:clamp(20px,5.5cqw,29px);
  }
}
/* Short landscape phones: two columns would make cards too narrow.
   Use a single, well-sized square per row, with ordinary articles unchanged. */
@media (orientation:landscape) and (min-width:600px) and (max-width:699px) {
  .mv-shop-hub > .posts-list {
    grid-template-columns:minmax(0,1fr);
  }
}

/* 3.0.33 — Desktop/large-screen home products stay horizontal.
   Square 80/20 product cards remain exclusive to the shop on desktop.
   Tablet/landscape rules below 1201px from 3.0.32 are unchanged. */
@media (min-width:1201px) {
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card {
    aspect-ratio:auto;
    height:auto;
    min-height:0;
  }
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .post-card-link {
    display:flex;
    flex-direction:row;
    grid-template-columns:none;
    grid-template-rows:none;
    align-items:stretch;
    width:100%;
    height:auto;
    min-height:0;
    padding:clamp(8px,1.4vw,14px);
    gap:clamp(8px,1.4vw,14px);
  }
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card .post-thumbnail {
    flex:0 0 clamp(100px,13vw,156px);
    width:clamp(100px,13vw,156px);
    height:auto;
    min-height:0;
    align-self:stretch;
    aspect-ratio:1 / 1;
  }
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card .post-card-body {
    flex:1 1 0;
    width:auto;
    height:auto;
    min-height:clamp(100px,13vw,156px);
    overflow:visible;
    padding:clamp(10px,1.5vw,16px);
  }
}

/* 3.0.34: All homepage product cards stay horizontal at every viewport width.
   Only the shop archive uses square cards; no article selectors here. */
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card {
  aspect-ratio:auto;
  height:auto;
  min-height:0;
}
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .post-card-link {
  display:flex;
  flex-direction:row;
  grid-template-columns:none;
  grid-template-rows:none;
  align-items:stretch;
  width:100%;
  height:auto;
  min-height:0;
}
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card .post-thumbnail {
  display:block;
  flex:0 0 clamp(84px, 22vw, 156px);
  width:clamp(84px, 22vw, 156px);
  height:auto;
  min-height:0;
  max-height:none;
  align-self:stretch;
  aspect-ratio:1 / 1;
}
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card .post-card-body {
  flex:1 1 0;
  width:auto;
  height:auto;
  min-height:clamp(84px, 22vw, 156px);
  overflow:visible;
}

/* 3.0.35 — Two-column homepage feed for landscape phones, tablets and
   unfolded devices. Scoped to the home feed: shop grid and article card
   presentation remain unchanged. Portrait phones retain one column. */
@media (min-width:700px) and (max-width:1200px),
       (orientation:landscape) and (min-width:600px) and (max-width:699px) {
  body.home .site-main > .posts-list,
  body.blog .site-main > .posts-list,
  .posts-list.mv-home-mixed-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:auto;
    grid-auto-flow:row;
    gap:clamp(12px,2vw,22px);
    align-items:start;
  }
  body.home .site-main > .posts-list > .post-card,
  body.home .site-main > .posts-list > .post-card:nth-child(5n+1),
  body.home .site-main > .posts-list > .post-card:nth-child(5n+2),
  body.blog .site-main > .posts-list > .post-card,
  body.blog .site-main > .posts-list > .post-card:nth-child(5n+1),
  body.blog .site-main > .posts-list > .post-card:nth-child(5n+2),
  .posts-list.mv-home-mixed-grid > .post-card,
  .posts-list.mv-home-mixed-grid > .post-card:nth-child(5n+1),
  .posts-list.mv-home-mixed-grid > .post-card:nth-child(5n+2) {
    grid-column:span 1;
    grid-row:auto;
    min-width:0;
    align-self:start;
  }
}

/* 3.0.36 — Content-height-aware homepage masonry across two-column viewports.
   Keep article typography, images and card content intrinsic. Never target shop.
   JS assigns per-card row spans only when the grid has two columns. */
@media (min-width:700px),
       (orientation:landscape) and (min-width:600px) and (max-width:699px) {
  .posts-list.mv-home-mixed-grid.mv-masonry-ready {
    grid-auto-rows:8px;
    row-gap:8px;
    grid-auto-flow:row;
    align-items:start;
  }
  .posts-list.mv-home-mixed-grid > .post-card:not(.mv-product-card) {
    height:auto;
    aspect-ratio:auto;
    align-self:start;
  }
  .posts-list.mv-home-mixed-grid > .post-card:not(.mv-product-card) > .post-card-link {
    height:auto;
    min-height:0;
  }
  .posts-list.mv-home-mixed-grid > .post-card:not(.mv-product-card) .post-card-body {
    flex:0 0 auto;
  }
}

/* 3.0.37 — Homepage horizontal product image frame uses a larger share of
   available card width. Only the mixed home feed is targeted; shop tiles,
   article cards and masonry positioning remain untouched. */
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .post-card-link > .post-thumbnail {
  flex:0 0 clamp(120px, 42%, 250px);
  width:clamp(120px, 42%, 250px);
  max-width:42%;
  min-width:0;
}
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .post-card-link > .post-card-body {
  flex:1 1 0;
  min-width:0;
}
/* Keep enough space for the title and price in compact two-column views. */
@media (min-width:600px) and (max-width:900px) {
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .post-card-link > .post-thumbnail {
    flex-basis:38%;
    width:38%;
    max-width:38%;
  }
}

/* 3.0.38 — Homepage-only horizontal product image alignment.
   The enlarged image WIDTH must not force a taller card on portrait phones.
   On two-column and desktop layouts the image and content frames stretch
   together to the intrinsic content height, without square aspect constraints.
   The shop archive and ordinary article cards are intentionally excluded. */
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .post-card-link {
  align-items:stretch;
}
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .post-card-link > .post-thumbnail {
  position:relative;
  aspect-ratio:auto;
  height:auto;
  min-height:0;
  max-height:none;
  align-self:stretch;
  overflow:hidden;
}
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .post-card-link > .post-thumbnail img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .post-card-link > .post-card-body {
  align-self:stretch;
  height:auto;
  min-height:0;
}
/* Portrait phones: widen the image only; retain its previous compact height.
   The image can be a landscape rectangle rather than an enforced square. */
@media (max-width:599px) and (orientation:portrait) {
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .post-card-link > .post-thumbnail {
    flex:0 0 38%;
    width:38%;
    max-width:38%;
    height:clamp(84px,27vw,118px);
    min-height:0;
    align-self:center;
  }
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .post-card-link > .post-card-body {
    min-height:clamp(84px,27vw,118px);
  }
}

/* 3.0.39: optional quiet triangular corner badge on homepage product cards only. */
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card { position:relative; }
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .mv-shop-corner-badge {
  position:absolute; top:0; right:0; width:clamp(53px,7vw,66px); height:clamp(53px,7vw,66px);
  z-index:3; pointer-events:none; overflow:hidden;
  border-top-right-radius:inherit;
  clip-path:polygon(0 0,100% 0,100% 100%);
  background:var(--mv-shop-badge-bg,rgba(170,176,185,.62)); color:var(--mv-shop-badge-text,#39434d);
}
.posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .mv-shop-corner-badge > span {
  position:absolute; top:27%; left:35%; transform:rotate(45deg);
  font-size:clamp(9px,1vw,11px); font-weight:750; letter-spacing:.06em; line-height:1;
}
@media (max-width:599px) {
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .mv-shop-corner-badge {width:54px;height:54px;}
  .posts-list.mv-home-mixed-grid > .post-card.mv-product-card > .mv-shop-corner-badge > span {font-size:9px;}
}

/* v3.0.40 — free order form, product detail only */
.mv-free-checkout{margin-top:20px;padding:18px;border:1px solid var(--vision-border,rgba(128,128,128,.2));border-radius:14px}.mv-free-checkout label{display:block;margin:0 0 7px;font-weight:600}.mv-free-checkout input[type=email]{display:block;width:100%;max-width:420px;box-sizing:border-box;padding:11px 13px;border:1px solid #aaa;border-radius:9px;background:transparent;color:inherit}.mv-free-checkout button{margin-top:12px;padding:11px 20px;border:0;border-radius:9px;background:var(--vision-accent,#666);color:#fff;cursor:pointer}.mv-free-checkout small{display:block;margin-top:10px;opacity:.75}.mv-order-result{margin:20px 0;padding:20px;border-radius:12px;border:1px solid rgba(128,128,128,.3)}

/* 3.0.42 — protected delivery receipt */
.mv-delivery-receipt{margin-top:22px;padding:18px;border:1px solid var(--vision-border,rgba(120,120,120,.25));border-radius:14px;background:var(--vision-surface,rgba(240,240,240,.7));overflow-wrap:anywhere}.mv-delivery-receipt pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:1rem;user-select:text}.mv-order-result{max-width:720px;margin:30px auto;padding:24px}

/* 3.0.43: scoped order receipt copy controls */
.mv-delivery-fields{display:grid;gap:12px;margin:16px 0}.mv-delivery-field{padding:13px 15px;border:1px solid rgba(128,128,128,.22);border-radius:12px;background:rgba(128,128,128,.055)}.mv-delivery-field-label{font-size:.85em;opacity:.75;margin-bottom:7px}.mv-delivery-field-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.mv-delivery-field-value{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;flex:1}.mv-delivery-copy{border:1px solid rgba(128,128,128,.3);border-radius:8px;padding:7px 13px;background:transparent;color:inherit;cursor:pointer;flex-shrink:0}.mv-delivery-copy:hover{background:rgba(128,128,128,.12)}.mv-delivery-copy:focus-visible{outline:2px solid currentColor;outline-offset:2px}

/* 3.0.44: Receipt uses the active theme card palette, never the light-only --vision-surface. */
.mv-order-result .mv-delivery-receipt {
  background:var(--vision-card-bg, var(--vision-surface-solid, transparent));
  color:inherit;
  border:1px solid var(--vision-line,rgba(128,128,128,.22));
  border-radius:var(--vision-radius-card,16px);
}
.mv-order-result .mv-delivery-receipt h2,
.mv-order-result .mv-delivery-field-label,
.mv-order-result .mv-delivery-field-value,
.mv-order-result .mv-delivery-receipt p {color:inherit;}
.mv-order-result .mv-delivery-field {background:rgba(128,128,128,.075);border-color:rgba(128,128,128,.2)}
.mv-order-result .mv-delivery-copy {background:rgba(128,128,128,.07);color:inherit;border-color:rgba(128,128,128,.28)}
.mv-order-result .mv-delivery-copy:hover {background:rgba(128,128,128,.17)}
.mv-order-result .mv-receipt-verify {margin-top:20px;padding:18px;border:1px solid var(--vision-line,rgba(128,128,128,.22));border-radius:14px;background:rgba(128,128,128,.06)}
.mv-order-result .mv-receipt-verify label {display:block;margin-bottom:8px;font-weight:600}
.mv-order-result .mv-receipt-verify input[type=email] {display:block;width:100%;max-width:440px;box-sizing:border-box;padding:11px 13px;border:1px solid rgba(128,128,128,.4);border-radius:9px;background:transparent;color:inherit}
.mv-order-result .mv-receipt-verify button {margin-top:12px;padding:10px 18px;border-radius:9px;border:1px solid rgba(128,128,128,.35);background:rgba(128,128,128,.13);color:inherit;cursor:pointer}
.mv-order-result .mv-receipt-verify button:hover {background:rgba(128,128,128,.22)}
.mv-order-result .mv-receipt-error {margin-top:12px;color:inherit;font-weight:600}

/* 3.0.45 Alipay checkout uses the theme surface and form language */
.mv-alipay-checkout,.mv-alipay-payment{margin-top:20px;padding:20px;border:1px solid var(--vision-border,rgba(128,128,128,.2));border-radius:16px;background:var(--vision-surface,transparent);color:inherit}
.mv-alipay-checkout input[type=email]{display:block;width:100%;max-width:440px;margin:10px 0;padding:12px;border-radius:9px}
.mv-alipay-checkout button,.mv-alipay-payment a.mv-alipay-open{display:inline-block;padding:11px 18px;border-radius:9px;background:var(--vision-accent,#777);color:#fff;text-decoration:none;border:0;cursor:pointer}
.mv-alipay-payment .mv-alipay-qr{display:block;width:min(260px,80vw);height:auto;max-width:100%;margin:16px auto;background:white;padding:12px;border-radius:12px}
.mv-alipay-payment .mv-alipay-actions{text-align:center}.mv-alipay-payment .mv-alipay-status{margin-top:15px;text-align:center}

/* 3.0.53 · Product checkout: theme-native modal */
.mv-shop-buy-trigger{display:block;width:100%;margin-top:22px;padding:15px 22px;border:1px solid var(--vision-line,rgba(128,128,128,.3));border-radius:13px;background:var(--vision-text,#222);color:var(--vision-surface-solid,#fff);font:inherit;font-weight:700;cursor:pointer;transition:opacity .2s,transform .2s}
.mv-shop-buy-trigger:hover{opacity:.85;transform:translateY(-1px)}
.mv-checkout-dialog{box-sizing:border-box;width:min(460px,calc(100vw - 32px));max-height:min(88dvh,820px);overflow:auto;margin:auto;padding:clamp(20px,4vw,28px);border:1px solid var(--vision-line,rgba(128,128,128,.3));border-radius:22px;background:var(--vision-surface-solid,#fff);color:var(--vision-text,#222);box-shadow:0 24px 90px rgba(0,0,0,.28)}
.mv-checkout-dialog::backdrop{background:rgba(0,0,0,.66);backdrop-filter:blur(6px)}
.mv-checkout-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.mv-checkout-dialog-head h2{font-size:23px;margin:3px 0 0;line-height:1.25}.mv-checkout-eyebrow{font-size:12px;color:var(--vision-secondary,#888);margin:0}
.mv-checkout-close{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border:1px solid var(--vision-line,rgba(128,128,128,.3));border-radius:11px;background:transparent;color:inherit;font-size:24px;cursor:pointer}
.mv-checkout-summary{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-top:22px;padding:16px 0;border-top:1px solid var(--vision-line,rgba(128,128,128,.2));border-bottom:1px solid var(--vision-line,rgba(128,128,128,.2));font-size:14px}.mv-checkout-summary span{min-width:0;overflow-wrap:anywhere}.mv-checkout-summary strong{font-size:20px;white-space:nowrap}
.mv-checkout-email-note{font-size:12px;line-height:1.7;color:var(--vision-secondary,#888);margin:17px 0 0}
.mv-checkout-dialog .mv-alipay-checkout,.mv-checkout-dialog .mv-free-checkout{background:transparent!important;color:inherit!important;border:0!important;border-radius:0!important;padding:0!important;margin:20px 0 0!important;box-shadow:none!important}
.mv-checkout-dialog .mv-alipay-checkout label,.mv-checkout-dialog .mv-free-checkout label{display:block;font-size:13px;font-weight:600;margin-top:16px}
.mv-checkout-dialog input[type=email]{box-sizing:border-box;width:100%;max-width:none!important;margin:9px 0 0!important;padding:13px 14px;border:1px solid var(--vision-line,rgba(128,128,128,.4));border-radius:11px;background:transparent;color:inherit;font-size:16px}
.mv-checkout-dialog .mv-alipay-checkout button[type=submit],.mv-checkout-dialog .mv-free-checkout button[type=submit]{width:100%;margin-top:22px;padding:14px;border-radius:12px;background:var(--vision-text,#222);color:var(--vision-surface-solid,#fff);border:1px solid var(--vision-line,rgba(128,128,128,.2));font:inherit;font-weight:700;cursor:pointer}
.mv-checkout-payment-methods{display:grid;gap:10px;margin:14px 0}.mv-checkout-payment-label{font-size:13px;font-weight:600}.mv-checkout-alipay-method{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--vision-line,rgba(128,128,128,.3));border-radius:12px;font-size:14px}.mv-checkout-alipay-method span:last-child{margin-left:auto}.mv-checkout-alipay-icon{display:grid;place-items:center;width:29px;height:29px;border-radius:7px;background:#1677ff;color:white;font-size:19px;font-weight:700}
.mv-checkout-pay-total{display:block;font-size:13px;margin-top:16px}.mv-checkout-step-note{font-size:12px;color:var(--vision-secondary,#888);margin:8px 0 0}
.mv-checkout-dialog .mv-free-checkout small{display:block;margin-top:12px;font-size:11px;line-height:1.6;color:var(--vision-secondary,#888)}
@media(max-width:480px){.mv-checkout-dialog{border-radius:19px;padding:20px}}

/* 3.0.54 · Compact, extensible payment method tiles */
.mv-checkout-payment-methods{display:block;margin:17px 0 12px}
.mv-checkout-payment-label{display:block;margin-bottom:10px}
.mv-checkout-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mv-checkout-alipay-method{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-width:0;min-height:80px;padding:12px 7px;border:1px solid var(--vision-text,#222);border-radius:12px;background:transparent;color:inherit;font-size:12px;font-weight:600;box-sizing:border-box}
.mv-checkout-alipay-method .mv-checkout-alipay-icon{width:28px;height:28px;flex:none;border-radius:7px;font-size:18px}
.mv-checkout-alipay-method .mv-checkout-method-name{margin:0;white-space:nowrap}
.mv-checkout-alipay-method .mv-checkout-method-check{position:absolute;right:6px;top:5px;margin:0;font-size:11px;color:var(--vision-text,#222)}
@media(max-width:360px){.mv-checkout-method-grid{gap:8px}.mv-checkout-alipay-method{min-height:75px}}

/* 3.0.55 · Visible disabled future payment methods */
.mv-checkout-disabled-method{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:80px;padding:9px 5px;border:1px solid var(--vision-line,rgba(128,128,128,.25));border-radius:12px;background:transparent;color:var(--vision-secondary,#888);opacity:.52;cursor:not-allowed;user-select:none;box-sizing:border-box;font-size:12px;font-weight:600}
.mv-checkout-disabled-method .mv-checkout-method-name{white-space:nowrap}
.mv-checkout-disabled-method .mv-checkout-unavailable{font-size:10px;font-weight:400;white-space:nowrap}
.mv-checkout-stripe-icon,.mv-checkout-paypal-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:var(--vision-line,rgba(128,128,128,.18));color:inherit;font-size:17px;font-weight:800}
@media(max-width:360px){.mv-checkout-disabled-method{min-height:75px;padding:7px 3px}.mv-checkout-disabled-method .mv-checkout-unavailable{font-size:9px}}

/* 3.0.56 · SVG-only payment choices; reveal label on tap */
.mv-checkout-method-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mv-checkout-method-tile{appearance:none;-webkit-appearance:none;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;min-width:0;min-height:72px;padding:10px 5px;border:1px solid var(--vision-line,rgba(128,128,128,.3));border-radius:12px;background:transparent;color:inherit;font:inherit;box-sizing:border-box;cursor:pointer;transition:border-color .18s,background .18s}
.mv-checkout-method-tile.is-current{border-color:var(--vision-text,currentColor)}
.mv-checkout-method-tile.is-unavailable{opacity:.48;cursor:help}
.mv-checkout-method-tile:focus-visible{outline:2px solid var(--vision-text,currentColor);outline-offset:2px}
.mv-checkout-brand-icon{display:block;width:32px;height:32px;flex:none}
.mv-checkout-brand-icon svg{display:block;width:100%;height:100%}
.mv-checkout-brand-name{display:none;font-size:11px;font-weight:600;line-height:1.2;white-space:nowrap}
.mv-checkout-method-tile.is-revealed .mv-checkout-brand-name{display:block}
.mv-checkout-method-tile.is-revealed{background:var(--vision-line,rgba(128,128,128,.08))}

/* 3.0.57 · matched payment logo frames and interactive Alipay only */
.mv-checkout-method-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.mv-checkout-method-tile{height:78px;min-height:78px;border:1px solid var(--vision-line,rgba(128,128,128,.3));border-radius:12px;overflow:hidden;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease}
.mv-checkout-brand-icon{display:grid;place-items:center;width:52px;height:32px}
.mv-checkout-brand-icon img{width:100%;height:100%;object-fit:contain;display:block}
.mv-checkout-method-tile.is-current{cursor:pointer}
.mv-checkout-method-tile.is-current:hover{transform:translateY(-2px);background:var(--vision-line,rgba(128,128,128,.08));box-shadow:0 4px 14px rgba(0,0,0,.08)}
.mv-checkout-method-tile.is-current:active{transform:scale(.96)}
.mv-checkout-method-tile.is-current.is-revealed{border-color:var(--vision-text,currentColor);background:var(--vision-line,rgba(128,128,128,.1))}
.mv-checkout-method-tile.is-unavailable,.mv-checkout-method-tile.is-unavailable:disabled{opacity:.45;cursor:default;pointer-events:none;transform:none!important;box-shadow:none!important;background:transparent!important}
.mv-checkout-method-tile.is-unavailable .mv-checkout-brand-name{display:none!important}
@media(prefers-reduced-motion:reduce){.mv-checkout-method-tile{transition:none!important}}

/* 3.0.58 — Shop checkout follows the existing reference-dialog / theme glass system. */
.mv-shop-detail{background:var(--mv-card-bg)!important;border:1px solid var(--mv-glass-border-low)!important;color:var(--vision-text);box-shadow:inset 0 1px 0 var(--mv-glass-highlight)}
.mv-shop-detail-price{color:var(--vision-text)!important}
.mv-shop-detail-status{color:var(--vision-secondary)!important}
.mv-shop-detail-status span{color:var(--vision-secondary)!important}
.mv-shop-buy-trigger{display:flex!important;align-items:center;justify-content:center;min-height:52px;width:100%;background:#f1f4f9!important;color:#19202c!important;border:1px solid rgba(255,255,255,.55)!important;border-radius:14px!important;box-shadow:0 6px 22px rgba(0,0,0,.09),inset 0 1px 0 rgba(255,255,255,.85);font-size:15px!important;font-weight:750!important;line-height:1.3!important;text-shadow:none!important;opacity:1!important}
.mv-shop-buy-trigger:hover{background:#fff!important;box-shadow:0 10px 26px rgba(0,0,0,.15)}
.mv-shop-buy-trigger:active{transform:scale(.985)}
.mv-checkout-dialog{width:min(480px,calc(100vw - 28px));padding:clamp(20px,4vw,27px);border:1px solid var(--mv-glass-border-low)!important;border-radius:24px;background:var(--mv-card-bg)!important;color:var(--vision-text)!important;box-shadow:0 28px 85px rgba(0,0,0,.35),inset 0 1px 0 var(--mv-glass-highlight);-webkit-backdrop-filter:blur(26px) saturate(135%);backdrop-filter:blur(26px) saturate(135%)}
.mv-checkout-dialog::backdrop{background:rgba(8,12,22,.68);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}
.mv-checkout-dialog[open]{animation:mv-checkout-enter .26s cubic-bezier(.2,.8,.2,1) both}
@keyframes mv-checkout-enter{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.mv-checkout-dialog-head{align-items:center}.mv-checkout-dialog-head h2{margin:0;font-size:22px;color:var(--vision-text)!important}
.mv-checkout-close{background:var(--mv-control-bg)!important;border:1px solid var(--mv-glass-border-low)!important;color:var(--vision-text)!important;border-radius:12px;transition:transform .18s,background .18s}
.mv-checkout-close:hover{background:var(--mv-control-hover)!important;transform:rotate(90deg)}
.mv-checkout-summary{display:flex;align-items:center;gap:12px;padding:17px 0;margin-top:16px;border-color:var(--mv-glass-border-low);color:var(--vision-text)}
.mv-checkout-product-thumb{width:48px;height:48px;flex:0 0 48px;display:block;overflow:hidden;border-radius:11px;background:var(--mv-control-bg)}
.mv-checkout-product-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.mv-checkout-product-name{flex:1;min-width:0;font-size:14px;font-weight:600;line-height:1.4}
.mv-checkout-summary strong{font-size:19px;color:var(--vision-text)}
.mv-checkout-email-note{margin:12px 0 0;color:var(--vision-secondary)!important;font-size:12px;line-height:1.6}
.mv-checkout-dialog .mv-alipay-checkout{display:flex;flex-direction:column;margin:12px 0 0!important}
.mv-checkout-dialog .mv-alipay-checkout label{order:1;margin:0 0 6px;color:var(--vision-text);font-size:13px}
.mv-checkout-dialog .mv-alipay-checkout input[type=email]{display:block;max-width:none;width:100%;margin:8px 0 0!important;min-height:47px;border:1px solid var(--mv-glass-border-low)!important;border-radius:13px;background:var(--mv-control-bg)!important;color:var(--vision-text)!important;box-shadow:inset 0 1px 0 var(--mv-glass-highlight)}
.mv-checkout-dialog .mv-alipay-checkout input[type=email]:focus{outline:2px solid rgba(var(--vision-accent-rgb),.35);outline-offset:1px}
.mv-checkout-dialog .mv-checkout-payment-methods{order:2;margin:18px 0 6px}
.mv-checkout-dialog .mv-checkout-payment-label{margin-bottom:10px;color:var(--vision-text)}
.mv-checkout-dialog .mv-checkout-method-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.mv-checkout-dialog .mv-checkout-method-tile{height:62px;min-height:62px;padding:8px;border:1px solid var(--mv-glass-border-low)!important;border-radius:13px;background:var(--mv-control-bg)!important;box-shadow:inset 0 1px 0 var(--mv-glass-highlight);color:var(--vision-text)}
.mv-checkout-dialog .mv-checkout-method-tile.is-current{border-color:rgba(var(--vision-accent-rgb),.65)!important}
.mv-checkout-dialog .mv-checkout-method-tile.is-current:hover{background:var(--mv-control-hover)!important;transform:translateY(-2px)}
.mv-checkout-dialog .mv-checkout-method-tile.is-current:active{transform:scale(.95)}
.mv-checkout-dialog .mv-checkout-method-tile.is-unavailable{opacity:.40;cursor:default;pointer-events:none}
.mv-checkout-dialog .mv-checkout-brand-icon{width:34px;height:25px}
.mv-checkout-dialog .mv-checkout-brand-icon img{width:100%;height:100%;object-fit:contain}
.mv-checkout-dialog .mv-checkout-brand-name{font-size:10px;color:var(--vision-secondary)}
.mv-checkout-dialog .mv-checkout-pay-total{display:none}
.mv-checkout-dialog .mv-alipay-checkout button[type=submit],.mv-checkout-dialog .mv-free-checkout button[type=submit]{order:3;display:flex;align-items:center;justify-content:center;min-height:52px;margin-top:18px!important;padding:12px 16px!important;border:1px solid rgba(255,255,255,.6)!important;border-radius:14px!important;background:#f1f4f9!important;color:#19202c!important;font-size:15px!important;font-weight:750!important;line-height:1.3!important;text-shadow:none!important;box-shadow:0 6px 20px rgba(0,0,0,.10),inset 0 1px 0 rgba(255,255,255,.9)}
.mv-checkout-dialog .mv-alipay-checkout button[type=submit]:hover,.mv-checkout-dialog .mv-free-checkout button[type=submit]:hover{background:#fff!important;transform:translateY(-1px)}
.mv-checkout-dialog .mv-free-checkout{display:flex;flex-direction:column}
.mv-checkout-dialog .mv-free-checkout label{order:1}
.mv-checkout-dialog .mv-free-checkout input[type=email]{order:2;background:var(--mv-control-bg)!important;color:var(--vision-text)!important;border-color:var(--mv-glass-border-low)!important}
@media(max-width:480px){.mv-checkout-dialog{padding:20px;border-radius:20px}.mv-checkout-dialog .mv-checkout-method-tile{height:58px;min-height:58px}.mv-checkout-dialog .mv-checkout-brand-icon{width:31px;height:23px}}
@media(prefers-reduced-motion:reduce){.mv-checkout-dialog[open]{animation:none}}


/* 3.0.59 — Checkout color correction. Scoped exclusively to the checkout dialog.
   Solid cool-blue surfaces avoid the warm/gray haze caused by blurred page colors. */
.mv-checkout-dialog{
  color-scheme:dark;
  --mv-checkout-bg:#141923;
  --mv-checkout-field:#1b222e;
  --mv-checkout-line:#38404d;
  --mv-checkout-ink:#f1f3f7;
  --mv-checkout-muted:#9da8ba;
  background:#141923!important;
  background-image:none!important;
  border:1px solid #38404d!important;
  color:#f1f3f7!important;
  box-shadow:0 28px 75px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.055)!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
.mv-checkout-dialog .mv-checkout-dialog-head h2,
.mv-checkout-dialog .mv-checkout-summary,
.mv-checkout-dialog .mv-checkout-summary strong,
.mv-checkout-dialog .mv-checkout-product-name,
.mv-checkout-dialog .mv-alipay-checkout label,
.mv-checkout-dialog .mv-free-checkout label,
.mv-checkout-dialog .mv-checkout-payment-label{color:#f1f3f7!important}
.mv-checkout-dialog .mv-checkout-summary{border-color:#303846!important}
.mv-checkout-dialog .mv-checkout-email-note,
.mv-checkout-dialog .mv-free-checkout small{color:#9da8ba!important}
.mv-checkout-dialog .mv-checkout-close{
  background:#232a36!important;border:1px solid #394251!important;
  color:#d1d7e1!important;box-shadow:none!important;
}
.mv-checkout-dialog .mv-checkout-close:hover{background:#2b3442!important}
.mv-checkout-dialog .mv-alipay-checkout input[type=email],
.mv-checkout-dialog .mv-free-checkout input[type=email]{
  background:#1b222e!important;border:1px solid #3a4556!important;
  color:#f1f3f7!important;box-shadow:none!important;
}
.mv-checkout-dialog input[type=email]::placeholder{color:#8996a9!important;opacity:1}
.mv-checkout-dialog input[type=email]:focus{border-color:#728fb8!important;outline:2px solid rgba(114,143,184,.22)!important;outline-offset:1px}
.mv-checkout-dialog .mv-checkout-method-tile{
  height:66px;min-height:66px;background:#1b222e!important;
  border:1px solid #343d4a!important;box-shadow:none!important;
}
.mv-checkout-dialog .mv-checkout-method-tile.is-current{
  background:#202b3b!important;border-color:#728fb8!important;
  box-shadow:inset 0 0 0 1px rgba(114,143,184,.15)!important;
}
.mv-checkout-dialog .mv-checkout-method-tile.is-current:hover{
  background:#263346!important;box-shadow:inset 0 0 0 1px rgba(114,143,184,.2)!important;
}
.mv-checkout-dialog .mv-checkout-method-tile.is-unavailable{
  background:#1b222e!important;border-color:#343d4a!important;
  opacity:.55!important;filter:none;cursor:default;pointer-events:none;
}
.mv-checkout-dialog .mv-checkout-brand-icon{width:30px;height:24px}
.mv-checkout-dialog .mv-checkout-brand-name{color:#d4dce8!important}
.mv-checkout-dialog .mv-alipay-checkout button[type=submit],
.mv-checkout-dialog .mv-free-checkout button[type=submit]{
  background:#e4e9f1!important;color:#18202c!important;
  border:1px solid #e4e9f1!important;
  box-shadow:none!important;min-height:50px;
}
.mv-checkout-dialog .mv-alipay-checkout button[type=submit]:hover,
.mv-checkout-dialog .mv-free-checkout button[type=submit]:hover{background:#f1f3f7!important}
.mv-checkout-dialog .mv-alipay-checkout button[type=submit]:focus-visible,
.mv-checkout-dialog .mv-free-checkout button[type=submit]:focus-visible{outline:2px solid #728fb8;outline-offset:3px}
@media(max-width:480px){.mv-checkout-dialog .mv-checkout-method-tile{height:62px;min-height:62px}}

/* 3.0.62: Keep all payment brand marks fully visible, even for unavailable gateways.
   Availability is communicated by interaction and border, never logo opacity. */
.mv-checkout-dialog .mv-checkout-method-tile,
.mv-checkout-dialog .mv-checkout-method-tile.is-unavailable,
.mv-checkout-dialog .mv-checkout-method-tile.is-unavailable:disabled {
  opacity:1!important;filter:none!important;
}
.mv-checkout-dialog .mv-checkout-brand-icon,
.mv-checkout-dialog .mv-checkout-brand-icon img,
.mv-checkout-dialog .mv-checkout-brand-icon svg {
  opacity:1!important;filter:none!important;
}
.mv-checkout-dialog .mv-checkout-method-tile.is-unavailable,
.mv-checkout-dialog .mv-checkout-method-tile.is-unavailable:disabled {
  cursor:default!important;pointer-events:none!important;
  transform:none!important;transition:none!important;
  background:#1b222e!important;border-color:#343d4a!important;
  box-shadow:none!important;
}

/* 3.0.63 — payment logo tiles: ultra-fine, consistent hairline outlines. */
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile,
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile.is-unavailable,
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile.is-unavailable:disabled {
  box-sizing:border-box!important;
  border-style:solid!important;
  border-width:.5px!important;
  border-color:#465061!important;
  border-radius:8px!important;
  box-shadow:none!important;
  opacity:1!important;
}
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile.is-current {
  border-color:#8296b5!important;
}
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile.is-current:hover {
  border-color:#a0b2cd!important;
}
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile.is-unavailable,
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile.is-unavailable:disabled {
  pointer-events:none!important;cursor:default!important;transition:none!important;transform:none!important;
}

/* 3.0.64: Brand artwork contains explicit visible fills; do not dim image ancestors. */
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile img{opacity:1!important;filter:none!important;mix-blend-mode:normal!important;visibility:visible!important;}
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile{filter:none!important;mix-blend-mode:normal!important;}

/* v3.0.66: compact circular checkout close control. */
.mv-checkout-dialog .mv-checkout-close {
  display:grid!important;place-items:center!important;
  width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
  padding:0!important;border-radius:50%!important;
  border:0.5px solid #38404d!important;background:#1b222e!important;
  color:#a7b2c2!important;box-shadow:none!important;
  font-size:0!important;line-height:1!important;
  transition:transform .16s ease,background-color .16s ease,border-color .16s ease!important;
}
.mv-checkout-dialog .mv-checkout-close svg {display:block;width:16px;height:16px;pointer-events:none}
.mv-checkout-dialog .mv-checkout-close:hover {background:#252e3b!important;border-color:#4b596b!important;transform:none!important}
.mv-checkout-dialog .mv-checkout-close:active {transform:scale(.94)!important}
.mv-checkout-dialog .mv-checkout-close:focus-visible {outline:2px solid #728fb8!important;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.mv-checkout-dialog .mv-checkout-close{transition:none!important}}

/* 3.0.67: genuinely compact close visual, no oversized blue outline. */
.mv-checkout-dialog .mv-checkout-close{width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;border:0.5px solid #38404d!important;background:#1b222e!important;box-shadow:none!important;outline:none!important;border-radius:50%!important;}
.mv-checkout-dialog .mv-checkout-close svg{width:12px!important;height:12px!important;}
.mv-checkout-dialog .mv-checkout-close:focus-visible{outline:1px solid #728fb8!important;outline-offset:2px!important;}
/* Give all three SVGs the same large display viewport; visual normalization lives inside the SVG assets. */
.mv-checkout-dialog .mv-checkout-brand-icon{width:48px!important;height:48px!important;display:grid!important;place-items:center!important;}
.mv-checkout-dialog .mv-checkout-brand-icon img{width:48px!important;height:48px!important;object-fit:contain!important;}

/* Payment selection: visible hairline highlight, no changes to logo geometry. */
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile.is-current {
  border:1px solid #a8c9ff!important;
  box-shadow:0 0 0 1px rgba(168,201,255,.34),0 0 13px rgba(110,155,220,.20)!important;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease!important;
}
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile.is-current:hover,
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile.is-current:focus-visible {
  border-color:#d0e3ff!important;
  box-shadow:0 0 0 1px rgba(208,227,255,.50),0 0 17px rgba(110,155,220,.28)!important;
}
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile.is-unavailable,
.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile.is-unavailable:disabled {
  border:.5px solid #465061!important;box-shadow:none!important;
}
@media(prefers-reduced-motion:reduce){.mv-checkout-dialog .mv-checkout-method-grid .mv-checkout-method-tile{transition:none!important}}

/* 3.0.68 dev4 quantity controls */
.mv-res-quantity{margin:14px 0;padding:12px;border:0.5px solid #38404d;border-radius:12px;background:#1b222e;color:#f1f3f7}.mv-res-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.mv-res-heading small,.mv-res-message,.mv-res-clock{color:#9da8ba}.mv-res-controls{display:flex;align-items:center;gap:8px;margin:12px 0}.mv-res-controls button{width:34px;height:34px;padding:0;border:0.5px solid #485465;border-radius:8px;background:#222b38;color:#f1f3f7}.mv-res-controls input{width:64px;height:34px;text-align:center;border:0.5px solid #485465;border-radius:8px;background:#141923;color:#f1f3f7}.mv-checkout-method-tile.is-current{border:1.5px solid #a8c9ff!important;box-shadow:0 0 0 1px rgba(168,201,255,.23),0 0 14px rgba(110,162,241,.24)!important}.mv-res-message{margin:4px 0;font-size:12px}
