/* Form Bastion identity: the stronghold behind your forms.
   Charcoal surfaces and brass details frame the four-bastion identity. Shared structure lives in style.css. */
@font-face {
  font-family: Manrope;
  src: url('../fonts/Manrope.woff2') format('woff2');
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
}
@font-face {
  font-family: 'Bastion Mono';
  src: url('../fonts/BastionMono.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
:root {
  color-scheme: dark;
  --paper: #0d1012;
  --surface: #14191c;
  --surface-soft: #1c2226;
  --ink: #f2f0e9;
  --ink-deep: #090c0e;
  --muted: #abb0b3;
  --line: #30383c;
  --accent: #d7b77c;
  --accent-hover: #ead09e;
  --accent-soft: #2b271f;
  --accent-ink: #17150f;
  --red: #f0aaa0;
  --amber: #e6c181;
  --blue: #a4c4dc;
  --radius: 10px;
  --shadow: 0 12px 34px #00000020;
  --body: Manrope, 'Segoe UI', sans-serif;
  --display: Manrope, 'Segoe UI', sans-serif;
  --mono: 'Bastion Mono', Consolas, monospace;
}
body { font-family: var(--body); font-size: 15px; color: var(--ink); }
::selection { background: var(--surface-soft); color: var(--accent); }
h1, h2, h3, h4 { text-wrap: balance; }
p { text-wrap: pretty; }
a, button, input, select, textarea { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--line); outline-offset: 4px; }
.container, .public-header-inner { width: min(1280px, calc(100% - 96px)); }
.brand { gap: 13px; font: 750 23px/1 var(--body); letter-spacing: -1px; }
.brand img { width: 42px; height: 42px; object-fit: contain; }
.brand-weight { font-weight: 750; }
.button, button[type=submit] {
  min-height: 46px; padding: 12px 19px; gap: 12px;
  border-radius: 7px; font-size: 13px; font-weight: 650; letter-spacing: -.15px;
  box-shadow: none; transition: background .18s, border-color .18s, box-shadow .18s, transform .18s;
}
.button-primary { background: var(--accent); border-color: var(--accent); color: var(--ink); }
.button-primary:hover { background: var(--accent-hover); border-color: var(--accent-hover); box-shadow: 0 4px 12px #00000020; }
.button-large { padding: 15px 23px; min-height: 54px; font-size: 14px; }
.button-small, button.button-small[type=submit] { min-height: 40px; font-size: 12px; padding: 9px 15px; }
.button-secondary { background: var(--surface); color: var(--ink); border-color: var(--line); }
.button-secondary:hover { background: var(--surface); border-color: var(--line); }
.button .icon, .text-link .icon, .section-link .icon { width: 17px; height: 17px; }
.text-link, .section-link { font-size: 13px; font-weight: 650; color: var(--ink); }
.section-link:hover, .text-link:hover { color: var(--accent); }
.eyebrow { color: var(--muted); font: 400 10px/1.7 var(--mono); letter-spacing: 1.6px; text-transform: uppercase; }
.eyebrow::before { display: none; }
.eyebrow-line { display: inline-block; width: 24px; height: 2px; background: var(--accent); vertical-align: middle; margin-right: 10px; }
.lede { color: var(--muted); font-size: 17px; line-height: 1.85; }

/* Public shell */
.public-header { height: 88px; border-bottom: 1px solid var(--line); background: #000000f7; }
.public-header-inner { gap: 30px; }
.public-nav { gap: 29px; }
.public-nav>a { font-size: 12px; font-weight: 600; color: var(--muted); }
.public-nav>a.active { color: var(--accent); }
.public-nav>a.button { color: var(--ink); font-size: 12px; }
.public-nav .nav-divider { background: var(--line); }
.public-footer { background: var(--ink-deep); border: 0; color: var(--ink); }
.footer-top { padding-top: 62px; padding-bottom: 64px; gap: 60px; }
.footer-brand .brand { color: var(--ink); font-size: 25px; }
.footer-brand .brand img { width: 34px; height: 40px;  }
.footer-brand p { font: 500 18px/1.55 var(--body); color: var(--muted); letter-spacing: -.3px; margin-top: 23px; }
.footer-top h2 { color: var(--muted); font: 400 10px/1.6 var(--mono); letter-spacing: 1.5px; margin-bottom: 21px; }
.footer-top>div>a:not(.brand) { color: var(--ink); font-size: 12px; margin-top: 13px; }
.footer-top>div>a:not(.brand):hover { color: var(--ink); }
.footer-bottom { border-color: var(--line); color: var(--muted); font: 400 10px/1.8 var(--mono); padding-block: 23px; }

/* Home: the complete path of one submission */
.masthead { display: grid; grid-template-columns: 1.05fr 1fr; align-items: center; gap: 38px; padding-block: 72px 76px; }
.masthead-copy { padding-bottom: 8px; min-width: 0; }
.masthead h1 { font: 700 clamp(47px, 4.35vw, 67px)/1.1 var(--display); letter-spacing: -3.3px; margin: 25px 0 26px; }
.masthead h1 span { color: var(--accent); }
.masthead .lede { max-width: 475px; font-size: 16px; line-height: 1.9; }
.masthead .hero-actions { gap: 23px; margin-top: 32px; flex-wrap: wrap; }
.hero-note { font-size: 11px; color: var(--muted); margin-top: 21px; gap: 8px; }
.hero-note .icon { width: 14px; height: 14px; color: var(--muted); }
.masthead-copy>* { animation: enter .65s ease-out both; }
.masthead-copy h1 { animation-delay: .07s; }
.masthead-copy .lede { animation-delay: .14s; }
.masthead-copy .hero-actions { animation-delay: .21s; }
.masthead-copy .hero-note { animation-delay: .25s; }
@keyframes enter { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
.compatibility-band { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding-block: 28px; border-block: 1px solid var(--line); }
.compatibility-band p { color: var(--muted); font-size: 11px; line-height: 1.65; }
.compatibility-band strong { color: var(--ink); font-weight: 600; }
.compatibility-band>span { display: flex; gap: 10px; align-items: center; font-size: 12px; font-weight: 600; color: var(--muted); }
.compatibility-band .icon { width: 18px; height: 18px; color: var(--muted); }
.compatibility-band>a { display: flex; align-items: center; gap: 11px; text-decoration: none; font-size: 10px; color: var(--muted); }
.product-section { padding-block: 96px 88px; }
.section-heading { margin-bottom: 44px; align-items: flex-end; gap: 50px; }
.section-heading h2, .integration-copy h2, .assurance-section h2, .closing-cta h2, .pricing-questions h2 { font: 650 clamp(33px, 3.1vw, 45px)/1.2 var(--display); letter-spacing: -1.8px; }
.section-heading .eyebrow { margin-bottom: 17px; }
.section-heading>p { color: var(--muted); font-size: 14px; line-height: 1.9; max-width: 345px; }
.capability-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-block: 1px solid var(--line); }
.capability-grid article { padding: 33px 34px 35px; border-left: 1px solid var(--line); }
.capability-grid article:first-child { padding-left: 0; border-left: 0; }
.capability-grid article:last-child { padding-right: 0; }
.capability-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 34px; }
.capability-top>span { color: var(--muted); font: 9px/1.5 var(--mono); letter-spacing: .6px; }
.capability-top .icon { color: var(--accent); width: 24px; height: 24px; }
.capability-grid h3 { font-size: 23px; letter-spacing: -.8px; font-weight: 650; line-height: 1.45; }
.capability-grid p { color: var(--muted); font-size: 13px; line-height: 1.9; margin-top: 18px; }
.capability-grid .section-link { font-size: 12px; margin-top: 29px; }
.integration-section { display: grid; grid-template-columns: 1fr 1.05fr; align-items: center; gap: 80px; padding-block: 7px 90px; }
.integration-copy .eyebrow { margin-bottom: 18px; }
.integration-copy>p:not(.eyebrow) { font-size: 14px; line-height: 1.9; color: var(--muted); max-width: 420px; margin-top: 23px; }
.integration-copy .check-list { margin-block: 25px 28px; }
.check-list li { font-size: 12px; line-height: 1.9; }
.check-list .icon { color: var(--accent); }
.integration-code { background: var(--surface); color: var(--ink); border: 1px solid var(--line); border-radius: 10px; overflow: hidden; box-shadow: 0 16px 35px -20px #00000050; min-width: 0; }
.integration-code .code-header { border-bottom: 1px solid var(--line); color: var(--muted); background: var(--surface); padding: 16px 25px; font: 10px/1.5 var(--mono); }
.integration-code .code-header>span:first-child { display: flex; align-items: center; gap: 10px; }
.file-dot { display: inline-block; width: 6px; height: 6px; background: var(--surface-soft); border-radius: 50%; }
.integration-code pre { padding: 27px; margin: 0; font: 11px/1.95 var(--mono); overflow-x: auto; }
.code-comment { color: var(--muted); }.code-tag { color: var(--ink); }.code-string { color: var(--muted); }
.integration-code-footer { display: flex; align-items: center; gap: 8px; color: var(--muted); border-top: 1px solid var(--line); padding: 15px 25px; font-size: 9px; }
.integration-code-footer .icon { width: 12px; height: 12px; color: var(--muted); }
.integration-code-footer>span { margin-left: auto; color: var(--muted); }
.assurance-section { display: grid; grid-template-columns: 1fr 1.15fr; gap: 90px; padding-block: 65px; border-block: 1px solid var(--line); }
.assurance-section .eyebrow { margin-bottom: 20px; }
.assurance-section .section-link { margin-top: 29px; font-size: 12px; }
.assurance-list article { display: flex; gap: 26px; padding: 26px 0; border-bottom: 1px solid var(--line); }
.assurance-list article:first-child { padding-top: 0; }.assurance-list article:last-child { padding-bottom: 0; border: 0; }
.assurance-list article>span { color: var(--muted); font: 10px/2 var(--mono); }
.assurance-list h3 { font-size: 17px; font-weight: 650; letter-spacing: -.4px; }
.assurance-list p { font-size: 13px; line-height: 1.9; color: var(--muted); margin-top: 10px; }
.closing-cta { display: flex; align-items: center; justify-content: space-between; gap: 60px; padding-block: 85px 90px; }
.closing-cta .eyebrow { margin-bottom: 18px; }
.closing-cta>div:last-child { min-width: 300px; }
.closing-cta p:not(.eyebrow) { color: var(--muted); font-size: 14px; line-height: 1.9; margin-bottom: 23px; }

/* Pricing, documentation, trust pages and release notes */
.page-intro { padding-block: 58px 48px; max-width: 840px; }
.page-intro h1 { font: 650 clamp(39px, 4.3vw, 60px)/1.15 var(--display); letter-spacing: -2.5px; }
.page-intro .eyebrow { margin-bottom: 19px; }.page-intro .lede { font-size: 16px; margin-top: 22px; max-width: 690px; }
.pricing-page .page-intro { text-align: center; margin-inline: auto; max-width: 760px; padding-block: 66px 54px; }
.pricing-page .page-intro .lede { max-width: 560px; margin-inline: auto; }
.pricing-page .page-intro h1 { max-width: 700px; }
.free-plan-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; max-width: 1010px; margin-inline: auto; align-items: center; }
.free-plan-card { background: var(--surface); color: var(--ink); padding: 36px; border: 1px solid var(--line); border-radius: 13px; box-shadow: 0 16px 38px -26px #00000060; }
.plan-heading { display: flex; align-items: center; justify-content: space-between; color: var(--muted); font: 10px/1.6 var(--mono); letter-spacing: 1.3px; }
.plan-heading img {  width: 27px; height: 32px; }
.free-price { display: flex; align-items: baseline; gap: 13px; font: 600 88px/1.2 var(--display); letter-spacing: -5px; margin-top: 20px; }
.free-price>span { font: 400 13px/1.6 var(--body); color: var(--muted); letter-spacing: 0; }
.free-plan-card>p:not(.plan-note) { color: var(--ink); font-size: 13px; line-height: 1.9; margin-top: 11px; }
.free-plan-card>.button { width: 100%; margin-top: 29px; background: var(--surface); border-color: var(--line); color: var(--accent); font-size: 13px; }
.free-plan-card>.button:hover { background: var(--surface); border-color: var(--line); }
.free-plan-card .plan-note { color: var(--muted); font-size: 10px; text-align: center; margin: 12px 0 24px; }
.plan-allowances { display: grid; grid-template-columns: 1fr 1fr; gap: 21px; padding-top: 25px; border-top: 1px solid var(--line); }
.plan-allowances strong { display: block; color: var(--ink); font-size: 20px; letter-spacing: -.5px; font-weight: 600; }
.plan-allowances span { display: block; color: var(--muted); font-size: 10px; margin-top: 5px; }
.included-features>.eyebrow { margin-bottom: 14px; }.included-features>h2 { font: 650 31px/1.25 var(--display); letter-spacing: -1.2px; margin-bottom: 27px; }
.included-features>article { display: flex; align-items: flex-start; gap: 16px; margin-top: 22px; }
.included-features>article>.icon { color: var(--muted); width: 20px; height: 20px; margin-top: 3px; flex: 0 0 20px; }
.included-features h3 { font-size: 14px; font-weight: 650; }.included-features article p { color: var(--muted); font-size: 12px; line-height: 1.8; margin-top: 5px; }
.capacity-note { margin-top: 27px; padding-top: 23px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; line-height: 2; }
.capacity-note a { display: flex; align-items: center; gap: 9px; color: var(--ink); font-size: 12px; font-weight: 650; text-decoration: none; }.capacity-note .icon { width: 15px; height: 15px; }
.pricing-questions { display: grid; grid-template-columns: 1fr 1.3fr; gap: 80px; margin-top: 80px; padding-block: 60px 85px; border-top: 1px solid var(--line); }
.pricing-questions .eyebrow { margin-bottom: 18px; }.pricing-questions h2 { font-size: 35px; }
.faq-list summary { font-size: 14px; padding-block: 21px; font-weight: 600; }.faq-list p { font-size: 13px; line-height: 1.9; color: var(--muted); }
.public-section h2, .security-item h2 { font-family: var(--display); font-weight: 650; letter-spacing: -.8px; }
.security-item h2 { font-size: 20px; line-height: 1.4; }.security-item p, .contact-card p { font-size: 14px; line-height: 1.9; color: var(--muted); }
.security-item>.icon { color: var(--accent); }.security-grid { gap: 20px 50px; }
.content-narrow { max-width: 890px; }.prose { font-size: 15px; line-height: 1.95; color: var(--muted); }
.prose>h2 { font: 650 25px/1.4 var(--display); letter-spacing: -.7px; color: var(--ink); }.prose>h3 { font: 650 19px/1.45 var(--display); color: var(--ink); }
.legal-meta { font: 10px/1.8 var(--mono); color: var(--muted); }.prose p+p { margin-top: 17px; }
.prose a { color: var(--accent); }.prose li { line-height: 1.9; }.prose .notice { font-size: 13px; }
.contact-card { border-radius: 10px; border-color: var(--line); background: var(--surface); padding: 36px; }.contact-card h2 { font: 650 26px/1.3 var(--display); letter-spacing: -1px; }
.docs-layout { grid-template-columns: 230px minmax(0,1fr); gap: 60px; padding-top: 45px; }
.docs-nav a { font-size: 12px; min-height: 42px; color: var(--muted); padding: 10px 13px; }.docs-nav a.active { background: var(--surface); color: var(--accent); border-color: var(--line); }
.docs-sidebar h2 { font: 9px/1.7 var(--mono); letter-spacing: 1px; color: var(--muted); }.docs-sidebar-footer { font-size: 11px; color: var(--muted); }
.docs-content .page-intro h1 { font: 650 44px/1.2 var(--display); letter-spacing: -1.7px; }.docs-content .page-intro .lede { font-size: 15px; }
.docs-card { border-radius: 9px; border-color: var(--line); padding: 26px; box-shadow: none; background: var(--surface); }.docs-card:hover { border-color: var(--line); background: var(--surface); box-shadow: 0 5px 15px #00000008; }
.docs-card h2,.docs-card h3 { font-size: 17px; font-family: var(--display); font-weight: 650; letter-spacing: -.5px; }.docs-card p { font-size: 12px; line-height: 1.9; }.docs-card>.icon { color: var(--accent); }
.docs-bottom { font-size: 11px; color: var(--muted); }.code-block { background: var(--surface); border-color: var(--line); border-radius: 8px; color: var(--ink); }
.code-block .code-header { background: var(--surface); color: var(--ink); border-color: var(--line); font-size: 11px; }.code-block pre { font-size: 12px; }.code-block button { color: var(--ink); border-color: var(--line); }
.change-day { grid-template-columns: 170px minmax(0,1fr); gap: 45px; padding-block: 42px; }.change-body h2 { font: 650 32px/1.25 var(--display); letter-spacing: -1.1px; }
.change-date { font: 11px/1.8 var(--mono); color: var(--muted); }.change-date .release-label { color: var(--muted); font: 9px/1.7 var(--mono); }
.change-group ul { font-size: 14px; line-height: 1.9; color: var(--muted); }.change-type { font: 10px/1.7 var(--mono); letter-spacing: 1px; }.change-type.added { color: var(--muted); }.change-type.improved { color: var(--accent); }
.status-banner { border-radius: 10px; }.status-banner h2 { font: 650 21px/1.4 var(--display); letter-spacing: -.5px; }.status-banner p { font-size: 13px; }
.status-list strong { font-size: 14px; }.status-list .list-row p { font-size: 12px; }.status-note { font-size: 12px; line-height: 1.9; color: var(--muted); }

/* The same identity in daily use */
.layout-app { background: var(--surface); }.sidebar { background: var(--surface); border-color: var(--line); color: var(--ink); }
.sidebar .brand { color: var(--ink); font-size: 21px; letter-spacing: -.85px; }.sidebar .brand img { width: 27px; height: 33px;  }
.workspace-chip { background: var(--surface); border-color: var(--line); }.workspace-chip strong { color: var(--ink); font-size: 12px; }.workspace-chip small { color: var(--muted); font: 8px/1.5 var(--mono); }
.workspace-avatar { color: var(--ink); background: var(--surface); }.side-nav a, .nav-button { color: var(--ink); font-size: 12px; font-weight: 500; min-height: 43px; }
.side-nav a.active { background: var(--surface); color: var(--ink); box-shadow: inset 2px 0 #00000020; }.side-nav a:hover, .nav-button:hover { background: var(--surface); color: var(--ink); }
.sidebar-note { color: var(--muted); border-color: var(--line); background: var(--surface); font-size: 11px; }.sidebar-note a { color: var(--ink); }.sidebar-bottom { border-color: var(--line); }
.sidebar-version { color: var(--muted); font: 9px/1.6 var(--mono); }.sidebar-version span { color: var(--muted); }
.topbar { border-color: var(--line); background: #000000ed; }.breadcrumb, .breadcrumb strong { font-size: 12px; }.breadcrumb { color: var(--muted); }.breadcrumb strong { color: var(--muted); }
.avatar { color: var(--accent); background: var(--surface); }.account-name { font-size: 12px; color: var(--muted); }
.page-heading h1 { font: 650 33px/1.25 var(--display); letter-spacing: -1.25px; }.page-heading p { font-size: 14px; line-height: 1.85; }.page-heading .eyebrow { font-size: 9px; }
.card, .metric { border-color: var(--line); border-radius: 10px; box-shadow: 0 2px 4px #00000002; }.card-header { background: var(--surface); border-color: var(--line); }
.card-header h2 { font: 650 17px/1.45 var(--display); letter-spacing: -.4px; }.card-header p, .card-body p, .card-body>p { font-size: 13px; line-height: 1.8; }
.card-body h2 { font-family: var(--display); font-weight: 650; letter-spacing: -.6px; }.card-body h3 { font-family: var(--display); font-weight: 650; }
.metric-label { color: var(--muted); font-size: 11px; font-weight: 550; }.metric-value { font-family: var(--display); font-weight: 600; letter-spacing: -1.6px; font-size: 37px; }.metric .help { font-size: 11px; }
.metric-date { font-size: 27px; }.metric-value small { font-size: 14px; letter-spacing: 0; font-weight: 400; }
label, legend { font-size: 12px; color: var(--muted); font-weight: 600; }
input:not([type=checkbox]):not([type=radio]):not([type=hidden]), select, textarea { font: 400 14px/1.6 var(--body); background: var(--surface); color: var(--ink); border-color: var(--line); border-radius: 6px; min-height: 45px; }
input:not([type=checkbox]):not([type=radio]):focus, select:focus, textarea:focus { border-color: var(--line); box-shadow: 0 0 0 3px #00000020; }
input::placeholder, textarea::placeholder { color: var(--muted); }input[type=checkbox],input[type=radio] { accent-color: var(--accent); }
textarea.code-input { font: 12px/1.8 var(--mono); }.help, .check, .checkbox-label { font-size: 12px; color: var(--muted); }.help { line-height: 1.8; }
fieldset { border-color: var(--line); border-radius: 8px; }.editor-row { background: var(--surface); border-color: var(--line); border-radius: 8px; }
.card-body details>summary { color: var(--muted); font-size: 12px; }.payload-list dt { color: var(--muted); font: 11px/1.6 var(--mono); }.payload-list dd { font-size: 14px; }
table th { color: var(--muted); background: var(--surface); font: 10px/1.7 var(--mono); letter-spacing: .5px; }table td { font-size: 13px; color: var(--muted); }table td strong { color: var(--ink); }
.badge { border-radius: 5px; font: 500 10px/1.5 var(--body); }.badge-active,.badge-accepted,.badge-succeeded { color: var(--muted); background: var(--surface); border-color: var(--line); }
.badge-warning,.badge-quarantined,.badge-outcome_unknown { color: var(--muted); background: var(--surface); border-color: var(--line); }.badge-current_plan { color: var(--accent); background: var(--surface); border-color: var(--line); }
.notice { border-radius: 7px; font-size: 13px; line-height: 1.8; }.notice-info { background: var(--surface); border-color: var(--line); color: var(--muted); }.notice-success { background: var(--surface); border-color: var(--line); color: var(--muted); }
.tabs a,.tabs button { font-size: 12px; }.tabs a.active { color: var(--accent); border-bottom-color: var(--line); }
.empty-state h2,.empty-state h3 { font: 600 24px/1.4 var(--display); letter-spacing: -.7px; }.empty-state p { font-size: 13px; line-height: 1.8; }.empty-glyph { color: var(--muted); }
.onboarding { background: var(--surface); border-color: var(--line); }.onboarding h2 { font: 650 30px/1.3 var(--display); letter-spacing: -1px; }.onboarding p { font-size: 13px; }
progress { accent-color: var(--accent); }progress::-webkit-progress-bar { background: var(--surface); }progress::-webkit-progress-value { background: var(--accent); }progress::-moz-progress-bar { background: var(--accent); }
.billing-summary { margin-bottom: 24px; background: var(--surface); }.billing-summary .card-body { display: flex; align-items: center; justify-content: space-between; gap: 24px; }.billing-summary p { margin-top: 7px; }
.app-footer { color: var(--muted); font: 9px/1.8 var(--mono); }.app-footer a { color: var(--muted); }
.layout-auth { background: var(--surface); }.auth-header { border-bottom: 1px solid var(--line); }.auth-header .brand { font-size: 22px; }
.auth-card { border: 1px solid var(--line); background: var(--surface); border-radius: 12px; box-shadow: 0 18px 50px -30px #00000040; padding: 38px; }.auth-card::before { background: var(--accent); width: 30px; height: 3px; }
.auth-card h1 { font: 650 34px/1.2 var(--display); letter-spacing: -1.2px; }.auth-card>p { font-size: 13px; line-height: 1.9; }.auth-card .eyebrow { font-size: 9px; }
.auth-note { color: var(--muted); font-size: 11px; }.auth-footer, .auth-footer a { color: var(--muted); font: 10px/1.8 var(--body); }.auth-header .text-link { color: var(--muted); font-size: 11px; }
.recovery-codes { background: var(--surface); border-color: var(--line); color: var(--muted); font-family: var(--mono); }

/* Dark surfaces, semantic states and the bastion plan. */
::selection { background: var(--accent); color: var(--accent-ink); }
:focus-visible { outline-color: var(--accent); }
.skip-link,.skip-link:hover { color: var(--accent-ink); background: var(--accent); }
.button-primary,button[type=submit],.public-nav>a.button { color: var(--accent-ink); background: var(--accent); border-color: var(--accent); }
.button-primary:hover,button[type=submit]:hover { color: var(--accent-ink); background: var(--accent-hover); border-color: var(--accent-hover); box-shadow: 0 4px 18px #d7b77c14; }
.button-secondary,button.button-secondary[type=submit] { color: var(--ink); background: var(--surface-soft); border-color: #687375; }
.button-secondary:hover,button.button-secondary[type=submit]:hover { color: var(--ink); background: #272f33; border-color: #697477; }
.button-danger,button.button-danger[type=submit] { color: #ffdad5; background: #482721; border-color: #855148; }
.button-danger:hover,button.button-danger[type=submit]:hover { color: #fff0ed; background: #64362d; border-color: #ad6b5d; }
.button-light { background: var(--accent); color: var(--accent-ink); }
.button-light:hover { background: var(--accent-hover); }
.public-header { background: #0d1012f2; backdrop-filter: blur(18px); }
.public-footer { background: #090c0e; border-top: 1px solid var(--line); }
.public-nav>a:hover,.section-link:hover,.text-link:hover { color: var(--accent-hover); }
.public-footer .brand img,.sidebar .brand img,.auth-header .brand img,.brand img { width: 42px; height: 42px; }
.sidebar .brand { gap: 10px; font-size: 20px; }.sidebar .brand img { width: 35px; height: 35px; }
.brand-weight { color: var(--ink); }.brand>span { color: #b8bec0; font-weight: 500; }
.eyebrow-line { background: var(--accent); }.eyebrow { color: #b6a382; }
.masthead { gap: 55px; padding-block: 67px 73px; }
.masthead h1 { font-size: clamp(46px,4.5vw,67px); letter-spacing: -2.7px; }
.masthead h1 span { color: var(--accent); }
.masthead .lede { max-width: 465px; }.masthead .hero-actions { gap: 22px; }
.bastion-scene { margin: 0; width: 100%; min-width: 0; position: relative; padding: 26px 27px 22px; background: radial-gradient(ellipse at 50% 40%,#2a272057,transparent 65%),#111619; border: 1px solid #343a3b; border-radius: 4px; box-shadow: 0 28px 60px -30px #00000090; overflow: hidden; }
.bastion-scene::before,.bastion-scene::after { content: ''; position: absolute; width: 33px; height: 33px; pointer-events: none; border-color: #b5945e; border-style: solid; }
.bastion-scene::before { top: -1px; left: -1px; border-width: 1px 0 0 1px; }.bastion-scene::after { bottom: -1px; right: -1px; border-width: 0 1px 1px 0; }
.bastion-scene-heading { display: flex; justify-content: space-between; gap: 16px; color: #9b9e98; font: 8px/1.7 var(--mono); letter-spacing: 1.4px; }
.bastion-scene-heading>span:last-child { color: #c4aa7c; white-space: nowrap; }
.bastion-plan { position: relative; margin-block: 8px 5px; }.bastion-plan>svg { display: block; width: 100%; height: auto; overflow: visible; }
.plan-axis { stroke: #d7b77c; stroke-opacity: .07; stroke-dasharray: 3 6; }
.plan-perimeter { stroke: #d7b77c; stroke-opacity: .17; stroke-width: .16; }
.plan-inner-wall { stroke: #d7b77c; stroke-opacity: .31; stroke-width: .2; }
.plan-register { stroke: #8f825f; stroke-width: .8; opacity: .65; }.plan-approach { stroke: #a89570; stroke-width: 1; stroke-dasharray: 2 5; opacity: .5; }
.plan-emblem { filter: drop-shadow(0 12px 15px #00000066); animation: bastion-reveal 1s ease-out both; transform-origin: center; }
@keyframes bastion-reveal { from { opacity: 0; transform: scale(.94); } to { opacity: 1; transform: scale(1); } }
.plan-annotation { position: absolute; top: 45%; color: #ad9a77; font: 7px/1.7 var(--mono); letter-spacing: 1.3px; }
.plan-annotation-left { left: 0; }.plan-annotation-right { right: 0; }
.bastion-receipt { display: flex; align-items: center; gap: 15px; padding: 19px; background: #1a2023; border: 1px solid #44463f; border-radius: 6px; }
.bastion-receipt-icon { display: grid; place-items: center; width: 39px; height: 39px; color: var(--accent); border: 1px solid #554a35; background: #2b271f; flex-shrink: 0; border-radius: 5px; }
.bastion-receipt strong { display: block; color: var(--ink); font-size: 13px; font-weight: 600; letter-spacing: -.25px; }
.bastion-receipt div>span { display: block; color: #a3acae; font-size: 10px; margin-top: 5px; }
.bastion-receipt-check { color: #aad0b7; margin-left: auto; }.bastion-receipt-check .icon { width: 16px; height: 16px; }
.bastion-scene figcaption { display: flex; justify-content: space-between; gap: 10px; color: #a1a49e; font: 7px/1.7 var(--mono); margin-top: 17px; }
.capability-top .icon,.security-item>.icon,.included-features>article>.icon,.docs-card>.icon,.contact-card>.icon { color: var(--accent); }
.section-link { border-bottom-color: #786443; }.check-list li { color: var(--muted); }.check-list .icon { color: var(--accent); }
.integration-code { background: #111619; border-color: #384146; }.integration-code .code-header,.code-block .code-header { background: #1a2125; color: #c1c6c7; border-color: #384146; }
.integration-code pre { color: #dde1da; }.code-comment { color: #a0acae; }.code-tag { color: #e2c48f; }.code-string { color: #aacaaf; }
.code-block { background: #101518; color: #d6dfdc; }.code-block button,.copy-button { color: #e0d3ba; border-color: #646258; background: #282d2b; }.code-block button:hover,.copy-button:hover { background: #383f3b; }
p code,li code,td code,dd code,.help code { background: #20282c; color: #e3d0aa; border-color: #404b4d; }
.free-plan-card { background: linear-gradient(145deg,#242721,#171d1f 60%); border-color: #60563f; box-shadow: 0 24px 60px -35px #000000; }.plan-heading { color: #c2ac83; }.plan-heading img { width: 45px; height: 45px; }
.free-plan-card>.button { color: var(--accent-ink); background: var(--accent); border-color: var(--accent); }.free-plan-card>.button:hover { background: var(--accent-hover); border-color: var(--accent-hover); }
.docs-nav a.active,.side-nav>a.active { color: #ead0a0; background: #302b22; border-color: #514532; box-shadow: inset 2px 0 var(--accent); }
.docs-nav a:hover,.docs-card:hover { background: #20272a; }.docs-card:hover { border-color: #7c7058; }
.prose { color: #c0c6c6; }.prose a { color: var(--accent); }.change-group ul { color: #bac2c3; }
.sidebar { background: #101416; border-color: #30383b; scrollbar-color: #505856 transparent; }.topbar { background: #111619ed; }
.layout-app,.layout-auth { background: var(--paper); }.card,.metric,.card-header,.auth-card { background: var(--surface); }.card-footer { background: #1a2023; }
.workspace-chip,.sidebar-note { background: #1a2023; }.workspace-avatar,.avatar { color: var(--accent); background: #302b22; border-color: #514b3f; }
.side-nav>a:hover,.side-nav a:hover,.nav-button:hover,.nav-button[type=submit]:hover { background: #232b2e; color: var(--ink); border-color: transparent; box-shadow: none; }
.nav-button,.nav-button[type=submit] { color: #b9c1c3; background: transparent; border-color: transparent; box-shadow: none; }
.side-nav-secondary,.sidebar-bottom { border-color: var(--line); }.nav-close:hover { background: var(--surface-soft); }
label,legend { color: #d4d9d8; }
input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea { color: var(--ink); background: #0f1417; border-color: #667276; }
input:hover,select:hover,textarea:hover { border-color: #89928e; }input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus { border-color: var(--accent); outline-color: var(--accent); box-shadow: 0 0 0 3px #d7b77c1c; }
input[readonly],textarea[readonly] { background: #1c2428; color: #c0c9ca; }input::placeholder,textarea::placeholder { color: #a0aaad; }
input[type=file]::file-selector-button,.password-field button,.password-wrap button { background: #303b3f; color: var(--ink); }
option { color: var(--ink); background: #14191c; }.editor-row { background: #1a2125; border-color: #3a454a; }
.text-success { color: #a2d7b6; }.danger-zone,.danger-zone .card-header { border-color: #754e45; }.danger-zone h2 { color: #f0b3a5; }
.notice,.notice-info { color: #c1d6e4; background: #1b2b34; border-color: #48606d; border-left-color: #91b7cd; }
.notice-warning { color: #eed1a0; background: #30291d; border-color: #665437; border-left-color: #d7b77c; }
.notice-error { color: #f2c1b7; background: #33211f; border-color: #755048; border-left-color: #df9c8c; }
.notice-success { color: #b6dfc4; background: #1b2c24; border-color: #456951; border-left-color: #90c6a1; }.notice a { color: inherit; text-decoration: underline; }
.badge { color: #c1c9ca; background: #2b3438; border: 1px solid #465358; }
.badge-active,.badge-accepted,.badge-inbox,.badge-succeeded,.badge-success,.badge-published,.badge-operational { color: #b5dec2; background: #21352a; border-color: #4b7059; }
.badge-warning,.badge-quarantined,.badge-running,.badge-pending,.badge-unconfigured,.badge-outcome_unknown,.badge-unscanned { color: #eed09b; background: #362e20; border-color: #726044; }
.badge-failed,.badge-disabled,.badge-suspended,.badge-error,.badge-unavailable { color: #f2bbb0; background: #3d2926; border-color: #7a534b; }
.badge-queued,.badge-html,.badge-server,.badge-free,.badge-current_plan { color: #c0d4df; background: #24333c; border-color: #536772; }
.badge-archived,.badge-paused,.badge-skipped,.badge-draft { color: #c5c8c5; background: #2a3032; border-color: #4c565a; }
.tabs a.active { color: var(--accent); border-bottom-color: var(--accent); }.tabs a:hover,.tabs button:hover { background: #20272a; }
table th { color: #b7c0c2; background: #1a2226; }table td { color: #c7cfd0; }table td strong { color: var(--ink); }table tbody tr:hover { background: #1c2428; }
.onboarding { background: #20241f; border-color: #56533d; }
progress::-webkit-progress-bar,.progress { background: #303a3f; }progress::-webkit-progress-value,.progress span { background: var(--accent); }progress::-moz-progress-bar { background: var(--accent); }
.status-banner { background: #1c2c24; border-color: #43624e; }.status-symbol { background: #304b39; color: #b2d9bd; }.status-banner.attention { background: #30291f; border-color: #665537; }.status-banner.attention .status-symbol { color: #edd29e; background: #4b3e26; }
.change-type,.change-type.added { color: #b6d5bf; background: #23372b; }.change-type.improved { color: #e7c994; background: #332d20; }.change-type.fixed { color: #c2d5e0; background: #263740; }
.auth-card::before { background: var(--accent); }.auth-card .auth-links a { color: var(--accent); }.auth-note,.auth-footer,.auth-footer a { color: #abb4b7; }
.recovery-code,.recovery-codes,.mfa-secret { color: #e6d5b8; background: #242820; border-color: #62634c; }
.toast-region { background: #2e362c; color: var(--ink); border: 1px solid #7f815d; }
.layout-auth::before { background-image: radial-gradient(#d7b77c22 1px,transparent 1px); }

/* Compact laptops and tablets */
@media (max-width: 1199px) {
  .container,.public-header-inner { width: calc(100% - 64px); }
  .masthead { grid-template-columns: 1fr 1fr; gap: 25px; padding-block: 52px; }
  .masthead h1 { font-size: 47px; letter-spacing: -2.4px; }.masthead .lede { font-size: 14px; }.masthead .eyebrow { font-size: 8px; letter-spacing: 1px; }
  .masthead .hero-actions { gap: 19px; }.masthead .button-large { padding-inline: 17px; font-size: 12px; }.masthead .text-link { font-size: 11px; }
  .compatibility-band>a { display: none; }.integration-section { gap: 44px; }.free-plan-layout { gap: 60px; }.docs-layout { gap: 35px; }
}
@media (max-width: 1023px) {
  .bastion-scene { max-width: 570px; margin-inline: auto; }
  .sidebar { visibility: hidden; }
  .nav-open .sidebar { visibility: visible; }
  .public-header { height: 77px; }.public-header-inner { position: relative; }.public-nav { background: var(--surface); border-color: var(--line); padding: 15px; box-shadow: 0 18px 35px #00000020; gap: 3px; }
  .public-nav>a { min-height: 45px; padding: 12px 14px; font-size: 14px; }.public-nav>a.button { margin-top: 7px; }.public-nav>a:hover:not(.button) { background: var(--surface); }
  .masthead { grid-template-columns: 1fr; gap: 40px; max-width: 800px; padding-top: 44px; padding-bottom: 50px; }
  .masthead-copy { text-align: center; }.masthead h1 { font-size: 62px; letter-spacing: -3.2px; }.masthead .eyebrow { font-size: 9px; letter-spacing: 1.3px; }
  .masthead .lede { margin-inline: auto; max-width: 520px; font-size: 16px; }.masthead .hero-actions { justify-content: center; }.masthead .hero-note { justify-content: center; }.masthead .button-large { font-size: 13px; padding-inline: 22px; }.product-section { padding-block: 65px; }.section-heading h2 { font-size: 36px; }.section-heading>p { max-width: 300px; font-size: 13px; }
  .capability-grid article { padding-inline: 23px; }.capability-grid h3 { font-size: 20px; }.capability-grid p { font-size: 12px; }.capability-grid .section-link { font-size: 10px; gap: 6px; }
  .integration-section { grid-template-columns: 1fr; gap: 34px; padding-bottom: 65px; }.integration-copy>p:not(.eyebrow) { max-width: 520px; }.integration-code pre { font-size: 13px; }
  .assurance-section { gap: 45px; padding-block: 47px; }.assurance-section h2 { font-size: 34px; }.closing-cta { padding-block: 60px; gap: 35px; }.closing-cta>div:last-child { min-width: 270px; }
  .free-plan-layout { gap: 35px; grid-template-columns: 1fr 1fr; }.free-plan-card { padding: 29px; }.included-features>h2 { font-size: 27px; }.included-features>article { gap: 12px; }.included-features article p { font-size: 11px; }
  .pricing-questions { gap: 45px; }.pricing-questions h2 { font-size: 30px; }.docs-layout { display: block; }.docs-sidebar { position: static; padding: 0 0 25px; margin-bottom: 35px; border-bottom: 1px solid var(--line); }
  .docs-nav { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 5px; }.docs-nav a { font-size: 11px; }.docs-sidebar-footer { display: none; }
  .sidebar-brand { padding-top: 30px; }.sidebar .nav-close { color: var(--ink); }.nav-scrim { background: #00000080; }
}
@media (max-width: 767px) {
  .bastion-scene { padding: 20px 18px 17px; }.bastion-scene-heading { font-size: 7px; letter-spacing: .8px; }.bastion-scene-heading>span:last-child { display: none; }
  .bastion-receipt { gap: 11px; padding: 14px 12px; }.bastion-receipt strong { font-size: 12px; }.bastion-receipt div>span { font-size: 9px; }.bastion-receipt-icon { width: 32px; height: 36px; }
  .bastion-scene figcaption { font-size: 7px; margin-top: 14px; }.plan-annotation { font-size: 6px; letter-spacing: .7px; }
  .container,.public-header-inner { width: calc(100% - 40px); }.brand,.public-header .brand { font-size: 21px; letter-spacing: -.8px; }.brand img { width: 36px; height: 36px; }
  .public-header { height: 73px; }.public-header .icon-button { width: 44px; height: 44px; }
  .masthead { padding-block: 37px 35px; gap: 32px; }.masthead-copy { text-align: left; }.masthead .eyebrow { font-size: 8px; letter-spacing: .9px; }.eyebrow-line { width: 17px; margin-right: 6px; }
  .masthead h1 { font-size: clamp(37px, 8.8vw, 57px); letter-spacing: -1.9px; margin-block: 20px 20px; line-height: 1.16; }
  .masthead .lede { font-size: 14px; line-height: 1.85; margin: 0; }.masthead .hero-actions { justify-content: flex-start; margin-top: 25px; gap: 20px; }.masthead .button-large { font-size: 12px; padding: 13px 18px; min-height: 49px; }
  .masthead .text-link { font-size: 12px; }.masthead .hero-note { justify-content: flex-start; font-size: 10px; margin-top: 17px; }
  .compatibility-band { display: grid; grid-template-columns: 1fr 1fr; gap: 21px 12px; padding-block: 22px; }.compatibility-band p { font-size: 10px; }.compatibility-band>span { font-size: 10px; gap: 7px; }.compatibility-band .icon { width: 16px; height: 16px; }
  .product-section { padding-block: 46px 38px; }.section-heading { display: block; margin-bottom: 28px; }.section-heading h2,.integration-copy h2,.assurance-section h2,.closing-cta h2 { font-size: 34px; letter-spacing: -1.4px; }.section-heading>p { font-size: 13px; max-width: 440px; margin-top: 19px; }
  .eyebrow { font-size: 8px; letter-spacing: 1.1px; }.capability-grid { grid-template-columns: 1fr; }.capability-grid article,.capability-grid article:first-child,.capability-grid article:last-child { padding: 27px 0; border-left: 0; border-top: 1px solid var(--line); }
  .capability-grid article:first-child { border-top: 0; }.capability-top { margin-bottom: 21px; }.capability-top>span { font-size: 8px; }.capability-top .icon { width: 22px; height: 22px; }.capability-grid h3 { font-size: 23px; line-height: 1.35; }
  .capability-grid p { font-size: 13px; line-height: 1.85; margin-top: 15px; }.capability-grid .section-link { font-size: 12px; margin-top: 18px; gap: 9px; }
  .integration-section { gap: 28px; padding-block: 10px 40px; }.integration-copy>p:not(.eyebrow) { font-size: 13px; margin-top: 19px; }.integration-copy .check-list { margin-block: 21px; }.check-list li { font-size: 11px; }
  .integration-code pre { font-size: 9px; padding: 19px 16px; line-height: 2; }.integration-code .code-header { padding: 13px 17px; font-size: 9px; }.integration-code-footer { padding: 12px 17px; font-size: 8px; }.integration-code-footer>span { font-size: 7px; }
  .assurance-section { grid-template-columns: 1fr; gap: 31px; padding-block: 35px; }.assurance-list article { gap: 20px; padding-block: 23px; }.assurance-list h3 { font-size: 16px; }.assurance-list p { font-size: 12px; }.assurance-section .section-link { margin-top: 22px; }
  .closing-cta { display: block; padding-block: 42px 47px; }.closing-cta>div:last-child { min-width: 0; margin-top: 22px; }.closing-cta p:not(.eyebrow) { font-size: 13px; margin-bottom: 20px; }.closing-cta .button-large { font-size: 13px; }
  .footer-top { grid-template-columns: 1fr 1fr; gap: 30px 22px; padding-block: 35px; }.footer-brand { grid-column: 1/-1; }.footer-brand .brand { font-size: 23px; }.footer-brand p { font-size: 16px; margin-top: 17px; }.footer-top h2 { font-size: 9px; margin-bottom: 14px; }.footer-top>div>a:not(.brand) { font-size: 12px; margin-top: 12px; }.footer-bottom { font-size: 8px; gap: 8px; padding-block: 20px; }
  .page-intro { padding-block: 36px 32px; }.page-intro h1 { font-size: 39px; line-height: 1.18; letter-spacing: -1.6px; }.page-intro .eyebrow { margin-bottom: 14px; font-size: 8px; }.page-intro .lede { font-size: 14px; line-height: 1.85; margin-top: 19px; }
  .pricing-page .page-intro { text-align: left; padding-block: 36px 32px; }.pricing-page .page-intro h1 { max-width: 420px; }.free-plan-layout { grid-template-columns: 1fr; gap: 36px; }.free-plan-card { padding: 28px; }.free-price { font-size: 77px; letter-spacing: -4px; }.free-plan-card>.button { font-size: 12px; }.plan-heading { font-size: 9px; }.plan-allowances { gap: 23px 13px; }.plan-allowances strong { font-size: 20px; }.plan-allowances span { font-size: 10px; }
  .included-features>h2 { font-size: 30px; }.included-features h3 { font-size: 14px; }.included-features article p { font-size: 12px; }.included-features>article { gap: 15px; }.capacity-note { font-size: 11px; }.pricing-questions { grid-template-columns: 1fr; gap: 28px; margin-top: 40px; padding-block: 34px 43px; }.pricing-questions h2 { font-size: 31px; }.faq-list summary { font-size: 13px; line-height: 1.7; padding-block: 19px; }.faq-list p { font-size: 13px; }
  .prose { font-size: 14px; line-height: 1.9; }.prose>h2 { font-size: 23px; margin-top: 31px; }.prose>h3 { font-size: 18px; }.legal-meta { font-size: 9px; }.security-item h2 { font-size: 20px; }.security-grid .security-item p,.contact-card p { font-size: 13px; }.security-item { padding-block: 25px; }.contact-card { padding: 25px; }.contact-card h2 { font-size: 25px; }
  .docs-layout { padding-top: 20px; }.docs-nav { grid-template-columns: 1fr 1fr; gap: 6px; }.docs-nav a { font-size: 11px; min-height: 43px; padding: 9px; }.docs-sidebar { margin-bottom: 27px; padding-bottom: 20px; }.docs-content .page-intro h1 { font-size: 33px; letter-spacing: -1.3px; }.docs-content .page-intro .lede { font-size: 14px; }.docs-cards { gap: 12px; }.docs-card { padding: 22px; }.docs-card h2,.docs-card h3 { font-size: 17px; }.docs-card p { font-size: 12px; }.docs-bottom { font-size: 10px; }
  .change-day { display: block; padding-block: 29px; }.change-date { font-size: 10px; margin-bottom: 21px; }.change-date .release-label { font-size: 8px; }.change-body h2 { font-size: 27px; letter-spacing: -.9px; }.change-group ul { font-size: 13px; line-height: 1.85; }.change-type { font-size: 9px; }.status-banner { padding: 23px 18px; }.status-banner h2 { font-size: 18px; }.status-banner p { font-size: 12px; }.status-list .list-row p { font-size: 11px; }.status-list strong { font-size: 13px; }.status-note { font-size: 12px; }
  .main { padding: 26px 20px 35px; }.page-heading h1 { font-size: 29px; letter-spacing: -1.1px; }.page-heading p { font-size: 13px; }.page-heading .eyebrow { font-size: 8px; }.topbar { padding-inline: 20px; }.breadcrumb strong { font-size: 11px; max-width: 180px; }
  .metric { padding: 19px; }.metric-value { font-size: 30px; letter-spacing: -1.2px; }.metric-label { font-size: 10px; }.metric .help { font-size: 10px; }.metric-date { font-size: 24px; }.card-header h2 { font-size: 16px; }.card-body { padding: 22px; }.card-body>p { font-size: 13px; }
  .button,button[type=submit] { min-height: 46px; font-size: 12px; }.button-small,button.button-small[type=submit] { min-height: 42px; font-size: 11px; }
  input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea { font-size: 16px; min-height: 47px; }label,legend { font-size: 12px; }.help,.check,.checkbox-label { font-size: 11px; }
  table.responsive td { font-size: 13px; }table.responsive td::before { font-size: 11px; color: var(--muted); }.badge { font-size: 10px; }.notice { font-size: 12px; }.payload-list dd { font-size: 13px; }.payload-list dt { font-size: 10px; }
  .onboarding h2 { font-size: 27px; }.onboarding p { font-size: 12px; }.billing-summary .card-body { align-items: flex-start; flex-direction: column; gap: 17px; }.empty-state h2,.empty-state h3 { font-size: 22px; }
  .auth-header { padding: 23px 20px; }.auth-header .brand { font-size: 19px; }.auth-header .text-link { font-size: 9px; }.auth-card { padding: 30px 25px; }.auth-card h1 { font-size: 32px; }.auth-card>p { font-size: 13px; }.auth-note { font-size: 11px; }.auth-footer,.auth-footer a { font-size: 10px; }
}
@media (max-width: 374px) {
  .container,.public-header-inner { width: calc(100% - 32px); }.main { padding-inline: 16px; }.topbar { padding-inline: 16px; }
  .masthead .hero-actions { gap: 17px; }.masthead .hero-note { font-size: 9px; }.masthead .eyebrow { font-size: 7px; }
  .free-plan-card { padding: 25px; }.plan-allowances span { font-size: 9px; }.auth-header { padding-inline: 16px; }.auth-header .brand { font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .masthead-copy>*,.plan-emblem { animation: none; opacity: 1; transform: none; }
}
@media print {
  :root { color-scheme: light; --paper: #fff; --surface: #fff; --surface-soft: #eee; --ink: #171c1f; --muted: #3f494e; --line: #bbb; --accent: #715121; }
  body,.prose,.change-group ul { color: #171c1f; background: #fff; }.bastion-scene { print-color-adjust: exact; }.integration-code { color: #171c1f; background: #fff; }
}
/* Verification stays readable across narrow account screens and large workspaces. */
.verification-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.verification-banner>div{min-width:0}.verification-banner p{margin:.35rem 0 0;overflow-wrap:anywhere}
.layout-app h1,.layout-app .page-heading p{overflow-wrap:anywhere}
.verification-banner>.button{flex-shrink:0}.verification-card{max-width:54rem;margin:2rem auto}
.verification-card h1{max-width:18ch}.verification-address{padding:1.2rem;border:1px solid var(--line);border-radius:12px;display:grid;gap:.5rem;overflow-wrap:anywhere}
@media(max-width:600px){.verification-banner{align-items:stretch;flex-direction:column}.verification-banner>.button{width:100%}.verification-card{margin:1rem 0}.verification-card .cluster{align-items:stretch;flex-direction:column}}
