/*
 * NeuroClub 0.41.7 – Website Studio 2.0 release visual system.
 * Loaded after all other administration and terminal styles.
 */

/* ---------- Final surface contract ---------- */
.nc-admin,
.nc-terminal-app {
	--nc-rc-canvas: #edf0f3;
	--nc-rc-surface: #ffffff;
	--nc-rc-surface-soft: #f6f8fa;
	--nc-rc-surface-raised: #ffffff;
	--nc-rc-surface-inset: #eef2f5;
	--nc-rc-text: #20262d;
	--nc-rc-text-strong: #11171d;
	--nc-rc-muted: #64717c;
	--nc-rc-line: #d5dce2;
	--nc-rc-line-strong: #b8c2cb;
	--nc-rc-accent: #941f31;
	--nc-rc-accent-strong: #6f1725;
	--nc-rc-accent-soft: #f4e7ea;
	--nc-rc-success: #24734a;
	--nc-rc-success-soft: #e8f4ed;
	--nc-rc-warning: #8b5b00;
	--nc-rc-warning-soft: #fff3d5;
	--nc-rc-danger: #a52737;
	--nc-rc-danger-soft: #f9e7ea;
	--nc-rc-info: #315f88;
	--nc-rc-info-soft: #e7f0f8;
	--nc-rc-shadow: 0 5px 18px rgba(22, 29, 35, .065);
	--nc-rc-shadow-raised: 0 14px 34px rgba(22, 29, 35, .13);
	--nc-rc-header: #171d23;
	--nc-rc-header-text: #f7f9fa;
	--nc-rc-header-muted: #b9c2ca;
	--nc-rc-control: 42px;
	--nc-rc-radius: 2px;
	color: var(--nc-rc-text);
}

body.nc-theme-dark .nc-admin,
body.nc-theme-dark .nc-terminal-app,
html[data-nc-theme="dark"] .nc-admin,
html[data-nc-theme="dark"] .nc-terminal-app,
.nc-terminal-page.nc-theme-dark .nc-admin,
.nc-terminal-page.nc-theme-dark .nc-terminal-app {
	--nc-rc-canvas: #0b1117;
	--nc-rc-surface: #131c24;
	--nc-rc-surface-soft: #18232d;
	--nc-rc-surface-raised: #1b2731;
	--nc-rc-surface-inset: #0f171e;
	--nc-rc-text: #e9eef2;
	--nc-rc-text-strong: #ffffff;
	--nc-rc-muted: #a7b3bd;
	--nc-rc-line: #33424e;
	--nc-rc-line-strong: #52616d;
	--nc-rc-accent: #ed6679;
	--nc-rc-accent-strong: #ff9cac;
	--nc-rc-accent-soft: #331c24;
	--nc-rc-success: #77d29c;
	--nc-rc-success-soft: #132b20;
	--nc-rc-warning: #f0c36e;
	--nc-rc-warning-soft: #302713;
	--nc-rc-danger: #ff8795;
	--nc-rc-danger-soft: #351a20;
	--nc-rc-info: #8bc5f5;
	--nc-rc-info-soft: #162a3a;
	--nc-rc-shadow: 0 6px 20px rgba(0, 0, 0, .24);
	--nc-rc-shadow-raised: 0 18px 44px rgba(0, 0, 0, .42);
	--nc-rc-header: #080d12;
	--nc-rc-header-text: #f5f8fa;
	--nc-rc-header-muted: #aeb9c2;
	color-scheme: dark;
	color: var(--nc-rc-text);
}

