:root{--vt-bg:#09090b;--vt-surface:#121216;--vt-surface-2:#1a1a20;--vt-text:#f7f7f8;--vt-muted:#a1a1aa;--vt-line:rgba(255,255,255,.10);--vt-accent:#ff2d7d;--vt-accent-2:#7c3aed;--vt-radius:18px;--vt-safe:env(safe-area-inset-bottom,0px);color-scheme:dark;--vt-focus:#ff9c68}
:root[data-vtik-theme="light"]{--vt-bg:#f7f7f8;--vt-surface:#fff;--vt-surface-2:#f0f0f2;--vt-text:#111114;--vt-muted:#686873;--vt-line:rgba(0,0,0,.14);--vt-focus:#a84016;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.vtik-theme{margin:0;background:var(--vt-bg);color:var(--vt-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}img{max-width:100%;height:auto}.vt-site-main{min-height:calc(100vh - 120px)}
.vt-site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--vt-bg) 86%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--vt-line)}.admin-bar .vt-site-header{top:32px}.vt-header-inner{height:64px;max-width:1240px;margin:auto;padding:0 20px;display:flex;align-items:center;gap:24px}.vt-brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:850}.vt-brand-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--vt-accent),var(--vt-accent-2));box-shadow:0 10px 28px rgba(255,45,125,.22)}.vt-brand-name{white-space:nowrap}.vt-desktop-nav{margin-left:auto}.vt-desktop-nav ul{display:flex;list-style:none;margin:0;padding:0;gap:4px}.vt-desktop-nav a{display:block;text-decoration:none;color:var(--vt-muted);padding:9px 12px;border-radius:10px;font-weight:650}.vt-desktop-nav a:hover{color:var(--vt-text);background:var(--vt-surface-2)}.vt-header-actions{display:flex;gap:8px}.vt-icon-btn{width:40px;height:40px;border:1px solid var(--vt-line);background:var(--vt-surface);color:var(--vt-text);border-radius:13px;display:grid;place-items:center;text-decoration:none;font-size:20px;cursor:pointer}
.vt-site-footer{border-top:1px solid var(--vt-line);padding:28px 20px 100px;color:var(--vt-muted)}.vt-footer-inner{max-width:1240px;margin:auto;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.vt-footer-menu{display:flex;gap:14px}.vt-footer-menu a{text-decoration:none}
.vt-mobile-nav{display:none}.vt-content-shell{max-width:1240px;margin:auto;padding:42px 20px 120px}.vt-narrow{max-width:820px}.vt-page-head{margin-bottom:28px}.vt-page-head h1,.vt-entry h1,.vt-hero h1,.vt-full-state h1{font-size:clamp(32px,5vw,64px);letter-spacing:-.04em;line-height:1.02;margin:8px 0 14px}.vt-eyebrow{font-size:12px;letter-spacing:.16em;font-weight:800;color:var(--vt-accent)}.vt-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.vt-post-card{background:var(--vt-surface);border:1px solid var(--vt-line);border-radius:var(--vt-radius);overflow:hidden}.vt-card-media{display:block;aspect-ratio:16/9;background:#000}.vt-card-media img{width:100%;height:100%;object-fit:cover}.vt-card-body{padding:18px}.vt-card-body h2{font-size:20px;margin:0 0 8px}.vt-card-body h2 a{text-decoration:none}.vt-card-body p{color:var(--vt-muted);line-height:1.6;margin:0}.vt-entry-meta{color:var(--vt-muted)}.vt-entry-image{border-radius:var(--vt-radius);margin:12px 0 26px}.vt-entry-content{font-size:17px;line-height:1.8}.vt-entry-content a{color:var(--vt-accent)}
.vt-hero{min-height:calc(100vh - 65px);display:grid;place-items:center;padding:50px 20px;background:radial-gradient(circle at 70% 20%,rgba(124,58,237,.18),transparent 36%),radial-gradient(circle at 25% 80%,rgba(255,45,125,.15),transparent 34%)}.vt-hero-content{width:min(760px,100%);text-align:center}.vt-hero p{color:var(--vt-muted);font-size:18px;line-height:1.7}.vt-hero-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:24px}.vt-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:13px;border:1px solid var(--vt-line);background:var(--vt-surface);text-decoration:none;font-weight:750}.vt-btn-primary{background:linear-gradient(135deg,var(--vt-accent),var(--vt-accent-2));color:#fff;border-color:transparent}.vt-empty-state{text-align:center;padding:50px 20px;color:var(--vt-muted)}.vt-full-state{min-height:65vh;display:grid;place-content:center}.vt-full-state h1{color:var(--vt-text)}
/* Platform-managed screens load no theme stylesheet. Legacy WordPress pages use the rules above. */
@media(max-width:899px){.vt-desktop-nav{display:none}.vt-header-inner{height:58px;padding:0 14px}.vt-brand-name{max-width:180px;overflow:hidden;text-overflow:ellipsis}.vt-site-footer{padding-bottom:100px}.vt-mobile-nav{position:fixed;z-index:90;left:10px;right:10px;bottom:calc(10px + var(--vt-safe));height:62px;border:1px solid var(--vt-line);background:color-mix(in srgb,var(--vt-surface) 88%,transparent);backdrop-filter:blur(18px);border-radius:20px;display:grid;grid-template-columns:1fr 1fr 64px 1fr 1fr;align-items:center;padding:4px 8px;box-shadow:0 18px 60px rgba(0,0,0,.22)}.vt-mobile-nav a{color:var(--vt-muted);text-decoration:none;text-align:center;display:flex;flex-direction:column;gap:1px;font-size:18px}.vt-mobile-nav a.is-active{color:var(--vt-text)}.vt-mobile-nav small{font-size:10px}.vt-mobile-create{align-self:center;justify-self:center;width:48px;height:38px!important;border-radius:12px!important;background:linear-gradient(135deg,var(--vt-accent),var(--vt-accent-2));color:#fff!important;display:grid!important;place-items:center;font-size:27px!important;line-height:1}.vt-post-grid{grid-template-columns:1fr}.vt-content-shell{padding-top:28px}.vt-page-head h1,.vt-entry h1,.vt-hero h1,.vt-full-state h1{font-size:clamp(34px,12vw,54px)}}
@media(min-width:900px){.vt-post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:782px){.admin-bar .vt-site-header{top:46px}}

/* 0.1.1 production-cleanup managed Shop shell. */
body.vtik-platform-shop-page{margin:0;background:#09090b;color:#f7f7f8}.vt-shop-page{min-height:100vh;background:radial-gradient(circle at 75% 15%,rgba(124,58,237,.16),transparent 35%),radial-gradient(circle at 15% 80%,rgba(255,45,125,.13),transparent 34%)}.vt-shop-topbar{height:64px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);background:rgba(9,9,11,.88);backdrop-filter:blur(16px)}.vt-shop-brand,.vt-shop-video{text-decoration:none;color:inherit}.vt-shop-brand{display:flex;gap:10px;align-items:center;font-weight:900;letter-spacing:-.04em}.vt-shop-video{color:#a1a1aa;font-weight:750}.vt-shop-main{min-height:calc(100vh - 64px);display:grid;place-items:center;padding:24px}.vt-shop-card{width:min(700px,100%);padding:38px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:rgba(18,18,22,.94);box-shadow:0 30px 90px rgba(0,0,0,.28)}.vt-shop-card h1{font-size:clamp(34px,6vw,58px);line-height:1;letter-spacing:-.05em;margin:10px 0 16px}.vt-shop-card p{color:#a1a1aa;font-size:17px;line-height:1.7;margin:0}.vt-shop-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}@media(max-width:640px){.vt-shop-card{padding:27px 22px;border-radius:20px}.vt-shop-actions{display:grid}.vt-shop-actions .vt-btn{width:100%}}

/* Stage 1: lightweight, theme-owned accessibility; no global Platform component overrides. */
body.vtik-theme :is(.vt-site-header,.vt-site-footer,.vt-mobile-nav,.vt-content-shell,.vt-hero,.vt-shop-page) :is(a,button,input,select,textarea):focus-visible{outline:2px solid var(--vt-focus);outline-offset:3px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* The legacy /shop/ fallback is theme-owned. The live Platform shop template retains its own CSS. */
:root[data-vtik-theme="light"] body.vtik-platform-shop-page{background:var(--vt-bg);color:var(--vt-text)}
:root[data-vtik-theme="light"] .vt-shop-page{background:var(--vt-bg)}
:root[data-vtik-theme="light"] .vt-shop-topbar{background:var(--vt-surface);border-color:var(--vt-line)}
:root[data-vtik-theme="light"] .vt-shop-video,:root[data-vtik-theme="light"] .vt-shop-card p{color:var(--vt-muted)}
:root[data-vtik-theme="light"] .vt-shop-card{background:var(--vt-surface);border-color:var(--vt-line);box-shadow:0 8px 24px rgba(0,0,0,.06)}
