/* LaunchDesk app pages: the template's materials (notched detail card, products grid, outlined pills, the square MINT box)
   in charcoal, cream and signal red, plus the pieces the chain scripts render. Loaded after rd.css and util.css. */
:root {
  --paper: #111113; --paper-2: #19191c; --card: #19191c; --well: #212125; --well-2: #2a2a2e; --track: #212125;
  --ink: #eee8dd; --muted: #9b978f; --chrome: #7c7a75; --line: #2a2a2e; --frame: #3a3a40;
  --head: #ff4433; --amber: #ff4433; --gold: #ff4433; --brand: #ff4433; --phos: #8fd9a8; --alert: #ff4433;
  --lift: 0 10px 30px rgb(0 0 0 / .5);
  --color-ink: var(--ink); --color-muted: var(--muted); --color-line: var(--line); --color-well: var(--well); --color-head: var(--head);
  --spacing: .25rem; --font-weight-medium: 500; --font-weight-semibold: 600; --leading-tight: 1.25; --leading-relaxed: 1.625; --tw-border-style: solid;
  --font-mono: "JetBrains Mono", ui-monospace, monospace; --font-crt: "JetBrains Mono", ui-monospace, monospace; --font-sans: "Archivo", sans-serif;
  --cream: #eee8dd; --red: #ff4433;
}
body.rd-app { font-size: 16px; }
.rd-app main { padding-top: 7.5rem; padding-bottom: 6rem; }
@media (max-width: 768px) { .rd-app main { padding-top: 5.5rem; } }
.tnum { font-variant-numeric: tabular-nums; }
.mono { font-family: var(--font-mono); }
.text-sm { font-size: 14px; } .text-muted { color: var(--muted); } .text-ink { color: var(--ink); } .text-right { text-align: right; }
.min-w-0 { min-width: 0; } .block { display: block; } .mt-3 { margin-top: .75rem; } .mt-4 { margin-top: 1rem; } .mt-6 { margin-top: 1.5rem; }
.hide { display: none !important; }
@media (max-width: 640px) { .hide-sm { display: none !important; } }
.amb { color: var(--red); } .ok-txt { color: var(--phos); } .bad-txt { color: var(--red); }
a.amb, .amb a { text-decoration: underline; text-underline-offset: 3px; }

