/* ZUPIX global UI bundle v45. Generated from the existing global styles to reduce render-blocking requests. */

/* ---- assets/css/marketplace-header-v18.css ---- */
/* ZUPIX v18.4 — clean marketplace header */
.z18-header{position:relative;z-index:80;background:#fff;padding:0 28px;font-family:Inter,Arial,sans-serif;border-bottom:1px solid #e7ebf2}
.z18-header-shell{max-width:1600px;margin:0 auto;min-height:92px;padding:12px 0;display:grid;grid-template-columns:auto minmax(360px,1fr) auto;align-items:center;gap:22px;background:transparent;border:0;border-radius:0;box-shadow:none}
.z18-brand{display:flex;align-items:center;text-decoration:none;min-width:176px}.z18-brand img{display:block;width:156px;height:auto}
.z18-search{height:58px;border-radius:16px;background:#fff;border:1px solid #dfe5ee;display:flex;align-items:center;gap:11px;padding:0 16px;min-width:0;box-shadow:0 3px 14px rgba(38,48,75,.035)}
.z18-search:focus-within{border-color:#c8baff;box-shadow:0 0 0 3px rgba(105,60,238,.08)}
.z18-search>svg{width:23px;height:23px;fill:none;stroke:#98a5b8;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.z18-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#152039;font:500 16px/1.2 Inter,Arial,sans-serif}.z18-search input::placeholder{color:#99a5b7}.z18-search button{width:38px;height:38px;border:0;border-radius:12px;background:#f7f5ff;color:#673af0;font-size:20px;font-weight:900;cursor:pointer;transition:.18s}.z18-search button:hover{background:#eee9ff;transform:translateX(1px)}
.z18-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;white-space:nowrap;min-width:0}.z18-actions a{text-decoration:none}
.z18-icon-action,.z18-sell-action{position:relative;min-width:66px;height:64px;padding:6px 8px;border-radius:14px;color:#7f8a9c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;transition:.18s ease}
.z18-icon-action:hover,.z18-icon-action.active{background:#f7f8fb;color:#5f36ed}.z18-icon-action>span{width:25px;height:25px;display:grid;place-items:center;color:#172139}.z18-icon-action:hover>span,.z18-icon-action.active>span{color:#5f36ed}.z18-icon-action>span svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.z18-icon-action small,.z18-sell-action small{font-size:11.5px;font-weight:700;line-height:1}.z18-icon-action em{position:absolute;right:7px;top:4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#6737ef;color:#fff;font:800 10px/18px Inter,Arial,sans-serif;text-align:center;font-style:normal;box-shadow:0 3px 9px rgba(92,55,222,.25)}
.z18-sell-action{min-width:70px;color:#788498;background:transparent}.z18-sell-action:hover{background:#f7f8fb;color:#6136ea}.z18-sell-plus{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#8050ff,#3186f7);color:#fff;font-size:21px;line-height:1;box-shadow:0 6px 15px rgba(96,61,232,.20)}
.z18-seller-panel-icon>span{width:29px;height:29px;border-radius:9px;background:#eee9ff;padding:4px;color:#6236e9}.z18-seller-panel-icon.active>span{background:#6b3cf0;color:#fff}
.z18-profile{height:64px;padding:6px 8px 6px 10px;border:1px solid transparent;border-radius:14px;color:#182139;display:flex;align-items:center;gap:9px;min-width:142px;transition:.18s}.z18-profile:hover,.z18-profile.active{background:#f7f8fb;border-color:#edf0f5}.z18-avatar{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;overflow:hidden;flex:0 0 auto;background:linear-gradient(135deg,#201740,#7141ef);color:#fff;font-weight:900;font-size:16px}.z18-avatar img{width:100%;height:100%;object-fit:cover}.z18-profile-copy{min-width:0;display:flex;flex-direction:column}.z18-profile-copy b{max-width:112px;overflow:hidden;text-overflow:ellipsis;font-size:13.5px}.z18-profile-copy small{color:#8a95a7;font-size:11px;margin-top:2px}.z18-profile i{font-style:normal;color:#8d98aa;font-size:13px;margin-left:auto}
.z18-menu-toggle{display:none;width:45px;height:45px;border:1px solid #e2e7f0;background:#fff;border-radius:13px;color:#172139;font-size:20px;cursor:pointer}
@media(max-width:1360px){.z18-header{padding-inline:20px}.z18-header-shell{grid-template-columns:auto minmax(280px,1fr) auto;gap:12px}.z18-brand{min-width:auto}.z18-brand img{width:138px}.z18-icon-action,.z18-sell-action{min-width:55px}.z18-profile{min-width:auto}.z18-profile-copy{display:none}}
@media(max-width:1080px){.z18-seller-panel-icon small{display:none}.z18-seller-panel-icon{min-width:48px}.z18-search input{font-size:15px}}
@media(max-width:900px){.z18-header{padding:0 12px}.z18-header-shell{min-height:76px;grid-template-columns:auto 1fr auto;gap:12px}.z18-search{height:49px}.z18-actions{display:none;position:absolute;left:12px;right:12px;top:76px;padding:12px;background:#fff;border:1px solid #e5e9f0;border-radius:16px;box-shadow:0 18px 50px rgba(23,34,58,.14);flex-wrap:wrap;justify-content:flex-start}.z18-header.menu-open .z18-actions{display:flex}.z18-menu-toggle{display:block}.z18-profile-copy{display:flex}.z18-profile{margin-left:auto}.z18-brand img{width:126px}}
@media(max-width:620px){.z18-header{padding:0 8px}.z18-header-shell{padding:9px 0;grid-template-columns:auto auto}.z18-brand img{width:116px}.z18-search{grid-column:1/-1;grid-row:2;height:46px;border-radius:14px}.z18-menu-toggle{grid-column:2;grid-row:1;justify-self:end}.z18-actions{top:118px}.z18-icon-action,.z18-sell-action{min-width:66px}.z18-profile{min-width:150px}}

/* ZUPIX v18.5 — stable universal sticky header */
html{
  overflow-y:scroll;
  scrollbar-gutter:stable;
}
.z18-header,
.z18-header *{
  box-sizing:border-box;
}
.z18-header{
  position:sticky!important;
  top:0;
  left:0;
  right:0;
  width:100%;
  z-index:1000!important;
  background:rgba(255,255,255,.97)!important;
  backdrop-filter:saturate(150%) blur(12px);
  -webkit-backdrop-filter:saturate(150%) blur(12px);
}
.z18-header-shell{
  width:100%;
  max-width:1600px;
  margin-left:auto;
  margin-right:auto;
}
/* Active menu items must never change header geometry. */
.z18-icon-action,
.z18-sell-action,
.z18-profile{
  flex-shrink:0;
}
.z18-actions{
  min-width:max-content;
}
@media (max-width:1360px){
  .z18-actions{min-width:0}
}
@media (max-width:900px){
  html{overflow-y:auto;scrollbar-gutter:auto}
  .z18-header{backdrop-filter:none;-webkit-backdrop-filter:none}
}

/* ZUPIX v19.0 — premium header catalog / mega menu */
.z18-header-shell{grid-template-columns:auto auto minmax(300px,1fr) auto;gap:14px}
.z18-catalog-button{height:52px;min-width:128px;padding:0 14px;border:1px solid #e3e7ef;border-radius:15px;background:#f5f6fa;color:#172239;display:flex;align-items:center;justify-content:center;gap:10px;font:750 13px/1 Inter,Arial,sans-serif;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;white-space:nowrap}
.z18-catalog-button:hover,.z18-catalog-button.active,.z18-header.catalog-open .z18-catalog-button{background:#15192a;border-color:#15192a;color:#fff;box-shadow:0 10px 24px rgba(21,25,42,.14)}
.z18-catalog-button:active{transform:translateY(1px)}
.z18-catalog-button em{font-style:normal;color:#8c97aa;font-size:12px;transition:transform .18s ease,color .18s ease}.z18-header.catalog-open .z18-catalog-button em{transform:rotate(180deg);color:#d8dbea}
.z18-catalog-glyph{width:20px;height:20px;display:grid;grid-template-columns:repeat(2,6px);grid-template-rows:repeat(2,6px);gap:3px;place-content:center;flex:0 0 20px}
.z18-catalog-glyph i{display:block;width:6px;height:6px;border-radius:2px;background:currentColor;opacity:.9}

.z18-catalog-mega{position:absolute;left:50%;top:calc(100% - 4px);width:min(1240px,calc(100vw - 40px));transform:translate(-50%,-8px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s;z-index:1005}
.z18-header.catalog-open .z18-catalog-mega{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.z18-catalog-mega-inner{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:500px;max-height:calc(100vh - 120px);overflow:hidden;border:1px solid rgba(224,228,238,.96);border-radius:24px;background:rgba(255,255,255,.985);box-shadow:0 28px 80px rgba(20,30,52,.18),0 4px 12px rgba(20,30,52,.06);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.z18-catalog-groups{padding:18px 14px;border-right:1px solid #edf0f5;background:linear-gradient(180deg,#fafbfe 0%,#f7f8fc 100%);overflow:auto}
.z18-catalog-caption{display:block;padding:2px 12px 11px;color:#9aa4b5;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.z18-catalog-groups>a{min-height:52px;padding:0 11px;border-radius:14px;display:grid;grid-template-columns:34px minmax(0,1fr) 18px;gap:9px;align-items:center;color:#202b42;text-decoration:none;transition:.16s ease}
.z18-catalog-groups>a:hover{background:#fff;color:#5f39da;box-shadow:0 7px 20px rgba(30,42,72,.07)}
.z18-catalog-groups>a b{font-size:13px;line-height:1.25;font-weight:720;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.z18-catalog-groups>a i{font-style:normal;color:#a0a9b7;font-size:20px;text-align:center}.z18-catalog-groups>a:hover i{color:#6b43e9;transform:translateX(2px)}
.z18-mega-cat-icon{width:32px;height:32px;border:1px solid #e8ebf2;border-radius:10px;background:#fff;display:grid;place-items:center;color:#526079;font:800 14px/1 Inter,Arial,sans-serif;box-shadow:0 4px 12px rgba(31,43,73,.035)}
.z18-mega-cat-icon::before{content:'◈'}.z18-mega-cat-icon.controller::before{content:'◇'}.z18-mega-cat-icon.coins::before{content:'◉'}.z18-mega-cat-icon.user::before{content:'○'}.z18-mega-cat-icon.diamond::before{content:'◇'}.z18-mega-cat-icon.key::before{content:'⚿'}.z18-mega-cat-icon.card::before{content:'▣'}.z18-mega-cat-icon.wallet::before{content:'₽'}.z18-mega-cat-icon.globe::before{content:'◎'}

.z18-catalog-showcase{padding:26px 28px 28px;overflow:auto;background:radial-gradient(circle at 80% -20%,rgba(111,73,246,.08),transparent 32%),#fff}
.z18-catalog-showcase-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.z18-catalog-showcase-head>div{display:grid;gap:4px}.z18-catalog-showcase-head span{color:#8f99aa;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.z18-catalog-showcase-head h2{margin:0;color:#10192d;font-size:26px;line-height:1.05;letter-spacing:-.7px}.z18-catalog-showcase-head>a{color:#653de0;text-decoration:none;font-size:12px;font-weight:800}.z18-catalog-showcase-head>a:hover{color:#4e2fc0}
.z18-catalog-popular{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:26px}
.z18-catalog-popular>a{display:grid;justify-items:center;gap:8px;padding:10px 6px 9px;border-radius:16px;text-decoration:none;color:#344158;transition:.16s ease}.z18-catalog-popular>a:hover{background:#f7f7fc;color:#5d39da;transform:translateY(-2px)}
.z18-catalog-popular>a>span{width:64px;height:64px;border:1px solid #e8ebf2;border-radius:18px;background:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:0 9px 22px rgba(28,39,68,.07)}.z18-catalog-popular img{width:100%;height:100%;object-fit:contain;display:block;padding:7px}.z18-catalog-popular b{max-width:100%;font-size:11px;line-height:1.25;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.z18-catalog-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-top:22px;border-top:1px solid #edf0f5}.z18-catalog-columns>div{display:grid;align-content:start;gap:9px}.z18-catalog-columns h3{margin:0 0 3px;color:#19243a;font-size:15px}.z18-catalog-columns a{width:max-content;max-width:100%;color:#59667d;text-decoration:none;font-size:12.5px;font-weight:570;line-height:1.35}.z18-catalog-columns a:hover{color:#6038da;text-decoration:underline;text-underline-offset:3px}

@media(max-width:1360px){.z18-header-shell{grid-template-columns:auto auto minmax(230px,1fr) auto}.z18-catalog-button{min-width:112px;padding-inline:11px}.z18-catalog-mega{width:min(1120px,calc(100vw - 28px))}.z18-catalog-mega-inner{grid-template-columns:255px minmax(0,1fr)}.z18-catalog-popular{gap:10px}.z18-catalog-showcase{padding:22px}}
@media(max-width:1080px){.z18-catalog-button b{display:none}.z18-catalog-button{min-width:50px;width:50px;padding:0}.z18-catalog-button em{display:none}.z18-catalog-mega-inner{grid-template-columns:230px minmax(0,1fr)}.z18-catalog-popular{grid-template-columns:repeat(4,minmax(0,1fr))}.z18-catalog-popular>a:nth-child(n+9){display:none}}
@media(max-width:900px){.z18-header-shell{grid-template-columns:auto auto 1fr auto}.z18-catalog-mega{top:calc(100% - 2px);width:calc(100vw - 20px)}.z18-catalog-mega-inner{grid-template-columns:210px minmax(0,1fr);min-height:420px}.z18-catalog-showcase-head h2{font-size:22px}.z18-catalog-popular>a>span{width:54px;height:54px;border-radius:15px}.z18-catalog-columns{gap:18px}.z18-catalog-columns a{font-size:11.5px}}
@media(max-width:700px){.z18-header-shell{grid-template-columns:auto auto 1fr auto}.z18-catalog-mega{width:calc(100vw - 16px)}.z18-catalog-mega-inner{display:block;max-height:calc(100vh - 130px);overflow:auto}.z18-catalog-groups{display:grid;grid-template-columns:1fr 1fr;gap:4px;border-right:0;border-bottom:1px solid #edf0f5;padding:12px}.z18-catalog-caption{grid-column:1/-1}.z18-catalog-groups>a{min-height:44px;grid-template-columns:28px minmax(0,1fr);padding:0 8px}.z18-catalog-groups>a i{display:none}.z18-mega-cat-icon{width:27px;height:27px;border-radius:9px;font-size:12px}.z18-catalog-groups>a b{font-size:11px}.z18-catalog-showcase{padding:18px}.z18-catalog-popular{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.z18-catalog-popular>a>span{width:48px;height:48px}.z18-catalog-popular b{font-size:9.5px}.z18-catalog-columns{grid-template-columns:1fr 1fr}.z18-catalog-columns>div:last-child{display:none}}
@media(max-width:620px){.z18-header-shell{grid-template-columns:auto auto 1fr}.z18-catalog-button{grid-column:2;grid-row:1}.z18-menu-toggle{grid-column:3;grid-row:1}.z18-search{grid-column:1/-1;grid-row:2}.z18-catalog-mega{top:calc(100% - 1px)}}


/* ZUPIX v20.1 — brand-gradient catalog trigger. */
.z18-catalog-button{
  border-color:rgba(104,85,238,.20)!important;
  background:linear-gradient(105deg,#824cf5 0%,#6755f4 37%,#4e5cf4 68%,#2f73f4 100%)!important;
  color:#fff!important;
  box-shadow:0 9px 24px rgba(87,68,221,.22)!important;
}
.z18-catalog-button:hover,.z18-catalog-button.active,.z18-header.catalog-open .z18-catalog-button{
  border-color:rgba(114,91,246,.26)!important;
  background:linear-gradient(105deg,#7540ee 0%,#5e4cf0 37%,#4655f0 68%,#2869ee 100%)!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(76,61,204,.30)!important;
}
.z18-catalog-button em,.z18-header.catalog-open .z18-catalog-button em{color:rgba(255,255,255,.78)!important}
.z18-catalog-button:focus-visible{outline:3px solid rgba(111,85,242,.18)!important;outline-offset:2px!important}

/* ZUPIX v39.3 — global administrator center */
.z18-admin-wrap{position:relative;display:flex;align-items:center;align-self:stretch}
.z18-admin-toggle{border:0;background:transparent;font:inherit;cursor:pointer}
.z18-admin-toggle.active,.z18-admin-toggle[aria-expanded="true"]{background:#f5f2ff!important;color:#6038ea!important}
.z18-admin-menu{
  position:absolute;z-index:220;top:calc(100% + 9px);right:-38px;width:390px;
  border:1px solid #e1e5ee;border-radius:18px;background:#fff;overflow:hidden;
  box-shadow:0 24px 70px rgba(25,35,65,.18);white-space:normal;color:#16213a;text-align:left;
}
.z18-admin-menu[hidden]{display:none!important}
.z18-admin-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 17px 13px;border-bottom:1px solid #edf0f5;background:linear-gradient(135deg,#faf8ff,#f7f9ff)}
.z18-admin-menu-head>div{display:grid;gap:2px}.z18-admin-menu-head span{font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.08em;color:#7959da;font-weight:800}.z18-admin-menu-head b{font-size:15px;line-height:1.2}.z18-admin-menu-head>a{font-size:10.5px;color:#6038df;font-weight:800;text-decoration:none!important}
.z18-admin-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:11px 12px;border-bottom:1px solid #edf0f5}.z18-admin-metrics>a{min-width:0;padding:10px 9px;border:1px solid #e7eaf1;border-radius:12px;background:#fafbfe;display:grid;gap:2px;text-decoration:none!important}.z18-admin-metrics b{font-size:18px;color:#1b2943}.z18-admin-metrics span{font-size:9.5px;color:#8490a4;font-weight:700}.z18-admin-metrics>a:hover{border-color:#cfc4f7;background:#f8f5ff}.z18-admin-metrics>a:hover b{color:#653ee2}
.z18-admin-feed{display:grid;max-height:290px;overflow:auto;padding:7px}.z18-admin-feed>a{display:grid;grid-template-columns:31px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 8px;border-radius:11px;text-decoration:none!important;color:#1b2943}.z18-admin-feed>a:hover{background:#f7f8fc}.z18-admin-feed>a>i{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;font-style:normal;font-size:13px;font-weight:900}.z18-admin-feed>a>i.dispute{background:#fff0f2;color:#d34058}.z18-admin-feed>a>i.report{background:#fff6e7;color:#bd7312}.z18-admin-feed>a>span{display:grid;gap:2px;min-width:0}.z18-admin-feed>a b{font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.z18-admin-feed>a small{font-size:9.5px;line-height:1.35;color:#8994a6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.z18-admin-feed>a>em{font-style:normal;color:#7555df;font-size:14px}
.z18-admin-empty{display:grid;justify-items:center;text-align:center;padding:22px 15px;color:#8390a5}.z18-admin-empty>span{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#ecfaf2;color:#16a05d;margin-bottom:7px}.z18-admin-empty>b{font-size:11.5px;color:#31405a}.z18-admin-empty>small{font-size:9.5px;margin-top:2px}
.z18-admin-menu-foot{display:flex;align-items:center;gap:6px;padding:10px 12px;border-top:1px solid #edf0f5;background:#fbfcfe}.z18-admin-menu-foot a{flex:1;text-align:center;min-height:32px;display:grid;place-items:center;border:1px solid #e5e9f0;border-radius:9px;background:#fff;color:#526079!important;font-size:9.5px!important;font-weight:750!important;text-decoration:none!important}.z18-admin-menu-foot a:hover{border-color:#cdc1f5;color:#653fe0!important}
@media(max-width:1360px){.z18-admin-menu{right:-18px}}
@media(max-width:900px){.z18-admin-wrap{align-self:auto}.z18-admin-menu{position:fixed;left:12px;right:12px;top:86px;width:auto;max-height:calc(100vh - 100px);overflow:auto}.z18-admin-toggle{min-width:66px}}
@media(max-width:620px){.z18-admin-menu{left:8px;right:8px;top:128px}.z18-admin-metrics{grid-template-columns:repeat(3,1fr)}.z18-admin-menu-foot{flex-wrap:wrap}.z18-admin-menu-foot a{min-width:90px}}

/* ZUPIX v39.4 — role-aware admin center */
.z18-admin-metrics{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))!important}

/* ZUPIX v40 — Pro entry */
.z18-pro-action{position:relative;min-width:62px;height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-decoration:none;color:#7c879d;border-radius:16px;transition:.18s ease}
.z18-pro-action>span{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#f0ebff,#eaf2ff);border:1px solid #e1ddfb;box-shadow:0 7px 18px rgba(77,70,190,.08)}
.z18-pro-action>span b{font:900 10px/1 Inter,system-ui,sans-serif;letter-spacing:.02em;background:linear-gradient(135deg,#7647f6,#4f52f4 52%,#2360f5);-webkit-background-clip:text;background-clip:text;color:transparent}
.z18-pro-action small{font-size:10px;font-weight:700;line-height:1}.z18-pro-action:hover,.z18-pro-action.active{background:#f6f4ff;color:#6244e9}.z18-pro-action.is-pro>span{background:linear-gradient(135deg,#7548f6,#4f54f4 55%,#2f7bf5);border-color:transparent;box-shadow:0 9px 21px rgba(79,82,244,.22)}.z18-pro-action.is-pro>span b{color:#fff;background:none;-webkit-text-fill-color:#fff}
@media(max-width:1100px){.z18-pro-action{min-width:54px}.z18-pro-action small{font-size:9px}}

/* ---- assets/css/marketplace-taxonomy-header-v1.css ---- */
/* ZUPIX premium taxonomy visuals for header mega-menu */
.z18-catalog-groups>a{min-height:58px;gap:11px;padding:7px 10px!important;border-radius:15px!important}.z18-mega-cat-icon{width:42px!important;height:42px!important;min-width:42px;border-radius:13px!important;display:grid!important;place-items:center!important;overflow:visible!important;background:transparent!important}.z18-mega-cat-icon:before,.z18-mega-cat-icon:after{display:none!important}.z18-mega-cat-icon img{display:block;width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 6px 9px rgba(52,39,102,.12))}.z18-catalog-groups>a>b{font-size:13px;line-height:1.2}.z18-catalog-popular{gap:10px!important}.z18-catalog-popular a{padding:8px 6px!important;border-radius:16px!important}.z18-catalog-popular a>span{width:64px!important;height:64px!important;border-radius:18px!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}.z18-catalog-popular a>span img{width:64px!important;height:64px!important;object-fit:contain!important;padding:0!important;filter:drop-shadow(0 8px 12px rgba(50,38,96,.13))}.z18-catalog-popular a>span>b{font-size:20px;color:#6a42ed}.z18-catalog-popular a>b{font-size:11.5px!important;max-width:76px;line-height:1.18}.z18-catalog-columns a.z18-catalog-more{margin-top:6px;color:#6a42ed;font-weight:800}@media(max-width:900px){.z18-catalog-popular a>span,.z18-catalog-popular a>span img{width:56px!important;height:56px!important}.z18-mega-cat-icon,.z18-mega-cat-icon img{width:38px!important;height:38px!important;min-width:38px}}

/* ---- assets/css/zupix-ui-consistency-v1.css ---- */
/* ZUPIX typography v1.2 — one UI font across the product. */
html,body{font-family:"Onest",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important}
button,input,select,textarea{font-family:inherit!important}
.z18-header,.ztx-body,.z14-body,.zpx-v13{font-family:"Onest",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important}
/* ZUPIX UI consistency layer v1.0.0 */
:root{
  --z-font-xs:11px;--z-font-sm:12px;--z-font-md:13px;--z-font-base:14px;--z-font-lg:16px;
  --z-line-tight:1.25;--z-line-base:1.45;--z-focus:0 0 0 3px rgba(105,68,239,.22);
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,input,select,textarea{font-family:inherit}
button,a,input,select,textarea{outline:none}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:var(--z-focus)!important;outline:2px solid transparent!important;outline-offset:2px}
input,select,textarea{font-size:max(13px,1em)}
img{max-width:100%}
.z18-mega-cat-icon{position:relative;overflow:hidden}
.z18-mega-cat-icon.has-image::before{display:none!important;content:none!important}
.z18-mega-cat-icon img{display:block;width:100%;height:100%;object-fit:contain;padding:4px;box-sizing:border-box}
.z18-avatar{position:relative;overflow:hidden}
.z18-avatar-fallback{position:absolute;inset:0;display:grid;place-items:center}
.z18-avatar img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover}
.z18-actions small,.z18-profile-copy small{font-size:11px!important}
.z18-search input{font-size:14px!important}
.z18-catalog-caption{font-size:11px!important}
.ztx-entity small{font-size:11.5px!important}
.ztx-type-grid span{font-size:12px!important}
.z29-buyer-fields span{font-size:12.5px!important}
.z28-field label,.z14-field label{font-size:13px!important;line-height:1.35!important}
.z28-field input,.z28-field select,.z28-field textarea,.z14-input,.z14-select,.z14-textarea{font-size:14px!important;line-height:1.4!important}
.z28-field small,.z14-field small,.z25-help{font-size:11.5px!important;line-height:1.45!important}
.z28-sell-head p,.z28-section-title p,.z25-cardhead p{font-size:12.5px!important;line-height:1.5!important}
.z28-eyebrow,.z28-preview-head span,.z28-price-summary>span,.z25-store-promo>div>span{font-size:11px!important}
.z28-market-meta,.zsp-product-meta{font-size:11px!important}
.z25-store-meta,.z25-store-kpis span,.z25-collection-head>span{font-size:11px!important}
.z25-store-badges span,.z25-store-nav span{font-size:10px!important}
.z25-store-identity>p,.z25-store-promo p,.z25-collection-head p{font-size:12px!important}
.z25-store-nav a{font-size:12px!important}
.z25-faq-list summary{font-size:13px!important}.z25-faq-list p{font-size:12.5px!important}
.z14-table,.z14-card,.z14-alert{line-height:1.45}
@media(max-width:680px){
  .z18-actions small,.z18-profile-copy small{font-size:10.5px!important}
  .z25-store-meta{font-size:10.5px!important}.z25-store-badges span{font-size:9.5px!important}
  .ztx-entity strong{font-size:13px!important}.ztx-entity small{font-size:11px!important}
}

/* Normalize legacy micro-copy without flattening hierarchy. */
small{line-height:1.4}
.market-card-badge,.market-card-tag,.market-card-offers,.market-card-foot,.market-price-line span,.market-price-discount,
.catalog-dialog-tag,.catalog-legal,.z15-delivery-chip,.zsp-delivery,.zsp-product-badges i,
.z16-product-label,.z16-message-meta em,.z16-message-bubble small{font-size:10.5px!important;line-height:1.35!important}
.category-item small,.steps-list small,.hero-trust-item small,.stats-grid-v3 small{font-size:11.5px!important;line-height:1.4!important}
.z14-table th,.z14-table td{line-height:1.4}
.z14-table th{font-size:11.5px!important}
.z14-table td{font-size:12.5px!important}
@media(max-width:680px){
  input,select,textarea{font-size:16px!important} /* prevents iOS form zoom */
}

/* ---- assets/css/marketplace-catalog-mega-v2.css ---- */
/* ZUPIX catalog mega menu v2 — full marketplace directory */
.z18-header .z18-catalog-mega{
  width:min(1540px,calc(100vw - 24px));
  top:calc(100% - 1px);
  transform:translate(-50%,-6px);
}
.z18-header.catalog-open .z18-catalog-mega{transform:translate(-50%,0)}
.z18-header .z18-catalog-mega-inner{
  grid-template-columns:300px minmax(0,1fr);
  min-height:610px;
  height:min(710px,calc(100vh - 104px));
  max-height:none;
  border:1px solid #e9ecf2;
  border-radius:0 0 26px 26px;
  background:#fff;
  box-shadow:0 30px 70px rgba(24,31,48,.16),0 6px 18px rgba(24,31,48,.06);
  overflow:hidden;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

/* Left directory rail */
.z18-header .z18-catalog-groups{
  padding:26px 18px 22px;
  border-right:1px solid #edf0f4;
  background:#fff;
  overflow:auto;
  scrollbar-width:thin;
}
.z18-catalog-side-head{
  min-height:34px;
  padding:0 12px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.z18-catalog-side-head span{font-size:13px;font-weight:800;color:#111827}
.z18-catalog-side-head a{font-size:11px;font-weight:750;color:#7552e8;text-decoration:none}
.z18-catalog-side-head a:hover{text-decoration:underline;text-underline-offset:3px}
.z18-header .z18-catalog-groups .z18-mega-section-tab,
.z18-header .z18-catalog-groups .z18-mega-quick-link{
  width:100%;
  min-height:58px;
  padding:7px 12px!important;
  border:0;
  border-radius:15px!important;
  background:transparent;
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 18px;
  align-items:center;
  gap:10px;
  color:#171b25;
  text-align:left;
  text-decoration:none;
  cursor:pointer;
  transition:background .16s ease,color .16s ease,transform .16s ease;
}
.z18-header .z18-catalog-groups .z18-mega-section-tab:hover,
.z18-header .z18-catalog-groups .z18-mega-section-tab.is-active,
.z18-header .z18-catalog-groups .z18-mega-quick-link:hover{
  background:#f1f3f7;
  color:#111827;
}
.z18-header .z18-catalog-groups .z18-mega-section-tab:focus-visible,
.z18-header .z18-catalog-groups .z18-mega-quick-link:focus-visible{
  outline:2px solid #7650ed;
  outline-offset:2px;
}
.z18-header .z18-catalog-groups .z18-mega-section-tab>b,
.z18-header .z18-catalog-groups .z18-mega-quick-link>b{
  min-width:0;
  font-size:14px!important;
  line-height:1.22;
  font-weight:650;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.z18-header .z18-catalog-groups .z18-mega-section-tab>i,
.z18-header .z18-catalog-groups .z18-mega-quick-link>i{
  font-style:normal;
  font-size:21px;
  font-weight:400;
  color:#98a2b1;
  transition:transform .16s ease,color .16s ease;
}
.z18-header .z18-catalog-groups .z18-mega-section-tab:hover>i,
.z18-header .z18-catalog-groups .z18-mega-section-tab.is-active>i,
.z18-header .z18-catalog-groups .z18-mega-quick-link:hover>i{color:#5f3fd7;transform:translateX(2px)}
.z18-header .z18-catalog-groups .z18-mega-cat-icon{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  border:0!important;
  border-radius:9px!important;
  background:transparent!important;
  box-shadow:none!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  color:#222833;
}
.z18-header .z18-catalog-groups .z18-mega-cat-icon svg{
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.z18-header .z18-catalog-groups .z18-mega-cat-icon img{
  width:28px!important;
  height:28px!important;
  object-fit:contain!important;
  filter:none!important;
}
.z18-catalog-side-separator{height:1px;margin:16px 10px 14px;background:#edf0f4}
.z18-header .z18-catalog-groups .z18-catalog-caption{
  padding:0 12px 8px;
  color:#8b95a5;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.z18-header .z18-catalog-groups .z18-mega-quick-link{min-height:48px;padding-block:5px!important}
.z18-header .z18-catalog-groups .z18-mega-quick-link>b{font-size:12.5px!important;font-weight:620}
.z18-header .z18-catalog-groups .z18-mega-quick-link .z18-mega-cat-icon{width:27px!important;height:27px!important;min-width:27px!important}
.z18-header .z18-catalog-groups .z18-mega-quick-link .z18-mega-cat-icon img{width:24px!important;height:24px!important}
.z18-header .z18-catalog-groups .z18-mega-quick-link .z18-mega-cat-icon svg{width:20px;height:20px}

/* Right stage */
.z18-catalog-stage{
  min-width:0;
  height:100%;
  overflow:hidden;
  background:#fff;
}
.z18-mega-panel{
  height:100%;
  padding:30px 38px 34px;
  overflow:auto;
  scrollbar-width:thin;
  animation:z18MegaPanelIn .16s ease;
}
.z18-mega-panel[hidden]{display:none!important}
@keyframes z18MegaPanelIn{from{opacity:.45;transform:translateX(5px)}to{opacity:1;transform:none}}
.z18-header .z18-catalog-showcase-head{
  margin-bottom:24px;
  align-items:center;
}
.z18-header .z18-catalog-showcase-head>div{gap:5px}
.z18-header .z18-catalog-showcase-head span{
  color:#959eac;
  font-size:10px;
  letter-spacing:.1em;
  font-weight:800;
}
.z18-header .z18-catalog-showcase-head h2{
  margin:0;
  color:#10131a;
  font-size:26px;
  line-height:1.08;
  letter-spacing:-.55px;
  font-weight:800;
}
.z18-header .z18-catalog-showcase-head>a{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#6d48df;
  font-size:12px;
  font-weight:750;
  text-decoration:none;
}
.z18-header .z18-catalog-showcase-head>a i{font-style:normal;font-size:18px;line-height:1}

/* Main category cards */
.z18-header .z18-catalog-popular{
  display:grid!important;
  grid-template-columns:repeat(10,minmax(0,1fr))!important;
  gap:16px 12px!important;
  margin:0 0 25px!important;
}
.z18-header .z18-catalog-popular>a{
  min-width:0;
  padding:0!important;
  display:grid!important;
  grid-template-rows:auto auto;
  justify-items:center;
  gap:9px!important;
  border-radius:14px!important;
  color:#1d2430;
  text-decoration:none;
  transform:none!important;
}
.z18-header .z18-catalog-popular>a:hover{background:transparent!important;color:#5e3bd4!important}
.z18-header .z18-catalog-popular>a>span{
  width:78px!important;
  height:78px!important;
  border:1px solid #ebedf2!important;
  border-radius:19px!important;
  background:#f7f8fa!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  box-shadow:0 4px 11px rgba(20,28,45,.045)!important;
  transition:transform .17s ease,box-shadow .17s ease,border-color .17s ease;
}
.z18-header .z18-catalog-popular>a:hover>span{
  transform:translateY(-2px);
  border-color:#ddd8f6!important;
  box-shadow:0 10px 21px rgba(48,35,92,.10)!important;
}
.z18-header .z18-catalog-popular>a>span img{
  width:100%!important;
  height:100%!important;
  padding:8px!important;
  object-fit:contain!important;
  filter:none!important;
}
.z18-header .z18-catalog-popular>a>span>b{font-size:24px;color:#6842df}
.z18-header .z18-catalog-popular>a>b{
  width:100%;
  max-width:104px!important;
  min-height:31px;
  font-size:11.5px!important;
  line-height:1.3!important;
  font-weight:570!important;
  text-align:center;
  white-space:normal!important;
  overflow:hidden;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

/* Secondary row */
.z18-mega-subhead{
  margin:2px 0 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.z18-mega-subhead h3{margin:0;color:#151922;font-size:17px;line-height:1.2;font-weight:780}
.z18-mega-subhead a{display:inline-flex;align-items:center;gap:4px;color:#758093;font-size:11px;font-weight:700;text-decoration:none}
.z18-mega-subhead a:hover{color:#6540d8}
.z18-mega-subhead i{font-style:normal;font-size:17px}
.z18-catalog-secondary{
  display:grid;
  grid-template-columns:repeat(10,minmax(0,1fr));
  gap:13px 12px;
  padding-bottom:25px;
  border-bottom:1px solid #eef0f4;
}
.z18-catalog-secondary>a{
  min-width:0;
  display:grid;
  justify-items:center;
  gap:7px;
  color:#2b3340;
  text-decoration:none;
}
.z18-catalog-secondary>a>span{
  width:56px;
  height:56px;
  border:1px solid #eceef2;
  border-radius:15px;
  background:#fafafb;
  display:grid;
  place-items:center;
  overflow:hidden;
  transition:transform .16s ease,border-color .16s ease;
}
.z18-catalog-secondary>a:hover>span{transform:translateY(-2px);border-color:#ddd7f4}
.z18-catalog-secondary img{width:100%;height:100%;padding:6px;object-fit:contain;display:block}
.z18-catalog-secondary span>b{color:#704de0;font-size:17px}
.z18-catalog-secondary>a>b{
  width:100%;
  max-width:96px;
  font-size:10.5px;
  line-height:1.25;
  font-weight:560;
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.z18-catalog-secondary>a:hover>b{color:#5f3bd3}

/* Quick subcategory columns */
.z18-header .z18-catalog-columns{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:42px!important;
  padding:24px 0 0!important;
  border:0!important;
}
.z18-header .z18-catalog-columns>div{display:grid!important;align-content:start!important;gap:8px!important}
.z18-header .z18-catalog-columns h3{margin:0 0 4px!important;font-size:15px!important;line-height:1.2!important}
.z18-header .z18-catalog-columns h3 a{display:inline-flex;align-items:center;gap:3px;color:#141922!important;font-size:15px!important;font-weight:780!important;text-decoration:none!important}
.z18-header .z18-catalog-columns h3 a:hover{color:#5f3bd3!important}
.z18-header .z18-catalog-columns h3 i{font-style:normal;font-size:18px;font-weight:500}
.z18-header .z18-catalog-columns>div>a{
  width:max-content;
  max-width:100%;
  color:#333b48!important;
  font-size:12px!important;
  line-height:1.38!important;
  font-weight:520!important;
  text-decoration:none!important;
}
.z18-header .z18-catalog-columns>div>a:hover{color:#603bd4!important;text-decoration:underline!important;text-underline-offset:3px}

@media(max-width:1360px){
  .z18-header .z18-catalog-mega{width:min(1250px,calc(100vw - 20px))}
  .z18-header .z18-catalog-mega-inner{grid-template-columns:270px minmax(0,1fr)}
  .z18-mega-panel{padding:28px 28px 32px}
  .z18-header .z18-catalog-popular,.z18-catalog-secondary{grid-template-columns:repeat(8,minmax(0,1fr))!important}
  .z18-header .z18-catalog-popular>a:nth-child(n+9),.z18-catalog-secondary>a:nth-child(n+9){display:none!important}
}
@media(max-width:1080px){
  .z18-header .z18-catalog-mega-inner{grid-template-columns:238px minmax(0,1fr);min-height:560px}
  .z18-header .z18-catalog-groups{padding-inline:12px}
  .z18-header .z18-catalog-groups .z18-mega-section-tab>b{font-size:12.5px!important}
  .z18-header .z18-catalog-popular,.z18-catalog-secondary{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  .z18-header .z18-catalog-popular>a:nth-child(n+7),.z18-catalog-secondary>a:nth-child(n+7){display:none!important}
  .z18-header .z18-catalog-columns{gap:24px!important}
}
@media(max-width:900px){
  .z18-header .z18-catalog-mega{width:calc(100vw - 16px)}
  .z18-header .z18-catalog-mega-inner{display:block;height:min(680px,calc(100vh - 112px));min-height:0;border-radius:0 0 20px 20px;overflow:auto}
  .z18-header .z18-catalog-groups{
    position:sticky;
    top:0;
    z-index:2;
    padding:10px 12px;
    display:flex!important;
    align-items:center;
    gap:7px!important;
    border:0;
    border-bottom:1px solid #eceef3;
    overflow-x:auto;
    background:#fff;
  }
  .z18-catalog-side-head,.z18-catalog-side-separator,.z18-header .z18-catalog-groups .z18-catalog-caption,.z18-header .z18-catalog-groups .z18-mega-quick-link{display:none!important}
  .z18-header .z18-catalog-groups .z18-mega-section-tab{
    width:auto;
    min-width:max-content;
    min-height:42px;
    padding:6px 10px!important;
    grid-template-columns:24px auto;
    border-radius:12px!important;
  }
  .z18-header .z18-catalog-groups .z18-mega-section-tab>i{display:none}
  .z18-header .z18-catalog-groups .z18-mega-section-tab .z18-mega-cat-icon{width:22px!important;height:22px!important;min-width:22px!important}
  .z18-header .z18-catalog-groups .z18-mega-section-tab .z18-mega-cat-icon img{width:21px!important;height:21px!important}
  .z18-header .z18-catalog-groups .z18-mega-section-tab .z18-mega-cat-icon svg{width:19px;height:19px}
  .z18-catalog-stage{height:auto;overflow:visible}
  .z18-mega-panel{height:auto;padding:22px 18px 26px;overflow:visible}
  .z18-header .z18-catalog-popular,.z18-catalog-secondary{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .z18-header .z18-catalog-popular>a:nth-child(n+6),.z18-catalog-secondary>a:nth-child(n+6){display:none!important}
  .z18-header .z18-catalog-columns{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .z18-header .z18-catalog-columns>div:nth-child(3){display:none!important}
}
@media(max-width:620px){
  .z18-header .z18-catalog-mega{top:calc(100% - 1px);width:calc(100vw - 10px)}
  .z18-header .z18-catalog-mega-inner{height:calc(100vh - 132px);border-radius:0 0 16px 16px}
  .z18-mega-panel{padding:18px 13px 24px}
  .z18-header .z18-catalog-showcase-head{margin-bottom:18px}
  .z18-header .z18-catalog-showcase-head h2{font-size:21px}
  .z18-header .z18-catalog-showcase-head>div>span{display:none}
  .z18-header .z18-catalog-popular,.z18-catalog-secondary{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:13px 7px!important}
  .z18-header .z18-catalog-popular>a:nth-child(n+5),.z18-catalog-secondary>a:nth-child(n+5){display:none!important}
  .z18-header .z18-catalog-popular>a>span{width:62px!important;height:62px!important;border-radius:16px!important}
  .z18-header .z18-catalog-popular>a>b{font-size:10px!important;max-width:78px!important}
  .z18-catalog-secondary>a>span{width:49px;height:49px;border-radius:13px}
  .z18-header .z18-catalog-columns{grid-template-columns:1fr 1fr!important;gap:18px!important}
  .z18-header .z18-catalog-columns h3 a{font-size:13px!important}
  .z18-header .z18-catalog-columns>div>a{font-size:11px!important}
}

/* ---- assets/css/zupix-pro-global-v40.css ---- */
.zpx-catalog-pay{margin:11px 0;padding:12px;border:1px solid #e0e1f4;border-radius:14px;background:linear-gradient(135deg,#fbf9ff,#f3f6ff);font-family:Inter,system-ui,sans-serif}.zpx-catalog-pay>label{display:flex;align-items:center;gap:9px;cursor:pointer}.zpx-catalog-pay>label input{width:17px;height:17px;accent-color:#654ff0}.zpx-catalog-pay>label span{display:grid;gap:2px}.zpx-catalog-pay>label b{font-size:11.5px;color:#1c2540}.zpx-catalog-pay>label small,.zpx-catalog-pay>small{font-size:9.5px;color:#7f8ba0}.zpx-catalog-pay>div{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:9px}.zpx-catalog-pay>div input{height:38px;border:1px solid #d8dcea;border-radius:10px;padding:0 10px;font:700 11px Inter,sans-serif}.zpx-catalog-pay>div button{height:38px;border:0;border-radius:10px;padding:0 12px;background:linear-gradient(135deg,#7447f5,#4e62f5);color:#fff;font:700 10px Inter,sans-serif}.zpx-catalog-pay>small{display:block;margin-top:7px}

/* ---- assets/css/zupix-font-onest-v41.css ---- */
/* ZUPIX v41 — global Onest typography */

:root{
  --zupix-font:"Onest",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

html,
body{
  font-family:var(--zupix-font)!important;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/*
 * Loaded after the legacy stylesheets. The deliberately high-specificity
 * :not(#...) selector also replaces old !important Inter declarations
 * without having to touch every component stylesheet separately.
 */
html body *:not(#zupix-font-override){
  font-family:var(--zupix-font)!important;
}

/* Technical values / secret keys remain monospace for readability. */
html body code:not(#zupix-font-override),
html body pre:not(#zupix-font-override),
html body kbd:not(#zupix-font-override),
html body samp:not(#zupix-font-override),
html body .z14-secret:not(#zupix-font-override){
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace!important;
}


/* ZUPIX v41.1 — larger Onest UI scale
 * Onest has a different optical size than the previous UI font.  Legacy
 * components used many 8–11px labels, so keep the layout density but move
 * user-facing copy into a readable 11.5–16px range.
 */
:root{
  --zupix-text-xs:11.5px;
  --zupix-text-sm:12.5px;
  --zupix-text-md:14px;
  --zupix-text-base:15px;
  --zupix-text-lg:16px;
}
html{font-size:16px!important}
body{font-size:var(--zupix-text-base)!important;line-height:1.46}

/* Forms and generic controls. */
html body button:not(#zupix-font-override),
html body input:not(#zupix-font-override),
html body select:not(#zupix-font-override),
html body textarea:not(#zupix-font-override){font-size:14px!important}
html body small:not(#zupix-font-override){font-size:11.5px!important;line-height:1.4!important}

/* Universal marketplace header. */
html body .z18-catalog-button{font-size:14px!important}
html body .z18-catalog-button b{font-weight:500!important}
html body .z18-search input{font-size:16px!important}
html body .z18-icon-action small,
html body .z18-sell-action small{font-size:12.5px!important;line-height:1.1!important}
html body .z18-profile-copy b{font-size:14.5px!important}
html body .z18-profile-copy small{font-size:12px!important}
html body .z18-catalog-caption{font-size:11.5px!important}
html body .z18-catalog-groups>a b{font-size:14px!important}
html body .z18-catalog-showcase-head h2{font-size:23px!important}
html body .z18-catalog-showcase-head p{font-size:12.5px!important}
html body .z18-admin-menu-head span{font-size:10.5px!important}
html body .z18-admin-menu-head b{font-size:16px!important}
html body .z18-admin-menu-head>a{font-size:12px!important}
html body .z18-admin-metrics span{font-size:11px!important}
html body .z18-admin-feed>a b{font-size:12px!important}
html body .z18-admin-feed>a small{font-size:11px!important}
html body .z18-admin-empty>b{font-size:13px!important}
html body .z18-admin-empty>small{font-size:11px!important}
html body .z18-admin-menu-foot a{font-size:11px!important}

/* Main category rail and marketplace cards. */
html body .premium-home .market-rail-label{font-size:13.25px!important;line-height:1.24!important;font-weight:600!important;max-width:106px!important}
html body .premium-home .market-card-badge,
html body .premium-home .market-card-top-badge,
html body .premium-home .market-card-vip-badge{font-size:10px!important}
html body .premium-home .market-card-tag,
html body .premium-home .market-card-offers{font-size:10.5px!important}
html body .premium-home .market-card-body h3{font-size:15.5px!important;line-height:1.4!important}
html body .premium-home .market-price-line strong{font-size:21px!important}
html body .premium-home .market-price-line del{font-size:12px!important}
html body .premium-home .market-price-discount{font-size:10.5px!important}
html body .premium-home .market-seller-chip{font-size:11.5px!important}
html body .premium-home .market-seller-chip b{font-size:12px!important}
html body .premium-home .market-card-rating{font-size:10.5px!important}
html body .premium-home .market-stars{font-size:11.5px!important}
html body .premium-home .market-card-rating b{font-size:11px!important}
html body .premium-home .products-heading p{font-size:12.5px!important}
html body .premium-home .product-tabs button{font-size:12px!important}
html body .premium-home .view-all{font-size:12px!important}
html body .premium-home>.market-trust-strip b{font-size:12px!important}
html body .premium-home>.market-trust-strip span{font-size:10.5px!important}

/* Generic catalog/product UI (also covers category/search pages). */
html body .market-card-badge,
html body .market-card-tag,
html body .market-card-offers,
html body .market-card-foot,
html body .market-price-line span,
html body .market-price-discount,
html body .catalog-dialog-tag,
html body .catalog-legal,
html body .z15-delivery-chip,
html body .zsp-delivery,
html body .zsp-product-badges i{font-size:11.5px!important;line-height:1.35!important}
html body .market-card-body h3{font-size:15.5px!important;line-height:1.4!important}
html body .market-seller-chip{font-size:11.5px!important}
html body .market-seller-chip b{font-size:12px!important}
html body .market-card-rating{font-size:10.5px!important}
html body .market-toolbar p,
html body .products-heading p,
html body .market-deals-head p{font-size:12.5px!important}

/* Seller/product forms and seller panel. */
html body .z28-field label,
html body .z14-field label{font-size:14px!important}
html body .z28-field input,
html body .z28-field select,
html body .z28-field textarea,
html body .z14-input,
html body .z14-select,
html body .z14-textarea{font-size:15px!important}
html body .z28-field small,
html body .z14-field small,
html body .z25-help{font-size:12.5px!important}
html body .z28-sell-head p,
html body .z28-section-title p,
html body .z25-cardhead p{font-size:13.5px!important}
html body .z28-eyebrow,
html body .z28-preview-head span,
html body .z28-price-summary>span,
html body .z25-store-promo>div>span,
html body .z28-market-meta,
html body .zsp-product-meta,
html body .z25-store-meta,
html body .z25-store-kpis span,
html body .z25-collection-head>span{font-size:12px!important}
html body .z25-store-badges span,
html body .z25-store-nav span{font-size:11.5px!important}
html body .z25-store-identity>p,
html body .z25-store-promo p,
html body .z25-collection-head p,
html body .z25-store-nav a{font-size:13px!important}
html body .z25-faq-list summary{font-size:14px!important}
html body .z25-faq-list p{font-size:13px!important}
html body .z14-table th{font-size:12.5px!important}
html body .z14-table td{font-size:13.5px!important}

/* Order + chat. */
html body .z16-live-status,
html body .z16-sound-btn,
html body .z16-chat-error{font-size:12.5px!important}
html body .z16-product-label,
html body .z16-message-meta em,
html body .z16-message-bubble small{font-size:11.5px!important}
html body .z16-message-bubble{font-size:14px!important;line-height:1.5!important}

/* ZUPIX Pro — remove tiny fintech micro-copy. */
html body .zpro-pro-badge,
html body .zpro-active-badge{font-size:11px!important}
html body .zpro-probar p{font-size:14px!important}
html body .zpro-card-v2 .zpro-card-top b em,
html body .zpro-card-v2 .zpro-card-top span,
html body .zpro-bank-brand span,
html body .zpro-bank-tier{font-size:10.5px!important}
html body .zpro-card-balance small,
html body .zpro-bank-balance small{font-size:11.5px!important}
html body .zpro-card-balance span,
html body .zpro-bank-balance span{font-size:12px!important}
html body .zpro-card-bottom,
html body .zpro-bank-footer b,
html body .zpro-bank-virtual{font-size:10.5px!important}
html body .zpro-bank-footer small{font-size:9.5px!important}
html body .zpro-overview-head>div:first-child>span{font-size:10.5px!important}
html body .zpro-balance-chip small{font-size:10px!important}
html body .zpro-balance-chip b{font-size:14px!important}
html body .zpro-metrics-v2 span{font-size:11.5px!important}
html body .zpro-pro-tip>span{font-size:10.5px!important}
html body .zpro-pro-tip b{font-size:13px!important}
html body .zpro-pro-tip small{font-size:11px!important}
html body .zpro-benefits-v2 b{font-size:13px!important}
html body .zpro-benefits-v2 span{font-size:11.5px!important}
html body .zpro-seller-panel-v2 .zpro-seller-copy>span{font-size:10.5px!important}
html body .zpro-seller-panel-v2 .zpro-seller-stats span{font-size:10.5px!important}
html body .zpro-seller-panel-v2 .zpro-seller-stats small{font-size:9.5px!important}
html body .zpro-wallet-actions a span{font-size:12.5px!important}
html body .zpro-wallet-actions a small{font-size:10.5px!important}
html body .zpro-account-balance>div:first-child>span{font-size:11.5px!important}
html body .zpro-account-rate span,
html body .zpro-account-rate small{font-size:10px!important}

/* Legacy/common cards and helper copy. */
html body .category-item small,
html body .steps-list small,
html body .hero-trust-item small,
html body .stats-grid-v3 small{font-size:12.5px!important}
html body .ztx-entity strong{font-size:14px!important}
html body .ztx-entity small{font-size:12px!important}
html body .ztx-type-grid span{font-size:13px!important}
html body .z29-buyer-fields span{font-size:13.5px!important}

@media(max-width:680px){
  body{font-size:14px!important}
  html body input:not(#zupix-font-override),
  html body select:not(#zupix-font-override),
  html body textarea:not(#zupix-font-override){font-size:16px!important}
  html body .z18-icon-action small,
  html body .z18-sell-action small{font-size:11.5px!important}
  html body .premium-home .market-rail-label{font-size:11.5px!important;line-height:1.22!important;font-weight:600!important;max-width:82px!important}
  html body .premium-home .market-card-body h3,
  html body .market-card-body h3{font-size:13px!important}
  html body .premium-home .market-price-line strong{font-size:17px!important}
  html body .premium-home .market-seller-chip b{font-size:10.5px!important}
  html body .premium-home .market-card-rating{font-size:9.5px!important}
  html body .premium-home>.market-trust-strip b{font-size:10px!important}
  html body .premium-home>.market-trust-strip span{font-size:9px!important}
}

/* ZUPIX v41.3 — unified header action set
 * Pro / favorites / sell / chats / seller / admin now share one visual grid.
 */
html body .z18-actions{
  align-items:center!important;
  gap:2px!important;
}
html body .z18-actions>.z18-pro-action,
html body .z18-actions>.z18-icon-action,
html body .z18-actions>.z18-sell-action,
html body .z18-actions>.z18-admin-wrap{
  width:72px!important;
  min-width:72px!important;
  height:66px!important;
  flex:0 0 72px!important;
}
html body .z18-actions>.z18-pro-action,
html body .z18-actions>.z18-icon-action,
html body .z18-actions>.z18-sell-action,
html body .z18-admin-wrap>.z18-admin-toggle{
  padding:5px 4px!important;
  border-radius:14px!important;
  gap:5px!important;
  justify-content:center!important;
  align-items:center!important;
  color:#6f7b91!important;
}
html body .z18-admin-wrap{
  align-self:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
html body .z18-admin-wrap>.z18-admin-toggle{
  width:72px!important;
  min-width:72px!important;
  height:66px!important;
}

/* One 32×32 icon surface for every header action. */
html body .z18-pro-action>span,
html body .z18-icon-action>span,
html body .z18-sell-action>.z18-sell-plus,
html body .z18-admin-toggle>span,
html body .z18-seller-panel-icon>span{
  box-sizing:border-box!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  padding:0!important;
  border-radius:10px!important;
  display:grid!important;
  place-items:center!important;
  background:#f5f3ff!important;
  border:1px solid #e8e4fb!important;
  color:#4f46e5!important;
  box-shadow:none!important;
}
html body .z18-icon-action>span svg,
html body .z18-admin-toggle>span svg,
html body .z18-seller-panel-icon>span svg{
  width:20px!important;
  height:20px!important;
  stroke-width:1.85!important;
}

/* Pro stays branded, but no longer has a bigger/heavier icon than neighbours. */
html body .z18-pro-action.is-pro>span,
html body .z18-pro-action.active>span{
  background:linear-gradient(135deg,#f2edff,#edf4ff)!important;
  border-color:#ded7fb!important;
  box-shadow:none!important;
}
html body .z18-pro-action>span b,
html body .z18-pro-action.is-pro>span b{
  font-family:var(--zupix-font)!important;
  font-size:9px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.015em!important;
  background:linear-gradient(135deg,#6f3ff1,#315ff4)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
}

/* Sell uses the same tile instead of a visually larger filled circle. */
html body .z18-sell-action>.z18-sell-plus{
  font-family:var(--zupix-font)!important;
  font-size:20px!important;
  font-weight:500!important;
  line-height:1!important;
}

/* One label system for all actions. */
html body .z18-pro-action small,
html body .z18-icon-action small,
html body .z18-sell-action small,
html body .z18-admin-toggle small{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  font-family:var(--zupix-font)!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.15!important;
  letter-spacing:-.01em!important;
  color:#6f7b91!important;
}
html body .z18-pro-action:hover,
html body .z18-icon-action:hover,
html body .z18-sell-action:hover,
html body .z18-admin-toggle:hover,
html body .z18-pro-action.active,
html body .z18-icon-action.active,
html body .z18-admin-toggle.active,
html body .z18-admin-toggle[aria-expanded="true"]{
  background:#f8f7ff!important;
  color:#5b42e9!important;
}
html body .z18-pro-action:hover small,
html body .z18-icon-action:hover small,
html body .z18-sell-action:hover small,
html body .z18-admin-toggle:hover small,
html body .z18-pro-action.active small,
html body .z18-icon-action.active small,
html body .z18-admin-toggle.active small,
html body .z18-admin-toggle[aria-expanded="true"] small{
  color:#5b42e9!important;
}

/* Notification badges share the same anchor geometry. */
html body .z18-icon-action>em,
html body .z18-admin-toggle>em{
  top:2px!important;
  right:5px!important;
  min-width:18px!important;
  height:18px!important;
  padding:0 4px!important;
  line-height:18px!important;
  font-size:9.5px!important;
  font-weight:800!important;
}

@media(max-width:1360px){
  html body .z18-actions>.z18-pro-action,
  html body .z18-actions>.z18-icon-action,
  html body .z18-actions>.z18-sell-action,
  html body .z18-actions>.z18-admin-wrap{
    width:60px!important;
    min-width:60px!important;
    flex-basis:60px!important;
  }
  html body .z18-admin-wrap>.z18-admin-toggle{width:60px!important;min-width:60px!important}
  html body .z18-pro-action small,
  html body .z18-icon-action small,
  html body .z18-sell-action small,
  html body .z18-admin-toggle small{font-size:11.5px!important}
}
@media(max-width:1080px){
  html body .z18-seller-panel-icon small{display:none!important}
}
@media(max-width:900px){
  html body .z18-actions>.z18-pro-action,
  html body .z18-actions>.z18-icon-action,
  html body .z18-actions>.z18-sell-action,
  html body .z18-actions>.z18-admin-wrap{
    width:72px!important;
    min-width:72px!important;
    flex-basis:72px!important;
  }
  html body .z18-admin-wrap>.z18-admin-toggle{width:72px!important;min-width:72px!important}
}

/* ZUPIX v41.4 — restore original header action visuals.
 * Keep v41.3 geometry/alignment, return the previous individual button styling.
 */

/* Ordinary header actions: icon without the unified square tile. */
html body .z18-icon-action>span,
html body .z18-admin-toggle>span{
  box-sizing:border-box!important;
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  min-height:25px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#172139!important;
  box-shadow:none!important;
}
html body .z18-icon-action>span svg,
html body .z18-admin-toggle>span svg{
  width:22px!important;
  height:22px!important;
  stroke-width:1.8!important;
}
html body .z18-icon-action:hover>span,
html body .z18-icon-action.active>span,
html body .z18-admin-toggle:hover>span,
html body .z18-admin-toggle.active>span,
html body .z18-admin-toggle[aria-expanded="true"]>span{
  color:#5f36ed!important;
}

/* Seller keeps its original soft-purple bag tile. */
html body .z18-seller-panel-icon>span{
  width:29px!important;
  height:29px!important;
  min-width:29px!important;
  min-height:29px!important;
  padding:4px!important;
  border:0!important;
  border-radius:9px!important;
  background:#eee9ff!important;
  color:#6236e9!important;
  box-shadow:none!important;
}
html body .z18-seller-panel-icon>span svg{
  width:21px!important;
  height:21px!important;
}
html body .z18-seller-panel-icon.active>span{
  background:#6b3cf0!important;
  color:#fff!important;
}

/* Sell returns to the original filled gradient circle. */
html body .z18-sell-action>.z18-sell-plus{
  width:29px!important;
  height:29px!important;
  min-width:29px!important;
  min-height:29px!important;
  border:0!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,#8050ff,#3186f7)!important;
  color:#fff!important;
  font-size:21px!important;
  font-weight:500!important;
  line-height:1!important;
  box-shadow:0 6px 15px rgba(96,61,232,.20)!important;
}

/* Pro returns to its own branded card-like icon. */
html body .z18-pro-action>span{
  box-sizing:border-box!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  padding:0!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#f0ebff,#eaf2ff)!important;
  border:1px solid #e1ddfb!important;
  color:#5f45eb!important;
  box-shadow:0 7px 18px rgba(77,70,190,.08)!important;
}
html body .z18-pro-action.is-pro>span,
html body .z18-pro-action.active>span{
  background:linear-gradient(135deg,#7548f6,#4f54f4 55%,#2f7bf5)!important;
  border-color:transparent!important;
  box-shadow:0 9px 21px rgba(79,82,244,.22)!important;
}
html body .z18-pro-action>span b{
  font-family:var(--zupix-font)!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.02em!important;
  background:linear-gradient(135deg,#7647f6,#4f52f4 52%,#2360f5)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
}
html body .z18-pro-action.is-pro>span b,
html body .z18-pro-action.active>span b{
  background:none!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Restore the previous individual hover surfaces while retaining v41.3 alignment. */
html body .z18-icon-action:hover,
html body .z18-icon-action.active{
  background:#f7f8fb!important;
  color:#5f36ed!important;
}
html body .z18-sell-action:hover{
  background:#f7f8fb!important;
  color:#6136ea!important;
}
html body .z18-pro-action:hover,
html body .z18-pro-action.active{
  background:#f6f4ff!important;
  color:#6244e9!important;
}
html body .z18-admin-toggle.active,
html body .z18-admin-toggle[aria-expanded="true"]{
  background:#f5f2ff!important;
  color:#6038ea!important;
}

/* ZUPIX v41.5 — optical normalization of classic header actions.
 * Preserve each action's original visual language while giving every icon
 * the same 32×32 layout slot and identical vertical rhythm.
 */
html body .z18-actions>.z18-pro-action,
html body .z18-actions>.z18-icon-action,
html body .z18-actions>.z18-sell-action,
html body .z18-admin-wrap>.z18-admin-toggle{
  display:grid!important;
  grid-template-rows:32px 14px!important;
  align-content:center!important;
  justify-items:center!important;
  row-gap:5px!important;
  padding:5px 4px!important;
}

/* Every top icon occupies exactly the same physical slot. */
html body .z18-pro-action>span,
html body .z18-icon-action>span,
html body .z18-sell-action>.z18-sell-plus,
html body .z18-admin-toggle>span,
html body .z18-seller-panel-icon>span{
  box-sizing:border-box!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  margin:0!important;
  align-self:center!important;
  justify-self:center!important;
}

/* Classic ordinary actions remain visually transparent. */
html body .z18-icon-action:not(.z18-seller-panel-icon)>span,
html body .z18-admin-toggle>span{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  display:grid!important;
  place-items:center!important;
}
html body .z18-icon-action:not(.z18-seller-panel-icon)>span svg,
html body .z18-admin-toggle>span svg{
  width:22px!important;
  height:22px!important;
  margin:0!important;
}

/* Seller keeps the soft-purple classic tile, now in the same 32px slot. */
html body .z18-seller-panel-icon>span{
  padding:5px!important;
  border-radius:10px!important;
  background:#eee9ff!important;
  color:#6236e9!important;
  display:grid!important;
  place-items:center!important;
}
html body .z18-seller-panel-icon>span svg{
  width:21px!important;
  height:21px!important;
  margin:0!important;
}

/* Sell keeps its filled circle, normalized to the shared slot. */
html body .z18-sell-action>.z18-sell-plus{
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  font-size:21px!important;
  line-height:1!important;
}

/* Pro remains a branded rounded tile, but no longer looks larger. */
html body .z18-pro-action>span{
  border-radius:10px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
}
html body .z18-pro-action>span b{
  font-size:9.5px!important;
  line-height:1!important;
}

/* All labels get the same line box, baseline and spacing. */
html body .z18-pro-action small,
html body .z18-icon-action small,
html body .z18-sell-action small,
html body .z18-admin-toggle small{
  height:14px!important;
  min-height:14px!important;
  line-height:14px!important;
  margin:0!important;
  padding:0!important;
  align-self:start!important;
  white-space:nowrap!important;
}

/* Keep notification dots anchored to the same action box. */
html body .z18-icon-action,
html body .z18-admin-toggle{position:relative!important}
html body .z18-icon-action>em,
html body .z18-admin-toggle>em{
  top:4px!important;
  right:7px!important;
}

/* ZUPIX v41.6 — final optical balance for classic header actions.
 * Keep the classic visual language from v41.4/v41.5, but equalize perceived
 * icon weight rather than forcing every glyph to look mathematically equal.
 */
html body .z18-actions>.z18-pro-action,
html body .z18-actions>.z18-icon-action,
html body .z18-actions>.z18-sell-action,
html body .z18-admin-wrap>.z18-admin-toggle{
  grid-template-rows:32px 14px!important;
  row-gap:3px!important;
  padding-top:5px!important;
  padding-bottom:4px!important;
}

/* Neutral line icons need a little more optical size than filled tiles. */
html body .z18-icon-action:not(.z18-seller-panel-icon)>span svg,
html body .z18-admin-toggle>span svg{
  width:24px!important;
  height:24px!important;
  stroke-width:1.8!important;
}

/* Chat has more negative space than the heart/shield, compensate slightly. */
html body .z18-icon-action[href*="chats.php"]>span svg{
  width:24.5px!important;
  height:24.5px!important;
}

/* Keep classic filled actions, but make their visible surface a touch smaller
 * inside the same 32×32 layout slot so they no longer dominate the row. */
html body .z18-pro-action>span,
html body .z18-sell-action>.z18-sell-plus,
html body .z18-seller-panel-icon>span{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  align-self:center!important;
  justify-self:center!important;
}

html body .z18-pro-action>span{
  border-radius:9px!important;
}
html body .z18-pro-action>span b{
  font-size:9px!important;
  letter-spacing:.015em!important;
}

html body .z18-sell-action>.z18-sell-plus{
  font-size:20px!important;
  box-shadow:0 7px 16px rgba(91,69,238,.20)!important;
}

html body .z18-seller-panel-icon>span{
  padding:4.5px!important;
  border-radius:9px!important;
}
html body .z18-seller-panel-icon>span svg{
  width:20.5px!important;
  height:20.5px!important;
}

/* Labels remain on one optical baseline and no action receives extra visual weight. */
html body .z18-pro-action small,
html body .z18-icon-action small,
html body .z18-sell-action small,
html body .z18-admin-toggle small{
  font-size:12px!important;
  font-weight:600!important;
  line-height:14px!important;
  height:14px!important;
  letter-spacing:-.01em!important;
}

/* Badges follow the shared 32px slot after the optical resize. */
html body .z18-icon-action>em,
html body .z18-admin-toggle>em{
  top:3px!important;
  right:6px!important;
}

/* ---- assets/css/zupix-final-polish-v42.css ---- */
/* ZUPIX v42 — final product polish. Visual consistency only; no business logic. */
:root{
  --z42-page-pad:clamp(16px,2vw,30px);
  --z42-focus:0 0 0 3px rgba(91,82,243,.18);
  --z42-line:#e4e8f1;
  --z42-muted:#7b879d;
}
html{scroll-behavior:smooth}
html,body{max-width:100%;overflow-x:hidden}
body{font-family:var(--zupix-font,"Onest",ui-sans-serif,system-ui,sans-serif);font-synthesis:none}
button,input,select,textarea{font-family:inherit}
button,a,[role="button"]{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid transparent!important;outline-offset:2px!important;box-shadow:var(--z42-focus)!important}

/* Header: preserve the chosen classic icon language, just tighten interaction. */
.z18-catalog-button,.z18-search button,.z18-icon-action,.z18-sell-action,.z18-pro-action,.z18-admin-toggle{transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.z18-search input::placeholder{color:#9aa6ba;opacity:1}
.z18-profile-copy{min-width:0}.z18-profile-copy b,.z18-profile-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Marketplace/category rail: reliable clipping and controls on every viewport. */
.market-category-rail,.market-rail,.market-rail-track{scrollbar-width:none}
.market-category-rail::-webkit-scrollbar,.market-rail::-webkit-scrollbar,.market-rail-track::-webkit-scrollbar{display:none}
.market-rail-arrow,.market-rail-nav,.market-category-arrow{z-index:4}
.premium-home .market-rail-label{min-width:0}

/* Seller/admin/product surfaces: consistent readable microcopy. */
.z14-main small,.z28-main small,.z25-main small,.zsp-main small{line-height:1.4}
.z14-main .z14-status{font-size:11px!important}
.z14-main .z14-btn.small{font-size:12px!important}
.z14-main .z14-help,.z14-main .z14-note{font-size:11.5px!important}
.z14-main .z14-tablewrap{border-radius:14px;overscroll-behavior-inline:contain}
.z14-main .z14-table th{white-space:nowrap}
.z14-main .z14-field input,.z14-main .z14-field select,.z14-main .z14-field textarea{min-width:0}

/* Admin Pro page had legacy 8–10px labels. */
.pro-admin{max-width:1540px!important;padding-left:var(--z42-page-pad)!important;padding-right:var(--z42-page-pad)!important}
.pro-plan-edit label{font-size:12.5px!important}.pro-fixed-benefit b{font-size:12px!important}.pro-fixed-benefit span{font-size:11.5px!important}.pro-fixed-benefit small{font-size:10.5px!important;line-height:1.35!important}
.pro-admin-table{overflow-x:auto}.pro-admin-table th{font-size:11.5px!important}.pro-admin-table td{font-size:13px!important}

/* Order chat: keep message controls readable and prevent accidental overflow. */
.z16-message-bubble,.z16-chat-shell,.z16-chat-body{min-width:0}
.z16-message-bubble{overflow-wrap:anywhere}

/* Images never distort their cards while loading. */
img{max-width:100%}

@media(max-width:900px){
  .z14-pagehead{align-items:flex-start!important}
  .pro-admin-grid{grid-template-columns:1fr!important}
  .pro-plan-edit form{grid-template-columns:1fr 1fr!important}
}
@media(max-width:620px){
  :root{--z42-page-pad:12px}
  .pro-plan-edit form{grid-template-columns:1fr!important}
  .z14-pagehead{gap:12px!important}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* ---- Search suggestions / keyboard search v43 ---- */
.z18-search{position:relative}
.z18-search-suggest{position:absolute;z-index:1200;left:0;right:0;top:calc(100% + 10px);display:block;padding:8px;background:#fff;border:1px solid rgba(15,23,42,.1);border-radius:18px;box-shadow:0 20px 50px rgba(15,23,42,.14);overflow:hidden}
.z18-search-suggest[hidden]{display:none!important}
.z18-search-suggest-head{display:flex;align-items:center;justify-content:space-between;padding:7px 10px 5px;color:#8a94a7;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.z18-search-suggest [role="option"]{display:flex;align-items:center;gap:10px;width:100%;padding:10px 11px;border:0;border-radius:12px;background:transparent;color:#172033;text-align:left;text-decoration:none;cursor:pointer;font:inherit}
.z18-search-suggest [role="option"]:hover,.z18-search-suggest [role="option"].is-active{background:#f2f5fb;color:#1d4ed8}
.z18-search-suggest [role="option"]>span{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;background:#edf2ff;color:#315efb;font-weight:900}
.z18-search-suggest [role="option"]>div{min-width:0;display:flex;flex-direction:column;gap:2px}
.z18-search-suggest [role="option"] b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.z18-search-suggest [role="option"] small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8a94a7;font-size:11px}
.z18-search-suggest-empty{padding:13px 12px;color:#8a94a7;font-size:12px}
.z18-search kbd{display:none}
@media (min-width:1100px){.z18-search:focus-within:after{content:'Ctrl K';position:absolute;right:45px;top:50%;transform:translateY(-50%);padding:2px 6px;border:1px solid #dce2ed;border-radius:6px;background:#f8fafc;color:#9aa5b7;font-size:10px;pointer-events:none}.z18-search:focus-within:has(input:not(:placeholder-shown)):after{display:none}}
@media (max-width:760px){.z18-search-suggest{position:fixed;left:10px;right:10px;top:68px;max-height:min(60vh,420px);overflow:auto}}

/* PATCH-008 render-cost controls for long marketplace pages. */
@supports (content-visibility:auto){
  .market-trust-strip{content-visibility:auto;contain-intrinsic-size:auto 190px}
  .z18-footer{content-visibility:auto;contain-intrinsic-size:auto 360px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* ZUPIX PATCH-009 — stable header geometry across page transitions.
   Keep the logo/catalog columns explicit so async font/state changes cannot
   move the search field when navigating between product and home pages. */
@media (min-width:1361px){
  .z18-header-shell{grid-template-columns:176px 128px minmax(300px,1fr) max-content!important}
  .z18-brand{width:176px!important;min-width:176px!important;max-width:176px!important}
  .z18-catalog-button{width:128px!important;min-width:128px!important;max-width:128px!important}
  .z18-search{justify-self:stretch!important;margin-left:0!important;transform:none!important}
}
@media (min-width:1081px) and (max-width:1360px){
  .z18-header-shell{grid-template-columns:138px 112px minmax(230px,1fr) max-content!important}
  .z18-brand{width:138px!important;min-width:138px!important;max-width:138px!important}
  .z18-catalog-button{width:112px!important;min-width:112px!important;max-width:112px!important}
  .z18-search{justify-self:stretch!important;margin-left:0!important;transform:none!important}
}
@media (min-width:901px) and (max-width:1080px){
  .z18-header-shell{grid-template-columns:138px 50px minmax(180px,1fr) max-content!important}
  .z18-brand{width:138px!important;min-width:138px!important;max-width:138px!important}
  .z18-catalog-button{width:50px!important;min-width:50px!important;max-width:50px!important}
  .z18-search{justify-self:stretch!important;margin-left:0!important;transform:none!important}
}


/* ZUPIX PATCH-010 — deterministic desktop header geometry.
   The search column no longer grows/shrinks with the number of actions on the
   right (guest / buyer / seller / staff). Its x-position and width depend only
   on the viewport breakpoint, so navigating between pages cannot make it jump. */
@media (min-width:1560px){
  .z18-header-shell{grid-template-columns:176px 128px 520px minmax(0,1fr)!important}
  .z18-brand{width:176px!important;min-width:176px!important;max-width:176px!important}
  .z18-catalog-button{width:128px!important;min-width:128px!important;max-width:128px!important}
  .z18-search{width:520px!important;min-width:520px!important;max-width:520px!important;justify-self:start!important;margin:0!important;transform:none!important}
  .z18-actions{width:100%!important;min-width:0!important;justify-self:stretch!important;justify-content:flex-end!important}
}
@media (min-width:1361px) and (max-width:1559px){
  .z18-header-shell{grid-template-columns:176px 128px 420px minmax(0,1fr)!important}
  .z18-brand{width:176px!important;min-width:176px!important;max-width:176px!important}
  .z18-catalog-button{width:128px!important;min-width:128px!important;max-width:128px!important}
  .z18-search{width:420px!important;min-width:420px!important;max-width:420px!important;justify-self:start!important;margin:0!important;transform:none!important}
  .z18-actions{width:100%!important;min-width:0!important;justify-self:stretch!important;justify-content:flex-end!important}
  html body .z18-actions>.z18-pro-action,
  html body .z18-actions>.z18-icon-action,
  html body .z18-actions>.z18-sell-action,
  html body .z18-actions>.z18-admin-wrap{width:60px!important;min-width:60px!important;flex-basis:60px!important}
  html body .z18-admin-wrap>.z18-admin-toggle{width:60px!important;min-width:60px!important}
  .z18-profile-copy{display:none!important}
  .z18-profile{min-width:62px!important;width:62px!important;padding-inline:6px!important}
}
@media (min-width:1081px) and (max-width:1360px){
  .z18-header-shell{grid-template-columns:138px 112px 300px minmax(0,1fr)!important}
  .z18-brand{width:138px!important;min-width:138px!important;max-width:138px!important}
  .z18-catalog-button{width:112px!important;min-width:112px!important;max-width:112px!important}
  .z18-search{width:300px!important;min-width:300px!important;max-width:300px!important;justify-self:start!important;margin:0!important;transform:none!important}
  .z18-actions{width:100%!important;min-width:0!important;justify-self:stretch!important;justify-content:flex-end!important}
}
@media (min-width:901px) and (max-width:1080px){
  .z18-header-shell{grid-template-columns:138px 50px 210px minmax(0,1fr)!important}
  .z18-brand{width:138px!important;min-width:138px!important;max-width:138px!important}
  .z18-catalog-button{width:50px!important;min-width:50px!important;max-width:50px!important}
  .z18-search{width:210px!important;min-width:210px!important;max-width:210px!important;justify-self:start!important;margin:0!important;transform:none!important}
  .z18-actions{width:100%!important;min-width:0!important;justify-self:stretch!important;justify-content:flex-end!important}
}
