.live-pill,
.coming-soon-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35em;
    color: #fff;
    font-size: 0.25em;
    font-weight: 300;
    letter-spacing: 0.08em;
    padding: 0.5em 0.8em 0.45em;
    border-radius: 999px;
    margin-left: 0.4em;
    text-transform: lowercase;
    line-height: 1;
    position: relative;
    top: -2em;
    white-space: nowrap;
}

.live-pill { background: #16a34a; }
.coming-soon-pill { background: var(--accent); }

/* breathing dot */
.live-pill::before,
.coming-soon-pill::before {
    content: "";
    display: inline-block;
    width: 0.55em;
    height: 0.55em;
    background: #fff;
    border-radius: 50%;
    flex-shrink: 0;
    animation: live-pulse 1.6s ease-in-out infinite;
}

@keyframes live-pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.35; }
}

/* category pills — like .live-pill but without the breathing dot. */
/* usage: <span class="tag-pill tag-pill--purple">mechanism design</span> */
/* add a new color by appending one line below. */
.tag-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 0.45em;
    font-weight: 400;
    letter-spacing: 0.08em;
    padding: 0.6em 0.95em;
    border-radius: 999px;
    margin-left: 0.6em;
    text-transform: lowercase;
    line-height: 1;
    position: relative;
    top: -0.25em;
    white-space: nowrap;
    vertical-align: middle;
}

