/* ========================================
   SmartHire AI Recruitment Plugin Styles
   Version: 1.8.12
   ======================================== */

/* Root Variables */
:root {
    --shr-primary: #1d4ed8;
    --shr-primary-dark: #1e40af;
    --shr-primary-light: #3b82f6;
    --shr-secondary: #64748b;
    --shr-success: #10b981;
    --shr-warning: #f59e0b;
    --shr-danger: #ef4444;
    --shr-info: #3b82f6;
    --shr-dark: #1e293b;
    --shr-gray: #6b7280;
    --shr-light: #f8fafc;
    --shr-border: #e2e8f0;
    --shr-shadow: 0 1px 3px rgba(0,0,0,0.1);
    --shr-shadow-lg: 0 10px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.02);
    --shr-radius: 12px;
    --shr-radius-sm: 8px;
}

/* ========================================
   Container & Layout
   ======================================== */
.shr-wrap,
.shr-jobs,
.shr-dashboard-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 20px;
}

/* ========================================
   Authentication Forms
   ======================================== */
.shr-auth-container {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    padding: 40px 20px;
}

.shr-auth-card {
    background: white;
    border-radius: 24px;
    box-shadow: var(--shr-shadow-lg);
    max-width: 800px;
    width: 100%;
    overflow: hidden;
}

.shr-auth-header {
    background: linear-gradient(135deg, var(--shr-primary) 0%, var(--shr-primary-dark) 100%);
    color: white;
    text-align: center;
    padding: 40px 30px;
}

.shr-auth-header i {
    font-size: 48px;
    margin-bottom: 15px;
}

.shr-auth-header h2 {
    margin: 0 0 10px;
    font-size: 28px;
}

.shr-auth-header p {
    margin: 0;
    opacity: 0.9;
}

.shr-auth-form {
    padding: 40px;
}

.shr-auth-form .shr-form-row {
    margin-bottom: 20px;
}

.shr-auth-footer {
    text-align: center;
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid var(--shr-border);
}

.shr-auth-btn {
    width: 100%;
    padding: 14px;
    background: var(--shr-primary);
    color: white;
    border: none;
    border-radius: var(--shr-radius-sm);
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s;
}

.shr-auth-btn:hover {
    background: var(--shr-primary-dark);
    transform: translateY(-2px);
}

/* ========================================
   Form Styles
   ======================================== */
.shr-form-modern,
.shr-form {
    max-width: 100%;
}

.shr-form-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
}

.shr-form-row {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

.shr-form-row.two-cols .shr-input-group {
    flex: 1;
    min-width: 200px;
}

.shr-input-group {
    margin-bottom: 20px;
}

.shr-input-group label {
    display: block;
    font-weight: 600;
    margin-bottom: 8px;
    color: var(--shr-dark);
    font-size: 14px;
}

.shr-input-group input,
.shr-input-group textarea,
.shr-input-group select {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius-sm);
    font-size: 14px;
    transition: all 0.3s;
}

.shr-input-group input:focus,
.shr-input-group textarea:focus,
.shr-input-group select:focus {
    outline: none;
    border-color: var(--shr-primary);
    box-shadow: 0 0 0 3px rgba(29, 78, 216, 0.1);
}

.shr-input-group textarea {
    resize: vertical;
    min-height: 100px;
}

.shr-form-actions {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid var(--shr-border);
    display: flex;
    gap: 15px;
}

/* ========================================
   Button Styles
   ======================================== */
.shr-btn-primary,
.shr-button,
.shr-auth-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: var(--shr-primary);
    color: white;
    border: none;
    border-radius: var(--shr-radius-sm);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s;
}

.shr-btn-primary:hover,
.shr-button:hover,
.shr-auth-btn:hover {
    background: var(--shr-primary-dark);
    transform: translateY(-2px);
    color: white;
}

.shr-btn-secondary {
    background: var(--shr-gray);
}

.shr-btn-secondary:hover {
    background: var(--shr-secondary);
}

.shr-btn-small,
.button.button-small {
    padding: 6px 12px;
    font-size: 12px;
}

.shr-btn-icon {
    padding: 8px;
    border-radius: var(--shr-radius-sm);
    background: var(--shr-light);
    color: var(--shr-dark);
    transition: all 0.3s;
}

.shr-btn-icon:hover {
    background: var(--shr-primary);
    color: white;
}

/* ========================================
   Dashboard Layout
   ======================================== */
.shr-dashboard-container {
    display: flex;
    gap: 30px;
    background: var(--shr-light);
    min-height: calc(100vh - 100px);
}

.shr-dashboard-sidebar {
    width: 280px;
    background: white;
    border-radius: var(--shr-radius);
    box-shadow: var(--shr-shadow);
    overflow: hidden;
    flex-shrink: 0;
}

.shr-company-info,
.shr-candidate-info {
    text-align: center;
    padding: 30px 20px;
    background: linear-gradient(135deg, var(--shr-primary) 0%, var(--shr-primary-dark) 100%);
    color: white;
}

.shr-company-logo,
.shr-profile-photo {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid white;
    margin-bottom: 15px;
}

.shr-company-initials,
.shr-profile-initials {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: rgba(255,255,255,0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 36px;
    font-weight: bold;
    margin: 0 auto 15px;
    border: 4px solid white;
}

.shr-dashboard-nav {
    padding: 20px 0;
}

.shr-dashboard-nav a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 24px;
    color: var(--shr-dark);
    text-decoration: none;
    transition: all 0.3s;
    border-left: 3px solid transparent;
}

.shr-dashboard-nav a i {
    width: 20px;
}

.shr-dashboard-nav a:hover,
.shr-dashboard-nav a.active {
    background: var(--shr-light);
    border-left-color: var(--shr-primary);
    color: var(--shr-primary);
}

.shr-dashboard-content {
    flex: 1;
    background: white;
    border-radius: var(--shr-radius);
    box-shadow: var(--shr-shadow);
    padding: 30px;
    overflow: hidden;
}

.shr-dashboard-section {
    animation: fadeIn 0.5s ease;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ========================================
   Stats Cards
   ======================================== */
.shr-stats-row,
.shr-stat-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 30px;
}

.shr-stat-box,
.shr-stat-card {
    background: white;
    border-radius: var(--shr-radius);
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    box-shadow: var(--shr-shadow);
    transition: transform 0.3s;
    border: 1px solid var(--shr-border);
}

.shr-stat-box:hover,
.shr-stat-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shr-shadow-lg);
}

.shr-stat-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
}

.shr-stat-box:nth-child(1) .shr-stat-icon { background: rgba(59, 130, 246, 0.1); color: #3b82f6; }
.shr-stat-box:nth-child(2) .shr-stat-icon { background: rgba(16, 185, 129, 0.1); color: #10b981; }
.shr-stat-box:nth-child(3) .shr-stat-icon { background: rgba(245, 158, 11, 0.1); color: #f59e0b; }
.shr-stat-box:nth-child(4) .shr-stat-icon { background: rgba(139, 92, 246, 0.1); color: #8b5cf6; }

.shr-stat-details {
    flex: 1;
}

.shr-stat-number {
    font-size: 28px;
    font-weight: bold;
    color: var(--shr-dark);
    line-height: 1;
}

.shr-stat-label {
    font-size: 14px;
    color: var(--shr-gray);
    margin-top: 5px;
}

/* ========================================
   Tables
   ======================================== */
.shr-table {
    width: 100%;
    border-collapse: collapse;
    background: white;
    border-radius: var(--shr-radius);
    overflow: hidden;
    box-shadow: var(--shr-shadow);
}

.shr-table thead {
    background: var(--shr-light);
}

.shr-table th,
.shr-table td {
    padding: 15px;
    text-align: left;
    border-bottom: 1px solid var(--shr-border);
}

.shr-table th {
    font-weight: 600;
    color: var(--shr-dark);
    font-size: 14px;
}

.shr-table td {
    color: var(--shr-gray);
    font-size: 14px;
}

.shr-table tbody tr:hover {
    background: var(--shr-light);
}

/* ========================================
   Status Badges
   ======================================== */
.shr-status-badge,
.shr-status {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 500;
    text-transform: capitalize;
}

.shr-status-pending,
.shr-status-submitted {
    background: #fef3c7;
    color: #92400e;
}

.shr-status-approved,
.shr-status-active,
.shr-status-published {
    background: #d1fae5;
    color: #065f46;
}

.shr-status-rejected,
.shr-status-closed,
.shr-status-inactive {
    background: #fee2e2;
    color: #991b1b;
}

.shr-status-under_review {
    background: #dbeafe;
    color: #1e40af;
}

.shr-status-shortlisted {
    background: #fed7aa;
    color: #9a3412;
}

.shr-status-hired {
    background: #d1fae5;
    color: #065f46;
}

.shr-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 500;
}

.shr-badge.suspended {
    background: #fee2e2;
    color: #991b1b;
}

/* ========================================
   Job Listings - Grid Layout
   ======================================== */
.shr-job-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 25px;
    margin-top: 20px;
}

.shr-job-card {
    background: white;
    border-radius: var(--shr-radius);
    box-shadow: var(--shr-shadow);
    overflow: hidden;
    transition: transform 0.3s, box-shadow 0.3s;
    border: 1px solid var(--shr-border);
}

.shr-job-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shr-shadow-lg);
}

.shr-job-card-header {
    padding: 20px;
    background: var(--shr-light);
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--shr-border);
}

.shr-job-logo {
    width: 60px;
    height: 60px;
    border-radius: 12px;
    overflow: hidden;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--shr-shadow);
}

.shr-job-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.shr-job-logo-placeholder {
    width: 100%;
    height: 100%;
    background: var(--shr-primary);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: bold;
}

.shr-featured-badge {
    background: linear-gradient(135deg, #f59e0b, #d97706);
    color: white;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 600;
}

.shr-job-card-body {
    padding: 20px;
}

.shr-job-card-body h3 {
    margin: 0 0 10px;
    font-size: 18px;
    color: var(--shr-dark);
}

.shr-job-company {
    color: var(--shr-primary);
    font-weight: 500;
    margin-bottom: 12px;
}

.shr-job-details {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 15px;
    font-size: 13px;
    color: var(--shr-gray);
}

.shr-job-details span {
    display: flex;
    align-items: center;
    gap: 5px;
}

.shr-job-salary {
    font-size: 18px;
    font-weight: bold;
    color: var(--shr-primary);
    margin-bottom: 10px;
}

.shr-job-deadline {
    font-size: 12px;
    color: var(--shr-warning);
}

.shr-job-card-footer {
    padding: 15px 20px;
    background: var(--shr-light);
    border-top: 1px solid var(--shr-border);
}

/* ========================================
   Job Listings - List Layout
   ======================================== */
.shr-job-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.shr-job-list-item {
    background: white;
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius);
    padding: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    transition: all 0.3s;
}

