.hssm-cc {
	--hssm-cc-bg: var(--hssm-surface-inset);
	--hssm-cc-surface: var(--hssm-surface-light);
	--hssm-cc-surface-alt: var(--hssm-surface-inset);
	--hssm-cc-text: var(--hssm-text-light);
	--hssm-cc-muted: var(--hssm-text-light-muted);
	--hssm-cc-border: var(--hssm-border);
	--hssm-cc-primary: var(--hssm-app-link);
	--hssm-cc-primary-dark: var(--hssm-app-link-hover);
	--hssm-cc-success: var(--hssm-success-text);
	--hssm-cc-warning: var(--hssm-warning-text);
	--hssm-cc-danger: var(--hssm-error-text);
	--hssm-cc-radius: 12px;
	--hssm-cc-shadow: 0 8px 28px color-mix(in srgb, var(--hssm-shadow) 10%, transparent);
	--hssm-cc-focus: 0 0 0 3px color-mix(in srgb, var(--hssm-focus-ring) 28%, transparent);
	background: transparent;
	color: var(--hssm-app-text);
	font-family: "Manrope", sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.55;
	margin: 24px auto;
	max-width: var(--hssm-app-max-width, none);
	min-width: 0;
	padding: clamp(16px, 3vw, 32px);
	width: 100%;
}

.hssm-cc, .hssm-cc * { box-sizing: border-box; }
.hssm-cc h1, .hssm-cc h2, .hssm-cc h3, .hssm-cc h4, .hssm-cc p, .hssm-cc li, .hssm-cc dt, .hssm-cc dd, .hssm-cc label, .hssm-cc legend, .hssm-cc table { color: inherit; }
.hssm-cc h1, .hssm-cc h2, .hssm-cc h3, .hssm-cc h4 { font-family: inherit; font-weight: 600; line-height: 1.2; }
.hssm-cc h1 { font-weight: 700; font-size: clamp(1.75rem, 4vw, 2.5rem); margin: 5px 0 12px; }
.hssm-cc h2 { font-weight: 700; font-size: clamp(1.4rem, 3vw, 1.85rem); margin: 0 0 10px; }
.hssm-cc h3 { font-size: 1.15rem; margin: 0 0 10px; }
.hssm-cc a { color: var(--hssm-cc-primary); }
.hssm-cc a:hover { color: var(--hssm-cc-primary-dark); }
.hssm-cc :focus-visible { box-shadow: var(--hssm-cc-focus); outline: 2px solid transparent; outline-offset: 2px; }
.hssm-cc [hidden] { display: none !important; }
.hssm-cc-eyebrow { color: var(--hssm-cc-primary) !important; font-size: .78rem; font-weight: 600; letter-spacing: .09em; margin: 0; text-transform: uppercase; }
.hssm-cc-muted, .hssm-cc-help, .hssm-cc small { color: var(--hssm-cc-muted) !important; }
.hssm-cc-help, .hssm-cc label small { display: block; font-size: .88rem; margin: 6px 0 0; }

.hssm-cc-hero, .hssm-cc-portal-header {
	background-color: var(--hssm-header-bg);
	background-image: linear-gradient(135deg, var(--hssm-header-gradient-start) 0%, var(--hssm-header-gradient-end) 100%);
	border-radius: var(--hssm-cc-radius);
	box-shadow: var(--hssm-cc-shadow);
	color: var(--hssm-header-text);
	margin-bottom: 22px;
	padding: clamp(22px, 4vw, 38px);
}
.hssm-cc-hero .hssm-cc-eyebrow, .hssm-cc-portal-header .hssm-cc-eyebrow { color: var(--hssm-header-text) !important; }
.hssm-cc :is(.hssm-cc-hero, .hssm-cc-portal-header) :is(h1, h2, h3) { color: var(--hssm-header-heading); }
.hssm-cc-hero p:last-child, .hssm-cc-portal-header p { margin-bottom: 0; }

