.profile-main {
    background-color: #1a1a18;
    padding: 20px clamp(30px, 4vw, 80px);
}


.profile-office {
    display: flex;
    align-items: stretch;
    gap: 35px;

    width: 100%;
    box-sizing: border-box;

    background-color: #242421;
    border: 1px solid #555;
    border-radius: 6px;

    padding: 30px;
    margin-bottom: 20px;
}




.profile-office-photo {
    width: 260px;
    height: 260px;
    flex: 0 0 260px;
    align-self: flex-start;
}

.profile-office-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 6px;
    display: block;
}



.profile-office-info {
    flex: 1;

    display: flex;
    flex-direction: column;
}

.profile-office-name {
    color: white;
    font-family: Arial, sans-serif;
    font-size: 25px;

    margin: 0 0 8px 0;
}

.profile-office-title {
    color: #f15a24;
    font-family: Arial, sans-serif;
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 30px 0;
}



.profile-info-item {
    display: flex;
    align-items: center;

    gap: 12px;
    margin-bottom: 22px;
}

.profile-info-icon {
    width: 25px;
    flex-shrink: 0;
}

.profile-money-info-icon {
    width: 15px;
    flex-shrink:0;
}

.profile-info-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.profile-info-label {
    color: #bdbdbd;
    font-family: Arial, sans-serif;
    font-size: 16px;
    font-weight:600;
}

.profile-info-value {
    color: white;
    font-family: Arial, sans-serif;
    font-size: 15px;
}





.profile-record-meta {
    flex: 1.5;

    display: flex;
    flex-direction: column;
   
    gap: 20px;
}


/* Four metadata cards */

.profile-meta-cards {
    display: flex;
    
    gap: 15px;
}

.profile-meta-card {
    flex: 1;

    min-height: 140px;
 background-color: #1a1a18;
    border: 1px solid #555;
    border-radius: 6px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    font-family: Arial, sans-serif;
}

.profile-meta-icon {
    margin-bottom: 15px;
    height: 25px;
    width: 25px;
}

.profile-record-meta-icon {
    margin-bottom: 15px;
    height: 18px;
    width: 18px;
}

.profile-meta-number {
    color: #f15a24;

    font-size: 26px;
    font-weight: bold;

    margin-bottom: 8px;
}

.profile-meta-label {
    color: white;
    font-size: 15px;
 
}




.profile-last-record {
    flex: 1;

    border: 1px solid #555;
    border-radius: 6px;
 background-color: #1a1a18;
    display: flex;
    align-items: center;

    gap: 15px;
    padding: 15px 20px;
}

.profile-last-record-icon {
    width: 35px;
    flex-shrink: 0;
}

.profile-last-record-text {
    display: flex;
    flex-direction: column;
    gap: 5px;
   
}

.profile-info-value {
    font-size: 15px;
}

.profile-latest-uploader {
    flex: 1;

    border: 1px solid #555;
    border-radius: 6px;
    background-color: #1a1a18;

    display: flex;
    align-items: center;

    gap: 15px;
    padding: 15px 20px;
}


.profile-bottom-meta {
    display: flex;
    gap: 15px;
    flex: 1;
}


.profile-last-record,
.profile-latest-uploader {
    flex: 1;
}

.profile-filter-search {
    grid-column: span 2;
}




.profile-filters {
    width: 100%;
    box-sizing: border-box;

    background-color: #242421;
    border: 1px solid #555;
    border-radius: 6px;

    padding: 25px 30px;
    margin-bottom: 20px;

    font-family: Arial, sans-serif;
    display: none;
}



.profile-filters-header {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 22px;
}

.profile-filters-header h2 {
    margin: 0;

    color: #f2f2f2;
    font-size: 16px;
    font-weight: 700;
}

.profile-filters-icon {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
}



.profile-filters-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    column-gap: 30px;
    row-gap: 20px;
}



.profile-filter-field {
    display: flex;
    flex-direction: column;
    gap: 8px;

    min-width: 0;
}

.profile-filter-field label {
    color: #f2f2f2;

    font-size: 15px;
    font-weight: 500;
}




.profile-filter-field input,
.profile-filter-field select {
    width: 100%;
    height: 42px;

    box-sizing: border-box;

    background-color: #1a1a18;
    border: 1px solid #555;
    border-radius: 6px;

    color: #f2f2f2;

    font-family: Arial, sans-serif;
    font-size: 14px;

    padding: 0 12px;

    outline: none;
}

.profile-filter-field input:focus,
.profile-filter-field select:focus {
    border-color: #777;
}

.profile-filter-field input::placeholder {
    color: #888;
}




.profile-search-input {
    position: relative;
}

.profile-search-input input {
    padding-right: 40px;
}

.profile-search-icon {
    position: absolute;

    right: 12px;
    top: 50%;
    transform: translateY(-50%);

    width: 18px;
    height: 18px;

    pointer-events: none;
}




.profile-date-range {
    display: flex;
    align-items: center;

    height: 42px;

    box-sizing: border-box;

    background-color: #1a1a18;
    border: 1px solid #555;
    border-radius: 6px;

    padding: 0 10px;
}

.profile-date-range input {
    flex: 1;

    min-width: 0;
    height: 40px;

    padding: 0 6px;

    border: none;
    background-color: transparent;
}

.profile-date-arrow {
    color: #bdbdbd;

    padding: 0 6px;

    font-size: 14px;
    flex-shrink: 0;
}




.profile-filter-buttons {
    display: flex;
    justify-content: center;
    align-items: center;

    gap: 12px;

    margin-top: 22px;
}

.profile-apply-filters,
.profile-clear-filters {
    height: 42px;

    padding: 0 20px;

    border-radius: 6px;

    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;

    cursor: pointer;
}

.profile-apply-filters {
    background-color: #f15a24;
    border: 1px solid #f15a24;

    color: white;
}

.profile-clear-filters {
    background-color: #1a1a18;
    border: 1px solid #555;

    color: #f2f2f2;
}

.profile-apply-filters:hover {
    background-color: #ff6a32;
}

.profile-clear-filters:hover {
    border-color: #777;
}

.profile-apply-filters:active,
.profile-clear-filters:active {
    transform: translateY(1px);
}


.profile-date-range input::-webkit-calendar-picker-indicator {
    filter: invert(42%) sepia(98%) saturate(2470%) hue-rotate(351deg) brightness(101%) contrast(90%);
    cursor: pointer;
}



.profile-casefiles {
    width: 100%;
    box-sizing: border-box;

    margin-bottom: 20px;

    font-family: Arial, sans-serif;
}




.casefiles-section-header {
    width: 100%;
    box-sizing: border-box;

    display: flex;
    align-items: center;

    gap: 10px;

    padding: 16px 25px;
    margin-bottom: 8px;

    background-color: #242421;

    border: 1px solid #555;
    border-radius: 6px;
}

.casefiles-section-header h2 {
    margin: 0;

    color: #f2f2f2;

    font-size: 16px;
    font-weight: 700;
}

.casefiles-header-icon {
    width: 24px;
    height: 24px;

    flex-shrink: 0;
}

.casefiles-count {
    min-width: 22px;
    height: 22px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0 5px;

    background-color: #3a3a36;

    border-radius: 4px;

    color: #f2f2f2;

    font-size: 13px;
}



.casefiles-list {
    width: 100%;

    display: flex;
    flex-direction: column;

     gap: 10px;
}




.casefile-row-container {
    width: 100%;
    box-sizing: border-box;
    /* margin-bottom: 10px; */
}

.casefile-row-container:last-child {
    margin-bottom: 0;
}




.casefile-row {
    width: 100%;
    min-height: 52px;

    box-sizing: border-box;

    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 25px;

    background-color: #242421;

    border: 1px solid #555;
    border-radius: 6px;

    color: #f2f2f2;

    font-family: Arial, sans-serif;

    text-align: left;

    cursor: pointer;

    transition:
        background-color 0.15s ease,
        border-color 0.15s ease;
}

.casefile-row:hover {
    background-color: #20201e;
    border-color: #777;
}


/* OPEN ROW */

.casefile-row[aria-expanded="true"] {
    border-color: #f15a24;
  background-color: #1a1a18;
    border-radius: 6px 6px 0 0;
}




.casefile-university {
     width: auto;
    flex-shrink: 0;

    color: #f2f2f2;
    font-size: 14px;
    font-weight: 700;
}

.casefile-title {
    flex: 1;

    min-width: 0;

    color: #f2f2f2;

    font-size: 14px;
    font-weight: 500;
}

.casefile-row-arrow {
    width: 20px;

    flex-shrink: 0;

    margin-left: 20px;

    color: #f15a24;

    font-size: 16px;

    text-align: center;
}




.casefile-dropdown {
    width: 100%;
    box-sizing: border-box;

    padding: 20px 25px 25px;

    background-color: #242421;

    border-left: 1px solid #555;
    border-right: 1px solid #555;
    border-bottom: 1px solid #555;

    border-radius: 0 0 6px 6px;
   
}

.casefile-dropdown[hidden] {
    display: none;
}




.casefile-full-link-container {
    margin-bottom: 18px;
    margin-left: 50px;
}

.casefile-full-link {
    color: #f15a24;

    font-size: 14px;
    font-weight: 600;

    text-decoration: none;
}

.casefile-full-link:hover {
    text-decoration: underline;
}




.casefile-dropdown-information {
    width: 100%;
    box-sizing: border-box;
    display: flex;

    gap: 25px;
    padding: 0 50px;

    margin-bottom: 22px;
}




.casefile-description-container {
    flex: 1;

    min-width: 0;

    background-color: #1a1a18;

    border: 1px solid #555;
    border-radius: 6px;

    overflow: hidden;
}

.casefile-description-container h3 {
    margin: 0;

    padding: 12px 15px;

    border-bottom: 1px solid #555;

    color: #f2f2f2;

    font-size: 14px;
    font-weight: 600;
}

.casefile-description-scroll {
    height: 220px;

    box-sizing: border-box;

    padding: 12px 18px;

    overflow-y: auto;

     border-bottom: 1px solid #555;
}

.casefile-description-scroll p {
    margin: 0 0 15px;

    color: #d5d5d5;

    font-size: 14px;
    line-height: 1.55;
}

.casefile-description-scroll p:last-child {
    margin-bottom: 0;
}




html {
    scrollbar-width: thin;
    scrollbar-color: #555550 #0d0d0c;
}

/* Chrome / Edge / Safari */
html::-webkit-scrollbar {
    width: 6px;
}

html::-webkit-scrollbar-track {
    background: #0d0d0c;
}

html::-webkit-scrollbar-thumb {
    background: #555550;
    border-radius: 999px;
}

html::-webkit-scrollbar-thumb:hover {
    background: #f15a24;
}

html::-webkit-scrollbar-corner {
    background: #0d0d0c;
}


.casefile-metadata-container {
    flex: 1;

    min-width: 0;

    background-color: #1a1a18;

    border: 1px solid #555;
    border-radius: 6px;

    overflow: hidden;
}

.casefile-metadata-container h3 {
    margin: 0;

    padding: 12px 15px;

    border-bottom: 1px solid #555;

    color: #f2f2f2;

    font-size: 14px;
    font-weight: 600;
}




.casefile-metadata-row {
    min-height: 38px;
    box-sizing: border-box;

    display: grid;
    grid-template-columns: 24px 1fr 1fr;
    align-items: center;

    column-gap: 10px;
    padding: 0 15px;

    border-bottom: 1px solid #3a3a36;
}

.casefile-metadata-row:last-child {
    border-bottom: none;
}


/* ICON */

