 .linkList__heading  {
         margin-bottom: 1rem;
 }
#deadlines h5 {
    margin-top: 1rem;
    margin-bottom: 1rem;
}
#deadlines {
    font-size:.85rem;
}
 .screenshot {
	 border: 0.1rem solid #cccccc;
	 cursor: zoom-in;
}
 .modal {
	 display: none;
	 position: fixed;
	 z-index: 9999;
	 left: 0;
	 top: 0;
	 width: 100%;
	 height: 100%;
	 overflow: auto;
	 background-color: rgba(0, 0, 0, 0.7);
	 display: flex;
	 justify-content: center;
	 align-items: center;
}
 .modal-container {
	 position: relative;
	 max-width: 80%;
	 max-height: 80%;
}
 .modal-content {
	 margin: auto;
	 display: block;
	 max-width: 100%;
	 max-height: 100%;
}
 .close {
	 color: #fff;
	 position: absolute;
	 top: -10px;
	 right: -30px;
	 font-size: 35px;
	 font-weight: bold;
}
 .close:hover, .close:focus {
	 color: #999;
	 text-decoration: none;
	 cursor: pointer;
}
 .accounting-list {
	 margin-top: 1rem;
	 margin-bottom: 1rem;
}
 .accounting-list li {
	 margin-bottom: 0.75rem;
}
 .blocky-list {
    margin-top: 1rem;
    margin-bottom: 1rem;
    list-style-type: none;
    padding-inline-start: 0rem;
    display: flex;
    flex-wrap: wrap;
}
 .blocky-list li {
    margin: 0.25rem;
    padding: 0.75rem;
    background-color: #f2f2f2;
    flex: 1;
    min-width: 30%;
}

/* Shared base styles for both accounting-table and acct-no-high-table */
.accounting-table,
.acct-no-high-table {
    border-collapse: separate;
    border-spacing: 0;
    font-size: .875rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
    border-left: 1px solid #cccccc;
    border-right: 1px solid #cccccc;
}

/* Zebra striping for both table types */
.accounting-table tr:nth-of-type(even),
.acct-no-high-table tr:nth-of-type(even) {
    background-color: #fafafa;
}

/* Header styling for tables WITH thead */
.accounting-table thead tr,
.acct-no-high-table thead tr {
    background-color: #096995;
    color: #ffffff;
}

/* Header styling for tables WITHOUT thead (first row becomes header) */
.accounting-table:not(:has(thead)) tr:first-child,
.acct-no-high-table:not(:has(thead)) tr:first-child {
    background-color: #096995;
    color: #ffffff;
}

/* Prevent hover effect on header rows for both */
.accounting-table thead tr:hover,
.accounting-table:not(:has(thead)) tr:first-child:hover,
.acct-no-high-table thead tr:hover,
.acct-no-high-table:not(:has(thead)) tr:first-child:hover {
    background-color: #096995;
}

/* Cell styling for both table types */
.accounting-table th, 
.accounting-table td,
.acct-no-high-table th, 
.acct-no-high-table td {
    padding: 0.75rem 0.75rem 0.75rem 0.75rem;
    position: relative;
    border-bottom: 1px solid #cccccc;
    font-weight: 400;
}

/* ONLY accounting-table gets the hover highlight effect */
.accounting-table tr:hover {
    background-color: #F7EB5F;
}

.accounting-table-sections {
    border-collapse: separate;
    border-spacing: 0;
    font-size: .875rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
    border-left: 1px solid #cccccc;
    border-right: 1px solid #cccccc;
}

.accounting-table-sections tr.accounting-table-section-a {
    background-color: #ffffff;
}

.accounting-table-sections tr.accounting-table-section-b {
    background-color: #fafafa;
}

.accounting-table-sections tr:hover {
    background-color: #F7EB5F;
}

.accounting-table-sections:not(:has(thead)) tr:first-child {
    background-color: #096995;
    color: #ffffff;
}

.accounting-table-sections thead tr {
    background-color: #096995;
    color: #ffffff;
}

.accounting-table-sections thead tr:hover,
.accounting-table-sections:not(:has(thead)) tr:first-child:hover {
    background-color: #096995;
}

.accounting-table-sections th, 
.accounting-table-sections td {
    padding: 0.75rem 0.75rem 0.75rem 0.75rem;
    position: relative;
    border-bottom: 1px solid #cccccc;
}

.accounting-table-divider {
    border-bottom: 2px dashed #666666 !important;
}

/* Payroll Calendar Functionality */
/* Past pay period styling */
.past-pay-period {
    opacity: 0.6;
    background-color: #f5f5f5 !important;
}

/* Hide past periods by default for BOTH table types */
.payroll-calendar-table tbody tr.past-pay-period,
.payroll-deadlines-table tbody tr.past-pay-period {
    display: none;
}