.shr-job-list-item:hover {
    box-shadow: var(--shr-shadow);
    border-color: var(--shr-primary-light);
}

.shr-job-list-main {
    display: flex;
    gap: 20px;
    flex: 1;
}

.shr-job-list-logo {
    width: 70px;
    height: 70px;
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
}

.shr-job-list-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.shr-job-list-info {
    flex: 1;
}

.shr-job-list-info h3 {
    margin: 0 0 8px;
    font-size: 18px;
}

.shr-job-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-bottom: 10px;
    font-size: 13px;
    color: var(--shr-gray);
}

.shr-job-meta span {
    display: flex;
    align-items: center;
    gap: 5px;
}

.shr-job-description {
    font-size: 13px;
    color: var(--shr-gray);
    line-height: 1.5;
}

.shr-job-list-actions {
    text-align: right;
    flex-shrink: 0;
}

/* ========================================
   Job Listings - Compact Layout
   ======================================== */
.shr-job-compact {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.shr-job-compact-item {
    background: white;
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius-sm);
    padding: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.shr-job-compact-title h3 {
    margin: 0 0 5px;
    font-size: 16px;
}

.shr-job-compact-title h3 a {
    color: var(--shr-dark);
    text-decoration: none;
}

.shr-job-compact-title h3 a:hover {
    color: var(--shr-primary);
}

.shr-job-company {
    font-size: 13px;
    color: var(--shr-gray);
}

.shr-job-compact-meta {
    display: flex;
    gap: 15px;
    font-size: 12px;
    color: var(--shr-gray);
}

.shr-job-compact-salary {
    font-size: 14px;
    font-weight: 600;
    color: var(--shr-primary);
}

/* ========================================
   Job Detail Page
   ======================================== */
.shr-job-detail-container {
    background: white;
    border-radius: var(--shr-radius);
    overflow: hidden;
    box-shadow: var(--shr-shadow);
}

.shr-job-detail-header {
    background: linear-gradient(135deg, var(--shr-primary) 0%, var(--shr-primary-dark) 100%);
    color: white;
    padding: 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

.shr-job-detail-company {
    display: flex;
    gap: 20px;
    align-items: center;
}

.shr-job-detail-logo {
    width: 80px;
    height: 80px;
    background: white;
    border-radius: 16px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--shr-shadow);
}

.shr-job-detail-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.shr-job-detail-info h1 {
    margin: 0 0 10px;
    font-size: 28px;
}

.shr-job-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    font-size: 14px;
    opacity: 0.9;
}

.shr-job-detail-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 30px;
    padding: 40px;
}

.shr-job-section {
    margin-bottom: 30px;
}

.shr-job-section h3 {
    margin: 0 0 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--shr-border);
    color: var(--shr-dark);
}

.shr-job-content {
    line-height: 1.6;
    color: var(--shr-gray);
}

.shr-skills-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.shr-skill-tag {
    background: var(--shr-light);
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 13px;
    color: var(--shr-primary);
    border: 1px solid var(--shr-border);
}

.shr-info-card {
    background: var(--shr-light);
    border-radius: var(--shr-radius);
    padding: 20px;
    margin-bottom: 20px;
}

.shr-info-card h3 {
    margin: 0 0 15px;
    color: var(--shr-dark);
    font-size: 16px;
}

.shr-info-card ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.shr-info-card li {
    padding: 8px 0;
    border-bottom: 1px solid var(--shr-border);
    display: flex;
    justify-content: space-between;
    font-size: 14px;
}

.shr-info-card li:last-child {
    border-bottom: none;
}

/* ========================================
   Application Review
   ======================================== */
.shr-app-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 25px;
}

.shr-app-card {
    background: white;
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius);
    padding: 25px;
    margin-bottom: 25px;
}

.shr-app-card h3 {
    margin: 0 0 15px;
    color: var(--shr-dark);
    font-size: 18px;
}

.shr-candidate-details .shr-detail-row {
    display: flex;
    padding: 10px 0;
    border-bottom: 1px solid var(--shr-border);
}

.shr-detail-label {
    width: 120px;
    font-weight: 600;
    color: var(--shr-dark);
}

.shr-detail-value {
    flex: 1;
    color: var(--shr-gray);
}

.shr-full-value {
    flex: 1;
    color: var(--shr-gray);
    line-height: 1.6;
}

.shr-notes-list {
    margin-top: 20px;
    max-height: 400px;
    overflow-y: auto;
}

.shr-note-item {
    background: var(--shr-light);
    border-radius: var(--shr-radius-sm);
    padding: 15px;
    margin-bottom: 15px;
}

.shr-note-meta {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    font-size: 12px;
    color: var(--shr-gray);
}

.shr-note-content {
    font-size: 14px;
    line-height: 1.5;
}

.shr-ai-score {
    text-align: center;
    padding: 20px;
}

.shr-score-display {
    font-size: 36px;
    font-weight: bold;
    color: var(--shr-primary);
    margin-bottom: 10px;
}

.shr-score-bar {
    height: 8px;
    background: var(--shr-border);
    border-radius: 4px;
    overflow: hidden;
}

.shr-score-bar div {
    height: 100%;
    background: var(--shr-primary);
    border-radius: 4px;
    transition: width 0.5s ease;
}

.shr-score-circle {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--shr-primary), var(--shr-primary-light));
    color: white;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 14px;
}

/* ========================================
   Messages
   ======================================== */
.shr-messages-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.shr-message-item {
    background: white;
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius);
    padding: 20px;
    transition: all 0.3s;
}

.shr-message-item.unread {
    background: #eff6ff;
    border-left: 4px solid var(--shr-primary);
}

.shr-message-header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--shr-border);
}

.shr-message-subject {
    font-weight: 600;
    margin-bottom: 10px;
    color: var(--shr-dark);
}

.shr-message-body {
    color: var(--shr-gray);
    line-height: 1.5;
}

/* ========================================
   Search & Filters
   ======================================== */
.shr-job-search-bar {
    background: white;
    border-radius: var(--shr-radius);
    padding: 20px;
    margin-bottom: 30px;
    box-shadow: var(--shr-shadow);
}

.shr-search-form {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.shr-search-row {
    display: flex;
    flex: 1;
    flex-wrap: wrap;
    gap: 15px;
}

.shr-search-input {
    flex: 1;
    position: relative;
}

.shr-search-input i {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--shr-gray);
}

.shr-search-input input,
.shr-search-input select {
    width: 100%;
    padding: 12px 12px 12px 40px;
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius-sm);
    font-size: 14px;
}

.shr-search-btn {
    padding: 12px 24px;
    background: var(--shr-primary);
    color: white;
    border: none;
    border-radius: var(--shr-radius-sm);
    cursor: pointer;
    font-weight: 500;
    transition: all 0.3s;
}

.shr-job-stats {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    padding: 10px 0;
    color: var(--shr-gray);
}

.shr-layout-switch {
    display: flex;
    gap: 8px;
}

.shr-layout-switch a {
    padding: 8px 12px;
    background: white;
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius-sm);
    color: var(--shr-gray);
    text-decoration: none;
    transition: all 0.3s;
}

.shr-layout-switch a:hover,
.shr-layout-switch a.active {
    background: var(--shr-primary);
    color: white;
    border-color: var(--shr-primary);
}

/* ========================================
   Pagination
   ======================================== */
.shr-pagination {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 40px;
}

.shr-pagination a {
    padding: 8px 14px;
    background: white;
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius-sm);
    color: var(--shr-primary);
    text-decoration: none;
    transition: all 0.3s;
}

.shr-pagination a:hover,
.shr-pagination a.active {
    background: var(--shr-primary);
    color: white;
    border-color: var(--shr-primary);
}

/* ========================================
   Quick Actions & Empty States
   ======================================== */
.shr-quick-actions-row {
    display: flex;
    gap: 15px;
    margin-bottom: 30px;
    flex-wrap: wrap;
}

.shr-quick-btn {
    padding: 10px 20px;
    background: var(--shr-light);
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius-sm);
    text-decoration: none;
    color: var(--shr-dark);
    transition: all 0.3s;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.shr-quick-btn:hover {
    background: var(--shr-primary);
    color: white;
    border-color: var(--shr-primary);
}

.shr-empty-state {
    text-align: center;
    padding: 60px 20px;
    color: var(--shr-gray);
}

.shr-empty-state i {
    font-size: 64px;
    margin-bottom: 20px;
    opacity: 0.5;
}

.shr-empty-state p {
    margin-bottom: 20px;
    font-size: 16px;
}

/* ========================================
   Notices
   ======================================== */
