@charset "utf-8";

:root { color-scheme: dark; --padding-x-main: 16px; --color-bg-primary: #111113; --color-bg-secondary: #18191b; --color-bg-tertiary: #212225; --color-bg-accent: #86efac; --color-bg-accent-hover: #6ee7a0; --color-text-on-accent: #052e16; --color-text-primary: #fafafa; --color-text-secondary: #e4e4e7; --color-text-tertiary: #a1a1aa; --color-text-muted: #71717a; --color-border-secondary: #272a2d; --color-border-tertiary: #363a3f; --color-danger: #f87171; --font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; --sidebar-width: 72px; --header-height: 68px; --subheader-height: 0px; --mobile-nav-height: 62px; --max-width: 1080px; --radius-lg: 16px; --radius-xl: 22px; --radius-pill: 999px; --ease-out: cubic-bezier(0.22, 1, 0.36, 1); }

*, ::before, ::after { box-sizing: border-box; margin: 0px; padding: 0px; }

html, body { min-height: 100%; }

.pf-body { background: var(--color-bg-primary); color: var(--color-text-primary); font-family: var(--font-sans); font-size: 14px; line-height: 1.5; -webkit-font-smoothing: antialiased; }

a { color: inherit; text-decoration: none; }

button, input { font: inherit; color: inherit; }

img { display: block; max-width: 100%; }

.hidden { display: none !important; }

.md\:hidden { display: block; }

.md\:flex { display: none; }

.lg\:hidden { display: inline-flex; }

.max-sm\:hidden { display: none; }

.max-\[480px\]\:hidden { display: inline-flex; }

@media (min-width: 480px) {
  .max-\[480px\]\:hidden { display: inline-flex; }
}

@media (max-width: 479px) {
  .max-\[480px\]\:hidden { display: none !important; }
}

@media (min-width: 640px) {
  .max-sm\:hidden { display: flex; }
}

@media (min-width: 768px) {
  .md\:hidden { display: none !important; }
  .md\:flex { display: flex !important; }
}

@media (max-width: 767px) {
  .pf-app-banner, .max-md-hidden { display: none !important; }
}

.pf-app { display: flex; min-height: 100dvh; }

.pf-sidebar { display: none; flex-direction: column; align-items: center; flex-shrink: 0; width: var(--sidebar-width); padding: 12px 0px 16px; border-right: 1px solid var(--color-border-secondary); background: var(--color-bg-primary); }

@media (min-width: 768px) {
  .pf-sidebar { display: flex; position: sticky; top: 0px; height: 100dvh; }
}

body.pf-sidebar-collapsed .pf-sidebar { width: 0px; padding: 0px; overflow: hidden; border-right-width: 0px; }

.pf-sidebar-logo { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-bottom: 8px; }

.pf-logomark { display: block; width: 28px; height: 28px; flex-shrink: 0; }

.pf-logomark-sm { width: 24px; height: 24px; }

.pf-sidebar-nav { display: flex; flex: 1 1 0%; flex-direction: column; align-items: center; gap: 4px; width: 100%; padding-top: 4px; }

.pf-sidebar-bottom { display: flex; flex-direction: column; align-items: center; gap: 12px; width: 100%; margin-top: auto; padding-top: 12px; }

.pf-sidebar-item, .pf-sidebar-create { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0px; border-radius: 12px; background: transparent; color: var(--color-text-secondary); text-decoration: none; line-height: 0; cursor: pointer; transition: background 0.15s, color 0.15s; }

.pf-sidebar-item svg { display: block; flex-shrink: 0; width: 24px; height: 24px; }

.pf-sidebar-pump .pf-logomark-sm { width: 24px; height: 24px; }

.pf-sidebar-item:hover { color: var(--color-text-primary); background: rgba(255, 255, 255, 0.04); }

.pf-sidebar-item.is-active { color: var(--color-text-on-accent); background: var(--color-bg-accent); }

.pf-sidebar-create { color: var(--color-text-on-accent); background: var(--color-bg-accent); }

.pf-sidebar-create:hover { background: var(--color-bg-accent-hover); }

.pf-sidebar-create svg { display: block; flex-shrink: 0; width: 17px; height: 17px; }

.pf-column { display: flex; flex: 1 1 0%; flex-direction: column; min-width: 0px; }

.pf-app-banner { position: relative; display: flex; align-items: center; justify-content: center; min-height: 40px; padding: 0 calc(var(--padding-x-main) + 36px) 0 var(--padding-x-main); background: var(--color-bg-secondary); }

.pf-app-banner.is-hidden { display: none; }

.pf-app-banner-inner { display: flex; align-items: center; justify-content: center; gap: 4px; width: 100%; max-width: 1200px; font-size: 14px; font-weight: 500; }

.pf-app-banner-inner a:hover { text-decoration: underline; }

.pf-app-banner-close { position: absolute; top: 4px; right: 16px; }

.pf-header { position: sticky; top: 0px; z-index: 20; background: var(--color-bg-primary); border-bottom: 1px solid var(--color-border-secondary); }

.pf-header-top { display: flex; align-items: center; gap: 10px; height: var(--header-height); padding: 0px 16px; }

@media (min-width: 1024px) {
  .pf-header-top { padding: 0px 20px; }
}

.pf-sidebar-toggle { display: none; align-items: center; justify-content: center; width: 32px; height: 32px; border: 0px; border-radius: 8px; background: transparent; color: var(--color-text-tertiary); cursor: pointer; }

.pf-sidebar-toggle:hover { color: var(--color-text-primary); background: rgba(255, 255, 255, 0.04); }

@media (min-width: 768px) {
  .pf-sidebar-toggle { display: inline-flex; }
}

.pf-logo-link { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; }

.pf-search-row { display: none; flex: 1 1 0%; align-items: center; gap: 8px; min-width: 0px; max-width: 560px; }

@media (min-width: 768px) {
  .pf-search-row { display: flex; }
}

.pf-search { display: flex; flex: 1 1 0%; align-items: center; gap: 10px; min-width: 0px; height: 40px; padding: 0px 14px; border: 0px; border-radius: var(--radius-pill); background: var(--color-bg-tertiary); color: var(--color-text-muted); cursor: pointer; transition: background 0.15s; }

.pf-search:hover { background: rgb(40, 43, 47); }

.pf-search svg { flex-shrink: 0; color: var(--color-text-tertiary); }

.pf-search-placeholder { flex: 1 1 0%; min-width: 0px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: left; font-size: 14px; }

.pf-kbd-group { display: inline-flex; flex-shrink: 0; gap: 4px; }

.pf-kbd-group kbd { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 22px; padding: 0px 5px; border: 1px solid var(--color-border-tertiary); border-radius: 6px; background: var(--color-bg-secondary); color: var(--color-text-muted); font-size: 11px; font-weight: 500; line-height: 1; }

.pf-header-actions { display: flex; align-items: center; gap: 8px; margin-left: auto; }

.pf-icon-btn { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 0px; border-radius: 12px; background: var(--color-bg-secondary); color: var(--color-text-primary); cursor: pointer; transition: background 0.15s; }

.pf-icon-btn:hover { background: var(--color-bg-tertiary); }

.pf-clip-btn { flex-shrink: 0; }

.pf-btn { display: inline-flex; align-items: center; justify-content: center; height: 40px; padding: 0px 16px; border: 0px; border-radius: 12px; font-size: 14px; font-weight: 600; cursor: pointer; transition: background 0.15s; }

.pf-btn-pill { border-radius: var(--radius-pill); padding: 0px 18px; }

.pf-btn-primary { color: var(--color-text-on-accent); background: var(--color-bg-accent); }

.pf-btn-primary:hover { background: var(--color-bg-accent-hover); }

.pf-btn-address { color: var(--color-text-secondary); background: var(--color-bg-secondary); border: 1px solid var(--color-border-secondary); font-variant-numeric: tabular-nums; }

.pf-btn-full { width: 100%; }

.pf-subheader { display: flex; align-items: center; justify-content: space-between; height: var(--subheader-height); padding: 0px 20px; border-top: 1px solid rgba(255, 255, 255, 0.04); }

.pf-subheader-tools { display: flex; align-items: center; gap: 2px; }

.pf-subheader-btn { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 0px; border-radius: 10px; background: transparent; color: var(--color-text-tertiary); cursor: pointer; transition: color 0.15s, background 0.15s; }

.pf-subheader-btn:hover { color: var(--color-text-primary); background: rgba(255, 255, 255, 0.04); }

.pf-subheader-divider { width: 1px; height: 20px; margin: 0px 6px; background: var(--color-border-secondary); }

.pf-subheader-profile { display: flex; align-items: center; }

.pf-profile-chip { display: inline-flex; align-items: center; gap: 8px; padding: 4px 8px 4px 4px; border: 0px; border-radius: var(--radius-pill); background: transparent; color: var(--color-text-secondary); cursor: pointer; transition: background 0.15s; }

.pf-profile-chip:hover { background: rgba(255, 255, 255, 0.04); }

.pf-profile-avatar { width: 28px; height: 28px; border-radius: 50%; background: linear-gradient(135deg, rgb(99, 102, 241), rgb(134, 239, 172)); }

.pf-profile-handle { max-width: 120px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; font-weight: 500; }

.pf-main { flex: 1 1 0%; width: min(var(--max-width), calc(100% - 32px)); margin: 0px auto; padding: 32px 0px 24px; }

@media (max-width: 767px) {
  .pf-main { padding-bottom: calc(var(--mobile-nav-height) + 24px); }
}

.pf-mobile-nav { position: fixed; right: 0px; bottom: 0px; left: 0px; z-index: 50; display: flex; align-items: stretch; justify-content: space-around; min-height: var(--mobile-nav-height); padding: 8px 0 calc(8px + env(safe-area-inset-bottom)); border-top: 1px solid rgba(248, 250, 252, 0.1); background: var(--color-bg-secondary); }

.pf-mobile-nav-item { display: flex; flex: 1 1 0%; flex-direction: column; align-items: center; justify-content: center; min-width: 0px; max-width: 80px; padding: 8px; border: 0px; background: transparent; color: rgb(255, 255, 255); text-decoration: none; line-height: 0; cursor: pointer; }

.pf-mobile-nav-item svg { display: block; flex-shrink: 0; width: 30px; height: 30px; }

.pf-mobile-nav-item.is-active { color: rgb(134, 239, 172); }

.pf-footer { margin-top: auto; border-top: 1px solid var(--color-border-secondary); background: var(--color-bg-primary); color: var(--color-text-tertiary); }

.pf-footer-desktop { align-items: center; justify-content: space-between; gap: 24px; width: 100%; max-width: 1536px; margin: 0px auto; padding: 16px var(--padding-x-main); font-size: 12px; line-height: 1; }

.pf-footer-desktop > p, .pf-footer-desktop nav, .pf-footer-desktop .pf-social { display: flex; align-items: center; line-height: 1; }

.pf-footer-mobile { display: flex; flex-direction: column; gap: 32px; padding: 32px var(--padding-x-main) 16px; margin-bottom: var(--mobile-nav-height); }

.pf-footer-mobile h2 { margin-bottom: 12px; color: var(--color-text-secondary); font-size: 12px; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; }

.pf-footer-mobile ul { display: flex; flex-direction: column; gap: 8px; list-style: none; font-size: 14px; }

.pf-footer-mobile a:hover, .pf-footer-desktop a:hover, .pf-footer-dropdown a:hover { color: var(--color-text-primary); }

.pf-footer-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding-top: 16px; border-top: 1px solid var(--color-border-secondary); font-size: 12px; line-height: 1; }

