/* Shared interface palette, based on the vacancy search. Brand artwork and
   chart/status colors keep their own meaning; these tokens style the shell. */
:root{
 --ui-page:#f5f8f6;--ui-surface:#fff;--ui-soft:#f0f3f5;
 --ui-ink:#1e2543;--ui-muted:#526174;--ui-border:#d4dfd8;
 --ui-control:#83928c;--ui-hover:#edf1f4;--ui-selected:#e4f1e9;
 --ui-green-ink:#285b3d;--ui-primary-hover:#303b5c;
 --ui-focus:#1e2543;--ui-error:#9d293d;--ui-error-bg:#fff0f2;
 --navy:var(--ui-ink);--muted:var(--ui-muted);--line:var(--ui-control);
}
html:has(body.portal-surface){background:var(--ui-page)}
body.portal-surface,body.public-surface{background:var(--ui-page);color:var(--ui-ink)}
.portal-surface :is(.top,.session,.guide-note,.legal-footer,.portal-footer){border-color:var(--ui-border)}
.portal-surface :is(main,.career-panel,.company-panel,.dash-panel,.pp-panel,.job-search-form,.job-result,.account-popover,.co-job-options,.notification-card,dialog){border-color:var(--ui-border)}
.portal-surface :is(.career-panel,.company-panel,.dash-panel,.pp-panel,.job-search-form,.job-result,.account-popover,.co-job-options,dialog){background:var(--ui-surface);color:var(--ui-ink)}
.portal-surface :is(.eyebrow,.co-help,.co-caption,.co-axis,.co-empty,.co-kpis small,.co-timeline-row small,.co-job-choice small,.career-visibility span,.company-movements time){color:var(--ui-muted)}
.portal-surface #company-dashboard :is([data-company-filter-summary],[data-company-updated]),.portal-surface .dash-heading .eyebrow{color:var(--ui-muted)}
.portal-surface :is(.form-note,.pp-tip,.career-reasons,.dash-quality article,.company-summary>div,.company-summary>button),.portal-surface #dashboard .dash-help p{background:var(--ui-soft);color:var(--ui-muted)}
.portal-surface .company-summary>button[aria-pressed=true]{background:var(--ui-selected);color:var(--ui-green-ink)}
.portal-surface .pp-account-summary{background:var(--ui-surface);border-color:var(--ui-border);border-left-color:#54b275}
.portal-surface .pp-preview article{background:var(--ui-page);border-color:var(--ui-border)}
.portal-surface .pp-preview-body .pp-avatar{border-color:var(--ui-page)}
.portal-surface .pp-share-preview{background:var(--ui-surface);border-color:var(--ui-border)}
.portal-surface .pp-share-preview :is(p,small){color:var(--ui-muted)}
.portal-surface .tag:not(.neutral){background:var(--ui-selected);color:var(--ui-green-ink)}
.portal-surface .tag.neutral{background:var(--ui-soft);color:var(--ui-muted)}
.portal-surface :is(input,select,textarea):not([type=checkbox],[type=radio],[type=range],[type=file],[type=color],[type=hidden]){background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-control)}
.portal-surface :is(input,select,textarea):disabled{background:var(--ui-soft);color:var(--ui-muted);cursor:not-allowed;opacity:1}
.portal-surface :is(input[readonly],textarea[readonly]){background:var(--ui-soft)}
.portal-surface :is(input[type=checkbox],input[type=radio]){accent-color:var(--ui-green-ink)}
.portal-surface .choice:has(input:checked){background:var(--ui-selected);border-color:var(--ui-green-ink)}
.portal-surface .choice:has(input:disabled){color:var(--ui-muted)}
.portal-surface .button:not(.secondary):not(.ghost):not(.danger){background:var(--ui-ink);color:var(--ui-surface);border-color:var(--ui-ink)}
.portal-surface .button.secondary{background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-control)}
.portal-surface .button.ghost{background:transparent;color:var(--ui-ink)}
.portal-surface #company-dashboard [data-co-done]{background:var(--ui-ink);color:var(--ui-surface)}
.portal-surface #navigation a.active{background:var(--ui-selected);color:var(--ui-ink)}
.portal-surface .account-initial{background:var(--ui-selected);color:var(--ui-ink)}
.portal-surface :is(#menu-toggle,#notification-shortcut){border-color:var(--ui-control);color:var(--ui-ink)}
.portal-surface :is(button,a,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}
.portal-surface :is(button,.button):disabled{cursor:not-allowed;opacity:.55}
.portal-surface [aria-busy=true] button:disabled{cursor:wait}
.portal-surface :is(input,textarea,select)[aria-invalid=true]{border-color:var(--ui-error);background:var(--ui-error-bg)}
.portal-surface .danger{color:var(--ui-error);border-color:var(--ui-error)}
.portal-surface :is(.co-funnel-track,.co-compare-track,.co-time-track,.company-bar-track){background:var(--ui-soft)}
.portal-surface #dashboard :is(.dash-mode,.dash-view-tabs) button[aria-pressed=true]{background:var(--ui-ink);color:var(--ui-surface)}
/* Only enabled, interactive surfaces receive hover feedback. */
@media(hover:hover){
 .portal-surface .button:not(.secondary):not(.ghost):not(.danger):not(:disabled):hover,.portal-surface #company-dashboard [data-co-done]:not(:disabled):hover{background:var(--ui-primary-hover);color:var(--ui-surface)}
 .portal-surface .button:is(.secondary,.ghost):not(:disabled):hover{background:var(--ui-hover);color:var(--ui-ink)}
 .portal-surface #navigation a:not(.active):not(.nav-create):hover,.portal-surface :is(#menu-toggle,#notification-shortcut):hover{background:var(--ui-hover)}
 .portal-surface :is(.job-result,.company-job-list article):hover{border-color:var(--ui-control)}
 .portal-surface :is(.overview-bars>div,.overview-funnel>div,.insight-bars>div,.insight-step,.company-chart>div,.dash-stage-list>div,.company-priorities li,.company-movements li):hover,.portal-surface #dashboard tbody tr:hover{background:var(--ui-hover)}
 .portal-surface #company-dashboard button:where(:not(.button):not([data-co-done]):not(:disabled):not([aria-pressed=true])):hover,.portal-surface .ops-situation-grid .co-donut button:not(:disabled):hover,.portal-surface .co-job-choice:hover{background:var(--ui-hover)}
 .portal-surface #dashboard .dash-shortcuts a:not(:first-child):hover{background:var(--ui-hover)}
}
/* Public identities retain their own cover/logo colors against the same shell. */
.public-surface :is(.lead,.public-about p,.public-header a,.public-footer,.eyebrow){color:var(--ui-muted)}
.public-surface :is(.public-photo,.public-photo:not(.company-photo)){border-color:var(--ui-page)}
.public-surface :is(.public-job-card,.public-section-nav,.public-identity,.public-footer){border-color:var(--ui-border)}
.public-surface .button{background:var(--ui-ink);color:var(--ui-surface)}
.public-surface .button.secondary{background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-control)}
.public-surface :is(a,button,summary):focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}

.portal-surface #company-dashboard .chart-detail button:not(:disabled):hover{background:var(--ui-primary-hover);color:var(--ui-surface)}
.portal-surface :is(#company-dashboard,#dashboard) :is(button,summary,[tabindex]):focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}
@media(hover:hover){
 .portal-surface :is(#company-dashboard,#dashboard) .button:not(.secondary):not(.ghost):not(.danger):not(:disabled):hover{background:var(--ui-primary-hover);color:var(--ui-surface)}
 .portal-surface :is(#company-dashboard,#dashboard) .button:is(.secondary,.ghost):not(:disabled):hover{background:var(--ui-hover);color:var(--ui-ink)}
}
/* The search route receives programmatic focus for navigation, not a frame. */
.portal-surface[data-page="buscar"] #content:focus,
.portal-surface[data-page="buscar"] #content:focus-visible{outline:none}
