/* Circle Metro colour composition: canvas, accent fields and solid tiles have distinct jobs.
   Canonical light/dark and skin tokens stay unchanged. */
.jc-home-search { grid-template-columns:minmax(0,1fr) auto; }
.jc-search-hint { font-size:14px; line-height:1.5; margin:10px 0 0; color:var(--cm-color-text-secondary); }
.jc-search-hint a { color:var(--cm-color-accent-text); text-decoration:underline; }
.jc-metro .jc-gps-search { padding:0; }
.jc-metro .jc-gps-search .search-header { padding:20px!important; margin-bottom:16px; }
.jc-metro .jc-gps-search .search-header h1 { font-size:clamp(26px,4vw,36px); margin:0 0 14px; }
.jc-metro .jc-gps-search .search-bar { flex-direction:row; gap:8px; }
.jc-metro .jc-gps-search .search-bar input { width:100%; min-width:0; min-height:48px; padding:12px; background:var(--cm-color-surface); }
.jc-metro .jc-gps-search .search-btn { flex-shrink:0; padding:12px 16px; min-height:48px; background:var(--cm-color-tile); color:var(--cm-color-on-tile); }
.jc-search-context { display:flex; gap:8px 14px; flex-wrap:wrap; align-items:center; margin-top:12px; font-size:14px; }
.jc-search-context>span { flex:1 1 100%; }
.jc-search-context button { font:inherit; color:var(--cm-color-accent-text); background:var(--cm-color-surface); border:1px solid var(--cm-color-outline-strong); border-radius:var(--cm-radius-control); min-height:44px; padding:8px 12px; }
.jc-metro .jc-gps-layout { grid-template-columns:minmax(0,1fr); gap:16px; }
.jc-metro .jc-gps-layout .filters-panel { position:static; margin:0; padding:20px; }
.jc-metro .jc-gps-layout .filter-body { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; padding-top:16px; }
.jc-gps-layout .filter-section { min-width:0; margin:0; }
.jc-gps-layout .filter-section>label[for] { display:block; margin-bottom:8px; }
.jc-gps-layout #job-location { box-sizing:border-box; width:100%; min-height:48px; font:inherit; padding:12px; border-radius:var(--cm-radius-control); border:1px solid var(--cm-color-outline-strong); background:var(--cm-color-surface); color:var(--cm-color-text-primary); }
.jc-gps-layout .filter-section small { display:block; margin-top:8px; color:var(--cm-color-text-secondary); }
.jc-metro .jc-gps-layout .empty-state { background:var(--cm-color-accent-soft); padding:24px 20px; border-radius:var(--cm-radius-card); }
@media(max-width:600px) {
 .jc-home-search {grid-template-columns:minmax(0,1fr);}
 .jc-metro .jc-gps-search .search-bar { flex-direction:column; }
 .jc-metro .jc-gps-layout .filter-body {grid-template-columns:minmax(0,1fr);}
}
.jc-metro .jc-wordmark { font-style:normal; text-transform:none; font-synthesis:none; }
.jc-metro .jc-wordmark>span { font-style:normal; }
:root[data-theme="light"] .jc-metro .top-bar { background:var(--cm-color-accent-soft); border-bottom:1px solid var(--cm-color-outline-strong); }
:root[data-theme="light"] .jc-metro .bottom-nav { background:var(--cm-color-accent-soft); }
:root[data-theme="light"] .jc-metro .bottom-nav__item--active { background:var(--cm-color-tile); color:var(--cm-color-on-tile); }
:root[data-theme="light"] .jc-workspace-nav { background:var(--cm-color-accent-soft); border:1px solid var(--cm-color-outline); border-radius:var(--cm-radius-card); padding:8px; gap:4px; }
:root[data-theme="light"] .jc-workspace-nav a,:root[data-theme="light"] .jc-workspace-nav summary { color:var(--cm-color-text-primary); }
:root[data-theme="light"] .jc-workspace-nav a.active { background:var(--cm-color-tile); color:var(--cm-color-on-tile); border-color:transparent; }
:root[data-theme="light"] .jc-workspace .page-header { padding:28px; background:var(--cm-color-tile); color:var(--cm-color-on-tile); border-radius:var(--cm-radius-tile); }
:root[data-theme="light"] .jc-workspace .page-header :is(h1,p,.jc-eyebrow) { color:var(--cm-color-on-tile); }
:root[data-theme="light"] .jc-workspace .page-header :is(.btn-secondary,.back-btn,.jc-account-primary,.btn-primary) { background:var(--cm-color-surface); color:var(--cm-color-accent-text)!important; border-color:transparent; }
:root[data-theme="light"] .jc-workspace .page-header a:not([class]) { color:var(--cm-color-on-tile); }
:root[data-theme="light"] .jc-tracker-toolbar { padding:20px; background:var(--cm-color-accent-soft); border-radius:var(--cm-radius-card); }
:root[data-theme="light"] :is(.jc-employer,.jc-activity) .jc-tracker-card>h2:first-child { margin:-24px -24px 20px; padding:18px 24px; border-radius:var(--cm-radius-card) var(--cm-radius-card) 0 0; background:var(--cm-color-tile); color:var(--cm-color-on-tile); }
:root[data-theme="light"] .jc-employer .jc-tracker-card { overflow:clip; }
:root[data-theme="light"] .jc-employer-grid>div { padding-bottom:4px; }
:root[data-theme="light"] .jc-tracker-empty { background:var(--cm-color-accent-soft); border-color:transparent; }
:root[data-theme="light"] .jc-company-initial { background:var(--cm-color-tile); color:var(--cm-color-on-tile); }
:root[data-theme="light"] .jc-tracker-metrics>div { background:var(--cm-color-accent-soft); }
:root[data-theme="light"] .jc-tracker-metrics>div:first-child { background:var(--cm-color-tile); color:var(--cm-color-on-tile); }
:root[data-theme="light"] .jc-metro .search-header { background:var(--cm-color-accent-soft); padding:28px; border:0; border-radius:var(--cm-radius-tile); }
:root[data-theme="light"] .jc-metro .filters-panel { border-top:5px solid var(--cm-color-tile); }