.pf-footer-bottom > p, .pf-footer-bottom .pf-social { display: flex; align-items: center; line-height: 1; }

.pf-footer-desktop nav { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; line-height: 1; }

.pf-footer-dropdown { position: relative; }

.pf-footer-dropdown summary { display: flex; align-items: center; list-style: none; line-height: 1; cursor: pointer; color: var(--color-text-tertiary); }

.pf-footer-dropdown summary::-webkit-details-marker { display: none; }

.pf-footer-dropdown ul { position: absolute; bottom: calc(100% + 8px); left: 0px; z-index: 30; display: none; min-width: 180px; padding: 8px; border: 1px solid var(--color-border-secondary); border-radius: 12px; background: var(--color-bg-secondary); list-style: none; }

.pf-footer-dropdown[open] ul { display: block; }

.pf-footer-dropdown li + li { margin-top: 4px; }

.pf-footer-dropdown a { display: block; padding: 8px 10px; border-radius: 8px; font-size: 13px; }

.pf-footer-dropdown a:hover { background: var(--color-bg-tertiary); }

.pf-social { display: flex; align-items: center; gap: 16px; line-height: 0; }

.pf-social a { display: inline-flex; align-items: center; justify-content: center; color: var(--color-text-tertiary); line-height: 0; transition: color 0.15s; }

