/* Theme components are enqueued via functions.php - no @import needed */

/* SOA Dashboard Styles */
.dashboard {padding-top:var(--wp--preset--spacing--medium);padding-bottom:var(--wp--preset--spacing--medium);background-color: var(--wp--preset--color--quaternary);}

.soa-cpd-table {
    width: 100%;
    border-collapse: collapse;
    background-color: var(--wp--preset--color--white);
    border-radius: var(--wp--custom--border--radius--small);
    padding: var(--wp--preset--spacing--small);
    margin: var(--soa-spacing-md) 0;
    box-shadow: var(--wp--preset--shadow--subtle);
    overflow: hidden;
  }
  
  .soa-cpd-table thead tr {
      height: 50px;
      background: var(--wp--preset--color--tertiary);
  }
  
  
  .soa-cpd-table .cpd-actions {
    white-space: nowrap; /* Prevent wrapping */
  }
  
  .soa-cpd-table td,.soa-cpd-table th {
    width: 0px;
    text-align: center;
  }
  .soa-cpd-table tr:nth-child(even) {background: #eac2681a;}
  
  .soa-cpd-table td {
    overflow: hidden; 
    text-overflow: ellipsis; 
    white-space: nowrap; 
    max-width: 0px;    
    padding: 5px;
  }

  .soa-cpd-form {
      max-width: 600px;
      margin: 0 auto;
      background: var(--wp--preset--color--white);
      padding: var(--wp--preset--spacing--large);
      border-radius: var(--wp--custom--border--radius--medium);
      box-shadow: var(--wp--preset--shadow--subtle);
  }
  

  /* Form styles inherit from components.css - dashboard-specific overrides only */
  
  .form-actions {
      margin-top: var(--wp--preset--spacing--medium);
      display: flex;
      gap: 10px;
      justify-content: center;
      align-items: center;
  }
  
  #loading-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.5);
      z-index: 9999;
      display: none;
      align-items: center;
      justify-content: center;
  }
  
  #loading-overlay > div {
      background: var(--wp--preset--color--white);
      padding: var(--wp--preset--spacing--large);
      border-radius: var(--wp--custom--border--radius--medium);
      text-align: center;
      box-shadow: var(--wp--preset--shadow--normal);
  }
  
  #loading-overlay .spinner {
      width: 30px;
      height: 30px;
      border: 3px solid var(--wp--preset--color--quaternary);
      border-top: 3px solid var(--wp--preset--color--primary);
      border-radius: 50%;
      animation: spin 1s linear infinite;
      margin: 0 auto;
  }
  
  @keyframes spin {
      0% { transform: rotate(0deg); }
      100% { transform: rotate(360deg); }
  }
  
  #form-message {
      margin-top: 20px;
  }
  
  #form-message .success {
      background-color: rgba(40, 167, 69, 0.1);
      color: var(--wp--preset--color--secondary);
      padding: var(--wp--preset--spacing--small);
      border-radius: var(--wp--custom--border--radius--small);
      border: 1px solid var(--wp--preset--color--secondary);
  }
  
  #form-message .error {
      background-color: rgba(220, 53, 69, 0.1);
      color: #dc3545;
      padding: var(--wp--preset--spacing--small);
      border-radius: var(--wp--custom--border--radius--small);
      border: 1px solid #dc3545;
  }
  
  /* Dashboard Overview */
  .soa-dashboard-overview {
      max-width: 800px;
      margin: 0 auto;
      text-align: center;
      padding: 40px 20px;
  }

  /* Dashboard Header Layout */
  .dashboard-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 20px;
      flex-wrap: wrap;
      gap: 20px;
  }

  .dashboard-header h1 {
      margin: 0;
      flex: 1;
      min-width: 200px;
  }

  .certificate-download-btn {
      background: var(--wp--preset--color--primary);
  }

  .soa-dashboard-overview h1 {
      color: var(--wp--custom--color--neutral--900);
      margin-bottom: var(--wp--preset--spacing--medium);
      font-size: 2.5em;
      font-weight: 600;
  }
  
  .soa-dashboard-overview p {
      font-size: 1.2em;
      color: var(--soa-text-light);
      margin-bottom: var(--wp--preset--spacing--x-large);
      line-height: 1.6;
  }
  
  .tile {
      background: var(--wp--preset--color--white);
      padding: var(--wp--preset--spacing--medium);
      border: 1px solid var(--wp--custom--color--neutral--300);
      border-radius: var(--wp--custom--border--radius--small);
      text-decoration: none;
      color: var(--wp--preset--color--black);
      transition: box-shadow 0.3s;
  }
  .tile:hover {
      box-shadow: var(--wp--preset--shadow--natural);
  }
  
  .dashboard-actions {
      display: flex;
      gap: 20px;
      justify-content: center;
      flex-wrap: wrap;
  }
  
  .dashboard-actions .button {
      padding: 15px 30px;
      font-size: 16px;
      font-weight: 600;
      min-width: 200px;
  }
  
  .account-actions {
      margin-top: 30px;
      text-align: center;
  }
  
  /* Form Navigation */
  .form-navigation {
      margin-top: 30px;
      text-align: center;
      padding-top: 20px;
      border-top: 1px solid #e1e1e1;
  }
  
  /* Form Notice */
  .form-notice {
      margin: var(--wp--preset--spacing--medium) 0;
      padding: var(--wp--preset--spacing--small);
      background-color: rgba(255, 193, 7, 0.1);
      border: 1px solid var(--wp--preset--color--tertiary);
      border-radius: var(--wp--custom--border--radius--small);
      color: var(--wp--preset--color--tertiary);
  }
  
  .form-notice p {
      margin: 0;
      font-size: 0.9em;
      line-height: 1.4;
  }
  
  /* Form Validation Styles - extends components.css */
  .form-group input.error,
  .form-group textarea.error,
  .form-group select.error {
      border-color: #dc3545;
      box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.2);
  }
  
  .field-error,
  .url-error,
  .date-error,
  .password-match-error,
  .email-match-error {
      color: #dc3545;
      font-size: var(--wp--preset--font-size--tiny);
      margin-top: var(--wp--preset--spacing--tiny);
      display: block;
  }
  
  /* Password Strength Indicator */
  .password-strength-indicator {
      margin-top: 5px;
  }
  
  .password-strength-indicator span {
      padding: 4px 8px;
      border-radius: 3px;
      font-size: 0.85em;
      font-weight: 500;
  }
  
  .strength-weak {
      background-color: rgba(220, 53, 69, 0.1);
      color: #dc3545;
      border: 1px solid #dc3545;
  }
  
  .strength-medium {
      background-color: rgba(255, 193, 7, 0.1);
      color: var(--wp--preset--color--tertiary);
      border: 1px solid var(--wp--preset--color--tertiary);
  }
  
  .strength-strong {
      background-color: rgba(40, 167, 69, 0.1);
      color: var(--wp--preset--color--secondary);
      border: 1px solid var(--wp--preset--color--secondary);
  }
  
  /* Form label styles inherit from components.css */
  
  /* Responsive Design */
  @media (max-width: 768px) {
      .soa-cpd-container {
          padding: 10px;
      }
      
      .soa-cpd-table {
          font-size: 14px;
      }
      
      .soa-cpd-table th,
      .soa-cpd-table td {
          padding: 8px 10px;
      }
      
      .soa-cpd-form {
          padding: 20px;
      }
      
      .form-actions {
          flex-direction: column;
      }
      
      .dashboard-actions {
          flex-direction: column;
          align-items: center;
      }
      
      .dashboard-actions .button {
          min-width: 250px;
      }

      /* Mobile dashboard header */
      .dashboard-header {
          flex-direction: column;
          align-items: stretch;
          text-align: center;
      }

      .dashboard-header h1 {
          margin-bottom: 15px;
      }

      .certificate-download-btn {
          align-self: center;
          max-width: 250px;
      }
  
  } 
  
  /* Groups checkboxes styling */
  .groups-checkboxes {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
      max-height: 300px;
      overflow-y: auto;
      padding: 1rem;
      border: 1px solid var(--wp--preset--color--quaternary);
      border-radius: var(--wp--custom--border--radius--small);
      background: var(--wp--preset--color--neutral--100);
  }
  
  .checkbox-label {
      display: flex;
      align-items: flex-start;
      gap: 0.75rem;
      cursor: pointer;
      font-weight: 500;
      padding: 0.5rem;
      border-radius: var(--wp--custom--border--radius--small);
      transition: background-color 0.2s ease;
  }
  
  .checkbox-label:hover {
      background: var(--wp--preset--color--quaternary);
  }
  
  .checkbox-label input[type="checkbox"] {
      margin: 0;
      width: 18px;
      height: 18px;
      accent-color: var(--wp--preset--color--primary);
      flex-shrink: 0;
  }
  
  .checkbox-text {
      flex: 1;
      line-height: 1.4;
  }
  
  
  
  /*Event Dashboard */
  .events-dashboard {
    background: var(--wp--preset--color--quaternary);
    padding-top: var(--wp--preset--spacing--medium);
    padding-bottom: var(--wp--preset--spacing--medium);
}
  
  
  /*CPD Progress Bar*/
  .soa-progress-bar-container {
      background: var(--wp--preset--color--quaternary);
      border: 1px solid var(--wp--custom--color--neutral--200);
      border-radius: var(--wp--custom--border--radius--medium);
      padding: var(--wp--preset--spacing--medium);
      margin: var(--wp--preset--spacing--medium) 0;
  }
  
  .soa-progress-bar-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: var(--wp--preset--spacing--small);
  }
  
  .soa-progress-bar-header h3 {
      margin: 0;
      color: var(--wp--custom--color--neutral--900);
      font-size: var(--wp--preset--font-size--large);
  }
  
  .soa-progress-stats {
      font-size: var(--wp--preset--font-size--large);
      font-weight: bold;
  }
  
  .soa-progress-stats .current-points {
      color: var(--wp--preset--color--primary);
  }
  
  .soa-progress-stats .max-points {
      color: var(--soa-text-light);
  }
  
  .soa-progress-stats .separator {
      color: var(--soa-text-muted);
      margin: 0 var(--wp--preset--spacing--tiny);
  }
  
  .soa-progress-stats .percentage {
      color: var(--wp--preset--color--secondary);
      font-size: var(--wp--preset--font-size--normal);
      margin-left: var(--wp--preset--spacing--small);
  }
  
  .soa-progress-bar-wrapper {
      background: var(--wp--custom--color--neutral--200);
      border-radius: var(--wp--custom--border--radius--large);
      height: 20px;
      overflow: hidden;
      position: relative;
      margin-bottom: var(--wp--preset--spacing--tiny);
  }
  
  .soa-progress-bar {
      height: 100%;
      border-radius: 10px;
      transition: width 0.3s ease-in-out;
      background: linear-gradient(90deg, var(--start-color, #559cc5), var(--end-color, #63bc46));
      position: relative;
  }
  
  .soa-progress-bar::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
      animation: shimmer 2s infinite;
  }
  
  @keyframes shimmer {
      0% { transform: translateX(-100%); }
      100% { transform: translateX(100%); }
  }
  
  .soa-progress-bar-labels {
      display: flex;
      justify-content: space-between;
      font-size: var(--wp--preset--font-size--normal);
      color: var(--soa-text-light);
  }

/* WhatsApp-style Ask Expert Chat Cards */
/* Status Dot - Positioned in top-right corner */
.soa-member-card.job-card,
.soa-member-card.job-card.ask-expert-card {
    position: relative;
}

/* Status dot - actual HTML element */
.soa-status-dot {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    z-index: 10;
    box-shadow: 0 0 0 2px #fff, 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Green dot for published/approved */
.soa-status-dot.status-published,
.soa-status-dot.status-publish {
    background: var(--wp--preset--color--secondary);
}


div#my-answers-list {
    grid-template-columns: repeat(3,1fr);
}
.archive-header.my-answers {
    padding-bottom: 10px;
}
.my-expert-section {
    max-width: 900px;
    margin: auto;
    margin-top: 30px;
}
.soa-member-card.job-card.has-status-published {
    width: 900px;
    margin: auto;
    margin-bottom: 30px;
}

.archive-header .archive-inner-header.jobs-board {
    width: 900px;
}

.soa-member-card.job-card a {
    text-decoration: none;
}
.expert-header-content {
    width: 900px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.expert-board-actions {
    display: flex;
    gap: 15px;
}
/* Yellow dot for pending/awaiting approval */
.soa-status-dot.status-pending,
.soa-status-dot.status-draft {
    background: var(--wp--preset--color--tertiary);
}

/* Red dot for rejected */
.soa-status-dot.status-rejected {
    background: #dc3545;
}

/* Rejection reason box */
.soa-rejection-reason-box {
    background-color: rgba(220, 53, 69, 0.1);
    border: 1px solid #dc3545;
    padding: var(--wp--preset--spacing--small);
    margin-bottom: var(--wp--preset--spacing--small);
    border-radius: var(--wp--custom--border--radius--small);
}

.soa-rejection-reason-box h4 {
    color: #dc3545;
    margin-top: 0;
    margin-bottom: var(--wp--preset--spacing--tiny);
}

.soa-rejection-reason-box p {
    margin: 0;
    color: var(--wp--custom--color--neutral--900);
}

.soa-member-card.job-card.ask-expert-card {
    max-width: 900px;
    margin: 0 auto 30px;
    padding: 20px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}

.soa-member-card.job-card.ask-expert-card .job-card-header {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

/* Hide old status badges */
.soa-member-card.job-card .job-status,
.soa-member-card.job-card.ask-expert-card .job-status,
.soa-member-card.job-card .status-badge,
.soa-member-card.job-card.ask-expert-card .status-badge {
    display: none;
}


.soa-member-card.job-card .job-card-header {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-bottom: 15px;
    padding-bottom: 0;
    position: absolute;
    right: 30px;
    top: 30px;
}

.soa-member-card.job-card .edit-job-btn,
.soa-member-card.job-card.ask-expert-card .edit-question-btn {
    padding: 8px 16px;
    background: #000;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 14px;
    cursor: pointer;
    transition: background 0.2s;
}

.soa-member-card.job-card .edit-job-btn:hover,
.soa-member-card.job-card.ask-expert-card .edit-question-btn:hover {
    background: #333;
}


/*Edit directory*/
.soa-form-section {
    background: #FFF;
    padding: var(--wp--preset--spacing--medium);
    border-radius: var(--wp--custom--border--radius--medium);
    max-width: var(--wp--custom--layout--small-content);
    margin: 0 auto var(    --wp--preset--spacing--medium);
}

.soa-edit-profile-header {
    max-width: var(--wp--custom--layout--small-content);
    margin: auto;
}

.current-photo {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 25px;
}

.current-photo img {
    max-width: 250px;
    border-radius: 50%;
    object-fit: cover;
    aspect-ratio: 1/1;
}

.photo-preview {
    margin-top: 15px;
    margin-bottom: 15px;
}

.photo-preview img,
.photo-preview-img {
    max-width: 250px;
    max-height: 250px;
    width: auto;
    height: auto;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    display: block;
}

/* Chat Container */
.ask-expert-chat-container {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Question Bubble (Left - Like incoming message) */
.question-with-avatar {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    margin-right: auto;
    width: 45%;
}

.question-avatar {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    margin-bottom: 2px;
}

.question-avatar .avatar-img {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

.question-content-wrapper {
    position: relative;
    background: #dcf8c6;
    padding: 10px 14px;
    border-radius: 8px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    width: 100%;
}

/* Chat bubble tail pointing left */
.question-content-wrapper::before {
    content: '';
    position: absolute;
    left: -8px;
    bottom: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 8px 8px 0;
    border-color: transparent #dcf8c6 transparent transparent;
    filter: drop-shadow(-1px 1px 1px rgba(0, 0, 0, 0.1));
}

.question-content-wrapper .member-card-title {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 6px 0;
    color: #000;
    line-height: 1.3;
}

.question-content-wrapper .member-card-meta {
    font-size: 12px;
    color: #667781;
    margin: 0 0 6px 0;
    font-weight: 400;
}

.question-content-wrapper .member-card-meta strong {
    font-weight: 600;
    color: #54656f;
}

.question-content-wrapper .member-card-content {
    font-size: 14px;
    color: #111b21;
    line-height: 1.5;
    margin: 0;
}

.question-content-wrapper .member-card-content p {
    margin: 0;
}

.soa-member-card.job-card.ask-expert-card > a {
    text-decoration: none;
    color: inherit;
    display: block;
}

/* Expert Reply Bubble (Right - Like outgoing message) */
.expert-reply {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    width: 45%;
    margin-left: auto;
    justify-content: flex-end;
}

.reply-content-wrapper {
    position: relative;
    background: #fff;
    padding: 10px 14px;
    border-radius: 8px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    text-align: left;
    width: 100%;
}

/* Chat bubble tail pointing right */
.reply-content-wrapper::after {
    content: '';
    position: absolute;
    right: -8px;
    bottom: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 8px 0 0;
    border-color: #fff transparent transparent transparent;
    filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.1));
}

.reply-content-wrapper h4 {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 6px 0;
    color: #000;
    line-height: 1.3;
}

.reply-content-wrapper .member-card-meta {
    font-size: 12px;
    color: #667781;
    margin: 0 0 6px 0;
    font-weight: 400;
}

.reply-content-wrapper .member-card-meta strong {
    font-weight: 600;
    color: #54656f;
}

.reply-content-wrapper .reply-content {
    font-size: 14px;
    color: #111b21;
    line-height: 1.5;
    margin: 0;
}

.reply-content-wrapper .reply-content p {
    margin: 0;
}

.reply-avatar {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    margin-bottom: 2px;
}

.reply-avatar .avatar-img {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

/* Reply Button */
.question-actions {
    text-align: center;
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #e5e5e5;
}
.archive-header.ask-expert-board {
    padding-bottom: 10px;
}
.archive-header.answer-questions {
    padding-bottom: 10px;
}
.question-actions .reply-question-btn {
    padding: var(--wp--preset--spacing--tiny) var(--wp--preset--spacing--medium);
    background: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--white);
    border: none;
    border-radius: 24px;
    font-size: var(--wp--preset--font-size--tiny);
    font-weight: 600;
    cursor: pointer;
    transition: var(--soa-transition);
    box-shadow: var(--wp--preset--shadow--subtle);
}

.question-actions .reply-question-btn:hover {
    background: var(--wp--preset--color--secondary);
    opacity: 0.9;
    transform: translateY(-1px);
    box-shadow: var(--wp--preset--shadow--normal);
}

.question-actions .reply-question-btn:active {
    transform: translateY(0);
}



.type-job .archive-inner-header {
    width: 900px !important;
}
.post-type-archive-ask-expert .jobs-board-container,
.page-template-archive .jobs-board-container {
    max-width: 1200px;
    margin: 0 auto;
}


/* Responsive Design */
@media (max-width: 768px) {
    .question-with-avatar,
    .expert-reply {
        max-width: 85%;
    }
    
    .soa-member-card.job-card.ask-expert-card {
        padding: 15px;
        margin-bottom: 20px;
    }
    
    .question-avatar,
    .reply-avatar {
        width: 32px;
        height: 32px;
    }
    
    .question-avatar .avatar-img,
    .reply-avatar .avatar-img {
        width: 32px;
        height: 32px;
    }
}



 /* Main Dashboard Container */
.events-dashboard {
    padding-top: var(--wp--preset--spacing--x-large);
    padding-bottom: var(--wp--preset--spacing--x-large);
    background-color: var(--wp--preset--color--quaternary);
    min-height: 100vh;
}

.events-dashboard .events-dashboard-container {
    max-width: var(--wp--custom--layout--content);
    margin: 0 auto;
    padding-left: var(--wp--preset--spacing--medium);
    padding-right: var(--wp--preset--spacing--medium);
}

/* Dashboard Header */
.events-dashboard .events-dashboard-header {
    margin-bottom: var(--wp--preset--spacing--large);
    text-align: center;
}

.events-dashboard .events-dashboard-header h1 {
    color: var(--wp--custom--color--neutral--900);
    margin-bottom: var(--wp--preset--spacing--medium);
    font-size: var(--wp--preset--font-size--gigantic);
    font-weight: 600;
    line-height: var(--wp--custom--line-height--tiny);
}

.events-dashboard .events-dashboard-nav {
    display: flex;
    gap: var(--wp--preset--spacing--medium);
    justify-content: center;
    flex-wrap: wrap;
    margin-top: var(--wp--preset--spacing--medium);
}

.events-dashboard .back-link,
.events-dashboard .browse-events-link {
    display: inline-flex;
    align-items: center;
    padding: var(--wp--preset--spacing--small) var(--wp--preset--spacing--medium);
    font-size: var(--wp--preset--font-size--normal);
    font-weight: 700;
    min-width: 200px;
    text-align: center;
    text-decoration: none;
    border-radius: var(--wp--custom--border--radius--large) 0 var(--wp--custom--border--radius--large) var(--wp--custom--border--radius--large);
    transition: all 0.3s ease;
    line-height: var(--wp--custom--line-height--medium);
}

.events-dashboard .back-link {
    background-color: var(--wp--custom--color--neutral--600);
    color: var(--wp--preset--color--white);
}

.events-dashboard .back-link:hover {
    background-color: var(--wp--custom--color--neutral--700);
    color: var(--wp--preset--color--white);
    text-decoration: none;
    transform: translateY(-1px);
}

.events-dashboard .browse-events-link {
    background-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
}

.events-dashboard .browse-events-link:hover {
    background-color: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--white);
    text-decoration: none;
    transform: translateY(-1px);
}

/* Dashboard Content Layout */
.events-dashboard .events-dashboard-content {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--large);
}

/* Summary Cards Section */
.events-dashboard .events-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: var(--wp--preset--spacing--medium);
    margin-bottom: var(--wp--preset--spacing--large);
}

