/* Junior Mining Stocks. The palette of a prospector's ground: basalt slate
   for the bands the prices sit on, gossan ochre (the rusty cap over an ore
   body, the first thing a prospector looks for) for the one accent, and
   chlorite green for the second voice. The token names are the engine's
   shared ones (--copper is "the accent", --patina "the dark band"). */

:root {
  --page: #eff1f0;
  --card: #ffffff;
  --ink: #17212b;
  --ink-2: #3a4a59;
  --muted: #5f6e7c;
  --rule: #d6dde2;
  --copper: #93650b;
  --copper-hi: #e0aa3e;
  --copper-lo: #5f4207;
  --copper-text: #7f5708;
  --copper-tint: #f5ead3;
  --verdigris: #3d7a58;
  --verdigris-tint: #dcebe1;
  --patina: #18232e;
  --patina-2: #223140;
  --band-ink: #e8edf1;
  --band-muted: #9aa9b7;
  --down: #c4442e;
  --shadow: 0 1px 2px rgb(24 35 46 / .06), 0 8px 24px -12px rgb(24 35 46 / .2);
  --head: "Bitter", "Rockwell", Georgia, serif;
  --ui: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
  --brand: "Big Shoulders Display", "Arial Narrow", Arial, sans-serif;
  --r: 6px;
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --page: #0e141a; --card: #151e27; --ink: #e7ecf0; --ink-2: #b9c4ce; --muted: #8796a4; --rule: #27343f;
    --copper: #e0aa3e; --copper-hi: #f0c464; --copper-lo: #a8761a; --copper-text: #ecb84f; --copper-tint: #2b2210;
    --verdigris: #72b993; --verdigris-tint: #15302a; --shadow: 0 1px 2px rgb(0 0 0 / .4); color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --page: #0e141a; --card: #151e27; --ink: #e7ecf0; --ink-2: #b9c4ce; --muted: #8796a4; --rule: #27343f;
  --copper: #e0aa3e; --copper-hi: #f0c464; --copper-lo: #a8761a; --copper-text: #ecb84f; --copper-tint: #2b2210;
  --verdigris: #72b993; --verdigris-tint: #15302a; --shadow: 0 1px 2px rgb(0 0 0 / .4); color-scheme: dark;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--page); color: var(--ink); font: 15.5px/1.55 var(--ui); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 2px solid var(--copper); outline-offset: 2px; border-radius: 4px; }
img { max-width: 100%; }
.wrap { max-width: 1260px; margin: 0 auto; padding-left: max(16px, env(safe-area-inset-left, 0px)); padding-right: max(16px, env(safe-area-inset-right, 0px)); }
@media (min-width: 700px) { .wrap { padding-left: 24px; padding-right: 24px; } }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
[hidden] { display: none !important; }

/* --- TradingView embeds ---------------------------------------------------- */
.tv { position: relative; min-width: 0; }
.tv > script { display: none; }
.tv-wait { margin: 0; padding: 14px 0; font-size: 13px; color: var(--band-muted); }
.tv.is-ready .tv-wait { display: none; }
/* Loading state for live widgets: a shimmer bar with a label until the frame loads. */
.tv:not(.is-ready):not(.is-failed) .tv-wait { position: relative; overflow: hidden; border-radius: 8px; padding-left: 12px; background: rgb(140 160 178 / .12); }
.tv:not(.is-ready):not(.is-failed) .tv-wait::after { content: ""; position: absolute; inset: 0; transform: translateX(-100%); background: linear-gradient(90deg, transparent, rgb(255 255 255 / .18), transparent); animation: tv-shimmer 1.4s infinite; }
@keyframes tv-shimmer { to { transform: translateX(100%); } }
@media (prefers-reduced-motion: reduce) { .tv-wait::after { animation: none !important; } }
.tv-credit { margin: 4px 0 0; font-size: 11px; text-align: right; opacity: .7; }
.tv-credit a:hover { text-decoration: underline; }
.tradingview-widget-container, .tradingview-widget-container__widget { width: 100%; }

/* --- ticker tape --------------------------------------------------------- */
.tape { background: var(--patina); color: var(--band-muted); min-height: 46px; border-bottom: 1px solid rgb(224 170 62 / .25); }
.tape .tv-wait { padding: 13px 24px; }
.tape .tv-credit { display: none; } /* the tape carries TradingView's own credit link */
.tape .tradingview-widget-container { height: 46px; }

/* --- masthead ------------------------------------------------------------ */
.masthead { background: var(--card); border-bottom: 1px solid var(--rule); position: sticky; top: 0; z-index: 20; }
.mast-in { display: flex; align-items: center; gap: 12px 28px; padding-block: 12px; }
.logo { display: flex; align-items: center; gap: 11px; flex: none; }
.logo-mark { width: 40px; height: 40px; flex: none; }
.lm-t { fill: #fff; font: 800 18.5px var(--brand); }
.lm-n { fill: #fff; font: 700 7px var(--brand); opacity: .85; }
.logo-word { font: 800 28px/1 var(--brand); font-stretch: 72%; letter-spacing: -.005em; text-transform: uppercase; color: var(--ink); }
.logo-word b { color: var(--copper); font-weight: 850; }
.logo-word i { font-style: normal; font-weight: 600; font-size: .5em; font-stretch: 100%; color: var(--muted); text-transform: lowercase; margin-left: 2px; }
.nav { display: flex; gap: 2px; margin-left: auto; font: 600 14.5px var(--ui); overflow-x: auto; scrollbar-width: none; }
.nav::-webkit-scrollbar { display: none; }
.nav a { padding: 8px 12px; border-radius: 999px; white-space: nowrap; color: var(--ink-2); }
.nav a:hover { color: var(--ink); background: var(--page); }
.nav a[aria-current="page"] { color: var(--copper-text); background: var(--copper-tint); }
.theme-btn { flex: none; width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid var(--rule); border-radius: 999px; background: transparent; color: var(--ink-2); cursor: pointer; }
.theme-btn:hover { color: var(--copper); border-color: var(--copper); }
.theme-btn svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.theme-btn .moon { display: none; }
:root[data-theme="dark"] .theme-btn .sun { display: none; }
:root[data-theme="dark"] .theme-btn .moon { display: block; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .theme-btn .sun { display: none; }
  :root:not([data-theme="light"]) .theme-btn .moon { display: block; }
}

/* --- the desk: copper plate + chart -------------------------------------- */
.desk { position: relative; background:
    radial-gradient(900px 420px at 18% -10%, rgb(224 170 62 / .22), transparent 60%),
    radial-gradient(700px 380px at 95% 120%, rgb(114 185 147 / .28), transparent 65%),
    var(--patina);
  color: var(--band-ink); overflow: hidden; }
.desk::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .5;
  background-image: linear-gradient(rgb(255 255 255 / .035) 1px, transparent 1px), linear-gradient(90deg, rgb(255 255 255 / .035) 1px, transparent 1px);
  background-size: 48px 48px; mask-image: linear-gradient(to bottom, #000, transparent 90%); }
.desk-in { position: relative; display: grid; grid-template-columns: 360px minmax(0, 1fr); gap: 28px; padding-block: 32px 36px; align-items: stretch; }

.plate { display: flex; flex-direction: column; gap: 14px; }
.plate-face { position: relative; overflow: hidden; border-radius: 14px; padding: 18px 16px 16px; color: #fff;
  background:
    repeating-linear-gradient(90deg, rgb(255 255 255 / .05) 0 1px, transparent 1px 3px),
    linear-gradient(160deg, #2c3d4e 0%, #1c2a37 60%, #15212c 100%);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / .45), inset 0 -2px 0 rgb(0 0 0 / .18), 0 24px 48px -20px rgb(0 0 0 / .6); }
.plate-face::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(105deg, transparent 35%, rgb(255 255 255 / .38) 50%, transparent 65%);
  transform: translateX(-120%); animation: sheen 1.6s .4s cubic-bezier(.3,.6,.3,1) 1 forwards; }
@keyframes sheen { to { transform: translateX(120%); } }
.plate-top { display: flex; align-items: center; gap: 14px; }
.el { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 8px; border: 1.5px solid rgb(255 255 255 / .55);
  font: 800 26px/1 var(--brand); position: relative; text-shadow: 0 1px 0 rgb(0 0 0 / .2); }
.el small { position: absolute; top: 4px; right: 5px; font-size: 9.5px; font-weight: 700; }
.plate-name { font: 700 22px/1.05 var(--brand); font-stretch: 80%; }
.plate-name small { font: 500 12.5px var(--ui); opacity: .85; }
.plate .tv { min-height: 190px; }
/* The live quote sits in a dark inset, like a screen set into the copper plate:
   TradingView draws its numbers in white or price colours, which need a dark ground. */
.plate-screen { margin-top: 16px; padding: 8px 10px 4px; border-radius: 10px; background: #111a23;
  box-shadow: inset 0 2px 8px rgb(0 0 0 / .55), 0 1px 0 rgb(255 255 255 / .35); }
.plate-screen .tv-credit { color: var(--band-muted); }
.plate .tv-wait { color: var(--band-muted); }

.plate-note { margin: 0; font-size: 13px; line-height: 1.5; color: var(--band-muted); }

.desk-chart { min-height: 470px; border-radius: 14px; background: #111a23; border: 1px solid rgb(255 255 255 / .07); padding: 8px; display: flex; flex-direction: column; }
.desk-chart .tradingview-widget-container { flex: 1; height: 450px; }
.desk-chart .tradingview-widget-container__widget { height: 100%; }
.desk-chart .tv-wait { padding: 16px; }
.desk-chart .tv-credit { color: var(--band-muted); padding: 0 6px 2px; }
.desk-compact .desk-in { padding-top: 24px; }

/* --- photo frames and logo chips ----------------------------------------- */
.ph { position: relative; overflow: hidden; background: linear-gradient(135deg, var(--copper-lo), var(--copper)); }
.ph img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
a:hover .ph img { transform: scale(1.03); }
.ph.tile { display: grid; place-items: center; background: var(--copper-tint); }
.lt { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 8px; background: #fff; color: var(--ink);
  font: 800 11px var(--brand); font-stretch: 85%; letter-spacing: .02em; box-shadow: inset 0 0 0 1px var(--rule); overflow: hidden; }
.lt img { position: static; width: 100%; height: 100%; object-fit: contain; padding: 5px; }
.lt.mono { background: linear-gradient(140deg, var(--copper-hi), var(--copper-lo)); color: #fff; box-shadow: none; }
.lt-lg { width: 72px; height: 72px; font-size: 16px; border-radius: 12px; }
.lt-lg img { padding: 9px; }

/* --- top story + just in -------------------------------------------------- */
.note { margin-top: 28px; padding: 20px 24px; background: var(--card); border-radius: var(--r); border-left: 4px solid var(--copper); box-shadow: var(--shadow); }
.note time { margin-left: 10px; font-size: 13px; color: var(--muted); }
.note h2 { margin: 6px 0 8px; font: 600 25px/1.2 var(--head); }
.note p { margin: 0 0 8px; max-width: 68ch; color: var(--ink-2); }

.top { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 36px; padding-block: 36px 12px; }
.kicker { display: inline-block; font: 700 13px var(--ui); color: var(--copper-text); }
.lead { position: relative; min-width: 0; }
.lead > a { display: block; position: relative; border-radius: var(--r); overflow: hidden; }
.lead-img { aspect-ratio: 16 / 9; }
.lead-over { position: absolute; inset: auto 0 0 0; padding: 120px 30px 26px; color: #fff;
  background: linear-gradient(to top, rgb(14 22 30 / .95) 0%, rgb(14 22 30 / .7) 45%, transparent 100%); }
.lead-over .kicker { color: #fff; background: var(--copper); padding: 3px 9px; border-radius: 999px; font-size: 12.5px; }
.lead h1 { margin: 12px 0 8px; font: 600 clamp(27px, 3.2vw, 42px)/1.08 var(--head); text-wrap: balance; letter-spacing: -.012em; }
.lead-over p { margin: 0; max-width: 60ch; font-size: 16px; color: rgb(255 255 255 / .88); }
.lead-meta { padding-top: 10px; }
.lead-text { align-self: start; display: flex; gap: 22px; align-items: flex-start; padding: 28px; background: var(--card); border-radius: var(--r); box-shadow: var(--shadow); }
.lead-text > a.lead-chip { display: block; flex: none; }
.lead-text h1 a:hover { color: var(--copper-text); }
.lead-text .dek { max-width: 60ch; font-size: 16.5px; }

.featured { min-width: 0; }
.featured h2, .box h2, .wire-head h2 { margin: 0; font: 800 26px/1.1 var(--brand); font-stretch: 75%; letter-spacing: -.005em; }
.featured h2 { padding-bottom: 6px; }
.row { display: flex; gap: 14px; align-items: flex-start; padding-block: 14px; border-bottom: 1px solid var(--rule); min-width: 0; }
.row h3 { margin: 0; font: 600 17.5px/1.25 var(--head); text-wrap: pretty; }
.row h3 a:hover { color: var(--copper-text); }
.row .lt { width: 40px; height: 40px; }

/* new-since-last-visit marker */
.is-new h3::before, .lead.is-new h1::before { content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 8px; border-radius: 50%; background: var(--copper); vertical-align: .18em; box-shadow: 0 0 0 4px var(--copper-tint); }

/* --- meta row ------------------------------------------------------------ */
.meta { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin-top: 6px; font-size: 13px; color: var(--muted); }
.via { opacity: .85; }
.via-ext { opacity: 1; font-weight: 600; color: var(--ink-2); }
.via-ext i { font-style: normal; color: var(--copper-text); }
.tk { font: 700 11.5px var(--brand); font-stretch: 88%; letter-spacing: .02em; font-variant-numeric: tabular-nums; color: var(--copper-text); background: var(--copper-tint); padding: 2px 7px; border-radius: 999px; white-space: nowrap; }
.dek { margin: 8px 0 0; color: var(--ink-2); font-size: 15px; }

/* --- layout -------------------------------------------------------------- */
.columns { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 40px; padding-block: 28px 56px; }
.main { min-width: 0; display: flex; flex-direction: column; gap: 40px; }
.rail { display: flex; flex-direction: column; gap: 20px; min-width: 0; }

/* --- the wire ------------------------------------------------------------ */
.wire { min-width: 0; }
.wire-head { display: flex; align-items: center; justify-content: space-between; gap: 12px 20px; flex-wrap: wrap; padding-bottom: 14px; }
.wire-head .count { font-size: 13.5px; color: var(--muted); }
.find { position: relative; flex: 1 1 260px; max-width: 360px; }
.find svg { position: absolute; left: 12px; top: 50%; width: 17px; height: 17px; transform: translateY(-50%); fill: none; stroke: var(--muted); stroke-width: 2; stroke-linecap: round; }
.find input { width: 100%; font: 15px var(--ui); padding: 10px 14px 10px 38px; border: 1px solid var(--rule); border-radius: 999px; background: var(--card); color: var(--ink); }
.find input:focus { border-color: var(--copper); outline: none; box-shadow: 0 0 0 3px var(--copper-tint); }


.wire-new { margin: 8px 0 0; padding: 10px 14px; border-radius: 8px; background: var(--copper-tint); color: var(--copper-text); font-weight: 600; font-size: 14px; }
.wire-list { display: flex; flex-direction: column; }
.w { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--rule); }
.th { display: block; width: 76px; height: 76px; border-radius: 10px; overflow: hidden; }
.th .ph { width: 100%; height: 100%; }
.th-chip { display: grid; place-items: center; background: var(--card); box-shadow: inset 0 0 0 1px var(--rule); }
.th-chip .lt { width: 52px; height: 52px; box-shadow: none; }
.w h3 { margin: 0; font: 600 19px/1.25 var(--head); text-wrap: pretty; }
.w h3 a:hover { color: var(--copper-text); }
.w .dek { font-size: 14.5px; margin-top: 4px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.w-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin-top: 8px; }
.w-meta .meta { margin-top: 0; }
.tag { font: 700 12px var(--ui); padding: 2px 9px; border-radius: 999px; white-space: nowrap; }
.tag-markets { background: var(--copper-tint); color: var(--copper-text); }
.tag:hover { filter: brightness(.95); text-decoration: underline; }
.wire-empty { padding: 28px 0; color: var(--ink-2); }
.wire-empty button, .more { font: 600 14px var(--ui); color: var(--copper-text); background: none; border: 0; padding: 0; cursor: pointer; text-decoration: underline; }
.more { display: block; width: 100%; margin-top: 20px; padding: 13px; border-radius: 999px; text-decoration: none; background: var(--card); box-shadow: inset 0 0 0 1px var(--rule); }
.more:hover { box-shadow: inset 0 0 0 1px var(--copper); }

/* --- rail boxes ---------------------------------------------------------- */
.box { background: var(--card); border-radius: var(--r); padding: 20px; box-shadow: var(--shadow); }
.box h2 { font-size: 22px; margin-bottom: 12px; }
.box > p { margin: 0 0 14px; color: var(--ink-2); font-size: 14.5px; }
.watch { padding-bottom: 12px; }
.watch-tv { min-height: 560px; }
.watch .tv-wait { color: var(--muted); }
.watch .tv-credit { color: var(--muted); }
.cos { list-style: none; margin: 0; padding: 0; }
.cos li { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding-block: 10px; border-top: 1px solid var(--rule); font-weight: 600; font-size: 14.5px; }
.cos li:first-child { border-top: 0; padding-top: 0; }
.cos a:hover { color: var(--copper-text); }

.conv { display: grid; grid-template-columns: 1fr auto 1fr; align-items: end; gap: 10px; }
.conv label { display: flex; flex-direction: column; gap: 6px; font-size: 12.5px; font-weight: 600; color: var(--muted); min-width: 0; }
.conv input { width: 100%; font: 700 20px var(--brand); font-stretch: 90%; font-variant-numeric: tabular-nums; padding: 10px 12px; border: 1px solid var(--rule); border-radius: 8px; background: var(--page); color: var(--ink); }
.conv input:focus { border-color: var(--copper); outline: none; box-shadow: 0 0 0 3px var(--copper-tint); }
.conv-eq { padding-bottom: 12px; font: 700 18px var(--brand); color: var(--muted); }

.element { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 4px 18px; align-items: start;
  background: linear-gradient(160deg, var(--verdigris-tint), var(--card) 60%); }
.el-tile { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; aspect-ratio: 1; border-radius: 10px; color: #fff;
  font: 800 34px/1 var(--brand); background: linear-gradient(140deg, #3a4d5f, #22313f 60%, #18232e); box-shadow: inset 0 1px 0 rgb(255 255 255 / .4); }
.el-tile small { position: absolute; top: 6px; left: 8px; font-size: 11px; }
.el-tile span { font: 600 10.5px var(--ui); margin-top: 4px; opacity: .9; }
.element dl { margin: 0; display: grid; grid-template-columns: auto 1fr; gap: 5px 12px; font-size: 13.5px; }
.element dt { color: var(--muted); }
.element dd { margin: 0; font-weight: 600; }
.el-where { grid-column: 1 / -1; margin: 14px 0 0; font-size: 13.5px; color: var(--ink-2); }

.signup { display: flex; gap: 8px; }
.signup input { flex: 1; min-width: 0; font: 15px var(--ui); padding: 10px 12px; border: 1px solid var(--rule); border-radius: 8px; background: var(--page); color: var(--ink); }
.signup button { font: 700 14px var(--ui); background: var(--copper); color: #fff; border: 0; border-radius: 8px; padding: 10px 16px; cursor: pointer; }
.signup button:hover { background: var(--copper-lo); }
.signup-msg { margin: 0 !important; font-weight: 600; color: var(--ink) !important; }

/* --- section and company pages ------------------------------------------- */
.sec-hero { background: var(--patina); color: var(--band-ink); padding-block: 34px 30px; position: relative; overflow: hidden; }
.sec-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: linear-gradient(90deg, var(--copper-hi), var(--copper-lo)); }
.sec-hero h1 { margin: 6px 0 6px; font: 800 clamp(36px, 5vw, 60px)/1 var(--brand); font-stretch: 72%; letter-spacing: -.01em; }
.crumb { margin: 0; font-size: 13px; color: var(--band-muted); }
.crumb a:hover { color: var(--band-ink); text-decoration: underline; }
.sec-standfirst { margin: 0; max-width: 62ch; color: var(--band-muted); font-size: 16px; }
.sec-markets + .desk { padding-top: 0; }

/* Company pages still use these. */
.sec { display: flex; flex-direction: column; gap: 18px; }
.sec-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding-top: 4px; }
.sec-head h2 { margin: 0; font: 800 26px/1.1 var(--brand); font-stretch: 75%; }
.sec-head span { font-size: 13px; color: var(--muted); }
.latest { list-style: none; margin: 0; padding: 0; }
.latest li { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 10px; padding-block: 12px; border-top: 1px solid var(--rule); font: 600 16px/1.3 var(--head); }
.latest li:first-child { border-top: 0; }
.latest time { font: 600 12px/1.7 var(--ui); color: var(--muted); }
.latest a:hover { color: var(--copper-text); }
.sp-tag { font: 700 11px var(--ui); color: var(--copper-text); border: 1px solid currentColor; padding: 1px 7px; border-radius: 999px; }
.disclose { margin: 12px 0 0; font-size: 12.5px; color: var(--muted); }

/* --- footer -------------------------------------------------------------- */
.foot { background: var(--patina); color: var(--band-muted); }
.foot-in { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px 40px; padding-block: 40px 32px; }
.foot .logo-word { font-size: 24px; color: var(--band-ink); }
.foot .logo-word b { color: #e0aa3e; }
.foot .logo-word i { color: var(--band-muted); }
.foot-brand p { margin: 10px 0 0; font-size: 14px; max-width: 56ch; }
.foot nav { display: flex; flex-wrap: wrap; gap: 8px 22px; font-weight: 600; font-size: 14.5px; color: var(--band-ink); align-items: flex-start; }
.foot nav a:hover { color: #e0aa3e; }
.legal { grid-column: 1 / -1; margin: 0; padding-top: 20px; border-top: 1px solid rgb(255 255 255 / .1); font-size: 12.5px; }

/* --- responsive ---------------------------------------------------------- */
@media (max-width: 1080px) {
  .desk-in { grid-template-columns: 300px minmax(0, 1fr); }
  .columns { grid-template-columns: minmax(0, 1fr) 300px; gap: 28px; }
}
@media (max-width: 900px) {
  .mast-in { flex-wrap: wrap; }
  .nav { order: 3; width: 100%; margin-left: -12px; }
  .theme-btn { margin-left: auto; }
  .desk-in { grid-template-columns: minmax(0, 1fr); gap: 18px; padding-block: 22px 26px; }
  .desk-chart { min-height: 360px; }
  .desk-chart .tradingview-widget-container { height: 340px; }
  .top { grid-template-columns: minmax(0, 1fr); gap: 28px; padding-top: 24px; }
  .columns { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
  body { font-size: 15px; }
  .masthead { position: static; }
  .logo-word { font-size: 24px; }
  .logo-mark { width: 34px; height: 34px; }
  .lead-img { aspect-ratio: 4 / 5; }
  .lead-over { padding: 80px 18px 18px; }
  .lead-over p { font-size: 14.5px; }
  .lead-text { padding: 20px; gap: 14px; }
  .lt-lg { width: 52px; height: 52px; }
  .w { grid-template-columns: 56px minmax(0, 1fr); gap: 12px; }
  .th { width: 56px; height: 56px; }
  .th-chip .lt { width: 40px; height: 40px; }
  .w h3 { font-size: 17px; }
  .find { max-width: none; flex-basis: 100%; }
  .foot-in { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .plate-face::after { animation: none; }
  .ph img { transition: none; }
}
.tk-band { background: rgb(224 170 62 / .18); color: #f0c464; font-size: 13px; padding: 3px 10px; }
.sec-hero .disclose { color: var(--band-muted); }
/* An iframe whose color-scheme differs from its parent's is painted opaque.
   TradingView's documents are light-scheme, so match them to keep the
   embeds transparent in dark mode. */
.tv iframe { color-scheme: light; }

/* --- article pages ------------------------------------------------------- */
.story-cols { padding-top: 28px; }
.story { min-width: 0; background: var(--card); border-radius: var(--r); box-shadow: var(--shadow); padding: clamp(20px, 4vw, 44px); }
.story-crumb { margin: 0 0 18px; font-size: 13.5px; color: var(--muted); }
.story-crumb a:hover { color: var(--copper-text); text-decoration: underline; }
.story-head, .story-quotes, .story-body, .story-source, .story-fig { max-width: 720px; }
.story-head { padding-bottom: 20px; }
.story-kicker { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 0 0 14px; }
.story-kind { font: 700 13px var(--ui); color: var(--verdigris); }
.story h1 { margin: 0 0 14px; font-family: var(--head); font-weight: 600; letter-spacing: -.012em; line-height: 1.12; text-wrap: balance; }
.story h1.h-short { font-size: clamp(30px, 3.6vw, 44px); }
.story h1.h-mid { font-size: clamp(27px, 3vw, 36px); }
.story h1.h-long { font-size: clamp(24px, 2.5vw, 30px); line-height: 1.18; }
.story-meta { display: flex; flex-wrap: wrap; gap: 4px 14px; margin: 0; font-size: 14px; color: var(--muted); }
.story-meta span::before { content: "via "; }
.story-quotes { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px; padding: 14px 0 18px; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.story-quotes .tv { min-height: 72px; border-radius: 8px; background: var(--page); padding: 4px 6px 0; }
.story-quotes .tv-wait { padding: 8px 6px; color: var(--muted); font-size: 12.5px; }
.story-quotes .tv-credit { display: none; } /* each quote carries TradingView's mark; the panel in the rail carries the credit line */
.story-stock .tv { min-height: 380px; }
.story-stock .tv-wait, .story-stock .tv-credit { color: var(--muted); }
.stock-note { margin: 10px 0 0; font-size: 12.5px; color: var(--muted); display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.story-fig { margin: 24px 0 0; border-radius: 10px; overflow: hidden; }
.story-fig img { display: block; width: 100%; height: auto; }
.story-body { padding-top: 24px; font: 400 18px/1.65 var(--head); color: var(--ink); overflow-wrap: anywhere; }
.story-body p { margin: 0 0 1.05em; }
.story-body h2, .story-body h3, .story-body h4 { margin: 1.6em 0 .5em; font: 800 22px/1.2 var(--brand); font-stretch: 80%; }
.story-body ul, .story-body ol { padding-left: 1.3em; margin: 0 0 1.05em; }
.story-body li { margin-bottom: .35em; }
.story-body a { color: var(--copper-text); text-decoration: underline; text-underline-offset: 2px; }
.story-body img { max-width: 100%; height: auto; border-radius: 6px; }
.story-body table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; margin: 0 0 1.2em; font: 14px/1.45 var(--ui); }
.story-body th, .story-body td { border: 1px solid var(--rule); padding: 6px 10px; text-align: left; vertical-align: top; }
.story-body th { background: var(--page); font-weight: 700; }
.story-body blockquote { margin: 0 0 1.05em; padding-left: 16px; border-left: 3px solid var(--copper); color: var(--ink-2); }
.story-source { margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--rule); font-size: 14px; color: var(--muted); }
.story-source p { margin: 0 0 6px; }
.story-source a { color: var(--copper-text); text-decoration: underline; }
.story-price .tv-wait, .story-price .tv-credit { color: var(--muted); }
.related { list-style: none; margin: 0; padding: 0; }
.related li { padding-block: 11px; border-top: 1px solid var(--rule); font: 600 15.5px/1.3 var(--head); }
.related li:first-child { border-top: 0; padding-top: 0; }
.related a:hover { color: var(--copper-text); }
.related time { display: block; margin-top: 4px; font: 500 12.5px var(--ui); color: var(--muted); }
.related-more { margin: 12px 0 0; font-size: 14px; font-weight: 600; }
.related-more a { color: var(--copper-text); }
@media (max-width: 600px) {
  .story-body { font-size: 17px; }
}

/* --- home: lead + two secondary stories, so the column matches "Just in" -- */
.top-main { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.seconds { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.top { align-items: start; }
.second { display: flex; gap: 14px; align-items: flex-start; padding: 18px; background: var(--card); border-radius: var(--r); box-shadow: var(--shadow); }
.second .lt { width: 40px; height: 40px; }
.second h3 { margin: 0; font: 600 18px/1.25 var(--head); text-wrap: pretty; }
.second h3 a:hover { color: var(--copper-text); }
@media (max-width: 600px) { .seconds { grid-template-columns: minmax(0, 1fr); } }

/* rail follows the reader down a long wire */
@media (min-width: 901px) { .columns > .rail { align-self: start; position: sticky; top: 84px; } }

/* --- copper basics strip --------------------------------------------------- */
.basics { padding-bottom: 56px; }
.basics > h2 { margin: 0 0 14px; font: 800 26px/1.1 var(--brand); font-stretch: 75%; }
.basics-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.basic { background: var(--card); border-radius: var(--r); padding: 20px; box-shadow: var(--shadow); min-width: 0; }
.basic h2 { margin: 0 0 12px; font: 800 22px/1.1 var(--brand); font-stretch: 75%; }
.basic > p { margin: 0 0 14px; color: var(--ink-2); font-size: 14.5px; }
.venues { margin: 0; display: grid; grid-template-columns: auto 1fr; gap: 10px 14px; font-size: 14px; }
.venues dt { font: 800 15px var(--brand); font-stretch: 85%; color: var(--copper-text); }
.venues dd { margin: 0; color: var(--ink-2); }
@media (max-width: 1000px) { .basics-grid { grid-template-columns: minmax(0, 1fr); } }

/* --- smaller quotes under the copper card --------------------------------- */
.plate-more { display: grid; gap: 8px; }
.plate-more .tv { min-height: 68px; border-radius: 10px; background: rgb(0 0 0 / .22); border: 1px solid rgb(255 255 255 / .06); padding: 2px 6px 0; }
.plate-more .tv-credit { display: none; }
.plate-more .tv-wait { padding: 8px; color: var(--band-muted); font-size: 12.5px; }

/* --- ranked tables: copper ETFs and copper stocks -------------------------- */
.sec-rank::after { background: linear-gradient(90deg, var(--copper-hi), var(--copper-lo)); }
.rank-page { padding-block: 24px 56px; }
.rank-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 18px; margin: 0 0 12px; }
.rank-bar p { margin: 0; }
.rank-live { display: inline-flex; align-items: center; gap: 8px; font: 600 13.5px/1.3 var(--ui); color: var(--ink); }
.rank-live .dot { width: 9px; height: 9px; border-radius: 50%; background: var(--verdigris); box-shadow: 0 0 0 0 rgb(61 122 88 / .5); animation: rank-pulse 2s infinite; }
.rank-live[data-off] .dot { background: var(--muted); animation: none; }
@keyframes rank-pulse { 0% { box-shadow: 0 0 0 0 rgb(61 122 88 / .45); } 70% { box-shadow: 0 0 0 7px rgb(61 122 88 / 0); } 100% { box-shadow: 0 0 0 0 rgb(61 122 88 / 0); } }
@media (prefers-reduced-motion: reduce) { .rank-live .dot { animation: none; } }
.rank-src { font-size: 12.5px; color: var(--muted); }

.rank-wrap { background: var(--card); border: 1px solid var(--rule); border-radius: var(--r); box-shadow: var(--shadow); overflow: hidden; }
table.rank { width: 100%; border-collapse: collapse; font-size: 15px; }
table.rank th, table.rank td { padding: 14px 16px; text-align: left; vertical-align: middle; border-bottom: 1px solid var(--rule); }
table.rank tbody tr:last-child > * { border-bottom: 0; }
table.rank thead th { background: var(--patina); color: var(--band-ink); font: 700 11.5px/1.2 var(--ui); letter-spacing: .07em; text-transform: uppercase; white-space: nowrap; padding-block: 13px; }
table.rank .num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
table.rank tbody tr { transition: background-color .15s; }
table.rank tbody tr:hover > * { background: color-mix(in srgb, var(--copper-tint) 60%, transparent); }

table.rank .sym { white-space: nowrap; width: 1%; }
table.rank .rk { display: inline-block; width: 26px; vertical-align: top; padding-top: 2px; color: var(--copper-text); font: 700 12px/1 var(--ui); }
table.rank .sym-in { display: inline-block; vertical-align: top; }
table.rank .sym b { display: block; font: 800 16px/1.15 var(--brand); font-stretch: 85%; letter-spacing: .01em; color: var(--ink); }
table.rank .sym small { display: block; margin-top: 3px; font: 600 10.5px/1 var(--ui); letter-spacing: .06em; color: var(--muted); }
table.rank .nm-m { display: none; }
table.rank .nm { font-weight: 600; line-height: 1.3; }
table.rank .nm small { display: block; margin-top: 3px; font-weight: 400; font-size: 12.5px; color: var(--muted); }

table.rank .px { font-weight: 700; font-size: 15.5px; }
table.rank .px small { margin-left: 5px; font: 600 10.5px/1 var(--ui); letter-spacing: .05em; color: var(--muted); }
table.rank .sz { color: var(--ink-2); font-weight: 600; }
table.rank .na { color: var(--muted); font-weight: 400; }

/* Daily and YTD moves as tinted chips: arrow, sign and colour together. */
.chg { display: inline-flex; align-items: center; gap: 5px; min-width: 86px; justify-content: flex-end; padding: 5px 9px; border-radius: 999px; font: 700 13.5px/1 var(--ui); font-variant-numeric: tabular-nums; }
.chg i { font-style: normal; font-size: 9px; }
.chg.up { color: #2c6b48; background: #dcefe3; }
.chg.down { color: #a8311f; background: #fbe3de; }
.chg.flat { color: var(--muted); background: var(--page); }
.chg.na { background: none; min-width: 0; }
:root[data-theme="dark"] .chg.up { color: #8fd6ae; background: #123322; }
:root[data-theme="dark"] .chg.down { color: #ff9a85; background: #3a1812; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .chg.up { color: #8fd6ae; background: #123322; }
  :root:not([data-theme="light"]) .chg.down { color: #ff9a85; background: #3a1812; }
}
/* A brief copper flash when a live update changes a price. */
table.rank td.flash { animation: rank-flash 1.2s ease-out; }
@keyframes rank-flash { from { background: var(--copper-tint); } to { background: transparent; } }

table.rank .short { display: none; }
.rank-notes { max-width: 78ch; margin-top: 22px; color: var(--ink-2); font-size: 14px; }
.rank-notes p { margin: 0 0 10px; }

/* Phones: the name moves under the ticker so five numeric-friendly columns fit. */
@media (max-width: 700px) {
  table.rank { font-size: 13.5px; }
  table.rank th, table.rank td { padding: 11px 6px; }
  table.rank th:first-child, table.rank td:first-child { padding-left: 12px; }
  table.rank th:last-child, table.rank td:last-child { padding-right: 12px; }
  table.rank thead th { font-size: 10.5px; letter-spacing: .04em; }
  table.rank .c-nm, table.rank .rk { display: none; }
  table.rank .sym { width: auto; white-space: normal; }
  table.rank .sym b { font-size: 14.5px; display: inline; }
  table.rank .sym small { display: inline; margin: 0 0 0 5px; font-size: 9.5px; }
  table.rank .nm-m { display: block; margin-top: 3px; max-width: 128px; font: 500 11.5px/1.25 var(--ui); color: var(--muted); }
  table.rank .px { font-size: 13.5px; }
  table.rank .px small { display: block; margin: 2px 0 0; font-size: 9.5px; }
  table.rank .long { display: none; }
  table.rank .short { display: inline; }
  .chg { min-width: 0; padding: 4px 6px; font-size: 12px; gap: 3px; }
  .chg i { display: none; }
}

/* --- the two streams on the home page --------------------------------------- */
.streams { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr) 300px; gap: 36px; padding-block: 28px 56px; align-items: start; }
.stream { min-width: 0; }
.stream-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding-bottom: 6px; border-bottom: 3px solid var(--ink); }
.stream-copper .stream-head { border-bottom-color: var(--copper); }
.stream-head h2 { margin: 0; font: 800 26px/1.1 var(--brand); font-stretch: 75%; letter-spacing: -.005em; }
.stream-head h2 a:hover { color: var(--copper-text); }
.stream-more, .stream-foot { font: 600 13.5px var(--ui); color: var(--copper-text); }
.stream-more:hover, .stream-foot:hover { text-decoration: underline; }
.stream-sub { margin: 8px 0 2px; font-size: 13.5px; color: var(--muted); }
.stream-foot { display: inline-block; margin-top: 14px; }
.stream .w { grid-template-columns: 56px minmax(0, 1fr); gap: 14px; padding: 14px 0; }
.stream .w .th { width: 56px; height: 56px; }
.stream .w h3 { font-size: 17.5px; }
.stream .w .dek { font-size: 14px; }

/* Copper News river: dense, Techmeme-style. */
.river { display: flex; flex-direction: column; }
.rv { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 10px; padding: 11px 0; border-bottom: 1px solid var(--rule); }
.rv-ic .lt { width: 22px; height: 22px; border-radius: 5px; font-size: 9px; box-shadow: inset 0 0 0 1px var(--rule); }
.rv-ic .lt img { padding: 2px; }
.rv h3 { margin: 0; font: 600 16px/1.3 var(--head); text-wrap: pretty; }
.rv h3 a:hover { color: var(--copper-text); }
.rv .dek { margin: 4px 0 0; font-size: 14px; color: var(--ink-2); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.rv-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 4px 0 0; font-size: 12.5px; color: var(--muted); }
.rv-src { font-weight: 700; color: var(--ink-2); }
.rv-src i { font-style: normal; color: var(--copper-text); }
.rv-src:hover { color: var(--copper-text); }
.rv .tk { font-size: 10.5px; }
.also { flex-basis: 100%; font-size: 12px; }
.also a { color: var(--ink-2); text-decoration: underline; text-decoration-color: var(--rule); text-underline-offset: 2px; }
.also a:hover { color: var(--copper-text); }

/* The full stream pages. */
.stream-page { padding-block: 24px 56px; max-width: 920px; }
.stream-page .wire-head { justify-content: space-between; }
.river-full .rv { grid-template-columns: 28px minmax(0, 1fr); gap: 12px; padding: 14px 0; }
.river-full .rv-ic .lt { width: 28px; height: 28px; }
.river-full .rv h3 { font-size: 18px; }
.stream-note { margin-top: 22px; font-size: 13px; color: var(--muted); max-width: 70ch; }
.sec-hero.sec-mining::after { background: linear-gradient(90deg, var(--copper-hi), var(--copper-lo)); }
.sec-hero.sec-company::after { background: linear-gradient(90deg, #9aa9b7, #3a4a59); }

@media (max-width: 1180px) {
  .streams { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .streams > .rail { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; }
}
@media (max-width: 860px) {
  .streams { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .streams .river .rv:nth-child(n+16) { display: none; } /* 15 on a phone; the rest are a tap away */
  .streams > .rail { grid-template-columns: minmax(0, 1fr); }
}

/* --- newsletter: CTA band, form states, sticky bar, cookie banner ------------ */
.cta-band { background: linear-gradient(90deg, #4f3706, #7f5708 55%, #93650b); color: #fff; } /* fixed in both themes: white text needs the dark ochre */
.cta-in { display: flex; align-items: center; justify-content: space-between; gap: 10px 24px; flex-wrap: wrap; padding-block: 12px; }
.cta-copy { margin: 0; font-size: 15px; line-height: 1.4; max-width: 640px; }
.cta-copy b { font-weight: 800; }
.signup { position: relative; }
.signup-compact { display: flex; flex-wrap: wrap; gap: 8px; align-items: flex-start; }
.signup-compact input { width: 260px; max-width: 100%; height: 40px; padding: 0 12px; border-radius: 8px; border: 1px solid rgb(255 255 255 / .5); background: #fff; color: #17212b; font: 500 15px var(--ui); }
.signup-compact button { height: 40px; padding: 0 16px; border-radius: 8px; border: 0; background: #17212b; color: #fff; font: 700 14.5px var(--ui); cursor: pointer; display: inline-flex; align-items: center; gap: 8px; }
.signup-compact button:hover { background: #000; }
.cta-band .signup-err, .cta-band .signup-msg { flex-basis: 100%; margin: 2px 0 0; color: #fff; font-weight: 600; font-size: 13.5px; }
.cta-band .signup-err { background: rgb(40 26 0 / .35); padding: 4px 8px; border-radius: 6px; }
.signup-err { margin: 8px 0 0; color: var(--down); font-size: 13.5px; font-weight: 600; }
.signup-msg { margin: 8px 0 0; color: var(--verdigris); font-size: 13.5px; font-weight: 600; }
.signup.has-error input { border-color: var(--down); box-shadow: 0 0 0 2px rgb(200 67 47 / .25); }
.signup button:disabled { opacity: .7; cursor: default; }
.btn-busy { display: none; width: 14px; height: 14px; border-radius: 50%; border: 2px solid currentColor; border-right-color: transparent; animation: spin .8s linear infinite; }
.signup.is-busy .btn-busy { display: inline-block; }
@keyframes spin { to { transform: rotate(360deg); } }

.sticky-cta { position: fixed; left: 0; right: 0; bottom: 0; z-index: 40; display: flex; align-items: center; gap: 10px; padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px)) 16px; background: var(--patina); color: var(--band-ink); box-shadow: 0 -6px 20px rgb(0 0 0 / .25); }
.sticky-cta[hidden] { display: none; }
.sticky-cta p { margin: 0; flex: 1; font-size: 14px; }
.sticky-cta p span { color: var(--band-muted); }
.sticky-btn { padding: 9px 16px; border-radius: 8px; background: var(--copper); color: #fff; font: 700 14px var(--ui); }
.sticky-x { width: 32px; height: 32px; border: 0; background: none; color: var(--band-muted); font-size: 22px; line-height: 1; cursor: pointer; }
body.has-sticky { padding-bottom: 64px; }

.consent { position: fixed; z-index: 50; left: 16px; right: 16px; bottom: 16px; max-width: 560px; margin-left: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; padding: 16px 18px; border-radius: 12px; background: var(--card); color: var(--ink); border: 1px solid var(--rule); box-shadow: 0 12px 40px -8px rgb(0 0 0 / .35); }
.consent[hidden] { display: none; }
.consent p { margin: 0; flex: 1 1 280px; font-size: 13.5px; line-height: 1.45; color: var(--ink-2); }
.consent a { color: var(--copper-text); text-decoration: underline; }
.consent-btns { display: flex; gap: 8px; }
.btn-solid, .btn-ghost { height: 38px; padding: 0 16px; border-radius: 8px; font: 700 14px var(--ui); cursor: pointer; }
.btn-solid { border: 0; background: var(--copper); color: #fff; }
.btn-ghost { border: 1px solid var(--rule); background: transparent; color: var(--ink); }
.foot-legal { display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 13px; }
.foot-legal a, .linkish { color: var(--band-muted); }
.foot-legal a:hover, .linkish:hover { color: var(--band-ink); text-decoration: underline; }
.linkish { background: none; border: 0; padding: 0; font: inherit; cursor: pointer; }

@media (max-width: 700px) {
  .cta-in { padding-block: 10px; }
  .cta-copy { font-size: 13.5px; }
  .signup-compact { width: 100%; }
  .signup-compact input { flex: 1; width: auto; min-width: 0; }
}

/* --- plain content pages: 404, thanks, privacy, terms, contact --------------- */
.doc { max-width: 760px; padding-block: 32px 64px; }
.doc h2 { margin: 32px 0 8px; font: 800 24px/1.15 var(--brand); font-stretch: 80%; }
.doc p, .doc li { font-size: 16px; line-height: 1.65; color: var(--ink-2); }
.doc a { color: var(--copper-text); text-decoration: underline; }
.doc .updated { color: var(--muted); font-size: 14px; }
.doc .placeholder { background: #fff3c4; color: #5c4300; padding: 0 4px; border-radius: 4px; }
.doc-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; padding: 0; list-style: none; }
.doc-links a { display: inline-block; padding: 9px 14px; border-radius: 8px; background: var(--card); border: 1px solid var(--rule); text-decoration: none; color: var(--ink); font-weight: 600; }
.doc-links a:hover { border-color: var(--copper); color: var(--copper-text); }

/* The section menu scrolls sideways on narrow screens; fade the right edge so
   it is obvious there is more. */
@media (max-width: 900px) {
  .nav { -webkit-mask-image: linear-gradient(90deg, #000 85%, transparent); mask-image: linear-gradient(90deg, #000 85%, transparent); padding-right: 24px; }
}
/* Keep the band's form a fixed width so an error message wraps under the
   field instead of pushing the whole form onto a new line. */
@media (min-width: 701px) {
  .cta-band .signup-compact { flex: 0 1 420px; justify-content: flex-end; }
  .cta-band .signup-compact input { flex: 1; width: auto; }
}

/* Article pages: links to the company's stock channel on CEO.CA. */
.ceo-chat { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin: 10px 0 0; font-size: 13px; color: var(--muted); }
.ceo-chat span { margin-right: 2px; }
.ceo-tk { display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 6px; border: 1px solid var(--rule); background: var(--card); color: var(--ink); font: 700 13px var(--ui); letter-spacing: .01em; box-shadow: 0 1px 2px rgb(0 0 0 / .05); }
.ceo-tk:hover { border-color: var(--copper); color: var(--copper-text); }

/* --- house ads: CEO.CA and CEO.CA Plus -------------------------------------- */
:root { --ceo-red: #c4161c; --ceo-ink: #111418; }
.ad { position: relative; }
.ad-label { display: block; margin-bottom: 8px; font: 600 10.5px/1 var(--ui); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.ceo-mark { font: 700 15px/1 "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace; letter-spacing: .06em; color: var(--ceo-ink); }
.ceo-mark i { font-style: normal; color: var(--ceo-red); }
.ad-plus, .ad-community { padding: 18px 18px 16px; border-radius: var(--r); background: #fff; border: 1px solid #e3e6ea; box-shadow: var(--shadow); color: var(--ceo-ink); }
.ad-plus { border-top: 4px solid var(--ceo-red); }
.ad-brand { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; }
.ad-plus-tag { padding: 3px 7px; border-radius: 4px; background: var(--ceo-red); color: #fff; font: 800 10.5px/1 var(--ui); letter-spacing: .1em; }
.ad-head { margin: 0 0 10px; font: 800 21px/1.15 "SFMono-Regular", Menlo, Consolas, monospace; letter-spacing: -.01em; color: var(--ceo-ink); text-transform: none; }
.ad-head b { color: var(--ceo-red); }
.ad-body { margin: 0 0 14px; font-size: 14px; line-height: 1.5; color: #3b4148; }
.ad-points { margin: 0 0 14px; padding: 0; list-style: none; }
.ad-points li { position: relative; padding: 0 0 7px 20px; font-size: 13.5px; line-height: 1.4; color: #3b4148; }
.ad-points li::before { content: "✓"; position: absolute; left: 0; top: 0; color: var(--ceo-red); font-weight: 800; }
.ad-btn { display: block; padding: 11px 14px; border-radius: 999px; background: var(--ceo-red); color: #fff; font: 800 14px/1 var(--ui); text-align: center; letter-spacing: .02em; }
.ad-btn:hover { background: #a50f14; }
.ad-fine { margin: 8px 0 0; font-size: 12px; color: #6b7280; text-align: center; }
.story .ad-community { margin: 28px 0 8px; max-width: 720px; }
.story .ad-community .ad-btn { display: inline-block; padding: 11px 20px; }

/* One-line version inside lists. */
.ad-inline { padding: 12px 0; border-bottom: 1px solid var(--rule); }
.ad-inline .ad-label { margin-bottom: 6px; }
.ad-inline-link { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 10px; background: #fff; border: 1px solid #e3e6ea; color: var(--ceo-ink); }
.ad-inline-link:hover { border-color: var(--ceo-red); }
.ad-inline-text { flex: 1; font-size: 13.5px; line-height: 1.4; color: #3b4148; }
.ad-inline-text b { color: var(--ceo-ink); }
.ad-inline-cta { flex: none; font: 800 13px var(--ui); color: var(--ceo-red); white-space: nowrap; }
.rank-page .ad-inline { margin-top: 18px; border-bottom: 0; }
@media (max-width: 520px) {
  .ad-inline-link { flex-wrap: wrap; gap: 6px 10px; }
  .ad-inline-text { flex-basis: 100%; order: 2; }
  .ad-inline-cta { order: 3; }
}

/* Owner's logo in the footer (EarthLabs, white version for the dark footer). */
.foot-owner { display: inline-flex; flex-direction: column; gap: 8px; margin-top: 22px; }
.foot-owner span { font-size: 11.5px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--band-muted); }
.foot-owner img { display: block; width: 200px; height: auto; opacity: .92; transition: opacity .15s; }
.foot-owner:hover img { opacity: 1; }

/* Honeypot field for bots; never visible. */
.signup .hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }

/* mining.com stories stand out in the Copper News lists. */
.rv.rv-mc { position: relative; margin: 4px 0; padding: 12px 12px 12px 14px; border: 1px solid #ead39d; border-left: 4px solid var(--copper); border-radius: 10px; background: linear-gradient(90deg, var(--copper-tint), color-mix(in srgb, var(--copper-tint) 35%, var(--card))); }
.rv.rv-mc + .rv:not(.rv-mc) { border-top: 0; }
.rv.rv-mc h3 { font-weight: 700; }
.rv.rv-mc .rv-src { color: var(--copper-text); }
.mc-badge { display: inline-block; margin-bottom: 4px; padding: 3px 7px 2px; border-radius: 4px; background: var(--copper); color: #fff; font: 800 10px/1 var(--ui); letter-spacing: .1em; }
:root[data-theme="dark"] .rv.rv-mc { border-color: #4d3a12; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .rv.rv-mc { border-color: #4d3a12; } }
.river-full .rv.rv-mc { padding: 14px 14px 14px 16px; }

/* CEO.CA logo: in the ads (always on white) and on article pages, where the
   page follows light/dark, so the pale-lettered version swaps in on dark. */
.ceo-logo { display: block; height: 18px; width: auto; }
.ad-inline .ceo-logo { height: 15px; flex: none; }
.ceo-chat-logo { display: inline-flex; align-items: center; margin-right: 4px; }
.ceo-chat-logo img { height: 14px; width: auto; }
.ceo-chat-logo .on-dark { display: none; }
:root[data-theme="dark"] .ceo-chat-logo .on-light { display: none; }
:root[data-theme="dark"] .ceo-chat-logo .on-dark { display: inline; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .ceo-chat-logo .on-light { display: none; }
  :root:not([data-theme="light"]) .ceo-chat-logo .on-dark { display: inline; }
}

/* --- Copper on X ------------------------------------------------------------ */
.xposts { padding-bottom: 48px; }
.xposts .stream-head { margin-bottom: 16px; }
.xposts-sub { font-size: 13.5px; color: var(--muted); }
.xp-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.xp { display: flex; flex-direction: column; gap: 10px; padding: 16px; border-radius: var(--r); background: var(--card); border: 1px solid var(--rule); box-shadow: var(--shadow); min-width: 0; }
.xp-head { display: flex; align-items: center; gap: 10px; min-width: 0; }
.xp-av img, .xp-mono { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; object-fit: cover; background: linear-gradient(140deg, var(--copper-hi), var(--copper-lo)); color: #fff; font: 700 13px var(--ui); }
.xp-who { display: flex; flex-direction: column; min-width: 0; flex: 1; line-height: 1.25; }
.xp-who b { font-size: 14.5px; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.xp-who span { font-size: 13px; color: var(--muted); }
.xp-who:hover b { text-decoration: underline; }
.xp-tick { display: none; }
.xp-x { flex: none; color: var(--ink); }
.x-logo { width: 18px; height: 18px; fill: currentColor; display: block; }
.xp-text { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--ink); overflow-wrap: anywhere; }
.xp-text a { color: var(--copper-text); }
.xp-text a:hover { text-decoration: underline; }
.xp-foot { margin-top: auto; font-size: 12.5px; color: var(--muted); }
.xp-foot a:hover { color: var(--copper-text); }
@media (max-width: 1000px) { .xp-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .xp-grid { grid-template-columns: minmax(0, 1fr); } .xp:nth-child(n+4) { display: none; } }

/* Compact CEO.CA Plus ad at the foot of "Just in". */
.featured .ad-plus-mini { margin-top: 16px; padding: 14px 16px; }
.ad-plus-mini .ad-brand { margin-bottom: 8px; }
.ad-mini-text { margin: 0 0 12px; font-size: 14px; line-height: 1.45; color: #3b4148; }
.ad-plus-mini .ad-btn { display: inline-block; padding: 10px 18px; }

/* --- Junior Mining Stocks: the drill core ----------------------------------
   The one ornament on the site. A split core (grey country rock, broken by
   fractures, with one ochre mineralised interval) runs along the top of the
   price plate and the logo, the way an assay sheet marks the interval that
   matters. */
:root { --core: repeating-linear-gradient(90deg,
  #7d8a95 0 22px, #6c7883 22px 23px, #8a96a0 23px 41px, #5d6872 41px 42px,
  #7d8a95 42px 58px, #e0aa3e 58px 78px, #c58f22 78px 79px, #e0aa3e 79px 92px,
  #5d6872 92px 93px, #8a96a0 93px 120px, #6c7883 120px 121px, #7d8a95 121px 150px); }
.plate-face { padding-top: 26px; }
.plate-face::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 9px; background: var(--core);
  box-shadow: inset 0 -1px 0 rgb(0 0 0 / .35), inset 0 1px 0 rgb(255 255 255 / .25); }
.plate-face::after { display: none; }
.el { border-color: rgb(224 170 62 / .7); color: #f0c464; font-size: 20px; letter-spacing: .02em; }
.el small { color: var(--band-muted); }
.desk-quotes { display: grid; grid-template-columns: minmax(0, 1fr); gap: 6px; } /* one per row: TradingView's quote needs ~300px to show a price whole */
.desk-quotes .tv { min-height: 0; border-radius: 6px; background: rgb(255 255 255 / .04); padding: 4px 6px 0; }
.desk-quotes .tv-credit { display: none; }
.logo-word b { color: var(--copper); }
.foot .logo-word b { color: #e0aa3e; }

/* Junior basics: the path from claim to mine, and the gram-metre sum. */
.stages { margin: 0; padding: 0; list-style: none; counter-reset: stage; display: grid; gap: 0; }
.stages li { counter-increment: stage; position: relative; display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 2px 10px; padding: 8px 0; border-top: 1px solid var(--rule); font-size: 13.5px; line-height: 1.4; }
.stages li:first-child { border-top: 0; }
.stages li::before { content: counter(stage); grid-row: span 2; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%;
  font: 800 14px var(--brand); color: var(--copper-text); background: var(--copper-tint); }
.stages b { font: 700 14px var(--ui); color: var(--ink); }
.stages span { color: var(--muted); }
.basic > .gm-out { margin: 14px 0 0; font: 800 30px/1 var(--brand); font-variant-numeric: tabular-nums; color: var(--copper-text); }
.gm-out small { font: 500 13px var(--ui); color: var(--muted); margin-left: 6px; }
.basic > .gm-note { margin: 10px 0 0; font-size: 12.5px; color: var(--muted); }

/* --- Release categories ------------------------------------------------------
   One quiet tag per release; drill results, the category readers come for,
   in chlorite green. The link row over a list scrolls sideways on a phone
   rather than wrapping into a wall of buttons. */
:root { --cat-bg: #e7ebee; --cat-ink: #3a4a59; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --cat-bg: #1f2a35; --cat-ink: #b9c4ce; } }
:root[data-theme="dark"] { --cat-bg: #1f2a35; --cat-ink: #b9c4ce; }
.tag-cat { background: var(--cat-bg); color: var(--cat-ink); }
.tag-cat-drill-results { background: var(--verdigris-tint); color: var(--verdigris); }
.cat-nav { display: flex; gap: 6px; margin: 2px 0 16px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: thin; }
.cat-nav a { flex: none; padding: 6px 12px; border-radius: 999px; border: 1px solid var(--rule); background: var(--card); color: var(--ink-2); font: 600 13.5px var(--ui); white-space: nowrap; }
.cat-nav a:hover { border-color: var(--copper); color: var(--ink); }
.cat-nav a[aria-current="page"] { background: var(--ink); border-color: var(--ink); color: var(--card); }
.cat-n { font-weight: 500; opacity: .7; font-variant-numeric: tabular-nums; }
.stream-company .cat-nav { margin: 0 0 12px; }
@media (min-width: 900px) { .stream-page .cat-nav { flex-wrap: wrap; overflow: visible; } }

.feature-cat h2 a:hover { color: var(--copper-text); }
.fc-list { list-style: none; margin: 0; padding: 0; }
.fc-list li { display: grid; gap: 5px; padding-block: 11px; border-top: 1px solid var(--rule); }
.fc-list li:first-child { border-top: 0; padding-top: 0; }
.fc-list a { font: 600 15px/1.3 var(--head); }
.fc-list a:hover { color: var(--copper-text); }
.fc-meta { display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--muted); }
.fc-more { display: inline-block; margin-top: 12px; font-size: 14px; font-weight: 600; color: var(--copper-text); }

/* --- The front page: one section per kind of release ------------------------
   Drill results lead, on the release's own figure, with the intercept set as
   the page's one display element (the number a drill release is judged by).
   Every other category is a section in a three-across grid, like a news
   site's front. Rules over section heads are ink; the lead's is ochre. */
.sect-bar { background: var(--card); border-bottom: 1px solid var(--rule); }
.sect-bar-in { display: flex; gap: 4px 22px; overflow-x: auto; padding-block: 9px; scrollbar-width: none; }
.sect-bar-in::-webkit-scrollbar { display: none; }
.sect-bar a { flex: none; font: 600 13.5px var(--ui); color: var(--ink-2); white-space: nowrap; }
.sect-bar a:hover, .sect-bar a[aria-current="page"] { color: var(--copper-text); }
.sect-bar a:first-child { color: var(--copper-text); }

.front { padding-block: 24px 8px; }
.front-top { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 36px; align-items: start; }
.sect-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding-top: 9px; margin-bottom: 14px; border-top: 3px solid var(--ink); }
.sect-head h2 { margin: 0; font: 800 26px/1.05 var(--brand); text-transform: uppercase; letter-spacing: .01em; }
.sect-head h2 a:hover { color: var(--copper-text); }
.lead-cat > .sect-head { border-top-color: var(--copper); }
.lead-cat > .sect-head h2 { font-size: 30px; }
.sect-more { font: 600 13.5px var(--ui); color: var(--copper-text); white-space: nowrap; }
.sect-more:hover { text-decoration: underline; }
.sect-n { font: 500 12.5px var(--ui); color: var(--muted); white-space: nowrap; }
.sect-sub { margin: -6px 0 12px; font-size: 13.5px; color: var(--muted); }

/* Figures. Release figures are maps, sections and core photos: cropped to
   the frame like news photos. Underneath each sits a drawn core tray (rows of
   split core in a slate box), which shows when a release has no figure. */
.fig { position: relative; display: block; overflow: hidden; border-radius: 4px; background: var(--patina); aspect-ratio: 16 / 10; max-width: 100%; }
.fig img { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; background: #fff; }
.tray { position: absolute; inset: 0; display: flex; align-items: flex-end; padding: 10px 12px;
  background: #18232e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 200' preserveAspectRatio='xMidYMid slice'%3E%3Crect width='320' height='200' fill='%2318232e'/%3E%3Cg fill='%233a4b5b'%3E%3Crect x='14' y='22' width='292' height='22' rx='11'/%3E%3Crect x='14' y='62' width='292' height='22' rx='11'/%3E%3Crect x='14' y='102' width='292' height='22' rx='11'/%3E%3Crect x='14' y='142' width='292' height='22' rx='11'/%3E%3C/g%3E%3Crect x='118' y='62' width='58' height='22' fill='%238c6a22'/%3E%3Cg stroke='%2318232e' stroke-width='2' fill='none'%3E%3Cpath d='M70 22l4 10-3 12M150 22l-3 22M230 22l5 9-2 13M44 62l3 22M118 62v22M176 62l-3 22M262 62l4 12-2 10M96 102l-3 22M188 102l4 11-3 11M250 102l-2 22M60 142l3 9-2 13M140 142l-3 22M214 142l4 22'/%3E%3C/g%3E%3C/svg%3E") center / cover no-repeat; }
.tray-tk { color: #e8edf1; font: 800 20px/1 var(--brand); letter-spacing: .04em; }
.fig-lead { aspect-ratio: 4 / 3; }
.fig-lead .tray-tk { font-size: 34px; }

.assay { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; margin: 0 0 6px; color: var(--copper-text); }
.assay b { font: 800 30px/.95 var(--brand); font-variant-numeric: tabular-nums; letter-spacing: -.005em; }
.assay span { font: 700 17px/1 var(--brand); letter-spacing: .02em; }
.assay-lg b { font-size: clamp(44px, 5vw, 64px); }
.assay-lg span { font-size: clamp(20px, 2vw, 26px); }

.lead-story { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.lead-copy { min-width: 0; padding-top: 4px; }
.lead-copy h1 { margin: 0 0 12px; font: 600 clamp(25px, 2.6vw, 36px)/1.13 var(--head); letter-spacing: -.01em; text-wrap: balance; }
.lead-copy h1 a:hover { color: var(--copper-text); }
.lead-copy .dek { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--ink-2); display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; }
.lead-more { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--rule); }
.card { min-width: 0; }
.card .fig { margin-bottom: 10px; }
.card h3, .sect-top h3 { margin: 0; font: 600 17px/1.25 var(--head); text-wrap: balance; }
.card h3 a:hover, .sect-top h3 a:hover, .sect-list a:hover, .ji-list a:hover, .notice-list a:hover { color: var(--copper-text); }
.fm { display: flex; flex-wrap: wrap; align-items: center; gap: 5px 8px; margin: 6px 0 0; font-size: 12.5px; color: var(--muted); }

.just-in { min-width: 0; }
.ji-list { margin: 0 0 12px; padding: 0; list-style: none; }
.ji-list li { display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 4px 10px; padding-block: 10px; border-top: 1px solid var(--rule); }
.ji-list li:first-child { border-top: 0; padding-top: 0; }
.ji-list time { grid-row: span 2; padding-top: 2px; font: 600 12px var(--ui); color: var(--muted); font-variant-numeric: tabular-nums; }
.ji-list a { font: 600 14.5px/1.3 var(--head); }
.ji-list .tag { justify-self: start; font-size: 11.5px; padding: 1px 8px; }
.just-in .ad-mini, .just-in > [class^="ad"] { margin-top: 16px; }

.sect-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 34px 32px; margin-top: 38px; }
.sect { min-width: 0; display: flex; flex-direction: column; }
.sect-top .fig { margin-bottom: 10px; }
.sect-top h3 { font-size: 19px; line-height: 1.22; }
.sect-list { margin: 12px 0 10px; padding: 0; list-style: none; }
.sect-list li { padding-block: 10px; border-top: 1px solid var(--rule); }
.sect-list a { font: 600 15px/1.3 var(--head); }
.sect-list .fm { margin-top: 4px; }
.sect > .sect-more { margin-top: auto; padding-top: 4px; }

.desk-compact { margin-top: 40px; }
.front-lower { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 36px; align-items: start; margin-top: 34px; }
.industry { min-width: 0; }
.river-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 28px; align-items: start; }
.notices { margin-top: 40px; }
.notice-list { margin: 0; padding: 0; list-style: none; columns: 3; column-gap: 32px; }
.notice-list li { break-inside: avoid; padding-block: 9px; border-top: 1px solid var(--rule); }
.notice-list a { font: 600 14.5px/1.3 var(--head); color: var(--ink-2); }
.front .basics { margin-top: 44px; }

@media (max-width: 1100px) {
  .front-top, .front-lower { grid-template-columns: minmax(0, 1fr); }
  .sect-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .notice-list { columns: 2; }
}
@media (max-width: 760px) {
  .lead-story { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .fig-lead { aspect-ratio: 16 / 10; }
  .lead-more { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .lead-more .card { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 0 12px; padding-block: 12px; border-top: 1px solid var(--rule); }
  .lead-more .card:first-child { border-top: 0; padding-top: 0; }
  .lead-more .card .fig { grid-row: span 3; margin: 0; aspect-ratio: 1; }
  .lead-more .card .tray-tk { font-size: 15px; padding: 3px 6px; }
  .lead-more .card .assay b { font-size: 22px; }
  .lead-more .card .assay span { font-size: 14px; }
  .lead-more .card h3 { font-size: 16px; }
  .sect-grid { grid-template-columns: minmax(0, 1fr); gap: 30px; }
  .river-2 { grid-template-columns: minmax(0, 1fr); }
  .notice-list { columns: 1; }
}

.card-kicker { margin: 0 0 6px; }

/* --- Most active on CEO.CA ---------------------------------------------------
   A ranked board: rank, ticker and company, posts an hour. Rows link out to
   the channel on CEO.CA. */
.front-side { display: grid; gap: 28px; min-width: 0; }
.most-active .sect-head { border-top-color: var(--verdigris); }
.ma-sub { margin: -6px 0 10px; font-size: 13px; color: var(--muted); }
.ma-list { margin: 0 0 10px; padding: 0; list-style: none; }
.ma-list li { display: grid; grid-template-columns: 26px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding-block: 8px; border-top: 1px solid var(--rule); position: relative; }
.ma-list li:first-child { border-top: 0; }
.ma-rank { font: 800 20px/1 var(--brand); color: var(--muted); font-variant-numeric: tabular-nums; text-align: right; }
.ma-list li:nth-child(-n+3) .ma-rank { color: var(--verdigris); }
.ma-co { display: grid; min-width: 0; }
.ma-co b { font: 800 17px/1.1 var(--brand); letter-spacing: .02em; color: var(--ink); }
.ma-co span { font-size: 13px; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ma-co:hover b { color: var(--copper-text); }
.ma-rate { display: grid; justify-items: end; line-height: 1; }
.ma-rate b { font: 800 19px/1 var(--brand); font-variant-numeric: tabular-nums; color: var(--ink); }
.ma-rate small { font-size: 11px; color: var(--muted); margin-top: 2px; }
.ma-full { max-width: 680px; }
.ma-full li { grid-template-columns: 36px minmax(0, 1fr) auto; padding-block: 12px; }
.ma-full .ma-co b { font-size: 20px; }
.ma-full .ma-co span { font-size: 14px; }
.ceo-busy { margin-left: 4px; font-size: 13px; color: var(--muted); }
