/* =====================================================================
   AIGA Membership Portal — front-end styles (scoped to .aiga)
   Identity: AIGA logo palette — indigo #403d95, violet #644a9e, blue #3f6de4,
   teal #1a9c84, navy #10305e. Type: site font (Diodrum Arabic) → IBM Plex Sans Arabic.
   ===================================================================== */
@font-face { font-family: "AIGA Plex"; src: url(../fonts/ibm-plex-sans-arabic-arabic-400.woff2) format("woff2"); font-weight: 400; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+FB50-FDFF, U+FE70-FEFC, U+200C-200E; }
@font-face { font-family: "AIGA Plex"; src: url(../fonts/ibm-plex-sans-arabic-arabic-500.woff2) format("woff2"); font-weight: 500; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+FB50-FDFF, U+FE70-FEFC, U+200C-200E; }
@font-face { font-family: "AIGA Plex"; src: url(../fonts/ibm-plex-sans-arabic-arabic-700.woff2) format("woff2"); font-weight: 700; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+FB50-FDFF, U+FE70-FEFC, U+200C-200E; }
@font-face { font-family: "AIGA Plex"; src: url(../fonts/ibm-plex-sans-arabic-latin-400.woff2) format("woff2"); font-weight: 400; font-display: swap; unicode-range: U+0000-00FF, U+2000-206F; }
@font-face { font-family: "AIGA Plex"; src: url(../fonts/ibm-plex-sans-arabic-latin-500.woff2) format("woff2"); font-weight: 500; font-display: swap; unicode-range: U+0000-00FF, U+2000-206F; }
@font-face { font-family: "AIGA Plex"; src: url(../fonts/ibm-plex-sans-arabic-latin-700.woff2) format("woff2"); font-weight: 700; font-display: swap; unicode-range: U+0000-00FF, U+2000-206F; }

.aiga {
	--a-navy: #10305e;
	--a-ink: #1f2a44;
	--a-muted: #5b6478;
	--a-primary: #403d95;
	--a-primary-hover: #33307a;
	--a-primary-soft: #eeedf8;
	--a-blue: #3f6de4;
	--a-teal: #178f79;
	--a-bg: #f6f7fb;
	--a-surface: #ffffff;
	--a-border: #e3e6ef;
	--a-border-strong: #cdd3e1;
	--a-focus: 0 0 0 3px rgba(63, 109, 228, .35);
	--a-grad: linear-gradient(90deg, #644a9e 0%, #403d95 25%, #3f6de4 60%, #1a9c84 100%);
	--a-radius: 12px;
	--a-radius-sm: 8px;
	--a-shadow: 0 1px 2px rgba(16, 48, 94, .05), 0 4px 16px rgba(16, 48, 94, .05);
	--a-font: "DiodrumCyrillicArabic", "DiodrumCyrillic", "AIGA Plex", "IBM Plex Sans Arabic", Tahoma, sans-serif;

	font-family: var(--a-font);
	color: var(--a-ink);
	font-size: 16px;
	line-height: 1.75;
	background: var(--a-bg);
	text-align: right;
	-webkit-font-smoothing: antialiased;
}
.aiga *, .aiga *::before, .aiga *::after { box-sizing: border-box; }
/* Beat theme rules such as .entry-content p / ul (specificity 0,1,2). */
body .aiga :is(h1, h2, h3, h4, p, ul, ol, dl, dd, figure, legend) { margin: 0; }
body .aiga :is(ul, ol) { padding: 0; }
body .aiga :is(h1, h2, h3, h4) { font-family: var(--a-font); }
body .aiga a { color: var(--a-blue); text-decoration: none; text-underline-offset: 3px; }
body .aiga a:hover { text-decoration: underline; }
body .aiga :is(a.aiga-tile, a.aiga-btn, .aiga-subnav a, .aiga-crumbs a) { text-decoration: none; }
body .aiga .aiga-crumbs a:hover { text-decoration: underline; }
.aiga a:focus-visible, .aiga button:focus-visible, .aiga summary:focus-visible, .aiga [tabindex]:focus-visible { outline: none; box-shadow: var(--a-focus); border-radius: 6px; }
.aiga bdi { unicode-bidi: isolate; }
.aiga .aiga-mono { font-variant-numeric: tabular-nums; letter-spacing: .02em; direction: ltr; }
.aiga .aiga-icon { flex: none; vertical-align: middle; }
.aiga .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }

/* Layout -------------------------------------------------------------- */
.aiga-wrap { width: 100%; max-width: 1200px; margin-inline: auto; padding-inline: 24px; }
.aiga-body { padding-block: 32px 72px; display: grid; gap: 28px; }

/* Astra: let the portal own the full width / spacing */
.aiga-portal-page .site-content > .ast-container,
.aiga-portal-page #primary,
.aiga-portal-page .entry-content { padding: 0 !important; margin: 0 !important; max-width: none !important; }
.aiga-portal-page .ast-article-single,
.aiga-portal-page .entry-content > * { margin: 0 !important; padding: 0 !important; background: transparent !important; }
.aiga-portal-page .entry-content > .aiga { max-width: none; }

/* Hero / page header */
.aiga-hero {
	position: relative;
	background: linear-gradient(180deg, #ffffff 0%, #f8f9fc 100%);
	border-bottom: 1px solid var(--a-border);
	padding-block: 36px 30px;
}
.aiga-hero::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 3px; background: var(--a-grad); }
body:has(.ast-breadcrumbs-wrapper, .ast-breadcrumbs) .aiga-crumbs { display: none; }
.aiga-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 14px; color: var(--a-muted); margin-bottom: 10px; }
.aiga-crumbs a { color: var(--a-muted); }
.aiga-crumbs a:hover { color: var(--a-primary); }
.aiga-crumbs [aria-current] { color: var(--a-navy); font-weight: 500; }
.aiga-title { font-size: clamp(28px, 3.2vw, 38px); line-height: 1.3; font-weight: 700; color: var(--a-navy); letter-spacing: 0; }
body .aiga .aiga-lead { margin-top: 8px; }
.aiga-lead { max-width: 68ch; font-size: 17px; color: var(--a-muted); }

/* Member sub-navigation */
.aiga-subnav { background: var(--a-surface); border-bottom: 1px solid var(--a-border); }
.aiga-subnav ul { list-style: none; display: flex; gap: 4px; overflow-x: auto; scrollbar-width: thin; }
.aiga-subnav li { flex: none; }
.aiga-subnav__end { margin-inline-start: auto; }
.aiga-subnav a {
	display: inline-flex; align-items: center; gap: 8px; min-height: 52px; padding: 0 14px;
	color: var(--a-muted); font-size: 15px; font-weight: 500; border-bottom: 2px solid transparent; white-space: nowrap;
}
.aiga-subnav a:hover { color: var(--a-navy); text-decoration: none; background: var(--a-bg); }
.aiga-subnav a.is-active { color: var(--a-primary); border-bottom-color: var(--a-primary); }

/* Typography helpers */
.aiga-h2 { font-size: 22px; line-height: 1.4; font-weight: 700; color: var(--a-navy); }
body .aiga .aiga-h2 { margin-bottom: 14px; }
.aiga-h3 { font-size: 19px; line-height: 1.45; font-weight: 700; color: var(--a-navy); }
.aiga-eyebrow { font-size: 13px; font-weight: 500; letter-spacing: .02em; color: var(--a-teal); }
.aiga-muted { color: var(--a-muted); font-size: 15px; }
.aiga-center { text-align: center; }