.events-dashboard .summary-card {
    background: var(--wp--preset--color--white);
    padding: var(--wp--preset--spacing--large);
    border: 1px solid var(--wp--custom--color--neutral--300);
    border-radius: var(--wp--custom--border--radius--medium);
    text-decoration: none;
    color: var(--wp--custom--color--neutral--900);
    transition: all 0.3s ease;
    text-align: center;
    border-left: 4px solid var(--wp--preset--color--primary);
    box-shadow: var(--wp--preset--shadow--subtle);
    position: relative;
    overflow: hidden;
}

.events-dashboard .summary-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--wp--preset--color--primary), var(--wp--preset--color--secondary));
}

.events-dashboard .summary-card:hover {
    box-shadow: var(--wp--preset--shadow--normal);
    transform: translateY(-2px);
    text-decoration: none;
    color: var(--wp--custom--color--neutral--900);
}

.events-dashboard .summary-card.upcoming {
    border-left-color: var(--wp--preset--color--secondary);
}

.events-dashboard .summary-card.upcoming::before {
    background: linear-gradient(90deg, var(--wp--preset--color--secondary), var(--wp--preset--color--quinary));
}

.events-dashboard .summary-card.past {
    border-left-color: var(--wp--custom--color--neutral--500);
}

.events-dashboard .summary-card.past::before {
    background: linear-gradient(90deg, var(--wp--custom--color--neutral--500), var(--wp--custom--color--neutral--400));
}

