/* Official updates workspace: shared card rhythm across both portals. */
html body:is([data-peso-page='jobseeker-announcements'],[data-peso-page='employer-announcements']) :is(#cardsGrid,.announcement-grid) {
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: 20px !important;
  align-items: start;
}
html body:is([data-peso-page='jobseeker-announcements'],[data-peso-page='employer-announcements']) :is(#cardsGrid > .card,.announce-item) {
  min-width: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--card-border, #cbded4) !important;
  border-radius: 16px !important;
  overflow: hidden;
  box-shadow: 0 4px 16px rgba(0,30,18,.05) !important;
  transform: none !important;
}
html body[data-peso-page='jobseeker-announcements'] #cardsGrid > .card[hidden] { display: none !important; }
html body:is([data-peso-page='jobseeker-announcements'],[data-peso-page='employer-announcements']) :is(.card-content,.announce-content) { padding: 18px !important; }
html body:is([data-peso-page='jobseeker-announcements'],[data-peso-page='employer-announcements']) :is(.card-title,.announce-title) {
  font-family: 'Plus Jakarta Sans',Arial,sans-serif !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  margin: 10px 0 !important;
  overflow-wrap: anywhere;
}
html body:is([data-peso-page='jobseeker-announcements'],[data-peso-page='employer-announcements']) :is(.card-text,.announce-text) { font-size: .875rem !important; line-height: 1.75 !important; overflow-wrap: anywhere; }
html body[data-peso-page='jobseeker-announcements'] .filter-chips { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; margin: 20px 0 !important; }
html body[data-peso-page='jobseeker-announcements'] .filter-chips .chip { width: auto !important; min-height: 40px; padding: 9px 16px !important; font-size: .8rem !important; font-weight: 600 !important; border-radius: 10px !important; }
html body[data-peso-page='jobseeker-announcements'] :is(.card-meta,.jobfair-details) { display: flex !important; flex-wrap: wrap !important; gap: 8px 12px !important; font-size: .75rem !important; }
html body[data-peso-page='jobseeker-announcements'] .jobfair-status { padding: 5px 9px !important; border-radius: 7px !important; font-size: .7rem !important; font-weight: 700 !important; }
html body[data-peso-page='jobseeker-announcements'] .jobfair-status.ended { background: #e8edf0 !important; color: #354552 !important; -webkit-text-fill-color: #354552 !important; }
html body[data-peso-page='jobseeker-announcements'] .jobfair-status.upcoming { background: #e0f1e7 !important; color: #075338 !important; -webkit-text-fill-color: #075338 !important; }
html body[data-peso-page='jobseeker-announcements'] .interest-btn:not(:disabled) { background: #087443 !important; color: #fff !important; -webkit-text-fill-color: #fff !important; min-height: 44px; }
html body[data-peso-page='jobseeker-announcements'] .card-image-wrap { height: auto !important; aspect-ratio: 16 / 9; }
html body[data-peso-page='jobseeker-announcements'] .card-image { width: 100% !important; height: 100% !important; object-fit: contain !important; }
@media(max-width:1100px) {
  html body:is([data-peso-page='jobseeker-announcements'],[data-peso-page='employer-announcements']) :is(#cardsGrid,.announcement-grid) { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media(max-width:640px) {
  html body:is([data-peso-page='jobseeker-announcements'],[data-peso-page='employer-announcements']) :is(#cardsGrid,.announcement-grid) { grid-template-columns: minmax(0,1fr) !important; gap: 16px !important; }
}
