:root {
  color-scheme: light;
  --ink: #13231d;
  --muted: #65716c;
  --line: #dbe2dd;
  --paper: #fbfcf9;
  --surface: #ffffff;
  --forest: #1d5b42;
  --forest-dark: #10281f;
  --leaf: #58b56f;
  --lime: #b9df74;
  --earth: #8d6848;
  --sun: #f4c95d;
  --danger: #b84242;
  --shadow: 0 24px 70px rgba(21, 48, 37, 0.13);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-height: 100vh;
  color: var(--ink);
  background:
    radial-gradient(circle at 10% 5%, rgba(185, 223, 116, 0.2), transparent 28rem),
    linear-gradient(180deg, #f6f9f3 0%, #edf3ed 100%);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", sans-serif;
  -webkit-font-smoothing: antialiased;
}

button, input, select, textarea { font: inherit; }
a { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }

.site-header {
  width: min(1180px, calc(100% - 40px));
  min-height: 82px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.brand { display: flex; align-items: center; gap: 12px; color: var(--ink); text-decoration: none; }
.brand > span:last-child { display: grid; line-height: 1; }
.brand strong { font-size: 16px; letter-spacing: 0.14em; }
.brand small { margin-top: 5px; color: var(--muted); font-size: 9px; letter-spacing: 0.12em; }
.brand-mark {
  display: grid;
  grid-template-columns: repeat(2, 10px);
  grid-template-rows: repeat(2, 10px);
  gap: 2px;
  padding: 5px;
  background: var(--forest-dark);
  border-radius: 7px;
  box-shadow: 4px 4px 0 rgba(88, 181, 111, 0.2);
}
.brand-mark i { display: block; background: var(--leaf); }
.brand-mark i:nth-child(2), .brand-mark i:nth-child(3) { background: var(--lime); }

.header-status { display: inline-flex; align-items: center; gap: 8px; color: #345346; font-size: 13px; font-weight: 700; }
.header-status i { width: 8px; height: 8px; border-radius: 50%; background: var(--leaf); box-shadow: 0 0 0 5px rgba(88, 181, 111, 0.14); }
.admin-nav { display: flex; align-items: center; gap: 20px; font-size: 14px; font-weight: 700; }
.admin-nav a { text-decoration: none; }
.admin-nav form { margin: 0; }
.text-button { padding: 0; border: 0; color: var(--muted); background: none; cursor: pointer; font-weight: 700; }

.application-layout {
  width: min(1180px, calc(100% - 40px));
  margin: 34px auto 72px;
  display: grid;
  grid-template-columns: minmax(300px, 0.82fr) minmax(520px, 1.18fr);
  gap: clamp(42px, 7vw, 100px);
  align-items: start;
}

.hero-copy { position: sticky; top: 32px; padding: 54px 0 30px; }
.eyebrow { display: flex; align-items: center; gap: 10px; color: var(--forest); font-size: 12px; font-weight: 800; letter-spacing: 0.18em; }
.eyebrow::before { content: ""; width: 36px; height: 3px; background: linear-gradient(90deg, var(--forest) 55%, var(--lime) 55%); }
.hero-copy h1 { margin: 26px 0 22px; font-size: clamp(42px, 5vw, 70px); line-height: 1.08; letter-spacing: -0.055em; }
.hero-copy h1 em { color: var(--forest); font-style: normal; }
.hero-lead { max-width: 550px; margin: 0; color: #53635c; font-size: 17px; line-height: 1.9; }
.expectation-card {
  display: flex;
  align-items: center;
  gap: 15px;
  margin: 34px 0 26px;
  padding: 17px 18px;
  border: 1px solid rgba(29, 91, 66, 0.16);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.66);
  backdrop-filter: blur(10px);
}
.expectation-icon { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: #e5f2df; font-size: 19px; }
.expectation-card div:last-child { display: grid; gap: 4px; }
.expectation-card strong { font-size: 14px; }
.expectation-card span { color: var(--muted); font-size: 12px; line-height: 1.5; }
.trust-list { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; color: #43534c; font-size: 13px; }
.trust-list li { display: flex; align-items: center; gap: 12px; }
.trust-list span { color: var(--forest); font-size: 10px; font-weight: 900; letter-spacing: 0.1em; }

.form-card {
  position: relative;
  min-height: 690px;
  overflow: hidden;
  padding: clamp(26px, 4vw, 48px);
  border: 1px solid rgba(24, 62, 47, 0.1);
  border-radius: 28px;
  background: var(--surface);
  box-shadow: var(--shadow);
}
.form-card::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 74px;
  height: 74px;
  background: linear-gradient(135deg, transparent 50%, rgba(185, 223, 116, 0.36) 50%);
  pointer-events: none;
}
.form-topline { display: flex; justify-content: space-between; align-items: start; gap: 20px; }
.form-kicker { color: var(--forest); font-size: 10px; font-weight: 900; letter-spacing: 0.18em; text-transform: uppercase; }
.form-topline h2 { margin: 7px 0 0; font-size: 22px; letter-spacing: -0.03em; }
.step-fraction { z-index: 1; padding: 9px 14px; border-radius: 999px; background: #f0f5ef; color: var(--muted); font-size: 12px; font-weight: 800; }
.step-fraction b { color: var(--forest); font-size: 16px; }
.progress-track { height: 5px; margin-top: 24px; overflow: hidden; border-radius: 99px; background: #e8ede9; }
.progress-track span { display: block; width: 20%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--forest), var(--leaf)); transition: width 260ms ease; }
.step-labels { display: grid; grid-template-columns: repeat(5, 1fr); gap: 5px; margin-top: 10px; color: #a4ada8; font-size: 10px; font-weight: 800; text-align: center; }
.step-labels span.active { color: var(--forest); }
.step-labels span.complete { color: #76a383; }
.form-alert { margin-top: 20px; padding: 12px 14px; border: 1px solid #edc4c4; border-radius: 10px; color: #8c3030; background: #fff3f3; font-size: 13px; }

.form-step { display: none; min-width: 0; margin: 34px 0 0; padding: 0; border: 0; animation: step-in 230ms ease both; }
.form-step.active { display: block; }
.form-step legend { display: block; width: 100%; margin: 0; padding: 0; font-size: clamp(24px, 3vw, 32px); font-weight: 800; letter-spacing: -0.04em; }
.form-step legend span { display: block; margin-bottom: 7px; color: var(--forest); font-size: 10px; letter-spacing: 0.16em; }
.step-intro { margin: 10px 0 28px; color: var(--muted); font-size: 14px; line-height: 1.7; }
.field-grid { display: grid; gap: 22px; }
.field-grid.two-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.field { display: grid; gap: 9px; min-width: 0; }
.field > span, .choice-field > span { color: #263a31; font-size: 13px; font-weight: 800; }
.field > span b, .choice-field > span b { color: #d15050; }
.choice-field > span small { margin-left: 8px; color: var(--muted); font-weight: 500; }
.field input, .field select, .field textarea, .filter-bar input, .filter-bar select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 11px;
  outline: none;
  color: var(--ink);
  background: #fbfcfa;
  transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}
.field input, .field select { min-height: 48px; padding: 0 13px; }
.field textarea { min-height: 112px; padding: 13px; resize: vertical; line-height: 1.7; }
.field input:focus, .field select:focus, .field textarea:focus, .filter-bar input:focus, .filter-bar select:focus {
  border-color: var(--leaf);
  background: #fff;
  box-shadow: 0 0 0 4px rgba(88, 181, 111, 0.13);
}
.field > small { color: #8b9690; font-size: 11px; }
.field > small i { color: var(--forest); font-style: normal; font-weight: 800; }
.profile-status { display: block; min-height: 1.5em; overflow-wrap: anywhere; }
.profile-status[data-state="loading"] { color: #80611f; }
.profile-status[data-state="success"] { color: var(--forest); font-weight: 700; }
.profile-status[data-state="error"] { color: var(--danger); font-weight: 700; }
.field-error { min-height: 16px; color: var(--danger); font-size: 11px; font-style: normal; }
.choice-field { margin-top: 26px; }
.choice-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
.choice-card { position: relative; display: grid; min-height: 112px; padding: 14px; border: 1px solid var(--line); border-radius: 13px; background: #fbfcfa; cursor: pointer; transition: 160ms ease; }
.choice-card:hover { transform: translateY(-2px); border-color: #a8c9b3; }
.choice-card:has(input:checked) { border-color: var(--forest); background: #edf7ec; box-shadow: inset 0 0 0 1px var(--forest); }
.choice-card input { position: absolute; opacity: 0; pointer-events: none; }
.choice-card > span { margin-bottom: 9px; font-size: 20px; }
.choice-card b { font-size: 12px; }
.choice-card small { align-self: end; margin-top: 5px; color: var(--muted); font-size: 9px; line-height: 1.45; }
.choice-field.compact { margin-top: 24px; }
.segmented { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 12px; }
.segmented label { position: relative; }
.segmented input { position: absolute; opacity: 0; }
.segmented span { display: grid; place-items: center; min-height: 46px; border: 1px solid var(--line); border-radius: 11px; cursor: pointer; font-size: 13px; font-weight: 800; }
.segmented input:checked + span { border-color: var(--forest); color: var(--forest); background: #edf7ec; box-shadow: inset 0 0 0 1px var(--forest); }
.textarea-field { margin-top: 22px; }
.textarea-field:first-of-type { margin-top: 0; }
.scenario-field > span { line-height: 1.6; }
.scenario-field > span > i { display: inline-grid; place-items: center; width: 26px; height: 26px; margin-right: 7px; border-radius: 7px; color: var(--forest); background: #e8f2e5; font-size: 9px; font-style: normal; }

.pledge-card { position: relative; overflow: hidden; margin: 22px 0; padding: 24px; border-radius: 16px; color: #eef9f0; background: linear-gradient(145deg, #173a2c, #10281f); }
.pledge-card h3 { position: relative; margin: 0 0 15px; max-width: 390px; font-size: 19px; line-height: 1.5; }
.pledge-card ul { position: relative; display: grid; gap: 9px; margin: 0; padding-left: 18px; color: #c6d9ce; font-size: 12px; line-height: 1.55; }
.pledge-blocks { position: absolute; right: -9px; bottom: -13px; display: grid; grid-template-columns: 36px 36px; gap: 4px; transform: rotate(-7deg); opacity: 0.45; }
.pledge-blocks i { width: 36px; height: 36px; background: var(--leaf); }
.pledge-blocks i:nth-child(2) { background: var(--lime); }
.pledge-blocks i:nth-child(3) { transform: translateX(40px); background: var(--earth); }
.confirm-check { display: flex; align-items: start; gap: 12px; margin-top: 13px; padding: 16px; border: 1px solid var(--line); border-radius: 13px; cursor: pointer; }
.confirm-check:has(input:checked) { border-color: #9bc5a8; background: #f1f8ef; }
.confirm-check input { flex: 0 0 auto; width: 18px; height: 18px; margin-top: 2px; accent-color: var(--forest); }
.confirm-check span { display: grid; gap: 5px; }
.confirm-check b { font-size: 13px; }
.confirm-check small { color: var(--muted); font-size: 11px; line-height: 1.5; }

.form-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 34px; padding-top: 22px; border-top: 1px solid #edf0ed; }
.button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; gap: 10px; padding: 0 20px; border: 1px solid transparent; border-radius: 11px; text-decoration: none; cursor: pointer; font-size: 13px; font-weight: 800; transition: transform 150ms ease, box-shadow 150ms ease, opacity 150ms ease; }
.button:hover { transform: translateY(-1px); }
.button:focus-visible, .row-link:focus-visible, .brand:focus-visible, .admin-nav a:focus-visible { outline: 3px solid rgba(88, 181, 111, 0.38); outline-offset: 3px; }
.button:disabled { cursor: wait; opacity: 0.65; transform: none; }
.button-primary, .button-submit { color: #fff; background: var(--forest); box-shadow: 0 8px 18px rgba(29, 91, 66, 0.2); }
.button-submit { background: linear-gradient(135deg, var(--forest), #2c7959); }
.button-secondary { border-color: var(--line); color: var(--ink); background: #fff; }
.draft-status { margin: 11px 0 0; color: #939c97; font-size: 10px; text-align: right; }
.honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }

.site-footer { width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 24px 0 30px; display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid rgba(31, 65, 51, 0.1); color: #76847d; font-size: 11px; }
.site-footer a { text-decoration: none; }
.flash-stack { position: fixed; z-index: 10; top: 88px; left: 50%; width: min(460px, calc(100% - 32px)); transform: translateX(-50%); }
.flash { padding: 13px 16px; border-radius: 10px; color: #fff; background: var(--forest); box-shadow: var(--shadow); font-size: 13px; font-weight: 700; }
.flash-error { background: var(--danger); }

.centered-page { display: grid; min-height: 100vh; grid-template-rows: auto 1fr auto; }
.result-card, .login-card { width: min(520px, calc(100% - 32px)); margin: 48px auto; align-self: center; padding: clamp(30px, 6vw, 56px); border: 1px solid rgba(24, 62, 47, 0.1); border-radius: 26px; background: #fff; box-shadow: var(--shadow); text-align: center; }
.result-card h1, .login-card h1 { margin: 10px 0 15px; font-size: 36px; letter-spacing: -0.04em; }
.result-card > p, .login-card > p { color: var(--muted); line-height: 1.8; }
.success-cube { display: grid; place-items: center; width: 72px; height: 72px; margin: 0 auto 20px; color: #fff; background: var(--forest); box-shadow: 8px 8px 0 var(--lime); font-size: 30px; }
.result-kicker { color: var(--forest); font-size: 10px; font-weight: 900; letter-spacing: 0.18em; }
.application-id { margin: 28px 0 12px; padding: 17px; border: 1px dashed #9fc1a9; border-radius: 13px; background: #f2f8f0; }
.application-id small, .application-id strong { display: block; }
.application-id small { color: var(--muted); font-size: 10px; }
.application-id strong { margin-top: 6px; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 20px; letter-spacing: 0.04em; }
.muted { font-size: 12px; }
.result-card .button { margin-top: 15px; }
.login-form { display: grid; gap: 20px; margin-top: 28px; text-align: left; }
.login-form .button { width: 100%; }

.admin-page { background: #f3f6f3; }
.admin-shell { width: min(1180px, calc(100% - 40px)); margin: 38px auto 70px; }
.admin-heading, .detail-heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; }
.admin-heading h1, .detail-heading h1 { margin: 7px 0 5px; font-size: 36px; letter-spacing: -0.04em; }
.admin-heading p, .detail-heading p { margin: 0; color: var(--muted); font-size: 13px; }
.stat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 30px 0 20px; }
.stat-card { position: relative; overflow: hidden; padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: #fff; text-decoration: none; }
.stat-card::after { content: ""; position: absolute; right: -15px; bottom: -15px; width: 64px; height: 64px; border-radius: 16px; background: currentColor; opacity: 0.08; transform: rotate(20deg); }
.stat-card span { color: var(--muted); font-size: 12px; font-weight: 700; }
.stat-card strong { display: block; margin-top: 5px; color: var(--ink); font-size: 30px; }
.stat-card.pending { color: #9b7525; }.stat-card.approved { color: var(--forest); }.stat-card.rejected { color: var(--danger); }
.filter-bar { display: flex; align-items: center; gap: 10px; padding: 14px; border: 1px solid var(--line); border-radius: 15px; background: #fff; }
.filter-bar select { min-width: 130px; height: 44px; padding: 0 10px; }
.search-field { position: relative; flex: 1; }
.search-field span { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: var(--muted); }
.search-field input { height: 44px; padding: 0 14px 0 38px; }
.text-link { color: var(--muted); font-size: 12px; font-weight: 700; }
.application-table-wrap { margin-top: 18px; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.application-table { width: 100%; border-collapse: collapse; }
.application-table th { padding: 14px 17px; color: #829088; background: #f8faf8; font-size: 10px; letter-spacing: 0.08em; text-align: left; text-transform: uppercase; }
.application-table td { padding: 16px 17px; border-top: 1px solid #edf0ed; font-size: 12px; vertical-align: middle; }
.application-table td:first-child { display: grid; gap: 4px; }
.application-table td:first-child strong { font-size: 14px; }
.application-table td:first-child small, .application-table time { color: var(--muted); }
.application-table .uuid-short { max-width: 220px; overflow: hidden; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.application-table code, .detail-heading code { color: #345346; font-size: 11px; }
.mini-tags { display: flex; flex-wrap: wrap; gap: 5px; }
.mini-tags span { padding: 4px 7px; border-radius: 6px; color: #456252; background: #eef4ee; font-size: 9px; }
.status-badge { display: inline-flex; padding: 6px 9px; border-radius: 99px; font-size: 10px; font-weight: 900; }
.status-badge.pending { color: #80611f; background: #fff3cf; }
.status-badge.approved { color: #246444; background: #ddf2e2; }
.status-badge.rejected { color: #963838; background: #fae4e4; }
.row-link { color: var(--forest); font-weight: 800; text-decoration: none; }
.onboarding-chip { display: inline-flex; padding: 5px 8px; border-radius: 99px; color: #6c7771; background: #eef1ef; font-size: 9px; font-weight: 800; white-space: nowrap; }
.onboarding-chip.active { color: #80611f; background: #fff3cf; }
.onboarding-chip.done { color: #246444; background: #ddf2e2; }
.empty-state { padding: 80px 20px; text-align: center; }
.empty-state > span { color: var(--leaf); font-size: 40px; }
.empty-state h2 { margin: 10px 0 5px; font-size: 18px; }
.empty-state p { margin: 0; color: var(--muted); font-size: 12px; }

.back-link { display: inline-block; margin-bottom: 24px; color: var(--muted); font-size: 12px; font-weight: 700; text-decoration: none; }
.detail-heading { align-items: center; margin-bottom: 26px; }
.detail-heading h1 { margin-top: 10px; }
.contact-chip { min-width: 170px; padding: 14px 18px; border: 1px solid var(--line); border-radius: 13px; background: #fff; }
.contact-chip small, .contact-chip strong { display: block; }
.contact-chip small { color: var(--muted); font-size: 10px; }
.contact-chip strong { margin-top: 4px; font-size: 16px; }
.detail-grid { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 20px; align-items: start; }
.answer-column { display: grid; gap: 18px; }
.answer-section, .review-panel { padding: 24px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.answer-section > h2, .review-panel h2 { margin: 0 0 20px; font-size: 17px; }
.answer-section > h2 span { margin-right: 8px; color: var(--forest); font-size: 10px; }
.fact-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin: 0; }
.fact-grid div { padding: 13px; border-radius: 10px; background: #f7f9f7; }
.fact-grid .wide-fact { grid-column: 1 / -1; }
.fact-grid dt { color: var(--muted); font-size: 10px; }
.fact-grid dd { margin: 5px 0 0; font-size: 13px; font-weight: 700; }
.fact-grid code { overflow-wrap: anywhere; color: #345346; font-size: 11px; }
.answer-section article + article { margin-top: 20px; padding-top: 20px; border-top: 1px solid #edf0ed; }
.answer-section article h3 { margin: 0 0 8px; color: #506159; font-size: 11px; }
.answer-section article p { margin: 0; white-space: pre-wrap; font-size: 14px; line-height: 1.85; }
.review-panel { position: sticky; top: 24px; }
.review-panel form { display: grid; gap: 18px; }
.review-panel .button { width: 100%; }
.onboarding-panel { margin: -5px -5px 22px; padding: 18px; border-radius: 12px; background: #f7f9f7; }
.onboarding-panel h2 { margin-bottom: 14px; }
.onboarding-status { display: grid; gap: 11px; margin: 0; padding: 0; list-style: none; }
.onboarding-status li { display: grid; grid-template-columns: 24px 1fr; gap: 9px; align-items: start; color: #839088; }
.onboarding-status li > span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: #e6ebe7; font-size: 9px; font-weight: 900; }
.onboarding-status li div { display: grid; gap: 2px; }
.onboarding-status strong { color: #53635c; font-size: 11px; }
.onboarding-status small { overflow-wrap: anywhere; font-size: 9px; line-height: 1.5; }
.onboarding-status li.active > span { color: #80611f; background: #fff0bd; }
.onboarding-status li.done > span { color: #fff; background: var(--forest); }
.onboarding-status li.done strong { color: var(--forest); }
.automation-error { margin: 12px 0 0; padding: 9px; border-radius: 8px; color: var(--danger); background: #faeaea; font-size: 9px; line-height: 1.5; }
.sr-only { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }

@keyframes step-in { from { opacity: 0; transform: translateX(8px); } to { opacity: 1; transform: translateX(0); } }

@media (max-width: 920px) {
  .application-layout { grid-template-columns: 1fr; gap: 28px; margin-top: 8px; }
  .hero-copy { position: static; padding-top: 28px; }
  .hero-copy h1 { max-width: 700px; }
  .hero-lead { max-width: 720px; }
  .trust-list { grid-template-columns: repeat(3, 1fr); }
  .trust-list li { align-items: start; }
  .detail-grid { grid-template-columns: 1fr; }
  .review-panel { position: static; }
}

@media (max-width: 700px) {
  .site-header { width: min(100% - 28px, 1180px); min-height: 68px; }
  .header-status { font-size: 11px; }
  .admin-nav { gap: 12px; font-size: 11px; }
  .application-layout, .admin-shell { width: min(100% - 24px, 1180px); }
  .application-layout { margin-bottom: 42px; }
  .hero-copy { padding-top: 18px; }
  .hero-copy h1 { margin-top: 20px; font-size: 42px; }
  .hero-lead { font-size: 15px; }
  .trust-list { grid-template-columns: 1fr; }
  .form-card { min-height: 0; padding: 24px 18px; border-radius: 20px; }
  .form-topline h2 { font-size: 19px; }
  .field-grid.two-columns { grid-template-columns: 1fr; }
  .choice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .form-actions { position: sticky; bottom: 0; z-index: 2; margin-inline: -18px; padding: 14px 18px; background: rgba(255,255,255,0.94); backdrop-filter: blur(10px); }
  .form-actions .button { flex: 1; }
  .draft-status { text-align: center; }
  .site-footer { width: calc(100% - 28px); }
  .admin-heading, .detail-heading { align-items: start; flex-direction: column; }
  .stat-grid { gap: 8px; }
  .stat-card { padding: 14px; }
  .filter-bar { align-items: stretch; flex-wrap: wrap; }
  .filter-bar > label { flex: 1 1 100%; }
  .filter-bar .button { flex: 1; }
  .application-table-wrap { overflow-x: auto; }
  .application-table { min-width: 760px; }
  .fact-grid { grid-template-columns: 1fr; }
  .contact-chip { width: 100%; }
}

@media (max-width: 430px) {
  .brand small { display: none; }
  .header-status { max-width: 88px; text-align: right; }
  .choice-grid { grid-template-columns: 1fr; }
  .choice-card { min-height: 92px; }
  .segmented { grid-template-columns: 1fr; }
  .step-labels { font-size: 9px; }
  .stat-grid { grid-template-columns: 1fr; }
  .stat-card { display: flex; justify-content: space-between; align-items: center; }
  .stat-card strong { margin: 0; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