body.toplevel_page_neuroclub,
body[class*="neuroclub_page_neuroclub-"] {
	background: var(--nc-rc-canvas, #edf0f3);
}

.nc-admin {
	background: var(--nc-rc-canvas);
	color: var(--nc-rc-text);
	font-size: 14px;
	line-height: 1.5;
}

/* ---------- Header and navigation ---------- */
.nc-admin .nc-shell-header {
	min-height: 68px;
	padding: 10px clamp(16px, 2vw, 28px);
	background: var(--nc-rc-header);
	color: var(--nc-rc-header-text);
	border-bottom: 4px solid var(--nc-rc-accent);
	box-shadow: 0 8px 26px rgba(0,0,0,.18);
}
.nc-admin .nc-brand strong { color: var(--nc-rc-header-text); font-size: 21px; letter-spacing: -.02em; }
.nc-admin .nc-brand span,
.nc-admin .nc-terminal-account small { color: var(--nc-rc-header-muted); }
.nc-admin .nc-brand img { width: 44px; height: 44px; }
.nc-admin .nc-header-tools { gap: 8px; }
.nc-admin .nc-version,
.nc-admin .nc-edition { min-height: 32px; display: inline-flex; align-items: center; border-color: rgba(255,255,255,.18); }
.nc-admin .nc-edition { background: var(--nc-rc-accent); }
.nc-admin .nc-theme-toggle,
.nc-admin .nc-terminal-account > a,
.nc-admin .nc-mode-switch button {
	border-color: rgba(255,255,255,.18);
	color: var(--nc-rc-header-text);
}
.nc-admin .nc-workspace-nav {
	min-height: 58px;
	padding-inline: clamp(12px, 2vw, 28px);
	background: var(--nc-rc-surface);
	border-color: var(--nc-rc-line);
	box-shadow: 0 3px 14px rgba(20,27,33,.06);
}
.nc-admin .nc-nav-group { min-width: 108px; border-color: var(--nc-rc-line); }
.nc-admin .nc-nav-trigger { min-height: 58px; padding: 8px 15px; color: var(--nc-rc-text); }
.nc-admin .nc-nav-trigger:hover,
.nc-admin .nc-nav-trigger:focus-visible,
.nc-admin .nc-nav-group.is-open .nc-nav-trigger,
.nc-admin .nc-nav-group.is-current .nc-nav-trigger { background: var(--nc-rc-accent-soft); color: var(--nc-rc-accent-strong); }
.nc-admin .nc-nav-trigger > .dashicons:first-child { color: var(--nc-rc-accent); }
.nc-admin .nc-nav-menu {
	padding: 6px;
	background: var(--nc-rc-surface-raised);
	border-color: var(--nc-rc-line);
	box-shadow: var(--nc-rc-shadow-raised);
}
.nc-admin .nc-nav-menu a { color: var(--nc-rc-text); }
.nc-admin .nc-nav-menu a:hover,
.nc-admin .nc-nav-menu a:focus,
.nc-admin .nc-nav-menu a.is-active { background: var(--nc-rc-accent-soft); color: var(--nc-rc-accent-strong); }

/* ---------- Page hierarchy ---------- */
.nc-admin .nc-page-hero {
	margin: 18px clamp(14px, 2vw, 28px) 0;
	padding: 20px 22px;
	background: var(--nc-rc-surface);
	border: 1px solid var(--nc-rc-line);
	border-left: 5px solid var(--nc-rc-accent);
	box-shadow: var(--nc-rc-shadow);
}
.nc-admin .nc-page-hero h1 { color: var(--nc-rc-text-strong); font-size: clamp(24px, 2.2vw, 31px); letter-spacing: -.035em; }
.nc-admin .nc-page-hero p { color: var(--nc-rc-muted); max-width: 75ch; }
.nc-admin .nc-kicker { color: var(--nc-rc-accent); letter-spacing: .11em; }
.nc-admin .nc-content { padding: 18px clamp(14px, 2vw, 28px) 0; }
.nc-admin .nc-grid { gap: 16px; margin-bottom: 16px; }
.nc-admin .nc-card-heading { gap: 16px; }
.nc-admin .nc-card-heading h2,
.nc-admin .nc-card h2,
.nc-admin .nc-card h3 { color: var(--nc-rc-text-strong); }
.nc-admin .nc-card p,
.nc-admin .description,
.nc-admin small { color: var(--nc-rc-muted); }

/* ---------- Unified surfaces ---------- */
.nc-admin :is(
	.nc-card,.nc-metric,.nc-toolbar,.nc-page-hero,.nc-onboarding-banner,.nc-simple-guide,
	.nc-help-panel,.nc-empty,.nc-inline-admin-form,.nc-form-hint,.nc-member-detail,
	.nc-process-list>li,.nc-process-list>div,.nc-shortcode-grid>article,.nc-roadmap-columns>div,
	.nc-household-members>a,.nc-event-admin-list>article,.nc-shift-admin-list>article,
	.nc-change-request-list>article,.nc-integration-cards>article,.nc-memory-guidance,
	.nc-participant-card,.nc-performance-check,.nc-performance-browser-item,
	.nc-practice-check,.nc-integrity-check,.nc-support-check,.nc-release-findings>article,
	.nc-qualification-flow>span,.nc-quick-actions>a,.nc-stat-grid>article
) {
	background: var(--nc-rc-surface);
	border-color: var(--nc-rc-line);
	color: var(--nc-rc-text);
	box-shadow: var(--nc-rc-shadow);
}
.nc-admin .nc-card { border-top-color: var(--nc-rc-accent); padding: 18px; }
.nc-admin .nc-card:not(.nc-table-card):hover { border-color: var(--nc-rc-line-strong); }
.nc-admin .nc-stat-grid>article,
.nc-admin .nc-metric { min-height: 96px; }
.nc-admin .nc-stat-grid>article strong,
.nc-admin .nc-metric strong { color: var(--nc-rc-text-strong); }
.nc-admin .nc-quick-actions>a { min-height: 82px; text-decoration: none; }
.nc-admin .nc-quick-actions>a:hover { border-color: var(--nc-rc-accent); background: var(--nc-rc-accent-soft); }
.nc-admin .nc-empty { background: var(--nc-rc-surface-soft); border-style: dashed; box-shadow: none; }
.nc-admin .nc-form-hint,
.nc-admin .nc-memory-guidance { background: var(--nc-rc-surface-soft); }

/* ---------- Tables ---------- */
.nc-admin .nc-table-card { overflow: hidden; }
.nc-admin .nc-table-wrap { border-color: var(--nc-rc-line); background: var(--nc-rc-surface); }
.nc-admin table.widefat,
.nc-admin .widefat {
	background: var(--nc-rc-surface);
	color: var(--nc-rc-text);
	border-color: var(--nc-rc-line);
	box-shadow: none;
}
.nc-admin .widefat thead th,
.nc-admin .widefat tfoot th,
.nc-admin .widefat thead td,
.nc-admin .widefat tfoot td {
	background: var(--nc-rc-surface-inset);
	color: var(--nc-rc-text-strong);
	border-color: var(--nc-rc-line-strong);
	font-weight: 800;
}
.nc-admin .widefat td,
.nc-admin .widefat th { border-color: var(--nc-rc-line); }
.nc-admin .widefat tbody tr { background: var(--nc-rc-surface); color: var(--nc-rc-text); }
.nc-admin .widefat.striped>tbody>:nth-child(odd),
.nc-admin .widefat>tbody>:nth-child(odd) { background: var(--nc-rc-surface-soft); }
.nc-admin .widefat tbody tr:hover,
.nc-admin .widefat.striped>tbody>:nth-child(odd):hover { background: var(--nc-rc-accent-soft); }
.nc-admin .widefat a { color: var(--nc-rc-accent-strong); }
.nc-admin .row-actions { color: var(--nc-rc-muted); }
.nc-admin .tablenav,
.nc-admin .nc-pagination { color: var(--nc-rc-text); }
.nc-admin .nc-pagination { background: var(--nc-rc-surface); border-color: var(--nc-rc-line); }
.nc-admin .nc-pagination a,
.nc-admin .nc-pagination .current { background: var(--nc-rc-surface); color: var(--nc-rc-text); border-color: var(--nc-rc-line); }
.nc-admin .nc-pagination a:hover { border-color: var(--nc-rc-accent); color: var(--nc-rc-accent-strong); }
.nc-admin .nc-pagination .current { background: var(--nc-rc-accent); color: #fff; border-color: var(--nc-rc-accent); }

/* ---------- Forms ---------- */
.nc-admin :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea),
.nc-admin .select2-container--default .select2-selection--single,
.nc-admin .select2-container--default .select2-selection--multiple,
.nc-admin .wp-editor-container,
.nc-admin .quicktags-toolbar {
	background: var(--nc-rc-surface);
	color: var(--nc-rc-text);
	border-color: var(--nc-rc-line-strong);
	border-radius: var(--nc-rc-radius);
}
.nc-admin :is(input,select,textarea)::placeholder { color: color-mix(in srgb, var(--nc-rc-muted) 78%, transparent); }
.nc-admin :is(input,select,textarea):disabled,
.nc-admin :is(input,select,textarea)[readonly] { background: var(--nc-rc-surface-inset); color: var(--nc-rc-muted); opacity: 1; }
.nc-admin :is(input,select,textarea):focus,
.nc-admin .select2-container--focus .select2-selection { border-color: var(--nc-rc-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--nc-rc-accent) 22%, transparent); }
.nc-admin fieldset { border-color: var(--nc-rc-line); }
.nc-admin legend,
.nc-admin label { color: var(--nc-rc-text); }
.nc-admin .nc-checkbox-grid label,
.nc-admin .nc-theme-choice label,
.nc-admin .nc-release-checklist label,
.nc-admin .nc-practice-matrix label,
.nc-admin .nc-performance-matrix label {
	background: var(--nc-rc-surface-soft);
	border-color: var(--nc-rc-line);
	color: var(--nc-rc-text);
}
.nc-admin .nc-checkbox-grid label:has(input:checked),
.nc-admin .nc-theme-choice label:has(input:checked),
.nc-admin .nc-release-checklist label:has(input:checked),
.nc-admin .nc-practice-matrix label:has(input:checked),
.nc-admin .nc-performance-matrix label:has(input:checked) {
	border-color: var(--nc-rc-accent);
	background: var(--nc-rc-accent-soft);
}
.nc-admin .nc-form-actions {
	background: color-mix(in srgb, var(--nc-rc-surface) 96%, transparent);
	border-color: var(--nc-rc-line);
	box-shadow: 0 -10px 24px color-mix(in srgb, var(--nc-rc-canvas) 70%, transparent);
}

