.ceyeipress-dashboard {
    --cx-bg: #f6f8fb;
    --cx-card: #ffffff;
    --cx-text: #172033;
    --cx-muted: #667085;
    --cx-primary: #4f46e5;
    --cx-secondary: #8ab83f;
    --cx-success: #22c55e;
    --cx-warning: #f59e0b;
    --cx-danger: #ef4444;
    --cx-border: #e5e7eb;
    --ceyeipress-space-xs: 6px;
    --ceyeipress-space-sm: 10px;
    --ceyeipress-space-md: 14px;
    --ceyeipress-space-lg: 18px;
    --ceyeipress-space-xl: 24px;
    color: var(--cx-text);
}

.ceyeipress-widget-shell,
.ceyeipress-widget {
    --cx-bg: #f6f8fb;
    --cx-card: #ffffff;
    --cx-text: #172033;
    --cx-muted: #667085;
    --cx-primary: #4f46e5;
    --cx-secondary: #8ab83f;
    --cx-success: #22c55e;
    --cx-warning: #f59e0b;
    --cx-danger: #ef4444;
    --cx-border: #e5e7eb;
    color: var(--cx-text);
}

.ceyeipress-dashboard,
.ceyeipress-dashboard * {
    box-sizing: border-box;
}

.ceyeipress-dashboard {
    max-width: 100%;
    min-width: 0;
}

.ceyeipress-dashboard * {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: break-word;
    word-break: break-word;
}

.ceyeipress-dashboard-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    gap: var(--ceyeipress-space-lg);
}

.ceyeipress-dashboard-main {
    display: grid;
    gap: var(--ceyeipress-space-lg);
}

.ceyeipress-dashboard-sidebar {
    display: grid;
    gap: var(--ceyeipress-space-lg);
}

.ceyeipress-hero-card,
.ceyeipress-summary-card,
.ceyeipress-stat-card,
.ceyeipress-card {
    background: var(--cx-card);
    border: 1px solid var(--cx-border);
    border-radius: 12px;
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.05);
}

.ceyeipress-widget,
.ceyeipress-widget-shell,
.ceyeipress-card,
.ceyeipress-summary-card,
.ceyeipress-stat-card,
.ceyeipress-booking-grid,
.ceyeipress-booking-meta-grid,
.ceyeipress-candidate-main-panel,
.ceyeipress-candidate-profile-card,
.ceyeipress-candidate-agenda-shell,
.ceyeipress-portal-docs-list,
.ceyeipress-portal-doc-item,
.ceyeipress-portal-doc-body,
.ceyeipress-portal-doc-actions,
.ceyeipress-portal-plan-card,
.ceyeipress-followup-stage-card,
.ceyeipress-evaluator-cases-cards,
.ceyeipress-evaluator-case-item {
    min-width: 0;
    max-width: 100%;
}

.ceyeipress-widget-shell {
    overflow-x: clip;
}

.ceyeipress-widget-shell > * {
    min-width: 0;
    max-width: 100%;
}

.elementor-widget-container .ceyeipress-widget,
.elementor-widget-container .ceyeipress-dashboard {
    min-width: 0;
    max-width: 100%;
}

.ceyeipress-hero-card {
    padding: var(--ceyeipress-space-lg) var(--ceyeipress-space-xl);
}

.ceyeipress-summary-card,
.ceyeipress-stat-card {
    padding: var(--ceyeipress-space-md) var(--ceyeipress-space-lg);
}

.ceyeipress-card-header {
    padding: var(--ceyeipress-space-md) var(--ceyeipress-space-lg) 0;
}

.ceyeipress-card-title {
    margin: 0;
    font-size: 20px;
    line-height: 1.3;
    letter-spacing: 0;
}

.ceyeipress-card-subtitle {
    margin: 6px 0 0;
    color: var(--cx-muted);
}

.ceyeipress-card-body {
    padding: var(--ceyeipress-space-md) var(--ceyeipress-space-lg) var(--ceyeipress-space-lg);
}

.ceyeipress-grid {
    display: grid;
    gap: var(--ceyeipress-space-md);
}

.ceyeipress-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ceyeipress-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ceyeipress-grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ceyeipress-stepper {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
    gap: 10px;
    width: 100%;
}

.ceyeipress-step {
    border: 1px solid var(--cx-border);
    border-radius: 10px;
    padding: 10px;
    background: #fff;
    color: var(--cx-muted);
    font-size: 13px;
    min-height: 52px;
    display: flex;
    align-items: center;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    min-width: 0;
}

.ceyeipress-step-active {
    border-color: #b9b6ff;
    color: #312e81;
    background: #f4f3ff;
}

.ceyeipress-step-complete {
    border-color: #8be2b5;
    color: #166534;
    background: #eefdf4;
}

.ceyeipress-step-warning {
    border-color: #f8d488;
    color: #92400e;
    background: #fffbeb;
}

.ceyeipress-step-blocked {
    border-color: #d1d5db;
    color: #4b5563;
    background: #f9fafb;
}

.ceyeipress-step-review {
    border-color: #bfdbfe;
    color: #1d4ed8;
    background: #eff6ff;
}

.ceyeipress-step-observed {
    border-color: #fca5a5;
    color: #991b1b;
    background: #fef2f2;
}

.ceyeipress-step-label {
    font-weight: 600;
    overflow-wrap: anywhere;
}

.ceyeipress-step-desc {
    font-size: 12px;
    color: var(--cx-muted);
    overflow-wrap: anywhere;
}

.ceyeipress-stepper-vertical {
    grid-template-columns: minmax(0, 1fr);
}

.ceyeipress-badge {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 600;
    border: 1px solid transparent;
}

.ceyeipress-badge-success {
    background: #edfdf3;
    color: #166534;
    border-color: #90e5b9;
}

.ceyeipress-badge-warning {
    background: #fffbeb;
    color: #92400e;
    border-color: #f8d488;
}