.shr-notice {
    padding: 15px 20px;
    border-radius: var(--shr-radius-sm);
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.shr-success {
    background: #d1fae5;
    border-left: 4px solid #10b981;
    color: #065f46;
}

.shr-error {
    background: #fee2e2;
    border-left: 4px solid #ef4444;
    color: #991b1b;
}

.shr-warning {
    background: #fef3c7;
    border-left: 4px solid #f59e0b;
    color: #92400e;
}

.shr-info {
    background: #dbeafe;
    border-left: 4px solid #3b82f6;
    color: #1e40af;
}

/* ========================================
   Responsive Design
   ======================================== */
@media (max-width: 1024px) {
    .shr-dashboard-container {
        flex-direction: column;
    }
    
    .shr-dashboard-sidebar {
        width: 100%;
    }
    
    .shr-job-detail-grid,
    .shr-app-grid {
        grid-template-columns: 1fr;
    }
    
    .shr-job-grid {
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    }
}

@media (max-width: 768px) {
    .shr-wrap,
    .shr-jobs,
    .shr-dashboard-container {
        padding: 15px;
    }
    
    .shr-auth-form {
        padding: 30px 20px;
    }
    
    .shr-job-detail-header {
        padding: 20px;
        flex-direction: column;
        text-align: center;
    }
    
    .shr-job-detail-company {
        flex-direction: column;
    }
    
    .shr-job-detail-grid {
        padding: 20px;
    }
    
    .shr-form-row.two-cols {
        flex-direction: column;
    }
    
    .shr-job-list-item {
        flex-direction: column;
        text-align: center;
    }
    
    .shr-job-list-main {
        flex-direction: column;
        align-items: center;
    }
    
    .shr-job-list-actions {
        text-align: center;
    }
    
    .shr-table {
        display: block;
        overflow-x: auto;
    }
    
    .shr-stats-row,
    .shr-stat-grid {
        grid-template-columns: 1fr;
    }
    
    .shr-search-row {
        flex-direction: column;
    }
}

/* ========================================
   Print Styles
   ======================================== */
@media print {
    .shr-dashboard-sidebar,
    .shr-quick-actions-row,
    .shr-job-detail-actions,
    .shr-pagination,
    .shr-layout-switch,
    .shr-job-search-bar {
        display: none;
    }
    
    .shr-job-detail-container {
        box-shadow: none;
    }
    
    .shr-job-detail-header {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}

/* Password strength meter */
.shr-password-strength-meter {
    height: 4px;
    margin-top: 8px;
    border-radius: 2px;
    background: #e2e8f0;
    transition: all 0.3s;
}
.shr-password-strength-meter.weak { background: #ef4444; width: 33%; }
.shr-password-strength-meter.medium { background: #f59e0b; width: 66%; }
.shr-password-strength-meter.strong { background: #10b981; width: 100%; }

/* Progress bar */
.shr-progress-bar {
    background: rgba(255,255,255,0.2);
    border-radius: 10px;
    height: 6px;
    margin-top: 15px;
    overflow: hidden;
}
.shr-progress-bar div {
    background: white;
    height: 100%;
    border-radius: 10px;
    transition: width 0.3s;
}

/* Terms section */
.shr-terms {
    margin: 20px 0;
    padding: 15px;
    background: var(--shr-light);
    border-radius: var(--shr-radius-sm);
}
/* SmartHire 1.8.8 employer application review fixes */
.shr-dashboard-content { overflow: visible; }
.shr-employer-applications-section { max-width: 100%; }
.shr-section-header p { margin-top: -8px; color: var(--shr-gray); }
.shr-applications-list { display: flex; flex-direction: column; gap: 16px; }
.shr-application-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 18px;
    padding: 18px;
    background: #fff;
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius);
    box-shadow: var(--shr-shadow);
}
.shr-application-main { display: flex; gap: 16px; min-width: 0; cursor: pointer; }
.shr-application-main:hover h3 { color: var(--shr-primary); }
.shr-application-avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--shr-light);
    color: var(--shr-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.shr-application-info { min-width: 0; }
.shr-application-info h3 { margin: 0 0 6px; font-size: 18px; color: var(--shr-dark); }
.shr-application-info p { margin: 3px 0; color: var(--shr-gray); overflow-wrap: anywhere; }
.shr-application-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.shr-application-meta span {
    background: var(--shr-light);
    border: 1px solid var(--shr-border);
    border-radius: 999px;
    padding: 4px 10px;
    font-size: 12px;
    color: var(--shr-dark);
}
.shr-application-review-panel { display: flex; flex-direction: column; gap: 10px; }
.shr-app-actions-row { display: flex; flex-wrap: wrap; gap: 8px; }
.shr-quick-review-form { display: flex; flex-direction: column; gap: 8px; }
.shr-quick-review-form select,
.shr-quick-review-form textarea { width: 100%; }
.shr-btn-primary.shr-btn-small,
.shr-btn-small { text-decoration: none !important; }
@media (max-width: 900px) {
    .shr-application-card { grid-template-columns: 1fr; }
    .shr-application-review-panel { border-top: 1px solid var(--shr-border); padding-top: 12px; }
}

/* SmartHire 1.8.9 wider employer applications list */
.shr-dashboard-container {
    width: min(1280px, calc(100vw - 48px));
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    box-sizing: border-box;
}
.shr-dashboard-content {
    min-width: 0;
    width: 100%;
}
.shr-wide-section,
.shr-employer-applications-section {
    width: 100%;
    max-width: none;
}
.shr-app-filter-form {
    display: grid;
    grid-template-columns: minmax(240px, 1fr) 170px 190px auto auto;
    gap: 10px;
    align-items: center;
    width: 100%;
}
.shr-app-filter-form input[type="search"],
.shr-app-filter-form select {
    width: 100%;
    min-height: 42px;
}
.shr-list-summary {
    margin: 12px 0;
    color: var(--shr-gray);
    font-size: 14px;
}
.shr-applications-table-wrap {
    width: 100%;
    overflow-x: auto;
    background: #fff;
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius);
    box-shadow: var(--shr-shadow);
}
.shr-applications-table {
    width: 100%;
    min-width: 980px;
    border-collapse: collapse;
    table-layout: auto;
}
.shr-applications-table th,
.shr-applications-table td {
    padding: 14px 16px;
    border-bottom: 1px solid var(--shr-border);
    text-align: left;
    vertical-align: top;
}
.shr-applications-table th {
    background: var(--shr-light);
    color: var(--shr-dark);
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .03em;
}
.shr-applications-table td span {
    color: var(--shr-gray);
    font-size: 13px;
}
.shr-clickable-row {
    cursor: pointer;
}
.shr-clickable-row:hover {
    background: #f8fafc;
}
.shr-quick-review-cell {
    min-width: 260px;
}
.shr-quick-review-inline {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
    gap: 8px;
    align-items: start;
}
.shr-quick-review-inline select,
.shr-quick-review-inline textarea {
    width: 100%;
    min-height: 38px;
    font-size: 13px;
}
.shr-quick-review-inline textarea {
    resize: vertical;
}
.shr-actions-cell {
    white-space: nowrap;
}
.shr-actions-cell .shr-btn-small {
    margin: 0 4px 6px 0;
}
.shr-pagination {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 16px;
}
.shr-pagination a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border: 1px solid var(--shr-border);
    border-radius: var(--shr-radius-sm);
    text-decoration: none;
    color: var(--shr-dark);
    background: #fff;
}
.shr-pagination a.active,
.shr-pagination a:hover {
    background: var(--shr-primary);
    color: #fff;
    border-color: var(--shr-primary);
}
@media (max-width: 1100px) {
    .shr-dashboard-container {
        width: min(100%, calc(100vw - 24px));
        gap: 16px;
    }
    .shr-app-filter-form {
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 780px) {
    .shr-dashboard-container {
        flex-direction: column;
    }
    .shr-dashboard-sidebar {
        width: 100%;
    }
    .shr-app-filter-form {
        grid-template-columns: 1fr;
    }
}

/* SmartHire 1.8.10 theme-isolated employer dashboard
   Breaks the dashboard out of narrow theme content containers while keeping all
   styles scoped to the plugin dashboard only. */
.shr-employer-dashboard-shell,
.entry-content .shr-employer-dashboard-shell,
.site-content .shr-employer-dashboard-shell,
.wp-site-blocks .shr-employer-dashboard-shell {
    width: calc(100vw - 32px) !important;
    max-width: 1500px !important;
    margin-left: max(calc(50% - 50vw + 16px), calc((100% - 1500px) / 2)) !important;
    margin-right: auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    clear: both !important;
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}
.shr-employer-dashboard-shell * {
    box-sizing: border-box !important;
}
.shr-employer-dashboard-shell .shr-dashboard-container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 20px !important;
    display: grid !important;
    grid-template-columns: 300px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 28px !important;
    overflow: visible !important;
}
.shr-employer-dashboard-shell .shr-dashboard-sidebar {
    width: 300px !important;
    max-width: 300px !important;
}
.shr-employer-dashboard-shell .shr-dashboard-content {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    overflow: visible !important;
    padding: 30px !important;
}
.shr-employer-dashboard-shell h1,
.shr-employer-dashboard-shell h2,
.shr-employer-dashboard-shell h3,
.shr-employer-dashboard-shell h4,
.shr-employer-dashboard-shell p {
    max-width: none !important;
}
.shr-employer-dashboard-shell .shr-employer-applications-section,
.shr-employer-dashboard-shell .shr-wide-section,
.shr-employer-dashboard-shell .shr-applications-list-wrap,
.shr-employer-dashboard-shell .shr-table-responsive {
    width: 100% !important;
    max-width: none !important;
}
.shr-employer-dashboard-shell .shr-applications-list-wrap,
.shr-employer-dashboard-shell .shr-table-responsive {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
}
.shr-employer-dashboard-shell .shr-applications-table {
    width: 100% !important;
    min-width: 980px !important;
    table-layout: auto !important;
}
.shr-employer-dashboard-shell .shr-app-filter-form {
    width: 100% !important;
    grid-template-columns: minmax(260px, 1.4fr) minmax(180px, .8fr) minmax(180px, .8fr) auto !important;
}
.shr-employer-dashboard-shell .shr-quick-review-inline {
    grid-template-columns: minmax(130px, .7fr) minmax(180px, 1fr) auto !important;
}
@media (max-width: 1100px) {
    .shr-employer-dashboard-shell {
        width: calc(100vw - 16px) !important;
        margin-left: calc(50% - 50vw + 8px) !important;
    }
    .shr-employer-dashboard-shell .shr-dashboard-container {
        grid-template-columns: 260px minmax(0, 1fr) !important;
        gap: 18px !important;
        padding: 12px !important;
    }
    .shr-employer-dashboard-shell .shr-dashboard-sidebar {
        width: 260px !important;
        max-width: 260px !important;
    }
    .shr-employer-dashboard-shell .shr-dashboard-content {
        padding: 22px !important;
    }
}
@media (max-width: 820px) {
    .shr-employer-dashboard-shell .shr-dashboard-container {
        grid-template-columns: 1fr !important;
    }
    .shr-employer-dashboard-shell .shr-dashboard-sidebar {
        width: 100% !important;
        max-width: none !important;
    }
    .shr-employer-dashboard-shell .shr-dashboard-nav {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .shr-employer-dashboard-shell .shr-app-filter-form {
        grid-template-columns: 1fr !important;
    }
}

/* SmartHire 1.8.11 refined employer dashboard styling
   Reduced width by approximately 15% from the previous full-width shell and
   modernized the dashboard cards, table, filters and buttons. */
.shr-employer-dashboard-shell,
.entry-content .shr-employer-dashboard-shell,
.site-content .shr-employer-dashboard-shell,
.wp-site-blocks .shr-employer-dashboard-shell {
    width: min(calc(100vw - 56px), 1275px) !important;
    max-width: 1275px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    background: transparent !important;
}
.shr-employer-dashboard-shell .shr-dashboard-container {
    width: 100% !important;
    padding: 18px !important;
    gap: 24px !important;
    grid-template-columns: 280px minmax(0, 1fr) !important;
}
.shr-employer-dashboard-shell .shr-dashboard-sidebar {
    width: 280px !important;
    max-width: 280px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    border: 1px solid #e8eef7 !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .08) !important;
}
.shr-employer-dashboard-shell .shr-dashboard-profile,
.shr-employer-dashboard-shell .shr-sidebar-header {
    background: linear-gradient(135deg, #1e3a8a 0%, #2563eb 100%) !important;
    padding: 26px 20px !important;
    color: #ffffff !important;
}
.shr-employer-dashboard-shell .shr-dashboard-profile h2,
.shr-employer-dashboard-shell .shr-sidebar-header h2 {
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1.2 !important;
    letter-spacing: -.02em !important;
}
.shr-employer-dashboard-shell .shr-dashboard-content {
    padding: 28px 30px !important;
    border-radius: 20px !important;
    background: #ffffff !important;
    border: 1px solid #e8eef7 !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .08) !important;
    overflow: hidden !important;
}
.shr-employer-dashboard-shell .shr-section-header h1,
.shr-employer-dashboard-shell .shr-section-header h2,
.shr-employer-dashboard-shell .shr-dashboard-content h1 {
    font-size: clamp(30px, 3vw, 42px) !important;
    line-height: 1.1 !important;
    letter-spacing: -.04em !important;
    color: #172033 !important;
    margin-bottom: 6px !important;
}
.shr-employer-dashboard-shell .shr-section-header p {
    color: #667085 !important;
    font-size: 15px !important;
    margin: 0 0 22px !important;
}
.shr-employer-dashboard-shell .shr-dashboard-nav a {
    border-radius: 12px !important;
    margin: 4px 12px !important;
    padding: 12px 16px !important;
    color: #344054 !important;
    font-weight: 600 !important;
}
.shr-employer-dashboard-shell .shr-dashboard-nav a.active,
.shr-employer-dashboard-shell .shr-dashboard-nav a:hover {
    background: #eef4ff !important;
    color: #1d4ed8 !important;
    border-left: 3px solid #2563eb !important;
}
.shr-employer-dashboard-shell .shr-app-filter-form {
    display: grid !important;
    grid-template-columns: minmax(220px, 1.2fr) minmax(150px, .75fr) minmax(170px, .85fr) auto !important;
    gap: 12px !important;
    align-items: center !important;
    margin-bottom: 18px !important;
}
.shr-employer-dashboard-shell .shr-app-filter-form input,
.shr-employer-dashboard-shell .shr-app-filter-form select,
.shr-employer-dashboard-shell .shr-quick-review-inline select,
.shr-employer-dashboard-shell .shr-quick-review-inline textarea {
    border: 1px solid #d0d5dd !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    min-height: 42px !important;
    color: #101828 !important;
    box-shadow: none !important;
}
.shr-employer-dashboard-shell .shr-btn,
.shr-employer-dashboard-shell .shr-btn-primary,
.shr-employer-dashboard-shell button.shr-btn,
.shr-employer-dashboard-shell input[type="submit"] {
    border-radius: 10px !important;
    background: #2563eb !important;
    border: 1px solid #2563eb !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    box-shadow: 0 8px 18px rgba(37, 99, 235, .18) !important;
}
.shr-employer-dashboard-shell .shr-btn:hover,
.shr-employer-dashboard-shell .shr-btn-primary:hover,
.shr-employer-dashboard-shell button.shr-btn:hover {
    background: #1d4ed8 !important;
    border-color: #1d4ed8 !important;
    transform: translateY(-1px) !important;
}
.shr-employer-dashboard-shell .shr-applications-table-wrap,
.shr-employer-dashboard-shell .shr-table-responsive {
    border-radius: 16px !important;
    border: 1px solid #e8eef7 !important;
    box-shadow: none !important;
    overflow-x: auto !important;
}
.shr-employer-dashboard-shell .shr-applications-table {
    min-width: 920px !important;
}
.shr-employer-dashboard-shell .shr-applications-table th {
    background: #f8fafc !important;
    color: #475467 !important;
    font-size: 12px !important;
    padding: 13px 14px !important;
}
.shr-employer-dashboard-shell .shr-applications-table td {
    padding: 15px 14px !important;
    color: #101828 !important;
}
.shr-employer-dashboard-shell .shr-clickable-row:hover {
    background: #f9fbff !important;
}
.shr-employer-dashboard-shell .shr-status-badge,
.shr-employer-dashboard-shell .shr-badge {
    border-radius: 999px !important;
    padding: 5px 11px !important;
    font-weight: 700 !important;
}
.shr-employer-dashboard-shell .shr-quick-review-inline {
    grid-template-columns: minmax(120px, .8fr) minmax(160px, 1fr) 44px !important;
    gap: 8px !important;
}
@media (max-width: 1180px) {
    .shr-employer-dashboard-shell,
    .entry-content .shr-employer-dashboard-shell,
    .site-content .shr-employer-dashboard-shell,
    .wp-site-blocks .shr-employer-dashboard-shell {
        width: calc(100vw - 32px) !important;
        max-width: calc(100vw - 32px) !important;
    }
    .shr-employer-dashboard-shell .shr-dashboard-container {
        grid-template-columns: 250px minmax(0, 1fr) !important;
        gap: 18px !important;
    }
    .shr-employer-dashboard-shell .shr-dashboard-sidebar {
        width: 250px !important;
        max-width: 250px !important;
    }
    .shr-employer-dashboard-shell .shr-dashboard-content {
        padding: 22px !important;
    }
}
@media (max-width: 900px) {
    .shr-employer-dashboard-shell .shr-dashboard-container {
        grid-template-columns: 1fr !important;
    }
    .shr-employer-dashboard-shell .shr-dashboard-sidebar {
        width: 100% !important;
        max-width: none !important;
    }
    .shr-employer-dashboard-shell .shr-app-filter-form {
        grid-template-columns: 1fr !important;
    }
}

/* SmartHire 1.8.12 modern candidate dashboard containment
   Keeps candidate pages within the browser/theme viewport and prevents overlap. */
.shr-candidate-dashboard-shell,
.entry-content .shr-candidate-dashboard-shell,
.site-content .shr-candidate-dashboard-shell,
.wp-site-blocks .shr-candidate-dashboard-shell {
    width: min(1120px, calc(100vw - 32px)) !important;
    max-width: 1120px !important;
    margin: 28px auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    clear: both !important;
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}
.shr-candidate-dashboard-shell * { box-sizing: border-box !important; }
.shr-candidate-dashboard-shell .shr-dashboard-container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 280px minmax(0, 1fr) !important;
    gap: 28px !important;
    align-items: start !important;
    overflow: visible !important;
}
.shr-candidate-dashboard-shell .shr-dashboard-sidebar {
    width: 280px !important;
    max-width: 280px !important;
    min-width: 0 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .08) !important;
    border: 1px solid #e5e7eb !important;
}
.shr-candidate-dashboard-shell .shr-candidate-info {
    padding: 28px 20px !important;
    text-align: center !important;
    background: linear-gradient(135deg, #1d4ed8 0%, #2563eb 100%) !important;
    color: #fff !important;
}
.shr-candidate-dashboard-shell .shr-candidate-info h3 {
    margin: 14px 0 10px !important;
    color: #fff !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
}
.shr-candidate-dashboard-shell .shr-profile-initials,
.shr-candidate-dashboard-shell .shr-profile-photo {
    width: 88px !important;
    height: 88px !important;
    border-radius: 999px !important;
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 30px !important;
    font-weight: 800 !important;
    border: 4px solid rgba(255,255,255,.85) !important;
    background: rgba(255,255,255,.12) !important;
    color: #fff !important;
    object-fit: cover !important;
}
.shr-candidate-dashboard-shell .shr-dashboard-nav {
    padding: 10px 0 !important;
}
.shr-candidate-dashboard-shell .shr-dashboard-nav a {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 14px 22px !important;
    color: #334155 !important;
    font-size: 15px !important;
    text-decoration: none !important;
    border-left: 3px solid transparent !important;
}
.shr-candidate-dashboard-shell .shr-dashboard-nav a.active,
.shr-candidate-dashboard-shell .shr-dashboard-nav a:hover {
    background: #f8fafc !important;
    color: #1d4ed8 !important;
    border-left-color: #1d4ed8 !important;
}
.shr-candidate-dashboard-shell .shr-dashboard-content {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .08) !important;
    padding: 28px !important;
}
.shr-candidate-dashboard-shell .shr-dashboard-section {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
}
.shr-candidate-dashboard-shell h1,
.shr-candidate-dashboard-shell h2,
.shr-candidate-dashboard-shell h3 {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    line-height: 1.2 !important;
}
.shr-candidate-dashboard-shell .shr-dashboard-section > h2 {
    margin: 0 0 20px !important;
    font-size: clamp(24px, 3vw, 36px) !important;
    color: #0f172a !important;
}
.shr-candidate-dashboard-shell .shr-stats-row {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 0 26px !important;
}
.shr-candidate-dashboard-shell .shr-stat-box {
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 18px !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .05) !important;
}
.shr-candidate-dashboard-shell .shr-stat-number,
.shr-candidate-dashboard-shell .shr-stat-label {
    display: block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}