.tag-pill--purple { background: #9333ea; }
.tag-pill--blue   { background: #2563eb; }
.tag-pill--green  { background: #16a34a; }
.tag-pill--orange { background: #ea580c; }
.tag-pill--pink   { background: #db2777; }
.tag-pill--gray   { background: #6b7280; }

.booster-check {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    align-items: center;
    margin: 1rem 0;
}

@media (max-width: 600px) {
    .booster-check {
        row-gap: 1rem;
    }
    .booster-grid {
        grid-template-columns: repeat(5, 1fr);
        gap: 8px;
    }
}

.booster-check input {
    width: 480px;
    max-width: 100%;
    height: 44px;
    padding: 0 14px;
    border: 1px solid var(--accent);
    border-radius: 0;
    background: transparent;
    color: var(--accent);
    font: inherit;
    outline: none;
}

.booster-check input:focus {
    box-shadow: 0 0 0 1px var(--accent);
}

.booster-check button {
    min-height: 44px;
    padding: 0 20px;
    border: 1px solid var(--accent);
    border-radius: 0;
    background: var(--accent);
    color: var(--link-inverse);
    font: inherit;
    cursor: pointer;
}

.booster-check button:hover:not(:disabled) {
    background: var(--accent-hover);
}

.booster-check button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.booster-result {
    flex-basis: 100%;
    line-height: 1.4;
    min-height: 1.2em;
}

.booster-message {
    margin: 0;
}

.booster-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
    margin-top: 12px;
}

.booster-grid img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    border-radius: 6px;
}

.booster-result[data-state="error"] { color: #dc2626; }
.booster-result[data-state="success"] { color: var(--accent); }
.booster-result[data-state="empty"] { opacity: 0.7; }
.booster-result[data-state="loading"] { opacity: 0.7; }

.nav-live-pill {
    display: inline-flex;
    align-items: center;
    background: #16a34a;
    color: #fff;
    font-size: 0.55em;
    font-weight: 700;
    letter-spacing: 0.08em;
    padding: 0.35em 0.6em;
    border-radius: 999px;
    margin-left: 0.5em;
    text-transform: uppercase;
    line-height: 1;
    vertical-align: middle;
    white-space: nowrap;
}


/* USD8 docs shell: mirrors the current usd8.fi mdBook theme while retaining mdBook 0.5 search. */
@font-face {
    font-family: "BlexMono Nerd Font Mono";
    src: url("../../../assets/fonts/BlexMonoNerdFontMono-ExtraLight.woff2") format("woff2");
    font-style: normal;
    font-weight: 200;
    font-display: swap;
}

@font-face {
    font-family: "BlexMono Nerd Font Mono";
    src: url("../../../assets/fonts/BlexMonoNerdFontMono-Regular.woff2") format("woff2");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: "BlexMono Nerd Font Mono";
    src: url("../../../assets/fonts/BlexMonoNerdFontMono-SemiBold.woff2") format("woff2");
    font-style: normal;
    font-weight: 600;
    font-display: swap;
}

@font-face {
    font-family: "FontAwesome";
    src: url("../../../assets/fonts/fontawesome-webfont.woff2") format("woff2");
    font-style: normal;
    font-weight: normal;
    font-display: block;
}

:root {
    font-size: 60%;
    --sidebar-target-width: 220px;
    --sidebar-width: min(var(--sidebar-target-width), 80vw);
    --page-padding: 15px;
    --content-max-width: 750px;
    --menu-bar-height: 50px;
    --mono-font: "BlexMono Nerd Font Mono", monospace;
    --bg: #252525;
    --fg: #ffffff;
    --sidebar-bg: #1e1e1e;
    --sidebar-fg: var(--link);
    --sidebar-non-existant: #505274;
    --sidebar-active: var(--link);
    --sidebar-spacer: #333333;
    --scrollbar: var(--sidebar-fg);
    --icons: #737480;
    --icons-hover: #b7b9cc;
    --links: var(--link);
    --inline-code-color: #c5c8c6;
    --theme-popup-bg: #161923;
    --theme-popup-border: #737480;
    --theme-hover: #282e40;
    --quote-bg: hsl(226, 15%, 17%);
    --quote-border: hsl(226, 15%, 22%);
    --warning-border: #ff8e00;
    --table-border-color: hsl(226, 23%, 16%);
    --table-header-bg: hsl(226, 23%, 31%);
    --table-alternate-bg: hsl(226, 23%, 14%);
    --searchbar-border-color: #aaa;
    --searchbar-bg: #aeaec6;
    --searchbar-fg: #000;
    --searchbar-shadow-color: #aaa;
    --searchresults-header-fg: #5f5f71;
    --searchresults-border-color: #5c5c68;
    --searchresults-li-bg: #242430;
    --search-mark-bg: #a2cff5;
    --color-scheme: dark;
}

html,
html.ayu,
html.coal,
html.light,
html.rust,
html.navy {
    --bg: #252525;
    --fg: #ffffff;
    --sidebar-bg: #1e1e1e;
    --sidebar-fg: var(--link);
    --sidebar-non-existant: #505274;
    --sidebar-active: var(--link);
    --sidebar-spacer: #333333;
    --scrollbar: var(--sidebar-fg);
    --icons: #737480;
    --icons-hover: #b7b9cc;
    --links: var(--link);
    --inline-code-color: #c5c8c6;
    --theme-popup-bg: #161923;
    --theme-popup-border: #737480;
    --theme-hover: #282e40;
    --quote-bg: hsl(226, 15%, 17%);
    --quote-border: hsl(226, 15%, 22%);
    --warning-border: #ff8e00;
    --table-border-color: hsl(226, 23%, 16%);
    --table-header-bg: hsl(226, 23%, 31%);
    --table-alternate-bg: hsl(226, 23%, 14%);
    --searchbar-border-color: #aaa;
    --searchbar-bg: #aeaec6;
    --searchbar-fg: #000;
    --searchbar-shadow-color: #aaa;
    --searchresults-header-fg: #9a9aab;
    --searchresults-border-color: #5c5c68;
    --searchresults-li-bg: #242430;
    --search-mark-bg: #a2cff5;
    --color-scheme: dark;
    font-family: "BlexMono Nerd Font Mono", Arial, sans-serif;
    color: var(--fg);
    background: var(--bg);
}

body {
    font-size: 1.6rem;
}

code,
kbd,
pre {
    font-family: var(--mono-font) !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "BlexMono Nerd Font Mono", monospace;
    font-weight: 200;
    letter-spacing: 0.01em;
}

h1,
h2 {
    font-size: 2.5em;
    margin-block-start: 1.2em;
    margin-block-end: 0.6em;
}

.content .faq-title ~ h2 {
    font-size: 1.5em;
}

.content .faq-question::before {
    content: "+";
    margin-right: 0.6em;
}

.content .header.faq-question {
    pointer-events: auto;
    cursor: pointer;
}

.content .faq-question[aria-expanded="true"]::before {
    content: "−";
}

.content .faq-answer[hidden] {
    display: none;
}

.content .faq-answer > :last-child {
    margin-bottom: 0;
}

h3 { font-size: 1.45em; }
h4 { font-size: 1.2em; }
h5, h6 { font-size: 1em; }
h2, h3 { margin-block-start: 2.5em; }
h4, h5 { margin-block-start: 2em; }

h1:target::before,
h2:target::before,
h3:target::before,
h4:target::before,
h5:target::before,
h6:target::before,
dt:target::before {
    display: none;
}

.content main {
    max-width: var(--content-max-width);
    padding-top: 40px;
}

.content p {
    line-height: 1.8em;
    margin-bottom: 2em;
}

.content ol,
.content ul {
    line-height: 1.7em;
    margin-bottom: 2em;
}

.content li {
    line-height: 1.4em;
    margin-bottom: 1.3em;
}

.content .example-box {
    margin: 2.4em 0;
    padding: 2.2em;
    background: #55451f;
    color: #fff;
}

.content .example-box p,
.content .example-box ol {
    margin-top: 0;
    margin-bottom: 1em;
}

.content .example-box li:last-child {
    margin-bottom: 0;
}

.content .comparison-yes,
.content .comparison-no {
    font-size: 1.35em;
    font-weight: 600;
}

.content .comparison-yes { color: #22c55e; }
.content .comparison-no { color: #ef4444; }

.content table {
    width: 100%;
    border: 1px solid #333;
    border-collapse: collapse;
    background: #202020;
    table-layout: fixed;
}

.content table thead tr {
    background: #181818;
}

.content table th,
.content table td {
    width: 33.333%;
    height: 72px;
    padding: 0 20px;
    border: 1px solid #333;
    background: #202020;
    color: var(--fg);
    vertical-align: middle;
}

.content table thead th {
    background: #181818;
}

.content table th:not(:first-child),
.content table td:not(:first-child) {
    text-align: center;
}

.content .comparison-token {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.content .comparison-token img {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: contain;
}

.content table small {
    display: inline-block;
    margin-top: 0.35em;
    line-height: 1.35;
}

.content .header:not(.faq-question),
.content .header:not(.faq-question):link,
.content .header:not(.faq-question):visited,
.content .header:not(.faq-question):hover {
    color: var(--fg);
    text-decoration: none;
    pointer-events: none;
    cursor: default;
}

.floating-logo {
    display: inline-block;
    width: 170px;
    animation: hero-float 4s ease-in-out infinite;
}

@keyframes hero-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-18px); }
}

#mdbook-menu-bar,
#mdbook-menu-bar-hover-placeholder {
    margin: auto calc(0px - var(--page-padding));
}

#mdbook-menu-bar {
    background: var(--bg);
    border-block-end-color: var(--bg);
}

#mdbook-theme-toggle,
.right-buttons,
.menu-title,
.nav-wide-wrapper,
.nav-wrapper,
.mobile-nav-chapters,
.nav-chapters {
    display: none !important;
}

#mdbook-menu-bar .fa-svg,
#mdbook-menu-bar .icon-button {
    color: var(--icons);
}

#mdbook-menu-bar .fa-svg:hover,
#mdbook-menu-bar .icon-button:hover {
    color: var(--icons-hover);
}

#mdbook-search-wrapper {
    padding-inline: var(--page-padding);
    background: var(--bg);
}