.pf-social a svg { display: block; width: 16px; height: 16px; }

.pf-social a:hover { color: var(--color-text-primary); }

.pf-overlay { position: fixed; inset: 0px; z-index: 999; display: grid; place-items: center; padding: 20px; }

.pf-overlay[hidden] { display: none !important; }

.pf-overlay-backdrop { position: absolute; inset: 0px; background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(4px); }

.pf-dialog { position: relative; z-index: 1; width: min(420px, 100%); padding: 24px; border: 1px solid rgba(39, 42, 45, 0.6); border-radius: var(--radius-xl); background: var(--color-bg-primary); box-shadow: rgba(0, 0, 0, 0.45) 0px 24px 48px; }

.pf-terms-dialog { text-align: center; }

.pf-dialog h2 { margin-bottom: 16px; color: var(--color-text-secondary); font-size: 18px; font-weight: 600; letter-spacing: -0.02em; }

.pf-terms-copy { display: grid; gap: 8px; margin-bottom: 20px; font-size: 14px; line-height: 1.55; }

.pf-terms-copy a { font-weight: 500; text-decoration: underline; }

.pf-muted { color: var(--color-text-tertiary); }

.pf-dialog-close { position: absolute; top: 16px; right: 16px; width: 32px; height: 32px; border: 1px solid var(--color-border-secondary); border-radius: var(--radius-pill); background: transparent; color: var(--color-text-tertiary); font-size: 20px; line-height: 1; cursor: pointer; }