.ceyeipress-badge-danger {
    background: #fff1f2;
    color: #b91c1c;
    border-color: #fecdd3;
}

.ceyeipress-badge-info {
    background: #eef2ff;
    color: #3730a3;
    border-color: #c7d2fe;
}

.ceyeipress-alert {
    border-radius: 10px;
    border: 1px solid var(--cx-border);
    padding: 10px 12px;
    margin: 10px 0;
}

.ceyeipress-alert-info {
    background: #eff6ff;
    border-color: #bfdbfe;
    color: #1e3a8a;
}

.ceyeipress-alert-warning {
    background: #fffbeb;
    border-color: #fcd34d;
    color: #92400e;
}

.ceyeipress-alert-success {
    background: #ecfdf5;
    border-color: #86efac;
    color: #166534;
}

.ceyeipress-alert-danger {
    background: #fef2f2;
    border-color: #fca5a5;
    color: #991b1b;
}

.ceyeipress-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ceyeipress-space-sm);
    margin: var(--ceyeipress-space-sm) 0 0;
}

.ceyeipress-muted {
    color: var(--cx-muted);
    font-size: 13px;
}

.ceyeipress-progress {
    height: 8px;
    background: #eef2f7;
    border: 1px solid var(--cx-border);
    border-radius: 999px;
    overflow: hidden;
}

.ceyeipress-progress-bar {
    height: 100%;
    background: var(--cx-primary, #4f46e5);
    width: 0;
    min-width: 0;
    transition: width 180ms ease;
}

.ceyeipress-task-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 8px;
}

.ceyeipress-task-item {
    padding: 10px 12px;
    border: 1px solid var(--cx-border);
    border-radius: 8px;
    background: #fff;
}

.ceyeipress-section-divider {
    height: 1px;
    background: var(--cx-border);
    margin: 8px 0 0;
}

.ceyeipress-embedded-section > hr:first-child {
    display: none;
}

.ceyeipress-embedded-section > h2:first-of-type,
.ceyeipress-embedded-section > h3:first-of-type {
    margin-top: 0;
}

.ceyeipress-candidate-dashboard,
.ceyeipress-evaluator-dashboard {
    background: #f6f8fb;
    border-radius: 12px;
    padding: 10px;
}

.ceyeipress-portal-body {
    margin: 0;
    padding: 0;
    background: #f4f7fb;
    color: #172033;
    font-family: "Inter", "Segoe UI", Arial, sans-serif;
}

.ceyeipress-portal-fallback {
    min-height: 100vh;
}

.ceyeipress-candidate-portal-shell {
    background: #f4f7fb;
    border-radius: 0;
    padding: 0;
}

.ceyeipress-portal-topbar {
    min-height: 64px;
    padding: 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #ffffff;
    border-bottom: 1px solid var(--cx-border);
    position: sticky;
    top: 0;
    z-index: 25;
}