#mdbook-searchbar {
    font-family: "BlexMono Nerd Font Mono", monospace;
    font-size: 1em;
}

.sidebar {
    font-size: 15px;
    background: var(--sidebar-bg);
    color: var(--sidebar-fg);
}

.sidebar .sidebar-scrollbox {
    bottom: 60px;
    padding: 10px;
}

.sidebar-brand {
    display: flex;
    align-items: center;
    gap: 23px;
    margin: 4px 0 20px;
}

.sidebar-logo {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    flex: 0 0 auto;
}

.sidebar-logo img {
    display: block;
    width: 40px;
    height: auto;
}

.sidebar-logo img.sidebar-wordmark {
    width: auto;
    height: 18px;
}

.sidebar-logo:hover,
.sidebar-logo:focus-visible {
    background: transparent;
    filter: brightness(0.82);
}

.sidebar-beta-link,
.sidebar-beta-link:link,
.sidebar-beta-link:visited,
.sidebar-beta-link:active,
.sidebar-beta-link:hover,
.sidebar-beta-link:focus-visible {
  font-size: 12px;
    width: 44px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    background: rgb(208, 153, 40);
    color: #fff;
    line-height: 1;
    text-decoration: none;
}

.sidebar-beta-link:hover,
.sidebar-beta-link:focus-visible {
    background: color-mix(in srgb, rgb(208, 153, 40) 82%, black);
}

