/* perpz — the theme layer on top of purps-base.css: the reference site's layout with the Pons palette
   (near-black surfaces, lime accent). Dark is the default; the light mode keeps the same structure. */
:root, [data-mode="dark"] {
  --p-bg: #0E0F1A; --p-surface: #151726; --p-surface-light: #1A1D2F; --p-surface-raised: #212439;
  --p-text-primary: #F0F1F9; --p-text-secondary: #B0B3C8; --p-text-muted: #83879E; --p-text-subtle: #666A82; --p-text-placeholder: #666A82;
  --p-border-subtle: rgba(196, 203, 242, 0.07); --p-border-default: rgba(196, 203, 242, 0.11); --p-border-strong: rgba(196, 203, 242, 0.2);
  --p-overlay-subtle: rgba(196, 203, 242, 0.025); --p-overlay-soft: rgba(196, 203, 242, 0.045); --p-overlay-hover: rgba(196, 203, 242, 0.07); --p-overlay-strong: rgba(196, 203, 242, 0.11);
  --p-status-green: #3FB587; --p-status-green-bg: rgba(63, 181, 135, 0.15); --p-status-green-text: #5FC79E;
  --p-status-gold: #D6AE5C; --p-status-gold-bg: rgba(214, 174, 92, 0.15); --p-status-gold-text: #D6AE5C;
  --p-status-graphite: #B7B2A9; --p-status-graphite-bg: rgba(255, 255, 255, 0.07); --p-status-graphite-text: #B7B2A9;
  --p-red: #f4726f; --p-red-bg: rgba(244, 114, 111, 0.12);
  --p-pal-accent: #6ea0ff; --p-flame: #ff8a52;
  --p-promo-purple: #b3a1fa; --p-promo-purple-bg: rgba(167, 139, 250, 0.16); --p-promo-blue-bg: rgba(96, 152, 255, 0.19);
  --p-art-filter: blur(44px) saturate(1.25); --p-art-opacity: 0.12; --p-art-blend: screen; --p-selection: rgba(255, 255, 255, 0.16);
  --p-card-hover-shadow: 0 10px 26px -8px rgba(0, 0, 0, 0.7);
  --pz-accent: #3A49B8; --pz-accent-hover: #4a5ad0; --pz-accent-ink: #F2F0FA; --pz-blue: rgba(110, 160, 255, 0.9); --pz-glow: #6ea0ff;
  color-scheme: dark;
}
[data-mode="light"] {
  --p-bg: #ffffff; --p-surface: #ffffff; --p-surface-light: #f4f7ff; --p-surface-raised: #e9eefc;
  --p-text-primary: #0e1a3a; --p-text-secondary: #3d4a6b; --p-text-muted: #6b7590; --p-text-subtle: #9aa3bb; --p-text-placeholder: #9aa3bb;
  --p-border-subtle: rgba(37, 87, 214, 0.1); --p-border-default: rgba(37, 87, 214, 0.16); --p-border-strong: rgba(37, 87, 214, 0.3);
  --p-overlay-subtle: rgba(37, 87, 214, 0.03); --p-overlay-soft: rgba(37, 87, 214, 0.05); --p-overlay-hover: rgba(37, 87, 214, 0.08); --p-overlay-strong: rgba(37, 87, 214, 0.12);
  --p-status-green: #1F9D6B; --p-status-green-bg: #E4F2EB; --p-status-green-text: #16734E;
  --p-status-gold: #c79a3f; --p-status-gold-bg: #f6eedc; --p-status-gold-text: #876213;
  --p-status-graphite: #3d4a6b; --p-status-graphite-bg: #eef1fa; --p-status-graphite-text: #3d4a6b;
  --p-red: #d63a3a; --p-red-bg: rgba(214, 58, 58, 0.08);
  --p-pal-accent: #2557d6; --p-flame: #d8571c;
  --p-promo-purple: #2557d6; --p-promo-purple-bg: rgba(37, 87, 214, 0.1); --p-promo-blue-bg: rgba(37, 87, 214, 0.14);
  --p-art-filter: blur(44px) saturate(1.6); --p-art-opacity: 0.26; --p-art-blend: normal; --p-selection: rgba(37, 87, 214, 0.16);
  --p-card-hover-shadow: 0 10px 26px -12px rgba(37, 87, 214, 0.25);
  --pz-accent: #2557d6; --pz-accent-hover: #1e48b8; --pz-accent-ink: #ffffff; --pz-blue: rgba(37, 87, 214, 0.9); --pz-glow: #2557d6;
  color-scheme: light;
}
html, body { background: var(--p-bg); }
body { color: var(--p-text-primary); }
::selection { background: var(--p-selection); }
.p-when-light { display: contents; } .p-when-dark { display: none; }
[data-mode="dark"] .p-when-light { display: none; } [data-mode="dark"] .p-when-dark { display: contents; }

/* the primary button (Create / Next / Connect) is the Pons lime pill */
.css-waxpwj, .css-1p1y1gb, .css-1q2bkdn, .css-1n314pa:hover, .css-2tmyxl:hover { background: var(--pz-accent) !important; color: var(--pz-accent-ink) !important; border-color: var(--pz-accent) !important; }
.css-waxpwj:hover, .css-1p1y1gb:hover { background: var(--pz-accent-hover) !important; }
.css-1dacwme { background: var(--p-promo-purple-bg); color: var(--p-promo-purple); }
.css-skpnh0, .css-14pu5s7 { background: var(--pz-accent); }
.css-7657xr { background: var(--pz-accent); }
.css-eq2qnp { background: var(--pz-accent); }
input:focus-visible, textarea:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(110, 160, 255, 0.16); border-color: rgba(110, 160, 255, 0.9) !important; }
.chakra-ui-dark .css-1e82nut { background: var(--p-surface-raised); }
a { color: inherit; }
button { font-family: inherit; }