.ceyeipress-portal-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.ceyeipress-portal-brand-mark {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    background: linear-gradient(135deg, #4b136f 0%, #8ab83f 100%);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 12px;
}

.ceyeipress-portal-brand-text {
    font-size: 14px;
    font-weight: 700;
    color: var(--cx-text);
}

.ceyeipress-portal-topbar-help {
    color: var(--cx-muted);
    font-size: 13px;
}

.ceyeipress-candidate-hero-band {
    min-height: 250px;
    padding: 42px 24px 104px;
    background: linear-gradient(135deg, #4b136f 0%, #4f46e5 45%, #8ab83f 100%);
}

.ceyeipress-candidate-hero-content {
    max-width: 1240px;
    margin: 0 auto;
    color: #fff;
}

.ceyeipress-candidate-hero-content h1 {
    margin: 0;
    font-size: 32px;
    line-height: 1.2;
}

.ceyeipress-candidate-hero-content p {
    margin: 10px 0 0;
    max-width: 760px;
    opacity: 0.95;
    font-size: 15px;
}

.ceyeipress-candidate-hero-state {
    margin-top: 16px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 999px;
    padding: 6px 10px;
}

.ceyeipress-candidate-hero-state .ceyeipress-muted {
    color: #e8ecff;
}

.ceyeipress-candidate-floating-container {
    max-width: 1240px;
    margin: -88px auto 0;
    padding: 0 24px 28px;
    display: grid;
    grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.ceyeipress-candidate-profile-card {
    background: #fff;
    border: 1px solid var(--cx-border);
    border-radius: 16px;
    box-shadow: 0 12px 24px rgba(16, 24, 40, 0.08);
    padding: 18px 16px;
    position: sticky;
    top: 84px;
}

.ceyeipress-candidate-avatar {
    width: 58px;
    height: 58px;
    border-radius: 999px;
    background: linear-gradient(135deg, #8ab83f 0%, #4f46e5 100%);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 20px;
}

.ceyeipress-candidate-name {
    margin: 10px 0 0;
    font-size: 20px;
    line-height: 1.25;
}

.ceyeipress-candidate-avatar-inline {
    width: 46px;
    height: 46px;
    font-size: 15px;
}

.ceyeipress-candidate-header-widget .ceyeipress-candidate-header-top {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.ceyeipress-candidate-header-widget .ceyeipress-candidate-header-main {
    min-width: 0;
}

.ceyeipress-candidate-header-widget .ceyeipress-candidate-header-meta {
    margin-top: 12px;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 10px;
}

.ceyeipress-candidate-header-widget .ceyeipress-candidate-header-meta > div {
    min-width: 0;
    overflow-wrap: anywhere;
    border: 1px solid var(--cx-border);
    border-radius: 10px;
    background: #f9fbff;
    padding: 10px;
    display: grid;
    gap: 4px;
}

.ceyeipress-candidate-header-widget .ceyeipress-candidate-header-meta > div strong {
    display: block;
    font-size: 12px;
    color: var(--cx-muted);
    font-weight: 600;
}

.ceyeipress-candidate-profile-details,
.ceyeipress-widget-meta-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 10px;
}

.ceyeipress-candidate-profile-row {
    min-width: 0;
    border: 1px solid var(--cx-border);
    border-radius: 10px;
    background: #f9fbff;
    padding: 10px;
    display: grid;
    gap: 4px;
}

.ceyeipress-candidate-profile-label {
    display: block;
    font-size: 12px;
    color: var(--cx-muted);
    font-weight: 600;
}

.ceyeipress-candidate-profile-value {
    display: block;
    font-size: 14px;
    color: var(--cx-text);
    overflow-wrap: anywhere;
}

.ceyeipress-candidate-header-widget .ceyeipress-card-title,
.ceyeipress-candidate-header-widget .ceyeipress-card-subtitle {
    overflow-wrap: anywhere;
}

.ceyeipress-candidate-header-compact .ceyeipress-card-title {
    font-size: 18px;
}

.ceyeipress-candidate-badges {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.ceyeipress-profile-meta {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--cx-border);
    display: grid;
    gap: 8px;
}

.ceyeipress-profile-meta p {
    margin: 0;
    font-size: 13px;
    color: var(--cx-muted);
}

.ceyeipress-profile-meta strong {
    color: var(--cx-text);
}

.ceyeipress-profile-progress {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--cx-border);
}

.ceyeipress-profile-progress-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    font-size: 13px;
    color: var(--cx-muted);
}

.ceyeipress-candidate-main-panel {
    display: grid;
    gap: var(--ceyeipress-space-lg);
    min-width: 0;
}

.ceyeipress-candidate-main-panel .ceyeipress-grid-4 {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.ceyeipress-candidate-main-panel .ceyeipress-grid-3 {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.ceyeipress-portal-nav {
    background: #fff;
    border: 1px solid var(--cx-border);
    border-radius: 14px;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
    padding: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.ceyeipress-portal-nav a {
    text-decoration: none;
    color: var(--cx-text);
    border: 1px solid var(--cx-border);
    background: #f8fafc;
    border-radius: 999px;
    padding: 7px 12px;
    font-size: 13px;
    font-weight: 600;
}

.ceyeipress-portal-nav a:hover,
.ceyeipress-portal-nav a:focus {
    border-color: #8ab83f;
    background: #f2f9e8;
    color: #2a4d06;
}

.ceyeipress-portal-nav a.is-active {
    border-color: #4f46e5;
    background: #eef2ff;
    color: #312e81;
}

.ceyeipress-portal-section {
    display: grid;
    gap: var(--ceyeipress-space-lg);
    scroll-margin-top: 82px;
    min-width: 0;
}

.ceyeipress-portal-section + .ceyeipress-portal-section {
    margin-top: var(--ceyeipress-space-xs);
}

.ceyeipress-portal-section-title {
    margin: 0;
    font-size: 24px;
    line-height: 1.3;
}

.ceyeipress-portal-section-subtitle {
    margin: 8px 0 14px;
    color: var(--cx-muted);
}

.ceyeipress-portal-section-subtitle-heading {
    margin: 18px 0 10px;
    font-size: 18px;
}

.ceyeipress-candidate-agenda-shell {
    display: grid;
    gap: 10px;
}

.ceyeipress-booking-meta-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin: 6px 0 12px;
}

.ceyeipress-booking-meta-card {
    background: #fff;
    border: 1px solid var(--cx-border);
    border-radius: 10px;
    padding: 10px 12px;
    display: grid;
    gap: 4px;
}

.ceyeipress-booking-meta-card span {
    font-size: 12px;
    color: var(--cx-muted);
}

.ceyeipress-booking-meta-card strong {
    font-size: 14px;
    overflow-wrap: anywhere;
}

.ceyeipress-booking-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    gap: 12px;
    min-width: 0;
}

.ceyeipress-booking-grid .ceyeipress-plan-calendar-widget,
.ceyeipress-booking-grid .ceyeipress-plan-slots-widget {
    margin: 0;
    min-width: 0;
}

.ceyeipress-booked-plan-card {
    background: #fff;
    border: 1px solid var(--cx-border);
    border-radius: 12px;
    padding: 14px;
}

.ceyeipress-booked-plan-card h3 {
    margin: 0 0 10px;
    font-size: 18px;
}

.ceyeipress-booked-plan-card p {
    margin: 0 0 8px;
}

.ceyeipress-followup-stage-card {
    border: 1px solid var(--cx-border);
    border-radius: 10px;
    padding: 12px;
    background: #fff;
    margin: 10px 0;
}

.ceyeipress-followup-stage-card h3 {
    margin: 0 0 8px;
    font-size: 16px;
}

.ceyeipress-followup-stage-card p {
    margin: 0 0 7px;
}

.ceyeipress-portal-docs-card,
.ceyeipress-portal-plan-card {
    border: 1px solid var(--cx-border);
    border-radius: 12px;
    background: #fff;
    padding: 14px;
    margin: 10px 0;
}

.ceyeipress-portal-plan-card h3,
.ceyeipress-portal-docs-title {
    margin: 0 0 10px;
    font-size: 18px;
}

.ceyeipress-portal-docs-list {
    display: grid;
    gap: 12px;
}

.ceyeipress-portal-doc-item {
    border: 1px solid var(--cx-border);
    border-radius: 12px;
    background: #fdfefe;
    padding: 12px;
    display: grid;
    gap: 10px;
}

.ceyeipress-portal-doc-head {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: flex-start;
    flex-wrap: wrap;
}

.ceyeipress-portal-doc-head h4 {
    margin: 0;
    font-size: 15px;
}

.ceyeipress-portal-doc-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.ceyeipress-portal-doc-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 10px;
}

.ceyeipress-portal-doc-file,
.ceyeipress-portal-doc-observations {
    display: grid;
    gap: 6px;
}

.ceyeipress-portal-doc-observations p {
    margin: 0;
    color: var(--cx-muted);
    font-size: 13px;
}

.ceyeipress-portal-doc-upload-form {
    display: grid;
    gap: 8px;
    align-items: end;
}

.ceyeipress-portal-doc-upload-form label {
    display: grid;
    gap: 6px;
    font-size: 13px;
    color: var(--cx-muted);
}

.ceyeipress-portal-doc-upload-form .button {
    justify-self: start;
}

.ceyeipress-compact-doc-table-head {
    display: grid;
    grid-template-columns: minmax(220px, 1.5fr) minmax(180px, 1fr) minmax(180px, 1fr);
    gap: 10px;
    padding: 8px 12px;
    border: 1px solid var(--cx-border);
    border-radius: 10px;
    background: #f8fafc;
    color: var(--cx-muted);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    margin-bottom: 8px;
}

.ceyeipress-portal-doc-item-compact {
    border-radius: 10px;
    padding: 10px 12px;
    grid-template-columns: minmax(220px, 1.5fr) minmax(180px, 1fr) minmax(180px, 1fr);
    gap: 10px;
    align-items: center;
}

.ceyeipress-portal-doc-item-compact .ceyeipress-compact-col {
    min-width: 0;
}

.ceyeipress-portal-doc-item-compact .ceyeipress-compact-col-document h4 {
    margin: 0;
    font-size: 14px;
}

.ceyeipress-compact-col-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.ceyeipress-compact-upload-form {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
}

.ceyeipress-compact-file-input {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    clip: rect(0, 0, 0, 0);
    overflow: hidden;
}

.ceyeipress-icon-button {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--cx-border);
    border-radius: 8px;
    background: #ffffff;
    color: var(--cx-primary);
    cursor: pointer;
    text-decoration: none;
}

.ceyeipress-icon-button .dashicons {
    font-size: 18px;
    width: 18px;
    height: 18px;
}

.ceyeipress-icon-button-primary {
    background: var(--cx-primary);
    color: #ffffff;
    border-color: #4338ca;
}

.ceyeipress-compact-col-status {
    display: grid;
    gap: 6px;
}

.ceyeipress-compact-doc-observations-text {
    margin: 0;
    color: var(--cx-muted);
    font-size: 12px;
}

.ceyeipress-portal-plan-section {
    display: grid;
    gap: 8px;
}

.ceyeipress-portal-plan-status {
    margin: 0;
}

.ceyeipress-case-dashboard > h2,
.ceyeipress-case-dashboard > h3,
.ceyeipress-case-dashboard > table.widefat,
.ceyeipress-case-dashboard > form,
.ceyeipress-case-dashboard > .notice.inline {
    margin-bottom: 16px;
}

.ceyeipress-case-dashboard table.widefat,
.ceyeipress-case-dashboard .widefat.fixed {
    border-radius: 10px;
    overflow: hidden;
}

.ceyeipress-dashboard .button.button-primary {
    background: var(--cx-primary);
    border-color: #4338ca;
    color: #ffffff;
}

.ceyeipress-dashboard .button.button-primary:hover,
.ceyeipress-dashboard .button.button-primary:focus {
    background: #4338ca;
    border-color: #3730a3;
    color: #ffffff;
}

.ceyeipress-dashboard .button,
.ceyeipress-widget-shell .button {
    border-radius: 10px;
    border-color: var(--cx-border);
    color: var(--cx-primary);
    background: #ffffff;
}

.ceyeipress-dashboard .button:hover,
.ceyeipress-dashboard .button:focus,
.ceyeipress-widget-shell .button:hover,
.ceyeipress-widget-shell .button:focus {
    border-color: #c7d2fe;
    color: #3730a3;
    background: #f5f7ff;
}

.ceyeipress-widget-shell .button.button-primary,
.ceyeipress-widget-shell .button.button-primary:hover,
.ceyeipress-widget-shell .button.button-primary:focus {
    color: #ffffff;
}

.ceyeipress-dashboard a:not(.button):not(.ceyeipress-portal-nav a) {
    color: var(--cx-primary);
}

.ceyeipress-dashboard a:not(.button):not(.ceyeipress-portal-nav a):hover,
.ceyeipress-dashboard a:not(.button):not(.ceyeipress-portal-nav a):focus {
    color: #3730a3;
}

.ceyeipress-hidden {
    display: none !important;
}

.ceyeipress-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    clip: rect(0, 0, 0, 0);
    overflow: hidden;
}