.casefile-metadata-icon {
    width: 24px;
    height: 24px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.casefile-metadata-icon img {
    width: 17px;
    height: 17px;

    display: block;
}


/* LABEL */

.casefile-metadata-row > span:first-of-type {
    color: #bdbdbd;

    font-size: 13px;
}


/* VALUE */

.casefile-metadata-row > span:last-of-type {
    color: #f2f2f2;

    font-size: 13px;
}




.casefile-related-records {
    width: calc(100% - 100px);
    margin-left: 50px;
    margin-right: 50px;
}

.casefile-related-records h3 {
    margin: 0 0 10px;

    color: #f2f2f2;

    font-size: 14px;
    font-weight: 500;
}




.casefile-records-table-container {
    width: 100%;

    box-sizing: border-box;

    overflow-x: auto;

    background-color: #1a1a18;

    border: 1px solid #555;
    border-radius: 6px;
}

.casefile-description-container {
    flex: 2;
}

.casefile-metadata-container {
    flex: 1;
}




.casefiles-pagination {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 8px;

    margin-top: 12px;
}


.casefile-description-footer {
    height: 45px;
    box-sizing: border-box;

    display: flex;
    align-items: center;
    justify-content: flex-end;

    padding: 0 15px;

    border-top: 1px solid #555;
}

.casefile-description-word-count {
    color: #bdbdbd;
    font-size: 12px;
}




.casefile-records-grid {
    width: 100%;
    font-family: Arial, sans-serif;
    color: #f2f2f2;
}


/* SAME COLUMNS FOR HEADER + EVERY ROW */

.casefile-records-grid-header,
.casefile-record-row {
    display: grid;

    grid-template-columns:
    30px /* No */
        2.4fr   /* Title */
        1.1fr   /* Record Type */
        1.1fr   /* Presentation */
        1.1fr   /* Assessment */
        1fr     /* Document Date */
        1fr     /* Upload Date */
        1.1fr   /* Office */
        0.7fr   /* View Count */
        0.8fr;  /* Actions */

    align-items: center;
    column-gap: 20px;
    padding: 10px 14px;
    box-sizing: border-box;
}

/* HEADER */

.casefile-records-grid-header {
    font-size: 12px;
    color: #bdbdbd;

    border-bottom: 1px solid #555;
}


/* RECORD ROW */

.casefile-record-row {
    min-height: 46px;

    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.15s ease;
    border-bottom: 1px solid #3a3a36;
}

.casefile-record-row:hover {
    background-color: #242421;
}

.casefile-record-row:last-child {
    border-bottom: none;
}


/* TITLE + FILE ICON */

.casefile-record-title {
    display: flex;
    align-items: center;

    gap: 10px;

    min-width: 0;
}

.casefile-record-title span {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.casefile-record-icon {
    width: 30px;
    height: 30px;

    flex-shrink: 0;

    object-fit: contain;
}


/* ACTION COLUMN */

.casefile-record-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.casefile-record-actions button {
    width: 24px;
    height: 24px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    background: transparent;
    border: 1px solid #444;
    border-radius: 3px;

    cursor: pointer;
}

.casefile-record-actions button:hover {
    background-color: #1a1a18;
    border-color: #f15a24;
}

.casefile-record-actions button img {
    width: 14px;
    height: 14px;

    display: block;
    object-fit: contain;
}



.casefile-record-actions button:active {
    transform: translateY(2px);
}


/* CENTER SELECTED CASEFILE RECORD COLUMNS */

/* No. */
.casefile-records-grid-header > div:nth-child(1),
.casefile-record-row > div:nth-child(1),

/* Record Type */
.casefile-records-grid-header > div:nth-child(3),
.casefile-record-row > div:nth-child(3),

/* Presentation Type */
.casefile-records-grid-header > div:nth-child(4),
.casefile-record-row > div:nth-child(4),

/* Assessment Type */
.casefile-records-grid-header > div:nth-child(5),
.casefile-record-row > div:nth-child(5),

/* Document Date */
.casefile-records-grid-header > div:nth-child(6),
.casefile-record-row > div:nth-child(6),

/* Upload Date */
.casefile-records-grid-header > div:nth-child(7),
.casefile-record-row > div:nth-child(7),

/* View Count */
.casefile-records-grid-header > div:nth-child(9),
.casefile-record-row > div:nth-child(9),

/* Actions */
.casefile-records-grid-header > div:nth-child(10),
.casefile-record-row > div:nth-child(10) {
    text-align: center;
    justify-self: center;
}




.record-presentation,
.record-assessment {
    display: inline-block;

    padding: 4px 9px;

    border: 1px solid;
    border-radius: 4px;

    font-size: 12px;
    font-weight: 600;
    line-height: 1;

    white-space: nowrap;
}


/* ABSURD */

.record-assessment.absurd {
    color: #ff9b73;
    background: rgba(241,90,36,.16);
    border-color: rgba(241,90,36,.28);
}


/* ROUTINE */

.record-assessment.routine {
    color: #8cb8ff;
    background: rgba(70,120,255,.15);
    border-color: rgba(70,120,255,.25);
}


/* RAW */

.record-presentation.raw {
    color: #d6d6d6;
    background: rgba(255,255,255,.08);
    border-color: rgba(255,255,255,.10);
}


/* EVIDENCE */

.record-presentation.evidence {
    color: #d4c2ff;
    background: rgba(130,90,255,.15);
    border-color: rgba(130,90,255,.25);
}


/* COMMENTARY */

.record-presentation.commentary {
    color: #93e39b;
    background: rgba(45,170,65,.15);
    border-color: rgba(45,170,65,.25);
}





.profile-series {
    width: 100%;
    box-sizing: border-box;

    margin-bottom: 20px;

    font-family: Arial, sans-serif;
}




.series-section-header {
    width: 100%;
    box-sizing: border-box;

    display: flex;
    align-items: center;

    gap: 10px;

    padding: 16px 25px;
    margin-bottom: 8px;

    background-color: #242421;

    border: 1px solid #555;
    border-radius: 6px;
}

.series-section-header h2 {
    margin: 0;

    color: #f2f2f2;

    font-size: 16px;
    font-weight: 700;
}

.series-header-icon {
    width: 24px;
    height: 24px;

    flex-shrink: 0;
}

.series-count {
    min-width: 22px;
    height: 22px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0 5px;

    background-color: #3a3a36;

    border-radius: 4px;

    color: #f2f2f2;

    font-size: 13px;
}


.series-list {
    width: 100%;

    display: flex;
    flex-direction: column;

    gap: 10px;
}



.series-row-container {
    width: 100%;
    box-sizing: border-box;
    
}

.series-row-container:last-child {
    margin-bottom: 0;
}


.series-row-count {
    min-width: 22px;
    height: 22px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0 5px;

    background-color: #3a3a36;
    border-radius: 4px;

    color: #f2f2f2;
    font-size: 13px;
}




.series-row {
    width: 100%;
    min-height: 52px;

    box-sizing: border-box;

    display: flex;
    align-items: center;

    padding: 0 25px;
     gap: 10px;
    background-color: #242421;

    border: 1px solid #555;
    border-radius: 6px;

    color: #f2f2f2;

    font-family: Arial, sans-serif;

    text-align: left;

    cursor: pointer;

    transition:
        background-color 0.15s ease,
        border-color 0.15s ease;
}

.series-row:hover {
    background-color: #20201e;
    border-color: #777;
}


/* OPEN ROW */

.series-row[aria-expanded="true"] {
    background-color: #1a1a18;
    border-color: #f15a24;
    border-radius: 6px 6px 0 0;
}



.series-university {
    width: auto;

    flex-shrink: 0;

    color: #f2f2f2;

    font-size: 14px;
    font-weight: 700;
}

.series-title {
    flex: 1;

    min-width: 0;

    color: #f2f2f2;

    font-size: 14px;
    font-weight: 500;
}

.series-row-arrow {
    width: 20px;

    flex-shrink: 0;

    margin-left: 20px;

    color: #f15a24;

    font-size: 16px;

    text-align: center;
}




.series-dropdown {
    width: 100%;
    box-sizing: border-box;

    padding: 20px 25px 25px;

    background-color: #242421;

    border-left: 1px solid #555;
    border-right: 1px solid #555;
    border-bottom: 1px solid #555;

    border-radius: 0 0 6px 6px;
}

.series-dropdown[hidden] {
    display: none;
}



.series-full-link-container {
    margin-bottom: 18px;
    margin-left: 50px;
}

.series-full-link {
    color: #f15a24;

    font-size: 14px;
    font-weight: 600;

    text-decoration: none;
}

.series-full-link:hover {
    text-decoration: underline;
}



.series-dropdown-information {
    width: 100%;
    box-sizing: border-box;

    display: flex;

    gap: 25px;
    padding: 0 50px;

    margin-bottom: 22px;
}




.series-description-container {
    flex: 2;

    min-width: 0;

    background-color: #1a1a18;

    border: 1px solid #555;
    border-radius: 6px;

    overflow: hidden;
}

.series-description-container h3 {
    margin: 0;

    padding: 12px 15px;

    border-bottom: 1px solid #555;

    color: #f2f2f2;

    font-size: 14px;
    font-weight: 600;
}

.series-description-scroll {
    height: 220px;

    box-sizing: border-box;

    padding: 12px 18px;

    overflow-y: auto;

    border-bottom: 1px solid #555;
}

.series-description-scroll p {
    margin: 0 0 15px;

    color: #d5d5d5;

    font-size: 14px;
    line-height: 1.55;
}

.series-description-scroll p:last-child {
    margin-bottom: 0;
}


.series-description-footer {
    height: 45px;
    box-sizing: border-box;

    display: flex;
    align-items: center;
    justify-content: flex-end;

    padding: 0 15px;

    border-top: 1px solid #555;
}

.series-description-word-count {
    color: #bdbdbd;
    font-size: 12px;
}



.series-metadata-container {
    flex: 1;

    min-width: 0;

    background-color: #1a1a18;

    border: 1px solid #555;
    border-radius: 6px;

    overflow: hidden;
}

.series-metadata-container h3 {
    margin: 0;

    padding: 12px 15px;

    border-bottom: 1px solid #555;

    color: #f2f2f2;

    font-size: 14px;
    font-weight: 600;
}



.series-metadata-row {
    min-height: 38px;
    box-sizing: border-box;

    display: grid;
    grid-template-columns: 24px 1fr 1fr;
    align-items: center;

    column-gap: 10px;
    padding: 0 15px;

    border-bottom: 1px solid #3a3a36;
}

.series-metadata-row:last-child {
    border-bottom: none;
}


/* ICON */

.series-metadata-icon {
    width: 24px;
    height: 24px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.series-metadata-icon img {
    width: 17px;
    height: 17px;

    display: block;
}


/* LABEL */

.series-metadata-row > span:first-of-type {
    color: #bdbdbd;

    font-size: 13px;
}


/* VALUE */

.series-metadata-row > span:last-of-type {
    color: #f2f2f2;

    font-size: 13px;
}




.series-related-records {
    width: calc(100% - 100px);
    margin-left: 50px;
    margin-right: 50px;
}

.series-related-records h3 {
    margin: 0 0 10px;

    color: #f2f2f2;

    font-size: 14px;
    font-weight: 500;
}




.series-records-table-container {
    width: 100%;

    box-sizing: border-box;

    overflow-x: auto;

    background-color: #1a1a18;

    border: 1px solid #555;
    border-radius: 6px;
}



.series-pagination {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 8px;

    margin-top: 12px;
}




.series-records-grid {
    width: 100%;

    font-family: Arial, sans-serif;
    color: #f2f2f2;
}



.series-records-grid-header,
.series-record-row {
    display: grid;

    grid-template-columns:
    30px
        2.4fr   /* Title */
        1.1fr   /* Record Type */
        1.1fr   /* Presentation */
        1.1fr   /* Assessment */
        1fr     /* Document Date */
        1fr     /* Upload Date */
        1.1fr   /* Office */
        0.7fr   /* View Count */
        0.8fr;  /* Actions */

    align-items: center;

    column-gap: 20px;

    padding: 10px 14px;

    box-sizing: border-box;
}


/* HEADER */

.series-records-grid-header {
    font-size: 12px;

    color: #bdbdbd;

    border-bottom: 1px solid #555;
}


/* RECORD ROW */

.series-record-row {
    min-height: 46px;

    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.15s ease;

    border-bottom: 1px solid #3a3a36;
}


.series-record-row:hover {
    background-color: #242421;
}

.series-record-row:last-child {
    border-bottom: none;
}




.series-record-title {
    display: flex;
    align-items: center;

    gap: 10px;

    min-width: 0;
}

.series-record-title span {
    overflow: hidden;

    white-space: nowrap;

    text-overflow: ellipsis;
}

.series-record-icon {
    width: 30px;
    height: 30px;

    flex-shrink: 0;

    object-fit: contain;
}




.series-record-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.series-record-actions button {
    width: 24px;
    height: 24px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    background: transparent;
    border: 1px solid #444;
    border-radius: 3px;

    cursor: pointer;
}

.series-record-actions button:hover {
    background-color: #1a1a18;
    border-color: #f15a24;
}

.series-record-actions button img {
    width: 14px;
    height: 14px;

    display: block;
    object-fit: contain;
}

.series-record-actions button:active {
    transform: translateY(2px);
}
/* CENTER SELECTED SERIES RECORD COLUMNS */

/* No. */
.series-records-grid-header > div:nth-child(1),
.series-record-row > div:nth-child(1),

/* Record Type */
.series-records-grid-header > div:nth-child(3),
.series-record-row > div:nth-child(3),

/* Presentation Type */
.series-records-grid-header > div:nth-child(4),
.series-record-row > div:nth-child(4),

/* Assessment Type */
.series-records-grid-header > div:nth-child(5),
.series-record-row > div:nth-child(5),

/* Document Date */
.series-records-grid-header > div:nth-child(6),
.series-record-row > div:nth-child(6),

/* Upload Date */
.series-records-grid-header > div:nth-child(7),
.series-record-row > div:nth-child(7),

/* View Count */
.series-records-grid-header > div:nth-child(9),
.series-record-row > div:nth-child(9),

/* Actions */
.series-records-grid-header > div:nth-child(10),
.series-record-row > div:nth-child(10) {
    text-align: center;
    justify-self: center;
}




.profile-single-records {
    width: 100%;
    box-sizing: border-box;

    margin-top: 20px;

    font-family: Arial, sans-serif;
}



.single-records-section-header {
    width: 100%;
    box-sizing: border-box;

    display: flex;
    align-items: center;

    gap: 10px;

    padding: 14px 25px;
    margin-bottom: 10px;

    background: #242421;

    border: 1px solid #555;
    border-radius: 6px;
}


.single-records-section-header h2 {
    margin: 0;

    color: #f2f2f2;

    font-size: 16px;
    font-weight: 700;
}


.single-records-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 22px;
    height: 22px;

    padding: 0 6px;

    box-sizing: border-box;

    background: #3a3a36;

    border-radius: 4px;

    color: #f2f2f2;

    font-size: 12px;
    font-weight: 600;
}



.single-records-list {
    width: 100%;
    box-sizing: border-box;

    background: #242421;

    border: 1px solid #555;
    border-radius: 6px;

    overflow: hidden;
}




.single-records-grid-header,
.single-record-row {
    display: grid;

    grid-template-columns:
     30px      /* No. */
    2.4fr    /* Title */
    1.1fr    /* Record Type */
    1.1fr    /* Presentation Type */
    1.1fr    /* Assessment Type */
    1fr      /* Document Date */
    1fr      /* Upload Date */
    1.1fr    /* Office */
    0.7fr    /* View Count */
    0.8fr;   /* Actions */

    column-gap: 16px;

    align-items: center;

    width: 100%;

    box-sizing: border-box;
}



.single-records-grid-header {
    min-height: 42px;

    padding: 8px 14px;

    background: #242421;

    border-bottom: 1px solid #3a3a36;

    color: #f2f2f2;

    font-size: 12px;
    font-weight: 400;
}



.single-record-row {
    min-height: 55px;

    padding: 8px 14px;

    margin: 0;

    background: #242421;

    border: none;
    border-bottom: 1px solid #3a3a36;

    border-radius: 0;

    color: #f2f2f2;

    font-size: 13px;

    transition: background-color 0.15s ease;
}


/* Remove separator from final record */

.single-record-row:last-child {
    border-bottom: none;
}


/* Entire record row illuminates */

.single-record-row:hover {
    background: #30302c;
}



.single-record-title {
    display: flex;
    align-items: center;

    gap: 9px;

    min-width: 0;
}


.single-record-title span {
    min-width: 0;

    overflow: hidden;

    white-space: nowrap;
    text-overflow: ellipsis;

    color: #f2f2f2;

    font-weight: 500;
}



.single-record-icon {
    width: 28px;
    height: 28px;

    flex-shrink: 0;

    display: block;

    object-fit: contain;
}



.single-record-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.single-record-actions button {
    width: 32px;
    height: 32px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    background-color: #1a1a18;

    /* stronger default border */
    border: 1px solid #666;
    border-radius: 4px;

    cursor: pointer;

    transition:
        border-color 0.12s ease,
        background-color 0.12s ease,
        transform 0.05s ease;
}

.single-record-actions button:hover {
    background-color: #20201e;
    border-color: #aaa;
}

.single-record-actions button:active {
    background-color: #242421;
    border-color: #f2f2f2;
    transform: translateY(2px);
}

.single-record-actions button img {
    width: 18px;
    height: 18px;

    display: block;
    object-fit: contain;
}


.record-presentation,
.record-assessment {
    display: inline-block;

    padding: 3px 9px;

    border: 1px solid;

    border-radius: 4px;

    font-size: 12px;
    font-weight: 600;

    line-height: 1.1;
}


/* RAW */

.record-presentation.raw {
    color: #d6d6d6;

    background: rgba(255,255,255,.08);

    border-color: rgba(255,255,255,.10);
}


/* EVIDENCE */

.record-presentation.evidence {
    color: #d4c2ff;

    background: rgba(130,90,255,.15);

    border-color: rgba(130,90,255,.25);
}


/* COMMENTARY */

.record-presentation.commentary {
    color: #93e39b;

    background: rgba(45,170,65,.15);

    border-color: rgba(45,170,65,.25);
}


/* ROUTINE */

.record-assessment.routine {
    color: #8cb8ff;

    background: rgba(70,120,255,.15);

    border-color: rgba(70,120,255,.25);
}


/* ABSURD */

.record-assessment.absurd {
    color: #ff9b73;

    background: rgba(241,90,36,.16);

    border-color: rgba(241,90,36,.28);
}



.profile-single-records {
    width: 100%;
    box-sizing: border-box;

    margin-top: 20px;

    font-family: Arial, sans-serif;
}




.single-records-section-header {
    width: 100%;
    box-sizing: border-box;

    display: flex;
    align-items: center;

    gap: 10px;

    padding: 14px 25px;
    margin-bottom: 10px;

    background: #242421;

    border: 1px solid #555;
    border-radius: 6px;
}


.single-records-section-header h2 {
    margin: 0;

    color: #f2f2f2;

    font-size: 16px;
    font-weight: 700;
}


.single-records-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 22px;
    height: 22px;

    padding: 0 6px;

    box-sizing: border-box;

    background: #3a3a36;

    border-radius: 4px;

    color: #f2f2f2;

    font-size: 12px;
    font-weight: 600;
}


.single-records-list {
    width: 100%;
    box-sizing: border-box;

    background: #242421;

    border: 1px solid #555;
    border-radius: 6px;

    overflow: hidden;
}


.single-records-grid-header {
    min-height: 42px;

    padding: 8px 14px;

    background: #242421;

    border-bottom: 1px solid #3a3a36;

    color: #f2f2f2;

    font-size: 12px;
    font-weight: 400;
}



.single-record-row {
    min-height: 55px;

    padding: 8px 14px;

    margin: 0;

    background: #242421;

    border: none;
    border-bottom: 1px solid #3a3a36;

    border-radius: 0;

    color: #f2f2f2;

    font-size: 13px;

    transition: background-color 0.15s ease;
}


/* Remove separator from final record */

.single-record-row:last-child {
    border-bottom: none;
}


.single-record-row:hover {
    background: #30302c;
}



.single-record-title {
    display: flex;
    align-items: center;

    gap: 9px;

    min-width: 0;
}


.single-record-title span {
    min-width: 0;

    overflow: hidden;

    white-space: nowrap;
    text-overflow: ellipsis;

    color: #f2f2f2;

    font-weight: 500;
}



.single-record-icon {
    width: 28px;
    height: 28px;

    flex-shrink: 0;

    display: block;

    object-fit: contain;
}




.record-presentation,
.record-assessment {
    display: inline-block;

    padding: 3px 9px;

    border: 1px solid;

    border-radius: 4px;

    font-size: 12px;
    font-weight: 600;

    line-height: 1.1;
}


/* RAW */

.record-presentation.raw {
    color: #d6d6d6;

    background: rgba(255,255,255,.08);

    border-color: rgba(255,255,255,.10);
}


/* EVIDENCE */

.record-presentation.evidence {
    color: #d4c2ff;

    background: rgba(130,90,255,.15);

    border-color: rgba(130,90,255,.25);
}


/* COMMENTARY */

.record-presentation.commentary {
    color: #93e39b;

    background: rgba(45,170,65,.15);

    border-color: rgba(45,170,65,.25);
}


/* ROUTINE */

.record-assessment.routine {
    color: #8cb8ff;

    background: rgba(70,120,255,.15);

    border-color: rgba(70,120,255,.25);
}


/* ABSURD */

.record-assessment.absurd {
    color: #ff9b73;

    background: rgba(241,90,36,.16);

    border-color: rgba(241,90,36,.28);
}

.record-presentation,
.record-assessment {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 4px 9px;

    border: 1px solid;
    border-radius: 4px;

    font-size: 12px;
    font-weight: 600;

    line-height: 14px;
}


.casefile-row-count {
    min-width: 22px;
    height: 22px;

    display: flex;
    align-items: center;
    justify-content: center;
    
    padding: 0 5px;

    background-color: #3a3a36;

    border-radius: 4px;

    color: #f2f2f2;

    font-size: 13px;
}

.casefile-divider {
    color: #f15a24;
    font-size: 16px;
    flex-shrink: 0;
}


.single-record-number {
    text-align: center;
    color: white;
    font-size: 12px;
    font-weight: 600;
}


/* CENTER SELECTED SINGLE RECORD COLUMNS */

/* No. */
.single-records-grid-header > div:nth-child(1),
.single-record-row > div:nth-child(1),

/* Record Type */
.single-records-grid-header > div:nth-child(3),
.single-record-row > div:nth-child(3),

/* Presentation Type */
.single-records-grid-header > div:nth-child(4),
.single-record-row > div:nth-child(4),

/* Assessment Type */
.single-records-grid-header > div:nth-child(5),
.single-record-row > div:nth-child(5),

/* Document Date */
.single-records-grid-header > div:nth-child(6),
.single-record-row > div:nth-child(6),

/* Upload Date */
.single-records-grid-header > div:nth-child(7),
.single-record-row > div:nth-child(7),

/* View Count */
.single-records-grid-header > div:nth-child(9),
.single-record-row > div:nth-child(9),

/* Actions */
.single-records-grid-header > div:nth-child(10),
.single-record-row > div:nth-child(10) {
    text-align: center;
    justify-self: center;
}


/* =========================
   CASEFILE / SERIES STATUS TAG
========================= */

.casefile-status,
.series-record-status {
    display: inline-block !important;

    width: fit-content !important;
    padding: 4px 10px !important;

    color: #93e39b !important;
    background: rgba(45, 170, 65, 0.15) !important;
    border: 1px solid rgba(45, 170, 65, 0.25) !important;
    border-radius: 4px !important;

    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: normal !important;

    white-space: nowrap !important;
}


.casefile-record-title-link {
    display: block;
    width: 100%;
    max-width: 100%;

    padding: 0;
    margin: 0;

    border: none;
    outline: none;
    background: transparent;

    color: #ffffff;
    font-family: Arial, sans-serif;
    font-size: inherit;
    font-weight: inherit;
    text-align: left;

    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;

    cursor: pointer;
}

.casefile-record-title-link:hover {
    color: #fff;
    text-decoration: underline;
}

.casefile-record-title-link:focus {
    outline: none;
}

.casefile-record-title-link:active {
    transform: translateY(1px);
}


/* ===========================
   LOADING OVERLAY
=========================== */

.loading-overlay {
    position: fixed;
    inset: 0;

    display: flex;
    justify-content: center;
    align-items: center;

    background: rgba(0,0,0,.65);
    backdrop-filter: blur(2px);

    z-index: 999999;
}

.hidden {
    display: none;
}

.loading-modal {
    width: 420px;
    max-width: 90%;

    background: #1b1b1b;

    border: 1px solid rgba(241,90,36,.30);
    border-radius: 14px;

    padding: 40px;

    text-align: center;

    box-shadow:
        0 0 24px rgba(241,90,36,.22),
        0 0 50px rgba(241,90,36,.10),
        0 20px 60px rgba(0,0,0,.55);
}

.loading-circle {
    position: relative;

    width: 120px;
    height: 120px;

    margin: 0 auto 25px;
}

.loading-spinner {
    position: absolute;
    inset: 0;

    border: 8px solid #343434;
    border-top: 8px solid #f15a24;

    border-radius: 50%;

    animation: loading-spin 1s linear infinite;
}

.loading-percentage {
    position: absolute;
    inset: 0;

    display: flex;
    justify-content: center;
    align-items: center;

    font-size: 25px;
    font-weight: bold;
    font-family: Arial, sans-serif;
    color: white;
}

#loading-title {
    margin: 0 0 12px;

    color: #ffffff;
    font-size: 22px;
    font-family: Arial, sans-serif;
}

