/* 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}
}

/* ZUPIX PATCH-011 — restore compact header while keeping cross-page stability.
   PATCH-010 pinned the search width and right-aligned the actions inside a
   flexible final column. On wide screens that created a large empty gap and
   visually pushed the entire actions group to the far right.

   Reserve a deterministic actions column instead. The search remains stable
   between pages/user states, while actions begin directly after the search.
   Profile text is preserved on full desktop widths. */
@media (min-width:1500px){
  .z18-header-shell{
    grid-template-columns:176px 128px minmax(360px,1fr) 680px!important;
    gap:14px!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:auto!important;min-width:0!important;max-width:none!important;
    justify-self:stretch!important;margin:0!important;transform:none!important;
  }
  .z18-actions{
    width:auto!important;min-width:0!important;
    justify-self:stretch!important;justify-content:flex-start!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:auto!important;min-width:66px!important;flex-basis:auto!important;
  }
  html body .z18-admin-wrap>.z18-admin-toggle{width:auto!important;min-width:66px!important}
  .z18-profile-copy{display:flex!important}
  .z18-profile{width:auto!important;min-width:142px!important;padding:6px 8px 6px 10px!important}
}
@media (min-width:1361px) and (max-width:1499px){
  .z18-header-shell{
    grid-template-columns:176px 128px minmax(330px,1fr) 590px!important;
    gap:14px!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:auto!important;min-width:0!important;max-width:none!important;
    justify-self:stretch!important;margin:0!important;transform:none!important;
  }
  .z18-actions{
    width:auto!important;min-width:0!important;
    justify-self:stretch!important;justify-content:flex-start!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:auto!important;min-width:60px!important;flex-basis:auto!important;
  }
  html body .z18-admin-wrap>.z18-admin-toggle{width:auto!important;min-width:60px!important}
  .z18-profile-copy{display:flex!important}
  .z18-profile{width:auto!important;min-width:126px!important;padding:6px 7px 6px 9px!important}
  .z18-profile-copy b{max-width:92px!important}
}
@media (min-width:1081px) and (max-width:1360px){
  .z18-header-shell{
    grid-template-columns:138px 112px minmax(260px,1fr) 450px!important;
    gap:12px!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:auto!important;min-width:0!important;max-width:none!important;
    justify-self:stretch!important;margin:0!important;transform:none!important;
  }
  .z18-actions{
    width:auto!important;min-width:0!important;
    justify-self:stretch!important;justify-content:flex-start!important;
  }
}
@media (min-width:901px) and (max-width:1080px){
  .z18-header-shell{
    grid-template-columns:138px 50px minmax(180px,1fr) 380px!important;
    gap:12px!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:auto!important;min-width:0!important;max-width:none!important;
    justify-self:stretch!important;margin:0!important;transform:none!important;
  }
  .z18-actions{
    width:auto!important;min-width:0!important;
    justify-self:stretch!important;justify-content:flex-start!important;
  }
}

/* ZUPIX PATCH-012 — balanced desktop header actions.
   PATCH-011 reserved a fixed 680/590/450/380px column for the action menu and
   aligned its contents to the start. When fewer actions are visible (guest or
   regular buyer), the menu therefore sits too far left and leaves an empty
   block on the right. Use a content-sized final column instead: the actions
   stay flush to the right edge and the search field consumes the free space. */
@media (min-width:1361px){
  .z18-header-shell{
    grid-template-columns:176px 128px minmax(300px,1fr) max-content!important;
  }
  .z18-search{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    justify-self:stretch!important;
    margin:0!important;
    transform:none!important;
  }
  .z18-actions{
    width:max-content!important;
    min-width:max-content!important;
    justify-self:end!important;
    justify-content:flex-end!important;
  }
}
@media (min-width:1081px) and (max-width:1360px){
  .z18-header-shell{
    grid-template-columns:138px 112px minmax(230px,1fr) max-content!important;
  }
  .z18-search{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    justify-self:stretch!important;
    margin:0!important;
    transform:none!important;
  }
  .z18-actions{
    width:max-content!important;
    min-width:max-content!important;
    justify-self:end!important;
    justify-content:flex-end!important;
  }
}
@media (min-width:901px) and (max-width:1080px){
  .z18-header-shell{
    grid-template-columns:138px 50px minmax(180px,1fr) max-content!important;
  }
  .z18-search{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    justify-self:stretch!important;
    margin:0!important;
    transform:none!important;
  }
  .z18-actions{
    width:max-content!important;
    min-width:max-content!important;
    justify-self:end!important;
    justify-content:flex-end!important;
  }
}

/* ZUPIX PATCH-013 — header visual balance and clean guest state.
   Keeps PATCH-012 responsive geometry, but removes the oversized header feel
   and makes the unauthenticated account action a single-purpose "Войти" item. */
@media (min-width:901px){
  .z18-header{padding-inline:28px!important}
  .z18-header-shell{
    min-height:84px!important;
    padding-top:9px!important;
    padding-bottom:9px!important;
    align-items:center!important;
  }
  .z18-actions{gap:2px!important}
  .z18-profile.z18-profile-guest{
    width:auto!important;
    min-width:104px!important;
    height:60px!important;
    padding:5px 11px 5px 7px!important;
    gap:9px!important;
  }
  .z18-profile.z18-profile-guest .z18-avatar{
    width:40px!important;
    height:40px!important;
  }
  .z18-profile.z18-profile-guest .z18-profile-copy{
    display:flex!important;
    justify-content:center!important;
  }
  .z18-profile.z18-profile-guest .z18-profile-copy b{
    max-width:none!important;
    font-size:14px!important;
    line-height:1.15!important;
  }
}
@media (min-width:1361px){
  .z18-header-shell{max-width:1600px!important}
  .z18-search{max-width:none!important}
  .z18-actions{align-self:center!important}
}
@media (min-width:901px) and (max-width:1360px){
  .z18-header{padding-inline:20px!important}
  .z18-profile.z18-profile-guest{
    min-width:58px!important;
    width:58px!important;
    padding:5px!important;
  }
  .z18-profile.z18-profile-guest .z18-profile-copy{display:none!important}
}
@media (max-width:900px){
  .z18-profile.z18-profile-guest{min-width:112px!important}
  .z18-profile.z18-profile-guest .z18-profile-copy{display:flex!important}
}

