.portal-theme{--engineer-primary:#215d7b;--engineer-dark:#173d5b;--engineer-soft:#edf5fa;--engineer-rgb:33,93,123}
/* Theme is scoped to the authenticated layout; public pages and status colors stay independent. */
.portal-theme[data-engineer-theme="architecture"]{--engineer-primary:#985039;--engineer-dark:#572c24;--engineer-soft:#faf0e8;--engineer-rgb:152,80,57;--engineer-pattern:repeating-radial-gradient(circle at 90% 100%,transparent 0 29px,#ffffff0b 30px 31px,transparent 32px 60px)}
.portal-theme[data-engineer-theme="structure"]{--engineer-primary:#315e8b;--engineer-dark:#1a324f;--engineer-soft:#edf3fa;--engineer-rgb:49,94,139;--engineer-pattern:repeating-linear-gradient(90deg,transparent 0 59px,#ffffff0b 60px 61px),repeating-linear-gradient(0deg,transparent 0 59px,#ffffff0b 60px 61px)}
.portal-theme[data-engineer-theme="mechanical"]{--engineer-primary:#126e77;--engineer-dark:#133d46;--engineer-soft:#eaf6f6;--engineer-rgb:18,110,119;--engineer-pattern:repeating-radial-gradient(ellipse at 110% 50%,transparent 0 24px,#ffffff0b 25px 27px,transparent 28px 48px)}
.portal-theme[data-engineer-theme="surveying"]{--engineer-primary:#596a30;--engineer-dark:#303e24;--engineer-soft:#f2f5e9;--engineer-rgb:89,106,48;--engineer-pattern:repeating-radial-gradient(ellipse at 80% 180%,transparent 0 19px,#ffffff0e 20px 21px,transparent 22px 39px)}
.portal-theme[data-engineer-theme="electrical"]{--engineer-primary:#7050a0;--engineer-dark:#392854;--engineer-soft:#f3eef9;--engineer-rgb:112,80,160;--engineer-pattern:repeating-linear-gradient(135deg,transparent 0 44px,#ffd58312 45px 46px,transparent 47px 90px)}
.portal-theme[data-engineer-theme="urban"]{--engineer-primary:#236f64;--engineer-dark:#1c403c;--engineer-soft:#eaf5f0;--engineer-rgb:35,111,100;--engineer-pattern:repeating-linear-gradient(90deg,transparent 0 89px,#ffffff0e 90px 94px),repeating-linear-gradient(0deg,transparent 0 44px,#ffffff0e 45px 49px)}
.portal-theme:not([data-engineer-theme="default"]){--bs-primary:var(--engineer-primary);--bs-primary-rgb:var(--engineer-rgb);--pc-sidebar-active-color:var(--engineer-primary);--pc-sidebar-active-background:var(--engineer-soft)}
.portal-theme:not([data-engineer-theme="default"]) :is(.dashboard-hero,.account-hero,.reports-hero,.projects-hero){background-image:var(--engineer-pattern),linear-gradient(120deg,var(--engineer-dark),var(--engineer-primary));background-color:var(--engineer-primary)}
.portal-theme:not([data-engineer-theme="default"]) .pc-container{background:linear-gradient(180deg,var(--engineer-soft),#f5f7fa 380px)}
.portal-theme .btn-primary{--bs-btn-bg:var(--engineer-primary);--bs-btn-border-color:var(--engineer-primary);--bs-btn-hover-bg:var(--engineer-dark);--bs-btn-hover-border-color:var(--engineer-dark);--bs-btn-active-bg:var(--engineer-dark);--bs-btn-active-border-color:var(--engineer-dark);--bs-btn-disabled-bg:var(--engineer-primary);--bs-btn-disabled-border-color:var(--engineer-primary);--bs-btn-focus-shadow-rgb:var(--engineer-rgb)}
.portal-theme .btn-outline-primary{--bs-btn-color:var(--engineer-primary);--bs-btn-border-color:var(--engineer-primary);--bs-btn-hover-bg:var(--engineer-primary);--bs-btn-hover-border-color:var(--engineer-primary);--bs-btn-active-bg:var(--engineer-dark);--bs-btn-active-border-color:var(--engineer-dark);--bs-btn-disabled-color:var(--engineer-primary);--bs-btn-focus-shadow-rgb:var(--engineer-rgb)}
.portal-theme:not([data-engineer-theme="default"]) .account-pills .nav-link.active{background:var(--engineer-soft);color:var(--engineer-primary);box-shadow:inset -3px 0 var(--engineer-primary)}
.portal-theme:not([data-engineer-theme="default"]) :is(.member-metrics .card,.report-metrics article){background:linear-gradient(135deg,#fff,var(--engineer-soft));border-color:color-mix(in srgb,var(--engineer-primary) 18%,white)}
.portal-theme:not([data-engineer-theme="default"]) :is(.member-metrics strong,.report-metrics strong,.dashboard-section-heading h2){color:var(--engineer-primary)}
.portal-theme:not([data-engineer-theme="default"]) :is(.report-metrics i,.report-primary){color:var(--engineer-primary);background:var(--engineer-soft)}
.portal-theme:not([data-engineer-theme="default"]) .member-month-bar{background:var(--engineer-primary)}
.portal-theme:not([data-engineer-theme="default"]) :is(.form-control,.form-select):focus{border-color:var(--engineer-primary);box-shadow:0 0 0 .2rem rgba(var(--engineer-rgb),.16)}
.engineer-theme-badge{display:inline-flex;align-items:center;gap:8px;font-size:12px;background:#ffffff1a;border:1px solid #ffffff30;border-radius:30px;padding:6px 12px;margin-bottom:10px;color:white}.engineer-theme-badge i{font-size:18px}
@media print{.portal-theme .pc-container{background:white!important}.engineer-theme-badge{display:none}}

.portal-theme:not([data-engineer-theme="default"]) .projects-hero{padding:24px;border-radius:22px;margin-bottom:20px;color:white}
.portal-theme:not([data-engineer-theme="default"]) .projects-hero :is(h1,p,.page-eyebrow){color:white}
.portal-theme:not([data-engineer-theme="default"]) .projects-hero>a{color:white;border-color:#ffffff70;background:#ffffff16}
.portal-theme:not([data-engineer-theme="default"]) .dashboard-eyebrow{color:#ffffffcc}

.portal-theme:not([data-engineer-theme="default"]) .pc-header .pc-head-link.header-dashboard{background:var(--engineer-soft);border-color:color-mix(in srgb,var(--engineer-primary) 25%,white)}
.portal-theme:not([data-engineer-theme="default"]) .pc-header .pc-head-link.header-dashboard>i{color:var(--engineer-primary)}

/* Discipline sidebar: the existing default sidebar remains the organization theme. */
.portal-theme[data-engineer-theme="architecture"]{--engineer-sidebar-accent:#f3bd99}
.portal-theme[data-engineer-theme="structure"]{--engineer-sidebar-accent:#a9d1ff}
.portal-theme[data-engineer-theme="mechanical"]{--engineer-sidebar-accent:#91e4e2}
.portal-theme[data-engineer-theme="surveying"]{--engineer-sidebar-accent:#d2e49c}
.portal-theme[data-engineer-theme="electrical"]{--engineer-sidebar-accent:#efd39a}
.portal-theme[data-engineer-theme="urban"]{--engineer-sidebar-accent:#a0dfc5}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar{
    --pc-sidebar-background:var(--engineer-dark);
    --pc-sidebar-color:#f0f3f6;
    --pc-sidebar-color-rgb:240,243,246;
    --pc-sidebar-caption-color:var(--engineer-sidebar-accent);
    --pc-sidebar-active-color:var(--engineer-sidebar-accent);
    --pc-sidebar-submenu-border-color:#ffffff30;
    background-color:var(--engineer-dark);
    background-image:var(--engineer-pattern),linear-gradient(165deg,var(--engineer-primary) 0%,var(--engineer-dark) 56%,var(--engineer-dark) 100%);
    box-shadow:-5px 0 28px rgba(var(--engineer-rgb),.16);
    border-inline-end:1px solid #ffffff1a;
}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .navbar-wrapper{background:transparent}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .m-header{background:#0000000d;border-bottom-color:#ffffff20}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .portal-brand-caption{color:#ffffffde}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .pc-caption,
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .pc-caption label{color:var(--engineer-sidebar-accent)}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .pc-item>.pc-link{color:#f0f3f6}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .pc-item>.pc-link:hover,
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .pc-item.pc-trigger>.pc-link{background:#ffffff12;color:#fff}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .pc-item>.pc-link.active,
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .pc-item.active>.pc-link{
    color:#fff!important;
    background:linear-gradient(100deg,#ffffff24,#ffffff12)!important;
    box-shadow:inset -3px 0 var(--engineer-sidebar-accent);
    font-weight:700;
}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .pc-micon{color:var(--engineer-sidebar-accent);background:#ffffff0e}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .pc-link.active .pc-micon{color:#fff;background:#ffffff1c}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .pc-link:focus-visible{outline:2px solid var(--engineer-sidebar-accent);outline-offset:2px}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .nav-action-card{background:#ffffff09;border-color:#ffffff20}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .nav-action-card h5{color:#fff!important}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .nav-action-card p{color:#ffffffd9!important}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .nav-action-card .btn{background:#ffffff16;border-color:#ffffff35;color:#fff}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .nav-action-card .btn:hover{background:#ffffff28}
.portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .simplebar-scrollbar:before{background:var(--engineer-sidebar-accent)}
@media(prefers-reduced-motion:reduce){
    .portal-theme:not([data-engineer-theme="default"]) .pc-sidebar .pc-link{transition:none}
}

/* Account/report overview uses the same palette as the rest of the dashboard. */
.dashboard-shell{--report-accent:var(--engineer-primary,#215d7b);--report-surface:var(--engineer-soft,#edf5fa);--report-border:color-mix(in srgb,var(--report-accent) 22%,transparent)}
.dashboard-shell .support-bar{overflow:hidden}
.dashboard-shell .support-bar .support-chart-title{color:var(--report-accent);font-weight:650}
.dashboard-shell .support-bar .support-chart-summary{
    background:linear-gradient(115deg,var(--engineer-dark,#173d5b),var(--engineer-primary,#215d7b))!important;
    border-top:1px solid var(--report-border)!important;
    color:#fff;
    padding:24px 16px;
}
.dashboard-shell .support-chart-summary .border-end{border-color:#ffffff30!important}
.dashboard-shell .support-chart-summary .row{row-gap:18px}
.dashboard-shell .support-chart-summary span{font-size:12px;line-height:1.8}
.dashboard-shell .account-overview-card .card-header{background:var(--report-surface);border-bottom-color:var(--report-border)}
.dashboard-shell .account-overview-card .list-group-item a{color:var(--report-accent)!important}
.dashboard-shell .account-overview-card .list-group-item a:hover{text-decoration:underline}
.dashboard-shell .account-overview-card .list-group-item a:focus-visible{outline:2px solid var(--report-accent);outline-offset:4px}
.dashboard-shell .support-bar .apexcharts-area{stroke:var(--report-accent)!important}
.dashboard-shell .support-bar .apexcharts-linearGradient stop{stop-color:var(--report-accent)!important}
@media(max-width:575px){.dashboard-shell .support-chart-summary .row>.col{flex:0 0 50%;max-width:50%}}

/* Shared primary controls, including the organization theme. */
.portal-theme .btn-primary{--bs-btn-color:#fff;--bs-btn-hover-color:#fff;--bs-btn-active-color:#fff;--bs-btn-disabled-color:#fff}
.portal-theme .btn-outline-primary{--bs-btn-hover-color:#fff;--bs-btn-active-color:#fff;--bs-btn-disabled-border-color:var(--engineer-primary)}
.portal-theme :is(.btn-primary,.btn-outline-primary):focus-visible{outline:2px solid var(--engineer-primary);outline-offset:3px}
.portal-theme{--bs-primary:var(--engineer-primary);--bs-primary-rgb:var(--engineer-rgb);--bs-link-color:var(--engineer-primary);--bs-link-hover-color:var(--engineer-dark)}
.portal-theme :is(.text-primary,.link-primary){color:var(--engineer-primary)!important}
.portal-theme :is(.bg-primary,.text-bg-primary){background-color:var(--engineer-primary)!important;color:#fff}
.portal-theme .bg-light-primary{background:var(--engineer-soft);color:var(--engineer-primary)}
.portal-theme .btn-link{--bs-btn-color:var(--engineer-primary);--bs-btn-hover-color:var(--engineer-dark);--bs-btn-active-color:var(--engineer-dark)}
.portal-theme .nav-pills{--bs-nav-pills-link-active-bg:var(--engineer-primary)}
.portal-theme .pagination{--bs-pagination-color:var(--engineer-primary);--bs-pagination-active-bg:var(--engineer-primary);--bs-pagination-active-border-color:var(--engineer-primary);--bs-pagination-focus-color:var(--engineer-primary);--bs-pagination-hover-color:var(--engineer-dark)}
.portal-theme .progress{--bs-progress-bar-bg:var(--engineer-primary)}
.portal-theme .list-group{--bs-list-group-active-bg:var(--engineer-primary);--bs-list-group-active-border-color:var(--engineer-primary)}
.portal-theme .accordion{--bs-accordion-active-bg:var(--engineer-soft);--bs-accordion-active-color:var(--engineer-primary)}
.portal-theme .form-check-input:checked{background-color:var(--engineer-primary);border-color:var(--engineer-primary)}
.portal-theme :is(.queue-refresh,.score-hero){background:linear-gradient(120deg,var(--engineer-dark),var(--engineer-primary));color:white}
.portal-theme :is(.score-open,.table-score-open){background:var(--engineer-soft);color:var(--engineer-primary);border-color:var(--engineer-primary)}
.portal-theme :is(.score-open,.table-score-open):hover{background:var(--engineer-primary);color:white}
.portal-theme :is(.table-rank,.table-score){color:var(--engineer-primary)}
.portal-theme .queue-table tr.queue-self{background:var(--engineer-soft)}

.portal-theme :is(.queue-heading>i,.queue-score strong,.queue-card summary,.flow-eyebrow,.workspace-action){color:var(--engineer-primary)}
.portal-theme :is(.queue-summary,.rank,.overview-tabs button.active,.kind-tabs button.active,.select-candidate,.flow-outline,.score-details-button,.eligibility-input button){background:var(--engineer-soft);color:var(--engineer-primary)}
.portal-theme :is(.queue-error button,.score-footer button,.flow-primary,.candidate-search button){background:var(--engineer-primary);color:white}
.portal-theme :is(.queue-refresh,.score-footer button,.flow-primary,.candidate-search button):hover{background:var(--engineer-dark)}
.portal-theme .queue-self{border-color:var(--engineer-primary);box-shadow:0 0 0 1px var(--engineer-primary)}
.portal-theme .workspace-card{--accent:var(--engineer-primary)}
.portal-theme .workspace-icon{color:var(--engineer-primary);background:var(--engineer-soft)}

.portal-theme :is(.my-position,.formula-score){background:linear-gradient(120deg,var(--engineer-dark),var(--engineer-primary))}
.portal-theme .calendar-grid button.selected,
.portal-theme .calendar-grid button:hover:not(:disabled){background:var(--engineer-primary);color:white}
.portal-theme :is(.queue-table thead th,.table thead th){background:var(--engineer-soft)}
.portal-theme .view-switch button.selected{background:var(--engineer-primary);color:white}