/* ---------- the template's materials, dark */
.rd-app .page-module___8aEwW__page { background: var(--paper); }
.rd-detail .page-module__PnZsmq__detailCard { background: var(--card); border-color: var(--line); padding: 7rem 3.25rem 3rem; }
.rd-detail .page-module__PnZsmq__detailCard:before { background-color: var(--paper); }
.rd-detail .page-module__PnZsmq__title { font-family: "Bricolage Grotesque", sans-serif; font-weight: 700; font-stretch: 85%; letter-spacing: -.02em; color: var(--ink); overflow-wrap: anywhere; }
.rd-detail .page-module__PnZsmq__lead { color: var(--muted); font-size: 1.0625rem; }
.rd-detail .page-module__PnZsmq__tag { border-color: var(--red); color: var(--red); font-size: .875rem; letter-spacing: .06em; }
.rd-detail .page-module__PnZsmq__divider { background: var(--frame); }
.rd-detail .page-module__PnZsmq__markdownSection { border-top-color: var(--line); grid-template-columns: minmax(0, 16rem) minmax(0, 1fr); gap: 3rem; }
.rd-detail .page-module__PnZsmq__sectionHeadingCol h2 { font-family: "Bricolage Grotesque", sans-serif; font-weight: 600; font-stretch: 85%; font-size: 1.75rem; color: var(--ink); }
.rd-detail .page-module__PnZsmq__sectionBodyCol { min-width: 0; color: var(--ink); }
.rd-detail .page-module__PnZsmq__sectionBodyCol table td, .rd-detail .page-module__PnZsmq__sectionBodyCol table th { white-space: normal !important; max-width: none !important; overflow: visible !important; text-overflow: clip !important; }
.rd-detail .page-module__PnZsmq__sectionBodyCol table { font-family: "Archivo", sans-serif; table-layout: auto; margin: .25rem 0 1rem; }
.rd-detail .page-module__PnZsmq__hero { grid-template-columns: minmax(0, 1fr) minmax(0, 26rem); gap: 4rem; }
.rd-frozen { font-family: "Archivo", sans-serif; font-size: .875rem; color: var(--muted); display: block; margin-top: .5rem; letter-spacing: 0; }
@media (max-width: 1024px) {
  .rd-detail .page-module__PnZsmq__hero, .rd-detail .page-module__PnZsmq__markdownSection { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
}
@media (max-width: 768px) { .rd-detail .page-module__PnZsmq__detailCard { padding: 4.5rem 1.25rem 2rem; } }
.rd-list .page-module__bSawnG__title { font-family: "Bricolage Grotesque", sans-serif; font-weight: 700; font-stretch: 80%; letter-spacing: -.035em; color: var(--ink); }
.rd-list .page-module__bSawnG__subtitle { color: var(--muted); max-width: 44rem; font-size: 1.0625rem; }
.rd-app .page-module__bSawnG__filterButton { border-color: var(--ink); color: var(--ink); font-family: "Bricolage Grotesque", sans-serif; font-stretch: 85%; width: auto; min-width: 9rem; padding: 0 1.4rem; font-size: 1.15rem; height: 2.75rem; }
.rd-app .page-module__bSawnG__filterButton:hover { background: rgb(238 232 221 / .08); }
.rd-app .page-module__bSawnG__filterButton[aria-pressed=true] { background: var(--ink); color: var(--paper); }
.rd-app .page-module__bSawnG__filterButton span { opacity: .55; font-size: .85em; margin-left: .25rem; }
.rd-app .page-module__bSawnG__filters { margin-bottom: 0; }

/* ---------- the wallet pill: top right under the header, the template's outlined nav pill */
.rd-walletpill { position: fixed; top: 4.6rem; right: var(--container-padding, 1.75rem); z-index: 120; height: 2.25rem; padding: 0 1rem; border: 1px solid var(--ink); border-radius: 5rem; background: var(--paper); color: var(--ink); font: 600 .95rem/1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; letter-spacing: .03em; text-transform: uppercase; cursor: pointer; }
.rd-walletpill:hover { background: var(--ink); color: var(--paper); }
@media (max-width: 768px) { .rd-walletpill { top: auto; bottom: 7.25rem; right: 1rem; } }

/* ---------- the square MINT box with its >>>>>> arrows, as a button */
.rd-mint { display: inline-flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 3.5rem; padding: 0 1rem 0 1.1rem; border: 1px solid var(--red); background: var(--paper); color: var(--red); font: 500 1.6rem/1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; text-transform: uppercase; cursor: pointer; transition: background .2s, color .2s; }
.rd-mint:hover:not(:disabled) { background: var(--red); color: var(--paper); }
.rd-mint:disabled { opacity: .4; cursor: not-allowed; }
.rd-mint-arrows { width: 5.2rem; height: 1.3rem; flex: none; background: repeating-linear-gradient(90deg, currentColor 0 0, transparent 0 0); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 20'%3E%3Cpath d='M2 0l10 10L2 20V0z'/%3E%3C/svg%3E") left/0.9rem 100% repeat-x; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 20'%3E%3Cpath d='M2 0l10 10L2 20V0z'/%3E%3C/svg%3E") left/0.9rem 100% repeat-x; background-color: currentColor; }
.rd-ghost, .btn { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 2.75rem; padding: 0 1.25rem; border: 1px solid var(--ink); border-radius: 5rem; background: transparent; color: var(--ink); font: 500 1.05rem/1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; text-transform: uppercase; letter-spacing: .02em; cursor: pointer; transition: background .2s, color .2s; white-space: nowrap; }
.rd-ghost:hover:not(:disabled), .btn:hover:not(:disabled) { background: var(--ink); color: var(--paper); }
.rd-ghost:disabled, .btn:disabled { opacity: .35; cursor: not-allowed; }
.btn-amber { border-color: var(--red); background: var(--red); color: var(--paper); }
.btn-amber:hover:not(:disabled) { background: var(--ink); border-color: var(--ink); }
.btn-sm { min-height: 2.25rem; font-size: .95rem; }

/* ---------- type */
.lbl { display: block; font: 600 .8125rem/1.2 "Archivo", sans-serif; text-transform: uppercase; letter-spacing: .12em; color: var(--muted); margin-bottom: .6rem; }
.lbl b { letter-spacing: 0; }
.rd-p { color: var(--muted); line-height: 1.6; margin: 1.25rem 0 0; max-width: 46rem; }
.rd-small { display: block; font-size: .875rem; line-height: 1.55; color: var(--muted); margin-top: .5rem; }
.rd-eyebrow { font: 600 .8125rem/1 "Archivo", sans-serif; text-transform: uppercase; letter-spacing: .12em; color: var(--muted); margin: 0 0 1rem; }
.rd-h2 { margin: 3rem 0 1.25rem; font: 600 2rem/1.1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; letter-spacing: -.01em; color: var(--ink); display: flex; flex-wrap: wrap; align-items: baseline; gap: .4rem 1rem; }
.rd-h2 span { font: 400 1rem/1.4 "Archivo", sans-serif; color: var(--muted); letter-spacing: 0; }
.rd-h3 { margin: 0 0 1rem; font: 600 1.5rem/1.15 "Bricolage Grotesque", sans-serif; font-stretch: 85%; color: var(--ink); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: .5rem; }
.rd-h3 span { font: 400 .875rem/1.4 "Archivo", sans-serif; color: var(--muted); }
.rd-rowbetween { display: flex; align-items: baseline; justify-content: space-between; gap: .75rem; }

/* ---------- forms */
.field { width: 100%; height: 3rem; border: 1px solid var(--frame); border-radius: 0; background: var(--paper); color: var(--ink); padding: 0 .9rem; font: 400 1rem "Archivo", sans-serif; outline: none; }
.field:focus { border-color: var(--ink); }
textarea.field { height: 6rem; padding: .75rem .9rem; resize: vertical; }
.field::placeholder { color: var(--chrome); }
.rd-form2, .rd-form3 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1.25rem; }
.rd-form3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 640px) { .rd-form2, .rd-form3 { grid-template-columns: 1fr; } }
.drop { display: flex; align-items: center; gap: 1rem; padding: 1rem; border: 1px dashed var(--frame); cursor: pointer; }
.drop img { width: 56px; height: 56px; border-radius: 99px; object-fit: cover; }
.weight { width: 100%; accent-color: var(--red); }
.seg { display: inline-flex; gap: .25rem; padding: .25rem; border: 1px solid var(--frame); border-radius: 5rem; }
.seg button { padding: .35rem .8rem; border-radius: 5rem; font: 500 .9rem "Archivo", sans-serif; color: var(--muted); }
.seg button[aria-pressed=true] { background: var(--ink); color: var(--paper); }
.steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: .4rem; }
.steps i { height: 3px; background: var(--well-2); }
.steps i.on { background: var(--red); }

