/* AAA AI 2.0 — black theme layer for content pages.
   Loaded after site.css + page-specific CSS so the whole site matches the
   web workspace and native apps: #0a0a0a screens, #141414 surfaces,
   #f5f5f7 type, white actions, hairline borders. */

/* ------------------------------------------------------------------ */
/* Base                                                                */
/* ------------------------------------------------------------------ */

html,
body,
.downloads-body,
.news-body,
.blog-body,
.docs-body,
.legal-body,
.pay-body,
.register-body,
.contact-body,
.pitch-body,
.meet-landing-body {
  background: var(--bg) !important;
  color: var(--text) !important;
}

.downloads-body p,
.news-body p,
.blog-body p,
.docs-body p,
.legal-body p,
.pay-body p,
.register-body p,
.contact-body p,
.pitch-body p { color: var(--text-2); }

h1, h2, h3, h4, h5, h6 { color: var(--text); }

::selection { background: var(--action); color: var(--on-action); }

.content-footer { border-top: 1px solid var(--line); }

/* ------------------------------------------------------------------ */
/* Downloads                                                           */
/* ------------------------------------------------------------------ */

.downloads-body { background: var(--bg) !important; }
.downloads-hero { background: var(--bg) !important; }
.downloads-hero h1 { color: var(--text); }
.downloads-hero__copy > p:not(.eyebrow) { color: var(--text-2); }
.downloads-device {
  background: var(--surface);
  border-color: var(--line);
  box-shadow: 0 30px 100px rgba(0, 0, 0, 0.55);
}
.downloads-device img { filter: saturate(0.9) contrast(1.02); }
.downloads-device figcaption { color: var(--text); }
.downloads-device figcaption span { color: var(--text-3); }
.download-options { background: var(--bg) !important; }
.download-grid { gap: 12px; }
.download-card {
  background: var(--surface);
  border-color: var(--line);
  color: var(--text);
}
.download-card--featured {
  background: var(--action);
  border-color: var(--action);
  color: var(--on-action);
}
.download-card--featured h3 { color: var(--on-action); }
.download-card--featured .download-card__top,
.download-card--featured .download-card__label,
.download-card--featured > div > p:last-child { color: rgba(10, 10, 10, 0.62); }
.download-card--featured .download-card__actions a { border-color: rgba(10, 10, 10, 0.16); color: var(--on-action); }
.download-card--dark { background: #050506; border-color: var(--line); color: var(--text); }
.download-card--dark .download-card__top,
.download-card--dark .download-card__label { color: var(--text-3); }
.download-card h3 { color: var(--text); }
.download-card > div > p:last-child { color: var(--text-2); }
.download-card__top,
.download-card__label { color: var(--text-3); }
.download-card__actions { border-color: var(--line); }
.download-card__actions a { border-color: var(--line); color: var(--text); }
.download-card--dark .download-card__actions { border-color: var(--line); }
.download-card--dark .download-card__actions a { border-color: var(--line); }
.download-card__actions a:hover { color: #fff; }
.cli-note { background: #050506 !important; color: var(--text); }
.cli-note__inner h2 { color: var(--text); }
.cli-note__inner > p:last-child { color: var(--text-2); }
.content-cta { background: #111113 !important; color: var(--text) !important; }
.content-cta h2 { color: var(--text); }
.content-cta p { color: var(--text-2); }

/* ------------------------------------------------------------------ */
/* News + blog                                                         */
/* ------------------------------------------------------------------ */

.news-hero,
.blog-hero { background: var(--bg) !important; border-color: var(--line) !important; }
.news-hero h1,
.blog-hero h1 { color: var(--text); }
.news-hero__inner > p:last-child,
.blog-hero__inner > p:last-child { color: var(--text-2) !important; }
.news-feed-section,
.blog-feed-section { background: var(--bg-soft) !important; }
.news-feed-heading,
.blog-feed-heading { border-color: var(--line); color: var(--text-3); }
.news-card,
.blog-card {
  background: var(--surface) !important;
  border-color: var(--line) !important;
  color: var(--text) !important;
}
.news-card:first-child { background: var(--surface-2) !important; }
.news-card__title,
.blog-card__title { color: var(--text) !important; }
.news-card__description,
.news-card__body,
.blog-card__description,
.blog-card__source,
.blog-card__body { color: var(--text-2) !important; }
.news-card:first-child .news-card__description,
.news-card:first-child .news-card__body { color: var(--text-2) !important; }
.news-card__date,
.blog-card__date,
.blog-card__source { color: var(--text-3) !important; }
.news-card__keywords,
.blog-card__keywords { color: var(--text-2) !important; }
.blog-card__keywords span {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: var(--line) !important;
  color: var(--text-2) !important;
}
.blog-card__figure,
.blog-card__image,
.news-card__image { background: #050506 !important; }
.blog-card__body { border-color: var(--line) !important; }
.blog-card__body a,
.blog-card__source a,
.blog-card__description a { color: var(--text) !important; text-decoration: underline; text-underline-offset: 3px; }
.blog-card__subhead { color: var(--text) !important; }
.blog-card__list { color: var(--text-2) !important; }
.news-feed__status,
.news-feed__empty,
.news-feed__error,
.blog-feed__status,
.blog-feed__empty,
.blog-feed__error { color: var(--text-3) !important; }
.news-feed__error,
.blog-feed__error { color: #dbdbdd !important; }

/* ------------------------------------------------------------------ */
/* Pay                                                                 */
/* ------------------------------------------------------------------ */

.pay-body { background: var(--bg) !important; color: var(--text) !important; }
.pay-page { background: var(--bg) !important; border-color: var(--line) !important; }
.pay-wrap h1,
.pay-card h2 { color: var(--text) !important; }
.pay-intro,
.pay-card .sbp-meta,
.pay-card .sbp-hint,
.pay-card .pay-note,
.pay-card .pay-other { color: var(--text-2) !important; }
.pay-card {
  background: var(--surface) !important;
  border-color: var(--line) !important;
}
.pay-card .paddle-sep { color: var(--text-3) !important; }
.pay-card .pay-other a,
.pay-card .sbp-hint a { color: var(--text) !important; text-decoration: underline; text-underline-offset: 3px; }
.sbp-email-row label { color: var(--text-3) !important; }
.sbp-email-row input,
.sbp-comment {
  background: #0d0d0f !important;
  border-color: var(--line) !important;
  color: var(--text) !important;
}
.sbp-comment { color: var(--text-2) !important; }
.sbp-email-row input:focus-visible { outline-color: var(--text-2) !important; }
#sbp-qr,
#crypto-qr { background: #fff !important; border-color: var(--line) !important; }
.pay-body .btn {
  background: var(--action) !important;
  border-color: var(--action) !important;
  color: var(--on-action) !important;
}
.pay-body .btn:hover { background: #ffffff !important; }
.pay-body .btn--secondary {
  background: transparent !important;
  border-color: var(--line-strong) !important;
  color: var(--text) !important;
}
.pay-body .btn--secondary:hover { background: var(--surface-2) !important; }
.pay-back a { color: var(--text-3) !important; }
.pay-back a:hover { color: var(--text) !important; }
.pay-dialog-overlay { background: rgba(0, 0, 0, 0.72) !important; }
.pay-dialog { background: var(--surface) !important; border-color: var(--line) !important; }
.pay-dialog__title { color: var(--text) !important; }
.pay-dialog__body { color: var(--text-2) !important; }
.pay-status-ok { color: var(--success) !important; }

/* ------------------------------------------------------------------ */
/* Legal + docs                                                       */
/* ------------------------------------------------------------------ */

.legal-body,
.docs-body { background: var(--bg) !important; color: var(--text) !important; }
.legal-wrap .eyebrow,
.docs-wrap .eyebrow { color: var(--text-3) !important; }
.legal-wrap h1,
.legal-wrap section > h2,
.docs-wrap h1,
.docs-wrap section > h2,
.docs-wrap h3,
.docs-wrap .doc-subhead { color: var(--text) !important; }
.legal-wrap h1 + p,
.legal-wrap h1 + p + p,
.legal-wrap p,
.legal-wrap li,
.docs-wrap h1 + p,
.docs-wrap p,
.docs-wrap li,
.docs-wrap ol li { color: var(--text-2) !important; }
.legal-wrap a,
.docs-wrap a { color: var(--text) !important; text-decoration: underline; text-underline-offset: 3px; }
.legal-wrap ul li::before,
.docs-wrap ul:not(.doc-toc ul) li::before { background: var(--text) !important; }
.legal-wrap section,
.docs-wrap section { border-color: var(--line) !important; }
.legal-wrap .legal-crosslink { color: var(--text-3) !important; border-color: var(--line); }
.docs-wrap .doc-toc {
  border-color: var(--line) !important;
  background: transparent !important;
}
.docs-wrap .doc-toc h2 { color: var(--text-3) !important; }
.docs-wrap .doc-toc li { border-color: var(--line) !important; }
.docs-wrap .doc-toc a { color: var(--text) !important; }
.docs-wrap .doc-toc a:hover { color: var(--text-2) !important; }
.docs-wrap code,
.docs-wrap .mono {
  background: var(--surface-2) !important;
  color: var(--text) !important;
}
.docs-wrap pre {
  background: #0d0d0f !important;
  border-color: var(--line) !important;
  color: var(--text) !important;
}
.docs-wrap pre code { background: transparent !important; }
.docs-wrap .doc-table-wrap {
  background: var(--surface) !important;
  border-color: var(--line) !important;
}
.docs-wrap table { border-color: var(--line) !important; }
.docs-wrap th,
.docs-wrap td { border-color: var(--line) !important; }
.docs-wrap th { color: var(--text) !important; }
.docs-wrap td { color: var(--text-2) !important; }
.docs-wrap .doc-figure {
  background: #0d0d0f !important;
  border-color: var(--line) !important;
}
.docs-wrap .doc-figure figcaption {
  color: var(--text-3) !important;
  border-color: var(--line) !important;
}
.docs-wrap .doc-callout {
  background: var(--surface) !important;
  border-left-color: var(--text) !important;
}
.docs-wrap .doc-callout p { color: var(--text-2) !important; }
.docs-wrap .doc-shot-grid .doc-figure { border-color: var(--line) !important; }

/* ------------------------------------------------------------------ */
/* Register                                                           */
/* ------------------------------------------------------------------ */

.register-body { background: var(--bg) !important; }
.register-hero { background: var(--bg) !important; }
.register-hero__lead,
.setup__heading > p:last-child,
.setup-step p,
.register-assurance__inner > p:not(.eyebrow),
.register-hero__note { color: var(--text-2) !important; }
.register-hero__note { color: var(--text-3) !important; }
.register-product {
  background: var(--surface) !important;
  border-color: var(--line) !important;
  box-shadow: 0 30px 100px rgba(0, 0, 0, 0.55) !important;
  color: var(--text) !important;
}
.register-product__bar { color: var(--text-3) !important; border-color: var(--line) !important; }
.register-product__status { color: var(--text-2) !important; }
.register-product__screen { background: #050506 !important; }
.register-product figcaption > div > span { color: var(--text-3) !important; }
.register-product__index { color: var(--text-3) !important; }
.setup { background: var(--bg) !important; }
.setup-steps { border-color: var(--line); }
.setup-step { border-color: var(--line); }
.setup-step__number { color: var(--text-3); }
.setup-step__mark { border-color: var(--line); color: var(--text); }
.deployment-choice { background: var(--bg-soft) !important; }
.deployment-option {
  background: var(--surface) !important;
  border: 1px solid var(--line);
}
.deployment-option > span:first-child,
.deployment-option__type { color: var(--text-3); }
.deployment-option > div > p:last-child { color: var(--text-2); }
.deployment-option--image { background: #050506 !important; color: var(--text); }
.deployment-option--image img { opacity: 0.8; }
.deployment-option__overlay { background: linear-gradient(180deg, rgba(5, 5, 6, 0.2), rgba(5, 5, 6, 0.92)); }
.deployment-option--image .deployment-option__type,
.deployment-option--image > div > p:last-child { color: rgba(245, 245, 247, 0.68); }
.register-assurance { background: #050506 !important; color: var(--text); }
.register-assurance__inner > p:not(.eyebrow) { color: var(--text-2) !important; }
.assurance-facts,
.assurance-facts span { border-color: var(--line) !important; }
.assurance-facts span { color: var(--text-2) !important; }
.register-cta { background: #111113 !important; color: var(--text) !important; }
.register-cta h2 { color: var(--text) !important; }
.register-cta p { color: var(--text-2) !important; }

/* ------------------------------------------------------------------ */
/* Contact                                                            */
/* ------------------------------------------------------------------ */

.contact-body { background: var(--bg) !important; }
.contact-layout { background: var(--bg); }
.contact-story { background: #050506; }
.contact-story::after { background: linear-gradient(180deg, rgba(5, 5, 6, 0.58), rgba(5, 5, 6, 0.24) 48%, rgba(5, 5, 6, 0.92)); }
.contact-story__image { filter: grayscale(0.25) brightness(0.86) contrast(1.05); }
.contact-story__lead { color: rgba(245, 245, 247, 0.78); }
.contact-details { border-color: var(--line); }
.contact-details > a { color: rgba(245, 245, 247, 0.82); }
.contact-details > a:hover { color: #fff; }
.contact-details p { color: rgba(245, 245, 247, 0.56); }
.contact-email { color: var(--text); }
.contact-privacy { color: var(--text-3); }
.contact-privacy a { color: var(--text); }
.contact-panel { background: var(--bg); }
.contact-panel h2 { color: var(--text); }
.contact-panel__lead { color: var(--text-2); }
.contact-field label { color: var(--text-2); }
.contact-field input,
.contact-field select,
.contact-field textarea {
  background: #0d0d0f !important;
  border-color: var(--line) !important;
  color: var(--text) !important;
}
.contact-field input::placeholder { color: var(--text-3) !important; }
.contact-field select {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23a1a1a6' stroke-width='1.5'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: 16px 16px !important;
  background-position: right 13px center !important;
  padding-right: 36px !important;
}
.contact-field input:focus,
.contact-field select:focus,
.contact-field textarea:focus {
  background: #101012 !important;
  outline-color: var(--text-2) !important;
}
.contact-field small { color: var(--text-3); }
.contact-submit small { color: var(--text-3); }
.contact-status {
  background: rgba(48, 209, 88, 0.10);
  border-color: rgba(48, 209, 88, 0.28);
  color: #a8f0bc;
}
.contact-status[data-state="error"] {
  background: rgba(186,186,188, 0.10);
  border-color: rgba(186,186,188, 0.32);
  color: #d1d1d6;
}
.contact-body a:focus-visible,
.contact-body button:focus-visible { outline-color: var(--text-2); }

/* ------------------------------------------------------------------ */
/* Pitch                                                              */
/* ------------------------------------------------------------------ */

.pitch-body { background: var(--bg) !important; }
.pitch-hero { background: #050506 !important; border-color: var(--line) !important; }
.pitch-hero__lead { color: var(--text-2); }
.pitch-badge { border-color: var(--line); color: var(--text-2); }
.pitch-hero__visual { background: var(--surface); border-color: var(--line); box-shadow: 0 30px 100px rgba(0, 0, 0, 0.55); }
.pitch-hero__visual img { filter: saturate(0.85) contrast(1.02); }
.pitch-subnav { background: rgba(10, 10, 10, 0.84) !important; border-color: var(--line) !important; }
.pitch-subnav a { color: var(--text-3); }
.pitch-subnav a:hover { color: var(--text); }
.pitch-section,
.pitch-section--paper { background: var(--bg) !important; border-color: var(--line) !important; }
.pitch-section--dark { background: #0d0d0e !important; color: var(--text); }
.pitch-section__heading > p:last-child { color: var(--text-2); }
.pitch-card,
.pitch-stat,
.pitch-table-wrap { background: var(--surface) !important; border-color: var(--line) !important; }
.pitch-card h3 { color: var(--text); }
.pitch-card p { color: var(--text-2); }
.pitch-card--dark { background: #050506 !important; border-color: var(--line) !important; color: var(--text); }
.pitch-card--featured { background: var(--action) !important; border-color: var(--action) !important; }
.pitch-card--featured h3,
.pitch-card--featured p { color: var(--on-action); }
.pitch-stat strong { color: var(--text); }
.pitch-stat span { color: var(--text-2); }
.pitch-table th { background: var(--surface-2) !important; color: var(--text); }
.pitch-table td { color: var(--text-2); }
.pitch-table th,
.pitch-table td { border-color: var(--line); }
.pitch-table .is-us { background: rgba(255, 255, 255, 0.04); color: var(--text); }
.pitch-table .is-yes { color: var(--text); }
.pitch-table .is-partial { color: var(--text-2); }
.pitch-table .is-no { color: #dbdbdd; }
.pitch-table-note,
.pitch-update time,
.pitch-update p,
.pitch-spec-table th,
.pitch-spec-table td,
.pitch-timeline p,
.pitch-timeline span { color: var(--text-3) !important; }
.pitch-update,
.pitch-timeline article,
.pitch-spec-table th,
.pitch-spec-table td { border-color: var(--line) !important; }
.pitch-update h3,
.pitch-timeline h3 { color: var(--text); }
.pitch-cta { background: #111113 !important; color: var(--text) !important; }
.pitch-cta h2 { color: var(--text) !important; }
.pitch-cta p { color: var(--text-2) !important; }

/* ------------------------------------------------------------------ */
/* Meet landing + FAQ                                                 */
/* ------------------------------------------------------------------ */

.meet-landing-body .meet { background: var(--bg) !important; }
.meet-faq { border-color: var(--line); }
.meet-faq details { border-color: var(--line); }
.meet-faq summary { color: var(--text); }
.meet-faq details p { color: var(--text-2); }
.meet-landing-body .content-cta { background: #111113 !important; }
.meet-landing-body .content-cta h2 { color: var(--text); }

/* ------------------------------------------------------------------ */
/* MCP page                                                           */
/* ------------------------------------------------------------------ */

.mcp-body { background: var(--bg) !important; color: var(--text) !important; }
.mcp-page { background: var(--bg) !important; color: var(--text) !important; padding: 170px 0 120px; }
.mcp-page .mcp-wrap { max-width: 1000px; }
.mcp-page .eyebrow { color: var(--text-3); }
.mcp-page h1 {
  max-width: 980px;
  margin: 0 0 28px;
  color: var(--text);
  font-size: clamp(52px, 6.4vw, 92px);
  font-weight: 300;
  line-height: .97;
  letter-spacing: -.055em;
}
.mcp-page .lead {
  max-width: 760px;
  margin: 0 0 20px;
  color: var(--text-2) !important;
  font-size: clamp(18px, 1.8vw, 22px);
  font-weight: 300;
  line-height: 1.45;
}
.mcp-page section { margin-top: 68px; padding-top: 34px; border-top: 1px solid var(--line); }
.mcp-page h2 {
  margin: 0 0 16px;
  color: var(--text);
  font-size: clamp(28px, 3vw, 42px);
  font-weight: 300;
  letter-spacing: -.035em;
}
.mcp-page h3 { color: var(--text); }
.mcp-page p,
.mcp-page li { color: var(--text-2) !important; font-size: 17px; line-height: 1.62; }
.mcp-page strong { color: var(--text); font-weight: 500; }
.mcp-page a { color: var(--text) !important; text-decoration: underline; text-underline-offset: 3px; }
.mcp-page ul { padding-left: 20px; }
.mcp-page code,
.mcp-page pre { background: var(--surface-2); color: var(--text); border-color: var(--line); }
.mcp-page .code-box {
  margin: 18px 0 30px;
  padding: 22px;
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #0d0d0f;
  color: var(--text-2);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 13px;
  line-height: 1.6;
  white-space: pre-wrap;
}
.mcp-page .mcp-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 42px; }
@media (max-width: 720px) {
  .mcp-page { padding: 120px 0 80px; }
  .mcp-page h1 { font-size: clamp(42px, 12vw, 58px); }
  .mcp-page section { margin-top: 48px; padding-top: 26px; }
}

/* ------------------------------------------------------------------ */
/* Inverted/white cards inside dark pages                             */
/* ------------------------------------------------------------------ */

.cta .pill--light,
.content-cta .pill--light,
.register-cta .pill--light,
.pitch-cta .pill--light { background: var(--action); color: var(--on-action); border-color: var(--action); }
.cta .pill--light:hover,
.content-cta .pill--light:hover,
.register-cta .pill--light:hover,
.pitch-cta .pill--light:hover { background: #ffffff; }

/* Primary actions on content heroes and forms */
.contact-submit .pill--dark,
.downloads-hero .pill--dark,
.register-hero .pill--dark,
.pitch-hero .pill--dark,
.news-hero .pill--dark,
.blog-hero .pill--dark {
  background: var(--action) !important;
  color: var(--on-action) !important;
  border-color: var(--action) !important;
}
.contact-submit .pill--dark:hover,
.downloads-hero .pill--dark:hover,
.register-hero .pill--dark:hover,
.pitch-hero .pill--dark:hover,
.news-hero .pill--dark:hover,
.blog-hero .pill--dark:hover { background: #fff !important; }

/* Keep the brand expansion out of display headings */
.downloads-hero h1 .brand-note,
.news-hero h1 .brand-note,
.blog-hero h1 .brand-note,
.register-hero h1 .brand-note,
.pitch-hero h1 .brand-note,
.legal-wrap h1 .brand-note,
.docs-wrap h1 .brand-note { display: none !important; }

.downloads-hero h1 { font-size: clamp(48px, 5.5vw, 80px); line-height: .98; }
.downloads-hero__copy { max-width: 720px; }

.downloads-device img { object-fit: contain; background: #050506; }

/* Darken legacy bright editorial art so it sits inside the black system. */
.news-card__image { filter: none !important; opacity: 1; }
.blog-card__image { filter: none !important; opacity: 1; }
.news-card--with-image .news-card__image,
.blog-card__image { background: #050506 !important; }

/* Blog cards: the branded art duplicates the headline at narrow widths.
   Use the dark editorial type as the visual instead. */
.blog-card {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-areas: "header" "desc" "source" "keywords" "body" !important;
}
.blog-card__figure { display: none !important; }

/* Docs screenshots are already dark but carry the old #f5f5f7 accent. Pull them
   into the monochrome system without inverting the UI. */
.docs-wrap .doc-figure img {
  filter: grayscale(1) contrast(1.03);
  opacity: 0.95;
}

/* Final CTA actions on register and pitch */
.register-cta .pill--dark { background: var(--action) !important; color: var(--on-action) !important; border-color: var(--action) !important; }
.pitch-cta .pill--dark:first-child { background: var(--action) !important; color: var(--on-action) !important; border-color: var(--action) !important; }
.pitch-cta .pill--dark:not(:first-child) { background: transparent !important; color: var(--text) !important; border-color: var(--line-strong) !important; }
.pitch-cta .pill--dark:not(:first-child):hover { background: var(--surface-2) !important; }

.download-card h3 .brand-note { display: none !important; }

.download-card.download-card--featured h3 { color: var(--on-action) !important; }

@media (max-width: 720px) {
  .mcp-page .mcp-actions { flex-direction: column; align-items: stretch; }
  .mcp-page .mcp-actions .pill { width: 100%; white-space: normal; text-align: center; }
}
.pay-body code, .pay-card code, .pay-card a { overflow-wrap: anywhere; word-break: break-word; }
