.rs-article-attachments-page {
    padding-top: 0
}

.rs-article-attachments-page .rs-heading {
    padding-top: 35px
}

.rs-attachment-context {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 10px;
    padding: 15px 18px;
    border: 1px solid #e2e6e4;
    background: #fafcfb
}

.rs-attachment-context > div:first-child {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap
}

.rs-attachment-context strong {
    color: #303030;
    font: 500 15px/1.35 Roboto, Arial, sans-serif
}

.rs-attachment-context span:not(.rs-status) {
    color: #858585;
    font: 400 12px/1.45 Lato, Arial, sans-serif
}

.rs-attachment-context-actions {
    display: flex;
    gap: 8px;
    flex: 0 0 auto
}

.rs-attachment-context-actions .rs-secondary-button {
    min-height: 38px;
    padding: 9px 14px
}

.rs-attachment-section {
    margin-top: 34px
}

.rs-article-attachments-page .calendar-section-heading h2 {
    font-size: 22px
}

.rs-article-attachments-page .attachment-row {
    grid-template-columns:58px minmax(180px, 1fr) minmax(145px, 210px) 46px
}

.rs-image-thumb {
    padding: 0;
    overflow: hidden;
    background: #5f6f77
}

.rs-image-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.rs-file-doc {
    background: #4673a7
}

.rs-attachment-kind {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 6px 10px;
    border: 1px solid #dfe5e2;
    background: #f7faf8;
    color: #5d6963;
    font: 500 12px/1.25 Roboto, Arial, sans-serif
}

.rs-attachment-settings-section {
    margin-top: 39px;
    border-top: 1px solid #dedede;
    padding-top: 34px
}

.rs-attachment-options {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 12px
}

.rs-attachment-option {
    position: relative;
    display: grid;
    grid-template-columns:42px minmax(0, 1fr);
    gap: 13px;
    align-items: start;
    min-height: 118px;
    margin: 0;
    padding: 17px;
    border: 1px solid #dfe3e1;
    background: #fff;
    cursor: pointer;
    transition: border-color .18s, background .18s, box-shadow .18s
}

.rs-attachment-option:hover {
    border-color: #b8d9ca;
    background: #fbfdfc
}

.rs-attachment-option:has(input:checked) {
    border-color: #75c4a1;
    background: #f7fcf9;
    box-shadow: inset 3px 0 0 #17b978
}

.rs-attachment-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none
}

.rs-option-control {
    position: relative;
    width: 40px;
    height: 22px;
    margin-top: 1px;
    border-radius: 12px;
    background: #ccd2cf;
    transition: background .18s
}

.rs-option-control:after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .22);
    transition: transform .18s
}

.rs-attachment-option input:checked + .rs-option-control {
    background: #17b978
}

.rs-attachment-option input:checked + .rs-option-control:after {
    transform: translateX(18px)
}

.rs-attachment-option input:focus-visible + .rs-option-control {
    outline: 3px solid rgba(23, 185, 120, .22);
    outline-offset: 2px
}

.rs-attachment-option strong {
    display: block;
    color: #333;
    font: 500 14px/1.35 Roboto, Arial, sans-serif
}

.rs-attachment-option small {
    display: block;
    margin-top: 6px;
    color: #777;
    font: 400 12px/1.5 Lato, Arial, sans-serif
}

.rs-attachment-settings-actions {
    margin-top: 8px
}

.rs-article-attachments-page .attachment-dropzone {
    background: #fbfcfb
}

.rs-article-attachments-page .attachment-dropzone.is-dragover {
    background: #f2fbf6
}

.rs-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important
}

@media (max-width: 991px) {
    .rs-attachment-context {
        align-items: flex-start
    }

    .rs-attachment-context-actions {
        flex-direction: column
    }

    .rs-attachment-options {
        grid-template-columns:1fr
    }

    .rs-attachment-option {
        min-height: 0
    }

    .rs-article-attachments-page .attachment-row {
        grid-template-columns:52px minmax(0, 1fr) 44px
    }

    .rs-article-attachments-page .rs-attachment-kind {
        grid-column: 2/4;
        justify-self: start
    }

    .rs-article-attachments-page .attachment-delete {
        grid-column: 3;
        grid-row: 1
    }
}

@media (max-width: 575px) {
    .rs-attachment-context {
        display: block
    }

    .rs-attachment-context-actions {
        display: grid;
        grid-template-columns:1fr 1fr;
        margin-top: 14px
    }

    .rs-attachment-context-actions .rs-secondary-button {
        justify-content: center
    }

    .rs-article-attachments-page .rs-heading {
        padding-top: 28px
    }

    .rs-attachment-section {
        margin-top: 28px
    }

    .rs-article-attachments-page .attachment-row {
        grid-template-columns:48px minmax(0, 1fr) 38px
    }

    .rs-attachment-kind {
        font-size: 11px
    }

    .rs-attachment-options {
        gap: 9px
    }

    .rs-attachment-option {
        grid-template-columns:40px minmax(0, 1fr);
        padding: 15px
    }

    .rs-attachment-settings-section {
        padding-top: 28px
    }
}
.rs-article-attachments-page .rs-article-attachment-row {
    grid-template-columns:
        58px
        minmax(180px, 1fr)
        minmax(210px, 300px)
        46px;
}

.rs-attachment-controls {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.rs-attachment-controls .rs-toggle {
    text-decoration: none;
}

.rs-toggle-disabled {
    cursor: not-allowed;
    opacity: 0.52;
}

.rs-attachment-empty {
    padding: 42px 20px;
    color: #8c9490;
    background: #fafcfb;
    border: 1px solid #e2e6e4;
    text-align: center;
}

.rs-attachment-empty svg {
    margin-bottom: 12px;
}

.rs-attachment-empty h3 {
    margin: 0 0 7px;
    color: #343a37;
    font: 500 18px/1.35 Roboto, Arial, sans-serif;
}

.rs-attachment-empty p {
    margin: 0;
    font: 400 13px/1.5 Lato, Arial, sans-serif;
}

.attachment-preview-error {
    display: block;
    margin-top: 4px;
    color: #a43737;
    font: 400 12px/1.4 Roboto, Arial, sans-serif;
}

@media (max-width: 991px) {
    .rs-article-attachments-page .rs-article-attachment-row {
        grid-template-columns: 52px minmax(0, 1fr) 44px;
    }

    .rs-attachment-controls {
        grid-column: 2 / 4;
    }

    .rs-article-attachments-page .attachment-delete {
        grid-column: 3;
        grid-row: 1;
    }
}

@media (max-width: 575px) {
    .rs-article-attachments-page .rs-article-attachment-row {
        grid-template-columns: 48px minmax(0, 1fr) 38px;
    }
}
