/* Token discovery: shared GatewayCrypto typography, forms and buttons. */
.ac-page { --ac-line: #e2e5f1; --ac-ink: #0d0f1b; }
.ac-page .container { max-width: 1200px; }
.ac-intro { padding-top: 44px; padding-bottom: 48px; }
.ac-intro .breadcrumb { margin-bottom: 32px; }
.ac-intro-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); gap: 80px; align-items: center; }
.ac-intro-grid p { color: #565b6b; }
.ac-intro-aside { padding-left: 36px; border-left: 1px solid var(--ac-line); }
.ac-coin-stack { display: flex; padding-left: 0; }
.ac-coin-stack img { border-radius: 50%; border: 4px solid #fff; box-sizing: content-box; background: #fff; box-shadow: 0 4px 12px #0d0f1b0c; }
.ac-coin-stack img + img { margin-left: -10px; }
.ac-directory { background: #f6f7fa; border-top: 1px solid var(--ac-line); border-bottom: 1px solid var(--ac-line); padding: 36px 0 40px; }
.ac-tools { display: flex; align-items: end; gap: 28px; justify-content: space-between; padding-bottom: 32px; }
.ac-search { flex: 1; max-width: 480px; }
.ac-filters { display: flex; flex-wrap: wrap; gap: 10px; }
.ac-filters [aria-pressed="true"] { background: var(--ac-ink); color: #fff; }
.ac-results-heading { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px; align-items: center; margin-bottom: 22px; }
.ac-token-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 14px; margin: 0; }
.ac-token-card { display: flex; align-items: center; gap: 14px; padding: 22px 18px; height: 100%; border: 1px solid var(--ac-line); border-radius: 12px; background: #fff; color: var(--ac-ink); text-decoration: none; transition: border-color .2s, box-shadow .2s, transform .2s; }
.ac-token-card img { flex-shrink: 0; border-radius: 50%; }
.ac-token-name { display: flex; flex-direction: column; gap: 4px; min-width: 0; overflow-wrap: anywhere; }
.ac-token-card > i { margin-left: auto; flex-shrink: 0; }
.ac-token-card:hover { border-color: #ff0051; color: var(--ac-ink); box-shadow: 0 8px 24px #0d0f1b09; transform: translateY(-2px); }
.ac-page a:focus-visible, .ac-page button:focus-visible { outline: 3px solid #ff0051; outline-offset: 4px; }
.ac-directory [hidden] { display: none !important; }
.ac-empty { text-align: center; padding: 56px 20px; border: 1px dashed var(--ac-line); border-radius: 12px; background: #fff; }
.ac-directory-note { margin-top: 30px; padding-top: 28px; border-top: 1px solid var(--ac-line); display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.ac-directory-note .btn { flex-shrink: 0; }
.ac-next { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; padding-top: 64px; padding-bottom: 64px; }
.ac-next > div { padding: 36px; border-radius: 16px; display: flex; align-items: start; flex-direction: column; }
.ac-next .btn { margin-top: auto; }
.ac-stable-panel { border: 1px solid var(--ac-line); background: linear-gradient(120deg,#fff,#fff4f8); }
.ac-panel-coins { display: flex; gap: 12px; }.ac-panel-coins img { border-radius: 50%; }
.ac-start-panel { background: var(--ac-ink); color: #e2e5f1; }.ac-start-panel > span { min-height: 48px; display: flex; align-items: center; }
@media(max-width:1199px) { .ac-token-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }.ac-tools { align-items: stretch; flex-direction: column; }.ac-search { max-width: none; } }
@media(max-width:767px) { .ac-intro-grid { grid-template-columns: 1fr; gap: 28px; }.ac-intro-aside { border-left: 0; border-top: 1px solid var(--ac-line); padding: 24px 0 0; }.ac-token-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.ac-token-card { gap: 10px; padding: 18px 12px; }.ac-token-card > i { display: none; }.ac-next { grid-template-columns: 1fr; padding-top: 40px; padding-bottom: 40px; }.ac-directory-note { align-items: start; flex-direction: column; } }
@media(max-width:399px) { .ac-token-grid { grid-template-columns: 1fr; }.ac-token-card > i { display: block; }.ac-next > div { padding: 24px; } }
@media(prefers-reduced-motion:reduce) { .ac-token-card { transition: none; } }
@media(max-width:767px) { .ac-intro-aside { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; }.ac-intro-aside > p { display: none; }.ac-intro-aside > .btn { margin-top: 0 !important; } }