#loading-message {
    margin: 0 0 25px;

    color: #bdbdbd;
    font-size: 15px;
    line-height: 1.5;
    font-family: Arial, sans-serif;
}

.loading-bar {
    width: 100%;
    height: 10px;

    overflow: hidden;

    background: #343434;

    border-radius: 999px;
}

#loading-progress {
    width: 0%;
    height: 100%;

    background: #f15a24;

    transition: width .3s ease;
}

@keyframes loading-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   CASEFILE RECORD PAGINATION
========================================================= */

.casefile-record-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-top: 14px;
    padding-top: 14px;

    border-top: 1px solid #3a3a36;
}


/* LEFT — "1 to 10 of 52" */

.casefile-record-pagination-info {
    font-size: 13px;
    color: #fff;
}


/* RIGHT CONTROLS */

.casefile-record-pagination-controls {
    display: flex;
    align-items: center;
    gap: 8px;
}


/* PREVIOUS / NEXT */

.casefile-record-page-arrow {
    min-width: 32px;
    height: 32px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0 10px;

    background: #1a1a18;
    color: #fff;

    border: 1px solid #3a3a36;
    border-radius: 5px;

    font-size: 13px;
    cursor: pointer;

    transition:
        background 0.15s ease,
        border-color 0.15s ease;
}

.casefile-record-page-arrow:hover {
    background: #242421;
    border-color: #555;
}


/* CURRENT PAGE */

.casefile-record-page-active {
    min-width: 32px;
    height: 32px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0 10px;

    background: #f15a24;
    color: #fff;

    border: 1px solid #f15a24;
    border-radius: 5px;

    font-size: 13px;
    font-weight: 600;
}


.casefile-records-grid-body {
    min-height: 220px;
}


.casefile-description-scroll p {
    white-space: pre-line;
}


/* =========================================================
   RECORD VIEWER OVERLAY
========================================================= */

.record-viewer-overlay {
    position: fixed;
    inset: 0;
    z-index: 100000;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 28px;

    background: rgba(13, 13, 12, 0.82);
    backdrop-filter: blur(4px);

    font-family: Arial, sans-serif;
}

.record-viewer-overlay.hidden {
    display: none;
}


/* =========================================================
   MODAL
========================================================= */

.record-viewer-modal {
    width: min(1500px, 96vw);
    height: min(850px, 92vh);

    display: flex;
    flex-direction: column;

    background: #1a1a18;
    border: 1px solid #555;
    border-radius: 6px;

    color: #fff;

    overflow: hidden;

    box-shadow: 0 18px 55px rgba(0, 0, 0, 0.45);
}


/* =========================================================
   HEADER
========================================================= */

.record-viewer-header {
    flex: 0 0 auto;

    display: flex;
    align-items: flex-start;
    justify-content: space-between;

    gap: 20px;

    padding: 20px 24px 14px;

    background: #1a1a18;
}

.record-viewer-title-area {
    min-width: 0;

    display: flex;
    flex-direction: column;
    gap: 7px;

    font-size: 14px;
    line-height: 1.35;

    color: #d6d6d3;
}

.record-viewer-title-area strong {
    color: #fff;
    font-weight: 700;
}

.record-viewer-casefile-title,
.record-viewer-record-title {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.record-viewer-close {
    flex: 0 0 auto;

    width: 32px;
    height: 32px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    border: none;
    background: transparent;

    color: #aaa;
    font-family: Arial, sans-serif;
    font-size: 28px;
    line-height: 1;

    cursor: pointer;
}

.record-viewer-close:hover {
    color: #f15a24;
}


/* =========================================================
   MAIN BODY
========================================================= */

.record-viewer-body {
    flex: 1;
    min-height: 0;

    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(460px, 0.82fr);

    gap: 20px;

    padding: 0 20px 20px;
}


/* =========================================================
   LEFT DOCUMENT VIEWER
========================================================= */

.record-viewer-document {
    min-width: 0;
    min-height: 0;

    display: flex;
    flex-direction: column;

    background: #242421;
    border: 1px solid #555;
    border-radius: 5px;

    overflow: hidden;
}


/* =========================================================
   DOCUMENT TOOLBAR
========================================================= */

.record-viewer-toolbar {
    flex: 0 0 58px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 0 18px;

    background: #242421;
    border-bottom: 1px solid #555;
}


/* =========================================================
   DOWNLOAD BUTTON — LEFT
========================================================= */

.record-viewer-download-button {
    width: 32px;
    height: 32px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    background: #1a1a18;
    border: 1px solid #3a3a36;
    border-radius: 4px;

    cursor: pointer;
}

.record-viewer-download-button:hover {
    border-color: #f15a24;
}

.record-viewer-download-button img {
    width: 17px;
    height: 17px;

    display: block;
    object-fit: contain;
}


/* =========================================================
   ZOOM CONTROLS — RIGHT
========================================================= */

.record-viewer-zoom-controls {
    display: flex;
    align-items: center;
    gap: 12px;
}
.record-viewer-zoom-value {
    min-width: 52px;

    color: #fff;

    font-size: 13px;
    font-weight: 600;
    text-align: center;
}

.record-viewer-zoom-button {
    width: 32px;
    height: 32px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    background: #1a1a18;
    border: 1px solid #3a3a36;
    border-radius: 4px;

    color: #fff;

    font-family: Arial, sans-serif;
    font-size: 20px;
    line-height: 1;

    cursor: pointer;
}

.record-viewer-zoom-button:hover {
    border-color: #f15a24;
    color: #f15a24;
}

.record-viewer-zoom-button:active {
    transform: translateY(1px);
}


/* =========================================================
   DOCUMENT DISPLAY
========================================================= */

.record-viewer-document-container {
    position: relative;

    flex: 1;
    min-height: 0;
width: 100%;
    height: 100%;

    min-width: 0;
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;

    overflow: auto;

    background: #1a1a18;
}

.record-viewer-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 18px;

    color: #fff;
}

.record-viewer-placeholder-icon {
    width: 100px;
    height: 125px;
}

.record-viewer-placeholder-icon img {
    width: 100%;
    height: 100%;

    object-fit: contain;

    opacity: 0.65;
}

.record-viewer-placeholder-title {
    font-size: 27px;
    font-weight: 500;
    color: #fff;
}

.record-viewer-placeholder-type {
    font-size: 21px;
    color: #888;
}


/* =========================================================
   RIGHT INFORMATION PANEL
========================================================= */

.record-viewer-information {
    min-width: 0;
    min-height: 0;

    display: flex;
    flex-direction: column;

    background: #242421;
    border: 1px solid #555;
    border-radius: 5px;

    overflow: hidden;
}


/* =========================================================
   METADATA GRID
========================================================= */

.record-viewer-metadata {
    flex: 0 0 auto;

    display: grid;
    grid-template-columns: 1fr 1fr;

    background: #242421;

    border-bottom: 1px solid #555;
}

.record-viewer-meta-item {
    min-width: 0;
    min-height: 78px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;

    gap: 8px;

    padding: 14px 20px;

    border-bottom: 1px solid #3a3a36;
}

.record-viewer-meta-item:nth-child(odd) {
    border-right: 1px solid #3a3a36;
}

.record-viewer-meta-item:nth-last-child(-n + 2) {
    border-bottom: none;
}

.record-viewer-meta-label {
    color: #aaa;

    font-size: 13px;
    font-weight: 600;
}