.events-dashboard .summary-card.total {
    border-left-color: var(--wp--preset--color--tertiary);
}

.events-dashboard .summary-card.total::before {
    background: linear-gradient(90deg, var(--wp--preset--color--tertiary), var(--wp--preset--color--senary));
}

.events-dashboard .summary-card h3 {
    margin: 0 0 var(--wp--preset--spacing--small) 0;
    color: var(--wp--preset--color--primary);
    font-size: var(--wp--preset--font-size--normal);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: var(--wp--custom--line-height--small);
}

.events-dashboard .summary-count {
    font-size: var(--wp--preset--font-size--colossal);
    font-weight: 700;
    color: var(--wp--preset--color--primary);
    display: block;
    line-height: var(--wp--custom--line-height--tiny);
}

/* Events Section */
.events-dashboard .events-section {
    background: var(--wp--preset--color--white);
    border: 1px solid var(--wp--custom--color--neutral--300);
    border-radius: var(--wp--custom--border--radius--medium);
    padding: var(--wp--preset--spacing--large);
    box-shadow: var(--wp--preset--shadow--subtle);
}

.events-dashboard .events-section h2 {
    margin: 0 0 var(--wp--preset--spacing--medium) 0;
    color: var(--wp--custom--color--neutral--900);
    font-size: var(--wp--preset--font-size--huge);
    font-weight: 600;
    border-bottom: 2px solid var(--wp--preset--color--quaternary);
    padding-bottom: var(--wp--preset--spacing--small);
    line-height: var(--wp--custom--line-height--tiny);
}