.chapter li.chapter-item {
    line-height: 1.5em;
    margin-block-start: 0.6em;
}

.sidebar-external-icon {
    display: inline-block;
    margin-left: 0.45em;
    font-size: 0.85em;
    line-height: 1;
}

.sidebar-social {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 12px;
    display: flex;
    justify-content: center;
    gap: 12px;
}

.sidebar-telegram,
.sidebar-x,
.sidebar-github {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    text-decoration: none;
    font-family: "BlexMono Nerd Font Mono", monospace;
    font-size: 22px;
}

.sidebar-github { font-size: 26px; }

.sidebar-telegram > span,
.sidebar-github > span {
    font-family: "FontAwesome";
    font-style: normal;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
}

.sidebar-telegram > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    line-height: 1;
}

.sidebar-github > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    line-height: 1;
}

.sidebar-social .sidebar-telegram,
.sidebar-social .sidebar-x,
.sidebar-social .sidebar-github {
    color: rgb(255, 255, 255);
    background: transparent;
}

.sidebar-social .sidebar-telegram:hover,
.sidebar-social .sidebar-telegram:focus-visible,
.sidebar-social .sidebar-x:hover,
.sidebar-social .sidebar-x:focus-visible,
.sidebar-social .sidebar-github:hover,
.sidebar-social .sidebar-github:focus-visible {
    color: rgb(255, 212, 0);
    background: transparent;
}

.sidebar-x .x-mark {
    display: block;
    width: 22px;
    height: 22px;
    background: currentColor;
    -webkit-mask: url("/assets/xlogo.svg") center / contain no-repeat;
    mask: url("/assets/xlogo.svg") center / contain no-repeat;
}

@media (prefers-reduced-motion: reduce) {
    .floating-logo,
    .live-pill::before,
    .coming-soon-pill::before {
        animation: none;
    }
}

@media only screen and (max-width: 620px) {
    .content main { padding-top: 30px; }
    h1,
    h2 { font-size: 2.5em; }
    .floating-logo { width: 130px; }
}

/* Match the application typography and shared footer. */
html,
body,
button,
input,
a,
.content,
.sidebar {
    font-family: "BlexMono Nerd Font Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
}

body {
    font-weight: 400;
}

.content h1 > .header,
.content h2 > .header,
.content h3 > .header,
.content h4 > .header,
.content h5 > .header,
.content h6 > .header {
    border-bottom: 0 !important;
}

/* Keep the sidebar page-level; mdBook otherwise injects every heading. */
.sidebar .on-this-page {
    display: none;
}



/* First docs page: big logo with the USD8.fi wordmark beside it. */
.docs-hero-brand {
    display: inline-flex;
    align-items: center;
    gap: 22px;
}

.docs-hero-brand img {
    display: block;
}

.docs-hero-brand img.docs-hero-wordmark {
    width: auto;
    height: 44px;
}

@media (max-width: 760px) {
    .docs-hero-brand { gap: 16px; }
    .docs-hero-brand img:first-child { width: 72px; height: 72px; }
    .docs-hero-brand img.docs-hero-wordmark { height: 32px; }
}

/* USD8 App is an external destination, not a docs chapter: set it apart. */
#mdbook-sidebar .chapter > li.sidebar-app-link {
    margin-top: 28px;
}

/* Addresses page: keep every address on one line. */
.address-table table { width: auto; }
.address-table td { white-space: nowrap; }
.address-table td code { white-space: nowrap; }