.record-viewer-meta-value {
    max-width: 100%;

    color: #fff;

    font-size: 14px;
    line-height: 1.3;

    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* =========================================================
   PRESENTATION TAGS
   SAME TAG SYSTEM AS RECORD ROWS
========================================================= */

.record-viewer-meta-item .record-presentation {
    display: inline-flex;
    align-items: center;

    width: fit-content;

    padding: 4px 10px;

    border-radius: 4px;

    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;

    white-space: nowrap;
}


/* RAW */

.record-viewer-meta-item .record-presentation.raw {
    color: #fff;
    background: #333330;
    border: 1px solid #555;
}


/* EVIDENCE */

.record-viewer-meta-item .record-presentation.evidence {
    color: #cdb7ff;
    background: #2b2140;
    border: 1px solid #554078;
}


/* COMMENTARY */

.record-viewer-meta-item .record-presentation.commentary {
    color: #6cff8d;
    background: #16351d;
    border: 1px solid #286438;
}


/* =========================================================
   ASSESSMENT TAGS
========================================================= */

.record-viewer-meta-item .record-assessment {
    display: inline-flex;
    align-items: center;

    width: fit-content;

    padding: 4px 10px;

    border-radius: 4px;

    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;

    white-space: nowrap;
}


/* ROUTINE */

.record-viewer-meta-item .record-assessment.routine {
    color: #75a7ff;
    background: #172844;
    border: 1px solid #31558d;
}


/* ABSURD */

.record-viewer-meta-item .record-assessment.absurd {
    color: #ff875f;
    background: #3c1b10;
    border: 1px solid #813719;
}


/* =========================================================
   DESCRIPTION SECTION
========================================================= */

.record-viewer-description-section {
    flex: 0 0 auto;

    padding: 16px 18px 0;

    background: #242421;
}

.record-viewer-section-title {
    margin: 0 0 10px;

    color: #fff;

    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
}

.record-viewer-description {
    height: 150px;

    padding: 14px 16px;

    overflow-y: auto;
    overflow-x: hidden;

    box-sizing: border-box;

    background: #1a1a18;

    border-top: 1px solid #555;
    border-bottom: 1px solid #555;

    color: #d6d6d3;

    font-family: Arial, sans-serif;
    font-size: 13px;
    line-height: 1.55;

    white-space: pre-wrap;
    overflow-wrap: break-word;
}


/* =========================================================
   FILE TEXT SECTION
========================================================= */

.record-viewer-file-text-section {
    flex: 1;
    min-height: 0;

    display: flex;
    flex-direction: column;

    padding: 16px 18px 16px;

    background: #242421;
}

.record-viewer-file-text {
    flex: 1;
    min-height: 120px;

    padding: 14px 16px;

    overflow-y: auto;
    overflow-x: hidden;

    box-sizing: border-box;

    background: #1a1a18;

    border-top: 1px solid #555;
    border-bottom: 1px solid #555;

    color: #d6d6d3;

    font-family: Arial, sans-serif;
    font-size: 13px;
    line-height: 1.55;

    white-space: pre-wrap;
    overflow-wrap: break-word;
}


/* =========================================================
   COPY BUTTON
========================================================= */

.record-viewer-copy-container {
    flex: 0 0 auto;

    padding-top: 12px;
    
}

.record-viewer-copy-button {
    height: 34px;

    padding: 0 14px;

    background: #1a1a18;

    border: 1px solid #555;
    border-radius: 4px;

    color: #fff;

    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 600;

    cursor: pointer;


}

.record-viewer-copy-button:hover {
    border-color: #f15a24;
    color: #f15a24;
}

.record-viewer-copy-button:active {
    transform: translateY(1px);
}


/* =========================================================
   SCROLLBARS
========================================================= */

.record-viewer-document-container,
.record-viewer-description,
.record-viewer-file-text {
    scrollbar-width: thin;
    scrollbar-color: #555 #1a1a18;
}

.record-viewer-document-container::-webkit-scrollbar,
.record-viewer-description::-webkit-scrollbar,
.record-viewer-file-text::-webkit-scrollbar {
    width: 7px;
    height: 7px;
}

.record-viewer-document-container::-webkit-scrollbar-track,
.record-viewer-description::-webkit-scrollbar-track,
.record-viewer-file-text::-webkit-scrollbar-track {
    background: #1a1a18;
}

.record-viewer-document-container::-webkit-scrollbar-thumb,
.record-viewer-description::-webkit-scrollbar-thumb,
.record-viewer-file-text::-webkit-scrollbar-thumb {
    background: #555;
    border-radius: 10px;
}

.record-viewer-document-container::-webkit-scrollbar-thumb:hover,
.record-viewer-description::-webkit-scrollbar-thumb:hover,
.record-viewer-file-text::-webkit-scrollbar-thumb:hover {
    background: #666;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1000px) {

    .record-viewer-modal {
        width: 96vw;
        height: 94vh;
    }

    .record-viewer-body {
        grid-template-columns: 1fr;
        overflow-y: auto;
    }

    .record-viewer-document {
        min-height: 600px;
    }

    .record-viewer-information {
        min-height: 650px;
    }
}


/* =========================================================
   DOCUMENT VIEWPORT
   Allows movement when the document is larger than the box
   ========================================================= */

.record-viewer-document-area {
    position: relative;

    width: 100%;
    height: 100%;

    overflow: auto;

    /* prevents the browser from selecting/randomly dragging stuff */
    user-select: none;

    /* grab cursor for future drag-to-pan JS */
    cursor: grab;

    /* keeps scrolling contained inside the viewer */
    overscroll-behavior: contain;
}


/* While user is dragging the document */
.record-viewer-document-area.is-dragging {
    cursor: grabbing;
}


/* =========================================================
   ACTUAL DOCUMENT
   Apply this class to the PDF/image/document being displayed
   ========================================================= */

.record-viewer-document {
    display: block;

    /* VERY IMPORTANT:
       zoom grows outward from top-left instead of center */
    transform-origin: top left;

    /* JS will change the transform */
    transform: scale(1);

    /* don't let browser's normal image dragging interfere */
    user-select: none;
    -webkit-user-drag: none;
}


/* If the displayed record is an image */
.record-viewer-document img,
img.record-viewer-document {
    display: block;

    max-width: none;
    max-height: none;

    user-select: none;
    -webkit-user-drag: none;
}


.record-viewer-pdf {
    display: block;

    width: 100%;
    height: 100%;

    min-width: 100%;
    min-height: 100%;

    border: 0;
    margin: 0;
    padding: 0;

    background: #1a1a18;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1050px) {

    .record-viewer-overlay {
        padding: 16px;
    }

    .record-viewer-modal {
        width: 98vw;
        height: 94vh;
    }

    .record-viewer-body {
        grid-template-columns: minmax(0, 1fr) 340px;
    }

    .record-viewer-metadata-row {
        grid-template-columns: 125px minmax(0, 1fr);
    }
}


@media (max-width: 800px) {

    .record-viewer-overlay {
        padding: 8px;
    }

    .record-viewer-modal {
        width: 100%;
        height: 96vh;
    }

    .record-viewer-body {
        display: flex;
        flex-direction: column;

        overflow-y: auto;
    }

    .record-viewer-document-panel {
        min-height: 500px;

        border-right: none;
        border-bottom: 1px solid #555;
    }

    .record-viewer-details-panel {
        min-height: auto;
    }

    .record-viewer-details-scroll {
        overflow: visible;
    }
}


@media (max-width: 560px) {

    .record-viewer-header {
        padding: 14px;
    }

    .record-viewer-title {
        font-size: 16px;
    }

    .record-viewer-document-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .record-viewer-metadata-row {
        grid-template-columns: 1fr;
    }

    .record-viewer-metadata-label {
        border-bottom: 1px solid #3a3a36;
    }

    .record-viewer-footer {
        padding: 10px 14px;
    }

    .record-viewer-download {
        width: 100%;
    }
}


/* =========================================================
   RECORD VIEWER DOCUMENT FALLBACK
========================================================= */

.record-viewer-document-container > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 40px;

    margin: auto;

    padding: 0 16px;

    background: #f15a24;

    border: 1px solid #f15a24;
    border-radius: 5px;

    color: white;

    font-size: 13px;
    font-weight: 700;

    text-decoration: none;
}

.record-viewer-document-container > a:hover {
    background: #ff6a32;
    border-color: #ff6a32;
}


.record-share-message {
    position: fixed;

    left: 50%;
    top: 120px;

    transform: translateX(-50%);

    z-index: 10000;

    padding: 12px 22px;

    background: rgba(241, 90, 36, 0.16);
    border: 1px solid rgba(241, 90, 36, 0.65);
    border-radius: 5px;

    color: #ff8a60;

    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;

    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);

    backdrop-filter: blur(6px);

    white-space: nowrap;
}

.record-viewer-image {
    display: block;

    width: auto;
    height: auto;

    max-width: 100%;
    max-height: none;

    margin: 0 auto;

    object-fit: contain;
}

/* =========================================================
   1366px — OFFICE PROFILE
========================================================= */