/* Booking History Table */
.events-dashboard .booking-history-table {
    overflow-x: auto;
    border-radius: var(--wp--custom--border--radius--medium);
    box-shadow: var(--wp--preset--shadow--subtle);
}

.events-dashboard .events-audit-table {
    width: 100%;
    border-collapse: collapse;
    background-color: var(--wp--preset--color--white);
    font-size: var(--wp--preset--font-size--tiny);
    line-height: var(--wp--custom--line-height--medium);
}

.events-dashboard .events-audit-table thead {
    background-color: var(--wp--preset--color--quaternary);
}

.events-dashboard .events-audit-table th {
    padding: var(--wp--preset--spacing--small) var(--wp--preset--spacing--medium);
    text-align: left;
    font-weight: 600;
    color: var(--wp--custom--color--neutral--900);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid var(--wp--custom--color--neutral--300);
    white-space: nowrap;
}

.events-dashboard .events-audit-table td {
    padding: var(--wp--preset--spacing--small) var(--wp--preset--spacing--medium);
    border-bottom: 1px solid var(--wp--custom--color--neutral--200);
    vertical-align: top;
}

.events-dashboard .events-audit-table tbody tr:hover {
    background-color: var(--wp--preset--color--quaternary);
}

.events-dashboard .events-audit-table tbody tr:last-child td {
    border-bottom: none;
}