/* ---------- Buttons and tabs ---------- */
.nc-admin .button,
.nc-admin button.button,
.nc-admin .nc-button {
	min-height: 40px;
	border-radius: var(--nc-rc-radius);
	border-color: var(--nc-rc-line-strong);
	background: var(--nc-rc-surface);
	color: var(--nc-rc-text);
	box-shadow: none;
}
.nc-admin .button:hover,
.nc-admin .button:focus-visible { border-color: var(--nc-rc-accent); color: var(--nc-rc-accent-strong); background: var(--nc-rc-accent-soft); }
.nc-admin .button-primary,
.nc-admin .button.button-primary,
.nc-admin .nc-button-primary {
	background: var(--nc-rc-accent) !important;
	border-color: var(--nc-rc-accent-strong) !important;
	color: #fff !important;
	text-shadow: none !important;
}
.nc-admin .button-primary:hover,
.nc-admin .button-primary:focus-visible { background: var(--nc-rc-accent-strong) !important; }
.nc-admin .button-link-delete { color: var(--nc-rc-danger) !important; }
.nc-admin .nav-tab-wrapper { border-color: var(--nc-rc-line); }
.nc-admin .nav-tab {
	margin-left: 0;
	background: var(--nc-rc-surface-soft);
	border-color: var(--nc-rc-line);
	color: var(--nc-rc-muted);
}
.nc-admin .nav-tab:hover,
.nc-admin .nav-tab:focus { background: var(--nc-rc-accent-soft); color: var(--nc-rc-accent-strong); }
.nc-admin .nav-tab-active,
.nc-admin .nav-tab-active:hover,
.nc-admin .nav-tab-active:focus { background: var(--nc-rc-surface); color: var(--nc-rc-text-strong); border-bottom-color: var(--nc-rc-surface); }

