
/* Merentra App 2.4.0 — Pass 27 feedback links, QR collection, cohort operations and cumulative professional workspace.
 * Includes the complete Opportunities, Training, Practice, Record, Work and
 * member-controlled export foundations from earlier cumulative passes.
 */
/*
 * Merentra App 1.4.4 — job-plan reconstruction, route UI recovery, readable setup, cost-routed onboarding and mobile delivery.
 * The application surface is intentionally self-contained so WordPress theme
 * typography, spacing and button rules cannot distort the member experience.
 */

:root {
  --ma-ink: #101820;
  --ma-ink-2: #1d2a33;
  --ma-ink-3: #33434d;
  --ma-teal: #0794b1;
  --ma-teal-dark: #06788f;
  --ma-teal-soft: #e7f7fa;
  --ma-teal-pale: #f2fbfc;
  --ma-coral: #e7694b;
  --ma-coral-dark: #bd4e37;
  --ma-coral-soft: #fff0eb;
  --ma-cream: #f7f5ef;
  --ma-paper: #fffdf9;
  --ma-white: #ffffff;
  --ma-line: #dfe6e7;
  --ma-line-strong: #c9d4d6;
  --ma-muted: #64727a;
  --ma-muted-2: #7d8a91;
  --ma-positive: #16856b;
  --ma-positive-soft: #e9f7f2;
  --ma-warning: #aa6a18;
  --ma-warning-soft: #fff7e7;
  --ma-danger: #ba3d42;
  --ma-danger-soft: #fff0f1;
  --ma-shadow-xs: 0 1px 2px rgba(16, 24, 32, 0.06);
  --ma-shadow-sm: 0 8px 22px rgba(16, 24, 32, 0.07);
  --ma-shadow-md: 0 18px 50px rgba(16, 24, 32, 0.10);
  --ma-shadow-lg: 0 32px 80px rgba(16, 24, 32, 0.16);
  --ma-radius-sm: 10px;
  --ma-radius: 16px;
  --ma-radius-lg: 24px;
  --ma-radius-xl: 32px;
  --ma-sidebar-width: 264px;
  --ma-topbar-height: 88px;
  --ma-content-max: 1500px;
  --ma-font: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.merentra-app-surface,
.merentra-app-surface body {
  background: var(--ma-cream) !important;
}

body.merentra-app-surface {
  margin: 0 !important;
  min-width: 320px;
  color: var(--ma-ink);
  font-family: var(--ma-font);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.merentra-app-surface > header,
body.merentra-app-surface > footer,
body.merentra-app-surface .site-header,
body.merentra-app-surface .site-footer,
body.merentra-app-surface #site-header,
body.merentra-app-surface #site-footer,
body.merentra-app-surface .wp-site-blocks > header,
body.merentra-app-surface .wp-site-blocks > footer {
  display: none !important;
}

/* Reset only WordPress theme wrappers. Do not match the application's own
 * <main> and <article> elements: doing so would erase component padding. */
body.merentra-app-surface .entry-content,
body.merentra-app-surface .wp-block-post-content,
body.merentra-app-surface .site-main:not(.ma-main),
body.merentra-app-surface .content-area,
body.merentra-app-surface > main:not(.ma-main):not(.ma-auth-main),
body.merentra-app-surface > article:not(.ma-card) {
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
  width: 100% !important;
}

.ma-app,
.ma-auth-shell,
.ma-app *,
.ma-auth-shell * {
  box-sizing: border-box;
}

.ma-app button,
.ma-auth-shell button,
.ma-app input,
.ma-auth-shell input,
.ma-app select,
.ma-auth-shell select,
.ma-app textarea,
.ma-auth-shell textarea {
  font: inherit;
}

.ma-app button,
.ma-auth-shell button,
.ma-app a,
.ma-auth-shell a {
  -webkit-tap-highlight-color: transparent;
}

.ma-app button:focus-visible,
.ma-auth-shell button:focus-visible,
.ma-app a:focus-visible,
.ma-auth-shell a:focus-visible,
.ma-app input:focus-visible,
.ma-auth-shell input:focus-visible,
.ma-app select:focus-visible,
.ma-auth-shell select:focus-visible,
.ma-app textarea:focus-visible,
.ma-auth-shell textarea:focus-visible {
  outline: 3px solid rgba(7, 148, 177, 0.28);
  outline-offset: 2px;
}

.ma-app [hidden],
.ma-auth-shell [hidden] {
  display: none !important;
}

.ma-app h1,
.ma-app h2,
.ma-app h3,
.ma-app h4,
.ma-auth-shell h1,
.ma-auth-shell h2,
.ma-auth-shell h3,
.ma-auth-shell h4,
.ma-app p,
.ma-auth-shell p {
  margin-top: 0;
}

.ma-app h1,
.ma-app h2,
.ma-app h3,
.ma-auth-shell h1,
.ma-auth-shell h2,
.ma-auth-shell h3 {
  color: var(--ma-ink);
  font-family: var(--ma-font);
  line-height: 1.12;
  letter-spacing: -0.025em;
}

.ma-app a,
.ma-auth-shell a {
  color: var(--ma-teal-dark);
  text-decoration: none;
}

.ma-app a:hover,
.ma-auth-shell a:hover {
  color: var(--ma-ink);
}

/* Shared controls */
.ma-button {
  align-items: center;
  border: 1px solid transparent;
  border-radius: 12px;
  cursor: pointer;
  display: inline-flex;
  font-size: 14px;
  font-weight: 720;
  gap: 8px;
  justify-content: center;
  line-height: 1.2;
  min-height: 46px;
  padding: 12px 18px;
  text-decoration: none !important;
  transition: transform 150ms ease, box-shadow 150ms ease, background-color 150ms ease, border-color 150ms ease;
}

.ma-button:hover:not(:disabled) {
  transform: translateY(-1px);
}

.ma-button:active:not(:disabled) {
  transform: translateY(0);
}

.ma-button:disabled,
.ma-button[aria-busy="true"] {
  cursor: wait;
  opacity: 0.68;
}

.ma-button--primary {
  background: var(--ma-ink);
  box-shadow: 0 8px 20px rgba(16, 24, 32, 0.14);
  color: var(--ma-white) !important;
}

.ma-button--primary:hover:not(:disabled) {
  background: #22313b;
  box-shadow: 0 11px 28px rgba(16, 24, 32, 0.18);
  color: var(--ma-white) !important;
}

.ma-button--secondary {
  background: var(--ma-white);
  border-color: var(--ma-line-strong);
  color: var(--ma-ink) !important;
  box-shadow: var(--ma-shadow-xs);
}

.ma-button--secondary:hover:not(:disabled) {
  border-color: #aababc;
  box-shadow: var(--ma-shadow-sm);
}

.ma-button--danger {
  background: var(--ma-danger);
  color: var(--ma-white) !important;
}

.ma-button--danger:hover:not(:disabled) {
  background: #9f2f34;
}

.ma-button--wide {
  width: 100%;
}

.ma-text-button {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--ma-teal-dark);
  cursor: pointer;
  display: inline-flex;
  font-size: 13px;
  font-weight: 750;
  gap: 7px;
  padding: 6px 0;
}

.ma-text-button span {
  font-size: 17px;
  transition: transform 150ms ease;
}

.ma-text-button:hover span {
  transform: translateX(3px);
}

.ma-icon-button {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  color: var(--ma-ink-3);
  cursor: pointer;
  display: inline-flex;
  height: 42px;
  justify-content: center;
  line-height: 1;
  min-width: 42px;
  padding: 0;
  transition: border-color 150ms ease, background-color 150ms ease, color 150ms ease, transform 150ms ease;
}

.ma-icon-button:hover {
  background: var(--ma-paper);
  border-color: var(--ma-line-strong);
  color: var(--ma-teal-dark);
  transform: translateY(-1px);
}

.ma-icon {
  display: block;
  height: 21px;
  width: 21px;
}

.ma-eyebrow {
  color: var(--ma-teal-dark);
  display: block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.3;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.ma-pill,
.ma-status-chip,
.ma-source-badge {
  align-items: center;
  background: #eef2f2;
  border: 1px solid transparent;
  border-radius: 999px;
  color: var(--ma-ink-3);
  display: inline-flex;
  font-size: 11px;
  font-weight: 750;
  gap: 6px;
  line-height: 1;
  min-height: 27px;
  padding: 7px 10px;
  white-space: nowrap;
}

.ma-pill--teal,
.ma-status-chip--open {
  background: var(--ma-teal-soft);
  color: var(--ma-teal-dark);
}

.ma-pill--coral {
  background: var(--ma-coral-soft);
  color: var(--ma-coral-dark);
}

.ma-status-chip--staging {
  background: var(--ma-warning-soft);
  color: var(--ma-warning);
}

.ma-status-chip--closed {
  background: #eff1f2;
  color: var(--ma-muted);
}

.ma-card {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: var(--ma-radius);
  box-shadow: var(--ma-shadow-xs);
  min-width: 0;
  padding: 24px;
}

.ma-card-head {
  align-items: flex-start;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin-bottom: 20px;
}

.ma-card-head h2,
.ma-card-head h3 {
  font-size: 19px;
  margin-bottom: 6px;
}

.ma-card-head p {
  color: var(--ma-muted);
  font-size: 13px;
  line-height: 1.55;
  margin-bottom: 0;
}

.ma-card-kicker {
  color: var(--ma-muted-2);
  display: block;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0.09em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.ma-form,
.ma-auth-form {
  display: grid;
  gap: 18px;
}

.ma-form label,
.ma-auth-form label {
  color: var(--ma-ink-2);
  display: grid;
  font-size: 13px;
  font-weight: 680;
  gap: 8px;
  line-height: 1.4;
}

.ma-form label > small,
.ma-auth-form label > small {
  color: var(--ma-muted);
  font-size: 12px;
  font-weight: 480;
  margin-top: -2px;
}

.ma-form input[type="text"],
.ma-form input[type="email"],
.ma-form input[type="password"],
.ma-form input[type="search"],
.ma-form input[type="url"],
.ma-form input[type="number"],
.ma-form input[type="date"],
.ma-form input[type="time"],
.ma-form input[type="tel"],
.ma-form select,
.ma-form textarea,
.ma-auth-form input[type="text"],
.ma-auth-form input[type="email"],
.ma-auth-form input[type="password"],
.ma-auth-form select,
.ma-auth-form textarea {
  appearance: none;
  background: var(--ma-white);
  border: 1px solid var(--ma-line-strong);
  border-radius: 11px;
  color: var(--ma-ink);
  font-size: 15px;
  line-height: 1.3;
  min-height: 48px;
  padding: 12px 14px;
  transition: border-color 150ms ease, box-shadow 150ms ease, background-color 150ms ease;
  width: 100%;
}

.ma-form textarea,
.ma-auth-form textarea {
  min-height: 112px;
  resize: vertical;
}

.ma-form select,
.ma-auth-form select {
  background-image: linear-gradient(45deg, transparent 50%, var(--ma-muted) 50%), linear-gradient(135deg, var(--ma-muted) 50%, transparent 50%);
  background-position: calc(100% - 18px) calc(50% - 2px), calc(100% - 13px) calc(50% - 2px);
  background-repeat: no-repeat;
  background-size: 5px 5px, 5px 5px;
  padding-right: 38px;
}

.ma-form input:focus,
.ma-form select:focus,
.ma-form textarea:focus,
.ma-auth-form input:focus,
.ma-auth-form select:focus,
.ma-auth-form textarea:focus {
  border-color: var(--ma-teal);
  box-shadow: 0 0 0 4px rgba(7, 148, 177, 0.11);
  outline: none;
}

.ma-form input[disabled],
.ma-form select[disabled],
.ma-auth-form input[disabled] {
  background: #f4f6f5;
  color: var(--ma-muted);
  cursor: not-allowed;
}

.ma-form-grid,
.ma-form-grid--2 {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ma-form-row {
  align-items: center;
  display: flex;
  gap: 14px;
}

.ma-form-row--between {
  justify-content: space-between;
}

.ma-form-row--between > a {
  font-size: 13px;
  font-weight: 670;
}

.ma-form-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.ma-form-actions--end {
  justify-content: flex-end;
}

.ma-check {
  align-items: flex-start !important;
  cursor: pointer;
  display: flex !important;
  font-weight: 520 !important;
  gap: 10px !important;
}

.ma-check input {
  accent-color: var(--ma-teal);
  flex: 0 0 auto;
  height: 18px;
  margin: 1px 0 0;
  width: 18px;
}

.ma-check--card {
  background: var(--ma-teal-pale);
  border: 1px solid #c9e8ed;
  border-radius: 12px;
  padding: 13px 14px;
}

.ma-password-field {
  display: flex;
  position: relative;
}

.ma-password-field input {
  padding-right: 72px !important;
}

.ma-password-toggle {
  background: transparent;
  border: 0;
  color: var(--ma-teal-dark);
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  padding: 0 14px;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
}

.ma-form-error,
.ma-form-message {
  border-radius: 10px;
  font-size: 13px;
  line-height: 1.5;
  padding: 11px 13px;
}

.ma-form-error {
  background: var(--ma-danger-soft);
  border: 1px solid #f1c8cb;
  color: var(--ma-danger);
}

.ma-form-error.is-success,
.ma-form-message.is-success {
  background: var(--ma-positive-soft);
  border: 1px solid #c3e8db;
  color: var(--ma-positive);
}

.ma-form-message.is-error {
  background: var(--ma-danger-soft);
  border: 1px solid #f1c8cb;
  color: var(--ma-danger);
}

.ma-inline-notice {
  border-radius: 12px;
  font-size: 13px;
  line-height: 1.55;
  margin-bottom: 20px;
  padding: 13px 15px;
}

.ma-inline-notice--warning {
  background: var(--ma-warning-soft);
  border: 1px solid #efd9ac;
  color: #805119;
}

.ma-inline-notice--success {
  background: var(--ma-positive-soft);
  border: 1px solid #c3e8db;
  color: var(--ma-positive);
}

.ma-inline-notice > strong,
.ma-inline-notice > span {
  display: block;
}

.ma-inline-notice > strong + span {
  margin-top: 3px;
}

/* Authentication and account activation */
.ma-auth-shell {
  background: var(--ma-cream);
  color: var(--ma-ink);
  display: grid;
  grid-template-columns: minmax(420px, 0.92fr) minmax(480px, 1.08fr);
  min-height: 100dvh;
  width: 100%;
}

.ma-auth-brand {
  background:
    radial-gradient(circle at 80% 15%, rgba(7, 148, 177, 0.25), transparent 29%),
    radial-gradient(circle at 16% 90%, rgba(231, 105, 75, 0.16), transparent 31%),
    linear-gradient(145deg, #0e171e 0%, #17272f 56%, #14333b 100%);
  color: var(--ma-white);
  display: flex;
  flex-direction: column;
  isolation: isolate;
  min-height: 100dvh;
  overflow: hidden;
  padding: clamp(34px, 5vw, 68px);
  position: relative;
}

.ma-auth-brand::before,
.ma-auth-brand::after {
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 999px;
  content: "";
  height: 420px;
  pointer-events: none;
  position: absolute;
  width: 420px;
  z-index: -1;
}

.ma-auth-brand::before {
  right: -250px;
  top: 26%;
}

.ma-auth-brand::after {
  bottom: -310px;
  left: -140px;
  transform: scale(1.35);
}

.ma-brand {
  align-items: center;
  color: inherit !important;
  display: inline-flex;
  gap: 12px;
  min-width: 0;
}

.ma-brand-mark {
  color: var(--ma-teal);
  flex: 0 0 auto;
  height: 36px;
  width: 92px;
}

.ma-brand > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.ma-brand strong {
  color: inherit;
  font-size: 20px;
  font-weight: 820;
  letter-spacing: -0.03em;
}

.ma-brand small {
  color: inherit;
  font-size: 9px;
  font-weight: 580;
  letter-spacing: 0.03em;
  opacity: 0.66;
  white-space: nowrap;
}

.ma-brand--auth {
  align-self: flex-start;
  color: var(--ma-white) !important;
}

.ma-auth-brand__content {
  margin: auto 0;
  max-width: 620px;
  padding: 54px 0;
}

.ma-auth-brand__content .ma-eyebrow {
  color: #7fd8e8;
}

.ma-auth-brand__content h2 {
  color: var(--ma-white);
  font-size: clamp(36px, 4.2vw, 64px);
  line-height: 1.01;
  margin-bottom: 24px;
  max-width: 12ch;
}

.ma-auth-brand__content > p {
  color: rgba(255, 255, 255, 0.71);
  font-size: clamp(15px, 1.2vw, 18px);
  line-height: 1.65;
  max-width: 56ch;
}

.ma-auth-proof {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 44px;
}

.ma-auth-proof > div {
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  padding-top: 16px;
}

.ma-auth-proof span {
  color: #7fd8e8;
  display: block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  margin-bottom: 12px;
}

.ma-auth-proof strong {
  color: var(--ma-white);
  display: block;
  font-size: 13px;
  margin-bottom: 7px;
}

.ma-auth-proof p {
  color: rgba(255, 255, 255, 0.56);
  font-size: 11px;
  line-height: 1.45;
  margin-bottom: 0;
}

.ma-auth-brand__footer {
  align-items: center;
  color: rgba(255, 255, 255, 0.5);
  display: flex;
  flex-wrap: wrap;
  font-size: 10px;
  font-weight: 700;
  gap: 16px;
  justify-content: space-between;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ma-auth-main {
  align-items: center;
  background:
    linear-gradient(rgba(247, 245, 239, 0.9), rgba(247, 245, 239, 0.9)),
    radial-gradient(circle at 92% 8%, rgba(7, 148, 177, 0.09), transparent 28%);
  display: flex;
  justify-content: center;
  min-height: 100dvh;
  overflow-y: auto;
  padding: clamp(28px, 5vw, 76px);
}

.ma-auth-card {
  width: min(100%, 480px);
}

.ma-auth-card--activation {
  width: min(100%, 590px);
}

.ma-auth-card__head {
  margin-bottom: 28px;
}

.ma-auth-card__head h1 {
  font-size: clamp(34px, 4vw, 48px);
  margin-bottom: 14px;
}

.ma-auth-card__head p {
  color: var(--ma-muted);
  font-size: 15px;
  line-height: 1.65;
  margin-bottom: 0;
}

.ma-auth-divider {
  align-items: center;
  color: var(--ma-muted-2);
  display: flex;
  font-size: 11px;
  gap: 12px;
  justify-content: center;
  margin: 24px 0;
  text-transform: uppercase;
}

.ma-auth-divider::before,
.ma-auth-divider::after {
  background: var(--ma-line);
  content: "";
  flex: 1;
  height: 1px;
}

.ma-auth-footnote {
  color: var(--ma-muted-2);
  font-size: 11px;
  line-height: 1.55;
  margin: 20px auto 0;
  max-width: 60ch;
  text-align: center;
}

.ma-activation-context {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  display: grid;
  gap: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 24px;
  overflow: hidden;
}

.ma-activation-context > div {
  display: grid;
  gap: 5px;
  padding: 15px;
}

.ma-activation-context > div + div {
  border-left: 1px solid var(--ma-line);
}

.ma-activation-context span {
  color: var(--ma-muted-2);
  font-size: 9px;
  font-weight: 750;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.ma-activation-context strong {
  font-size: 13px;
}

.ma-auth-actions {
  display: flex;
  gap: 10px;
  margin-top: 22px;
}

/* App frame */
.ma-app {
  background: var(--ma-cream);
  color: var(--ma-ink);
  min-height: 100dvh;
  position: relative;
  width: 100%;
}

.ma-skip-link {
  background: var(--ma-ink);
  border-radius: 0 0 8px 8px;
  color: var(--ma-white) !important;
  font-size: 13px;
  font-weight: 750;
  left: 16px;
  padding: 10px 14px;
  position: fixed;
  top: -100px;
  z-index: 1000;
}

.ma-skip-link:focus-visible {
  top: 0;
}

.ma-skip-link:focus:not(:focus-visible) {
  top: -100px;
}

.ma-release-ribbon {
  align-items: center;
  background: #11232a;
  color: rgba(255, 255, 255, 0.72);
  display: flex;
  font-size: 11px;
  gap: 10px;
  min-height: 36px;
  padding: 8px 20px;
  position: relative;
  z-index: 50;
}

.ma-release-ribbon strong {
  color: var(--ma-white);
  font-size: 11px;
}

.ma-release-ribbon__dot {
  background: #5bd1a9;
  border-radius: 999px;
  box-shadow: 0 0 0 4px rgba(91, 209, 169, 0.12);
  height: 7px;
  width: 7px;
}

.ma-link-banner {
  align-items: center;
  background: var(--ma-teal-pale);
  border-bottom: 1px solid #c9e8ed;
  display: flex;
  gap: 24px;
  justify-content: space-between;
  padding: 16px 22px;
}

.ma-link-banner--warning {
  background: var(--ma-warning-soft);
  border-color: #efd9ac;
}

.ma-link-banner .ma-eyebrow {
  margin-bottom: 3px;
}

.ma-link-banner strong {
  display: block;
  font-size: 14px;
  margin-bottom: 3px;
}

.ma-link-banner p {
  color: var(--ma-muted);
  font-size: 12px;
  line-height: 1.45;
  margin-bottom: 0;
}

.ma-link-banner__actions {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 9px;
}

.ma-app-layout {
  display: grid;
  grid-template-columns: var(--ma-sidebar-width) minmax(0, 1fr);
  min-height: calc(100dvh - 36px);
}

.ma-sidebar {
  background: var(--ma-ink);
  color: var(--ma-white);
  display: flex;
  flex-direction: column;
  min-height: calc(100dvh - 36px);
  padding: 24px 16px 18px;
  position: sticky;
  top: 0;
  z-index: 30;
}

.ma-sidebar .ma-brand {
  color: var(--ma-white) !important;
  margin: 0 9px 34px;
}

.ma-sidebar .ma-brand-mark {
  height: 31px;
  width: 78px;
}

.ma-primary-nav,
.ma-secondary-nav {
  display: grid;
  gap: 5px;
}

.ma-nav-item,
.ma-mobile-nav__item {
  align-items: center;
  background: transparent;
  border: 0;
  color: rgba(255, 255, 255, 0.63);
  cursor: pointer;
  display: flex;
  font-size: 13px;
  font-weight: 660;
  gap: 12px;
  min-height: 46px;
  padding: 10px 13px;
  text-align: left;
  transition: background-color 150ms ease, color 150ms ease, transform 150ms ease;
  width: 100%;
}

.ma-nav-item {
  border-radius: 12px;
}

.ma-nav-item .ma-icon {
  height: 19px;
  opacity: 0.83;
  width: 19px;
}

.ma-nav-item:hover {
  background: rgba(255, 255, 255, 0.06);
  color: var(--ma-white);
  transform: translateX(2px);
}

.ma-nav-item.is-active {
  background: rgba(7, 148, 177, 0.18);
  color: #94e2ef;
}

.ma-nav-item.is-active::after {
  background: var(--ma-teal);
  border-radius: 999px;
  content: "";
  height: 20px;
  margin-left: auto;
  width: 3px;
}

.ma-sidebar__spacer {
  flex: 1;
  min-height: 30px;
}

.ma-user-card {
  align-items: center;
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  color: var(--ma-white);
  cursor: pointer;
  display: grid;
  gap: 10px;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  margin-top: 15px;
  padding: 11px;
  text-align: left;
  transition: background-color 150ms ease, border-color 150ms ease;
  width: 100%;
}

.ma-user-card:hover {
  background: rgba(255, 255, 255, 0.085);
  border-color: rgba(255, 255, 255, 0.14);
}

.ma-user-card > span:nth-child(2) {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.ma-user-card strong {
  color: var(--ma-white);
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ma-user-card small {
  color: rgba(255, 255, 255, 0.48);
  font-size: 10px;
}

.ma-avatar {
  align-items: center;
  background: linear-gradient(145deg, var(--ma-teal), #24b2cb);
  border-radius: 50%;
  color: var(--ma-white);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 820;
  height: 38px;
  justify-content: center;
  letter-spacing: 0.02em;
  width: 38px;
}

.ma-avatar--button {
  border: 0;
  cursor: pointer;
  display: none;
}

.ma-main {
  background:
    radial-gradient(circle at 86% -10%, rgba(7, 148, 177, 0.08), transparent 26%),
    var(--ma-cream);
  min-height: calc(100dvh - 36px);
  min-width: 0;
  overflow-x: hidden;
  padding: 0 34px 60px;
}

.ma-topbar {
  align-items: center;
  display: flex;
  gap: 24px;
  justify-content: space-between;
  min-height: var(--ma-topbar-height);
  position: relative;
}

.ma-topbar__title {
  min-width: 0;
}

.ma-topbar__title > span {
  color: var(--ma-muted-2);
  display: block;
  font-size: 10px;
  font-weight: 720;
  letter-spacing: 0.08em;
  margin-bottom: 5px;
  text-transform: uppercase;
}

.ma-topbar__title h1 {
  font-size: clamp(24px, 2.3vw, 34px);
  margin-bottom: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ma-topbar__actions {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 9px;
}

.ma-command-button {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  color: var(--ma-muted);
  cursor: pointer;
  display: flex;
  font-size: 12px;
  font-weight: 680;
  gap: 9px;
  height: 42px;
  padding: 0 10px 0 12px;
  transition: border-color 150ms ease, box-shadow 150ms ease, color 150ms ease;
}

.ma-command-button:hover {
  border-color: var(--ma-line-strong);
  box-shadow: var(--ma-shadow-sm);
  color: var(--ma-ink);
}

.ma-command-button > span:first-child {
  color: var(--ma-teal-dark);
  font-size: 16px;
}

.ma-command-button kbd {
  align-items: center;
  background: #f0f3f3;
  border: 1px solid var(--ma-line);
  border-radius: 6px;
  color: var(--ma-muted-2);
  display: inline-flex;
  font-family: inherit;
  font-size: 9px;
  height: 20px;
  justify-content: center;
  min-width: 20px;
}

.ma-loading,
.ma-noscript {
  align-items: center;
  color: var(--ma-muted);
  display: flex;
  flex-direction: column;
  font-size: 13px;
  gap: 14px;
  justify-content: center;
  min-height: 55vh;
  text-align: center;
}

.ma-loading > span {
  animation: ma-spin 850ms linear infinite;
  border: 3px solid rgba(7, 148, 177, 0.16);
  border-radius: 50%;
  border-top-color: var(--ma-teal);
  height: 32px;
  width: 32px;
}

.ma-view {
  margin: 0 auto;
  max-width: var(--ma-content-max);
}

.ma-page {
  animation: ma-fade-up 260ms ease both;
}

.ma-page-intro {
  align-items: flex-end;
  display: flex;
  gap: 24px;
  justify-content: space-between;
  margin-bottom: 24px;
}

.ma-page-intro > div:first-child {
  max-width: 760px;
}

.ma-page-intro h2 {
  font-size: clamp(24px, 2.5vw, 36px);
  margin-bottom: 10px;
}

.ma-page-intro p {
  color: var(--ma-muted);
  font-size: 14px;
  line-height: 1.65;
  margin-bottom: 0;
}

.ma-grid {
  display: grid;
  gap: 18px;
}

.ma-grid--12 {
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.ma-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ma-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ma-card--span-4 { grid-column: span 4; }
.ma-card--span-5 { grid-column: span 5; }
.ma-card--span-7 { grid-column: span 7; }
.ma-card--span-8 { grid-column: span 8; }

/* Home */
.ma-home-page {
  padding-bottom: 20px;
}

.ma-hero-card {
  background:
    radial-gradient(circle at 95% 10%, rgba(127, 216, 232, 0.22), transparent 32%),
    linear-gradient(145deg, #101820, #17323a);
  border: 0;
  color: var(--ma-white);
  overflow: hidden;
  padding: clamp(26px, 3vw, 38px);
  position: relative;
}

.ma-hero-card__content {
  max-width: 620px;
  position: relative;
  z-index: 2;
}

.ma-hero-card h2 {
  color: var(--ma-white);
  font-size: clamp(28px, 3.4vw, 44px);
  line-height: 1.05;
  margin-bottom: 15px;
}

.ma-hero-card p {
  color: rgba(255, 255, 255, 0.67);
  font-size: 14px;
  line-height: 1.65;
  margin-bottom: 0;
  max-width: 57ch;
}

.ma-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.ma-hero-card .ma-button--primary {
  background: var(--ma-teal);
}

.ma-hero-card .ma-button--secondary {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.16);
  color: var(--ma-white) !important;
}

.ma-foundation-meter {
  align-items: center;
  display: flex;
  gap: 14px;
  margin-top: 30px;
}

.ma-foundation-meter__ring {
  align-items: center;
  background: conic-gradient(var(--ma-teal) 0 33%, rgba(255, 255, 255, 0.12) 33% 100%);
  border-radius: 50%;
  display: flex;
  height: 52px;
  justify-content: center;
  position: relative;
  width: 52px;
}

.ma-foundation-meter__ring::after {
  background: #183039;
  border-radius: 50%;
  content: "";
  inset: 5px;
  position: absolute;
}

.ma-foundation-meter__ring strong {
  color: var(--ma-white);
  font-size: 11px;
  position: relative;
  z-index: 1;
}

.ma-foundation-meter > div:last-child {
  display: grid;
  gap: 3px;
}

.ma-foundation-meter > div:last-child strong {
  color: var(--ma-white);
  font-size: 12px;
}

.ma-foundation-meter > div:last-child small {
  color: rgba(255, 255, 255, 0.52);
  font-size: 10px;
}

.ma-next-duty {
  display: grid;
  gap: 20px;
}

.ma-next-duty__time {
  align-items: flex-end;
  display: flex;
  gap: 10px;
}

.ma-next-duty__time strong {
  font-size: 38px;
  line-height: 1;
  letter-spacing: -0.04em;
}

.ma-next-duty__time span {
  color: var(--ma-muted);
  font-size: 12px;
  font-weight: 680;
  padding-bottom: 4px;
}

.ma-next-duty__detail h3 {
  font-size: 17px;
  margin-bottom: 5px;
}

.ma-next-duty__detail p {
  color: var(--ma-muted);
  font-size: 12px;
  line-height: 1.5;
  margin-bottom: 0;
}

.ma-setup-list,
.ma-layer-list,
.ma-security-list,
.ma-session-list,
.ma-connector-list {
  display: grid;
  gap: 10px;
}

.ma-setup-item {
  align-items: center;
  border-bottom: 1px solid var(--ma-line);
  display: grid;
  gap: 12px;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  padding: 12px 0;
}

.ma-setup-item:last-child {
  border-bottom: 0;
}

.ma-setup-item__icon {
  align-items: center;
  background: var(--ma-teal-soft);
  border-radius: 10px;
  color: var(--ma-teal-dark);
  display: inline-flex;
  font-size: 14px;
  font-weight: 800;
  height: 36px;
  justify-content: center;
  width: 36px;
}

.ma-setup-item > span:nth-child(2) {
  display: grid;
  gap: 3px;
}

.ma-setup-item strong {
  font-size: 13px;
}

.ma-setup-item small {
  color: var(--ma-muted);
  font-size: 11px;
}

.ma-setup-item > i {
  color: var(--ma-muted-2);
  font-style: normal;
}

.ma-feature-card {
  display: flex;
  flex-direction: column;
  min-height: 210px;
}

.ma-feature-icon {
  align-items: center;
  background: var(--ma-teal-soft);
  border-radius: 13px;
  color: var(--ma-teal-dark);
  display: inline-flex;
  font-size: 17px;
  height: 42px;
  justify-content: center;
  margin-bottom: 22px;
  width: 42px;
}

.ma-feature-card:nth-child(2) .ma-feature-icon {
  background: var(--ma-coral-soft);
  color: var(--ma-coral-dark);
}

.ma-feature-card h3 {
  font-size: 17px;
  margin-bottom: 8px;
}

.ma-feature-card p {
  color: var(--ma-muted);
  flex: 1;
  font-size: 12px;
  line-height: 1.58;
}

.ma-roadmap-card {
  overflow: hidden;
}

.ma-roadmap-line {
  align-items: stretch;
  display: grid;
  gap: 0;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  margin-top: 6px;
  overflow-x: auto;
  padding-bottom: 7px;
}

.ma-roadmap-node {
  border-top: 2px solid var(--ma-line);
  display: grid;
  gap: 5px;
  min-width: 122px;
  padding: 16px 12px 0 0;
  position: relative;
}

.ma-roadmap-node::before {
  background: var(--ma-line-strong);
  border: 4px solid var(--ma-white);
  border-radius: 50%;
  content: "";
  height: 13px;
  left: 0;
  position: absolute;
  top: -8px;
  width: 13px;
}

.ma-roadmap-node > span {
  color: var(--ma-muted-2);
  font-size: 10px;
  font-weight: 800;
}

.ma-roadmap-node strong {
  font-size: 12px;
}

.ma-roadmap-node small {
  color: var(--ma-muted);
  font-size: 10px;
  line-height: 1.4;
}

.ma-roadmap-node.is-done {
  border-color: var(--ma-teal);
}

.ma-roadmap-node.is-done::before {
  background: var(--ma-teal);
}

.ma-roadmap-node.is-next::before {
  background: var(--ma-coral);
  box-shadow: 0 0 0 4px rgba(231, 105, 75, 0.12);
}

/* Onboarding */
.ma-onboarding {
  align-items: start;
  display: grid;
  gap: clamp(28px, 5vw, 80px);
  grid-template-columns: minmax(240px, 0.72fr) minmax(480px, 1.28fr);
  margin: 26px auto 0;
  max-width: 1180px;
}

.ma-onboarding-intro {
  padding: 42px 0;
  position: sticky;
  top: 40px;
}

.ma-onboarding-intro h2 {
  font-size: clamp(30px, 3.6vw, 48px);
  margin-bottom: 16px;
}

.ma-onboarding-intro > p {
  color: var(--ma-muted);
  font-size: 14px;
  line-height: 1.65;
}

.ma-onboarding-progress {
  display: grid;
  gap: 14px;
  margin-top: 34px;
}

.ma-onboarding-progress > div {
  align-items: center;
  color: var(--ma-muted);
  display: grid;
  font-size: 12px;
  gap: 10px;
  grid-template-columns: 26px minmax(0, 1fr);
}

.ma-onboarding-progress span {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line-strong);
  border-radius: 50%;
  display: inline-flex;
  font-size: 10px;
  font-weight: 800;
  height: 26px;
  justify-content: center;
  width: 26px;
}

.ma-onboarding-progress > div.is-active {
  color: var(--ma-ink);
  font-weight: 700;
}

.ma-onboarding-progress > div.is-active span,
.ma-onboarding-progress > div.is-done span {
  background: var(--ma-teal);
  border-color: var(--ma-teal);
  color: var(--ma-white);
}

.ma-onboarding-card {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: var(--ma-radius-lg);
  box-shadow: var(--ma-shadow-md);
  min-height: 580px;
  padding: clamp(26px, 4vw, 46px);
}

.ma-form-section-head {
  margin-bottom: 28px;
}

.ma-form-section-head .ma-step-number {
  color: var(--ma-teal-dark);
  display: block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.11em;
  margin-bottom: 9px;
  text-transform: uppercase;
}

.ma-form-section-head h3 {
  font-size: 27px;
  margin-bottom: 9px;
}

.ma-form-section-head p {
  color: var(--ma-muted);
  font-size: 13px;
  line-height: 1.6;
  margin-bottom: 0;
}

.ma-inline-context {
  align-items: flex-start;
  background: var(--ma-teal-pale);
  border: 1px solid #c9e8ed;
  border-radius: 12px;
  color: var(--ma-ink-3);
  display: flex;
  font-size: 12px;
  gap: 10px;
  line-height: 1.55;
  padding: 13px 14px;
}

.ma-choice-fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

.ma-choice-fieldset legend {
  font-size: 13px;
  font-weight: 760;
  margin-bottom: 11px;
}

.ma-choice-cards {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ma-choice-card {
  cursor: pointer;
  display: block;
  position: relative;
}

.ma-choice-card input {
  opacity: 0;
  pointer-events: none;
  position: absolute;
}

.ma-choice-card > span {
  background: var(--ma-white);
  border: 1px solid var(--ma-line-strong);
  border-radius: 13px;
  display: grid;
  gap: 6px;
  min-height: 112px;
  padding: 16px;
  transition: border-color 150ms ease, box-shadow 150ms ease, background-color 150ms ease, transform 150ms ease;
}

.ma-choice-card > span strong {
  font-size: 13px;
}

.ma-choice-card > span small {
  color: var(--ma-muted);
  font-size: 10px;
  font-weight: 500;
  line-height: 1.45;
}

.ma-choice-card:hover > span {
  border-color: #9dcdd5;
  transform: translateY(-1px);
}

.ma-choice-card input:checked + span {
  background: var(--ma-teal-pale);
  border-color: var(--ma-teal);
  box-shadow: 0 0 0 3px rgba(7, 148, 177, 0.10);
}

.ma-choice-card input:focus-visible + span {
  outline: 3px solid rgba(7, 148, 177, 0.23);
  outline-offset: 2px;
}

.ma-boundary-panel {
  background: var(--ma-ink);
  border-radius: 16px;
  color: var(--ma-white);
  display: grid;
  gap: 14px;
  grid-template-columns: 45px minmax(0, 1fr);
  padding: 20px;
}

.ma-boundary-panel--muted {
  background: #eef2f2;
  color: var(--ma-ink);
}

.ma-boundary-panel__icon {
  align-items: center;
  background: rgba(7, 148, 177, 0.2);
  border-radius: 12px;
  color: #91ddeb;
  display: inline-flex;
  font-size: 19px;
  font-weight: 850;
  height: 45px;
  justify-content: center;
  width: 45px;
}

.ma-boundary-panel strong {
  color: inherit;
  display: block;
  font-size: 14px;
  margin-bottom: 6px;
}

.ma-boundary-panel p {
  color: inherit;
  font-size: 11px;
  line-height: 1.55;
  margin-bottom: 0;
  opacity: 0.67;
}

.ma-review-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ma-data-summary {
  background: var(--ma-paper);
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: grid;
  gap: 6px;
  padding: 15px;
}

.ma-data-summary span {
  color: var(--ma-muted-2);
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.ma-data-summary strong {
  font-size: 13px;
}

.ma-data-summary small {
  color: var(--ma-muted);
  font-size: 10px;
  line-height: 1.45;
}

.ma-terms-confirmed {
  align-items: flex-start;
  background: var(--ma-positive-soft);
  border: 1px solid #c3e8db;
  border-radius: 12px;
  color: var(--ma-positive);
  display: flex;
  font-size: 12px;
  gap: 9px;
  line-height: 1.5;
  padding: 13px 14px;
}

/* Work */
.ma-page-intro--work {
  align-items: center;
}

.ma-subnav {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: flex;
  gap: 4px;
  margin-bottom: 20px;
  overflow-x: auto;
  padding: 4px;
  scrollbar-width: none;
}

.ma-subnav::-webkit-scrollbar {
  display: none;
}

.ma-subnav button {
  background: transparent;
  border: 0;
  border-radius: 9px;
  color: var(--ma-muted);
  cursor: pointer;
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 680;
  min-height: 38px;
  padding: 9px 15px;
  white-space: nowrap;
}

.ma-subnav button:hover {
  color: var(--ma-ink);
}

.ma-subnav button.is-active {
  background: var(--ma-white);
  box-shadow: var(--ma-shadow-xs);
  color: var(--ma-ink);
}

.ma-work-panel {
  animation: ma-fade-up 220ms ease both;
}

.ma-impact-strip {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 18px;
}

.ma-impact-strip > div {
  background: rgba(255, 255, 255, 0.74);
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  display: grid;
  gap: 5px;
  padding: 13px 15px;
}

.ma-impact-strip span {
  color: var(--ma-muted-2);
  font-size: 9px;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ma-impact-strip strong {
  font-size: 13px;
}

.ma-today-empty {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 0.55fr);
}

.ma-empty-state {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 390px;
  padding: 34px;
  text-align: center;
}

.ma-empty-illustration {
  color: #a9c6cc;
  margin-bottom: 22px;
  width: 126px;
}

.ma-empty-illustration svg {
  display: block;
  fill: rgba(7, 148, 177, 0.10);
  height: auto;
  width: 100%;
}

.ma-empty-state > strong {
  font-size: 18px;
  margin-bottom: 9px;
}

.ma-empty-state > p {
  color: var(--ma-muted);
  font-size: 12px;
  line-height: 1.6;
  margin-bottom: 18px;
  max-width: 48ch;
}

.ma-sample-empty-toggle {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 390px;
  padding: 28px;
  text-align: center;
}

.ma-sample-empty-toggle h3 {
  font-size: 18px;
  margin-bottom: 8px;
}

.ma-sample-empty-toggle p {
  color: var(--ma-muted);
  font-size: 12px;
  line-height: 1.55;
  margin-bottom: 20px;
}

.ma-sample-switch {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: 12px;
  font-weight: 720;
  gap: 10px;
}

.ma-sample-switch input,
.ma-toggle input {
  accent-color: var(--ma-teal);
}

.ma-mini-duty {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  display: grid;
  gap: 15px;
  grid-template-columns: 65px minmax(0, 1fr);
  padding: 15px;
  text-align: left;
  width: 100%;
}

.ma-mini-duty > div:first-child {
  border-right: 1px solid var(--ma-line);
  display: grid;
  gap: 4px;
  padding-right: 14px;
}

.ma-mini-duty span {
  color: var(--ma-teal-dark);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.1em;
}

.ma-mini-duty strong {
  font-size: 15px;
}

.ma-mini-duty p {
  color: var(--ma-muted);
  font-size: 10px;
  margin: 4px 0 0;
}

.ma-sample-disclaimer {
  color: var(--ma-muted-2);
  font-size: 10px;
  margin-top: 8px;
  text-align: center;
}

.ma-layer-key {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
}

.ma-layer-key > span {
  align-items: center;
  color: var(--ma-muted);
  display: inline-flex;
  font-size: 10px;
  font-weight: 680;
  gap: 6px;
}

.ma-activity-dot {
  background: var(--ma-line-strong);
  border-radius: 50%;
  display: inline-block;
  flex: 0 0 auto;
  height: 9px;
  width: 9px;
}

.ma-activity-dot--plan { background: var(--ma-teal); }
.ma-activity-dot--live { background: var(--ma-coral); }
.ma-activity-dot--personal { background: #8467bd; }
.ma-activity-dot--actual { background: var(--ma-positive); }

.ma-timetable-card {
  overflow: hidden;
  padding: 0;
}

.ma-timetable-card .ma-card-head {
  margin: 0;
  padding: 20px 22px;
}

.ma-timetable-actions {
  align-items: center;
  display: flex;
  gap: 10px;
}

.ma-week-grid {
  display: grid;
  grid-template-columns: 70px repeat(5, minmax(135px, 1fr));
  min-width: 760px;
  overflow: hidden;
}

.ma-week-grid__day,
.ma-week-grid__time,
.ma-week-session {
  border-left: 1px solid var(--ma-line);
  border-top: 1px solid var(--ma-line);
  min-height: 84px;
  padding: 12px;
}

.ma-week-grid__day {
  align-items: center;
  background: #f4f7f6;
  display: flex;
  font-size: 11px;
  font-weight: 760;
  justify-content: center;
  min-height: 43px;
  text-align: center;
}

.ma-week-grid__day:first-child,
.ma-week-grid__time {
  border-left: 0;
}

.ma-week-grid__time {
  align-items: flex-start;
  background: #fafbf9;
  color: var(--ma-muted-2);
  display: flex;
  font-size: 12px;
  font-weight: 800;
  justify-content: center;
  letter-spacing: 0.08em;
  padding-top: 16px;
  text-transform: uppercase;
}

.ma-week-session {
  background: var(--ma-white);
  display: grid;
  align-content: start;
  gap: 5px;
  position: relative;
}

.ma-week-session::before {
  background: var(--ma-teal);
  border-radius: 0 3px 3px 0;
  content: "";
  height: calc(100% - 18px);
  left: 0;
  position: absolute;
  top: 9px;
  width: 3px;
}

.ma-week-session strong {
  font-size: 11px;
  line-height: 1.35;
}

.ma-week-session small {
  color: var(--ma-muted);
  font-size: 9px;
  line-height: 1.45;
}

.ma-week-session.is-spa::before { background: #e1b83f; }
.ma-week-session.is-secondary-site::before { background: var(--ma-positive); }
.ma-week-session.is-admin::before { background: #8769b9; }
.ma-week-session.is-free,
.ma-week-session.is-undefined {
  align-content: center;
  background: #fafbf9;
  color: var(--ma-muted-2);
  justify-items: center;
  text-align: center;
}

.ma-week-session.is-free::before,
.ma-week-session.is-undefined::before {
  display: none;
}

.ma-week-session.is-undefined {
  background-image: repeating-linear-gradient(135deg, transparent, transparent 8px, rgba(16, 24, 32, 0.025) 8px, rgba(16, 24, 32, 0.025) 16px);
}

.ma-timetable-footer {
  align-items: center;
  background: #f7f9f8;
  border-top: 1px solid var(--ma-line);
  color: var(--ma-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 10px;
  gap: 12px;
  justify-content: space-between;
  padding: 13px 20px;
}

.ma-timetable-footer strong {
  color: var(--ma-ink);
}

.ma-layer-row {
  align-items: center;
  border-bottom: 1px solid var(--ma-line);
  display: grid;
  gap: 11px;
  grid-template-columns: 11px minmax(0, 1fr) auto;
  padding: 12px 0;
}

.ma-layer-row:last-child {
  border-bottom: 0;
}

.ma-layer-row > span {
  display: grid;
  gap: 3px;
}

.ma-layer-row strong {
  font-size: 12px;
}

.ma-layer-row small {
  color: var(--ma-muted);
  font-size: 10px;
}

.ma-layer-row b {
  color: var(--ma-muted-2);
  font-weight: 400;
}

.ma-jobplan-preview {
  display: grid;
  gap: 0;
}

.ma-jobplan-preview__head,
.ma-jobplan-preview__row {
  align-items: center;
  border-bottom: 1px solid var(--ma-line);
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(100px, 1fr) repeat(3, minmax(70px, 0.55fr));
  padding: 12px 0;
}

.ma-jobplan-preview__head {
  color: var(--ma-muted-2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ma-jobplan-preview__row:last-child {
  border-bottom: 0;
}

.ma-jobplan-preview__row strong,
.ma-jobplan-preview__row span {
  font-size: 11px;
}

.ma-jobplan-preview__row span {
  color: var(--ma-muted);
}

.ma-import-drop {
  align-items: center;
  border: 1px dashed #a7bcc0;
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 280px;
  padding: 30px;
  text-align: center;
}

.ma-import-drop--disabled {
  background: #fafbf9;
}

.ma-import-drop .ma-empty-illustration {
  margin-bottom: 14px;
  width: 85px;
}

.ma-import-drop strong {
  font-size: 16px;
  margin-bottom: 7px;
}

.ma-import-drop p {
  color: var(--ma-muted);
  font-size: 11px;
  line-height: 1.55;
  max-width: 48ch;
}

.ma-disabled-note {
  align-items: center;
  background: var(--ma-warning-soft);
  border: 1px solid #efd9ac;
  border-radius: 12px;
  color: #805119;
  display: flex;
  font-size: 11px;
  gap: 9px;
  line-height: 1.5;
  padding: 11px 13px;
}

.ma-connector-row {
  align-items: center;
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  display: grid;
  gap: 12px;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  padding: 12px;
}

.ma-connector-row > span {
  align-items: center;
  background: #eff4f4;
  border-radius: 9px;
  color: var(--ma-ink-3);
  display: inline-flex;
  font-size: 11px;
  font-weight: 820;
  height: 36px;
  justify-content: center;
  width: 36px;
}

.ma-connector-row > div {
  display: grid;
  gap: 3px;
}

.ma-connector-row strong {
  font-size: 12px;
}

.ma-connector-row small {
  color: var(--ma-muted);
  font-size: 10px;
}

.ma-connector-row button {
  background: #f1f4f4;
  border: 0;
  border-radius: 999px;
  color: var(--ma-muted);
  cursor: pointer;
  font-size: 9px;
  font-weight: 780;
  padding: 7px 9px;
}

.ma-insight-card {
  display: flex;
  flex-direction: column;
  min-height: 230px;
}

.ma-insight-chart {
  align-items: end;
  display: flex;
  gap: 5px;
  height: 56px;
  margin-bottom: 22px;
}

.ma-insight-chart i {
  background: var(--ma-teal-soft);
  border-radius: 4px 4px 0 0;
  display: block;
  flex: 1;
}

.ma-insight-chart i:nth-child(1) { height: 36%; }
.ma-insight-chart i:nth-child(2) { height: 68%; }
.ma-insight-chart i:nth-child(3) { height: 48%; }
.ma-insight-chart i:nth-child(4) { height: 88%; background: rgba(7, 148, 177, 0.45); }

.ma-insight-card h3 {
  font-size: 16px;
  margin-bottom: 8px;
}

.ma-insight-card p {
  color: var(--ma-muted);
  flex: 1;
  font-size: 11px;
  line-height: 1.55;
}

.ma-insight-explainer {
  background: var(--ma-ink);
  color: var(--ma-white);
  margin-top: 18px;
}

.ma-insight-explainer h3 {
  color: var(--ma-white);
}

.ma-insight-explainer p {
  color: rgba(255, 255, 255, 0.65);
}

.ma-metric-stack {
  display: grid;
  gap: 10px;
}

.ma-metric-stack > div {
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.11);
  display: flex;
  font-size: 11px;
  gap: 16px;
  justify-content: space-between;
  padding: 10px 0;
}

.ma-metric-stack > div:last-child {
  border-bottom: 0;
}

.ma-metric-stack span {
  color: rgba(255, 255, 255, 0.57);
}

.ma-metric-stack strong {
  color: var(--ma-white);
}

/* Record */
.ma-record-card {
  display: flex;
  flex-direction: column;
  min-height: 230px;
}

.ma-record-symbol {
  align-items: center;
  background: #eef7f8;
  border-radius: 13px;
  color: var(--ma-teal-dark);
  display: inline-flex;
  font-size: 24px;
  font-weight: 380;
  height: 44px;
  justify-content: center;
  margin-bottom: 24px;
  width: 44px;
}

.ma-record-card h3 {
  font-size: 16px;
  margin-bottom: 8px;
}

.ma-record-card p {
  color: var(--ma-muted);
  flex: 1;
  font-size: 11px;
  line-height: 1.55;
}

.ma-record-card .ma-pill {
  align-self: flex-start;
}

.ma-bridge-card {
  align-items: center;
  background: linear-gradient(120deg, var(--ma-teal-pale), var(--ma-white));
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, 0.65fr);
  margin-top: 18px;
  padding: clamp(24px, 3vw, 36px);
}

.ma-bridge-card h3 {
  font-size: 22px;
  margin-bottom: 9px;
}

.ma-bridge-card p {
  color: var(--ma-muted);
  font-size: 12px;
  line-height: 1.6;
  margin-bottom: 0;
}

.ma-proposal-grid {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ma-proposal-grid > div {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 11px;
  display: flex;
  font-size: 10px;
  font-weight: 720;
  justify-content: center;
  min-height: 60px;
  padding: 10px;
  text-align: center;
}

.ma-proposal-grid > span {
  color: var(--ma-teal-dark);
  font-size: 16px;
  text-align: center;
}

/* Mara */
.ma-mara-hero {
  align-items: center;
  background:
    radial-gradient(circle at 85% 10%, rgba(7, 148, 177, 0.18), transparent 28%),
    linear-gradient(135deg, #101820, #17333b);
  border-radius: var(--ma-radius-lg);
  color: var(--ma-white);
  display: grid;
  gap: 32px;
  grid-template-columns: minmax(0, 1fr) 180px;
  margin-bottom: 18px;
  overflow: hidden;
  padding: clamp(28px, 4vw, 50px);
}

.ma-mara-hero .ma-eyebrow {
  color: #87dceb;
}

.ma-mara-hero h2 {
  color: var(--ma-white);
  font-size: clamp(28px, 3.7vw, 46px);
  margin-bottom: 14px;
}

.ma-mara-hero p {
  color: rgba(255, 255, 255, 0.67);
  font-size: 13px;
  line-height: 1.65;
  margin-bottom: 0;
  max-width: 62ch;
}

.ma-mara-orb {
  align-items: center;
  background: radial-gradient(circle at 36% 28%, #5cc6db, var(--ma-teal) 45%, #075666 100%);
  border-radius: 50%;
  box-shadow: 0 20px 60px rgba(7, 148, 177, 0.25), inset 0 0 0 1px rgba(255, 255, 255, 0.26);
  color: var(--ma-white);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 18px;
  font-weight: 850;
  height: 58px;
  justify-content: center;
  width: 58px;
}

.ma-mara-orb--large {
  font-size: 38px;
  height: 126px;
  justify-self: center;
  width: 126px;
}

.ma-principle-card > span {
  color: var(--ma-teal);
  display: block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
  margin-bottom: 22px;
}

.ma-principle-card h3 {
  font-size: 16px;
  margin-bottom: 8px;
}

.ma-principle-card p {
  color: var(--ma-muted);
  font-size: 11px;
  line-height: 1.58;
  margin-bottom: 0;
}

.ma-mara-demo {
  margin-top: 18px;
}

.ma-guardrail {
  align-items: flex-start;
  border-bottom: 1px solid var(--ma-line);
  display: grid;
  gap: 14px;
  grid-template-columns: 30px minmax(0, 1fr);
  padding: 14px 0;
}

.ma-guardrail:last-child {
  border-bottom: 0;
}

.ma-guardrail > span {
  align-items: center;
  background: var(--ma-positive-soft);
  border-radius: 50%;
  color: var(--ma-positive);
  display: inline-flex;
  font-size: 12px;
  font-weight: 850;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.ma-guardrail strong {
  display: block;
  font-size: 13px;
  margin-bottom: 4px;
}

.ma-guardrail p {
  color: var(--ma-muted);
  font-size: 11px;
  line-height: 1.5;
  margin-bottom: 0;
}

/* Settings */
.ma-subnav--settings {
  margin-bottom: 18px;
}

.ma-settings-columns {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.38fr) minmax(280px, 0.62fr);
}

.ma-settings-panel {
  display: grid;
  gap: 18px;
}

.ma-muted-copy {
  color: var(--ma-muted);
  font-size: 11px;
  line-height: 1.55;
}

.ma-callout {
  align-items: flex-start;
  background: var(--ma-teal-pale);
  border: 1px solid #c9e8ed;
  border-radius: 12px;
  display: flex;
  gap: 11px;
  padding: 13px 14px;
}

.ma-callout > span {
  color: var(--ma-teal-dark);
  font-size: 16px;
  font-weight: 850;
}

.ma-callout strong {
  display: block;
  font-size: 12px;
  margin-bottom: 3px;
}

.ma-callout p {
  color: var(--ma-muted);
  font-size: 10px;
  line-height: 1.5;
  margin-bottom: 0;
}

.ma-toggle-stack {
  display: grid;
  gap: 0;
}

.ma-toggle {
  align-items: center;
  border-bottom: 1px solid var(--ma-line);
  cursor: pointer;
  display: grid;
  gap: 13px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 13px 0;
}

.ma-toggle:last-child {
  border-bottom: 0;
}

.ma-toggle > span:first-child {
  display: grid;
  gap: 3px;
}

.ma-toggle strong {
  font-size: 12px;
}

.ma-toggle small {
  color: var(--ma-muted);
  font-size: 10px;
  line-height: 1.45;
}

.ma-toggle input {
  opacity: 0;
  pointer-events: none;
  position: absolute;
}

.ma-toggle__switch {
  background: #ced7d8;
  border-radius: 999px;
  display: block;
  height: 24px;
  position: relative;
  transition: background-color 150ms ease;
  width: 42px;
}

.ma-toggle__switch::after {
  background: var(--ma-white);
  border-radius: 50%;
  box-shadow: 0 1px 4px rgba(16, 24, 32, 0.24);
  content: "";
  height: 18px;
  left: 3px;
  position: absolute;
  top: 3px;
  transition: transform 150ms ease;
  width: 18px;
}

.ma-toggle input:checked + .ma-toggle__switch {
  background: var(--ma-teal);
}

.ma-toggle input:checked + .ma-toggle__switch::after {
  transform: translateX(18px);
}

.ma-toggle input:disabled + .ma-toggle__switch {
  opacity: 0.48;
}

.ma-session-row {
  align-items: center;
  border-bottom: 1px solid var(--ma-line);
  display: grid;
  gap: 12px;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  padding: 12px 0;
}

.ma-session-row:last-child {
  border-bottom: 0;
}

.ma-device-icon {
  align-items: center;
  background: #eef3f3;
  border-radius: 10px;
  color: var(--ma-ink-3);
  display: inline-flex;
  font-size: 17px;
  height: 36px;
  justify-content: center;
  width: 36px;
}

.ma-session-row > div {
  display: grid;
  gap: 3px;
}

.ma-session-row strong {
  font-size: 12px;
}

.ma-session-row small {
  color: var(--ma-muted);
  font-size: 10px;
  line-height: 1.4;
}

.ma-danger-card {
  border-color: #efc7ca;
}

.ma-danger-card h3 {
  color: var(--ma-danger);
}

.ma-danger-card p {
  color: var(--ma-muted);
  font-size: 11px;
  line-height: 1.55;
}

.ma-erased-state {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 70vh;
  text-align: center;
}

.ma-erased-icon {
  align-items: center;
  background: #eef3f3;
  border-radius: 50%;
  color: var(--ma-muted);
  display: flex;
  font-size: 28px;
  height: 76px;
  justify-content: center;
  margin-bottom: 24px;
  width: 76px;
}

.ma-erased-state h2 {
  font-size: 30px;
  margin-bottom: 10px;
}

.ma-erased-state > p {
  color: var(--ma-muted);
  font-size: 13px;
  line-height: 1.6;
  max-width: 58ch;
}

.ma-erased-summary {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  display: grid;
  gap: 10px;
  margin: 22px 0;
  padding: 18px;
  text-align: left;
  width: min(100%, 520px);
}

.ma-erased-summary > div {
  align-items: center;
  display: flex;
  font-size: 11px;
  gap: 15px;
  justify-content: space-between;
}

.ma-erased-summary span {
  color: var(--ma-muted);
}

.ma-reactivate-form {
  display: grid;
  gap: 14px;
  width: min(100%, 520px);
}

/* Mara command palette, dialogs and toasts */
.ma-dialog-backdrop {
  background: rgba(8, 14, 18, 0.48);
  inset: 0;
  position: fixed;
  z-index: 800;
}

.ma-command-palette {
  background: var(--ma-paper);
  border: 1px solid rgba(255, 255, 255, 0.58);
  border-radius: 22px;
  box-shadow: var(--ma-shadow-lg);
  left: 50%;
  max-height: min(680px, calc(100dvh - 40px));
  overflow-y: auto;
  padding: 26px;
  position: fixed;
  top: 10vh;
  transform: translateX(-50%);
  width: min(720px, calc(100vw - 32px));
  z-index: 810;
}

.ma-command-palette__head {
  align-items: flex-start;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin-bottom: 20px;
}

.ma-command-palette__head .ma-eyebrow {
  margin-bottom: 4px;
}

.ma-command-palette__head h2 {
  font-size: 24px;
  margin-bottom: 0;
}

.ma-mara-disabled {
  align-items: flex-start;
  background: var(--ma-ink);
  border-radius: 16px;
  color: var(--ma-white);
  display: grid;
  gap: 16px;
  grid-template-columns: 58px minmax(0, 1fr);
  padding: 20px;
}

.ma-mara-disabled strong {
  color: var(--ma-white);
  display: block;
  font-size: 14px;
  margin-bottom: 7px;
}

.ma-mara-disabled p {
  color: rgba(255, 255, 255, 0.62);
  font-size: 11px;
  line-height: 1.6;
  margin-bottom: 0;
}

.ma-command-suggestions {
  display: grid;
  gap: 8px;
  margin-top: 16px;
}

.ma-command-suggestions button {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  color: var(--ma-ink-3);
  cursor: pointer;
  font-size: 12px;
  padding: 13px 15px;
  text-align: left;
}

.ma-command-suggestions button:hover {
  border-color: #a8ced5;
  color: var(--ma-teal-dark);
}

.ma-toast-region {
  bottom: 24px;
  display: grid;
  gap: 8px;
  max-width: min(380px, calc(100vw - 32px));
  pointer-events: none;
  position: fixed;
  right: 24px;
  z-index: 900;
}

.ma-toast {
  animation: ma-toast-in 220ms ease both;
  background: var(--ma-ink);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  box-shadow: var(--ma-shadow-md);
  color: var(--ma-white);
  font-size: 12px;
  line-height: 1.45;
  padding: 13px 15px;
}

.ma-toast--error {
  background: var(--ma-danger);
}

.ma-mobile-nav {
  display: none;
}

.ma-error-state {
  max-width: 480px;
}

.ma-error-state strong {
  color: var(--ma-ink);
  display: block;
  font-size: 18px;
  margin-bottom: 8px;
}

.ma-error-state p {
  line-height: 1.55;
}

/* Responsive */
@media (max-width: 1180px) {
  :root { --ma-sidebar-width: 230px; }
  .ma-main { padding-left: 24px; padding-right: 24px; }
  .ma-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ma-card--span-4 { grid-column: span 6; }
  .ma-card--span-5 { grid-column: span 6; }
  .ma-card--span-7 { grid-column: span 6; }
  .ma-card--span-8 { grid-column: span 12; }
  .ma-auth-proof { grid-template-columns: 1fr; }
  .ma-auth-proof > div { display: grid; grid-template-columns: 32px minmax(0,1fr); gap: 4px 10px; }
  .ma-auth-proof > div p { grid-column: 2; }
  .ma-today-empty { grid-template-columns: 1fr; }
  .ma-sample-empty-toggle { min-height: 250px; }
}

@media (max-width: 960px) {
  .ma-auth-shell { grid-template-columns: 1fr; }
  .ma-auth-brand { min-height: auto; padding: 28px 30px 32px; }
  .ma-auth-brand__content { margin: 40px 0 18px; padding: 0; }
  .ma-auth-brand__content h2 { font-size: clamp(32px, 6vw, 48px); max-width: 15ch; }
  .ma-auth-brand__content > p { font-size: 14px; }
  .ma-auth-proof { display: none; }
  .ma-auth-brand__footer { margin-top: 30px; }
  .ma-auth-main { min-height: auto; padding: 50px 28px 70px; }
  .ma-onboarding { grid-template-columns: 1fr; margin-top: 0; }
  .ma-onboarding-intro { padding: 12px 0 0; position: static; }
  .ma-onboarding-intro > p { max-width: 68ch; }
  .ma-onboarding-progress { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .ma-onboarding-progress > div { grid-template-columns: 24px minmax(0,1fr); }
  .ma-bridge-card { grid-template-columns: 1fr; }
  .ma-settings-columns { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
  body.merentra-app-surface { padding-bottom: env(safe-area-inset-bottom); }
  .ma-release-ribbon { align-items: flex-start; flex-wrap: wrap; gap: 6px 9px; padding: 9px 14px; }
  .ma-release-ribbon > span:last-child { flex-basis: calc(100% - 20px); margin-left: 17px; }
  .ma-link-banner { align-items: flex-start; flex-direction: column; padding: 14px 16px; }
  .ma-app-layout { display: block; min-height: calc(100dvh - 36px); }
  .ma-sidebar { display: none; }
  .ma-main { min-height: calc(100dvh - 36px); padding: 0 16px calc(92px + env(safe-area-inset-bottom)); }
  .ma-topbar { min-height: 78px; }
  .ma-topbar__title h1 { font-size: 25px; }
  .ma-command-button > span:nth-child(2), .ma-command-button kbd { display: none; }
  .ma-command-button { justify-content: center; padding: 0; width: 42px; }
  .ma-avatar--button { display: inline-flex; }
  .ma-page-intro { align-items: flex-start; flex-direction: column; gap: 14px; }
  .ma-page-intro h2 { font-size: 27px; }
  .ma-grid--12 { grid-template-columns: 1fr; }
  .ma-card--span-4, .ma-card--span-5, .ma-card--span-7, .ma-card--span-8 { grid-column: auto; }
  .ma-grid--3, .ma-grid--4 { grid-template-columns: 1fr; }
  .ma-impact-strip { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .ma-mobile-nav {
    align-items: center;
    background: rgba(16, 24, 32, 0.97);
    bottom: 0;
    display: grid;
    grid-template-columns: repeat(6, minmax(0,1fr));
    left: 0;
    padding: 6px max(8px, env(safe-area-inset-left)) calc(6px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-right));
    position: fixed;
    right: 0;
    z-index: 300;
  }
  .ma-mobile-nav__item {
    border-radius: 10px;
    flex-direction: column;
    font-size: 9px;
    gap: 3px;
    justify-content: center;
    min-height: 56px;
    padding: 6px 2px;
    text-align: center;
  }
  .ma-mobile-nav__item .ma-icon { height: 19px; width: 19px; }
  .ma-mobile-nav__item.is-active { background: rgba(7,148,177,.18); color: #8fdce9; }
  .ma-mara-hero { grid-template-columns: 1fr; }
  .ma-mara-orb--large { height: 96px; justify-self: start; width: 96px; }
  .ma-command-palette { bottom: calc(76px + env(safe-area-inset-bottom)); max-height: calc(100dvh - 100px); top: auto; }
  .ma-toast-region { bottom: calc(82px + env(safe-area-inset-bottom)); left: 16px; right: 16px; max-width: none; }
}

@media (max-width: 620px) {
  .ma-auth-brand { padding: 24px 20px 28px; }
  .ma-auth-brand__content { margin: 36px 0 10px; }
  .ma-auth-brand__content h2 { font-size: 34px; }
  .ma-auth-brand__footer { align-items: flex-start; flex-direction: column; gap: 6px; }
  .ma-auth-main { padding: 38px 18px 60px; }
  .ma-auth-card__head h1 { font-size: 34px; }
  .ma-form-grid, .ma-form-grid--2 { grid-template-columns: 1fr; }
  .ma-form-row--between { align-items: flex-start; flex-direction: column; }
  .ma-activation-context { grid-template-columns: 1fr; }
  .ma-activation-context > div + div { border-left: 0; border-top: 1px solid var(--ma-line); }
  .ma-link-banner__actions { width: 100%; }
  .ma-link-banner__actions .ma-button { flex: 1; }
  .ma-main { padding-left: 12px; padding-right: 12px; }
  .ma-topbar__title > span { display: none; }
  .ma-topbar__title h1 { font-size: 23px; }
  .ma-icon-button--notification { display: none; }
  .ma-card { padding: 18px; }
  .ma-hero-card { padding: 24px 20px; }
  .ma-hero-card h2 { font-size: 30px; }
  .ma-foundation-meter { align-items: flex-start; }
  .ma-choice-cards { grid-template-columns: 1fr; }
  .ma-choice-card > span { min-height: auto; }
  .ma-onboarding-progress > div { display: flex; }
  .ma-onboarding-progress > div > :last-child { display: none; }
  .ma-onboarding-progress { display: flex; }
  .ma-onboarding-card { min-height: 0; padding: 22px 18px; }
  .ma-form-section-head h3 { font-size: 23px; }
  .ma-review-grid { grid-template-columns: 1fr; }
  .ma-impact-strip { grid-template-columns: 1fr 1fr; }
  .ma-page-intro p { font-size: 13px; }
  .ma-timetable-card { overflow-x: auto; }
  .ma-timetable-card .ma-card-head, .ma-timetable-footer { min-width: 760px; }
  .ma-bridge-card { padding: 20px; }
  .ma-proposal-grid { grid-template-columns: 1fr; }
  .ma-proposal-grid > span { transform: rotate(90deg); }
  .ma-command-palette { border-radius: 18px 18px 0 0; bottom: calc(68px + env(safe-area-inset-bottom)); left: 0; max-height: calc(100dvh - 84px); padding: 20px 16px; transform: none; width: 100%; }
  .ma-mara-disabled { grid-template-columns: 48px minmax(0,1fr); padding: 16px; }
  .ma-mara-disabled .ma-mara-orb { height: 48px; width: 48px; }
  .ma-session-row { align-items: start; grid-template-columns: 36px minmax(0,1fr); }
  .ma-session-row .ma-pill { grid-column: 2; justify-self: start; }
  .ma-form-actions { align-items: stretch; flex-direction: column; }
  .ma-form-actions .ma-button { width: 100%; }
}

@media (max-width: 390px) {
  .ma-release-ribbon > span:last-child { display: none; }
  .ma-impact-strip { grid-template-columns: 1fr; }
  .ma-mobile-nav__item { font-size: 8px; }
  .ma-auth-card__head h1 { font-size: 31px; }
  .ma-brand small { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .ma-app *,
  .ma-auth-shell * {
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 1ms !important;
  }
}

@media (prefers-contrast: more) {
  :root {
    --ma-line: #aebcbe;
    --ma-line-strong: #809297;
    --ma-muted: #48565e;
  }
  .ma-button--primary { background: #000; }
}

@keyframes ma-spin { to { transform: rotate(360deg); } }
@keyframes ma-fade-up { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes ma-toast-in { from { opacity: 0; transform: translateY(8px) scale(.98); } to { opacity: 1; transform: translateY(0) scale(1); } }

/* Secure application UX hardening: clear controls and compact mobile progression. */
.ma-home-page > .ma-grid,
.ma-home-page > .ma-roadmap-card {
  margin-top: 18px;
}

.ma-setup-item {
  appearance: none;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--ma-line);
  color: inherit;
  cursor: pointer;
  font: inherit;
  text-align: left;
  width: 100%;
}

.ma-setup-item:hover,
.ma-setup-item:focus-visible {
  background: #f8faf9;
  border-radius: 11px;
  outline: 0;
}

.ma-sample-switch {
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  flex: 0 0 auto;
  padding: 10px 12px;
}

.ma-sample-switch > span {
  display: grid;
  gap: 2px;
}

.ma-sample-switch strong {
  color: var(--ma-ink-2);
  font-size: 12px;
  line-height: 1.25;
}

.ma-sample-switch small {
  color: var(--ma-muted);
  font-size: 10px;
  font-weight: 520;
  line-height: 1.35;
}

.ma-subnav button > span {
  background: var(--ma-coral-soft);
  border-radius: 999px;
  color: var(--ma-coral-dark);
  display: inline-flex;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.06em;
  margin-left: 7px;
  padding: 4px 6px;
  text-transform: uppercase;
  vertical-align: middle;
}

.ma-week-grid__day,
.ma-week-grid__time {
  flex-direction: column;
  gap: 3px;
}

.ma-week-grid__day > span,
.ma-week-grid__time > span {
  color: var(--ma-muted-2);
  font-size: 8px;
  font-weight: 650;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: none;
}

.ma-timetable-footer > div {
  align-items: baseline;
  display: inline-flex;
  gap: 5px;
}

.ma-roadmap-line {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

@media (max-width: 820px) {
  .ma-page-intro--work {
    align-items: stretch;
  }

  .ma-sample-switch {
    width: 100%;
  }

  .ma-card-head {
    flex-wrap: wrap;
  }

  .ma-feature-card {
    min-height: 0;
  }

  .ma-feature-icon {
    margin-bottom: 14px;
  }
}

@media (max-width: 620px) {
  .ma-home-page > .ma-grid,
  .ma-home-page > .ma-roadmap-card {
    margin-top: 14px;
  }

  .ma-setup-item {
    gap: 10px;
    grid-template-columns: 36px minmax(0, 1fr) 12px;
    padding: 12px 2px;
  }

  .ma-setup-item > span:nth-child(2) {
    text-align: left;
  }

  .ma-setup-item small {
    line-height: 1.4;
  }

  .ma-feature-card {
    min-height: 170px;
  }

  .ma-roadmap-card {
    padding-bottom: 8px;
  }

  .ma-roadmap-line {
    display: grid;
    gap: 0;
    grid-template-columns: 1fr;
    margin-left: 6px;
    overflow: visible;
    padding: 2px 0 0;
  }

  .ma-roadmap-node {
    border-left: 2px solid var(--ma-line);
    border-top: 0;
    gap: 2px 10px;
    grid-template-columns: 48px minmax(0, 1fr);
    min-width: 0;
    padding: 0 0 22px 24px;
  }

  .ma-roadmap-node:last-child {
    padding-bottom: 8px;
  }

  .ma-roadmap-node::before {
    left: -8px;
    top: 0;
  }

  .ma-roadmap-node > span {
    grid-row: 1 / span 2;
  }

  .ma-roadmap-node strong,
  .ma-roadmap-node small {
    grid-column: 2;
  }

  .ma-roadmap-node.is-done {
    border-color: var(--ma-teal);
  }
}

/* The Today preview is a compact vertical card. Keeping it out of an auto-flow
 * grid prevents the source badge and duty card from colliding at mid widths. */
.ma-today-empty {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.ma-today-empty .ma-card-head {
  margin-bottom: 0;
}

.ma-today-empty .ma-text-button {
  margin-top: auto;
}

/* ========================================================================== */
/* Merentra App 0.4.0 — private Work engine                                  */
/* ========================================================================== */

.ma-hero-card--work-live {
  background:
    radial-gradient(circle at 88% 7%, rgba(7, 148, 177, 0.32), transparent 30%),
    radial-gradient(circle at 100% 100%, rgba(231, 105, 75, 0.16), transparent 34%),
    linear-gradient(145deg, #101820 0%, #15323a 62%, #163b43 100%);
}

.ma-sample-disclaimer--real {
  background: rgba(233, 247, 242, 0.11);
  border-color: rgba(188, 235, 222, 0.28);
  color: rgba(238, 255, 250, 0.86);
}

.ma-work-page {
  min-width: 0;
  padding-bottom: 30px;
}

.ma-work-header {
  align-items: flex-end;
  gap: 24px;
}

.ma-work-header__actions {
  align-items: flex-end;
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.ma-compact-select {
  color: var(--ma-muted-2);
  display: grid;
  font-size: 12px;
  font-weight: 800;
  gap: 5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ma-compact-select select {
  appearance: none;
  background:
    linear-gradient(45deg, transparent 50%, var(--ma-muted) 50%) calc(100% - 16px) calc(50% - 2px) / 5px 5px no-repeat,
    linear-gradient(135deg, var(--ma-muted) 50%, transparent 50%) calc(100% - 11px) calc(50% - 2px) / 5px 5px no-repeat,
    var(--ma-white);
  border: 1px solid var(--ma-line-strong);
  border-radius: 11px;
  color: var(--ma-ink);
  font-size: 12px;
  font-weight: 680;
  min-height: 44px;
  min-width: 142px;
  padding: 10px 34px 10px 12px;
  text-transform: none;
}

.ma-work-trust-strip {
  align-items: center;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  color: var(--ma-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 10px;
  font-weight: 650;
  gap: 8px 18px;
  margin: -6px 0 14px;
  padding: 10px 14px;
}

.ma-work-trust-strip span {
  align-items: center;
  display: inline-flex;
  gap: 7px;
  white-space: nowrap;
}

.ma-work-trust-strip span:not(:first-child)::before {
  background: var(--ma-line-strong);
  border-radius: 50%;
  content: "";
  height: 4px;
  margin-right: 7px;
  width: 4px;
}

.ma-work-trust-strip i {
  background: var(--ma-positive);
  border: 3px solid var(--ma-positive-soft);
  border-radius: 50%;
  height: 9px;
  width: 9px;
}

.ma-subnav button > span {
  background: var(--ma-coral-soft);
  border-radius: 999px;
  color: var(--ma-coral-dark);
  font-size: 8px;
  font-weight: 850;
  margin-left: 7px;
  padding: 4px 6px;
  text-transform: uppercase;
}

/* Work setup */
.ma-work-setup {
  display: grid;
  gap: clamp(28px, 5vw, 70px);
  grid-template-columns: minmax(260px, 0.72fr) minmax(460px, 1.28fr);
  margin: 0 auto;
  max-width: 1160px;
  padding: clamp(18px, 4vw, 58px) 0 40px;
}

.ma-work-setup__intro {
  align-self: start;
  max-width: 470px;
  padding: 24px 0;
  position: sticky;
  top: 112px;
}

.ma-work-setup__intro h2 {
  font-size: clamp(32px, 4vw, 52px);
  line-height: 1.02;
  margin-bottom: 18px;
}

.ma-work-setup__intro > p {
  color: var(--ma-muted);
  font-size: 15px;
  line-height: 1.75;
  margin-bottom: 28px;
}

.ma-work-setup__card {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: var(--ma-radius-xl);
  box-shadow: var(--ma-shadow-md);
  min-width: 0;
  padding: clamp(24px, 3.5vw, 42px);
}

.ma-work-template-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ma-work-template-card {
  background: var(--ma-paper);
  border: 1px solid var(--ma-line);
  border-radius: 18px;
  color: var(--ma-ink);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  min-height: 290px;
  padding: 22px;
  text-align: left;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.ma-work-template-card:hover {
  border-color: rgba(7, 148, 177, 0.52);
  box-shadow: var(--ma-shadow-sm);
  transform: translateY(-2px);
}

.ma-work-template-card.is-recommended {
  background: linear-gradient(160deg, var(--ma-teal-pale), var(--ma-white) 64%);
  border-color: #b9e4eb;
}

.ma-work-template-card__icon {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 14px;
  color: var(--ma-white);
  display: flex;
  font-size: 12px;
  font-weight: 850;
  height: 48px;
  justify-content: center;
  letter-spacing: 0.04em;
  margin-bottom: 26px;
  width: 48px;
}

.ma-work-template-card.is-recommended .ma-work-template-card__icon {
  background: var(--ma-teal);
}

.ma-work-template-card > span:not(.ma-work-template-card__icon) {
  color: var(--ma-teal-dark);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: 0.09em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.ma-work-template-card strong {
  font-size: 18px;
  line-height: 1.25;
  margin-bottom: 10px;
}

.ma-work-template-card p {
  color: var(--ma-muted);
  font-size: 12px;
  line-height: 1.6;
  margin-bottom: 20px;
}

.ma-template-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: auto;
}

.ma-template-metrics span {
  background: rgba(16, 24, 32, 0.05);
  border-radius: 999px;
  color: var(--ma-ink-3);
  font-size: 9px;
  font-weight: 750;
  padding: 6px 8px;
}

.ma-work-boundary-note {
  align-items: flex-start;
  background: var(--ma-positive-soft);
  border: 1px solid #c6e7dd;
  border-radius: 14px;
  color: var(--ma-positive);
  display: flex;
  font-size: 11px;
  gap: 11px;
  line-height: 1.55;
  margin-top: 18px;
  padding: 14px 16px;
}

.ma-work-boundary-note > span {
  align-items: center;
  background: var(--ma-positive);
  border-radius: 50%;
  color: var(--ma-white);
  display: inline-flex;
  flex: 0 0 22px;
  font-size: 11px;
  height: 22px;
  justify-content: center;
}

.ma-work-setup-form,
.ma-work-identity-form {
  display: grid;
  gap: 20px;
}

.ma-work-partner-details {
  background: var(--ma-teal-pale);
  border: 1px solid #c9e8ed;
  border-radius: 14px;
  padding: 16px;
}

.ma-work-partner-details summary {
  color: var(--ma-teal-dark);
  cursor: pointer;
  font-size: 12px;
  font-weight: 760;
  list-style: none;
}

.ma-work-partner-details summary::-webkit-details-marker { display: none; }
.ma-work-partner-details summary::before { content: "+"; display: inline-block; margin-right: 8px; }
.ma-work-partner-details[open] summary::before { content: "−"; }
.ma-work-partner-details .ma-form-grid { margin-top: 16px; }

.ma-work-setup-review {
  background: var(--ma-cream);
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  display: grid;
  gap: 0;
  padding: 4px 16px;
}

.ma-work-setup-review > div {
  align-items: center;
  border-bottom: 1px solid var(--ma-line);
  display: flex;
  gap: 14px;
  justify-content: space-between;
  min-height: 48px;
}

.ma-work-setup-review > div:last-child { border-bottom: 0; }
.ma-work-setup-review span { color: var(--ma-muted); font-size: 11px; }
.ma-work-setup-review strong { font-size: 12px; text-align: right; }

/* Today */
.ma-impact-strip--real {
  margin-bottom: 18px;
}

.ma-impact-strip--real > div:first-child {
  background: var(--ma-positive-soft);
  border-color: #c8e8df;
}

.ma-today-card {
  overflow: hidden;
  padding: 0;
}

.ma-today-card .ma-card-head {
  background: linear-gradient(180deg, #fbfdfc, var(--ma-white));
  margin: 0;
  padding: 22px 24px 18px;
}

.ma-today-list {
  border-top: 1px solid var(--ma-line);
  display: grid;
}

.ma-today-row {
  align-items: center;
  background: var(--ma-white);
  border: 0;
  border-bottom: 1px solid var(--ma-line);
  color: var(--ma-ink);
  cursor: pointer;
  display: grid;
  gap: 14px;
  grid-template-columns: 62px minmax(0, 1fr) auto 12px;
  min-height: 82px;
  padding: 14px 24px;
  text-align: left;
  transition: background-color 150ms ease;
  width: 100%;
}

.ma-today-row:last-child { border-bottom: 0; }
.ma-today-row:hover { background: #fbfcfb; }

.ma-today-row__time {
  display: grid;
  gap: 2px;
}

.ma-today-row__time strong { font-size: 14px; }
.ma-today-row__time small { color: var(--ma-muted); font-size: 10px; }

.ma-today-row__main {
  display: grid;
  gap: 4px;
  grid-template-columns: 9px minmax(0, 1fr);
}

.ma-today-row__main i {
  align-self: center;
  background: var(--ma-teal);
  border-radius: 50%;
  grid-row: 1 / span 2;
  height: 8px;
  width: 8px;
}

.ma-today-row.is-live .ma-today-row__main i { background: var(--ma-coral); }
.ma-today-row.is-personal .ma-today-row__main i { background: #7556ad; }
.ma-today-row.is-delivered .ma-today-row__main i { background: var(--ma-positive); }
.ma-today-row__main strong { font-size: 13px; }
.ma-today-row__main small { color: var(--ma-muted); font-size: 10px; }
.ma-today-row > b { color: var(--ma-muted-2); font-size: 18px; font-weight: 400; }

/* Timetable */
.ma-timetable-card--persistent {
  overflow: hidden;
  padding: 0;
}

.ma-timetable-head {
  align-items: center;
  background: linear-gradient(180deg, #fbfdfc, var(--ma-white));
  margin: 0;
  padding: 22px 24px;
}

.ma-timetable-actions,
.ma-week-picker {
  align-items: center;
  display: flex;
  gap: 5px;
}

.ma-week-picker {
  background: var(--ma-cream);
  border: 1px solid var(--ma-line);
  border-radius: 10px;
  padding: 3px;
}

.ma-week-picker button {
  background: transparent;
  border: 0;
  border-radius: 7px;
  color: var(--ma-muted);
  cursor: pointer;
  font-size: 11px;
  font-weight: 750;
  height: 32px;
  min-width: 32px;
}

.ma-week-picker button.is-active {
  background: var(--ma-white);
  box-shadow: var(--ma-shadow-xs);
  color: var(--ma-ink);
}

.ma-work-toolbar {
  align-items: center;
  border-bottom: 1px solid var(--ma-line);
  border-top: 1px solid var(--ma-line);
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding: 12px 18px;
}

.ma-layer-toggles {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.ma-layer-toggle {
  cursor: pointer;
  position: relative;
}

.ma-layer-toggle input {
  height: 1px;
  opacity: 0;
  position: absolute;
  width: 1px;
}

.ma-layer-toggle > span {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 999px;
  color: var(--ma-muted);
  display: inline-flex;
  font-size: 10px;
  font-weight: 700;
  gap: 7px;
  min-height: 32px;
  padding: 7px 10px;
}

.ma-layer-toggle > span i {
  background: var(--ma-teal);
  border-radius: 50%;
  height: 7px;
  width: 7px;
}

.ma-layer-toggle.is-live > span i { background: var(--ma-coral); }
.ma-layer-toggle.is-personal > span i { background: #7556ad; }
.ma-layer-toggle.is-delivered > span i { background: var(--ma-positive); }
.ma-layer-toggle input:not(:checked) + span { opacity: 0.48; }
.ma-layer-toggle input:checked + span { border-color: #aecfd5; box-shadow: 0 0 0 2px rgba(7, 148, 177, 0.06); color: var(--ma-ink); }

.ma-timetable-summary {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 15px;
}

.ma-timetable-summary span {
  color: var(--ma-muted);
  font-size: 9px;
  text-align: right;
  text-transform: uppercase;
}

.ma-timetable-summary strong {
  color: var(--ma-ink);
  display: block;
  font-size: 12px;
  margin-top: 2px;
  text-transform: none;
}

.ma-persistent-grid {
  --ma-work-days: 5;
  background: var(--ma-line);
  display: grid;
  gap: 1px;
  grid-template-columns: 82px repeat(var(--ma-work-days), minmax(145px, 1fr));
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-color: var(--ma-line-strong) transparent;
}

.ma-persistent-grid__corner,
.ma-persistent-grid__day,
.ma-persistent-grid__period,
.ma-persistent-grid__cell {
  background: var(--ma-white);
  min-width: 0;
}

.ma-persistent-grid__corner,
.ma-persistent-grid__day {
  align-items: center;
  display: flex;
  min-height: 64px;
}

.ma-persistent-grid__corner {
  color: var(--ma-muted-2);
  font-size: 12px;
  font-weight: 800;
  justify-content: center;
  letter-spacing: 0.08em;
  position: sticky;
  left: 0;
  text-transform: uppercase;
  z-index: 3;
}

.ma-persistent-grid__day {
  align-items: flex-start;
  flex-direction: column;
  justify-content: center;
  padding: 10px 12px;
}

.ma-persistent-grid__day strong { font-size: 12px; }
.ma-persistent-grid__day span { color: var(--ma-muted-2); font-size: 9px; margin-top: 2px; }

.ma-persistent-grid__period {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 128px;
  position: sticky;
  left: 0;
  z-index: 2;
}

.ma-persistent-grid__period strong { font-size: 11px; }
.ma-persistent-grid__period span { color: var(--ma-muted-2); font-size: 8px; margin-top: 3px; }

.ma-persistent-grid__cell {
  display: grid;
  gap: 7px;
  min-height: 128px;
  padding: 8px;
  position: relative;
}

.ma-slot-add {
  align-items: center;
  align-self: end;
  background: transparent;
  border: 1px dashed transparent;
  border-radius: 9px;
  color: #97a4aa;
  cursor: pointer;
  display: flex;
  font-size: 16px;
  height: 29px;
  justify-content: center;
  opacity: 0;
  transition: opacity 140ms ease, border-color 140ms ease, background-color 140ms ease;
  width: 100%;
}

.ma-persistent-grid__cell:hover .ma-slot-add,
.ma-slot-add:focus-visible {
  background: var(--ma-teal-pale);
  border-color: #badce2;
  opacity: 1;
}

.ma-work-session-card {
  background: var(--ma-teal-pale);
  border: 1px solid #c5e6eb;
  border-left: 3px solid var(--ma-teal);
  border-radius: 11px;
  color: var(--ma-ink);
  cursor: pointer;
  display: grid;
  gap: 4px;
  min-height: 74px;
  padding: 9px 10px;
  text-align: left;
  transition: transform 140ms ease, box-shadow 140ms ease, border-color 140ms ease;
  width: 100%;
}

.ma-work-session-card:hover {
  box-shadow: var(--ma-shadow-sm);
  transform: translateY(-1px);
}

.ma-work-session-card.is-live { background: var(--ma-coral-soft); border-color: #f1c7bb; border-left-color: var(--ma-coral); }
.ma-work-session-card.is-personal { background: #f4effc; border-color: #ded1f1; border-left-color: #7556ad; }
.ma-work-session-card.is-delivered { background: var(--ma-positive-soft); border-color: #c7e8dd; border-left-color: var(--ma-positive); }
.ma-work-session-card.is-state-free { background: #f7f8f7; border-color: var(--ma-line); border-left-color: #8c989e; }
.ma-work-session-card.is-state-undefined { background: repeating-linear-gradient(135deg, #fafbfa, #fafbfa 8px, #f3f5f4 8px, #f3f5f4 16px); border: 1px dashed #aeb9bd; border-left: 3px solid #aeb9bd; }
.ma-work-session-card.is-state-unavailable { background: #f5f1f1; border-color: #d8cbcc; border-left-color: #8f7275; }
.ma-work-session-card.is-state-cancelled { opacity: 0.7; text-decoration: line-through; }

.ma-work-session-card__top {
  align-items: center;
  display: flex;
  gap: 5px;
  min-width: 0;
}

.ma-work-session-card__top i {
  background: var(--ma-teal);
  border-radius: 50%;
  flex: 0 0 6px;
  height: 6px;
  width: 6px;
}

.ma-work-session-card.is-live .ma-work-session-card__top i { background: var(--ma-coral); }
.ma-work-session-card.is-personal .ma-work-session-card__top i { background: #7556ad; }
.ma-work-session-card.is-delivered .ma-work-session-card__top i { background: var(--ma-positive); }

.ma-work-session-card__top small {
  color: var(--ma-muted);
  font-size: 7px;
  font-weight: 800;
  letter-spacing: 0.06em;
  overflow: hidden;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.ma-work-session-card__top b {
  background: rgba(255, 255, 255, 0.72);
  border-radius: 999px;
  color: var(--ma-muted-2);
  font-size: 6px;
  font-weight: 850;
  margin-left: auto;
  padding: 3px 5px;
}

.ma-work-session-card > strong {
  font-size: 11px;
  line-height: 1.28;
}

.ma-work-session-card > span:last-child {
  color: var(--ma-muted);
  font-size: 8px;
  line-height: 1.35;
}

.ma-work-session-card.is-compact {
  min-height: 60px;
  padding: 8px 9px;
}

.ma-mobile-cycle-list { display: none; }

.ma-timetable-footer {
  align-items: center;
  background: #fbfcfb;
  border-top: 1px solid var(--ma-line);
  display: grid;
  gap: 20px;
  grid-template-columns: auto auto minmax(220px, 1fr);
  padding: 15px 20px;
}

.ma-timetable-footer > div { display: grid; gap: 3px; }
.ma-timetable-footer span { color: var(--ma-muted); font-size: 9px; text-transform: uppercase; }
.ma-timetable-footer strong { font-size: 12px; }
.ma-timetable-footer p { color: var(--ma-muted); font-size: 9px; line-height: 1.5; margin: 0; text-align: right; }
.is-good-text { color: var(--ma-positive) !important; }
.is-warning-text { color: var(--ma-warning) !important; }

.ma-dated-strip {
  align-items: flex-start;
  background: var(--ma-paper);
  border-top: 1px solid var(--ma-line);
  display: grid;
  gap: 18px;
  grid-template-columns: 180px minmax(0, 1fr);
  padding: 18px 20px;
}

.ma-dated-strip h4 { font-size: 14px; margin-bottom: 0; }
.ma-dated-strip > div:last-child { display: grid; gap: 8px; grid-template-columns: repeat(4, minmax(0, 1fr)); }

/* Job plan and context */
.ma-jobplan-live,
.ma-work-context {
  min-width: 0;
}

.ma-plan-metrics {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 22px;
}

.ma-plan-metrics > div {
  background: var(--ma-cream);
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  display: grid;
  gap: 5px;
  padding: 13px;
}

.ma-plan-metrics span { color: var(--ma-muted); font-size: 9px; text-transform: uppercase; }
.ma-plan-metrics strong { font-size: 17px; }

.ma-week-total-table {
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  overflow: hidden;
}

.ma-week-total-table__head,
.ma-week-total-table > button {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(100px, 1fr) 120px minmax(100px, 1.2fr);
  padding: 11px 14px;
}

.ma-week-total-table__head {
  background: #f7f9f8;
  color: var(--ma-muted-2);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.ma-week-total-table > button {
  background: var(--ma-white);
  border: 0;
  border-top: 1px solid var(--ma-line);
  color: var(--ma-ink);
  cursor: pointer;
  text-align: left;
}

.ma-week-total-table > button:hover { background: var(--ma-teal-pale); }
.ma-week-total-table > button span { font-size: 11px; }
.ma-week-total-table > button strong { font-size: 11px; text-align: right; }
.ma-week-total-table > button i { background: #e7eded; border-radius: 999px; height: 7px; overflow: hidden; position: relative; }
.ma-week-total-table > button i::before { background: var(--ma-teal); border-radius: inherit; content: ""; inset: 0 auto 0 0; position: absolute; width: var(--value, 0%); }

.ma-classification-summary {
  border-top: 1px solid var(--ma-line);
  margin-top: 22px;
  padding-top: 20px;
}

.ma-classification-summary h4 { font-size: 15px; margin-bottom: 16px; }
.ma-classification-row { align-items: center; display: grid; gap: 10px; grid-template-columns: 74px minmax(0, 1fr) 72px; margin-top: 10px; }
.ma-classification-row > span { color: var(--ma-muted); font-size: 10px; }
.ma-classification-row > i { background: #edf1f1; border-radius: 999px; height: 7px; overflow: hidden; position: relative; }
.ma-classification-row > i::before { background: var(--ma-teal); border-radius: inherit; content: ""; inset: 0 auto 0 0; position: absolute; width: var(--value, 0%); }
.ma-classification-row > strong { font-size: 10px; text-align: right; }

.ma-callout--success {
  background: var(--ma-positive-soft);
  border-color: #c6e8dd;
  color: var(--ma-positive);
  display: grid;
  margin-top: 22px;
}

.ma-work-context .ma-card-head { margin-bottom: 10px; }

.ma-context-accordion {
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  overflow: hidden;
}

.ma-context-accordion > section {
  border-bottom: 1px solid var(--ma-line);
}

.ma-context-accordion > section:last-child { border-bottom: 0; }
.ma-context-accordion > section > button {
  align-items: center;
  background: var(--ma-white);
  border: 0;
  color: var(--ma-ink);
  cursor: pointer;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-height: 60px;
  padding: 11px 14px;
  text-align: left;
  width: 100%;
}
.ma-context-accordion > section > button:hover { background: #fbfcfb; }
.ma-context-accordion > section.is-open > button { background: var(--ma-teal-pale); }
.ma-context-accordion > section > button > span { display: grid; gap: 3px; min-width: 0; }
.ma-context-accordion small { color: var(--ma-muted); font-size: 9px; }
.ma-context-accordion strong { font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ma-context-accordion > section > button > i { color: var(--ma-teal-dark); font-size: 17px; font-style: normal; }

.ma-context-form-wrap {
  background: #fbfcfb;
  border-top: 1px solid var(--ma-line);
  padding: 15px;
}

.ma-context-form {
  display: grid;
  gap: 13px;
}

.ma-context-form .ma-form-grid { grid-template-columns: 1fr; }
.ma-context-form .ma-form-actions { justify-content: flex-end; }

/* Import boundary and insights */
.ma-import-drop--disabled > span:first-child {
  align-items: center;
  background: var(--ma-cream);
  border: 1px solid var(--ma-line);
  border-radius: 50%;
  color: var(--ma-muted-2);
  display: flex;
  font-size: 24px;
  height: 58px;
  justify-content: center;
  margin-bottom: 16px;
  width: 58px;
}

.ma-work-ready-list {
  display: grid;
  gap: 0;
  margin-top: 16px;
}

.ma-work-ready-list span {
  border-top: 1px solid var(--ma-line);
  color: var(--ma-muted);
  font-size: 10px;
  line-height: 1.5;
  padding: 10px 2px;
}

.ma-work-ready-list span:first-child { border-top: 0; }
.ma-work-integrity {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ma-work-integrity > div {
  background: var(--ma-paper);
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  display: grid;
  gap: 4px;
  padding: 14px;
}

.ma-work-integrity span { color: var(--ma-muted); font-size: 9px; text-transform: uppercase; }
.ma-work-integrity strong { font-size: 13px; }
.ma-work-integrity small { color: var(--ma-muted); font-size: 9px; line-height: 1.45; }
.ma-work-future-insights { display: grid; gap: 9px; margin-top: 16px; }

/* Session editor */
.ma-work-editor-backdrop {
  background: rgba(16, 24, 32, 0.48);
  inset: 0;
  position: fixed;
  z-index: 1500;
}

.ma-work-editor {
  background: var(--ma-white);
  border-left: 1px solid var(--ma-line);
  box-shadow: -30px 0 80px rgba(16, 24, 32, 0.2);
  display: flex;
  flex-direction: column;
  height: 100dvh;
  inset: 0 0 0 auto;
  max-width: min(680px, 94vw);
  overflow: hidden;
  position: fixed;
  width: 680px;
  z-index: 1501;
}

.ma-work-editor__head {
  align-items: flex-start;
  border-bottom: 1px solid var(--ma-line);
  display: flex;
  gap: 20px;
  justify-content: space-between;
  padding: 22px 24px;
}

.ma-work-editor__head h2 { font-size: 22px; margin-bottom: 4px; }
.ma-work-editor__head p { color: var(--ma-muted); font-size: 11px; line-height: 1.5; margin: 0; }

.ma-work-editor .ma-form {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 0;
  min-height: 0;
  overflow-y: auto;
}

.ma-editor-section {
  border-bottom: 1px solid var(--ma-line);
  display: grid;
  gap: 16px;
  padding: 20px 24px;
}

.ma-editor-section > h3 {
  font-size: 12px;
  margin: 0;
}

.ma-source-panel {
  background: var(--ma-teal-pale);
  border: 1px solid #c8e8ed;
  border-radius: 13px;
  display: grid;
  gap: 5px;
  padding: 13px 14px;
}

.ma-source-panel span { color: var(--ma-teal-dark); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.ma-source-panel strong { font-size: 12px; }
.ma-source-panel p { color: var(--ma-muted); font-size: 9px; line-height: 1.5; margin: 0; }

.ma-work-editor__footer {
  align-items: center;
  background: rgba(255, 255, 255, 0.96);
  border-top: 1px solid var(--ma-line);
  bottom: 0;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  margin-top: auto;
  padding: 16px 24px;
  position: sticky;
  z-index: 2;
}

.ma-work-editor__footer > div { display: flex; flex-wrap: wrap; gap: 9px; margin-left: auto; }
.ma-button--danger-ghost { background: transparent; border-color: #efc6c8; color: var(--ma-danger) !important; }
.ma-button--danger-ghost:hover { background: var(--ma-danger-soft); }

.ma-toggle--compact {
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  padding: 12px 14px !important;
}

/* Work UX responsive rules */
@media (max-width: 1120px) {
  .ma-work-setup { gap: 32px; grid-template-columns: minmax(230px, 0.58fr) minmax(420px, 1fr); }
  .ma-work-header { align-items: flex-start; }
  .ma-work-header__actions { justify-content: flex-start; }
  .ma-dated-strip > div:last-child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ma-work-panel .ma-card--span-8,
  .ma-work-panel .ma-card--span-7,
  .ma-work-panel .ma-card--span-5,
  .ma-work-panel .ma-card--span-4 { grid-column: span 12; }
  .ma-context-form .ma-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 840px) {
  .ma-work-setup { display: block; padding-top: 10px; }
  .ma-work-setup__intro { max-width: none; padding: 12px 0 24px; position: static; }
  .ma-work-setup__intro h2 { font-size: clamp(30px, 8vw, 44px); }
  .ma-work-header { align-items: stretch; display: grid; }
  .ma-work-header__actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ma-work-header__actions .ma-button { grid-column: 1 / -1; }
  .ma-compact-select select { min-width: 0; width: 100%; }
  .ma-work-trust-strip { overflow-x: auto; flex-wrap: nowrap; }
  .ma-persistent-grid { display: none; }
  .ma-mobile-cycle-list { background: var(--ma-cream); display: grid; gap: 10px; padding: 12px; }
  .ma-mobile-work-day { background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 13px; overflow: hidden; }
  .ma-mobile-work-day > header { align-items: center; border-bottom: 1px solid var(--ma-line); display: flex; justify-content: space-between; padding: 12px 14px; }
  .ma-mobile-work-day > header > div { display: grid; gap: 2px; }
  .ma-mobile-work-day > header strong { font-size: 13px; }
  .ma-mobile-work-day > header span { color: var(--ma-muted); font-size: 9px; }
  .ma-mobile-work-day > header button { align-items: center; background: var(--ma-teal-pale); border: 1px solid #c6e5ea; border-radius: 9px; color: var(--ma-teal-dark); display: flex; font-size: 17px; height: 34px; justify-content: center; width: 34px; }
  .ma-mobile-period { align-items: start; border-bottom: 1px solid var(--ma-line); display: grid; gap: 10px; grid-template-columns: 34px minmax(0, 1fr); padding: 10px 12px; }
  .ma-mobile-period:last-child { border-bottom: 0; }
  .ma-mobile-period > span { color: var(--ma-muted-2); font-size: 9px; font-weight: 800; padding-top: 9px; }
  .ma-mobile-period > div { display: grid; gap: 7px; }
  .ma-mobile-empty-slot { background: transparent; border: 1px dashed var(--ma-line-strong); border-radius: 9px; color: var(--ma-muted); min-height: 42px; padding: 8px; }
  .ma-timetable-footer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ma-timetable-footer p { grid-column: 1 / -1; text-align: left; }
  .ma-timetable-summary { display: none; }
  .ma-work-toolbar { align-items: flex-start; }
  .ma-layer-toggles { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 2px; }
  .ma-plan-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .ma-work-setup__card { border-radius: 22px; padding: 20px; }
  .ma-work-template-grid { grid-template-columns: 1fr; }
  .ma-work-template-card { min-height: 230px; }
  .ma-work-partner-details .ma-form-grid,
  .ma-context-form .ma-form-grid { grid-template-columns: 1fr; }
  .ma-work-header__actions { grid-template-columns: 1fr; }
  .ma-work-header__actions .ma-button { grid-column: auto; }
  .ma-work-trust-strip { margin-top: 0; }
  .ma-impact-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ma-today-row { gap: 9px; grid-template-columns: 48px minmax(0, 1fr) 10px; min-height: 76px; padding: 12px 14px; }
  .ma-today-row .ma-source-badge { display: none; }
  .ma-timetable-head { align-items: flex-start; padding: 18px; }
  .ma-timetable-actions { flex-wrap: wrap; justify-content: flex-end; }
  .ma-week-picker button { min-width: 29px; }
  .ma-work-toolbar { padding: 10px 12px; }
  .ma-dated-strip { grid-template-columns: 1fr; }
  .ma-dated-strip > div:last-child { grid-template-columns: 1fr; }
  .ma-week-total-table__head,
  .ma-week-total-table > button { grid-template-columns: minmax(78px, 1fr) 80px minmax(70px, 0.8fr); padding: 10px; }
  .ma-classification-row { grid-template-columns: 62px minmax(0, 1fr) 58px; }
  .ma-work-integrity { grid-template-columns: 1fr; }
  .ma-work-editor { border-left: 0; max-width: none; width: 100%; }
  .ma-work-editor__head,
  .ma-editor-section,
  .ma-work-editor__footer { padding-left: 18px; padding-right: 18px; }
  .ma-work-editor__footer { align-items: stretch; display: grid; }
  .ma-work-editor__footer > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-left: 0; }
  .ma-work-editor__footer .ma-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .ma-work-template-card,
  .ma-work-session-card,
  .ma-slot-add { transition: none; }
}

/* Pass 4 — persistent Merentra Work engine and job-plan UX. */
.ma-hero-card--work-live {
  background:
    radial-gradient(circle at 86% 20%, rgba(7, 148, 177, 0.18), transparent 30%),
    linear-gradient(135deg, #fffdf9 0%, #f3fbfc 54%, #eef8f9 100%);
  border-color: rgba(7, 148, 177, 0.2);
}

.ma-work-header {
  align-items: flex-end;
  gap: 20px;
}

.ma-work-header__actions {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.ma-compact-select {
  display: grid;
  gap: 5px;
  min-width: 168px;
}

.ma-compact-select > span {
  color: var(--ma-muted);
  font-size: 10px;
  font-weight: 780;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.ma-compact-select select {
  background: var(--ma-white);
  border: 1px solid var(--ma-line-strong);
  border-radius: 12px;
  color: var(--ma-ink);
  min-height: 46px;
  padding: 10px 36px 10px 12px;
}

.ma-work-trust-strip {
  align-items: center;
  background: rgba(255, 255, 255, .72);
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  color: var(--ma-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 11px;
  font-weight: 680;
  gap: 10px 18px;
  margin: 16px 0 18px;
  padding: 11px 14px;
}

.ma-work-trust-strip > span {
  align-items: center;
  display: inline-flex;
  gap: 7px;
  line-height: 1.35;
  min-width: 0;
  white-space: normal;
}

.ma-work-trust-strip > span:first-child {
  color: var(--ma-positive);
  font-weight: 780;
}

.ma-work-trust-strip i {
  background: var(--ma-positive);
  border-radius: 999px;
  box-shadow: 0 0 0 4px rgba(22, 133, 107, .12);
  height: 7px;
  width: 7px;
}

.ma-work-panel {
  margin-top: 18px;
}

.ma-work-setup {
  margin: 0 auto;
  max-width: 1180px;
}

.ma-work-setup__intro {
  margin: 0 auto 24px;
  max-width: 790px;
  text-align: center;
}

.ma-work-setup__intro h2 {
  font-size: clamp(30px, 4vw, 50px);
  margin: 8px 0 12px;
}

.ma-work-setup__intro > p {
  color: var(--ma-muted);
  font-size: 16px;
  line-height: 1.65;
  margin: 0 auto;
  max-width: 700px;
}

.ma-work-setup__cancel {
  margin-bottom: 14px;
}

.ma-work-setup__card {
  background: rgba(255, 255, 255, .88);
  border: 1px solid var(--ma-line);
  border-radius: var(--ma-radius-xl);
  box-shadow: var(--ma-shadow-md);
  padding: clamp(20px, 4vw, 42px);
}

.ma-work-template-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ma-work-template-card {
  appearance: none;
  background: var(--ma-white);
  border: 1px solid var(--ma-line-strong);
  border-radius: 22px;
  color: var(--ma-ink);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  min-height: 390px;
  padding: 24px;
  position: relative;
  text-align: left;
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.ma-work-template-card:hover,
.ma-work-template-card:focus-visible,
.ma-work-template-card.is-selected {
  border-color: var(--ma-teal);
  box-shadow: 0 18px 44px rgba(7, 148, 177, .13);
  transform: translateY(-3px);
}

.ma-work-template-card__icon {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 14px;
  color: var(--ma-white);
  display: inline-flex;
  font-size: 14px;
  font-weight: 850;
  height: 52px;
  justify-content: center;
  letter-spacing: .04em;
  margin-bottom: 22px;
  width: 52px;
}

.ma-work-template-card:nth-child(2) .ma-work-template-card__icon {
  background: var(--ma-teal-soft);
  color: var(--ma-teal-dark);
  font-size: 24px;
}

.ma-work-template-card .ma-pill {
  position: absolute;
  right: 20px;
  top: 20px;
}

.ma-work-template-card h3 {
  font-size: 23px;
  margin: 0 0 10px;
}

.ma-work-template-card > p {
  color: var(--ma-muted);
  line-height: 1.6;
  margin-bottom: 20px;
}

.ma-work-template-card > small {
  color: var(--ma-muted-2);
  line-height: 1.5;
  margin-top: 18px;
}

.ma-work-template-card > b {
  color: var(--ma-teal-dark);
  font-size: 13px;
  margin-top: auto;
  padding-top: 20px;
}

.ma-template-metrics {
  border-bottom: 1px solid var(--ma-line);
  border-top: 1px solid var(--ma-line);
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 16px 0;
}

.ma-template-metrics span {
  color: var(--ma-muted);
  display: grid;
  font-size: 10px;
  gap: 2px;
  line-height: 1.35;
}

.ma-template-metrics strong {
  color: var(--ma-ink);
  font-size: 19px;
}

.ma-work-boundary-note {
  align-items: flex-start;
  background: var(--ma-positive-soft);
  border: 1px solid rgba(22, 133, 107, .18);
  border-radius: 16px;
  display: flex;
  gap: 12px;
  grid-column: 1 / -1;
  padding: 16px 18px;
}

.ma-work-boundary-note > span {
  align-items: center;
  background: var(--ma-positive);
  border-radius: 999px;
  color: white;
  display: inline-flex;
  flex: 0 0 24px;
  font-size: 12px;
  height: 24px;
  justify-content: center;
}

.ma-work-boundary-note strong {
  color: var(--ma-positive);
  display: block;
  font-size: 13px;
  margin-bottom: 4px;
}

.ma-work-boundary-note p {
  color: var(--ma-ink-3);
  font-size: 12px;
  line-height: 1.55;
  margin: 0;
}

.ma-work-partner-details {
  background: var(--ma-cream);
  border: 1px solid var(--ma-line);
  border-radius: 16px;
  margin-top: 18px;
  padding: 0 18px;
}

.ma-work-partner-details summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  list-style: none;
  padding: 16px 0;
}

.ma-work-partner-details summary::-webkit-details-marker { display: none; }
.ma-work-partner-details summary span { font-size: 13px; font-weight: 760; }
.ma-work-partner-details summary small { color: var(--ma-muted); font-size: 10px; }
.ma-work-partner-details[open] .ma-form-grid { border-top: 1px solid var(--ma-line); padding: 18px 0; }

.ma-work-setup-review {
  background: var(--ma-ink);
  border-radius: 18px;
  color: var(--ma-white);
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 20px 0;
  overflow: hidden;
}

.ma-work-setup-review > div {
  background: rgba(255, 255, 255, .055);
  display: grid;
  gap: 5px;
  padding: 16px;
}

.ma-work-setup-review span {
  color: rgba(255, 255, 255, .62);
  font-size: 9px;
  font-weight: 780;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.ma-work-setup-review strong { color: var(--ma-white); font-size: 14px; }

.ma-today-list {
  display: grid;
  gap: 10px;
}

.ma-today-row {
  align-items: center;
  appearance: none;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  color: var(--ma-ink);
  cursor: pointer;
  display: grid;
  gap: 13px;
  grid-template-columns: 64px minmax(0, 1fr) auto 12px;
  padding: 14px;
  text-align: left;
  transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}

.ma-today-row:hover,
.ma-today-row:focus-visible {
  border-color: var(--ma-teal);
  box-shadow: var(--ma-shadow-sm);
  transform: translateY(-1px);
}

.ma-today-row__time {
  border-right: 1px solid var(--ma-line);
  display: grid;
  gap: 3px;
}

.ma-today-row__time strong { font-size: 15px; }
.ma-today-row__time small { color: var(--ma-muted); font-size: 10px; }
.ma-today-row__main { display: grid; gap: 4px; padding-left: 10px; position: relative; }
.ma-today-row__main > i { background: var(--ma-teal); border-radius: 99px; height: 28px; left: -5px; position: absolute; top: 1px; width: 3px; }
.ma-today-row.is-live .ma-today-row__main > i { background: var(--ma-coral); }
.ma-today-row.is-personal .ma-today-row__main > i { background: #7763b3; }
.ma-today-row.is-delivered .ma-today-row__main > i { background: var(--ma-positive); }
.ma-today-row__main strong { font-size: 14px; }
.ma-today-row__main small { color: var(--ma-muted); font-size: 10px; line-height: 1.4; }
.ma-today-row > b { color: var(--ma-muted-2); font-size: 18px; }

.ma-impact-strip--real {
  border-top: 1px solid var(--ma-line);
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 20px;
  padding-top: 18px;
}

.ma-impact-strip--real > div { display: grid; gap: 4px; }
.ma-impact-strip--real span { color: var(--ma-muted); font-size: 9px; font-weight: 780; letter-spacing: .06em; text-transform: uppercase; }
.ma-impact-strip--real strong { font-size: 17px; }

.ma-work-toolbar {
  align-items: center;
  background: var(--ma-cream);
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin-bottom: 14px;
  padding: 10px 12px;
}

.ma-layer-toggles {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.ma-layer-toggle input { position: absolute; opacity: 0; pointer-events: none; }
.ma-layer-toggle > span {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 999px;
  color: var(--ma-muted);
  cursor: pointer;
  display: inline-flex;
  font-size: 10px;
  font-weight: 720;
  gap: 7px;
  min-height: 32px;
  padding: 7px 10px;
}

.ma-layer-toggle > span i { background: var(--ma-teal); border-radius: 99px; height: 8px; width: 8px; }
.ma-layer-toggle.is-live > span i { background: var(--ma-coral); }
.ma-layer-toggle.is-personal > span i { background: #7763b3; }
.ma-layer-toggle.is-delivered > span i { background: var(--ma-positive); }
.ma-layer-toggle input:not(:checked) + span { opacity: .5; }
.ma-layer-toggle input:checked + span { border-color: var(--ma-line-strong); box-shadow: var(--ma-shadow-xs); color: var(--ma-ink-3); }

.ma-timetable-summary { display: flex; gap: 14px; white-space: nowrap; }
.ma-timetable-summary span { color: var(--ma-muted); font-size: 10px; }
.ma-timetable-summary strong { color: var(--ma-ink); font-size: 12px; margin-left: 4px; }

.ma-week-picker {
  align-items: center;
  background: var(--ma-cream);
  border: 1px solid var(--ma-line);
  border-radius: 10px;
  display: flex;
  gap: 3px;
  padding: 3px;
}

.ma-week-picker button {
  background: transparent;
  border: 0;
  border-radius: 7px;
  color: var(--ma-muted);
  cursor: pointer;
  font-size: 11px;
  font-weight: 760;
  height: 31px;
  min-width: 31px;
}

.ma-week-picker button.is-active { background: var(--ma-white); box-shadow: var(--ma-shadow-xs); color: var(--ma-ink); }

.ma-persistent-grid {
  border: 1px solid var(--ma-line);
  border-radius: 16px;
  display: grid;
  grid-template-columns: 76px repeat(var(--ma-work-days), minmax(145px, 1fr));
  min-width: calc(76px + (var(--ma-work-days) * 145px));
  overflow: hidden;
}

.ma-persistent-grid__corner,
.ma-persistent-grid__day,
.ma-persistent-grid__period,
.ma-persistent-grid__cell {
  border-bottom: 1px solid var(--ma-line);
  border-right: 1px solid var(--ma-line);
}

.ma-persistent-grid > :nth-child(calc(var(--ma-work-days) + 1)) { border-right: 0; }
.ma-persistent-grid__corner,
.ma-persistent-grid__day { background: var(--ma-ink); color: var(--ma-white); min-height: 62px; padding: 13px; }
.ma-persistent-grid__corner { align-items: flex-end; display: flex; }
.ma-persistent-grid__corner span { color: rgba(255,255,255,.62); font-size: 9px; font-weight: 760; letter-spacing: .08em; text-transform: uppercase; }
.ma-persistent-grid__day { display: grid; gap: 3px; }
.ma-persistent-grid__day strong { color: var(--ma-white); font-size: 13px; }
.ma-persistent-grid__day span { color: rgba(255,255,255,.58); font-size: 9px; }
.ma-persistent-grid__period { align-content: start; background: var(--ma-cream); display: grid; gap: 4px; min-height: 148px; padding: 14px 10px; }
.ma-persistent-grid__period strong { color: var(--ma-ink); font-size: 11px; }
.ma-persistent-grid__period span { color: var(--ma-muted); font-size: 9px; }
.ma-persistent-grid__cell { background: #fbfcfb; display: flex; flex-direction: column; gap: 7px; min-height: 148px; padding: 8px; position: relative; }
.ma-persistent-grid__cell:nth-child(6n) { border-right: 0; }
.ma-persistent-grid__cell:hover { background: var(--ma-teal-pale); }

.ma-work-session-card {
  appearance: none;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-left: 4px solid var(--ma-teal);
  border-radius: 11px;
  color: var(--ma-ink);
  cursor: pointer;
  display: grid;
  gap: 5px;
  padding: 9px;
  text-align: left;
  width: 100%;
}

.ma-work-session-card:hover,
.ma-work-session-card:focus-visible { border-color: var(--ma-teal); box-shadow: 0 6px 16px rgba(7, 148, 177, .11); }
.ma-work-session-card.is-live { border-left-color: var(--ma-coral); }
.ma-work-session-card.is-personal { border-left-color: #7763b3; }
.ma-work-session-card.is-delivered { border-left-color: var(--ma-positive); }
.ma-work-session-card.is-state-free { background: #f5faf7; border-left-color: var(--ma-positive); }
.ma-work-session-card.is-state-undefined { background: #faf8f3; border: 1px dashed #b9aaa0; }
.ma-work-session-card.is-state-unavailable { background: #f5f5f5; border-left-color: #7d878b; }
.ma-work-session-card.is-state-cancelled { opacity: .62; text-decoration: line-through; }
.ma-work-session-card__top { align-items: center; display: flex; gap: 5px; min-width: 0; }
.ma-work-session-card__top i { background: currentColor; border-radius: 50%; color: var(--ma-teal); flex: 0 0 5px; height: 5px; }
.ma-work-session-card__top small { color: var(--ma-muted); font-size: 7px; font-weight: 760; overflow: hidden; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.ma-work-session-card__top b { background: var(--ma-cream); border-radius: 4px; color: var(--ma-muted); font-size: 6px; font-weight: 800; margin-left: auto; padding: 3px 4px; }
.ma-work-session-card > strong { font-size: 11px; line-height: 1.25; }
.ma-work-session-card > span:last-child { color: var(--ma-muted); font-size: 8px; line-height: 1.35; }
.ma-work-session-card.is-compact { max-width: 270px; min-width: 170px; }

.ma-slot-add {
  align-items: center;
  background: transparent;
  border: 1px dashed transparent;
  border-radius: 9px;
  color: var(--ma-muted-2);
  cursor: pointer;
  display: flex;
  font-size: 16px;
  justify-content: center;
  margin-top: auto;
  min-height: 28px;
  opacity: .25;
  width: 100%;
}

.ma-persistent-grid__cell:hover .ma-slot-add,
.ma-slot-add:focus-visible { border-color: var(--ma-teal); color: var(--ma-teal-dark); opacity: 1; }

.ma-mobile-cycle-list { display: none; }

.ma-timetable-footer {
  align-items: center;
  background: var(--ma-cream);
  border-radius: 14px;
  display: grid;
  gap: 12px;
  grid-template-columns: auto auto minmax(0, 1fr);
  margin-top: 14px;
  padding: 13px 15px;
}

.ma-timetable-footer > div { display: grid; gap: 3px; }
.ma-timetable-footer span { color: var(--ma-muted); font-size: 9px; text-transform: uppercase; }
.ma-timetable-footer strong { font-size: 13px; }
.ma-timetable-footer p { color: var(--ma-muted); font-size: 10px; line-height: 1.45; margin: 0; text-align: right; }
.is-good-text { color: var(--ma-positive) !important; }
.is-warning-text { color: var(--ma-warning) !important; }

.ma-dated-strip {
  border-top: 1px solid var(--ma-line);
  display: grid;
  gap: 16px;
  grid-template-columns: 180px minmax(0, 1fr);
  margin-top: 18px;
  padding-top: 18px;
}
.ma-dated-strip h4 { margin: 4px 0 0; }
.ma-dated-strip > div:last-child { display: flex; flex-wrap: wrap; gap: 8px; }

.ma-plan-metrics {
  background: var(--ma-ink);
  border-radius: 18px;
  color: var(--ma-white);
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 16px 0 20px;
  overflow: hidden;
}
.ma-plan-metrics > div { background: rgba(255,255,255,.045); display: grid; gap: 5px; padding: 17px; }
.ma-plan-metrics span { color: rgba(255,255,255,.58); font-size: 9px; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.ma-plan-metrics strong { color: var(--ma-white); font-size: 19px; }

.ma-week-total-table { border: 1px solid var(--ma-line); border-radius: 14px; overflow: hidden; }
.ma-week-total-table__head,
.ma-week-total-table button {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: 130px 140px minmax(0, 1fr);
  padding: 12px 14px;
}
.ma-week-total-table__head { background: var(--ma-cream); color: var(--ma-muted); font-size: 9px; font-weight: 760; letter-spacing: .05em; text-transform: uppercase; }
.ma-week-total-table button { background: var(--ma-white); border: 0; border-top: 1px solid var(--ma-line); color: var(--ma-ink); cursor: pointer; font-size: 12px; text-align: left; }
.ma-week-total-table button:hover { background: var(--ma-teal-pale); }
.ma-week-total-table button i { background: var(--ma-line); border-radius: 99px; height: 7px; overflow: hidden; position: relative; }
.ma-week-total-table button i::after { background: var(--ma-teal); border-radius: inherit; content: ''; inset: 0 auto 0 0; position: absolute; width: var(--value); }

.ma-classification-summary { display: grid; gap: 12px; margin-top: 22px; }
.ma-classification-summary h4 { margin: 4px 0 0; }
.ma-classification-row { align-items: center; display: grid; gap: 12px; grid-template-columns: 160px minmax(0, 1fr) 75px; }
.ma-classification-row > span { color: var(--ma-ink-3); font-size: 11px; }
.ma-classification-row > i { background: var(--ma-line); border-radius: 99px; height: 8px; overflow: hidden; }
.ma-classification-row > i b { background: linear-gradient(90deg, var(--ma-teal), #56bbca); border-radius: inherit; display: block; height: 100%; }
.ma-classification-row > strong { font-size: 11px; text-align: right; }

.ma-callout {
  background: var(--ma-warning-soft);
  border: 1px solid rgba(170, 106, 24, .18);
  border-radius: 14px;
  margin-top: 20px;
  padding: 14px 16px;
}
.ma-callout--success { background: var(--ma-positive-soft); border-color: rgba(22,133,107,.18); }
.ma-callout strong { color: var(--ma-warning); font-size: 12px; }
.ma-callout--success strong { color: var(--ma-positive); }
.ma-callout p { color: var(--ma-ink-3); font-size: 11px; line-height: 1.5; margin: 5px 0 0; }

.ma-context-accordion { border: 1px solid var(--ma-line); border-radius: 14px; overflow: hidden; }
.ma-context-accordion section + section { border-top: 1px solid var(--ma-line); }
.ma-context-accordion section > button {
  align-items: center;
  background: var(--ma-white);
  border: 0;
  color: var(--ma-ink);
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  padding: 13px 14px;
  text-align: left;
  width: 100%;
}
.ma-context-accordion section > button:hover { background: var(--ma-teal-pale); }
.ma-context-accordion section > button span { display: grid; gap: 3px; }
.ma-context-accordion section > button small { color: var(--ma-muted); font-size: 8px; font-weight: 760; letter-spacing: .06em; text-transform: uppercase; }
.ma-context-accordion section > button strong { font-size: 11px; line-height: 1.35; }
.ma-context-accordion section > button i { color: var(--ma-teal-dark); font-size: 17px; font-style: normal; }
.ma-context-form-wrap { background: #fafcfb; border-top: 1px solid var(--ma-line); padding: 14px; }
.ma-context-form { gap: 12px; }
.ma-context-form label > span { font-size: 9px; }
.ma-context-form input,
.ma-context-form select { min-height: 41px; padding: 9px 10px; }
.ma-context-form .ma-button { min-height: 41px; width: 100%; }

/* Current Work cards use text-only guardrails. Reset the older icon-grid
 * contract so narrow sidebars do not put the heading in a 30px column. */
.ma-guardrail {
  background: var(--ma-teal-pale);
  border: 1px solid rgba(7,148,177,.14);
  display: block;
  border-radius: 13px;
  margin-top: 16px;
  padding: 13px;
}
.ma-guardrail strong { color: var(--ma-teal-dark); display: block; font-size: 11px; margin-bottom: 4px; }
.ma-guardrail p { color: var(--ma-muted); font-size: 10px; line-height: 1.5; margin: 0; }

.ma-work-integrity {
  min-height: 180px;
  padding-top: 26px;
  position: relative;
}
.ma-work-integrity > span { align-items: center; background: var(--ma-cream); border-radius: 99px; color: var(--ma-muted); display: flex; height: 30px; justify-content: center; position: absolute; right: 18px; top: 18px; width: 30px; }
.ma-work-integrity.is-good > span { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-work-integrity.is-warning > span { background: var(--ma-warning-soft); color: var(--ma-warning); }
.ma-work-integrity > strong { display: block; font-size: 28px; margin-bottom: 16px; }
.ma-work-integrity h3 { font-size: 14px; margin: 0 0 7px; }
.ma-work-integrity p { color: var(--ma-muted); font-size: 10px; line-height: 1.5; margin: 0; }
.ma-work-future-insights { margin-top: 16px; }
.ma-insight-explainer { margin-top: 16px; }
.ma-insight-explainer h3 { margin: 8px 0; }
.ma-insight-explainer p { color: var(--ma-muted); line-height: 1.6; margin: 0; }
.ma-muted-copy { color: var(--ma-muted); font-size: 11px; }

.ma-source-panel {
  align-items: flex-start;
  background: var(--ma-teal-pale);
  border: 1px solid rgba(7,148,177,.16);
  border-radius: 14px;
  display: flex;
  gap: 12px;
  padding: 13px;
}
.ma-source-panel strong { display: block; font-size: 11px; margin-bottom: 4px; }
.ma-source-panel p { color: var(--ma-muted); font-size: 10px; line-height: 1.5; margin: 0; }

.ma-work-editor-backdrop {
  background: rgba(16, 24, 32, .46);
  inset: 0;
  position: fixed;
  z-index: 9996;
}

.ma-work-editor {
  background: var(--ma-white);
  bottom: 0;
  box-shadow: -20px 0 70px rgba(16,24,32,.22);
  display: flex;
  flex-direction: column;
  max-width: 620px;
  overflow: auto;
  position: fixed;
  right: 0;
  top: 0;
  width: min(620px, 92vw);
  z-index: 9997;
}

.ma-work-editor > header {
  align-items: flex-start;
  background: var(--ma-white);
  border-bottom: 1px solid var(--ma-line);
  display: flex;
  justify-content: space-between;
  padding: 24px 26px 18px;
  position: sticky;
  top: 0;
  z-index: 2;
}
.ma-work-editor > header h2 { font-size: 24px; margin: 6px 0 0; }
.ma-work-session-form { display: grid; gap: 0; padding: 0 26px 30px; }
.ma-editor-section { border-bottom: 1px solid var(--ma-line); padding: 22px 0; }
.ma-editor-section h3 { font-size: 12px; margin: 0 0 14px; }
.ma-work-session-form .ma-source-panel { margin-top: 20px; }
.ma-work-session-form > footer {
  align-items: center;
  background: var(--ma-white);
  border-top: 1px solid var(--ma-line);
  bottom: -30px;
  display: flex;
  justify-content: space-between;
  margin: 24px -26px -30px;
  padding: 16px 26px;
  position: sticky;
  z-index: 2;
}
.ma-work-session-form > footer > div { display: flex; gap: 8px; }
.ma-button--danger-ghost { background: transparent; border-color: rgba(186,61,66,.28); color: var(--ma-danger) !important; }
.ma-button--danger-ghost:hover { background: var(--ma-danger-soft); }

.ma-sample-disclaimer--real { color: var(--ma-positive); }

@media (max-width: 1180px) {
  .ma-work-header { align-items: stretch; }
  .ma-work-header__actions { justify-content: flex-start; }
  .ma-timetable-card--persistent { overflow-x: auto; }
  .ma-timetable-card--persistent .ma-card-head,
  .ma-timetable-card--persistent .ma-work-toolbar,
  .ma-timetable-card--persistent .ma-timetable-footer,
  .ma-timetable-card--persistent .ma-dated-strip { min-width: 800px; }
}

@media (max-width: 860px) {
  .ma-work-template-grid { grid-template-columns: 1fr; }
  .ma-work-template-card { min-height: 330px; }
  .ma-work-setup-review { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ma-plan-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ma-impact-strip--real { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ma-work-toolbar { align-items: flex-start; flex-direction: column; }
  .ma-persistent-grid { display: none; }
  .ma-timetable-card--persistent,
  .ma-timetable-card--persistent .ma-card-head,
  .ma-timetable-card--persistent .ma-work-toolbar,
  .ma-timetable-card--persistent .ma-timetable-footer,
  .ma-timetable-card--persistent .ma-dated-strip { min-width: 0; overflow: visible; }
  .ma-mobile-cycle-list { display: grid; gap: 12px; }
  .ma-mobile-work-day { background: #fbfcfb; border: 1px solid var(--ma-line); border-radius: 15px; overflow: hidden; }
  .ma-mobile-work-day > header { align-items: center; background: var(--ma-ink); color: white; display: flex; justify-content: space-between; padding: 12px 14px; }
  .ma-mobile-work-day > header div { display: grid; gap: 2px; }
  .ma-mobile-work-day > header strong { color: white; font-size: 13px; }
  .ma-mobile-work-day > header span { color: rgba(255,255,255,.56); font-size: 9px; }
  .ma-mobile-work-day > header button { background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); border-radius: 9px; color: white; cursor: pointer; height: 32px; width: 32px; }
  .ma-mobile-period { display: grid; gap: 10px; grid-template-columns: 42px minmax(0, 1fr); padding: 11px; }
  .ma-mobile-period + .ma-mobile-period { border-top: 1px solid var(--ma-line); }
  .ma-mobile-period > span { color: var(--ma-muted); font-size: 9px; font-weight: 800; padding-top: 7px; }
  .ma-mobile-period > div { display: grid; gap: 7px; }
  .ma-mobile-empty-slot { background: transparent; border: 1px dashed var(--ma-line-strong); border-radius: 10px; color: var(--ma-muted); cursor: pointer; font-size: 10px; min-height: 42px; }
  .ma-work-session-card.is-compact { max-width: none; min-width: 0; }
  .ma-timetable-footer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ma-timetable-footer p { grid-column: 1 / -1; text-align: left; }
  .ma-dated-strip { grid-template-columns: 1fr; }
  .ma-classification-row { grid-template-columns: 110px minmax(0, 1fr) 65px; }
}

@media (max-width: 620px) {
  .ma-work-header__actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .ma-work-header__actions .ma-compact-select { grid-column: 1 / -1; min-width: 0; }
  .ma-work-header__actions .ma-button { min-width: 0; padding-inline: 11px; }
  .ma-work-trust-strip { align-items: flex-start; display: grid; grid-template-columns: 1fr; }
  .ma-work-setup__card { border-radius: 20px; padding: 18px; }
  .ma-work-template-card { min-height: 0; padding: 20px; }
  .ma-work-template-card .ma-pill { max-width: 150px; position: static; width: fit-content; }
  .ma-work-template-card__icon { margin-top: 14px; }
  .ma-template-metrics { gap: 10px; grid-template-columns: 1fr; }
  .ma-template-metrics span { grid-template-columns: 52px 1fr; }
  .ma-work-setup-review { grid-template-columns: 1fr 1fr; }
  .ma-today-row { gap: 8px; grid-template-columns: 52px minmax(0, 1fr) 8px; padding: 11px; }
  .ma-today-row .ma-source-badge { display: none; }
  .ma-today-row__main { padding-left: 7px; }
  .ma-impact-strip--real { grid-template-columns: 1fr 1fr; }
  .ma-timetable-head { align-items: flex-start; }
  .ma-timetable-actions { width: 100%; }
  .ma-week-picker { flex: 1; justify-content: center; overflow-x: auto; }
  .ma-layer-toggles { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .ma-layer-toggle > span { justify-content: flex-start; width: 100%; }
  .ma-timetable-summary { justify-content: space-between; width: 100%; }
  .ma-plan-metrics { grid-template-columns: 1fr 1fr; }
  .ma-week-total-table__head,
  .ma-week-total-table button { grid-template-columns: 85px 100px minmax(0, 1fr); padding-inline: 10px; }
  .ma-week-total-table__head { font-size: 8px; }
  .ma-classification-row { grid-template-columns: 92px minmax(0, 1fr) 58px; gap: 8px; }
  .ma-work-editor { width: 100vw; }
  .ma-work-editor > header { padding: 18px; }
  .ma-work-session-form { padding: 0 18px 24px; }
  .ma-work-session-form > footer { align-items: stretch; flex-direction: column-reverse; margin: 20px -18px -24px; padding: 13px 18px; }
  .ma-work-session-form > footer > div { display: grid; grid-template-columns: 1fr 1fr; }
  .ma-work-session-form > footer .ma-button--danger-ghost { width: 100%; }
}

/* Pass 4 corrective UX: the Work-live home hero uses a light surface, so it
 * needs an explicit dark type treatment rather than inheriting the original
 * dark-hero white copy. */
.ma-hero-card--work-live {
  color: var(--ma-ink);
}
.ma-hero-card--work-live h2,
.ma-hero-card--work-live .ma-foundation-meter strong {
  color: var(--ma-ink);
}
.ma-hero-card--work-live > .ma-hero-card__content > p,
.ma-hero-card--work-live .ma-foundation-meter p {
  color: var(--ma-muted);
}
.ma-hero-card--work-live .ma-eyebrow {
  color: var(--ma-teal-dark);
}
.ma-hero-card--work-live .ma-button--secondary {
  background: rgba(255, 255, 255, 0.82);
  border-color: rgba(7, 148, 177, 0.18);
  color: var(--ma-ink) !important;
}
.ma-hero-card--work-live .ma-foundation-meter__ring {
  background: var(--ma-ink);
  color: var(--ma-white);
}
.ma-hero-card--work-live .ma-foundation-meter > div:last-child strong {
  color: var(--ma-ink);
}
.ma-hero-card--work-live .ma-foundation-meter > div:last-child small {
  color: var(--ma-muted);
}

/* -------------------------------------------------------------------------- */
/* Merentra App 0.5.0 — structured import, provenance and review UX           */
/* -------------------------------------------------------------------------- */

.ma-import-overview {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 18px;
}

.ma-import-overview__metric {
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(247,245,239,.72));
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  box-shadow: var(--ma-shadow-xs);
  display: grid;
  gap: 4px;
  min-height: 104px;
  padding: 16px;
  position: relative;
  overflow: hidden;
}

.ma-import-overview__metric::after {
  background: var(--ma-teal-soft);
  border-radius: 50%;
  content: "";
  height: 62px;
  opacity: .7;
  position: absolute;
  right: -24px;
  top: -24px;
  width: 62px;
}

.ma-import-overview__metric.is-warning::after { background: var(--ma-warning-soft); }
.ma-import-overview__metric > span {
  color: var(--ma-muted);
  font-size: 9px;
  font-weight: 780;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.ma-import-overview__metric > strong {
  color: var(--ma-ink);
  font-size: 27px;
  line-height: 1;
  margin-top: 5px;
}
.ma-import-overview__metric > small {
  color: var(--ma-muted-2);
  font-size: 9px;
  line-height: 1.45;
}

.ma-import-workspace { align-items: start; }
.ma-import-main { min-width: 0; }
.ma-import-sidebar {
  align-self: start;
  display: grid;
  gap: 18px;
  position: sticky;
  top: calc(var(--ma-topbar-height) + 22px);
}

.ma-import-lead {
  color: var(--ma-muted);
  font-size: 12px;
  line-height: 1.65;
  margin: -4px 0 20px;
  max-width: 70ch;
}

.ma-import-upload-form { display: grid; gap: 18px; }

.ma-import-drop {
  background:
    radial-gradient(circle at 50% 20%, rgba(7,148,177,.08), transparent 42%),
    linear-gradient(145deg, var(--ma-teal-pale), rgba(255,255,255,.96));
  border: 1.5px dashed rgba(7,148,177,.48);
  border-radius: 20px;
  cursor: pointer;
  min-height: 246px;
  outline: 0;
  overflow: hidden;
  position: relative;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}

.ma-import-drop::before,
.ma-import-drop::after {
  border: 1px solid rgba(7,148,177,.12);
  border-radius: 50%;
  content: "";
  pointer-events: none;
  position: absolute;
}
.ma-import-drop::before { height: 150px; left: -82px; top: -88px; width: 150px; }
.ma-import-drop::after { bottom: -105px; height: 190px; right: -96px; width: 190px; }
.ma-import-drop:hover,
.ma-import-drop.is-dragging {
  background:
    radial-gradient(circle at 50% 20%, rgba(7,148,177,.13), transparent 44%),
    linear-gradient(145deg, #eefbfc, var(--ma-white));
  border-color: var(--ma-teal);
  box-shadow: 0 14px 35px rgba(7,148,177,.11);
  transform: translateY(-1px);
}
.ma-import-drop:focus-within {
  border-color: var(--ma-teal);
  box-shadow: 0 0 0 3px rgba(7,148,177,.16), var(--ma-shadow-sm);
}
.ma-import-drop input[type="file"] {
  height: 1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  width: 1px;
}
.ma-import-drop__icon {
  align-items: center;
  background: var(--ma-ink);
  border: 6px solid rgba(255,255,255,.82);
  border-radius: 50%;
  box-shadow: 0 8px 24px rgba(16,24,32,.17);
  color: var(--ma-white);
  display: inline-flex;
  font-size: 22px;
  font-weight: 650;
  height: 64px;
  justify-content: center;
  margin-bottom: 18px;
  width: 64px;
}
.ma-import-drop > strong {
  color: var(--ma-ink);
  display: block;
  font-size: 16px;
  line-height: 1.35;
  margin: 0;
  max-width: 540px;
  overflow-wrap: anywhere;
}
.ma-import-drop > p { margin: 8px 0 15px; }
.ma-import-drop > b {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid rgba(7,148,177,.22);
  border-radius: 999px;
  color: var(--ma-teal-dark);
  display: inline-flex;
  font-size: 10px;
  font-weight: 800;
  min-height: 34px;
  padding: 0 15px;
}

.ma-import-context-grid { margin-top: 2px; }
.ma-import-advanced,
.ma-import-mapping,
.ma-import-preview,
.ma-import-map-more {
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  overflow: hidden;
}
.ma-import-advanced > summary,
.ma-import-mapping > summary,
.ma-import-preview > summary,
.ma-import-map-more > summary {
  align-items: center;
  background: #fbfcfb;
  color: var(--ma-ink);
  cursor: pointer;
  display: flex;
  font-size: 11px;
  font-weight: 750;
  gap: 14px;
  justify-content: space-between;
  list-style: none;
  min-height: 52px;
  padding: 12px 15px;
}
.ma-import-advanced > summary::-webkit-details-marker,
.ma-import-mapping > summary::-webkit-details-marker,
.ma-import-preview > summary::-webkit-details-marker,
.ma-import-map-more > summary::-webkit-details-marker { display: none; }
.ma-import-advanced > summary::after,
.ma-import-mapping > summary::after,
.ma-import-preview > summary::after,
.ma-import-map-more > summary::after {
  color: var(--ma-teal-dark);
  content: "+";
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
}
.ma-import-advanced[open] > summary::after,
.ma-import-mapping[open] > summary::after,
.ma-import-preview[open] > summary::after,
.ma-import-map-more[open] > summary::after { content: "−"; }
.ma-import-advanced > summary span,
.ma-import-mapping > summary span,
.ma-import-preview > summary span { color: var(--ma-muted); font-size: 9px; font-weight: 500; }
.ma-import-advanced > div { background: var(--ma-paper); border-top: 1px solid var(--ma-line); padding: 16px; }

.ma-import-boundary {
  background: var(--ma-ink);
  border-radius: 16px;
  color: var(--ma-white);
  display: grid;
  gap: 11px;
  grid-template-columns: 30px minmax(0, 1fr) 30px minmax(0, 1fr) 30px minmax(0, 1fr);
  padding: 18px;
}
.ma-import-boundary > span {
  align-items: center;
  align-self: start;
  background: rgba(7,148,177,.2);
  border: 1px solid rgba(103,224,244,.28);
  border-radius: 50%;
  color: #8ee8f5;
  display: flex;
  font-size: 10px;
  font-weight: 850;
  height: 30px;
  justify-content: center;
  width: 30px;
}
.ma-import-boundary > div { display: grid; gap: 4px; }
.ma-import-boundary strong { color: var(--ma-white); font-size: 10px; }
.ma-import-boundary p { color: rgba(255,255,255,.63); font-size: 9px; line-height: 1.5; margin: 0; }
.ma-import-privacy-note { color: var(--ma-muted); font-size: 9px; line-height: 1.45; max-width: 45ch; }

.ma-import-feed-card {
  align-items: start;
  background: linear-gradient(135deg, rgba(247,245,239,.84), rgba(231,247,250,.58));
  border: 1px solid var(--ma-line);
  border-radius: 18px;
  display: grid;
  gap: 22px;
  grid-template-columns: minmax(190px, .7fr) minmax(0, 1.3fr);
  margin-top: 24px;
  padding: 20px;
}
.ma-import-feed-card > div { display: grid; gap: 7px; padding-top: 4px; }
.ma-import-feed-card h4 { font-size: 15px; line-height: 1.3; margin: 0; }
.ma-import-feed-card p { color: var(--ma-muted); font-size: 10px; line-height: 1.55; margin: 0; }

.ma-import-run-head { display: grid; gap: 13px; }
.ma-import-run-head > .ma-text-button { justify-self: start; }
.ma-import-run-head .ma-card-head { margin: 0; }
.ma-import-run-head .ma-card-head p { color: var(--ma-muted); font-size: 9px; margin: 5px 0 0; overflow-wrap: anywhere; }

.ma-import-status {
  align-items: center;
  border: 1px solid var(--ma-line);
  border-radius: 999px;
  display: inline-flex;
  font-size: 9px;
  font-weight: 820;
  min-height: 30px;
  padding: 0 12px;
  white-space: nowrap;
}
.ma-import-status.is-review { background: var(--ma-warning-soft); border-color: #eddaae; color: #855817; }
.ma-import-status.is-published { background: var(--ma-positive-soft); border-color: #bfdfd5; color: var(--ma-positive); }
.ma-import-status.is-rolled_back { background: #f0f3f3; color: var(--ma-muted); }

.ma-import-stepper {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 22px 0 16px;
  position: relative;
}
.ma-import-stepper::before {
  background: var(--ma-line);
  content: "";
  height: 1px;
  left: 16.6%;
  position: absolute;
  right: 16.6%;
  top: 17px;
}
.ma-import-stepper > div {
  align-items: center;
  display: grid;
  gap: 4px;
  justify-items: center;
  position: relative;
  text-align: center;
  z-index: 1;
}
.ma-import-stepper > div > span {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line-strong);
  border-radius: 50%;
  color: var(--ma-muted);
  display: flex;
  font-size: 9px;
  font-weight: 850;
  height: 34px;
  justify-content: center;
  width: 34px;
}
.ma-import-stepper > div.is-done > span { background: var(--ma-positive); border-color: var(--ma-positive); color: var(--ma-white); }
.ma-import-stepper > div.is-active > span { background: var(--ma-teal); border-color: var(--ma-teal); box-shadow: 0 0 0 5px rgba(7,148,177,.11); color: var(--ma-white); }
.ma-import-stepper > div.is-neutral > span { background: #edf1f1; color: var(--ma-muted); }
.ma-import-stepper strong { font-size: 9px; }
.ma-import-stepper small { color: var(--ma-muted); font-size: 8px; }

.ma-import-run-metrics {
  background: #fbfcfb;
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 16px;
  overflow: hidden;
}
.ma-import-run-metrics > div {
  border-left: 1px solid var(--ma-line);
  display: grid;
  gap: 4px;
  min-height: 68px;
  padding: 12px 14px;
}
.ma-import-run-metrics > div:first-child { border-left: 0; }
.ma-import-run-metrics > div.is-warning { background: var(--ma-warning-soft); }
.ma-import-run-metrics span { color: var(--ma-muted); font-size: 8px; font-weight: 760; text-transform: uppercase; }
.ma-import-run-metrics strong { font-size: 17px; }

.ma-import-preview { margin: 16px 0; }
.ma-import-preview > summary span:first-child { display: grid; gap: 3px; }
.ma-import-preview > summary strong { color: var(--ma-ink); font-size: 10px; }
.ma-import-preview > summary small { color: var(--ma-muted); font-size: 8px; font-weight: 500; }
.ma-import-preview__body { background: var(--ma-paper); border-top: 1px solid var(--ma-line); padding: 15px; }
.ma-import-preview-table {
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  display: grid;
  max-height: 320px;
  overflow: auto;
}
.ma-import-preview-table > div {
  background: var(--ma-white);
  border-top: 1px solid var(--ma-line);
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(auto-fit, minmax(105px, 1fr));
}
.ma-import-preview-table > div:first-child { border-top: 0; }
.ma-import-preview-table span { border-left: 1px solid var(--ma-line); display: grid; gap: 3px; min-width: 0; padding: 9px; }
.ma-import-preview-table span:first-child { border-left: 0; }
.ma-import-preview-table small { color: var(--ma-muted); font-size: 7px; overflow: hidden; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.ma-import-preview-table strong { font-size: 9px; overflow-wrap: anywhere; }
.ma-import-preview__actions { align-items: center; display: flex; gap: 14px; justify-content: space-between; margin-top: 13px; }
.ma-import-preview__actions p { color: var(--ma-muted); font-size: 8px; line-height: 1.45; margin: 0; text-align: right; }

.ma-import-detection {
  align-items: center;
  background: var(--ma-positive-soft);
  border: 1px solid #c7e6dd;
  border-radius: 14px;
  display: grid;
  gap: 13px;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  margin: 16px 0;
  padding: 14px;
}
.ma-import-detection__icon {
  align-items: center;
  background: var(--ma-positive);
  border-radius: 50%;
  color: var(--ma-white);
  display: flex;
  font-size: 13px;
  height: 38px;
  justify-content: center;
  width: 38px;
}
.ma-import-detection > div { display: grid; gap: 4px; }
.ma-import-detection strong { color: var(--ma-ink); font-size: 11px; }
.ma-import-detection p { color: var(--ma-muted); font-size: 9px; line-height: 1.5; margin: 0; }

.ma-import-mapping { margin: 16px 0; }
.ma-import-mapping > summary span:first-child { display: grid; gap: 3px; }
.ma-import-mapping > summary strong { color: var(--ma-ink); font-size: 10px; }
.ma-import-mapping > form { background: var(--ma-paper); border-top: 1px solid var(--ma-line); padding: 16px; }
.ma-import-map-grid { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ma-import-map-more { border-radius: 12px; margin: 15px 0; }
.ma-import-map-more > div { background: #fbfcfb; border-top: 1px solid var(--ma-line); padding: 14px; }

.ma-import-review { border-top: 1px solid var(--ma-line); margin-top: 22px; padding-top: 22px; }
.ma-import-review__head { align-items: end; display: flex; gap: 18px; justify-content: space-between; margin-bottom: 15px; }
.ma-import-review__head h4 { font-size: 16px; margin: 3px 0 5px; }
.ma-import-review__head p { color: var(--ma-muted); font-size: 9px; line-height: 1.5; margin: 0; max-width: 64ch; }
.ma-import-filter {
  background: #f0f3f3;
  border: 1px solid var(--ma-line);
  border-radius: 10px;
  display: flex;
  gap: 3px;
  overflow-x: auto;
  padding: 3px;
}
.ma-import-filter button {
  background: transparent;
  border: 0;
  border-radius: 7px;
  color: var(--ma-muted);
  cursor: pointer;
  font-size: 8px;
  font-weight: 750;
  min-height: 29px;
  padding: 0 9px;
  white-space: nowrap;
}
.ma-import-filter button:hover { color: var(--ma-ink); }
.ma-import-filter button.is-active { background: var(--ma-white); box-shadow: var(--ma-shadow-xs); color: var(--ma-ink); }
.ma-import-items { display: grid; gap: 10px; }

.ma-import-item {
  align-items: stretch;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-left: 4px solid var(--ma-line-strong);
  border-radius: 13px;
  display: grid;
  gap: 14px;
  grid-template-columns: 86px minmax(0, 1fr) 150px;
  min-width: 0;
  padding: 13px;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.ma-import-item.is-create { border-left-color: var(--ma-teal); }
.ma-import-item.is-update { border-left-color: var(--ma-positive); }
.ma-import-item.is-conflict { border-left-color: var(--ma-warning); }
.ma-import-item.is-duplicate { border-left-color: #9aa7ad; }
.ma-import-item.is-invalid { border-left-color: var(--ma-danger); }
.ma-import-item.is-selected { border-color: rgba(7,148,177,.46); box-shadow: 0 8px 24px rgba(7,148,177,.08); }
.ma-import-item:hover { transform: translateY(-1px); }
.ma-import-item__signal { align-content: start; display: grid; gap: 12px; }
.ma-import-action {
  border-radius: 999px;
  display: inline-flex;
  font-size: 7px;
  font-weight: 850;
  justify-content: center;
  letter-spacing: .04em;
  min-height: 25px;
  padding: 7px 8px;
  text-align: center;
  text-transform: uppercase;
}
.ma-import-action.is-create { background: var(--ma-teal-soft); color: var(--ma-teal-dark); }
.ma-import-action.is-update { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-import-action.is-conflict { background: var(--ma-warning-soft); color: #855817; }
.ma-import-action.is-duplicate { background: #eef1f1; color: var(--ma-muted); }
.ma-import-action.is-invalid { background: var(--ma-danger-soft); color: var(--ma-danger); }
.ma-confidence { display: grid; gap: 5px; }
.ma-confidence i { background: #e9eeee; border-radius: 999px; height: 5px; overflow: hidden; position: relative; }
.ma-confidence i::before { background: var(--ma-teal); border-radius: inherit; content: ""; inset: 0 auto 0 0; position: absolute; width: var(--confidence, 0%); }
.ma-confidence span { color: var(--ma-muted); font-size: 8px; text-align: right; }
.ma-import-item__content { display: grid; gap: 10px; min-width: 0; }
.ma-import-item__title { align-items: start; display: flex; gap: 12px; justify-content: space-between; }
.ma-import-item__title > div { display: grid; gap: 3px; min-width: 0; }
.ma-import-item__title strong { font-size: 12px; line-height: 1.35; overflow-wrap: anywhere; }
.ma-import-item__title p { color: var(--ma-muted); font-size: 9px; line-height: 1.4; margin: 0; }
.ma-import-item__facts { display: flex; flex-wrap: wrap; gap: 6px; }
.ma-import-item__facts span {
  background: #f3f6f6;
  border: 1px solid #e5ebeb;
  border-radius: 999px;
  color: var(--ma-muted);
  font-size: 7px;
  font-weight: 710;
  padding: 5px 8px;
}
.ma-import-issues { display: flex; flex-wrap: wrap; gap: 5px; }
.ma-import-issues span { background: var(--ma-warning-soft); border-radius: 7px; color: #855817; font-size: 8px; line-height: 1.4; padding: 5px 7px; }
.ma-import-clear { color: var(--ma-positive); font-size: 8px; }
.ma-import-item__decision { align-content: center; display: grid; gap: 7px; }
.ma-import-item__decision label {
  align-items: center;
  background: #fbfcfb;
  border: 1px solid var(--ma-line);
  border-radius: 9px;
  cursor: pointer;
  display: flex;
  gap: 8px;
  min-height: 38px;
  padding: 8px 10px;
}
.ma-import-item__decision label:has(input:checked) { background: var(--ma-teal-pale); border-color: rgba(7,148,177,.38); }
.ma-import-item__decision label.is-disabled { cursor: not-allowed; opacity: .55; }
.ma-import-item__decision input { accent-color: var(--ma-teal); margin: 0; }
.ma-import-item__decision span { font-size: 8px; font-weight: 720; }

.ma-import-empty,
.ma-import-sidebar-empty {
  align-items: center;
  color: var(--ma-muted);
  display: grid;
  gap: 5px;
  justify-items: center;
  min-height: 120px;
  padding: 22px;
  text-align: center;
}
.ma-import-empty strong,
.ma-import-sidebar-empty strong { color: var(--ma-ink); font-size: 11px; }
.ma-import-empty p,
.ma-import-sidebar-empty p { font-size: 9px; margin: 0; }

.ma-import-publish-bar {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 15px;
  color: var(--ma-white);
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin-top: 18px;
  padding: 17px 18px;
}
.ma-import-publish-bar > div { display: grid; gap: 3px; }
.ma-import-publish-bar span { color: #8ee8f5; font-size: 8px; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; }
.ma-import-publish-bar strong { color: var(--ma-white); font-size: 11px; }
.ma-import-publish-bar p { color: rgba(255,255,255,.62); font-size: 8px; line-height: 1.45; margin: 0; }
.ma-import-publish-bar .ma-button { flex: 0 0 auto; }
.ma-import-publish-bar--undo { background: #f6f8f8; border: 1px solid var(--ma-line); color: var(--ma-ink); }
.ma-import-publish-bar--undo strong { color: var(--ma-ink); }
.ma-import-publish-bar--undo p { color: var(--ma-muted); }

.ma-import-complete {
  align-items: start;
  background: var(--ma-positive-soft);
  border: 1px solid #c4e4da;
  border-radius: 17px;
  display: grid;
  gap: 14px;
  grid-template-columns: 48px minmax(0, 1fr);
  margin: 22px 0 16px;
  padding: 18px;
}
.ma-import-complete--neutral { background: #f2f5f5; border-color: var(--ma-line); }
.ma-import-complete__icon {
  align-items: center;
  background: var(--ma-positive);
  border-radius: 50%;
  color: var(--ma-white);
  display: flex;
  font-size: 17px;
  height: 48px;
  justify-content: center;
  width: 48px;
}
.ma-import-complete--neutral .ma-import-complete__icon { background: var(--ma-muted); }
.ma-import-complete > div { display: grid; gap: 5px; }
.ma-import-complete h4 { font-size: 15px; margin: 0; }
.ma-import-complete p { color: var(--ma-muted); font-size: 9px; line-height: 1.55; margin: 0; }
.ma-import-ledger {
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: grid;
  max-height: 300px;
  overflow: auto;
}
.ma-import-ledger > div { align-items: center; border-top: 1px solid var(--ma-line); display: grid; gap: 10px; grid-template-columns: 90px minmax(0, 1fr) auto; padding: 10px 12px; }
.ma-import-ledger > div:first-child { border-top: 0; }
.ma-import-ledger span { color: var(--ma-teal-dark); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.ma-import-ledger strong { font-size: 10px; }
.ma-import-ledger small { color: var(--ma-muted); font-size: 8px; }

.ma-import-history { display: grid; gap: 13px; }
.ma-import-history .ma-card-head { margin: 0; }
.ma-import-history .ma-card-head h3 { font-size: 15px; }
.ma-import-history__list { display: grid; gap: 6px; }
.ma-import-history__list > button {
  align-items: center;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 11px;
  color: var(--ma-ink);
  cursor: pointer;
  display: grid;
  gap: 9px;
  grid-template-columns: 38px minmax(0, 1fr) 9px;
  min-height: 54px;
  padding: 7px;
  text-align: left;
  width: 100%;
}
.ma-import-history__list > button:hover { background: #f7f9f9; }
.ma-import-history__list > button.is-active { background: var(--ma-teal-pale); border-color: rgba(7,148,177,.25); }
.ma-import-history__icon {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 9px;
  color: var(--ma-white);
  display: flex;
  font-size: 8px;
  font-weight: 850;
  height: 38px;
  justify-content: center;
  width: 38px;
}
.ma-import-history__list > button > span:nth-child(2) { display: grid; gap: 3px; min-width: 0; }
.ma-import-history__list strong { font-size: 9px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ma-import-history__list small { color: var(--ma-muted); font-size: 8px; }
.ma-import-mini-status { background: var(--ma-line-strong); border-radius: 50%; height: 8px; width: 8px; }
.ma-import-mini-status.is-review { background: var(--ma-warning); }
.ma-import-mini-status.is-published { background: var(--ma-positive); }
.ma-import-mini-status.is-rolled_back { background: var(--ma-muted); }

.ma-import-assets {
  border-top: 1px solid var(--ma-line);
  display: grid;
  gap: 0;
  padding-top: 12px;
}
.ma-import-assets > div { align-items: center; border-bottom: 1px solid var(--ma-line); display: flex; justify-content: space-between; min-height: 38px; }
.ma-import-assets > div span { color: var(--ma-muted); font-size: 9px; }
.ma-import-assets > div strong { font-size: 11px; }
.ma-import-assets ul { display: grid; gap: 7px; list-style: none; margin: 12px 0 0; padding: 0; }
.ma-import-assets li { align-items: center; background: #f7f9f9; border-radius: 10px; display: grid; gap: 8px; grid-template-columns: 32px minmax(0, 1fr); padding: 7px; }
.ma-import-assets li > span { align-items: center; background: var(--ma-teal-soft); border-radius: 8px; color: var(--ma-teal-dark); display: flex; font-size: 7px; font-weight: 850; height: 32px; justify-content: center; }
.ma-import-assets li > div { display: grid; gap: 2px; min-width: 0; }
.ma-import-assets li strong { font-size: 8px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ma-import-assets li small { color: var(--ma-muted); font-size: 7px; }

@media (max-width: 1180px) {
  .ma-import-sidebar { position: static; }
  .ma-import-workspace > .ma-card--span-8,
  .ma-import-workspace > .ma-card--span-4 { grid-column: 1 / -1; }
  .ma-import-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ma-import-sidebar > .ma-guardrail { grid-column: 1 / -1; }
}

@media (max-width: 860px) {
  .ma-import-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ma-import-feed-card { grid-template-columns: 1fr; }
  .ma-import-boundary { grid-template-columns: 30px minmax(0, 1fr); }
  .ma-import-boundary > span:nth-of-type(2),
  .ma-import-boundary > span:nth-of-type(3) { margin-top: 5px; }
  .ma-import-review__head { align-items: stretch; flex-direction: column; }
  .ma-import-filter { align-self: stretch; }
  .ma-import-item { grid-template-columns: 72px minmax(0, 1fr); }
  .ma-import-item__decision { grid-column: 1 / -1; grid-template-columns: 1fr 1fr; }
  .ma-import-sidebar { grid-template-columns: 1fr; }
  .ma-import-sidebar > .ma-guardrail { grid-column: auto; }
}

@media (max-width: 620px) {
  .ma-import-overview { gap: 8px; }
  .ma-import-overview__metric { min-height: 88px; padding: 12px; }
  .ma-import-overview__metric > strong { font-size: 22px; }
  .ma-import-drop { min-height: 225px; padding: 24px 16px; }
  .ma-import-drop > strong { font-size: 14px; }
  .ma-import-drop__icon { height: 56px; width: 56px; }
  .ma-import-boundary { padding: 14px; }
  .ma-import-feed-card { margin-top: 18px; padding: 15px; }
  .ma-import-stepper strong { font-size: 8px; }
  .ma-import-stepper small { display: none; }
  .ma-import-run-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ma-import-run-metrics > div { border-bottom: 1px solid var(--ma-line); min-height: 58px; padding: 9px; }
  .ma-import-run-metrics > div:nth-child(4) { border-left: 0; }
  .ma-import-preview__actions { align-items: stretch; flex-direction: column; }
  .ma-import-preview__actions p { text-align: left; }
  .ma-import-map-grid { grid-template-columns: 1fr; }
  .ma-import-filter button { flex: 0 0 auto; }
  .ma-import-item { gap: 10px; grid-template-columns: 58px minmax(0, 1fr); padding: 10px; }
  .ma-import-item__title { align-items: flex-start; }
  .ma-import-item__title .ma-source-badge { display: none; }
  .ma-import-action { font-size: 6px; padding-inline: 5px; }
  .ma-import-item__decision { gap: 6px; }
  .ma-import-publish-bar { align-items: stretch; flex-direction: column; padding: 14px; }
  .ma-import-publish-bar .ma-button { width: 100%; }
  .ma-import-complete { grid-template-columns: 40px minmax(0, 1fr); padding: 14px; }
  .ma-import-complete__icon { height: 40px; width: 40px; }
  .ma-import-ledger > div { grid-template-columns: 70px minmax(0, 1fr); }
  .ma-import-ledger small { grid-column: 1 / -1; }
  .ma-import-sidebar { padding: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .ma-import-drop,
  .ma-import-item { transition: none; }
}

/* Merentra App 0.8.0 — connected sources and review-first synchronisation */
.ma-import-format-strip {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 16px 0;
}
.ma-import-format-strip > span {
  align-items: center;
  background: #f7f9f9;
  border: 1px solid var(--ma-line);
  border-radius: 11px;
  color: var(--ma-muted);
  display: flex;
  flex-direction: column;
  font-size: 8px;
  gap: 5px;
  justify-content: center;
  min-height: 54px;
  padding: 8px;
  text-align: center;
}
.ma-import-format-strip b { color: var(--ma-ink); font-size: 9px; letter-spacing: .08em; }

.ma-document-layout-choice {
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  margin: 0;
  padding: 14px;
}
.ma-document-layout-choice > legend {
  color: var(--ma-ink);
  font-size: 10px;
  font-weight: 800;
  padding: 0 6px;
}
.ma-document-layout-choice > div { display: grid; gap: 8px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ma-document-layout-choice label { cursor: pointer; display: block; position: relative; }
.ma-document-layout-choice input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.ma-document-layout-choice label > span {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  display: grid;
  gap: 4px;
  min-height: 84px;
  padding: 12px;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.ma-document-layout-choice label:hover > span { border-color: var(--ma-line-strong); }
.ma-document-layout-choice input:checked + span {
  background: var(--ma-teal-pale);
  border-color: rgba(7,148,177,.5);
  box-shadow: 0 0 0 2px rgba(7,148,177,.09);
}
.ma-document-layout-choice strong { font-size: 10px; line-height: 1.35; }
.ma-document-layout-choice small { color: var(--ma-muted); font-size: 8px; line-height: 1.45; }

.ma-document-review-layout {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(310px, .9fr) minmax(390px, 1.1fr);
  margin-top: 18px;
}
.ma-document-review-control { display: grid; gap: 14px; min-width: 0; }
.ma-document-source {
  background: #f7f9f9;
  border: 1px solid var(--ma-line);
  border-radius: 16px;
  display: grid;
  gap: 12px;
  padding: 14px;
  position: sticky;
  top: 18px;
}
.ma-document-source__head { align-items: flex-start; display: flex; gap: 12px; justify-content: space-between; }
.ma-document-source__head h4 { font-size: 14px; line-height: 1.25; margin: 2px 0 4px; }
.ma-document-source__head p { color: var(--ma-muted); font-size: 8px; line-height: 1.45; margin: 0; }
.ma-document-canvas {
  background: #dfe5e6;
  border: 1px solid var(--ma-line-strong);
  border-radius: 12px;
  min-height: 340px;
  overflow: hidden;
  position: relative;
}
.ma-document-canvas.is-image { align-items: center; display: flex; justify-content: center; padding: 10px; }
.ma-document-canvas iframe { background: var(--ma-white); border: 0; display: block; height: 560px; width: 100%; }
.ma-document-image-wrap { line-height: 0; max-height: 680px; max-width: 100%; overflow: auto; position: relative; }
.ma-document-image-wrap > img { display: block; height: auto; max-width: 100%; width: 100%; }
.ma-source-region {
  appearance: none;
  background: rgba(7,148,177,.04);
  border: 1px solid rgba(7,148,177,.3);
  border-radius: 3px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.45);
  cursor: pointer;
  min-height: 4px;
  min-width: 4px;
  padding: 0;
  position: absolute;
  transition: background .14s ease, border-color .14s ease, box-shadow .14s ease, transform .14s ease;
}
.ma-source-region:hover,
.ma-source-region:focus-visible { background: rgba(7,148,177,.13); border-color: var(--ma-teal); box-shadow: 0 0 0 2px rgba(7,148,177,.18); outline: none; z-index: 3; }
.ma-source-region.is-low { background: rgba(231,105,75,.08); border-color: rgba(231,105,75,.6); }
.ma-source-region.is-selected {
  background: rgba(7,148,177,.18);
  border: 2px solid var(--ma-teal-dark);
  box-shadow: 0 0 0 3px rgba(7,148,177,.2), 0 5px 18px rgba(16,24,32,.15);
  transform: scale(1.015);
  z-index: 4;
}
.ma-source-region > span {
  background: var(--ma-teal-dark);
  border-radius: 4px;
  color: var(--ma-white);
  display: none;
  font-size: 6px;
  font-weight: 850;
  left: 50%;
  line-height: 1;
  padding: 4px 5px;
  position: absolute;
  top: -4px;
  transform: translate(-50%,-100%);
  white-space: nowrap;
}
.ma-source-region.is-selected > span,
.ma-source-region.is-low:hover > span { display: block; }
.ma-document-source__legend { display: flex; flex-wrap: wrap; gap: 12px; }
.ma-document-source__legend > span { align-items: center; color: var(--ma-muted); display: flex; font-size: 7px; gap: 5px; }
.ma-document-source__legend i { background: rgba(7,148,177,.05); border: 1px solid rgba(7,148,177,.35); border-radius: 2px; height: 9px; width: 13px; }
.ma-document-source__legend i.is-selected { background: rgba(7,148,177,.2); border: 2px solid var(--ma-teal-dark); }
.ma-document-source__legend i.is-low { background: rgba(231,105,75,.1); border-color: var(--ma-coral); }
.ma-document-source__privacy { color: var(--ma-muted); font-size: 7px; line-height: 1.45; margin: 0; }

.ma-document-detection { margin: 0; }
.ma-document-detection .ma-form { padding-top: 12px; }
.ma-import-review { min-width: 0; }
.ma-import-item.is-focused { border-color: rgba(7,148,177,.62); box-shadow: 0 0 0 2px rgba(7,148,177,.09); }
.ma-import-item__select {
  align-items: stretch;
  appearance: none;
  background: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  display: contents;
  font: inherit;
  padding: 0;
  text-align: left;
}
.ma-import-item__title small { color: var(--ma-muted); display: block; font-size: 8px; margin-top: 4px; }
.ma-import-extraction {
  background: #f7f9f9;
  border: 1px solid var(--ma-line);
  border-radius: 9px;
  display: grid;
  gap: 8px;
  margin-top: 8px;
  padding: 8px;
}
.ma-import-extraction > span:first-child { display: grid; gap: 2px; }
.ma-import-extraction small { color: var(--ma-muted); font-size: 7px; text-transform: uppercase; }
.ma-import-extraction strong { font-size: 8px; line-height: 1.4; }
.ma-field-confidence { display: flex; flex-wrap: wrap; gap: 4px; }
.ma-field-confidence i {
  background: var(--ma-teal-pale);
  border-radius: 999px;
  color: var(--ma-teal-dark);
  font-size: 6px;
  font-style: normal;
  font-weight: 750;
  padding: 4px 6px;
}
.ma-field-confidence i.is-low { background: rgba(231,105,75,.11); color: #a23f2a; }
.ma-import-item__mara { align-self: center; font-size: 8px; grid-column: 2; justify-self: start; margin-top: -4px; }
.ma-import-issues i { font-style: normal; }

/* Document reviews live beside the protected source, so use a compact two-column
   card instead of squeezing the proposal between two fixed-width rails. */
.ma-document-review-layout .ma-import-item {
  grid-template-columns: 66px minmax(0, 1fr);
}
.ma-document-review-layout .ma-import-item__decision {
  grid-column: 1 / -1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.ma-document-review-layout .ma-import-item__mara { grid-column: 2; }
.ma-document-review-layout .ma-import-issues { align-items: flex-start; }
.ma-document-review-layout .ma-import-issues i {
  background: var(--ma-warning-soft);
  border-radius: 7px;
  color: #855817;
  font-size: 8px;
  line-height: 1.4;
  padding: 5px 7px;
}

.ma-mara-reconcile {
  background: linear-gradient(150deg, #f4fbfc 0%, #fff 66%);
  border: 1px solid rgba(7,148,177,.3);
  border-radius: 16px;
  box-shadow: 0 10px 28px rgba(16,24,32,.06);
  display: grid;
  gap: 14px;
  padding: 15px;
}
.ma-mara-reconcile__head { align-items: center; display: grid; gap: 10px; grid-template-columns: 38px minmax(0, 1fr) auto; }
.ma-mara-reconcile__head .ma-mara-orb { font-size: 15px; height: 38px; width: 38px; }
.ma-mara-reconcile__head h4 { font-size: 15px; margin: 2px 0; }
.ma-mara-reconcile__head p { color: var(--ma-muted); font-size: 8px; line-height: 1.45; margin: 0; }
.ma-mara-reconcile__form { gap: 13px; }
.ma-mara-reconcile textarea { min-height: 78px; resize: vertical; }
.ma-mara-reconcile fieldset { border: 0; margin: 0; padding: 0; }
.ma-mara-reconcile legend { font-size: 9px; font-weight: 800; margin-bottom: 7px; }
.ma-mara-scope-grid { display: grid; gap: 6px; grid-template-columns: repeat(2, minmax(0,1fr)); }
.ma-mara-scope-grid label { cursor: pointer; position: relative; }
.ma-mara-scope-grid input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.ma-mara-scope-grid label > span {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 10px;
  display: grid;
  gap: 3px;
  min-height: 66px;
  padding: 9px;
}
.ma-mara-scope-grid input:checked + span { background: var(--ma-teal-pale); border-color: rgba(7,148,177,.55); }
.ma-mara-scope-grid strong { font-size: 8px; line-height: 1.35; }
.ma-mara-scope-grid small { color: var(--ma-muted); font-size: 7px; line-height: 1.35; }
.ma-mara-action { display: grid; gap: 12px; }
.ma-mara-action__summary { align-items: flex-start; display: flex; gap: 12px; justify-content: space-between; }
.ma-mara-action__summary > div { display: grid; gap: 3px; }
.ma-mara-action__summary span { color: var(--ma-teal-dark); font-size: 7px; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; }
.ma-mara-action__summary strong { font-size: 10px; line-height: 1.45; }
.ma-mara-action__summary > b { background: var(--ma-teal-pale); border-radius: 999px; color: var(--ma-teal-dark); font-size: 7px; padding: 5px 7px; white-space: nowrap; }
.ma-mara-diff { background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 11px; overflow: hidden; }
.ma-mara-diff > div { align-items: center; border-top: 1px solid var(--ma-line); display: grid; gap: 8px; grid-template-columns: 86px minmax(0,1fr) 12px minmax(0,1fr); padding: 9px; }
.ma-mara-diff > div:first-child { border-top: 0; }
.ma-mara-diff span { color: var(--ma-muted); font-size: 7px; font-weight: 750; }
.ma-mara-diff del,
.ma-mara-diff ins { border-radius: 6px; font-size: 8px; line-height: 1.35; padding: 5px; text-decoration: none; }
.ma-mara-diff del { background: rgba(231,105,75,.08); color: #8c4838; }
.ma-mara-diff ins { background: var(--ma-teal-pale); color: var(--ma-teal-dark); }
.ma-mara-diff i { color: var(--ma-muted); font-size: 8px; font-style: normal; text-align: center; }
.ma-mara-action__scope { align-items: center; display: grid; gap: 7px; grid-template-columns: auto auto minmax(0,1fr); }
.ma-mara-action__scope span { color: var(--ma-muted); font-size: 7px; text-transform: uppercase; }
.ma-mara-action__scope strong { font-size: 8px; }
.ma-mara-action__scope small { color: var(--ma-muted); font-size: 7px; text-align: right; }
.ma-mara-action__closed { background: #f7f9f9; border-radius: 9px; display: grid; gap: 3px; padding: 9px; }
.ma-mara-action__closed span { font-size: 8px; font-weight: 750; }
.ma-mara-action__closed small { color: var(--ma-muted); font-size: 7px; }

@media (max-width: 1220px) {
  .ma-document-review-layout { grid-template-columns: minmax(280px,.8fr) minmax(360px,1.2fr); }
}
@media (max-width: 980px) {
  .ma-import-format-strip { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .ma-document-layout-choice > div { grid-template-columns: 1fr; }
  .ma-document-layout-choice label > span { min-height: 0; }
  .ma-document-review-layout { grid-template-columns: 1fr; }
  .ma-document-source { position: static; }
  .ma-document-canvas iframe { height: 480px; }
}
@media (max-width: 620px) {
  .ma-import-format-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-import-format-strip > span:last-child { grid-column: 1 / -1; }
  .ma-document-source { border-radius: 12px; padding: 10px; }
  .ma-document-source__head h4 { font-size: 12px; }
  .ma-document-canvas { min-height: 250px; }
  .ma-document-canvas iframe { height: 400px; }
  .ma-document-review-layout { gap: 12px; }
  .ma-mara-reconcile { border-radius: 12px; padding: 12px; }
  .ma-mara-reconcile__head { grid-template-columns: 34px minmax(0,1fr); }
  .ma-mara-reconcile__head .ma-pill { grid-column: 1 / -1; justify-self: start; }
  .ma-mara-scope-grid { grid-template-columns: 1fr; }
  .ma-mara-scope-grid label > span { min-height: 0; }
  .ma-mara-diff > div { grid-template-columns: 70px minmax(0,1fr); }
  .ma-mara-diff i { display: none; }
  .ma-mara-diff ins { grid-column: 2; }
  .ma-mara-action__summary { flex-direction: column; }
  .ma-mara-action__scope { grid-template-columns: auto 1fr; }
  .ma-mara-action__scope small { grid-column: 1 / -1; text-align: left; }
  .ma-import-item__mara { grid-column: 1 / -1; margin: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .ma-source-region,
  .ma-document-layout-choice label > span { transition: none; }
}

/* --------------------------------------------------------------------------
 * Pass 7 — personal work planning, delivered work and value intelligence
 * -------------------------------------------------------------------------- */

.ma-hero-card--planning {
  background:
    radial-gradient(circle at 88% 20%, rgba(255,255,255,.16), transparent 31%),
    linear-gradient(135deg, #102029 0%, #12323c 54%, #087f99 100%);
}
.ma-home-planning-kpis { margin-top: 2px; }
.ma-home-next-card { min-height: 340px; }
.ma-home-control-card { min-height: 340px; }
.ma-home-duty-intelligence {
  align-items: stretch;
  background: linear-gradient(145deg, var(--ma-paper), var(--ma-teal-pale));
  border: 1px solid rgba(7,148,177,.2);
  border-radius: 18px;
  display: grid;
  gap: 22px;
  grid-template-columns: 132px minmax(0,1fr);
  margin-top: 16px;
  padding: 22px;
}
.ma-home-duty-intelligence__date {
  align-content: center;
  border-right: 1px solid rgba(7,148,177,.18);
  display: grid;
  gap: 4px;
  padding-right: 18px;
}
.ma-home-duty-intelligence__date span { color: var(--ma-muted); font-size: 12px; font-weight: 750; }
.ma-home-duty-intelligence__date strong { font-size: clamp(28px,3vw,42px); letter-spacing: -.045em; }
.ma-home-duty-intelligence__date small { color: var(--ma-muted); font-size: 11px; }
.ma-home-duty-intelligence > div:last-child { align-content: center; display: grid; gap: 8px; }
.ma-home-duty-intelligence > div:last-child > strong { font-size: 20px; }
.ma-home-duty-intelligence > div:last-child > p { color: var(--ma-muted); margin: 0; }
.ma-home-duty-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 8px; }

.ma-planning-kpi-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0,1fr));
}
.ma-planning-kpi {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 16px;
  box-shadow: var(--ma-shadow-xs);
  display: grid;
  gap: 5px;
  min-height: 118px;
  padding: 17px 18px;
  position: relative;
  overflow: hidden;
}
.ma-planning-kpi::before {
  background: var(--ma-line-strong);
  content: "";
  height: 4px;
  inset: 0 0 auto;
  position: absolute;
}
.ma-planning-kpi.is-good::before { background: var(--ma-positive); }
.ma-planning-kpi.is-warning::before { background: var(--ma-warning); }
.ma-planning-kpi.is-teal::before,
.ma-planning-kpi.is-journey::before { background: var(--ma-teal); }
.ma-planning-kpi > span { color: var(--ma-muted); font-size: 11px; font-weight: 780; text-transform: uppercase; letter-spacing: .045em; }
.ma-planning-kpi > strong { font-size: clamp(24px,2.4vw,34px); line-height: 1; letter-spacing: -.04em; }
.ma-planning-kpi > small { color: var(--ma-muted); font-size: 11px; line-height: 1.4; }

.ma-today-intelligence { display: grid; gap: 16px; }
.ma-next-up-card {
  align-items: stretch;
  background:
    linear-gradient(112deg, rgba(7,148,177,.08), rgba(255,255,255,0) 44%),
    var(--ma-white);
  border: 1px solid rgba(7,148,177,.24);
  border-radius: 22px;
  box-shadow: var(--ma-shadow-sm);
  display: grid;
  gap: 0;
  grid-template-columns: 175px minmax(0,1fr) 240px;
  overflow: hidden;
  padding: 0;
}
.ma-next-up-card.needs-route { border-color: rgba(170,106,24,.34); }
.ma-next-up-card__date {
  align-content: center;
  background: var(--ma-ink);
  color: var(--ma-white);
  display: grid;
  gap: 5px;
  padding: 28px;
}
.ma-next-up-card__date span { color: rgba(255,255,255,.7); font-size: 11px; font-weight: 750; line-height: 1.35; }
.ma-next-up-card__date strong { color: var(--ma-white); font-size: 37px; letter-spacing: -.045em; }
.ma-next-up-card__date small { color: rgba(255,255,255,.7); font-size: 11px; }
.ma-next-up-card__main { align-content: center; display: grid; gap: 8px; padding: 28px 30px; }
.ma-next-up-card__main h3 { font-size: clamp(22px,2.5vw,34px); margin: 0; }
.ma-next-up-card__main p { color: var(--ma-muted); font-size: 13px; margin: 0; }
.ma-next-up-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 9px; }
.ma-next-up-card__travel {
  align-content: center;
  background: var(--ma-teal-pale);
  border-left: 1px solid rgba(7,148,177,.16);
  display: grid;
  gap: 5px;
  padding: 24px;
}
.ma-next-up-card.needs-route .ma-next-up-card__travel { background: var(--ma-warning-soft); }
.ma-next-up-card__travel > span { color: var(--ma-muted); font-size: 10px; font-weight: 780; text-transform: uppercase; }
.ma-next-up-card__travel > strong { font-size: 21px; }
.ma-next-up-card__travel > small { color: var(--ma-muted); font-size: 11px; line-height: 1.45; }
.ma-next-up-card__travel .ma-text-button { justify-self: start; margin-top: 7px; }

.ma-today-list--actuals { display: grid; }
.ma-today-planning-row {
  align-items: stretch;
  border-bottom: 1px solid var(--ma-line);
  display: grid;
  grid-template-columns: minmax(0,1fr) 142px;
  padding: 0;
}
.ma-today-planning-row:last-child { border-bottom: 0; }
.ma-today-planning-row .ma-today-row__activity {
  align-items: center;
  background: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  display: grid;
  gap: 13px;
  grid-template-columns: 68px minmax(0,1fr) auto;
  min-width: 0;
  padding: 16px 18px;
  text-align: left;
}
.ma-today-planning-row .ma-today-row__activity:hover { background: #fbfdfd; }
.ma-actual-quick-action {
  align-content: center;
  background: var(--ma-cream);
  border: 0;
  border-left: 1px solid var(--ma-line);
  color: var(--ma-ink);
  cursor: pointer;
  display: grid;
  gap: 2px;
  justify-items: start;
  padding: 13px 16px;
  text-align: left;
}
.ma-actual-quick-action:hover { background: var(--ma-teal-pale); }
.ma-actual-quick-action > span {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line-strong);
  border-radius: 99px;
  color: var(--ma-teal-dark);
  display: inline-flex;
  font-size: 12px;
  height: 24px;
  justify-content: center;
  width: 24px;
}
.ma-actual-quick-action > strong { font-size: 11px; }
.ma-actual-quick-action > small { color: var(--ma-muted); font-size: 9px; }
.ma-actual-quick-action.is-confirmed { background: var(--ma-positive-soft); }
.ma-actual-quick-action.is-confirmed > span { background: var(--ma-positive); border-color: var(--ma-positive); color: white; }
.ma-today-decision-card { align-self: start; }
.ma-decision-stack { display: grid; gap: 10px; }
.ma-decision-stack > div { background: var(--ma-cream); border-radius: 12px; display: grid; gap: 3px; padding: 13px; }
.ma-decision-stack span { color: var(--ma-muted); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.ma-decision-stack strong { font-size: 14px; }
.ma-decision-stack small { color: var(--ma-muted); font-size: 10px; line-height: 1.4; }

.ma-planning-panel { display: grid; gap: 17px; }
.ma-planning-hero {
  align-items: center;
  background: linear-gradient(130deg, var(--ma-ink), #163743 62%, var(--ma-teal-dark));
  border-radius: 20px;
  color: var(--ma-white);
  display: flex;
  gap: 24px;
  justify-content: space-between;
  padding: 25px 28px;
}
.ma-planning-hero h3 { color: var(--ma-white); font-size: clamp(23px,2.5vw,34px); margin: 4px 0 7px; }
.ma-planning-hero p { color: rgba(255,255,255,.72); margin: 0; max-width: 760px; }
.ma-planning-hero .ma-eyebrow { color: #73d6e8; }
.ma-planning-hero__actions { display: flex; flex-wrap: wrap; gap: 9px; justify-content: flex-end; }
.ma-planning-hero .ma-button--secondary { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.28); color: var(--ma-white); }
.ma-planning-layout { align-items: start; }
.ma-planning-routes-card,
.ma-planning-settings-card { align-self: start; }
.ma-route-list { display: grid; gap: 12px; }
.ma-route-card {
  background: #fbfcfc;
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  display: grid;
  gap: 14px;
  padding: 16px;
}
.ma-route-card.is-new { background: var(--ma-teal-pale); border-color: rgba(7,148,177,.28); margin-top: 12px; }
.ma-route-card__head { align-items: start; display: flex; gap: 12px; justify-content: space-between; }
.ma-route-card__head > div { display: grid; gap: 3px; }
.ma-route-card__head span { color: var(--ma-muted); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.ma-route-card__head strong { font-size: 15px; }
.ma-route-card .ma-form-grid { gap: 10px; }
.ma-route-card label > span { font-size: 9px; }
.ma-route-card input,
.ma-route-card select { min-height: 40px; }
.ma-planning-add { border-top: 1px solid var(--ma-line); margin-top: 14px; padding-top: 12px; }
.ma-planning-add summary { color: var(--ma-teal-dark); cursor: pointer; font-size: 12px; font-weight: 800; list-style: none; }
.ma-planning-add summary::-webkit-details-marker { display: none; }
.ma-planning-settings-form { gap: 15px; }
.ma-planning-settings-form .ma-form-grid { gap: 10px; }
.ma-planning-rule-box { background: var(--ma-cream); border-radius: 14px; display: grid; gap: 13px; padding: 14px; }
.ma-planning-toggle-row { display: grid; gap: 10px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.ma-planning-settings-card .ma-toggle { min-width: 0; }

.ma-opportunity-board { padding: 22px; }
.ma-opportunity-grid { display: grid; gap: 13px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.ma-opportunity-card {
  background: var(--ma-paper);
  border: 1px solid var(--ma-line);
  border-radius: 16px;
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 16px;
}
.ma-opportunity-card.is-clear { border-color: rgba(22,133,107,.32); }
.ma-opportunity-card.is-conflict { border-color: rgba(186,61,66,.38); }
.ma-opportunity-card.is-review { border-color: rgba(170,106,24,.34); }
.ma-opportunity-card header { align-items: start; display: flex; gap: 10px; justify-content: space-between; }
.ma-opportunity-card header > div { min-width: 0; }
.ma-opportunity-card header span { color: var(--ma-muted); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.ma-opportunity-card h4 { font-size: 16px; margin: 4px 0; overflow-wrap: anywhere; }
.ma-opportunity-card header p { color: var(--ma-muted); font-size: 10px; line-height: 1.4; margin: 0; }
.ma-opportunity-signal { background: var(--ma-warning-soft); border-radius: 99px; color: var(--ma-warning) !important; padding: 5px 8px; white-space: nowrap; }
.ma-opportunity-card.is-clear .ma-opportunity-signal { background: var(--ma-positive-soft); color: var(--ma-positive) !important; }
.ma-opportunity-card.is-conflict .ma-opportunity-signal { background: var(--ma-danger-soft); color: var(--ma-danger) !important; }
.ma-opportunity-metrics { display: grid; gap: 7px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.ma-opportunity-metrics > div { background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 10px; display: grid; gap: 2px; padding: 9px; }
.ma-opportunity-metrics span { color: var(--ma-muted); font-size: 8px; text-transform: uppercase; }
.ma-opportunity-metrics strong { font-size: 13px; }
.ma-opportunity-flags { display: flex; flex-wrap: wrap; gap: 5px; }
.ma-opportunity-flags span { background: var(--ma-cream); border-radius: 99px; color: var(--ma-muted); font-size: 8px; padding: 5px 7px; }
.ma-opportunity-flags span.is-warning { background: var(--ma-warning-soft); color: var(--ma-warning); }
.ma-opportunity-card footer { align-items: end; display: flex; gap: 10px; justify-content: space-between; }
.ma-opportunity-card footer > small { color: var(--ma-muted); font-size: 8px; line-height: 1.35; max-width: 65%; }

.ma-night-list { display: grid; gap: 8px; }
.ma-night-list > div { align-items: center; background: var(--ma-cream); border-radius: 12px; display: grid; gap: 4px 14px; grid-template-columns: 130px minmax(0,1fr); padding: 12px; }
.ma-night-list span { color: var(--ma-muted); font-size: 10px; }
.ma-night-list strong { font-size: 13px; }
.ma-night-list small { color: var(--ma-muted); font-size: 9px; grid-column: 2; }
.ma-assumption-note { align-items: flex-start; background: var(--ma-teal-pale); border-radius: 11px; display: flex; gap: 9px; margin-top: 12px; padding: 10px; }
.ma-assumption-note > span { align-items: center; background: var(--ma-teal); border-radius: 99px; color: white; display: inline-flex; flex: 0 0 20px; font-size: 10px; height: 20px; justify-content: center; }
.ma-assumption-note p { color: var(--ma-muted); font-size: 9px; line-height: 1.45; margin: 0; }

.ma-planning-mara { display: grid; gap: 13px; }
.ma-intent-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.ma-intent-chips button {
  background: var(--ma-cream);
  border: 1px solid var(--ma-line);
  border-radius: 99px;
  color: var(--ma-ink-3);
  cursor: pointer;
  font-size: 9px;
  font-weight: 760;
  padding: 7px 9px;
}
.ma-intent-chips button:hover { background: var(--ma-teal-pale); border-color: rgba(7,148,177,.4); color: var(--ma-teal-dark); }
.ma-planning-mara textarea { resize: vertical; }
.ma-mara-privacy-note { align-items: center; background: var(--ma-cream); border-radius: 12px; display: flex; gap: 10px; padding: 11px; }
.ma-mara-privacy-note > span { align-items: center; background: var(--ma-ink); border-radius: 99px; color: white; display: flex; flex: 0 0 28px; height: 28px; justify-content: center; }
.ma-mara-privacy-note p { color: var(--ma-muted); font-size: 9px; line-height: 1.4; margin: 0; }
.ma-mara-planning-response { align-items: flex-start; background: var(--ma-teal-pale); border: 1px solid rgba(7,148,177,.25); border-radius: 14px; display: grid; gap: 10px; grid-template-columns: 34px minmax(0,1fr); padding: 13px; }
.ma-mara-planning-response.is-review,
.ma-mara-planning-response.is-needs-route,
.ma-mara-planning-response.is-needs-confirmation { background: var(--ma-warning-soft); border-color: rgba(170,106,24,.28); }
.ma-mara-planning-response .ma-mara-orb { height: 34px; width: 34px; }
.ma-mara-planning-response h4 { font-size: 14px; margin: 2px 0 5px; }
.ma-mara-planning-response p { color: var(--ma-muted); font-size: 9px; line-height: 1.45; margin: 0; }
.ma-mara-planning-response > div > small:first-child { color: var(--ma-teal-dark); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.ma-mara-response-cards { display: grid; gap: 6px; grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 11px; }
.ma-mara-response-cards > div { background: rgba(255,255,255,.7); border-radius: 9px; display: grid; gap: 2px; padding: 8px; }
.ma-mara-response-cards span { color: var(--ma-muted); font-size: 7px; text-transform: uppercase; }
.ma-mara-response-cards strong { font-size: 10px; overflow-wrap: anywhere; }
.ma-mara-action-list { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 9px; }
.ma-mara-action-list button { background: transparent; border: 0; color: var(--ma-teal-dark); cursor: pointer; font-size: 9px; font-weight: 800; padding: 4px 0; }
.ma-mara-planning-response .ma-disclaimer { color: var(--ma-muted); display: block; font-size: 7px; line-height: 1.4; margin-top: 10px; }

.ma-actual-editor,
.ma-opportunity-editor { width: min(680px, calc(100vw - 24px)); }
.ma-actual-context { align-items: center; background: var(--ma-teal-pale); border-radius: 13px; display: flex; gap: 12px; padding: 12px; }
.ma-actual-context > div { display: grid; gap: 3px; }
.ma-actual-context p { color: var(--ma-muted); font-size: 10px; margin: 0; }
.ma-evidence-choice-grid { display: grid; gap: 8px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.ma-evidence-choice-grid label { cursor: pointer; position: relative; }
.ma-evidence-choice-grid input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.ma-evidence-choice-grid label > span { align-items: center; background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 12px; display: flex; gap: 8px; min-height: 58px; padding: 9px; }
.ma-evidence-choice-grid label > span > i { align-items: center; background: var(--ma-cream); border-radius: 99px; color: var(--ma-teal-dark); display: flex; flex: 0 0 24px; font-style: normal; height: 24px; justify-content: center; }
.ma-evidence-choice-grid label > span > strong { font-size: 10px; line-height: 1.3; }
.ma-evidence-choice-grid input:checked + span { background: var(--ma-teal-pale); border-color: rgba(7,148,177,.55); box-shadow: inset 0 0 0 1px rgba(7,148,177,.12); }
.ma-evidence-choice-grid input:checked + span > i { background: var(--ma-teal); color: white; }
.ma-muted-copy { color: var(--ma-muted); font-size: 10px; }

.ma-insights-live { display: grid; gap: 16px; }
.ma-jobplan-comparison { overflow: hidden; }
.ma-comparison-head,
.ma-comparison-list > div { align-items: center; display: grid; gap: 10px; grid-template-columns: minmax(130px,1.3fr) repeat(3,minmax(80px,.7fr)); }
.ma-comparison-head { color: var(--ma-muted); font-size: 8px; font-weight: 800; padding: 0 12px 8px; text-transform: uppercase; }
.ma-comparison-list { border: 1px solid var(--ma-line); border-radius: 13px; overflow: hidden; }
.ma-comparison-list > div { border-top: 1px solid var(--ma-line); padding: 12px; }
.ma-comparison-list > div:first-child { border-top: 0; }
.ma-comparison-list > div > span { align-items: center; display: flex; font-size: 11px; font-weight: 760; gap: 7px; }
.ma-comparison-list strong { font-size: 11px; }
.is-warning-text { color: var(--ma-warning); }
.is-good-text { color: var(--ma-positive); }
.ma-outcome-list { display: grid; gap: 10px; }
.ma-outcome-list > div { display: grid; gap: 5px 8px; grid-template-columns: minmax(0,1fr) auto; }
.ma-outcome-list span { font-size: 10px; }
.ma-outcome-list strong { font-size: 11px; }
.ma-outcome-list i { background: var(--ma-teal-soft); border-radius: 99px; grid-column: 1 / -1; height: 6px; overflow: hidden; position: relative; }
.ma-outcome-list i::after { background: var(--ma-teal); border-radius: inherit; content: ""; height: 100%; left: 0; position: absolute; top: 0; width: var(--value); }
.ma-evidence-prompt-list,
.ma-recent-actual-list { display: grid; gap: 7px; }
.ma-evidence-prompt-list > button,
.ma-recent-actual-list > button { align-items: center; background: var(--ma-paper); border: 1px solid var(--ma-line); border-radius: 12px; color: inherit; cursor: pointer; display: grid; gap: 10px; min-width: 0; padding: 11px; text-align: left; }
.ma-evidence-prompt-list > button { grid-template-columns: minmax(120px,1fr) minmax(120px,1fr) auto; }
.ma-evidence-prompt-list > button > span:first-child,
.ma-recent-actual-list > button > span:nth-child(2) { display: grid; gap: 3px; min-width: 0; }
.ma-evidence-prompt-list strong,
.ma-recent-actual-list strong { font-size: 11px; overflow-wrap: anywhere; }
.ma-evidence-prompt-list small,
.ma-recent-actual-list small { color: var(--ma-muted); font-size: 9px; }
.ma-evidence-prompt-list > button > span:nth-child(2) { display: flex; flex-wrap: wrap; gap: 4px; }
.ma-evidence-prompt-list i { background: var(--ma-teal-pale); border-radius: 99px; color: var(--ma-teal-dark); font-size: 7px; font-style: normal; padding: 4px 6px; }
.ma-evidence-prompt-list b,
.ma-recent-actual-list b { color: var(--ma-teal-dark); font-size: 9px; white-space: nowrap; }
.ma-recent-actual-list > button { grid-template-columns: auto minmax(0,1fr) auto; }
.ma-actual-outcome { background: var(--ma-cream); border-radius: 99px; color: var(--ma-muted); font-size: 8px; font-weight: 800; padding: 5px 7px; }
.ma-actual-outcome.is-completed,
.ma-actual-outcome.is-remote { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-actual-outcome.is-overrun { background: var(--ma-warning-soft); color: var(--ma-warning); }
.ma-actual-outcome.is-cancelled { background: var(--ma-danger-soft); color: var(--ma-danger); }
.ma-mara-demo--planning .ma-proposal-grid > div { min-height: 112px; }

@media (max-width: 1180px) {
  .ma-next-up-card { grid-template-columns: 150px minmax(0,1fr) 210px; }
  .ma-opportunity-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-planning-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 860px) {
  .ma-next-up-card { grid-template-columns: 128px minmax(0,1fr); }
  .ma-next-up-card__travel { border-left: 0; border-top: 1px solid rgba(7,148,177,.16); grid-column: 1 / -1; }
  .ma-planning-hero { align-items: flex-start; flex-direction: column; }
  .ma-planning-hero__actions { justify-content: flex-start; }
  .ma-opportunity-grid { grid-template-columns: 1fr; }
  .ma-evidence-choice-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-home-duty-intelligence { grid-template-columns: 110px minmax(0,1fr); }
}

@media (max-width: 620px) {
  .ma-planning-kpi-grid { gap: 9px; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-planning-kpi { min-height: 98px; padding: 14px; }
  .ma-planning-kpi > strong { font-size: 23px; }
  .ma-planning-kpi > span { font-size: 9px; }
  .ma-planning-kpi > small { font-size: 9px; }
  .ma-next-up-card { border-radius: 16px; grid-template-columns: 1fr; }
  .ma-next-up-card__date { grid-template-columns: minmax(0,1fr) auto; padding: 17px 18px; }
  .ma-next-up-card__date span { align-self: end; }
  .ma-next-up-card__date strong { font-size: 31px; grid-column: 2; grid-row: 1 / span 2; }
  .ma-next-up-card__date small { grid-column: 1; }
  .ma-next-up-card__main { padding: 19px; }
  .ma-next-up-card__travel { grid-column: auto; padding: 17px 19px; }
  .ma-next-up-card__travel > strong { font-size: 18px; }
  .ma-next-up-actions .ma-button { flex: 1 1 100%; }
  .ma-today-planning-row { grid-template-columns: 1fr; }
  .ma-today-planning-row .ma-today-row__activity { grid-template-columns: 54px minmax(0,1fr); padding: 13px; }
  .ma-today-planning-row .ma-source-badge { display: none; }
  .ma-actual-quick-action { align-items: center; border-left: 0; border-top: 1px solid var(--ma-line); display: grid; grid-template-columns: 24px minmax(0,1fr) auto; justify-items: start; padding: 9px 13px; }
  .ma-actual-quick-action > small { text-align: right; }
  .ma-planning-hero { border-radius: 15px; padding: 19px; }
  .ma-planning-hero__actions { width: 100%; }
  .ma-planning-hero__actions .ma-button { flex: 1 1 100%; }
  .ma-planning-toggle-row { grid-template-columns: 1fr; }
  .ma-route-card { border-radius: 12px; padding: 12px; }
  .ma-opportunity-board { padding: 15px; }
  .ma-opportunity-card footer { align-items: flex-start; flex-direction: column; }
  .ma-opportunity-card footer > small { max-width: none; }
  .ma-night-list > div { grid-template-columns: 1fr; }
  .ma-night-list small { grid-column: auto; }
  .ma-mara-response-cards { grid-template-columns: 1fr; }
  .ma-evidence-choice-grid { grid-template-columns: 1fr; }
  .ma-comparison-head { display: none; }
  .ma-comparison-list > div { grid-template-columns: minmax(0,1fr) repeat(3,auto); padding: 10px; }
  .ma-comparison-list > div > span { grid-column: 1 / -1; }
  .ma-evidence-prompt-list > button { grid-template-columns: minmax(0,1fr) auto; }
  .ma-evidence-prompt-list > button > span:nth-child(2) { grid-column: 1 / -1; }
  .ma-home-duty-intelligence { grid-template-columns: 1fr; padding: 17px; }
  .ma-home-duty-intelligence__date { border-bottom: 1px solid rgba(7,148,177,.18); border-right: 0; padding-bottom: 13px; padding-right: 0; }
}


.ma-field-note {
  margin: -2px 0 4px;
  color: var(--ma-muted);
  font-size: 0.82rem;
  line-height: 1.5;
}

.ma-field-note--span-2 {
  grid-column: 1 / -1;
}


/* Pass 7 corrective UX rules: keep activity title and metadata in distinct rows
 * after the older two-column Today layout, and give structured date/time/value
 * fields the same touch-friendly control treatment as text inputs. */
.ma-today-planning-row .ma-today-row__main {
  grid-template-columns: minmax(0, 1fr);
}
.ma-today-planning-row .ma-today-row__main > strong,
.ma-today-planning-row .ma-today-row__main > small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}
.ma-form input[type="date"],
.ma-form input[type="time"],
.ma-form input[type="number"],
.ma-form input[type="url"] {
  font-variant-numeric: tabular-nums;
}

/* Pass 8 · Connected-source UX */
.ma-connection-shell {
  display: grid;
  gap: 18px;
  min-width: 0;
}
.ma-connection-hero {
  align-items: center;
  background:
    radial-gradient(circle at 90% 10%, rgba(7,148,177,.16), transparent 34%),
    linear-gradient(135deg, #101820 0%, #172834 100%);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 20px;
  box-shadow: 0 18px 48px rgba(16,24,32,.14);
  color: #fff;
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0,1fr) 180px;
  overflow: hidden;
  padding: 28px;
  position: relative;
}
.ma-connection-hero h3 {
  color: #fff;
  font-size: clamp(1.45rem, 2.2vw, 2.05rem);
  letter-spacing: -.035em;
  margin: 6px 0 9px;
  max-width: 780px;
}
.ma-connection-hero p {
  color: rgba(255,255,255,.72);
  line-height: 1.65;
  margin: 0;
  max-width: 850px;
}
.ma-connection-hero .ma-eyebrow { color: #7fd4e2; }
.ma-connection-hero__status {
  align-items: center;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 140px;
  padding: 18px;
  text-align: center;
}
.ma-connection-hero__status > span {
  color: #fff;
  font-size: 2.75rem;
  font-weight: 750;
  letter-spacing: -.06em;
  line-height: 1;
}
.ma-connection-hero__status > strong {
  color: #7fd4e2;
  font-size: .72rem;
  letter-spacing: .12em;
  margin-top: 7px;
  text-transform: uppercase;
}
.ma-connection-hero__status > small {
  color: rgba(255,255,255,.62);
  line-height: 1.35;
  margin-top: 9px;
}
.ma-connection-notice {
  align-items: flex-start;
  background: rgba(7,148,177,.08);
  border: 1px solid rgba(7,148,177,.22);
  border-radius: 14px;
  display: grid;
  gap: 12px;
  grid-template-columns: 28px minmax(0,1fr) 32px;
  padding: 14px 16px;
}
.ma-connection-notice > span {
  align-items: center;
  background: var(--ma-teal);
  border-radius: 999px;
  color: #fff;
  display: flex;
  font-weight: 800;
  height: 24px;
  justify-content: center;
  width: 24px;
}
.ma-connection-notice.is-warning {
  background: rgba(231,105,75,.08);
  border-color: rgba(231,105,75,.24);
}
.ma-connection-notice.is-warning > span { background: var(--ma-coral); }
.ma-connection-notice strong { display: block; font-size: .92rem; }
.ma-connection-notice p { color: var(--ma-muted); line-height: 1.45; margin: 3px 0 0; }
.ma-connection-notice > button {
  background: transparent;
  border: 0;
  color: var(--ma-muted);
  cursor: pointer;
  font-size: 1.3rem;
  padding: 0;
}
.ma-connection-metrics {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4,minmax(0,1fr));
}
.ma-connection-metrics > div {
  background: var(--ma-surface);
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  min-width: 0;
  padding: 15px 17px;
}
.ma-connection-metrics > div.is-warning { border-color: rgba(231,105,75,.34); }
.ma-connection-metrics > div.is-ready { border-color: rgba(7,148,177,.34); }
.ma-connection-metrics span,
.ma-connection-card__facts small {
  color: var(--ma-muted);
  display: block;
  font-size: .69rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.ma-connection-metrics strong {
  display: block;
  font-size: 1.65rem;
  letter-spacing: -.045em;
  line-height: 1.1;
  margin-top: 4px;
}
.ma-connection-metrics small { color: var(--ma-muted); display: block; margin-top: 5px; }
.ma-connection-providers { padding: 21px; }
.ma-provider-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4,minmax(0,1fr));
  margin-top: 16px;
}
.ma-provider-card {
  align-items: flex-start;
  background: rgba(247,245,239,.58);
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  color: var(--ma-ink);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  min-height: 250px;
  padding: 16px;
  text-align: left;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.ma-provider-card:hover,
.ma-provider-card:focus-visible {
  border-color: rgba(7,148,177,.5);
  box-shadow: 0 13px 30px rgba(16,24,32,.08);
  outline: none;
  transform: translateY(-2px);
}
.ma-provider-card.is-disabled { cursor: not-allowed; opacity: .58; }
.ma-provider-card__icon {
  align-items: center;
  background: #101820;
  border-radius: 11px;
  color: #fff;
  display: inline-flex;
  font-size: .76rem;
  font-weight: 800;
  height: 40px;
  justify-content: center;
  letter-spacing: -.02em;
  min-width: 40px;
  padding: 0 9px;
}
.ma-provider-card__icon.is-google_calendar { background: #3767d6; }
.ma-provider-card__icon.is-microsoft_calendar { background: #1667b1; }
.ma-provider-card__icon.is-google_sheets { background: #18834f; }
.ma-provider-card__icon.is-ics_feed { background: var(--ma-teal); }
.ma-provider-card__body { display: block; flex: 1; margin-top: 13px; min-width: 0; }
.ma-provider-card__body > span {
  color: var(--ma-teal);
  display: block;
  font-size: .66rem;
  font-weight: 750;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.ma-provider-card__body strong { display: block; font-size: 1rem; margin-top: 4px; }
.ma-provider-card__body p { color: var(--ma-muted); font-size: .82rem; line-height: 1.52; margin: 7px 0 10px; }
.ma-provider-card__body small { color: #3e5e65; display: block; font-size: .73rem; line-height: 1.45; }
.ma-provider-card > b { color: var(--ma-ink); font-size: .78rem; margin-top: 14px; }
.ma-connection-setup {
  border-color: rgba(7,148,177,.35);
  box-shadow: 0 16px 40px rgba(7,148,177,.08);
  scroll-margin-top: 18px;
}
.ma-connection-setup .ma-form { margin-top: 16px; }
.ma-permission-preview {
  background: rgba(7,148,177,.06);
  border: 1px solid rgba(7,148,177,.18);
  border-radius: 13px;
  display: grid;
  gap: 14px;
  grid-column: 1 / -1;
  grid-template-columns: 34px repeat(2,minmax(0,1fr));
  margin: 4px 0 14px;
  padding: 14px;
}
.ma-permission-preview__icon {
  align-items: center;
  background: var(--ma-teal);
  border-radius: 999px;
  color: #fff;
  display: flex;
  font-weight: 800;
  height: 28px;
  justify-content: center;
  width: 30px;
}
.ma-permission-preview strong { display: block; font-size: .8rem; }
.ma-permission-preview p { color: var(--ma-muted); font-size: .78rem; line-height: 1.45; margin: 3px 0 0; }
.ma-connection-workspace { align-items: start; }
.ma-connection-list,
.ma-sync-activity { min-width: 0; }
.ma-connection-card {
  background: rgba(247,245,239,.42);
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  margin-top: 13px;
  overflow: hidden;
}
.ma-connection-card.is-error,
.ma-connection-card.is-stale,
.ma-connection-card.is-needs_setup { border-color: rgba(231,105,75,.34); }
.ma-connection-card.is-healthy { border-color: rgba(7,148,177,.3); }
.ma-connection-card > header {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: auto minmax(0,1fr) auto;
  padding: 16px;
}
.ma-connection-card > header > div { min-width: 0; }
.ma-connection-card > header > div > span {
  color: var(--ma-muted);
  display: block;
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.ma-connection-card h4 { font-size: 1rem; margin: 2px 0; overflow-wrap: anywhere; }
.ma-connection-card > header p { color: var(--ma-muted); font-size: .78rem; margin: 0; overflow-wrap: anywhere; }
.ma-connection-health {
  align-items: center;
  background: rgba(16,24,32,.06);
  border-radius: 999px;
  color: var(--ma-muted);
  display: inline-flex;
  font-size: .68rem;
  font-weight: 750;
  gap: 6px;
  padding: 6px 9px;
  white-space: nowrap;
}
.ma-connection-health i { background: currentColor; border-radius: 999px; height: 6px; width: 6px; }
.ma-connection-health.is-healthy { background: rgba(7,148,177,.1); color: #067d96; }
.ma-connection-health.is-error,
.ma-connection-health.is-stale,
.ma-connection-health.is-needs_setup { background: rgba(231,105,75,.1); color: #b34831; }
.ma-connection-health.is-paused { background: rgba(16,24,32,.07); color: #5b6368; }
.ma-connection-card__facts {
  border-bottom: 1px solid var(--ma-line);
  border-top: 1px solid var(--ma-line);
  display: grid;
  gap: 0;
  grid-template-columns: repeat(4,minmax(0,1fr));
}
.ma-connection-card__facts > span { min-width: 0; padding: 12px 14px; }
.ma-connection-card__facts > span + span { border-left: 1px solid var(--ma-line); }
.ma-connection-card__facts strong { display: block; font-size: .77rem; line-height: 1.4; margin-top: 3px; overflow-wrap: anywhere; }
.ma-connection-error {
  align-items: flex-start;
  background: rgba(231,105,75,.08);
  border-bottom: 1px solid rgba(231,105,75,.18);
  color: #7d392a;
  display: flex;
  gap: 9px;
  padding: 10px 14px;
}
.ma-connection-error span { font-weight: 800; }
.ma-connection-error p { font-size: .79rem; line-height: 1.45; margin: 0; }
.ma-connection-resource {
  align-items: end;
  background: rgba(7,148,177,.055);
  border-top: 1px solid rgba(7,148,177,.16);
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(190px,1.1fr) minmax(200px,1fr) auto;
  padding: 15px;
}
.ma-connection-resource h5 { margin: 3px 0; }
.ma-connection-resource p { color: var(--ma-muted); font-size: .78rem; margin: 0; }
.ma-connection-resource label { margin: 0; }
.ma-connection-resource__empty { grid-column: 2 / -1; }
.ma-connection-settings { border-top: 1px solid var(--ma-line); }
.ma-connection-settings summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: .78rem;
  font-weight: 720;
  justify-content: space-between;
  list-style: none;
  padding: 11px 15px;
}
.ma-connection-settings summary::-webkit-details-marker { display: none; }
.ma-connection-settings summary span { color: var(--ma-muted); font-weight: 500; }
.ma-connection-settings form { border-top: 1px solid var(--ma-line); padding: 14px; }
.ma-connection-card > footer {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 13px 15px;
}
.ma-connection-card > footer > div { align-items: center; display: flex; flex-wrap: wrap; gap: 8px; }
.ma-text-button--danger { color: #a33d2a !important; }
.ma-sync-timeline { display: grid; gap: 2px; margin: 6px 0 17px; }
.ma-sync-timeline > div {
  align-items: flex-start;
  display: grid;
  gap: 10px;
  grid-template-columns: 24px minmax(0,1fr) auto;
  padding: 10px 0;
}
.ma-sync-timeline > div + div { border-top: 1px solid var(--ma-line); }
.ma-sync-timeline > div > span {
  align-items: center;
  background: rgba(16,24,32,.07);
  border-radius: 999px;
  display: flex;
  font-size: .7rem;
  font-weight: 800;
  height: 22px;
  justify-content: center;
  width: 22px;
}
.ma-sync-timeline > div.is-success > span { background: rgba(7,148,177,.12); color: #067d96; }
.ma-sync-timeline > div.is-error > span { background: rgba(231,105,75,.12); color: #a33d2a; }
.ma-sync-timeline strong { display: block; font-size: .8rem; }
.ma-sync-timeline small { color: var(--ma-muted); display: block; font-size: .68rem; margin-top: 2px; }
.ma-sync-timeline p { color: var(--ma-muted); font-size: .72rem; line-height: 1.4; margin: 4px 0 0; }
.ma-sync-timeline i { background: rgba(7,148,177,.1); border-radius: 999px; color: #067d96; font-size: .62rem; font-style: normal; font-weight: 750; padding: 4px 7px; }
.ma-connection-empty {
  align-items: center;
  background: rgba(247,245,239,.55);
  border: 1px dashed rgba(16,24,32,.18);
  border-radius: 14px;
  display: grid;
  gap: 14px;
  grid-template-columns: 42px minmax(0,1fr) auto;
  margin-top: 13px;
  padding: 19px;
}
.ma-connection-empty > span {
  align-items: center;
  background: rgba(7,148,177,.1);
  border-radius: 12px;
  color: var(--ma-teal);
  display: flex;
  font-size: 1.35rem;
  height: 42px;
  justify-content: center;
}
.ma-connection-empty p { color: var(--ma-muted); margin: 4px 0 0; }
.ma-connection-trust-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4,minmax(0,1fr));
}
.ma-connection-trust-grid article {
  align-items: flex-start;
  background: var(--ma-surface);
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  display: grid;
  gap: 10px;
  grid-template-columns: 27px minmax(0,1fr);
  padding: 14px;
}
.ma-connection-trust-grid article > span {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 999px;
  color: #fff;
  display: flex;
  font-size: .7rem;
  font-weight: 800;
  height: 25px;
  justify-content: center;
  width: 25px;
}
.ma-connection-trust-grid strong { display: block; font-size: .82rem; }
.ma-connection-trust-grid p { color: var(--ma-muted); font-size: .74rem; line-height: 1.48; margin: 3px 0 0; }
.ma-import-feed-card--connected { align-items: center; display: flex; gap: 18px; justify-content: space-between; }
.ma-import-feed-card--connected > div { min-width: 0; }

@media (max-width: 1120px) {
  .ma-provider-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-provider-card { min-height: 225px; }
  .ma-connection-card__facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-connection-card__facts > span:nth-child(3) { border-left: 0; border-top: 1px solid var(--ma-line); }
  .ma-connection-card__facts > span:nth-child(4) { border-top: 1px solid var(--ma-line); }
  .ma-connection-trust-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .ma-connection-hero { grid-template-columns: 1fr; }
  .ma-connection-hero__status { align-items: flex-start; min-height: auto; text-align: left; }
  .ma-connection-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-connection-resource { align-items: stretch; grid-template-columns: 1fr; }
  .ma-connection-resource__empty { grid-column: auto; }
  .ma-connection-card > footer { align-items: flex-start; flex-direction: column; }
  .ma-connection-card > footer > div { width: 100%; }
  .ma-connection-card > footer .ma-button { flex: 1 1 auto; }
  .ma-permission-preview { grid-template-columns: 30px minmax(0,1fr); }
  .ma-permission-preview > div:last-child { grid-column: 2; }
}
@media (max-width: 620px) {
  .ma-connection-shell { gap: 13px; }
  .ma-connection-hero { border-radius: 16px; gap: 18px; padding: 20px; }
  .ma-connection-hero h3 { font-size: 1.48rem; }
  .ma-connection-hero p { font-size: .84rem; }
  .ma-connection-hero__status { border-radius: 13px; display: grid; gap: 4px; grid-template-columns: auto minmax(0,1fr); padding: 13px; }
  .ma-connection-hero__status > span { font-size: 2rem; grid-row: 1 / span 2; padding-right: 8px; }
  .ma-connection-hero__status > strong { margin: 0; }
  .ma-connection-hero__status > small { margin: 0; }
  .ma-connection-notice { grid-template-columns: 24px minmax(0,1fr) 24px; padding: 12px; }
  .ma-connection-metrics { gap: 8px; }
  .ma-connection-metrics > div { border-radius: 12px; padding: 12px; }
  .ma-connection-metrics strong { font-size: 1.35rem; }
  .ma-connection-metrics small { font-size: .68rem; line-height: 1.35; }
  .ma-connection-providers { padding: 15px; }
  .ma-provider-grid { grid-template-columns: 1fr; }
  .ma-provider-card { display: grid; gap: 11px; grid-template-columns: auto minmax(0,1fr); min-height: 0; padding: 14px; }
  .ma-provider-card__body { margin: 0; }
  .ma-provider-card > b { grid-column: 2; margin: 0; }
  .ma-connection-setup { padding: 15px; }
  .ma-permission-preview { grid-template-columns: 28px minmax(0,1fr); padding: 12px; }
  .ma-connection-card > header { align-items: flex-start; grid-template-columns: auto minmax(0,1fr); padding: 14px; }
  .ma-connection-health { grid-column: 2; justify-self: start; }
  .ma-connection-card__facts { grid-template-columns: 1fr; }
  .ma-connection-card__facts > span + span { border-left: 0; border-top: 1px solid var(--ma-line); }
  .ma-connection-card__facts > span { padding: 10px 13px; }
  .ma-connection-settings summary { align-items: flex-start; flex-direction: column; gap: 2px; }
  .ma-connection-card > footer .ma-button { flex: 1 1 100%; }
  .ma-sync-timeline > div { grid-template-columns: 22px minmax(0,1fr); }
  .ma-sync-timeline > div > i { grid-column: 2; justify-self: start; }
  .ma-connection-empty { align-items: flex-start; grid-template-columns: 38px minmax(0,1fr); padding: 15px; }
  .ma-connection-empty .ma-button { grid-column: 1 / -1; width: 100%; }
  .ma-connection-trust-grid { grid-template-columns: 1fr; }
  .ma-import-feed-card--connected { align-items: stretch; flex-direction: column; }
  .ma-import-feed-card--connected .ma-button { width: 100%; }
}

/* Release 3 — native mobile delivery, offline snapshots and widget privacy. */
.ma-mobile-settings { display: grid; gap: 18px; }
.ma-mobile-hero {
  align-items: center;
  background:
    radial-gradient(circle at 88% 18%, rgba(7,148,177,.22), transparent 28%),
    linear-gradient(135deg, #101820 0%, #17313d 62%, #0b6f85 100%);
  border-radius: 24px;
  color: #fff;
  display: grid;
  gap: 30px;
  grid-template-columns: minmax(0,1fr) 280px;
  min-height: 320px;
  overflow: hidden;
  padding: 34px 38px;
  position: relative;
}
.ma-mobile-hero .ma-eyebrow { color: #7de5f4; }
.ma-mobile-hero h3 { color: #fff; font-size: clamp(1.8rem, 3vw, 2.65rem); margin: 7px 0 12px; max-width: 720px; }
.ma-mobile-hero p { color: rgba(255,255,255,.78); font-size: .98rem; line-height: 1.65; max-width: 750px; }
.ma-mobile-hero__actions { align-items: center; display: flex; flex-wrap: wrap; gap: 14px; margin-top: 22px; }
.ma-mobile-hero__actions > span { color: rgba(255,255,255,.72); font-size: .78rem; font-weight: 700; }
.ma-mobile-hero__phone { align-self: end; display: flex; justify-content: center; min-height: 260px; }
.ma-phone-shell {
  background: #f8fbfc;
  border: 7px solid #080d11;
  border-radius: 34px 34px 0 0;
  box-shadow: 0 24px 60px rgba(0,0,0,.35);
  color: var(--ma-ink);
  min-height: 300px;
  padding: 17px 14px 14px;
  position: relative;
  transform: translateY(32px) rotate(1deg);
  width: 220px;
}
.ma-phone-island { background: #080d11; border-radius: 999px; height: 17px; left: 50%; position: absolute; top: 7px; transform: translateX(-50%); width: 70px; }
.ma-phone-time { display: block; font-size: .65rem; font-weight: 800; margin: 5px 0 22px 5px; }
.ma-phone-widget { background: linear-gradient(145deg,#0f1c23,#173b47); border-radius: 18px; box-shadow: 0 12px 30px rgba(16,24,32,.22); color: #fff; min-height: 150px; padding: 16px; }
.ma-phone-widget > span { color: #6fe2f2; font-size: .55rem; font-weight: 800; letter-spacing: .11em; }
.ma-phone-widget > strong { display: block; font-size: 2rem; margin-top: 16px; }
.ma-phone-widget h4 { color: #fff; font-size: .92rem; margin: 3px 0; }
.ma-phone-widget p { color: rgba(255,255,255,.7); font-size: .65rem; line-height: 1.35; margin: 0; }
.ma-phone-widget small { background: rgba(7,148,177,.22); border-radius: 999px; color: #baf4fc; display: inline-flex; font-size: .58rem; font-weight: 750; margin-top: 12px; padding: 5px 8px; }
.ma-phone-app-row { bottom: 18px; display: grid; gap: 8px; grid-template-columns: repeat(4,1fr); left: 14px; position: absolute; right: 14px; }
.ma-phone-app-row i { align-items: center; background: #e6eef0; border-radius: 10px; color: var(--ma-ink); display: flex; font-size: .65rem; font-style: normal; font-weight: 800; height: 35px; justify-content: center; }
.ma-phone-app-row i:first-child { background: var(--ma-teal); color: #fff; }

.ma-pairing-card { align-items: center; border: 1px solid rgba(7,148,177,.28); display: grid; gap: 22px; grid-template-columns: minmax(0,1fr) auto auto; padding: 25px; }
.ma-pairing-card h3 { margin: 4px 0 7px; }
.ma-pairing-card p { color: var(--ma-muted); margin: 0; }
.ma-pairing-code { background: var(--ma-ink); border-radius: 14px; color: #fff; font-size: clamp(1.35rem, 3vw, 2.1rem); font-weight: 820; letter-spacing: .17em; padding: 15px 18px; white-space: nowrap; }
.ma-pairing-card .ma-form-actions { justify-content: flex-end; margin: 0; }
.ma-pairing-card .ma-guardrail { grid-column: 1 / -1; margin: 0; }

.ma-mobile-assurance-grid { display: grid; gap: 12px; grid-template-columns: repeat(4,minmax(0,1fr)); }
.ma-mobile-assurance-grid article { background: var(--ma-paper); border: 1px solid var(--ma-line); border-radius: 16px; display: grid; gap: 8px; grid-template-columns: 28px minmax(0,1fr); padding: 16px; }
.ma-mobile-assurance-grid article > span { align-items: center; background: var(--ma-teal-soft); border-radius: 999px; color: var(--ma-teal-dark); display: flex; font-size: .68rem; font-weight: 820; height: 28px; justify-content: center; width: 28px; }
.ma-mobile-assurance-grid strong { font-size: .82rem; }
.ma-mobile-assurance-grid p { color: var(--ma-muted); font-size: .72rem; grid-column: 2; line-height: 1.5; margin: 0; }

.ma-mobile-device-list { display: grid; gap: 18px; }
.ma-mobile-device-card { overflow: hidden; padding: 0; }
.ma-mobile-device-card > header { align-items: center; border-bottom: 1px solid var(--ma-line); display: grid; gap: 14px; grid-template-columns: 50px minmax(0,1fr) auto; padding: 20px 22px; }
.ma-mobile-device-card > header h3 { margin: 3px 0 5px; }
.ma-mobile-device-card > header p { color: var(--ma-muted); font-size: .75rem; margin: 0; }
.ma-device-platform { align-items: center; background: var(--ma-ink); border-radius: 15px; color: #fff; display: flex; font-size: 1.15rem; font-weight: 850; height: 50px; justify-content: center; width: 50px; }
.ma-device-platform.is-android { background: #176b5d; }
.ma-mobile-device-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,.82fr); }
.ma-mobile-device-form { border-right: 1px solid var(--ma-line); padding: 22px; }
.ma-mobile-disclosure { background: var(--ma-cream); border: 1px solid var(--ma-line); border-radius: 14px; padding: 5px 13px; }
.ma-mobile-device-form .ma-form-actions { align-items: center; justify-content: flex-start; }
.ma-text-button--danger { color: var(--ma-danger) !important; margin-left: auto; }
.ma-widget-preview-stack { background: #edf3f4; min-width: 0; padding: 22px; }
.ma-widget-preview-head { align-items: center; display: flex; justify-content: space-between; margin-bottom: 12px; }
.ma-widget-preview-head span { color: var(--ma-muted); font-size: .68rem; font-weight: 780; letter-spacing: .08em; text-transform: uppercase; }
.ma-widget-preview-head strong { font-size: .78rem; }
.ma-widget-preview-grid { display: grid; gap: 12px; grid-template-columns: minmax(130px,.65fr) minmax(210px,1fr); }
.ma-widget { background: linear-gradient(145deg,#111c23,#1a3a46); border: 1px solid rgba(255,255,255,.08); box-shadow: 0 12px 30px rgba(16,24,32,.18); color: #fff; overflow: hidden; }
.ma-widget.is-small { aspect-ratio: 1; border-radius: 24px; display: flex; flex-direction: column; padding: 15px; }
.ma-widget-brand { color: #64deef; font-size: .52rem; font-weight: 820; letter-spacing: .12em; }
.ma-widget.is-small > strong { font-size: 1.7rem; margin-top: auto; }
.ma-widget.is-small h4 { color: #fff; font-size: .82rem; margin: 1px 0; }
.ma-widget.is-small p { color: rgba(255,255,255,.68); font-size: .62rem; margin: 0; }
.ma-widget.is-small small { color: #8fe9f5; font-size: .58rem; margin-top: 8px; }
.ma-widget.is-medium { border-radius: 24px; min-height: 155px; padding: 15px; }
.ma-widget.is-medium > header,.ma-widget.is-medium > footer { align-items: center; display: flex; justify-content: space-between; }
.ma-widget.is-medium > header span { font-size: .76rem; font-weight: 800; }
.ma-widget.is-medium > header small,.ma-widget.is-medium > footer { color: rgba(255,255,255,.58); font-size: .56rem; }
.ma-widget.is-medium > footer { border-top: 1px solid rgba(255,255,255,.09); margin-top: 10px; padding-top: 9px; }
.ma-widget.is-medium > footer b { color: #7be7f6; }
.ma-widget-next { align-items: center; display: grid; gap: 10px; grid-template-columns: auto 1fr; margin-top: 25px; }
.ma-widget-next > strong { font-size: 1.9rem; }
.ma-widget-next b,.ma-widget-next small { display: block; }
.ma-widget-next b { font-size: .8rem; }
.ma-widget-next small { color: rgba(255,255,255,.65); font-size: .58rem; margin-top: 2px; }
.ma-widget-today-row { align-items: center; border-bottom: 1px solid rgba(255,255,255,.08); display: grid; font-size: .65rem; gap: 10px; grid-template-columns: 40px 1fr; padding: 9px 0; }
.ma-widget-today-row span { color: #76e4f3; font-weight: 800; }
.ma-widget-days { display: grid; gap: 7px; margin-top: 12px; }
.ma-widget-days > span { align-items: center; display: grid; gap: 8px; grid-template-columns: 52px 1fr; }
.ma-widget-days b { color: #72e5f4; font-size: .62rem; }
.ma-widget-days small { color: rgba(255,255,255,.78); font-size: .62rem; }
.ma-lock-widget { align-items: center; background: rgba(16,24,32,.78); border: 1px solid rgba(255,255,255,.22); border-radius: 18px; color: #fff; display: grid; grid-column: 1 / -1; grid-template-columns: auto auto 1fr; gap: 12px; padding: 11px 14px; }
.ma-lock-widget span { color: #7be7f6; font-size: .6rem; font-weight: 800; text-transform: uppercase; }
.ma-lock-widget strong { font-size: 1.05rem; }
.ma-lock-widget small { color: rgba(255,255,255,.72); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ma-widget-preview-note { border-top: 1px solid rgba(16,24,32,.1); margin-top: 15px; padding-top: 13px; }
.ma-widget-preview-note span { color: var(--ma-positive); font-size: .67rem; font-weight: 820; text-transform: uppercase; }
.ma-widget-preview-note p { color: var(--ma-muted); font-size: .68rem; line-height: 1.45; margin: 4px 0 0; }

.ma-mobile-empty { align-items: center; display: grid; gap: 24px; grid-template-columns: 150px minmax(0,1fr); padding: 28px; }
.ma-mobile-empty .ma-empty-illustration { color: var(--ma-teal); margin: 0; width: 150px; }
.ma-mobile-empty h3 { margin: 5px 0 8px; }
.ma-mobile-empty p { color: var(--ma-muted); line-height: 1.6; margin: 0; }
.ma-mobile-boundary { padding: 22px; }
.ma-mobile-boundary__grid { display: grid; gap: 12px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.ma-mobile-boundary__grid > div { background: var(--ma-cream); border: 1px solid var(--ma-line); border-radius: 14px; padding: 16px; }
.ma-mobile-boundary__grid strong { display: block; font-size: .82rem; margin-bottom: 5px; }
.ma-mobile-boundary__grid p { color: var(--ma-muted); font-size: .74rem; line-height: 1.5; margin: 0; }

@media (max-width: 1100px) {
  .ma-mobile-hero { grid-template-columns: minmax(0,1fr) 230px; padding-right: 24px; }
  .ma-mobile-device-layout { grid-template-columns: 1fr; }
  .ma-mobile-device-form { border-bottom: 1px solid var(--ma-line); border-right: 0; }
  .ma-mobile-assurance-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .ma-mobile-hero { grid-template-columns: 1fr; min-height: auto; padding: 24px 20px 0; }
  .ma-mobile-hero__phone { min-height: 235px; overflow: hidden; }
  .ma-phone-shell { transform: translateY(35px); }
  .ma-pairing-card { align-items: stretch; grid-template-columns: 1fr; padding: 19px; }
  .ma-pairing-code { text-align: center; }
  .ma-pairing-card .ma-form-actions { justify-content: stretch; }
  .ma-pairing-card .ma-form-actions .ma-button { flex: 1; }
  .ma-mobile-device-card > header { align-items: flex-start; grid-template-columns: 44px minmax(0,1fr); padding: 16px; }
  .ma-device-platform { border-radius: 13px; height: 44px; width: 44px; }
  .ma-mobile-device-card > header > .ma-pill { grid-column: 2; justify-self: start; }
  .ma-mobile-device-form,.ma-widget-preview-stack { padding: 16px; }
  .ma-widget-preview-grid { grid-template-columns: minmax(115px,.58fr) minmax(180px,1fr); }
  .ma-mobile-empty { grid-template-columns: 90px minmax(0,1fr); padding: 20px; }
  .ma-mobile-empty .ma-empty-illustration { width: 90px; }
}
@media (max-width: 560px) {
  .ma-mobile-hero h3 { font-size: 1.75rem; }
  .ma-mobile-hero p { font-size: .84rem; }
  .ma-mobile-hero__actions { align-items: stretch; flex-direction: column; }
  .ma-mobile-hero__actions .ma-button { width: 100%; }
  .ma-mobile-assurance-grid { grid-template-columns: 1fr; }
  .ma-mobile-device-form .ma-form-grid--2 { grid-template-columns: 1fr; }
  .ma-mobile-device-form .ma-form-actions { align-items: stretch; flex-direction: column; }
  .ma-mobile-device-form .ma-form-actions > * { margin: 0; width: 100%; }
  .ma-widget-preview-grid { grid-template-columns: 1fr; }
  .ma-widget.is-small { aspect-ratio: auto; min-height: 155px; }
  .ma-lock-widget { grid-column: auto; }
  .ma-mobile-empty { grid-template-columns: 1fr; text-align: center; }
  .ma-mobile-empty .ma-empty-illustration { justify-self: center; }
  .ma-mobile-boundary__grid { grid-template-columns: 1fr; }
}

/* Pass 10 accessibility and mobile-release hardening (retained in 1.3.0) */
.ma-sr-only {
  border:0!important;
  clip:rect(1px,1px,1px,1px)!important;
  clip-path:inset(50%)!important;
  height:1px!important;
  margin:-1px!important;
  overflow:hidden!important;
  padding:0!important;
  position:absolute!important;
  white-space:nowrap!important;
  width:1px!important;
}
.ma-pairing-card.is-expired { border-color:rgba(231,105,75,.45);background:#fffaf8; }
.ma-pairing-card.is-expired .ma-pairing-code { color:var(--ma-danger);opacity:.65; }
.ma-pairing-card [data-ma-pairing-expires] { color:var(--ma-teal-dark);font-size:.75rem;white-space:nowrap; }
.ma-pairing-card.is-expired [data-ma-pairing-expires] { color:var(--ma-danger); }
.ma-mobile-nav { padding-bottom:max(8px,env(safe-area-inset-bottom)); }
.ma-work-editor[role="dialog"],.ma-command-palette[role="dialog"] { outline:none; }
@media (max-width:760px){.ma-pairing-card [data-ma-pairing-expires]{display:block;margin-top:4px;white-space:normal}.ma-pairing-code{font-size:clamp(1.35rem,9vw,2.2rem);overflow-wrap:anywhere}}

/* Release 3 accessibility, focus and safe-area refinements */
.ma-app :where(button,a,input,select,textarea,[tabindex]):focus-visible,
.ma-auth-shell :where(button,a,input,select,textarea,[tabindex]):focus-visible {
  outline:3px solid rgba(7,148,177,.46)!important;
  outline-offset:3px;
}
.ma-app :where(button,.ma-button,.ma-icon-button,.ma-text-button),
.ma-auth-shell :where(button,.ma-button) { min-height:44px; }
.ma-app :where(input,select,textarea),.ma-auth-shell :where(input,select,textarea) { min-height:44px; }
.ma-dialog-open { overflow:hidden!important; }
.ma-command-palette { max-height:min(760px,calc(100dvh - 32px)); overflow:auto; overscroll-behavior:contain; }
.ma-app [inert] { user-select:none; }
.ma-toast { max-width:min(430px,calc(100vw - 28px)); }
.ma-mobile-nav { padding-left:max(8px,env(safe-area-inset-left)); padding-right:max(8px,env(safe-area-inset-right)); }
@media (max-width:760px){
  .ma-main { padding-bottom:calc(92px + env(safe-area-inset-bottom)); }
  .ma-command-palette { inset:auto 10px calc(10px + env(safe-area-inset-bottom)); max-height:calc(100dvh - 20px - env(safe-area-inset-bottom)); width:auto; }
}
@media (prefers-reduced-motion:reduce){
  .ma-app *,.ma-auth-shell * { animation-duration:.01ms!important; animation-iteration-count:1!important; scroll-behavior:auto!important; transition-duration:.01ms!important; }
}
@media (prefers-contrast:more){
  .ma-app,.ma-auth-shell { --ma-line:#829399; --ma-muted:#46565d; }
  .ma-button,.ma-card,.ma-work-session,.ma-mobile-device-card { border-width:2px; }
}

/* Release 3 production-candidate network, toast and pairing feedback. */
.ma-network-status {
  align-items:center;
  background:var(--ma-warning-soft);
  border-bottom:1px solid rgba(170,106,24,.28);
  color:#765018;
  display:flex;
  font-size:.82rem;
  font-weight:650;
  gap:10px;
  justify-content:center;
  min-height:42px;
  padding:9px clamp(16px,3vw,38px);
  text-align:center;
}
.ma-network-status[hidden] { display:none!important; }
.ma-network-status.is-restored { background:var(--ma-positive-soft);border-color:rgba(22,133,107,.24);color:var(--ma-positive); }
.ma-network-status__icon { align-items:center;border:1px solid currentColor;border-radius:999px;display:inline-flex;height:22px;justify-content:center;width:22px; }
.ma-network-status.is-offline .ma-network-status__icon { animation:ma-network-pulse 1.8s ease-in-out infinite; }
@keyframes ma-network-pulse { 0%,100%{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1)} }
.ma-toast { align-items:flex-start;grid-template-columns:auto minmax(0,1fr) auto; }
.ma-toast__close { align-items:center;background:transparent!important;border:0!important;border-radius:999px;color:inherit;display:inline-flex;font-size:1.2rem;height:32px!important;justify-content:center;line-height:1;margin:-5px -7px -5px 2px;min-height:32px!important;padding:0;width:32px; }
.ma-toast__close:hover { background:rgba(16,24,32,.08)!important; }
.ma-pairing-card [data-ma-open-pairing][aria-disabled="true"] { opacity:.5;pointer-events:none; }
[data-ma-view-title]:focus { outline:none; }
[data-ma-view-title]:focus-visible { outline:3px solid rgba(7,148,177,.38);outline-offset:5px;border-radius:4px; }
@media (prefers-reduced-motion:reduce){.ma-network-status.is-offline .ma-network-status__icon{animation:none}}


/* Merentra App 1.3.0 — responsive visual-quality, readable typography and
 * resilient onboarding controls. These rules deliberately sit last so a
 * WordPress theme cannot collapse labels, progress steps or form copy. */
body.merentra-app-surface {
  --ma-font: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ma-ink-3: #2f414b;
  --ma-muted: #53646d;
  --ma-muted-2: #6a7a82;
  --ma-line: #d8e1e3;
  --ma-line-strong: #bfcdd0;
  color: var(--ma-ink) !important;
  font-family: var(--ma-font) !important;
  font-size: 16px;
  line-height: 1.55;
}
body.merentra-app-surface :where(.ma-app,.ma-auth-shell),
body.merentra-app-surface :where(.ma-app,.ma-auth-shell) * {
  font-family: inherit;
}
body.merentra-app-surface :where(.ma-app,.ma-auth-shell) :where(h1,h2,h3,h4,p,span,strong,small,label,button,a) {
  opacity: 1 !important;
  overflow-wrap: break-word;
}
body.merentra-app-surface :where(.ma-app,.ma-auth-shell) :where(h1,h2,h3,h4) {
  color: var(--ma-ink);
  font-weight: 720;
  letter-spacing: -0.025em;
  text-wrap: balance;
}
body.merentra-app-surface :where(.ma-app,.ma-auth-shell) :where(p,small) {
  color: var(--ma-muted);
}
.ma-app-layout { min-width: 0; }
.ma-main { min-width: 0; }
.ma-main-inner { width: min(100%, var(--ma-content-max)); }
.ma-sidebar { box-shadow: 16px 0 45px rgba(16,24,32,.08); }
.ma-sidebar-nav a,
.ma-sidebar-nav button { font-size: 15px; font-weight: 650; }
.ma-topbar__title h1 { font-size: clamp(1.45rem,2vw,2rem); }
.ma-page-intro h2 { font-size: clamp(2rem,3.2vw,3.25rem); }
.ma-page-intro p { color: var(--ma-muted); font-size: .96rem; line-height: 1.65; max-width: 76ch; }
.ma-card { border-color: var(--ma-line); box-shadow: 0 12px 34px rgba(16,24,32,.055); }
.ma-card-head h3 { font-size: 1.18rem; }
.ma-card-head p,
.ma-card p { color: var(--ma-muted); font-size: .88rem; line-height: 1.62; }
.ma-button { font-size: .92rem; font-weight: 700; min-height: 48px; }
.ma-form { gap: 22px; }
.ma-form label > span,
.ma-form legend { color: var(--ma-ink-3); font-size: .83rem; font-weight: 700; line-height: 1.35; }
.ma-form :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea) {
  background: #fff;
  border-color: var(--ma-line-strong);
  color: var(--ma-ink);
  font-size: .95rem;
  line-height: 1.35;
  min-width: 0;
  width: 100%;
}
.ma-form :where(input,textarea)::placeholder { color: #849198; opacity: 1; }
.ma-form textarea { line-height: 1.55; }
.ma-form-grid,
.ma-form-grid--2 { gap: 18px; min-width: 0; }
.ma-form-grid > *,
.ma-form-grid--2 > * { min-width: 0; }
.ma-eyebrow { font-size: .75rem; font-weight: 800; letter-spacing: .1em; }

.ma-onboarding,
.ma-work-setup {
  align-items: start;
  gap: clamp(34px,5vw,78px);
  grid-template-columns: minmax(300px,.72fr) minmax(0,1.28fr);
  max-width: 1280px;
  padding-inline: clamp(0px,1vw,12px);
  width: 100%;
}
.ma-onboarding-intro,
.ma-work-setup__intro {
  padding: 34px 0;
  top: 36px;
}
.ma-onboarding-intro h2,
.ma-work-setup__intro h2 {
  font-size: clamp(2.35rem,4vw,4.25rem);
  font-weight: 690;
  line-height: 1.03;
  margin: 14px 0 18px;
}
.ma-onboarding-intro > p,
.ma-work-setup__intro > p {
  color: var(--ma-muted) !important;
  font-size: 1rem;
  line-height: 1.7;
  max-width: 48ch;
}
.ma-onboarding-card,
.ma-work-setup__card {
  border-radius: 26px;
  box-shadow: 0 24px 70px rgba(16,24,32,.10);
  min-height: 0;
  overflow: visible;
  padding: clamp(28px,4vw,50px);
}
.ma-onboarding-progress {
  display: grid;
  gap: 10px;
  margin-top: 32px;
}
.ma-onboarding-progress > div {
  align-items: center;
  background: rgba(255,255,255,.56);
  border: 1px solid transparent;
  border-radius: 14px;
  color: var(--ma-muted);
  display: grid;
  gap: 12px;
  grid-template-columns: 30px minmax(0,1fr);
  min-width: 0;
  padding: 10px 12px;
}
.ma-onboarding-progress > div > span {
  align-items: center;
  background: #fff;
  border: 1px solid var(--ma-line-strong);
  border-radius: 50%;
  color: var(--ma-muted);
  display: inline-flex;
  font-size: .74rem;
  font-weight: 800;
  height: 30px;
  justify-content: center;
  width: 30px;
}
.ma-onboarding-progress > div > div { display: grid; gap: 1px; min-width: 0; }
.ma-onboarding-progress > div strong { color: inherit; font-size: .86rem; font-weight: 720; }
.ma-onboarding-progress > div small { color: inherit; font-size: .72rem; line-height: 1.3; }
.ma-onboarding-progress > div.is-active {
  background: #fff;
  border-color: rgba(7,148,177,.24);
  box-shadow: 0 8px 24px rgba(16,24,32,.05);
  color: var(--ma-ink);
}
.ma-onboarding-progress > div.is-active > span,
.ma-onboarding-progress > div.is-done > span {
  background: var(--ma-teal);
  border-color: var(--ma-teal);
  color: #fff;
}
.ma-form-section-head { margin-bottom: 30px; }
.ma-form-section-head .ma-step-number { font-size: .72rem; letter-spacing: .12em; }
.ma-form-section-head h3 { font-size: clamp(1.65rem,2.4vw,2.15rem); line-height: 1.12; }
.ma-form-section-head p { color: var(--ma-muted); font-size: .93rem; line-height: 1.62; max-width: 68ch; }
.ma-choice-cards { gap: 12px; }
.ma-choice-card > span { gap: 8px; min-height: 132px; padding: 18px; }
.ma-choice-card > span strong { font-size: .95rem; }
.ma-choice-card > span small { color: var(--ma-muted); font-size: .78rem; line-height: 1.5; }

.ma-toggle-stack { border-top: 1px solid var(--ma-line); }
.ma-toggle {
  align-items: center;
  gap: 16px;
  grid-template-columns: auto minmax(0,1fr);
  min-width: 0;
  padding: 16px 0;
}

.ma-toggle > input[type="checkbox"] {
  height: 1px !important;
  min-height: 0 !important;
  width: 1px !important;
  margin: 0 !important;
}
.ma-toggle > .ma-toggle__switch { grid-column: 1; }
.ma-toggle > span:last-child {
  display: grid;
  gap: 3px;
  grid-column: 2;
  min-width: 0;
}
.ma-toggle strong { color: var(--ma-ink); font-size: .9rem; font-weight: 720; line-height: 1.35; }
.ma-toggle small { color: var(--ma-muted); font-size: .77rem; line-height: 1.5; }
.ma-toggle__switch { flex: 0 0 auto; height: 26px; width: 46px; }
.ma-toggle__switch::after { height: 20px; width: 20px; }
.ma-toggle input:checked + .ma-toggle__switch::after { transform: translateX(20px); }
.ma-toggle.is-disabled { cursor: not-allowed; }
.ma-toggle.is-disabled > span:last-child { opacity: .68; }
.ma-toggle--compact { align-self: stretch; }

.ma-work-template-grid { gap: 16px; }
.ma-work-template-card { min-height: 330px; padding: 25px; }
.ma-work-template-card h3 { font-size: 1.32rem; line-height: 1.2; }
.ma-work-template-card > p { color: var(--ma-muted); font-size: .86rem; line-height: 1.6; }
.ma-work-template-card > small { color: var(--ma-muted); font-size: .76rem; line-height: 1.5; }
.ma-template-metrics span { font-size: .72rem; }
.ma-work-setup-review span { font-size: .78rem; }
.ma-work-setup-review strong { font-size: .86rem; }

@media (max-width: 1100px) {
  .ma-onboarding,
  .ma-work-setup { grid-template-columns: 1fr; gap: 26px; max-width: 900px; }
  .ma-onboarding-intro,
  .ma-work-setup__intro { padding: 8px 0 0; position: static; }
  .ma-onboarding-intro > p,
  .ma-work-setup__intro > p { max-width: 70ch; }
  .ma-onboarding-progress { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .ma-onboarding-progress > div { align-content: start; grid-template-columns: 30px minmax(0,1fr); }
}
@media (max-width: 760px) {
  body.merentra-app-surface { font-size: 15.5px; }
  .ma-main { overflow-x: hidden; }
  .ma-page { min-width: 0; }
  .ma-onboarding,
  .ma-work-setup { width: 100%; }
  .ma-onboarding-card,
  .ma-work-setup__card { border-radius: 20px; padding: 24px 20px; }
  .ma-onboarding-intro h2,
  .ma-work-setup__intro h2 { font-size: clamp(2.05rem,10vw,3rem); }
  .ma-onboarding-progress { display: grid; grid-template-columns: 1fr; }
  .ma-onboarding-progress > div { display: grid; }
  .ma-onboarding-progress > div > div { display: grid !important; }
  .ma-choice-cards,
  .ma-work-template-grid { grid-template-columns: 1fr; }
  .ma-work-template-card { min-height: 0; }
  .ma-toggle { align-items: start; }
  .ma-form-actions { gap: 10px; }
}
@media (max-width: 430px) {
  .ma-onboarding-card,
  .ma-work-setup__card { padding: 21px 16px; }
  .ma-form-section-head h3 { font-size: 1.55rem; }
  .ma-choice-card > span { min-height: 0; }
}

/* Programmatic view-heading focus is retained for assistive technology without
 * drawing an input-style ring around a non-interactive page title. */
[data-ma-view-title][tabindex="-1"]:focus,
[data-ma-view-title][tabindex="-1"]:focus-visible { outline: none !important; }

/* Merentra App 1.3.0 — Mara Smart Intake, four-step onboarding and portable Record. */
.ma-onboarding--four-step .ma-onboarding-card {
  background:
    radial-gradient(circle at 100% 0, rgba(7,148,177,.065), transparent 32%),
    var(--ma-white);
}
.ma-onboarding-progress--four { grid-template-columns: 1fr; }
.ma-onboarding-intake { gap: 20px; }
.ma-onboarding-intake .ma-form-section-head { margin-bottom: 4px; }
.ma-onboarding-intake__latest {
  align-items: center;
  background: var(--ma-teal-pale);
  border: 1px solid rgba(7,148,177,.2);
  border-radius: 16px;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  min-width: 0;
  padding: 15px 17px;
}
.ma-onboarding-intake__latest > div { display: grid; gap: 2px; min-width: 0; }
.ma-onboarding-intake__latest > div > span {
  color: var(--ma-teal-dark);
  font-size: .69rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.ma-onboarding-intake__latest strong { color: var(--ma-ink); font-size: .94rem; }
.ma-onboarding-intake__latest small { color: var(--ma-muted); font-size: .75rem; }

.ma-record-page--intake { gap: 30px; }
.ma-record-hero {
  align-items: end;
  background:
    radial-gradient(circle at 90% 15%, rgba(7,148,177,.16), transparent 30%),
    linear-gradient(135deg, #fff 0%, #f5fbfc 100%);
  border: 1px solid rgba(7,148,177,.14);
  border-radius: 28px;
  box-shadow: var(--ma-shadow-sm);
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0,1fr) auto;
  padding: clamp(26px,4vw,48px);
}
.ma-record-hero h2 { max-width: 18ch; }
.ma-record-hero__actions {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.ma-record-kpi-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4,minmax(0,1fr));
}
.ma-record-kpi-grid > article {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 17px;
  box-shadow: 0 8px 22px rgba(16,24,32,.04);
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 18px 19px;
}
.ma-record-kpi-grid span {
  color: var(--ma-muted);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.ma-record-kpi-grid strong { color: var(--ma-ink); font-size: 1.55rem; line-height: 1.05; }
.ma-record-kpi-grid small { color: var(--ma-muted); font-size: .75rem; line-height: 1.35; }

.ma-intake-workspace {
  align-items: start;
  display: grid;
  gap: 22px;
  grid-template-columns: minmax(300px,390px) minmax(0,1fr);
  min-width: 0;
}
.ma-intake-sidebar {
  display: grid;
  gap: 18px;
  min-width: 0;
  position: sticky;
  top: 22px;
}
.ma-intake-main { min-width: 0; }
.ma-intake-upload,
.ma-intake-history,
.ma-intake-review,
.ma-intake-access { min-width: 0; overflow: hidden; }
.ma-intake-upload { padding: 22px; }
.ma-intake-upload--onboarding {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}
.ma-intake-upload .ma-card-head {
  align-items: start;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 16px;
}
.ma-intake-upload--onboarding .ma-card-head { display: none; }
.ma-intake-provider {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font-size: .68rem;
  font-weight: 760;
  line-height: 1.3;
  max-width: 100%;
  padding: 7px 10px;
}
.ma-intake-provider.is-ready { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-intake-provider.is-attention { background: var(--ma-warning-soft); color: var(--ma-warning); }
.ma-intake-upload-form { gap: 14px; }
.ma-intake-dropzone {
  align-items: center;
  background: linear-gradient(145deg, #f5fbfc, #fff);
  border: 1.5px dashed rgba(7,148,177,.42);
  border-radius: 18px;
  cursor: pointer;
  display: flex !important;
  flex-direction: column;
  gap: 7px;
  justify-content: center;
  min-height: 190px;
  overflow: hidden;
  padding: 24px 20px;
  position: relative;
  text-align: center;
  transition: border-color 150ms ease, background-color 150ms ease, transform 150ms ease;
}
.ma-intake-dropzone:hover {
  background: var(--ma-teal-pale);
  border-color: var(--ma-teal);
  transform: translateY(-1px);
}
.ma-intake-dropzone:focus-within {
  background: var(--ma-teal-pale);
  border-color: var(--ma-teal);
  box-shadow: 0 0 0 3px rgba(7,148,177,.2);
  outline: none;
}
.ma-intake-dropzone input[type="file"] {
  cursor: pointer;
  height: 100% !important;
  inset: 0;
  min-height: 0 !important;
  opacity: 0;
  padding: 0 !important;
  position: absolute;
  width: 100% !important;
  z-index: 2;
}
.ma-intake-dropzone__icon {
  align-items: center;
  background: var(--ma-teal);
  border-radius: 14px;
  color: #fff !important;
  display: inline-flex;
  font-size: 1.55rem;
  height: 48px;
  justify-content: center;
  line-height: 1;
  width: 48px;
}
.ma-intake-dropzone strong { color: var(--ma-ink); font-size: .94rem; }
.ma-intake-dropzone small { color: var(--ma-muted); font-size: .75rem; line-height: 1.48; max-width: 38ch; }
.ma-intake-file-summary {
  background: var(--ma-cream);
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 11px 13px;
}
.ma-intake-file-summary span,
.ma-intake-file-summary strong { color: var(--ma-ink); font-size: .79rem; }
.ma-intake-file-summary small {
  color: var(--ma-muted);
  font-size: .7rem;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
.ma-intake-confirm {
  align-items: start;
  background: #fff;
  border-color: var(--ma-line-strong);
  display: grid !important;
  gap: 10px !important;
  grid-template-columns: auto minmax(0,1fr);
  padding: 13px !important;
}
.ma-intake-confirm input { margin-top: 2px; }
.ma-intake-confirm span { color: var(--ma-ink-3) !important; font-size: .75rem !important; font-weight: 600 !important; line-height: 1.5; }
.ma-intake-warning {
  align-items: start;
  background: var(--ma-warning-soft);
  border: 1px solid rgba(170,106,24,.2);
  border-radius: 12px;
  display: grid;
  gap: 9px;
  grid-template-columns: 24px minmax(0,1fr);
  padding: 11px 12px;
}
.ma-intake-warning > span {
  align-items: center;
  background: var(--ma-warning);
  border-radius: 50%;
  color: #fff !important;
  display: inline-flex;
  font-size: .72rem;
  font-weight: 850;
  height: 22px;
  justify-content: center;
  width: 22px;
}
.ma-intake-warning p { color: #76501c !important; font-size: .72rem !important; line-height: 1.45 !important; margin: 1px 0 0; }

.ma-intake-access {
  align-items: start;
  background: linear-gradient(145deg, #fff, #f7fbfc);
  display: grid;
  gap: 15px;
  grid-template-columns: 48px minmax(0,1fr);
  padding: 22px;
}
.ma-intake-access--onboarding { border-radius: 18px; box-shadow: none; }
.ma-intake-access__icon {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 15px;
  color: #fff;
  display: inline-flex;
  font-size: 1.05rem;
  font-weight: 800;
  height: 48px;
  justify-content: center;
}
.ma-intake-access h3 { font-size: 1.08rem; margin: 3px 0 7px; }
.ma-intake-access p { margin: 0 0 12px; }
.ma-intake-format-row { display: flex; flex-wrap: wrap; gap: 7px; }
.ma-intake-format-row > span {
  background: var(--ma-teal-soft);
  border-radius: 999px;
  color: var(--ma-teal-dark) !important;
  font-size: .66rem;
  font-weight: 750;
  padding: 5px 8px;
}
.ma-intake-format-row--large { margin: 18px 0; }
.ma-intake-format-row--large > span { font-size: .72rem; padding: 7px 10px; }

.ma-intake-history { padding: 18px; }
.ma-intake-history .ma-card-head { align-items: center; margin-bottom: 12px; }
.ma-intake-history .ma-card-head > span {
  align-items: center;
  background: var(--ma-cream);
  border-radius: 999px;
  color: var(--ma-ink);
  display: inline-flex;
  font-size: .74rem;
  font-weight: 800;
  height: 30px;
  justify-content: center;
  min-width: 30px;
  padding: 0 8px;
}
.ma-intake-run-list { display: grid; gap: 8px; }
.ma-intake-run {
  align-items: center;
  background: #fff;
  border: 1px solid transparent;
  border-radius: 13px;
  cursor: pointer;
  display: grid;
  gap: 10px;
  grid-template-columns: 8px minmax(0,1fr) auto;
  min-width: 0;
  padding: 11px 10px;
  text-align: left;
  width: 100%;
}
.ma-intake-run:hover { background: var(--ma-teal-pale); }
.ma-intake-run.is-selected {
  background: var(--ma-teal-pale);
  border-color: rgba(7,148,177,.22);
  box-shadow: inset 3px 0 0 var(--ma-teal);
}
.ma-intake-run__status { background: var(--ma-muted-2); border-radius: 999px; height: 26px; width: 5px; }
.ma-intake-run__status.is-review { background: var(--ma-teal); }
.ma-intake-run__status.is-processing,
.ma-intake-run__status.is-queued,
.ma-intake-run__status.is-applying { background: var(--ma-warning); }
.ma-intake-run__status.is-applied { background: var(--ma-positive); }
.ma-intake-run__status.is-partial,
.ma-intake-run__status.is-failed,
.ma-intake-run__status.is-needs_configuration { background: var(--ma-danger); }
.ma-intake-run > span:nth-child(2) { display: grid; gap: 2px; min-width: 0; }
.ma-intake-run strong { color: var(--ma-ink); font-size: .8rem; }
.ma-intake-run small { color: var(--ma-muted); font-size: .67rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ma-intake-status {
  background: #eef2f3;
  border-radius: 999px;
  color: var(--ma-ink-3) !important;
  display: inline-flex;
  font-size: .64rem;
  font-weight: 800;
  line-height: 1.25;
  max-width: 17ch;
  padding: 6px 8px;
  text-align: center;
}
.ma-intake-status.is-review { background: var(--ma-teal-soft); color: var(--ma-teal-dark) !important; }
.ma-intake-status.is-queued,
.ma-intake-status.is-processing,
.ma-intake-status.is-applying { background: var(--ma-warning-soft); color: var(--ma-warning) !important; }
.ma-intake-status.is-applied { background: var(--ma-positive-soft); color: var(--ma-positive) !important; }
.ma-intake-status.is-partial,
.ma-intake-status.is-failed,
.ma-intake-status.is-needs_configuration { background: var(--ma-danger-soft); color: var(--ma-danger) !important; }

.ma-intake-review { min-height: 480px; padding: clamp(22px,3vw,34px); }
.ma-intake-review--empty,
.ma-intake-review--loading {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}
.ma-intake-review--empty .ma-empty-illustration {
  align-items: center;
  background: var(--ma-teal-pale);
  border-radius: 22px;
  display: flex;
  height: 112px;
  justify-content: center;
  margin-bottom: 18px;
  width: 144px;
}
.ma-intake-review--empty svg { fill: none; height: 80px; stroke: var(--ma-teal); stroke-linecap: round; stroke-linejoin: round; stroke-width: 3; width: 108px; }
.ma-intake-review--empty h3 { font-size: 1.35rem; margin: 8px 0 10px; }
.ma-intake-review--empty p { max-width: 58ch; }
.ma-intake-review__head {
  align-items: start;
  border-bottom: 1px solid var(--ma-line);
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin-bottom: 22px;
  padding-bottom: 20px;
}
.ma-intake-review__head h3 { font-size: clamp(1.45rem,2.4vw,2rem); margin: 5px 0 7px; }
.ma-intake-review__head p { margin: 0; }
.ma-intake-review__actions { align-items: flex-end; display: flex; flex-direction: column; gap: 10px; }
.ma-text-button--danger { color: var(--ma-danger) !important; font-size: .72rem; }
.ma-text-button--danger:disabled { cursor: not-allowed; opacity: .45; }
.ma-intake-section-title {
  align-items: end;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  margin: 22px 0 12px;
}
.ma-intake-section-title > span { color: var(--ma-ink); font-size: .92rem; font-weight: 760; }
.ma-intake-section-title > small { color: var(--ma-muted); font-size: .7rem; text-align: right; }
.ma-intake-source-list { display: grid; gap: 8px; }
.ma-intake-source {
  align-items: center;
  background: var(--ma-cream);
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: grid;
  gap: 11px;
  grid-template-columns: 46px minmax(0,1fr) auto;
  min-width: 0;
  padding: 11px 12px;
}
.ma-intake-filetype {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 9px;
  color: #fff !important;
  display: inline-flex;
  font-size: .62rem;
  font-weight: 820;
  height: 34px;
  justify-content: center;
  width: 42px;
}
.ma-intake-source > span:nth-child(2) { display: grid; gap: 2px; min-width: 0; }
.ma-intake-source strong { color: var(--ma-ink); font-size: .79rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ma-intake-source small { color: var(--ma-muted); font-size: .68rem; }
.ma-intake-source__links { display: flex; gap: 10px; }
.ma-intake-source__links a { font-size: .71rem; font-weight: 730; }
.ma-intake-summary,
.ma-intake-processing,
.ma-intake-error {
  align-items: start;
  border-radius: 16px;
  display: grid;
  gap: 13px;
  grid-template-columns: 38px minmax(0,1fr);
  margin: 20px 0;
  padding: 16px;
}
.ma-intake-summary { background: var(--ma-teal-pale); border: 1px solid rgba(7,148,177,.18); }
.ma-intake-summary.has-warning,
.ma-intake-error { background: var(--ma-danger-soft); border: 1px solid rgba(186,61,66,.18); }
.ma-intake-processing { background: var(--ma-warning-soft); border: 1px solid rgba(170,106,24,.18); }
.ma-intake-summary > span,
.ma-intake-error > span {
  align-items: center;
  background: var(--ma-teal);
  border-radius: 12px;
  color: #fff !important;
  display: inline-flex;
  font-size: .86rem;
  font-weight: 820;
  height: 38px;
  justify-content: center;
}
.ma-intake-summary.has-warning > span,
.ma-intake-error > span { background: var(--ma-danger); }
.ma-intake-summary strong,
.ma-intake-processing strong,
.ma-intake-error strong { color: var(--ma-ink); font-size: .86rem; }
.ma-intake-summary p,
.ma-intake-processing p,
.ma-intake-error p { margin: 3px 0 0; }
.ma-intake-summary small { color: var(--ma-danger); display: block; font-size: .7rem; line-height: 1.45; margin-top: 7px; }
.ma-intake-error .ma-button { margin-top: 12px; }
.ma-intake-provider-meta {
  background: #f8fafb;
  border: 1px solid var(--ma-line);
  border-radius: 16px;
  display: grid;
  gap: 0;
  grid-template-columns: repeat(auto-fit,minmax(138px,1fr));
  margin: -6px 0 20px;
  overflow: hidden;
}
.ma-intake-provider-meta > div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 12px 14px;
}
.ma-intake-provider-meta > div + div { border-left: 1px solid var(--ma-line); }
.ma-intake-provider-meta > div.is-guarded { background: var(--ma-warning-soft); }
.ma-intake-provider-meta span {
  color: var(--ma-muted);
  font-size: .61rem;
  font-weight: 800;
  letter-spacing: .065em;
  text-transform: uppercase;
}
.ma-intake-provider-meta strong {
  color: var(--ma-ink);
  font-size: .75rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.ma-intake-provider-meta small { color: var(--ma-muted); font-size: .63rem; line-height: 1.35; }
.ma-intake-spinner {
  animation: ma-intake-spin .9s linear infinite;
  border: 3px solid rgba(7,148,177,.2);
  border-radius: 50%;
  border-top-color: var(--ma-teal);
  height: 36px;
  width: 36px;
}
@keyframes ma-intake-spin { to { transform: rotate(360deg); } }

.ma-intake-decisions { gap: 0; }
.ma-intake-proposal-list { display: grid; gap: 13px; }
.ma-intake-proposal {
  background: #fff;
  border: 1px solid var(--ma-line);
  border-left: 4px solid var(--ma-teal);
  border-radius: 16px;
  min-width: 0;
  padding: 18px;
}
.ma-intake-proposal.is-profile { border-left-color: var(--ma-coral); }
.ma-intake-proposal.is-work { border-left-color: var(--ma-warning); }
.ma-intake-proposal.is-applied { background: #fbfefd; border-color: rgba(22,133,107,.25); }
.ma-intake-proposal.is-failed { background: #fffafa; border-color: rgba(186,61,66,.25); }
.ma-intake-proposal__head {
  align-items: start;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0,1fr) auto;
}
.ma-intake-proposal__head h4 { color: var(--ma-ink); font-size: 1.02rem; margin: 8px 0 5px; }
.ma-intake-proposal__head p { margin: 0; }
.ma-destination-tag {
  background: var(--ma-teal-soft);
  border-radius: 999px;
  color: var(--ma-teal-dark) !important;
  display: inline-flex;
  font-size: .64rem;
  font-weight: 820;
  letter-spacing: .04em;
  padding: 6px 9px;
  text-transform: uppercase;
}
.ma-destination-tag.is-profile { background: var(--ma-coral-soft); color: var(--ma-coral-dark) !important; }
.ma-destination-tag.is-work { background: var(--ma-warning-soft); color: var(--ma-warning) !important; }
.ma-confidence {
  align-items: center;
  background: var(--ma-cream);
  border-radius: 12px;
  color: var(--ma-ink) !important;
  display: inline-flex;
  font-size: .73rem;
  font-weight: 800;
  height: 40px;
  justify-content: center;
  min-width: 48px;
}
.ma-intake-proposal__source { color: var(--ma-muted); font-size: .7rem; margin-top: 11px; }
.ma-intake-proposal__source strong { color: var(--ma-ink-3); }
.ma-intake-fields {
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin: 15px 0 0;
  overflow: hidden;
}
.ma-intake-fields > div {
  background: var(--ma-cream);
  border-bottom: 1px solid #fff;
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 10px 11px;
}
.ma-intake-fields dt {
  color: var(--ma-muted);
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.ma-intake-fields dd {
  color: var(--ma-ink);
  font-size: .76rem;
  line-height: 1.45;
  margin: 0;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.ma-intake-proposal__decision {
  align-items: end;
  border-top: 1px solid var(--ma-line);
  display: flex;
  gap: 15px;
  justify-content: space-between;
  margin-top: 15px;
  padding-top: 14px;
}
.ma-intake-proposal__decision label { max-width: 230px; width: 100%; }
.ma-intake-proposal__decision select { min-height: 42px !important; }
.ma-apply-result {
  background: var(--ma-positive-soft);
  border-radius: 11px;
  display: grid;
  gap: 2px;
  max-width: 55%;
  padding: 9px 11px;
}
.ma-apply-result.is-failed { background: var(--ma-danger-soft); }
.ma-apply-result.is-skipped { background: var(--ma-warning-soft); }
.ma-apply-result strong { color: var(--ma-ink); font-size: .69rem; }
.ma-apply-result span { color: var(--ma-muted) !important; font-size: .66rem; line-height: 1.4; }
.ma-intake-approval-bar {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 16px;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin-top: 18px;
  padding: 16px 18px;
}
.ma-intake-approval-bar strong { color: #fff; font-size: .86rem; }
.ma-intake-approval-bar p { color: rgba(255,255,255,.68) !important; font-size: .72rem !important; margin: 3px 0 0; }
.ma-intake-approval-bar .ma-form-actions { flex-wrap: nowrap; margin: 0; }
.ma-intake-no-proposals { margin-top: 22px; }

.ma-record-library,
.ma-record-work-bridge { display: grid; gap: 16px; margin-top: 8px; }
.ma-section-heading {
  align-items: end;
  display: flex;
  gap: 20px;
  justify-content: space-between;
}
.ma-section-heading h3 { font-size: clamp(1.45rem,2.5vw,2.1rem); margin: 8px 0 7px; }
.ma-section-heading p { margin-bottom: 0; max-width: 72ch; }
.ma-record-item-grid { display: grid; gap: 14px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.ma-record-item { display: flex; flex-direction: column; min-width: 0; padding: 19px; }
.ma-record-item__head { align-items: center; display: flex; gap: 8px; justify-content: space-between; }
.ma-record-item h4 { color: var(--ma-ink); font-size: 1.05rem; line-height: 1.25; margin: 16px 0 7px; }
.ma-record-item__organisation { color: var(--ma-ink-3) !important; font-weight: 680; margin: 0 0 4px; }
.ma-record-item__date { color: var(--ma-teal-dark) !important; font-size: .72rem !important; font-weight: 700; }
.ma-record-item__meta { display: flex; flex-wrap: wrap; gap: 7px 12px; margin-top: auto; padding-top: 12px; }
.ma-record-item__meta span,
.ma-record-item__meta a { color: var(--ma-muted); font-size: .68rem; }
.ma-record-work-bridge { margin-top: 14px; }
.ma-record-work-bridge .ma-evidence-bridge-live { padding: 20px; }

.ma-mara-capability-grid { align-items: stretch; }
.ma-mara-capability-grid > .ma-card { height: 100%; }
.ma-mara-demo--intake {
  background:
    radial-gradient(circle at 100% 0, rgba(7,148,177,.13), transparent 32%),
    #fff;
  display: flex;
  flex-direction: column;
}
.ma-mara-demo--intake > p { margin-bottom: 18px; }
.ma-mara-demo--intake .ma-form-actions { margin-top: auto; }

@media (max-width: 1250px) {
  .ma-record-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-intake-workspace { grid-template-columns: minmax(280px,340px) minmax(0,1fr); }
  .ma-record-item-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 1100px) {
  .ma-onboarding-progress--four { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .ma-onboarding-progress--four > div { align-content: start; grid-template-columns: 30px minmax(0,1fr); }
  .ma-intake-workspace { grid-template-columns: 1fr; }
  .ma-intake-sidebar { grid-template-columns: repeat(2,minmax(0,1fr)); position: static; }
  .ma-intake-upload,
  .ma-intake-history { height: 100%; }
}
@media (max-width: 900px) {
  .ma-onboarding-progress--four { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-record-hero { align-items: start; grid-template-columns: 1fr; }
  .ma-record-hero__actions { align-items: flex-start; flex-direction: row; flex-wrap: wrap; }
  .ma-intake-sidebar { grid-template-columns: 1fr; }
  .ma-intake-approval-bar { align-items: stretch; flex-direction: column; }
  .ma-intake-approval-bar .ma-form-actions { flex-wrap: wrap; }
}
@media (max-width: 760px) {
  .ma-onboarding-progress--four { grid-template-columns: 1fr; }
  .ma-onboarding-intake__latest { align-items: flex-start; flex-direction: column; gap: 10px; }
  .ma-record-page--intake { gap: 22px; }
  .ma-record-hero { border-radius: 20px; padding: 22px 18px; }
  .ma-record-hero h2 { max-width: none; }
  .ma-record-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-record-kpi-grid > article { padding: 15px; }
  .ma-record-kpi-grid strong { font-size: 1.3rem; }
  .ma-intake-upload,
  .ma-intake-history,
  .ma-intake-review { border-radius: 18px; }
  .ma-intake-review { min-height: 360px; padding: 19px 16px; }
  .ma-intake-review__head { align-items: flex-start; flex-direction: column; }
  .ma-intake-review__actions { align-items: flex-start; flex-direction: row; flex-wrap: wrap; }
  .ma-intake-section-title { align-items: flex-start; flex-direction: column; gap: 4px; }
  .ma-intake-section-title > small { text-align: left; }
  .ma-intake-source { grid-template-columns: 42px minmax(0,1fr); }
  .ma-intake-source__links { grid-column: 2; }
  .ma-intake-fields { grid-template-columns: 1fr; }
  .ma-intake-proposal__decision { align-items: stretch; flex-direction: column; }
  .ma-intake-proposal__decision label { max-width: none; }
  .ma-apply-result { max-width: none; }
  .ma-record-item-grid { grid-template-columns: 1fr; }
  .ma-section-heading { align-items: flex-start; flex-direction: column; gap: 8px; }
  .ma-mara-capability-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 480px) {
  .ma-record-kpi-grid { grid-template-columns: 1fr; }
  .ma-record-hero__actions { width: 100%; }
  .ma-record-hero__actions .ma-button { flex: 1; }
  .ma-intake-dropzone { min-height: 166px; padding: 20px 14px; }
  .ma-intake-run { grid-template-columns: 6px minmax(0,1fr); }
  .ma-intake-run .ma-intake-status { grid-column: 2; justify-self: start; max-width: none; }
  .ma-intake-proposal { padding: 15px 13px; }
  .ma-intake-proposal__head { grid-template-columns: 1fr; }
  .ma-confidence { justify-self: start; }
  .ma-intake-approval-bar { padding: 15px; }
  .ma-intake-approval-bar .ma-form-actions,
  .ma-intake-approval-bar .ma-button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .ma-intake-spinner { animation-duration: 1.8s; }
  .ma-intake-dropzone { transition: none; }
}

/* --------------------------------------------------------------------------
 * Merentra App 1.3.0 — rota intake, layered review and connection pathways
 * -------------------------------------------------------------------------- */
.ma-source-kind-choice {
  border: 1px solid var(--ma-line);
  border-radius: 16px;
  margin: 0;
  padding: 16px;
}
.ma-source-kind-choice > legend {
  color: var(--ma-ink);
  font-size: 13px;
  font-weight: 850;
  padding: 0 7px;
}
.ma-source-kind-choice > p {
  color: var(--ma-muted);
  font-size: 12px;
  line-height: 1.55;
  margin: 0 0 12px;
}
.ma-source-kind-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3,minmax(0,1fr));
}
.ma-source-kind-card {
  cursor: pointer;
  display: block;
  min-width: 0;
  position: relative;
}
.ma-source-kind-card > input {
  height: 1px;
  opacity: 0;
  position: absolute;
  width: 1px;
}
.ma-source-kind-card > input + .ma-source-kind-card__icon {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 10px;
  color: #fff;
  display: flex;
  font-size: 11px;
  font-weight: 900;
  height: 36px;
  justify-content: center;
  left: 10px;
  letter-spacing: .04em;
  position: absolute;
  top: 11px;
  width: 36px;
  z-index: 1;
}
.ma-source-kind-card > span:last-child {
  background: #fff;
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: grid;
  gap: 4px;
  min-height: 94px;
  padding: 13px 12px 12px 58px;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.ma-source-kind-card:hover > span:last-child { border-color: var(--ma-line-strong); }
.ma-source-kind-card > input:focus-visible ~ span:last-child {
  box-shadow: 0 0 0 3px rgba(7,148,177,.18);
  outline: none;
}
.ma-source-kind-card > input:checked + .ma-source-kind-card__icon { background: var(--ma-teal-dark); }
.ma-source-kind-card > input:checked ~ span:last-child {
  background: var(--ma-teal-pale);
  border-color: rgba(7,148,177,.55);
  box-shadow: 0 0 0 2px rgba(7,148,177,.08);
}
.ma-source-kind-card strong { color: var(--ma-ink); font-size: 13px; line-height: 1.35; }
.ma-source-kind-card small { color: var(--ma-muted); font-size: 11px; line-height: 1.5; }

.ma-import-file-summary {
  align-items: center;
  background: var(--ma-teal-pale);
  border: 1px solid rgba(7,148,177,.2);
  border-radius: 11px;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
  padding: 10px 12px;
}
.ma-import-file-summary strong { color: var(--ma-teal-dark); font-size: 12px; white-space: nowrap; }
.ma-import-file-summary span { color: var(--ma-muted); font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ma-import-context-grid { align-items: end; }

.ma-rota-mara-option,
.ma-remap-mara {
  background: linear-gradient(145deg,#f2fbfc 0%,#fff 74%);
  border: 1px solid rgba(7,148,177,.28);
  border-radius: 16px;
  display: grid;
  gap: 13px;
  padding: 15px;
}
.ma-rota-mara-option.is-attention,
.ma-remap-mara.is-attention { background: var(--ma-warning-soft); border-color: rgba(192,132,24,.25); }
.ma-rota-mara-option.is-locked { background: #f7f9f9; border-color: var(--ma-line); }
.ma-rota-mara-option__head,
.ma-remap-mara > div:first-child {
  align-items: center;
  display: grid;
  gap: 11px;
  grid-template-columns: 40px minmax(0,1fr) auto;
}
.ma-remap-mara > div:first-child { grid-template-columns: 38px minmax(0,1fr); }
.ma-rota-mara-option__head strong,
.ma-remap-mara strong { color: var(--ma-ink); font-size: 13px; }
.ma-rota-mara-option__head p,
.ma-remap-mara p { color: var(--ma-muted); font-size: 11px; line-height: 1.55; margin: 3px 0 0; }
.ma-rota-mara-confirm { margin-top: -2px; }

.ma-import-layer-guide {
  display: grid;
  gap: 9px;
  grid-template-columns: repeat(3,minmax(0,1fr));
}
.ma-import-layer-guide article {
  align-items: start;
  background: #f7f9f9;
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: grid;
  gap: 10px;
  grid-template-columns: 28px minmax(0,1fr);
  padding: 11px;
}
.ma-import-layer-guide article > span {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 50%;
  color: #fff;
  display: flex;
  font-size: 11px;
  font-weight: 850;
  height: 30px;
  justify-content: center;
  width: 30px;
}
.ma-import-layer-guide strong { color: var(--ma-ink); font-size: 12px; }
.ma-import-layer-guide p { color: var(--ma-muted); font-size: 11px; line-height: 1.5; margin: 3px 0 0; }
.ma-import-privacy-note { color: var(--ma-muted); font-size: 11px; line-height: 1.5; }

.ma-import-run-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }
.ma-import-run-tags span {
  background: #f2f5f5;
  border: 1px solid var(--ma-line);
  border-radius: 999px;
  color: var(--ma-ink-3);
  font-size: 11px;
  font-weight: 750;
  padding: 5px 8px;
}
.ma-import-remap-purpose {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2,minmax(0,1fr));
}
.ma-import-remap-context {
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  padding: 0 12px;
}
.ma-import-remap-context > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: 12px;
  font-weight: 800;
  gap: 8px;
  justify-content: space-between;
  min-height: 42px;
}
.ma-import-remap-context > summary span { color: var(--ma-muted); font-size: 10px; font-weight: 600; }
.ma-import-remap-context[open] { padding-bottom: 13px; }

.ma-connection-pathways { display: grid; gap: 17px; }
.ma-connection-pathway-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4,minmax(0,1fr));
}
.ma-connection-pathway {
  background: #fff;
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 14px;
}
.ma-connection-pathway.is-organisation_setup { background: #faf9f5; }
.ma-connection-pathway__head { align-items: center; display: grid; gap: 9px; grid-template-columns: 32px minmax(0,1fr); }
.ma-connection-pathway__head > span {
  align-items: center;
  background: var(--ma-teal-pale);
  border-radius: 9px;
  color: var(--ma-teal-dark);
  display: flex;
  font-size: 12px;
  font-weight: 900;
  height: 34px;
  justify-content: center;
}
.ma-connection-pathway.is-organisation_setup .ma-connection-pathway__head > span { background: var(--ma-warning-soft); color: #865b11; }
.ma-connection-pathway__head div { display: grid; gap: 2px; min-width: 0; }
.ma-connection-pathway__head strong { color: var(--ma-ink); font-size: 13px; line-height: 1.35; }
.ma-connection-pathway__head small { color: var(--ma-teal-dark); font-size: 10px; font-weight: 800; }
.ma-connection-pathway.is-organisation_setup .ma-connection-pathway__head small { color: #865b11; }
.ma-connection-pathway > p { color: var(--ma-muted); flex: 1; font-size: 11px; line-height: 1.55; margin: 12px 0; }
.ma-connection-pathway__examples { display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 12px; }
.ma-connection-pathway__examples span { background: #f3f5f5; border-radius: 999px; color: var(--ma-ink-3); font-size: 10px; padding: 5px 7px; }
.ma-connection-pathway .ma-text-button,
.ma-pathway-hint { align-self: flex-start; font-size: 11px; margin-top: auto; }
.ma-pathway-hint { color: var(--ma-muted); font-weight: 750; }

.ma-onboarding-bring-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin-top: 16px;
}
.ma-onboarding-bring-card {
  background: #fff;
  border: 1px solid var(--ma-line);
  border-radius: 18px;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 17px;
}
.ma-onboarding-bring-card--work { background: #f7faf9; }
.ma-onboarding-bring-card--work.is-selected { background: var(--ma-teal-pale); border-color: rgba(7,148,177,.45); box-shadow: 0 0 0 2px rgba(7,148,177,.08); }
.ma-onboarding-bring-card__head { align-items: center; display: grid; gap: 11px; grid-template-columns: 42px minmax(0,1fr); }
.ma-onboarding-bring-card__icon {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 12px;
  color: #fff;
  display: flex;
  font-size: 15px;
  font-weight: 850;
  height: 42px;
  justify-content: center;
}
.ma-onboarding-bring-card__head small { color: var(--ma-teal-dark); font-size: 10px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.ma-onboarding-bring-card h4 { color: var(--ma-ink); font-size: 14px; line-height: 1.3; margin: 3px 0 0; }
.ma-onboarding-bring-card > p { color: var(--ma-muted); font-size: 12px; line-height: 1.55; }
.ma-onboarding-bring-card .ma-button--full { margin-top: auto; width: 100%; }
.ma-onboarding-work-layers { display: grid; gap: 7px; margin: 12px 0 16px; }
.ma-onboarding-work-layers span { align-items: center; color: var(--ma-ink-3); display: grid; font-size: 11px; gap: 8px; grid-template-columns: 24px minmax(0,1fr); }
.ma-onboarding-work-layers b { align-items: center; background: #fff; border: 1px solid var(--ma-line); border-radius: 50%; display: flex; font-size: 10px; height: 24px; justify-content: center; }

@media (max-width: 1180px) {
  .ma-connection-pathway-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-source-kind-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .ma-source-kind-grid,
  .ma-import-layer-guide,
  .ma-import-remap-purpose,
  .ma-onboarding-bring-grid { grid-template-columns: 1fr; }
  .ma-source-kind-card > span:last-child { min-height: 76px; }
  .ma-import-file-summary { align-items: flex-start; flex-direction: column; gap: 4px; }
  .ma-import-file-summary span { max-width: 100%; white-space: normal; }
  .ma-rota-mara-option__head { align-items: start; grid-template-columns: 38px minmax(0,1fr); }
  .ma-rota-mara-option__head .ma-intake-provider { grid-column: 1 / -1; justify-self: start; }
  .ma-connection-pathway-grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .ma-source-kind-choice { border-radius: 13px; padding: 12px; }
  .ma-source-kind-card > input + .ma-source-kind-card__icon { left: 9px; top: 10px; }
  .ma-source-kind-card > span:last-child { padding-left: 58px; }
  .ma-rota-mara-option,
  .ma-remap-mara { border-radius: 13px; padding: 12px; }
  .ma-import-layer-guide article { padding: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .ma-source-kind-card > span:last-child { transition: none; }
}


.ma-analysis-warning {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 14px 16px;
  border: 1px solid rgba(192,132,24,.28);
  border-radius: 16px;
  background: var(--ma-warning-soft);
}
.ma-analysis-warning > span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 10px;
  background: rgba(192,132,24,.14);
  color: var(--ma-warning);
  font-weight: 900;
}
.ma-analysis-warning div { min-width: 0; }
.ma-analysis-warning strong { display: block; color: var(--ma-ink); font-size: 13px; line-height: 1.35; }
.ma-analysis-warning p { margin: 4px 0 0; color: var(--ma-muted); font-size: 11px; line-height: 1.55; }

/* Merentra App 1.3.0 release polish — readable Work intake and non-scrolling mobile tabs. */
.ma-import-overview__metric > span,
.ma-import-overview__metric > small {
  font-size: 11px;
}
.ma-import-format-strip > span {
  font-size: 11px;
  line-height: 1.35;
}
.ma-import-format-strip b {
  font-size: 11px;
}
.ma-import-drop > b {
  font-size: 11px;
}
.ma-document-layout-choice strong {
  font-size: 12px;
}
.ma-document-layout-choice small {
  font-size: 11px;
}
.ma-work-trust-strip {
  font-size: 11px;
}

@media (max-width: 620px) {
  .ma-subnav {
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
  }

  .ma-subnav button {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    line-height: 1.3;
    min-width: 0;
    padding: 8px 9px;
    text-align: center;
    white-space: normal;
    width: 100%;
  }

  .ma-subnav button > span {
    font-size: 9px;
    margin-left: 4px;
  }
}

/* Merentra App 1.3.0 release polish — protect contrast on dark assurance
 * surfaces and keep new rota controls readable without relying on browser zoom. */
.ma-boundary-panel:not(.ma-boundary-panel--muted) :where(strong,h3,h4) {
  color: #fff;
}
.ma-boundary-panel:not(.ma-boundary-panel--muted) :where(p,small) {
  color: rgba(255,255,255,.76);
  opacity: 1;
}
.ma-mara-hero :where(h2,h3,h4,strong) { color: #fff; }
.ma-mara-hero :where(p,small) { color: rgba(255,255,255,.74); }
.ma-insight-explainer :where(h2,h3,h4,strong) { color: #fff; }
.ma-insight-explainer :where(p,small,span) { color: rgba(255,255,255,.72); }
.ma-intake-approval-bar :where(h2,h3,h4,strong) { color: #fff; }
.ma-intake-approval-bar :where(p,small,span) { color: rgba(255,255,255,.76); }

.ma-import-format-strip > span {
  font-size: 11px;
  line-height: 1.35;
  min-height: 62px;
}
.ma-import-format-strip b {
  font-size: 11px;
  line-height: 1.2;
}
.ma-import-drop > b { font-size: 11px; }
.ma-source-kind-choice > legend { font-size: 14px; }
.ma-source-kind-choice > p { font-size: 13px; }
.ma-rota-mara-option__head p,
.ma-remap-mara p,
.ma-import-layer-guide p,
.ma-import-privacy-note { font-size: 12px; }
.ma-import-layer-guide strong,
.ma-import-remap-context > summary { font-size: 13px; }
.ma-import-remap-context > summary span { font-size: 11px; }
.ma-connection-pathway__head small,
.ma-connection-pathway__examples span,
.ma-pathway-hint { font-size: 11px; }
.ma-connection-pathway > p { font-size: 12px; }
.ma-onboarding-bring-card__head small { font-size: 11px; }
.ma-onboarding-bring-card h4 { font-size: 15px; }
.ma-onboarding-bring-card > p,
.ma-onboarding-work-layers span { font-size: 12px; }
.ma-onboarding-work-layers b { font-size: 11px; }

@media (max-width: 480px) {
  .ma-mobile-nav__item { font-size: 9px; min-width: 0; }
  .ma-mobile-nav__item > span:last-child {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}


/* Merentra App 1.3.0 final mobile title safeguard. */
@media (max-width: 620px) {
  .ma-topbar { gap: 10px; min-height: 84px; }
  .ma-topbar__title { flex: 1 1 auto; min-width: 0; }
  .ma-topbar__title h1 {
    font-size: clamp(18px, 5.4vw, 22px);
    line-height: 1.12;
    max-width: 100%;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
  }
  .ma-topbar__actions { gap: 7px; }
}

/* Keep onboarding Work-layer labels as readable chips rather than forcing
 * whole words into the former 24px milestone circle. */
.ma-onboarding-work-layers span {
  align-items: center;
  grid-template-columns: max-content minmax(0, 1fr);
}
.ma-onboarding-work-layers b {
  border-radius: 999px;
  height: auto;
  min-height: 26px;
  padding: 4px 9px;
  white-space: nowrap;
  width: auto;
}

/* Merentra App 1.4.0 — Set Up With Mara, real provider workspace and storage recovery. */
.ma-onboarding--v14 { max-width: 1440px; }
.ma-onboarding-card--v14 {
  background:
    radial-gradient(circle at 100% 0, rgba(7,148,177,.09), transparent 30%),
    #fff;
  min-width: 0;
}
.ma-onboarding-method-step,
.ma-onboarding-mara-setup { display: grid; gap: 24px; min-width: 0; }
.ma-onboarding-method-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2,minmax(0,1fr));
}
.ma-setup-method-card {
  appearance: none;
  background: #fff;
  border: 1px solid var(--ma-line-strong);
  border-radius: 22px;
  color: var(--ma-ink);
  cursor: pointer;
  display: grid;
  gap: 18px;
  grid-template-rows: auto 1fr auto;
  min-height: 390px;
  min-width: 0;
  padding: 25px;
  position: relative;
  text-align: left;
  transition: border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.ma-setup-method-card:hover,
.ma-setup-method-card:focus-visible {
  border-color: rgba(7,148,177,.65);
  box-shadow: 0 20px 48px rgba(16,24,32,.11);
  outline: none;
  transform: translateY(-2px);
}
.ma-setup-method-card--mara {
  background:
    radial-gradient(circle at 90% 0, rgba(7,148,177,.18), transparent 32%),
    linear-gradient(160deg,#f5fcfd 0%,#fff 62%);
  border-color: rgba(7,148,177,.34);
}
.ma-setup-method-card__badge {
  background: var(--ma-ink);
  border-radius: 999px;
  color: #fff;
  font-size: .68rem;
  font-style: normal;
  font-weight: 800;
  letter-spacing: .08em;
  padding: 7px 10px;
  position: absolute;
  right: 18px;
  text-transform: uppercase;
  top: 18px;
}
.ma-setup-method-card__icon {
  align-items: center;
  background: linear-gradient(145deg,#16b7d1,#047d99);
  border-radius: 20px;
  box-shadow: 0 13px 28px rgba(7,148,177,.2);
  color: #fff;
  display: inline-flex;
  font-size: 1.6rem;
  font-weight: 850;
  height: 62px;
  justify-content: center;
  width: 62px;
}
.ma-setup-method-card__icon--manual {
  background: var(--ma-ink);
  box-shadow: 0 13px 28px rgba(16,24,32,.14);
  font-size: 1.35rem;
}
.ma-setup-method-card__copy { align-content: start; display: grid; gap: 8px; min-width: 0; }
.ma-setup-method-card__copy small {
  color: var(--ma-teal-dark);
  font-size: .71rem;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.ma-setup-method-card__copy strong { color: var(--ma-ink); font-size: clamp(1.35rem,2vw,1.72rem); line-height: 1.12; }
.ma-setup-method-card__copy p { color: var(--ma-muted); font-size: .86rem; line-height: 1.6; margin: 0; }
.ma-setup-method-card__footer {
  align-items: end;
  border-top: 1px solid var(--ma-line);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding-top: 16px;
}
.ma-setup-method-card__footer b { color: var(--ma-muted); font-size: .73rem; line-height: 1.35; }
.ma-setup-method-card__footer b.is-connected { color: var(--ma-positive); }
.ma-setup-method-card__footer b.is-attention { color: var(--ma-warning); }
.ma-setup-method-card__footer i { color: var(--ma-ink); font-size: .82rem; font-style: normal; font-weight: 800; white-space: nowrap; }
.ma-onboarding-trust-row {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2,minmax(0,1fr));
}
.ma-onboarding-trust-row span {
  align-items: center;
  color: var(--ma-ink-3);
  display: flex;
  font-size: .76rem;
  font-weight: 700;
  gap: 8px;
  line-height: 1.4;
}
.ma-onboarding-trust-row span::before { color: var(--ma-teal); content: '✓'; font-weight: 900; }

.ma-onboarding-provider {
  align-items: flex-start;
  background: var(--ma-warning-soft);
  border: 1px solid rgba(170,106,24,.22);
  border-radius: 16px;
  display: grid;
  gap: 12px;
  grid-template-columns: 34px minmax(0,1fr);
  padding: 15px 17px;
}
.ma-onboarding-provider.is-ready { background: var(--ma-positive-soft); border-color: rgba(22,133,107,.2); }
.ma-onboarding-provider > span {
  align-items: center;
  background: #fff;
  border-radius: 50%;
  color: var(--ma-warning);
  display: inline-flex;
  font-weight: 900;
  height: 34px;
  justify-content: center;
  width: 34px;
}
.ma-onboarding-provider.is-ready > span { color: var(--ma-positive); }
.ma-onboarding-provider > div { display: grid; gap: 3px; min-width: 0; }
.ma-onboarding-provider strong { color: var(--ma-ink); font-size: .9rem; }
.ma-onboarding-provider p { color: var(--ma-muted); font-size: .76rem; line-height: 1.48; margin: 0; }
.ma-onboarding-foundation-grid {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(300px,.72fr) minmax(420px,1.28fr);
  min-width: 0;
}
.ma-onboarding-foundation-grid > * { min-width: 0; }
.ma-onboarding-foundation-grid > aside { display: grid; gap: 14px; }
.ma-onboarding-mara-setup .ma-intake-upload--onboarding { background: #f8fbfc; border: 1px solid var(--ma-line); border-radius: 20px; padding: 20px; }
.ma-onboarding-mara-setup .ma-intake-upload--onboarding .ma-card-head { display: grid; }
.ma-onboarding-mara-setup .ma-intake-history { border-radius: 18px; box-shadow: none; }
.ma-onboarding-intake-review .ma-intake-review { border-radius: 20px; box-shadow: none; min-height: 520px; }
.ma-onboarding-sensitive-boundary {
  background: #f7f9fa;
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  display: grid;
  gap: 5px;
  padding: 15px 17px;
}
.ma-onboarding-sensitive-boundary strong { color: var(--ma-ink); font-size: .84rem; }
.ma-onboarding-sensitive-boundary p { color: var(--ma-muted); font-size: .75rem; line-height: 1.5; margin: 0; }
.ma-onboarding-completion-fields {
  background: #f7fbfc;
  border: 1px solid rgba(7,148,177,.2);
  border-radius: 18px;
  margin: 0;
  min-width: 0;
  padding: 20px;
}
.ma-onboarding-completion-fields > legend { color: var(--ma-ink); font-size: .88rem; font-weight: 800; padding: 0 7px; }

.ma-intake-upload-form > label:not(.ma-intake-dropzone):not(.ma-check) { display: grid; gap: 7px; }
.ma-intake-upload-form > label:not(.ma-intake-dropzone):not(.ma-check) > span { color: var(--ma-ink-3); font-size: .8rem; font-weight: 750; }
.ma-intake-proposal.is-work_source { border-left-color: var(--ma-teal-dark); }
.ma-destination-tag.is-work_source { background: #e9f6f8; color: #056d84; }

.ma-mara-page--v14 { gap: 24px; }
.ma-mara-hero-v14 {
  align-items: stretch;
  background:
    radial-gradient(circle at 95% 0, rgba(34,198,220,.2), transparent 30%),
    linear-gradient(135deg,#0d1b24 0%,#102a35 64%,#0c3c48 100%);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 28px;
  box-shadow: 0 22px 65px rgba(16,24,32,.16);
  display: grid;
  gap: clamp(28px,5vw,72px);
  grid-template-columns: minmax(0,1fr) minmax(260px,360px);
  overflow: hidden;
  padding: clamp(28px,5vw,56px);
  position: relative;
}
.ma-mara-hero-v14__copy { align-content: center; display: grid; gap: 16px; min-width: 0; }
.ma-mara-hero-v14 .ma-eyebrow { color: #7fdae8; }
.ma-mara-hero-v14 h2 { color: #fff; font-size: clamp(2.35rem,4.8vw,5.1rem); font-weight: 710; letter-spacing: -.045em; line-height: .99; margin: 0; max-width: 14ch; overflow-wrap: normal; word-break: normal; }
.ma-mara-hero-v14 p { color: rgba(255,255,255,.74); font-size: .98rem; line-height: 1.65; margin: 0; max-width: 66ch; }
.ma-mara-hero-v14__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.ma-mara-hero-v14__actions .ma-button--secondary { background: rgba(255,255,255,.09); border-color: rgba(255,255,255,.28); color: #fff; }
.ma-mara-status-card {
  align-content: center;
  align-items: start;
  background: rgba(255,255,255,.09);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 22px;
  display: grid;
  gap: 14px;
  grid-template-columns: 42px minmax(0,1fr);
  padding: 22px;
}
.ma-mara-status-card__icon { align-items:center;background:#fff;border-radius:50%;color:var(--ma-positive);display:flex;font-weight:900;height:42px;justify-content:center;width:42px; }
.ma-mara-status-card.is-attention .ma-mara-status-card__icon { color: var(--ma-warning); }
.ma-mara-status-card > div { display: grid; gap: 6px; min-width: 0; }
.ma-mara-status-card small { color: #7fdae8; font-size: .68rem; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.ma-mara-status-card strong { color: #fff; font-size: 1.15rem; line-height: 1.25; }
.ma-mara-status-card p { color: rgba(255,255,255,.7); font-size: .78rem; line-height: 1.5; margin: 0; overflow-wrap: anywhere; }
.ma-mara-summary-grid { display: grid; gap: 13px; grid-template-columns: repeat(4,minmax(0,1fr)); }
.ma-mara-summary-grid > article { background:#fff;border:1px solid var(--ma-line);border-radius:17px;display:grid;gap:4px;min-width:0;padding:17px; }
.ma-mara-summary-grid > article span { color:var(--ma-muted);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase; }
.ma-mara-summary-grid > article strong { color:var(--ma-ink);font-size:1.25rem;line-height:1.15;overflow-wrap:anywhere; }
.ma-mara-summary-grid > article small { color:var(--ma-muted);font-size:.72rem;line-height:1.4; }
.ma-mara-workspace-v14 { align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr); }
.ma-mara-composer-v14 { min-width:0;padding:clamp(22px,3.5vw,36px); }
.ma-mara-quick-grid { display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0 24px; }
.ma-mara-quick-grid button { background:#f7fafb;border:1px solid var(--ma-line);border-radius:14px;cursor:pointer;display:grid;gap:5px;min-height:104px;padding:15px;text-align:left;transition:.16s ease; }
.ma-mara-quick-grid button:hover,.ma-mara-quick-grid button:focus-visible { background:var(--ma-teal-pale);border-color:rgba(7,148,177,.42);outline:none; }
.ma-mara-quick-grid span { color:var(--ma-teal-dark);font-size:.66rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase; }
.ma-mara-quick-grid strong { color:var(--ma-ink);font-size:.83rem;line-height:1.45; }
.ma-mara-question-form textarea { min-height:132px;resize:vertical; }
.ma-mara-private-note { color:var(--ma-muted);font-size:.72rem;line-height:1.4;margin-right:auto; }
.ma-mara-boundary-v14 { background:#fff;border:1px solid var(--ma-line);border-radius:22px;box-shadow:0 12px 34px rgba(16,24,32,.055);display:grid;gap:18px;padding:24px; }
.ma-mara-boundary-v14 ol { display:grid;gap:17px;list-style:none;margin:0;padding:0; }
.ma-mara-boundary-v14 li { align-items:start;display:grid;gap:11px;grid-template-columns:30px minmax(0,1fr); }
.ma-mara-boundary-v14 li > b { align-items:center;background:var(--ma-teal-pale);border-radius:10px;color:var(--ma-teal-dark);display:flex;font-size:.74rem;height:30px;justify-content:center;width:30px; }
.ma-mara-boundary-v14 li > span { display:grid;gap:3px; }
.ma-mara-boundary-v14 li strong { color:var(--ma-ink);font-size:.84rem; }
.ma-mara-boundary-v14 li small { color:var(--ma-muted);font-size:.73rem;line-height:1.48; }
.ma-mara-boundary-v14__privacy { background:#fff5ef;border:1px solid #f2d1bf;border-radius:14px;display:grid;gap:5px;padding:14px; }
.ma-mara-boundary-v14__privacy strong { color:#8d4328;font-size:.78rem; }
.ma-mara-boundary-v14__privacy p { color:#815b4c;font-size:.7rem;line-height:1.48;margin:0; }
.ma-mara-answer-v14 { display:grid;gap:0;overflow:hidden;padding:0; }
.ma-mara-answer-v14:focus { outline:3px solid rgba(7,148,177,.2);outline-offset:3px; }
.ma-mara-answer-v14 > header { align-items:start;background:#f5fbfc;border-bottom:1px solid var(--ma-line);display:flex;gap:18px;justify-content:space-between;padding:24px 28px; }
.ma-mara-answer-v14 > header h3 { color:var(--ma-ink);font-size:1.08rem;line-height:1.4;margin:5px 0 0; }
.ma-mara-answer-v14__body { display:grid;gap:20px;padding:28px; }
.ma-mara-answer-v14__body > p { color:var(--ma-ink-3);font-size:1rem;line-height:1.7;margin:0;white-space:pre-wrap; }
.ma-mara-answer-v14__body section { background:#f7fafb;border:1px solid var(--ma-line);border-radius:15px;padding:17px 19px; }
.ma-mara-answer-v14__body section.is-caution { background:#fff8e9;border-color:#efd5a0; }
.ma-mara-answer-v14__body h4 { color:var(--ma-ink);font-size:.84rem;margin:0 0 10px; }
.ma-mara-answer-v14__body ul { color:var(--ma-ink-3);display:grid;font-size:.82rem;gap:8px;line-height:1.55;margin:0;padding-left:20px; }
.ma-mara-answer-v14 > footer { border-top:1px solid var(--ma-line);display:grid;gap:12px;padding:22px 28px; }
.ma-mara-answer-v14 > footer > strong { color:var(--ma-ink);font-size:.82rem; }
.ma-mara-answer-v14 > footer > div { display:flex;flex-wrap:wrap;gap:10px; }
.ma-mara-answer-v14 > footer button { align-items:flex-start;display:grid;gap:2px;height:auto;max-width:320px;text-align:left; }
.ma-mara-answer-v14 > footer button span { font-weight:800; }
.ma-mara-answer-v14 > footer button small { color:var(--ma-muted);font-size:.68rem;font-weight:500;line-height:1.35;white-space:normal; }

@media (max-width: 1260px) {
  .ma-onboarding-foundation-grid { grid-template-columns:1fr; }
  .ma-onboarding-intake-review .ma-intake-review { min-height:420px; }
}
@media (max-width: 1100px) {
  .ma-mara-hero-v14 { grid-template-columns:1fr; }
  .ma-mara-hero-v14 h2 { max-width:17ch; }
  .ma-mara-status-card { max-width:620px; }
  .ma-mara-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ma-mara-workspace-v14 { grid-template-columns:1fr; }
}
@media (max-width: 760px) {
  .ma-onboarding-method-grid,.ma-onboarding-trust-row,.ma-mara-quick-grid { grid-template-columns:1fr; }
  .ma-setup-method-card { min-height:0;padding:21px; }
  .ma-onboarding-foundation-grid { display:block; }
  .ma-onboarding-foundation-grid > aside { margin-bottom:16px; }
  .ma-onboarding-intake-review .ma-intake-review { min-height:0; }
  .ma-mara-hero-v14 { border-radius:20px;padding:26px 21px; }
  .ma-mara-hero-v14 h2 { font-size:clamp(2rem,10vw,3.15rem);line-height:1.02;max-width:none; }
  .ma-mara-hero-v14__actions { display:grid;grid-template-columns:1fr; }
  .ma-mara-hero-v14__actions .ma-button { width:100%; }
  .ma-mara-status-card { padding:18px; }
  .ma-mara-summary-grid { grid-template-columns:1fr 1fr; }
  .ma-mara-composer-v14,.ma-mara-boundary-v14 { border-radius:18px;padding:20px; }
  .ma-mara-question-form .ma-form-actions { align-items:stretch;flex-direction:column; }
  .ma-mara-private-note { margin:0; }
  .ma-mara-answer-v14 > header,.ma-mara-answer-v14__body,.ma-mara-answer-v14 > footer { padding:20px; }
}
@media (max-width: 460px) {
  .ma-mara-summary-grid { grid-template-columns:1fr; }
  .ma-setup-method-card__footer { align-items:flex-start;flex-direction:column; }
  .ma-mara-status-card { grid-template-columns:36px minmax(0,1fr); }
  .ma-mara-status-card__icon { height:36px;width:36px; }
}

/* --------------------------------------------------------------------------
 * Merentra App 1.4.1 — cost-routed multi-file setup and guided completion
 * -------------------------------------------------------------------------- */
.ma-intake-upload-options {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2,minmax(0,1fr));
}
.ma-intake-upload-options > label {
  display: grid;
  gap: 7px;
  min-width: 0;
}
.ma-intake-upload-options > label > span {
  color: var(--ma-ink-3);
  font-size: .8rem;
  font-weight: 750;
}
.ma-intake-dropzone.is-dragging {
  background: var(--ma-teal-pale);
  border-color: var(--ma-teal);
  box-shadow: 0 0 0 4px rgba(7,148,177,.12);
  transform: translateY(-2px);
}
.ma-intake-file-list {
  display: grid;
  gap: 8px;
}
.ma-intake-file-list:empty { display: none; }
.ma-intake-queued-file {
  align-items: center;
  background: #fff;
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: grid;
  gap: 11px;
  grid-template-columns: 46px minmax(0,1fr) auto;
  min-width: 0;
  padding: 10px 11px;
}
.ma-intake-queued-file > span:nth-child(2) { display: grid; gap: 2px; min-width: 0; }
.ma-intake-queued-file strong {
  color: var(--ma-ink);
  font-size: .78rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ma-intake-queued-file small { color: var(--ma-muted); font-size: .68rem; }
.ma-intake-queued-file button {
  background: transparent;
  border: 0;
  color: var(--ma-danger);
  cursor: pointer;
  font-size: .7rem;
  font-weight: 760;
  min-height: 36px;
  padding: 6px 8px;
}
.ma-intake-queued-file button:hover { text-decoration: underline; }
.ma-intake-processing--timeline ol {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(4,minmax(0,1fr));
  list-style: none;
  margin: 14px 0 8px;
  padding: 0;
}
.ma-intake-processing--timeline li {
  align-items: center;
  color: var(--ma-muted);
  display: flex;
  font-size: .67rem;
  font-weight: 690;
  gap: 6px;
  line-height: 1.35;
  min-width: 0;
}
.ma-intake-processing--timeline li > span {
  align-items: center;
  background: rgba(16,24,32,.08);
  border-radius: 50%;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: .62rem;
  height: 22px;
  justify-content: center;
  width: 22px;
}
.ma-intake-processing--timeline li.is-done { color: var(--ma-positive); }
.ma-intake-processing--timeline li.is-done > span { background: var(--ma-positive-soft); }
.ma-intake-processing--timeline li.is-active { color: var(--ma-ink); }
.ma-intake-processing--timeline li.is-active > span { background: var(--ma-warning); color: #fff; }
.ma-intake-processing--timeline small { color: var(--ma-muted); display: block; font-size: .68rem; line-height: 1.45; }
.ma-intake-next-steps {
  background: linear-gradient(145deg,#f5fbfc,#fff);
  border: 1px solid rgba(7,148,177,.24);
  border-radius: 18px;
  display: grid;
  gap: 18px;
  margin-top: 20px;
  padding: 20px;
  scroll-margin-top: 96px;
}
.ma-intake-next-steps.is-complete {
  background: linear-gradient(145deg,#f2fbf7,#fff);
  border-color: rgba(22,133,107,.26);
}
.ma-intake-next-steps__head {
  align-items: start;
  display: grid;
  gap: 13px;
  grid-template-columns: 40px minmax(0,1fr);
}
.ma-intake-next-steps__head > span {
  align-items: center;
  background: var(--ma-teal);
  border-radius: 12px;
  color: #fff;
  display: inline-flex;
  font-size: 1rem;
  font-weight: 850;
  height: 40px;
  justify-content: center;
  width: 40px;
}
.ma-intake-next-steps.is-complete .ma-intake-next-steps__head > span { background: var(--ma-positive); }
.ma-intake-next-steps__head small {
  color: var(--ma-teal-dark);
  display: block;
  font-size: .65rem;
  font-weight: 820;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.ma-intake-next-steps__head h4 { color: var(--ma-ink); font-size: 1.08rem; margin: 4px 0 4px; }
.ma-intake-next-steps__head p { margin: 0; }
.ma-intake-next-steps__grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2,minmax(0,1fr));
}
.ma-intake-next-steps__grid > div {
  background: #fff;
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  padding: 14px;
}
.ma-intake-next-steps__grid strong { color: var(--ma-ink); font-size: .78rem; }
.ma-intake-next-steps__grid ul { color: var(--ma-muted); display: grid; font-size: .72rem; gap: 7px; line-height: 1.5; margin: 10px 0 0; padding-left: 18px; }
.ma-intake-next-steps .ma-form-actions { border-top: 1px solid var(--ma-line); margin-top: 0; padding-top: 16px; }
.ma-onboarding-ready-now {
  background: var(--ma-teal-pale);
  border: 1px solid rgba(7,148,177,.2);
  border-radius: 18px;
  display: grid;
  gap: 15px;
  padding: 18px;
}
.ma-onboarding-ready-now > div:first-child small {
  color: var(--ma-teal-dark);
  font-size: .66rem;
  font-weight: 820;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.ma-onboarding-ready-now h4 { color: var(--ma-ink); margin: 5px 0 0; }
.ma-onboarding-ready-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4,minmax(0,1fr));
}
.ma-onboarding-ready-grid article {
  background: #fff;
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 13px;
}
.ma-onboarding-ready-grid span { color: var(--ma-muted); font-size: .64rem; font-weight: 790; letter-spacing: .05em; text-transform: uppercase; }
.ma-onboarding-ready-grid strong { color: var(--ma-ink); font-size: .86rem; }
.ma-onboarding-ready-grid p { font-size: .68rem; line-height: 1.45; margin: 0; }
@media(max-width:900px) {
  .ma-onboarding-ready-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
  .ma-intake-upload-options,
  .ma-intake-next-steps__grid { grid-template-columns: 1fr; }
  .ma-intake-processing--timeline ol { grid-template-columns: 1fr; }
  .ma-intake-queued-file { grid-template-columns: 42px minmax(0,1fr); }
  .ma-intake-queued-file button { grid-column: 2; justify-self: start; padding-left: 0; }
  .ma-onboarding-ready-grid { grid-template-columns: 1fr; }
  .ma-intake-next-steps { padding: 16px 13px; }
  .ma-intake-provider-meta { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-intake-provider-meta > div:nth-child(odd) { border-left: 0; }
  .ma-intake-provider-meta > div:nth-child(n+3) { border-top: 1px solid var(--ma-line); }
}
@media(max-width:430px) {
  .ma-intake-provider-meta { grid-template-columns: 1fr; }
  .ma-intake-provider-meta > div + div { border-left: 0; border-top: 1px solid var(--ma-line); }
}

/* Merentra App 1.4.1 — purpose-priced Mara controls */
.ma-mara-answer-mode,
.ma-rota-analysis-mode {
  border: 0;
  display: grid;
  gap: 9px;
  margin: 2px 0 0;
  min-width: 0;
  padding: 0;
}
.ma-mara-answer-mode legend,
.ma-rota-analysis-mode legend {
  color: var(--ma-ink);
  font-size: .72rem;
  font-weight: 780;
  margin-bottom: 8px;
  padding: 0;
}
.ma-mara-answer-mode > div {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4,minmax(0,1fr));
}
.ma-rota-analysis-mode > div {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3,minmax(0,1fr));
}
.ma-mara-answer-mode label,
.ma-rota-analysis-mode label {
  cursor: pointer;
  min-width: 0;
  position: relative;
}
.ma-mara-answer-mode input,
.ma-rota-analysis-mode input {
  height: 1px;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  width: 1px;
}
.ma-mara-answer-mode label > span,
.ma-rota-analysis-mode label > span {
  background: #fff;
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: grid;
  gap: 4px;
  height: 100%;
  min-height: 78px;
  padding: 12px;
  transition: border-color .15s ease,box-shadow .15s ease,background .15s ease,transform .15s ease;
}
.ma-mara-answer-mode label:hover > span,
.ma-rota-analysis-mode label:hover > span {
  background: #f5fbfc;
  border-color: rgba(7,148,177,.42);
  transform: translateY(-1px);
}
.ma-mara-answer-mode strong,
.ma-rota-analysis-mode strong {
  color: var(--ma-ink);
  font-size: .76rem;
  line-height: 1.28;
}
.ma-mara-answer-mode small,
.ma-rota-analysis-mode small {
  color: var(--ma-muted);
  font-size: .65rem;
  line-height: 1.45;
}
.ma-mara-answer-mode input:checked + span,
.ma-rota-analysis-mode input:checked + span {
  background: var(--ma-teal-pale);
  border-color: var(--ma-teal);
  box-shadow: 0 0 0 3px rgba(7,148,177,.11);
}
.ma-mara-answer-mode input:focus-visible + span,
.ma-rota-analysis-mode input:focus-visible + span {
  outline: 3px solid rgba(7,148,177,.3);
  outline-offset: 2px;
}
.ma-rota-analysis-mode {
  background: rgba(247,251,252,.9);
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  padding: 13px;
}
.ma-rota-analysis-mode--compact { margin: 10px 0; }
.ma-rota-analysis-mode--compact label > span { min-height: 62px; padding: 10px; }
.ma-mara-cost-note {
  color: var(--ma-teal-dark);
  display: block;
  font-size: .67rem;
  font-weight: 720;
  margin-top: 7px;
}
.ma-mara-answer-v14 header small {
  color: var(--ma-muted);
  display: block;
  margin-top: 5px;
}
@media(max-width:980px) {
  .ma-mara-answer-mode > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
  .ma-mara-answer-mode > div,
  .ma-rota-analysis-mode > div { grid-template-columns: 1fr; }
  .ma-mara-answer-mode label > span,
  .ma-rota-analysis-mode label > span { min-height: 0; }
}

/* Merentra App 1.4.4 — protected setup contrast and progress recovery.
 * These high-specificity rules intentionally sit last so theme-resilience rules
 * cannot make the dark brand panel unreadable or turn the setup bar into an
 * onboarding-step grid. */
body.merentra-app-surface .ma-auth-shell--setup {
  grid-template-columns: minmax(420px, .92fr) minmax(480px, 1.08fr);
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-brand {
  background:
    radial-gradient(circle at 82% 16%, rgba(16, 178, 205, .25), transparent 31%),
    radial-gradient(circle at 18% 90%, rgba(231, 105, 75, .15), transparent 33%),
    linear-gradient(145deg, #09151d 0%, #102a34 58%, #123b46 100%);
  color: #ffffff !important;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-brand :where(h1,h2,h3,h4,strong) {
  color: #ffffff !important;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-brand :where(p,small) {
  color: #dce9ec !important;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-brand .ma-eyebrow,
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-proof span {
  color: #a8edf6 !important;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-brand__footer {
  color: #c9d8dc !important;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-brand small {
  color: #d6e4e7 !important;
  opacity: 1;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-main {
  background:
    radial-gradient(circle at 90% 8%, rgba(7, 148, 177, .09), transparent 28%),
    #f7f5ef;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-card--setup {
  display: grid;
  gap: 22px;
  max-width: 570px;
  width: min(100%, 570px);
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-card--setup :where(h1,h2,h3,h4,strong) {
  color: #101820 !important;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-card--setup > h1 {
  font-size: clamp(2.3rem, 4.5vw, 4.15rem);
  font-weight: 760;
  letter-spacing: -.045em;
  line-height: 1.04;
  margin: 0;
  max-width: 14ch;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-card--setup > p {
  color: #475d67 !important;
  font-size: 1rem;
  line-height: 1.65;
  margin: 0;
  max-width: 54ch;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-card--setup > .ma-eyebrow {
  color: #06788f !important;
  font-size: .78rem;
}
.ma-setup-status {
  background: #ffffff;
  border: 1px solid #cbd8db;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(16, 24, 32, .06);
  display: grid;
  gap: 12px;
  padding: 17px 18px;
}
.ma-setup-status__meta {
  align-items: center;
  color: #3f5660;
  display: flex;
  font-size: .88rem;
  gap: 16px;
  justify-content: space-between;
  line-height: 1.4;
}
.ma-setup-status__meta strong {
  color: #101820 !important;
  font-size: .92rem;
}
.ma-setup-status__meta span {
  color: #06788f !important;
  font-size: .95rem;
  font-weight: 800;
}
.ma-setup-progress {
  background: #dfe9eb !important;
  border: 0 !important;
  border-radius: 999px !important;
  display: block !important;
  height: 14px !important;
  margin: 0 !important;
  min-height: 14px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: relative;
  width: 100% !important;
}
.ma-setup-progress > span {
  background: linear-gradient(90deg, #06788f 0%, #0794b1 74%, #19abc5 100%) !important;
  border: 0 !important;
  border-radius: inherit !important;
  display: block !important;
  height: 100% !important;
  min-height: 14px !important;
  transition: width .3s ease;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-setup-note {
  background: #eaf7fa;
  border: 1px solid #bddfe6;
  border-radius: 13px;
  color: #31545f !important;
  font-size: .9rem;
  line-height: 1.55;
  padding: 13px 15px;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-actions {
  align-items: stretch;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-auth-actions .ma-button {
  flex: 1 1 190px;
  justify-content: center;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-button--primary {
  background: #066f84 !important;
  border-color: #066f84 !important;
  color: #ffffff !important;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-button--primary:hover {
  background: #055d6e !important;
  border-color: #055d6e !important;
}
body.merentra-app-surface .ma-auth-shell--setup .ma-button--secondary {
  background: #ffffff !important;
  border-color: #b8c8cc !important;
  color: #17272f !important;
}
@media (max-width: 1040px) {
  body.merentra-app-surface .ma-auth-shell--setup {
    grid-template-columns: minmax(320px, .78fr) minmax(430px, 1.22fr);
  }
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-brand__content h2 {
    font-size: clamp(2.25rem, 4.8vw, 3.5rem);
  }
}
@media (max-width: 820px) {
  body.merentra-app-surface .ma-auth-shell--setup {
    display: block;
    min-height: 100dvh;
  }
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-brand {
    min-height: auto;
    padding: 28px 24px;
  }
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-brand__content {
    margin: 38px 0 22px;
    padding: 0;
  }
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-brand__content h2 {
    max-width: 15ch;
  }
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-proof {
    display: none;
  }
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-main {
    min-height: auto;
    padding: 42px 24px 64px;
  }
}
@media (max-width: 520px) {
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-brand {
    padding: 24px 18px;
  }
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-brand__content h2 {
    font-size: clamp(2rem, 10vw, 2.75rem);
  }
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-main {
    padding: 34px 18px 52px;
  }
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-card--setup > h1 {
    font-size: clamp(2.1rem, 11vw, 3rem);
  }
  .ma-setup-status__meta {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
}


/* The planning home hero deliberately uses the dark intelligence surface.
 * Pass 4's light Work-hero type treatment has equal specificity and would
 * otherwise make its title and foundation summary unreadable here. */
.ma-hero-card--work-live.ma-hero-card--planning,
.ma-hero-card--work-live.ma-hero-card--planning :where(h2,.ma-foundation-meter strong) {
  color: #ffffff;
}
.ma-hero-card--work-live.ma-hero-card--planning > .ma-hero-card__content > p,
.ma-hero-card--work-live.ma-hero-card--planning .ma-foundation-meter p,
.ma-hero-card--work-live.ma-hero-card--planning .ma-foundation-meter small {
  color: rgba(255,255,255,.78);
}
.ma-hero-card--work-live.ma-hero-card--planning .ma-eyebrow {
  color: #86e1ee;
}
.ma-hero-card--work-live.ma-hero-card--planning .ma-button--secondary {
  background: rgba(255,255,255,.9);
  border-color: rgba(255,255,255,.64);
  color: #101820 !important;
}
.ma-hero-card--work-live.ma-hero-card--planning .ma-foundation-meter__ring {
  background: conic-gradient(#4fc9dd 0 80%, rgba(255,255,255,.16) 80% 100%);
  color: #ffffff;
}

/* Merentra App 1.4.3 — mobile-first responsive hardening.
 * This final layer optimises every member-facing surface for phones, tablets,
 * safe areas, virtual keyboards, landscape use, long content and coarse touch.
 * It intentionally sits last so earlier desktop component rules cannot re-open
 * document overflow or shrink interactive targets on small screens. */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body.merentra-app-surface {
  max-width: 100%;
  overflow-x: hidden;
  overflow-x: clip;
  overscroll-behavior-x: none;
}

.ma-app,
.ma-auth-shell {
  max-width: 100%;
  min-height: 100svh;
  overflow-x: clip;
}

.ma-app :where(section,article,aside,header,footer,nav,div,form,fieldset,label),
.ma-auth-shell :where(section,article,aside,header,footer,nav,div,form,fieldset,label) {
  min-width: 0;
}

.ma-app :where(h1,h2,h3,h4,h5,p,li,dd,dt,strong,small,span,a,button,label,legend,td,th),
.ma-auth-shell :where(h1,h2,h3,h4,h5,p,li,dd,dt,strong,small,span,a,button,label,legend,td,th) {
  overflow-wrap: anywhere;
  word-break: normal;
}

.ma-app :where(button,a,input,select,textarea,summary),
.ma-auth-shell :where(button,a,input,select,textarea,summary) {
  touch-action: manipulation;
}

.ma-app img,
.ma-app svg,
.ma-auth-shell img,
.ma-auth-shell svg {
  max-width: 100%;
}

.ma-app.is-keyboard-open .ma-mobile-nav {
  opacity: 0;
  pointer-events: none;
  transform: translateY(110%);
}

.ma-app.is-keyboard-open .ma-main {
  padding-bottom: max(24px, env(safe-area-inset-bottom));
}

.ma-app.is-keyboard-open .ma-command-palette {
  bottom: 0;
  max-height: var(--ma-visual-viewport-height, 100dvh);
}

@supports (height: 100dvh) {
  .ma-app,
  .ma-auth-shell,
  .ma-app-layout,
  .ma-sidebar,
  .ma-main {
    min-height: 100dvh;
  }
}

@media (max-width: 820px) {
  body.merentra-app-surface {
    --ma-mobile-admin-offset: 0px;
    min-width: 0;
    padding-bottom: 0;
  }

  body.admin-bar.merentra-app-surface {
    --ma-mobile-admin-offset: 46px;
  }

  .ma-app-layout,
  .ma-main {
    min-height: calc(100svh - var(--ma-mobile-admin-offset));
  }

  .ma-main {
    overflow: visible;
    padding:
      0 max(12px, env(safe-area-inset-right))
      calc(84px + env(safe-area-inset-bottom))
      max(12px, env(safe-area-inset-left));
  }

  .ma-topbar {
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
    background: rgba(247,245,239,.96);
    background: color-mix(in srgb, var(--ma-cream) 91%, transparent);
    border-bottom: 1px solid rgba(201, 212, 214, .78);
    gap: 12px;
    margin-inline: calc(-1 * max(12px, env(safe-area-inset-left)));
    min-height: 72px;
    padding:
      8px max(12px, env(safe-area-inset-right))
      8px max(12px, env(safe-area-inset-left));
    position: sticky;
    top: var(--ma-mobile-admin-offset);
    z-index: 260;
  }

  .ma-topbar__title {
    flex: 1 1 auto;
  }

  .ma-topbar__title h1 {
    display: -webkit-box;
    font-size: clamp(20px, 5.7vw, 25px);
    line-height: 1.12;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .ma-topbar__actions {
    flex: 0 0 auto;
    gap: 6px;
  }

  .ma-command-button,
  .ma-icon-button,
  .ma-avatar--button {
    height: 44px;
    min-height: 44px;
    min-width: 44px;
  }

  .ma-view {
    padding-top: 12px;
    width: 100%;
  }

  .ma-page {
    max-width: 100%;
    width: 100%;
  }

  .ma-page-intro,
  .ma-card-head,
  .ma-work-header {
    align-items: stretch;
    flex-direction: column;
  }

  .ma-page-intro > div:first-child,
  .ma-card-head > div:first-child {
    max-width: none;
    width: 100%;
  }

  .ma-page-intro > :where(.ma-button,a.ma-button,button.ma-button),
  .ma-card-head > :where(.ma-button,a.ma-button,button.ma-button) {
    align-self: flex-start;
  }

  .ma-page-intro h2 {
    font-size: clamp(25px, 7vw, 33px);
    line-height: 1.08;
  }

  .ma-page-intro p,
  .ma-card-head p {
    font-size: 14px;
    line-height: 1.58;
  }

  .ma-card,
  .ma-onboarding-card,
  .ma-work-setup__card,
  .ma-settings-panel {
    border-radius: 16px;
    padding: 18px;
  }

  .ma-card-head {
    gap: 12px;
    margin-bottom: 16px;
  }

  .ma-card-head > :where(.ma-pill,.ma-status-chip,.ma-source-badge) {
    align-self: flex-start;
    white-space: normal;
  }

  .ma-button {
    font-size: 14px;
    min-height: 48px;
    padding: 13px 16px;
  }

  .ma-text-button {
    min-height: 44px;
    padding-block: 10px;
  }

  .ma-form input[type="text"],
  .ma-form input[type="email"],
  .ma-form input[type="password"],
  .ma-form input[type="search"],
  .ma-form input[type="url"],
  .ma-form input[type="number"],
  .ma-form input[type="date"],
  .ma-form input[type="time"],
  .ma-form input[type="tel"],
  .ma-form select,
  .ma-form textarea,
  .ma-compact-select select {
    font-size: 16px;
    min-height: 48px;
    width: 100%;
  }

  .ma-form textarea {
    min-height: 132px;
  }

  .ma-form label,
  .ma-choice-fieldset legend {
    font-size: 13px;
  }

  .ma-form-actions,
  .ma-auth-actions,
  .ma-hero-actions,
  .ma-home-duty-actions,
  .ma-work-header__actions,
  .ma-mobile-hero__actions {
    align-items: stretch;
    display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .ma-form-actions .ma-button,
  .ma-auth-actions .ma-button,
  .ma-hero-actions .ma-button,
  .ma-home-duty-actions .ma-button,
  .ma-work-header__actions .ma-button,
  .ma-mobile-hero__actions .ma-button {
    justify-content: center;
    width: 100%;
  }

  .ma-subnav {
    -webkit-overflow-scrolling: touch;
    background: rgba(247,245,239,.98);
    background: color-mix(in srgb, var(--ma-cream) 94%, transparent);
    border-bottom: 1px solid var(--ma-line);
    gap: 6px;
    margin-inline: calc(-1 * max(12px, env(safe-area-inset-left)));
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    padding:
      8px max(12px, env(safe-area-inset-right))
      9px max(12px, env(safe-area-inset-left));
    position: sticky;
    scrollbar-width: none;
    scroll-padding-inline: 12px;
    scroll-snap-type: inline proximity;
    top: calc(var(--ma-mobile-admin-offset) + 72px);
    z-index: 240;
  }

  .ma-subnav::-webkit-scrollbar {
    display: none;
  }

  .ma-subnav button {
    flex: 0 0 auto;
    font-size: 13px;
    min-height: 44px;
    padding: 10px 14px;
    scroll-snap-align: start;
    white-space: nowrap;
  }

  .ma-subnav button > span {
    font-size: 9px;
  }

  .ma-mobile-nav {
    background: rgba(9, 21, 29, .985);
    border-top: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 -10px 28px rgba(9,21,29,.22);
    gap: 2px;
    min-height: calc(66px + env(safe-area-inset-bottom));
    padding:
      5px max(6px, env(safe-area-inset-right))
      calc(5px + env(safe-area-inset-bottom))
      max(6px, env(safe-area-inset-left));
    transition: opacity .18s ease, transform .22s ease;
  }

  .ma-mobile-nav__item {
    border-radius: 12px;
    color: rgba(255,255,255,.72);
    font-size: 10px;
    font-weight: 720;
    gap: 4px;
    min-height: 56px;
    min-width: 0;
    padding: 6px 2px;
    position: relative;
    white-space: nowrap;
  }

  .ma-mobile-nav__item .ma-icon {
    height: 21px;
    width: 21px;
  }

  .ma-mobile-nav__item.is-active {
    background: rgba(7,148,177,.2);
    color: #b9f2fa;
  }

  .ma-mobile-nav__item.is-active::after {
    background: #4fc9dd;
    border-radius: 999px;
    bottom: 3px;
    content: "";
    height: 3px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 22px;
  }

  .ma-toast-region {
    bottom: calc(76px + env(safe-area-inset-bottom));
    left: max(10px, env(safe-area-inset-left));
    right: max(10px, env(safe-area-inset-right));
  }

  .ma-toast {
    align-items: start;
    display: grid;
    font-size: 13px;
    gap: 10px;
    grid-template-columns: auto minmax(0,1fr) 44px;
    padding: 12px 8px 12px 14px;
  }

  .ma-toast p {
    margin: 1px 0 0;
  }

  .ma-toast__close {
    height: 44px;
    min-width: 44px;
  }

  .ma-command-palette {
    border: 0;
    border-radius: 22px 22px 0 0;
    bottom: calc(66px + env(safe-area-inset-bottom));
    left: 0;
    max-height: calc(100dvh - 66px - env(safe-area-inset-bottom));
    padding:
      18px max(16px, env(safe-area-inset-right))
      calc(20px + env(safe-area-inset-bottom))
      max(16px, env(safe-area-inset-left));
    top: auto;
    transform: none;
    width: 100%;
  }

  .ma-command-palette__head {
    position: sticky;
    top: 0;
    z-index: 2;
  }

  .ma-dialog-backdrop {
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
  }

  .ma-hero-card {
    border-radius: 18px;
    padding: 24px 18px;
  }

  .ma-hero-card h2 {
    font-size: clamp(29px, 8.6vw, 38px);
    max-width: 16ch;
  }

  .ma-foundation-meter {
    align-items: flex-start;
  }

  .ma-home-planning-kpis,
  .ma-planning-kpi-grid,
  .ma-impact-strip,
  .ma-mobile-assurance-grid,
  .ma-mobile-boundary__grid,
  .ma-settings-columns,
  .ma-onboarding-foundation-grid,
  .ma-onboarding-method-grid,
  .ma-review-grid,
  .ma-intake-next-steps__grid,
  .ma-onboarding-ready-grid {
    grid-template-columns: 1fr;
  }

  .ma-home-duty-intelligence,
  .ma-home-next-card .ma-card-head,
  .ma-record-card,
  .ma-record-item,
  .ma-mobile-device-card {
    max-width: 100%;
  }

  .ma-roadmap-line {
    -webkit-overflow-scrolling: touch;
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding-bottom: 6px;
    scroll-snap-type: inline proximity;
  }

  .ma-roadmap-line > * {
    flex: 0 0 min(76vw, 250px);
    scroll-snap-align: start;
  }

  .ma-onboarding {
    gap: 20px;
    grid-template-columns: 1fr;
  }

  .ma-onboarding-intro {
    padding-top: 4px;
  }

  .ma-onboarding-intro h2 {
    font-size: clamp(28px, 8vw, 38px);
    max-width: 18ch;
  }

  .ma-onboarding-progress,
  .ma-onboarding-progress--four {
    -webkit-overflow-scrolling: touch;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(74px, 1fr));
    overflow-x: auto;
    padding-bottom: 5px;
    scrollbar-width: none;
  }

  .ma-onboarding-progress::-webkit-scrollbar {
    display: none;
  }

  .ma-onboarding-progress > div {
    align-items: start;
    display: grid;
    gap: 7px;
    grid-template-columns: 28px minmax(0,1fr);
    min-width: 74px;
  }

  .ma-onboarding-progress > div > span {
    height: 28px;
    min-width: 28px;
    width: 28px;
  }

  .ma-onboarding-progress strong {
    font-size: 11px;
    line-height: 1.25;
  }

  .ma-onboarding-progress small {
    display: none;
  }

  .ma-setup-method-card {
    min-height: 0;
    padding: 18px;
  }

  .ma-setup-method-card__footer,
  .ma-onboarding-trust-row {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .ma-onboarding-trust-row {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .ma-intake-upload-options,
  .ma-intake-source-grid,
  .ma-intake-decision-grid,
  .ma-proposal-grid {
    grid-template-columns: 1fr;
  }

  .ma-intake-queued-file,
  .ma-intake-source-row {
    align-items: start;
    grid-template-columns: 42px minmax(0,1fr) 44px;
  }

  .ma-intake-queued-file button,
  .ma-intake-source-row button {
    height: 44px;
    min-width: 44px;
  }

  .ma-work-header__actions {
    grid-template-columns: 1fr;
  }

  .ma-work-header__actions .ma-compact-select {
    width: 100%;
  }

  .ma-work-trust-strip {
    -webkit-overflow-scrolling: touch;
    display: flex;
    gap: 8px;
    margin-inline: calc(-1 * max(12px, env(safe-area-inset-left)));
    overflow-x: auto;
    padding-inline: max(12px, env(safe-area-inset-left));
    scrollbar-width: none;
    scroll-snap-type: inline proximity;
  }

  .ma-work-trust-strip::-webkit-scrollbar {
    display: none;
  }

  .ma-work-trust-strip > span {
    flex: 0 0 auto;
    min-height: 36px;
    scroll-snap-align: start;
    white-space: nowrap;
  }

  .ma-work-toolbar,
  .ma-work-control-row,
  .ma-work-calendar-controls,
  .ma-import-toolbar,
  .ma-connection-toolbar {
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .ma-timetable-card,
  .ma-table-scroll,
  .ma-import-table-wrap,
  .ma-record-table-wrap {
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
  }

  .ma-work-editor-backdrop {
    align-items: flex-end;
    padding: 0;
  }

  .ma-work-editor {
    border-radius: 22px 22px 0 0;
    height: min(94dvh, var(--ma-visual-viewport-height, 94dvh));
    max-height: min(94dvh, var(--ma-visual-viewport-height, 94dvh));
    max-width: none;
    width: 100%;
  }

  .ma-work-editor > header,
  .ma-work-editor__head {
    background: var(--ma-paper);
    padding: 16px;
    position: sticky;
    top: 0;
    z-index: 4;
  }

  .ma-work-session-form {
    padding: 0 16px calc(22px + env(safe-area-inset-bottom));
  }

  .ma-work-session-form > footer,
  .ma-work-editor__footer {
    background: var(--ma-paper);
    bottom: 0;
    box-shadow: 0 -8px 22px rgba(16,24,32,.08);
    margin-inline: -16px;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
    position: sticky;
    z-index: 4;
  }

  .ma-work-session-form > footer,
  .ma-work-session-form > footer > div,
  .ma-work-editor__footer,
  .ma-work-editor__footer > div {
    align-items: stretch;
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr;
    margin-left: 0;
  }

  .ma-work-session-form > footer .ma-button,
  .ma-work-editor__footer .ma-button {
    width: 100%;
  }

  .ma-mara-hero,
  .ma-mara-workspace,
  .ma-mara-layout,
  .ma-mara-question-grid {
    grid-template-columns: 1fr;
  }

  .ma-mara-orb--large {
    height: 82px;
    width: 82px;
  }

  .ma-mara-answer-mode > div,
  .ma-rota-analysis-mode > div {
    grid-template-columns: 1fr;
  }

  .ma-mara-answer-mode label > span,
  .ma-rota-analysis-mode label > span {
    min-height: 0;
  }

  .ma-mobile-hero {
    grid-template-columns: 1fr;
    padding: 22px 18px;
  }

  .ma-mobile-hero__phone {
    justify-self: center;
    max-width: 280px;
    width: 100%;
  }

  .ma-mobile-device-list {
    grid-template-columns: 1fr;
  }

  .ma-pairing-code {
    font-size: clamp(1.35rem, 9vw, 2.25rem);
    letter-spacing: .08em;
    overflow-wrap: anywhere;
  }

  .ma-settings-page .ma-page-intro > a.ma-button {
    width: 100%;
  }

  .ma-toggle-row,
  .ma-toggle-field,
  .ma-check--card {
    min-height: 52px;
  }
}

@media (max-width: 620px) {
  .ma-auth-shell {
    display: block;
    min-height: 100svh;
  }

  .ma-auth-brand {
    min-height: 0;
    padding: calc(18px + env(safe-area-inset-top)) 18px 20px;
  }

  .ma-auth-brand__content {
    margin: 24px 0 0;
  }

  .ma-auth-brand__content h2 {
    font-size: clamp(28px, 8.5vw, 36px);
    line-height: 1.06;
    max-width: 17ch;
  }

  .ma-auth-brand__content > p,
  .ma-auth-brand__footer,
  .ma-auth-proof {
    display: none;
  }

  .ma-auth-main {
    min-height: 0;
    padding:
      28px max(16px, env(safe-area-inset-right))
      calc(42px + env(safe-area-inset-bottom))
      max(16px, env(safe-area-inset-left));
  }

  .ma-auth-card,
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-card--setup {
    gap: 18px;
    max-width: none;
    width: 100%;
  }

  .ma-auth-card__head h1,
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-card--setup > h1 {
    font-size: clamp(31px, 9.5vw, 42px);
    max-width: 16ch;
  }

  .ma-auth-card__head p,
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-card--setup > p {
    font-size: 15px;
  }

  .ma-card,
  .ma-onboarding-card,
  .ma-work-setup__card,
  .ma-settings-panel {
    padding: 16px;
  }

  .ma-page-intro {
    margin-bottom: 18px;
  }

  .ma-hero-card {
    margin-inline: -2px;
  }

  .ma-grid,
  .ma-home-page > .ma-grid,
  .ma-home-page > .ma-roadmap-card {
    gap: 14px;
    margin-top: 14px;
  }

  .ma-onboarding-card {
    padding: 18px 14px;
  }

  .ma-onboarding-trust-row {
    grid-template-columns: 1fr;
  }

  .ma-onboarding-progress,
  .ma-onboarding-progress--four {
    grid-template-columns: repeat(4, 70px);
    justify-content: start;
  }

  .ma-onboarding-progress > div {
    display: grid;
    grid-template-columns: 26px minmax(0,1fr);
  }

  .ma-onboarding-progress > div > :last-child {
    display: block;
  }

  .ma-onboarding-progress strong {
    display: block;
  }

  .ma-choice-cards,
  .ma-form-grid,
  .ma-form-grid--2,
  .ma-activation-context,
  .ma-work-template-grid,
  .ma-work-setup-review,
  .ma-intake-provider-meta {
    grid-template-columns: 1fr;
  }

  .ma-choice-card > span {
    min-height: 0;
  }

  .ma-link-banner__actions {
    display: grid;
    grid-template-columns: 1fr auto;
  }

  .ma-link-banner__actions .ma-button {
    width: 100%;
  }

  .ma-form-row--between {
    gap: 10px;
  }

  .ma-work-session-card.is-compact {
    max-width: none;
    min-width: 0;
    width: 100%;
  }

  .ma-mobile-cycle-list,
  .ma-mobile-work-day,
  .ma-mobile-period {
    max-width: 100%;
  }

  .ma-mobile-work-day header,
  .ma-mobile-period {
    grid-template-columns: minmax(0,1fr) 44px;
  }

  .ma-mobile-period > span {
    min-width: 0;
  }

  .ma-record-card .ma-form-actions,
  .ma-record-item .ma-form-actions,
  .ma-intake-next-steps .ma-form-actions {
    grid-template-columns: 1fr;
  }

  .ma-intake-next-steps__head {
    grid-template-columns: 36px minmax(0,1fr);
  }

  .ma-intake-next-steps__head > span {
    height: 36px;
    width: 36px;
  }

  .ma-setup-status,
  .ma-runbook-field {
    padding: 15px;
  }
}

@media (max-width: 430px) {
  .ma-main {
    padding-inline: max(10px, env(safe-area-inset-left));
  }

  .ma-topbar {
    margin-inline: calc(-1 * max(10px, env(safe-area-inset-left)));
    min-height: 68px;
    padding-inline: max(10px, env(safe-area-inset-left));
  }

  .ma-subnav {
    margin-inline: calc(-1 * max(10px, env(safe-area-inset-left)));
    padding-inline: max(10px, env(safe-area-inset-left));
    top: calc(var(--ma-mobile-admin-offset) + 68px);
  }

  .ma-topbar__title h1 {
    font-size: 21px;
  }

  .ma-brand small,
  .ma-topbar__title > span {
    display: none;
  }

  .ma-mobile-nav__item {
    font-size: 10px;
    letter-spacing: -.01em;
    padding-inline: 1px;
  }

  .ma-mobile-nav__item .ma-icon {
    height: 20px;
    width: 20px;
  }

  .ma-page-intro h2 {
    font-size: 27px;
  }

  .ma-hero-card h2 {
    font-size: clamp(28px, 9.4vw, 34px);
  }

  .ma-card,
  .ma-onboarding-card,
  .ma-work-setup__card,
  .ma-settings-panel {
    border-radius: 14px;
    padding: 14px;
  }

  .ma-pill,
  .ma-status-chip,
  .ma-source-badge {
    line-height: 1.25;
    white-space: normal;
  }

  .ma-onboarding-progress,
  .ma-onboarding-progress--four {
    grid-template-columns: repeat(4, 66px);
  }

  .ma-onboarding-progress strong {
    font-size: 10px;
  }

  .ma-command-palette {
    border-radius: 18px 18px 0 0;
    padding-inline: 14px;
  }

  .ma-mara-disabled {
    grid-template-columns: 44px minmax(0,1fr);
    padding: 14px;
  }

  .ma-mara-disabled .ma-mara-orb {
    height: 44px;
    width: 44px;
  }
}

@media (max-width: 920px) and (max-height: 520px) and (orientation: landscape) {
  .ma-auth-brand {
    display: none;
  }

  .ma-auth-main {
    min-height: 100svh;
    padding: 24px max(20px, env(safe-area-inset-right)) 32px max(20px, env(safe-area-inset-left));
  }

  .ma-topbar {
    min-height: 58px;
  }

  .ma-subnav {
    top: calc(var(--ma-mobile-admin-offset) + 58px);
  }

  .ma-main {
    padding-bottom: calc(60px + env(safe-area-inset-bottom));
  }

  .ma-mobile-nav {
    min-height: calc(52px + env(safe-area-inset-bottom));
  }

  .ma-mobile-nav__item {
    min-height: 44px;
  }

  .ma-mobile-nav__item > span {
    display: none;
  }

  .ma-command-palette {
    bottom: calc(52px + env(safe-area-inset-bottom));
    max-height: calc(100dvh - 52px - env(safe-area-inset-bottom));
  }
}

@media (hover: none) and (pointer: coarse) {
  .ma-button:hover:not(:disabled),
  .ma-icon-button:hover,
  .ma-nav-item:hover,
  .ma-work-session-card:hover,
  .ma-setup-method-card:hover,
  .ma-work-template-card:hover,
  .ma-mara-answer-mode label:hover > span,
  .ma-rota-analysis-mode label:hover > span {
    transform: none;
  }

  .ma-subnav,
  .ma-work-trust-strip,
  .ma-roadmap-line {
    scrollbar-width: none;
  }
}

/* Final phone input and compact-landscape safeguards. */
@media (max-width: 820px) {
  .ma-check input[type="checkbox"],
  .ma-check input[type="radio"] {
    height: 22px;
    min-height: 22px;
    min-width: 22px;
    width: 22px;
  }

  .ma-work-trust-strip {
    font-size: 11px;
  }
}

@media (max-width: 920px) and (max-height: 520px) and (orientation: landscape) {
  .ma-form input[type="text"],
  .ma-form input[type="email"],
  .ma-form input[type="password"],
  .ma-form input[type="search"],
  .ma-form input[type="url"],
  .ma-form input[type="number"],
  .ma-form input[type="date"],
  .ma-form input[type="time"],
  .ma-form input[type="tel"],
  .ma-form select,
  .ma-form textarea,
  .ma-compact-select select {
    font-size: 16px;
    min-height: 44px;
  }

  .ma-subnav button,
  .ma-button,
  .ma-text-button,
  .ma-icon-button,
  .ma-command-button,
  .ma-avatar--button {
    min-height: 44px;
  }

  .ma-check input[type="checkbox"],
  .ma-check input[type="radio"] {
    height: 22px;
    min-height: 22px;
    min-width: 22px;
    width: 22px;
  }
}

/* Landscape authentication/setup correction: hiding the brand panel must also
 * collapse the two-column shell so the remaining form uses the full viewport. */
@media (max-width: 920px) and (max-height: 520px) and (orientation: landscape) {
  .ma-auth-shell,
  body.merentra-app-surface .ma-auth-shell--setup {
    display: block;
    grid-template-columns: 1fr;
    min-height: 100svh;
    width: 100%;
  }

  .ma-auth-main,
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-main {
    min-height: 100svh;
    padding:
      20px max(24px, env(safe-area-inset-right))
      calc(24px + env(safe-area-inset-bottom))
      max(24px, env(safe-area-inset-left));
    width: 100%;
  }

  .ma-auth-card,
  body.merentra-app-surface .ma-auth-shell--setup .ma-auth-card--setup {
    max-width: 680px;
    width: min(100%, 680px);
  }
}

/* Touch-tablet safeguards extend beyond the phone breakpoint. 1024px tablets
 * and large phones in landscape must not inherit desktop-size controls that
 * trigger Safari focus zoom or reduce tap accuracy. */
@media (max-width: 1024px) {
  .ma-app input:not([type="hidden"]):not([type="file"]):not([type="checkbox"]):not([type="radio"]),
  .ma-app select,
  .ma-app textarea,
  .ma-auth-shell input:not([type="hidden"]):not([type="file"]):not([type="checkbox"]):not([type="radio"]),
  .ma-auth-shell select,
  .ma-auth-shell textarea {
    font-size: 16px;
    min-height: 44px;
  }

  .ma-app input[type="checkbox"],
  .ma-app input[type="radio"],
  .ma-auth-shell input[type="checkbox"],
  .ma-auth-shell input[type="radio"] {
    height: 22px;
    min-height: 22px;
    min-width: 22px;
    width: 22px;
  }

  .ma-subnav button {
    min-height: 44px;
  }
}

/* --------------------------------------------------------------------------
 * Merentra App 1.4.4 — desktop route, roadmap and Mara interface recovery
 * -------------------------------------------------------------------------- */

/* The live roadmap has six stages. Earlier five- and seven-column rules made
 * the sixth stage wrap onto a broken connector line at common desktop widths. */
.ma-roadmap-line {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

/* Keep the Mara hero legible within the real WordPress/app workspace rather
 * than sizing the headline from the full browser width. */
.ma-mara-hero-v14 {
  align-items: center;
  gap: clamp(26px, 4vw, 54px);
  grid-template-columns: minmax(0, 1.35fr) minmax(270px, 0.65fr);
  padding: clamp(30px, 4.2vw, 50px);
}

.ma-mara-hero-v14 h2 {
  font-size: clamp(2.45rem, 4vw, 4.2rem);
  line-height: 1.01;
  max-width: 15.5ch;
}

.ma-mara-hero-v14__copy {
  align-content: center;
}

.ma-mara-status-card {
  align-content: start;
  align-self: center;
  min-height: 0;
}

/* Shared secondary buttons carry an !important dark colour, so the dark hero
 * requires an equally explicit accessible override. */
.ma-mara-hero-v14__actions .ma-button--secondary {
  background: rgba(255,255,255,.1);
  border-color: rgba(255,255,255,.42);
  color: #ffffff !important;
}

.ma-mara-hero-v14__actions .ma-button--secondary:hover:not(:disabled),
.ma-mara-hero-v14__actions .ma-button--secondary:focus-visible {
  background: rgba(255,255,255,.17);
  border-color: rgba(255,255,255,.66);
  color: #ffffff !important;
}

@media (max-width: 1180px) and (min-width: 821px) {
  .ma-roadmap-line {
    column-gap: 16px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 30px;
  }

  .ma-roadmap-node {
    min-width: 0;
  }
}

@media (max-width: 1100px) {
  .ma-mara-hero-v14 {
    grid-template-columns: 1fr;
  }

  .ma-mara-hero-v14 h2 {
    font-size: clamp(2.35rem, 6vw, 4rem);
    max-width: 17ch;
  }

  .ma-mara-status-card {
    max-width: 680px;
    width: 100%;
  }
}

@media (max-width: 820px) {
  .ma-roadmap-line {
    display: flex;
  }
}


/* Merentra App 1.4.4 — job-plan review and UI recovery */
.ma-source-page-hint {
  display: grid;
  gap: 7px;
  max-width: 520px;
}
.ma-source-page-hint > span {
  color: var(--ma-ink);
  font-size: .82rem;
  font-weight: 760;
}
.ma-source-page-hint > span em {
  color: var(--ma-muted);
  font-size: .72rem;
  font-style: normal;
  font-weight: 600;
}
.ma-source-page-hint input { max-width: 180px; }
.ma-source-page-hint small { color: var(--ma-muted); line-height: 1.5; }
@media (max-width: 820px) {
  .ma-source-page-hint, .ma-source-page-hint input { max-width: none; width: 100%; }
}

/* Merentra App 1.4.4 — visible job-plan reconciliation */
.ma-job-plan-reconciliation {
  background: #f5fbfb;
  border: 1px solid #b9dcdf;
  border-radius: 22px;
  display: grid;
  gap: 18px;
  margin: 18px 0 24px;
  padding: clamp(18px, 2.4vw, 26px);
}
.ma-job-plan-reconciliation.is-attention {
  background: #fff9f5;
  border-color: #edc0ae;
}
.ma-job-plan-reconciliation__head {
  align-items: start;
  display: flex;
  gap: 18px;
  justify-content: space-between;
}
.ma-job-plan-reconciliation__head h4 { margin: 5px 0 6px; }
.ma-job-plan-reconciliation__head p { color: var(--ma-muted); margin: 0; max-width: 70ch; }
.ma-job-plan-reconciliation__metrics {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.ma-job-plan-reconciliation__metrics > div {
  background: #fff;
  border: 1px solid #d7e6e8;
  border-radius: 14px;
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 13px 14px;
}
.ma-job-plan-reconciliation__metrics span { color: #52666f; font-size: .75rem; font-weight: 700; }
.ma-job-plan-reconciliation__metrics strong { color: var(--ma-ink); font-size: 1.05rem; overflow-wrap: anywhere; }
.ma-job-plan-allocation-list { display: flex; flex-wrap: wrap; gap: 8px; }
.ma-job-plan-allocation-list > strong { flex: 0 0 100%; font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
.ma-job-plan-allocation-list > span {
  align-items: center;
  background: #fff;
  border: 1px solid #d7e6e8;
  border-radius: 999px;
  display: inline-flex;
  gap: 8px;
  max-width: 100%;
  padding: 8px 11px;
}
.ma-job-plan-allocation-list b,
.ma-job-plan-allocation-list em { font-size: .78rem; overflow-wrap: anywhere; }
.ma-job-plan-allocation-list em { color: var(--ma-muted); font-style: normal; }
.ma-job-plan-reconciliation__issues { border-top: 1px solid #d7e6e8; padding-top: 12px; }
.ma-job-plan-reconciliation__issues summary { cursor: pointer; font-weight: 760; }
.ma-job-plan-reconciliation__issues ul { color: #4b5e67; margin: 10px 0 0; padding-left: 20px; }
.ma-job-plan-reconciliation__issues li + li { margin-top: 6px; }
@media (max-width: 1100px) {
  .ma-job-plan-reconciliation__metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
  .ma-job-plan-reconciliation__head { align-items: stretch; flex-direction: column; }
  .ma-job-plan-reconciliation__head .ma-pill { align-self: flex-start; }
  .ma-job-plan-reconciliation__metrics { grid-template-columns: 1fr 1fr; }
  .ma-job-plan-reconciliation__metrics > div:last-child { grid-column: 1 / -1; }
  .ma-job-plan-allocation-list > span { align-items: flex-start; border-radius: 14px; flex-direction: column; width: 100%; }
}

/* App 1.4.4 — persistent Work-source batch queue and explicit Mara reading. */
.ma-import-file-summary {
  align-items: stretch;
  display: grid;
  gap: 10px;
  justify-content: stretch;
}
.ma-import-file-summary > [data-ma-import-file-summary-copy] {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 5px 12px;
  justify-content: space-between;
}
.ma-import-file-summary > [data-ma-import-file-summary-copy] strong,
.ma-import-file-summary > [data-ma-import-file-summary-copy] span {
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
}
.ma-import-file-list {
  display: grid;
  gap: 8px;
}
.ma-import-file-list:empty { display: none; }
.ma-import-queued-file {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(7,148,177,.22);
  border-radius: 11px;
  display: grid;
  gap: 10px;
  grid-template-columns: 44px minmax(0,1fr) auto;
  min-width: 0;
  padding: 9px 10px;
}
.ma-import-queued-file > span:nth-child(2) {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.ma-import-queued-file strong {
  color: var(--ma-ink);
  font-size: .78rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ma-import-queued-file small { color: var(--ma-muted); font-size: .68rem; }
.ma-import-queued-file button {
  background: transparent;
  border: 0;
  color: var(--ma-danger);
  cursor: pointer;
  font-size: .7rem;
  font-weight: 760;
  min-height: 40px;
  padding: 6px 8px;
}
.ma-import-queued-file button:hover,
.ma-import-queued-file button:focus-visible { text-decoration: underline; }
@media (max-width: 560px) {
  .ma-import-queued-file { grid-template-columns: 42px minmax(0,1fr); }
  .ma-import-queued-file button { grid-column: 2; justify-self: start; padding-left: 0; }
}

/* Final workspace-relative desktop type tuning after live 1536px review. */
@media (min-width: 1101px) {
  .ma-mara-hero-v14 h2 {
    font-size: clamp(2.55rem, 3.55vw, 3.85rem);
    line-height: 1.025;
    max-width: 17.5ch;
  }
}

/* Merentra App 1.6.0 — complete member-controlled Professional Record. */
.ma-button--ghost {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  color: var(--ma-ink) !important;
}
.ma-button--ghost:hover:not(:disabled) {
  background: rgba(16,24,32,.055);
  border-color: rgba(16,24,32,.08);
  box-shadow: none;
}
.ma-button--small {
  border-radius: 9px;
  font-size: .72rem;
  min-height: 36px;
  padding: 7px 10px;
}
.ma-icon-button--danger {
  color: var(--ma-danger) !important;
}
.ma-icon-button--danger:hover { background: var(--ma-danger-soft); }

.ma-record-page--v19 {
  gap: 26px;
  min-width: 0;
}
.ma-record-hero-v19 {
  align-items: center;
  background:
    radial-gradient(circle at 88% 12%, rgba(7,148,177,.17), transparent 34%),
    radial-gradient(circle at 2% 100%, rgba(231,105,75,.07), transparent 30%),
    linear-gradient(135deg, #fff 0%, #f2fbfc 100%);
  border: 1px solid rgba(7,148,177,.16);
  border-radius: 28px;
  box-shadow: var(--ma-shadow-sm);
  display: grid;
  gap: clamp(24px,4vw,52px);
  grid-template-columns: minmax(0,1fr) minmax(230px,auto);
  overflow: hidden;
  padding: clamp(28px,4vw,52px);
  position: relative;
}
.ma-record-hero-v19::after {
  border: 1px solid rgba(7,148,177,.15);
  border-radius: 50%;
  content: "";
  height: 180px;
  pointer-events: none;
  position: absolute;
  right: -58px;
  top: -72px;
  width: 180px;
}
.ma-record-hero-v19__copy { max-width: 780px; min-width: 0; position: relative; z-index: 1; }
.ma-record-hero-v19 h2 {
  font-size: clamp(2rem,4vw,3.5rem);
  letter-spacing: -.045em;
  line-height: .98;
  margin: 8px 0 18px;
  max-width: 14ch;
}
.ma-record-hero-v19 p {
  color: var(--ma-ink-3);
  font-size: clamp(.95rem,1.2vw,1.08rem);
  line-height: 1.65;
  margin: 0;
  max-width: 67ch;
}
.ma-record-hero-v19__trust {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 21px;
}
.ma-record-hero-v19__trust span {
  align-items: center;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(7,148,177,.17);
  border-radius: 999px;
  color: var(--ma-teal-dark);
  display: inline-flex;
  font-size: .7rem;
  font-weight: 800;
  gap: 6px;
  min-height: 30px;
  padding: 6px 10px;
}
.ma-record-hero-v19__trust span::before { content: "✓"; }
.ma-record-hero-v19__actions {
  align-items: stretch;
  display: grid;
  gap: 10px;
  min-width: 230px;
  position: relative;
  z-index: 1;
}
.ma-record-hero-v19__actions .ma-button { justify-content: center; min-height: 48px; width: 100%; }

.ma-record-kpi-grid--v19 > article { min-height: 118px; }
.ma-record-kpi-grid--v19 > article:nth-child(1) { border-top: 3px solid var(--ma-teal); }
.ma-record-kpi-grid--v19 > article:nth-child(2) { border-top: 3px solid var(--ma-positive); }
.ma-record-kpi-grid--v19 > article:nth-child(3) { border-top: 3px solid var(--ma-coral); }
.ma-record-kpi-grid--v19 > article:nth-child(4) { border-top: 3px solid var(--ma-ink-3); }

.ma-record-tabs-wrap {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 18px;
  box-shadow: var(--ma-shadow-xs);
  display: flex;
  gap: 20px;
  justify-content: space-between;
  min-width: 0;
  padding: 8px;
}
.ma-record-tabs {
  display: flex;
  gap: 4px;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: thin;
}
.ma-record-tabs button {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 12px;
  color: var(--ma-muted);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: .78rem;
  font-weight: 800;
  gap: 8px;
  min-height: 42px;
  padding: 9px 13px;
  white-space: nowrap;
}
.ma-record-tabs button:hover { background: var(--ma-cream); color: var(--ma-ink); }
.ma-record-tabs button.is-active {
  background: var(--ma-ink);
  box-shadow: 0 7px 18px rgba(16,24,32,.16);
  color: var(--ma-white);
}
.ma-record-tabs button b {
  align-items: center;
  background: rgba(100,114,122,.13);
  border-radius: 999px;
  display: inline-flex;
  font-size: .66rem;
  justify-content: center;
  min-height: 23px;
  min-width: 23px;
  padding: 3px 6px;
}
.ma-record-tabs button.is-active b { background: rgba(255,255,255,.17); }
.ma-record-tab-copy {
  color: var(--ma-muted);
  font-size: .73rem;
  line-height: 1.4;
  margin: 0 12px 0 0;
  max-width: 400px;
  text-align: right;
}
.ma-record-tab-panel { min-width: 0; }

.ma-record-library-v19,
.ma-record-timeline-v19,
.ma-record-intake-v19,
.ma-record-exports-v19 { display: grid; gap: 20px; min-width: 0; }
.ma-record-library-v19__heading { align-items: end; }
.ma-record-library-v19__heading-actions { display: flex; flex-wrap: wrap; gap: 9px; }

.ma-record-filter-bar {
  align-items: end;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 18px;
  box-shadow: var(--ma-shadow-xs);
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(240px,1.6fr) repeat(4,minmax(128px,.7fr)) auto;
  padding: 15px;
}
.ma-record-filter-bar > label {
  display: grid;
  gap: 6px;
  min-width: 0;
}
.ma-record-filter-bar > label > span {
  color: var(--ma-ink-3);
  font-size: .68rem;
  font-weight: 800;
}
.ma-record-filter-bar input,
.ma-record-filter-bar select {
  background: #fbfcfb;
  border: 1px solid var(--ma-line-strong);
  border-radius: 11px;
  color: var(--ma-ink);
  min-height: 43px;
  min-width: 0;
  padding: 9px 11px;
  width: 100%;
}
.ma-record-filter-bar input:focus,
.ma-record-filter-bar select:focus { background: var(--ma-white); border-color: var(--ma-teal); }
.ma-record-filter-bar__actions { display: flex; gap: 6px; }
.ma-record-filter-bar__actions .ma-button { min-height: 43px; padding-left: 13px; padding-right: 13px; }
.ma-record-results-head {
  align-items: center;
  color: var(--ma-muted);
  display: flex;
  font-size: .73rem;
  gap: 18px;
  justify-content: space-between;
  min-height: 24px;
}
.ma-record-results-head p { margin: 0; }
.ma-record-results-head strong { color: var(--ma-ink); }

.ma-record-item-grid--v19 {
  display: grid;
  gap: 15px;
  grid-template-columns: repeat(3,minmax(0,1fr));
}
.ma-record-item-v19 {
  display: flex;
  flex-direction: column;
  gap: 13px;
  min-height: 275px;
  overflow: hidden;
  padding: 18px;
  position: relative;
  transition: border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.ma-record-item-v19:hover {
  border-color: rgba(7,148,177,.35);
  box-shadow: var(--ma-shadow-sm);
  transform: translateY(-2px);
}
.ma-record-item-v19.is-archived { background: #fafafa; opacity: .88; }
.ma-record-item-v19__top {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 28px;
}
.ma-record-category,
.ma-record-status,
.ma-record-expiry {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font-size: .62rem;
  font-weight: 850;
  letter-spacing: .025em;
  line-height: 1.2;
  min-height: 25px;
  padding: 5px 8px;
}
.ma-record-category { background: var(--ma-teal-soft); color: var(--ma-teal-dark); }
.ma-record-status.is-archived { background: #edf0f1; color: var(--ma-ink-3); }
.ma-record-expiry.is-expired { background: var(--ma-danger-soft); color: var(--ma-danger); }
.ma-record-expiry.is-expiring { background: var(--ma-warning-soft); color: var(--ma-warning); }
.ma-record-expiry.is-current { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-record-item-v19__body {
  align-items: flex-start;
  background: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: 42px minmax(0,1fr);
  padding: 0;
  text-align: left;
  width: 100%;
}
.ma-record-item-v19__body:hover h4 { color: var(--ma-teal-dark); }
.ma-record-item-v19__icon {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 12px;
  color: var(--ma-white);
  display: flex;
  font-size: .72rem;
  font-weight: 850;
  height: 42px;
  justify-content: center;
  letter-spacing: .02em;
  width: 42px;
}
.ma-record-item-v19 h4 { font-size: 1rem; line-height: 1.3; margin: 0 0 5px; overflow-wrap: anywhere; }
.ma-record-item-v19__body p { color: var(--ma-ink-3); font-size: .78rem; margin: 0 0 5px; overflow-wrap: anywhere; }
.ma-record-item-v19__body small { color: var(--ma-muted); font-size: .7rem; }
.ma-record-item-v19__description {
  color: var(--ma-muted);
  display: -webkit-box;
  font-size: .75rem;
  line-height: 1.55;
  margin: 0;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.ma-record-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.ma-record-tags span {
  background: #f1f4f4;
  border-radius: 999px;
  color: var(--ma-ink-3);
  font-size: .65rem;
  font-weight: 700;
  padding: 5px 8px;
}
.ma-record-item-v19__footer {
  align-items: center;
  border-top: 1px solid var(--ma-line);
  color: var(--ma-muted);
  display: grid;
  font-size: .67rem;
  gap: 8px;
  grid-template-columns: auto auto minmax(0,1fr);
  margin-top: auto;
  padding-top: 12px;
}
.ma-record-item-v19__footer > div { display: flex; gap: 2px; justify-content: flex-end; }
.ma-record-item-v19__footer b { color: var(--ma-ink); }

.ma-record-empty-v19 {
  align-items: center;
  background:
    linear-gradient(135deg,rgba(7,148,177,.04),rgba(255,255,255,.8)),
    var(--ma-white);
  display: grid;
  gap: 24px;
  grid-template-columns: 96px minmax(0,620px);
  justify-content: center;
  min-height: 300px;
  padding: clamp(28px,5vw,60px);
  text-align: left;
}
.ma-record-empty-v19__mark {
  align-items: center;
  background: var(--ma-ink);
  border: 8px solid var(--ma-teal-soft);
  border-radius: 28px;
  color: var(--ma-white);
  display: flex;
  font-size: 2.2rem;
  font-weight: 850;
  height: 96px;
  justify-content: center;
  width: 96px;
}
.ma-record-empty-v19 h3 { font-size: 1.4rem; margin: 5px 0 9px; }
.ma-record-empty-v19 p { color: var(--ma-muted); line-height: 1.6; margin-bottom: 18px; }
.ma-record-empty-v19 > div > div { display: flex; flex-wrap: wrap; gap: 9px; }

.ma-record-timeline-list { display: grid; gap: 18px; }
.ma-record-timeline-list > section {
  display: grid;
  gap: 14px;
  grid-template-columns: 110px minmax(0,1fr);
}
.ma-record-timeline-year {
  align-content: start;
  display: grid;
  gap: 4px;
  padding: 12px 0;
  position: relative;
  text-align: right;
}
.ma-record-timeline-year strong { font-size: 1.35rem; }
.ma-record-timeline-year span { color: var(--ma-muted); font-size: .7rem; }
.ma-record-timeline-list > section > div:last-child {
  border-left: 2px solid var(--ma-line);
  display: grid;
  gap: 9px;
  padding-left: 22px;
  position: relative;
}
.ma-record-timeline-list button {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  color: var(--ma-ink);
  cursor: pointer;
  display: grid;
  gap: 15px;
  grid-template-columns: 96px minmax(0,1fr) auto;
  min-height: 74px;
  padding: 13px 15px;
  position: relative;
  text-align: left;
  transition: border-color .15s ease,box-shadow .15s ease;
}
.ma-record-timeline-list button::before {
  background: var(--ma-teal);
  border: 4px solid var(--ma-cream);
  border-radius: 50%;
  content: "";
  height: 14px;
  left: -31px;
  position: absolute;
  width: 14px;
}
.ma-record-timeline-list button:hover { border-color: rgba(7,148,177,.38); box-shadow: var(--ma-shadow-sm); }
.ma-record-timeline-list time { color: var(--ma-teal-dark); font-size: .7rem; font-weight: 800; }
.ma-record-timeline-list button span { display: grid; gap: 4px; min-width: 0; }
.ma-record-timeline-list button strong { overflow-wrap: anywhere; }
.ma-record-timeline-list button small { color: var(--ma-muted); font-size: .7rem; overflow-wrap: anywhere; }
.ma-record-timeline-list button > b { color: var(--ma-muted); font-size: .67rem; white-space: nowrap; }

.ma-record-export-grid {
  display: grid;
  gap: 15px;
  grid-template-columns: repeat(4,minmax(0,1fr));
}
.ma-record-export-card {
  display: flex;
  flex-direction: column;
  min-height: 260px;
  padding: 22px;
}
.ma-record-export-card > span { color: var(--ma-teal-dark); font-size: .65rem; font-weight: 850; letter-spacing: .08em; }
.ma-record-export-card h3 { font-size: 1.1rem; margin: 13px 0 10px; }
.ma-record-export-card p { color: var(--ma-muted); font-size: .77rem; line-height: 1.62; }
.ma-record-export-card .ma-button { justify-content: center; margin-top: auto; width: 100%; }
.ma-record-export-card.is-disabled { background: #f7f8f8; }
.ma-record-export-safety {
  align-items: flex-start;
  background: var(--ma-warning-soft);
  border-color: rgba(170,106,24,.22);
  display: grid;
  gap: 16px;
  grid-template-columns: auto minmax(0,1fr);
  padding: 20px;
}
.ma-record-export-safety > span { background: var(--ma-warning); border-radius: 999px; color: white; font-size: .66rem; font-weight: 850; padding: 6px 9px; }
.ma-record-export-safety h3 { font-size: 1rem; margin: 0 0 5px; }
.ma-record-export-safety p { color: #73531f; font-size: .75rem; line-height: 1.55; margin: 0; }

.ma-record-panel-backdrop {
  background: rgba(16,24,32,.52);
  inset: 0;
  position: fixed;
  z-index: 9996;
}
.ma-record-panel {
  background: var(--ma-white);
  bottom: 0;
  box-shadow: -24px 0 80px rgba(16,24,32,.24);
  display: flex;
  flex-direction: column;
  max-width: 720px;
  overflow: hidden;
  position: fixed;
  right: 0;
  top: 0;
  width: min(720px,94vw);
  z-index: 9997;
}
.ma-record-panel > header {
  align-items: flex-start;
  background: var(--ma-white);
  border-bottom: 1px solid var(--ma-line);
  display: flex;
  flex: 0 0 auto;
  gap: 18px;
  justify-content: space-between;
  padding: 23px 26px 18px;
  position: relative;
  z-index: 2;
}
.ma-record-panel > header > div { min-width: 0; }
.ma-record-panel > header h2 { font-size: clamp(1.35rem,3vw,1.72rem); margin: 6px 0 4px; overflow-wrap: anywhere; }
.ma-record-panel > header p { color: var(--ma-muted); font-size: .75rem; line-height: 1.45; margin: 0; }
.ma-record-panel__loading {
  align-items: center;
  color: var(--ma-muted);
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 14px;
  justify-content: center;
  min-height: 300px;
  padding: 30px;
}
.ma-record-panel__loading .ma-spinner { border: 3px solid var(--ma-line); border-radius: 50%; border-top-color: var(--ma-teal); height: 34px; width: 34px; }

.ma-record-editor-form {
  display: grid;
  gap: 20px;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 22px 26px 0;
}
.ma-record-editor-form > label,
.ma-record-editor-form__lead > label,
.ma-record-form-grid > label,
.ma-record-date-fieldset label,
.ma-record-evidence-form > label,
.ma-record-evidence-form .ma-record-form-grid > label {
  display: grid;
  gap: 7px;
  min-width: 0;
}
.ma-record-editor-form label > span,
.ma-record-date-fieldset legend,
.ma-record-evidence-form label > span {
  color: var(--ma-ink-3);
  font-size: .72rem;
  font-weight: 800;
}
.ma-record-editor-form input,
.ma-record-editor-form select,
.ma-record-editor-form textarea,
.ma-record-evidence-form input,
.ma-record-evidence-form select,
.ma-record-evidence-form textarea {
  background: #fbfcfb;
  border: 1px solid var(--ma-line-strong);
  border-radius: 12px;
  color: var(--ma-ink);
  min-height: 46px;
  min-width: 0;
  padding: 10px 12px;
  width: 100%;
}
.ma-record-editor-form textarea { line-height: 1.55; min-height: 128px; resize: vertical; }
.ma-record-editor-form input:focus,
.ma-record-editor-form select:focus,
.ma-record-editor-form textarea:focus,
.ma-record-evidence-form input:focus { background: white; border-color: var(--ma-teal); }
.ma-record-editor-form label small,
.ma-record-evidence-form label small { color: var(--ma-muted); font-size: .67rem; line-height: 1.4; }
.ma-record-editor-form__lead {
  background: var(--ma-teal-pale);
  border: 1px solid rgba(7,148,177,.17);
  border-radius: 17px;
  display: grid;
  gap: 13px;
  padding: 15px;
}
.ma-record-form-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2,minmax(0,1fr));
}
.ma-record-date-fieldset {
  border: 1px solid var(--ma-line);
  border-radius: 17px;
  margin: 0;
  min-width: 0;
  padding: 15px;
}
.ma-record-date-fieldset legend { padding: 0 7px; }
.ma-record-form-grid--dates { grid-template-columns: repeat(3,minmax(0,1fr)); }
.ma-record-editor-form > footer {
  align-items: center;
  background: var(--ma-white);
  border-top: 1px solid var(--ma-line);
  bottom: 0;
  display: flex;
  gap: 9px;
  justify-content: flex-end;
  margin: 2px -26px 0;
  padding: 15px 26px;
  position: sticky;
  z-index: 2;
}

.ma-record-details-v19__actions {
  align-items: center;
  background: #fbfcfb;
  border-bottom: 1px solid var(--ma-line);
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
  padding: 12px 26px;
}
.ma-record-details-v19__scroll {
  display: grid;
  gap: 18px;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 22px 26px 32px;
}
.ma-record-detail-summary,
.ma-record-evidence-v19,
.ma-record-history-v19,
.ma-record-danger-v19 {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 18px;
  padding: 18px;
}
.ma-record-detail-badges { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 15px; }
.ma-record-detail-summary > p { color: var(--ma-ink-3); font-size: .83rem; line-height: 1.65; white-space: pre-line; }
.ma-record-metadata-grid {
  display: grid;
  gap: 0;
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin: 17px 0 0;
}
.ma-record-metadata-grid > div { border-top: 1px solid var(--ma-line); display: grid; gap: 4px; min-width: 0; padding: 11px 8px 9px 0; }
.ma-record-metadata-grid dt { color: var(--ma-muted); font-size: .65rem; font-weight: 750; }
.ma-record-metadata-grid dd { color: var(--ma-ink); font-size: .76rem; margin: 0; overflow-wrap: anywhere; }
.ma-record-metadata-grid a { color: var(--ma-teal-dark); font-weight: 800; }
.ma-record-evidence-v19 .ma-card-head,
.ma-record-history-v19 .ma-card-head { margin-bottom: 14px; }
.ma-record-evidence-list { display: grid; gap: 8px; margin-bottom: 16px; }
.ma-record-evidence-list article {
  align-items: center;
  background: #fbfcfb;
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: grid;
  gap: 11px;
  grid-template-columns: 42px minmax(0,1fr) auto;
  padding: 10px;
}
.ma-record-file-type {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 9px;
  color: white;
  display: flex;
  font-size: .58rem;
  font-weight: 850;
  height: 38px;
  justify-content: center;
  width: 38px;
}
.ma-record-evidence-list article > div:nth-child(2) { display: grid; gap: 3px; min-width: 0; }
.ma-record-evidence-list strong { font-size: .76rem; overflow-wrap: anywhere; }
.ma-record-evidence-list small { color: var(--ma-muted); font-size: .64rem; overflow-wrap: anywhere; }
.ma-record-evidence-list article > div:last-child { align-items: center; display: flex; gap: 3px; }
.ma-record-evidence-form {
  background: var(--ma-teal-pale);
  border: 1px solid rgba(7,148,177,.16);
  border-radius: 15px;
  display: grid;
  gap: 12px;
  padding: 14px;
}
.ma-record-evidence-file input { background: white; padding: 8px; }
.ma-record-evidence-form .ma-check { background: white; margin: 0; }
.ma-record-evidence-form > .ma-button { justify-self: end; }
.ma-record-history-v19 ol { display: grid; gap: 0; list-style: none; margin: 0; padding: 0; }
.ma-record-history-v19 li {
  align-items: center;
  border-top: 1px solid var(--ma-line);
  display: grid;
  gap: 10px;
  grid-template-columns: 30px minmax(0,1fr) auto;
  padding: 10px 0;
}
.ma-record-history-v19 li > span { align-items: center; background: #edf4f5; border-radius: 9px; color: var(--ma-teal-dark); display: flex; font-size: .65rem; font-weight: 850; height: 28px; justify-content: center; width: 28px; }
.ma-record-history-v19 li > div { display: grid; gap: 3px; }
.ma-record-history-v19 li strong { font-size: .74rem; }
.ma-record-history-v19 li small { color: var(--ma-muted); font-size: .64rem; }
.ma-record-history-v19 li > b { color: var(--ma-muted); font-size: .65rem; }
.ma-record-danger-v19 {
  align-items: center;
  background: var(--ma-danger-soft);
  border-color: rgba(186,61,66,.22);
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0,1fr) auto;
}
.ma-record-danger-v19 strong { color: var(--ma-danger); }
.ma-record-danger-v19 p { color: #7d3d40; font-size: .7rem; line-height: 1.5; margin: 4px 0 0; }

@media (max-width: 1280px) {
  .ma-record-filter-bar { grid-template-columns: minmax(220px,1.6fr) repeat(2,minmax(130px,.8fr)); }
  .ma-record-filter-bar__actions { align-self: end; }
  .ma-record-item-grid--v19 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-record-export-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 980px) {
  .ma-record-hero-v19 { align-items: stretch; grid-template-columns: 1fr; }
  .ma-record-hero-v19 h2 { max-width: 17ch; }
  .ma-record-hero-v19__actions { display: flex; flex-wrap: wrap; min-width: 0; }
  .ma-record-hero-v19__actions .ma-button { width: auto; }
  .ma-record-tabs-wrap { align-items: stretch; flex-direction: column; gap: 8px; }
  .ma-record-tab-copy { margin: 0 10px 7px; max-width: none; text-align: left; }
  .ma-record-filter-bar { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-record-search { grid-column: 1 / -1; }
  .ma-record-filter-bar__actions { justify-content: flex-end; }
  .ma-record-timeline-list > section { grid-template-columns: 76px minmax(0,1fr); }
  .ma-record-timeline-list button { grid-template-columns: minmax(76px,auto) minmax(0,1fr); }
  .ma-record-timeline-list button > b { display: none; }
  .ma-record-form-grid--dates { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 700px) {
  .ma-record-page--v19 { gap: 18px; }
  .ma-record-hero-v19 { border-radius: 20px; padding: 23px 19px; }
  .ma-record-hero-v19 h2 { font-size: clamp(1.9rem,10vw,2.65rem); margin-bottom: 14px; }
  .ma-record-hero-v19 p { font-size: .9rem; }
  .ma-record-hero-v19__actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .ma-record-hero-v19__actions .ma-button { min-height: 46px; width: 100%; }
  .ma-record-hero-v19__actions .ma-button:first-child { grid-column: 1 / -1; }
  .ma-record-kpi-grid--v19 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-record-kpi-grid--v19 > article { min-height: 105px; padding: 15px; }
  .ma-record-tabs-wrap { border-radius: 15px; }
  .ma-record-tabs { padding-bottom: 2px; }
  .ma-record-tabs button { min-height: 44px; padding: 9px 12px; }
  .ma-record-library-v19__heading { align-items: stretch; flex-direction: column; }
  .ma-record-library-v19__heading-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .ma-record-library-v19__heading-actions .ma-button { justify-content: center; width: 100%; }
  .ma-record-filter-bar { grid-template-columns: 1fr; padding: 13px; }
  .ma-record-search { grid-column: auto; }
  .ma-record-filter-bar input,
  .ma-record-filter-bar select,
  .ma-record-editor-form input,
  .ma-record-editor-form select,
  .ma-record-editor-form textarea,
  .ma-record-evidence-form input { font-size: 16px; }
  .ma-record-filter-bar__actions { display: grid; grid-template-columns: 1fr 1fr; }
  .ma-record-filter-bar__actions .ma-button { justify-content: center; min-height: 44px; width: 100%; }
  .ma-record-results-head { align-items: flex-start; flex-direction: column; gap: 3px; }
  .ma-record-item-grid--v19 { grid-template-columns: 1fr; }
  .ma-record-item-v19 { min-height: 250px; }
  .ma-record-item-v19__footer { grid-template-columns: auto 1fr; }
  .ma-record-item-v19__footer > span:nth-child(2) { text-align: right; }
  .ma-record-item-v19__footer > div { grid-column: 1 / -1; justify-content: stretch; }
  .ma-record-item-v19__footer .ma-button { flex: 1; justify-content: center; min-height: 40px; }
  .ma-record-empty-v19 { grid-template-columns: 1fr; min-height: 270px; text-align: center; }
  .ma-record-empty-v19__mark { justify-self: center; }
  .ma-record-empty-v19 > div > div { justify-content: center; }
  .ma-record-timeline-list > section { gap: 8px; grid-template-columns: 1fr; }
  .ma-record-timeline-year { align-items: baseline; display: flex; gap: 8px; padding: 4px 2px; text-align: left; }
  .ma-record-timeline-list > section > div:last-child { padding-left: 17px; }
  .ma-record-timeline-list button { gap: 8px; grid-template-columns: 1fr; min-height: 82px; }
  .ma-record-timeline-list button::before { left: -25px; }
  .ma-record-export-grid { grid-template-columns: 1fr; }
  .ma-record-export-card { min-height: 220px; }
  .ma-record-export-safety { grid-template-columns: 1fr; }

  .ma-record-panel { height: var(--ma-visual-viewport-height,100dvh); max-width: none; top: auto; width: 100vw; }
  .ma-record-panel > header { padding: 17px 17px 14px; }
  .ma-record-panel > header h2 { font-size: 1.35rem; }
  .ma-record-editor-form { padding: 17px 17px 0; }
  .ma-record-editor-form__lead,
  .ma-record-date-fieldset { padding: 13px; }
  .ma-record-form-grid,
  .ma-record-form-grid--dates { grid-template-columns: 1fr; }
  .ma-record-editor-form > footer { display: grid; grid-template-columns: 1fr 1fr; margin-left: -17px; margin-right: -17px; padding: 12px 17px max(12px,env(safe-area-inset-bottom)); }
  .ma-record-editor-form > footer .ma-button { justify-content: center; min-height: 46px; width: 100%; }
  .ma-record-details-v19__actions { display: grid; grid-template-columns: 1fr 1fr; padding: 10px 17px; }
  .ma-record-details-v19__actions .ma-button { justify-content: center; min-height: 44px; width: 100%; }
  .ma-record-details-v19__scroll { gap: 13px; padding: 16px 17px max(26px,env(safe-area-inset-bottom)); }
  .ma-record-detail-summary,
  .ma-record-evidence-v19,
  .ma-record-history-v19,
  .ma-record-danger-v19 { border-radius: 15px; padding: 14px; }
  .ma-record-metadata-grid { grid-template-columns: 1fr; }
  .ma-record-evidence-list article { align-items: start; grid-template-columns: 38px minmax(0,1fr); }
  .ma-record-evidence-list article > div:last-child { grid-column: 1 / -1; justify-content: flex-end; }
  .ma-record-evidence-list article > div:last-child .ma-button { min-height: 40px; }
  .ma-record-evidence-form .ma-record-form-grid { grid-template-columns: 1fr; }
  .ma-record-evidence-form > .ma-button { justify-self: stretch; min-height: 46px; width: 100%; }
  .ma-record-danger-v19 { grid-template-columns: 1fr; }
  .ma-record-danger-v19 .ma-button { justify-content: center; width: 100%; }
}

@media (max-width: 420px) {
  .ma-record-hero-v19__actions { grid-template-columns: 1fr; }
  .ma-record-hero-v19__actions .ma-button:first-child { grid-column: auto; }
  .ma-record-kpi-grid--v19 { grid-template-columns: 1fr; }
  .ma-record-library-v19__heading-actions { grid-template-columns: 1fr; }
  .ma-record-details-v19__actions { grid-template-columns: 1fr; }
  .ma-record-editor-form > footer { grid-template-columns: 1fr; }
}

@media (max-height: 540px) and (orientation: landscape) {
  .ma-record-panel { max-width: none; width: min(760px,88vw); }
  .ma-record-panel > header { padding-bottom: 11px; padding-top: 11px; }
  .ma-record-details-v19__scroll,
  .ma-record-editor-form { padding-top: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .ma-record-item-v19 { transition: none; }
  .ma-record-item-v19:hover { transform: none; }
}

/* --------------------------------------------------------------------------
 * Merentra App 1.7.0 — Pass 20 Practice, appraisal and revalidation.
 * Manual-first, whole-scope and reflection-led. Readiness is a planning aid,
 * never a regulator score. Components remain readable on mobile and desktop.
 * -------------------------------------------------------------------------- */
.ma-practice-page--v20 { display: grid; gap: 22px; }
.ma-practice-hero {
  align-items: center;
  background: linear-gradient(135deg,#11232b 0%,#163943 58%,#0a6f82 100%);
  border-radius: var(--ma-radius-xl);
  box-shadow: var(--ma-shadow-md);
  color: var(--ma-white);
  display: grid;
  gap: 34px;
  grid-template-columns: minmax(0,1.45fr) minmax(300px,.72fr);
  overflow: hidden;
  padding: clamp(26px,4vw,48px);
  position: relative;
}
.ma-practice-hero::after {
  background: radial-gradient(circle,rgba(255,255,255,.18) 0 2px,transparent 3px);
  background-size: 18px 18px;
  content: "";
  height: 210px;
  opacity: .22;
  position: absolute;
  right: -34px;
  top: -42px;
  transform: rotate(8deg);
  width: 300px;
}
.ma-practice-hero__copy,
.ma-practice-readiness-summary { position: relative; z-index: 1; }
.ma-practice-hero .ma-eyebrow { color: #8ee7f2; }
.ma-practice-hero h2 { color: var(--ma-white); font-size: clamp(2.2rem,4.5vw,4.4rem); line-height: .98; margin: 10px 0 18px; max-width: 13ch; }
.ma-practice-hero__copy > p { color: #d6ecef; font-size: clamp(.92rem,1.3vw,1.08rem); line-height: 1.66; margin-bottom: 24px; max-width: 780px; }
.ma-practice-hero__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.ma-practice-hero .ma-button--primary { background: var(--ma-white); color: var(--ma-ink) !important; }
.ma-practice-hero .ma-button--primary:hover:not(:disabled) { background: #eefbfc; color: var(--ma-ink) !important; }
.ma-practice-hero .ma-button--secondary { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.34); box-shadow: none; color: var(--ma-white) !important; }
.ma-practice-hero .ma-button--secondary:hover:not(:disabled) { background: rgba(255,255,255,.18); border-color: rgba(255,255,255,.52); }
.ma-practice-readiness-summary {
  align-items: center;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 24px;
  backdrop-filter: blur(12px);
  display: grid;
  gap: 18px;
  grid-template-columns: auto minmax(0,1fr);
  padding: 20px;
}
.ma-practice-readiness-ring {
  align-items: center;
  aspect-ratio: 1;
  background: conic-gradient(#8ee7f2 var(--ma-practice-progress,0deg),rgba(255,255,255,.16) 0);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  height: 112px;
  justify-content: center;
  position: relative;
}
.ma-practice-readiness-ring::after { background: #14323b; border-radius: 50%; content: ""; inset: 9px; position: absolute; }
.ma-practice-readiness-ring span,
.ma-practice-readiness-ring small { color: var(--ma-white); position: relative; z-index: 1; }
.ma-practice-readiness-ring span { font-size: 1.7rem; font-weight: 850; letter-spacing: -.04em; }
.ma-practice-readiness-ring small { color: #bfe9ed; font-size: .61rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.ma-practice-readiness-summary > div:last-child { display: grid; gap: 5px; min-width: 0; }
.ma-practice-readiness-summary strong { color: var(--ma-white); font-size: 1rem; overflow-wrap: anywhere; }
.ma-practice-readiness-summary p { color: #c9e4e8; font-size: .72rem; line-height: 1.5; margin: 0; }
.ma-practice-status { border-radius: 999px; color: #d7f8fb; font-size: .63rem; font-weight: 850; justify-self: start; letter-spacing: .04em; text-transform: uppercase; }

.ma-practice-cycle-bar {
  align-items: end;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 17px;
  box-shadow: var(--ma-shadow-xs);
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding: 13px 15px;
}
.ma-practice-cycle-bar > label { display: grid; flex: 1; gap: 5px; max-width: 600px; }
.ma-practice-cycle-bar label > span { color: var(--ma-muted); font-size: .64rem; font-weight: 800; text-transform: uppercase; }
.ma-practice-cycle-bar select { background: #f9fbfb; border: 1px solid var(--ma-line-strong); border-radius: 11px; color: var(--ma-ink); min-height: 45px; padding: 9px 38px 9px 12px; width: 100%; }
.ma-practice-cycle-bar > div { display: flex; gap: 8px; }

.ma-practice-kpi-grid { display: grid; gap: 12px; grid-template-columns: repeat(4,minmax(0,1fr)); }
.ma-practice-kpi { background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 17px; display: grid; gap: 6px; min-height: 116px; padding: 17px; position: relative; }
.ma-practice-kpi::before { background: var(--ma-teal); border-radius: 0 0 5px 5px; content: ""; height: 4px; left: 18px; position: absolute; right: 18px; top: -1px; }
.ma-practice-kpi.is-pdp::before { background: var(--ma-coral); }
.ma-practice-kpi.is-record::before { background: var(--ma-positive); }
.ma-practice-kpi.is-attention::before { background: var(--ma-warning); }
.ma-practice-kpi span { color: var(--ma-muted); font-size: .66rem; font-weight: 800; text-transform: uppercase; }
.ma-practice-kpi strong { color: var(--ma-ink); font-size: 1.58rem; letter-spacing: -.04em; }
.ma-practice-kpi small { color: var(--ma-muted); font-size: .7rem; line-height: 1.45; }

.ma-practice-tabs-wrap { align-items: center; background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 17px; display: flex; gap: 18px; justify-content: space-between; padding: 7px; }
.ma-practice-tabs { display: flex; gap: 4px; min-width: 0; overflow-x: auto; scrollbar-width: none; }
.ma-practice-tabs::-webkit-scrollbar { display: none; }
.ma-practice-tabs button { align-items: center; background: transparent; border: 0; border-radius: 11px; color: var(--ma-muted); cursor: pointer; display: inline-flex; flex: 0 0 auto; font-size: .72rem; font-weight: 800; gap: 7px; min-height: 43px; padding: 9px 13px; }
.ma-practice-tabs button:hover { background: #f3f7f7; color: var(--ma-ink); }
.ma-practice-tabs button.is-active { background: var(--ma-ink); color: var(--ma-white); }
.ma-practice-tabs button b { align-items: center; background: rgba(7,148,177,.15); border-radius: 999px; display: inline-flex; font-size: .59rem; height: 21px; justify-content: center; min-width: 21px; padding: 0 6px; }
.ma-practice-tabs button.is-active b { background: rgba(255,255,255,.18); }
.ma-practice-tabs-wrap > p { color: var(--ma-muted); font-size: .64rem; line-height: 1.4; margin: 0 10px 0 0; max-width: 460px; text-align: right; }

.ma-practice-empty { align-items: center; background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 24px; display: grid; gap: 28px; grid-template-columns: auto minmax(0,1fr); min-height: 310px; padding: clamp(24px,5vw,54px); }
.ma-practice-empty__mark { align-items: center; background: var(--ma-teal-soft); border: 1px solid rgba(7,148,177,.2); border-radius: 30px; color: var(--ma-teal-dark); display: flex; font-size: clamp(2rem,4vw,3rem); font-weight: 900; height: 130px; justify-content: center; letter-spacing: -.08em; width: 130px; }
.ma-practice-empty h3 { font-size: clamp(1.5rem,3vw,2.25rem); margin: 7px 0 12px; }
.ma-practice-empty p { color: var(--ma-muted); line-height: 1.65; max-width: 700px; }
.ma-practice-empty > div:last-child > div { display: flex; flex-wrap: wrap; gap: 9px; }

.ma-practice-overview-grid { display: grid; gap: 16px; grid-template-columns: repeat(12,minmax(0,1fr)); }
.ma-practice-overview-grid > .ma-card { min-width: 0; }
.ma-practice-next-actions { grid-column: span 7; }
.ma-practice-scope-card { grid-column: span 5; }
.ma-practice-domains { grid-column: 1 / -1; }
.ma-practice-recent { grid-column: span 7; }
.ma-practice-pdp-summary { grid-column: span 5; }
.ma-practice-next-actions ol { display: grid; gap: 0; list-style: none; margin: 12px 0 0; padding: 0; }
.ma-practice-next-actions li { align-items: flex-start; border-top: 1px solid var(--ma-line); display: grid; gap: 12px; grid-template-columns: 30px minmax(0,1fr); padding: 13px 0; }
.ma-practice-next-actions li > span { align-items: center; background: var(--ma-warning-soft); border-radius: 9px; color: var(--ma-warning); display: flex; font-size: .68rem; font-weight: 850; height: 29px; justify-content: center; width: 29px; }
.ma-practice-next-actions li strong { font-size: .78rem; }
.ma-practice-next-actions li p { color: var(--ma-muted); font-size: .68rem; line-height: 1.5; margin: 4px 0 0; }
.ma-practice-ready-state { align-items: center; background: var(--ma-positive-soft); border-radius: 15px; display: grid; gap: 13px; grid-template-columns: auto minmax(0,1fr); margin-top: 15px; padding: 16px; }
.ma-practice-ready-state > span { align-items: center; background: var(--ma-positive); border-radius: 50%; color: white; display: flex; height: 36px; justify-content: center; width: 36px; }
.ma-practice-ready-state strong { color: #10634f; }
.ma-practice-ready-state p { color: #346c60; font-size: .7rem; line-height: 1.5; margin: 4px 0 0; }
.ma-practice-scope-summary { display: grid; gap: 8px; margin: 14px 0; }
.ma-practice-scope-summary > div { background: #f7faf9; border: 1px solid var(--ma-line); border-radius: 12px; display: grid; gap: 3px; padding: 11px 12px; }
.ma-practice-scope-summary span { font-size: .74rem; font-weight: 800; }
.ma-practice-scope-summary small { color: var(--ma-muted); font-size: .65rem; }
.ma-practice-scope-footer { align-items: center; border-top: 1px solid var(--ma-line); display: flex; gap: 8px; justify-content: space-between; padding-top: 12px; }
.ma-practice-scope-footer span { border-radius: 999px; font-size: .62rem; font-weight: 800; padding: 6px 9px; }
.ma-practice-scope-footer span.is-ready { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-practice-scope-footer span.is-attention { background: var(--ma-warning-soft); color: var(--ma-warning); }
.ma-practice-scope-footer small { color: var(--ma-muted); font-size: .61rem; text-align: right; }
.ma-practice-domain-grid { display: grid; gap: 11px; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 15px; }
.ma-practice-domain { background: #fbfcfb; border: 1px solid var(--ma-line); border-radius: 15px; display: flex; flex-direction: column; min-height: 230px; padding: 15px; }
.ma-practice-domain.is-ready { background: linear-gradient(180deg,var(--ma-positive-soft),#fbfefd 44%); border-color: rgba(22,133,107,.23); }
.ma-practice-domain.is-needs_reflection { background: linear-gradient(180deg,var(--ma-warning-soft),#fffdfa 44%); border-color: rgba(170,106,24,.25); }
.ma-practice-domain > div:first-child { align-items: center; display: flex; justify-content: space-between; }
.ma-practice-domain > div:first-child span { align-items: center; background: var(--ma-ink); border-radius: 10px; color: white; display: flex; font-size: .62rem; font-weight: 850; height: 36px; justify-content: center; min-width: 36px; padding: 0 7px; }
.ma-practice-domain > div:first-child b { border-radius: 999px; color: var(--ma-muted); font-size: .59rem; padding: 5px 7px; }
.ma-practice-domain.is-ready > div:first-child b { background: rgba(22,133,107,.12); color: var(--ma-positive); }
.ma-practice-domain.is-needs_reflection > div:first-child b { background: rgba(170,106,24,.12); color: var(--ma-warning); }
.ma-practice-domain h4 { font-size: .9rem; margin: 15px 0 7px; }
.ma-practice-domain p { color: var(--ma-muted); flex: 1; font-size: .68rem; line-height: 1.52; }
.ma-practice-domain footer { align-items: center; border-top: 1px solid var(--ma-line); display: flex; gap: 8px; justify-content: space-between; padding-top: 11px; }
.ma-practice-domain footer small { color: var(--ma-muted); font-size: .58rem; }
.ma-practice-domain footer button { background: transparent; border: 0; color: var(--ma-teal-dark); cursor: pointer; font-size: .64rem; font-weight: 850; min-height: 38px; padding: 4px; }
.ma-practice-recent-list,
.ma-practice-pdp-mini { display: grid; gap: 7px; margin-top: 12px; }
.ma-practice-recent-list > button { align-items: center; background: #fbfcfb; border: 1px solid var(--ma-line); border-radius: 12px; color: var(--ma-ink); cursor: pointer; display: grid; gap: 10px; grid-template-columns: 38px minmax(0,1fr) auto; min-height: 58px; padding: 9px; text-align: left; }
.ma-practice-recent-list > button:hover { border-color: rgba(7,148,177,.42); }
.ma-practice-type-mark { align-items: center; background: var(--ma-ink); border-radius: 9px; color: white; display: flex; font-size: .58rem; font-weight: 850; height: 36px; justify-content: center; min-width: 36px; padding: 0 5px; }
.ma-practice-type-mark.is-quality_improvement { background: var(--ma-positive); }
.ma-practice-type-mark.is-significant_event,
.ma-practice-type-mark.is-complaint_compliment { background: var(--ma-coral-dark); }
.ma-practice-type-mark.is-patient_feedback,
.ma-practice-type-mark.is-colleague_feedback { background: var(--ma-teal-dark); }
.ma-practice-recent-list button > span:nth-child(2) { display: grid; gap: 3px; min-width: 0; }
.ma-practice-recent-list strong { font-size: .73rem; overflow-wrap: anywhere; }
.ma-practice-recent-list small { color: var(--ma-muted); font-size: .62rem; }
.ma-practice-recent-list button > b { border-radius: 999px; font-size: .59rem; padding: 5px 7px; }
.ma-practice-recent-list button > b.is-ready { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-practice-recent-list button > b.is-attention { background: var(--ma-warning-soft); color: var(--ma-warning); }
.ma-practice-pdp-mini > button { background: #fbfcfb; border: 1px solid var(--ma-line); border-radius: 12px; color: var(--ma-ink); cursor: pointer; display: grid; gap: 5px; min-height: 74px; padding: 11px; text-align: left; }
.ma-practice-pdp-mini > button:hover { border-color: rgba(231,105,75,.42); }
.ma-practice-goal-status { color: var(--ma-muted); font-size: .58rem; font-weight: 850; text-transform: uppercase; }
.ma-practice-goal-status.is-in_progress { color: var(--ma-teal-dark); }
.ma-practice-goal-status.is-completed { color: var(--ma-positive); }
.ma-practice-pdp-mini strong { font-size: .75rem; }
.ma-practice-pdp-mini small { color: var(--ma-muted); font-size: .62rem; }

.ma-practice-section-heading { align-items: end; display: flex; gap: 18px; justify-content: space-between; }
.ma-practice-section-heading h3 { font-size: clamp(1.45rem,2.7vw,2.2rem); margin: 7px 0 8px; }
.ma-practice-section-heading p { color: var(--ma-muted); line-height: 1.6; margin: 0; max-width: 850px; }
.ma-practice-library,
.ma-practice-pdp-page,
.ma-practice-exports,
.ma-practice-mara-page { display: grid; gap: 18px; }
.ma-practice-filter-bar { align-items: end; background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 16px; display: grid; gap: 11px; grid-template-columns: minmax(260px,1.55fr) minmax(180px,.8fr) minmax(160px,.7fr) auto; padding: 14px; }
.ma-practice-filter-bar label { display: grid; gap: 5px; }
.ma-practice-filter-bar label > span { color: var(--ma-muted); font-size: .62rem; font-weight: 800; text-transform: uppercase; }
.ma-practice-filter-bar input,
.ma-practice-filter-bar select { background: #f9fbfb; border: 1px solid var(--ma-line-strong); border-radius: 11px; color: var(--ma-ink); min-height: 44px; min-width: 0; padding: 9px 11px; width: 100%; }
.ma-practice-filter-bar > div { align-items: center; display: flex; gap: 8px; }
.ma-practice-results-head { align-items: center; display: flex; gap: 10px; justify-content: space-between; padding: 0 3px; }
.ma-practice-results-head strong { font-size: .8rem; }
.ma-practice-results-head span { color: var(--ma-muted); font-size: .68rem; }
.ma-practice-entry-grid { display: grid; gap: 13px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.ma-practice-entry-card { background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 17px; box-shadow: var(--ma-shadow-xs); display: flex; flex-direction: column; min-height: 315px; overflow: hidden; }
.ma-practice-entry-card:hover { border-color: rgba(7,148,177,.32); box-shadow: var(--ma-shadow-sm); }
.ma-practice-entry-card > header { align-items: start; border-bottom: 1px solid var(--ma-line); display: grid; gap: 10px; grid-template-columns: 38px minmax(0,1fr) auto; padding: 14px; }
.ma-practice-entry-card > header > div { display: grid; gap: 4px; min-width: 0; }
.ma-practice-entry-card > header > div > span { color: var(--ma-muted); font-size: .58rem; font-weight: 800; text-transform: uppercase; }
.ma-practice-entry-card h4 { font-size: .84rem; margin: 0; overflow-wrap: anywhere; }
.ma-practice-entry-status { background: #f0f4f4; border-radius: 999px; color: var(--ma-muted); font-size: .56rem; padding: 5px 7px; }
.ma-practice-entry-card.is-ready .ma-practice-entry-status { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-practice-entry-card.is-discussed .ma-practice-entry-status { background: var(--ma-teal-soft); color: var(--ma-teal-dark); }
.ma-practice-entry-card.is-archived { opacity: .72; }
.ma-practice-entry-card__body { flex: 1; padding: 15px; }
.ma-practice-entry-card__body p { color: var(--ma-muted); display: -webkit-box; font-size: .71rem; line-height: 1.58; margin: 0; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 5; }
.ma-practice-entry-card__body .ma-practice-entry-org { color: var(--ma-ink-3); font-size: .65rem; font-weight: 800; margin: 0 0 8px; }
.ma-practice-entry-metrics { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 15px 13px; }
.ma-practice-entry-metrics span { background: #f4f7f7; border-radius: 999px; color: var(--ma-muted); font-size: .58rem; padding: 5px 7px; }
.ma-practice-entry-metrics span.is-ready { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-practice-entry-metrics span.is-attention { background: var(--ma-warning-soft); color: var(--ma-warning); }
.ma-practice-entry-card > footer { align-items: center; background: #fbfcfb; border-top: 1px solid var(--ma-line); display: flex; gap: 8px; justify-content: space-between; padding: 11px 14px; }
.ma-practice-entry-card > footer small { color: var(--ma-muted); font-size: .58rem; }
.ma-practice-entry-card > footer .ma-button { min-height: 39px; padding: 8px 11px; }
.ma-practice-empty-list { align-items: center; background: var(--ma-white); border: 1px dashed var(--ma-line-strong); border-radius: 18px; display: grid; gap: 18px; grid-template-columns: auto minmax(0,1fr); min-height: 220px; padding: 30px; }
.ma-practice-empty-list > span { align-items: center; background: #f1f5f5; border-radius: 50%; color: var(--ma-muted); display: flex; font-size: 1.4rem; font-weight: 850; height: 74px; justify-content: center; width: 74px; }
.ma-practice-empty-list p { color: var(--ma-muted); margin: 6px 0 14px; }

.ma-practice-pdp-board { align-items: start; display: grid; gap: 12px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.ma-practice-pdp-column { background: #f1f5f4; border: 1px solid var(--ma-line); border-radius: 17px; min-width: 0; padding: 10px; }
.ma-practice-pdp-column.is-completed { background: var(--ma-positive-soft); }
.ma-practice-pdp-column.is-carried_forward { background: var(--ma-warning-soft); }
.ma-practice-pdp-column.is-archived { background: #f4f4f4; }
.ma-practice-pdp-column > header { align-items: center; display: flex; justify-content: space-between; padding: 4px 3px 11px; }
.ma-practice-pdp-column > header strong { font-size: .7rem; text-transform: uppercase; }
.ma-practice-pdp-column > header span { align-items: center; background: rgba(255,255,255,.72); border-radius: 999px; display: flex; font-size: .6rem; height: 23px; justify-content: center; min-width: 23px; }
.ma-practice-pdp-column > div { display: grid; gap: 8px; }
.ma-practice-goal-card { background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 13px; color: var(--ma-ink); cursor: pointer; display: grid; gap: 8px; min-height: 170px; padding: 13px; text-align: left; width: 100%; }
.ma-practice-goal-card:hover { border-color: rgba(7,148,177,.42); box-shadow: var(--ma-shadow-sm); }
.ma-practice-goal-card > span { color: var(--ma-teal-dark); font-size: .58rem; font-weight: 800; text-transform: uppercase; }
.ma-practice-goal-card > strong { font-size: .78rem; line-height: 1.35; overflow-wrap: anywhere; }
.ma-practice-goal-card > p { color: var(--ma-muted); display: -webkit-box; font-size: .67rem; line-height: 1.5; margin: 0; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.ma-practice-goal-card footer { align-items: center; border-top: 1px solid var(--ma-line); display: flex; gap: 8px; justify-content: space-between; margin-top: auto; padding-top: 9px; }
.ma-practice-goal-card footer small { color: var(--ma-muted); font-size: .57rem; }
.ma-practice-goal-card footer b { color: var(--ma-teal-dark); font-size: .62rem; }
.ma-practice-column-empty { color: var(--ma-muted); font-size: .66rem; margin: 0; padding: 18px 8px; text-align: center; }

.ma-practice-export-grid { display: grid; gap: 13px; grid-template-columns: repeat(4,minmax(0,1fr)); }
.ma-practice-export-card { background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 18px; display: flex; flex-direction: column; min-height: 285px; padding: 18px; }
.ma-practice-export-card > span { align-items: center; background: var(--ma-ink); border-radius: 11px; color: white; display: flex; font-size: .64rem; font-weight: 850; height: 42px; justify-content: center; width: 48px; }
.ma-practice-export-card > div { display: grid; gap: 7px; margin: 18px 0; }
.ma-practice-export-card small { color: var(--ma-teal-dark); font-size: .61rem; font-weight: 800; text-transform: uppercase; }
.ma-practice-export-card h4 { font-size: 1rem; margin: 0; }
.ma-practice-export-card p { color: var(--ma-muted); font-size: .72rem; line-height: 1.58; }
.ma-practice-export-card .ma-button { margin-top: auto; width: 100%; }
.ma-practice-export-card.is-disabled { background: #f6f8f8; }
.ma-practice-export-card.is-disabled > span { background: #9da8ad; }
.ma-practice-export-boundary { align-items: start; background: var(--ma-warning-soft); border: 1px solid rgba(170,106,24,.22); border-radius: 17px; display: grid; gap: 14px; grid-template-columns: auto minmax(0,1fr); padding: 17px; }
.ma-practice-export-boundary > span { align-items: center; background: var(--ma-warning); border-radius: 50%; color: white; display: flex; font-weight: 850; height: 30px; justify-content: center; width: 30px; }
.ma-practice-export-boundary strong { color: #755018; }
.ma-practice-export-boundary p { color: #745b30; font-size: .7rem; line-height: 1.55; margin: 4px 0 0; }

.ma-practice-mara-layout { display: grid; gap: 15px; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); }
.ma-practice-mara-composer,
.ma-practice-mara-result { min-height: 480px; }
.ma-practice-mara-modes { background: #eef4f4; border-radius: 13px; display: grid; gap: 4px; grid-template-columns: repeat(3,minmax(0,1fr)); margin-bottom: 18px; padding: 4px; }
.ma-practice-mara-modes button { background: transparent; border: 0; border-radius: 9px; color: var(--ma-muted); cursor: pointer; font-size: .67rem; font-weight: 800; min-height: 42px; padding: 8px; }
.ma-practice-mara-modes button.is-active { background: var(--ma-white); box-shadow: var(--ma-shadow-xs); color: var(--ma-ink); }
.ma-practice-mara-composer .ma-form { display: grid; gap: 14px; }
.ma-practice-mara-composer label { display: grid; gap: 6px; }
.ma-practice-mara-composer label > span { color: var(--ma-ink-3); font-size: .68rem; font-weight: 800; }
.ma-practice-mara-composer input,
.ma-practice-mara-composer select,
.ma-practice-mara-composer textarea { background: #fbfcfb; border: 1px solid var(--ma-line-strong); border-radius: 11px; color: var(--ma-ink); min-height: 45px; padding: 10px 11px; resize: vertical; width: 100%; }
.ma-practice-mara-readiness-context { background: var(--ma-teal-pale); border: 1px solid rgba(7,148,177,.18); border-radius: 14px; padding: 14px; }
.ma-practice-mara-readiness-context p { color: var(--ma-teal-dark); font-size: .7rem; line-height: 1.55; margin: 5px 0 0; }
.ma-practice-mara-result { display: flex; flex-direction: column; }
.ma-practice-mara-result h3 { font-size: 1.35rem; margin: 8px 0 15px; }
.ma-practice-mara-result h4 { font-size: .78rem; margin: 18px 0 7px; }
.ma-practice-draft-text { background: #f8fbfb; border: 1px solid var(--ma-line); border-radius: 14px; color: var(--ma-ink-3); font-size: .75rem; line-height: 1.7; padding: 15px; }
.ma-practice-mara-result ul { color: var(--ma-ink-3); font-size: .7rem; line-height: 1.55; margin: 0; padding-left: 20px; }
.ma-practice-draft-cautions { background: var(--ma-warning-soft); border-radius: 13px; margin-top: 15px; padding: 13px; }
.ma-practice-draft-cautions strong { color: var(--ma-warning); font-size: .7rem; }
.ma-practice-mara-result .ma-form-actions { margin-top: auto; padding-top: 20px; }
.ma-practice-mara-placeholder { align-items: center; display: flex; flex: 1; flex-direction: column; justify-content: center; padding: 35px; text-align: center; }
.ma-practice-mara-placeholder > span { align-items: center; background: var(--ma-teal-soft); border-radius: 50%; color: var(--ma-teal-dark); display: flex; font-size: 1.3rem; height: 64px; justify-content: center; margin-bottom: 15px; width: 64px; }
.ma-practice-mara-placeholder strong { font-size: 1rem; }
.ma-practice-mara-placeholder p { color: var(--ma-muted); font-size: .72rem; line-height: 1.6; margin: 7px 0 0; max-width: 420px; }

.ma-practice-panel-backdrop { background: rgba(16,24,32,.56); inset: 0; position: fixed; z-index: 9996; }
.ma-practice-panel { background: var(--ma-white); bottom: 0; box-shadow: -24px 0 80px rgba(16,24,32,.26); display: flex; flex-direction: column; max-width: 780px; overflow: hidden; position: fixed; right: 0; top: 0; width: min(780px,95vw); z-index: 9997; }
.ma-practice-panel > header { align-items: flex-start; background: var(--ma-white); border-bottom: 1px solid var(--ma-line); display: flex; flex: 0 0 auto; gap: 18px; justify-content: space-between; padding: 22px 25px 17px; }
.ma-practice-panel > header > div { min-width: 0; }
.ma-practice-panel > header h2 { font-size: clamp(1.35rem,3vw,1.78rem); margin: 6px 0 0; overflow-wrap: anywhere; }
.ma-practice-panel-loading { align-items: center; color: var(--ma-muted); display: flex; flex: 1; justify-content: center; min-height: 260px; padding: 30px; }
.ma-practice-editor-form { display: flex; flex: 1; flex-direction: column; min-height: 0; overflow: hidden; }
.ma-practice-editor-scroll { display: grid; flex: 1; gap: 15px; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 20px 25px 28px; }
.ma-practice-editor-form > footer { align-items: center; background: rgba(255,255,255,.97); border-top: 1px solid var(--ma-line); display: flex; flex: 0 0 auto; gap: 9px; justify-content: flex-end; padding: 12px 25px max(12px,env(safe-area-inset-bottom)); }
.ma-practice-form-section { background: var(--ma-white); border: 1px solid var(--ma-line); border-radius: 17px; display: grid; gap: 15px; padding: 17px; }
.ma-practice-form-section.is-muted { background: #f7f9f9; }
.ma-practice-form-section > div:first-child { align-items: start; display: grid; gap: 11px; grid-template-columns: 28px minmax(0,1fr); }
.ma-practice-form-section > div:first-child > span { align-items: center; background: var(--ma-ink); border-radius: 9px; color: white; display: flex; font-size: .63rem; font-weight: 850; height: 28px; justify-content: center; width: 28px; }
.ma-practice-form-section > div:first-child h3 { font-size: .95rem; margin: 0 0 4px; }
.ma-practice-form-section > div:first-child p { color: var(--ma-muted); font-size: .68rem; line-height: 1.5; margin: 0; }
.ma-practice-form-section > label,
.ma-practice-form-grid > label,
.ma-practice-scope-row > label,
.ma-practice-link-form > label { display: grid; gap: 6px; min-width: 0; }
.ma-practice-form-section label > span,
.ma-practice-form-grid label > span,
.ma-practice-scope-row label > span,
.ma-practice-link-form label > span { color: var(--ma-ink-3); font-size: .68rem; font-weight: 800; }
.ma-practice-form-section input,
.ma-practice-form-section select,
.ma-practice-form-section textarea,
.ma-practice-link-form input,
.ma-practice-link-form select { background: #fbfcfb; border: 1px solid var(--ma-line-strong); border-radius: 11px; color: var(--ma-ink); min-height: 45px; min-width: 0; padding: 10px 11px; resize: vertical; width: 100%; }
.ma-practice-form-section textarea { line-height: 1.55; }
.ma-practice-form-grid { display: grid; gap: 12px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.ma-practice-field-wide { grid-column: 1 / -1; }
.ma-practice-scope-list { display: grid; gap: 9px; }
.ma-practice-scope-row { align-items: end; background: #f8fbfb; border: 1px solid var(--ma-line); border-radius: 13px; display: grid; gap: 9px; grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto; padding: 11px; }
.ma-practice-declarations { display: grid; gap: 8px; }
.ma-practice-declarations > label { align-items: start; background: #f9fbfb; border: 1px solid var(--ma-line); border-radius: 12px; cursor: pointer; display: grid; gap: 10px; grid-template-columns: auto minmax(0,1fr); padding: 11px; }
.ma-practice-declarations input { height: 19px; margin: 1px 0 0; min-height: 0; width: 19px; }
.ma-practice-declarations label > span { display: grid; gap: 3px; }
.ma-practice-declarations strong { font-size: .7rem; }
.ma-practice-declarations small { color: var(--ma-muted); font-size: .63rem; line-height: 1.45; }
.ma-practice-reflection-section { background: linear-gradient(180deg,var(--ma-teal-pale),#fff 180px); border-color: rgba(7,148,177,.22); }
.ma-practice-reflection-status { align-items: start; border-radius: 13px; display: grid; gap: 10px; grid-template-columns: auto minmax(0,1fr); padding: 12px; }
.ma-practice-reflection-status.is-ready { background: var(--ma-positive-soft); }
.ma-practice-reflection-status.is-attention { background: var(--ma-warning-soft); }
.ma-practice-reflection-status > span { align-items: center; border-radius: 50%; color: white; display: flex; font-weight: 850; height: 28px; justify-content: center; width: 28px; }
.ma-practice-reflection-status.is-ready > span { background: var(--ma-positive); }
.ma-practice-reflection-status.is-attention > span { background: var(--ma-warning); }
.ma-practice-reflection-status strong { font-size: .7rem; }
.ma-practice-reflection-status p { color: var(--ma-muted); font-size: .63rem; line-height: 1.45; margin: 3px 0 0; }
.ma-practice-early-check { align-items: center; align-self: end; background: #f8fbfb; border: 1px solid var(--ma-line); border-radius: 11px; display: flex !important; gap: 8px !important; min-height: 45px; padding: 9px 11px; }
.ma-practice-early-check input { flex: 0 0 auto; height: 18px; min-height: 0; width: 18px; }
.ma-practice-early-check span { font-size: .63rem !important; }
.ma-practice-link-list { display: grid; gap: 7px; }
.ma-practice-link-list article { align-items: center; background: #f8fbfb; border: 1px solid var(--ma-line); border-radius: 12px; display: grid; gap: 10px; grid-template-columns: auto minmax(0,1fr) auto; padding: 10px; }
.ma-practice-link-list article > span { background: var(--ma-teal-soft); border-radius: 999px; color: var(--ma-teal-dark); font-size: .56rem; font-weight: 850; padding: 5px 7px; }
.ma-practice-link-list article > div { display: grid; gap: 3px; min-width: 0; }
.ma-practice-link-list strong { font-size: .7rem; overflow-wrap: anywhere; }
.ma-practice-link-list small { color: var(--ma-muted); font-size: .61rem; }
.ma-practice-link-form { align-items: end; background: var(--ma-teal-pale); border: 1px solid rgba(7,148,177,.18); border-radius: 13px; display: grid; gap: 9px; grid-template-columns: minmax(0,1.4fr) minmax(150px,.7fr) auto; padding: 12px; }
.ma-practice-link-form .ma-form-message { grid-column: 1 / -1; }
.ma-practice-no-links { color: var(--ma-muted); font-size: .67rem; margin: 0; }
.ma-practice-record-cta { align-items: center; background: #f7f9f9; border-radius: 12px; display: flex; gap: 10px; justify-content: space-between; padding: 11px; }
.ma-practice-record-cta span { color: var(--ma-muted); font-size: .65rem; }
.ma-practice-revisions ol { display: grid; gap: 0; list-style: none; margin: 0; padding: 0; }
.ma-practice-revisions li { align-items: center; border-top: 1px solid var(--ma-line); display: grid; gap: 10px; grid-template-columns: 28px minmax(0,1fr); padding: 9px 0; }
.ma-practice-revisions li > span { align-items: center; background: #edf4f5; border-radius: 8px; color: var(--ma-teal-dark); display: flex; font-size: .6rem; font-weight: 850; height: 27px; justify-content: center; width: 27px; }
.ma-practice-revisions li > div { display: grid; gap: 2px; }
.ma-practice-revisions strong { font-size: .67rem; }
.ma-practice-revisions small { color: var(--ma-muted); font-size: .59rem; }
.ma-practice-danger-zone { align-items: center; background: var(--ma-danger-soft); border: 1px solid rgba(186,61,66,.22); border-radius: 15px; display: grid; gap: 15px; grid-template-columns: minmax(0,1fr) auto; padding: 15px; }
.ma-practice-danger-zone strong { color: var(--ma-danger); font-size: .73rem; }
.ma-practice-danger-zone p { color: #794347; font-size: .64rem; line-height: 1.48; margin: 4px 0 0; }

@media (max-width: 1280px) {
  .ma-practice-entry-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-practice-export-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-practice-pdp-board { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-practice-filter-bar { grid-template-columns: minmax(240px,1.4fr) repeat(2,minmax(150px,.8fr)); }
  .ma-practice-filter-bar > div { grid-column: 1 / -1; justify-content: flex-end; }
}
@media (max-width: 1040px) {
  .ma-practice-hero { grid-template-columns: 1fr; }
  .ma-practice-readiness-summary { max-width: 620px; }
  .ma-practice-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-practice-next-actions,
  .ma-practice-scope-card,
  .ma-practice-recent,
  .ma-practice-pdp-summary { grid-column: 1 / -1; }
  .ma-practice-domain-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-practice-tabs-wrap { align-items: stretch; flex-direction: column; gap: 4px; }
  .ma-practice-tabs-wrap > p { margin: 0 9px 7px; max-width: none; text-align: left; }
  .ma-practice-mara-layout { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .ma-practice-page--v20 { gap: 16px; }
  .ma-practice-hero { border-radius: 21px; gap: 23px; padding: 24px 19px; }
  .ma-practice-hero h2 { font-size: clamp(2rem,11vw,3rem); max-width: 14ch; }
  .ma-practice-hero__actions { display: grid; grid-template-columns: 1fr 1fr; }
  .ma-practice-hero__actions .ma-button { min-height: 46px; width: 100%; }
  .ma-practice-hero__actions .ma-button:first-child { grid-column: 1 / -1; }
  .ma-practice-readiness-summary { align-items: center; grid-template-columns: 92px minmax(0,1fr); padding: 15px; }
  .ma-practice-readiness-ring { height: 92px; }
  .ma-practice-readiness-ring span { font-size: 1.4rem; }
  .ma-practice-cycle-bar { align-items: stretch; flex-direction: column; }
  .ma-practice-cycle-bar > label { max-width: none; }
  .ma-practice-cycle-bar > div { display: grid; grid-template-columns: 1fr 1fr; }
  .ma-practice-cycle-bar .ma-button { min-height: 44px; width: 100%; }
  .ma-practice-kpi-grid { gap: 9px; }
  .ma-practice-kpi { min-height: 108px; padding: 14px; }
  .ma-practice-tabs-wrap { border-radius: 14px; }
  .ma-practice-tabs button { min-height: 44px; padding: 9px 11px; }
  .ma-practice-empty { grid-template-columns: 1fr; min-height: 300px; text-align: center; }
  .ma-practice-empty__mark { height: 96px; justify-self: center; width: 96px; }
  .ma-practice-empty > div:last-child > div { justify-content: center; }
  .ma-practice-domain-grid { grid-template-columns: 1fr; }
  .ma-practice-domain { min-height: 210px; }
  .ma-practice-section-heading { align-items: stretch; flex-direction: column; }
  .ma-practice-section-heading .ma-button { width: 100%; }
  .ma-practice-filter-bar { grid-template-columns: 1fr; }
  .ma-practice-filter-bar > div { display: grid; grid-column: auto; grid-template-columns: 1fr 1fr; }
  .ma-practice-filter-bar .ma-button { min-height: 44px; width: 100%; }
  .ma-practice-filter-bar input,
  .ma-practice-filter-bar select,
  .ma-practice-mara-composer input,
  .ma-practice-mara-composer select,
  .ma-practice-mara-composer textarea,
  .ma-practice-form-section input,
  .ma-practice-form-section select,
  .ma-practice-form-section textarea,
  .ma-practice-link-form input,
  .ma-practice-link-form select { font-size: 16px; }
  .ma-practice-results-head { align-items: start; flex-direction: column; gap: 4px; }
  .ma-practice-entry-grid,
  .ma-practice-pdp-board,
  .ma-practice-export-grid { grid-template-columns: 1fr; }
  .ma-practice-entry-card { min-height: 285px; }
  .ma-practice-entry-card > header { grid-template-columns: 38px minmax(0,1fr); }
  .ma-practice-entry-status { grid-column: 2; justify-self: start; }
  .ma-practice-entry-card > footer { align-items: stretch; flex-direction: column; }
  .ma-practice-entry-card > footer .ma-button { width: 100%; }
  .ma-practice-mara-modes { grid-template-columns: 1fr; }
  .ma-practice-mara-composer,
  .ma-practice-mara-result { min-height: 390px; }
  .ma-practice-panel { height: var(--ma-visual-viewport-height,100dvh); max-width: none; top: auto; width: 100vw; }
  .ma-practice-panel > header { padding: 17px 17px 14px; }
  .ma-practice-panel > header h2 { font-size: 1.35rem; }
  .ma-practice-editor-scroll { gap: 12px; padding: 15px 17px 24px; }
  .ma-practice-editor-form > footer { display: grid; grid-template-columns: 1fr 1fr; padding: 11px 17px max(11px,env(safe-area-inset-bottom)); }
  .ma-practice-editor-form > footer .ma-button { min-height: 46px; width: 100%; }
  .ma-practice-form-section { border-radius: 14px; padding: 14px; }
  .ma-practice-form-grid { grid-template-columns: 1fr; }
  .ma-practice-field-wide { grid-column: auto; }
  .ma-practice-scope-row { grid-template-columns: 1fr auto; }
  .ma-practice-scope-row > label { grid-column: 1; }
  .ma-practice-scope-row > button { grid-column: 2; grid-row: 1 / span 2; }
  .ma-practice-link-form { grid-template-columns: 1fr; }
  .ma-practice-link-form .ma-button { min-height: 46px; width: 100%; }
  .ma-practice-danger-zone { grid-template-columns: 1fr; }
  .ma-practice-danger-zone .ma-button { width: 100%; }
}
@media (max-width: 440px) {
  .ma-practice-hero__actions { grid-template-columns: 1fr; }
  .ma-practice-hero__actions .ma-button:first-child { grid-column: auto; }
  .ma-practice-readiness-summary { grid-template-columns: 78px minmax(0,1fr); }
  .ma-practice-readiness-ring { height: 78px; }
  .ma-practice-readiness-ring span { font-size: 1.15rem; }
  .ma-practice-kpi-grid { grid-template-columns: 1fr; }
  .ma-practice-recent-list > button { grid-template-columns: 36px minmax(0,1fr); }
  .ma-practice-recent-list button > b { grid-column: 2; justify-self: start; }
  .ma-practice-editor-form > footer { grid-template-columns: 1fr; }
  .ma-practice-export-boundary { grid-template-columns: 1fr; }
}
@media (max-height: 560px) and (orientation: landscape) {
  .ma-practice-panel { max-width: none; width: min(820px,90vw); }
  .ma-practice-panel > header { padding-bottom: 10px; padding-top: 10px; }
  .ma-practice-editor-scroll { padding-top: 11px; }
  .ma-practice-editor-form > footer { padding-bottom: 9px; padding-top: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  .ma-practice-entry-card,
  .ma-practice-goal-card { transition: none; }
  .ma-practice-readiness-summary { backdrop-filter: none; }
}
.ma-home-practice-card {
  align-items: center;
  background: linear-gradient(135deg,var(--ma-white),var(--ma-teal-pale));
  border-color: rgba(7,148,177,.2);
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0,1fr) auto;
  padding: 22px;
}
.ma-home-practice-card h3 { font-size: clamp(1.25rem,2.4vw,1.8rem); margin: 7px 0 8px; }
.ma-home-practice-card p { color: var(--ma-muted); line-height: 1.55; margin: 0; }
.ma-home-practice-card__progress { align-items: center; display: flex; gap: 14px; }
.ma-home-practice-card__progress > span { align-items: center; background: conic-gradient(var(--ma-teal) var(--ma-home-practice-progress,0deg),#dce9ea 0); border-radius: 50%; display: flex; height: 76px; justify-content: center; position: relative; width: 76px; }
.ma-home-practice-card__progress > span::after { background: white; border-radius: 50%; content: ""; inset: 7px; position: absolute; }
.ma-home-practice-card__progress b { color: var(--ma-ink); font-size: .82rem; position: relative; z-index: 1; }
@media (max-width:700px) {
  .ma-home-practice-card { align-items: stretch; grid-template-columns: 1fr; }
  .ma-home-practice-card__progress { justify-content: space-between; }
}

/* Pass 21 — Training, progression, assessments and governed feedback. */
.ma-training-page { display:grid; gap:18px; }
.ma-training-hero {
  background:
    radial-gradient(circle at 88% 12%,rgba(79,201,221,.16),transparent 27%),
    linear-gradient(135deg,#10212a 0%,#123843 56%,#0b5666 100%);
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--ma-radius-xl);
  box-shadow:var(--ma-shadow-md);
  color:var(--ma-white);
  display:grid;
  gap:32px;
  grid-template-columns:minmax(0,1.55fr) minmax(310px,.75fr);
  min-height:310px;
  overflow:hidden;
  padding:clamp(28px,4vw,52px);
  position:relative;
}
.ma-training-hero::after { border:1px solid rgba(255,255,255,.08); border-radius:50%; content:""; height:280px; position:absolute; right:-90px; top:-120px; width:280px; }
.ma-training-hero__copy { align-self:center; max-width:790px; position:relative; z-index:1; }
.ma-training-hero .ma-eyebrow { color:#9ee8f3; }
.ma-training-hero h2 { color:#fff; font-size:clamp(2.15rem,4.2vw,4.2rem); letter-spacing:-.048em; line-height:.98; margin:10px 0 18px; max-width:16ch; }
.ma-training-hero p { color:rgba(255,255,255,.79); font-size:15px; line-height:1.7; margin:0; max-width:70ch; }
.ma-training-hero__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:26px; }
.ma-training-hero__actions .ma-button--secondary { background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.2); color:#fff; }
.ma-training-hero__actions .ma-button--secondary:hover { background:rgba(255,255,255,.16); }
.ma-training-progress-summary { align-self:center; background:rgba(5,20,27,.42); border:1px solid rgba(255,255,255,.12); border-radius:24px; backdrop-filter:blur(16px); display:grid; gap:18px; grid-template-columns:118px minmax(0,1fr); padding:22px; position:relative; z-index:1; }
.ma-training-progress-ring { align-items:center; aspect-ratio:1; background:conic-gradient(#5ed5e7 var(--ma-training-progress),rgba(255,255,255,.11) 0); border-radius:50%; display:flex; flex-direction:column; justify-content:center; position:relative; }
.ma-training-progress-ring::before { background:#13323c; border-radius:50%; content:""; inset:9px; position:absolute; }
.ma-training-progress-ring span,.ma-training-progress-ring small { position:relative; z-index:1; }
.ma-training-progress-ring span { color:#fff; font-size:1.55rem; font-weight:850; line-height:1; }
.ma-training-progress-ring small { color:rgba(255,255,255,.68); font-size:9px; font-weight:750; letter-spacing:.08em; margin-top:5px; text-transform:uppercase; }
.ma-training-progress-summary > div:last-child { align-self:center; min-width:0; }
.ma-training-progress-summary strong { color:#fff; display:block; font-size:17px; line-height:1.28; margin:8px 0 5px; }
.ma-training-progress-summary p { font-size:12px; line-height:1.45; }
.ma-training-status { background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.12); border-radius:999px; color:#aeeaf3; display:inline-flex; font-size:10px; font-weight:800; letter-spacing:.05em; padding:6px 9px; text-transform:uppercase; }

.ma-training-programme-bar { align-items:end; background:var(--ma-paper); border:1px solid var(--ma-line); border-radius:18px; display:flex; gap:16px; justify-content:space-between; padding:14px 16px; }
.ma-training-programme-bar > label { display:grid; flex:1; gap:6px; max-width:560px; }
.ma-training-programme-bar label > span { color:var(--ma-muted); font-size:10px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.ma-training-programme-bar select { background:#fff; border:1px solid var(--ma-line-strong); border-radius:10px; color:var(--ma-ink); min-height:44px; padding:9px 38px 9px 12px; width:100%; }
.ma-training-programme-bar > div { display:flex; gap:8px; }

.ma-training-kpi-grid { display:grid; gap:12px; grid-template-columns:repeat(4,minmax(0,1fr)); }
.ma-training-kpi { background:var(--ma-paper); border:1px solid var(--ma-line); border-radius:16px; display:grid; gap:5px; min-height:112px; padding:17px; position:relative; }
.ma-training-kpi::before { background:var(--ma-teal); border-radius:999px; content:""; height:30px; opacity:.15; position:absolute; right:14px; top:14px; width:5px; }
.ma-training-kpi.is-attention::before { background:var(--ma-coral); }
.ma-training-kpi.is-ready::before { background:var(--ma-positive); }
.ma-training-kpi > span { color:var(--ma-muted); font-size:11px; font-weight:750; }
.ma-training-kpi > strong { color:var(--ma-ink); font-size:27px; letter-spacing:-.03em; line-height:1; }
.ma-training-kpi > small { color:var(--ma-muted); font-size:11px; line-height:1.35; }

.ma-training-tabs-wrap { background:var(--ma-paper); border:1px solid var(--ma-line); border-radius:16px; overflow:hidden; }
.ma-training-tabs { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); }
.ma-training-tabs button { align-items:center; background:transparent; border:0; border-bottom:3px solid transparent; color:var(--ma-muted); cursor:pointer; display:flex; font-size:12px; font-weight:750; gap:6px; justify-content:center; min-height:54px; padding:11px 8px; }
.ma-training-tabs button:hover { background:var(--ma-teal-pale); color:var(--ma-ink); }
.ma-training-tabs button.is-active { background:var(--ma-teal-pale); border-bottom-color:var(--ma-teal); color:var(--ma-teal-dark); }
.ma-training-tabs button b { align-items:center; background:var(--ma-cream); border-radius:999px; display:inline-flex; font-size:9px; height:20px; justify-content:center; min-width:20px; padding:0 5px; }
.ma-training-tabs-wrap > p { border-top:1px solid var(--ma-line); color:var(--ma-muted); font-size:11px; line-height:1.5; margin:0; padding:10px 14px; text-align:center; }

.ma-training-empty { align-items:center; background:linear-gradient(145deg,var(--ma-paper),var(--ma-teal-pale)); border:1px solid var(--ma-line); border-radius:24px; display:grid; gap:32px; grid-template-columns:170px minmax(0,1fr); min-height:410px; padding:clamp(26px,5vw,64px); }
.ma-training-empty__mark { align-items:center; background:linear-gradient(145deg,var(--ma-ink),#154e5d); border-radius:36px; box-shadow:var(--ma-shadow-md); color:#aeeaf3; display:flex; font-size:70px; font-weight:850; height:150px; justify-content:center; transform:rotate(-3deg); width:150px; }
.ma-training-empty h3 { font-size:clamp(1.8rem,3vw,2.8rem); letter-spacing:-.04em; margin:8px 0 10px; }
.ma-training-empty p { color:var(--ma-muted); line-height:1.65; max-width:70ch; }
.ma-training-empty ol { display:grid; gap:9px; list-style:none; margin:22px 0; padding:0; }
.ma-training-empty li { align-items:center; background:rgba(255,255,255,.7); border:1px solid var(--ma-line); border-radius:12px; display:grid; gap:11px; grid-template-columns:34px minmax(0,1fr); padding:10px; }
.ma-training-empty li > span { align-items:center; background:var(--ma-teal-soft); border-radius:10px; color:var(--ma-teal-dark); display:flex; font-size:12px; font-weight:850; height:34px; justify-content:center; }
.ma-training-empty li strong,.ma-training-empty li small { display:block; }
.ma-training-empty li small { color:var(--ma-muted); margin-top:2px; }

.ma-training-overview-grid { display:grid; gap:16px; grid-template-columns:repeat(12,minmax(0,1fr)); }
.ma-training-overview-grid > .ma-card { margin:0; }
.ma-training-due-card { grid-column:span 7; }
.ma-training-checks-card { grid-column:span 5; }
.ma-training-rotations-card,.ma-training-supervisors-card { grid-column:span 6; }
.ma-training-milestones-card { grid-column:span 7; }
.ma-training-mara-card { grid-column:span 5; }
.ma-training-exports-card { grid-column:1/-1; }
.ma-training-exports-card.is-wide { margin-top:16px; }
.ma-training-due-list { display:grid; gap:8px; list-style:none; margin:18px 0 0; padding:0; }
.ma-training-due-list li { align-items:center; border:1px solid var(--ma-line); border-radius:12px; display:grid; gap:10px; grid-template-columns:34px minmax(0,1fr) auto; padding:9px 10px; }
.ma-training-due-list li > span { align-items:center; background:var(--ma-teal-soft); border-radius:10px; color:var(--ma-teal-dark); display:flex; font-size:11px; font-weight:850; height:34px; justify-content:center; }
.ma-training-due-list li.is-overdue > span { background:var(--ma-danger-soft); color:var(--ma-danger); }
.ma-training-due-list strong,.ma-training-due-list small { display:block; }
.ma-training-due-list small { color:var(--ma-muted); font-size:10px; margin-top:3px; }
.ma-training-calm-state { align-items:center; background:var(--ma-positive-soft); border-radius:14px; display:grid; gap:12px; grid-template-columns:42px minmax(0,1fr); margin-top:18px; padding:16px; }
.ma-training-calm-state > span { align-items:center; background:var(--ma-positive); border-radius:50%; color:#fff; display:flex; height:42px; justify-content:center; }
.ma-training-calm-state p { color:var(--ma-muted); font-size:12px; margin:3px 0 0; }
.ma-training-check-list { display:grid; gap:7px; margin-top:16px; }
.ma-training-check-list > div { align-items:center; border:1px solid var(--ma-line); border-radius:11px; display:grid; gap:9px; grid-template-columns:28px minmax(0,1fr); padding:8px 9px; }
.ma-training-check-list > div > span { align-items:center; background:var(--ma-warning-soft); border-radius:8px; color:var(--ma-warning); display:flex; font-size:11px; font-weight:900; height:28px; justify-content:center; }
.ma-training-check-list > div.is-ready > span { background:var(--ma-positive-soft); color:var(--ma-positive); }
.ma-training-check-list strong,.ma-training-check-list small { display:block; }
.ma-training-check-list strong { font-size:12px; }
.ma-training-check-list small { color:var(--ma-muted); font-size:9px; margin-top:2px; }
.ma-training-row-list { display:grid; gap:7px; margin-top:14px; }
.ma-training-row-list > button { align-items:center; background:#fff; border:1px solid var(--ma-line); border-radius:12px; color:var(--ma-ink); cursor:pointer; display:grid; gap:10px; grid-template-columns:40px minmax(0,1fr) auto; min-height:58px; padding:8px 10px; text-align:left; width:100%; }
.ma-training-row-list > button:hover { border-color:#9bcbd3; box-shadow:var(--ma-shadow-xs); transform:translateY(-1px); }
.ma-training-row-list strong,.ma-training-row-list small { display:block; }
.ma-training-row-list small { color:var(--ma-muted); font-size:10px; line-height:1.4; margin-top:2px; }
.ma-training-row-list > button > b { color:var(--ma-muted); font-size:9px; font-weight:800; }
.ma-training-row-icon,.ma-training-avatar,.ma-training-date-tile { align-items:center; background:var(--ma-teal-soft); border-radius:11px; color:var(--ma-teal-dark); display:flex; font-size:13px; font-weight:850; height:40px; justify-content:center; width:40px; }
.ma-training-avatar { border-radius:50%; }
.ma-training-date-tile { flex-direction:column; gap:0; }
.ma-training-date-tile b { font-size:13px; line-height:1; }
.ma-training-date-tile small { color:var(--ma-teal-dark); font-size:8px; margin:2px 0 0; text-transform:uppercase; }

.ma-training-section { display:grid; gap:16px; }
.ma-training-section-heading { align-items:end; display:flex; gap:18px; justify-content:space-between; }
.ma-training-section-heading > div:first-child { max-width:850px; }
.ma-training-section-heading > div:last-child { display:flex; gap:8px; }
.ma-training-section-heading h2 { font-size:clamp(1.6rem,2.5vw,2.35rem); letter-spacing:-.04em; margin:4px 0 6px; }
.ma-training-section-heading p { color:var(--ma-muted); line-height:1.6; margin:0; }
.ma-training-filter-bar { align-items:center; background:var(--ma-paper); border:1px solid var(--ma-line); border-radius:14px; display:grid; gap:8px; grid-template-columns:minmax(220px,1fr) minmax(150px,.25fr) minmax(150px,.25fr) auto; padding:9px; }
.ma-training-filter-bar label { min-width:0; }
.ma-training-filter-bar input,.ma-training-filter-bar select { background:#fff; border:1px solid var(--ma-line); border-radius:9px; color:var(--ma-ink); min-height:42px; padding:8px 11px; width:100%; }
.ma-training-no-results { align-items:center; background:var(--ma-paper); border:1px dashed var(--ma-line-strong); border-radius:18px; display:flex; flex-direction:column; min-height:310px; justify-content:center; padding:32px; text-align:center; }
.ma-training-no-results > div { align-items:center; background:var(--ma-teal-soft); border-radius:24px; color:var(--ma-teal-dark); display:flex; font-size:34px; height:74px; justify-content:center; width:74px; }
.ma-training-no-results h3 { margin:16px 0 6px; }
.ma-training-no-results p { color:var(--ma-muted); margin:0 0 18px; max-width:50ch; }
.ma-training-no-results .ma-text-button { margin-top:11px; }

.ma-training-capability-grid { display:grid; gap:13px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.ma-training-capability-card { background:var(--ma-paper); border:1px solid var(--ma-line); border-radius:18px; display:flex; flex-direction:column; min-height:315px; padding:17px; position:relative; }
.ma-training-capability-card::before { background:var(--ma-line-strong); border-radius:999px; content:""; height:5px; left:17px; position:absolute; right:17px; top:0; }
.ma-training-capability-card.is-developing::before { background:var(--ma-teal); }
.ma-training-capability-card.is-evidence_ready::before { background:var(--ma-warning); }
.ma-training-capability-card.is-signed_off::before { background:var(--ma-positive); }
.ma-training-capability-card header { align-items:center; display:flex; gap:8px; justify-content:space-between; }
.ma-training-capability-card header span { color:var(--ma-teal-dark); font-size:10px; font-weight:850; letter-spacing:.05em; text-transform:uppercase; }
.ma-training-capability-card header b { background:var(--ma-cream); border-radius:999px; color:var(--ma-muted); font-size:9px; padding:6px 8px; }
.ma-training-capability-card h3 { font-size:17px; line-height:1.3; margin:15px 0 8px; }
.ma-training-capability-card > p { color:var(--ma-muted); display:-webkit-box; font-size:12px; line-height:1.55; margin:0; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:4; }
.ma-training-levels { align-items:center; background:var(--ma-cream); border-radius:12px; display:grid; gap:8px; grid-template-columns:1fr auto 1fr; margin-top:auto; padding:11px; }
.ma-training-levels > div span,.ma-training-levels > div strong { display:block; }
.ma-training-levels span { color:var(--ma-muted); font-size:8px; font-weight:800; text-transform:uppercase; }
.ma-training-levels strong { font-size:11px; margin-top:3px; }
.ma-training-levels i { color:var(--ma-muted); font-style:normal; }
.ma-training-capability-card footer { align-items:center; display:flex; gap:8px; justify-content:space-between; margin-top:12px; }
.ma-training-capability-card footer small { color:var(--ma-muted); font-size:10px; }

.ma-training-assessment-list { display:grid; gap:12px; }
.ma-training-assessment-card { background:var(--ma-paper); border:1px solid var(--ma-line); border-radius:18px; display:grid; gap:16px; grid-template-columns:90px minmax(0,1fr); padding:16px; }
.ma-training-assessment-card__type { align-items:center; background:linear-gradient(145deg,var(--ma-ink),#22515d); border-radius:14px; color:#fff; display:flex; flex-direction:column; justify-content:center; min-height:116px; padding:12px; text-align:center; }
.ma-training-assessment-card__type span { color:#aeeaf3; font-size:19px; font-weight:850; }
.ma-training-assessment-card__type small { color:rgba(255,255,255,.7); font-size:8px; line-height:1.25; margin-top:5px; }
.ma-training-assessment-card header { align-items:start; display:flex; gap:12px; justify-content:space-between; }
.ma-training-assessment-card h3 { margin:0; }
.ma-training-assessment-card header > span { background:var(--ma-cream); border-radius:999px; color:var(--ma-muted); font-size:9px; font-weight:800; padding:6px 8px; }
.ma-training-assessment-card p { color:var(--ma-muted); font-size:12px; line-height:1.55; margin:8px 0; }
.ma-training-assessment-meta { display:flex; flex-wrap:wrap; gap:6px; }
.ma-training-assessment-meta span { background:var(--ma-cream); border-radius:8px; color:var(--ma-muted); font-size:9px; padding:6px 8px; }
.ma-training-assessment-card footer { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; margin-top:12px; }

.ma-training-boundary { align-items:start; background:var(--ma-warning-soft); border:1px solid #efd59f; border-radius:14px; display:grid; gap:11px; grid-template-columns:38px minmax(0,1fr); padding:13px; }
.ma-training-boundary > span { align-items:center; background:#fff; border-radius:10px; color:var(--ma-warning); display:flex; font-weight:900; height:38px; justify-content:center; }
.ma-training-boundary strong,.ma-training-boundary p { display:block; }
.ma-training-boundary p { color:#775421; font-size:11px; line-height:1.5; margin:3px 0 0; }
.ma-training-boundary.is-compact { margin-bottom:14px; }
.ma-training-logbook-table { background:var(--ma-paper); border:1px solid var(--ma-line); border-radius:17px; overflow:hidden; }
.ma-training-logbook-head,.ma-training-logbook-table > button { align-items:center; display:grid; gap:12px; grid-template-columns:minmax(220px,1.7fr) minmax(100px,.55fr) minmax(150px,.8fr) minmax(170px,1fr) 20px; padding:11px 14px; }
.ma-training-logbook-head { background:var(--ma-cream); color:var(--ma-muted); font-size:9px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.ma-training-logbook-table > button { background:#fff; border:0; border-top:1px solid var(--ma-line); color:var(--ma-ink); cursor:pointer; min-height:64px; text-align:left; width:100%; }
.ma-training-logbook-table > button:hover { background:var(--ma-teal-pale); }
.ma-training-logbook-table strong,.ma-training-logbook-table small { display:block; }
.ma-training-logbook-table small { color:var(--ma-muted); font-size:9px; margin-top:3px; }
.ma-training-logbook-table [role="cell"] { color:var(--ma-muted); font-size:11px; min-width:0; }
.ma-training-logbook-table [role="cell"] strong { color:var(--ma-ink); font-size:12px; }

.ma-training-privacy-grid { display:grid; gap:10px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.ma-training-privacy-grid article { align-items:start; background:var(--ma-paper); border:1px solid var(--ma-line); border-radius:14px; display:grid; gap:10px; grid-template-columns:38px minmax(0,1fr); padding:13px; }
.ma-training-privacy-grid article > span { align-items:center; background:var(--ma-teal-soft); border-radius:11px; color:var(--ma-teal-dark); display:flex; font-size:16px; height:38px; justify-content:center; }
.ma-training-privacy-grid strong,.ma-training-privacy-grid p { display:block; }
.ma-training-privacy-grid p { color:var(--ma-muted); font-size:10px; line-height:1.45; margin:3px 0 0; }
.ma-training-feedback-grid { display:grid; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.ma-training-feedback-card { background:var(--ma-paper); border:1px solid var(--ma-line); border-radius:18px; padding:17px; }
.ma-training-feedback-card header { align-items:start; display:flex; gap:10px; justify-content:space-between; }
.ma-training-feedback-card header span { color:var(--ma-teal-dark); font-size:9px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.ma-training-feedback-card h3 { margin:5px 0 0; }
.ma-training-feedback-card header > b { background:var(--ma-cream); border-radius:999px; color:var(--ma-muted); font-size:9px; padding:6px 8px; }
.ma-training-feedback-card > p { color:var(--ma-muted); font-size:11px; line-height:1.55; min-height:34px; }
.ma-training-feedback-meter { margin:16px 0; }
.ma-training-feedback-meter > div { background:var(--ma-line); border-radius:999px; height:8px; overflow:hidden; }
.ma-training-feedback-meter i { background:linear-gradient(90deg,var(--ma-teal),#53c8da); border-radius:inherit; display:block; height:100%; }
.ma-training-feedback-meter > span { color:var(--ma-muted); display:block; font-size:10px; margin-top:7px; }
.ma-training-feedback-meter strong { color:var(--ma-ink); }
.ma-training-feedback-actions { display:flex; flex-wrap:wrap; gap:7px; }
.ma-training-feedback-card details { border-top:1px solid var(--ma-line); margin-top:14px; padding-top:12px; }
.ma-training-feedback-card summary { color:var(--ma-teal-dark); cursor:pointer; font-size:10px; font-weight:800; }
.ma-training-invitation-list { display:grid; gap:7px; margin-top:10px; }
.ma-training-invitation-list > div { align-items:center; background:var(--ma-cream); border-radius:10px; display:flex; gap:10px; justify-content:space-between; padding:8px 9px; }
.ma-training-invitation-list strong,.ma-training-invitation-list small { display:block; }
.ma-training-invitation-list strong { font-size:10px; }
.ma-training-invitation-list small { color:var(--ma-muted); font-size:8px; margin-top:2px; }

.ma-training-review-layout { display:grid; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.ma-training-review-list { display:grid; gap:7px; margin-top:14px; }
.ma-training-review-list button { align-items:center; background:#fff; border:1px solid var(--ma-line); border-radius:12px; color:var(--ma-ink); cursor:pointer; display:grid; gap:10px; grid-template-columns:88px minmax(0,1fr) auto; min-height:62px; padding:8px 10px; text-align:left; width:100%; }
.ma-training-review-list button:hover { border-color:#9bcbd3; }
.ma-training-review-date { color:var(--ma-teal-dark); font-size:10px; font-weight:800; }
.ma-training-review-list strong,.ma-training-review-list small { display:block; }
.ma-training-review-list small { color:var(--ma-muted); font-size:9px; margin-top:3px; }
.ma-training-review-list button > b { color:var(--ma-muted); font-size:8px; }

.ma-training-export-list { display:grid; gap:8px; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:14px; }
.ma-training-export-list a { background:var(--ma-cream); border:1px solid transparent; border-radius:12px; color:var(--ma-ink); display:grid; gap:3px; grid-template-columns:minmax(0,1fr) 20px; padding:11px; text-decoration:none; }
.ma-training-export-list a:hover { border-color:#a8ced5; background:var(--ma-teal-pale); }
.ma-training-export-list a[aria-disabled="true"] { opacity:.5; pointer-events:none; }
.ma-training-export-list span,.ma-training-export-list small { display:block; grid-column:1; }
.ma-training-export-list span { font-size:11px; font-weight:800; }
.ma-training-export-list small { color:var(--ma-muted); font-size:9px; line-height:1.4; }
.ma-training-export-list b { align-self:center; color:var(--ma-teal-dark); grid-column:2; grid-row:1/span 2; justify-self:center; }

.ma-training-mara-modes { display:grid; gap:6px; grid-template-columns:repeat(3,minmax(0,1fr)); margin:13px 0; }
.ma-training-mara-modes button { background:var(--ma-cream); border:1px solid var(--ma-line); border-radius:10px; color:var(--ma-muted); cursor:pointer; font-size:9px; font-weight:800; min-height:38px; padding:7px; }
.ma-training-mara-modes button.is-active { background:var(--ma-teal-soft); border-color:#9bcbd3; color:var(--ma-teal-dark); }
.ma-training-mara-card form { display:grid; gap:10px; }
.ma-training-mara-card form label { display:grid; gap:6px; }
.ma-training-mara-card textarea { border:1px solid var(--ma-line-strong); border-radius:11px; padding:10px; resize:vertical; width:100%; }
.ma-training-mara-upgrade { background:var(--ma-cream); border-radius:12px; padding:13px; }
.ma-training-mara-upgrade p { color:var(--ma-muted); font-size:10px; margin:4px 0 0; }
.ma-training-mara-result { background:var(--ma-teal-pale); border:1px solid #b9dde4; border-radius:14px; margin-top:12px; padding:14px; }
.ma-training-mara-result > div span { color:var(--ma-teal-dark); font-size:8px; font-weight:850; text-transform:uppercase; }
.ma-training-mara-result h4 { margin:4px 0 10px; }
.ma-training-mara-result p,.ma-training-mara-result li { font-size:11px; line-height:1.55; }
.ma-training-mara-result h5 { margin:12px 0 4px; }
.ma-training-mara-result footer { display:flex; gap:8px; justify-content:flex-end; margin-top:12px; }

.ma-training-panel-wrap { inset:0; position:fixed; z-index:700; }
.ma-training-panel-backdrop { background:rgba(9,21,29,.54); border:0; inset:0; position:absolute; width:100%; }
.ma-training-panel { background:var(--ma-paper); box-shadow:-24px 0 70px rgba(9,21,29,.24); display:flex; flex-direction:column; height:100dvh; max-width:780px; overflow:hidden; position:absolute; right:0; top:0; width:min(780px,92vw); }
.ma-training-panel > header { align-items:start; border-bottom:1px solid var(--ma-line); display:flex; gap:16px; justify-content:space-between; padding:22px 24px 17px; }
.ma-training-panel > header h2 { font-size:1.65rem; letter-spacing:-.035em; margin:5px 0; }
.ma-training-panel > header p { color:var(--ma-muted); font-size:11px; line-height:1.45; margin:0; }
.ma-training-panel-loading { align-items:center; display:flex; flex:1; flex-direction:column; gap:12px; justify-content:center; }
.ma-training-panel-loading span,.ma-response-loading > span { animation:ma-spin .8s linear infinite; border:3px solid var(--ma-line); border-radius:50%; border-top-color:var(--ma-teal); height:34px; width:34px; }
.ma-training-editor-form { display:flex; flex:1; flex-direction:column; min-height:0; }
.ma-training-editor-scroll { display:grid; flex:1; gap:14px; overflow:auto; overscroll-behavior:contain; padding:17px 24px 30px; }
.ma-training-editor-form > footer { background:rgba(255,253,249,.97); border-top:1px solid var(--ma-line); display:flex; gap:9px; justify-content:flex-end; padding:13px 24px max(13px,env(safe-area-inset-bottom)); }
.ma-training-form-section { background:#fff; border:1px solid var(--ma-line); border-radius:17px; display:grid; gap:13px; padding:17px; }
.ma-training-form-section__head { align-items:start; display:grid; gap:11px; grid-template-columns:34px minmax(0,1fr); }
.ma-training-form-section__head > span { align-items:center; background:var(--ma-teal-soft); border-radius:10px; color:var(--ma-teal-dark); display:flex; font-size:11px; font-weight:850; height:34px; justify-content:center; }
.ma-training-form-section__head h3 { margin:0; }
.ma-training-form-section__head p { color:var(--ma-muted); font-size:10px; line-height:1.45; margin:3px 0 0; }
.ma-training-form-grid { display:grid; gap:11px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.ma-training-field-wide { grid-column:1/-1; }
.ma-training-form-section label { color:var(--ma-ink-3); display:grid; font-size:10px; font-weight:750; gap:6px; }
.ma-training-form-section input,.ma-training-form-section select,.ma-training-form-section textarea,.ma-training-invitation-form input { background:#fff; border:1px solid var(--ma-line-strong); border-radius:10px; color:var(--ma-ink); min-height:43px; padding:9px 10px; width:100%; }
.ma-training-form-section textarea { min-height:92px; resize:vertical; }
.ma-training-consent { align-items:start!important; background:var(--ma-cream); border-radius:11px; display:grid!important; gap:9px!important; grid-template-columns:20px minmax(0,1fr); padding:10px; }
.ma-training-consent input { height:18px; min-height:0; width:18px; }
.ma-training-request-box,.ma-training-privacy-note,.ma-training-instrument-lock { align-items:start; background:var(--ma-teal-pale); border:1px solid #b9dde4; border-radius:12px; display:grid; gap:10px; grid-template-columns:36px minmax(0,1fr); padding:11px; }
.ma-training-request-box > span,.ma-training-privacy-note > span,.ma-training-instrument-lock > span { align-items:center; background:#fff; border-radius:10px; color:var(--ma-teal-dark); display:flex; height:36px; justify-content:center; }
.ma-training-request-box p,.ma-training-privacy-note p,.ma-training-instrument-lock p { color:var(--ma-muted); font-size:10px; line-height:1.45; margin:3px 0 0; }
.ma-training-campaign-summary { background:var(--ma-cream); border-radius:11px; padding:11px; }
.ma-training-campaign-summary p { color:var(--ma-muted); font-size:10px; margin:3px 0 0; }
.ma-training-link-list { display:grid; gap:7px; }
.ma-training-link-list article { align-items:center; background:var(--ma-cream); border-radius:11px; display:grid; gap:9px; grid-template-columns:34px minmax(0,1fr) 38px; padding:8px; }
.ma-training-link-list article > span { align-items:center; background:#fff; border-radius:9px; color:var(--ma-teal-dark); display:flex; font-size:11px; font-weight:850; height:34px; justify-content:center; }
.ma-training-link-list strong,.ma-training-link-list small { display:block; }
.ma-training-link-list small { color:var(--ma-muted); font-size:9px; margin-top:2px; }
.ma-training-link-form { align-items:end; border-top:1px solid var(--ma-line); display:grid; gap:8px; grid-template-columns:minmax(0,1fr) minmax(150px,.45fr) auto; margin-top:10px; padding-top:12px; }
.ma-training-no-links,.ma-training-link-empty { color:var(--ma-muted); font-size:10px; }
.ma-training-link-empty { align-items:center; display:flex; gap:10px; justify-content:space-between; }
.ma-training-revisions ol { display:grid; gap:6px; list-style:none; margin:0; padding:0; }
.ma-training-revisions li { align-items:center; background:var(--ma-cream); border-radius:10px; display:grid; gap:9px; grid-template-columns:30px minmax(0,1fr); padding:7px 8px; }
.ma-training-revisions li > span { align-items:center; background:#fff; border-radius:8px; color:var(--ma-teal-dark); display:flex; font-size:9px; font-weight:850; height:30px; justify-content:center; }
.ma-training-revisions strong,.ma-training-revisions small { display:block; }
.ma-training-revisions small { color:var(--ma-muted); font-size:8px; margin-top:2px; }
.ma-training-danger-zone { align-items:center; background:var(--ma-danger-soft); border:1px solid #edc6c9; border-radius:14px; display:grid; gap:12px; grid-template-columns:minmax(0,1fr) auto; padding:14px; }
.ma-training-danger-zone p { color:#7b4549; font-size:10px; margin:3px 0 0; }

.ma-training-report-empty { align-items:center; display:flex; flex:1; flex-direction:column; justify-content:center; padding:40px; text-align:center; }
.ma-training-report-empty > span { align-items:center; background:var(--ma-teal-soft); border-radius:50%; color:var(--ma-teal-dark); display:flex; font-size:26px; height:74px; justify-content:center; width:74px; }
.ma-training-report-empty p { color:var(--ma-muted); line-height:1.55; max-width:52ch; }
.ma-training-report { display:grid; gap:17px; overflow:auto; padding:20px 24px 30px; }
.ma-training-report__hero { align-items:center; background:linear-gradient(145deg,var(--ma-ink),#174c59); border-radius:18px; color:#fff; display:grid; gap:14px; grid-template-columns:74px minmax(0,1fr); padding:17px; }
.ma-training-report__hero > span { align-items:center; background:rgba(255,255,255,.1); border-radius:16px; color:#aeeaf3; display:flex; font-size:28px; font-weight:850; height:74px; justify-content:center; }
.ma-training-report__hero p { color:rgba(255,255,255,.7); font-size:10px; margin:4px 0 0; }
.ma-training-report section { background:#fff; border:1px solid var(--ma-line); border-radius:16px; padding:16px; }
.ma-training-score-list { display:grid; gap:9px; }
.ma-training-score-list > div { align-items:center; display:grid; gap:10px; grid-template-columns:minmax(150px,1fr) minmax(120px,.8fr) 32px; }
.ma-training-score-list > div > span { font-size:10px; }
.ma-training-score-list > div > div { background:var(--ma-line); border-radius:999px; height:7px; overflow:hidden; }
.ma-training-score-list i { background:var(--ma-teal); display:block; height:100%; }
.ma-training-score-list strong { font-size:10px; }
.ma-training-comment-list { display:grid; gap:8px; }
.ma-training-comment-list blockquote { background:var(--ma-cream); border-left:3px solid var(--ma-teal); border-radius:0 10px 10px 0; font-size:11px; line-height:1.55; margin:0; padding:10px; }
.ma-training-report-boundary { align-items:start; background:var(--ma-positive-soft); border-radius:12px; display:grid; gap:9px; grid-template-columns:30px minmax(0,1fr); padding:11px; }
.ma-training-report-boundary span { color:var(--ma-positive); font-weight:900; }
.ma-training-report-boundary p { color:var(--ma-muted); font-size:10px; margin:0; }
.ma-training-report > footer { display:flex; justify-content:flex-end; }

/* Public, token-bound Training response surface. */
body.merentra-training-response-surface { background:linear-gradient(160deg,#eef8f9 0%,#f7f5ef 48%,#fff 100%)!important; color:var(--ma-ink); font-family:var(--ma-font); margin:0!important; min-width:320px; }
body.merentra-training-response-surface > header,body.merentra-training-response-surface > footer,body.merentra-training-response-surface .site-header,body.merentra-training-response-surface .site-footer { display:none!important; }
body.merentra-training-response-surface .entry-content,body.merentra-training-response-surface .wp-block-post-content,body.merentra-training-response-surface main:not(.ma-response-shell) { margin:0!important; max-width:none!important; padding:0!important; width:100%!important; }
.ma-response-shell,.ma-response-shell * { box-sizing:border-box; }
.ma-response-shell { margin:0 auto; max-width:980px; min-height:100dvh; padding:24px max(18px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left)); }
.ma-response-brand { align-items:center; color:var(--ma-ink); display:inline-flex; gap:10px; margin-bottom:22px; text-decoration:none; }
.ma-response-brand__mark { align-items:center; background:var(--ma-ink); border-radius:12px; color:#8ee1ec; display:flex; font-size:18px; font-weight:850; height:42px; justify-content:center; width:42px; }
.ma-response-brand strong,.ma-response-brand small { display:block; }
.ma-response-brand small { color:var(--ma-muted); font-size:9px; margin-top:2px; }
.ma-response-card { background:var(--ma-paper); border:1px solid var(--ma-line); border-radius:26px; box-shadow:var(--ma-shadow-lg); min-height:360px; overflow:hidden; }
.ma-response-loading,.ma-response-state { align-items:center; display:flex; flex-direction:column; justify-content:center; min-height:470px; padding:40px; text-align:center; }
.ma-response-loading h1,.ma-response-state h1 { font-size:clamp(1.7rem,4vw,2.7rem); letter-spacing:-.04em; margin:18px 0 8px; }
.ma-response-loading p,.ma-response-state p { color:var(--ma-muted); line-height:1.6; max-width:54ch; }
.ma-response-state > span { align-items:center; background:var(--ma-danger-soft); border-radius:50%; color:var(--ma-danger); display:flex; font-size:26px; font-weight:850; height:78px; justify-content:center; width:78px; }
.ma-response-state.is-success > span { background:var(--ma-positive-soft); color:var(--ma-positive); }
.ma-response-success-boundary { background:var(--ma-positive-soft); border-radius:13px; display:grid; gap:4px; margin-top:18px; max-width:560px; padding:14px; }
.ma-response-success-boundary span { color:var(--ma-muted); font-size:10px; }
.ma-response-form-card > header { background:linear-gradient(140deg,var(--ma-ink),#164b59); color:#fff; padding:clamp(24px,5vw,52px); }
.ma-response-kind { color:#9ee8f3; font-size:10px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.ma-response-form-card > header h1 { color:#fff; font-size:clamp(2rem,5vw,3.6rem); letter-spacing:-.05em; line-height:1; margin:10px 0 12px; max-width:18ch; }
.ma-response-form-card > header > p { color:rgba(255,255,255,.72); margin:0; }
.ma-response-form-card > header > p strong { color:#fff; }
.ma-response-intro { background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.12); border-radius:12px; color:rgba(255,255,255,.82); line-height:1.55; margin-top:18px; max-width:760px; padding:13px; }
.ma-response-request-summary { background:var(--ma-cream); display:grid; gap:10px; grid-template-columns:repeat(2,minmax(0,1fr)); padding:18px clamp(20px,5vw,52px); }
.ma-response-request-summary > div { background:#fff; border:1px solid var(--ma-line); border-radius:12px; padding:11px; }
.ma-response-request-summary > div.is-wide { grid-column:1/-1; }
.ma-response-request-summary span,.ma-response-request-summary strong { display:block; }
.ma-response-request-summary span { color:var(--ma-muted); font-size:8px; font-weight:800; text-transform:uppercase; }
.ma-response-request-summary strong { font-size:11px; margin-top:4px; }
.ma-response-request-summary p { color:var(--ma-muted); font-size:11px; line-height:1.5; margin:5px 0 0; }
.ma-response-form { display:grid; gap:16px; padding:clamp(22px,5vw,52px); }
.ma-response-form label { color:var(--ma-ink-3); display:grid; font-size:11px; font-weight:750; gap:7px; }
.ma-response-form input,.ma-response-form select,.ma-response-form textarea { background:#fff; border:1px solid var(--ma-line-strong); border-radius:11px; color:var(--ma-ink); font:inherit; min-height:46px; padding:10px 11px; width:100%; }
.ma-response-form textarea { resize:vertical; }
.ma-response-two-col { display:grid; gap:13px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.ma-response-privacy { align-items:start; background:var(--ma-teal-pale); border:1px solid #b9dde4; border-radius:13px; display:grid; gap:10px; grid-template-columns:36px minmax(0,1fr); padding:12px; }
.ma-response-privacy > span { align-items:center; background:#fff; border-radius:10px; color:var(--ma-teal-dark); display:flex; height:36px; justify-content:center; }
.ma-response-privacy p { color:var(--ma-muted); font-size:10px; line-height:1.5; margin:0; }
.ma-response-confirm { align-items:start!important; background:var(--ma-cream); border-radius:12px; display:grid!important; gap:10px!important; grid-template-columns:20px minmax(0,1fr); padding:12px; }
.ma-response-confirm input { height:18px; min-height:0; margin-top:1px; width:18px; }
.ma-response-form > .ma-button { min-height:50px; width:100%; }
.ma-response-form-card > footer { align-items:center; border-top:1px solid var(--ma-line); color:var(--ma-muted); display:flex; font-size:9px; justify-content:space-between; padding:12px clamp(20px,5vw,52px); }
.ma-response-question-set { border:0; display:grid; gap:12px; margin:0; padding:0; }
.ma-response-question-set legend { font-size:14px; font-weight:850; margin-bottom:4px; }
.ma-response-question { border:1px solid var(--ma-line); border-radius:14px; display:grid; gap:12px; padding:13px; }
.ma-response-question > div:first-child { align-items:start; display:grid; gap:9px; grid-template-columns:30px minmax(0,1fr); }
.ma-response-question > div:first-child > span { align-items:center; background:var(--ma-teal-soft); border-radius:9px; color:var(--ma-teal-dark); display:flex; font-size:10px; font-weight:850; height:30px; justify-content:center; }
.ma-response-question > div:first-child strong { line-height:1.45; }
.ma-response-scale { display:grid; gap:7px; grid-template-columns:repeat(5,minmax(0,1fr)); }
.ma-response-scale label { cursor:pointer; display:block; }
.ma-response-scale input { height:1px; opacity:0; position:absolute; width:1px; }
.ma-response-scale label > span { align-items:center; background:var(--ma-cream); border:2px solid transparent; border-radius:10px; display:flex; flex-direction:column; gap:3px; justify-content:center; min-height:74px; padding:7px 4px; text-align:center; }
.ma-response-scale b { color:var(--ma-teal-dark); font-size:16px; }
.ma-response-scale small { color:var(--ma-muted); font-size:7px; line-height:1.2; }
.ma-response-scale input:checked + span { background:var(--ma-teal-soft); border-color:var(--ma-teal); box-shadow:0 0 0 3px rgba(7,148,177,.1); }
.ma-response-scale input:focus-visible + span { outline:3px solid rgba(7,148,177,.25); outline-offset:2px; }
.ma-response-footer { color:var(--ma-muted); display:flex; font-size:9px; gap:14px; justify-content:center; padding:15px; }

@media (max-width:1180px) {
  .ma-training-capability-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ma-training-export-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:960px) {
  .ma-training-hero { grid-template-columns:1fr; }
  .ma-training-progress-summary { max-width:520px; }
  .ma-training-due-card,.ma-training-checks-card,.ma-training-rotations-card,.ma-training-supervisors-card,.ma-training-milestones-card,.ma-training-mara-card { grid-column:1/-1; }
  .ma-training-review-layout { grid-template-columns:1fr; }
}
@media (max-width:820px) {
  .ma-mobile-nav { grid-template-columns:repeat(6,minmax(0,1fr)); }
  .ma-mobile-nav__item { font-size:8px; }
  .ma-training-page { gap:13px; }
  .ma-training-hero { border-radius:20px; gap:20px; min-height:0; padding:22px 18px; }
  .ma-training-hero h2 { font-size:clamp(2rem,10vw,3.2rem); max-width:14ch; }
  .ma-training-hero__actions { display:grid; grid-template-columns:1fr 1fr; }
  .ma-training-hero__actions .ma-button { min-height:46px; width:100%; }
  .ma-training-hero__actions .ma-button:first-child { grid-column:1/-1; }
  .ma-training-progress-summary { grid-template-columns:92px minmax(0,1fr); padding:14px; }
  .ma-training-progress-ring { height:92px; }
  .ma-training-programme-bar { align-items:stretch; flex-direction:column; }
  .ma-training-programme-bar > label { max-width:none; }
  .ma-training-programme-bar > div { display:grid; grid-template-columns:1fr 1fr; }
  .ma-training-programme-bar .ma-button { min-height:44px; width:100%; }
  .ma-training-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ma-training-tabs { display:flex; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x proximity; scrollbar-width:none; }
  .ma-training-tabs::-webkit-scrollbar { display:none; }
  .ma-training-tabs button { flex:0 0 auto; min-width:112px; scroll-snap-align:start; }
  .ma-training-empty { grid-template-columns:1fr; text-align:center; }
  .ma-training-empty__mark { height:100px; justify-self:center; width:100px; }
  .ma-training-empty ol { text-align:left; }
  .ma-training-section-heading { align-items:stretch; flex-direction:column; }
  .ma-training-section-heading > div:last-child { display:grid; grid-template-columns:1fr 1fr; }
  .ma-training-section-heading .ma-button { min-height:44px; width:100%; }
  .ma-training-filter-bar { grid-template-columns:1fr 1fr; }
  .ma-training-filter-bar > label:first-child { grid-column:1/-1; }
  .ma-training-filter-bar .ma-text-button { min-height:44px; }
  .ma-training-capability-grid,.ma-training-feedback-grid,.ma-training-privacy-grid { grid-template-columns:1fr; }
  .ma-training-assessment-card { grid-template-columns:68px minmax(0,1fr); padding:12px; }
  .ma-training-assessment-card__type { min-height:96px; padding:8px; }
  .ma-training-logbook-head { display:none; }
  .ma-training-logbook-table > button { align-items:start; grid-template-columns:minmax(0,1fr) auto; padding:12px; }
  .ma-training-logbook-table [role="cell"] { grid-column:1; }
  .ma-training-logbook-table [role="cell"]:last-child { grid-column:2; grid-row:1; }
  .ma-training-export-list { grid-template-columns:1fr; }
  .ma-training-panel { height:var(--ma-visual-viewport-height,100dvh); max-width:none; width:100vw; }
  .ma-training-panel > header { padding:17px 17px 14px; }
  .ma-training-editor-scroll { padding:14px 17px 24px; }
  .ma-training-editor-form > footer { display:grid; grid-template-columns:1fr 1fr; padding:10px 17px max(10px,env(safe-area-inset-bottom)); }
  .ma-training-editor-form > footer .ma-button { min-height:46px; width:100%; }
  .ma-training-form-grid,.ma-training-link-form { grid-template-columns:1fr; }
  .ma-training-field-wide { grid-column:auto; }
  .ma-training-link-form .ma-button { min-height:46px; width:100%; }
  .ma-training-danger-zone { grid-template-columns:1fr; }
  .ma-training-danger-zone .ma-button { width:100%; }
  .ma-training-mara-modes { grid-template-columns:1fr; }
  .ma-training-score-list > div { grid-template-columns:1fr 32px; }
  .ma-training-score-list > div > div { grid-column:1; }
  .ma-training-score-list > strong { grid-column:2; grid-row:1/span 2; }
  .ma-training-form-section input,.ma-training-form-section select,.ma-training-form-section textarea,.ma-training-filter-bar input,.ma-training-filter-bar select { font-size:16px; }
  .ma-response-shell { padding:12px max(10px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left)); }
  .ma-response-brand { margin:4px 6px 13px; }
  .ma-response-card { border-radius:18px; }
  .ma-response-form-card > header { padding:26px 20px; }
  .ma-response-request-summary,.ma-response-form { padding:18px; }
  .ma-response-two-col { grid-template-columns:1fr; }
  .ma-response-scale { grid-template-columns:1fr; }
  .ma-response-scale label > span { align-items:center; flex-direction:row; justify-content:flex-start; min-height:48px; padding:7px 12px; text-align:left; }
  .ma-response-scale b { align-items:center; background:#fff; border-radius:8px; display:flex; height:30px; justify-content:center; min-width:30px; }
  .ma-response-scale small { font-size:9px; }
  .ma-response-form input,.ma-response-form select,.ma-response-form textarea { font-size:16px; }
}
@media (max-width:520px) {
  .ma-training-hero__actions,.ma-training-programme-bar > div,.ma-training-kpi-grid,.ma-training-section-heading > div:last-child,.ma-training-editor-form > footer { grid-template-columns:1fr; }
  .ma-training-hero__actions .ma-button:first-child { grid-column:auto; }
  .ma-training-progress-summary { grid-template-columns:78px minmax(0,1fr); }
  .ma-training-progress-ring { height:78px; }
  .ma-training-due-list li { grid-template-columns:32px minmax(0,1fr); }
  .ma-training-due-list .ma-text-button { grid-column:2; justify-self:start; }
  .ma-training-row-list > button { grid-template-columns:38px minmax(0,1fr); }
  .ma-training-row-list > button > b { grid-column:2; justify-self:start; }
  .ma-training-filter-bar { grid-template-columns:1fr; }
  .ma-training-filter-bar > label:first-child { grid-column:auto; }
  .ma-training-assessment-card { grid-template-columns:1fr; }
  .ma-training-assessment-card__type { align-items:center; flex-direction:row; gap:8px; justify-content:flex-start; min-height:58px; }
  .ma-training-assessment-card__type small { margin:0; text-align:left; }
  .ma-training-feedback-actions { display:grid; }
  .ma-training-feedback-actions .ma-button { width:100%; }
  .ma-training-review-list button { grid-template-columns:1fr auto; }
  .ma-training-review-date { grid-column:1/-1; }
  .ma-response-request-summary { grid-template-columns:1fr; }
  .ma-response-request-summary > div.is-wide { grid-column:auto; }
  .ma-response-form-card > footer,.ma-response-footer { align-items:flex-start; flex-direction:column; }
}
@media (max-height:520px) and (orientation:landscape) {
  .ma-training-panel > header { padding-bottom:9px; padding-top:9px; }
  .ma-training-editor-scroll { padding-top:10px; }
  .ma-training-form-section { padding:12px; }
}
@media (prefers-reduced-motion:reduce) {
  .ma-training-row-list > button:hover { transform:none; }
  .ma-training-panel-loading span,.ma-response-loading > span { animation:none; }
}

.ma-home-training-card {
  align-items:center;
  background:linear-gradient(145deg,var(--ma-paper),var(--ma-teal-pale));
  border-color:#cde4e8;
  display:grid;
  gap:24px;
  grid-template-columns:minmax(0,1fr) auto;
  margin-top:-2px;
  padding:24px 26px;
}
.ma-home-training-card h3 { font-size:clamp(1.25rem,2.4vw,1.8rem); margin:7px 0 8px; }
.ma-home-training-card p { color:var(--ma-muted); line-height:1.55; margin:0; }
.ma-home-training-card__progress { align-items:center; display:flex; gap:14px; }
.ma-home-training-card__progress > span { align-items:center; background:conic-gradient(var(--ma-teal) var(--ma-home-training-progress,0deg),#dce9ea 0); border-radius:50%; display:flex; height:76px; justify-content:center; position:relative; width:76px; }
.ma-home-training-card__progress > span::after { background:white; border-radius:50%; content:""; inset:7px; position:absolute; }
.ma-home-training-card__progress b { color:var(--ma-ink); font-size:.82rem; position:relative; z-index:1; }
@media (max-width:820px) {
  .ma-home-training-card { align-items:stretch; grid-template-columns:1fr; }
  .ma-home-training-card__progress { justify-content:space-between; }
}

/* -------------------------------------------------------------------------
 * Merentra App 2.2.0 — Pass 25 live acceptance and founding-cohort remediation.
 * Source-aware opportunity discovery, member-controlled application planning,
 * private trusted feeds and a compact five-destination mobile shell.
 * ---------------------------------------------------------------------- */

.ma-opportunity-page {
  display: grid;
  gap: 22px;
  min-width: 0;
}

.ma-opportunity-hero {
  align-items: stretch;
  background:
    radial-gradient(circle at 92% 14%, rgba(7, 148, 177, .24), transparent 34%),
    radial-gradient(circle at 8% 96%, rgba(231, 105, 75, .16), transparent 30%),
    var(--ma-ink);
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 28px;
  box-shadow: var(--ma-shadow-md);
  color: var(--ma-white);
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, .85fr);
  overflow: hidden;
  padding: clamp(24px, 4vw, 48px);
  position: relative;
}

.ma-opportunity-hero::after {
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 999px;
  content: "";
  height: 290px;
  pointer-events: none;
  position: absolute;
  right: -120px;
  top: -150px;
  width: 290px;
}

.ma-opportunity-hero__copy,
.ma-opportunity-hero__summary {
  min-width: 0;
  position: relative;
  z-index: 1;
}

.ma-opportunity-hero .ma-eyebrow {
  color: #8ee2ef;
  margin-bottom: 12px;
}

.ma-opportunity-hero h2 {
  color: var(--ma-white);
  font-size: clamp(2rem, 4.2vw, 4.2rem);
  letter-spacing: -.052em;
  line-height: .99;
  margin: 0;
  max-width: 920px;
}

.ma-opportunity-hero__copy > p {
  color: rgba(255,255,255,.77);
  font-size: clamp(1rem, 1.5vw, 1.16rem);
  line-height: 1.68;
  margin: 22px 0 0;
  max-width: 780px;
}

.ma-opportunity-hero__actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}

.ma-opportunity-hero .ma-button--primary {
  background: var(--ma-teal);
  border-color: var(--ma-teal);
  color: var(--ma-white) !important;
}

.ma-opportunity-hero .ma-button--primary:hover:not(:disabled) {
  background: #08a5c5;
  border-color: #08a5c5;
}

.ma-opportunity-hero .ma-button--secondary {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.24);
  color: var(--ma-white) !important;
}

.ma-opportunity-hero .ma-button--secondary:hover:not(:disabled) {
  background: rgba(255,255,255,.15);
  border-color: rgba(255,255,255,.42);
}

.ma-opportunity-hero__summary {
  align-content: center;
  display: grid;
  gap: 10px;
}

.ma-opportunity-hero__summary article {
  align-items: center;
  backdrop-filter: blur(12px);
  background: rgba(255,255,255,.075);
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 18px;
  display: grid;
  gap: 1px 13px;
  grid-template-columns: auto 1fr;
  padding: 17px 18px;
}

.ma-opportunity-hero__summary article > span {
  color: #8ee2ef;
  font-size: 1.8rem;
  font-weight: 820;
  grid-row: 1 / span 2;
  letter-spacing: -.04em;
  min-width: 42px;
}

.ma-opportunity-hero__summary strong {
  color: var(--ma-white);
  font-size: .94rem;
}

.ma-opportunity-hero__summary small {
  color: rgba(255,255,255,.62);
  font-size: .75rem;
  line-height: 1.35;
}

.ma-opportunity-tabs {
  background: rgba(255,255,255,.82);
  border: 1px solid var(--ma-line);
  border-radius: 16px;
  box-shadow: var(--ma-shadow-xs);
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 6px;
  position: sticky;
  top: 12px;
  z-index: 8;
}

.ma-opportunity-tabs button {
  align-items: center;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 11px;
  color: var(--ma-muted);
  cursor: pointer;
  display: flex;
  font-weight: 730;
  gap: 9px;
  justify-content: center;
  min-height: 46px;
  padding: 9px 13px;
}

.ma-opportunity-tabs button small {
  align-items: center;
  background: var(--ma-cream);
  border-radius: 999px;
  color: var(--ma-muted);
  display: inline-flex;
  font-size: .7rem;
  justify-content: center;
  min-height: 22px;
  min-width: 22px;
  padding: 0 6px;
}

.ma-opportunity-tabs button:hover {
  background: var(--ma-teal-pale);
  color: var(--ma-ink);
}

.ma-opportunity-tabs button.is-active {
  background: var(--ma-ink);
  color: var(--ma-white);
}

.ma-opportunity-tabs button.is-active small {
  background: rgba(255,255,255,.13);
  color: var(--ma-white);
}

.ma-opportunity-list-section,
.ma-opportunity-applications,
.ma-opportunity-plan {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.ma-opportunity-filters {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 16px;
  box-shadow: var(--ma-shadow-xs);
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(240px, 1fr) minmax(150px, auto) minmax(165px, auto) auto auto;
  padding: 12px;
}

.ma-opportunity-filters label,
.ma-opportunity-search {
  min-width: 0;
}

.ma-opportunity-filters :is(input,select) {
  background: var(--ma-paper);
  border: 1px solid var(--ma-line-strong);
  border-radius: 10px;
  color: var(--ma-ink);
  min-height: 46px;
  padding: 0 12px;
  width: 100%;
}

.ma-opportunity-search input {
  background-image: linear-gradient(transparent, transparent);
  padding-left: 14px;
}

.ma-opportunity-boundary-strip {
  align-items: center;
  background: var(--ma-paper);
  border: 1px solid var(--ma-line);
  border-left: 4px solid var(--ma-teal);
  border-radius: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  padding: 12px 15px;
}

.ma-opportunity-boundary-strip span {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 999px;
  color: var(--ma-ink-3);
  font-size: .72rem;
  font-weight: 760;
  padding: 6px 9px;
}

.ma-opportunity-boundary-strip span:nth-child(1) { border-color: #b8dce2; }
.ma-opportunity-boundary-strip span:nth-child(2) { border-color: #f2c8bb; }
.ma-opportunity-boundary-strip span:nth-child(3) { border-color: #b8d7cb; }
.ma-opportunity-boundary-strip span:nth-child(4) { border-color: #d5cae8; }

.ma-opportunity-boundary-strip p {
  color: var(--ma-muted);
  flex: 1 1 320px;
  font-size: .78rem;
  line-height: 1.45;
  margin: 0 0 0 4px;
}

.ma-opportunity-card-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ma-opportunity-card-grid--applications {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ma-opportunity-card {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 20px;
  box-shadow: 0 10px 30px rgba(16,24,32,.05);
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  position: relative;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.ma-opportunity-card::before {
  background: var(--ma-line-strong);
  content: "";
  height: 4px;
  inset: 0 0 auto;
  position: absolute;
}

.ma-opportunity-card.is-strong::before { background: var(--ma-positive); }
.ma-opportunity-card.is-relevant::before { background: var(--ma-teal); }
.ma-opportunity-card.is-explore::before { background: var(--ma-warning); }

.ma-opportunity-card:hover {
  border-color: #bfd3d6;
  box-shadow: 0 18px 44px rgba(16,24,32,.09);
  transform: translateY(-2px);
}

.ma-opportunity-card > header {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding: 18px 20px 0;
}

.ma-opportunity-card__type {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.ma-opportunity-card__type > span,
.ma-opportunity-card__status {
  background: var(--ma-teal-soft);
  border-radius: 999px;
  color: var(--ma-teal-dark);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .03em;
  padding: 6px 9px;
  text-transform: uppercase;
}

.ma-opportunity-card__type small {
  color: var(--ma-muted);
  font-size: .72rem;
}

.ma-opportunity-freshness {
  align-items: center;
  border: 1px solid var(--ma-line);
  border-radius: 999px;
  color: var(--ma-muted);
  display: inline-flex;
  font-size: .68rem;
  font-weight: 740;
  line-height: 1.2;
  max-width: 48%;
  padding: 6px 8px;
  text-align: right;
}

.ma-opportunity-freshness.is-fresh { background: var(--ma-positive-soft); border-color: #b9dfd1; color: #126b57; }
.ma-opportunity-freshness.is-closing_soon { background: var(--ma-warning-soft); border-color: #ecd29f; color: #8c5815; }
.ma-opportunity-freshness.is-stale,
.ma-opportunity-freshness.is-needs_review,
.ma-opportunity-freshness.is-unknown { background: var(--ma-danger-soft); border-color: #efc6c8; color: var(--ma-danger); }

.ma-opportunity-card__body {
  display: grid;
  flex: 1;
  gap: 15px;
  padding: 17px 20px 15px;
}

.ma-opportunity-card__headline {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.ma-opportunity-card__headline h3 {
  font-size: clamp(1.12rem, 2vw, 1.35rem);
  line-height: 1.16;
  margin: 0 0 6px;
  overflow-wrap: anywhere;
}

.ma-opportunity-card__headline p {
  color: var(--ma-muted);
  font-size: .8rem;
  line-height: 1.45;
  margin: 0;
  overflow-wrap: anywhere;
}

.ma-opportunity-verification {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  align-items: center;
  margin-top: 10px;
}

.ma-opportunity-verification span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 9px;
  border: 1px solid color-mix(in srgb, var(--ma-warning, #a15c00) 34%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--ma-warning-soft, #fff4dd) 76%, transparent);
  color: var(--ma-text, #172126);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .01em;
}

.ma-opportunity-verification small {
  color: var(--ma-text-muted, #607078);
  font-size: 12px;
  font-weight: 650;
}


.ma-opportunity-score {
  align-items: baseline;
  background: var(--ma-cream);
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  display: grid;
  grid-template-columns: auto auto;
  min-width: 72px;
  padding: 9px 10px 8px;
  text-align: center;
}

.ma-opportunity-score strong {
  color: var(--ma-ink);
  font-size: 1.35rem;
  letter-spacing: -.04em;
}

.ma-opportunity-score > span {
  color: var(--ma-muted);
  font-size: .66rem;
}

.ma-opportunity-score small {
  color: var(--ma-muted);
  font-size: .62rem;
  font-weight: 760;
  grid-column: 1 / -1;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.ma-opportunity-card__summary {
  color: var(--ma-ink-3);
  display: -webkit-box;
  font-size: .88rem;
  line-height: 1.58;
  margin: 0;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.ma-opportunity-card__summary.is-muted { color: var(--ma-muted); font-style: italic; }

.ma-opportunity-facts {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ma-opportunity-facts > div {
  background: var(--ma-paper);
  border: 1px solid var(--ma-line);
  border-radius: 10px;
  min-width: 0;
  padding: 8px 9px;
}

.ma-opportunity-facts span,
.ma-opportunity-facts small {
  color: var(--ma-muted);
  display: block;
  font-size: .65rem;
  line-height: 1.35;
}

.ma-opportunity-facts strong {
  color: var(--ma-ink-2);
  display: block;
  font-size: .78rem;
  line-height: 1.35;
  margin-top: 2px;
  overflow-wrap: anywhere;
}

.ma-opportunity-explanation,
.ma-opportunity-uncertainty {
  border-radius: 12px;
  display: grid;
  gap: 7px;
  padding: 11px 12px;
}

.ma-opportunity-explanation {
  background: var(--ma-teal-pale);
  border: 1px solid #cce8ec;
}

.ma-opportunity-uncertainty {
  background: var(--ma-warning-soft);
  border: 1px solid #ecd8ae;
}

.ma-opportunity-explanation > span,
.ma-opportunity-uncertainty > span {
  color: var(--ma-ink-3);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.ma-opportunity-explanation ul,
.ma-opportunity-uncertainty ul {
  color: var(--ma-ink-3);
  display: grid;
  font-size: .75rem;
  gap: 4px;
  line-height: 1.4;
  margin: 0;
  padding-left: 17px;
}

.ma-opportunity-card__actions {
  align-items: center;
  border-top: 1px solid var(--ma-line);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: space-between;
  padding: 13px 20px 17px;
}

.ma-opportunity-card__actions > div {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.ma-opportunity-card__actions .ma-button,
.ma-opportunity-card__actions .ma-text-button {
  min-height: 42px;
}

.ma-opportunity-empty {
  align-items: center;
  background: var(--ma-white);
  border: 1px dashed var(--ma-line-strong);
  border-radius: 20px;
  display: flex;
  gap: 20px;
  justify-content: center;
  min-height: 260px;
  padding: 32px;
  text-align: left;
}

.ma-opportunity-empty > div:first-child {
  align-items: center;
  background: var(--ma-teal-soft);
  border-radius: 24px;
  color: var(--ma-teal-dark);
  display: flex;
  flex: 0 0 72px;
  font-size: 2.3rem;
  height: 72px;
  justify-content: center;
}

.ma-opportunity-empty h3 { margin: 0 0 7px; }
.ma-opportunity-empty p { color: var(--ma-muted); line-height: 1.6; margin: 0 0 16px; max-width: 620px; }
.ma-opportunity-empty > div:last-child > div { display: flex; flex-wrap: wrap; gap: 8px; }
.ma-opportunity-empty--compact { min-height: 170px; }

.ma-opportunity-applications__head,
.ma-opportunity-sources > header,
.ma-opportunity-preferences > header,
.ma-opportunity-mara-plan > header {
  align-items: flex-start;
  display: flex;
  gap: 16px;
  justify-content: space-between;
}

.ma-opportunity-applications__head h3,
.ma-opportunity-sources h3,
.ma-opportunity-preferences h3,
.ma-opportunity-mara-plan h3 {
  margin: 3px 0 6px;
}

.ma-opportunity-applications__head p,
.ma-opportunity-sources header p,
.ma-opportunity-preferences header p,
.ma-opportunity-mara-plan header p {
  color: var(--ma-muted);
  line-height: 1.55;
  margin: 0;
  max-width: 720px;
}

.ma-opportunity-due-strip {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ma-opportunity-due-strip article {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  display: grid;
  gap: 2px 10px;
  grid-template-columns: auto 1fr;
  min-width: 0;
  padding: 12px 14px;
}

.ma-opportunity-due-strip article > span {
  align-items: center;
  background: var(--ma-warning-soft);
  border-radius: 10px;
  color: var(--ma-warning);
  display: flex;
  font-size: .76rem;
  font-weight: 800;
  grid-row: 1 / span 2;
  height: 40px;
  justify-content: center;
  min-width: 48px;
  padding: 0 6px;
}

.ma-opportunity-due-strip strong { font-size: .82rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ma-opportunity-due-strip small { color: var(--ma-muted); font-size: .7rem; }

.ma-opportunity-application-layout {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.6fr) minmax(290px, .8fr);
}

.ma-opportunity-task-board {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 18px;
  min-width: 0;
  padding: 18px;
}

.ma-opportunity-task-board > header {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  margin-bottom: 12px;
}

.ma-opportunity-task-board h3 { font-size: 1rem; margin: 0; }

.ma-opportunity-board,
.ma-opportunity-panel-tasks {
  display: grid;
  gap: 8px;
}

.ma-opportunity-board article,
.ma-opportunity-panel-tasks article {
  align-items: stretch;
  background: var(--ma-paper);
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  min-width: 0;
  overflow: hidden;
}

.ma-opportunity-panel-tasks article { grid-template-columns: auto 1fr; }

.ma-opportunity-task-check {
  align-items: center;
  align-self: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line-strong);
  border-radius: 999px;
  color: transparent;
  cursor: pointer;
  display: flex;
  height: 30px;
  justify-content: center;
  margin-left: 10px;
  width: 30px;
}

.ma-opportunity-board article.is-completed .ma-opportunity-task-check,
.ma-opportunity-panel-tasks article.is-completed .ma-opportunity-task-check {
  background: var(--ma-positive);
  border-color: var(--ma-positive);
  color: var(--ma-white);
}

.ma-opportunity-board article > button:not(.ma-opportunity-task-check),
.ma-opportunity-panel-tasks article > button:not(.ma-opportunity-task-check) {
  background: transparent;
  border: 0;
  color: var(--ma-ink);
  cursor: pointer;
  min-width: 0;
  padding: 11px;
  text-align: left;
}

.ma-opportunity-board article strong,
.ma-opportunity-panel-tasks article strong { display: block; font-size: .82rem; overflow-wrap: anywhere; }
.ma-opportunity-board article small,
.ma-opportunity-panel-tasks article small { color: var(--ma-muted); display: block; font-size: .68rem; margin-top: 3px; }

.ma-opportunity-plan-grid {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ma-opportunity-preferences,
.ma-opportunity-sources,
.ma-opportunity-mara-plan {
  min-width: 0;
  padding: 22px;
}

.ma-opportunity-preferences > footer {
  border-top: 1px solid var(--ma-line);
  margin-top: 18px;
  padding-top: 16px;
}

.ma-opportunity-check-grid {
  border: 0;
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  min-width: 0;
  padding: 0;
}

.ma-opportunity-check-grid legend {
  color: var(--ma-ink-3);
  font-size: .78rem;
  font-weight: 760;
  grid-column: 1 / -1;
  margin-bottom: 2px;
}

.ma-opportunity-check-grid label {
  align-items: center;
  background: var(--ma-paper);
  border: 1px solid var(--ma-line);
  border-radius: 10px;
  cursor: pointer;
  display: flex;
  gap: 8px;
  min-height: 42px;
  padding: 8px 10px;
}

.ma-opportunity-check-grid label:has(input:checked) {
  background: var(--ma-teal-soft);
  border-color: #aad7df;
}

.ma-opportunity-check-grid input { accent-color: var(--ma-teal); flex: 0 0 auto; height: 18px; width: 18px; }
.ma-opportunity-check-grid span { color: var(--ma-ink-2); font-size: .76rem; font-weight: 650; }

.ma-opportunity-source-list {
  display: grid;
  gap: 9px;
  margin-top: 18px;
}

.ma-opportunity-source-list article {
  align-items: center;
  background: var(--ma-paper);
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  min-width: 0;
  padding: 12px;
}

.ma-opportunity-source-list article > div:first-child { min-width: 0; }
.ma-opportunity-source-list article > div:last-child { align-items: center; display: flex; flex: 0 0 auto; gap: 6px; }
.ma-opportunity-source-list strong { display: block; font-size: .86rem; margin-top: 4px; overflow-wrap: anywhere; }
.ma-opportunity-source-list p { color: var(--ma-muted); font-size: .73rem; margin: 3px 0; overflow-wrap: anywhere; }
.ma-opportunity-source-list small { color: var(--ma-muted); display: block; font-size: .67rem; line-height: 1.4; }
.ma-opportunity-source-list em { color: var(--ma-danger); display: block; font-size: .67rem; font-style: normal; margin-top: 4px; }

.ma-source-state {
  background: var(--ma-positive-soft);
  border-radius: 999px;
  color: var(--ma-positive);
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .04em;
  padding: 4px 7px;
  text-transform: uppercase;
}

.ma-opportunity-source-list article.is-paused .ma-source-state { background: var(--ma-warning-soft); color: var(--ma-warning); }

.ma-opportunity-source-empty {
  align-items: center;
  background: var(--ma-paper);
  border: 1px dashed var(--ma-line-strong);
  border-radius: 14px;
  display: grid;
  justify-items: center;
  margin-top: 18px;
  padding: 24px;
  text-align: center;
}

.ma-opportunity-source-empty > span { color: var(--ma-teal); font-size: 2rem; }
.ma-opportunity-source-empty h4 { margin: 6px 0; }
.ma-opportunity-source-empty p { color: var(--ma-muted); margin: 0; }

.ma-opportunity-feed-contract {
  border-top: 1px solid var(--ma-line);
  margin-top: 18px;
  padding-top: 14px;
}

.ma-opportunity-feed-contract summary { color: var(--ma-ink-2); cursor: pointer; font-size: .78rem; font-weight: 760; }
.ma-opportunity-feed-contract pre { background: var(--ma-ink); border-radius: 10px; color: #cfeff3; font-size: .68rem; line-height: 1.5; margin: 12px 0; max-width: 100%; overflow: auto; padding: 12px; white-space: pre-wrap; }
.ma-opportunity-feed-contract p { color: var(--ma-muted); font-size: .72rem; line-height: 1.5; margin: 0; }

.ma-opportunity-mara-plan { display: grid; gap: 16px; }

.ma-opportunity-mara-modes {
  background: var(--ma-cream);
  border-radius: 12px;
  display: grid;
  gap: 5px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 5px;
}

.ma-opportunity-mara-modes button {
  background: transparent;
  border: 1px solid transparent;
  border-radius: 9px;
  color: var(--ma-muted);
  cursor: pointer;
  font-size: .76rem;
  font-weight: 740;
  min-height: 42px;
  padding: 8px;
}

.ma-opportunity-mara-modes button.is-active { background: var(--ma-white); border-color: var(--ma-line); box-shadow: var(--ma-shadow-xs); color: var(--ma-ink); }

.ma-opportunity-mara-plan form { display: grid; gap: 13px; }
.ma-opportunity-mara-plan form > label { display: grid; gap: 6px; }
.ma-opportunity-mara-plan form > label > span { color: var(--ma-ink-3); font-size: .78rem; font-weight: 750; }
.ma-opportunity-mara-plan :is(select,textarea) { background: var(--ma-paper); border: 1px solid var(--ma-line-strong); border-radius: 11px; color: var(--ma-ink); padding: 11px; width: 100%; }

.ma-opportunity-mara-locked,
.ma-opportunity-readonly-note,
.ma-opportunity-boundary-card {
  align-items: flex-start;
  background: var(--ma-teal-pale);
  border: 1px solid #cce8ec;
  border-radius: 14px;
  display: flex;
  gap: 12px;
  padding: 14px;
}

.ma-opportunity-mara-locked strong,
.ma-opportunity-readonly-note strong,
.ma-opportunity-boundary-card strong { color: var(--ma-ink-2); display: block; font-size: .84rem; }
.ma-opportunity-mara-locked p,
.ma-opportunity-readonly-note p,
.ma-opportunity-boundary-card p { color: var(--ma-muted); font-size: .75rem; line-height: 1.5; margin: 4px 0 0; }

.ma-opportunity-mara-result {
  background: var(--ma-ink);
  border-radius: 18px;
  color: rgba(255,255,255,.82);
  display: grid;
  gap: 15px;
  padding: 20px;
}

.ma-opportunity-mara-result > header { align-items: start; display: flex; gap: 12px; justify-content: space-between; }
.ma-opportunity-mara-result header > div:last-child { display: flex; gap: 6px; }
.ma-opportunity-mara-result header span { color: #8ee2ef; font-size: .66rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.ma-opportunity-mara-result h4 { color: var(--ma-white); margin: 4px 0 0; }
.ma-opportunity-mara-result > p { line-height: 1.6; margin: 0; }
.ma-opportunity-mara-result section { background: rgba(255,255,255,.065); border: 1px solid rgba(255,255,255,.1); border-radius: 12px; padding: 12px; }
.ma-opportunity-mara-result h5 { color: var(--ma-white); margin: 0 0 8px; }
.ma-opportunity-mara-result ul { display: grid; gap: 5px; margin: 0; padding-left: 18px; }
.ma-opportunity-mara-result footer { border-top: 1px solid rgba(255,255,255,.12); display: grid; gap: 3px; padding-top: 12px; }
.ma-opportunity-mara-result footer strong { color: #8ee2ef; font-size: .75rem; }
.ma-opportunity-mara-result footer span { color: rgba(255,255,255,.6); font-size: .7rem; }
.ma-opportunity-mara-result .ma-icon-button { color: var(--ma-white); }
.ma-opportunity-mara-result .ma-button--secondary { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.2); color: var(--ma-white) !important; }

/* Focused panel */
.ma-opportunity-panel-backdrop {
  background: rgba(16,24,32,.58);
  inset: 0;
  position: fixed;
  z-index: 10020;
}

.ma-opportunity-panel {
  background: var(--ma-cream);
  box-shadow: -24px 0 70px rgba(16,24,32,.24);
  display: flex;
  flex-direction: column;
  height: 100dvh;
  inset: 0 0 0 auto;
  max-width: min(760px, 94vw);
  overflow: hidden;
  position: fixed;
  width: 100%;
  z-index: 10021;
}

.ma-opportunity-panel > header {
  align-items: center;
  background: var(--ma-white);
  border-bottom: 1px solid var(--ma-line);
  display: flex;
  flex: 0 0 auto;
  gap: 16px;
  justify-content: space-between;
  padding: 17px 20px;
}

.ma-opportunity-panel > header h2 { font-size: 1.32rem; margin: 3px 0 0; }
.ma-opportunity-panel > header .ma-eyebrow { margin: 0; }

.ma-opportunity-form {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
}

.ma-opportunity-panel__scroll {
  display: grid;
  flex: 1;
  gap: 14px;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 18px 20px 28px;
}

.ma-opportunity-form > footer {
  align-items: center;
  background: var(--ma-white);
  border-top: 1px solid var(--ma-line);
  display: flex;
  flex: 0 0 auto;
  gap: 9px;
  justify-content: flex-end;
  padding: 14px 20px max(14px, env(safe-area-inset-bottom));
}

.ma-opportunity-form > .ma-form-message { margin: 0 20px 8px; }

.ma-opportunity-form-section {
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 17px;
  display: grid;
  gap: 16px;
  min-width: 0;
  padding: 18px;
}

.ma-opportunity-form-section__head {
  align-items: flex-start;
  display: grid;
  gap: 11px;
  grid-template-columns: auto 1fr;
}

.ma-opportunity-form-section__head > span {
  align-items: center;
  background: var(--ma-teal-soft);
  border-radius: 10px;
  color: var(--ma-teal-dark);
  display: flex;
  font-size: .78rem;
  font-weight: 820;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.ma-opportunity-form-section__head h3 { font-size: .98rem; margin: 1px 0 4px; }
.ma-opportunity-form-section__head p { color: var(--ma-muted); font-size: .74rem; line-height: 1.45; margin: 0; }

.ma-opportunity-form .ma-form-grid,
.ma-opportunity-form .ma-form-grid--2 { gap: 14px; }
.ma-opportunity-form .ma-field--span-2 { grid-column: 1 / -1; }
.ma-opportunity-form :is(input,select,textarea),
.ma-opportunity-link-form :is(select,input) { background: var(--ma-paper); }

.ma-opportunity-link-list {
  display: grid;
  gap: 7px;
}

.ma-opportunity-link-list article {
  align-items: center;
  background: var(--ma-paper);
  border: 1px solid var(--ma-line);
  border-radius: 11px;
  display: grid;
  gap: 9px;
  grid-template-columns: auto 1fr auto;
  min-width: 0;
  padding: 9px;
}

.ma-opportunity-link-list article > span {
  background: var(--ma-teal-soft);
  border-radius: 8px;
  color: var(--ma-teal-dark);
  font-size: .62rem;
  font-weight: 800;
  padding: 6px 8px;
}
.ma-opportunity-link-list strong { display: block; font-size: .78rem; }
.ma-opportunity-link-list small { color: var(--ma-muted); display: block; font-size: .66rem; margin-top: 2px; }

.ma-opportunity-link-form {
  align-items: end;
  background: var(--ma-paper);
  border: 1px dashed var(--ma-line-strong);
  border-radius: 12px;
  display: grid;
  gap: 9px;
  grid-template-columns: minmax(0, 1.5fr) minmax(150px, .8fr) auto;
  padding: 12px;
}

.ma-opportunity-link-form label { display: grid; gap: 5px; min-width: 0; }
.ma-opportunity-link-form label > span { color: var(--ma-ink-3); font-size: .7rem; font-weight: 720; }
.ma-opportunity-link-form .ma-form-message { grid-column: 1 / -1; }

.ma-opportunity-no-links { color: var(--ma-muted); font-size: .76rem; margin: 0; }

.ma-opportunity-revisions ol {
  display: grid;
  gap: 7px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.ma-opportunity-revisions li {
  align-items: center;
  border-bottom: 1px solid var(--ma-line);
  display: grid;
  gap: 10px;
  grid-template-columns: auto 1fr;
  padding: 7px 0;
}

.ma-opportunity-revisions li > span {
  align-items: center;
  background: var(--ma-cream);
  border-radius: 999px;
  color: var(--ma-muted);
  display: flex;
  font-size: .66rem;
  height: 28px;
  justify-content: center;
  width: 28px;
}
.ma-opportunity-revisions strong { display: block; font-size: .75rem; }
.ma-opportunity-revisions small { color: var(--ma-muted); display: block; font-size: .65rem; }

.ma-opportunity-danger-zone {
  align-items: center;
  background: var(--ma-danger-soft);
  border: 1px solid #efc6c8;
  border-radius: 14px;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding: 14px;
}
.ma-opportunity-danger-zone strong { color: var(--ma-danger); display: block; font-size: .82rem; }
.ma-opportunity-danger-zone p { color: #8c474a; font-size: .72rem; margin: 4px 0 0; }

.ma-opportunity-source-host {
  background: var(--ma-paper);
  border: 1px solid var(--ma-line);
  border-radius: 11px;
  display: grid;
  gap: 4px;
  padding: 11px;
}
.ma-opportunity-source-host span { color: var(--ma-muted); font-size: .7rem; }
.ma-opportunity-source-host strong { font-size: .78rem; overflow-wrap: anywhere; }

.ma-opportunity-boundary-card { display: grid; }
.ma-opportunity-boundary-card ul { color: var(--ma-muted); display: grid; font-size: .72rem; gap: 4px; line-height: 1.45; margin: 0 0 8px; padding-left: 18px; }

.ma-panel-loading {
  align-items: center;
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 12px;
  justify-content: center;
  min-height: 260px;
  padding: 32px;
  text-align: center;
}
.ma-panel-loading > span { animation: maSpin .8s linear infinite; border: 3px solid var(--ma-line); border-top-color: var(--ma-teal); border-radius: 999px; height: 34px; width: 34px; }
.ma-panel-loading p { color: var(--ma-muted); margin: 0; }

/* Compact phone overflow destination. */
.ma-more-page { display: grid; gap: 20px; }
.ma-more-grid { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ma-more-grid > button {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: 16px;
  color: var(--ma-ink);
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: auto 1fr auto;
  min-height: 88px;
  padding: 14px;
  text-align: left;
}
.ma-more-grid > button:hover { border-color: #abd5dd; box-shadow: var(--ma-shadow-sm); transform: translateY(-1px); }
.ma-more-grid > button > span:last-child { color: var(--ma-muted); font-size: 1.35rem; }
.ma-more-icon { align-items: center; background: var(--ma-teal-soft); border-radius: 12px; color: var(--ma-teal-dark); display: flex; font-weight: 820; height: 44px; justify-content: center; width: 44px; }
.ma-more-grid strong { display: block; font-size: .9rem; }
.ma-more-grid p { color: var(--ma-muted); font-size: .72rem; line-height: 1.42; margin: 4px 0 0; }
.ma-more-opportunity-summary { align-items: center; display: flex; gap: 18px; justify-content: space-between; padding: 20px; }
.ma-more-opportunity-summary h3 { margin: 4px 0 5px; }
.ma-more-opportunity-summary p { color: var(--ma-muted); margin: 0; }

@media (max-width: 1180px) {
  .ma-opportunity-hero { grid-template-columns: minmax(0, 1fr) minmax(260px, .72fr); }
  .ma-opportunity-filters { grid-template-columns: minmax(220px, 1fr) repeat(2, minmax(145px, auto)) auto; }
  .ma-opportunity-filters .ma-text-button { grid-column: 1 / -1; justify-self: start; }
  .ma-opportunity-application-layout { grid-template-columns: 1fr; }
  .ma-opportunity-task-board { order: -1; }
}

@media (max-width: 920px) {
  .ma-opportunity-hero { grid-template-columns: 1fr; }
  .ma-opportunity-hero__summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ma-opportunity-hero__summary article { align-content: start; grid-template-columns: 1fr; }
  .ma-opportunity-hero__summary article > span { grid-row: auto; }
  .ma-opportunity-card-grid,
  .ma-opportunity-card-grid--applications,
  .ma-opportunity-plan-grid { grid-template-columns: 1fr; }
  .ma-opportunity-filters { grid-template-columns: 1fr 1fr; }
  .ma-opportunity-filters .ma-opportunity-search { grid-column: 1 / -1; }
  .ma-opportunity-filters .ma-text-button { grid-column: auto; justify-self: stretch; }
  .ma-opportunity-due-strip { grid-template-columns: 1fr 1fr; }
  .ma-opportunity-source-list article { align-items: flex-start; flex-direction: column; }
  .ma-opportunity-source-list article > div:last-child { flex-wrap: wrap; width: 100%; }
  .ma-opportunity-link-form { grid-template-columns: 1fr 1fr; }
  .ma-opportunity-link-form .ma-button { grid-column: 1 / -1; }
}

@media (max-width: 720px) {
  .ma-opportunity-page { gap: 15px; }
  .ma-opportunity-hero { border-radius: 20px; gap: 20px; padding: 23px 18px; }
  .ma-opportunity-hero h2 { font-size: clamp(2rem, 10vw, 3rem); }
  .ma-opportunity-hero__copy > p { font-size: .94rem; }
  .ma-opportunity-hero__actions { align-items: stretch; flex-direction: column; }
  .ma-opportunity-hero__actions .ma-button { width: 100%; }
  .ma-opportunity-hero__summary { grid-template-columns: 1fr; }
  .ma-opportunity-hero__summary article { grid-template-columns: auto 1fr; }
  .ma-opportunity-hero__summary article > span { grid-row: 1 / span 2; }

  .ma-opportunity-tabs {
    overflow-x: auto;
    position: static;
    scrollbar-width: none;
  }
  .ma-opportunity-tabs::-webkit-scrollbar { display: none; }
  .ma-opportunity-tabs button { min-width: 105px; }

  .ma-opportunity-filters { grid-template-columns: 1fr; padding: 10px; }
  .ma-opportunity-filters .ma-opportunity-search { grid-column: auto; }
  .ma-opportunity-filters .ma-button,
  .ma-opportunity-filters .ma-text-button { justify-self: stretch; width: 100%; }

  .ma-opportunity-boundary-strip { align-items: flex-start; }
  .ma-opportunity-boundary-strip p { flex-basis: 100%; margin-left: 0; }
  .ma-opportunity-card > header { align-items: flex-start; flex-direction: column; }
  .ma-opportunity-freshness { max-width: 100%; text-align: left; }
  .ma-opportunity-card__headline { grid-template-columns: minmax(0, 1fr) auto; }
  .ma-opportunity-card__body { padding-inline: 16px; }
  .ma-opportunity-card > header,
  .ma-opportunity-card__actions { padding-inline: 16px; }
  .ma-opportunity-facts { grid-template-columns: 1fr; }
  .ma-opportunity-card__actions { align-items: stretch; flex-direction: column; }
  .ma-opportunity-card__actions > div { display: grid; grid-template-columns: 1fr 1fr; }
  .ma-opportunity-card__actions .ma-button,
  .ma-opportunity-card__actions .ma-text-button { justify-content: center; width: 100%; }
  .ma-opportunity-empty { align-items: center; flex-direction: column; padding: 24px 18px; text-align: center; }
  .ma-opportunity-empty > div:last-child > div { justify-content: center; }
  .ma-opportunity-due-strip { grid-template-columns: 1fr; }
  .ma-opportunity-applications__head,
  .ma-opportunity-sources > header,
  .ma-opportunity-preferences > header,
  .ma-opportunity-mara-plan > header { align-items: stretch; flex-direction: column; }
  .ma-opportunity-sources > header .ma-button { width: 100%; }
  .ma-opportunity-preferences,
  .ma-opportunity-sources,
  .ma-opportunity-mara-plan { padding: 17px; }
  .ma-opportunity-check-grid { grid-template-columns: 1fr; }
  .ma-opportunity-mara-modes { grid-template-columns: 1fr 1fr; }
  .ma-opportunity-mara-result > header { flex-direction: column; }
  .ma-opportunity-mara-result header > div:last-child { width: 100%; }
  .ma-opportunity-mara-result .ma-button--secondary { flex: 1; }

  .ma-opportunity-panel { inset: 0; max-width: none; width: 100vw; }
  .ma-opportunity-panel > header { padding: max(14px, env(safe-area-inset-top)) 16px 14px; }
  .ma-opportunity-panel__scroll { padding: 14px 13px 24px; }
  .ma-opportunity-form-section { border-radius: 14px; padding: 14px; }
  .ma-opportunity-form .ma-form-grid--2 { grid-template-columns: 1fr; }
  .ma-opportunity-form .ma-field--span-2 { grid-column: auto; }
  .ma-opportunity-form :is(input,select,textarea),
  .ma-opportunity-link-form :is(input,select) { font-size: 16px; }
  .ma-opportunity-form > footer { padding-inline: 13px; }
  .ma-opportunity-form > footer .ma-button { flex: 1; min-height: 48px; }
  .ma-opportunity-link-form { align-items: stretch; grid-template-columns: 1fr; }
  .ma-opportunity-link-form .ma-button { grid-column: auto; }
  .ma-opportunity-danger-zone { align-items: stretch; flex-direction: column; }
  .ma-opportunity-danger-zone .ma-button { width: 100%; }

  .ma-more-grid { grid-template-columns: 1fr; }
  .ma-more-grid > button { min-height: 82px; }
  .ma-more-opportunity-summary { align-items: stretch; flex-direction: column; }
  .ma-more-opportunity-summary .ma-button { width: 100%; }

  /* Five primary phone destinations: Home, Work, Record, Discover, More. */
  .ma-mobile-nav { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; }
}

@media (max-width: 420px) {
  .ma-opportunity-tabs { grid-template-columns: repeat(4, minmax(96px, 1fr)); }
  .ma-opportunity-card__headline { grid-template-columns: 1fr; }
  .ma-opportunity-score { justify-self: start; }
  .ma-opportunity-card__actions > div { grid-template-columns: 1fr; }
  .ma-opportunity-mara-modes { grid-template-columns: 1fr; }
  .ma-opportunity-form > footer { flex-direction: column-reverse; }
  .ma-opportunity-form > footer .ma-button { width: 100%; }
}

@media (max-height: 520px) and (orientation: landscape) {
  .ma-opportunity-panel > header { padding-block: 9px; }
  .ma-opportunity-panel__scroll { padding-block: 10px 16px; }
  .ma-opportunity-form > footer { padding-block: 8px; }
  .ma-opportunity-hero { padding-block: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .ma-opportunity-card,
  .ma-more-grid > button { transition: none; }
  .ma-opportunity-card:hover,
  .ma-more-grid > button:hover { transform: none; }
  .ma-panel-loading > span { animation-duration: 1.8s; }
}

/* Pass 22 home opportunity summary retained in cumulative Pass 23. */
.ma-home-opportunity-card {
  align-items: center;
  background: linear-gradient(135deg, var(--ma-ink), #18333f);
  border-color: rgba(7,148,177,.35);
  color: var(--ma-white);
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0,1fr) auto;
  padding: 24px 26px;
}
.ma-home-opportunity-card .ma-card-kicker { color: #8ee2ef; }
.ma-home-opportunity-card h3 { color: var(--ma-white); font-size: clamp(1.25rem,2.4vw,1.8rem); margin: 7px 0 8px; }
.ma-home-opportunity-card p { color: rgba(255,255,255,.72); line-height: 1.55; margin: 0; }
.ma-home-opportunity-card__action { align-items: center; display: flex; gap: 14px; }
.ma-home-opportunity-card__action > span { align-items: center; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.14); border-radius: 14px; display: grid; height: 76px; justify-items: center; padding: 10px 14px; min-width: 76px; }
.ma-home-opportunity-card__action b { color: #8ee2ef; font-size: 1.5rem; letter-spacing: -.04em; line-height: 1; }
.ma-home-opportunity-card__action small { color: rgba(255,255,255,.64); font-size: .65rem; text-transform: uppercase; }
.ma-home-opportunity-card .ma-button--primary { background: var(--ma-teal); border-color: var(--ma-teal); color: var(--ma-white) !important; }
@media (max-width:820px) {
  .ma-home-opportunity-card { align-items: stretch; grid-template-columns: 1fr; }
  .ma-home-opportunity-card__action { justify-content: space-between; }
}
@media (max-width:520px) {
  .ma-home-opportunity-card { padding: 20px 18px; }
  .ma-home-opportunity-card__action { align-items: stretch; flex-direction: column; }
  .ma-home-opportunity-card__action > span { align-content: center; height: auto; min-height: 64px; }
  .ma-home-opportunity-card__action .ma-button { width: 100%; }
}

/* Merentra App 2.2.0 — Pass 25 live acceptance and data-boundary verification. */
.ma-organisation-page { display: grid; gap: 18px; min-width: 0; }
.ma-org-setup,
.ma-org-empty-hero,
.ma-org-context-bar,
.ma-org-hero,
.ma-org-boundary-grid,
.ma-org-content,
.ma-org-dashboard,
.ma-org-section { min-width: 0; }

.ma-org-setup {
  align-items: center;
  background: var(--ma-white);
  border: 1px solid var(--ma-line);
  border-radius: var(--ma-radius-lg);
  display: grid;
  gap: 18px;
  grid-template-columns: auto minmax(0,1fr);
  padding: 24px;
}
.ma-org-setup > span {
  align-items: center;
  background: var(--ma-teal-soft);
  border-radius: 50%;
  color: var(--ma-teal-dark);
  display: flex;
  font-size: 1.35rem;
  font-weight: 850;
  height: 54px;
  justify-content: center;
  width: 54px;
}
.ma-org-setup strong { display: block; font-size: 1rem; }
.ma-org-setup p { color: var(--ma-muted); line-height: 1.55; margin: 5px 0 0; }

.ma-org-empty-hero {
  align-items: center;
  background:
    radial-gradient(circle at 88% 10%, rgba(7,148,177,.24), transparent 32%),
    linear-gradient(135deg, var(--ma-ink), #183743 70%, #0c5d70);
  border: 1px solid rgba(7,148,177,.34);
  border-radius: var(--ma-radius-xl);
  box-shadow: var(--ma-shadow-md);
  color: var(--ma-white);
  display: grid;
  gap: clamp(28px, 5vw, 72px);
  grid-template-columns: minmax(0,1.2fr) minmax(250px,.65fr);
  overflow: hidden;
  padding: clamp(28px, 5vw, 64px);
  position: relative;
}
.ma-org-empty-hero > div:first-child { min-width: 0; position: relative; z-index: 1; }
.ma-org-empty-hero .ma-eyebrow { color: #95e5ef; }
.ma-org-empty-hero h2 {
  color: var(--ma-white);
  font-size: clamp(2rem, 4.5vw, 4.4rem);
  letter-spacing: -.052em;
  line-height: .99;
  margin: 12px 0 18px;
  max-width: 850px;
}
.ma-org-empty-hero p { color: rgba(255,255,255,.76); font-size: clamp(.98rem,1.4vw,1.12rem); line-height: 1.68; margin: 0; max-width: 780px; }
.ma-org-empty-hero .ma-hero-actions { margin-top: 26px; }
.ma-org-empty-hero .ma-button--primary { background: var(--ma-teal); border-color: var(--ma-teal); color: white !important; }
.ma-org-empty-hero .ma-button--secondary { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.24); color: white !important; }
.ma-org-boundary-illustration {
  align-items: center;
  aspect-ratio: 1;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 50%;
  display: grid;
  justify-items: center;
  margin-inline: auto;
  max-width: 300px;
  padding: 34px;
  position: relative;
  width: 100%;
}
.ma-org-boundary-illustration::before,
.ma-org-boundary-illustration::after { border: 1px solid rgba(255,255,255,.14); border-radius: 50%; content: ""; inset: 16%; position: absolute; }
.ma-org-boundary-illustration::after { inset: 31%; }
.ma-org-boundary-illustration span,
.ma-org-boundary-illustration b {
  align-items: center;
  background: white;
  border-radius: 50%;
  color: var(--ma-ink);
  display: flex;
  font-size: .8rem;
  font-weight: 900;
  height: 70px;
  justify-content: center;
  position: relative;
  width: 70px;
  z-index: 2;
}
.ma-org-boundary-illustration b { background: var(--ma-teal); color: white; }
.ma-org-boundary-illustration i { color: #95e5ef; font-size: .7rem; font-style: normal; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; z-index: 2; }

.ma-org-context-bar {
  align-items: center;
  background: rgba(255,255,255,.9);
  border: 1px solid var(--ma-line);
  border-radius: 15px;
  box-shadow: var(--ma-shadow-xs);
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0,1fr) minmax(220px,.7fr) auto;
  padding: 11px 13px;
  position: sticky;
  top: 10px;
  z-index: 8;
}
.ma-org-context-bar > div { display: grid; gap: 2px; min-width: 0; }
.ma-org-context-bar > div span { color: var(--ma-muted); font-size: .59rem; font-weight: 820; letter-spacing: .08em; text-transform: uppercase; }
.ma-org-context-bar > div strong { font-size: .8rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ma-org-context-bar select { background: #f8fbfb; border: 1px solid var(--ma-line-strong); border-radius: 10px; color: var(--ma-ink); min-height: 44px; min-width: 0; padding: 8px 34px 8px 11px; width: 100%; }

.ma-org-hero {
  align-items: center;
  background:
    radial-gradient(circle at 85% 20%, rgba(7,148,177,.24), transparent 35%),
    linear-gradient(135deg, var(--ma-ink), #1a3946);
  border: 1px solid rgba(7,148,177,.32);
  border-radius: var(--ma-radius-xl);
  color: white;
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0,1fr) auto;
  overflow: hidden;
  padding: clamp(24px,3.6vw,42px);
  position: relative;
}
.ma-org-hero > div:first-child { min-width: 0; }
.ma-org-hero__status { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 16px; }
.ma-org-hero .ma-pill:not(.ma-pill--teal) { background: rgba(255,255,255,.1); color: rgba(255,255,255,.8); }
.ma-org-hero .ma-eyebrow { color: #95e5ef; }
.ma-org-hero h2 { color: white; font-size: clamp(1.8rem,3.9vw,3.6rem); letter-spacing: -.045em; line-height: 1.02; margin: 8px 0 7px; overflow-wrap: anywhere; }
.ma-org-hero p { color: rgba(255,255,255,.65); margin: 0; overflow-wrap: anywhere; }
.ma-org-role-label { align-items: center; display: flex; flex-wrap: wrap; gap: 9px; margin-top: 20px; }
.ma-org-role-label span { color: rgba(255,255,255,.58); font-size: .63rem; font-weight: 820; letter-spacing: .08em; text-transform: uppercase; }
.ma-org-role-label strong { background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.13); border-radius: 999px; color: white; font-size: .7rem; padding: 7px 10px; }
.ma-org-edit-link { color: #95e5ef !important; margin-top: 14px; }
.ma-org-seat-meter {
  align-items: center;
  background: conic-gradient(var(--ma-teal) var(--ma-org-seat-percent,0%), rgba(255,255,255,.12) 0);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  height: 174px;
  justify-content: center;
  min-width: 174px;
  position: relative;
  text-align: center;
  width: 174px;
}
.ma-org-seat-meter::after { background: var(--ma-ink-2); border: 1px solid rgba(255,255,255,.12); border-radius: 50%; content: ""; inset: 10px; position: absolute; }
.ma-org-seat-meter > * { position: relative; z-index: 1; }
.ma-org-seat-meter strong { color: white; font-size: 2rem; letter-spacing: -.05em; line-height: 1; }
.ma-org-seat-meter span { color: #95e5ef; font-size: .72rem; font-weight: 820; }
.ma-org-seat-meter small { color: rgba(255,255,255,.56); font-size: .55rem; line-height: 1.35; margin-top: 6px; max-width: 118px; }

.ma-org-boundary-grid { display: grid; gap: 11px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.ma-org-boundary-grid article { background: white; border: 1px solid var(--ma-line); border-radius: 16px; display: grid; gap: 7px; min-height: 145px; padding: 17px; }
.ma-org-boundary-grid article > span { border-radius: 999px; font-size: .58rem; font-weight: 850; justify-self: start; letter-spacing: .06em; padding: 6px 9px; text-transform: uppercase; }
.ma-org-boundary-grid .is-member { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-org-boundary-grid .is-shared { background: var(--ma-warning-soft); color: var(--ma-warning); }
.ma-org-boundary-grid .is-org { background: var(--ma-teal-soft); color: var(--ma-teal-dark); }
.ma-org-boundary-grid strong { font-size: .82rem; }
.ma-org-boundary-grid p { color: var(--ma-muted); font-size: .68rem; line-height: 1.55; margin: 0; }

.ma-org-tabs { background: rgba(255,255,255,.88); border: 1px solid var(--ma-line); border-radius: 15px; box-shadow: var(--ma-shadow-xs); padding: 5px; position: sticky; top: 78px; z-index: 7; }
.ma-org-tabs button { min-height: 44px; }
.ma-org-content { display: grid; gap: 16px; }
.ma-org-dashboard,
.ma-org-section { display: grid; gap: 16px; }
.ma-org-kpis { display: grid; gap: 10px; grid-template-columns: repeat(4,minmax(0,1fr)); }
.ma-org-kpis article { background: white; border: 1px solid var(--ma-line); border-radius: 15px; display: grid; gap: 4px; min-height: 122px; padding: 16px; }
.ma-org-kpis span { color: var(--ma-muted); font-size: .62rem; font-weight: 820; text-transform: uppercase; }
.ma-org-kpis strong { font-size: 1.7rem; letter-spacing: -.045em; }
.ma-org-kpis small { color: var(--ma-muted); font-size: .62rem; line-height: 1.4; }

.ma-org-list { display: grid; gap: 8px; }
.ma-org-list-row {
  align-items: center;
  background: #fbfcfc;
  border: 1px solid var(--ma-line);
  border-radius: 13px;
  display: grid;
  gap: 13px;
  grid-template-columns: minmax(0,1fr) auto;
  min-width: 0;
  padding: 12px 13px;
}
.ma-org-list-row > div { min-width: 0; }
.ma-org-list-row strong { display: block; font-size: .76rem; margin-top: 5px; overflow-wrap: anywhere; }
.ma-org-list-row p { color: var(--ma-muted); font-size: .64rem; line-height: 1.45; margin: 3px 0 0; overflow-wrap: anywhere; }

.ma-org-safety-card { background: linear-gradient(180deg,var(--ma-teal-pale),white 52%); }
.ma-org-safety-card h3 { margin: 8px 0 10px; }
.ma-org-safety-card ul { color: var(--ma-ink-3); display: grid; font-size: .69rem; gap: 9px; line-height: 1.48; margin: 0 0 18px; padding-left: 18px; }
.ma-org-service-card { align-items: center; display: flex; gap: 20px; justify-content: space-between; }
.ma-org-service-card > div { min-width: 0; }
.ma-org-service-card h3 { margin: 7px 0 6px; }
.ma-org-service-card p { color: var(--ma-muted); line-height: 1.55; margin: 0; }

.ma-org-member-grid,
.ma-org-programme-grid,
.ma-org-credential-grid { display: grid; gap: 12px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.ma-org-member-card,
.ma-org-programme-card,
.ma-org-credential-card {
  background: white;
  border: 1px solid var(--ma-line);
  border-radius: 17px;
  display: flex;
  flex-direction: column;
  min-height: 230px;
  min-width: 0;
  padding: 16px;
}
.ma-org-member-card__head { align-items: start; display: grid; gap: 11px; grid-template-columns: auto minmax(0,1fr) auto; }
.ma-org-member-card__head > span:first-child,
.ma-org-credential-mark {
  align-items: center;
  background: var(--ma-ink);
  border-radius: 11px;
  color: white;
  display: flex;
  font-size: .68rem;
  font-weight: 900;
  height: 42px;
  justify-content: center;
  min-width: 42px;
  width: 42px;
}
.ma-org-member-card__head > div { min-width: 0; }
.ma-org-member-card h4,
.ma-org-programme-card h4,
.ma-org-credential-card h4 { font-size: .86rem; line-height: 1.35; margin: 0; overflow-wrap: anywhere; }
.ma-org-member-card p,
.ma-org-programme-card p,
.ma-org-credential-card p { color: var(--ma-muted); font-size: .66rem; line-height: 1.5; margin: 8px 0; overflow-wrap: anywhere; }
.ma-org-owner-chip,
.ma-org-shared-chip { border-radius: 999px; font-size: .53rem; font-weight: 850; padding: 5px 7px; white-space: nowrap; }
.ma-org-owner-chip { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-org-shared-chip { background: var(--ma-warning-soft); color: var(--ma-warning); }
.ma-org-status-dot { background: var(--ma-muted-2); border-radius: 50%; height: 8px; width: 8px; }
.ma-org-status-dot.is-active,
.ma-org-status-dot.is-granted { background: var(--ma-positive); }
.ma-org-status-dot.is-pending,
.ma-org-status-dot.is-pending_member { background: var(--ma-warning); }
.ma-org-status-dot.is-suspended,
.ma-org-status-dot.is-revoked { background: var(--ma-danger); }
.ma-org-member-controls { border-top: 1px solid var(--ma-line); display: grid; gap: 8px; margin-top: auto; padding-top: 13px; }
.ma-org-member-controls select { background: #f8fbfb; border: 1px solid var(--ma-line); border-radius: 9px; min-height: 42px; min-width: 0; padding: 7px 30px 7px 9px; width: 100%; }
.ma-org-member-controls .ma-button { justify-content: center; width: 100%; }
.ma-org-programme-card > header,
.ma-org-credential-card > header { align-items: start; display: flex; gap: 10px; justify-content: space-between; }
.ma-org-programme-card > footer,
.ma-org-credential-card > footer { align-items: center; border-top: 1px solid var(--ma-line); display: flex; gap: 8px; justify-content: space-between; margin-top: auto; padding-top: 12px; }
.ma-org-programme-card small,
.ma-org-credential-card small { color: var(--ma-muted); font-size: .59rem; }
.ma-org-credential-meta { display: grid; gap: 6px; margin: 10px 0; }
.ma-org-credential-meta div { align-items: center; display: flex; gap: 8px; justify-content: space-between; }
.ma-org-credential-meta span { color: var(--ma-muted); font-size: .6rem; }
.ma-org-credential-meta strong { font-size: .64rem; overflow-wrap: anywhere; text-align: right; }

.ma-org-consent-boundaries { display: grid; gap: 10px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.ma-org-consent-boundaries article { background: #f8fbfb; border: 1px solid var(--ma-line); border-radius: 14px; padding: 15px; }
.ma-org-consent-boundaries strong { display: block; font-size: .73rem; }
.ma-org-consent-boundaries p { color: var(--ma-muted); font-size: .64rem; line-height: 1.5; margin: 6px 0 0; }
.ma-org-consent-list { display: grid; gap: 10px; }
.ma-org-consent-card { background: white; border: 1px solid var(--ma-line); border-radius: 16px; display: grid; gap: 12px; padding: 16px; }
.ma-org-consent-card.is-pending { border-color: rgba(170,106,24,.32); box-shadow: inset 3px 0 0 var(--ma-warning); }
.ma-org-consent-card.is-granted { border-color: rgba(22,133,107,.28); box-shadow: inset 3px 0 0 var(--ma-positive); }
.ma-org-consent-card > header { align-items: start; display: flex; gap: 12px; justify-content: space-between; }
.ma-org-consent-card h4 { font-size: .85rem; margin: 0; overflow-wrap: anywhere; }
.ma-org-consent-purpose { background: var(--ma-teal-pale); border-radius: 11px; color: var(--ma-teal-dark); font-size: .68rem; line-height: 1.5; padding: 11px; }
.ma-org-consent-card footer { align-items: center; border-top: 1px solid var(--ma-line); display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; padding-top: 11px; }

.ma-org-boundary-status { display: grid; gap: 12px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.ma-org-boundary-status article { background: white; border: 1px solid var(--ma-line); border-radius: 15px; display: grid; gap: 6px; padding: 16px; }
.ma-org-boundary-status span { color: var(--ma-muted); font-size: .58rem; font-weight: 850; text-transform: uppercase; }
.ma-org-boundary-status strong { font-size: .82rem; overflow-wrap: anywhere; }
.ma-org-boundary-status small { color: var(--ma-muted); font-size: .61rem; line-height: 1.45; }
.ma-org-boundary-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.ma-org-audit-list { display: grid; gap: 7px; }
.ma-org-mini-row { align-items: center; background: #fbfcfc; border: 1px solid var(--ma-line); border-radius: 11px; display: grid; gap: 10px; grid-template-columns: auto minmax(0,1fr) auto; padding: 10px 11px; }
.ma-org-mini-row > span { align-items: center; background: var(--ma-teal-soft); border-radius: 9px; color: var(--ma-teal-dark); display: flex; font-size: .58rem; font-weight: 850; height: 32px; justify-content: center; min-width: 32px; }
.ma-org-mini-row strong { display: block; font-size: .69rem; overflow-wrap: anywhere; }
.ma-org-mini-row small { color: var(--ma-muted); font-size: .58rem; }

.ma-org-form { display: grid; gap: 16px; }
.ma-org-form > label,
.ma-org-form .ma-form-grid > label { display: grid; gap: 6px; }
.ma-org-form label > span { color: var(--ma-ink-3); font-size: .68rem; font-weight: 800; }
.ma-org-form :is(input,select,textarea) { background: #fbfcfc; border: 1px solid var(--ma-line-strong); border-radius: 11px; color: var(--ma-ink); min-height: 46px; min-width: 0; padding: 10px 11px; resize: vertical; width: 100%; }
.ma-org-form small { color: var(--ma-muted); font-size: .62rem; line-height: 1.5; }
.ma-org-form > footer { align-items: center; border-top: 1px solid var(--ma-line); display: flex; gap: 9px; justify-content: flex-end; margin-top: 3px; padding-top: 14px; }
.ma-org-form-boundary { align-items: start; background: var(--ma-teal-pale); border: 1px solid rgba(7,148,177,.2); border-radius: 13px; display: grid; gap: 4px; padding: 13px; }
.ma-org-form-boundary strong { color: var(--ma-teal-dark); font-size: .7rem; }
.ma-org-form-boundary span { color: #366c78; font-size: .65rem; line-height: 1.5; }
.ma-org-one-time { background: var(--ma-warning-soft); border: 1px solid rgba(170,106,24,.26); border-radius: 14px; display: grid; gap: 9px; padding: 14px; }
.ma-org-one-time code { background: white; border: 1px solid rgba(170,106,24,.23); border-radius: 9px; color: var(--ma-ink); display: block; font-size: .68rem; overflow-wrap: anywhere; padding: 10px; }
.ma-org-summary { display: grid; gap: 15px; }
.ma-org-summary pre { background: var(--ma-ink); border-radius: 13px; color: #dff8fb; font-size: .67rem; line-height: 1.55; margin: 0; max-height: 380px; overflow: auto; padding: 14px; white-space: pre-wrap; }
.ma-org-summary ul { color: var(--ma-muted); font-size: .68rem; line-height: 1.55; }
.ma-organisation-panel { max-width: 760px; width: min(760px,95vw); }
.ma-organisation-panel .ma-record-panel__body { overflow-y: auto; overscroll-behavior: contain; padding-bottom: max(26px,env(safe-area-inset-bottom)); }

.ma-home-organisation-card {
  align-items: center;
  background: linear-gradient(135deg, #edf9fa, white 58%);
  border-color: rgba(7,148,177,.25);
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0,1fr) auto;
  padding: 24px 26px;
}
.ma-home-organisation-card h3 { font-size: clamp(1.25rem,2.4vw,1.8rem); margin: 7px 0 8px; }
.ma-home-organisation-card p { color: var(--ma-muted); line-height: 1.55; margin: 0; }
.ma-home-organisation-card__action { align-items: center; display: flex; gap: 14px; }
.ma-home-organisation-card__action > span { align-items: center; background: white; border: 1px solid var(--ma-line); border-radius: 14px; display: grid; height: 76px; justify-items: center; min-width: 76px; padding: 10px 14px; }
.ma-home-organisation-card__action b { color: var(--ma-teal-dark); font-size: 1.5rem; letter-spacing: -.04em; line-height: 1; }
.ma-home-organisation-card__action small { color: var(--ma-muted); font-size: .62rem; text-transform: uppercase; }

@media (max-width: 1180px) {
  .ma-org-member-grid,
  .ma-org-programme-grid,
  .ma-org-credential-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-org-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ma-org-boundary-status { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 900px) {
  .ma-org-empty-hero { grid-template-columns: 1fr; }
  .ma-org-boundary-illustration { max-width: 230px; }
  .ma-org-context-bar { grid-template-columns: minmax(0,1fr) minmax(190px,.8fr); }
  .ma-org-context-bar .ma-button { grid-column: 1 / -1; width: 100%; }
  .ma-org-hero { align-items: start; grid-template-columns: 1fr; }
  .ma-org-seat-meter { height: 148px; min-width: 148px; width: 148px; }
  .ma-org-boundary-grid,
  .ma-org-consent-boundaries { grid-template-columns: 1fr; }
  .ma-org-service-card { align-items: stretch; flex-direction: column; }
  .ma-home-organisation-card { align-items: stretch; grid-template-columns: 1fr; }
  .ma-home-organisation-card__action { justify-content: space-between; }
}

@media (max-width: 720px) {
  .ma-organisation-page { gap: 13px; }
  .ma-org-context-bar { grid-template-columns: 1fr; position: static; }
  .ma-org-context-bar .ma-button { grid-column: auto; }
  .ma-org-hero { border-radius: 22px; padding: 23px 19px; }
  .ma-org-seat-meter { height: auto; min-height: 94px; min-width: 0; width: 100%; }
  .ma-org-seat-meter::after { border-radius: 16px; inset: 7px; }
  .ma-org-tabs { border-radius: 13px; overflow-x: auto; position: static; scrollbar-width: none; }
  .ma-org-tabs::-webkit-scrollbar { display: none; }
  .ma-org-tabs button { min-width: 112px; }
  .ma-org-kpis,
  .ma-org-member-grid,
  .ma-org-programme-grid,
  .ma-org-credential-grid,
  .ma-org-boundary-status { grid-template-columns: 1fr; }
  .ma-org-list-row { align-items: stretch; grid-template-columns: 1fr; }
  .ma-org-list-row .ma-button { justify-content: center; width: 100%; }
  .ma-org-consent-card > header { flex-direction: column; }
  .ma-org-consent-card footer { align-items: stretch; flex-direction: column; }
  .ma-org-consent-card footer .ma-button { justify-content: center; width: 100%; }
  .ma-org-boundary-actions { display: grid; grid-template-columns: 1fr; }
  .ma-org-boundary-actions .ma-button { justify-content: center; width: 100%; }
  .ma-org-form .ma-form-grid--2 { grid-template-columns: 1fr; }
  .ma-org-form :is(input,select,textarea) { font-size: 16px; }
  .ma-org-form > footer { align-items: stretch; flex-direction: column-reverse; }
  .ma-org-form > footer .ma-button { justify-content: center; width: 100%; }
  .ma-organisation-panel { inset: 0; max-width: none; width: 100vw; }
  .ma-organisation-panel .ma-record-panel__header { padding: max(15px,env(safe-area-inset-top)) 16px 14px; }
  .ma-organisation-panel .ma-record-panel__body { padding: 15px 14px max(24px,env(safe-area-inset-bottom)); }
  .ma-home-organisation-card { padding: 20px 18px; }
  .ma-home-organisation-card__action { align-items: stretch; flex-direction: column; }
  .ma-home-organisation-card__action > span { align-content: center; height: auto; min-height: 64px; }
  .ma-home-organisation-card__action .ma-button { width: 100%; }
}

@media (max-width: 480px) {
  .ma-org-empty-hero { border-radius: 22px; padding: 26px 19px; }
  .ma-org-empty-hero h2 { font-size: clamp(2rem,11vw,3rem); }
  .ma-org-empty-hero .ma-hero-actions { align-items: stretch; flex-direction: column; }
  .ma-org-empty-hero .ma-button { justify-content: center; width: 100%; }
  .ma-org-boundary-illustration { max-width: 190px; }
  .ma-org-member-card__head { grid-template-columns: auto minmax(0,1fr); }
  .ma-org-member-card__head > :last-child { grid-column: 2; justify-self: start; }
  .ma-org-mini-row { grid-template-columns: auto minmax(0,1fr); }
  .ma-org-mini-row > :last-child { grid-column: 2; }
}

@media (max-height: 540px) and (orientation: landscape) {
  .ma-organisation-panel .ma-record-panel__header { padding-block: 9px; }
  .ma-organisation-panel .ma-record-panel__body { padding-block: 10px 18px; }
  .ma-org-empty-hero { grid-template-columns: 1fr auto; padding-block: 22px; }
  .ma-org-boundary-illustration { max-width: 160px; }
}

@media (prefers-reduced-motion: reduce) {
  .ma-org-member-card,
  .ma-org-programme-card,
  .ma-org-credential-card,
  .ma-home-organisation-card { transition: none; }
}


/* Pass 25 — protected operating states, public status and support */
.ma-operating-banner{position:sticky;top:0;z-index:90;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:12px 18px;background:#fff4d9;border-bottom:1px solid #d5a13a;color:#513500}.ma-operating-banner strong{display:block;margin-bottom:2px}.ma-operating-banner a{min-height:44px;display:inline-flex;align-items:center;font-weight:750;color:inherit}.ma-service-page{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:clamp(42px,7vw,88px) 0;color:#101820}.ma-service-hero{display:grid;gap:12px;padding:clamp(24px,5vw,48px);border-radius:24px;background:linear-gradient(145deg,#edfafd,#f7fbfc);border:1px solid #c9e8ef}.ma-service-hero h1{margin:0;max-width:18ch;font-size:clamp(34px,6vw,64px);line-height:1.02;letter-spacing:-.035em}.ma-service-hero p{margin:0;max-width:68ch;font-size:clamp(17px,2vw,20px);line-height:1.6;color:#40515d}.ma-service-chip{justify-self:start;display:inline-flex;align-items:center;min-height:36px;padding:6px 12px;border-radius:999px;font-weight:780;background:#e6f6ef;color:#075f46}.ma-service-chip--degraded,.ma-service-chip--maintenance{background:#fff0d7;color:#744400}.ma-service-grid,.ma-support-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.ma-support-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ma-service-card,.ma-support-card,.ma-support-boundary{min-width:0;padding:24px;border:1px solid #dbe5e9;border-radius:18px;background:#fff;box-shadow:0 12px 36px rgba(16,24,32,.06)}.ma-service-card h2,.ma-support-card h2{margin:0 0 12px;font-size:21px}.ma-service-card p,.ma-support-card p,.ma-support-boundary p{line-height:1.6;color:#4c5b65}.ma-service-card dl{display:grid;gap:12px;margin:0}.ma-service-card dl>div{display:flex;justify-content:space-between;gap:16px;padding-bottom:11px;border-bottom:1px solid #edf1f3}.ma-service-card dt{color:#5b6a74}.ma-service-card dd{margin:0;font-weight:740;text-align:right}.ma-service-incidents{display:grid;gap:12px}.ma-service-incidents article{padding:14px;border-radius:12px;background:#fff8eb;border:1px solid #efd8a8}.ma-service-incidents article div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ma-service-incidents article span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.ma-service-incidents article p{margin:8px 0}.ma-service-incidents article small{overflow-wrap:anywhere}.ma-support-card a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 15px;border-radius:10px;background:#0794b1;color:#fff;font-weight:780;text-decoration:none}.ma-support-boundary{margin-top:20px;border-color:#e1c784;background:#fff9e9}.ma-support-boundary strong{font-size:18px}.ma-service-footnote{margin:20px 0 0;color:#5a6872;font-size:14px;line-height:1.55}.ma-service-page :where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #0794b1;outline-offset:3px}
@media(max-width:820px){.ma-service-grid,.ma-support-grid{grid-template-columns:1fr}.ma-service-page{width:min(100% - 24px,720px)}.ma-service-hero,.ma-service-card,.ma-support-card,.ma-support-boundary{padding:20px}.ma-operating-banner{position:relative;flex-direction:column}.ma-service-card dl>div{align-items:flex-start;flex-direction:column;gap:4px}.ma-service-card dd{text-align:left}}
@media(prefers-reduced-motion:reduce){.ma-service-page *,.ma-operating-banner *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}


/* Pass 25 founding-cohort context: visible, calm and phone-safe for existing members. */
.ma-home-cohort-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;border-color:rgba(7,148,177,.22);background:linear-gradient(135deg,rgba(7,148,177,.075),rgba(255,255,255,.96) 58%)}
.ma-home-cohort-card.is-protected{border-color:rgba(230,144,75,.22);background:linear-gradient(135deg,rgba(230,144,75,.08),rgba(255,255,255,.96) 58%)}
.ma-home-cohort-card h3{margin:.25rem 0 .45rem;font-size:clamp(1.12rem,2.4vw,1.48rem)}
.ma-home-cohort-card p{max-width:800px;margin:0;color:var(--ma-muted);line-height:1.62}
.ma-home-cohort-card__actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;max-width:390px}
.ma-home-cohort-card__actions a{text-decoration:none}
@media(max-width:820px){.ma-home-cohort-card{grid-template-columns:1fr}.ma-home-cohort-card__actions{justify-content:flex-start;max-width:none}}
@media(max-width:560px){.ma-home-cohort-card__actions{display:grid;grid-template-columns:1fr}.ma-home-cohort-card__actions :is(.ma-button,.ma-text-button){width:100%;min-height:44px;justify-content:center}.ma-home-cohort-card__actions .ma-pill{width:max-content}}

/* Pass 26 — personalised first value and founding-cohort feedback */
.ma-first-value {
  background: linear-gradient(145deg, #ffffff 0%, #f3fbfc 100%);
  border-color: #c7e4e9;
  box-shadow: var(--ma-shadow-sm);
  display: grid;
  gap: 18px;
  padding: clamp(18px, 2.4vw, 26px);
}
.ma-first-value__head {
  align-items: flex-start;
  display: flex;
  gap: 18px;
  justify-content: space-between;
}
.ma-first-value__head h3,
.ma-first-value--collapsed h3 { margin: 5px 0 6px; }
.ma-first-value__head p,
.ma-first-value--collapsed p { color: var(--ma-muted); margin: 0; max-width: 70ch; }
.ma-first-value__focus {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.ma-first-value__focus button {
  align-items: center;
  background: #fff;
  border: 1px solid var(--ma-line-strong);
  border-radius: 12px;
  color: var(--ma-ink-3);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  font-size: 12px;
  font-weight: 760;
  gap: 3px;
  justify-content: center;
  min-height: 48px;
  padding: 8px 10px;
  text-align: center;
}
.ma-first-value__focus button small { color: var(--ma-teal-dark); font-size: 9px; letter-spacing: .06em; text-transform: uppercase; }
.ma-first-value__focus button:hover { border-color: var(--ma-teal); }
.ma-first-value__focus button.is-active {
  background: var(--ma-ink);
  border-color: var(--ma-ink);
  color: #fff;
  box-shadow: 0 8px 18px rgba(16,24,32,.14);
}
.ma-first-value__focus button.is-active small { color: #9de5ef; }
.ma-first-value__progress {
  align-items: center;
  display: grid;
  gap: 14px;
  grid-template-columns: auto minmax(160px, 1fr);
}
.ma-first-value__progress > div:first-child { display: grid; gap: 2px; }
.ma-first-value__progress strong { font-size: 15px; }
.ma-first-value__progress span { color: var(--ma-muted); font-size: 11px; }
.ma-first-value__bar { background: #dfecee; border-radius: 999px; height: 9px; overflow: hidden; }
.ma-first-value__bar span { background: linear-gradient(90deg, var(--ma-teal), var(--ma-positive)); border-radius: inherit; display: block; height: 100%; min-width: 0; transition: width .25s ease; }
.ma-first-value__tasks { display: grid; gap: 9px; list-style: none; margin: 0; padding: 0; }
.ma-first-value__tasks li {
  align-items: center;
  background: rgba(255,255,255,.88);
  border: 1px solid var(--ma-line);
  border-radius: 14px;
  display: grid;
  gap: 12px;
  grid-template-columns: 34px minmax(0,1fr) auto;
  min-width: 0;
  padding: 13px 14px;
}
.ma-first-value__tasks li > span {
  align-items: center;
  background: var(--ma-teal-soft);
  border-radius: 50%;
  color: var(--ma-teal-dark);
  display: flex;
  font-weight: 850;
  height: 32px;
  justify-content: center;
  width: 32px;
}
.ma-first-value__tasks li.is-done { background: #f6fbf9; border-color: #c5e3d9; }
.ma-first-value__tasks li.is-done > span { background: var(--ma-positive-soft); color: var(--ma-positive); }
.ma-first-value__tasks strong { display: block; font-size: 13px; }
.ma-first-value__tasks p { color: var(--ma-muted); font-size: 11px; line-height: 1.45; margin: 3px 0 0; }
.ma-first-value__tasks button {
  background: #fff;
  border: 1px solid var(--ma-line-strong);
  border-radius: 10px;
  color: var(--ma-ink);
  cursor: pointer;
  font-size: 12px;
  font-weight: 760;
  min-height: 42px;
  min-width: 72px;
  padding: 8px 12px;
}
.ma-first-value__tasks button:hover { border-color: var(--ma-teal); color: var(--ma-teal-dark); }
.ma-first-value__boundary {
  align-items: flex-start;
  background: #fff;
  border-left: 4px solid var(--ma-teal);
  border-radius: 0 12px 12px 0;
  display: grid;
  gap: 4px;
  grid-template-columns: auto minmax(0, 1fr);
  padding: 11px 13px;
}
.ma-first-value__boundary > span { color: var(--ma-teal-dark); font-size: 10px; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.ma-first-value__boundary p { color: var(--ma-muted); font-size: 11px; line-height: 1.5; margin: 0; }
.ma-inline-button {
  appearance: none;
  background: transparent;
  border: 0;
  color: var(--ma-teal-dark);
  cursor: pointer;
  font: inherit;
  font-weight: 760;
  padding: 0;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.ma-first-value--collapsed {
  align-items: center;
  grid-template-columns: minmax(0,1fr) auto;
}
.ma-cohort-feedback-card { display: grid; gap: 18px; padding: clamp(18px, 2.4vw, 26px); }
.ma-cohort-feedback-card__head {
  align-items: flex-start;
  display: flex;
  gap: 18px;
  justify-content: space-between;
}
.ma-cohort-feedback-card__head h3 { margin: 5px 0 6px; }
.ma-cohort-feedback-card__head p { color: var(--ma-muted); margin: 0; max-width: 75ch; }
.ma-cohort-feedback-form { border-top: 1px solid var(--ma-line); padding-top: 18px; }
.ma-cohort-feedback-form__grid { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0,1fr)); }
.ma-cohort-feedback-form .ma-form-actions--between { align-items: center; justify-content: space-between; }
.ma-cohort-feedback-form .ma-form-actions--between > p { color: var(--ma-muted); font-size: 11px; line-height: 1.45; margin: 0; max-width: 62ch; }
.ma-cohort-feedback-recent { border-top: 1px solid var(--ma-line); outline: none; padding-top: 18px; }
.ma-cohort-feedback-recent h4 { margin: 4px 0 0; }
.ma-cohort-feedback-recent > div:last-child { display: grid; gap: 9px; }
.ma-cohort-feedback-recent article {
  align-items: flex-start;
  background: #f8faf9;
  border: 1px solid var(--ma-line);
  border-radius: 12px;
  display: grid;
  gap: 12px;
  grid-template-columns: auto minmax(0,1fr);
  padding: 12px;
}
.ma-cohort-feedback-recent article strong { display: block; font-size: 12px; }
.ma-cohort-feedback-recent article p { color: var(--ma-ink-3); font-size: 11px; line-height: 1.5; margin: 4px 0; overflow-wrap: anywhere; }
.ma-cohort-feedback-recent article small { color: var(--ma-muted); font-size: 10px; }

@media (max-width: 1050px) {
  .ma-first-value__focus { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .ma-cohort-feedback-form__grid { grid-template-columns: 1fr 1fr; }
  .ma-cohort-feedback-form__grid label:last-child { grid-column: 1 / -1; }
}
@media (max-width: 700px) {
  .ma-first-value__head,
  .ma-cohort-feedback-card__head,
  .ma-first-value--collapsed { align-items: stretch; grid-template-columns: 1fr; }
  .ma-first-value__head,
  .ma-cohort-feedback-card__head { flex-direction: column; }
  .ma-first-value__head .ma-text-button { align-self: flex-start; min-height: 44px; }
  .ma-first-value__focus { grid-template-columns: 1fr 1fr; }
  .ma-first-value__focus button:last-child { grid-column: 1 / -1; }
  .ma-first-value__progress { grid-template-columns: 1fr; }
  .ma-first-value__tasks li { align-items: flex-start; grid-template-columns: 34px minmax(0,1fr); }
  .ma-first-value__tasks button { grid-column: 2; justify-self: stretch; min-height: 44px; }
  .ma-first-value__boundary { grid-template-columns: 1fr; }
  .ma-cohort-feedback-form__grid { grid-template-columns: 1fr; }
  .ma-cohort-feedback-form__grid label:last-child { grid-column: auto; }
  .ma-cohort-feedback-form .ma-form-actions--between { align-items: stretch; flex-direction: column; }
  .ma-cohort-feedback-form .ma-button { width: 100%; }
}
@media (max-width: 430px) {
  .ma-first-value__focus { grid-template-columns: 1fr; }
  .ma-first-value__focus button:last-child { grid-column: auto; }
  .ma-cohort-feedback-recent article { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .ma-first-value__bar span { transition: none; }
}

/* Pass 27 — shared feedback links, QR materials and open response sessions */
.ma-training-feedback-mode,
.ma-training-feedback-counts { display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; }
.ma-training-feedback-mode span,
.ma-training-feedback-counts span { align-items:center; background:#f2f7f7; border:1px solid var(--ma-line); border-radius:999px; color:var(--ma-ink-3); display:inline-flex; font-size:10px; font-weight:750; min-height:28px; padding:5px 9px; }
.ma-training-feedback-mode span.is-open { background:#e8f7f4; border-color:#b9e6dc; color:#075e54; }
.ma-training-feedback-mode span.is-paused { background:#fff7df; border-color:#f1d88f; color:#745400; }
.ma-training-feedback-counts strong { color:var(--ma-ink); margin-right:4px; }
.ma-training-feedback-public-summary { background:#f8fbfb; border:1px solid var(--ma-line); border-radius:13px; display:grid; gap:8px; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:14px; padding:11px; }
.ma-training-feedback-public-summary > div { display:grid; gap:2px; }
.ma-training-feedback-public-summary span { color:var(--ma-muted); font-size:9px; text-transform:uppercase; letter-spacing:.05em; }
.ma-training-feedback-public-summary strong { font-size:13px; }
.ma-training-feedback-public-summary small { color:var(--ma-muted); font-size:10px; grid-column:1/-1; line-height:1.45; }
.ma-training-panel--qr { width:min(940px,calc(100vw - 34px)); }
.ma-training-public-access { display:flex; flex:1 1 auto; flex-direction:column; min-height:0; }
.ma-training-qr-hero { align-items:center; background:linear-gradient(145deg,#f5fbfb,#edf7f7); border:1px solid #cfe5e8; border-radius:20px; display:grid; gap:22px; grid-template-columns:minmax(210px,260px) minmax(0,1fr); padding:22px; }
.ma-training-qr-preview { align-items:center; aspect-ratio:1; background:#fff; border:1px solid #d8e7e9; border-radius:18px; display:flex; justify-content:center; overflow:hidden; padding:15px; }
.ma-training-qr-preview svg { display:block; height:auto; max-height:100%; max-width:100%; width:100%; }
.ma-training-qr-hero h3 { font-size:clamp(20px,2.2vw,30px); line-height:1.1; margin:10px 0 8px; }
.ma-training-qr-hero p { color:var(--ma-muted); line-height:1.55; margin:0 0 15px; }
.ma-training-public-url { align-items:end; display:grid; gap:8px; grid-template-columns:minmax(0,1fr) auto; }
.ma-training-public-url label { display:grid; gap:6px; min-width:0; width:100%; }
.ma-training-public-url input { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:12px; min-height:44px; overflow:hidden; padding-block:10px; text-overflow:ellipsis; width:100%; }
.ma-training-public-code .ma-text-button { min-height:44px; padding:8px 4px; }
.ma-training-public-code { align-items:center; display:flex; flex-wrap:wrap; gap:9px; margin-top:10px; }
.ma-training-public-code > span { color:var(--ma-muted); font-size:9px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.ma-training-public-code strong { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:13px; letter-spacing:.08em; }
.ma-training-public-metrics { display:grid; gap:10px; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:16px; }
.ma-training-public-metrics article { background:var(--ma-paper); border:1px solid var(--ma-line); border-radius:14px; display:grid; gap:5px; padding:13px; }
.ma-training-public-metrics span { color:var(--ma-muted); font-size:9px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.ma-training-public-metrics strong { font-size:22px; }
.ma-training-public-metrics-note { color:var(--ma-muted); font-size:10px; line-height:1.45; margin:8px 0 2px; }
.ma-training-qr-actions { display:flex; flex-wrap:wrap; gap:8px; }
.ma-training-public-controls { align-items:center; background:#fff8f1; border:1px solid #ead6bd; border-radius:16px; display:flex; gap:16px; justify-content:space-between; margin-top:18px; padding:15px; }
.ma-training-public-controls p { color:var(--ma-muted); font-size:11px; line-height:1.45; margin:4px 0 0; }
.ma-training-public-controls > div:last-child { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }
.ma-training-qr-unavailable { align-items:center; color:var(--ma-muted); display:flex; flex-direction:column; gap:5px; justify-content:center; min-height:180px; text-align:center; }
.ma-response-entry__status { align-items:flex-start; background:#eef8f7; border:1px solid #c9e6e2; border-radius:16px; display:grid; gap:12px; grid-template-columns:36px minmax(0,1fr); margin:18px 0; padding:15px; }
.ma-response-entry__status > span { align-items:center; background:#fff; border-radius:50%; color:var(--ma-teal-dark); display:flex; font-weight:900; height:36px; justify-content:center; width:36px; }
.ma-response-entry__status strong { display:block; margin-bottom:4px; }
.ma-response-entry__status p { color:var(--ma-muted); line-height:1.55; margin:0; }
.ma-response-entry__facts { display:grid; gap:9px; grid-template-columns:repeat(2,minmax(0,1fr)); margin:18px 0; }
.ma-response-entry__facts > div { background:#f8faf9; border:1px solid var(--ma-line); border-radius:13px; display:grid; gap:4px; padding:12px; }
.ma-response-entry__facts span { color:var(--ma-muted); font-size:10px; }
.ma-response-entry__facts strong { font-size:13px; }
.ma-response-entry__boundary { color:var(--ma-muted); font-size:11px; line-height:1.5; margin:14px 0 0; text-align:center; }
.ma-response-entry > .ma-button { min-height:50px; width:100%; }
.ma-response-honeypot { height:1px!important; left:-10000px!important; overflow:hidden!important; position:absolute!important; top:auto!important; width:1px!important; }
.ma-response-form select[name="role_group"] { min-height:48px; }
.ma-response-state [data-ma-feedback-another] { margin-top:16px; }

@media (max-width: 760px) {
  .ma-training-panel--qr { width:100%; }
  .ma-training-qr-hero { grid-template-columns:1fr; padding:16px; }
  .ma-training-qr-preview { justify-self:center; max-width:260px; width:100%; }
  .ma-training-public-url { align-items:stretch; grid-template-columns:1fr; }
  .ma-training-public-url .ma-button { width:100%; }
  .ma-training-public-metrics { grid-template-columns:1fr 1fr; }
  .ma-training-public-controls { align-items:stretch; flex-direction:column; }
  .ma-training-public-controls > div:last-child { justify-content:stretch; }
  .ma-training-public-controls .ma-button { flex:1 1 140px; }
  .ma-training-feedback-public-summary { grid-template-columns:1fr 1fr; }
  .ma-training-feedback-public-summary small { grid-column:1/-1; }
  .ma-training-qr-actions .ma-button { flex:1 1 145px; }
}
@media (max-width: 480px) {
  .ma-response-entry__facts,
  .ma-training-public-metrics,
  .ma-training-feedback-public-summary { grid-template-columns:1fr; }
  .ma-training-feedback-public-summary small { grid-column:auto; }
  .ma-training-qr-actions { display:grid; grid-template-columns:1fr; }
  .ma-training-qr-actions .ma-button,
  .ma-training-public-controls .ma-button { width:100%; }
  .ma-training-public-code { align-items:flex-start; flex-direction:column; }
}
@media (prefers-reduced-motion: reduce) {
  .ma-training-qr-preview svg { transition:none; }
}

/* Pass 27 respondent entry card — campaign review before a one-use session is minted. */
.ma-response-entry-card > header { background:linear-gradient(140deg,var(--ma-ink),#164b59); color:#fff; padding:clamp(24px,5vw,52px); }
.ma-response-entry-card > header h1 { color:#fff; font-size:clamp(2rem,5vw,3.6rem); letter-spacing:-.05em; line-height:1; margin:10px 0 12px; max-width:18ch; }
.ma-response-entry-card > header > p { color:rgba(255,255,255,.75); margin:0; }
.ma-response-entry-card > header > p strong { color:#fff; }
.ma-response-entry-card > .ma-response-privacy,
.ma-response-entry-card > .ma-form-error,
.ma-response-entry-card > .ma-response-start,
.ma-response-entry-card > .ma-response-unavailable { margin-left:clamp(20px,5vw,52px); margin-right:clamp(20px,5vw,52px); }
.ma-response-entry-steps { display:grid; gap:12px; grid-template-columns:repeat(3,minmax(0,1fr)); padding:clamp(20px,4vw,38px) clamp(20px,5vw,52px) 18px; }
.ma-response-entry-steps > div { background:#f8faf9; border:1px solid var(--ma-line); border-radius:16px; display:grid; gap:7px; grid-template-columns:38px minmax(0,1fr); padding:14px; }
.ma-response-entry-steps > div > span { align-items:center; background:var(--ma-teal-soft); border-radius:11px; color:var(--ma-teal-dark); display:flex; font-size:12px; font-weight:900; grid-row:1 / span 2; height:38px; justify-content:center; width:38px; }
.ma-response-entry-steps strong { align-self:end; font-size:12px; }
.ma-response-entry-steps small { color:var(--ma-muted); font-size:9px; line-height:1.45; }
.ma-response-entry-card > .ma-response-privacy { margin-bottom:18px; }
.ma-response-entry-card > .ma-response-start { min-height:52px; width:calc(100% - (clamp(20px,5vw,52px) * 2)); }
.ma-response-unavailable { background:var(--ma-cream); border:1px solid var(--ma-line); border-radius:14px; padding:16px; text-align:center; }
.ma-response-unavailable strong { display:block; }
.ma-response-unavailable p { color:var(--ma-muted); line-height:1.5; margin:6px 0 0; }
.ma-response-entry-card > footer { align-items:center; border-top:1px solid var(--ma-line); color:var(--ma-muted); display:flex; font-size:9px; justify-content:space-between; margin-top:24px; padding:12px clamp(20px,5vw,52px); }

@media (max-width:760px) {
  .ma-response-entry-steps { grid-template-columns:1fr; }
}
@media (max-width:480px) {
  .ma-response-entry-card > header { padding:26px 20px; }
  .ma-response-entry-card > .ma-response-privacy,
  .ma-response-entry-card > .ma-form-error,
  .ma-response-entry-card > .ma-response-start,
  .ma-response-entry-card > .ma-response-unavailable { margin-left:16px; margin-right:16px; }
  .ma-response-entry-card > .ma-response-start { width:calc(100% - 32px); }
  .ma-response-entry-card > footer { align-items:flex-start; flex-direction:column; gap:4px; padding-left:16px; padding-right:16px; }
}