/* Table Cell Content Styling */
.events-dashboard .event-name {
    font-weight: 600;
    color: var(--wp--custom--color--neutral--900);
}

.events-dashboard .event-type-badge {
    display: inline-block;
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: var(--wp--custom--border--radius--small);
    margin-left: var(--wp--preset--spacing--tiny);
}

.events-dashboard .event-type-internal {
    background-color: rgba(99, 188, 70, 0.1);
    color: var(--wp--preset--color--secondary);
}

.events-dashboard .event-type-external {
    background-color: rgba(108, 117, 125, 0.1);
    color: var(--wp--custom--color--neutral--600);
}

.events-dashboard .event-location {
    color: var(--wp--custom--color--neutral--600);
    font-size: 0.875rem;
}

.events-dashboard .event-date {
    font-weight: 500;
    color: var(--wp--custom--color--neutral--900);
}

.events-dashboard .event-date small {
    color: var(--wp--custom--color--neutral--600);
    font-size: 0.875rem;
}

.events-dashboard .order-number a {
    color: var(--wp--preset--color--primary);
    text-decoration: none;
    font-weight: 600;
}

.events-dashboard .order-number a:hover {
    color: var(--wp--preset--color--secondary);
    text-decoration: underline;
}

/* Event Status Badges */
.events-dashboard .event-status-badge {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: var(--wp--custom--border--radius--small);
}

.events-dashboard .event-upcoming {
    background-color: rgba(99, 188, 70, 0.1);
    color: var(--wp--preset--color--secondary);
}

.events-dashboard .event-past {
    background-color: rgba(108, 117, 125, 0.1);
    color: var(--wp--custom--color--neutral--600);
}

.events-dashboard .order-date {
    font-size: 0.875rem;
    color: var(--wp--custom--color--neutral--900);
}

.events-dashboard .order-date small {
    color: var(--wp--custom--color--neutral--600);
}

/* Action Buttons */
.events-dashboard .actions .button {
    display: inline-flex;
    align-items: center;
    padding: var(--wp--preset--spacing--tiny) var(--wp--preset--spacing--small);
    font-size: var(--wp--preset--font-size--tiny);
    font-weight: 600;
    text-decoration: none;
    border-radius: var(--wp--custom--border--radius--small);
    transition: all 0.3s ease;
    line-height: var(--wp--custom--line-height--small);
}

.events-dashboard .actions .button {
    background-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
}

.events-dashboard .actions .button:hover {
    background-color: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--white);
    text-decoration: none;
    transform: translateY(-1px);
}

.job-card.ask-expert-card {
    grid-column: span 3;
    width: 100%;
}

/* No Events State */
.events-dashboard .no-events {
    text-align: center;
    color: var(--wp--custom--color--neutral--600);
    font-style: italic;
    padding: var(--wp--preset--spacing--large);
    background: var(--wp--preset--color--quaternary);
    border-radius: var(--wp--custom--border--radius--medium);
    border: 2px dashed var(--wp--custom--color--neutral--300);
}

.events-dashboard .no-events p {
    margin-bottom: var(--wp--preset--spacing--medium);
    font-size: var(--wp--preset--font-size--normal);
}

.events-dashboard .no-events .button {
    display: inline-flex;
    align-items: center;
    padding: var(--wp--preset--spacing--small) var(--wp--preset--spacing--medium);
    font-size: var(--wp--preset--font-size--normal);
    font-weight: 700;
    text-decoration: none;
    border-radius: var(--wp--custom--border--radius--large) 0 var(--wp--custom--border--radius--large) var(--wp--custom--border--radius--large);
    background-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
    transition: all 0.3s ease;
    line-height: var(--wp--custom--line-height--medium);
}

.events-dashboard .no-events .button:hover {
    background-color: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--white);
    text-decoration: none;
    transform: translateY(-1px);
}