.shr-candidate-dashboard-shell .shr-stat-number { font-size: 26px !important; font-weight: 800 !important; color: #0f172a !important; }
.shr-candidate-dashboard-shell .shr-stat-label { color: #64748b !important; font-size: 13px !important; }
.shr-candidate-dashboard-shell .shr-quick-actions-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin-bottom: 26px !important;
}
.shr-candidate-dashboard-shell .shr-quick-btn,
.shr-candidate-dashboard-shell .shr-btn-primary {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 42px !important;
    padding: 10px 16px !important;
    border-radius: 10px !important;
    border: 1px solid #cbd5e1 !important;
    background: #fff !important;
    color: #0f172a !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}
.shr-candidate-dashboard-shell .shr-quick-btn:hover,
.shr-candidate-dashboard-shell .shr-btn-primary:hover {
    background: #1d4ed8 !important;
    color: #fff !important;
    border-color: #1d4ed8 !important;
}
.shr-candidate-dashboard-shell .shr-recent-applications,
.shr-candidate-dashboard-shell .shr-table-wrap {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
}
.shr-candidate-dashboard-shell .shr-table {
    width: 100% !important;
    min-width: 650px !important;
    border-collapse: collapse !important;
    table-layout: auto !important;
    margin: 0 !important;
    background: #fff !important;
}
.shr-candidate-dashboard-shell .shr-table th,
.shr-candidate-dashboard-shell .shr-table td {
    padding: 14px 16px !important;
    border-bottom: 1px solid #e5e7eb !important;
    vertical-align: middle !important;
    text-align: left !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}
.shr-candidate-dashboard-shell .shr-table th {
    background: #f8fafc !important;
    color: #0f172a !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
}
.shr-candidate-dashboard-shell .shr-form-row.two-cols,
.shr-candidate-dashboard-shell .shr-form-row.three-cols {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
}
.shr-candidate-dashboard-shell input,
.shr-candidate-dashboard-shell select,
.shr-candidate-dashboard-shell textarea {
    max-width: 100% !important;
}
@media (max-width: 1180px) {
    .shr-candidate-dashboard-shell { width: min(1000px, calc(100vw - 28px)) !important; }
    .shr-candidate-dashboard-shell .shr-dashboard-container { grid-template-columns: 250px minmax(0,1fr) !important; gap: 20px !important; }
    .shr-candidate-dashboard-shell .shr-dashboard-sidebar { width: 250px !important; max-width: 250px !important; }
    .shr-candidate-dashboard-shell .shr-stats-row { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}
@media (max-width: 860px) {
    .shr-candidate-dashboard-shell { width: calc(100vw - 20px) !important; margin: 16px auto !important; }
    .shr-candidate-dashboard-shell .shr-dashboard-container { grid-template-columns: 1fr !important; gap: 16px !important; }
    .shr-candidate-dashboard-shell .shr-dashboard-sidebar { width: 100% !important; max-width: 100% !important; }
    .shr-candidate-dashboard-shell .shr-dashboard-content { padding: 18px !important; }
    .shr-candidate-dashboard-shell .shr-stats-row { grid-template-columns: 1fr !important; }
    .shr-candidate-dashboard-shell .shr-form-row.two-cols,
    .shr-candidate-dashboard-shell .shr-form-row.three-cols { grid-template-columns: 1fr !important; }
    .shr-candidate-dashboard-shell .shr-table { min-width: 560px !important; }
}

/* SmartHire Phase 2.1 Recruitment Workflow */
.shr-pipeline-track {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 14px 0 !important;
    align-items: center !important;
}
.shr-pipeline-step {
    display: inline-flex !important;
    align-items: center !important;
    border-radius: 999px !important;
    padding: 8px 12px !important;
    background: #eef2f7 !important;
    color: #475569 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    border: 1px solid #dbe3ef !important;
    white-space: nowrap !important;
}
.shr-pipeline-step.is-complete {
    background: linear-gradient(135deg, #0f766e, #2563eb) !important;
    color: #fff !important;
    border-color: transparent !important;
}
.shr-candidate-application-card {
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 35px rgba(15,23,42,.08) !important;
    padding: 18px !important;
    margin-bottom: 16px !important;
    overflow: hidden !important;
}
.shr-candidate-application-head {
    display: flex !important;
    justify-content: space-between !important;
    gap: 12px !important;
    align-items: flex-start !important;
    margin-bottom: 12px !important;
}
.shr-candidate-application-head h3 {
    margin: 0 0 4px 0 !important;
    color: #0f172a !important;
    font-size: 18px !important;
}
.shr-candidate-application-head p,
.shr-application-meta {
    color: #64748b !important;
    margin: 0 !important;
    font-size: 13px !important;
}
.shr-application-meta {
    display: flex !important;
    gap: 16px !important;
    flex-wrap: wrap !important;
    margin-top: 12px !important;
}
.shr-application-outcome.rejected {
    background: #fef2f2 !important;
    border: 1px solid #fecaca !important;
    color: #991b1b !important;
    padding: 12px 14px !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
}
.shr-status-offer_extended,
.shr-status.shr-status-offer_extended {
    background: #ecfdf5 !important;
    color: #047857 !important;
    border-color: #a7f3d0 !important;
}
.shr-review-pipeline {
    margin-top: 10px !important;
}
@media(max-width: 720px) {
    .shr-candidate-application-head { flex-direction: column !important; }
    .shr-pipeline-track { overflow-x: auto !important; flex-wrap: nowrap !important; padding-bottom: 6px !important; }
}

/* SmartHire Phase 2.2 - ratings, analytics and shortlist styling */
.shr-rating-card .shr-rating-form label{display:block;font-weight:700;margin-top:10px;color:#1f2937}.shr-rating-card select,.shr-rating-card textarea{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:9px 10px;background:#fff}.shr-score-summary{display:flex;align-items:center;gap:12px;margin:8px 0 14px}.shr-score-circle{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:#0f172a;color:#fff;font-weight:800;font-size:18px;box-shadow:0 8px 18px rgba(15,23,42,.18)}.shr-analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0}.shr-analytics-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(15,23,42,.06)}.shr-analytics-card h3{margin:0 0 14px;color:#111827}.shr-pipeline-row{display:flex;justify-content:space-between;border-bottom:1px solid #f1f5f9;padding:9px 0}.shr-pipeline-row strong{background:#eef2ff;border-radius:999px;padding:2px 10px;color:#3730a3}.shr-job-bar-row{margin:10px 0}.shr-job-bar-row>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:13px}.shr-mini-bar{height:8px;background:#e5e7eb;border-radius:999px;overflow:hidden;margin-top:5px}.shr-mini-bar span{display:block;height:100%;background:#2563eb;border-radius:999px}.shr-btn-success{background:#059669!important;color:#fff!important;border-color:#059669!important}.shr-applications-table td:nth-child(4){font-weight:700;color:#111827}@media(max-width:900px){.shr-analytics-grid{grid-template-columns:1fr}.shr-score-circle{width:60px;height:60px}}

/* Phase 2.3 - Interview scheduling */
.shr-interview-card form label,
.shr-interview-form label { display:block; margin:10px 0 5px; font-weight:600; color:#1f2937; }
.shr-interview-card input,
.shr-interview-card select,
.shr-interview-card textarea,
.shr-interview-form input,
.shr-interview-form select,
.shr-interview-form textarea { width:100%; max-width:100%; box-sizing:border-box; }
.shr-mini-list { margin-top:16px; border-top:1px solid #e5e7eb; padding-top:12px; }
.shr-mini-list h4 { margin:0 0 10px; color:#111827; }
.shr-mini-item { padding:10px 0; border-bottom:1px solid #eef2f7; }
.shr-mini-item strong { display:block; color:#111827; }
.shr-mini-item span { display:block; color:#6b7280; font-size:13px; margin-top:2px; }
.shr-interviews-section .shr-table-responsive { width:100%; overflow-x:auto; border-radius:14px; box-shadow:0 10px 25px rgba(15,23,42,.06); }
.shr-inline-form { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.shr-inline-form select { min-width:130px; }
.shr-interview-card-list { display:grid; gap:16px; }
.shr-interview-item-card { border-left:5px solid #2563eb; }
.shr-status-scheduled { background:#dbeafe; color:#1d4ed8; }
.shr-status-completed { background:#dcfce7; color:#166534; }
.shr-status-cancelled { background:#fee2e2; color:#991b1b; }
.shr-status-no_show { background:#fef3c7; color:#92400e; }
@media (max-width: 900px){ .shr-inline-form{display:block}.shr-inline-form select,.shr-inline-form button{width:100%;margin-top:6px} }

/* Phase 2.3.1 notifications + interview reschedule */
.shr-notification-summary{display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding:8px 12px;border-radius:999px;background:#eef4ff;color:#123b7a;font-weight:700;box-shadow:0 4px 14px rgba(15,23,42,.08)}
.shr-notification-bubble,.shr-nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:#dc2626;color:#fff;font-size:12px;line-height:1;font-weight:800;margin-left:auto}
.shr-dashboard-nav a{position:relative;gap:8px}.shr-dashboard-nav .shr-nav-badge{margin-left:auto;background:#e11d48;color:#fff}
.shr-pipeline-link{text-decoration:none!important;cursor:pointer}.shr-pipeline-link:hover{filter:brightness(.95);transform:translateY(-1px)}
.shr-interview-edit-box{border:1px solid #dbe3ef;border-radius:14px;background:#fff;margin:10px 0;padding:10px 12px;box-shadow:0 8px 20px rgba(15,23,42,.05)}
.shr-interview-edit-box summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;font-weight:700;color:#172554}
.shr-compact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.shr-compact-form label{font-weight:700;color:#334155}.shr-compact-form textarea,.shr-compact-form input,.shr-compact-form select{width:100%;max-width:100%}.shr-compact-form button{grid-column:1/-1;width:max-content}
@media(max-width:780px){.shr-compact-form{grid-template-columns:1fr}.shr-interview-edit-box summary{display:block}.shr-notification-summary{justify-content:center}}


/* SmartHire 2.4.1 stabilisation styling */
.shr-logout-link{margin-top:14px!important;background:#fee2e2!important;color:#991b1b!important;border-radius:10px!important}
.shr-reply-box{margin-top:12px;padding:12px;border:1px solid #e5e7eb;border-radius:10px;background:#f9fafb}
.shr-reply-box summary{cursor:pointer;font-weight:700;color:#2563eb;margin-bottom:10px}
.shr-reply-box input,.shr-reply-box textarea{width:100%;margin:6px 0 10px;padding:10px;border:1px solid #d1d5db;border-radius:8px}
.shr-profile-password-box{margin-top:24px;padding:18px;border:1px solid #e5e7eb;border-radius:14px;background:#f8fafc}
.shr-auth-required{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:18px;border:1px solid #e5e7eb;border-radius:14px;background:#f8fafc}

/* v2.4.2 stabilisation polish */
.shr-btn-secondary, a.shr-btn-secondary, .shr-back-btn, a.shr-back-btn {
    display:inline-flex !important; align-items:center; justify-content:center; gap:8px;
    padding:10px 16px !important; border-radius:10px !important; border:1px solid #cbd5e1 !important;
    background:#fff !important; color:#0f172a !important; text-decoration:none !important; font-weight:700 !important;
    box-shadow:0 2px 8px rgba(15,23,42,.06);
}
.shr-btn-secondary:hover, a.shr-btn-secondary:hover, .shr-back-btn:hover { background:#f8fafc !important; transform:translateY(-1px); }
.shr-dashboard-nav, .shr-dashboard-tabs, .shr-sidebar-nav { overflow-x:auto; -webkit-overflow-scrolling:touch; }
@media (max-width: 768px){
    .shr-dashboard-layout, .shr-candidate-dashboard, .shr-employer-dashboard { display:block !important; width:100% !important; max-width:100% !important; }
    .shr-dashboard-sidebar, .shr-sidebar { width:100% !important; max-width:100% !important; position:relative !important; }
    .shr-dashboard-nav, .shr-sidebar-nav { display:flex !important; flex-direction:row !important; gap:8px !important; white-space:nowrap !important; padding:10px !important; }
    .shr-dashboard-nav a, .shr-sidebar-nav a { flex:0 0 auto !important; min-width:max-content !important; }
    .shr-dashboard-content { width:100% !important; max-width:100% !important; overflow-x:hidden !important; }
    .shr-table-wrap, .shr-table-responsive, .shr-applications-table, .shr-table { display:block; overflow-x:auto; max-width:100%; }
}
.shr-message-layout{display:grid;grid-template-columns:280px 1fr;gap:18px;align-items:start}.shr-message-users{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden}.shr-message-user{display:block;padding:14px 16px;border-bottom:1px solid #eef2f7;text-decoration:none;color:#0f172a;position:relative}.shr-message-user strong{display:block}.shr-message-user span{display:block;color:#64748b;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shr-message-user.active,.shr-message-user:hover{background:#f1f5f9}.shr-message-user em{position:absolute;right:10px;top:10px;background:#ef4444;color:#fff;border-radius:20px;padding:2px 7px;font-size:11px;font-style:normal}.shr-message-thread{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px}.shr-message-bubble{margin:0 0 12px;padding:12px 14px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0}.shr-message-bubble.sent{background:#eef2ff;margin-left:45px}.shr-message-bubble.received{margin-right:45px}.shr-reply-form{margin-top:16px;display:grid;gap:10px}.shr-reply-form input,.shr-reply-form textarea{width:100%}@media(max-width:768px){.shr-message-layout{grid-template-columns:1fr}.shr-message-bubble.sent{margin-left:0}.shr-message-bubble.received{margin-right:0}}

/* v2.4.3 mobile dashboard menu + message display refinements */
.shr-mobile-dashboard-menu{
    display:none;
    margin:0 0 18px 0;
    padding:14px;
    border:1px solid #dbe3ef;
    border-radius:14px;
    background:#f8fafc;
    box-shadow:0 8px 24px rgba(15,23,42,.06);
}
.shr-mobile-dashboard-menu label{
    display:flex;
    align-items:center;
    gap:8px;
    font-weight:800;
    color:#0f172a;
    margin:0 0 8px 0;
}
.shr-mobile-dashboard-menu select{
    width:100%;
    min-height:44px;
    border:1px solid #cbd5e1;
    border-radius:10px;
    padding:10px 12px;
    background:#fff;
    color:#0f172a;
    font-weight:700;
}
@media (max-width: 768px){
    .shr-mobile-dashboard-menu{display:block !important;}
    .shr-dashboard-sidebar .shr-dashboard-nav{display:none !important;}
    .shr-dashboard-sidebar{padding-bottom:10px !important;}
    .shr-dashboard-content{padding:16px !important;border-radius:16px !important;}
}

/* SmartHire 2.4.4 - Public/candidate job detail polish */
.shr-job-detail-container{
    max-width:1120px !important;
    margin:28px auto !important;
    border-radius:22px !important;
    overflow:hidden !important;
    background:#ffffff !important;
    box-shadow:0 18px 50px rgba(15,23,42,.10) !important;
    border:1px solid #e5e7eb !important;
}
.shr-job-detail-header{
    background:linear-gradient(135deg,#173ea5 0%,#2452d5 55%,#1d4ed8 100%) !important;
    color:#ffffff !important;
    padding:34px 40px !important;
    align-items:flex-start !important;
}
.shr-job-detail-info h1,
.shr-job-detail-container .shr-job-detail-info h1{
    color:#ffffff !important;
    font-size:clamp(30px,4vw,52px) !important;
    line-height:1.05 !important;
    letter-spacing:-.04em !important;
    margin:0 0 12px !important;
    font-weight:800 !important;
    text-shadow:none !important;
    font-family:inherit !important;
}
.shr-job-meta,
.shr-job-meta span,
.shr-job-meta i{
    color:rgba(255,255,255,.92) !important;
    opacity:1 !important;
}
.shr-job-detail-logo{
    flex:0 0 88px !important;
    width:88px !important;
    height:88px !important;
    border-radius:18px !important;
    background:#fff !important;
    border:1px solid rgba(255,255,255,.55) !important;
}
.shr-job-detail-actions{
    display:flex !important;
    gap:12px !important;
    flex-wrap:wrap !important;
    justify-content:flex-end !important;
    align-items:center !important;
}
.shr-job-detail-actions .shr-btn-primary,
.shr-job-detail-actions .shr-btn-secondary,
.shr-job-detail-container .shr-back-dashboard-btn,
.shr-job-detail-container .shr-back-jobs-btn{
    border-radius:12px !important;
    padding:13px 18px !important;
    min-height:46px !important;
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    text-decoration:none !important;
    font-weight:700 !important;
    line-height:1.2 !important;
}
.shr-job-detail-actions .shr-btn-secondary,
.shr-job-detail-container .shr-back-dashboard-btn,
.shr-job-detail-container .shr-back-jobs-btn{
    background:#ffffff !important;
    color:#0f172a !important;
    border:1px solid rgba(255,255,255,.85) !important;
}
.shr-job-detail-actions .shr-btn-primary{
    background:#c7ea46 !important;
    color:#0f172a !important;
    border:1px solid #b7d93f !important;
    box-shadow:0 10px 20px rgba(0,0,0,.12) !important;
}
.shr-job-detail-grid{
    grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr) !important;
    padding:34px 40px !important;
    gap:34px !important;
    align-items:start !important;
}
.shr-job-section{
    background:#ffffff !important;
    border:1px solid #e6eaf0 !important;
    border-radius:18px !important;
    padding:24px !important;
    margin-bottom:22px !important;
}
.shr-job-section h3,
.shr-job-detail-container .shr-info-card h3{
    color:#111827 !important;
    font-size:24px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    margin:0 0 16px !important;
    padding-bottom:12px !important;
    border-bottom:1px solid #e5e7eb !important;
    font-family:inherit !important;
}
.shr-job-content,
.shr-job-content p,
.shr-job-section,
.shr-job-section li{
    color:#334155 !important;
    font-size:15px !important;
    line-height:1.75 !important;
}
.shr-job-detail-sidebar{
    position:sticky !important;
    top:20px !important;
}
.shr-job-detail-container .shr-info-card{
    background:#f8fafc !important;
    border:1px solid #e5e7eb !important;
    border-radius:18px !important;
    padding:22px !important;
    margin-bottom:20px !important;
    box-shadow:none !important;
}
.shr-job-detail-container .shr-info-card ul{
    list-style:none !important;
    padding:0 !important;
    margin:0 !important;
}
.shr-job-detail-container .shr-info-card li{
    display:flex !important;
    justify-content:space-between !important;
    gap:18px !important;
    padding:10px 0 !important;
    border-bottom:1px solid #e5e7eb !important;
    color:#334155 !important;
}
.shr-job-detail-container .shr-info-card li:last-child{border-bottom:0 !important;}
.shr-job-detail-container .shr-info-card strong{color:#111827 !important;}
.shr-auth-required{
    display:flex !important;
    gap:12px !important;
    flex-wrap:wrap !important;
    align-items:center !important;
}
@media (max-width:900px){
    .shr-job-detail-container{margin:18px 12px !important;}
    .shr-job-detail-header{padding:26px 22px !important;}
    .shr-job-detail-company{align-items:flex-start !important;}
    .shr-job-detail-grid{grid-template-columns:1fr !important;padding:24px 22px !important;}
    .shr-job-detail-sidebar{position:static !important;}
    .shr-job-detail-actions{justify-content:flex-start !important;width:100% !important;}
    .shr-job-detail-actions .shr-btn-primary,.shr-job-detail-actions .shr-btn-secondary{width:100% !important;justify-content:center !important;}
}


/* SmartHire 2.4.5: logo containment and job detail action fixes */
.shr-job-logo,
.shr-job-list-logo,
.shr-job-detail-logo{
    background:#fff !important;
    overflow:hidden !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}
.shr-job-logo img,
.shr-job-list-logo img,
.shr-job-detail-logo img{
    max-width:100% !important;
    max-height:100% !important;
    width:auto !important;
    height:auto !important;
    object-fit:contain !important;
    display:block !important;
    padding:4px !important;
    box-sizing:border-box !important;
}
.shr-job-detail-actions .shr-btn-primary,
.shr-job-detail-actions .shr-btn-secondary{
    opacity:1 !important;
    visibility:visible !important;
    font-weight:700 !important;
}
.shr-job-detail-actions .shr-btn-primary{
    color:#fff !important;
    background:#2563eb !important;
}
.shr-job-detail-actions .shr-btn-secondary{
    color:#0f172a !important;
    background:#fff !important;
    border:1px solid #dbe4f0 !important;
}

/* Phase 3.2B AI Candidate Analysis */
.shr-ai-analysis-card .shr-ai-analyze-form{display:block;margin-bottom:14px;padding:14px;border:1px solid #e5e7eb;border-radius:14px;background:#f8fafc}.shr-ai-review-result{margin-top:14px}.shr-ai-provider-line{margin:12px 0;padding:10px 12px;border-radius:10px;background:#eef2ff;color:#1e293b}.shr-ai-section{border-top:1px solid #e5e7eb;padding-top:12px;margin-top:12px}.shr-ai-section h4{margin:0 0 8px;font-size:14px;color:#0f172a}.shr-ai-section ul{margin:0 0 0 18px}.shr-ai-section li{margin:5px 0}.shr-muted{color:#64748b}.shr-muted.small{font-size:12px;margin-top:8px}.shr-ai-score .shr-score-display{font-weight:800;font-size:22px;color:#0f172a;margin-bottom:8px}.shr-score-bar{height:10px;border-radius:999px;background:#e5e7eb;overflow:hidden}.shr-score-bar>div{height:100%;border-radius:999px;background:linear-gradient(90deg,#2563eb,#16a34a)}

/* Phase 3.3 AI Shortlisting */
.shr-btn-ai{background:#4f46e5!important;color:#fff!important;border-color:#4f46e5!important}
.shr-ai-rank-form{display:inline-flex;gap:10px;align-items:center;margin-left:8px;flex-wrap:wrap}
.shr-ai-ranking-panel{border:1px solid #dbe4ff;background:linear-gradient(135deg,#f8fbff,#eef2ff);border-radius:18px;padding:18px;margin:18px 0;box-shadow:0 10px 30px rgba(31,41,55,.08)}
.shr-ai-ranking-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap;margin-bottom:12px}
.shr-ai-ranking-header h3{margin:0 0 4px;color:#111827!important;font-size:20px!important}.shr-ai-ranking-header p{margin:0;color:#4b5563!important}
.shr-ai-ranking-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.shr-ai-rank-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:12px;box-shadow:0 4px 14px rgba(15,23,42,.06)}
.shr-ai-rank-number{width:42px;height:42px;border-radius:14px;background:#111827;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}.shr-ai-rank-main{flex:1;min-width:0}.shr-ai-rank-main strong{display:block;color:#111827}.shr-ai-rank-main span{font-size:12px;color:#6b7280}.shr-ai-rank-score{font-size:22px;font-weight:800;color:#4f46e5}.shr-ai-rank-pending{opacity:.72}.shr-ai-score-pill{display:inline-flex;align-items:center;background:#eef2ff;color:#3730a3;border-radius:999px;padding:4px 9px;font-weight:700}
@media(max-width:700px){.shr-ai-ranking-header{display:block}.shr-ai-rank-form{margin:10px 0 0}.shr-ai-rank-card{align-items:flex-start}.shr-ai-rank-score{font-size:18px}}

/* v3.3.1 AI ranking and team action fixes */
.shr-ai-actions-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:14px;margin:14px 0;}
.shr-ai-actions-bar .shr-inline-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0;}
.shr-ai-job-select{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0;}
.shr-ai-job-select select{min-width:260px;}
.shr-btn-danger{color:#dc2626!important;}
.shr-ai-score-pill{display:inline-flex;align-items:center;border-radius:999px;background:#ecfeff;color:#0e7490;font-weight:800;padding:4px 8px;}

/* v3.3.2 team and application navigation refinements */
.shr-actions-cell { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.shr-actions-cell .shr-btn-small { text-decoration:none; white-space:nowrap; }
.shr-btn-warning { background:#f59e0b !important; color:#fff !important; border-color:#f59e0b !important; }
.shr-btn-success { background:#16a34a !important; color:#fff !important; border-color:#16a34a !important; }
.shr-team-table td, .shr-team-table th { vertical-align:middle; }
.shr-status-suspended { background:#fee2e2; color:#991b1b; }
.shr-status-pending { background:#fef3c7; color:#92400e; }
.shr-status-active { background:#dcfce7; color:#166534; }


/* v3.4.0 AI Interview Assistant */
.shr-ai-interview-card{border:1px solid #dbeafe;background:linear-gradient(135deg,#ffffff,#f8fbff)}
.shr-ai-questions-result{margin-top:14px;border-top:1px solid #e5e7eb;padding-top:12px}
.shr-ai-question-list{white-space:pre-wrap;background:#0f172a;color:#e5e7eb;border-radius:14px;padding:16px;line-height:1.65;font-size:13px;overflow:auto;max-height:480px}
.shr-ai-interview-form .shr-btn-primary{display:inline-flex;align-items:center;gap:8px}

/* Phase 4.0 subscription and plugin manager dashboard */
.shr-manager-dashboard{max-width:1280px;margin:24px auto;display:grid;grid-template-columns:260px minmax(0,1fr);gap:22px;font-family:Inter,Arial,sans-serif;color:#1f2937}.shr-manager-sidebar{background:#0f172a;border-radius:18px;padding:18px;box-shadow:0 16px 35px rgba(15,23,42,.16);position:sticky;top:20px;height:max-content}.shr-manager-sidebar h3{color:#fff;margin:0 0 15px;font-size:18px}.shr-manager-sidebar a{display:block;color:#cbd5e1;text-decoration:none;padding:11px 12px;border-radius:10px;margin:4px 0;font-weight:600}.shr-manager-sidebar a:hover,.shr-manager-sidebar a.active{background:#2563eb;color:#fff}.shr-manager-content{background:#fff;border-radius:18px;padding:24px;box-shadow:0 16px 40px rgba(15,23,42,.10);min-width:0}.shr-stats-grid,.shr-usage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}.shr-stat-card,.shr-usage-box{background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:18px}.shr-stat-card span,.shr-usage-box span{display:block;color:#64748b;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.shr-stat-card strong,.shr-usage-box strong{display:block;font-size:26px;margin-top:6px;color:#0f172a}.shr-subscription-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;margin:0 0 18px}.shr-quota-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.shr-quota-grid label{display:block;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:12px}.shr-quota-grid span{display:block;font-weight:700;margin-bottom:6px}.shr-quota-grid input{width:100%}.shr-admin-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:18px;margin:18px 0}.shr-table{width:100%;border-collapse:collapse}.shr-table th,.shr-table td{padding:12px;border-bottom:1px solid #e5e7eb;text-align:left}.shr-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;border-radius:10px;background:#2563eb;color:#fff!important;text-decoration:none;font-weight:700;border:0;cursor:pointer}.shr-btn:hover{background:#1d4ed8;color:#fff!important}.shr-notice-success{background:#ecfdf5;border-left:4px solid #10b981;padding:12px;border-radius:8px;margin:0 0 16px}.shr-notice-warning{background:#fffbeb;border-left:4px solid #f59e0b;padding:12px;border-radius:8px;margin:0 0 16px}@media(max-width:782px){.shr-manager-dashboard{grid-template-columns:1fr;margin:12px}.shr-manager-sidebar{position:relative;top:auto}.shr-manager-sidebar a{display:inline-block;margin:4px}.shr-manager-content{padding:16px;overflow-x:auto}}

/* 4.0.1 subscription UI fixes */
.shr-plan-quotas{font-size:13px;line-height:1.65;color:#334155;white-space:normal}.shr-subscription-dashboard{max-width:1100px}.shr-subscription-hero{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,2fr);gap:18px;align-items:stretch;background:linear-gradient(135deg,#f8fafc,#eef2ff);border:1px solid #dbeafe;border-radius:18px;padding:20px;margin:0 0 22px}.shr-subscription-hero h3{margin:4px 0 8px;font-size:26px;color:#0f172a}.shr-muted-label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:800}.shr-subscription-dates{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.shr-subscription-dates div{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:14px}.shr-subscription-dates span{display:block;font-size:12px;color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-weight:700}.shr-subscription-dates strong{display:block;margin-top:6px;color:#111827;font-size:15px}.shr-usage-grid-modern{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:10px 0 22px}.shr-usage-box-modern{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:16px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.shr-usage-box-modern .shr-usage-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.shr-usage-box-modern span{font-size:13px;color:#64748b;text-transform:none;letter-spacing:0;font-weight:700}.shr-usage-box-modern strong{font-size:18px;color:#0f172a;margin:0}.shr-usage-bar{height:8px;background:#e5e7eb;border-radius:999px;margin-top:12px;overflow:hidden}.shr-usage-bar span{display:block;height:100%;background:#2563eb;border-radius:999px}.shr-feature-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.shr-feature-pill{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;font-weight:700;font-size:13px;border:1px solid #e5e7eb}.shr-feature-pill.enabled{background:#ecfdf5;color:#047857;border-color:#a7f3d0}.shr-feature-pill.disabled{background:#f8fafc;color:#64748b}.shr-subscription-note{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;padding:12px;margin-top:16px;color:#92400e}@media(max-width:782px){.shr-subscription-hero{grid-template-columns:1fr}.shr-usage-grid-modern{grid-template-columns:1fr}}

/* SmartHire 4.0.3 Frontend Plugin Manager Portal */
.shr-manager-portal{max-width:1180px!important;margin:24px auto!important;grid-template-columns:260px minmax(0,1fr)!important;gap:22px!important;align-items:start!important}
.shr-manager-portal .shr-manager-sidebar{background:linear-gradient(180deg,#0f172a,#111827)!important;color:#e5e7eb!important;border-radius:20px!important;padding:18px!important;box-shadow:0 20px 45px rgba(15,23,42,.20)!important;max-height:calc(100vh - 40px);overflow:auto}
.shr-manager-brand{display:flex;align-items:center;gap:12px;color:#fff!important;font-weight:900;font-size:24px;line-height:1.1;margin:4px 0 18px;padding:10px 8px 16px;border-bottom:1px solid rgba(255,255,255,.10)}
.shr-manager-brand i{width:42px;height:42px;border-radius:14px;background:#2563eb;display:inline-flex;align-items:center;justify-content:center;color:#fff!important;font-size:18px}
.shr-manager-portal .shr-manager-sidebar nav a,.shr-manager-portal .shr-manager-sidebar a{display:flex!important;align-items:center;gap:9px;color:#dbeafe!important;text-decoration:none!important;padding:11px 12px!important;border-radius:12px!important;margin:5px 0!important;font-weight:700!important;font-size:14px!important;opacity:1!important;transition:.15s ease!important}
.shr-manager-portal .shr-manager-sidebar nav a i{font-size:10px;opacity:.65}.shr-manager-portal .shr-manager-sidebar nav a:hover{background:#1e293b!important;color:#fff!important;transform:translateX(2px)}
.shr-manager-portal .shr-manager-sidebar nav a.active{background:#2563eb!important;color:#fff!important;box-shadow:0 10px 22px rgba(37,99,235,.28)!important}.shr-manager-logout{margin-top:14px!important;background:rgba(239,68,68,.12)!important;color:#fecaca!important}.shr-manager-logout:hover{background:#dc2626!important;color:#fff!important}
.shr-manager-portal .shr-manager-content{background:#fff!important;border:1px solid #e5e7eb!important;border-radius:20px!important;padding:24px!important;box-shadow:0 20px 50px rgba(15,23,42,.08)!important;overflow:hidden!important}.shr-manager-content h2{font-size:34px!important;line-height:1.15!important;color:#111827!important;margin:0 0 14px!important}.shr-manager-lead{color:#475569!important;margin:0 0 18px!important;max-width:760px!important}.shr-manager-filter{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 16px!important;padding:14px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px}.shr-manager-filter input,.shr-manager-filter select,.shr-manager-content input,.shr-manager-content select,.shr-manager-content textarea{border:1px solid #cbd5e1!important;border-radius:10px!important;padding:10px 12px!important;min-height:42px!important;background:#fff!important;color:#111827!important}.shr-manager-content label{display:block;font-weight:700;color:#334155;margin:0 0 12px}.shr-manager-content label input,.shr-manager-content label select,.shr-manager-content label textarea{display:block;width:100%;margin-top:6px}.shr-manager-grid{display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:18px;align-items:start}.shr-table-wrap{width:100%;overflow-x:auto;border:1px solid #e5e7eb;border-radius:14px;background:#fff}.shr-manager-table,.shr-manager-content .shr-table{min-width:780px}.shr-manager-content .shr-table th{background:#f8fafc!important;color:#0f172a!important;font-size:12px!important;text-transform:uppercase;letter-spacing:.04em}.shr-manager-content .shr-table td{vertical-align:middle!important;color:#334155!important}.shr-btn-small{padding:7px 10px!important;font-size:12px!important;border-radius:8px!important}.shr-btn-muted{background:#64748b!important}.shr-btn-danger{background:#dc2626!important}.shr-pagination{display:flex;gap:6px;margin-top:14px;flex-wrap:wrap}.shr-pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;border:1px solid #cbd5e1;border-radius:8px;text-decoration:none;color:#334155;background:#fff}.shr-pagination a.active{background:#2563eb;color:#fff;border-color:#2563eb}.shr-status{display:inline-flex;padding:5px 10px;border-radius:999px;font-weight:700;font-size:12px;background:#e2e8f0;color:#334155}.shr-status-approved,.shr-status-active{background:#dcfce7;color:#166534}.shr-status-pending{background:#fef3c7;color:#92400e}.shr-status-rejected,.shr-status-suspended{background:#fee2e2;color:#991b1b}@media(max-width:900px){.shr-manager-portal{grid-template-columns:1fr!important;margin:12px!important}.shr-manager-portal .shr-manager-sidebar{position:relative!important;max-height:none!important}.shr-manager-portal .shr-manager-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.shr-manager-grid{grid-template-columns:1fr}.shr-manager-content h2{font-size:28px!important}}@media(max-width:520px){.shr-manager-portal .shr-manager-sidebar nav{grid-template-columns:1fr}.shr-manager-filter{display:block}.shr-manager-filter input,.shr-manager-filter select,.shr-manager-filter .shr-btn{width:100%;margin:4px 0}.shr-manager-content{padding:16px!important}}


/* v4.0.4 Frontend Plugin Manager full admin mirror */
.shr-manager-sidebar{background:#0f172a!important;color:#e2e8f0!important;box-shadow:0 12px 30px rgba(15,23,42,.18)}
.shr-manager-sidebar a{color:#e2e8f0!important;opacity:1!important;font-weight:600;display:flex;gap:10px;align-items:center}
.shr-manager-sidebar a:hover{background:#1e293b!important;color:#fff!important}
.shr-manager-sidebar a.active{background:#2563eb!important;color:#fff!important;box-shadow:0 8px 18px rgba(37,99,235,.28)}
.shr-manager-brand{color:#fff!important}.shr-manager-brand span{color:#fff!important}
.shr-manager-content{background:#f8fafc!important;border-radius:18px;padding:24px!important;overflow:auto}
.shr-manager-mirror .wrap,.shr-manager-mirror .shr-admin-wrap,.shr-manager-admin-wrap{max-width:100%!important;margin:0!important;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:20px!important;box-shadow:0 8px 26px rgba(15,23,42,.06)}
.shr-manager-mirror .wp-list-table,.shr-manager-mirror .shr-admin-table{width:100%;border-collapse:collapse;background:#fff}
.shr-manager-mirror .wp-list-table th,.shr-manager-mirror .wp-list-table td,.shr-manager-mirror .shr-admin-table th,.shr-manager-mirror .shr-admin-table td{padding:12px;border-bottom:1px solid #e5e7eb;vertical-align:top}
.shr-manager-mirror .button,.shr-manager-mirror .button-primary,.shr-manager-email-templates .button,.shr-manager-email-templates .shr-btn{border-radius:10px!important;text-decoration:none!important}
.shr-manager-email-templates .wp-editor-wrap{max-width:100%}.shr-manager-email-templates .shr-email-template-box{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:16px;margin:14px 0}
@media(max-width:900px){.shr-manager-dashboard{display:block!important}.shr-manager-sidebar{width:100%!important;margin-bottom:16px}.shr-manager-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.shr-manager-content{padding:14px!important}}

/* v4.0.5 Manager Portal layout containment and modern polish */
.shr-manager-dashboard.shr-manager-portal,
.shr-manager-dashboard{
  box-sizing:border-box!important;
  width:min(1120px, calc(100vw - 32px))!important;
  max-width:calc(100vw - 32px)!important;
  margin:18px auto!important;
  display:grid!important;
  grid-template-columns:245px minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
}
.shr-manager-portal *{box-sizing:border-box!important;}
.shr-manager-portal .shr-manager-sidebar{
  width:245px!important;
  min-width:0!important;
  padding:16px!important;
  border-radius:18px!important;
}
.shr-manager-portal .shr-manager-brand{
  font-size:20px!important;
  line-height:1.15!important;
  margin-bottom:14px!important;
}
.shr-manager-portal .shr-manager-brand i{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  font-size:16px!important;
}
.shr-manager-portal .shr-manager-sidebar nav a,
.shr-manager-portal .shr-manager-sidebar a{
  font-size:13px!important;
  padding:10px 11px!important;
  color:#e5edf9!important;
  white-space:normal!important;
}
.shr-manager-portal .shr-manager-content{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  padding:20px!important;
  border-radius:18px!important;
}
.shr-manager-content h1,
.shr-manager-content h2,
.shr-manager-content .shr-admin-wrap h1,
.shr-manager-content .shr-admin-wrap h2,
.shr-manager-mirror h1,
.shr-manager-mirror h2{
  font-size:clamp(24px,3vw,36px)!important;
  line-height:1.15!important;
  color:#111827!important;
  margin:0 0 14px!important;
  letter-spacing:-.03em!important;
  word-break:normal!important;
}
.shr-manager-content h1 i,
.shr-manager-content h2 i,
.shr-manager-content h1 .dashicons,
.shr-manager-content h2 .dashicons,
.shr-manager-mirror h1 i,
.shr-manager-mirror h2 i{
  font-size:1em!important;
  width:auto!important;
  height:auto!important;
  line-height:1!important;
  vertical-align:-.08em!important;
  margin-right:8px!important;
}
.shr-manager-mirror,
.shr-manager-mirror .wrap,
.shr-manager-mirror .shr-admin-wrap,
.shr-manager-admin-wrap,
.shr-manager-content .shr-admin-card{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
.shr-manager-mirror .wrap,
.shr-manager-mirror .shr-admin-wrap,
.shr-manager-admin-wrap{
  padding:18px!important;
  border-radius:16px!important;
  background:#fff!important;
}
.shr-manager-filter{
  width:100%!important;
  max-width:100%!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  align-items:center!important;
}
.shr-manager-filter input,
.shr-manager-filter select{
  max-width:240px!important;
  flex:1 1 180px!important;
}
.shr-manager-filter .shr-btn,
.shr-manager-filter button{
  flex:0 0 auto!important;
  min-height:42px!important;
}
.shr-table-wrap,
.shr-manager-mirror .shr-table-wrap,
.shr-manager-content .shr-table-wrap{
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  border-radius:14px!important;
}
.shr-manager-content table,
.shr-manager-content .shr-table,
.shr-manager-content .wp-list-table,
.shr-manager-content .shr-admin-table,
.shr-manager-mirror table,
.shr-manager-mirror .shr-table,
.shr-manager-mirror .wp-list-table,
.shr-manager-mirror .shr-admin-table{
  width:100%!important;
  min-width:720px!important;
  max-width:none!important;
  table-layout:auto!important;
  border-collapse:collapse!important;
}
.shr-manager-content th,
.shr-manager-content td,
.shr-manager-mirror th,
.shr-manager-mirror td{
  padding:11px 12px!important;
  font-size:13px!important;
  line-height:1.45!important;
  vertical-align:middle!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.shr-manager-content th,
.shr-manager-mirror th{
  background:#f8fafc!important;
  color:#0f172a!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.035em!important;
}
.shr-manager-content td:last-child,
.shr-manager-mirror td:last-child{
  min-width:130px!important;
}
.shr-manager-content .shr-btn,
.shr-manager-content .button,
.shr-manager-content .button-primary,
.shr-manager-mirror .button,
.shr-manager-mirror .button-primary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:3px 4px 3px 0!important;
  min-height:34px!important;
  padding:8px 11px!important;
  border-radius:9px!important;
  white-space:nowrap!important;
  line-height:1.2!important;
}
.shr-manager-grid{
  grid-template-columns:minmax(0,360px) minmax(0,1fr)!important;
  gap:16px!important;
  width:100%!important;
  max-width:100%!important;
}
.shr-quota-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;}
.shr-manager-email-templates .wp-editor-wrap,
.shr-manager-email-templates textarea,
.shr-manager-email-templates iframe{
  max-width:100%!important;
}
@media(max-width:1100px){
  .shr-manager-dashboard.shr-manager-portal,.shr-manager-dashboard{
    width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    grid-template-columns:220px minmax(0,1fr)!important;
    gap:14px!important;
  }
  .shr-manager-portal .shr-manager-sidebar{width:220px!important;}
  .shr-manager-portal .shr-manager-content{padding:16px!important;}
  .shr-manager-content table,.shr-manager-mirror table{min-width:680px!important;}
}
@media(max-width:900px){
  .shr-manager-dashboard.shr-manager-portal,.shr-manager-dashboard{
    display:block!important;
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    margin:10px auto!important;
  }
  .shr-manager-portal .shr-manager-sidebar{
    width:100%!important;
    position:relative!important;
    max-height:none!important;
    margin-bottom:14px!important;
  }
  .shr-manager-portal .shr-manager-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .shr-manager-grid{grid-template-columns:1fr!important;}
}
@media(max-width:560px){
  .shr-manager-portal .shr-manager-sidebar nav{grid-template-columns:1fr!important;}
  .shr-manager-content h1,.shr-manager-content h2,.shr-manager-mirror h1,.shr-manager-mirror h2{font-size:26px!important;}
  .shr-manager-filter input,.shr-manager-filter select,.shr-manager-filter .shr-btn,.shr-manager-filter button{width:100%!important;max-width:100%!important;flex:1 1 100%!important;}
  .shr-manager-content table,.shr-manager-mirror table{min-width:620px!important;}
}

/* SmartHire Manager Portal tab polish */
.shr-manager-section-head{margin:0 0 22px 0;}
.shr-manager-section-head h2{font-size:32px;line-height:1.15;margin:0 0 8px;color:#111827;font-weight:800;letter-spacing:-.03em;}
.shr-manager-section-head p{margin:0;color:#64748b;font-size:15px;max-width:760px;}
.shr-manager-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 20px;padding:6px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:14px;width:max-content;max-width:100%;}
.shr-manager-tabs a{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border-radius:10px;text-decoration:none!important;color:#334155;font-weight:700;background:transparent;transition:.2s ease;}
.shr-manager-tabs a:hover{background:#e2e8f0;color:#0f172a;}
.shr-manager-tabs a.active{background:#2563eb;color:#fff;box-shadow:0 6px 14px rgba(37,99,235,.25);}
.shr-manager-card-narrow{max-width:760px;}
.shr-manager-content .shr-admin-card{overflow:hidden;}
.shr-manager-content .shr-quota-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:14px 0;}
.shr-manager-content label{display:block;font-weight:700;color:#334155;margin-bottom:12px;}
.shr-manager-content label input,.shr-manager-content label select,.shr-manager-content label textarea{margin-top:6px;width:100%;max-width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:10px;padding:11px 12px;font-weight:500;background:#fff;}
.shr-manager-content .shr-table-wrap{max-width:100%;overflow-x:auto;border-radius:12px;border:1px solid #e5e7eb;background:#fff;}
.shr-manager-content .shr-table{min-width:760px;width:100%;border-collapse:collapse;}
.shr-manager-content .shr-table th{background:#f8fafc;color:#0f172a;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.03em;}
.shr-manager-content .shr-table td,.shr-manager-content .shr-table th{padding:14px 12px;border-bottom:1px solid #e5e7eb;vertical-align:top;}
@media(max-width:780px){.shr-manager-tabs{width:100%;}.shr-manager-tabs a{flex:1;justify-content:center}.shr-manager-section-head h2{font-size:25px}}