/* ---------- board */
.rd-ledband { position: relative; height: 200px; border: 1px solid var(--line); background: #0b0b0c; display: flex; flex-direction: column; margin-bottom: 1.5rem; }
.rd-ledband canvas { flex: 1; width: 100%; min-height: 0; display: block; }
.rd-ledcap { display: flex; justify-content: space-between; padding: .4rem .75rem; border-top: 1px solid var(--line); font: 400 .8125rem var(--font-mono); color: var(--muted); }
.rd-ledcap b { color: var(--red); font-weight: 500; }
.rd-statrow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--frame); border-bottom: 1px solid var(--frame); margin-bottom: 2rem; }
.rd-statrow > div { padding: 1.25rem 1.25rem 1.25rem 0; min-width: 0; }
.rd-statrow > div + div { padding-left: 1.25rem; border-left: 1px solid var(--line); }
.rd-statrow .k { font: 600 .8125rem "Archivo", sans-serif; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); margin: 0; }
.rd-statrow .v { margin: .6rem 0 0; font: 600 2.4rem/1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rd-statrow .v.amb { color: var(--red); }
.rd-statrow .s { margin: .5rem 0 0; font-size: .875rem; color: var(--muted); }
@media (max-width: 860px) { .rd-statrow { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rd-statrow > div:nth-child(3) { padding-left: 0; border-left: 0; } .rd-statrow > div:nth-child(n+3) { border-top: 1px solid var(--line); } .rd-statrow .v { font-size: 1.8rem; } }
.rd-boardbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem; }
.rd-search { flex: 1 1 18rem; max-width: 28rem; }
.rd-search input { width: 100%; height: 2.75rem; border: 1px solid var(--ink); border-radius: 5rem; background: transparent; color: var(--ink); padding: 0 1.25rem; font: 400 1rem "Archivo", sans-serif; outline: none; }
.rd-search input::placeholder { color: var(--chrome); }
.board-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
@media (max-width: 1200px) { .board-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 860px) { .board-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; } }
.rd-app .rd-coin { background: var(--card); border: 1px solid var(--line); color: var(--ink); padding: 1.1rem; transition: border-color .2s, transform .2s; min-width: 0; }
.rd-app .rd-coin:hover { border-color: var(--ink); transform: translateY(-2px); }
.rd-coin .page-module__bSawnG__thumbnailWrapper { background: var(--well); }
.rd-coin .page-module__bSawnG__cardTitle { font-family: "Bricolage Grotesque", sans-serif; font-weight: 600; font-stretch: 85%; font-size: 1.35rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }
.rd-coin .page-module__bSawnG__cardDescription { color: var(--muted); }
.rd-coin .page-module__bSawnG__categoryTag { border-color: var(--frame); color: var(--muted); margin-top: .9rem; font-size: .8125rem; max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
.rd-coin .page-module__bSawnG__categoryTag.rd-paytag { border-color: var(--red); color: var(--red); }
.rd-coin .page-module__bSawnG__cardTop { gap: .6rem; }
.rd-cap { margin: 0; font: 600 1.6rem/1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; color: var(--ink); }
.rd-thumbfb { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; background: radial-gradient(circle at 50% 55%, #3a1814, var(--well) 70%); font: 700 2.2rem/1 "Bricolage Grotesque", sans-serif; font-stretch: 80%; color: var(--red); text-transform: uppercase; letter-spacing: -.02em; overflow: hidden; }
@media (max-width: 860px) { .rd-coin .page-module__bSawnG__cardTitle { font-size: 1.05rem; } .rd-cap { font-size: 1.2rem; } .rd-app .rd-coin { padding: .75rem; } .rd-coin .page-module__bSawnG__cardDescription { display: none; } .rd-thumbfb { font-size: 1.5rem; } }
.rd-more { display: flex; justify-content: center; margin-top: 2rem; }
.empty { grid-column: 1 / -1; border: 1px dashed var(--frame); padding: 2rem 1.5rem; text-align: center; color: var(--muted); font-size: 1rem; line-height: 1.6; }
.empty b { color: var(--ink); font-weight: 600; }
.skel { background: var(--well); color: transparent !important; animation: sk 1.2s ease-in-out infinite; }
@keyframes sk { 50% { opacity: .5 } }

/* ---------- launcher */
.rd-summary { border: 1px solid var(--frame); padding: 1.5rem; background: var(--paper); }
.rd-sumcoin { display: flex; align-items: center; gap: 1rem; padding-bottom: 1.25rem; margin-bottom: 1rem; border-bottom: 1px solid var(--line); }
.rd-sumname { margin: 0; font: 600 1.4rem/1.1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rd-sumcoin p.text-muted { margin: .25rem 0 0; }
.rd-dl { display: grid; gap: .55rem; margin: 0; font-size: .9375rem; }
.rd-dl > div { display: flex; justify-content: space-between; gap: 1rem; }
.rd-dl dt { color: var(--muted); } .rd-dl dd { margin: 0; color: var(--ink); text-align: right; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rd-dl-tight { margin-top: .75rem; }
.rd-note { margin: 1.25rem 0 0; font-size: .875rem; line-height: 1.6; color: var(--muted); }
.rd-note b { color: var(--ink); font-weight: 600; }
.split-bar { display: flex; gap: 2px; height: 8px; }
.split-bar span { display: block; height: 100%; }
.rd-modes { display: flex; flex-wrap: wrap; gap: .75rem; }
.mode { flex: 1 1 14rem; text-align: left; padding: 1rem 1.1rem; border: 1px solid var(--frame); background: transparent; cursor: pointer; color: var(--ink); }
.mode[aria-pressed=true] { border-color: var(--red); box-shadow: inset 0 0 0 1px var(--red); }
.mode b { display: block; font: 600 2rem/1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; }
.mode small { display: block; margin-top: .4rem; font-size: .9rem; color: var(--muted); }
.rd-tabs { margin: .75rem 0 .75rem; }
.pick-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .5rem; max-height: 360px; overflow-y: auto; padding-right: 2px; }
@media (max-width: 1280px) { .pick-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) { .pick-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.tile { display: flex; align-items: center; gap: .6rem; min-width: 0; padding: .6rem .7rem; border: 1px solid var(--line); background: var(--paper); text-align: left; cursor: pointer; color: var(--ink); }
.tile:hover { border-color: var(--frame); }
.tile[aria-pressed=true] { border-color: var(--red); background: #2a1512; }
.tile .t1 { font: 600 .95rem/1.1 "Archivo", sans-serif; color: var(--ink); }
.tile .t2 { font-size: .8125rem; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tile[disabled] { opacity: .4; cursor: not-allowed; }
.rd-basket { border: 1px solid var(--frame); margin-top: .6rem; }
.rd-basket > p { margin: 0; }
.basket-row { display: grid; grid-template-columns: 22px 1fr 140px 48px 28px; align-items: center; gap: .75rem; padding: .6rem .8rem; border-bottom: 1px solid var(--line); }
.basket-row:last-child { border-bottom: 0; }
@media (max-width: 640px) { .basket-row { grid-template-columns: 18px 1fr 84px 40px 24px; gap: .5rem; } }
.x-btn { width: 28px; height: 28px; color: var(--muted); font-size: 1.2rem; display: inline-flex; align-items: center; justify-content: center; }
.x-btn:hover { color: var(--red); }
.rd-review { border: 1px solid var(--frame); margin-top: 1.25rem; }
.rd-launchsteps { list-style: none; padding: 0; margin: 1.25rem 0 0; display: grid; gap: .5rem; font: 400 1rem "Archivo", sans-serif; color: var(--muted); }
.rd-msg { margin: 1rem 0 0; padding: .9rem 1rem; border: 1px solid var(--frame); font-size: 1rem; }
.rd-navbtns { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
.rd-navbtns .rd-mint { min-width: 15rem; }

/* ---------- coin */
.rd-receipt { margin: 0 0 1rem; padding: 1rem 1.25rem; border: 1px solid var(--red); color: var(--ink); }
.rd-receipt a { color: var(--red); text-decoration: underline; }
.rd-coinhead { display: flex; gap: 1.25rem; align-items: center; }
.rd-coinsym { margin: 0; font: 600 1.6rem/1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; color: var(--ink); }
.rd-addr { margin: .5rem 0 0; font-size: .875rem; color: var(--muted); }
.rd-copy { font: 600 .75rem "Archivo", sans-serif; letter-spacing: .1em; color: var(--red); margin-left: .4rem; }
.rd-links { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .9rem; }
.rd-pill { display: inline-flex; align-items: center; height: 2rem; padding: 0 .85rem; border: 1px solid var(--frame); border-radius: 5rem; font-size: .875rem; color: var(--ink); }
.rd-pill:hover { border-color: var(--ink); }
.rd-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--frame); margin-top: 1.5rem; }
.rd-stats > div { padding: .9rem 0; border-bottom: 1px solid var(--line); min-width: 0; }
.rd-stats > div:nth-child(even) { padding-left: 1rem; border-left: 1px solid var(--line); }
.rd-stats .k { margin: 0; font: 600 .75rem "Archivo", sans-serif; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); }
.rd-stats .v { margin: .4rem 0 0; font: 600 1.35rem/1.1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rd-stats > p { grid-column: 1 / -1; color: var(--muted); }
.rd-tradegrid { display: grid; grid-template-columns: minmax(0, 22rem) minmax(0, 1fr); gap: 1.5rem; }
@media (max-width: 1100px) { .rd-tradegrid { grid-template-columns: 1fr; } }
.rd-ticket { display: grid; gap: .9rem; align-content: start; }
.rd-ticket .rd-mint { width: 100%; font-size: 1.35rem; }
.rd-sides { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--frame); }
.rd-sides button { height: 2.75rem; font: 600 1.1rem "Bricolage Grotesque", sans-serif; font-stretch: 85%; color: var(--muted); }
.rd-sides button[aria-pressed=true][data-s=buy] { background: var(--ink); color: var(--paper); }
.rd-sides button[aria-pressed=true][data-s=sell] { background: var(--red); color: var(--paper); }
.rd-pay { border: 1px solid var(--frame); padding: .8rem .9rem; display: grid; gap: .5rem; }
.rd-bal { font-size: .875rem; color: var(--muted); }
.rd-amt { width: 100%; background: transparent; border: 0; outline: none; color: var(--ink); font: 600 2rem/1.1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; }
.rd-amt::placeholder { color: var(--chrome); }
.rd-unit { font: 600 1rem "Archivo", sans-serif; color: var(--ink); border: 1px solid var(--frame); border-radius: 5rem; padding: .25rem .7rem; max-width: 9rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rd-quick { display: grid; grid-template-columns: repeat(3, 1fr); gap: .4rem; }
.rd-quick button { height: 2rem; border: 1px solid var(--line); font-size: .875rem; color: var(--muted); }
.rd-quick button:hover { border-color: var(--ink); color: var(--ink); }
.rd-chart { min-width: 0; }
.rd-px { font: 600 2.4rem/1 "Bricolage Grotesque", sans-serif; font-stretch: 85%; color: var(--ink); }
.chart { width: 100%; height: 300px; display: block; margin-top: 1rem; }
.bar { height: 6px; background: var(--well-2); overflow: hidden; margin-top: .4rem; }
.bar > i { display: block; height: 100%; background: var(--red); transition: width .6s ease-out; }
.w-\[140px\] { width: 140px; }
.rd-scroll { max-height: 420px; overflow-y: auto; }
.row-link { display: flex; align-items: center; gap: .9rem; padding: .7rem .4rem; border-bottom: 1px solid var(--line); color: var(--ink); }
.row-link:hover { background: var(--well); }
.row-link > span:first-child { flex-shrink: 0; }

/* ---------- rewards / burns */
.rd-two { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.5rem; }
.rd-two-wide { grid-template-columns: minmax(0, 1fr) minmax(0, 24rem); }
@media (max-width: 1024px) { .rd-two, .rd-two-wide { grid-template-columns: 1fr; } }
.rd-panel { border: 1px solid var(--line); background: var(--card); padding: 1.5rem; min-width: 0; }
.rd-who { display: flex; flex-wrap: wrap; gap: .75rem; }
.rd-who .field { flex: 1 1 18rem; max-width: 34rem; }
.rd-who .rd-mint { min-height: 3rem; font-size: 1.25rem; }

/* ---------- reversed */
.rd-toc { display: grid; gap: .1rem; margin-top: 1.5rem; border-top: 1px solid var(--line); padding-top: 1rem; }
.rd-toc a { color: var(--muted); padding: .3rem 0; font-size: .95rem; }
.rd-toc a:hover { color: var(--red); }
.prose p { font-size: 1rem; line-height: 1.65; color: var(--muted); margin: 0 0 .9rem; }
.prose p b, .prose li b { color: var(--ink); font-weight: 600; }
.prose ul { margin: 0 0 1rem 1.1rem; list-style: square; color: var(--muted); line-height: 1.6; }
.prose a, .tbl a { color: var(--red); text-decoration: underline; text-underline-offset: 3px; }
.prose h1 { display: none; }
.scroll-x { overflow-x: auto; }
.tbl { width: 100%; border-collapse: collapse; font-size: .9375rem; }
.tbl th { text-align: left; font-weight: 600; font-size: .75rem; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); padding: .5rem .6rem .5rem 0; border-bottom: 1px solid var(--frame); }
.tbl td { padding: .7rem .6rem .7rem 0; border-bottom: 1px solid var(--line); vertical-align: top; color: var(--ink); line-height: 1.5; }
.tbl td.m { color: var(--muted); }
.tbl code, .code, .prose code { font-family: var(--font-mono); font-size: .82rem; padding: 1px 5px; background: var(--well); color: var(--ink); word-break: break-all; }
.tag { display: inline-block; font-size: .75rem; padding: .1rem .5rem; border: 1px solid var(--frame); border-radius: 5rem; color: var(--muted); white-space: nowrap; }
.tag.v { color: var(--phos); border-color: rgb(143 217 168 / .45); }
.tag.n { color: var(--red); border-color: rgb(255 68 51 / .5); }
.tag.d { color: var(--ink); border-color: var(--ink); }
.pill { display: inline-flex; align-items: center; gap: .4rem; padding: .2rem .6rem; border: 1px solid var(--frame); border-radius: 5rem; font-size: .8125rem; color: var(--muted); }

/* ---------- shared bits the scripts render */
.mono-badge { display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; font-family: "Bricolage Grotesque", sans-serif; font-weight: 700; font-stretch: 80%; line-height: 1; color: #111113; flex-shrink: 0; }
.coin-img { border-radius: 999px; object-fit: cover; background: var(--well); flex-shrink: 0; }
#toasts { position: fixed; right: 1rem; bottom: 7rem; z-index: 90; display: flex; flex-direction: column; gap: .5rem; max-width: min(420px, calc(100vw - 2rem)); }
.toast { padding: .8rem 1rem; background: var(--paper); border: 1px solid var(--ink); color: var(--ink); font-size: .95rem; animation: tin .2s ease-out; }
.toast.bad { border-color: var(--red); } .toast.ok { border-color: var(--phos); }
@keyframes tin { from { transform: translateY(6px); opacity: 0 } }

/* the template gives bare buttons a fill; ours draw their own */
.rd-app .rd-quick button, .rd-app .seg button, .rd-app .rd-sides button, .rd-app .x-btn, .rd-app .rd-copy, .rd-app .rd-bal, .rd-app .tile, .rd-app .mode { background-color: transparent; }
.rd-app .seg button[aria-pressed=true] { background-color: var(--ink); }
.rd-app .rd-sides button[aria-pressed=true][data-s=buy] { background-color: var(--ink); }
.rd-app .rd-sides button[aria-pressed=true][data-s=sell] { background-color: var(--red); }
.rd-app .tile { background-color: var(--paper); }
.rd-app .tile[aria-pressed=true] { background-color: #2a1512; }
.rd-pay .rd-rowbetween { align-items: center; }
.rd-amt { flex: 1 1 auto; min-width: 0; }
.rd-unit { flex: none; }

/* app pages: the header sits on a solid band so content scrolling under it stays out of the nav */
.rd-app .Header-module__30pftW__header { background: var(--paper); padding-bottom: .9rem; }
.rd-detail .page-module__PnZsmq__heroImageWrap { order: 0; }
@media (max-width: 768px) {
  .rd-walletpill { top: calc(.95rem + env(safe-area-inset-top, 0px)); bottom: auto; left: 1rem; right: auto; height: 2rem; font-size: .8rem; padding: 0 .75rem; z-index: 110; }
}
.rd-app .rd-copy, .rd-app .rd-bal, .rd-app .rd-quick button, .rd-app .x-btn { background: transparent !important; }
@media (max-width: 768px) {
  .rd-app .Footer-module__6O_PeW__container { flex-direction: column; align-items: flex-start; gap: 1.25rem; }
  .rd-app .Footer-module__6O_PeW__bottomRight { position: static; }
  .rd-app .Footer-module__6O_PeW__links { align-items: flex-start; }
}
.rd-app .rd-bal { border: 0 !important; }
@media (max-width: 768px) { .rd-app .Footer-module__6O_PeW__bottomRight { display: none; } }

/* app pages: the bottom bar (clock + LAUNCH box) sits in the page flow after the content, never on top of it */
.rd-flowbar { margin: 3rem 0 0; border-top: 1px solid var(--line); }
.rd-flowbar .Header-module__30pftW__bottomBar { position: relative !important; bottom: auto; left: auto; transform: none !important; mix-blend-mode: normal; z-index: 1; pointer-events: auto; }
.rd-flowbar .Header-module__30pftW__bottomInner { padding-top: 1rem; padding-bottom: 1rem; }
.rd-app main { padding-bottom: 2rem; }
@media (min-width: 769px) { .rd-walletpill { top: calc(1.4375rem + env(safe-area-inset-top, 0px)); right: calc(var(--container-padding, 1.75rem) + 7.4rem); height: 2.2rem; } }

/* launcher: title band, then the form beside the summary */
.rd-launcher .page-module__PnZsmq__detailCard { padding-top: 5.25rem; }
.rd-launchhead { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.25rem; padding-bottom: 1.5rem; border-bottom: 1px solid var(--frame); }
.rd-launcher .page-module__PnZsmq__markdownSection { grid-template-columns: minmax(0, 1fr) minmax(0, 21rem); border-top: 0; margin-top: 0; padding-top: 1.5rem; }
.rd-launcher .rd-sumcol { position: sticky; top: 5.5rem; }
.rd-launcher .rd-p { margin-top: 1rem; }
.rd-launcher #s1 .pick-grid { max-height: 300px; }
@media (max-width: 1024px) { .rd-launcher .page-module__PnZsmq__markdownSection { grid-template-columns: minmax(0, 1fr); } .rd-launcher .rd-sumcol { position: static; } }
@media (max-width: 768px) { .rd-launcher .page-module__PnZsmq__detailCard { padding-top: 3.75rem; } .rd-launcher .page-module__PnZsmq__title { font-size: 2rem; } }

/* board: the ticker placeholder sits behind every picture, so a slow or missing image never leaves an empty square */
.rd-coin .page-module__bSawnG__thumbnailWrapper { position: relative; }
.rd-coin .page-module__bSawnG__thumbnailWrapper img { position: absolute; inset: 0; }

/* real icons: coins round and cropped, reward tokens in their own shape, never stretched */
.coin-img { border-radius: 999px; object-fit: cover; image-rendering: auto; }
.asset-ico { object-fit: contain; flex-shrink: 0; border-radius: 0; display: inline-block; vertical-align: middle; }
.rd-coin .page-module__bSawnG__thumbnailImage { object-fit: cover; }
/* the template's detail sections give every <img> a block margin; icons and coin pictures sit inline */
.rd-app img.asset-ico, .rd-app img.coin-img, .rd-app .page-module__bSawnG__thumbnailImage { margin: 0 !important; max-width: none; }
.rd-app img.asset-ico, .rd-app img.coin-img { display: inline-block; }
/* phones: no scroll boxes inside the page, a swipe always moves the page */
@media (max-width: 768px) { .pick-grid, .rd-launcher #s1 .pick-grid, .rd-scroll { max-height: none; overflow: visible; } }
