/**
 * Bitnnock text weight + container depth pass.
 *
 * Moderated to match a clean reference fintech site
 * (worldlibertyfinancial.com): bold headings, regular-weight body
 * copy, no heading text-shadow, and no shadow "lift" on badges/cards
 * (cards get their depth from --bn-elev-* in custom.css, already
 * flattened to a hairline border with no shadow at rest). An earlier
 * pass pushed every weight up a full step and added shadows/glows
 * everywhere to fight the (much brighter, pre-tone-down) animated
 * background - with that background now faint, this reverts to
 * ordinary weights so copy doesn't read as artificially heavy.
 *
 * Deliberately does NOT touch `background` or `color` on the broad
 * class-fragment selectors below — badges/chips reuse the same classes
 * for semantic status colors (buy/sell, success/danger/pending), and
 * overriding those hues here would blur that meaning. Only weight
 * and (where a border already exists) border strength change.
 *
 * Loads last (after bn-ambient-background.css) so these !important
 * rules reliably win over the many !important declarations already in
 * plasma-home.css / plasma-app.css / custom.css.
 *
 * Ordering rule within this file: broad class-fragment catch-alls
 * come first as a baseline; named component overrides that need to
 * win over those catch-alls (e.g. a "*__label" chip that should read
 * as a badge, not a form label) are placed afterwards, since two
 * `!important` rules of equal specificity resolve by source order.
 */

/* ---------------------------------------------------------------- *
 * 1. Base copy — ordinary weight, not stepped up
 * ---------------------------------------------------------------- */
body,
.pw-home,
.pw-app,
.p2p-dash,
.wlf-auth,
.bn-page {
  font-weight: 400;
}

p,
li,
.paragraph-3,
.pw-hero-sub__lead,
[class*="-lead"],
[class*="__lead"],
[class*="-desc"],
[class*="__desc"],
[class*="-subtitle"],
[class*="__subtitle"] {
  font-weight: 400 !important;
}

/* ---------------------------------------------------------------- *
 * 2. Headings — bold, no contrast shadow
 * ---------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6,
.heading, .heading-2, .heading-4, .heading-5, .heading-6, .heading-7,
.heading-8, .heading-9, .heading-9-copy, .heading-10, .heading-11,
.heading-12, .heading-13, .heading-14, .heading-16,
.heading-17, .heading-18, .heading-19, .heading-20,
.section-title,
[class*="-title"],
[class*="__title"] {
  font-weight: 700 !important;
  text-shadow: none;
}

/* ---------------------------------------------------------------- *
 * 3. Buttons / CTAs — bold label, no added shadow
 * ---------------------------------------------------------------- */
button,
.btn,
.btn--base,
[class*="-btn"],
[class*="__btn"],
[class*="-cta"],
[class*="__cta"] {
  font-weight: 600 !important;
}

/* ---------------------------------------------------------------- *
 * 4. Badges / chips / pills — bold text, no shadow
 * (background/color untouched — these carry status meaning) *
 * ---------------------------------------------------------------- */
.badge,
[class*="-badge"],
[class*="__badge"],
[class*="-chip"],
[class*="__chip"],
[class*="-pill"],
[class*="__pill"],
[class*="-tag"],
[class*="__tag"] {
  font-weight: 600 !important;
}

/* ---------------------------------------------------------------- *
 * 5. Navigation — medium-weight link labels
 * ---------------------------------------------------------------- */
.pw-plasma-shell .wlf-nav__link,
.pw-plasma-drawer__link,
.wlf-nav__link,
[class*="-nav__link"],
[class*="__nav-link"] {
  font-weight: 600 !important;
}

/* ---------------------------------------------------------------- *
 * 6. Form labels — medium weight so field names stand out from inputs
 * ---------------------------------------------------------------- */
label,
.form-label,
[class*="-label"],
[class*="__label"] {
  font-weight: 500 !important;
}

/* ---------------------------------------------------------------- *
 * 7. Named component overrides — placed after the catch-alls above
 * so they always win, even when a class name happens to also match
 * one of the broad fragment selectors (e.g. "*__label" chips here
 * are hero chip text, not a form field label).
 * ---------------------------------------------------------------- */
.pw-hero-badge__text {
  font-weight: 600 !important;
}

.pw-hero-ledger-tag__status {
  font-weight: 700 !important;
}

.pw-hero-ledger-tag__text {
  font-weight: 600 !important;
}

.pw-hero-cta--primary {
  font-weight: 600 !important;
}

.pw-hero-cta--ghost {
  font-weight: 600 !important;
  border-color: rgba(255, 255, 255, 0.4) !important;
  background: rgba(19, 16, 13, 0.62) !important;
}



/* Marked up as h2/h3/h4 for document outline, but visually a
   secondary support line under a heading — treat as body copy
   weight, not the 700 display weight the h1-h6 rule above sets. */
.wlfi-subheading,
.wlfi-subheading--left {
  font-weight: 500 !important;
  text-shadow: none;
}

/* ---------------------------------------------------------------- *
 * 8. Exclusions — icon glyphs should not be forced through this
 * pass. Unlike text fonts, Line Awesome / Font Awesome use
 * font-weight to select which glyph table to read from (Solid vs
 * Regular vs Brands all live in the same font-family name), so
 * `font-weight: inherit` is NOT a harmless no-op here — inheriting
 * 400 from a `.p2p-dash`/`.wlf-auth`/`.bn-page` ancestor (see
 * section 1 above) silently breaks every `.las`/`.fas` (Solid)
 * glyph sitewide, rendering an empty box instead of an icon. Each
 * style keyword gets its own required weight instead. Glyphs never
 * need a text/box shadow of their own either way.
 * ---------------------------------------------------------------- */
.las, .fas {
  font-weight: 900 !important;
}
.lar, .lab, .far, .fab {
  font-weight: 400 !important;
}
i[class*="la-"],
i[class*="fa-"],
.las, .lab, .lar, .fas, .far, .fab {
  text-shadow: none !important;
  box-shadow: none !important;
}

/* ---------------------------------------------------------------- *
 * 9. Referral pages - undo an inherited word-break leak. ".wlfi-ref"
 * is a small utility elsewhere (an inline monospace style for short
 * reference codes/IDs like "#E9KHG8QC2S", where forcing a break
 * anywhere is fine since there are no real word boundaries to prefer)
 * but the referral pages also reuse the same class name as their root
 * page-wrapper scope ("wlfi-ref wlfi-ref--commissions"/"--users" on
 * <div id="main">, "wlfi-ref" here short for "referral", an unrelated
 * coincidence). word-break is inherited, so every plain sentence on
 * those two pages that doesn't set its own word-break silently
 * inherits break-all from the page root - invisible until a line
 * happens to wrap right at a word boundary, at which point the browser
 * slices straight through the word instead of wrapping it whole (seen
 * on the commissions empty-state copy: "...complete eligibl" /
 * "e trades."). Reset scoped to the two exact wrapper/modifier
 * combinations so the original inline reference-code style keeps its
 * break-all elsewhere.
 * ---------------------------------------------------------------- */
.wlfi-ref.wlfi-ref--commissions,
.wlfi-ref.wlfi-ref--users {
  word-break: normal !important;
  overflow-wrap: break-word !important;
}