.payroll-calendar-table.show-past tbody tr.past-pay-period,
.payroll-deadlines-table.show-past tbody tr.past-pay-period {
    display: table-row;
}

/* Heading and button container - flexbox with wrapping */
.payroll-header-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 30px;
    margin-bottom: 0;
}

.payroll-header-container h2 {
    margin: 0;
    flex: 1 1 auto;
    min-width: 200px;
}

/* Toggle button styling */
.payroll-toggle-btn {
    background-color: #0064a4;
    color: white;
    border: none;
    padding: 10px 20px;
    font-size: 14px;
    cursor: pointer;
    border-radius: 4px;
    transition: background-color 0.3s;
    white-space: nowrap;
    flex-shrink: 0;
}

.payroll-toggle-btn:hover {
    background-color: #004c7a;
}

.payroll-toggle-btn:focus {
    outline: 2px solid #ffd200;
    outline-offset: 2px;
}

/* Base cell styling for explainer-table - applies to all cells */
.explainer-table td,
.explainer-table th {
    border: 1px solid #000000;
    padding: 0.75rem 0.75rem 0.75rem 0.75rem;
}

/* Header styling for th tags (when properly using semantic markup) */
.explainer-table th {
    color: #ffffff;
    background-color: #096995;
}

/* Fallback: Header styling for first column when no th tags exist */
.explainer-table:not(:has(th)) td:first-child {
    color: #ffffff;
    background-color: #096995;
}

/* White text for paragraphs and bold in headers (both th and fallback td:first-child) */
.explainer-table th p, 
.explainer-table th p b,
.explainer-table:not(:has(th)) td:first-child p, 
.explainer-table:not(:has(th)) td:first-child p b {
    color: #ffffff;
}

/* Second column width */
.explainer-table td:nth-child(2) {
    width: 67%;
}