:root[data-theme="light"] .jc-account-tabs { background:var(--cm-color-accent-soft); border-radius:var(--cm-radius-control); padding:6px; border:0; }
:root[data-theme="light"] .jc-account-tabs a.active { background:var(--cm-color-tile); color:var(--cm-color-on-tile); }
:root[data-theme="light"] .jc-account .jc-account-card { border-top:5px solid var(--cm-color-tile); }
:root[data-theme="light"] .jc-employer-dialog-head { margin:-20px -20px 20px; padding:20px; background:var(--cm-color-accent-soft); border-radius:var(--cm-radius-sheet) var(--cm-radius-sheet) 0 0; }
:root[data-theme="light"] .jc-employer-dialog .modal-content { overflow-x:hidden; }
@media(max-width:760px) {
 :root[data-theme="light"] .jc-workspace .page-header { padding:24px 20px; gap:20px; }
 :root[data-theme="light"] .jc-workspace-nav { margin-bottom:20px; }
 :root[data-theme="light"] .jc-metro .search-header { padding:24px 20px; }
 :root[data-theme="light"] :is(.jc-employer,.jc-activity) .jc-tracker-card>h2:first-child { margin:-24px -24px 20px; }
}
@media(max-width:480px) {
 :root[data-theme="light"] :is(.jc-employer,.jc-activity) .jc-tracker-card>h2:first-child { margin:-20px -20px 20px; padding:16px 20px; }
 :root[data-theme="light"] .jc-tracker-toolbar { padding:16px; }
}
/* Legacy screen variables resolve to the same theme, rather than retaining dark surfaces in light mode. */
:root { --tgn-surface:var(--cm-color-surface); --tgn-surface-raised:var(--cm-color-surface-raised); --tgn-bg-dark:var(--cm-color-canvas); --tgn-text-light:var(--cm-color-text-primary); --tgn-danger:var(--cm-color-critical); --tgn-glass-border:var(--cm-color-outline); --tgn-glass-border-subtle:var(--cm-color-outline); --system-tertiary:var(--cm-color-text-secondary); --tgn-font-display:var(--cm-font-family); }
:root[data-theme="light"],:root[data-theme="light"] body,:root[data-theme="light"] .app-container.jc-metro { background:color-mix(in srgb,var(--cm-color-canvas) 45%,var(--cm-color-accent-soft)); }
:root[data-theme="light"] .jc-metro .page-header { padding:28px; background:var(--cm-color-tile); color:var(--cm-color-on-tile); border-radius:var(--cm-radius-tile); border:0; }
:root[data-theme="light"] .jc-metro .page-header :is(h1,p,.jc-eyebrow,.header-stat-value,.header-stat-label) { color:var(--cm-color-on-tile); }
:root[data-theme="light"] .jc-metro .page-header :is(.btn-secondary,.tgn-btn-secondary,.back-btn,.jc-account-primary,.btn-primary,.tgn-btn-primary) { background:var(--cm-color-surface); color:var(--cm-color-accent-text)!important; border-color:transparent; }
:root[data-theme="light"] .jc-metro :is(.job-header,.job-summary,.profile-header,.application-header) { background:var(--cm-color-accent-soft); border-color:var(--cm-color-outline); }
:root[data-theme="light"] .jc-metro :is(.dashboard-card,.jc-profile-panel,.form-section,.content-section,.settings-section,.candidate-card,.assessment-card,.credit-package,.plan-card,.info-card) { border-top:4px solid var(--cm-color-tile); }
:root[data-theme="light"] .jc-metro :is(.card-header,.section-header,.form-section>h2,.content-section>h2) { background:var(--cm-color-accent-soft); color:var(--cm-color-accent-text); border-radius:var(--cm-radius-small); padding:12px 16px; }
:root[data-theme="light"] .jc-metro :is(.empty-state,.error-state,.locked-profile) { background:var(--cm-color-accent-soft); border-radius:var(--cm-radius-card); padding:24px; }
:root[data-theme="light"] .jc-account-card h1 { color:var(--cm-color-accent-text); }
.jc-welcome { max-width:1000px!important; margin:auto!important; }.jc-welcome .page-header { margin-bottom:24px; }.jc-welcome-actions { display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin:28px 0; }.jc-welcome-actions>a { min-height:48px;display:inline-flex;align-items:center; }
@media(max-width:760px) {
 :root[data-theme="light"] .jc-metro .page-header { padding:24px 20px; }
 :root[data-theme="light"] .jc-metro :is(.empty-state,.error-state,.locked-profile) { padding:20px; }
}
:root[data-theme="light"] .jc-metro :is(.loading-state,.loading,.error-state,.empty-state) { color:var(--cm-color-text-secondary); }
@media print { .jc-metro .page-header { background:none!important; }.jc-metro .page-header :is(h1,p) { color:var(--cm-color-text-primary)!important; } }
.jc-metro :is(.matches-page,.gamification-page,.nearby-page,.referrals-page) { padding:0;max-width:none; }
:root[data-theme="light"] .jc-metro .matches-header { padding:24px;background:var(--cm-color-tile);border-radius:var(--cm-radius-tile); }
:root[data-theme="light"] .jc-metro .matches-header :is(h1,p) { color:var(--cm-color-on-tile); }
:root[data-theme="light"] .jc-metro .matches-header .b-badge { background:var(--cm-color-surface);color:var(--cm-color-accent-text); }
.jc-metro .match-salary { overflow-wrap:anywhere; }
@media(max-width:480px) { .jc-metro .match-row { display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px; }.jc-metro .match-info { grid-column:2;grid-row:1 / span 2; }.jc-metro .match-info h3 { white-space:normal;overflow:visible; }.jc-metro .match-score { grid-column:1;grid-row:2;min-width:0; } }
/* Theme switches change colours immediately; only spatial/feedback motion is animated. */
html[data-theme] .jc-metro * { transition-property:transform,box-shadow,opacity!important; }
:root[data-theme="light"] .jc-account .jc-account-card h1 { padding:20px;background:var(--cm-color-tile);color:var(--cm-color-on-tile);border-radius:var(--cm-radius-control);margin:20px 0 12px; }
.jc-metro .jc-workspace .balance-card :is(.balance-label,.balance-value,.stat-value,.stat-label) { color:var(--cm-color-on-accent);opacity:1; }
.jc-metro .jc-workspace .btn-generate,.jc-metro .geoblast-page .tab.active { color:var(--cm-color-on-accent); }
:root[data-theme="light"] .jc-metro .page-header p { color:var(--cm-color-on-tile)!important; }
.jc-metro .jc-workspace .balance-card .balance-sublabel { color:var(--cm-color-on-accent);opacity:1; }
.jc-metro .jc-learning button[style*="background: var(--system-primary)"] { background:var(--cm-color-accent)!important;color:var(--cm-color-on-accent)!important; }

