@import url('/tokens.css');
@font-face { font-family: Inter; font-style: normal; font-weight: 100 900; font-display: swap; src: url('/fonts/inter-latin-wght-normal.woff2') format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: Inter; font-style: normal; font-weight: 100 900; font-display: swap; src: url('/fonts/inter-latin-ext-wght-normal.woff2') format('woff2'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
:root {
  color-scheme: light;
  --font-ui: Inter, system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-code: ui-monospace, SFMono-Regular, Menlo, monospace;
  --text-xs: .75rem; --text-sm: .875rem; --text-base: 1rem; --text-lg: 1.25rem; --text-xl: 1.5rem; --text-2xl: 2rem;
  --space-1: .25rem; --space-2: .5rem; --space-3: .75rem; --space-4: 1rem; --space-5: 1.25rem; --space-6: 1.5rem; --space-8: 2rem; --space-10: 2.5rem;
  --rail-width: 16rem; --rail-width-collapsed: 4rem; --header-height: 3.5rem; /* shared SEADS shell geometry: 256 / 64 / 56 px */
  --shadow-menu: 0 8px 24px hsl(var(--ink) / .12);
}
.dark { color-scheme: dark; }
* { box-sizing: border-box; }
[hidden] { display: none !important; }
body { margin: 0; font: var(--text-sm)/1.5 var(--font-ui); background: hsl(var(--surface)); color: hsl(var(--ink)); -webkit-font-smoothing: antialiased; transition: background-color var(--motion-duration), color var(--motion-duration); }
a { color: hsl(var(--brand-text)); text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button, summary, select { cursor: pointer; }
button:disabled { opacity: .55; cursor: not-allowed; }
:focus-visible { outline: 2px solid hsl(var(--brand)); outline-offset: 3px; }
.skip { position: fixed; top: -100px; left: var(--space-4); padding: var(--space-3); background: hsl(var(--surface)); z-index: 60; }
.skip:focus { top: var(--space-4); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
h1 { font-size: var(--text-xl); line-height: 1.25; font-weight: 600; letter-spacing: -.025em; margin: 0 0 var(--space-2); }
h2 { font-size: var(--text-base); font-weight: 600; margin: 0 0 var(--space-2); }
p { margin: 0 0 var(--space-4); }
.muted, .subhead { color: hsl(var(--muted)); }
.shell { min-height: 100dvh; }
.rail { position: fixed; inset: 0 auto 0 0; width: var(--rail-width); display: flex; flex-direction: column; overflow-y: auto; background: hsl(var(--panel)); border-right: 1px solid hsl(var(--border)); padding: var(--space-6) var(--space-4); z-index: 30; }
.brand { display: flex; align-items: center; gap: var(--space-3); color: hsl(var(--ink)); font-size: var(--text-base); font-weight: 600; padding: var(--space-2); margin-bottom: var(--space-5); }
.brand img { flex-shrink: 0; object-fit: contain; }
.brand small { display: block; font-size: var(--text-xs); font-weight: 400; color: hsl(var(--muted)); margin-top: var(--space-1); }
.nav-group { font-size: var(--text-sm); color: hsl(var(--muted)); margin: var(--space-5) var(--space-3) var(--space-2); }
.rail nav { display: grid; gap: var(--space-1); }
.rail nav a { color: hsl(var(--muted)); padding: var(--space-2) var(--space-3); min-height: 40px; border-radius: var(--radius); }
.rail nav a:hover { background: hsl(var(--surface)); color: hsl(var(--ink)); }
.rail nav a[aria-current='page'] { color: hsl(var(--brand-text)); background: hsl(var(--brand-tint)); font-weight: 600; }
.rail-foot { margin-top: auto; padding: var(--space-6) var(--space-3) 0; font-size: var(--text-xs); color: hsl(var(--muted)); }
.rail-foot p { margin: var(--space-2) 0 0; }
.main { margin-left: var(--rail-width); min-width: 0; }
.topbar { box-sizing: border-box; min-height: var(--header-height); background: hsl(var(--panel)); border-bottom: 1px solid hsl(var(--border)); display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--space-4); padding: 0 var(--space-8); }
.breadcrumb, .top-actions { display: flex; align-items: center; gap: var(--space-3); }
.breadcrumb { color: hsl(var(--muted)); font-size: var(--text-sm); }
.top-actions { flex-wrap: wrap; }
.ghost-button { display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2); min-height: 40px; padding: var(--space-2) var(--space-3); border: 0; border-radius: var(--radius); background: none; color: hsl(var(--ink)); transition: background-color var(--motion-duration); }
.ghost-button:hover { background: hsl(var(--panel)); }
/* The language control names the language a tap switches to, never the current one (standard 05):
   its full name, or its code on phones. */
.language-name, .language-code { font-size: var(--text-sm); font-weight: 500; }
.language-code { display: none; }
@media (max-width: 767px) { .language-name { display: none; } .language-code { display: inline; } }
.top-actions { gap: var(--space-1); }
.top-actions .sign-in { margin-left: var(--space-2); }
.account-menu summary.avatar { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; min-height: 0; margin: 4px var(--space-1) 4px var(--space-2); padding: 0; border: 0; border-radius: 50%; background: hsl(var(--brand-tint)); color: hsl(var(--brand-text)); font-size: var(--text-xs); font-weight: 600; list-style: none; transition: box-shadow var(--motion-duration); }
.account-menu summary.avatar::-webkit-details-marker { display: none; }
.account-menu summary.avatar:hover, .account-menu[open] summary.avatar { box-shadow: 0 0 0 3px hsl(var(--border)); }
.account-head { display: grid; gap: 2px; padding: var(--space-2) var(--space-3) var(--space-3); margin-bottom: var(--space-1); border-bottom: 1px solid hsl(var(--border)); }
.account-head strong { font-size: var(--text-sm); font-weight: 500; overflow-wrap: anywhere; }
.account-head small { font-size: var(--text-xs); color: hsl(var(--muted)); overflow-wrap: anywhere; }
.menu-item { display: flex; align-items: center; gap: var(--space-2); width: 100%; padding: var(--space-3); border: 0; border-radius: var(--radius); background: none; text-align: left; color: hsl(var(--ink)); }
.menu-item:hover { background: hsl(var(--panel)); }
.dropdown-menu a { color: hsl(var(--ink)); }
select { padding: var(--space-2); background: hsl(var(--surface)); border: 1px solid hsl(var(--border)); border-radius: var(--radius); min-height: 40px; }
.icon-button { min-width: 40px; padding: var(--space-2); }
.icon-sun, .dark .icon-moon { display: none; }
.dark .icon-sun { display: inline; }
.dropdown { position: relative; }
.dropdown summary { border-radius: var(--radius); padding: var(--space-2) var(--space-3); border: 1px solid hsl(var(--border)); min-height: 40px; }
.dropdown-menu { position: absolute; right: 0; top: calc(100% + var(--space-2)); min-width: 220px; background: hsl(var(--surface)); border: 1px solid hsl(var(--border)); border-radius: var(--radius); padding: var(--space-2); box-shadow: var(--shadow-menu); z-index: 40; }
.dropdown-menu a { display: block; padding: var(--space-3); border-radius: var(--radius); }
.dropdown-menu a:hover { background: hsl(var(--panel)); }
/* The account page is text and a form: narrower, as the standard asks. */
[data-panel="account"] { max-width: 720px; }
/* Standard 01, content width (#253): 32 px from the rail and the top bar (16 px on phones), at most
   1280 px of content aligned left under the title; nothing stretches across a large screen. */
.content { max-width: calc(1280px + 2 * var(--space-8)); padding: var(--space-8) var(--space-8) var(--space-10); }
.page-heading, .market-title { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-4); }
.page-heading { margin-bottom: var(--space-6); }
.subhead { margin-bottom: 0; }
.notice { border: 1px solid hsl(var(--border)); background: hsl(var(--panel)); color: hsl(var(--muted)); padding: var(--space-3) var(--space-4); border-radius: var(--radius); margin-bottom: var(--space-6); }
.badge { display: inline-flex; align-items: center; gap: var(--space-2); padding: var(--space-1) var(--space-2); border: 1px solid hsl(var(--border)); border-radius: 9999px; font-size: var(--text-sm); color: hsl(var(--muted)); white-space: nowrap; }
.badge::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.badge.info { color: hsl(var(--brand-text)); background: hsl(var(--brand-tint)); }
.badge.success { color: hsl(var(--success)); }
.badge.warning { color: hsl(var(--warning-text)); }
.badge.danger { color: hsl(var(--danger)); }
.metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: var(--space-4); }
.metric, .card { border: 1px solid hsl(var(--border)); border-radius: var(--radius); background: hsl(var(--surface)); padding: var(--space-6); }
.metric > span, .metric small { color: hsl(var(--muted)); display: block; font-size: var(--text-sm); }
.money { display: block; font-size: var(--text-2xl); font-weight: 600; font-variant-numeric: tabular-nums; margin: var(--space-2) 0; }
.section-head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); margin: var(--space-8) 0 var(--space-3); }
.section-head h2 { margin: 0; }
.table-wrap { overflow-x: auto; border: 1px solid hsl(var(--border)); border-radius: var(--radius); }
table { border-collapse: collapse; width: 100%; text-align: left; font-size: var(--text-sm); }
th, td { padding: var(--space-4) var(--space-5); border-bottom: 1px solid hsl(var(--border)); }
th { font-size: var(--text-sm); font-weight: 500; color: hsl(var(--muted)); background: hsl(var(--panel)); white-space: nowrap; }
tbody tr:last-child td { border-bottom: 0; }
.empty-state { text-align: center; border: 1px solid hsl(var(--border)); border-radius: var(--radius); padding: var(--space-10) var(--space-6); margin: var(--space-4) 0; }
td .empty-state { border: 0; margin: 0; }
.empty-state p { color: hsl(var(--muted)); max-width: 460px; margin: var(--space-2) auto 0; }
.button { display: inline-flex; align-items: center; justify-content: center; padding: var(--space-2) var(--space-4); min-height: 40px; gap: var(--space-2); border: 1px solid hsl(var(--border)); border-radius: var(--radius); background: hsl(var(--surface)); color: hsl(var(--ink)); font-weight: 500; }
.button:hover { background: hsl(var(--panel)); }
.button.primary { background: hsl(var(--brand)); border-color: hsl(var(--brand)); color: #fff; }
.dark .button.primary { background: hsl(var(--brand-dark)); border-color: hsl(var(--brand-dark)); }
.button.primary:hover { background: hsl(var(--brand-dark)); }
.dark .button.primary:hover { background: hsl(var(--brand)); border-color: hsl(var(--brand)); }
[data-panel] > .button { margin-top: var(--space-4); }
.code { font: var(--text-xs)/1.6 var(--font-code); padding: var(--space-5); background: hsl(var(--panel)); border: 1px solid hsl(var(--border)); border-radius: var(--radius); overflow-x: auto; }
.checkout { max-width: 560px; padding: var(--space-6); margin: var(--space-8) auto; }
.checkout-head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); margin-bottom: var(--space-8); }
.checkout-head .brand { margin: 0; padding: 0; }
.checkout-head .language { margin-left: auto; }
.checkout > h1 { margin-top: var(--space-4); }
.checkout > .subhead { margin-bottom: var(--space-6); }
.fee-breakdown { margin: var(--space-6) 0; }
.fee-breakdown > div { display: flex; justify-content: space-between; gap: var(--space-4); padding: var(--space-3) 0; border-bottom: 1px solid hsl(var(--border)); }
.fee-breakdown > div:last-child { font-weight: 600; }
dd { margin: 0; font-variant-numeric: tabular-nums; }
.checkout-methods { margin-top: var(--space-6); }
.checkout-footer { margin-top: var(--space-8); font-size: var(--text-sm); color: hsl(var(--muted)); text-align: center; }
.checkout .card { overflow-wrap: anywhere; }
.checkout > #checkout-refresh { margin-top: var(--space-3); }
.mobile-only, .nav-backdrop { display: none; }
.skeleton { height: 56px; margin: var(--space-2) 0; border-radius: var(--radius); background: hsl(var(--panel)); }
.quote-card { margin-bottom: var(--space-6); }
.quote-card [data-merchant-organization], .quote-actions .button { max-width: 100%; }
.quote-fields { display: grid; gap: var(--space-2); max-width: 36rem; margin: var(--space-4) 0; }
.quote-fields input, .quote-fields select { width: 100%; min-width: 0; min-height: 44px; padding: var(--space-3); border: 1px solid hsl(var(--border)); border-radius: var(--radius); background: hsl(var(--surface)); color: inherit; font: inherit; }
.quote-fields input:disabled, .quote-fields select:disabled { opacity: .65; }
.quote-details > div { display: grid; grid-template-columns: minmax(8rem,1fr) minmax(0,2fr); gap: var(--space-3); padding: var(--space-2) 0; border-bottom: 1px solid hsl(var(--border)); }
.quote-details dd { overflow-wrap: anywhere; }
.quote-consent { display: flex; align-items: flex-start; gap: var(--space-3); margin: var(--space-4) 0; }
.quote-consent input { min-width: 20px; min-height: 20px; margin-top: 3px; }
.quote-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
@media (max-width: 1000px) { .metrics { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 767px) {
 .main { margin-left: 0; } .rail { position: static; width: auto; } .js .rail { position: fixed; width: var(--rail-width); transform: translateX(-100%); transition: transform var(--motion-duration); } .js .rail.open { transform: none; }
 .js .mobile-only { display: inline-flex; } .close-nav { margin-bottom: var(--space-4); border: 1px solid hsl(var(--border)); background: hsl(var(--surface)); border-radius: var(--radius); padding: var(--space-3); }
 .nav-backdrop:not([hidden]) { display: block; position: fixed; inset: 0; background: hsl(0 0% 0% / .45); border: 0; z-index: 20; }
 .topbar, .content { padding-left: var(--space-4); padding-right: var(--space-4); } .content { padding-top: var(--space-4); } .topbar { gap: var(--space-3); }
 .breadcrumb { flex-wrap: wrap; } .top-actions { width: 100%; } .top-actions .language { margin-left: -12px; margin-right: auto; }
 .dropdown summary { font-size: var(--text-sm); } .dropdown-menu { min-width: 200px; }
 .page-heading { flex-wrap: wrap; } .metric { padding: var(--space-4); } .checkout { margin: 0 auto; padding: var(--space-5); } 
 th, td { padding: var(--space-3); } .table-wrap { max-width: 100%; } .market-title { flex-wrap: wrap; }
}
/* Public landing page: mirrors the ai.seads.io landing layout with SEADS PAY content. */
.landing { min-height: 100dvh; overflow-x: hidden; font-size: var(--text-base); line-height: 1.5; }
.landing a { color: inherit; }
.l-wrap { max-width: 80rem; margin: 0 auto; padding-left: 1.5rem; padding-right: 1.5rem; }
.l-header { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding-top: 1.5rem; padding-bottom: 1.5rem; }
.l-logo img { display: block; width: 56px; height: 56px; object-fit: contain; }
.l-nav { display: flex; align-items: center; gap: 1.75rem; font-size: var(--text-sm); color: hsl(var(--muted)); }
.landing .l-nav a { color: hsl(var(--muted)); transition: color var(--motion-duration); }
.landing .l-nav a:hover { color: hsl(var(--ink)); }
.l-actions { display: flex; align-items: center; gap: .75rem; }
.ghost { display: inline-flex; align-items: center; justify-content: center; gap: .375rem; padding: .5rem; border: 0; border-radius: var(--radius); background: none; font-size: var(--text-sm); color: hsl(var(--ink)); transition: background-color var(--motion-duration); }
.ghost:hover { background: hsl(var(--panel)); }
.l-link { padding: .5rem .75rem; font-size: var(--text-sm); }
.l-btn { display: inline-flex; align-items: center; gap: .5rem; padding: .5rem 1rem; border: 1px solid transparent; border-radius: var(--radius); font-size: var(--text-sm); font-weight: 500; transition: background-color var(--motion-duration); }
.l-btn.lg { padding: .75rem 1.25rem; }
.landing .l-btn.primary { background: hsl(var(--brand)); color: #fff; }
.landing .l-btn.primary:hover { background: hsl(var(--brand-dark)); }
.dark .landing .l-btn.primary { background: hsl(var(--brand-dark)); }
.dark .landing .l-btn.primary:hover { background: hsl(var(--brand)); }
.l-btn.outline { border-color: hsl(var(--border)); }
.l-btn.outline:hover { background: hsl(var(--panel)); }
.l-menu-toggle { display: none; }
.l-menu-toggle .icon-close, .l-menu-toggle[aria-expanded='true'] .icon-open { display: none; }
.l-menu-toggle[aria-expanded='true'] .icon-close { display: block; }
.l-mobile-nav { display: grid; gap: .25rem; margin: 0 1.5rem 1rem; padding: .75rem; border: 1px solid hsl(var(--border)); border-radius: var(--radius); background: hsl(var(--surface)); font-size: var(--text-sm); }
.l-mobile-nav > a { padding: .5rem; border-radius: var(--radius); }
.l-mobile-nav > a:hover { background: hsl(var(--panel)); }
.l-mobile-foot { display: flex; align-items: center; gap: .25rem; margin-top: .5rem; padding-top: .5rem; border-top: 1px solid hsl(var(--border)); }
.l-mobile-foot .l-btn { margin-left: auto; }
.l-hero { display: grid; gap: 3rem; padding-top: 4rem; padding-bottom: 5rem; }
.l-hero:focus { outline: none; }
.eyebrow { margin: 0 0 1.5rem; font-size: var(--text-xs); font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: hsl(var(--brand-text)); }
.l-hero h1 { margin: 0; font-size: clamp(3rem, 1.75rem + 4vw, 4.5rem); font-weight: 600; line-height: 1.02; letter-spacing: -.045em; }
.l-hero h1 .accent { color: hsl(var(--brand-text)); }
.landing .lead { max-width: 36rem; margin: 1.75rem 0 0; font-size: 1.25rem; line-height: 2rem; color: hsl(var(--muted)); }
.l-cta { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2.25rem; }
.l-aside { padding-left: 1.5rem; border-left: 1px solid hsl(var(--border)); }
.l-aside p { margin: 0 0 1.25rem; font-size: var(--text-sm); line-height: 1.5rem; color: hsl(var(--muted)); }
.pills { display: flex; flex-wrap: wrap; gap: .5rem; }
.pill { padding: .375rem .75rem; border: 1px solid hsl(var(--border)); border-radius: 999px; background: hsl(var(--panel)); font-size: var(--text-xs); color: hsl(var(--muted)); }
.l-band { border-top: 1px solid hsl(var(--border)); border-bottom: 1px solid hsl(var(--border)); background: hsl(var(--panel) / .4); }
.l-band > .l-wrap { padding-top: 4rem; padding-bottom: 4rem; }
.value-grid { display: grid; border-top: 1px solid hsl(var(--border)); border-left: 1px solid hsl(var(--border)); }
.value { padding: 1.75rem; border-right: 1px solid hsl(var(--border)); border-bottom: 1px solid hsl(var(--border)); background: hsl(var(--surface)); }
.value > svg { display: block; margin-bottom: 3rem; color: hsl(var(--brand)); }
.value h2 { margin: 0; font-size: var(--text-xl); font-weight: 600; letter-spacing: -.025em; line-height: 1.3; }
.value p { max-width: 28rem; margin: .75rem 0 0; line-height: 1.75rem; color: hsl(var(--muted)); }
.l-dev { display: grid; gap: 3rem; padding-top: 5rem; padding-bottom: 5rem; }
.l-dev .eyebrow { margin-bottom: 0; }
.l-dev h2 { margin: 1.25rem 0 0; font-size: clamp(2.25rem, 1.9rem + 1.4vw, 3rem); font-weight: 600; line-height: 1.1; letter-spacing: -.035em; }
.l-dev .lead { margin-top: 1.5rem; }
.checks { display: grid; gap: .75rem; margin: 2rem 0 0; padding: 0; list-style: none; }
.checks li { display: flex; gap: .75rem; font-size: var(--text-sm); line-height: 1.5rem; }
.checks svg { flex-shrink: 0; margin-top: .2rem; color: hsl(var(--success)); }
.l-dev-cta { margin-top: 2.25rem; }
.l-code { align-self: center; min-width: 0; margin: 0; padding: 1.25rem; overflow-x: auto; border: 1px solid hsl(var(--border)); border-radius: var(--radius); background: #102238; color: #F1F5F9; font: .75rem/1.5rem var(--font-code); box-shadow: 0 1px 2px hsl(0 0% 0% / .05); }
.l-footer { border-top: 1px solid hsl(var(--border)); }
.l-footer > .l-wrap { display: flex; flex-direction: column; gap: 1rem; padding-top: 2rem; padding-bottom: 2rem; font-size: var(--text-sm); color: hsl(var(--muted)); }
.l-footer-brand { display: flex; align-items: center; gap: .75rem; }
.l-footer-brand img { width: 48px; height: 48px; object-fit: contain; }
.l-footer nav { display: flex; flex-wrap: wrap; gap: 1.25rem; }
.landing .l-footer nav a:hover { color: hsl(var(--ink)); }
@media (max-width: 767px) { .l-nav, .l-actions { display: none; } .l-menu-toggle { display: inline-flex; } }
@media (min-width: 640px) {
 .l-hero { padding-top: 6rem; padding-bottom: 7rem; } .value { padding: 2.25rem; } .value-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .l-code { padding: 1.75rem; } .l-footer > .l-wrap { flex-direction: row; align-items: center; justify-content: space-between; }
}
@media (min-width: 1024px) {
 .l-wrap { padding-left: 2rem; padding-right: 2rem; } .l-mobile-nav { display: none; }
 .l-hero { grid-template-columns: 1.1fr .9fr; align-items: end; padding-top: 8rem; } .l-band > .l-wrap { padding-top: 6rem; padding-bottom: 6rem; }
 .l-dev { grid-template-columns: .85fr 1.15fr; gap: 5rem; padding-top: 7rem; padding-bottom: 7rem; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; } }

#merchant-checkout form { display: grid; gap: 12px; }
#merchant-checkout input:not([type="checkbox"]), #mc-fragment { width: 100%; box-sizing: border-box; }
#mc-detail > label { display: flex; gap: 10px; align-items: flex-start; margin: 16px 0; }
#mc-summary { overflow-wrap: anywhere; }
#mc-fragment { min-height: 90px; overflow-wrap: anywhere; }
#mc-reference, #mc-fragment { padding: 12px; border: 1px solid hsl(var(--border)); border-radius: var(--radius); background: hsl(var(--surface)); color: hsl(var(--text)); font: inherit; }
#mc-create-panel { display: grid; gap: 12px; margin-top: 24px; }
#mc-create-panel[hidden] { display: none; }
#mc-create-panel > label:has(input[type="checkbox"]) { display: flex; gap: 10px; align-items: flex-start; }
#mc-amount, #mc-scenario { padding: 12px; width: 100%; box-sizing: border-box; border: 1px solid hsl(var(--border)); border-radius: var(--radius); background: hsl(var(--surface)); color: hsl(var(--text)); font: inherit; }

/* A signed-in console is never drawn before the session is known (session standard). */
html.auth-pending body { visibility: hidden; }
.l-notice { margin: 0 auto var(--space-6); max-width: 44rem; padding: var(--space-3) var(--space-4); border: 1px solid hsl(var(--border)); border-radius: var(--radius); background: hsl(var(--surface)); color: hsl(var(--ink)); }

/* Shell standard (seads-infrastructure 01-brand-and-interface, Layout). */
.rail nav a { display: flex; align-items: center; gap: var(--space-3); }
.nav-icon { flex-shrink: 0; }
.rail-foot { margin-top: auto; }
.rail-collapse { display: flex; align-items: center; gap: var(--space-3); width: 100%; margin-top: var(--space-4); padding: var(--space-3); border: 0; border-top: 1px solid hsl(var(--border)); border-radius: 0; background: none; color: hsl(var(--muted)); font: inherit; font-size: var(--text-sm); text-align: left; cursor: pointer; }
.rail-collapse:hover { color: hsl(var(--ink)); }
.org-chip { display: inline-flex; align-items: center; gap: var(--space-2); min-width: 0; margin-right: var(--space-2); color: hsl(var(--ink)); font-size: var(--text-sm); font-weight: 600; }
.org-tile { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; flex-shrink: 0; border-radius: var(--radius); background: hsl(var(--brand-tint)); color: hsl(var(--brand-text)); font-size: var(--text-xs); font-weight: 600; }
.org-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 16rem; }
.topbar > .org-chip + .breadcrumb { margin-right: auto; }
.account-person { color: hsl(var(--ink)); font-size: var(--text-sm); white-space: nowrap; }
@media (min-width: 768px) {
  html.rail-collapsed { --rail-width: var(--rail-width-collapsed); }
  html.rail-collapsed .rail { padding-left: var(--space-2); padding-right: var(--space-2); align-items: stretch; }
  html.rail-collapsed .brand { justify-content: center; padding-left: 0; padding-right: 0; }
  html.rail-collapsed .brand span, html.rail-collapsed .nav-group, html.rail-collapsed .rail-foot, html.rail-collapsed .rail nav a span, html.rail-collapsed .rail-collapse span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  html.rail-collapsed .rail nav a, html.rail-collapsed .rail-collapse { justify-content: center; padding-left: 0; padding-right: 0; }
  html.rail-collapsed .rail-collapse { margin-top: auto; }
}
@media (max-width: 767px) { .topbar { padding-top: var(--space-2); padding-bottom: var(--space-2); } .rail-collapse { display: none; } .org-name { max-width: 9rem; } .account-person { display: none; } }
.org-chip[hidden], .account-person[hidden] { display: none; }

/* Pages before sign-in: one shared sticky top bar (seads-infrastructure 01-brand-and-interface). */
.pre-bar { position: sticky; top: .75rem; z-index: 40; display: flex; align-items: center; gap: var(--space-4); box-sizing: border-box; min-height: 56px; margin: .75rem auto 0; max-width: 72rem; width: calc(100% - 1.5rem); padding: 0 var(--space-4); border: 1px solid hsl(var(--border)); border-radius: 1rem; background: hsl(var(--surface)); }
.pre-brand { display: inline-flex; align-items: center; gap: var(--space-2); font-weight: 600; color: hsl(var(--ink)); }
.pre-brand img { display: block; object-fit: contain; }
.pre-links { display: flex; align-items: center; gap: 1.5rem; margin-left: 1rem; font-size: var(--text-sm); color: hsl(var(--muted)); }
.pre-links a:hover { color: hsl(var(--ink)); }
.pre-links a[aria-current='page'] { color: hsl(var(--ink)); font-weight: 600; }
.pre-actions { display: flex; align-items: center; gap: var(--space-2); margin-left: auto; }
.signin-main { display: flex; flex-direction: column; align-items: center; padding: 4rem 1.5rem 5rem; }
.signin-card { width: 100%; max-width: 26rem; }
.signin-card:focus { outline: none; }
.signin-logo { display: block; width: 120px; height: 120px; object-fit: contain; margin-bottom: var(--space-6); }
.signin-card h1 { margin: var(--space-2) 0 var(--space-3); font-size: 1.75rem; font-weight: 600; letter-spacing: -.02em; }
.signin-card .lead { margin: 0 0 var(--space-6); font-size: var(--text-base); }
.signin-actions { display: grid; gap: var(--space-3); }
.signin-actions .l-btn { justify-content: center; }
.signin-actions [hidden] { display: none; }
.signin-note { margin: var(--space-4) 0 var(--space-8); font-size: var(--text-sm); }
.signin-back { display: block; text-align: center; color: hsl(var(--brand-text)); font-size: var(--text-sm); }
.pre-bar [hidden] { display: none; }
@media (max-width: 767px) { .pre-links { display: none; } .pre-actions .l-menu-toggle { display: inline-flex; } .pre-actions .l-btn, .pre-actions .l-link { display: none; } .pre-mobile { margin: .5rem .75rem; } .signin-main { padding-top: 2.5rem; } }
/* User guides at /help/ (seads-infrastructure#173): both languages are in the page; show the page's. */
html[lang="fr"] .help-main [lang="en"], html[lang="en"] .help-main [lang="fr"] { display: none; }
.help-main { box-sizing: border-box; max-width: 48rem; margin: 0 auto; padding: var(--space-8) var(--space-4) var(--space-12, 3rem); line-height: 1.6; }
.help-main h1 { font-size: var(--text-2xl, 1.5rem); margin: var(--space-8) 0 var(--space-4); }
.help-main h2 { font-size: var(--text-lg, 1.125rem); margin: var(--space-8) 0 var(--space-2); }
.help-main p, .help-main li { color: hsl(var(--ink)); }
.help-guide { scroll-margin-top: calc(var(--header-height, 3.5rem) + var(--space-4)); }
.help-guide + .help-guide { border-top: 1px solid hsl(var(--border)); margin-top: var(--space-8); }
.help-contents ul { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-6); padding: 0; margin: 0; list-style: none; }
.help-table { overflow-x: auto; margin: var(--space-4) 0; }
.help-table table { width: 100%; border-collapse: collapse; font-size: var(--text-sm); }
.help-table th, .help-table td { text-align: left; vertical-align: top; padding: var(--space-2) var(--space-3); border-bottom: 1px solid hsl(var(--border)); }
.help-table th { color: hsl(var(--muted)); font-weight: 500; }