/* Heading elements within explainer-table */
.explainer-table h1, 
.explainer-table h2, 
.explainer-table h3, 
.explainer-table h4, 
.explainer-table h5, 
.explainer-table h6 {
    margin-top: 0.5rem;
    color: #ffffff;
}
 .contents {
	 background-color: #fafafa;
	 border-radius: 5px;
	 border: 1px solid #cccccc;
	 padding: 1rem 1rem 0.5rem 1rem;
	 width: 80%;
	 height: auto;
	 margin-top: 0rem;
	 margin-bottom: 1rem;
}
 .acct-info-box.widget > div {
	 border-image: linear-gradient(#0064a4, #ffd200) 30;
	 border-width: 4px;
	 border-style: solid;
	 padding:1rem;
}
 .secondaryNav li:first-child {
	 font-weight: bold;
	 font-size: 1.15rem;
	 font-family: var(--headings-font-family);
	 color: #0064a4;
}
 button.dfa-accordion {
	 background-color: #eeeeee;
	 margin-bottom: 0.25rem;
}
 .dfa-accordion-panel a:not([class^="button"]) {
	 background: linear-gradient(to top, #ffd200 50%, transparent 50%);
	 background-position: 50% 0%;
	 background-repeat: no-repeat;
	 background-size: 100% 200%;
	 border-bottom: 2px solid #ffd200;
	 transition: background-position .25s,.25s;
	 color: inherit;
}
 .dfa-accordion-panel a:hover:not([class^="button"]) {
	 background: linear-gradient(to top, #ffd200 50%, transparent 50%);
	 background-position: 50% 100%;
	 background-repeat: no-repeat;
	 background-size: 100% 200%;
	 border-bottom: 2px solid #ffd200;
	 transition: background-position .25s,.25s;
	 color: inherit;
	 text-decoration: none;
}
 .acct-contact-table {
	 border-collapse: separate;
	 border-spacing: 0;
	 font-size: 0.875rem;
	 margin-top: 1rem;
	 margin-bottom: 1rem;
	 border-left:1px solid #cccccc;
	 border-right:1px solid #cccccc;
	 width:100%;
}
 .acct-contact-table tr:nth-of-type(even) {
	 background-color: #fafafa;
}
 .acct-contact-table tr:first-child {
	 background-color: #096995;
	 color: #ffffff;
}
 .acct-contact-table tr:first-child td:first-child {
	 width:20%;
}
 .acct-contact-table tr:first-child td:nth-of-type(2) {
	 width:65%;
}
 .acct-contact-table tr:first-child td:nth-of-type(3) {
	 width:15%;
}
 .acct-contact-table th, .acct-contact-table td {
	 padding: 0.75rem 0.75rem 0.75rem 0.75rem;
	 position: relative;
	 border-bottom:1px solid #cccccc;
}
 .acct-contact-table-subhead {
	 position: relative;
	 border-bottom:1px solid #cccccc;
	 background-color: #cccccc;
	 text-align: center;
}
 .acct-contact-table-callout {
	 position: relative;
	 border-bottom:1px solid #cccccc;
	 background-color: #f7eb5f;
	 text-align: center;
}

 .acct-no-high-table-subhead {
	 position: relative;
	 border-bottom:1px solid #cccccc;
	 background-color: #cccccc;
	 text-align: center;
}
 .acct-no-high-table-callout {
	 position: relative;
	 border-bottom:1px solid #cccccc;
	 background-color: #f7eb5f;
	 text-align: center;
}
 .accounting-proc {
	 list-style-type: none;
	 margin: 0;
	 padding: 0;
	 overflow: hidden;
	 display:flex;
	 flex-wrap: wrap;
}
 .accounting-proc li {
	 background-color:#f2f2f2;
	 padding: 0.5rem;
	 margin:0.2rem;
	 font-size:0.875rem;
	 flex: 1;
	 max-width:33%;
}
 .news-showcase {
	 background-color: #FFFFFF;
	 background-image: url('https://dev.accounting.uci.edu/_img/illustrations/full-width-grit-yellow.png');
	 background-size: cover;
}
 .gold-background {
	 background-color: #ffd200;
}
 .blue-background {
	 background-color: #0064a4;
}
 .light-blue-background {
	 background-color: #00b0ca;
}
 .gray-background {
	 background-color: #c6beb5;
}
 .red-text {
	 color: #FF0000;
}
 .gold-text {
	 color: #ffd200;
}
 .blue-text {
	 color: #0064a4;
}
.uci-tabs .nav-tabs {
  display: flex;
  border-bottom: 1px solid #dee2e6;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}

.uci-tabs .nav-item {
  margin-bottom: -1px;
}

.uci-tabs .nav-link {
  display: block;
  padding: 0.5rem 1rem;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
  text-decoration: none;
}

.uci-tabs .nav-link.active {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}

.uci-tabs .tab-content {
  padding: 1rem;
  border: 1px solid #dee2e6;
  border-top: none;
}

.uci-tabs .tab-pane {
  display: none;
}

.uci-tabs .tab-pane.active {
  display: block;
}

.uci-tabs .fade {
  transition: opacity 0.15s linear;
}

.uci-tabs .fade:not(.show) {
  opacity: 0;
}

.uci-tabs .fade.show {
  opacity: 1;
}
.acct-cell-border-right {
    border-right: 4px dashed #ccc;
}
#table-of-contents {
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 0.375rem;
    padding: 1.5rem;
}

#table-of-contents h3 {
    color: #0064a4; /* UCI Blue */
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0 0 1rem 0;
    border-bottom: 2px solid #0064a4;
    padding-bottom: 0.5rem;
}

#table-of-contents ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#table-of-contents li {
    margin: 0.5rem 0;
    line-height: 1.4;
}

/* More specific selectors to override CMS styles */
#table-of-contents a,
#table-of-contents a:not([class^=button]) {
    color: #0064a4 !important;
    text-decoration: none !important;
    display: block;
    transition: color 0.2s ease !important;
    
    /* Override the CMS background gradient styles */
    background: none !important;
    background-image: none !important;
    background-position: initial !important;
    background-repeat: initial !important;
    background-size: initial !important;
    border-bottom: none !important;
}

#table-of-contents a:hover,
#table-of-contents a:not([class^=button]):hover {
    color: #ffd200 !important; /* UCI Gold */
    text-decoration: underline !important;
    background: none !important;
    border-bottom: none !important;
}

#table-of-contents a:focus,
#table-of-contents a:not([class^=button]):focus {
    color: #ffd200 !important;
    outline: 2px solid #0064a4;
    outline-offset: 2px;
    background: none !important;
    border-bottom: none !important;
}

/* Indentation for different heading levels */
#table-of-contents .toc-h2 { 
    padding-left: 0; 
    font-weight: 600; 
}
#table-of-contents .toc-h3 { 
    padding-left: 1rem; 
}
#table-of-contents .toc-h4 { 
    padding-left: 2rem; 
}
#table-of-contents .toc-h5 { 
    padding-left: 3rem; 
}
#table-of-contents .toc-h6 { 
    padding-left: 4rem; 
}

/* Active state styling */
#table-of-contents a.active,
#table-of-contents a.active:not([class^=button]) {
    color: #ffd200 !important;
    font-weight: 600;
    background-color: rgba(255, 210, 0, 0.1) !important;
    border-radius: 0.25rem;
    padding: 0.25rem 0.5rem !important;
    margin: 0 -0.5rem;
    border-bottom: none !important;
}