/* Debug-only visual inspection controls; no auth bypass or fixture data. */
.jc-review-entry { display:block;max-width:1280px;margin:12px auto;padding:12px 28px;font-size:13px;color:var(--cm-color-accent-text); }
.jc-review-toolbar { position:fixed;left:50%;transform:translateX(-50%);bottom:calc(76px + env(safe-area-inset-bottom));z-index:900;display:flex;align-items:center;gap:4px;width:min(calc(100% - 24px),600px);padding:6px;background:var(--cm-color-surface);border:1px solid var(--cm-color-outline-strong);border-radius:var(--cm-radius-control);box-shadow:0 3px 12px rgb(0 0 0 / .15); }
.jc-review-toolbar a { min-height:48px;display:flex;align-items:center;padding:8px;color:var(--cm-color-accent-text);font-size:12px;text-decoration:none; }
.jc-review-toolbar span { flex:1;min-width:0;text-align:center; }.jc-review-toolbar strong { display:block;font-weight:500;font-size:12px; }.jc-review-toolbar small { display:block;overflow-wrap:anywhere;font-size:10px;color:var(--cm-color-text-secondary); }
.jc-metro:has(.jc-review-toolbar) .main-content { padding-bottom:160px; }

/* Worldwide discovery: one query, compact radius controls, optional expanded fields. */
.jc-metro .jc-world-search {min-width:0;}
.jc-metro .jc-world-search .search-header {padding:20px!important;margin-bottom:20px;}
.jc-metro .jc-world-search .search-header h1 {font-size:clamp(26px,4vw,36px);margin:0 0 16px;}
.jc-world-search .search-bar {display:flex;gap:8px;margin:12px 0;}
.jc-world-search .search-bar input {box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:12px;font:inherit;border:1px solid var(--cm-color-outline-strong);border-radius:var(--cm-radius-control);background:var(--cm-color-surface);color:var(--cm-color-text-primary);}
.jc-world-search button,.jc-search-profile button {min-height:44px;font:inherit;border:1px solid var(--cm-color-outline-strong);border-radius:var(--cm-radius-control);background:var(--cm-color-surface);color:var(--cm-color-text-primary);padding:10px 14px;cursor:pointer;}
.jc-world-search .search-btn,.jc-search-profile .search-btn {background:var(--cm-color-tile);color:var(--cm-color-on-tile);border-color:transparent;}
.jc-search-targets,.jc-radius-options {display:flex;flex-wrap:wrap;gap:6px;}
.jc-search-targets button[aria-pressed="true"],.jc-radius-options button[aria-pressed="true"] {background:var(--cm-color-tile);color:var(--cm-color-on-tile);border-color:transparent;}
.jc-radius {border:0;padding:0;margin:12px 0;min-width:0;}
.jc-radius legend {font-size:14px;margin-bottom:6px;color:var(--cm-color-text-secondary);}
.jc-radius button {min-height:44px;border:1px solid var(--cm-color-outline-strong);border-radius:var(--cm-radius-control);padding:8px 10px;font:inherit;font-size:14px;color:var(--cm-color-text-primary);background:var(--cm-color-surface);cursor:pointer;}
.jc-radius>label {display:flex;align-items:center;gap:12px;margin-top:10px;}
.jc-radius input {max-width:130px;min-height:44px;box-sizing:border-box;padding:8px;color:var(--cm-color-text-primary);background:var(--cm-color-surface);border:1px solid var(--cm-color-outline-strong);border-radius:var(--cm-radius-control);font:inherit;}
.jc-metro .jc-world-advanced {position:static;background:var(--cm-color-accent-soft);padding:20px;border-radius:var(--cm-radius-card);margin-bottom:20px;}
.jc-world-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.jc-world-fields label,.jc-search-profile label {display:flex;flex-direction:column;gap:8px;font-size:15px;min-width:0;}
.jc-world-fields input:not([type="checkbox"]),.jc-world-fields select,.jc-search-profile input:not([type="checkbox"]),.jc-search-profile select,.jc-search-profile textarea {box-sizing:border-box;width:100%;min-width:0;min-height:48px;border:1px solid var(--cm-color-outline-strong);border-radius:var(--cm-radius-control);font:inherit;padding:12px;background:var(--cm-color-surface);color:var(--cm-color-text-primary);}
.jc-world-fields input[type="checkbox"],.jc-search-profile input[type="checkbox"] {width:24px;height:24px;accent-color:var(--cm-color-tile);}
.jc-world-fields label:has(input[type="checkbox"]),.jc-search-profile label:has(input[type="checkbox"]) {flex-direction:row;align-items:center;}
.jc-world-actions {display:flex;flex-wrap:wrap;gap:12px;margin-top:20px;}
.jc-world-results {scroll-margin-top:100px;outline:none;}
.jc-world-results .empty-state,.jc-world-card {padding:24px;margin:16px 0;background:var(--cm-color-accent-soft);border-radius:var(--cm-radius-card);border-top:3px solid var(--cm-color-tile);}
.jc-world-card h2 {font-size:24px;margin:12px 0;overflow-wrap:anywhere;}
.jc-world-card p {overflow-wrap:anywhere;}
.jc-world-card a {color:var(--cm-color-accent-text);}
.jc-world-results .empty-state .search-btn {margin-right:16px;}
.jc-search-profile form {display:grid;gap:16px;background:var(--cm-color-accent-soft);padding:24px;border-radius:var(--cm-radius-card);margin-top:20px;}
.jc-home-search {grid-template-columns:minmax(0,1fr);}
@media(max-width:600px){.jc-world-fields {grid-template-columns:minmax(0,1fr);}.jc-world-search .search-bar{flex-direction:column;}.jc-world-search .search-header {padding:16px!important;}}

