/*
 * CRNA Schools Finder — full finder styles.
 * Scoped under .crna-finder. Brand: navy #12294A, teal #0B6E7F.
 */
.crna-finder {
	--crna-navy: #12294A;
	--crna-navy-hover: #1C3B66;
	--crna-navy-active: #0B1C34;
	--crna-teal: #0B6E7F;
	--crna-teal-bg: #F1F8F9;
	--crna-text: #17212B;
	--crna-muted: #55616D;
	--crna-border: #D9E2E7;
	--crna-control: #7D8B98;
	--crna-soft: #F4F7FA;
	--crna-gray: #F2F4F6;
	--crna-error: #B42318;
	--crna-error-bg: #FEF3F2;
	--crna-warn: #8A4600;
	--crna-warn-bg: #FFF4E5;
	--crna-ok: #1D6B3A;
	--crna-ok-bg: #EAF5EE;
	--crna-focus: 0 0 0 3px #fff, 0 0 0 6px var(--crna-teal);
	--crna-tray-h: 0px;
	color: var(--crna-text);
	font-size: 16px;
	font-weight: 400; /* Themes with light body weights (e.g. 300) reduce legibility. */
	line-height: 1.5;
	font-variant-numeric: tabular-nums;
	-webkit-font-smoothing: antialiased;
	text-align: left;
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
}
.crna-finder *,
.crna-finder *::before,
.crna-finder *::after { box-sizing: border-box; }
.crna-finder h1, .crna-finder h2, .crna-finder h3, .crna-finder h4 { font-family: inherit; letter-spacing: normal; text-transform: none; }
.crna-finder p { margin: 0; }
.crna-finder a { color: var(--crna-teal); text-underline-offset: 3px; }
.crna-finder a:hover { color: var(--crna-navy); }
.crna-finder :focus-visible { outline: 3px solid var(--crna-teal); outline-offset: 2px; }
.crna-finder [hidden] { display: none !important; }
.crna-finder .crna-icon { flex: none; display: inline-block; vertical-align: middle; }
.crna-finder .crna-sr,
.crna-finder .screen-reader-text {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0;
}
html:not(.crna-js) .crna-finder .crna-requires-js { display: none !important; }
html.crna-js .crna-finder .crna-nojs-only { display: none !important; }

