/* ZYNTO BAZAAR v22 — Unified Storefront OS / Core
   One customer-facing design authority. Simple typography, accessible controls,
   stable layout primitives and light/dark tokens. */
:root{
 --z22-bg:#f7f5f1;--z22-paper:#fff;--z22-soft:#efebe5;--z22-soft-2:#e7e1d9;
 --z22-ink:#181715;--z22-text:#2b2926;--z22-muted:#77716a;--z22-line:#ddd7cf;
 --z22-accent:#6d4b39;--z22-accent-2:#8a6551;--z22-dark:#171512;--z22-success:#207548;
 --z22-danger:#9c2736;--z22-warning:#ad6a1f;--z22-star:#e99a00;--z22-max:1480px;
 --z22-radius:14px;--z22-radius-sm:9px;--z22-shadow:0 18px 50px rgba(28,23,18,.09);
 --z22-shadow-soft:0 8px 28px rgba(28,23,18,.06);--z22-font:Inter,"Segoe UI",Arial,Helvetica,sans-serif;
}
html[data-theme="dark"]{--z22-bg:#10100f;--z22-paper:#181816;--z22-soft:#20201d;--z22-soft-2:#292824;--z22-ink:#f5f2ed;--z22-text:#e7e3dc;--z22-muted:#aaa39a;--z22-line:#37342f;--z22-accent:#c7a38c;--z22-accent-2:#d5b49e;--z22-dark:#080807;--z22-shadow:0 18px 50px rgba(0,0,0,.28);--z22-shadow-soft:0 8px 26px rgba(0,0,0,.2)}
html{background:var(--z22-bg);scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}
body.z22-store,body.z22-store button,body.z22-store input,body.z22-store select,body.z22-store textarea{font-family:var(--z22-font)!important}
body.z22-store{margin:0!important;background:var(--z22-bg)!important;color:var(--z22-text)!important;font-size:15px!important;line-height:1.55!important;letter-spacing:0!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body.z22-store *,body.z22-store *::before,body.z22-store *::after{box-sizing:border-box}
body.z22-store a{color:inherit;text-decoration:none}
body.z22-store img,body.z22-store video{max-width:100%;display:block}
body.z22-store svg{max-width:100%}
body.z22-store .container{width:min(var(--z22-max),calc(100% - 64px))!important;max-width:none!important;margin-inline:auto!important}
body.z22-store .section{padding-block:64px!important}
body.z22-store .muted{color:var(--z22-muted)!important}
body.z22-store h1,body.z22-store h2,body.z22-store h3,body.z22-store h4{font-family:var(--z22-font)!important;color:var(--z22-ink)!important;font-style:normal!important;letter-spacing:-.035em!important;text-wrap:balance}
body.z22-store h1{font-weight:680!important}body.z22-store h2{font-weight:660!important}body.z22-store h3,body.z22-store h4{font-weight:640!important}
body.z22-store p{color:var(--z22-text)}
body.z22-store :where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid color-mix(in srgb,var(--z22-accent) 28%,transparent)!important;outline-offset:3px!important}
body.z22-store input,body.z22-store select,body.z22-store textarea{color:var(--z22-ink)!important;background:var(--z22-paper)!important;border:1px solid var(--z22-line)!important;border-radius:10px!important;min-height:44px!important;padding:10px 12px!important;outline:0!important;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
body.z22-store textarea{min-height:120px!important;resize:vertical}
body.z22-store input:focus,body.z22-store select:focus,body.z22-store textarea:focus{border-color:var(--z22-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--z22-accent) 10%,transparent)!important}
body.z22-store label{font-weight:600!important;color:var(--z22-text)!important}
body.z22-store .field{gap:7px!important}
body.z22-store .btn,body.z22-store button.btn{min-height:44px!important;border-radius:10px!important;border:1px solid var(--z22-line)!important;background:var(--z22-paper)!important;color:var(--z22-ink)!important;font-weight:680!important;letter-spacing:.01em!important;box-shadow:none!important;transition:transform .16s ease,background .16s ease,border-color .16s ease,color .16s ease!important}
body.z22-store .btn:hover{transform:translateY(-1px)}
body.z22-store .btn-primary,body.z22-store button.btn-primary{background:var(--z22-dark)!important;border-color:var(--z22-dark)!important;color:#fff!important}
body.z22-store .btn-primary:hover{background:#2d2924!important}
body.z22-store .card,body.z22-store .content-page{background:var(--z22-paper)!important;border:1px solid var(--z22-line)!important;border-radius:var(--z22-radius)!important;box-shadow:none!important}
body.z22-store .empty{border:1px dashed var(--z22-line)!important;border-radius:12px!important;background:var(--z22-paper)!important;color:var(--z22-muted)!important;padding:28px!important;text-align:center!important}
body.z22-store #toast{position:fixed!important;z-index:500!important;left:50%!important;bottom:26px!important;transform:translate(-50%,20px)!important;max-width:min(520px,calc(100% - 32px))!important;border-radius:999px!important;background:var(--z22-dark)!important;color:#fff!important;padding:11px 18px!important;font-size:12px!important;font-weight:650!important;box-shadow:0 18px 50px rgba(0,0,0,.2)!important}
.z22-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.z22-progress{position:fixed;z-index:9999;left:0;top:0;width:0;height:2px;background:var(--z22-accent);pointer-events:none;transition:width .16s ease,opacity .3s ease}.z22-progress.done{width:100%;opacity:0}
.z22-skeleton{position:relative;overflow:hidden;background:var(--z22-soft)!important}.z22-skeleton::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.38),transparent);animation:z22shimmer 1.25s infinite}@keyframes z22shimmer{to{transform:translateX(100%)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.z22-store *,body.z22-store *::before,body.z22-store *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.z22-skeleton::after{display:none}}