.jc-radius-options {flex-wrap:nowrap;gap:4px;}
.jc-radius-options button {flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:18px;padding:4px;}
.jc-radius-options small {font-size:12px;line-height:14px;}
.jc-world-search .jc-search-targets button {flex:1 1 0;min-width:0;padding:8px 6px;font-size:14px;}
@media(max-width:600px){.jc-world-search .search-bar {flex-direction:row;}.jc-world-search .search-bar .search-btn {flex:0 0 auto;padding:10px;}.jc-world-search .search-bar input {flex:1 1 0;}}
.jc-metro .jc-world-search .search-bar {flex-direction:row;flex-wrap:nowrap;} .jc-metro .jc-world-search .search-bar .search-btn {width:auto;flex:0 0 auto;} .jc-metro .jc-world-search .search-bar input {width:auto;flex:1 1 0;min-width:0;}

/* Unadorned links use Circle Metro action surfaces, never browser-default styling. */
.jc-metro :where(a[href]:not([class]):not([style])) {
 display:inline-flex;align-items:center;justify-content:center;gap:8px;
 min-height:44px;box-sizing:border-box;padding:10px 16px;
 border:1px solid var(--cm-color-outline-strong);border-radius:var(--cm-radius-control);
 background:var(--cm-color-surface);color:var(--cm-color-accent-text);
 font:inherit;font-weight:600;line-height:1.35;text-decoration:none;
 max-width:100%;overflow-wrap:anywhere;vertical-align:middle;
}
.jc-metro :where(a[href]:not([class]):not([style])):hover {
 background:var(--cm-color-accent);color:var(--cm-color-on-accent);
}
.jc-metro a[href]:focus-visible {
 outline:2px solid var(--cm-color-accent-text);outline-offset:3px;
}
/* Titles retain their editorial layout while the whole title remains actionable. */
.jc-metro :is(h2,h3) > a[href]:not([class]) {
 display:inline;padding:0;min-height:0;border:0;background:transparent;
 color:var(--cm-color-accent-text);font:inherit;text-decoration:none;
}
.jc-metro :is(h2,h3) > a[href]:not([class]):hover {text-decoration:underline;}