.hssm-cc-card {
	background: var(--hssm-cc-surface);
	border: 1px solid var(--hssm-cc-border);
	border-radius: var(--hssm-cc-radius);
	box-shadow: var(--hssm-cc-shadow);
	color: var(--hssm-cc-text);
	margin: 0 0 20px;
	padding: clamp(18px, 3vw, 28px);
}
.hssm-cc-grid { display: grid; gap: 18px; }
.hssm-cc-grid > * { min-width: 0; }
.hssm-cc-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hssm-cc-grid--filters { align-items: end; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hssm-cc-form .hssm-cc-grid > label,
.hssm-cc-form .hssm-cc-card > label:not(.hssm-cc-checkbox) {
	display: block !important;
	max-width: 100% !important;
	width: 100% !important;
}
.hssm-cc-form label > span, .hssm-cc-form legend { display: block; font-size: .9rem; font-weight: 600; margin-bottom: 6px; }
.hssm-cc-form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.hssm-cc-form select,
.hssm-cc-auth input:not([type="checkbox"]),
.hssm-cc-auth select {
	appearance: none;
	/* Field colors are owned by form-controls.css. */
	border: 1px solid var(--hssm-border);
	border-radius: 7px;
	font: inherit;
	max-width: 100% !important;
	min-width: 0 !important;
	min-height: 46px;
	padding: 9px 12px;
	width: 100% !important;
}

.hssm-cc-form input:focus, .hssm-cc-form select:focus, .hssm-cc-auth input:focus { border-color: var(--hssm-cc-primary); box-shadow: var(--hssm-cc-focus); outline: 0; }

.hssm-cc-choice { border: 0; margin: 18px 0 0; min-width: 0; padding: 0; }
.hssm-cc-choice__options { display: flex; flex-wrap: wrap; gap: 10px 20px; margin-bottom: 16px; }
.hssm-cc-choice__options label, .hssm-cc-checkbox { align-items: flex-start; cursor: pointer; display: flex; gap: 10px; min-height: 44px; padding: 8px 0; }
.hssm-cc-choice__options input, .hssm-cc-checkbox input { accent-color: var(--hssm-cc-primary); flex: 0 0 auto; height: 20px; margin: 2px 0 0; width: 20px; }
.hssm-cc-checkbox > span { font-weight: 500 !important; margin: 0 !important; }
.hssm-cc-checkbox small { font-weight: 400; }
.hssm-cc-institution-panel { border-left: 4px solid var(--hssm-cc-primary); padding: 4px 0 4px 16px; }
.hssm-cc-has-js [data-hssm-cc-institution][data-mode="canonical"] [data-hssm-cc-other],
.hssm-cc-has-js [data-hssm-cc-institution][data-mode="other"] [data-hssm-cc-canonical] { display: none; }
.hssm-cc-combobox { position: relative; }
.hssm-cc-combobox__results { -webkit-overflow-scrolling: touch; background: var(--hssm-field-bg); border: 1px solid var(--hssm-cc-border); border-radius: 0 0 8px 8px; box-shadow: 0 10px 25px color-mix(in srgb, var(--hssm-shadow) 18%, transparent); left: 0; list-style: none; margin: -1px 0 0; max-height: 300px !important; max-height: min(300px, 50vh) !important; overscroll-behavior: contain; overflow-y: auto !important; padding: 5px; position: absolute; right: 0; scrollbar-gutter: stable; top: 100%; touch-action: pan-y; z-index: 1000; }
.hssm-cc-combobox__option { border-radius: 5px; color: var(--hssm-field-text) !important; cursor: pointer; min-height: 44px; padding: 10px 12px; }
.hssm-cc-combobox__option:hover { background-color: var(--hssm-option-hover-bg); color: var(--hssm-option-hover-text) !important; }
.hssm-cc-combobox__option[aria-selected="true"] { background-color: var(--hssm-option-selected-bg); color: var(--hssm-option-selected-text) !important; }
.hssm-cc-search-status { color: var(--hssm-cc-muted) !important; font-size: .88rem; min-height: 1.4em; }
.hssm-cc-selected { align-items: center; background: var(--hssm-success-bg); border: 1px solid var(--hssm-success-border); border-radius: 7px; color: var(--hssm-success-text); display: flex; gap: 12px; justify-content: space-between; margin-top: 10px; padding: 10px 12px; }
.hssm-cc-link { background: transparent; border: 0; color: var(--hssm-cc-primary); cursor: pointer; font: inherit; font-weight: 600; min-height: 44px; padding: 5px 8px; text-decoration: underline; }
.hssm-cc-honeypot { height: 0; left: -9999px; overflow: hidden; position: absolute; width: 0; }

.hssm-cc-button {
	align-items: center;
	border: 1px solid transparent;
	border-radius: 7px;
	cursor: pointer;
	display: inline-flex;
	font: inherit;
	font-weight: 600;
	justify-content: center;
	min-height: 46px;
	padding: 10px 18px;
	text-align: center;
	text-decoration: none;
}
.hssm-cc-button--primary { background-color: var(--hssm-button-primary-bg); border-color: var(--hssm-button-primary-border); color: var(--hssm-button-primary-text) !important; }
.hssm-cc-button--primary:hover { background-color: var(--hssm-button-primary-bg-hover); border-color: var(--hssm-button-primary-border-hover); color: var(--hssm-button-primary-text-hover) !important; }
.hssm-cc-button--secondary { background-color: var(--hssm-button-secondary-bg); border-color: var(--hssm-button-secondary-border); color: var(--hssm-button-secondary-text) !important; }
.hssm-cc-button--secondary:hover { background-color: var(--hssm-button-secondary-bg-hover); border-color: var(--hssm-button-secondary-border-hover); color: var(--hssm-button-secondary-text-hover) !important; }
.hssm-cc-button--small { background-color: var(--hssm-button-secondary-bg); border-color: var(--hssm-button-secondary-border); color: var(--hssm-button-secondary-text) !important; font-size: .88rem; min-height: 40px; padding: 6px 11px; }
.hssm-cc-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.hssm-cc-notice { background: var(--hssm-info-bg); border: 1px solid var(--hssm-info-border); border-left-width: 5px; border-radius: 8px; color: var(--hssm-info-text); margin: 0 0 20px; padding: 14px 17px; }
.hssm-cc-notice > :first-child { margin-top: 0; }
.hssm-cc-notice > :last-child { margin-bottom: 0; }
.hssm-cc-notice--success { background-color: var(--hssm-success-bg); color: var(--hssm-success-text); border-color: var(--hssm-success-border); }
.hssm-cc-notice--warning { background-color: var(--hssm-warning-bg); color: var(--hssm-warning-text); border-color: var(--hssm-warning-border); }
.hssm-cc-notice--error { background-color: var(--hssm-error-bg); color: var(--hssm-error-text); border-color: var(--hssm-error-border); }
.hssm-cc-notice--info { background-color: var(--hssm-info-bg); color: var(--hssm-info-text); border-color: var(--hssm-info-border); }

.hssm-cc-portal { padding: 0; }
.hssm-cc-portal-header { align-items: center; border-radius: var(--hssm-cc-radius) var(--hssm-cc-radius) 0 0; display: flex; justify-content: space-between; margin: 0; }
.hssm-cc-account-chip { align-items: flex-end; display: flex; flex-direction: column; gap: 4px; }
.hssm-cc-account-chip a { color: var(--hssm-header-link); font-weight: 600; }
.hssm-cc-portal-layout { align-items: stretch; display: grid; grid-template-columns: 240px minmax(0, 1fr); }
.hssm-cc-navigation { background: var(--hssm-nav-bg); color: var(--hssm-nav-text); min-width: 0; padding: 22px 14px; }
.hssm-cc-navigation ul { list-style: none; margin: 0; padding: 0; }
.hssm-cc-navigation li { margin: 0 0 4px; }
.hssm-cc-navigation a { border-left: 4px solid transparent; border-radius: 6px; color: var(--hssm-nav-text); font-weight: 600; display: flex; min-height: 46px; padding: 10px 12px; text-decoration: none; }
.hssm-cc-navigation a:hover, .hssm-cc-navigation a:focus { color: var(--hssm-nav-hover); }
.hssm-cc-navigation a[aria-current="page"] { background-color: var(--hssm-nav-active-bg); border-left-color: var(--hssm-nav-indicator); color: var(--hssm-nav-current); }
.hssm-cc-nav-status { border-top: 1px solid var(--hssm-nav-border); display: grid; gap: 8px; margin-top: 24px; padding: 18px 8px 0; }
.hssm-cc-nav-status small { color: var(--hssm-nav-text) !important; overflow-wrap: anywhere; }
.hssm-cc-nav-toggle { background: var(--hssm-nav-bg); border: 0; color: var(--hssm-nav-text); display: none; font: inherit; font-weight: 600; min-height: 48px; padding: 10px 16px; width: 100%; }
.hssm-cc-portal-content { background: var(--hssm-cc-bg); color: var(--hssm-text-inset); min-width: 0; padding: clamp(18px, 3vw, 32px); }
.hssm-cc-page-heading { align-items: flex-start; display: flex; gap: 18px; justify-content: space-between; margin-bottom: 22px; }
.hssm-cc-page-heading p { margin: 5px 0 0; }
.hssm-cc-status { align-items: center; background: var(--hssm-badge-bg); color: var(--hssm-badge-text); border: 1px solid var(--hssm-badge-border); border-radius: 999px; display: inline-flex; font-size: .78rem; font-weight: 600; gap: 6px; padding: 6px 10px; white-space: nowrap; }
.hssm-cc-status--approved { background-color: var(--hssm-success-bg); border-color: var(--hssm-success-border); color: var(--hssm-success-text) !important; }
.hssm-cc-status--pending_email, .hssm-cc-status--pending_admin { background-color: var(--hssm-warning-bg); border-color: var(--hssm-warning-border); color: var(--hssm-warning-text) !important; }
.hssm-cc-status--revoked { background-color: var(--hssm-error-bg); border-color: var(--hssm-error-border); color: var(--hssm-error-text) !important; }
.hssm-cc-dashboard-grid, .hssm-cc-help-grid { display: grid; gap: 18px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); }
.hssm-cc-facts { margin: 0; }
.hssm-cc-facts > div { border-bottom: 1px solid var(--hssm-cc-border); display: grid; gap: 12px; grid-template-columns: minmax(110px, .6fr) minmax(0, 1fr); padding: 9px 0; }
.hssm-cc-facts dt { color: var(--hssm-cc-muted) !important; font-size: .78rem; font-weight: 600; text-transform: uppercase; }
.hssm-cc-facts dd { font-weight: 700; margin: 0; overflow-wrap: anywhere; }
.hssm-cc-quick-actions > div { display: grid; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hssm-cc-action-card { background: var(--hssm-surface-light); border: 1px solid var(--hssm-cc-border); border-radius: 9px; color: var(--hssm-cc-text) !important; display: flex; flex-direction: column; min-height: 110px; padding: 18px; text-decoration: none; }
.hssm-cc-action-card:hover, .hssm-cc-action-card:focus { border-color: var(--hssm-cc-primary); transform: translateY(-1px); }
.hssm-cc-action-card strong { color: var(--hssm-cc-primary); }
.hssm-cc-action-card span { color: var(--hssm-cc-muted); font-size: .9rem; margin-top: 5px; }

.hssm-cc-table-wrap { background: var(--hssm-surface-light); border: 1px solid var(--hssm-cc-border); border-radius: 9px; margin-bottom: 20px; overflow-x: auto; }
.hssm-cc-table { border-collapse: collapse; min-width: 700px; width: 100%; }
.hssm-cc-table caption { color: var(--hssm-cc-muted); font-weight: 700; padding: 12px 14px; text-align: left; }
.hssm-cc-table th { background: var(--hssm-table-header-bg); color: var(--hssm-table-header-text) !important; font-size: .82rem; text-align: left; text-transform: uppercase; }
.hssm-cc-table th, .hssm-cc-table td { border-bottom: 1px solid var(--hssm-cc-border); padding: 12px 14px; vertical-align: top; }
.hssm-cc-table td small { display: block; margin-top: 3px; }
.hssm-cc-empty { background: var(--hssm-surface-light); border: 2px dashed var(--hssm-cc-border); border-radius: var(--hssm-cc-radius); color: var(--hssm-cc-muted); padding: clamp(24px, 5vw, 42px); text-align: center; }
.hssm-cc-auth { max-width: 620px; }
.hssm-cc-auth form p { margin: 0 0 16px; }

@media (max-width: 900px) {
	.hssm-cc-grid--filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hssm-cc-portal-layout { grid-template-columns: 210px minmax(0, 1fr); }
}

@media (max-width: 720px) {
	.hssm-cc { margin: 0 auto; padding: 14px; }
	.hssm-cc-portal { padding: 0; }
	.hssm-cc-grid--2, .hssm-cc-grid--filters, .hssm-cc-dashboard-grid, .hssm-cc-help-grid, .hssm-cc-quick-actions > div { grid-template-columns: 1fr; }
	.hssm-cc-portal-header, .hssm-cc-page-heading { align-items: flex-start; flex-direction: column; }
	.hssm-cc-account-chip { align-items: flex-start; }
	.hssm-cc-nav-toggle { display: block; }
	.hssm-cc-portal-layout { display: block; }
	.hssm-cc-navigation { display: none; }
	.hssm-cc-navigation[data-open="true"] { display: block; }
	.hssm-cc-navigation a { min-height: 48px; }
	.hssm-cc-choice__options { flex-direction: column; gap: 2px; }
	.hssm-cc-actions { align-items: stretch; flex-direction: column; }
	.hssm-cc-actions .hssm-cc-button { width: 100%; }
	.hssm-cc-table-wrap { background: transparent; border: 0; overflow: visible; }
	.hssm-cc-table { display: block; min-width: 0; }
	.hssm-cc-table caption { background: var(--hssm-surface-light); border: 1px solid var(--hssm-cc-border); border-radius: 8px; display: block; margin-bottom: 10px; width: 100%; }
	.hssm-cc-table thead { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
	.hssm-cc-table tbody, .hssm-cc-table tr, .hssm-cc-table td { display: block; width: 100%; }
	.hssm-cc-table tr { background: var(--hssm-table-row-bg); border: 1px solid var(--hssm-cc-border); border-radius: 8px; margin-bottom: 12px; padding: 8px 12px; }
	.hssm-cc-table td { border-bottom: 1px solid var(--hssm-cc-border); display: grid; gap: 10px; grid-template-columns: minmax(95px, .45fr) minmax(0, 1fr); padding: 10px 0; }
	.hssm-cc-table td:last-child { border-bottom: 0; }
	.hssm-cc-table td::before { color: var(--hssm-cc-muted); content: attr(data-label); font-size: .75rem; font-weight: 600; text-transform: uppercase; }
}

@media (prefers-reduced-motion: reduce) {
	.hssm-cc *, .hssm-cc *::before, .hssm-cc *::after { scroll-behavior: auto !important; transition: none !important; }
}

/* Rounded fills live on their components. No portal clipping: institution
 * search, focus outlines and dialogs can extend beyond a card. */
.hssm-cc-navigation { border-radius: 0 0 0 var(--hssm-cc-radius); }
.hssm-cc-portal-content { border-radius: 0 0 var(--hssm-cc-radius) 0; }
.hssm-cc :is(.hssm-cc-hero, .hssm-cc-portal-header) a:not([class*="button"]) { color: var(--hssm-header-link); }
.hssm-cc :is(.hssm-cc-hero, .hssm-cc-portal-header) a:not([class*="button"]):hover { color: var(--hssm-header-link-hover); }
.hssm-cc :is(.hssm-cc-hero, .hssm-cc-portal-header) :is(small, .hssm-cc-help, .hssm-cc-muted) { color: var(--hssm-header-text) !important; }
.hssm-cc-combobox__option { overflow-wrap: anywhere; white-space: normal; }
.hssm-cc-selected :is(small, .hssm-cc-muted) { color: var(--hssm-success-text) !important; }
.hssm-cc .hssm-cc-notice :is(small, .hssm-cc-muted, .hssm-cc-help) { color: inherit !important; }
.hssm-cc-table tbody tr { --hssm-cc-muted: var(--hssm-table-row-text); --hssm-cc-primary: var(--hssm-table-row-text); background-color: var(--hssm-table-row-bg); color: var(--hssm-table-row-text); }
.hssm-cc-table tbody tr:nth-child(even) { --hssm-cc-muted: var(--hssm-table-row-alt-text); --hssm-cc-primary: var(--hssm-table-row-alt-text); background-color: var(--hssm-table-row-alt-bg); color: var(--hssm-table-row-alt-text); }
.hssm-cc-table tbody tr:hover { --hssm-cc-muted: var(--hssm-table-row-hover-text); --hssm-cc-primary: var(--hssm-table-row-hover-text); background-color: var(--hssm-table-row-hover-bg); color: var(--hssm-table-row-hover-text); }
.hssm-cc-button--small:hover { background-color: var(--hssm-button-secondary-bg-hover); border-color: var(--hssm-button-secondary-border-hover); color: var(--hssm-button-secondary-text-hover) !important; }
.hssm-cc :is(.hssm-cc-button, .hssm-cc-action-card) { transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
@media (max-width: 720px) {
 .hssm-cc-navigation { border-radius: 0; }
 .hssm-cc-portal-content { border-radius: 0 0 var(--hssm-cc-radius) var(--hssm-cc-radius); }
}

.hssm-cc-portal-content {
 --hssm-cc-text: var(--hssm-text-inset);
 --hssm-cc-muted: var(--hssm-text-inset-muted);
 --hssm-cc-primary: var(--hssm-link-inset);
 --hssm-cc-primary-dark: var(--hssm-link-inset-hover);
}
.hssm-cc :is(.hssm-cc-card, .hssm-cc-empty, .hssm-cc-action-card, .hssm-cc-table-wrap) {
 --hssm-cc-text: var(--hssm-text-light);
 --hssm-cc-muted: var(--hssm-text-light-muted);
 --hssm-cc-primary: var(--hssm-link-light);
 --hssm-cc-primary-dark: var(--hssm-link-light-hover);
}
.hssm-cc-table tbody a:not([class*="button"]):hover { color: inherit; text-decoration: underline; }

.hssm-cc .hssm-cc-notice a:not([class*="button"]) { color: inherit; text-decoration: underline; }

/* Compact onboarding and event-specific attendance. */
.hssm-onboarding summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;cursor:pointer}
.hssm-onboarding summary span{font-size:.875rem;color:var(--hssm-text-light-secondary)}
.hssm-onboarding ul{list-style:none;padding:0;margin:16px 0 0}
.hssm-onboarding li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--hssm-border)}
.hssm-onboarding li form{margin:0;flex-shrink:0}
.hssm-showcase-dates{list-style:none;padding:0;margin:16px 0}
.hssm-showcase-dates li{display:grid;gap:4px;margin:12px 0}
.hssm-showcase-dates small{color:var(--hssm-text-light-secondary)}
@media(max-width:600px){.hssm-onboarding li{align-items:flex-start;flex-direction:column;gap:8px}}
.hssm-institution-colleagues{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px}
.hssm-coach-flag summary{cursor:pointer;color:var(--hssm-link-light);font-weight:600;padding:10px 0}
.hssm-coach-flag textarea{resize:vertical;min-height:110px}