.ceyeipress-candidate-dashboard .ceyeipress-card {
    min-width: 0;
}

.ceyeipress-table-scroll {
    overflow-x: auto;
}

.ceyeipress-table-scroll table {
    min-width: 760px;
}

.ceyeipress-candidate-dashboard input[type="file"] {
    max-width: 100%;
    width: 100%;
}

.ceyeipress-file-icon-link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    gap: 8px;
}

.ceyeipress-file-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    border: 1px solid var(--cx-border);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f8fafc;
}

.ceyeipress-file-icon-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    height: 22px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0;
}

.ceyeipress-file-icon-pdf .ceyeipress-file-icon-badge {
    background: #fee2e2;
    color: #b91c1c;
}

.ceyeipress-file-icon-image .ceyeipress-file-icon-badge {
    background: #dcfce7;
    color: #166534;
}

.ceyeipress-file-icon-document .ceyeipress-file-icon-badge {
    background: #eef2ff;
    color: #3730a3;
}

.ceyeipress-file-name-muted {
    margin-top: 4px;
    color: var(--cx-muted);
    font-size: 12px;
    max-width: 240px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ceyeipress-file-inline-text {
    margin-left: 8px;
    color: var(--cx-muted);
    font-size: 13px;
}

.ceyeipress-plan-calendar-widget,
.ceyeipress-plan-slots-widget {
    margin: 14px 0;
    padding: 14px;
    border: 1px solid var(--cx-border);
    border-radius: 10px;
    background: #fff;
}

.ceyeipress-plan-calendar-title {
    margin: 0 0 10px;
    font-size: 16px;
}

.ceyeipress-plan-calendar-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
    gap: 10px;
}