form#sector-expertise-form {
    max-width: unset;
}

.expertise-category {
    margin-bottom: var(--wp--preset--spacing--large);
    border-bottom: 1px solid var(--wp--custom--color--neutral--200);
    padding-bottom: var(--wp--preset--spacing--medium);
}

.category-heading {
    color: var(--wp--preset--color--secondary);
    font-size: var(--wp--preset--font-size--large);
    font-weight: bold;
    margin-bottom: var(--wp--preset--spacing--small);
    margin-top: 0;
}

.checkbox-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 0.5rem 1rem;
}

.checkbox-option {
    display: flex;
    align-items: center;
    margin-bottom: 0.5rem;
    cursor: pointer;
}

.checkbox-option input[type="checkbox"] {
    margin-right: 0.5rem;
    margin-bottom: 0;
}

.checkbox-label {
    font-size: 0.9rem;
    line-height: 1.3;
}

.checkbox-option:hover .checkbox-label {
    color: var(--wp--preset--color--secondary);
}

/* Subscription Banner Styles */
.soa-subscription-banner {
    background: rgba(255, 193, 7, 0.1);
    border: 1px solid var(--wp--preset--color--tertiary);
    border-radius: var(--wp--custom--border--radius--medium);
    padding: var(--wp--preset--spacing--medium);
    margin-top: var(--wp--preset--spacing--medium);
    margin-bottom: var(--wp--preset--spacing--large);
    box-shadow: var(--wp--preset--shadow--subtle);
}

.subscription-banner-content {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.subscription-banner-icon {
    font-size: 24px;
    flex-shrink: 0;
}

.subscription-banner-text {
    flex: 1;
    min-width: 200px;
}

.subscription-banner-text strong {
    display: block;
    color: var(--wp--preset--color--tertiary);
    font-size: var(--wp--preset--font-size--large);
    font-weight: 600;
    margin-bottom: var(--wp--preset--spacing--tiny);
}

.subscription-banner-text p {
    margin: 0;
    color: var(--wp--preset--color--tertiary);
    font-size: var(--wp--preset--font-size--tiny);
    line-height: 1.5;
}

.subscription-banner-action {
    flex-shrink: 0;
}

.subscription-button {
    background-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
    padding: var(--wp--preset--spacing--small) var(--wp--preset--spacing--medium);
    font-size: var(--wp--preset--font-size--normal);
    font-weight: 600;
    text-decoration: none;
    border-radius: var(--wp--custom--border--radius--small);
    transition: var(--soa-transition);
    border: none;
    cursor: pointer;
    display: inline-block;
}

.subscription-button:hover {
    background-color: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--white);
    text-decoration: none;
    transform: translateY(-1px);
}

/* Active Subscription Indicator */
.subscription-status .subscription-active {
    display: inline-flex;
    align-items: center;
    gap: var(--wp--preset--spacing--tiny);
    padding: var(--wp--preset--spacing--tiny) var(--wp--preset--spacing--small);
    background-color: rgba(40, 167, 69, 0.1);
    border: 1px solid var(--wp--preset--color--secondary);
    border-radius: var(--wp--custom--border--radius--small);
    color: var(--wp--preset--color--secondary);
    font-weight: 600;
    font-size: var(--wp--preset--font-size--tiny);
    justify-content: center;
}

.subscription-icon {
    font-size: var(--wp--preset--font-size--normal);
    line-height: 1;
}

.subscription-text {
    color: var(--wp--preset--color--secondary);
}

/* Subscription Required Message */
.soa-subscription-required-message {
    background: var(--wp--preset--color--white);
    border: 1px solid var(--wp--custom--color--neutral--300);
    border-radius: var(--wp--custom--border--radius--medium);
    padding: var(--wp--preset--spacing--x-large);
    margin: var(--wp--preset--spacing--large) 0;
    text-align: center;
    box-shadow: var(--wp--preset--shadow--subtle);
}

.soa-subscription-required-message h2 {
    color: var(--wp--custom--color--neutral--900);
    margin-bottom: var(--wp--preset--spacing--small);
    font-size: var(--wp--preset--font-size--huge);
}

.soa-subscription-required-message p {
    color: var(--soa-text-light);
    font-size: var(--wp--preset--font-size--normal);
    line-height: 1.6;
    margin-bottom: var(--wp--preset--spacing--medium);
}

/* Subscription Required Jobs */
.soa-subscription-required-jobs-inline {
    display: inline-block;
}

/* Utility Classes */
.hidden {
    display: none !important;
}

/* Responsive Design for Subscription Banner */
@media (max-width: 768px) {
    .subscription-banner-content {
        flex-direction: column;
        text-align: center;
    }
    
    .subscription-banner-text {
        text-align: center;
    }
    
    .subscription-banner-action {
        width: 100%;
    }
    
    .subscription-button {
        width: 100%;
        text-align: center;
    }
}

/* User Profile Card Styles */
.soa-user-profile-card {
    background: var(--wp--preset--color--white);
    border: 1px solid var(--wp--custom--color--neutral--300);
    border-radius: var(--wp--custom--border--radius--medium);
    padding: var(--wp--preset--spacing--medium);
    margin-bottom: var(--wp--preset--spacing--large);
    box-shadow: var(--wp--preset--shadow--subtle);
    position: relative;
}

.soa-user-profile-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--wp--preset--color--primary), var(--wp--preset--color--secondary));
    border-radius: var(--wp--custom--border--radius--medium) var(--wp--custom--border--radius--medium) 0 0;
}

.profile-header {
    display: flex;
    align-items: center;
    margin-bottom: var(--wp--preset--spacing--medium);
    padding-bottom: var(--wp--preset--spacing--medium);
    border-bottom: 1px solid var(--wp--custom--color--neutral--200);
}

.profile-avatar {
    margin-right: var(--wp--preset--spacing--medium);
}

.profile-avatar img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    object-fit: cover;
}

.profile-name {
    margin: 0 0 var(--wp--preset--spacing--tiny) 0;
    font-size: var(--wp--preset--font-size--huge);
    font-weight: 600;
    color: var(--wp--custom--color--neutral--900);
}