@media (max-width: 1366px) {


    /* =====================================================
       PAGE
    ===================================================== */

    .profile-main {
        padding: 18px 30px;
    }


    /* =====================================================
       OFFICE PROFILE HEADER
    ===================================================== */

    .profile-office {
        gap: 24px;

        padding: 20px;
        margin-bottom: 18px;
    }


    /* =====================================================
       OFFICE PHOTO
    ===================================================== */

    .profile-office-photo {
        width: 200px;
        height: 200px;

        flex: 0 0 200px;
    }


    /* =====================================================
       OFFICE INFORMATION
    ===================================================== */

    .profile-office-info {
        min-width: 0;
    }

    .profile-office-name {
        font-size: 21px;

        margin-bottom: 6px;
    }

    .profile-office-title {
        font-size: 13px;

        margin-bottom: 20px;
    }

    .profile-info-item {
        gap: 9px;

        margin-bottom: 14px;
    }

    .profile-info-icon {
        width: 19px;

        flex: 0 0 19px;
    }

    .profile-money-info-icon {
        width: 12px;

        flex: 0 0 12px;
    }

    .profile-info-text {
        gap: 3px;

        min-width: 0;
    }

    .profile-info-label {
        font-size: 12px;
    }

    .profile-info-value {
        font-size: 11px;
    }


    /* =====================================================
       RECORD METADATA
    ===================================================== */

    .profile-record-meta {
        gap: 12px;

        min-width: 0;
    }


    /* =====================================================
       FOUR METADATA CARDS
    ===================================================== */

    .profile-meta-cards {
        gap: 10px;
    }

    .profile-meta-card {
        min-width: 0;
        min-height: 100px;

        padding: 10px 6px;

        box-sizing: border-box;
    }

    .profile-meta-icon {
        width: 18px;
        height: 18px;

        margin-bottom: 8px;
    }

    .profile-record-meta-icon {
        width: 14px;
        height: 14px;

        margin-bottom: 8px;
    }

    .profile-meta-number {
        font-size: 20px;

        margin-bottom: 5px;
    }

    .profile-meta-label {
        font-size: 11px;
    }


    /* =====================================================
       LAST RECORD + LATEST UPLOADER
    ===================================================== */

    .profile-bottom-meta {
        gap: 10px;
    }

    .profile-last-record,
    .profile-latest-uploader {
        min-width: 0;

        padding: 10px 14px;

        gap: 10px;
    }

    .profile-last-record-icon {
        width: 25px;

        flex: 0 0 25px;
    }

    .profile-last-record-text {
        gap: 3px;

        min-width: 0;
    }

    .profile-last-record .profile-info-label,
    .profile-latest-uploader .profile-info-label {
        font-size: 11px;
    }

    .profile-last-record .profile-info-value,
    .profile-latest-uploader .profile-info-value {
        font-size: 10px;
    }


    /* =====================================================
       FILTERS
    ===================================================== */

    .profile-filters {
        padding: 18px 22px;

        margin-bottom: 18px;
    }

    .profile-filters-header {
        gap: 9px;

        margin-bottom: 16px;
    }

    .profile-filters-header h2 {
        font-size: 13px;
    }

    .profile-filters-icon {
        width: 18px;
        height: 18px;
    }

    .profile-filters-grid {
        column-gap: 18px;
        row-gap: 14px;
    }

    .profile-filter-field {
        gap: 6px;
    }

    .profile-filter-field label {
        font-size: 11px;
    }

    .profile-filter-field input,
    .profile-filter-field select {
        height: 34px;

        padding: 0 9px;

        font-size: 10px;
    }

    .profile-search-input input {
        padding-right: 32px;
    }

    .profile-search-icon {
        right: 9px;

        width: 14px;
        height: 14px;
    }

    .profile-date-range {
        height: 34px;

        padding: 0 7px;
    }

    .profile-date-range input {
        height: 32px;

        padding: 0 4px;
    }

    .profile-date-arrow {
        padding: 0 4px;

        font-size: 11px;
    }

    .profile-filter-buttons {
        gap: 9px;

        margin-top: 16px;
    }

    .profile-apply-filters,
    .profile-clear-filters {
        height: 34px;

        padding: 0 15px;

        font-size: 11px;
    }


    /* =====================================================
       CASE FILE SECTION HEADER
    ===================================================== */

    .casefiles-section-header {
        gap: 8px;

        padding: 12px 18px;
        margin-bottom: 7px;
    }

    .casefiles-section-header h2 {
        font-size: 13px;
    }

    .casefiles-header-icon {
        width: 19px;
        height: 19px;
    }

    .casefiles-count,
    .casefile-row-count {
        min-width: 19px;
        height: 19px;

        padding: 0 4px;

        font-size: 10px;
    }

    .casefiles-list {
        gap: 8px;
    }


    /* =====================================================
       CASEFILE ROW
    ===================================================== */

    .casefile-row {
        min-height: 44px;

        gap: 8px;

        padding: 0 18px;
    }

    .casefile-university {
        font-size: 11px;
    }

    .casefile-divider {
        font-size: 10px;
    }

    .casefile-title {
        min-width: 0;

        font-size: 11px;

        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .casefile-row-arrow {
        width: 16px;

        margin-left: 12px;

        font-size: 12px;
    }


    /* =====================================================
       CASEFILE DROPDOWN
    ===================================================== */

    .casefile-dropdown {
        padding: 15px 18px 18px;
    }

    .casefile-full-link-container {
        margin-left: 32px;
        margin-bottom: 13px;
    }

    .casefile-full-link {
        font-size: 11px;
    }


    /* =====================================================
       DESCRIPTION + DETAILS
    ===================================================== */

    .casefile-dropdown-information {
        gap: 18px;

        padding: 0 32px;

        margin-bottom: 17px;
    }


    /* =====================================================
       DESCRIPTION
    ===================================================== */

    .casefile-description-container h3 {
        padding: 9px 11px;

        font-size: 11px;
    }

    .casefile-description-scroll {
        height: 175px;

        padding: 9px 13px;
    }

    .casefile-description-scroll p {
        margin-bottom: 10px;

        font-size: 10px;
        line-height: 1.45;
    }

    .casefile-description-footer {
        height: 34px;

        padding: 0 11px;
    }

    .casefile-description-word-count {
        font-size: 9px;
    }


    /* =====================================================
       CASEFILE DETAILS
    ===================================================== */

    .casefile-metadata-container h3 {
        padding: 9px 11px;

        font-size: 11px;
    }

    .casefile-metadata-row {
        min-height: 30px;

        grid-template-columns:
            18px
            1fr
            1fr;

        column-gap: 7px;

        padding: 0 11px;
    }

    .casefile-metadata-icon {
        width: 18px;
        height: 18px;
    }

    .casefile-metadata-icon img {
        width: 13px;
        height: 13px;
    }

    .casefile-metadata-row > span:first-of-type,
    .casefile-metadata-row > span:last-of-type {
        min-width: 0;

        font-size: 10px;
    }

    .casefile-status {
        font-size: 9px !important;
    }


    /* =====================================================
       RELATED RECORDS
    ===================================================== */

    .casefile-related-records {
        width: calc(100% - 64px);

        margin-left: 32px;
        margin-right: 32px;
    }

    .casefile-related-records h3 {
        margin-bottom: 8px;

        font-size: 11px;
    }


    /* =====================================================
       CASEFILE RECORD TABLE
    ===================================================== */

    .casefile-records-grid-header,
    .casefile-record-row {
        grid-template-columns:
            25px
            2.4fr
            1.1fr
            1.1fr
            1.1fr
            1fr
            1fr
            1.1fr
            0.7fr
            0.8fr;

        column-gap: 10px;

        padding: 8px 10px;
    }

    .casefile-records-grid-header {
        font-size: 9px;
    }

    .casefile-record-row {
        min-height: 38px;

        font-size: 10px;
    }

    .casefile-record-title {
        gap: 7px;
    }

    .casefile-record-icon {
        width: 22px;
        height: 22px;
    }

    .record-presentation,
    .record-assessment {
        padding: 3px 6px;

        font-size: 9px;
    }

    .casefile-record-actions {
        gap: 5px;
    }

    .casefile-record-actions button {
        width: 20px;
        height: 20px;
    }

    .casefile-record-actions button img {
        width: 11px;
        height: 11px;
    }


    /* =====================================================
       SERIES SECTION HEADER
    ===================================================== */

    .series-section-header {
        gap: 8px;

        padding: 12px 18px;
        margin-bottom: 7px;
    }

    .series-section-header h2 {
        font-size: 13px;
    }

    .series-header-icon {
        width: 19px;
        height: 19px;
    }

    .series-count,
    .series-row-count {
        min-width: 19px;
        height: 19px;

        padding: 0 4px;

        font-size: 10px;
    }

    .series-list {
        gap: 8px;
    }


    /* =====================================================
       SERIES ROW
    ===================================================== */

    .series-row {
        min-height: 44px;

        gap: 8px;

        padding: 0 18px;
    }

    .series-university {
        font-size: 11px;
    }

    .series-title {
        min-width: 0;

        font-size: 11px;

        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .series-row-arrow {
        width: 16px;

        margin-left: 12px;

        font-size: 12px;
    }


    /* =====================================================
       SERIES DROPDOWN
    ===================================================== */

    .series-dropdown {
        padding: 15px 18px 18px;
    }

    .series-full-link-container {
        margin-left: 32px;
        margin-bottom: 13px;
    }

    .series-full-link {
        font-size: 11px;
    }

    .series-dropdown-information {
        gap: 18px;

        padding: 0 32px;

        margin-bottom: 17px;
    }


    /* =====================================================
       SERIES DESCRIPTION
    ===================================================== */

    .series-description-container h3 {
        padding: 9px 11px;

        font-size: 11px;
    }

    .series-description-scroll {
        height: 175px;

        padding: 9px 13px;
    }

    .series-description-scroll p {
        margin-bottom: 10px;

        font-size: 10px;
        line-height: 1.45;
    }

    .series-description-footer {
        height: 34px;

        padding: 0 11px;
    }

    .series-description-word-count {
        font-size: 9px;
    }


    /* =====================================================
       SERIES DETAILS
    ===================================================== */

    .series-metadata-container h3 {
        padding: 9px 11px;

        font-size: 11px;
    }

    .series-metadata-row {
        min-height: 30px;

        grid-template-columns:
            18px
            1fr
            1fr;

        column-gap: 7px;

        padding: 0 11px;
    }

    .series-metadata-icon {
        width: 18px;
        height: 18px;
    }

    .series-metadata-icon img {
        width: 13px;
        height: 13px;
    }

    .series-metadata-row > span:first-of-type,
    .series-metadata-row > span:last-of-type {
        min-width: 0;

        font-size: 10px;
    }

    .series-record-status {
        font-size: 9px !important;
    }


    /* =====================================================
       SERIES RELATED RECORDS
    ===================================================== */

    .series-related-records {
        width: calc(100% - 64px);

        margin-left: 32px;
        margin-right: 32px;
    }

    .series-related-records h3 {
        margin-bottom: 8px;

        font-size: 11px;
    }


    /* =====================================================
       SERIES RECORD TABLE
    ===================================================== */

    .series-records-grid-header,
    .series-record-row {
        grid-template-columns:
            25px
            2.4fr
            1.1fr
            1.1fr
            1.1fr
            1fr
            1fr
            1.1fr
            0.7fr
            0.8fr;

        column-gap: 10px;

        padding: 8px 10px;
    }

    .series-records-grid-header {
        font-size: 9px;
    }

    .series-record-row {
        min-height: 38px;

        font-size: 10px;
    }

    .series-record-title {
        gap: 7px;
    }

    .series-record-icon {
        width: 22px;
        height: 22px;
    }

    .series-record-actions {
        gap: 5px;
    }

    .series-record-actions button {
        width: 20px;
        height: 20px;
    }

    .series-record-actions button img {
        width: 11px;
        height: 11px;
    }


    /* =====================================================
       SINGLE RECORD SECTION HEADER
    ===================================================== */

    .single-records-section-header {
        padding: 12px 18px;
    }

    .single-records-section-header h2 {
        font-size: 13px;
    }

    .single-records-count {
        min-width: 19px;
        height: 19px;

        font-size: 10px;
    }


    /* =====================================================
       SINGLE RECORD TABLE
    ===================================================== */

    .single-records-grid-header,
    .single-record-row {
        grid-template-columns:
            25px
            2.4fr
            1.1fr
            1.1fr
            1.1fr
            1fr
            1fr
            1.1fr
            0.7fr
            0.8fr;

        column-gap: 10px;

        padding: 8px 10px;
    }

    .single-records-grid-header {
        font-size: 9px;
    }

    .single-record-row {
        min-height: 38px;

        font-size: 10px;
    }

    .single-record-title {
        gap: 7px;
    }

    .single-record-icon {
        width: 22px;
        height: 22px;
    }

    .single-record-actions {
        gap: 5px;
    }

    .single-record-actions button {
        width: 20px;
        height: 20px;
    }

    .single-record-actions button img {
        width: 11px;
        height: 11px;
    }

}

/* =========================================================
   769px–1366px — OFFICE PROFILE
   COMPACT LAPTOP / SMALL DESKTOP
========================================================= */

@media (min-width: 769px) and (max-width: 1366px) {


    /* =====================================================
       PAGE
    ===================================================== */

    .profile-main {
        padding: 16px 14px;
    }


    /* =====================================================
       OFFICE PROFILE HEADER
    ===================================================== */

    .profile-office {
        gap: 20px;

        padding: 16px;
        margin-bottom: 16px;
    }


    /* =====================================================
       OFFICE PHOTO
    ===================================================== */

    .profile-office-photo {
        width: 165px;
        height: 165px;

        flex: 0 0 165px;
    }


    /* =====================================================
       OFFICE INFORMATION
    ===================================================== */

    .profile-office-info {
        min-width: 0;
    }

    .profile-office-name {
        font-size: 18px;
        line-height: 1.05;

        margin-bottom: 4px;
    }

    .profile-office-title {
        font-size: 11px;
        line-height: 1.1;

        margin-bottom: 14px;
    }

    .profile-info-item {
        gap: 7px;

        margin-bottom: 10px;
    }

    .profile-info-icon {
        width: 16px;

        flex: 0 0 16px;
    }

    .profile-money-info-icon {
        width: 10px;

        flex: 0 0 10px;
    }

    .profile-info-text {
        gap: 2px;

        min-width: 0;
    }

    .profile-info-label {
        font-size: 10px;
        line-height: 1.05;
    }

    .profile-info-value {
        font-size: 9px;
        line-height: 1.1;
    }


    /* =====================================================
       RECORD METADATA
    ===================================================== */

    .profile-record-meta {
        gap: 9px;

        min-width: 0;
    }


    /* =====================================================
       FOUR METADATA CARDS
    ===================================================== */

    .profile-meta-cards {
        gap: 7px;
    }

    .profile-meta-card {
        min-width: 0;
        min-height: 78px;

        padding: 7px 4px;

        box-sizing: border-box;
    }

    .profile-meta-icon {
        width: 14px;
        height: 14px;

        margin-bottom: 5px;
    }

    .profile-record-meta-icon {
        width: 11px;
        height: 11px;

        margin-bottom: 5px;
    }

    .profile-meta-number {
        font-size: 16px;
        line-height: 1;

        margin-bottom: 3px;
    }

    .profile-meta-label {
        font-size: 8px;
        line-height: 1.05;

        text-align: center;
    }


    /* =====================================================
       LAST RECORD + LATEST UPLOADER
    ===================================================== */

    .profile-bottom-meta {
        gap: 7px;
    }

    .profile-last-record,
    .profile-latest-uploader {
        min-width: 0;

        padding: 7px 10px;

        gap: 7px;
    }

    .profile-last-record-icon {
        width: 19px;

        flex: 0 0 19px;
    }

    .profile-last-record-text {
        gap: 2px;

        min-width: 0;
    }

    .profile-last-record .profile-info-label,
    .profile-latest-uploader .profile-info-label {
        font-size: 9px;
        line-height: 1.05;
    }

    .profile-last-record .profile-info-value,
    .profile-latest-uploader .profile-info-value {
        font-size: 8px;
        line-height: 1.05;
    }


    /* =====================================================
       FILTERS
    ===================================================== */

    .profile-filters {
        padding: 15px 16px;

        margin-bottom: 16px;
    }

    .profile-filters-header {
        gap: 7px;

        margin-bottom: 13px;
    }

    .profile-filters-header h2 {
        font-size: 11px;
    }

    .profile-filters-icon {
        width: 15px;
        height: 15px;
    }

    .profile-filters-grid {
        column-gap: 12px;
        row-gap: 11px;
    }

    .profile-filter-field {
        gap: 4px;
    }

    .profile-filter-field label {
        font-size: 9px;
    }

    .profile-filter-field input,
    .profile-filter-field select {
        height: 30px;

        padding: 0 7px;

        font-size: 9px;
    }

    .profile-search-input input {
        padding-right: 27px;
    }

    .profile-search-icon {
        right: 7px;

        width: 12px;
        height: 12px;
    }

    .profile-date-range {
        height: 30px;

        padding: 0 5px;
    }

    .profile-date-range input {
        height: 28px;

        padding: 0 3px;

        font-size: 8px;
    }

    .profile-date-arrow {
        padding: 0 3px;

        font-size: 9px;
    }

    .profile-filter-buttons {
        gap: 7px;

        margin-top: 13px;
    }

    .profile-apply-filters,
    .profile-clear-filters {
        height: 30px;

        padding: 0 12px;

        font-size: 9px;
    }


    /* =====================================================
       SECTION HEADERS
    ===================================================== */

    .casefiles-section-header,
    .series-section-header,
    .single-records-section-header {
        gap: 6px;

        padding: 9px 12px;

        margin-bottom: 6px;
    }

    .casefiles-section-header h2,
    .series-section-header h2,
    .single-records-section-header h2 {
        font-size: 10px;
    }

    .casefiles-header-icon,
    .series-header-icon {
        width: 15px;
        height: 15px;
    }

    .casefiles-count,
    .series-count,
    .casefile-row-count,
    .series-row-count,
    .single-records-count {
        min-width: 17px;
        height: 17px;

        padding: 0 3px;

        font-size: 8px;
    }

    .casefiles-list,
    .series-list {
        gap: 6px;
    }


    /* =====================================================
       CASEFILE / SERIES ROW
    ===================================================== */

    .casefile-row,
    .series-row {
        min-height: 36px;

        gap: 6px;

        padding: 0 12px;

        overflow: hidden;
    }

    .casefile-university,
    .series-university {
        flex-shrink: 0;

        font-size: 9px;
    }

    .casefile-divider {
        flex-shrink: 0;

        font-size: 8px;
    }

    .casefile-title,
    .series-title {
        flex: 1 1 auto;

        min-width: 0;

        font-size: 9px;
        line-height: 1.1;

        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .casefile-row-arrow,
    .series-row-arrow {
        width: 12px;

        flex: 0 0 12px;

        margin-left: 6px;

        font-size: 9px;
    }


    /* =====================================================
       DROPDOWNS
    ===================================================== */

    .casefile-dropdown,
    .series-dropdown {
        padding: 12px 10px 16px;
    }

    .casefile-full-link-container,
    .series-full-link-container {
        margin-left: 16px;
        margin-bottom: 10px;
    }

    .casefile-full-link,
    .series-full-link {
        font-size: 9px;
    }


    /* =====================================================
       DESCRIPTION + DETAILS
    ===================================================== */

    .casefile-dropdown-information,
    .series-dropdown-information {
        gap: 14px;

        padding: 0 16px;

        margin-bottom: 14px;
    }


    /* =====================================================
       DESCRIPTION
    ===================================================== */

    .casefile-description-container h3,
    .series-description-container h3 {
        padding: 7px 9px;

        font-size: 9px;
    }

    .casefile-description-scroll,
    .series-description-scroll {
        height: 145px;

        padding: 7px 10px;
    }

    .casefile-description-scroll p,
    .series-description-scroll p {
        margin-bottom: 7px;

        font-size: 8px;
        line-height: 1.35;
    }

    .casefile-description-footer,
    .series-description-footer {
        height: 27px;

        padding: 0 9px;
    }

    .casefile-description-word-count,
    .series-description-word-count {
        font-size: 7px;
    }


    /* =====================================================
       DETAILS
    ===================================================== */

    .casefile-metadata-container h3,
    .series-metadata-container h3 {
        padding: 7px 9px;

        font-size: 9px;
    }

    .casefile-metadata-row,
    .series-metadata-row {
        min-height: 25px;

        grid-template-columns:
            14px
            minmax(0, 1fr)
            minmax(0, 1fr);

        column-gap: 5px;

        padding: 0 9px;
    }

    .casefile-metadata-icon,
    .series-metadata-icon {
        width: 14px;
        height: 14px;
    }

    .casefile-metadata-icon img,
    .series-metadata-icon img {
        width: 10px;
        height: 10px;
    }

    .casefile-metadata-row > span:first-of-type,
    .casefile-metadata-row > span:last-of-type,
    .series-metadata-row > span:first-of-type,
    .series-metadata-row > span:last-of-type {
        min-width: 0;

        font-size: 8px;
        line-height: 1.1;
    }

    .casefile-status,
    .series-record-status {
        padding: 2px 4px !important;

        font-size: 7px !important;
    }


    /* =====================================================
       RELATED RECORDS
    ===================================================== */

    .casefile-related-records,
    .series-related-records {
        width: calc(100% - 32px);

        margin-left: 16px;
        margin-right: 16px;
    }

    .casefile-related-records h3,
    .series-related-records h3 {
        margin-bottom: 6px;

        font-size: 9px;
    }


    /* =====================================================
       HIDE OFFICE + VIEW COUNT

       8 = Office
       9 = View Count
    ===================================================== */

    .casefile-records-grid-header > div:nth-child(8),
    .casefile-record-row > div:nth-child(8),

    .casefile-records-grid-header > div:nth-child(9),
    .casefile-record-row > div:nth-child(9),

    .series-records-grid-header > div:nth-child(8),
    .series-record-row > div:nth-child(8),

    .series-records-grid-header > div:nth-child(9),
    .series-record-row > div:nth-child(9),

    .single-records-grid-header > div:nth-child(8),
    .single-record-row > div:nth-child(8),

    .single-records-grid-header > div:nth-child(9),
    .single-record-row > div:nth-child(9) {
        display: none;
    }


    /* =====================================================
       EIGHT REMAINING RECORD COLUMNS

       No.
       Title
       Record Type
       Presentation
       Assessment
       Document Date
       Upload Date
       Actions
    ===================================================== */

    .casefile-records-grid-header,
    .casefile-record-row,
    .series-records-grid-header,
    .series-record-row,
    .single-records-grid-header,
    .single-record-row {
        grid-template-columns:
            22px
            minmax(0, 2.5fr)
            0.9fr
            0.9fr
            0.9fr
            0.9fr
            0.9fr
            62px;

        column-gap: 6px;

        padding: 6px 7px;
    }


    /* =====================================================
       RECORD TABLE TEXT
    ===================================================== */

    .casefile-records-grid-header,
    .series-records-grid-header,
    .single-records-grid-header {
        font-size: 7px;
        line-height: 1.05;
    }

    .casefile-record-row,
    .series-record-row,
    .single-record-row {
        min-height: 32px;

        font-size: 8px;
        line-height: 1.05;
    }

    .casefile-record-number,
    .series-record-number,
    .single-record-number {
        font-size: 8px;
    }


    /* =====================================================
       RECORD TITLE + ICON
    ===================================================== */

    .casefile-record-title,
    .series-record-title,
    .single-record-title {
        gap: 4px;

        min-width: 0;
    }

    .casefile-record-title span,
    .series-record-title span,
    .single-record-title span {
        min-width: 0;

        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .casefile-record-icon,
    .series-record-icon,
    .single-record-icon {
        width: 16px;
        height: 16px;

        flex-shrink: 0;
    }


    /* =====================================================
       TAGS
    ===================================================== */

    .record-presentation,
    .record-assessment {
        padding: 2px 4px;

        font-size: 7px;
        line-height: 1;
    }


    /* =====================================================
       ACTION BUTTONS
    ===================================================== */

    .casefile-record-actions,
    .series-record-actions,
    .single-record-actions {
        gap: 3px;
    }

    .casefile-record-actions button,
    .series-record-actions button,
    .single-record-actions button {
        width: 18px;
        height: 18px;
    }

    .casefile-record-actions button img,
    .series-record-actions button img,
    .single-record-actions button img {
        width: 9px;
        height: 9px;
    }


    /* =====================================================
       PAGINATION
    ===================================================== */

    .casefiles-pagination,
    .series-pagination,
    .single-records-pagination,
    .casefile-record-pagination,
    .series-record-pagination {
        margin-top: 8px;
    }

    .casefile-record-pagination-info,
    .series-record-pagination-info,
    .single-record-pagination-info {
        font-size: 8px;
    }

}

/* =========================================================
   768px — OFFICE PROFILE
========================================================= */

@media (max-width: 768px) {


    /* =====================================================
       PAGE
    ===================================================== */

    .profile-main {
        padding: 14px 12px;
    }


    /* =====================================================
       OFFICE PROFILE HEADER
    ===================================================== */

    .profile-office {
        gap: 16px;

        padding: 14px;
        margin-bottom: 14px;

        align-items: stretch;
    }


    /* =====================================================
       OFFICE PHOTO
    ===================================================== */

    .profile-office-photo {
        width: 150px;
        height: 150px;

        flex: 0 0 150px;
    }


    /* =====================================================
       OFFICE INFORMATION
    ===================================================== */

    .profile-office-info {
        min-width: 0;
    }

    .profile-office-name {
        font-size: 17px;
        line-height: 1.05;

        margin-bottom: 4px;
    }

    .profile-office-title {
        font-size: 10px;
        line-height: 1.1;

        margin-bottom: 12px;
    }

    .profile-info-item {
        gap: 6px;

        margin-bottom: 8px;
    }

    .profile-info-icon {
        width: 14px;

        flex: 0 0 14px;
    }

    .profile-money-info-icon {
        width: 9px;

        flex: 0 0 9px;
    }

    .profile-info-text {
        gap: 2px;

        min-width: 0;
    }

    .profile-info-label {
        font-size: 9px;
        line-height: 1.05;
    }

    .profile-info-value {
        font-size: 8px;
        line-height: 1.1;

        overflow-wrap: break-word;
    }


    /* =====================================================
       RECORD METADATA
    ===================================================== */

    .profile-record-meta {
        min-width: 0;

        gap: 7px;
    }


    /* =====================================================
       FOUR METADATA CARDS
    ===================================================== */

    .profile-meta-cards {
        gap: 6px;
    }

    .profile-meta-card {
        min-width: 0;
        min-height: 68px;

        padding: 6px 3px;

        box-sizing: border-box;
    }

    .profile-meta-icon {
        width: 12px;
        height: 12px;

        margin-bottom: 4px;
    }

    .profile-record-meta-icon {
        width: 10px;
        height: 10px;

        margin-bottom: 4px;
    }

    .profile-meta-number {
        font-size: 14px;
        line-height: 1;

        margin-bottom: 3px;
    }

    .profile-meta-label {
        font-size: 7px;
        line-height: 1.05;

        text-align: center;
    }


    /* =====================================================
       LAST RECORD + LATEST UPLOADER
    ===================================================== */

    .profile-bottom-meta {
        gap: 6px;
    }

    .profile-last-record,
    .profile-latest-uploader {
        min-width: 0;

        padding: 6px 8px;

        gap: 6px;
    }

    .profile-last-record-icon {
        width: 16px;

        flex: 0 0 16px;
    }

    .profile-last-record-text {
        min-width: 0;

        gap: 2px;
    }

    .profile-last-record .profile-info-label,
    .profile-latest-uploader .profile-info-label {
        font-size: 8px;
        line-height: 1.05;
    }

    .profile-last-record .profile-info-value,
    .profile-latest-uploader .profile-info-value {
        font-size: 7px;
        line-height: 1.05;
    }


    /* =====================================================
       FILTERS
    ===================================================== */

    .profile-filters {
        padding: 12px 14px;

        margin-bottom: 14px;
    }

    .profile-filters-header {
        gap: 6px;

        margin-bottom: 10px;
    }

    .profile-filters-header h2 {
        font-size: 10px;
    }

    .profile-filters-icon {
        width: 14px;
        height: 14px;
    }

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

        column-gap: 9px;
        row-gap: 9px;
    }

    .profile-filter-field {
        gap: 4px;
    }

    .profile-filter-field label {
        font-size: 8px;
    }

    .profile-filter-field input,
    .profile-filter-field select {
        height: 27px;

        padding: 0 5px;

        font-size: 8px;
    }

    .profile-search-input input {
        padding-right: 24px;
    }

    .profile-search-icon {
        right: 6px;

        width: 10px;
        height: 10px;
    }

    .profile-date-range {
        height: 27px;

        padding: 0 4px;
    }

    .profile-date-range input {
        height: 25px;

        padding: 0 2px;

        font-size: 7px;
    }

    .profile-date-arrow {
        padding: 0 2px;

        font-size: 8px;
    }

    .profile-filter-buttons {
        gap: 6px;

        margin-top: 10px;
    }

    .profile-apply-filters,
    .profile-clear-filters {
        height: 27px;

        padding: 0 10px;

        font-size: 8px;
    }


    /* =====================================================
       SECTION HEADERS
    ===================================================== */

    .casefiles-section-header,
    .series-section-header,
    .single-records-section-header {
        gap: 5px;

        padding: 8px 10px;

        margin-bottom: 5px;
    }

    .casefiles-section-header h2,
    .series-section-header h2,
    .single-records-section-header h2 {
        font-size: 9px;
    }

    .casefiles-header-icon,
    .series-header-icon {
        width: 14px;
        height: 14px;
    }

    .casefiles-count,
    .series-count,
    .casefile-row-count,
    .series-row-count,
    .single-records-count {
        min-width: 16px;
        height: 16px;

        padding: 0 3px;

        font-size: 7px;
    }

    .casefiles-list,
    .series-list {
        gap: 5px;
    }


    /* =====================================================
       CASEFILE / SERIES ROW
    ===================================================== */

    .casefile-row,
    .series-row {
        min-height: 34px;

        gap: 5px;

        padding: 0 10px;

        overflow: hidden;
    }

    .casefile-university,
    .series-university {
        flex-shrink: 0;

        max-width: 145px;

        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;

        font-size: 8px;
    }

    .casefile-divider {
        flex-shrink: 0;

        font-size: 7px;
    }

    .casefile-title,
    .series-title {
        flex: 1 1 auto;

        min-width: 0;

        display: block;

        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;

        font-size: 8px;
        line-height: 1.1;
    }

    .casefile-row-arrow,
    .series-row-arrow {
        width: 11px;

        flex: 0 0 11px;

        margin-left: 4px;

        font-size: 8px;
    }


    /* =====================================================
       DROPDOWNS
    ===================================================== */

    .casefile-dropdown,
    .series-dropdown {
        padding: 10px 8px 13px;
    }

    .casefile-full-link-container,
    .series-full-link-container {
        margin-left: 12px;
        margin-bottom: 9px;
    }

    .casefile-full-link,
    .series-full-link {
        font-size: 8px;
    }


    /* =====================================================
       DESCRIPTION + DETAILS
       KEEP SIDE BY SIDE AT 768
    ===================================================== */

    .casefile-dropdown-information,
    .series-dropdown-information {
        display: flex;

        gap: 10px;

        padding: 0 12px;

        margin-bottom: 12px;
    }

    .casefile-description-container,
    .series-description-container {
        min-width: 0;
    }

    .casefile-metadata-container,
    .series-metadata-container {
        min-width: 0;
    }


    /* =====================================================
       DESCRIPTION
    ===================================================== */

    .casefile-description-container h3,
    .series-description-container h3 {
        padding: 6px 8px;

        font-size: 8px;
    }

    .casefile-description-scroll,
    .series-description-scroll {
        height: 130px;

        padding: 6px 8px;
    }

    .casefile-description-scroll p,
    .series-description-scroll p {
        margin-bottom: 6px;

        font-size: 7px;
        line-height: 1.3;
    }

    .casefile-description-footer,
    .series-description-footer {
        height: 24px;

        padding: 0 8px;
    }

    .casefile-description-word-count,
    .series-description-word-count {
        font-size: 7px;
    }


    /* =====================================================
       DETAILS
    ===================================================== */

    .casefile-metadata-container h3,
    .series-metadata-container h3 {
        padding: 6px 8px;

        font-size: 8px;
    }

    .casefile-metadata-row,
    .series-metadata-row {
        min-height: 23px;

        grid-template-columns:
            12px
            minmax(0, 0.9fr)
            minmax(0, 1.1fr);

        column-gap: 4px;

        padding: 0 7px;
    }

    .casefile-metadata-icon,
    .series-metadata-icon {
        width: 12px;
        height: 12px;
    }

    .casefile-metadata-icon img,
    .series-metadata-icon img {
        width: 8px;
        height: 8px;
    }

    .casefile-metadata-row > span:first-of-type,
    .casefile-metadata-row > span:last-of-type,
    .series-metadata-row > span:first-of-type,
    .series-metadata-row > span:last-of-type {
        min-width: 0;

        font-size: 7px;
        line-height: 1.05;
    }

    .casefile-status,
    .series-record-status {
        padding: 2px 4px !important;

        font-size: 6px !important;
    }


    /* =====================================================
       RELATED RECORDS
    ===================================================== */

    .casefile-related-records,
    .series-related-records {
        width: calc(100% - 36px);

        margin-left: 18px;
        margin-right: 18px;
    }

    .casefile-related-records h3,
    .series-related-records h3 {
        margin-bottom: 5px;

        font-size: 8px;
    }


    /* =====================================================
       HIDE TABLE COLUMNS

       7 = Upload Date
       8 = Office
       9 = View Count
    ===================================================== */

    .casefile-records-grid-header > div:nth-child(7),
    .casefile-record-row > div:nth-child(7),

    .casefile-records-grid-header > div:nth-child(8),
    .casefile-record-row > div:nth-child(8),

    .casefile-records-grid-header > div:nth-child(9),
    .casefile-record-row > div:nth-child(9),

    .series-records-grid-header > div:nth-child(7),
    .series-record-row > div:nth-child(7),

    .series-records-grid-header > div:nth-child(8),
    .series-record-row > div:nth-child(8),

    .series-records-grid-header > div:nth-child(9),
    .series-record-row > div:nth-child(9),

    .single-records-grid-header > div:nth-child(7),
    .single-record-row > div:nth-child(7),

    .single-records-grid-header > div:nth-child(8),
    .single-record-row > div:nth-child(8),

    .single-records-grid-header > div:nth-child(9),
    .single-record-row > div:nth-child(9) {
        display: none;
    }


    /* =====================================================
       SEVEN REMAINING COLUMNS

       No.
       Title
       Record Type
       Presentation
       Assessment
       Document Date
       Actions
    ===================================================== */

    .casefile-records-grid-header,
    .casefile-record-row,
    .series-records-grid-header,
    .series-record-row,
    .single-records-grid-header,
    .single-record-row {
        grid-template-columns:
            20px
            minmax(0, 2.5fr)
            0.9fr
            0.9fr
            0.9fr
            0.9fr
            60px;

        column-gap: 5px;

        padding: 5px 6px;
    }


    /* =====================================================
       TABLE TEXT
    ===================================================== */

    .casefile-records-grid-header,
    .series-records-grid-header,
    .single-records-grid-header {
        font-size: 6px;
        line-height: 1.05;
    }

    .casefile-record-row,
    .series-record-row,
    .single-record-row {
        min-height: 30px;

        font-size: 7px;
        line-height: 1.05;
    }

    .casefile-record-number,
    .series-record-number,
    .single-record-number {
        font-size: 7px;
    }


    /* =====================================================
       RECORD TITLE
    ===================================================== */

    .casefile-record-title,
    .series-record-title,
    .single-record-title {
        gap: 3px;

        min-width: 0;
    }

    .casefile-record-title span,
    .series-record-title span,
    .single-record-title span {
        min-width: 0;

        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .casefile-record-icon,
    .series-record-icon,
    .single-record-icon {
        width: 14px;
        height: 14px;

        flex-shrink: 0;
    }


    /* =====================================================
       TAGS
    ===================================================== */

    .record-presentation,
    .record-assessment {
        padding: 2px 3px;

        font-size: 6px;
        line-height: 1;
    }


    /* =====================================================
       ACTIONS
    ===================================================== */

    .casefile-record-actions,
    .series-record-actions,
    .single-record-actions {
        gap: 2px;
    }

    .casefile-record-actions button,
    .series-record-actions button,
    .single-record-actions button {
        width: 17px;
        height: 17px;
    }

    .casefile-record-actions button img,
    .series-record-actions button img,
    .single-record-actions button img {
        width: 8px;
        height: 8px;
    }


    /* =====================================================
       PAGINATION
    ===================================================== */

    .casefiles-pagination,
    .series-pagination,
    .single-records-pagination,
    .casefile-record-pagination,
    .series-record-pagination {
        margin-top: 7px;
    }

    .casefile-record-pagination-info,
    .series-record-pagination-info,
    .single-record-pagination-info {
        font-size: 7px;
    }

}

/* =========================================================
   480px — OFFICE PROFILE
========================================================= */

@media (max-width: 480px) {


    /* =====================================================
       PAGE
    ===================================================== */

    .profile-main {
        padding: 10px 8px;
    }


    /* =====================================================
       OFFICE PROFILE HEADER
    ===================================================== */

    .profile-office {
        display: grid;
        grid-template-columns: 105px minmax(0, 1fr);

        gap: 10px;

        padding: 10px;
        margin-bottom: 10px;

        align-items: start;
    }


    /* =====================================================
       OFFICE PHOTO
    ===================================================== */

    .profile-office-photo {
        width: 105px;
        height: 105px;

        flex: none;

        grid-column: 1;
        grid-row: 1;

        align-self: start;
    }

    .profile-office-photo img {
        width: 100%;
        height: 100%;

        display: block;

        object-fit: cover;

        border-radius: 4px;
    }


    /* =====================================================
       OFFICE INFORMATION
    ===================================================== */

    .profile-office-info {
        grid-column: 2;
        grid-row: 1;

        min-width: 0;

        display: flex;
        flex-direction: column;
    }

    .profile-office-name {
        margin: 0 0 3px;

        font-size: 13px;
        line-height: 1.05;

        overflow-wrap: break-word;
    }

    .profile-office-title {
        margin: 0 0 9px;

        font-size: 8px;
        line-height: 1.05;
    }

    .profile-info-item {
        gap: 5px;

        margin-bottom: 6px;

        min-width: 0;
    }

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

    .profile-info-icon {
        width: 12px;

        flex: 0 0 12px;
    }

    .profile-info-icon img {
        display: block;

        width: 100%;
        height: auto;
    }

    .profile-money-info-icon {
        width: 8px;

        flex: 0 0 8px;
    }

    .profile-info-text {
        gap: 1px;

        min-width: 0;
    }

    .profile-info-label {
        font-size: 7px;
        line-height: 1;
    }

    .profile-info-value {
        min-width: 0;

        font-size: 7px;
        line-height: 1.1;

        overflow-wrap: break-word;
    }


    /* =====================================================
       RECORD METADATA
       FULL WIDTH BELOW PHOTO + INFO
    ===================================================== */

    .profile-record-meta {
        grid-column: 1 / -1;
        grid-row: 2;

        width: 100%;
        min-width: 0;

        gap: 7px;

        margin-top: 8px;
    }


    /* =====================================================
       FOUR COUNT CARDS — ONE ROW
    ===================================================== */

    .profile-meta-cards {
        display: grid;

        grid-template-columns: repeat(4, minmax(0, 1fr));

        gap: 5px;

        width: 100%;
    }

    .profile-meta-card {
        min-width: 0;
        min-height: 64px;

        box-sizing: border-box;

        padding: 8px 2px 6px;

        display: flex;
        flex-direction: column;

        align-items: center;
        justify-content: center;
    }


    /* =====================================================
       COUNT CARD ICONS
       EXTRA SPACE BETWEEN ICON + NUMBER
    ===================================================== */

    .profile-meta-icon,
    .profile-record-meta-icon {
        display: flex;

        align-items: center;
        justify-content: center;

        flex: 0 0 auto;

        margin-top: 0;
        margin-bottom: 8px;
    }

    .profile-meta-icon {
        width: 11px;
        height: 11px;
    }

    .profile-record-meta-icon {
        width: 10px;
        height: 10px;
    }

    .profile-meta-icon img,
    .profile-record-meta-icon img {
        display: block;

        width: 100%;
        height: 100%;

        object-fit: contain;
    }

    .profile-meta-number {
        display: block;

        margin: 0 0 4px;

        font-size: 13px;
        line-height: 1;
    }

    .profile-meta-label {
        display: block;

        margin: 0;

        font-size: 6px;
        line-height: 1.05;

        text-align: center;

        white-space: nowrap;
    }


    /* =====================================================
       LAST RECORD + LATEST UPLOADER
       SIDE BY SIDE
    ===================================================== */

    .profile-bottom-meta {
        display: grid;

        grid-template-columns: repeat(2, minmax(0, 1fr));

        gap: 5px;

        width: 100%;
    }

    .profile-last-record,
    .profile-latest-uploader {
        min-width: 0;
        min-height: 48px;

        box-sizing: border-box;

        gap: 5px;

        padding: 6px 7px;
    }

    .profile-last-record-icon {
        width: 14px;

        flex: 0 0 14px;
    }

    .profile-last-record-icon img {
        display: block;

        width: 100%;
        height: auto;
    }

    .profile-last-record-text {
        min-width: 0;

        gap: 2px;
    }

    .profile-last-record .profile-info-label,
    .profile-latest-uploader .profile-info-label {
        font-size: 7px;
        line-height: 1;
    }

    .profile-last-record .profile-info-value,
    .profile-latest-uploader .profile-info-value {
        min-width: 0;

        font-size: 7px;
        line-height: 1.05;

        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }


    /* =====================================================
       FILTERS
    ===================================================== */

    .profile-filters {
        padding: 10px;

        margin-bottom: 10px;
    }

    .profile-filters-header {
        gap: 5px;

        margin-bottom: 8px;
    }

    .profile-filters-header h2 {
        font-size: 9px;
    }

    .profile-filters-icon {
        width: 12px;
        height: 12px;
    }

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

        column-gap: 7px;
        row-gap: 7px;
    }

    .profile-filter-search {
        grid-column: span 2;
    }

    .profile-filter-field {
        gap: 3px;
    }

    .profile-filter-field label {
        font-size: 7px;
    }

    .profile-filter-field input,
    .profile-filter-field select {
        height: 26px;

        padding: 0 5px;

        font-size: 7px;
    }

    .profile-search-input input {
        padding-right: 22px;
    }

    .profile-search-icon {
        right: 5px;

        width: 9px;
        height: 9px;
    }

    .profile-date-range {
        height: 26px;

        padding: 0 3px;
    }

    .profile-date-range input {
        height: 24px;

        padding: 0 1px;

        font-size: 6px;
    }

    .profile-date-arrow {
        padding: 0 1px;

        font-size: 7px;
    }

    .profile-filter-buttons {
        gap: 5px;

        margin-top: 8px;
    }

    .profile-apply-filters,
    .profile-clear-filters {
        height: 26px;

        padding: 0 8px;

        font-size: 7px;
    }


    /* =====================================================
       SECTION HEADERS
    ===================================================== */

    .casefiles-section-header,
    .series-section-header,
    .single-records-section-header {
        gap: 5px;

        padding: 8px 9px;

        margin-bottom: 5px;
    }

    .casefiles-section-header h2,
    .series-section-header h2,
    .single-records-section-header h2 {
        font-size: 9px;
    }

    .casefiles-header-icon,
    .series-header-icon {
        width: 13px;
        height: 13px;
    }

    .casefiles-count,
    .series-count,
    .casefile-row-count,
    .series-row-count,
    .single-records-count {
        min-width: 15px;
        height: 15px;

        padding: 0 2px;

        font-size: 7px;
    }

    .casefiles-list,
    .series-list {
        gap: 5px;
    }


    /* =====================================================
       CASEFILE + SERIES ROWS
    ===================================================== */

    .casefile-row,
    .series-row {
        min-height: 34px;

        gap: 4px;

        padding: 0 8px;

        overflow: hidden;
    }

    .casefile-university,
    .series-university {
        flex: 0 1 auto;

        min-width: 0;
        max-width: 100px;

        font-size: 7px;

        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .casefile-divider {
        flex: 0 0 auto;

        font-size: 6px;
    }

    .casefile-title,
    .series-title {
        flex: 1 1 0;

        min-width: 0;

        display: block;

        font-size: 7px;
        line-height: 1.05;

        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .casefile-row-arrow,
    .series-row-arrow {
        width: 9px;

        flex: 0 0 9px;

        margin-left: 2px;

        font-size: 7px;
    }


    /* =====================================================
       DROPDOWNS
    ===================================================== */

    .casefile-dropdown,
    .series-dropdown {
        padding: 9px 8px 11px;
    }

    .casefile-full-link-container,
    .series-full-link-container {
        margin: 0 0 8px 0;
    }

    .casefile-full-link,
    .series-full-link {
        font-size: 7px;
    }


    /* =====================================================
       DESCRIPTION + DETAILS
       STACK VERTICALLY
    ===================================================== */

    .casefile-dropdown-information,
    .series-dropdown-information {
        width: 100%;

        box-sizing: border-box;

        display: flex;
        flex-direction: column;

        gap: 7px;

        padding: 0;

        margin-bottom: 9px;
    }

    .casefile-description-container,
    .series-description-container,
    .casefile-metadata-container,
    .series-metadata-container {
        width: 100%;
        min-width: 0;

        box-sizing: border-box;
    }


    /* =====================================================
       DESCRIPTION
    ===================================================== */

    .casefile-description-container h3,
    .series-description-container h3 {
        padding: 6px 7px;

        font-size: 8px;
    }

    .casefile-description-scroll,
    .series-description-scroll {
        height: 105px;

        padding: 6px 7px;
    }

    .casefile-description-scroll p,
    .series-description-scroll p {
        margin-bottom: 5px;

        font-size: 7px;
        line-height: 1.3;
    }

    .casefile-description-footer,
    .series-description-footer {
        height: 22px;

        padding: 0 7px;
    }

    .casefile-description-word-count,
    .series-description-word-count {
        font-size: 6px;
    }


    /* =====================================================
       CASE FILE / SERIES DETAILS

       EMPLOYEE-PAGE STYLE:
       VALUES START IN THE MIDDLE AND ARE LEFT ALIGNED
    ===================================================== */

    .casefile-metadata-container h3,
    .series-metadata-container h3 {
        padding: 6px 7px;

        font-size: 8px;
    }

    .casefile-metadata-row,
    .series-metadata-row {
        min-height: 24px;

        grid-template-columns:
            13px
            minmax(0, 0.85fr)
            minmax(0, 1.15fr);

        column-gap: 4px;

        padding: 0 7px;
    }

    .casefile-metadata-icon,
    .series-metadata-icon {
        width: 13px;
        height: 13px;
    }

    .casefile-metadata-icon img,
    .series-metadata-icon img {
        width: 9px;
        height: 9px;
    }

    .casefile-metadata-row > span:first-of-type,
    .casefile-metadata-row > span:last-of-type,
    .series-metadata-row > span:first-of-type,
    .series-metadata-row > span:last-of-type {
        min-width: 0;

        font-size: 7px;
        line-height: 1.05;

        text-align: left;
    }

    .casefile-metadata-row > span:last-of-type,
    .series-metadata-row > span:last-of-type {
        justify-self: start;

        overflow-wrap: break-word;
    }

    .casefile-status,
    .series-record-status {
        justify-self: start !important;

        width: fit-content !important;

        padding: 2px 4px !important;

        font-size: 6px !important;
        line-height: 1 !important;
    }


    /* =====================================================
       RELATED RECORDS
       FULL DROPDOWN WIDTH
    ===================================================== */

    .casefile-related-records,
    .series-related-records {
        width: 100%;

        box-sizing: border-box;

        margin-left: 0;
        margin-right: 0;
    }

    .casefile-related-records h3,
    .series-related-records h3 {
        margin: 0 0 5px;

        font-size: 7px;
    }


    /* =====================================================
       TABLE CONTAINERS
    ===================================================== */

    .casefile-records-table-container,
    .series-records-table-container,
    .single-records-table-container {
        width: 100%;

        overflow: hidden;
    }


    /* =====================================================
       HIDE TABLE COLUMNS

       3 = Record Type
       7 = Upload Date
       8 = Office
       9 = View Count
    ===================================================== */

    .casefile-records-grid-header > div:nth-child(3),
    .casefile-record-row > div:nth-child(3),

    .casefile-records-grid-header > div:nth-child(7),
    .casefile-record-row > div:nth-child(7),

    .casefile-records-grid-header > div:nth-child(8),
    .casefile-record-row > div:nth-child(8),

    .casefile-records-grid-header > div:nth-child(9),
    .casefile-record-row > div:nth-child(9),

    .series-records-grid-header > div:nth-child(3),
    .series-record-row > div:nth-child(3),

    .series-records-grid-header > div:nth-child(7),
    .series-record-row > div:nth-child(7),

    .series-records-grid-header > div:nth-child(8),
    .series-record-row > div:nth-child(8),

    .series-records-grid-header > div:nth-child(9),
    .series-record-row > div:nth-child(9),

    .single-records-grid-header > div:nth-child(3),
    .single-record-row > div:nth-child(3),

    .single-records-grid-header > div:nth-child(7),
    .single-record-row > div:nth-child(7),

    .single-records-grid-header > div:nth-child(8),
    .single-record-row > div:nth-child(8),

    .single-records-grid-header > div:nth-child(9),
    .single-record-row > div:nth-child(9) {
        display: none;
    }


    /* =====================================================
       SIX REMAINING TABLE COLUMNS

       No.
       Title
       Presentation
       Assessment
       Document Date
       Actions
    ===================================================== */

    .casefile-records-grid-header,
    .casefile-record-row,
    .series-records-grid-header,
    .series-record-row,
    .single-records-grid-header,
    .single-record-row {
        grid-template-columns:
            16px
            minmax(0, 2.5fr)
            minmax(38px, 0.75fr)
            minmax(38px, 0.75fr)
            minmax(48px, 0.85fr)
            50px;

        column-gap: 3px;

        padding: 5px 4px;
    }


    /* =====================================================
       TABLE TEXT
    ===================================================== */

    .casefile-records-grid-header,
    .series-records-grid-header,
    .single-records-grid-header {
        font-size: 5.5px;
        line-height: 1.05;
    }

    .casefile-record-row,
    .series-record-row,
    .single-record-row {
        min-height: 29px;

        font-size: 6px;
        line-height: 1.05;
    }

    .casefile-record-number,
    .series-record-number,
    .single-record-number {
        font-size: 6px;
    }


    /* =====================================================
       RECORD TITLE + ICON
    ===================================================== */

    .casefile-record-title,
    .series-record-title,
    .single-record-title {
        min-width: 0;

        gap: 3px;
    }

    .casefile-record-title span,
    .series-record-title span,
    .single-record-title span,
    .casefile-record-title-link,
    .series-record-title-link,
    .single-record-title-link {
        min-width: 0;

        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;

        font-size: 6px;
    }

    .casefile-record-icon,
    .series-record-icon,
    .single-record-icon {
        width: 12px;
        height: 12px;

        flex: 0 0 12px;
    }


    /* =====================================================
       PRESENTATION + ASSESSMENT TAGS
    ===================================================== */

    .record-presentation,
    .record-assessment {
        max-width: 100%;

        box-sizing: border-box;

        padding: 2px 3px;

        font-size: 5.5px;
        line-height: 1;

        overflow: hidden;
        text-overflow: ellipsis;
    }


    /* =====================================================
       ACTION BUTTONS
    ===================================================== */

    .casefile-record-actions,
    .series-record-actions,
    .single-record-actions {
        gap: 2px;
    }

    .casefile-record-actions button,
    .series-record-actions button,
    .single-record-actions button {
        width: 14px;
        height: 14px;

        border-radius: 2px;
    }

    .casefile-record-actions button img,
    .series-record-actions button img,
    .single-record-actions button img {
        width: 7px;
        height: 7px;
    }


    /* =====================================================
       PAGINATION
    ===================================================== */

    .casefiles-pagination,
    .series-pagination,
    .single-records-pagination,
    .casefile-record-pagination,
    .series-record-pagination {
        gap: 4px;

        margin-top: 6px;
    }

    .casefile-record-pagination-info,
    .series-record-pagination-info,
    .single-record-pagination-info {
        font-size: 6px;
    }


    /* =====================================================
       LOADING OVERLAY — PHONE
    ===================================================== */

    .loading-modal {
        width: calc(100% - 60px);
        max-width: 260px;

        padding: 18px 16px;

        box-sizing: border-box;

        border-radius: 8px;
    }


    /* LOADING CIRCLE */

    .loading-circle {
        position: relative;

        width: 64px;
        height: 64px;

        margin: 0 auto 14px;
    }


    /* LOADING SPINNER */

    .loading-spinner {
        position: absolute;

        inset: 0;

        width: auto;
        height: auto;

        box-sizing: border-box;

        border: 4px solid #343434;
        border-top-color: #f15a24;

        border-radius: 50%;
    }


    /* LOADING PERCENTAGE */

    .loading-percentage {
        position: absolute;

        inset: 0;

        width: auto;
        height: auto;

        display: flex;

        align-items: center;
        justify-content: center;

        margin: 0;
        padding: 0;

        transform: none;

        font-size: 12px;
        line-height: 1;

        font-weight: bold;
        text-align: center;
    }


    /* LOADING TITLE */

    #loading-title,
    .loading-modal h2 {
        margin: 0 0 6px;

        font-size: 14px;
        line-height: 1.1;
    }


    /* LOADING MESSAGE */

    #loading-message,
    .loading-modal p {
        margin: 0 0 12px;

        font-size: 9px;
        line-height: 1.25;
    }


    /* LOADING PROGRESS BAR */

    .loading-bar {
        width: 100%;
        height: 5px;

        margin: 0;

        border-radius: 999px;
    }

    #loading-progress {
        height: 100%;
    }

}


/* =========================================================
   1367px–1550px — MIDSIZE LAPTOP / 125% DISPLAY SCALING

   Preserve full desktop layout while recovering horizontal
   room for record tables and preventing office names from
   wrapping unnecessarily.
========================================================= */

@media (min-width: 1367px) and (max-width: 1550px) {

    /* =====================================================
       OUTER PAGE PADDING
    ===================================================== */

    .profile-main {
        padding-left: 18px;
        padding-right: 18px;
    }


    /* =====================================================
       CASEFILE / SERIES DROPDOWN
    ===================================================== */

    .casefile-dropdown,
    .series-dropdown {
        padding-left: 16px;
        padding-right: 16px;
    }


    /* =====================================================
       DESCRIPTION + DETAILS
    ===================================================== */

    .casefile-dropdown-information,
    .series-dropdown-information {
        padding-left: 24px;
        padding-right: 24px;
    }


    /* =====================================================
       FULL CASEFILE / SERIES LINK
    ===================================================== */

    .casefile-full-link-container,
    .series-full-link-container {
        margin-left: 24px;
    }


    /* =====================================================
       RELATED RECORDS
    ===================================================== */

    .casefile-related-records,
    .series-related-records {
        width: calc(100% - 48px);
        margin-left: 24px;
        margin-right: 24px;
    }


    /* =====================================================
       RECORD TABLES
    ===================================================== */

    .casefile-records-grid-header,
    .casefile-record-row,
    .series-records-grid-header,
    .series-record-row,
    .single-records-grid-header,
    .single-record-row {
        column-gap: 14px;
        padding-left: 10px;
        padding-right: 10px;
    }

}



/* =========================================================
   RECORD VIEWER — 1367px–1550px
========================================================= */

@media (min-width: 1367px) and (max-width: 1550px) {

    .record-viewer-information {
        min-width: 0;
        min-height: 0;

        display: flex;
        flex-direction: column;

        background: #242421;
        border: 1px solid #555;
        border-radius: 5px;

        overflow-x: hidden;
        overflow-y: auto;
    }

    .record-viewer-overlay {
        padding: 14px;
    }

    .record-viewer-modal {
        width: min(1220px, 92vw);
        height: min(700px, 88vh);
    }

    .record-viewer-header {
        padding: 12px 16px 9px;
        gap: 12px;
    }

    .record-viewer-title-area {
        gap: 3px;
        font-size: 11px;
        line-height: 1.25;
    }

    .record-viewer-close {
        width: 26px;
        height: 26px;
        font-size: 22px;
    }

    .record-viewer-body {
        grid-template-columns:
            minmax(0, 1.5fr)
            minmax(330px, 0.7fr);

        gap: 12px;
        padding: 0 14px 14px;
    }

    .record-viewer-toolbar {
        min-height: 32px;
        height: 32px;
    }

    .record-viewer-document-container,
    .record-viewer-metadata {
        min-width: 0;
        min-height: 0;
    }


    /* SHARE MESSAGE */

    .record-share-message {
        position: fixed;

        left: 50%;
        top: 85px;

        transform: translateX(-50%);

        z-index: 1000000;

        max-width: calc(100vw - 32px);

        padding: 11px 20px;

        box-sizing: border-box;

        background: rgba(241, 90, 36, 0.16);
        border: 1px solid rgba(241, 90, 36, 0.65);
        border-radius: 5px;

        color: #ff8a60;

        font-family: Arial, sans-serif;
        font-size: 13px;
        font-weight: 700;

        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);

        backdrop-filter: blur(6px);

        white-space: nowrap;

        text-align: center;
    }

}

/* =========================================================
   RECORD VIEWER — 769px–1366px
========================================================= */

@media (min-width: 769px) and (max-width: 1366px) {

    .record-viewer-overlay {
        padding: 16px;
    }

    .record-viewer-modal {
        width: min(800px, 84vw);
        height: min(640px, 84vh);

        max-width: 800px;
        max-height: 640px;
    }

    .record-viewer-header {
        padding: 9px 12px 7px;
        gap: 8px;
    }

    .record-viewer-title-area {
        gap: 3px;

        font-size: 12px;
        line-height: 1.3;
    }

    .record-viewer-close {
        width: 22px;
        height: 22px;

        font-size: 21px;
    }

    .record-viewer-body {
        display: flex;
        flex-direction: column;

        gap: 10px;

        padding: 0 10px 10px;

        min-width: 0;
        min-height: 0;

        overflow-x: hidden;
        overflow-y: auto;
    }

    .record-viewer-document {
        flex: 0 0 420px;

        width: 100%;
        height: 420px;

        min-width: 0;
        min-height: 420px;

        box-sizing: border-box;
    }

    .record-viewer-toolbar {
        flex: 0 0 30px;

        width: 100%;

        height: 30px;
        min-height: 30px;

        box-sizing: border-box;
    }

    .record-viewer-document-container {
        flex: 1;

        width: 100%;

        min-width: 0;
        min-height: 0;

        box-sizing: border-box;
    }

    .record-viewer-information {
        flex: 0 0 auto;

        width: 100%;

        min-width: 0;
        min-height: 0;

        height: auto;
        max-height: none;

        display: flex;
        flex-direction: column;

        overflow: visible;

        box-sizing: border-box;
    }

    .record-viewer-metadata {
        flex: 0 0 auto;

        width: 100%;
        height: auto;

        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));

        overflow: visible;

        box-sizing: border-box;
    }

    .record-viewer-meta-item {
        min-width: 0;
        min-height: 58px;
    }

    .record-viewer-meta-label {
        font-size: 10px;
    }

    .record-viewer-meta-value {
        font-size: 11px;
    }

    .record-viewer-description-section {
        flex: 0 0 auto;

        width: 100%;
        min-height: 0;

        box-sizing: border-box;
    }

    .record-viewer-section-title {
        font-size: 11px;
    }

    .record-viewer-description {
        width: 100%;
        height: auto;
        min-height: 90px;
        max-height: 150px;

        box-sizing: border-box;
    }

    .record-viewer-file-text-section {
        flex: 0 0 auto;

        width: 100%;
        min-height: 0;

        box-sizing: border-box;
    }

    .record-viewer-file-text {
        width: 100%;
        height: auto;
        min-height: 90px;
        max-height: 150px;

        box-sizing: border-box;
    }


    /* SHARE MESSAGE */

    .record-share-message {
        position: fixed;

        left: 50%;
        top: 70px;

        transform: translateX(-50%);

        z-index: 1000000;

        max-width: calc(100vw - 28px);

        padding: 10px 18px;

        box-sizing: border-box;

        background: rgba(241, 90, 36, 0.16);
        border: 1px solid rgba(241, 90, 36, 0.65);
        border-radius: 5px;

        color: #ff8a60;

        font-family: Arial, sans-serif;
        font-size: 12px;
        font-weight: 700;

        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);

        backdrop-filter: blur(6px);

        white-space: nowrap;

        text-align: center;
    }

}