/* ---------- Notices and status ---------- */
.nc-admin :is(.notice,.nc-notice,.nc-inline-warning,.nc-terminal-notice) {
	background: var(--nc-rc-surface);
	color: var(--nc-rc-text);
	border-color: var(--nc-rc-line);
}
.nc-admin :is(.notice-success,.nc-notice.is-success,.is-ok) { --nc-tone: var(--nc-rc-success); --nc-tone-soft: var(--nc-rc-success-soft); }
.nc-admin :is(.notice-warning,.nc-notice.is-warning,.is-warning) { --nc-tone: var(--nc-rc-warning); --nc-tone-soft: var(--nc-rc-warning-soft); }
.nc-admin :is(.notice-error,.nc-notice.is-error,.is-error) { --nc-tone: var(--nc-rc-danger); --nc-tone-soft: var(--nc-rc-danger-soft); }
.nc-admin :is(.notice-info,.is-info) { --nc-tone: var(--nc-rc-info); --nc-tone-soft: var(--nc-rc-info-soft); }
.nc-admin :is(.notice-success,.notice-warning,.notice-error,.notice-info,.nc-notice.is-success,.nc-notice.is-warning,.nc-notice.is-error) {
	background: var(--nc-tone-soft);
	border-left-color: var(--nc-tone);
}
.nc-admin :is(.nc-status,.nc-status-pill,.nc-badge,.nc-release-status,.nc-release-decision) {
	border-color: currentColor;
	box-shadow: none;
}
.nc-admin :is(.nc-status-active,.nc-status-approved,.nc-status-paid,.nc-status-completed,.nc-status-valid,.nc-status-ready,.nc-badge-success) { background: var(--nc-rc-success-soft) !important; color: var(--nc-rc-success) !important; }
.nc-admin :is(.nc-status-pending,.nc-status-planned,.nc-status-open,.nc-status-draft,.nc-badge-warning) { background: var(--nc-rc-warning-soft) !important; color: var(--nc-rc-warning) !important; }
.nc-admin :is(.nc-status-rejected,.nc-status-left,.nc-status-cancelled,.nc-status-revoked,.nc-status-expired,.nc-badge-danger) { background: var(--nc-rc-danger-soft) !important; color: var(--nc-rc-danger) !important; }