.pf-dialog-close:hover { color: var(--color-text-primary); }

.pf-tag { color: var(--color-text-tertiary); font-size: 12px; }

.pf-status { margin-top: 12px; color: var(--color-text-tertiary); font-size: 14px; }

.pf-status.error { color: var(--color-danger); }

@media (max-width: 640px) {
  .pf-dialog { align-self: end; width: 100%; max-width: none; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; padding-bottom: calc(24px + env(safe-area-inset-bottom)); }
  .pf-overlay { place-items: end center; padding: 0px; }
}

body.pf-search-open { overflow: hidden; }

.pf-search-overlay { z-index: 950; place-items: start center; padding: 72px 16px 24px; }

.pf-search-panel { position: relative; z-index: 1; display: flex; flex-direction: column; width: min(720px, 100%); max-height: min(78vh, 760px); overflow: hidden; border: 1px solid var(--color-border-secondary); border-radius: 20px; background: var(--color-bg-secondary); box-shadow: rgba(0, 0, 0, 0.45) 0px 24px 64px; }

.pf-search-panel-input { display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-bottom: 1px solid var(--color-border-secondary); color: var(--color-text-tertiary); }

.pf-search-panel-input input { flex: 1 1 0%; min-width: 0px; border: 0px; background: transparent; color: var(--color-text-primary); font: inherit; outline: none; }