/* Timelock Queues (System Stats page), filled in by timelock-queue.js. */
/* Shared docs table look (same as Addresses); long descriptions wrap with breathing room. */
.content .timelock-queue table td.timelock-queue-description { padding-top: 14px; padding-bottom: 14px; line-height: 1.6; overflow-wrap: anywhere; }
.timelock-queue-description div + div { margin-top: 8px; }
.content .timelock-queue table td.timelock-queue-status { white-space: nowrap; }
.content .timelock-queue table td.timelock-queue-status a { color: inherit; }
.timelock-status-dot { display: inline-block; width: 8px; height: 8px; margin-right: 10px; border-radius: 50%; background: #666; vertical-align: middle; }
.timelock-queue-status[data-status="queued"] .timelock-status-dot { --status-color: var(--accent); --status-glow: rgba(255, 204, 0, 0.55); }
.timelock-queue-status[data-status="ready"] .timelock-status-dot { --status-color: #08b18f; --status-glow: rgba(8, 177, 143, 0.55); }
.timelock-queue-status[data-status="queued"] .timelock-status-dot,
.timelock-queue-status[data-status="ready"] .timelock-status-dot { background: var(--status-color); animation: timelock-status-blaze 1.6s ease-out infinite; }
.timelock-status-tick { display: inline-block; width: 5px; height: 10px; margin: 0 13px 3px 3px; border-right: 2px solid #08b18f; border-bottom: 2px solid #08b18f; transform: rotate(45deg); vertical-align: middle; }
@keyframes timelock-status-blaze {
    0% { box-shadow: 0 0 0 0 var(--status-glow); }
    70% { box-shadow: 0 0 0 7px transparent; }
    100% { box-shadow: 0 0 0 0 transparent; }
}
.content .timelock-queue table td.timelock-queue-message { color: var(--fg); opacity: 0.7; text-align: center; }
.content .timelock-queue[data-state="error"] table td.timelock-queue-message { color: #dc2626; opacity: 1; }
.timelock-queue-retry { margin-left: 12px; padding: 2px 10px; border: 1px solid var(--accent); background: transparent; color: var(--accent); font: inherit; cursor: pointer; }
.timelock-queue-spinner { display: inline-block; width: 14px; height: 14px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: timelock-queue-spin 0.8s linear infinite; vertical-align: middle; }
@keyframes timelock-queue-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .timelock-queue-spinner, .timelock-status-dot { animation: none !important; } }

/* Content images carry width/height attributes (to reserve space and avoid layout
   shift). mdBook caps them at max-width: 100%, which shrinks the width on narrow
   screens while the height attribute stays fixed, squashing the picture. Let the
   height follow the width. Zero specificity so any class rule above still wins. */
:where(.content) img {
    height: auto;
}

/* Docs language menu in the top bar. */
.docs-language-select {
    align-self: center;
    margin-left: auto;
    margin-right: 8px;
    padding: 2px 6px;
    border: 1px solid var(--sidebar-spacer, rgba(255, 255, 255, 0.2));
    border-radius: 0;
    background: transparent;
    color: var(--icons, inherit);
    font: inherit;
    font-size: 13px;
    cursor: pointer;
}
.docs-language-select option { color: #111; }

/* Blex Mono for Latin letters, digits and symbols only, never the space or
   sentence punctuation (. , : ;):
   Arabic, Persian and Thai pages use it so those scripts and their word
   spaces come from a proportional script font (Blex's monospace space
   leaves wide gaps between Arabic/Thai words). */
@font-face {
    font-family: "Blex Latin";
    src: url("../../../assets/fonts/BlexMonoNerdFontMono-ExtraLight.woff2") format("woff2");
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    unicode-range: U+0021-002B, U+002D, U+002F-0039, U+003C-007E, U+00A1-02FF, U+2010-2027, U+2030-205E, U+20A0-20CF, U+2100-23FF, U+25A0-25FF;
}

@font-face {
    font-family: "Blex Latin";
    src: url("../../../assets/fonts/BlexMonoNerdFontMono-Regular.woff2") format("woff2");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    unicode-range: U+0021-002B, U+002D, U+002F-0039, U+003C-007E, U+00A1-02FF, U+2010-2027, U+2030-205E, U+20A0-20CF, U+2100-23FF, U+25A0-25FF;
}

@font-face {
    font-family: "Blex Latin";
    src: url("../../../assets/fonts/BlexMonoNerdFontMono-SemiBold.woff2") format("woff2");
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    unicode-range: U+0021-002B, U+002D, U+002F-0039, U+003C-007E, U+00A1-02FF, U+2010-2027, U+2030-205E, U+20A0-20CF, U+2100-23FF, U+25A0-25FF;
}

/* Arabic, Persian, Thai: Blex Mono lacks these scripts, and the monospace
   fallback stretches them; put a proportional script font next in the stack
   and drop letter spacing (it breaks Arabic joining and Thai marks).
   Code blocks and the FontAwesome social icons keep their own fonts. */
html:is([lang="ar"], [lang="fa"]) :not(code, kbd, pre, code *, pre *, .sidebar-telegram > span, .sidebar-github > span) {
    font-family: "Blex Latin", "SF Arabic", "Geeza Pro", "Noto Sans Arabic", "Segoe UI", Tahoma, sans-serif !important;
    letter-spacing: 0 !important;
}
html[lang="th"] :not(code, kbd, pre, code *, pre *, .sidebar-telegram > span, .sidebar-github > span) {
    font-family: "Blex Latin", "Thonburi", "Noto Sans Thai", "Leelawadee UI", Tahoma, sans-serif !important;
    letter-spacing: 0 !important;
}

/* Anti-Scam Check: a hidden page (direct link only). Keep it out of the
   sidebar, the previous/next arrows and the search results. */
#mdbook-sidebar li:has(> .chapter-link-wrapper > a[href$="anti-scam-check.html"]),
#mdbook-sidebar li:has(> a[href$="anti-scam-check.html"]),
a.nav-chapters[href$="anti-scam-check.html"],
a.mobile-nav-chapters[href$="anti-scam-check.html"],
#mdbook-searchresults li:has(a[href*="anti-scam-check.html"]),
#searchresults li:has(a[href*="anti-scam-check.html"]) { display: none !important; }

.anti-scam-check { margin: 1.6rem 0; }
.anti-scam-check label { display: block; margin-bottom: 0.5rem; font-weight: bold; }
.anti-scam-row { display: flex; flex-wrap: wrap; gap: 0.6rem; align-items: stretch; }
.anti-scam-field {
    display: flex;
    align-items: center;
    width: 480px;
    max-width: 100%;
    height: 44px;
    border: 1px solid var(--accent);
    color: var(--accent);
}
.anti-scam-field:focus-within { box-shadow: 0 0 0 1px var(--accent); }
.anti-scam-prefix { padding: 0 0 0 14px; user-select: none; }
.anti-scam-field input {
    flex: 1;
    min-width: 0;
    height: 100%;
    padding: 0 14px 0 2px;
    border: 0;
    background: transparent;
    color: var(--accent);
    font: inherit;
    outline: none;
}
.anti-scam-check button {
    min-height: 44px;
    padding: 0 20px;
    border: 1px solid var(--accent);
    border-radius: 0;
    background: var(--accent);
    color: var(--link-inverse);
    font: inherit;
    cursor: pointer;
}
.anti-scam-check button:hover:not(:disabled) { background: var(--accent-hover); }
.anti-scam-check button:disabled { opacity: 0.6; cursor: not-allowed; }
.anti-scam-result { margin-top: 0.6rem; min-height: 1.4em; line-height: 1.4; }
.anti-scam-result[data-state="official"] { color: #08b18f; }
.anti-scam-result[data-state="unknown"],
.anti-scam-result[data-state="invalid"] { color: #dc2626; }

/* Branding and Assets page: logo and badge previews on their intended backgrounds. */
.brand-assets {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin: 16px 0 24px;
}
.brand-asset {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    margin: 0;
    flex: 1 1 200px;
    box-sizing: border-box;
    padding: 20px;
    border: 1px solid #333;
}
.brand-asset-dark { background: #151515; }
.brand-asset-light { background: #ffffff; }
.brand-asset-plain { background: transparent; border: 0; padding: 0; flex: 0 0 auto; }
.content .brand-asset img { height: auto; max-width: 100%; }
.brand-asset figcaption {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 1.3rem;
    color: #a1a1aa;
}
.brand-asset-light figcaption { color: #52525b; }
.content .brand-asset-light figcaption a { color: #8a5a00; }
.content .brand-asset .brand-badge-link { display: inline-flex; line-height: 0; text-decoration: none; }