/* Supporting copy stays fully legible in dark mode: no grey-on-black text. */
:root[data-theme="dark"] .jc-metro {
 --cm-color-text-secondary:var(--cm-color-text-primary);
 --cm-color-text-disabled:var(--cm-color-text-primary);
}
:root[data-theme="dark"] .jc-metro :is(.page-header,.search-header) {
 background:var(--cm-color-accent-soft);border-top:4px solid var(--cm-color-tile);
 border-radius:var(--cm-radius-tile);padding:24px;
}
:root[data-theme="dark"] .jc-metro :is(.jc-eyebrow,.jc-tracker-card-foot time,.jc-interview-meta,.info-label) {
 color:var(--cm-color-accent-text);opacity:1;
}
.jc-metro .btn-text,.jc-metro .jc-review-entry,.jc-metro .jc-search-hint a {
 text-decoration:none;min-height:44px;padding:10px 14px;
 display:inline-flex;align-items:center;border:1px solid var(--cm-color-outline-strong);
 border-radius:var(--cm-radius-control);background:var(--cm-color-surface);
 color:var(--cm-color-accent-text);font-weight:600;
}
.jc-metro .btn-text:hover,.jc-metro .jc-search-hint a:hover {
 background:var(--cm-color-accent);color:var(--cm-color-on-accent);
}
.jc-metro .jc-search-hint {display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
:root[data-theme="dark"] .jc-metro :is(.aether-status-bar .expand-arrow,.loading-state p,.error-state p,.assessment-page .loading p) {
 color:var(--cm-color-text-primary)!important;opacity:1;
}
/* Resolve legacy aliases at the app surface, rather than inheriting root grey values. */
:root[data-theme="dark"] .jc-metro {
 --system-secondary:var(--cm-color-text-primary);
 --tgn-text-secondary:var(--cm-color-text-primary);
 --text-secondary:var(--cm-color-text-primary);
 --text-muted:var(--cm-color-text-primary);
}
:root[data-theme="dark"] .jc-metro {
 --system-tertiary:var(--cm-color-text-primary);
 --tgn-text-muted:var(--cm-color-text-primary);
}
:root[data-theme="light"] .jc-metro .page-header a:not([class]) {
 color:var(--cm-color-accent-text);background:var(--cm-color-surface);
}
.jc-metro .jc-home-tile small {display:block;margin-top:12px;line-height:1.5;}
.jc-metro .jc-home-tile strong {display:block;}

/* Older screens share the same Circle Metro spacing, type and control geometry. */
.jc-metro {
 --spacer-a:var(--cm-space-1);--spacer-b:var(--cm-space-2);
 --spacer-c:var(--cm-space-4);--spacer-d:var(--cm-space-6);
 --spacer-e:var(--cm-space-8);--spacer-f:48px;
 --border-radius-small:var(--cm-radius-small);--border-radius-medium:var(--cm-radius-control);
 --border-radius-large:var(--cm-radius-control);--border-radius-xl:var(--cm-radius-card);
 --font-body:400 16px/1.5 var(--cm-font-family);
 --font-body-emphasized:500 16px/1.5 var(--cm-font-family);
 --font-callout:400 14px/1.5 var(--cm-font-family);
 --font-callout-emphasized:500 14px/1.5 var(--cm-font-family);
 --font-caption-1:400 12px/1.5 var(--cm-font-family);
 --font-caption-1-emphasized:500 12px/1.5 var(--cm-font-family);
 --font-caption-2:400 12px/1.5 var(--cm-font-family);
 --font-footnote:400 13px/1.5 var(--cm-font-family);
 --font-headline:500 18px/1.3 var(--cm-font-family);
 --font-title-3:400 20px/1.25 var(--cm-font-family);
 --font-title-3-emphasized:500 20px/1.25 var(--cm-font-family);
 --font-title-2:400 24px/1.2 var(--cm-font-family);
 --font-title-2-emphasized:500 24px/1.2 var(--cm-font-family);
 --font-title-1:400 28px/1.15 var(--cm-font-family);
 --font-title-1-emphasized:500 28px/1.15 var(--cm-font-family);
 --font-large-title:400 32px/1.12 var(--cm-font-family);
 --font-large-title-emphasized:400 32px/1.12 var(--cm-font-family);
 --transition-base:var(--cm-motion-normal);
}
@media(max-width:760px) {
 .jc-metro .jc-employer .jc-tracker-card-head {grid-template-columns:minmax(0,1fr) auto;}
 .jc-metro .jc-employer .jc-tracker-title {width:auto;min-width:0;grid-column:1;}
 .jc-metro .jc-employer .jc-tracker-card-head>.jc-state-badge {grid-column:2;align-self:start;}
 .jc-metro .credits-page .balance-card {gap:24px;flex-wrap:wrap;}
 .jc-metro .header-stats {gap:24px;flex-wrap:wrap;}
 .jc-metro .filter-tabs {flex-wrap:wrap;}
}
.jc-metro .progress-circle::before {background:var(--cm-color-accent-soft);}
.jc-metro .progress-circle .progress-value {
 display:grid;place-items:center;width:60px;height:60px;border-radius:50%;
 background:var(--cm-color-accent-soft);color:var(--cm-color-accent-text);
}
.jc-metro .jc-account-story .jc-eyebrow {color:var(--cm-color-on-tile);}
.jc-metro .jc-account-story a {color:var(--cm-color-accent-text);background:var(--cm-color-surface);}
.jc-metro .jc-account-story a span {color:inherit;}
.jc-metro .bulk-upload-page .download-btn {
 background:var(--cm-color-accent);color:var(--cm-color-on-accent);
 border-radius:var(--cm-radius-control);min-height:48px;
}
.jc-metro .bulk-upload-page .credit-balance :is(.balance,.label) {
 color:var(--cm-color-on-accent);opacity:1;
}
:root[data-theme="dark"] .jc-metro .jc-account-story .jc-eyebrow {color:var(--cm-color-on-tile);}
@media(max-width:360px) {
 .jc-metro .top-bar .btn-text {padding:10px 8px;min-width:48px;}
}
.jc-metro a.btn-secondary {
 display:inline-flex;align-items:center;justify-content:center;gap:8px;
 min-height:48px;padding:12px 20px;text-decoration:none;font-weight:500;
 border:1px solid var(--cm-color-outline-strong);border-radius:var(--cm-radius-control);
 background:var(--cm-color-surface);color:var(--cm-color-accent-text);
}
/* Theme changes must not fade readable text through grey against the old canvas. */
html[data-theme],html[data-theme] body,html[data-theme] .jc-metro {
 transition-property:transform,box-shadow,opacity!important;
}
.jc-metro .jc-desktop-nav a {
 min-height:48px;padding:10px 14px;text-decoration:none;
 border:1px solid var(--cm-color-outline-strong);border-radius:var(--cm-radius-control);
}
.jc-metro .jc-desktop-nav a.active {
 background:var(--cm-color-accent-soft);color:var(--cm-color-accent-text);
}
.jc-metro .jc-tracker-empty .header-actions {justify-content:center;}

/* Authentication uses the same solid Circle Metro surfaces in every host. */
.jc-metro .jc-auth-card,.jc-metro .jc-device-gate {width:min(100%,680px);margin:24px auto;padding:28px;border:1px solid var(--cm-color-outline);border-top:4px solid var(--cm-color-tile);border-radius:var(--cm-radius-card);background:var(--cm-color-surface);}
.jc-metro .jc-auth-card h1,.jc-metro .jc-device-gate h1 {font-size:clamp(28px,4vw,40px);margin:12px 0;}
.jc-metro .jc-auth-card label {display:block;margin:20px 0 8px;}
.jc-metro .jc-auth-card input:not([type=checkbox]),.jc-metro .jc-auth-card select {width:100%;min-height:48px;padding:12px;border:1px solid var(--cm-color-outline-strong);border-radius:var(--cm-radius-control);background:var(--cm-color-surface);color:var(--cm-color-text-primary);font:inherit;}
.jc-metro .jc-auth-card form>.jc-account-primary {margin-top:20px;}
.jc-metro .jc-auth-actions {display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:24px;}
.jc-metro .jc-auth-actions>* {min-height:48px;}
.jc-metro .jc-auth-qr {display:grid;place-items:center;background:white;padding:16px;border-radius:var(--cm-radius-control);width:fit-content;max-width:100%;margin:24px auto;}
.jc-metro .jc-auth-qr img {width:256px;height:auto;max-width:100%;}
:root[data-theme="light"] .jc-metro .jc-auth-card,:root[data-theme="light"] .jc-metro .jc-device-gate {background:var(--cm-color-accent-soft);}
:root[data-theme="dark"] .jc-metro :disabled {opacity:1;color:var(--cm-color-accent-text);border-style:dashed;}
@media(max-width:600px){.jc-metro .jc-auth-card,.jc-metro .jc-device-gate{padding:20px;}.jc-metro .jc-auth-actions>*{flex:1 1 180px;justify-content:center;}}

.jc-metro :is(.jc-auth-card,.jc-device-gate) .btn-secondary {
 display:inline-flex;align-items:center;justify-content:center;gap:8px;
 min-height:48px;padding:12px 20px;border:1px solid var(--cm-color-outline-strong);
 border-radius:var(--cm-radius-control);background:var(--cm-color-surface);
 color:var(--cm-color-text-primary);font:inherit;cursor:pointer;
}
@media(max-width:600px){
 .jc-metro .jc-auth-qr {margin:16px auto;}
 .jc-metro .jc-auth-qr img {width:208px;}
 .jc-metro .jc-auth-card>p {font-size:14px;line-height:1.5;}
}

:root[data-theme="light"] .jc-metro :is(.jc-review-entry,.jc-review-toolbar,.jc-footer) {
    background:#00548f;
    border-color:#00548f;
    color:#fff;
}

:root[data-theme="light"] .jc-metro :is(.jc-review-toolbar a,.jc-review-toolbar small,.jc-footer a,.jc-footer span) {
    color:#fff;
}

:root[data-theme="light"] .jc-metro .jc-review-entry {
    margin-inline:clamp(16px,4vw,28px);
}

:root[data-theme="light"] .jc-metro .jc-footer {
    border-radius:var(--cm-radius-tile) var(--cm-radius-tile) 0 0;
}

:root[data-theme="light"] .jc-metro :is(.jc-review-toolbar a,.jc-footer a):focus-visible {
    outline:2px solid #fff;
    outline-offset:2px;
}

:root[data-theme="light"] .jc-metro .jc-footer a {
    background:#00375f;
    border-color:#fff;
    color:#fff;
}