.profile-qualification {
    display: block;
    font-size: var(--wp--preset--font-size--normal);
    font-weight: 400;
    color: var(--soa-text-light);
    margin-top: var(--wp--preset--spacing--tiny);
}

.profile-email {
    margin: 0;
    color: var(--soa-text-light);
    font-size: var(--wp--preset--font-size--normal);
}

.profile-details {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
}

.detail-row {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.detail-label {
    font-weight: 600;
    color: var(--soa-text);
    margin-bottom: var(--wp--preset--spacing--tiny);
    font-size: var(--wp--preset--font-size--tiny);
}

.detail-value {
    color: var(--wp--custom--color--neutral--900);
    font-size: var(--wp--preset--font-size--normal);
}

.membership-renewal .detail-value.expiring-soon {
    color: #dc3545;
    font-weight: 600;
}

.membership-warning {
    display: flex;
    align-items: center;
    margin-top: var(--wp--preset--spacing--tiny);
    padding: var(--wp--preset--spacing--tiny) var(--wp--preset--spacing--small);
    background: rgba(255, 193, 7, 0.1);
    border: 1px solid var(--wp--preset--color--tertiary);
    border-radius: var(--wp--custom--border--radius--small);
    font-size: var(--wp--preset--font-size--tiny);
}

.membership-warning.expired {
    background: rgba(220, 53, 69, 0.1);
    border-color: #dc3545;
}

.warning-icon {
    margin-right: var(--wp--preset--spacing--tiny);
    font-size: var(--wp--preset--font-size--normal);
}

.warning-text {
    font-weight: 600;
    color: var(--wp--preset--color--tertiary);
}

.membership-warning.expired .warning-text {
    color: #dc3545;
}

@media (max-width: 768px) {
    .profile-header {
        flex-direction: column;
        text-align: center;
    }
    
    .profile-avatar {
        margin-right: 0;
        margin-bottom: 15px;
    }
    
    .profile-details {
        grid-template-columns: 1fr;
    }
}

/* Single Member Directory Page */
.soa-directory {
    padding-top: var(--wp--preset--spacing--medium);
    padding-bottom: var(--wp--preset--spacing--medium);
    background-color: var(--wp--preset--color--quaternary);
}

/* Notices */
.soa-notice {
    padding: var(--wp--preset--spacing--medium);
    margin-bottom: var(--wp--preset--spacing--large);
    border-radius: var(--wp--custom--border--radius--medium);
    box-shadow: var(--wp--preset--shadow--subtle);
}

.soa-notice-success {
    background-color: rgba(40, 167, 69, 0.1);
    border: 1px solid var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--secondary);
}

.soa-notice-error {
    background-color: rgba(220, 53, 69, 0.1);
    border: 1px solid #dc3545;
    color: #dc3545;
}

.soa-notice p {
    margin: 0;
}

/* Profile Header */
.soa-profile-header {
    display: flex;
    gap: var(--wp--preset--spacing--large);
    margin-bottom: var(--wp--preset--spacing--x-large);
    padding-bottom: var(--wp--preset--spacing--large);
    border-bottom: 2px solid var(--wp--custom--color--neutral--200);
}

.soa-profile-photo {
    flex-shrink: 0;
}

.soa-profile-photo img {
    width: 175px;
    height: 175px;
    border-radius: 50%;
    object-fit: cover;
}

.soa-profile-photo-placeholder {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: var(--wp--preset--color--quaternary);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 3px solid var(--wp--custom--color--neutral--200);
    box-shadow: var(--wp--preset--shadow--normal);
}

.soa-profile-photo-placeholder .dashicons {
    font-size: 60px;
    width: 60px;
    height: 60px;
    color: var(--wp--custom--color--neutral--500);
}

.soa-profile-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.soa-profile-info h1 {
    margin: 0;
    color: var(--wp--custom--color--neutral--900);
    font-size: var(--wp--preset--font-size--gigantic);
    font-weight: 600;
    line-height: var(--wp--custom--line-height--tiny);
    display: flex;
    align-items: flex-start;
    gap: 5px;
}

.qualification {
    font-style: italic;
}

.soa-member-company {
    font-size: var(--wp--preset--font-size--large);
    font-weight: 600;
    color: var(--wp--custom--color--neutral--700);
    margin: 0 0 var(--wp--preset--spacing--tiny) 0;
}

.soa-member-position {
    font-size: var(--wp--preset--font-size--normal);
    color: var(--soa-text-light);
    margin: 0 0 var(--wp--preset--spacing--small) 0;
}

.soa-member-type {
    display: inline-block;
    padding: var(--wp--preset--spacing--tiny) var(--wp--preset--spacing--small);
    background-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white);
    border-radius: var(--wp--custom--border--radius--small);
    font-size: var(--wp--preset--font-size--tiny);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: var(--wp--preset--spacing--small);
}

/* Profile Content Layout */
.profile-content {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: var(--wp--preset--spacing--medium);
    margin-bottom: var(--wp--preset--spacing--medium);
}

.profile-main {
    min-width: 0;
}

.profile-section {
    margin-bottom: var(--wp--preset--spacing--large);
    padding-bottom: var(--wp--preset--spacing--large);
    border-bottom: 1px solid var(--wp--custom--color--neutral--200);
}

.profile-section:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.profile-section h2 {
    margin: 0 0 var(--wp--preset--spacing--medium) 0;
    color: var(--wp--custom--color--neutral--900);
    font-size: var(--wp--preset--font-size--huge);
    font-weight: 600;
    line-height: var(--wp--custom--line-height--tiny);
}

.bio-content {
    color: var(--soa-text);
    line-height: var(--wp--custom--line-height--medium);
}

.bio-content p {
    margin-bottom: var(--wp--preset--spacing--small);
}

.bio-content p:last-child {
    margin-bottom: 0;
}

/* Contact Information */
.contact-info {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--medium);
}

.contact-item {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--tiny);
}

.contact-label {
    font-weight: 600;
    color: var(--wp--custom--color--neutral--700);
    font-size: var(--wp--preset--font-size--normal);
}