/* Surfaces */
.aiga-panel { background: var(--a-surface); border: 1px solid var(--a-border); border-radius: var(--a-radius); box-shadow: var(--a-shadow); padding: 28px; display: grid; gap: 20px; align-content: start; }
.aiga-panel--narrow { max-width: 640px; width: 100%; margin-inline: auto; }
.aiga-panel > *, .aiga-body > *, .aiga-split > *, .aiga-stack > * { min-width: 0; }
.aiga-panel__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.aiga-aside { padding: 28px; border-radius: var(--a-radius); background: linear-gradient(180deg, #f3f2fb 0%, #f2f7fb 100%); border: 1px solid #e4e3f3; display: grid; gap: 14px; align-content: start; }
.aiga-aside p { color: var(--a-ink); font-size: 15px; }
.aiga-aside--sticky { position: sticky; top: 24px; }
.aiga-split { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.aiga-split--even { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.aiga-layout-form { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 24px; align-items: start; }
.aiga-stack { display: grid; gap: 24px; }

/* Steps */
.aiga-steps { list-style: none; counter-reset: s; display: grid; gap: 14px; }
.aiga-steps li { counter-increment: s; position: relative; padding-inline-start: 44px; display: grid; gap: 2px; min-height: 32px; }
.aiga-steps li::before {
	content: counter(s); position: absolute; inset-inline-start: 0; top: 0;
	width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center;
	background: var(--a-surface); border: 1px solid #d6d4ee; color: var(--a-primary); font-weight: 700; font-size: 14px;
}
.aiga-steps strong { color: var(--a-navy); font-weight: 600; font-size: 15px; }
.aiga-steps span { color: var(--a-muted); font-size: 14px; line-height: 1.6; }

/* Buttons */
.aiga .aiga-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 44px; padding: 0 20px; border-radius: var(--a-radius-sm);
	font: 600 15px/1.2 var(--a-font); letter-spacing: 0; text-decoration: none; text-transform: none;
	border: 1px solid transparent; cursor: pointer; transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
	box-shadow: none; white-space: nowrap;
}
.aiga .aiga-btn:hover { text-decoration: none; }
.aiga .aiga-btn:focus-visible { box-shadow: var(--a-focus); }
.aiga .aiga-btn--primary { background: var(--a-primary); color: #fff; border-color: var(--a-primary); }
.aiga .aiga-btn--primary:hover { background: var(--a-primary-hover); border-color: var(--a-primary-hover); color: #fff; }
.aiga .aiga-btn--secondary { background: var(--a-surface); color: var(--a-primary); border-color: #cfcdea; }
.aiga .aiga-btn--secondary:hover { background: var(--a-primary-soft); color: var(--a-primary-hover); border-color: #b9b6e0; }
.aiga .aiga-btn--ghost { background: transparent; color: var(--a-navy); border-color: var(--a-border-strong); }
.aiga .aiga-btn--ghost:hover { background: var(--a-bg); color: var(--a-navy); }
.aiga .aiga-btn--block { width: 100%; }
.aiga .aiga-btn--lg { min-height: 50px; padding: 0 28px; font-size: 16px; }
.aiga .aiga-btn--sm { min-height: 34px; padding: 0 12px; font-size: 14px; }
.aiga .aiga-btn[disabled], .aiga .aiga-btn.is-busy { opacity: .6; cursor: not-allowed; }
.aiga-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.aiga-actions--center { justify-content: center; }

/* Forms */
.aiga-form { display: grid; gap: 18px; }
.aiga-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 20px; }
.aiga-field { display: grid; gap: 6px; align-content: start; min-width: 0; }
.aiga-field--full { grid-column: 1 / -1; }
.aiga-label { font-size: 15px; font-weight: 600; color: var(--a-navy); }
.aiga-req { color: #b42323; font-weight: 700; }
.aiga-opt { color: var(--a-muted); font-weight: 400; font-size: 13px; }
.aiga .aiga-input {
	width: 100%; min-height: 46px; padding: 10px 14px; margin: 0;
	font: 400 16px/1.5 var(--a-font); color: var(--a-ink);
	background: #fff; border: 1px solid var(--a-border-strong); border-radius: var(--a-radius-sm);
	box-shadow: none; transition: border-color .15s ease, box-shadow .15s ease; text-align: right;
}
.aiga .aiga-input[dir="ltr"] { text-align: left; }
.aiga textarea.aiga-input { min-height: 96px; resize: vertical; }
.aiga select.aiga-input { appearance: none; -webkit-appearance: none; padding-inline-start: 38px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%235b6478' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: left 14px center; }
.aiga .aiga-input:hover { border-color: #b4bbcd; }
.aiga .aiga-input:focus { outline: none; border-color: var(--a-blue); box-shadow: var(--a-focus); }
.aiga .aiga-input::placeholder { color: #9aa1b2; }
.aiga-field.has-error .aiga-input, .aiga-field.has-error .aiga-choice__opt { border-color: #d64545; }
.aiga-help { font-size: 13.5px; line-height: 1.6; color: var(--a-muted); }
.aiga-error { font-size: 13.5px; line-height: 1.6; color: #b42323; font-weight: 500; }
.aiga-pw { position: relative; }
.aiga-pw .aiga-input { padding-inline-start: 48px; }
.aiga .aiga-pw__toggle {
	position: absolute; inset-inline-start: 4px; top: 50%; transform: translateY(-50%);
	width: 40px; height: 38px; display: grid; place-items: center; padding: 0; margin: 0;
	background: transparent; border: 0; border-radius: 6px; color: var(--a-muted); cursor: pointer; box-shadow: none;
}
.aiga .aiga-pw__toggle:hover { color: var(--a-navy); background: var(--a-bg); }
.aiga .aiga-pw__toggle[aria-pressed="true"] { color: var(--a-primary); }
.aiga-check { display: inline-flex; align-items: flex-start; gap: 10px; font-size: 15px; color: var(--a-ink); cursor: pointer; line-height: 1.6; }
.aiga-check input { width: 18px; height: 18px; margin: 4px 0 0; accent-color: var(--a-primary); flex: none; }
.aiga-check--block { display: flex; padding: 14px 16px; border: 1px solid var(--a-border); border-radius: var(--a-radius-sm); background: var(--a-bg); }
.aiga-field.has-error .aiga-check--block { border-color: #d64545; background: #fff7f7; }
.aiga-row-between { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; font-size: 15px; }
.aiga-hp { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; margin: -1px; padding: 0; border: 0; }

.aiga-choice { border: 0; padding: 0; margin: 0; min-width: 0; display: grid; gap: 6px; }
.aiga-choice legend { padding: 0; }
.aiga-choice__opts { display: flex; gap: 10px; flex-wrap: wrap; }
.aiga-choice__opt { position: relative; flex: 1 1 120px; display: flex; align-items: center; gap: 10px; min-height: 46px; padding: 0 14px; border: 1px solid var(--a-border-strong); border-radius: var(--a-radius-sm); cursor: pointer; background: #fff; transition: border-color .15s, background-color .15s; }
.aiga-choice__opt input { accent-color: var(--a-primary); width: 18px; height: 18px; margin: 0; }
.aiga-choice__opt:has(input:checked) { border-color: var(--a-primary); background: var(--a-primary-soft); }
.aiga-choice__opt:has(input:focus-visible) { box-shadow: var(--a-focus); }

/* Form sections */
.aiga-section { border: 0; margin: 0; padding: 0 0 24px; border-bottom: 1px solid var(--a-border); display: grid; gap: 16px; min-width: 0; }
.aiga-section:last-of-type { border-bottom: 0; }
.aiga-section legend { display: flex; align-items: center; gap: 10px; font-size: 18px; font-weight: 700; color: var(--a-navy); padding: 0; }
body .aiga .aiga-section legend { margin-bottom: 4px; }
body .aiga .aiga-choice legend { margin-bottom: 6px; }
.aiga-section__n { width: 28px; height: 28px; border-radius: 50%; display: inline-grid; place-items: center; background: var(--a-primary); color: #fff; font-size: 14px; font-weight: 700; }
.aiga-plans { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.aiga-plan { position: relative; display: flex; gap: 12px; padding: 18px; border: 1px solid var(--a-border-strong); border-radius: var(--a-radius); background: #fff; cursor: pointer; transition: border-color .15s, background-color .15s, box-shadow .15s; }
.aiga-plan input { accent-color: var(--a-primary); width: 18px; height: 18px; margin: 4px 0 0; flex: none; }
.aiga-plan__body { display: grid; gap: 4px; }
.aiga-plan__body strong { color: var(--a-navy); font-size: 16px; }
.aiga-plan__fee { color: var(--a-primary); font-weight: 600; font-size: 15px; }
.aiga-plan:has(input:checked) { border-color: var(--a-primary); background: #fbfaff; box-shadow: 0 0 0 1px var(--a-primary) inset; }
.aiga-plan:has(input:focus-visible) { box-shadow: var(--a-focus); }
.aiga-section.has-error .aiga-plan { border-color: #d64545; }

/* Alerts */
.aiga-alert { display: flex; gap: 12px; align-items: flex-start; padding: 14px 16px; border-radius: var(--a-radius-sm); border: 1px solid; font-size: 15px; line-height: 1.7; }
.aiga-alert .aiga-icon { margin-top: 3px; }
.aiga-alert--success { background: #ecf7f3; border-color: #bfe3d7; color: #0f5e50; }
.aiga-alert--error { background: #fdf0f0; border-color: #f2c4c4; color: #8f1d1d; }
.aiga-alert--warning { background: #fdf6e7; border-color: #f0dcae; color: #7a4f00; }
.aiga-alert--info { background: #eef3fd; border-color: #cbd9f6; color: #24479c; }

/* Badges & chips */
.aiga-badge { display: inline-flex; align-items: center; gap: 6px; padding: 3px 12px; border-radius: 999px; font-size: 13.5px; font-weight: 600; line-height: 1.6; white-space: nowrap; border: 1px solid transparent; }
.aiga-badge::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; opacity: .9; }
.aiga-badge--success { background: #e7f5f1; color: #12705f; border-color: #c8e8df; }
.aiga-badge--warning { background: #fdf4e3; color: #8a5a00; border-color: #f2e0b8; }
.aiga-badge--info { background: #eaf0fd; color: #2c54b8; border-color: #cfdcf8; }
.aiga-badge--danger { background: #fdecec; color: #b42323; border-color: #f5cccc; }
.aiga-badge--neutral { background: #f0f2f6; color: #4a5368; border-color: #e1e5ec; }
.aiga-chips { display: inline-flex; flex-wrap: wrap; gap: 6px; }
.aiga-chip { padding: 1px 10px; border-radius: 6px; background: var(--a-primary-soft); color: var(--a-primary); font-size: 14px; font-weight: 600; }

/* Description lists */
.aiga-dl { display: grid; gap: 0; }
.aiga-dl > div { display: grid; grid-template-columns: minmax(130px, 38%) 1fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--a-border); }
.aiga-dl > div:last-child { border-bottom: 0; }
.aiga-dl dt { color: var(--a-muted); font-size: 15px; }
.aiga-dl dd { color: var(--a-ink); font-weight: 500; overflow-wrap: anywhere; }
.aiga-dl--grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 24px; }
.aiga-dl--grid > div { grid-template-columns: 1fr; gap: 4px; border-bottom: 0; border-top: 1px solid var(--a-border); padding: 14px 0; }
.aiga-dl--compact > div { padding: 8px 0; }

/* Tiles */
.aiga-tiles { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.aiga-tiles--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.aiga-tile { height: 100%; display: flex; align-items: center; gap: 16px; padding: 20px; background: var(--a-surface); border: 1px solid var(--a-border); border-radius: var(--a-radius); color: var(--a-ink); transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.aiga a.aiga-tile:hover { text-decoration: none; border-color: #c9c7e8; box-shadow: 0 6px 20px rgba(64, 61, 149, .08); }
.aiga-tile__icon { width: 46px; height: 46px; flex: none; display: grid; place-items: center; border-radius: 10px; background: var(--a-primary-soft); color: var(--a-primary); }
.aiga-tile__text { display: grid; gap: 2px; flex: 1; min-width: 0; }
.aiga-tile__text strong { color: var(--a-navy); font-size: 16.5px; font-weight: 700; }
.aiga-tile__text span { color: var(--a-muted); font-size: 14.5px; line-height: 1.6; }
.aiga-tile__arrow { color: #a3a9ba; transition: transform .18s ease, color .18s ease; }
.aiga a.aiga-tile:hover .aiga-tile__arrow { color: var(--a-primary); transform: translateX(-3px); }

/* Membership types */
.aiga-types { display: grid; gap: 4px; }
.aiga-types__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-bottom: 8px; }
.aiga-type { background: var(--a-surface); border: 1px solid var(--a-border); border-radius: var(--a-radius); padding: 24px; display: grid; gap: 8px; align-content: start; border-top: 3px solid var(--a-primary); }
.aiga-type + .aiga-type { border-top-color: var(--a-teal); }
.aiga-type h3 { font-size: 18px; color: var(--a-navy); font-weight: 700; }
.aiga-type__fee { font-size: 22px; font-weight: 700; color: var(--a-primary); line-height: 1.4; }
.aiga-type + .aiga-type .aiga-type__fee { color: var(--a-teal); font-size: 18px; }
.aiga-type__fee span { display: block; font-size: 14px; font-weight: 400; color: var(--a-muted); }
.aiga-type p:last-child { color: var(--a-ink); font-size: 15px; }

/* Welcome strip */
.aiga-welcome { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 22px 26px; background: var(--a-surface); border: 1px solid var(--a-border); border-radius: var(--a-radius); }
.aiga-welcome h2 { font-size: 22px; color: var(--a-navy); font-weight: 700; line-height: 1.4; }

/* Member identity card (dashboard) */
.aiga-member-card {
	position: relative; overflow: hidden;
	display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
	padding: 28px 32px; border-radius: var(--a-radius);
	background: #10305e;
	background-image: radial-gradient(120% 140% at 0% 100%, rgba(26, 156, 132, .35) 0%, rgba(26, 156, 132, 0) 55%), linear-gradient(120deg, #1b2b6b 0%, #403d95 55%, #2f5fcf 100%);
	color: #fff;
}
.aiga-member-card::after { /* logo-like stripes, decorative */
	content: ""; position: absolute; inset-inline-start: -10px; top: 18px; width: 180px; height: calc(100% - 36px);
	background: repeating-linear-gradient(180deg, rgba(255, 255, 255, .10) 0 5px, transparent 5px 13px);
	-webkit-mask-image: linear-gradient(270deg, #000 0%, transparent 100%); mask-image: linear-gradient(270deg, #000 0%, transparent 100%);
	pointer-events: none;
}
.aiga-member-card .aiga-eyebrow { color: #9fe3d3; }
.aiga-member-card h2 { font-size: clamp(22px, 2.6vw, 28px); line-height: 1.35; font-weight: 700; color: #fff; }
body .aiga .aiga-member-card__role { margin-top: 4px; }
.aiga-member-card__role { color: rgba(255, 255, 255, .82); font-size: 15px; }
.aiga-member-card__main, .aiga-member-card__no { position: relative; z-index: 1; }
.aiga-member-card__no { display: grid; gap: 2px; padding: 14px 20px; border-radius: 10px; background: rgba(255, 255, 255, .10); border: 1px solid rgba(255, 255, 255, .18); min-width: 200px; }
.aiga-member-card__no span { font-size: 13px; color: rgba(255, 255, 255, .78); }
.aiga-member-card__no strong { font-size: 26px; line-height: 1.3; font-weight: 700; color: #fff; }
.aiga-member-card__no small { color: rgba(255, 255, 255, .78); font-size: 13px; }

/* Lookup */
.aiga-lookup__row { display: grid; grid-template-columns: 1fr auto; gap: 12px; align-items: end; }
.aiga-lookup__row .aiga-btn { min-height: 46px; }
.aiga-result { border-top: 1px solid var(--a-border); padding-top: 20px; display: grid; gap: 14px; }
.aiga-result__head { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.aiga-result__head > div { flex: 1; min-width: 200px; }
.aiga-result__icon { width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; flex: none; }
.aiga-result__icon.is-ok { background: #e7f5f1; color: #12705f; }
.aiga-result__icon.is-none { background: #f0f2f6; color: #4a5368; }

/* Tables */
.aiga-table-wrap { overflow-x: auto; border: 1px solid var(--a-border); border-radius: var(--a-radius-sm); }
.aiga-table { width: 100%; border-collapse: collapse; font-size: 15px; margin: 0; }
.aiga-table th, .aiga-table td { padding: 12px 14px; text-align: right; border: 0; border-bottom: 1px solid var(--a-border); vertical-align: middle; }
.aiga-table thead th { background: #f7f8fb; color: var(--a-muted); font-weight: 600; font-size: 14px; white-space: nowrap; }
.aiga-table tbody tr:last-child td { border-bottom: 0; }
.aiga-table tbody tr:hover td { background: #fafbfd; }
.aiga-table form { margin: 0; }

/* Details / disclosure */
.aiga-details { border: 1px solid var(--a-border); border-radius: var(--a-radius-sm); padding: 0 16px; }
.aiga-details > summary { cursor: pointer; padding: 14px 0; font-weight: 600; color: var(--a-primary); list-style-position: inside; }
.aiga-details[open] > summary { border-bottom: 1px solid var(--a-border); margin-bottom: 16px; }
.aiga-details > form { padding-bottom: 16px; }

/* Empty states */
.aiga-empty { text-align: center; padding: 56px 24px; background: var(--a-surface); border: 1px dashed var(--a-border-strong); border-radius: var(--a-radius); display: grid; gap: 10px; justify-items: center; color: var(--a-muted); }
.aiga-empty .aiga-icon { color: var(--a-primary); }
.aiga-empty h2 { font-size: 20px; color: var(--a-navy); font-weight: 700; }
.aiga-empty .aiga-actions { margin-top: 8px; }
.aiga-empty--inline { padding: 32px 16px; border: 0; background: var(--a-bg); }

/* Card view */
.aiga-card-view { display: grid; gap: 18px; }
.aiga-card-view__bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 20px 24px; background: var(--a-surface); border: 1px solid var(--a-border); border-radius: var(--a-radius); }
.aiga-card-frame { width: 100%; max-width: 760px; margin-inline: auto; aspect-ratio: 210 / 297; background: #fff; border: 1px solid var(--a-border); border-radius: 6px; box-shadow: 0 12px 40px rgba(16, 48, 94, .10); overflow: hidden; }
.aiga-card-frame iframe { display: block; width: 100%; height: 100%; border: 0; }

/* Responsive ------------------------------------------------------------ */
@media (max-width: 1024px) {
	.aiga-layout-form { grid-template-columns: 1fr; }
	.aiga-aside--sticky { position: static; }
	.aiga-dl--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
	.aiga-split, .aiga-split--even { grid-template-columns: 1fr; }
	.aiga-tiles, .aiga-types__grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
	.aiga-wrap { padding-inline: 16px; }
	.aiga-hero { padding-block: 26px 22px; }
	.aiga-lead { font-size: 16px; }
	.aiga-body { padding-block: 22px 48px; gap: 22px; }
	.aiga-panel, .aiga-aside { padding: 20px 18px; }
	.aiga-grid, .aiga-plans { grid-template-columns: 1fr; }
	.aiga-dl--grid { grid-template-columns: 1fr; }
	.aiga-dl > div { grid-template-columns: 1fr; gap: 2px; }
	.aiga-member-card { padding: 22px 20px; }
	.aiga-member-card__no { width: 100%; }
	.aiga-lookup__row { grid-template-columns: 1fr; }
	.aiga-lookup__row .aiga-btn { width: 100%; }
	.aiga-actions .aiga-btn { flex: 1 1 auto; }
	.aiga-subnav a { min-height: 48px; padding: 0 10px; font-size: 14.5px; }
	.aiga-subnav__end { margin-inline-start: 0; }
	/* Tables become stacked records */
	.aiga-table-wrap { border: 0; overflow: visible; }
	.aiga-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.aiga-table, .aiga-table tbody, .aiga-table tr, .aiga-table td { display: block; width: 100%; }
	.aiga-table tr { border: 1px solid var(--a-border); border-radius: var(--a-radius-sm); padding: 6px 14px; margin-bottom: 12px; }
	.aiga-table td { display: grid; grid-template-columns: 42% 1fr; gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--a-border); }
	.aiga-table td::before { content: attr(data-label); color: var(--a-muted); font-size: 14px; }
	.aiga-table tr td:last-child { border-bottom: 0; }
	.aiga-table td.aiga-td-actions { display: block; }
	.aiga-table td.aiga-td-actions:empty { display: none; }
	.aiga-table tbody tr:hover td { background: transparent; }
}
@media (prefers-reduced-motion: reduce) {
	.aiga *, .aiga *::before, .aiga *::after { transition: none !important; animation: none !important; }
}
@media print {
	.aiga-subnav, .aiga-actions, .aiga-crumbs { display: none !important; }
	.aiga { background: #fff; }
}

.aiga .aiga-staffbar { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.aiga .aiga-staffbar p { flex: 1 1 260px; margin: 0; }