/* ---------- Dialogs, help, code ---------- */
.nc-admin [role="dialog"],
.nc-admin .nc-modal,
.nc-admin .nc-help-panel,
.nc-admin .media-modal-content {
	background: var(--nc-rc-surface-raised);
	color: var(--nc-rc-text);
	border-color: var(--nc-rc-line);
	box-shadow: var(--nc-rc-shadow-raised);
}
.nc-admin .nc-help-panel { border-left-color: var(--nc-rc-accent); }
.nc-admin .nc-help-panel h2,
.nc-admin .nc-help-panel h3 { color: var(--nc-rc-text-strong); }
.nc-admin code,
.nc-admin pre,
.nc-admin .nc-code {
	background: var(--nc-rc-surface-inset);
	color: var(--nc-rc-text);
	border-color: var(--nc-rc-line);
}
.nc-admin pre { padding: 12px; overflow: auto; }

/* ---------- Release candidate page ---------- */
.nc-rc-hero {
	display: grid;
	grid-template-columns: minmax(0,1fr) 220px;
	gap: 28px;
	align-items: center;
	padding: 30px;
	background: linear-gradient(135deg, var(--nc-rc-header), color-mix(in srgb, var(--nc-rc-header) 74%, var(--nc-rc-accent)));
	color: #fff;
	border: 1px solid color-mix(in srgb, var(--nc-rc-accent) 55%, var(--nc-rc-line));
	border-left: 7px solid var(--nc-rc-accent);
	box-shadow: var(--nc-rc-shadow-raised);
}
.nc-rc-hero h2 { margin: 5px 0 10px; color: #fff !important; font-size: clamp(28px, 3vw, 38px) !important; letter-spacing: -.04em; }
.nc-rc-hero p { margin: 0; color: #dce3e8 !important; max-width: 72ch; }
.nc-rc-seal { width: 180px; height: 180px; display: grid; place-items: center; justify-self: end; text-align: center; border: 2px solid rgba(255,255,255,.22); box-shadow: inset 0 0 0 8px rgba(255,255,255,.06); }
.nc-rc-seal strong { display: block; font-size: 38px; line-height: 1; }
.nc-rc-seal span { display: block; margin-top: 8px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }
.nc-rc-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 12px; margin: 16px 0; }
.nc-rc-grid article { padding: 16px; background: var(--nc-rc-surface); border: 1px solid var(--nc-rc-line); border-top: 4px solid var(--nc-tone,var(--nc-rc-line-strong)); }
.nc-rc-grid article.is-good { --nc-tone: var(--nc-rc-success); }
.nc-rc-grid article.is-warning { --nc-tone: var(--nc-rc-warning); }
.nc-rc-grid article.is-error { --nc-tone: var(--nc-rc-danger); }
.nc-rc-grid strong { display: block; color: var(--nc-rc-text-strong); font-size: 25px; }
.nc-rc-grid span { color: var(--nc-rc-muted); }
.nc-rc-milestones { display: grid; gap: 10px; }
.nc-rc-milestones article { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; gap: 12px; align-items: center; padding: 13px; background: var(--nc-rc-surface-soft); border: 1px solid var(--nc-rc-line); }
.nc-rc-milestones .dashicons { color: var(--nc-tone,var(--nc-rc-success)); }
.nc-rc-milestones article.is-warning { --nc-tone: var(--nc-rc-warning); }
.nc-rc-milestones article.is-error { --nc-tone: var(--nc-rc-danger); }
.nc-rc-milestones em { color: var(--nc-tone,var(--nc-rc-success)); font-style: normal; font-weight: 800; }

/* ---------- Final terminal treatment ---------- */
.nc-terminal-app-stage { background: var(--nc-rc-canvas); }
.nc-terminal-app .nc-admin { border: 0; }
.nc-terminal-app .nc-shell-header { top: max(8px, env(safe-area-inset-top)); border: 1px solid rgba(255,255,255,.08); border-bottom: 4px solid var(--nc-rc-accent); }
.nc-terminal-app .nc-workspace-nav { top: 84px; border: 1px solid var(--nc-rc-line); border-top: 0; }
.nc-terminal-app .nc-terminal-global-search { background: color-mix(in srgb, var(--nc-rc-header) 84%, white); border-color: rgba(255,255,255,.16); }
.nc-terminal-app .nc-terminal-global-search input { color: #fff; }
.nc-terminal-app .nc-terminal-global-search input::placeholder { color: #b9c2ca; }
.nc-terminal-app .nc-terminal-global-search button { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.14); }

/* ---------- Dark-mode catch-all for legacy module surfaces ---------- */
body.nc-theme-dark .nc-admin :is(
	.nc-card,.nc-metric,.nc-page-hero,.nc-toolbar,.nc-table-wrap,.widefat,.nc-help-panel,
	.nc-inline-admin-form,.nc-form-hint,.nc-empty,.nc-nav-menu,.nc-stat-grid>article,
	.nc-quick-actions>a,.nc-process-list>li,.nc-process-list>div,.nc-shortcode-grid>article,
	.nc-roadmap-columns>div,.nc-event-admin-list>article,.nc-shift-admin-list>article,
	.nc-change-request-list>article,.nc-integration-cards>article,.nc-participant-card,
	.nc-performance-check,.nc-performance-browser-item,.nc-practice-check,.nc-integrity-check,
	.nc-support-check,.nc-release-findings>article,.nc-release-checklist label,
	.nc-checkbox-grid label,.nc-theme-choice label,.nc-performance-matrix label,.nc-practice-matrix label
),
html[data-nc-theme="dark"] .nc-admin :is(
	.nc-card,.nc-metric,.nc-page-hero,.nc-toolbar,.nc-table-wrap,.widefat,.nc-help-panel,
	.nc-inline-admin-form,.nc-form-hint,.nc-empty,.nc-nav-menu,.nc-stat-grid>article,
	.nc-quick-actions>a,.nc-process-list>li,.nc-process-list>div,.nc-shortcode-grid>article,
	.nc-roadmap-columns>div,.nc-event-admin-list>article,.nc-shift-admin-list>article,
	.nc-change-request-list>article,.nc-integration-cards>article,.nc-participant-card,
	.nc-performance-check,.nc-performance-browser-item,.nc-practice-check,.nc-integrity-check,
	.nc-support-check,.nc-release-findings>article,.nc-release-checklist label,
	.nc-checkbox-grid label,.nc-theme-choice label,.nc-performance-matrix label,.nc-practice-matrix label
) {
	background: var(--nc-rc-surface);
	color: var(--nc-rc-text);
	border-color: var(--nc-rc-line);
}
body.nc-theme-dark .nc-admin :is(.widefat thead th,.widefat tfoot th,.widefat thead td,.widefat tfoot td),
html[data-nc-theme="dark"] .nc-admin :is(.widefat thead th,.widefat tfoot th,.widefat thead td,.widefat tfoot td) { background: var(--nc-rc-surface-inset); color: var(--nc-rc-text-strong); }
body.nc-theme-dark .nc-admin :is(.widefat.striped>tbody>:nth-child(odd),.widefat>tbody>:nth-child(odd)),
html[data-nc-theme="dark"] .nc-admin :is(.widefat.striped>tbody>:nth-child(odd),.widefat>tbody>:nth-child(odd)) { background: var(--nc-rc-surface-soft); }
body.nc-theme-dark .nc-admin :is(a,h1,h2,h3,h4,strong,th,label,legend),
html[data-nc-theme="dark"] .nc-admin :is(a,h1,h2,h3,h4,strong,th,label,legend) { color: inherit; }
body.nc-theme-dark .nc-admin a,
html[data-nc-theme="dark"] .nc-admin a { color: var(--nc-rc-accent-strong); }
body.nc-theme-dark .nc-admin .button-primary,
html[data-nc-theme="dark"] .nc-admin .button-primary { color: #fff !important; }

/* ---------- Responsive refinement ---------- */
@media (max-width: 1180px) {
	.nc-admin .nc-header-meta { display: none; }
	.nc-admin .nc-terminal-global-search { width: min(280px, 28vw); }
	.nc-rc-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 900px) {
	.nc-admin .nc-shell-header { position: relative; flex-wrap: wrap; }
	.nc-admin .nc-header-tools { width: 100%; justify-content: flex-end; }
	.nc-admin .nc-terminal-global-search { width: min(100%,420px); margin-right: auto; }
	.nc-admin .nc-grid-2,.nc-admin .nc-grid-calendar { grid-template-columns: 1fr; }
	.nc-rc-hero { grid-template-columns: 1fr; padding: 24px; }
	.nc-rc-seal { justify-self: start; width: 140px; height: 140px; }
}
@media (max-width: 720px) {
	.nc-terminal-app-stage { padding: 8px 8px calc(82px + env(safe-area-inset-bottom)); }
	.nc-admin .nc-shell-header { min-height: 58px; padding: 8px 12px; }
	.nc-admin .nc-brand strong { font-size: 18px; }
	.nc-admin .nc-brand img { width: 38px; height: 38px; }
	.nc-admin .nc-page-hero { margin: 10px 8px 0; padding: 16px; }
	.nc-admin .nc-content { padding: 12px 8px 0; }
	.nc-admin .nc-card { padding: 15px; }
	.nc-admin .nc-card-heading { align-items: flex-start; flex-direction: column; }
	.nc-admin .nc-toolbar { align-items: stretch; }
	.nc-admin .nc-toolbar>* { width: 100%; }
	.nc-admin .nc-toolbar :is(form,input,select,.button) { max-width: 100%; }
	.nc-admin .nc-form-actions { margin-inline: -15px; padding-inline: 15px; }
	.nc-admin .nc-form-actions .button { width: 100%; }
	.nc-rc-grid { grid-template-columns: 1fr; }
	.nc-rc-milestones article { grid-template-columns: 30px minmax(0,1fr); }
	.nc-rc-milestones em { grid-column: 2; }
}
@media (max-width: 480px) {
	.nc-admin .nc-page-hero h1 { font-size: 23px; }
	.nc-admin .nc-terminal-global-search { display: none; }
	.nc-admin .nc-mode-switch { display: none; }
	.nc-admin .button,.nc-admin button.button,.nc-admin .nc-button { min-height: 44px; }
	.nc-admin .nc-pagination { padding: 10px; }
	.nc-admin .nc-pagination .page-numbers { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.nc-admin .nc-card,
	.nc-admin .button,
	.nc-admin .widefat tbody tr { transition: none !important; }
}

/* ---------- Authentication and member shell refinement ---------- */
.nc-terminal-page .nc-terminal-auth-card,
.nc-terminal-page .nc-member-terminal-head {
	border-radius: 2px;
}
html[data-nc-theme="dark"] .nc-terminal-auth-card,
body.nc-theme-dark .nc-terminal-auth-card,
html[data-nc-theme="dark"] .nc-member-terminal-head,
body.nc-theme-dark .nc-member-terminal-head {
	background: #131c24;
	color: #e9eef2;
	border-color: #34424e;
	border-top-color: #ed6679;
	box-shadow: 0 20px 55px rgba(0,0,0,.42);
}
html[data-nc-theme="dark"] .nc-terminal-auth-card :is(h1,h2,h3,strong,label),
body.nc-theme-dark .nc-terminal-auth-card :is(h1,h2,h3,strong,label) { color: #f8fafb; }
html[data-nc-theme="dark"] .nc-terminal-auth-card :is(p,small,.description),
body.nc-theme-dark .nc-terminal-auth-card :is(p,small,.description) { color: #a8b4be; }
html[data-nc-theme="dark"] .nc-terminal-auth-card :is(input,textarea,select),
body.nc-theme-dark .nc-terminal-auth-card :is(input,textarea,select) {
	background: #0f171e;
	color: #eef3f6;
	border-color: #52616d;
}
html[data-nc-theme="dark"] .nc-terminal-auth-card .nc-password-field button,
body.nc-theme-dark .nc-terminal-auth-card .nc-password-field button {
	background: #18232d;
	color: #ff9cac;
	border-color: #52616d;
}
html[data-nc-theme="dark"] .nc-terminal-auth-links,
html[data-nc-theme="dark"] .nc-terminal-brand,
body.nc-theme-dark .nc-terminal-auth-links,
body.nc-theme-dark .nc-terminal-brand { border-color: #34424e; }
html[data-nc-theme="dark"] .nc-terminal-brand img,
body.nc-theme-dark .nc-terminal-brand img { background: #f7f8fa; }