.contact-item a {
    color: var(--wp--preset--color--primary);
    text-decoration: none;
    transition: color 0.2s ease;
}

.contact-item a:hover {
    color: var(--wp--preset--color--secondary);
    text-decoration: underline;
}

.contact-item address {
    font-style: normal;
    color: var(--soa-text);
    line-height: var(--wp--custom--line-height--medium);
}

/* Profile Sidebar */
.profile-sidebar {
    min-width: 0;
}

.profile-widget {
    background: var(--wp--preset--color--white);
    border: 1px solid var(--wp--custom--color--neutral--300);
    border-radius: var(--wp--custom--border--radius--medium);
    padding: var(--wp--preset--spacing--medium);
    margin-bottom: var(--wp--preset--spacing--medium);
    box-shadow: var(--wp--preset--shadow--subtle);
}

.profile-widget:last-child {
    margin-bottom: 0;
}

.profile-widget h3 {
    margin: 0 0 var(--wp--preset--spacing--small) 0;
    color: var(--wp--custom--color--neutral--900);
    font-size: var(--wp--preset--font-size--large);
    font-weight: 600;
    line-height: var(--wp--custom--line-height--small);
}

.profile-widget p {
    margin: 0;
}

.member-status {
    display: inline-block;
    padding: var(--wp--preset--spacing--tiny) var(--wp--preset--spacing--small);
    border-radius: var(--wp--custom--border--radius--small);
    font-size: var(--wp--preset--font-size--tiny);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.member-status.status-active {
    background-color: rgba(40, 167, 69, 0.1);
    color: var(--wp--preset--color--secondary);
    border: 1px solid var(--wp--preset--color--secondary);
}

.member-status.status-inactive {
    background-color: rgba(108, 117, 125, 0.1);
    color: var(--wp--custom--color--neutral--600);
    border: 1px solid var(--wp--custom--color--neutral--500);
}

.member-groups-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.member-groups-list li {
    margin-bottom: var(--wp--preset--spacing--small);
    padding-bottom: var(--wp--preset--spacing--small);
    border-bottom: 1px solid var(--wp--custom--color--neutral--200);
}

.member-groups-list li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.member-groups-list a {
    color: var(--wp--preset--color--primary);
    text-decoration: none;
    transition: color 0.2s ease;
    font-weight: 500;
}

.member-groups-list a:hover {
    color: var(--wp--preset--color--secondary);
    text-decoration: underline;
}

/* Sector and Expertise Styles */
.sector-expertise-section {
    margin-bottom: var(--wp--preset--spacing--medium);
}

.sector-expertise-section:last-child {
    margin-bottom: 0;
}

.sector-expertise-section h4 {
    margin: 0 0 var(--wp--preset--spacing--small) 0;
    color: var(--wp--custom--color--neutral--700);
    font-size: var(--wp--preset--font-size--medium);
    font-weight: 600;
    line-height: var(--wp--custom--line-height--small);
}

.sector-list,
.expertise-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: var(--wp--preset--spacing--small);
}

.sector-list li,
.expertise-list li {
    margin-bottom: 0;
    padding-bottom: 0;
    padding-left: 32px;
    position: relative;
    color: var(--wp--custom--color--neutral--700);
    font-size: var(--wp--preset--font-size--small);
    line-height: var(--wp--custom--line-height--medium);
    min-height: 25px;
    display: flex;
    align-items: center;
}

/* Checkbox box (::after) */
.sector-list li:after,
.expertise-list li:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 25px;
    height: 25px;
    background: var(--wp--preset--color--secondary);
    border: 1px solid #0000001c;
    border-radius: 20px 0 20px 20px;
}

/* Checkmark (::before) */
.sector-list li:before,
.expertise-list li:before {
    content: '';
    position: absolute;
    left: 10px;
    top: 5px;
    width: 5px;
    height: 10px;
    border: solid #ffffff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    z-index: 25;
    display: block;
    box-sizing: unset;
}

.sector-list li:last-child,
.expertise-list li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
}

/* Profile Actions */
.profile-actions {
    margin-top: var(--wp--preset--spacing--large);
}

/* Responsive Design for Single Member Directory */
@media (max-width: 768px) {
    .soa-profile-header {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    
    .soa-profile-photo,
    .soa-profile-photo img,
    .soa-profile-photo-placeholder {
        width: 120px;
        height: 120px;
    }
    
    .soa-profile-photo-placeholder .dashicons {
        font-size: 50px;
        width: 50px;
        height: 50px;
    }
    
    .profile-content {
        grid-template-columns: 1fr;
        gap: var(--wp--preset--spacing--large);
    }
    
    .profile-sidebar {
        order: -1;
    }
}

/* Advisor Filter Styles */
.advisor-filters {
    display: none;
}

.advisor-filters.show {
    display: block;
}

.advisor-filters .filter-group {
    margin-top: var(--wp--preset--spacing--small);
}

/* Directory Filter Form Styles */
.directory-filters .filter-row {
    display: flex;
    flex-wrap: wrap;
    gap: var(--wp--preset--spacing--medium);
    align-items: flex-end;
}

.directory-filters .filter-group label {
    display: block;
    margin-bottom: var(--wp--preset--spacing--tiny);
    font-weight: 600;
    color: var(--wp--custom--color--neutral--900);
}

.directory-filters .filter-group select,
.directory-filters .filter-group input[type="text"] {
    width: 100%;
    padding: var(--wp--preset--spacing--small);
    border: 1px solid var(--wp--custom--color--neutral--300);
    border-radius: var(--wp--custom--border--radius--small);
    font-size: var(--wp--preset--font-size--normal);
}

.directory-filters .filter-group select:focus,
.directory-filters .filter-group input[type="text"]:focus {
    outline: none;
    border-color: var(--wp--preset--color--primary);
    box-shadow: 0 0 0 2px rgba(85, 156, 197, 0.1);
}

/* Responsive adjustments for filters */
@media (max-width: 768px) {
    .directory-filters .filter-row {
        flex-direction: column;
    }
    
    .directory-filters .filter-group {
        width: 100%;
        min-width: unset;
    }
}