/* Progressive result filters and bounded participating-team directory. */
.hssm-cc-primary-search { display: block; }
.hssm-cc-secondary-filters { margin-block: 12px; }
.hssm-cc :is(.hssm-cc-secondary-filters, .hssm-team-directory) > summary { cursor: pointer; min-height: 44px; padding-block: 10px; font-weight: 600; overflow-wrap: anywhere; }
.hssm-cc :is(.hssm-cc-secondary-filters, .hssm-team-directory) > summary span { margin-left: 8px; font-size: .8rem; font-weight: 500; }
.hssm-cc-secondary-filters .hssm-cc-grid { padding-top: 8px; }
.hssm-cc :is(.hssm-cc-filter, .hssm-directory-search) :is(input:not([type=hidden]), select, button, .hssm-cc-button) { min-height: 44px; }
.hssm-cc :is(summary, .hssm-directory-range, .hssm-cc-results-count):focus-visible { outline: 2px solid var(--hssm-field-focus); outline-offset: 3px; }
.hssm-directory-search { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; margin-top: 12px; }
.hssm-directory-search > label { flex: 1 1 240px; min-width: 0; }
.hssm-directory-search > button { flex: 0 0 auto; }
.hssm-directory-status:empty { display: none; }
.hssm-directory-status, .hssm-directory-range, .hssm-cc-filter-feedback { font-size: .875rem; }
.hssm-team-directory { margin-bottom: 18px; }
.hssm-team-directory .hssm-team-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0; padding-block: 12px; }
.hssm-team-directory .hssm-team-links li { min-width: 0; padding: 10px 12px; border: 1px solid var(--hssm-border); border-radius: 6px; }
.hssm-team-directory .hssm-team-links a { display: inline-flex; align-items: center; min-height: 44px; max-width: 100%; overflow-wrap: anywhere; font-weight: 600; }
.hssm-team-directory .hssm-team-links small { display: block; overflow-wrap: anywhere; }
[data-hssm-directory-content][aria-busy="true"] { opacity: .65; }
@media (max-width: 720px) {
    .hssm-team-directory .hssm-team-links { grid-template-columns: minmax(0, 1fr); }
    .hssm-cc-filter .hssm-cc-actions { display: flex; flex-direction: row; flex-wrap: wrap; gap: 10px; }
    .hssm-cc-filter .hssm-cc-actions > * { flex: 1 1 120px; }
}

@media (max-width: 720px) {
    /* Long names must shrink and wrap within mobile table grid tracks. */
    .hssm-cc-table :is(tbody, tr, td) { min-width: 0; max-width: 100%; }
    .hssm-cc-table td { overflow-wrap: anywhere; }
    .hssm-cc-table td > * { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
}