.pf-search-panel-input input::placeholder { color: var(--color-text-muted); }

.pf-search-close { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border: 0px; border-radius: 8px; background: transparent; color: var(--color-text-tertiary); font-size: 22px; line-height: 1; cursor: pointer; }

.pf-search-close:hover { color: var(--color-text-primary); background: rgba(255, 255, 255, 0.04); }

.pf-search-panel-body { overflow: auto; padding: 16px; }

.pf-search-section + .pf-search-section { margin-top: 20px; }

.pf-search-section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }

.pf-search-section h3 { color: var(--color-text-muted); font-size: 11px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }

.pf-search-clear { border: 0px; background: transparent; color: var(--color-bg-accent); font-size: 12px; cursor: pointer; }

.pf-search-empty, .pf-search-loading { color: var(--color-text-muted); font-size: 13px; }

.pf-search-scroll { display: flex; gap: 10px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: thin; }

.pf-hot-coin { display: flex; flex: 0 0 150px; flex-direction: column; gap: 10px; min-height: 132px; padding: 12px; border: 1px solid var(--color-border-secondary); border-radius: 14px; background: var(--color-bg-primary); color: inherit; text-align: left; cursor: pointer; transition: border-color 0.15s, background 0.15s; }

.pf-hot-coin:hover { border-color: rgba(134, 239, 172, 0.35); background: rgb(21, 22, 24); }

.pf-hot-coin-top { display: flex; gap: 8px; align-items: center; }

.pf-hot-coin-top img, .pf-search-row img, .pf-search-user img { width: 36px; height: 36px; border-radius: 999px; object-fit: cover; background: var(--color-bg-tertiary); }

.pf-hot-coin-top strong, .pf-search-row strong { display: block; color: var(--color-text-primary); font-size: 13px; font-weight: 600; }

.pf-hot-coin-top span, .pf-search-row span { color: var(--color-text-muted); font-size: 11px; }

.pf-hot-coin-chart { flex: 1 1 0%; min-height: 28px; border-radius: 8px; background: linear-gradient(rgba(134, 239, 172, 0.08), transparent 70%), linear-gradient(90deg, transparent 0%, rgba(134, 239, 172, 0.55) 35%, rgba(134, 239, 172, 0.25) 70%, rgba(134, 239, 172, 0.7) 100%); opacity: 0.8; }

.pf-hot-coin-cap { color: var(--color-text-primary); font-size: 18px; font-weight: 700; letter-spacing: -0.02em; }

.pf-search-list { display: flex; flex-direction: column; gap: 4px; }

.pf-search-row { display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px; border: 0px; border-radius: 12px; background: transparent; color: inherit; text-align: left; cursor: pointer; transition: background 0.15s; }

.pf-search-row:hover { background: rgba(255, 255, 255, 0.04); }

.pf-search-row-main { flex: 1 1 0%; min-width: 0px; }

.pf-search-row-meta { color: var(--color-text-secondary); font-size: 13px; font-weight: 600; }

.pf-search-users { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }

.pf-search-user { display: inline-flex; align-items: center; gap: 8px; padding: 8px 10px; border: 1px solid var(--color-border-secondary); border-radius: 999px; background: var(--color-bg-primary); color: var(--color-text-secondary); font-size: 12px; text-decoration: none; }

.pf-search-user:hover { color: var(--color-text-primary); border-color: rgba(134, 239, 172, 0.35); }

@media (max-width: 640px) {
  .pf-search-overlay { padding: 0px; place-items: end center; }
  .pf-search-panel { width: 100%; max-height: 88vh; border-right: 0px; border-bottom: 0px; border-radius: 20px 20px 0px 0px; }
}