/* Skip link */
.crna-finder .crna-skip {
	position: absolute; left: -9999px; top: 8px; z-index: 100; padding: 12px 16px;
	background: var(--crna-navy); color: #fff; border-radius: 8px; font-weight: 600; text-decoration: none;
}
.crna-finder .crna-skip:focus { left: 16px; color: #fff; }

/* Buttons and links */
.crna-finder .crna-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 44px; padding: 0 18px; border-radius: 8px; border: 1.5px solid transparent;
	font-weight: 600; font-size: 15px; line-height: 1.2; font-family: inherit; text-decoration: none; cursor: pointer;
	background: transparent; color: var(--crna-navy); white-space: nowrap; box-shadow: none; text-transform: none; letter-spacing: normal;
}
.crna-finder .crna-btn--primary { background: var(--crna-navy); color: #fff; border-color: var(--crna-navy); min-height: 48px; font-size: 16px; padding: 0 20px; }
.crna-finder .crna-btn--primary:hover { background: var(--crna-navy-hover); border-color: var(--crna-navy-hover); color: #fff; }
.crna-finder .crna-btn--primary:active { background: var(--crna-navy-active); }
.crna-finder .crna-btn--primary[aria-disabled="true"] { background: var(--crna-gray); border-color: var(--crna-gray); color: var(--crna-muted); }
.crna-finder .crna-btn--outline { background: #fff; border-color: var(--crna-navy); color: var(--crna-navy); }
.crna-finder .crna-btn--outline:hover { background: var(--crna-soft); color: var(--crna-navy); }
.crna-finder .crna-btn--block { display: flex; width: 100%; }
.crna-finder .crna-linkbtn {
	display: inline-flex; align-items: center; min-height: 44px; padding: 0 8px; border: 0; background: transparent;
	color: var(--crna-teal); font-weight: 600; font-size: 15px; line-height: 1.2; font-family: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; box-shadow: none;
}
.crna-finder .crna-linkbtn:hover { color: var(--crna-navy); background: transparent; }
.crna-finder .crna-linkbtn--sm { font-size: 14px; font-weight: 500; padding: 0; }
.crna-finder .crna-iconbtn {
	display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; flex: none;
	border: 0; border-radius: 8px; background: transparent; color: var(--crna-navy); cursor: pointer; padding: 0; box-shadow: none;
}
.crna-finder .crna-iconbtn:hover { background: var(--crna-soft); color: var(--crna-navy); }
.crna-finder .crna-strong-link { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; font-size: 15px; font-weight: 600; }

/* Intro */
.crna-finder .crna-intro { padding: 32px 0 28px; }
.crna-finder .crna-intro__title { margin: 0; font-size: 48px; line-height: 1.15; letter-spacing: -0.02em; font-weight: 700; color: var(--crna-navy); }
.crna-finder .crna-intro__text { margin-top: 8px; font-size: 17px; line-height: 1.55; color: var(--crna-muted); max-width: 680px; }
.crna-finder .crna-demo { margin-top: 12px; display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; font-size: 14px; line-height: 1.45; color: var(--crna-muted); }
.crna-finder .crna-demo__badge { display: inline-flex; align-items: center; min-height: 24px; padding: 0 8px; border-radius: 6px; background: var(--crna-warn-bg); color: var(--crna-warn); font-weight: 600; }
.crna-finder .crna-preview-note { margin: 0 0 16px; padding: 10px 14px; border-radius: 8px; background: var(--crna-warn-bg); color: var(--crna-warn); font-weight: 600; font-size: 14px; }

/* Layout */
.crna-finder .crna-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
@media (min-width: 1024px) {
	.crna-finder .crna-layout { grid-template-columns: 300px minmax(0, 1fr); gap: 40px; }
}

/* Filters panel */
.crna-finder .crna-filters { background: #fff; min-width: 0; }
.crna-finder .crna-filters__form { display: flex; flex-direction: column; min-height: 0; margin: 0; }
.crna-finder .crna-filters__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 0 12px; }
.crna-finder .crna-filters__title { margin: 0; font-size: 20px; line-height: 1.3; color: var(--crna-navy); outline: none; }
.crna-finder .crna-filters__intro { margin: 0 0 8px; }
.crna-finder .crna-filters__body { min-height: 0; }
.crna-finder .crna-filters__body > .crna-group:last-child { border-bottom: 1px solid var(--crna-border); }
.crna-finder .crna-filters__foot {
	position: sticky; bottom: var(--crna-tray-h); z-index: 1; padding: 16px 0; border-top: 1px solid var(--crna-border);
	display: flex; flex-direction: column; gap: 8px; background: #fff;
}
.crna-finder .crna-filters__dirty { font-size: 14px; color: var(--crna-warn); }
.crna-finder .crna-filters__links { display: flex; justify-content: space-between; gap: 8px; }
.crna-finder .crna-filters__links .crna-linkbtn:first-child { padding-left: 0; }

/* Groups */
.crna-finder .crna-group { border-top: 1px solid var(--crna-border); margin: 0; padding: 0; }
.crna-finder .crna-group__summary {
	display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 52px; cursor: pointer;
	font-size: 16px; font-weight: 600; color: var(--crna-navy); list-style: none; padding: 0;
}
.crna-finder .crna-group__summary::-webkit-details-marker { display: none; }
.crna-finder .crna-group__summary::marker { content: ""; }
.crna-finder .crna-group__meta { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 500; color: var(--crna-teal); }
.crna-finder .crna-group__meta .crna-icon { color: var(--crna-navy); transition: transform .2s; }
.crna-finder .crna-group[open] > .crna-group__summary .crna-icon { transform: rotate(180deg); }
.crna-finder .crna-group__body { display: flex; flex-direction: column; gap: 20px; padding: 4px 0 20px; }

/* Fields */
.crna-finder .crna-field { border: 0; margin: 0; padding: 0; min-width: 0; }
.crna-finder .crna-label { display: block; padding: 0; font-size: 16px; font-weight: 600; color: var(--crna-text); margin: 0 0 8px; }
.crna-finder fieldset.crna-field > .crna-label { margin-bottom: 2px; float: none; width: auto; }
.crna-finder .crna-help { font-size: 14px; line-height: 1.45; color: var(--crna-muted); }
.crna-finder .crna-field .crna-help { margin: -6px 0 8px; }
.crna-finder fieldset.crna-field .crna-help { margin: 0 0 4px; }
.crna-finder .crna-optional { font-weight: 400; color: var(--crna-muted); }
.crna-finder .crna-error { display: flex; gap: 6px; margin: 8px 0 0; font-size: 14px; line-height: 1.4; color: var(--crna-error); }
.crna-finder .crna-select { position: relative; }
.crna-finder .crna-select select {
	appearance: none; -webkit-appearance: none; width: 100%; height: 48px; margin: 0; border: 1px solid var(--crna-control); border-radius: 8px;
	padding: 0 40px 0 14px; font-weight: 400; font-size: 16px; line-height: 1.2; font-family: inherit; color: var(--crna-text); background: #fff; cursor: pointer;
	text-overflow: ellipsis; box-shadow: none; max-width: 100%;
}
.crna-finder .crna-select .crna-icon { position: absolute; right: 14px; top: 50%; margin-top: -9px; pointer-events: none; color: var(--crna-navy); }
.crna-finder .crna-select--compact select { height: 44px; padding: 0 36px 0 12px; font-weight: 500; font-size: 15px; }
.crna-finder .crna-select--compact .crna-icon { right: 12px; }
.crna-finder .crna-input { display: flex; align-items: stretch; height: 48px; max-width: 100%; border: 1px solid var(--crna-control); border-radius: 8px; overflow: hidden; background: #fff; }
.crna-finder .crna-field--number .crna-input { width: 180px; }
.crna-finder .crna-field--currency .crna-input { width: 180px; }
.crna-finder .crna-field--text .crna-input { width: 100%; }
.crna-finder .crna-input input {
	flex: 1; min-width: 0; width: 100%; height: 100%; margin: 0; border: 0; border-radius: 0; padding: 0 12px; background: #fff;
	font-weight: 400; font-size: 16px; line-height: 1.2; font-family: inherit; color: var(--crna-text); box-shadow: none; outline-offset: -3px;
}
.crna-finder .crna-input:focus-within { outline: 3px solid var(--crna-teal); outline-offset: 2px; }
.crna-finder .crna-input input:focus-visible { outline: none; }
.crna-finder .crna-input__addon { display: flex; align-items: center; padding: 0 12px; background: var(--crna-soft); border-right: 1px solid var(--crna-border); color: var(--crna-muted); font-size: 16px; }
.crna-finder .crna-input__addon--end { border-right: 0; border-left: 1px solid var(--crna-border); font-size: 15px; }
.crna-finder .crna-field.is-invalid .crna-input { border-color: var(--crna-error); box-shadow: inset 0 0 0 1px var(--crna-error); }
.crna-finder .crna-check { display: flex; align-items: center; gap: 12px; min-height: 44px; font-size: 16px; cursor: pointer; font-weight: 400; margin: 0; }
.crna-finder .crna-check input { width: 20px; height: 20px; margin: 0; flex: none; accent-color: var(--crna-teal); }
.crna-finder .crna-check--top { align-items: flex-start; line-height: 1.4; }
.crna-finder .crna-check--top input { margin-top: 1px; }

/* Results header */
.crna-finder .crna-results { min-width: 0; }
.crna-finder .crna-results__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 16px; }
.crna-finder .crna-results__count { min-width: 0; }
.crna-finder .crna-results__count h2 { margin: 0; font-size: 20px; line-height: 1.3; color: var(--crna-navy); outline: none; }
.crna-finder .crna-results__sub { margin-top: 2px; font-size: 14px; line-height: 1.45; color: var(--crna-muted); min-height: 20px; }
.crna-finder .crna-results__tools { display: grid; grid-template-columns: auto; gap: 8px; align-items: center; }
.crna-finder .crna-sort { display: flex; align-items: center; gap: 8px; min-width: 0; margin: 0; }
.crna-finder .crna-sort label { font-size: 15px; font-weight: 500; color: var(--crna-muted); white-space: nowrap; }
.crna-finder .crna-sort .crna-select { flex: 1; min-width: 0; }
.crna-finder .crna-sort__short { display: none; }
.crna-finder .crna-filters-open { gap: 8px; border-width: 1px; border-color: var(--crna-control); }

/* Chips */
.crna-finder .crna-chips { list-style: none; margin: 12px 0 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.crna-finder .crna-chips li { margin: 0; padding: 0; }
.crna-finder .crna-chip {
	display: inline-flex; align-items: center; min-height: 36px; padding: 0 0 0 14px; border-radius: 999px; background: var(--crna-teal-bg);
	border: 1px solid var(--crna-teal); color: var(--crna-navy); font-size: 15px; font-weight: 500; max-width: 100%;
}
.crna-finder .crna-chip span { overflow-wrap: anywhere; }
.crna-finder .crna-chip--muted { background: var(--crna-gray); border-color: var(--crna-control); }
.crna-finder .crna-chip__x {
	flex: none; width: 44px; height: 44px; margin: -4px -4px -4px -2px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center;
	color: var(--crna-navy); text-decoration: none;
}
.crna-finder .crna-chip__x:hover { color: var(--crna-teal); }
.crna-finder .crna-chips .crna-linkbtn { margin: -4px 0; }
.crna-finder .crna-sortnote, .crna-finder .crna-notice { margin-top: 12px; font-size: 14px; line-height: 1.45; color: var(--crna-muted); }

/* Alert */
.crna-finder .crna-alert { margin-top: 16px; padding: 16px 20px; border-radius: 10px; background: var(--crna-error-bg); display: flex; flex-wrap: wrap; gap: 12px 16px; align-items: center; justify-content: space-between; }
.crna-finder .crna-alert p { display: flex; gap: 8px; font-size: 15px; line-height: 1.5; flex: 1 1 280px; }
.crna-finder .crna-alert b { color: var(--crna-error); }
.crna-finder .crna-alert .crna-icon { color: var(--crna-error); margin-top: 2px; }

/* Region & sections */
.crna-finder .crna-region { margin-top: 16px; transition: opacity .15s; }
.crna-finder .crna-region[aria-busy="true"] { opacity: .5; }
.crna-finder .crna-empty, .crna-finder .crna-zero { border: 1px solid var(--crna-border); border-radius: 12px; padding: 24px; margin-top: 16px; }
.crna-finder .crna-zero__title { margin: 0; font-size: 20px; line-height: 1.3; color: var(--crna-navy); }
.crna-finder .crna-zero > p { margin-top: 8px; }
.crna-finder .crna-zero__criteria { margin: 8px 0 0; padding: 0 0 0 20px; display: flex; flex-direction: column; gap: 4px; list-style: disc; }
.crna-finder .crna-zero__sub { margin: 24px 0 8px; font-size: 16px; color: var(--crna-navy); }
.crna-finder .crna-recovery { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.crna-finder .crna-recovery li { margin: 0; }
.crna-finder .crna-recovery__btn {
	width: 100%; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 16px; min-height: 48px; padding: 10px 16px;
	border: 1px solid var(--crna-control); border-radius: 8px; background: #fff; font-weight: 500; color: var(--crna-navy); text-decoration: none;
}
.crna-finder .crna-recovery__btn:hover { background: var(--crna-soft); color: var(--crna-navy); }
.crna-finder .crna-recovery__count { font-size: 15px; font-weight: 600; color: var(--crna-teal); }
.crna-finder .crna-zero .crna-help { margin-top: 16px; }
.crna-finder .crna-zero > .crna-linkbtn { margin-top: 8px; padding-left: 0; }
.crna-finder .crna-section { margin-top: 32px; }
.crna-finder .crna-section__title { margin: 20px 0 0; font-size: 20px; line-height: 1.3; color: var(--crna-navy); outline: none; }
.crna-finder .crna-section__desc { margin: 4px 0 16px; font-size: 15px; line-height: 1.5; color: var(--crna-muted); max-width: 720px; }
.crna-finder .crna-prompt { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding: 14px 16px; border-radius: 10px; background: var(--crna-soft); }
.crna-finder .crna-prompt p { font-size: 15px; line-height: 1.5; flex: 1 1 260px; }
.crna-finder .crna-more { display: flex; flex-direction: column; align-items: center; gap: 10px; margin-top: 24px; font-size: 15px; color: var(--crna-muted); text-align: center; }

/* Cards */
.crna-finder .crna-cards { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.crna-finder .crna-cards__item { margin: 0; padding: 0; }
.crna-finder .crna-card { border: 1px solid var(--crna-border); border-radius: 12px; background: #fff; overflow: hidden; scroll-margin-top: 16px; scroll-margin-bottom: calc(var(--crna-tray-h) + 16px); }
.crna-finder .crna-card--draft { border-style: dashed; }
.crna-finder .crna-card__main { padding: 20px 24px; }
.crna-finder .crna-card__title { margin: 0; font-size: 20px; line-height: 1.3; font-weight: 600; color: var(--crna-navy); outline: none; overflow-wrap: anywhere; }
.crna-finder .crna-card__program { margin-top: 2px; font-size: 16px; line-height: 1.4; overflow-wrap: anywhere; }
.crna-finder .crna-card__loc { margin-top: 4px; font-size: 15px; color: var(--crna-muted); }
.crna-finder .crna-card__status { margin-top: 14px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; }
.crna-finder .crna-badge { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 0 12px 0 10px; border-radius: 999px; font-size: 15px; font-weight: 600; white-space: nowrap; }
.crna-finder .crna-badge--open, .crna-finder .crna-badge--open_no_date { background: var(--crna-ok-bg); color: var(--crna-ok); }
.crna-finder .crna-badge--closing_soon { background: var(--crna-warn-bg); color: var(--crna-warn); }
.crna-finder .crna-badge--upcoming { background: var(--crna-teal-bg); color: var(--crna-teal); }
.crna-finder .crna-badge--rolling { background: var(--crna-soft); color: var(--crna-navy); }
.crna-finder .crna-badge--unconfirmed, .crna-finder .crna-badge--passed, .crna-finder .crna-badge--not_announced, .crna-finder .crna-badge--paused { background: var(--crna-gray); color: var(--crna-muted); }
.crna-finder .crna-card__deadline { font-size: 16px; line-height: 1.45; }
.crna-finder .crna-card__deadline b { font-weight: 600; }
.crna-finder .crna-card__left { color: var(--crna-muted); }
.crna-finder .crna-card__left.is-strong { color: var(--crna-navy); font-weight: 600; }
.crna-finder .crna-card__cycle { margin-top: 6px; font-size: 14px; line-height: 1.45; color: var(--crna-muted); }
.crna-finder .crna-reason { margin-top: 12px; padding: 10px 12px; border-radius: 8px; font-size: 15px; line-height: 1.45; }
.crna-finder .crna-reason--unknown { background: var(--crna-gray); }
.crna-finder .crna-reason--near { background: var(--crna-warn-bg); }
.crna-finder .crna-reason b { font-weight: 600; }

.crna-finder .crna-facts { margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); border-top: 1px solid var(--crna-border); overflow: hidden; }
.crna-finder .crna-fact { padding: 14px 24px; margin: 0 0 -1px -1px; border-left: 1px solid var(--crna-border); border-bottom: 1px solid var(--crna-border); min-width: 0; }
.crna-finder .crna-fact dt { font-size: 14px; line-height: 1.4; color: var(--crna-muted); font-weight: 400; margin: 0; }
.crna-finder .crna-fact dd { margin: 4px 0 0; overflow-wrap: anywhere; }
.crna-finder .crna-val--val { font-size: 17px; font-weight: 600; color: var(--crna-text); }
.crna-finder .crna-fact .crna-val--unk { font-size: 16px; font-style: italic; color: var(--crna-muted); font-weight: 400; }
.crna-finder .crna-fact .crna-val--verify { font-size: 16px; color: var(--crna-warn); font-weight: 500; }
.crna-finder .crna-fact__sub { margin-top: 2px !important; font-size: 14px; line-height: 1.4; color: var(--crna-muted); }
.crna-finder .crna-card__row { padding: 14px 24px; border-top: 1px solid var(--crna-border); display: flex; flex-direction: column; gap: 10px; }
.crna-finder .crna-card__secondary { display: flex; flex-wrap: wrap; gap: 4px 24px; font-size: 15px; color: var(--crna-muted); }
.crna-finder .crna-card__secondary b { font-weight: 500; color: var(--crna-text); }
.crna-finder .crna-card__secondary b.crna-val--unk { font-style: italic; color: var(--crna-muted); }
.crna-finder .crna-card__secondary b.crna-val--verify { color: var(--crna-warn); }
.crna-finder .crna-fit { display: flex; align-items: flex-start; gap: 8px; font-size: 15px; line-height: 1.45; color: var(--crna-navy); }
.crna-finder .crna-fit .crna-icon { margin-top: 1px; }
.crna-finder .crna-fit--below { color: var(--crna-warn); }
.crna-finder .crna-fit--unknown { color: var(--crna-muted); }

.crna-finder .crna-card__details { border-top: 1px solid var(--crna-border); background: var(--crna-soft); padding: 20px 24px; }
html.crna-js .crna-finder .crna-card__details:not(.is-open) { display: none; }
.crna-finder .crna-details__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)); gap: 24px 32px; }
.crna-finder .crna-details__group h4, .crna-finder .crna-sources h4 { margin: 0 0 2px; font-size: 16px; font-weight: 600; color: var(--crna-navy); }
.crna-finder .crna-details__group dl { margin: 0; font-size: 15px; line-height: 1.45; }
.crna-finder .crna-row { padding: 10px 0; border-bottom: 1px solid var(--crna-border); }
.crna-finder .crna-row dt { color: var(--crna-muted); font-size: 14px; font-weight: 400; margin: 0; }
.crna-finder .crna-row dd { margin: 2px 0 0; overflow-wrap: anywhere; }
.crna-finder .crna-row .crna-val--val { font-size: 15px; font-weight: 500; }
.crna-finder .crna-row .crna-val--unk { font-style: italic; color: var(--crna-muted); }
.crna-finder .crna-row .crna-val--verify { color: var(--crna-warn); font-weight: 500; }
.crna-finder .crna-row__meta { font-size: 14px; color: var(--crna-muted); }
.crna-finder .crna-sources { margin-top: 24px; }
.crna-finder .crna-sources ul { list-style: none; margin: 8px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)); gap: 12px; }
.crna-finder .crna-source { margin: 0; background: #fff; border: 1px solid var(--crna-border); border-radius: 10px; padding: 14px 16px; font-size: 15px; line-height: 1.45; min-width: 0; }
.crna-finder .crna-source__name { font-weight: 600; color: var(--crna-navy); }
.crna-finder .crna-source__fields, .crna-finder .crna-source__note { font-size: 14px; color: var(--crna-muted); margin-top: 2px; }
.crna-finder .crna-source__meta { font-size: 14px; margin-top: 6px; }
.crna-finder .crna-source__links { display: flex; flex-wrap: wrap; gap: 4px 16px; margin-top: 8px; }
.crna-finder .crna-source__links a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; font-size: 15px; font-weight: 500; }
.crna-finder .crna-source__links .crna-linkbtn { padding: 0; font-weight: 500; }
.crna-finder .crna-details__links { margin-top: 16px; display: flex; flex-wrap: wrap; gap: 8px 24px; align-items: center; }
.crna-finder .crna-details__links .crna-linkbtn { padding: 0; }

.crna-finder .crna-card__actions { padding: 14px 24px; border-top: 1px solid var(--crna-border); display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; }
.crna-finder .crna-compare {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 44px; padding: 0 14px; margin: 0;
	border: 1px solid var(--crna-control); border-radius: 8px; background: #fff; font-size: 15px; font-weight: 600; color: var(--crna-navy); cursor: pointer;
}
.crna-finder .crna-compare input { width: 18px; height: 18px; margin: 0; accent-color: var(--crna-teal); }
.crna-finder .crna-compare.is-selected { border-color: var(--crna-teal); background: var(--crna-teal-bg); }
.crna-finder .crna-compare.is-full { border-color: var(--crna-border); background: var(--crna-gray); color: var(--crna-muted); cursor: not-allowed; }
.crna-finder .crna-card__more {
	display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; padding: 0 10px; border: 0; border-radius: 8px;
	background: transparent; color: var(--crna-teal); font-weight: 600; font-size: 15px; line-height: 1.2; font-family: inherit; cursor: pointer; box-shadow: none;
}
.crna-finder .crna-card__more:hover { background: var(--crna-teal-bg); color: var(--crna-navy); }
.crna-finder .crna-card__more .crna-icon { transition: transform .2s; }
.crna-finder .crna-card__more[aria-expanded="true"] .crna-icon { transform: rotate(180deg); }
.crna-finder .crna-card__site { margin-left: auto; gap: 8px; padding: 0 16px; }
.crna-finder .crna-card__full { padding: 0 24px 8px; font-size: 14px; color: var(--crna-muted); }
.crna-finder .crna-card__foot { padding: 0 24px 14px; font-size: 14px; color: var(--crna-muted); }

/* Disclaimer */
.crna-finder .crna-disclaimer { margin-top: 40px; font-size: 14px; line-height: 1.55; color: var(--crna-muted); max-width: 720px; }

/* Compare tray */
.crna-finder .crna-tray { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990; background: #fff; border-top: 1px solid var(--crna-border); box-shadow: 0 -8px 24px rgba(18, 41, 74, .12); }
.crna-finder .crna-tray__inner { max-width: 1240px; margin: 0 auto; padding: 12px 40px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; }
.crna-finder .crna-tray__main { flex: 1 1 400px; min-width: 0; }
.crna-finder .crna-tray__title { margin: 0 0 8px; font-size: 16px; line-height: 1.3; color: var(--crna-navy); }
.crna-finder .crna-tray__title span { font-weight: 500; color: var(--crna-muted); }
.crna-finder .crna-tray__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.crna-finder .crna-tray__list li { display: flex; align-items: center; gap: 2px; min-height: 40px; padding: 0 2px 0 12px; margin: 0; border: 1px solid var(--crna-border); border-radius: 8px; font-size: 15px; font-weight: 500; max-width: 100%; }
.crna-finder .crna-tray__list li .crna-tray__out { font-weight: 400; color: var(--crna-warn); margin-left: 6px; }
.crna-finder .crna-tray__list .crna-iconbtn { width: 36px; height: 36px; color: var(--crna-muted); }
.crna-finder .crna-tray__msg { margin-top: 8px; font-size: 14px; line-height: 1.4; color: var(--crna-muted); }
.crna-finder .crna-tray__msg.is-warn { color: var(--crna-warn); }
.crna-finder .crna-tray__msg.is-error { color: var(--crna-error); }
.crna-finder .crna-tray__msg:empty { display: none; }
.crna-finder .crna-tray__short { display: none; flex: 1; min-width: 0; font-size: 14px; line-height: 1.35; }
.crna-finder .crna-tray__short b { display: block; font-size: 15px; color: var(--crna-navy); }
.crna-finder .crna-tray__actions { display: flex; align-items: center; gap: 12px; }
.crna-finder .crna-tray__shortlbl { display: none; }

/* Modals */
.crna-finder .crna-modal { position: fixed; inset: 0; z-index: 9995; display: flex; justify-content: center; align-items: flex-start; padding: 40px; overflow: auto; }
.crna-finder .crna-modal__backdrop { position: fixed; inset: 0; background: rgba(23, 33, 43, .6); }
.crna-finder .crna-modal__dialog { position: relative; background: #fff; width: 100%; max-width: 560px; border-radius: 12px; box-shadow: 0 8px 24px rgba(18, 41, 74, .2); max-height: none; }
.crna-finder .crna-modal__dialog--wide { max-width: 1200px; max-height: calc(100vh - 80px); overflow: auto; }
.crna-finder .crna-modal__head { position: sticky; top: 0; z-index: 2; background: #fff; border-bottom: 1px solid var(--crna-border); padding: 16px 32px; display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; border-radius: 12px 12px 0 0; }
.crna-finder .crna-modal__title { margin: 0; font-size: 24px; line-height: 1.25; color: var(--crna-navy); outline: none; }
.crna-finder .crna-modal__head .crna-help { margin-top: 4px; }
.crna-finder .crna-modal__body { padding: 16px 32px 32px; display: block; }
.crna-finder .crna-report { display: flex; flex-direction: column; gap: 18px; margin: 0; }
.crna-finder .crna-report textarea { width: 100%; border: 1px solid var(--crna-control); border-radius: 8px; padding: 12px 14px; font-weight: 400; font-size: 16px; line-height: 1.5; font-family: inherit; color: var(--crna-text); resize: vertical; background: #fff; margin: 0; }
.crna-finder .crna-report .crna-input { width: 100%; }
.crna-finder .crna-report__actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.crna-finder .crna-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.crna-finder .crna-field.is-invalid textarea { border-color: var(--crna-error); box-shadow: inset 0 0 0 1px var(--crna-error); }
.crna-finder .crna-cmp-loading { display: flex; flex-direction: column; gap: 12px; padding-top: 16px; }
.crna-finder .crna-cmp-loading span { display: block; height: 40px; border-radius: 8px; background: var(--crna-soft); }

/* Comparison content */
.crna-finder .crna-cmp__table table { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.45; table-layout: fixed; margin: 0; border: 0; }
.crna-finder .crna-cmp__table th, .crna-finder .crna-cmp__table td { text-align: left; vertical-align: top; padding: 12px 16px; border: 0; border-bottom: 1px solid var(--crna-border); background: transparent; overflow-wrap: anywhere; }
.crna-finder .crna-cmp__table thead th { padding: 16px 16px 12px; border-bottom: 2px solid var(--crna-navy); }
.crna-finder .crna-cmp__table thead th.crna-cmp__fieldcol { width: 200px; padding-left: 0; vertical-align: bottom; font-size: 14px; font-weight: 600; color: var(--crna-muted); }
.crna-finder .crna-cmp__table tbody th { padding-left: 0; font-weight: 500; }
.crna-finder .crna-cmp__table th.crna-cmp__group { padding: 20px 0 8px; font-size: 17px; color: var(--crna-navy); font-weight: 700; }
.crna-finder .crna-cmp__uni { font-size: 16px; line-height: 1.3; font-weight: 600; color: var(--crna-navy); }
.crna-finder .crna-cmp__prog { font-size: 14px; line-height: 1.35; color: var(--crna-text); margin-top: 2px; }
.crna-finder .crna-cmp__sub { font-size: 14px; font-weight: 400; color: var(--crna-muted); margin-top: 2px; }
.crna-finder .crna-cmp__differs { display: block; margin-top: 2px; font-size: 14px; font-weight: 600; color: var(--crna-teal); }
.crna-finder .crna-cmp td.crna-val--unk, .crna-finder .crna-cmp dd.crna-val--unk { font-style: italic; color: var(--crna-muted); }
.crna-finder .crna-cmp td.crna-val--verify, .crna-finder .crna-cmp dd.crna-val--verify { color: var(--crna-warn); }
.crna-finder .crna-cmp td.crna-val--val, .crna-finder .crna-cmp dd.crna-val--val { font-size: 15px; font-weight: 400; }
.crna-finder .crna-cmp__stack { display: none; }
.crna-finder .crna-cmp__stack > h3 { margin: 16px 0 8px; font-size: 16px; color: var(--crna-navy); }
.crna-finder .crna-cmp__progs { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.crna-finder .crna-cmp__progs li { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px; border: 1px solid var(--crna-border); border-radius: 10px; margin: 0; }
.crna-finder .crna-cmp__sgroup { margin-top: 28px; }
.crna-finder .crna-cmp__sgroup > h3 { margin: 0 0 4px; font-size: 20px; color: var(--crna-navy); }
.crna-finder .crna-cmp__srow { margin-top: 14px; }
.crna-finder .crna-cmp__srow h4 { margin: 0 0 6px; font-size: 16px; color: var(--crna-text); display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: baseline; }
.crna-finder .crna-cmp__srow h4 .crna-cmp__differs { display: inline; }
.crna-finder .crna-cmp__srow dl { margin: 0; border: 1px solid var(--crna-border); border-radius: 10px; font-size: 15px; line-height: 1.45; }
.crna-finder .crna-cmp__srow dl > div { padding: 10px 14px; }
.crna-finder .crna-cmp__srow dl > div + div { border-top: 1px solid var(--crna-border); }
.crna-finder .crna-cmp__srow dt { font-size: 14px; color: var(--crna-muted); font-weight: 400; }
.crna-finder .crna-cmp__srow dd { margin: 2px 0 0; font-weight: 500; overflow-wrap: anywhere; }
.crna-finder .crna-cmp-empty { padding: 24px 0; }
.crna-finder .crna-cmp-empty .crna-btn { margin-top: 16px; }

/* State summary */
.crna-finder.crna-state-summary { margin: 16px 0; }
.crna-finder .crna-table-wrap { overflow-x: auto; margin-top: 12px; }
.crna-finder .crna-state-table { width: 100%; border-collapse: collapse; font-size: 15px; }
.crna-finder .crna-state-table caption { text-align: left; font-weight: 600; color: var(--crna-navy); padding: 0 0 8px; }
.crna-finder .crna-state-table th, .crna-finder .crna-state-table td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid var(--crna-border); }
.crna-finder .crna-state-table tbody th span { display: block; font-weight: 400; color: var(--crna-muted); font-size: 14px; }

/* ---------- Narrow layouts (< 1024px): drawer, stacked comparison ---------- */
@media (max-width: 1023.98px) {
	.crna-finder .crna-tray__inner { padding: 12px 24px; }
	html.crna-js .crna-finder .crna-filters { display: none; }
	html.crna-js .crna-finder.is-drawer-open .crna-filters {
		display: flex; position: fixed; inset: 0; z-index: 9993; flex-direction: column; overflow: hidden;
	}
	html.crna-js .crna-finder.is-drawer-open .crna-filters__form { flex: 1; min-height: 0; }
	html.crna-js .crna-finder.is-drawer-open .crna-filters__head { padding: 10px 12px 10px 16px; border-bottom: 1px solid var(--crna-border); }
	html.crna-js .crna-finder.is-drawer-open .crna-filters__body { flex: 1; min-height: 0; overflow-y: auto; padding: 12px 16px 24px; overscroll-behavior: contain; }
	html.crna-js .crna-finder.is-drawer-open .crna-filters__foot { position: static; padding: 12px 16px; }
	html.crna-js .crna-finder .crna-filters-open { display: inline-flex !important; }
	html.crna-js .crna-finder .crna-filters__close { display: inline-flex !important; }
	html.crna-js .crna-finder .crna-results__tools { grid-template-columns: 1fr 1fr; width: 100%; }
	html.crna-js .crna-finder [data-crna-cancel-link] { display: inline-flex !important; }
	.crna-finder .crna-cmp__table { display: none; }
	.crna-finder .crna-cmp__stack { display: block; }
	.crna-finder .crna-modal { padding: 0; }
	.crna-finder .crna-modal__dialog--wide { max-width: none; height: 100%; max-height: 100%; border-radius: 0; }
	.crna-finder .crna-modal__dialog:not(.crna-modal__dialog--wide) { margin: 48px 24px; }
	.crna-finder .crna-modal__head { padding: 16px; border-radius: 0; }
	.crna-finder .crna-modal__body { padding: 8px 16px 32px; }
	.crna-finder .crna-tray__main { display: none; }
	.crna-finder .crna-tray__short { display: block; }
	.crna-finder .crna-tray__inner { flex-wrap: nowrap; gap: 8px; padding: 10px 16px; }
	.crna-finder .crna-tray__long { display: none; }
	.crna-finder .crna-tray__shortlbl { display: inline; }
	.crna-finder .crna-tray__actions { gap: 8px; }
	.crna-finder .crna-tray__actions .crna-btn--primary { min-height: 44px; padding: 0 14px; font-size: 15px; }
	.crna-finder .crna-tray__actions .crna-linkbtn { padding: 0 6px; }
}
@media (min-width: 1024px) {
	.crna-finder .crna-filters__close, .crna-finder .crna-filters-open { display: none !important; }
}

/* ---------- Small screens (< 640px) ---------- */
@media (max-width: 639.98px) {
	.crna-finder .crna-intro { padding: 20px 0; }
	.crna-finder .crna-intro__title { font-size: 34px; }
	.crna-finder .crna-results__count h2 { font-size: 18px; }
	.crna-finder .crna-sort__long { display: none; }
	.crna-finder .crna-sort__short { display: inline; }
	.crna-finder .crna-card__main { padding: 16px; }
	.crna-finder .crna-card__title { font-size: 18px; }
	.crna-finder .crna-fact { padding: 12px 16px; }
	.crna-finder .crna-card__row { padding: 12px 16px; }
	.crna-finder .crna-card__secondary { display: none; }
	.crna-finder .crna-card__row:not(.has-fit) { display: none; }
	.crna-finder .crna-card__details { padding: 16px; }
	.crna-finder .crna-card__actions { padding: 12px 16px; }
	.crna-finder .crna-card__actions .crna-compare,
	.crna-finder .crna-card__actions .crna-card__more { flex: 1 1 calc(50% - 6px); }
	.crna-finder .crna-card__site { flex: 1 1 100%; margin-left: 0; }
	.crna-finder .crna-card__full, .crna-finder .crna-card__foot { padding-left: 16px; padding-right: 16px; }
	.crna-finder .crna-badge { white-space: normal; }
	.crna-finder .crna-modal__dialog:not(.crna-modal__dialog--wide) { margin: 16px; }
	.crna-finder .crna-field--number .crna-input, .crna-finder .crna-field--currency .crna-input { width: 100%; max-width: 220px; }
}
@media (max-width: 359.98px) {
	.crna-finder .crna-card__actions .crna-compare,
	.crna-finder .crna-card__actions .crna-card__more { flex: 1 1 100%; }
	.crna-finder .crna-chip { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
	.crna-finder *, .crna-finder *::before, .crna-finder *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
@media (forced-colors: active) {
	.crna-finder .crna-badge, .crna-finder .crna-chip, .crna-finder .crna-btn, .crna-finder .crna-compare { border: 1px solid CanvasText; }
}
@media print {
	.crna-finder .crna-filters, .crna-finder .crna-tray, .crna-finder .crna-card__actions, .crna-finder .crna-modal, .crna-finder .crna-results__tools { display: none !important; }
	html.crna-js .crna-finder .crna-card__details:not(.is-open) { display: block; }
	.crna-finder .crna-layout { display: block; }
}
body.crna-modal-open { overflow: hidden; }

.crna-finder .crna-anchor { display: block; height: 0; scroll-margin-top: 80px; }