/* colour variants the reference generated as separate classes */
.pz-pos { color: var(--p-status-green-text) !important; }
.pz-neg { color: var(--p-red) !important; }
.pz-mut { color: var(--p-text-muted) !important; }
.pz-hide { display: none !important; }
.pz-show { display: flex !important; }
.pz-coin { display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; background: var(--p-surface-light); color: var(--p-text-primary); font-weight: 700; font-family: var(--chakra-fonts-mono); overflow: hidden; flex-shrink: 0; }
.pz-coin img { width: 100%; height: 100%; object-fit: cover; }
.pz-logo-img { width: 32px; height: 32px; border-radius: 8px; object-fit: cover; flex-shrink: 0; background: var(--p-surface-raised); }
.pz-side { display: inline-flex; align-items: center; height: 18px; padding-inline: 6px; border-radius: 5px; font-size: 10px; font-weight: 700; letter-spacing: 0.04em; font-family: var(--chakra-fonts-mono); }
.pz-side.long { background: var(--p-status-green-bg); color: var(--p-status-green-text); }
.pz-side.short { background: var(--p-red-bg); color: var(--p-red); }
.pz-chain { display: flex; align-items: center; justify-content: center; width: 18px; height: 18px; border-radius: 999px; border: 1px solid var(--p-border-strong); background: var(--p-surface-light); overflow: hidden; }
.pz-chain img { width: 12px; height: 12px; border-radius: 999px; object-fit: cover; }
.pz-art { position: absolute; inset: -20%; background-size: cover; background-position: center; filter: var(--p-art-filter); opacity: var(--p-art-opacity); pointer-events: none; mix-blend-mode: var(--p-art-blend); mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.9), transparent 70%); z-index: 0; }
.pz-hero-chart { width: 100%; height: 100%; display: block; }
.pz-menu { position: absolute; right: 24px; top: 58px; z-index: 60; width: 236px; padding: 6px; background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 16px; box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35); }
.pz-menu a, .pz-menu button { display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px 12px; border-radius: 10px; font-size: 14px; font-weight: 600; color: var(--p-text-primary); text-decoration: none; background: transparent; border: 0; cursor: pointer; text-align: left; }
.pz-menu a:hover, .pz-menu button:hover { background: var(--p-overlay-hover); }
.pz-menu svg { width: 16px; height: 16px; color: var(--p-text-secondary); }
.pz-menu hr { border: 0; border-top: 1px solid var(--p-border-subtle); margin: 6px 4px; }
.pz-modal-bg { position: fixed; inset: 0; z-index: 80; background: rgba(0, 0, 0, 0.55); backdrop-filter: blur(6px); display: flex; align-items: center; justify-content: center; padding: 20px; }
.pz-modal { width: 100%; max-width: 360px; background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 22px; padding: 22px 20px 18px; box-shadow: 0 24px 60px rgba(0, 0, 0, 0.5); position: relative; }
.pz-modal h3 { margin: 0 0 16px; font-size: 18px; font-weight: 700; text-align: center; }
.pz-modal .x { position: absolute; top: 14px; right: 14px; width: 28px; height: 28px; border-radius: 8px; display: flex; align-items: center; justify-content: center; background: transparent; border: 0; color: var(--p-text-muted); cursor: pointer; }
.pz-modal .opt { display: flex; align-items: center; gap: 12px; width: 100%; padding: 12px 14px; border-radius: 12px; border: 1px solid var(--p-border-default); background: var(--p-surface-light); color: var(--p-text-primary); font-weight: 600; font-size: 14px; cursor: pointer; margin-top: 10px; }
.pz-modal .opt:hover { border-color: var(--p-border-strong); }
.pz-modal .opt svg { width: 18px; height: 18px; }
.pz-modal .sub { font-size: 12px; color: var(--p-text-muted); text-align: center; margin-top: 14px; }
.pz-search-list { position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 50; background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 16px; padding: 6px; box-shadow: 0 16px 48px rgba(0, 0, 0, 0.4); }
.pz-search-list .row { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 10px; cursor: pointer; }
.pz-search-list .row:hover { background: var(--p-overlay-hover); }
.pz-search-list img, .pz-search-list .pz-coin { width: 26px; height: 26px; border-radius: 7px; object-fit: cover; }
.pz-search-list .nm { font-size: 14px; font-weight: 700; } .pz-search-list .dn { font-size: 13px; color: var(--p-text-muted); flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pz-search-list .rt { font-size: 12px; color: var(--p-text-muted); font-family: var(--chakra-fonts-mono); white-space: nowrap; }
.pz-empty { padding: 26px 16px; text-align: center; color: var(--p-text-muted); font-size: 14px; }
.pz-empty b { display: block; color: var(--p-text-primary); font-size: 15px; margin-bottom: 4px; }
.pz-chart-wrap { position: relative; width: 100%; height: 332px; }
.pz-chart-wrap canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
.pz-bars { position: relative; height: 220px; }
.pz-bars svg { width: 100%; height: 100%; display: block; }
.pz-lev-row { display: grid; grid-template-columns: 1fr; gap: 4px; }
.pz-bar { height: 10px; border-radius: 999px; background: var(--p-surface-raised); overflow: hidden; }
.pz-bar i { display: block; height: 100%; background: var(--p-text-primary); border-radius: 999px; }
.pz-station { transition: opacity 0.2s; }
.pz-station.dim { opacity: 0.45; }
.pz-dropdown { position: absolute; top: calc(100% + 6px); left: 0; z-index: 50; min-width: 220px; background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 14px; padding: 6px; box-shadow: 0 16px 48px rgba(0, 0, 0, 0.4); }
.pz-dropdown .opt { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; padding: 9px 10px; border-radius: 9px; border: 0; background: transparent; color: var(--p-text-primary); font-size: 13px; font-weight: 600; cursor: pointer; text-align: left; }
.pz-dropdown .opt:hover, .pz-dropdown .opt.on { background: var(--p-overlay-hover); }
.pz-dropdown .lab { font-size: 10px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--p-text-muted); padding: 8px 10px 4px; }
.pz-toast { position: fixed; bottom: 22px; left: 50%; transform: translateX(-50%); z-index: 90; background: var(--p-surface); color: var(--p-text-primary); border: 1px solid var(--p-border-default); border-radius: 12px; padding: 10px 16px; font-size: 13px; font-weight: 600; box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4); max-width: 90vw; }
.pz-toast.bad { border-color: var(--p-red); }
.pz-stat-num { font-size: 22px; font-weight: 700; letter-spacing: -0.02em; font-family: var(--chakra-fonts-mono); line-height: 1.2; margin: 4px 0 2px; }
.pz-leg-mini { display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 999px; background: var(--p-surface-light); overflow: hidden; flex-shrink: 0; font-size: 8px; font-weight: 700; }
.pz-leg-mini img { width: 100%; height: 100%; object-fit: cover; }
.pz-lev-input { width: 44px; text-align: center; background: transparent; border: 0; color: var(--p-text-primary); font-weight: 700; font-family: var(--chakra-fonts-mono); font-size: 13px; }
.pz-alloc { width: 40px; background: transparent; border: 0; color: var(--p-text-muted); font-size: 12px; font-family: var(--chakra-fonts-mono); text-align: right; }
.pz-pct { font-size: 12px; color: var(--p-text-muted); font-family: var(--chakra-fonts-mono); }
.pz-legend { display: inline-block; width: 10px; height: 10px; border-radius: 3px; }
@media (max-width: 47.9em) { .pz-menu { right: 12px; } }
/* the "Buy on" split button and the create-flow primary chips take the lime */
.css-1g19p73 { background: var(--pz-accent) !important; color: var(--pz-accent-ink) !important; }
.css-1g19p73 .css-k4el0f, .css-1g19p73 .css-1ueydpc, .css-1g19p73 .css-142c3gn { color: var(--pz-accent-ink) !important; }
.css-e2fy96 { background: var(--p-status-green-bg) !important; color: var(--p-status-green-text) !important; }
.css-sreye { background: var(--pz-accent) !important; color: var(--pz-accent-ink) !important; }
.pz-docs pre { background: var(--p-surface-light); border: 1px solid var(--p-border-subtle); border-radius: 12px; padding: 12px 14px; font-family: var(--chakra-fonts-mono); font-size: 12.5px; overflow: auto; color: var(--p-text-primary); margin: 0; }
.pz-docs code { font-family: var(--chakra-fonts-mono); font-size: 12.5px; background: var(--p-surface-light); padding: 1px 5px; border-radius: 5px; }
.pz-docs .ep { display: grid; grid-template-columns: 90px 1fr; gap: 6px 14px; padding: 12px 0; border-top: 1px solid var(--p-border-subtle); }
.pz-docs .m { font-family: var(--chakra-fonts-mono); font-size: 11px; font-weight: 700; color: var(--pz-accent); padding-top: 3px; }
.pz-docs .p { font-family: var(--chakra-fonts-mono); font-size: 13px; font-weight: 600; }
.pz-docs .d { font-size: 13px; color: var(--p-text-secondary); grid-column: 2; }

/* ── Perpz-specific looks (not in the reference): brand lockup, pair chips, squared-off buttons and cards ── */
.pz-brand { display: flex; flex-direction: column; align-items: flex-start; gap: 1px; line-height: 1; }
.pz-brand .pz-lockup { height: 30px; }
.pz-powered { font-size: 10px; font-weight: 600; letter-spacing: 0.04em; color: var(--p-text-muted); padding-left: 2px; white-space: nowrap; }
.pz-powered b { color: var(--pz-accent); font-weight: 700; }
@media (max-width: 640px) { .pz-brand .pz-lockup { height: 26px; } .pz-powered { display: none; } }
.pz-pair-on { border-color: var(--pz-accent) !important; box-shadow: inset 0 0 0 1px var(--pz-accent); }
.css-d69bqy, .css-1hdppj { border-radius: 9px; }
.css-1jt6qhp { border-radius: 999px; background: var(--p-surface); }
.css-u6gmlj { border-bottom: 1px solid var(--p-border-default); }
.css-waxpwj, .css-1p1y1gb, .css-1q2bkdn, .css-11ojzn7, .css-m9jtjd, .css-18zoouo, .css-1dacwme, .css-h7wpih { border-radius: 10px !important; }
.css-1nizo9a, .css-1w7g6tl, .css-1rr4qq7, .css-1v7bxah, .css-icy08h, .css-fwcz6i, .css-ye719 { border-radius: 14px !important; }
.css-rnnxd5 { border-radius: 10px !important; }
.css-1lleae0 { border-radius: 10px; }
.css-1lleae0 > button { border-radius: 8px !important; }
.css-1p1y1gb, .css-waxpwj { letter-spacing: 0.01em; text-transform: uppercase; font-size: 12px; font-weight: 800; }
.css-1y9jwx7 { border: 1px solid var(--p-border-default); }
.pz-modal .opt.on { border-color: var(--pz-accent); }
.pz-modal .opt b { font-weight: 800; color: var(--pz-accent); }

/* ── floating centered header ── */
.css-u6gmlj { background: transparent !important; border-bottom: 0 !important; padding: 12px 16px 4px; position: sticky; top: 0; }
.css-a79qd1 { max-width: 1120px; background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 18px; padding: 8px 12px 8px 16px !important; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35); }
[data-mode="light"] .css-a79qd1 { box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08); }
.css-1dyo3ki { justify-content: center; }
.css-1k4qbqj { max-width: 460px; }
@media (max-width: 640px) { .css-u6gmlj { padding: 8px 8px 0; } .css-a79qd1 { border-radius: 14px; padding: 6px 8px 6px 12px !important; } }

/* ── coins table: keep the market column from stacking over its label ── */
.css-6frtoi { width: 150px; gap: 0; }
.css-1ogttxh { margin-right: 12px; }
.css-1s0hlhz { flex: 1 1 140px; min-width: 120px; }
.css-1om1zc4 { flex-wrap: nowrap; }
.css-xq60qe, .css-hy2v3c { white-space: nowrap; }

/* ── bonding curve progress on the coin page ── */
.pz-curve { background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 14px; padding: 14px 16px; margin-bottom: 12px; }
.pz-curve-top { display: flex; justify-content: space-between; align-items: center; font-size: 12px; font-weight: 700; color: var(--p-text-muted); letter-spacing: 0.03em; text-transform: uppercase; }
.pz-curve-top b { color: var(--p-text-primary); }
.pz-curve-bar { height: 8px; border-radius: 999px; background: var(--p-surface-light); margin: 10px 0 8px; overflow: hidden; }
.pz-curve-bar i { display: block; height: 100%; background: var(--pz-accent); border-radius: 999px; min-width: 2px; }
.pz-curve p { margin: 0; font-size: 12px; color: var(--p-text-muted); }
.pz-curve.done { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: var(--p-status-green-text); }
.pz-curve.done svg { width: 16px; height: 16px; }

.pz-powered { display: inline-flex; align-items: center; gap: 4px; }
.pz-powered img { width: auto; height: 12px; object-fit: contain; display: block; margin-left: 2px; margin-top: -1px; }
.pz-powered .p-when-dark, .pz-powered .p-when-light { display: contents; }
[data-mode="dark"] .pz-powered .p-when-light, [data-mode="light"] .pz-powered .p-when-dark { display: none; }