/* =========================================================
   RECORD VIEWER — 481px–768px
========================================================= */

@media (min-width: 481px) and (max-width: 768px) {

    .record-viewer-overlay {
        padding: 20px;
    }

    .record-viewer-modal {
        width: 82vw;
        max-width: 630px;

        height: min(700px, 86vh);
        max-height: 700px;
    }

    .record-viewer-header {
        padding: 10px 14px 8px;
        gap: 10px;
    }

    .record-viewer-title-area {
        gap: 3px;
        font-size: 13px;
        line-height: 1.3;
    }

    .record-viewer-close {
        width: 24px;
        height: 24px;
        font-size: 22px;
    }

    .record-viewer-body {
        display: flex;
        flex-direction: column;

        gap: 12px;

        padding: 0 12px 12px;

        min-width: 0;
        min-height: 0;

        overflow-x: hidden;
        overflow-y: auto;
    }

    .record-viewer-document {
        flex: 0 0 480px;

        width: 100%;
        height: 480px;

        min-width: 0;
        min-height: 480px;

        box-sizing: border-box;
    }

    .record-viewer-toolbar {
        flex: 0 0 32px;

        width: 100%;
        height: 32px;
        min-height: 32px;

        box-sizing: border-box;
    }

    .record-viewer-document-container {
        flex: 1;

        width: 100%;

        min-width: 0;
        min-height: 0;

        box-sizing: border-box;
    }

    .record-viewer-information {
        flex: 0 0 auto;

        width: 100%;

        min-width: 0;
        min-height: 0;

        height: auto;
        max-height: none;

        display: flex;
        flex-direction: column;

        overflow: visible;

        box-sizing: border-box;
    }

    .record-viewer-metadata {
        flex: 0 0 auto;

        width: 100%;
        height: auto;

        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));

        overflow: visible;

        box-sizing: border-box;
    }

    .record-viewer-meta-item {
        min-width: 0;
        min-height: 64px;
    }

    .record-viewer-meta-label {
        font-size: 11px;
    }

    .record-viewer-meta-value {
        font-size: 12px;
    }

    .record-viewer-description-section {
        flex: 0 0 auto;

        width: 100%;
        min-height: 0;

        box-sizing: border-box;
    }

    .record-viewer-section-title {
        font-size: 12px;
    }

    .record-viewer-description {
        width: 100%;
        height: auto;
        min-height: 100px;
        max-height: 180px;

        box-sizing: border-box;
    }

    .record-viewer-file-text-section {
        flex: 0 0 auto;

        width: 100%;
        min-height: 0;

        box-sizing: border-box;
    }

    .record-viewer-file-text {
        width: 100%;
        height: auto;
        min-height: 100px;
        max-height: 180px;

        box-sizing: border-box;
    }


    /* SHARE MESSAGE */

    .record-share-message {
        position: fixed;

        left: 50%;
        top: 55px;

        transform: translateX(-50%);

        z-index: 1000000;

        max-width: calc(100vw - 24px);

        padding: 9px 16px;

        box-sizing: border-box;

        background: rgba(241, 90, 36, 0.16);
        border: 1px solid rgba(241, 90, 36, 0.65);
        border-radius: 5px;

        color: #ff8a60;

        font-family: Arial, sans-serif;
        font-size: 11px;
        font-weight: 700;

        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);

        backdrop-filter: blur(6px);

        white-space: nowrap;

        text-align: center;
    }

}