.ceyeipress-plan-calendar-weekdays {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 6px;
    font-size: 12px;
    color: var(--cx-muted);
    margin-bottom: 6px;
}

.ceyeipress-plan-calendar-weekdays span {
    text-align: center;
}

.ceyeipress-plan-calendar-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 6px;
}

.ceyeipress-calendar-day {
    min-height: 36px;
    border-radius: 8px;
    border: 1px solid var(--cx-border);
    background: #fff;
    color: var(--cx-text);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

.ceyeipress-calendar-day.is-available {
    border-color: #a5b4fc;
    background: #eef2ff;
}

.ceyeipress-calendar-day.is-selected {
    border-color: #4338ca;
    background: #4f46e5;
    color: #fff;
}

.ceyeipress-calendar-day.is-occupied-day {
    border-color: #fcd34d;
    background: #fffbeb;
    color: #92400e;
}

.ceyeipress-calendar-day.is-disabled {
    cursor: not-allowed;
    color: #9ca3af;
    background: #f3f4f6;
    border-color: #e5e7eb;
}

.ceyeipress-calendar-day.is-past {
    opacity: 0.75;
}

.ceyeipress-calendar-day-empty {
    border: 0;
    background: transparent;
}

.ceyeipress-calendar-day-indicators {
    position: absolute;
    bottom: 3px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    gap: 3px;
}

.ceyeipress-calendar-day-indicator {
    width: 5px;
    height: 5px;
    border-radius: 999px;
    display: inline-block;
}

.ceyeipress-plan-calendar-legend {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    color: var(--cx-muted);
    font-size: 12px;
}

.ceyeipress-plan-calendar-legend span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.ceyeipress-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 999px;
}

.ceyeipress-dot-available {
    background: #22c55e;
}

.ceyeipress-dot-disabled {
    background: #d1d5db;
}

.ceyeipress-dot-occupied {
    background: #f59e0b;
}

.ceyeipress-dot-blocked {
    background: #ef4444;
}

.ceyeipress-plan-slots-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 10px;
}

.ceyeipress-slot-chip {
    border-radius: 8px;
    border: 1px solid var(--cx-border);
    background: #fff;
    padding: 8px 10px;
    display: grid;
    gap: 2px;
}

.ceyeipress-slot-chip-available {
    cursor: pointer;
    width: 100%;
    text-align: left;
    color: #14532d;
    border-color: #86efac;
    background: #ecfdf5;
}

.ceyeipress-slot-chip-available.is-selected {
    border-color: #4338ca;
    background: #eef2ff;
    color: #312e81;
}

.ceyeipress-slot-chip-unavailable {
    color: #6b7280;
    border-color: #e5e7eb;
    background: #f9fafb;
}

.ceyeipress-slot-chip-occupied {
    color: #92400e;
    border-color: #fcd34d;
    background: #fffbeb;
}

.ceyeipress-slot-chip-blocked {
    color: #991b1b;
    border-color: #fca5a5;
    background: #fef2f2;
}

.ceyeipress-slot-chip-time {
    font-size: 13px;
    font-weight: 700;
}

.ceyeipress-slot-chip-meta {
    font-size: 12px;
    color: var(--cx-muted);
}

.ceyeipress-plan-slot-fallback {
    margin-top: 8px;
}

.ceyeipress-plan-slot-fallback details summary {
    cursor: pointer;
    color: var(--cx-muted);
}

.ceyeipress-plan-slot-fallback-grid {
    margin-top: 8px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 8px;
}

.ceyeipress-slot-radio-item {
    border: 1px solid var(--cx-border);
    border-radius: 8px;
    padding: 8px;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    background: #fff;
}

.ceyeipress-slot-radio-body {
    display: grid;
    gap: 2px;
    font-size: 12px;
}

.ceyeipress-calendar-enhanced .ceyeipress-plan-slot-fallback {
    display: none;
}

/* Elementor widgets: shell, presets y estados vacios */
.ceyeipress-widget {
    width: 100%;
}