/* ── grails: games ── */
.pz-games { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pz-game-tile { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 14px; border-radius: 14px; border: 1px solid var(--p-border-default); background: var(--p-surface-light); color: var(--p-text-primary); text-align: left; cursor: pointer; transition: border-color .12s; }
.pz-game-tile:hover { border-color: var(--p-border-strong); }
.pz-game-tile.on { border-color: var(--pz-accent); box-shadow: inset 0 0 0 1px var(--pz-accent); }
.pz-game-tile img { height: 30px; max-width: 120px; object-fit: contain; object-position: left; }
.pz-game-tile b { font-size: 14px; font-weight: 800; }
.pz-game-tile span { font-size: 12px; color: var(--p-text-muted); }
.pz-game-tile em { font-style: normal; font-size: 11px; font-weight: 700; color: var(--pz-accent); }
.pz-game { display: inline-flex; align-items: center; gap: 5px; }
.pz-gi { width: 16px; height: 12px; object-fit: contain; }
.pz-gi-lg { width: 56px; height: 34px; object-fit: contain; flex-shrink: 0; }
[data-mode="dark"] img.pz-gi, [data-mode="dark"] img.pz-gi-lg, [data-mode="dark"] .pz-game-tile img, [data-mode="dark"] .css-1cgzv2m img { filter: brightness(0) invert(1); }
.css-1cgzv2m { border-color: var(--p-border-strong); background: var(--p-surface-light); width: 22px; height: 22px; }
.css-1cgzv2m img { width: 14px; height: 10px; object-fit: contain; }
.pz-powered { gap: 5px; }

[data-mode="dark"] img.css-4gra82[src*="/games/"] { filter: brightness(0) invert(1); }
.css-9530ni.pz-coin { font-size: 16px; }

.pz-game-tile .pz-tile-art { width: 44px; height: 44px; filter: none !important; margin-bottom: 2px; }
.pz-game-tile img { height: 18px; }

.pz-bub { background: var(--pz-accent); border-radius: 999px; overflow: hidden; }
.pz-bub .pz-glogo, .pz-glogo { padding: 18%; box-sizing: border-box; filter: none !important; }
.css-eqamqb.pz-bub { width: 32px; height: 32px; display: flex; align-items: center; justify-content: center; }

/* ── create page: one big card ── */
.pz-create-card { width: 100% !important; max-width: 980px !important; padding: 30px 34px !important; }
.pz-create-card .css-1ptmh8v { height: 48px; }
.pz-create-card .css-1jxpf6w { min-height: 96px; }
.pz-create-card .css-1y9jwx7 { height: 46px !important; }
.pz-create-card .css-d69bqy, .pz-create-card .css-1hdppj { height: 42px; font-size: 14px; }
.pz-create-card .css-1ptmh8v, .pz-create-card .css-1jxpf6w { font-size: 15px; }
.pz-create-card .css-3vp25z { font-size: 12px; }
.pz-summary { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; margin-top: 14px; }
.pz-summary > div { background: var(--p-surface-light); border-radius: 12px; padding: 10px 12px; }
.pz-launch { width: 100%; height: 46px; font-size: 13px; }
@media (max-width: 720px) { .pz-summary { grid-template-columns: repeat(3, 1fr); } }
/* ── footer: keep the big footer inside the page column and tidy ── */
.css-1vvq8dl { margin-top: 28px; padding-top: 28px; }
.css-19yanqx { margin-top: 26px; gap: 32px; align-items: flex-start; }
.css-1vj6vsj { max-width: 420px; }
.css-18un81c { column-gap: 18px; row-gap: 14px; }
.css-13o7eu2, .css-259i0c { margin-top: 20px; padding-top: 14px; border-top: 1px solid var(--p-border-subtle); }
.css-19yanqx { justify-content: flex-start; gap: 64px; }
.css-1vj6vsj { flex: 0 1 auto; }
.css-18un81c { grid-template-columns: repeat(2, minmax(150px, 1fr)) !important; }
footer .css-19mr9ts { max-width: 820px; font-size: 12px; }
.css-1xs1zl3 { max-width: 320px; }

/* ── footer: one compact bar ── */
.pz-footer { margin-top: auto; padding-top: 28px; padding: 16px 0 6px; border-top: 1px solid var(--p-border-subtle); }
.pz-footer-row { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.pz-footer-links { display: flex; gap: 16px; flex-wrap: wrap; margin-left: auto; }
.pz-footer-links a { font-size: 13px; font-weight: 600; color: var(--p-text-muted); text-decoration: none; }
.pz-footer-links a:hover { color: var(--p-text-primary); }
.pz-footer-social { display: flex; gap: 10px; }
.pz-footer-social a { color: var(--p-text-muted); display: flex; }
.pz-footer-social svg { width: 16px; height: 16px; }
.pz-footer-note { margin: 12px 0 0; font-size: 11px; color: var(--p-text-muted); line-height: 1.5; }
@media (max-width: 640px) { .pz-footer-links { margin-left: 0; gap: 12px; } }

/* ── rewards ── */
.pz-rewards { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
.pz-reward { display: flex; gap: 12px; padding: 12px; align-items: flex-start; }
.pz-reward-img { width: 84px; height: 84px; border-radius: 12px; background: var(--p-surface-light); flex-shrink: 0; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.pz-reward-img img { width: 100%; height: 100%; object-fit: contain; }
.pz-reward-body { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.pz-reward-body .css-8kaz6c { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 170px; }
.css-q5ucek[src] { object-fit: contain; }

/* page column fills the viewport so the footer stays at the bottom on short pages */
#app { flex: 1 1 auto; display: flex; flex-direction: column; min-height: 0; }
/* rewards table */
.pz-rt-card { padding: 36px 32px 28px; border-radius: 20px; background: var(--p-surface); border: 1px solid var(--p-border-subtle); }
.pz-rt-head { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 8px; margin-bottom: 26px; }
.pz-rt-head h1 { margin: 0; font-size: 34px; font-weight: 800; letter-spacing: -0.03em; line-height: 1.1; }
.pz-rt-head p { margin: 0; color: var(--p-text-muted); font-size: 14px; }
.pz-rt-tabs { margin-top: 12px; }
.pz-rt-wrap { overflow-x: auto; }
.pz-rt { width: 100%; border-collapse: collapse; }
.pz-rt th { text-align: left; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--p-text-muted); padding: 10px 14px 18px; white-space: nowrap; }
.pz-rt td { padding: 10px 14px; vertical-align: middle; font-size: 14px; font-weight: 700; white-space: nowrap; }
.pz-rt tbody tr { border-top: 1px solid var(--p-border-subtle); }
.pz-rt tbody tr:hover { background: var(--p-surface-light); }
.pz-rt-n { color: var(--p-text-muted); font-size: 12px; width: 32px; }
.pz-rt-item { display: flex; align-items: center; gap: 12px; min-width: 0; }
.pz-rt-img { width: 44px; height: 44px; border-radius: 10px; background: var(--p-surface-light); flex-shrink: 0; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.pz-rt-img img { width: 100%; height: 100%; object-fit: contain; }
.pz-rt-name { display: flex; flex-direction: column; line-height: 1.2; min-width: 0; }
.pz-rt-name b { font-weight: 800; max-width: 260px; overflow: hidden; text-overflow: ellipsis; }
.pz-rt-name span { font-size: 11px; color: var(--p-text-muted); font-weight: 600; }
.pz-rt-val { color: var(--pz-accent); }
.pz-rt-chip { display: inline-flex; align-items: center; padding: 5px 10px; border-radius: 999px; background: var(--p-surface-light); font-size: 12px; font-weight: 700; }
.pz-rt-muted { color: var(--p-text-muted); font-weight: 600; }
.pz-rt-more { display: flex; justify-content: center; margin-top: 22px; }
@media (max-width: 720px) { .pz-rt-card { padding: 24px 12px; } .pz-rt-head h1 { font-size: 26px; } }
/* round game badges (real CS2 / Roblox logos in a circle) */
.pz-gr { --s: 18px; width: var(--s); height: var(--s); border-radius: 999px; background: #fff; display: inline-flex; align-items: center; justify-content: center; overflow: hidden; flex-shrink: 0; box-shadow: 0 0 0 1px rgba(0,0,0,.08); }
.pz-gr img { width: 78%; height: 62%; object-fit: contain; display: block; }
.pz-gr b { font-size: calc(var(--s) * .5); color: #111; }
/* trade panel on the coin page */
.pz-trade-tabs { display: flex; gap: 6px; background: var(--p-surface-light); padding: 4px; border-radius: 12px; }
.pz-trade-tabs button { flex: 1; height: 36px; border-radius: 9px; font-weight: 800; font-size: 14px; color: var(--p-text-muted); background: transparent; }
.pz-trade-tabs button.on { background: var(--pz-accent); color: var(--pz-accent-ink, #111); }
.pz-trade-tabs button.on.sell { background: var(--p-red); color: #fff; }
.pz-trade-in { display: flex; align-items: center; gap: 8px; margin-top: 12px; height: 52px; padding: 0 14px; border-radius: 12px; background: var(--p-surface-light); border: 1px solid var(--p-border-default); }
.pz-trade-in input { flex: 1; min-width: 0; background: none; border: 0; outline: 0; font-size: 22px; font-weight: 800; color: var(--p-text-primary); }
.pz-trade-in span { font-size: 13px; font-weight: 800; color: var(--p-text-muted); }
.pz-trade-quick { display: flex; gap: 6px; margin-top: 8px; }
.pz-trade-quick button { flex: 1; height: 30px; border-radius: 8px; background: var(--p-surface-light); font-size: 12px; font-weight: 700; color: var(--p-text-secondary); }
.pz-trade-quick button:hover { color: var(--p-text-primary); }
.pz-trade-est { margin: 12px 0; font-size: 13px; color: var(--p-text-secondary); min-height: 18px; }
.pz-mini-drops { display: flex; flex-direction: column; gap: 6px; }
.pz-mini-drops a { display: flex; align-items: center; gap: 8px; text-decoration: none; color: var(--p-text-primary); font-size: 12px; font-weight: 700; }
.pz-mini-drops a img, .pz-mini-drops a .pz-coin { width: 28px; height: 28px; border-radius: 8px; flex-shrink: 0; }
.pz-mini-drops a span { flex: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pz-mini-drops a b { color: var(--pz-accent); }
/* create page: fee note, preview + balanced summary */
.pz-feenote { display: flex; flex-direction: column; gap: 4px; padding: 10px 14px; border-radius: 12px; background: var(--p-surface-light); border: 1px dashed var(--p-border-strong); font-size: 12px; line-height: 1.45; color: var(--p-text-secondary); min-height: 46px; justify-content: center; }
.pz-feenote b { color: var(--p-text-primary); font-size: 12px; }
.pz-prev { display: grid; grid-template-columns: 300px 1fr; gap: 16px; align-items: start; margin-top: 14px; }
.pz-prev-card { pointer-events: none; }
.pz-prev-card .css-1nizo9a { width: 100%; }
.pz-prev .pz-summary { grid-template-columns: repeat(3, 1fr); margin-top: 0; }
.pz-summary > div { min-height: 62px; display: flex; flex-direction: column; justify-content: center; gap: 4px; }
.pz-summary .css-tsplqq { font-size: 10px; letter-spacing: .08em; color: var(--p-text-muted); }
.pz-summary .css-16hfre1 { font-size: 14px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 760px) { .pz-prev { grid-template-columns: 1fr; } .pz-prev .pz-summary { grid-template-columns: repeat(2, 1fr); } }

.pz-feerow { display: grid; grid-template-columns: 1fr 1.5fr; gap: 12px; align-items: end; margin-top: 14px; }
@media (max-width: 640px) { .pz-feerow { grid-template-columns: 1fr; } }
/* home coin containers */
/* slab cards */
img.pz-slab { object-fit: contain !important; background: none !important; border-radius: 4px !important; }
.pz-rt-img.slab { width: 44px; height: 57px; border-radius: 6px; background: none; }
.css-q5ucek.pz-slab { width: 30px !important; height: 39px !important; border-radius: 3px !important; }
.pz-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 16px; }
.pz-card { display: flex; flex-direction: column; align-items: center; gap: 4px; text-align: center; }
.pz-card img { width: 100%; aspect-ratio: 600 / 780; object-fit: contain; border-radius: 10px; filter: drop-shadow(0 14px 18px rgba(0,0,0,.45)); transition: transform .18s; }
.pz-card:hover img { transform: translateY(-4px) scale(1.03); }
.pz-card b { font-size: 12px; font-weight: 800; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-top: 6px; }
.pz-card span { font-size: 12px; color: var(--pz-accent); font-weight: 800; }

/* gacha under the chart */
.pz-gacha { padding: 16px 18px 14px; background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 14px; }
.pz-gacha-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; }
.pz-gacha-head > div > b { display: block; font-size: 15px; font-weight: 800; }
.pz-gacha-head > div > span { font-size: 12px; color: var(--p-text-muted); font-weight: 600; }
.pz-gacha-timer { text-align: right; } .pz-gacha-timer span { display: block; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--p-text-muted); font-weight: 700; }
.pz-gacha-timer b { font-size: 22px; font-weight: 800; font-variant-numeric: tabular-nums; color: var(--pz-accent); letter-spacing: -.02em; }
.pz-gacha-bar { height: 3px; border-radius: 999px; background: var(--p-surface-light); margin: 10px 0 14px; overflow: hidden; }
.pz-gacha-bar i { display: block; height: 100%; width: 0; background: var(--pz-accent); transition: width 1s linear; }
.pz-gacha-strip { display: grid; grid-template-columns: repeat(9, 1fr); gap: 8px; }
.pz-gacha-card { display: flex; flex-direction: column; align-items: center; gap: 4px; opacity: .38; filter: grayscale(.6); transition: opacity .2s, filter .2s; }
.pz-gacha-card.lit { opacity: 1; filter: none; }
.pz-gacha-card img { width: 100%; aspect-ratio: 600 / 780; object-fit: contain; border-radius: 6px; }
.pz-gacha-card b { font-size: 11px; font-weight: 800; color: var(--p-text-secondary); }
.pz-gacha-card.lit b { color: var(--pz-accent); }
.pz-gacha-foot { margin: 12px 0 0; font-size: 12px; color: var(--p-text-muted); }
@media (max-width: 700px) { .pz-gacha-strip { grid-template-columns: repeat(5, 1fr); } .pz-gacha-card:nth-child(n+6) { display: none; } }

/* gacha reel */
.pz-gacha-reel { position: relative; overflow: hidden; border-radius: 10px; }
.pz-gacha-pin { position: absolute; left: 50%; top: 0; bottom: 0; width: 2px; margin-left: -1px; background: var(--pz-accent); opacity: 0; z-index: 2; pointer-events: none; }
.pz-gacha-track.spin ~ .pz-gacha-pin, .pz-gacha-reel:has(.spin) .pz-gacha-pin { opacity: 1; }
.pz-gacha-track { display: grid; grid-template-columns: repeat(9, 1fr); gap: 8px; will-change: transform; }
.pz-gacha-track.spin { display: flex; gap: 8px; }
.pz-gacha-track.spin .pz-gacha-card { flex: 0 0 88px; width: 88px; }
.pz-gacha-card.win { opacity: 1; filter: none; }
.pz-gacha-card.win img { box-shadow: 0 0 0 2px var(--pz-accent), 0 0 24px rgba(110, 160, 255, .55); }
.pz-gacha-card.miss img { box-shadow: 0 0 0 2px var(--p-border-strong); }
.pz-gacha-foot a { color: var(--pz-accent); }
/* docs — gitbook style */
.pz-docs2 { display: grid; grid-template-columns: 220px 1fr; gap: 28px; align-items: start; }
.pz-docs-nav { position: sticky; top: 80px; display: flex; flex-direction: column; gap: 2px; padding: 14px 8px; border-right: 1px solid var(--p-border-subtle); }
.pz-docs-nav p { margin: 0 0 6px 10px; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--p-text-muted); font-weight: 700; }
.pz-docs-nav a { padding: 6px 10px; border-radius: 8px; font-size: 13px; font-weight: 600; color: var(--p-text-secondary); text-decoration: none; }
.pz-docs-nav a:hover { background: var(--p-surface-light); color: var(--p-text-primary); }
.pz-docs-main { min-width: 0; max-width: 820px; padding: 10px 0 40px; }
.pz-docs-main section { padding: 26px 0; border-bottom: 1px solid var(--p-border-subtle); scroll-margin-top: 80px; }
.pz-docs-main section:last-child { border-bottom: 0; }
.pz-docs-main h1 { font-size: 36px; font-weight: 800; letter-spacing: -.03em; margin: 0 0 12px; }
.pz-docs-main h2 { font-size: 22px; font-weight: 800; letter-spacing: -.02em; margin: 0 0 12px; }
.pz-docs-main p, .pz-docs-main li { font-size: 14.5px; line-height: 1.65; color: var(--p-text-secondary); }
.pz-docs-main p { margin: 0 0 12px; }
.pz-docs-main b { color: var(--p-text-primary); }
.pz-docs-main a { color: var(--pz-accent); text-decoration: none; }
.pz-doc-lead { font-size: 16px !important; color: var(--p-text-primary) !important; }
.pz-docs-main code { font-family: var(--chakra-fonts-mono); font-size: 12.5px; background: var(--p-surface-light); padding: 2px 6px; border-radius: 6px; color: var(--p-text-primary); word-break: break-all; }
.pz-docs-main pre { background: #0a0a0a; border: 1px solid var(--p-border-subtle); border-radius: 12px; padding: 14px 16px; overflow-x: auto; margin: 10px 0 14px; }
.pz-docs-main pre code { background: none; padding: 0; font-size: 12.5px; line-height: 1.55; white-space: pre; word-break: normal; color: #d6dbe0; }
.pz-doc-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; margin-top: 16px; }
.pz-doc-grid div { background: var(--p-surface-light); border-radius: 12px; padding: 12px 14px; }
.pz-doc-grid b { display: block; font-size: 13px; margin-bottom: 4px; }
.pz-doc-grid span { font-size: 12.5px; color: var(--p-text-muted); line-height: 1.45; }
.pz-doc-steps { padding-left: 20px; margin: 0; } .pz-doc-steps li { margin-bottom: 6px; }
.pz-tbl { width: 100%; border-collapse: collapse; margin: 8px 0 14px; font-size: 13.5px; }
.pz-tbl th { text-align: left; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--p-text-muted); padding: 8px 10px; border-bottom: 1px solid var(--p-border-default); }
.pz-tbl td { padding: 9px 10px; border-bottom: 1px solid var(--p-border-subtle); vertical-align: top; color: var(--p-text-secondary); line-height: 1.5; }
.pz-ep { margin: 18px 0; padding: 14px 16px; border: 1px solid var(--p-border-subtle); border-radius: 12px; background: var(--p-surface); }
.pz-ep-h { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.pz-ep-h code { font-size: 14px; background: none; padding: 0; }
.pz-ep-m { font-size: 11px; font-weight: 800; letter-spacing: .06em; background: var(--pz-accent); color: #111; padding: 3px 8px; border-radius: 6px; }
.pz-doc-lbl { font-size: 11px !important; letter-spacing: .08em; text-transform: uppercase; color: var(--p-text-muted) !important; font-weight: 700; margin: 8px 0 4px !important; }
.pz-faq { border: 1px solid var(--p-border-subtle); border-radius: 10px; padding: 10px 14px; margin-bottom: 8px; }
.pz-faq summary { cursor: pointer; font-weight: 700; font-size: 14px; color: var(--p-text-primary); }
.pz-faq p { margin: 8px 0 0; }
@media (max-width: 860px) { .pz-docs2 { grid-template-columns: 1fr; } .pz-docs-nav { position: static; border-right: 0; flex-direction: row; flex-wrap: wrap; } .pz-docs-nav p { display: none; } }

/* create page: form left, live preview right */
.pz-create-2col { display: grid !important; grid-template-columns: 1fr 320px; gap: 24px; align-items: start; }
.pz-create-form { min-width: 0; }
.pz-prev-side { position: sticky; top: 90px; display: flex; flex-direction: column; }
.pz-prev-side .pz-launch { width: 100%; }
@media (max-width: 900px) { .pz-create-2col { grid-template-columns: 1fr; } .pz-prev-side { position: static; } }
/* sell page */
.pz-sell-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; }
.pz-sell-card { display: flex; gap: 12px; padding: 12px; border-radius: 14px; background: var(--p-surface-light); border: 1px solid var(--p-border-subtle); }
.pz-sell-card img { width: 78px; aspect-ratio: 600 / 780; object-fit: contain; border-radius: 6px; flex-shrink: 0; }
.pz-sell-body { display: flex; flex-direction: column; gap: 4px; min-width: 0; flex: 1; }
.pz-sell-body > b { font-size: 13px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pz-sell-body > span { font-size: 11px; color: var(--p-text-muted); font-weight: 600; }
.pz-sell-price { display: flex; align-items: baseline; gap: 6px; margin-top: auto; } .pz-sell-price b { font-size: 16px; color: var(--pz-accent); } .pz-sell-price span { font-size: 11px; color: var(--p-text-muted); }
.pz-sell-card .pz-launch { height: 34px !important; font-size: 13px; margin-top: 6px; }

.pz-live { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: center; margin-top: 10px; padding: 8px 14px; border-radius: 999px; background: var(--p-surface-light); font-size: 12px; font-weight: 700; color: var(--p-text-secondary); }
.pz-live .dot { width: 8px; height: 8px; border-radius: 999px; background: var(--p-red); box-shadow: 0 0 0 3px rgba(255,80,80,.2); }
.pz-live.ok .dot { background: var(--pz-accent); box-shadow: 0 0 0 3px rgba(110, 160, 255, .25); }
.pz-live .sep { color: var(--p-text-muted); }
.pz-live a { color: var(--p-text-primary); text-decoration: none; display: inline-flex; align-items: center; gap: 4px; }
.pz-live a:hover { color: var(--pz-accent); }

/* the pull reveal */
.pz-blast { position: fixed; inset: 0; z-index: 9000; display: flex; align-items: center; justify-content: center; animation: pzFadeIn .25s ease-out; }
.pz-blast.out { animation: pzFadeOut .6s ease-in forwards; }
.pz-blast-bg { position: absolute; inset: 0; background: radial-gradient(60% 60% at 50% 45%, rgba(110, 160, 255, .25), rgba(0,0,0,.92) 70%); }
.pz-blast.miss .pz-blast-bg { background: radial-gradient(60% 60% at 50% 45%, rgba(255,255,255,.06), rgba(0,0,0,.9) 70%); }
.pz-blast-rays { position: absolute; left: 50%; top: 45%; width: 1600px; height: 1600px; margin: -800px 0 0 -800px; background: repeating-conic-gradient(from 0deg, rgba(110, 160, 255, .18) 0deg 6deg, transparent 6deg 18deg); border-radius: 50%; animation: pzSpin 14s linear infinite; opacity: 0; }
.pz-blast.hit .pz-blast-rays { opacity: 1; }
.pz-blast-conf { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.pz-blast-conf i { position: absolute; left: var(--x); top: -20px; width: 9px; height: 16px; background: var(--c); border-radius: 2px; animation: pzConf var(--d) cubic-bezier(.2,.7,.4,1) 1 forwards; animation-delay: calc(var(--d) * .3); transform: rotate(var(--r)); }
.pz-blast-body { position: relative; text-align: center; color: #fff; display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 24px; animation: pzSlam .7s cubic-bezier(.16,1.4,.3,1); }
.pz-blast-kicker { font-size: 12px; letter-spacing: .28em; font-weight: 800; color: var(--pz-accent); }
.pz-blast-card { width: 300px; max-width: 70vw; aspect-ratio: 600 / 780; border-radius: 16px; box-shadow: 0 0 0 3px var(--pz-accent), 0 0 80px rgba(110, 160, 255, .75), 0 40px 80px rgba(0,0,0,.7); animation: pzGlow 1.6s ease-in-out infinite alternate; }
.pz-blast h2 { margin: 12px 0 0; font-size: 34px; font-weight: 900; letter-spacing: -.03em; text-shadow: 0 6px 30px rgba(0,0,0,.6); }
.pz-blast p { margin: 0; font-size: 16px; color: rgba(255,255,255,.85); } .pz-blast p b { color: var(--pz-accent); font-size: 20px; }
.pz-blast-to a { color: var(--pz-accent); text-decoration: none; }
.pz-blast button { margin-top: 14px; }
@keyframes pzFadeIn { from { opacity: 0; } to { opacity: 1; } } @keyframes pzFadeOut { to { opacity: 0; } }
@keyframes pzSpin { to { transform: rotate(360deg); } }
@keyframes pzSlam { 0% { transform: scale(.2) rotate(-12deg); opacity: 0; } 60% { opacity: 1; } 100% { transform: scale(1) rotate(0); } }
@keyframes pzGlow { from { box-shadow: 0 0 0 3px var(--pz-accent), 0 0 40px rgba(110, 160, 255, .5), 0 40px 80px rgba(0,0,0,.7); } to { box-shadow: 0 0 0 3px #fff, 0 0 110px rgba(110, 160, 255, .95), 0 40px 80px rgba(0,0,0,.7); } }
@keyframes pzConf { 0% { transform: translateY(0) rotate(var(--r)); opacity: 1; } 100% { transform: translateY(110vh) rotate(calc(var(--r) + 540deg)); opacity: .9; } }
.pz-shake { animation: pzShake .7s cubic-bezier(.36,.07,.19,.97); }
@keyframes pzShake { 10%, 90% { transform: translate3d(-2px, 0, 0); } 20%, 80% { transform: translate3d(4px, 0, 0); } 30%, 50%, 70% { transform: translate3d(-8px, 0, 0); } 40%, 60% { transform: translate3d(8px, 0, 0); } }
.pz-gacha-track.spin { animation: pzReelGlow .6s ease-in-out infinite alternate; }
@keyframes pzReelGlow { from { filter: brightness(1); } to { filter: brightness(1.25); } }

/* ETH → stock swap box on the create page */
.pz-swapbox { display: flex; flex-direction: column; gap: 6px; margin-top: 14px; padding: 12px 14px; border-radius: 12px; background: var(--p-surface-light); border: 1px solid var(--p-border-default); }
.pz-swapbox > b { font-size: 13px; font-weight: 800; } .pz-swapbox > span { font-size: 12px; color: var(--p-text-muted); line-height: 1.45; }
.pz-swaprow { display: flex; gap: 8px; align-items: center; margin-top: 6px; }
.pz-swapest, .pz-swapbal { margin: 0; font-size: 12px; color: var(--p-text-secondary); } .pz-swapbal { color: var(--p-text-muted); }
.pz-swaprow .pz-launch { white-space: nowrap; padding: 0 14px !important; font-size: 13px; }

/* create page, pons-style: form left, summary right */
.pz-lp { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 20px; align-items: start; max-width: 1040px; margin: 0 auto; width: 100%; }
.pz-lp-card { background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 20px; padding: 26px 26px 22px; display: flex; flex-direction: column; gap: 16px; }
.pz-lp-card h1 { margin: 0 0 4px; font-size: 26px; font-weight: 800; letter-spacing: -.02em; }
.pz-lp-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.pz-lp-f { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.pz-lp-f > label { font-size: 12px; font-weight: 700; color: var(--p-text-secondary); }
.pz-lp-f .css-1ptmh8v { height: 44px; width: 100%; } .pz-lp-f .css-1jxpf6w { min-height: 96px; width: 100%; padding-top: 10px; }
.pz-lp-hint { margin: 0; font-size: 12px; color: var(--p-text-muted); line-height: 1.45; }
.pz-lp-img { display: flex; align-items: center; gap: 12px; height: 64px; padding: 0 14px; border-radius: 12px; background: var(--p-surface-light); border: 1px dashed var(--p-border-strong); color: var(--p-text-secondary); font-weight: 700; font-size: 14px; cursor: pointer; text-align: left; }
.pz-lp-img img { width: 44px; height: 44px; border-radius: 10px; object-fit: cover; } .pz-lp-imgic { width: 36px; height: 36px; border-radius: 10px; background: var(--p-surface); display: inline-flex; align-items: center; justify-content: center; }
.pz-lp-pre { display: flex; align-items: center; height: 44px; border-radius: 12px; background: var(--p-surface-light); border: 1px solid var(--p-border-subtle); padding-left: 12px; }
.pz-lp-pre span { color: var(--p-text-muted); font-size: 14px; } .pz-lp-pre input { background: none !important; border: 0 !important; height: 42px !important; padding-left: 4px !important; }
.pz-lp-chips { display: flex; gap: 8px; flex-wrap: wrap; }
.pz-lp-chip { display: inline-flex; align-items: center; gap: 6px; height: 38px; padding: 0 14px; border-radius: 10px; background: var(--p-surface-light); border: 1px solid var(--p-border-subtle); font-weight: 700; font-size: 13px; color: var(--p-text-primary); }
.pz-lp-chip img { width: 16px; height: 16px; border-radius: 999px; } .pz-lp-chip.on { border-color: var(--pz-accent); box-shadow: inset 0 0 0 1px var(--pz-accent); } .pz-lp-chip:disabled { opacity: .45; cursor: not-allowed; }
.pz-lp-f .css-wgnrb { height: 52px; padding: 0 14px; width: 100%; } .pz-lp-f .css-1gi14yd { font-size: 20px; font-weight: 700; }
.pz-lp-adv > button { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 12px 0; border-top: 1px solid var(--p-border-subtle); font-weight: 700; font-size: 14px; color: var(--p-text-primary); background: none; }
.pz-lp-adv > button svg { width: 16px; height: 16px; } .pz-lp-advbody { display: flex; flex-direction: column; gap: 14px; padding-bottom: 6px; }
.pz-lp-due { display: flex; justify-content: space-between; font-size: 12px; color: var(--p-text-muted); font-weight: 600; border-top: 1px solid var(--p-border-subtle); padding-top: 12px; }
.pz-lp-cta { width: 100%; height: 50px !important; font-size: 16px; } .pz-lp-cta:disabled { opacity: .5; cursor: not-allowed; }
.pz-lp-side { position: sticky; top: 90px; background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 20px; padding: 20px; display: flex; flex-direction: column; gap: 14px; }
.pz-lp-tok { display: flex; align-items: center; gap: 12px; } .pz-lp-tok img, .pz-lp-tokph { width: 56px; height: 56px; border-radius: 14px; object-fit: cover; background: var(--p-surface-light); display: inline-flex; align-items: center; justify-content: center; color: var(--p-text-muted); }
.pz-lp-tok div { display: flex; flex-direction: column; min-width: 0; } .pz-lp-tok b { font-size: 18px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .pz-lp-tok span { font-size: 12px; color: var(--p-text-muted); font-weight: 600; }
.pz-lp-kv { display: flex; flex-direction: column; border-top: 1px solid var(--p-border-subtle); }
.pz-lp-kv > div { display: flex; justify-content: space-between; align-items: center; padding: 9px 0; border-bottom: 1px solid var(--p-border-subtle); font-size: 13px; }
.pz-lp-kv span { color: var(--p-text-muted); font-weight: 600; } .pz-lp-kv b { display: inline-flex; align-items: center; gap: 6px; font-weight: 800; }
.pz-lp-note { margin: 0; font-size: 12px; color: var(--p-text-muted); line-height: 1.5; }
@media (max-width: 900px) { .pz-lp { grid-template-columns: 1fr; } .pz-lp-side { position: static; } .pz-lp-row { grid-template-columns: 1fr; } }

.pz-hnav { display: inline-flex; align-items: center; height: 36px; padding: 0 12px; border-radius: 10px; font-size: 13px; font-weight: 700; color: var(--p-text-secondary); text-decoration: none; }
.pz-hnav:hover { color: var(--p-text-primary); background: var(--p-surface-light); }
@media (max-width: 640px) { .pz-hnav { display: none; } }

/* coin chart box */
.pz-chart { background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 14px; overflow: hidden; }
.pz-chart-head { display: flex; align-items: center; gap: 12px; padding: 10px 14px; border-bottom: 1px solid var(--p-border-subtle); flex-wrap: wrap; }
.pz-chart-tfs { display: flex; gap: 2px; background: var(--p-surface-light); padding: 3px; border-radius: 8px; }
.pz-chart-tfs button { height: 26px; padding: 0 9px; border-radius: 6px; font-size: 12px; font-weight: 700; color: var(--p-text-muted); }
.pz-chart-tfs button.on { background: var(--p-surface); color: var(--p-text-primary); box-shadow: 0 1px 2px rgba(0,0,0,.3); }
.pz-chart-title { margin: 0; font-size: 13px; font-weight: 800; display: flex; gap: 6px; align-items: center; } .pz-chart-title > span:first-of-type { color: var(--p-text-muted); font-weight: 600; }
.pz-chart-live { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; font-size: 10px; letter-spacing: .1em; font-weight: 800; color: var(--p-text-muted); } .pz-chart-live i { width: 6px; height: 6px; border-radius: 999px; background: var(--p-red); }
.pz-chart-body { position: relative; } .pz-chart-body canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
/* condensed hero */
.css-1wqb6ee { min-height: 0 !important; padding: 16px 18px !important; }
.css-15lsng3 { min-height: 150px !important; } .css-1mwggn4 { min-height: 110px !important; }
.css-1jmdpus { height: 170px !important; }
/* marketplace */
.pz-mk-head { display: grid; grid-template-columns: 1fr auto; gap: 18px; align-items: center; margin-bottom: 18px; }
.pz-mk-head h1 { margin: 0 0 6px; font-size: 30px; font-weight: 800; letter-spacing: -.03em; } .pz-mk-head p { margin: 0; color: var(--p-text-muted); font-size: 14px; max-width: 640px; line-height: 1.5; }
.pz-mk-stats { display: grid; grid-template-columns: repeat(4, minmax(120px, 1fr)); gap: 10px; margin-bottom: 18px; }
.pz-mk-stats div { background: var(--p-surface-light); border-radius: 12px; padding: 10px 12px; } .pz-mk-stats span { display: block; font-size: 11px; color: var(--p-text-muted); font-weight: 700; letter-spacing: .04em; text-transform: uppercase; } .pz-mk-stats b { font-size: 18px; font-weight: 800; }
.pz-mk-wallet { display: flex; align-items: center; gap: 10px; background: var(--p-surface-light); border-radius: 12px; padding: 8px 12px; font-size: 13px; font-weight: 700; }
.pz-mk-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 14px; }
.pz-mk-card { display: flex; flex-direction: column; background: var(--p-surface-light); border: 1px solid var(--p-border-subtle); border-radius: 14px; overflow: hidden; }
.pz-mk-card img { width: 100%; aspect-ratio: 600 / 780; object-fit: contain; background: #0a0a0a; }
.pz-mk-body { display: flex; flex-direction: column; gap: 4px; padding: 10px 12px 12px; } .pz-mk-body b { font-size: 13px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .pz-mk-body span { font-size: 11px; color: var(--p-text-muted); font-weight: 600; }
.pz-mk-price { display: flex; justify-content: space-between; align-items: baseline; margin-top: 6px; } .pz-mk-price b { color: var(--pz-accent); font-size: 16px; } .pz-mk-price span { font-size: 11px; }
.pz-mk-card .pz-launch { height: 36px !important; font-size: 13px; margin-top: 6px; }
.pz-mk-mm { height: 30px; border-radius: 8px; background: var(--p-surface); font-size: 11px; font-weight: 700; color: var(--p-text-secondary); margin-top: 6px; } .pz-mk-mm:hover { color: var(--p-text-primary); }
.pz-mk-empty { padding: 34px 20px; text-align: center; border: 1px dashed var(--p-border-strong); border-radius: 14px; } .pz-mk-empty b { display: block; font-size: 16px; margin-bottom: 6px; } .pz-mk-empty p { margin: 0; color: var(--p-text-muted); font-size: 13px; }
.pz-mk-how { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 18px; } .pz-mk-how div { background: var(--p-surface-light); border-radius: 12px; padding: 12px 14px; font-size: 12.5px; color: var(--p-text-secondary); line-height: 1.5; } .pz-mk-how b { display: block; color: var(--p-text-primary); font-size: 12px; margin-bottom: 4px; }
@media (max-width: 760px) { .pz-mk-head, .pz-mk-how { grid-template-columns: 1fr; } .pz-mk-stats { grid-template-columns: 1fr 1fr; } }

/* the hero */
.pz-hero { display: grid; grid-template-columns: 250px 1fr; gap: 18px; background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 18px; padding: 16px 18px; min-height: 0; }
.pz-hero-l { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.pz-hero-id { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--p-text-primary); } .pz-hero-img { width: 44px; height: 44px; border-radius: 12px; object-fit: cover; font-size: 12px; }
.pz-hero-id div { display: flex; flex-direction: column; min-width: 0; } .pz-hero-id b { font-size: 18px; font-weight: 800; letter-spacing: -.01em; } .pz-hero-id span { font-size: 12px; color: var(--p-text-muted); font-weight: 600; }
.pz-hero-btns { display: flex; gap: 8px; } .pz-hero-btns .pz-launch, .pz-hero-btns .css-2a16lv { flex: 1; height: 38px !important; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; font-size: 14px; font-weight: 800; }
.pz-hero-lbl { margin: 4px 0 0; font-size: 10px; letter-spacing: .1em; font-weight: 800; color: var(--p-text-muted); }
.pz-hero-row { display: flex; align-items: center; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--p-border-subtle); } .pz-hero-row:last-child { border-bottom: 0; }
.pz-hero-row div { flex: 1; display: flex; flex-direction: column; min-width: 0; } .pz-hero-row b { font-size: 13px; font-weight: 800; } .pz-hero-row span { font-size: 11px; color: var(--p-text-muted); font-weight: 600; } .pz-hero-row em { font-style: normal; font-size: 12px; color: var(--p-text-secondary); font-weight: 700; }
.pz-hero-pi { width: 24px; height: 24px; border-radius: 999px; }
.pz-hero-r { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.pz-hero-stats { display: flex; gap: 22px; align-items: flex-end; } .pz-hero-stats > div { display: flex; flex-direction: column; gap: 2px; } .pz-hero-stats span { font-size: 12px; color: var(--p-text-muted); font-weight: 600; border-bottom: 1px dashed var(--p-border-strong); padding-bottom: 1px; } .pz-hero-stats span i { font-style: normal; font-weight: 800; margin-left: 4px; }
.pz-hero-stats b { font-size: 20px; font-weight: 800; letter-spacing: -.02em; } .pz-hero-stats b.acc { color: var(--pz-accent); }
.pz-hero-tfs { margin-left: auto; display: flex; gap: 2px; background: var(--p-surface-light); padding: 3px; border-radius: 8px; } .pz-hero-tfs button { height: 24px; padding: 0 8px; border-radius: 6px; font-size: 11px; font-weight: 700; color: var(--p-text-muted); } .pz-hero-tfs button.on { background: var(--p-surface); color: var(--p-text-primary); }
.pz-hero-chart { position: relative; height: 168px; } .pz-hero-chart canvas { position: absolute; inset: 0; display: block; }
.pz-hero-foot { display: flex; justify-content: space-between; align-items: center; font-size: 12px; color: var(--p-text-muted); font-weight: 600; padding-top: 6px; border-top: 1px solid var(--p-border-subtle); }
.pz-hero-live { display: inline-flex; align-items: center; gap: 6px; font-weight: 800; color: var(--p-text-secondary); } .pz-hero-live i { width: 7px; height: 7px; border-radius: 999px; background: var(--pz-accent); box-shadow: 0 0 0 3px rgba(110, 160, 255, .25); }
@media (max-width: 760px) { .pz-hero { grid-template-columns: 1fr; } .pz-hero-stats { flex-wrap: wrap; gap: 12px; } }
.pz-hero-tfs { flex-shrink: 0; flex-wrap: nowrap; white-space: nowrap; }
.pz-hero-stats > div { min-width: 0; }
.pz-hero-stats span { white-space: nowrap; }
.pz-hero-stats > .pz-hero-tfs { flex-direction: row !important; }
.css-c0c4hk, .css-1wqb6ee, .css-1xw7l3k, .css-10buu90 { height: auto !important; min-height: 0 !important; align-self: start; }
.css-gx5emg { align-items: start; }
.css-1g9oway { padding-top: 6px !important; padding-bottom: 6px !important; }
/* hero fills the row down to Explore rewards; the chart takes the spare height */
.css-c0c4hk, .css-1wqb6ee, .css-1xw7l3k, .css-10buu90 { height: 100% !important; align-self: stretch !important; }
.css-gx5emg { align-items: stretch; }
.pz-hero { height: 100%; box-sizing: border-box; }
.pz-hero-r { height: 100%; }
.pz-hero-chart { flex: 1 1 auto; height: auto; min-height: 168px; }

/* coin card v2 — reference layout */
.pz-cc-grid { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
.pz-cc { position: relative; display: block; background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 16px; overflow: hidden; text-decoration: none; color: var(--p-text-primary); padding: 16px 18px 14px; min-height: 250px; transition: transform .18s, border-color .18s, box-shadow .18s; isolation: isolate; }
.pz-cc:hover { transform: translateY(-2px); border-color: var(--p-border-strong); box-shadow: var(--p-card-hover-shadow); }
.pz-cc > * { position: relative; z-index: 1; }
[data-mode="light"] .pz-cc-bg { background: radial-gradient(circle at 50% 50%, rgba(37,87,214,.08), rgba(37,87,214,0) 70%); box-shadow: 0 0 0 10px rgba(37,87,214,.04), 0 0 0 22px rgba(37,87,214,.025); }
.pz-cc-bg { position: absolute !important; z-index: 0 !important; right: -34px; bottom: -44px; width: 168px; height: 168px; border-radius: 999px; background: radial-gradient(circle at 50% 50%, rgba(255,255,255,.06), rgba(255,255,255,0) 70%); box-shadow: 0 0 0 10px rgba(255,255,255,.03), 0 0 0 22px rgba(255,255,255,.02); display: flex; align-items: center; justify-content: center; pointer-events: none; }
.pz-cc-bg img, .pz-cc-bg span { width: 118px; height: 118px; border-radius: 999px; opacity: .22; filter: saturate(.6); object-fit: cover; }
.pz-cc-top { display: flex; align-items: flex-start; justify-content: space-between; padding: 0; margin-bottom: 26px; }
.pz-cc-img { width: 48px; height: 48px; border-radius: 12px; object-fit: cover; flex-shrink: 0; font-size: 13px; }
.pz-cc-acts { display: flex; gap: 6px; }
.pz-cc-act { width: 30px; height: 30px; border-radius: 999px; border: 1px solid var(--p-border-subtle); background: var(--p-surface-light); color: var(--p-text-muted); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; font-size: 11px; font-weight: 800; padding: 0; transition: color .15s, border-color .15s; }
.pz-cc-act:hover { color: var(--p-text-primary); border-color: var(--p-border-strong); }
.pz-cc-act.ca { width: auto; padding: 0 9px; gap: 4px; letter-spacing: .02em; }
.pz-cc-act svg { width: 14px; height: 14px; }
.pz-cc-sym { font-size: 13px; font-weight: 800; letter-spacing: .02em; color: var(--pz-glow); }
.pz-cc-n { font-size: 14px; color: var(--p-text-muted); font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin: 2px 0 6px; max-width: 70%; }
.pz-cc-mc { font-size: 30px; font-weight: 800; letter-spacing: -.03em; line-height: 1.05; margin-bottom: 14px; }
.pz-cc-pair { display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 700; flex-wrap: wrap; }
.pz-cc-pair > span:first-child { color: var(--p-text-muted); }
.pz-cc-pi { width: 16px; height: 16px; border-radius: 999px; }
.pz-cc-badge { display: inline-flex; align-items: center; gap: 5px; height: 22px; padding: 0 8px 0 5px; border-radius: 999px; border: 1px solid rgba(110, 160, 255, .45); color: var(--pz-glow); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .03em; margin-left: 2px; }
.pz-cc-badge svg { width: 12px; height: 12px; }
.pz-cc-foot { display: flex; align-items: flex-end; justify-content: space-between; gap: 10px; margin-top: 22px; padding: 0; background: none; border: 0; }
.pz-cc-vol { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 13px; font-weight: 700; color: var(--p-text-muted); }
.pz-cc-vol em { font-style: normal; font-weight: 800; }
.pz-cc-vol small { flex-basis: 100%; font-size: 11px; font-weight: 600; color: var(--p-text-muted); opacity: .8; }
.pz-cc-spark { flex-shrink: 0; margin-right: 34px; }
@media (max-width: 480px) { .pz-cc-spark { margin-right: 10px; } }

[data-mode="light"] .pz-gr { box-shadow: 0 0 0 1px rgba(37,87,214,.25); background: #f4f7ff; }

/* text wordmark */
.pz-wordmark { font-family: Geist, GeistSans, -apple-system, "Segoe UI", Inter, sans-serif; font-size: 26px; font-weight: 900; letter-spacing: -.05em; color: var(--p-text-primary); line-height: 1; }
.pz-wordmark::first-letter { color: var(--pz-glow); }
/* create page v4: numbered steps, gacha tiles, pair picker, live card preview */
.pz-lp { max-width: 1080px; grid-template-columns: minmax(0, 1fr) 360px; }
.pz-lp-card { padding: 28px 28px 24px; gap: 0; }
.pz-lp-hd { padding-bottom: 22px; border-bottom: 1px solid var(--p-border-subtle); margin-bottom: 6px; }
.pz-lp-hd h1 { font-size: 28px; margin: 6px 0 8px; }
.pz-lp-hd p { margin: 0; font-size: 14px; line-height: 1.55; color: var(--p-text-secondary); max-width: 560px; }
.pz-lp-kicker { display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--pz-glow); }
.pz-lp-step { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 14px; padding: 22px 0; border-bottom: 1px solid var(--p-border-subtle); }
.pz-lp-step:last-child { border-bottom: 0; padding-bottom: 4px; }
.pz-lp-sn { width: 30px; height: 30px; border-radius: 999px; background: var(--pz-accent); color: var(--pz-accent-ink); font-weight: 800; font-size: 13px; display: inline-flex; align-items: center; justify-content: center; margin-top: 1px; }
.pz-lp-sb { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.pz-lp-sb h2 { margin: 0; font-size: 17px; font-weight: 800; letter-spacing: -.01em; }
.pz-lp-sb h2 + p { margin: -8px 0 0; font-size: 13px; color: var(--p-text-muted); line-height: 1.45; }
.pz-lp-img span small { font-weight: 500; color: var(--p-text-muted); }
.pz-lp-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.pz-lp-tile { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 14px; border-radius: 14px; background: var(--p-surface-light); border: 1px solid var(--p-border-subtle); text-align: left; cursor: pointer; color: var(--p-text-primary); transition: border-color .15s, box-shadow .15s; }
.pz-lp-tile:hover { border-color: var(--p-border-strong); }
.pz-lp-tile.on { border-color: var(--pz-accent); box-shadow: inset 0 0 0 1px var(--pz-accent); background: var(--p-surface); }
.pz-lp-tile b { font-size: 14px; font-weight: 800; margin-top: 4px; }
.pz-lp-tile span { font-size: 12px; color: var(--p-text-muted); line-height: 1.4; }
.pz-lp-tile em { font-style: normal; font-size: 11px; font-weight: 800; color: var(--pz-glow); text-transform: uppercase; letter-spacing: .04em; }
.pz-lp-tick { position: absolute; top: 10px; right: 10px; width: 20px; height: 20px; border-radius: 999px; background: var(--pz-accent); color: var(--pz-accent-ink); display: inline-flex; align-items: center; justify-content: center; }
.pz-lp-tick svg { width: 12px; height: 12px; }
.pz-lp-pairwrap { position: relative; }
.pz-lp-pairwrap > .pz-lp-chip svg { width: 14px; height: 14px; }
.pz-lp-pairpop { position: absolute; z-index: 30; top: 44px; left: 0; width: 320px; max-width: 80vw; background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 14px; box-shadow: 0 18px 40px -14px rgba(16, 24, 40, .35); padding: 10px; }
.pz-lp-pairpop .css-1ptmh8v { height: 40px; width: 100%; margin-bottom: 8px; }
.pz-lp-pairlist { max-height: 300px; overflow: auto; display: flex; flex-direction: column; gap: 2px; }
.pz-lp-pairlist button { display: grid; grid-template-columns: 22px auto 1fr auto; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 10px; text-align: left; color: var(--p-text-primary); font-size: 13px; }
.pz-lp-pairlist button:hover, .pz-lp-pairlist button.on { background: var(--p-surface-light); }
.pz-lp-pairlist img { width: 22px; height: 22px; border-radius: 999px; } .pz-lp-pairlist b { font-weight: 800; } .pz-lp-pairlist span { color: var(--p-text-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .pz-lp-pairlist em { font-style: normal; font-size: 12px; color: var(--p-text-muted); }
.pz-lp-side { gap: 12px; }
.pz-lp-pv { pointer-events: none; min-height: 0; }
.pz-lp-pv .pz-cc-top { margin-bottom: 18px; } .pz-lp-pv .pz-cc-foot { margin-top: 16px; }
.pz-lp-tokph { display: inline-flex; align-items: center; justify-content: center; background: var(--p-surface-light); color: var(--p-text-muted); }
@media (max-width: 900px) { .pz-lp { grid-template-columns: 1fr; } .pz-lp-side { position: static; } .pz-lp-tiles { grid-template-columns: 1fr; } }
/* marketplace v4 */
.pz-mk { max-width: 1120px; margin: 0 auto; width: 100%; }
.pz-mk-hero { display: grid; grid-template-columns: 1fr auto; gap: 18px; align-items: center; margin-bottom: 18px; }
.pz-mk-hero h1 { margin: 4px 0 6px; font-size: 32px; font-weight: 800; letter-spacing: -.03em; } .pz-mk-hero p { margin: 0; color: var(--p-text-muted); font-size: 14px; max-width: 620px; line-height: 1.5; }
.pz-mk-stats { grid-template-columns: repeat(4, minmax(120px, 1fr)); margin-bottom: 20px; }
.pz-mk-stats div { background: var(--p-surface); border: 1px solid var(--p-border-subtle); border-radius: 14px; padding: 12px 14px; }
.pz-mk-stats b { font-size: 20px; }
.pz-mk-grid { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; }
.pz-mk-card { background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 16px; transition: transform .18s, box-shadow .18s, border-color .18s; }
.pz-mk-card:hover { transform: translateY(-2px); border-color: var(--p-border-strong); box-shadow: var(--p-card-hover-shadow); }
.pz-mk-imgwrap { position: relative; background: var(--p-surface-light); padding: 12px; }
.pz-mk-card .pz-mk-imgwrap img { width: 100%; aspect-ratio: 600 / 780; object-fit: contain; background: none; border-radius: 10px; }
.pz-mk-row { display: flex; justify-content: space-between; align-items: flex-start; gap: 8px; } .pz-mk-row b { font-size: 14px; white-space: normal; line-height: 1.3; }
.pz-mk-val { flex-shrink: 0; color: var(--pz-glow); font-weight: 800; font-size: 14px; }
.pz-mk-body { padding: 12px 14px 14px; gap: 8px; }
.pz-mk-body > b { font-size: 14px; white-space: normal; line-height: 1.3; }
.pz-mk-chips { display: flex; flex-wrap: wrap; gap: 6px; } .pz-mk-chips .pz-rt-chip { font-size: 11px; padding: 3px 8px; }
.pz-mk-acts { display: flex; flex-direction: column; gap: 6px; margin-top: 4px; }
.pz-mk-mm { display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 34px; border-radius: 10px; background: var(--p-surface-light); border: 1px solid var(--p-border-subtle); font-size: 12px; font-weight: 700; color: var(--p-text-secondary); text-decoration: none; margin-top: 0; }
.pz-mk-mm svg { width: 13px; height: 13px; }
.pz-mk-empty { padding: 44px 20px; background: var(--p-surface); border: 1px dashed var(--p-border-strong); border-radius: 16px; display: flex; flex-direction: column; align-items: center; }
.pz-mk-empty svg { width: 28px; height: 28px; color: var(--pz-glow); margin-bottom: 10px; }
.pz-mk-how { grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 22px; }
.pz-mk-how div { position: relative; background: var(--p-surface); border: 1px solid var(--p-border-subtle); border-radius: 14px; padding: 16px 16px 16px 52px; font-size: 13px; color: var(--p-text-muted); line-height: 1.5; }
.pz-mk-how div i { position: absolute; left: 16px; top: 16px; width: 26px; height: 26px; border-radius: 999px; background: var(--pz-accent); color: var(--pz-accent-ink); font-style: normal; font-weight: 800; font-size: 12px; display: inline-flex; align-items: center; justify-content: center; }
.pz-mk-how div b { display: block; color: var(--p-text-primary); font-size: 14px; margin-bottom: 2px; }
@media (max-width: 760px) { .pz-mk-stats { grid-template-columns: 1fr 1fr; } .pz-mk-how { grid-template-columns: 1fr; } .pz-mk-hero { grid-template-columns: 1fr; } }

/* marketplace: two ways to cash out + linked accounts */
.pz-mk-ways { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 18px; }
.pz-mk-ways > div { position: relative; background: var(--p-surface-light); border: 1px solid var(--p-border-subtle); border-radius: 16px; padding: 16px 18px 16px 62px; }
.pz-mk-ways i { position: absolute; left: 18px; top: 18px; width: 32px; height: 32px; border-radius: 10px; background: var(--pz-accent); color: var(--pz-accent-ink); display: inline-flex; align-items: center; justify-content: center; }
.pz-mk-ways i svg { width: 16px; height: 16px; }
.pz-mk-ways b { display: block; font-size: 15px; font-weight: 800; margin-bottom: 4px; }
.pz-mk-ways p { margin: 0; font-size: 13px; color: var(--p-text-muted); line-height: 1.5; } .pz-mk-ways em { font-style: normal; font-weight: 700; color: var(--p-text-primary); }
.pz-mk-hero p b { color: var(--p-text-primary); }
.pz-accs { background: var(--p-surface); border: 1px solid var(--p-border-default); border-radius: 16px; padding: 18px; margin-bottom: 20px; }
.pz-accs-h { display: flex; flex-direction: column; gap: 3px; margin-bottom: 14px; } .pz-accs-h b { font-size: 16px; font-weight: 800; } .pz-accs-h span { font-size: 12.5px; color: var(--p-text-muted); }
.pz-accs-g { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.pz-acc { background: var(--p-surface-light); border: 1px solid var(--p-border-subtle); border-radius: 14px; padding: 14px; display: flex; flex-direction: column; gap: 10px; }
.pz-acc-h { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 800; }
.pz-acc-ok { margin-left: auto; display: inline-flex; align-items: center; gap: 4px; font-size: 11px; font-weight: 800; color: var(--p-status-green-text); background: var(--p-status-green-bg); padding: 3px 8px; border-radius: 999px; } .pz-acc-ok svg { width: 11px; height: 11px; }
.pz-acc-f { display: flex; gap: 8px; } .pz-acc-f .css-1ptmh8v { flex: 1 1 auto; width: auto !important; height: 40px; min-width: 120px; } .pz-acc-f .pz-launch { height: 40px !important; padding: 0 16px; }
.pz-acc-u { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; } .pz-acc-u img { width: 40px; height: 40px; border-radius: 999px; background: var(--p-surface); } .pz-acc-u > div { display: flex; flex-direction: column; min-width: 0; flex: 1; } .pz-acc-u b { font-size: 14px; } .pz-acc-u span { font-size: 12px; color: var(--p-text-muted); }
.pz-acc-u .pz-mk-mm { height: 30px; padding: 0 10px; }
.pz-mk-mm.strong { background: var(--p-surface); border-color: var(--pz-accent); color: var(--pz-glow); }
.pz-mk-note { font-size: 11.5px; color: var(--p-text-muted); line-height: 1.4; padding: 2px 0; } .pz-mk-note a { color: var(--pz-glow); font-weight: 700; }
@media (max-width: 760px) { .pz-mk-ways, .pz-accs-g { grid-template-columns: 1fr; } }