/* =========================================================
   RECORD VIEWER — 480px AND BELOW
========================================================= */

@media (max-width: 480px) {

    .record-viewer-overlay {
        padding: 20px;
    }

    .record-viewer-modal {
        width: 88vw;
        max-width: 422px;

        height: min(700px, 86vh);
        max-height: 700px;
    }

    .record-viewer-header {
        padding: 10px 14px 8px;
        gap: 10px;
    }

    .record-viewer-title-area {
        gap: 3px;
        font-size: 13px;
        line-height: 1.3;
    }

    .record-viewer-close {
        width: 24px;
        height: 24px;
        font-size: 22px;
    }

    .record-viewer-body {
        display: flex;
        flex-direction: column;

        gap: 12px;

        padding: 0 12px 12px;

        min-width: 0;
        min-height: 0;

        overflow-x: hidden;
        overflow-y: auto;
    }

    .record-viewer-document {
        flex: 0 0 480px;

        width: 100%;
        height: 480px;

        min-width: 0;
        min-height: 480px;

        box-sizing: border-box;
    }

    .record-viewer-toolbar {
        flex: 0 0 32px;

        width: 100%;
        height: 32px;
        min-height: 32px;

        box-sizing: border-box;
    }

    .record-viewer-document-container {
        flex: 1;

        width: 100%;

        min-width: 0;
        min-height: 0;

        box-sizing: border-box;
    }

    .record-viewer-information {
        flex: 0 0 auto;

        width: 100%;

        min-width: 0;
        min-height: 0;

        height: auto;
        max-height: none;

        display: flex;
        flex-direction: column;

        overflow: visible;

        box-sizing: border-box;
    }

    .record-viewer-metadata {
        flex: 0 0 auto;

        width: 100%;
        height: auto;

        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));

        overflow: visible;

        box-sizing: border-box;
    }

    .record-viewer-meta-item {
        min-width: 0;
        min-height: 64px;
    }

    .record-viewer-meta-label {
        font-size: 11px;
    }

    .record-viewer-meta-value {
        font-size: 12px;
    }

    .record-viewer-description-section {
        flex: 0 0 auto;

        width: 100%;
        min-height: 0;

        box-sizing: border-box;
    }

    .record-viewer-section-title {
        font-size: 12px;
    }

    .record-viewer-description {
        width: 100%;
        height: auto;
        min-height: 100px;
        max-height: 180px;

        box-sizing: border-box;
    }

    .record-viewer-file-text-section {
        flex: 0 0 auto;

        width: 100%;
        min-height: 0;

        box-sizing: border-box;
    }

    .record-viewer-file-text {
        width: 100%;
        height: auto;
        min-height: 100px;
        max-height: 180px;

        box-sizing: border-box;
    }


    /* SHARE MESSAGE */

    .record-share-message {
        position: fixed;

        left: 50%;
        top: 45px;

        transform: translateX(-50%);

        z-index: 1000000;

        width: auto;
        max-width: calc(100vw - 20px);

        padding: 8px 14px;

        box-sizing: border-box;

        background: rgba(241, 90, 36, 0.16);
        border: 1px solid rgba(241, 90, 36, 0.65);
        border-radius: 5px;

        color: #ff8a60;

        font-family: Arial, sans-serif;
        font-size: 10px;
        font-weight: 700;

        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);

        backdrop-filter: blur(6px);

        white-space: normal;

        text-align: center;
    }

}