.ceyeipress-widget-shell {
    --ceyei-widget-primary: #4f46e5;
    --ceyei-widget-secondary: #667085;
    --ceyei-widget-bg: #ffffff;
    --ceyei-widget-card-bg: #ffffff;
    --ceyei-widget-inner-bg: #ffffff;
    --ceyei-widget-text: #172033;
    --ceyei-widget-title-color: #172033;
    --ceyei-widget-border: #e5e7eb;
    --ceyei-widget-radius: 16px;
    --ceyei-widget-gap: var(--ceyeipress-space-md);
    --ceyeipress-widget-bg: var(--ceyei-widget-bg);
    --ceyeipress-widget-card-bg: var(--ceyei-widget-card-bg);
    --ceyeipress-widget-inner-bg: var(--ceyei-widget-inner-bg);
    --ceyeipress-widget-border-color: var(--ceyei-widget-border);
    --ceyeipress-widget-title-color: var(--ceyei-widget-title-color);
    --ceyeipress-widget-text-color: var(--ceyei-widget-text);
    --ceyeipress-widget-accent-color: var(--ceyei-widget-primary);
    color: var(--ceyei-widget-text);
    background: var(--ceyeipress-widget-bg, var(--ceyei-widget-bg, #ffffff));
    border: 1px solid var(--ceyei-widget-border);
    border-radius: var(--ceyei-widget-radius);
    padding: var(--ceyeipress-space-lg);
    display: grid;
    gap: var(--ceyei-widget-gap);
}

.ceyeipress-widget-shadow {
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
}

.ceyeipress-widget-no-shadow {
    box-shadow: none;
}

.ceyeipress-widget-hide-icons .ceyeipress-file-icon,
.ceyeipress-widget-hide-icons .ceyeipress-step-icon {
    display: none;
}

.ceyeipress-widget-hide-badges .ceyeipress-badge {
    display: none !important;
}

.ceyeipress-widget-hide-actions .ceyeipress-portal-doc-actions,
.ceyeipress-widget-hide-actions .ceyeipress-portal-plan-actions,
.ceyeipress-widget-hide-actions .ceyeipress-actions,
.ceyeipress-widget-hide-actions .ceyeipress-candidate-agenda-shell form {
    display: none !important;
}

.ceyeipress-widget-header {
    display: grid;
    gap: 6px;
}

.ceyeipress-widget-title {
    margin: 0;
    font-size: 22px;
    line-height: 1.25;
    color: var(--ceyeipress-widget-title-color, var(--ceyei-widget-title-color));
}

.ceyeipress-widget-subtitle {
    margin: 0;
    color: var(--ceyei-widget-secondary);
    font-size: 14px;
}

.ceyeipress-widget-body {
    display: grid;
    gap: var(--ceyeipress-space-md);
    color: var(--ceyeipress-widget-text-color, var(--ceyei-widget-text));
}

.ceyeipress-widget-shell a {
    color: var(--ceyeipress-widget-accent-color, var(--ceyei-widget-primary));
}

.ceyeipress-widget-shell .ceyeipress-card,
.ceyeipress-widget-shell .ceyeipress-summary-card,
.ceyeipress-widget-shell .ceyeipress-stat-card,
.ceyeipress-widget-shell .ceyeipress-portal-docs-card,
.ceyeipress-widget-shell .ceyeipress-portal-plan-card,
.ceyeipress-widget-shell .ceyeipress-booking-meta-card {
    background: var(--ceyeipress-widget-card-bg, var(--ceyei-widget-card-bg, #ffffff));
    border-color: var(--ceyeipress-widget-border-color, var(--ceyei-widget-border, #e5e7eb));
}

.ceyeipress-widget-shell .ceyeipress-card-body,
.ceyeipress-widget-shell .ceyeipress-portal-doc-body,
.ceyeipress-widget-shell .ceyeipress-candidate-agenda-shell,
.ceyeipress-widget-shell .ceyeipress-portal-plan-section,
.ceyeipress-widget-shell .ceyeipress-widget-body,
.ceyeipress-widget-shell .ceyeipress-booked-plan-card,
.ceyeipress-widget-shell .ceyeipress-followup-stage-card,
.ceyeipress-widget-shell .ceyeipress-portal-doc-item,
.ceyeipress-widget-shell .ceyeipress-plan-calendar-widget,
.ceyeipress-widget-shell .ceyeipress-plan-slots-widget,
.ceyeipress-widget-shell .ceyeipress-candidate-profile-row,
.ceyeipress-widget-shell .ceyeipress-candidate-header-meta > div,
.ceyeipress-widget-shell .ceyeipress-candidate-profile-details > *,
.ceyeipress-widget-shell .ceyeipress-widget-meta-grid > * {
    background: var(--ceyeipress-widget-inner-bg, var(--ceyei-widget-inner-bg, #ffffff));
}

.ceyeipress-availability-builder-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    gap: 16px;
}

.ceyeipress-availability-builder-panel {
    border: 1px solid var(--cx-border);
    border-radius: 10px;
    background: #fff;
    padding: 12px;
    display: grid;
    gap: 12px;
}

.ceyeipress-selected-dates-inline {
    margin: 0;
    font-size: 13px;
    color: var(--cx-muted);
}

.ceyeipress-availability-preview-list {
    margin: 0;
    padding: 0 0 0 18px;
    display: grid;
    gap: 4px;
}

.ceyeipress-availability-preview-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.ceyeipress-availability-preview-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    border-radius: 999px;
    border: 1px solid #c7d2fe;
    background: #eef2ff;
    color: #312e81;
    font-weight: 700;
    font-size: 12px;
}

.ceyeipress-widget-inner-bg-none .ceyeipress-card-body,
.ceyeipress-widget-inner-bg-none .ceyeipress-portal-doc-body,
.ceyeipress-widget-inner-bg-none .ceyeipress-candidate-agenda-shell,
.ceyeipress-widget-inner-bg-none .ceyeipress-portal-plan-section,
.ceyeipress-widget-inner-bg-none .ceyeipress-widget-body,
.ceyeipress-widget-inner-bg-none .ceyeipress-booked-plan-card,
.ceyeipress-widget-inner-bg-none .ceyeipress-followup-stage-card,
.ceyeipress-widget-inner-bg-none .ceyeipress-portal-doc-item,
.ceyeipress-widget-inner-bg-none .ceyeipress-plan-calendar-widget,
.ceyeipress-widget-inner-bg-none .ceyeipress-plan-slots-widget,
.ceyeipress-widget-inner-bg-none .ceyeipress-candidate-profile-row,
.ceyeipress-widget-inner-bg-none .ceyeipress-candidate-header-meta > div,
.ceyeipress-widget-inner-bg-none .ceyeipress-candidate-profile-details > *,
.ceyeipress-widget-inner-bg-none .ceyeipress-widget-meta-grid > * {
    background: transparent;
    border-color: transparent;
    box-shadow: none;
}

.ceyeipress-widget-inner-bg-none .ceyeipress-card,
.ceyeipress-widget-inner-bg-none .ceyeipress-summary-card,
.ceyeipress-widget-inner-bg-none .ceyeipress-stat-card,
.ceyeipress-widget-inner-bg-none .ceyeipress-portal-docs-card,
.ceyeipress-widget-inner-bg-none .ceyeipress-portal-plan-card,
.ceyeipress-widget-inner-bg-none .ceyeipress-booking-meta-card {
    background: transparent;
    border-color: transparent;
    box-shadow: none;
}

.ceyeipress-widget-preset-compact {
    padding: var(--ceyeipress-space-md);
    --ceyei-widget-gap: var(--ceyeipress-space-sm);
}

.ceyeipress-widget-preset-compact .ceyeipress-widget-title {
    font-size: 18px;
}

.ceyeipress-widget-preset-dashboard {
    border-color: #c7d2fe;
    background: linear-gradient(180deg, #f8faff 0%, #ffffff 36%);
    box-shadow: 0 14px 28px rgba(67, 56, 202, 0.08);
}

.ceyeipress-widget-preset-dashboard .ceyeipress-widget-title {
    color: #312e81;
}

.ceyeipress-widget-preset-minimal {
    border-radius: 10px;
    border-style: dashed;
    background: transparent;
    box-shadow: none;
}

.ceyeipress-widget-preset-minimal .ceyeipress-widget-header {
    padding-bottom: var(--ceyeipress-space-xs);
    border-bottom: 1px dashed var(--ceyei-widget-border);
}

.ceyeipress-widget-empty {
    border-radius: 12px;
    border: 1px solid var(--cx-border);
    background: #f8fafc;
    padding: 14px;
    display: grid;
    gap: 6px;
}

.ceyeipress-widget-empty-title {
    margin: 0;
    font-size: 15px;
}

.ceyeipress-widget-empty-message {
    margin: 0;
    color: var(--cx-muted);
    font-size: 14px;
}

.ceyeipress-widget-compact-state {
    padding: 10px;
    gap: 4px;
    border-radius: 10px;
}

.ceyeipress-widget-compact-state .ceyeipress-widget-empty-title {
    font-size: 13px;
}

.ceyeipress-widget-compact-state .ceyeipress-widget-empty-message {
    font-size: 12px;
}

.ceyeipress-widget-empty-warning {
    border-color: #fcd34d;
    background: #fffbeb;
}

.ceyeipress-widget-empty-danger {
    border-color: #fca5a5;
    background: #fef2f2;
}

.ceyeipress-widget-empty-success {
    border-color: #86efac;
    background: #ecfdf5;
}

.ceyeipress-widget-message-wrap {
    padding: 0;
    background: transparent;
}

.ceyeipress-step-meta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.ceyeipress-step-number,
.ceyeipress-step-icon {
    width: 20px;
    height: 20px;
    border-radius: 999px;
    border: 1px solid var(--cx-border);
    background: #fff;
    color: var(--cx-muted);
    font-size: 12px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.ceyeipress-candidate-header-progress {
    margin-top: 12px;
}

/* Controles visuales por widget */
.ceyeipress-doc-widget-layout-grid .ceyeipress-portal-docs-list {
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.ceyeipress-doc-widget-hide-observations .ceyeipress-portal-doc-observations {
    display: none;
}

.ceyeipress-doc-widget-hide-actions .ceyeipress-portal-doc-actions {
    display: none;
}

.ceyeipress-doc-widget-hide-file-name .ceyeipress-file-name-muted,
.ceyeipress-doc-widget-hide-file-name .ceyeipress-file-inline-text {
    display: none;
}

.ceyeipress-doc-widget-only-required .ceyeipress-portal-doc-optional {
    display: none;
}

.ceyeipress-doc-widget-only-pending .ceyeipress-portal-doc-status-accepted {
    display: none;
}

.ceyeipress-agenda-hide-plan .ceyeipress-portal-agenda-stage-plan {
    display: none;
}

.ceyeipress-agenda-hide-process .ceyeipress-portal-agenda-stage-process {
    display: none;
}

.ceyeipress-agenda-hide-dictamen .ceyeipress-portal-agenda-stage-dictamen {
    display: none;
}

.ceyeipress-agenda-hide-expected-docs .ceyeipress-followup-stage-expected-doc {
    display: none;
}

.ceyeipress-signed-plan-hide-evaluator-doc .ceyeipress-portal-plan-card-evaluator {
    display: none;
}

.ceyeipress-signed-plan-hide-candidate-doc .ceyeipress-portal-plan-card-candidate {
    display: none;
}

.ceyeipress-signed-plan-hide-status .ceyeipress-portal-plan-status-row {
    display: none;
}

.ceyeipress-signed-plan-hide-observations .ceyeipress-portal-plan-observations-row {
    display: none;
}

.ceyeipress-signed-plan-hide-actions .ceyeipress-portal-plan-actions {
    display: none;
}

.ceyeipress-evaluator-cases-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 12px;
}

.ceyeipress-evaluator-cases-filters input[type="text"],
.ceyeipress-evaluator-cases-filters select {
    min-height: 36px;
}

.ceyeipress-evaluator-case-item {
    border: 1px solid var(--cx-border);
    border-radius: 12px;
    background: #fff;
    padding: 12px;
    display: grid;
    gap: 10px;
}

.ceyeipress-evaluator-case-item-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}

.ceyeipress-evaluator-case-item-head h3 {
    margin: 0;
    font-size: 16px;
}

.ceyeipress-evaluator-case-item-grid {
    display: grid;
    gap: 6px;
}

.ceyeipress-evaluator-case-item-grid p {
    margin: 0;
}

.ceyeipress-evaluator-micro-widget {
    background: transparent;
    padding: 0;
}

.ceyeipress-evaluator-profile-head {
    display: flex;
    gap: 10px;
    align-items: center;
}

.ceyeipress-evaluator-profile-head-main {
    display: grid;
    gap: 4px;
}

.ceyeipress-evaluator-profile-head-main .ceyeipress-card-title {
    margin: 0;
    font-size: 18px;
}

.ceyeipress-evaluator-profile-list {
    margin-top: 12px;
    display: grid;
    gap: 8px;
}

.ceyeipress-evaluator-quick-actions {
    display: grid;
    gap: 8px;
}

.ceyeipress-evaluator-quick-actions-grid {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.ceyeipress-evaluator-quick-action {
    border: 1px solid var(--cx-border);
    border-radius: 10px;
    background: #fff;
    padding: 10px 12px;
    text-decoration: none;
    color: var(--cx-text);
    display: grid;
    gap: 4px;
}

.ceyeipress-evaluator-quick-action-head {
    display: flex;
    gap: 8px;
    align-items: center;
}

.ceyeipress-evaluator-quick-action-head strong {
    font-size: 14px;
}

.ceyeipress-evaluator-quick-action .dashicons {
    color: var(--cx-primary);
}

.ceyeipress-evaluator-quick-action:hover,
.ceyeipress-evaluator-quick-action:focus {
    border-color: #c7d2fe;
    background: #f5f7ff;
    color: #312e81;
}

.ceyeipress-evaluator-availability-status-card .ceyeipress-grid-2 {
    margin: 8px 0;
}

@media (max-width: 1100px) {
    .ceyeipress-grid-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .ceyeipress-grid-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1200px) {
    .ceyeipress-candidate-hero-content h1 {
        font-size: 30px;
    }
    .ceyeipress-candidate-floating-container {
        padding-left: 20px;
        padding-right: 20px;
        grid-template-columns: minmax(240px, 280px) minmax(0, 1fr);
    }
    .ceyeipress-booking-meta-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1024px) {
    .ceyeipress-candidate-hero-band {
        min-height: 220px;
        padding: 32px 18px 92px;
    }
    .ceyeipress-candidate-floating-container {
        margin-top: -74px;
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
        padding-left: 18px;
        padding-right: 18px;
    }
    .ceyeipress-candidate-profile-card {
        position: static;
    }
    .ceyeipress-booking-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .ceyeipress-candidate-profile-details,
    .ceyeipress-widget-meta-grid,
    .ceyeipress-candidate-header-widget .ceyeipress-candidate-header-meta {
        grid-template-columns: minmax(0, 1fr);
    }
    .ceyeipress-availability-builder-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 980px) {
    .ceyeipress-candidate-dashboard .ceyeipress-grid-2 {
        grid-template-columns: minmax(0, 1fr);
    }
    .ceyeipress-file-inline-text {
        display: block;
        margin-left: 0;
        margin-top: 6px;
    }
}

@media (max-width: 782px) {
    .ceyeipress-dashboard-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .ceyeipress-grid-2,
    .ceyeipress-grid-3,
    .ceyeipress-grid-4,
    .ceyeipress-stepper {
        grid-template-columns: minmax(0, 1fr);
    }
    .ceyeipress-actions .button {
        width: 100%;
        text-align: center;
    }
    .ceyeipress-widget-shell {
        padding: 12px;
    }
    .ceyeipress-widget-title {
        font-size: 18px;
    }
    .ceyeipress-card-title {
        font-size: 18px;
    }
    .ceyeipress-table-scroll table {
        min-width: 620px;
    }
    .ceyeipress-plan-calendar-header {
        flex-wrap: wrap;
    }
    .ceyeipress-plan-calendar-header .button {
        min-width: 46px;
    }
    .ceyeipress-plan-slots-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .ceyeipress-evaluator-quick-actions-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .ceyeipress-evaluator-profile-head {
        align-items: flex-start;
    }
    .ceyeipress-plan-calendar-weekdays,
    .ceyeipress-plan-calendar-grid {
        gap: 4px;
    }
    .ceyeipress-calendar-day {
        min-height: 34px;
    }
    .ceyeipress-candidate-hero-band {
        min-height: 190px;
        padding: 28px 14px 74px;
    }
    .ceyeipress-candidate-hero-content h1 {
        font-size: 24px;
    }
    .ceyeipress-candidate-hero-content p {
        font-size: 14px;
    }
    .ceyeipress-candidate-floating-container {
        margin-top: -56px;
        padding-left: 12px;
        padding-right: 12px;
    }
    .ceyeipress-portal-topbar {
        min-height: 56px;
        padding-left: 12px;
        padding-right: 12px;
    }
    .ceyeipress-portal-topbar-help {
        font-size: 12px;
        text-align: right;
    }
    .ceyeipress-portal-nav {
        gap: 6px;
        padding: 8px;
    }
    .ceyeipress-portal-nav a {
        font-size: 12px;
        padding: 7px 10px;
    }
    .ceyeipress-portal-doc-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .ceyeipress-booking-meta-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .ceyeipress-evaluator-cases-cards {
        grid-template-columns: minmax(0, 1fr);
    }
    .ceyeipress-plan-slots-widget [data-slot-submit],
    .ceyeipress-portal-doc-upload-form .button {
        width: 100%;
        justify-self: stretch;
    }
    .ceyeipress-file-name-muted {
        max-width: 100%;
    }
    .ceyeipress-candidate-header-widget .ceyeipress-candidate-header-meta > div,
    .ceyeipress-candidate-profile-row {
        padding: 8px 10px;
    }
}

@media (max-width: 480px) {
    .ceyeipress-candidate-hero-band {
        min-height: 170px;
        padding: 22px 10px 62px;
    }
    .ceyeipress-candidate-hero-content h1 {
        font-size: 22px;
    }
    .ceyeipress-candidate-hero-state {
        display: grid;
        border-radius: 12px;
        gap: 4px;
        width: 100%;
    }
    .ceyeipress-candidate-floating-container {
        margin-top: -44px;
        padding-left: 8px;
        padding-right: 8px;
        padding-bottom: 16px;
    }
    .ceyeipress-candidate-profile-card {
        border-radius: 12px;
        padding: 14px 12px;
    }
    .ceyeipress-candidate-avatar {
        width: 50px;
        height: 50px;
        font-size: 18px;
    }
    .ceyeipress-candidate-name {
        font-size: 18px;
    }
    .ceyeipress-plan-calendar-widget,
    .ceyeipress-plan-slots-widget,
    .ceyeipress-portal-plan-card,
    .ceyeipress-portal-docs-card {
        padding: 12px;
    }

    .ceyeipress-compact-doc-table-head,
    .ceyeipress-portal-doc-item-compact {
        grid-template-columns: 1fr;
    }

    .ceyeipress-compact-col-actions {
        align-items: flex-start;
    }

    .ceyeipress-compact-file-input {
        position: absolute;
    }
}
