/* RSIF Foto plugin CSS v0.1.0
   Compiled from the latest RSIF Foto snippet CSS blocks. */


/* ===== Base designsystem v2 ===== */

/* =========================================================
   50. RSIF FOTO – MIGRERAD TILL DESIGNSYSTEM v2
   Status: AKTIV PÅ STAGING

   Shortcodes:
   [rsif_foto_uppladdning]
   [rsif_foto_admin]
   [rsif_foto_manadens_bild]
   [rsif_foto_fotoalbum]

   PRINCIP
   - Gemensamma komponenter hämtas från .rsif-ui-* i sektion 70.
   - Foto-specifik CSS reglerar endast layout och specialdetaljer.
   - Ersätter tidigare LEGACY-regler för RSIF Foto.
   ========================================================= */

/* ---------- Gemensamt sidskal ---------- */

.rsif-photo-page {
    width: min(100%, 1180px);
    margin: 0 auto;
    font-family: "Poppins", Arial, sans-serif;
    color: var(--rsif-text, #222222);
}

.rsif-photo-page-header {
    margin-bottom: 20px;
}

.rsif-photo-page-header h2 {
    margin: 4px 0 7px !important;
    padding: 0 !important;
    color: var(--rsif-text, #222222);
    font-size: clamp(28px, 4vw, 38px) !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    font-weight: 600 !important;
}

.rsif-photo-page-header p {
    max-width: 780px;
    margin: 0 !important;
    color: var(--rsif-muted, #555555);
    font-size: 15px;
    line-height: 1.5;
}

/* ---------- Uppladdningssida ---------- */

.rsif-photo-upload-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 330px), 1fr));
    gap: 18px;
    align-items: start;
}

.rsif-photo-upload-card {
    min-width: 0;
}

.rsif-photo-upload-card--complete {
    background:
        linear-gradient(135deg, var(--rsif-teal-15, rgba(60,143,128,.15)), transparent 76%),
        var(--rsif-surface, #ffffff);
}

.rsif-photo-upload-card__header {
    margin-bottom: 15px;
}

.rsif-photo-upload-card__header h3 {
    margin: 2px 0 0 !important;
    padding: 0 !important;
    color: var(--rsif-text, #222222);
    font-size: 22px !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
    font-weight: 600 !important;
}

.rsif-photo-upload-rules {
    display: grid;
    gap: 8px;
    margin: 0 0 17px;
}

.rsif-photo-upload-rules div {
    display: grid;
    grid-template-columns: minmax(0, 132px) minmax(0, 1fr);
    gap: 9px 14px;
    padding-bottom: 7px;
    border-bottom: 1px solid var(--rsif-border, #e2e2e2);
}

.rsif-photo-upload-rules dt,
.rsif-photo-upload-rules dd {
    margin: 0;
    font-size: 14px;
    line-height: 1.4;
}

.rsif-photo-upload-rules dt {
    color: var(--rsif-muted, #555555);
    font-weight: 500;
}

.rsif-photo-upload-rules dd {
    color: var(--rsif-text, #222222);
    font-weight: 600;
}

.rsif-photo-upload-state {
    margin: 0 0 14px !important;
}

.rsif-photo-upload-state p {
    margin: 5px 0 0 !important;
}

.rsif-photo-optional {
    color: var(--rsif-muted, #555555);
    font-size: .9em;
    font-weight: 400;
}

.rsif-photo-upload-form {
    margin-top: 16px;
}

/* ---------- Statuslista för medlemmens egna bilder ---------- */

.rsif-photo-status-list {
    display: grid !important;
    gap: 7px !important;
    margin: 12px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.rsif-photo-status-list__item {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: min(100%, 360px) !important;
    padding: 8px 10px !important;
    border-radius: var(--rsif-radius-small, 8px) !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
}

.rsif-photo-status-list__item span,
.rsif-photo-status-list__item strong {
    display: block !important;
}

.rsif-photo-status-list__item strong {
    flex: 0 0 auto !important;
    font-size: 17px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
}

.rsif-photo-status-list__item--pending {
    background: var(--rsif-primary-15, rgba(230,0,110,.15)) !important;
    color: var(--rsif-primary, #e6006e) !important;
}

.rsif-photo-status-list__item--approved {
    background: var(--rsif-secondary-15, rgba(80,0,100,.15)) !important;
    color: var(--rsif-secondary, #500064) !important;
}

.rsif-photo-status-list__item--published {
    background: var(--rsif-teal-15, rgba(60,143,128,.15)) !important;
    color: #164f45 !important;
}

.rsif-photo-status-list__item--rejected {
    background: var(--rsif-orange-15, rgba(224,123,0,.15)) !important;
    color: #6b3900 !important;
}

/* ---------- Frontend-granskning ---------- */

.rsif-photo-review-summary {
    margin-bottom: 18px;
}

.rsif-photo-review-table-wrap {
    border: 1px solid var(--rsif-border, #e2e2e2);
    border-radius: var(--rsif-radius-large, 18px);
    background: var(--rsif-surface, #ffffff);
    box-shadow: var(--rsif-shadow-card, 0 8px 28px rgba(0,0,0,.08));
}

.rsif-photo-review-table {
    min-width: 760px !important;
    table-layout: auto !important;
}

.rsif-photo-review-table th:nth-child(1),
.rsif-photo-review-table td:nth-child(1) {
    width: 86px;
}

.rsif-photo-review-table th:nth-child(3),
.rsif-photo-review-table td:nth-child(3) {
    width: 154px;
}

.rsif-photo-review-image-cell {
    text-align: center !important;
}

.rsif-photo-review-image-cell a {
    display: inline-block;
    line-height: 0;
    text-decoration: none !important;
}

.rsif-photo-review-thumb,
.rsif-photo-review-no-thumb {
    width: 58px !important;
    height: 58px !important;
    max-width: 58px !important;
    max-height: 58px !important;
    min-width: 58px !important;
    border-radius: var(--rsif-radius-small, 8px) !important;
}

.rsif-photo-review-thumb {
    display: block !important;
    object-fit: cover !important;
    border: 1px solid var(--rsif-border, #e2e2e2) !important;
    background: var(--rsif-surface-soft, #f7f7f7) !important;
}

.rsif-photo-review-no-thumb {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 4px !important;
    background: var(--rsif-surface-soft, #f7f7f7) !important;
    color: var(--rsif-muted, #555555) !important;
    font-size: 10px !important;
    line-height: 1.1 !important;
    text-align: center !important;
}

.rsif-photo-review-info-cell h3 {
    margin: 0 0 8px !important;
    padding: 0 !important;
    color: var(--rsif-text, #222222);
    font-size: 17px !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    font-weight: 600 !important;
}

.rsif-photo-review-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px 18px;
    margin: 0;
}

.rsif-photo-review-facts div {
    min-width: 0;
}

.rsif-photo-review-facts dt,
.rsif-photo-review-facts dd {
    display: inline;
    margin: 0;
    font-size: 13px;
    line-height: 1.38;
}

.rsif-photo-review-facts dt {
    color: var(--rsif-muted, #555555);
    font-weight: 600;
}

.rsif-photo-review-facts dt::after {
    content: ": ";
}

.rsif-photo-review-facts dd {
    color: var(--rsif-text, #222222);
    overflow-wrap: anywhere;
}

.rsif-photo-review-facts .rsif-ui-badge {
    min-height: 24px;
    margin: 0;
    padding: 3px 8px;
    font-size: 11px;
}

.rsif-photo-review-actions-cell {
    vertical-align: top !important;
}

.rsif-photo-review-actions {
    display: grid;
    gap: 8px;
}

.rsif-photo-review-actions .rsif-ui-button {
    width: 100%;
    min-height: 38px;
    padding: 9px 12px;
    font-size: 13px;
}

.rsif-photo-action-reject {
    background: transparent !important;
}

/* ---------- Arkivsidor ---------- */

.rsif-photo-archive-page {
    display: grid;
    gap: 22px;
}

.rsif-photo-collection {
    padding: clamp(16px, 3vw, 24px);
}

.rsif-photo-collection__header {
    margin-bottom: 16px;
}

.rsif-photo-collection__header h2 {
    margin: 3px 0 0 !important;
    padding: 0 !important;
    color: var(--rsif-text, #222222);
    font-size: clamp(23px, 3vw, 31px) !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
    font-weight: 600 !important;
}

.rsif-photo-archive-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
    gap: 14px;
}

.rsif-photo-figure {
    overflow: hidden;
    margin: 0;
    border: 1px solid var(--rsif-border, #e2e2e2);
    border-radius: var(--rsif-radius-medium, 14px);
    background: var(--rsif-surface, #ffffff);
}

.rsif-photo-figure a {
    display: block;
    line-height: 0;
}

.rsif-photo-figure img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.rsif-photo-figure figcaption {
    padding: 9px 10px;
    color: var(--rsif-muted, #555555);
    font-size: 12px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

/* ---------- Mobil ---------- */

@media (max-width: 767px) {
    .rsif-photo-page-header h2 {
        font-size: 28px !important;
    }

    .rsif-photo-upload-rules div {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .rsif-photo-review-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rsif-photo-review-table {
        min-width: 680px !important;
    }

    .rsif-photo-review-facts {
        grid-template-columns: 1fr;
    }

    .rsif-photo-archive-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
}


/* ===== Review layout v2.8 ===== */

/* =========================================================
   RSIF FOTO – grupperad granskning och massgodkännande v2.8
   Ersätt tidigare CSS-block för grupperad bildgranskning med detta.
   ========================================================= */

.rsif-ui-badge--red,
.rsif-ui-notice--red,
.rsif-ui-stat--red {
    border-color: rgba(190, 52, 52, .24) !important;
    background: rgba(190, 52, 52, .12) !important;
    color: #a52d2d !important;
}

.rsif-photo-review-groups {
    display: grid !important;
    gap: 52px !important;
    margin-top: 28px !important;
}

.rsif-photo-review-group {
    display: grid !important;
    gap: 14px !important;
}

.rsif-photo-review-group + .rsif-photo-review-group {
    position: relative !important;
    padding-top: 34px !important;
    border-top: 2px solid rgba(80, 0, 100, .10) !important;
}

.rsif-photo-review-group + .rsif-photo-review-group::before {
    content: "" !important;
    position: absolute !important;
    top: -2px !important;
    left: 0 !important;
    width: 92px !important;
    height: 2px !important;
    background: var(--rsif-primary, #e6006e) !important;
}

.rsif-photo-review-group__header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 22px !important;
    padding: 19px 21px !important;
    border: 1px solid var(--rsif-border, #e2e2e2) !important;
    border-radius: var(--rsif-radius-large, 18px) !important;
    background:
        linear-gradient(
            135deg,
            rgba(80, 0, 100, .07),
            rgba(230, 0, 110, .07)
        ) !important;
}

.rsif-photo-review-group__header h3 {
    margin: 9px 0 3px !important;
    padding: 0 !important;
    color: var(--rsif-text, #222222) !important;
    font-size: clamp(23px, 3vw, 29px) !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    font-weight: 700 !important;
}

.rsif-photo-review-group__header p {
    margin: 0 !important;
    color: var(--rsif-muted, #555555) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

/* Statistiketiketter */
.rsif-photo-review-group__stats {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    max-width: 620px !important;
}

.rsif-photo-review-group__stat {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 38px !important;
    padding: 7px 12px !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
}

.rsif-photo-review-group__stat strong {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 22px !important;
    height: 22px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .78) !important;
    color: inherit !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
}

.rsif-photo-review-group__stat span {
    color: inherit !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
}

.rsif-photo-review-group__stat--total {
    border-color: rgba(80, 0, 100, .18) !important;
    background: rgba(80, 0, 100, .10) !important;
    color: var(--rsif-secondary, #500064) !important;
}

.rsif-photo-review-group__stat--pending {
    border-color: rgba(224, 123, 0, .28) !important;
    background: rgba(224, 123, 0, .13) !important;
    color: #975200 !important;
}

.rsif-photo-review-group__stat--approved {
    border-color: rgba(111, 45, 138, .24) !important;
    background: rgba(111, 45, 138, .12) !important;
    color: #64227c !important;
}

.rsif-photo-review-group__stat--published {
    border-color: rgba(60, 143, 128, .28) !important;
    background: rgba(60, 143, 128, .14) !important;
    color: #246f63 !important;
}

.rsif-photo-review-group__stat--rejected {
    border-color: rgba(190, 52, 52, .25) !important;
    background: rgba(190, 52, 52, .12) !important;
    color: #a52d2d !important;
}

/* Massgodkännande */
.rsif-photo-review-group__bulk-form {
    display: grid !important;
    gap: 10px !important;
}

.rsif-photo-review-bulk-toolbar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    padding: 10px 12px !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 14px !important;
    background: rgba(80, 0, 100, .045) !important;
}

.rsif-photo-review-bulk-select-all {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    cursor: pointer !important;
}

.rsif-photo-review-bulk-select-all input,
.rsif-photo-review-select-item {
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    accent-color: var(--rsif-primary, #e6006e) !important;
    cursor: pointer !important;
}

.rsif-photo-review-bulk-submit:disabled {
    opacity: .46 !important;
    cursor: not-allowed !important;
}

.rsif-photo-review-checkbox-heading,
.rsif-photo-review-checkbox-cell {
    width: 46px !important;
    min-width: 46px !important;
    padding-left: 12px !important;
    padding-right: 6px !important;
    text-align: center !important;
    vertical-align: top !important;
}

.rsif-photo-review-checkbox-cell {
    padding-top: 18px !important;
}

@media (max-width: 767px) {
    .rsif-photo-review-groups {
        gap: 40px !important;
        margin-top: 22px !important;
    }

    .rsif-photo-review-group + .rsif-photo-review-group {
        padding-top: 27px !important;
    }

    .rsif-photo-review-group__header {
        display: grid !important;
        align-items: start !important;
        gap: 15px !important;
        padding: 16px !important;
    }

    .rsif-photo-review-group__stats {
        justify-content: flex-start !important;
        gap: 6px !important;
    }

    .rsif-photo-review-group__stat {
        min-height: 34px !important;
        padding: 6px 9px !important;
    }

    .rsif-photo-review-group__stat strong {
        min-width: 20px !important;
        height: 20px !important;
        font-size: 13px !important;
    }

    .rsif-photo-review-group__stat span {
        font-size: 11px !important;
    }

    .rsif-photo-review-bulk-toolbar {
        display: grid !important;
        align-items: start !important;
    }

    .rsif-photo-review-bulk-submit {
        width: 100% !important;
    }
}


/* ===== Review table correction v2.8.1 ===== */

/* =========================================================
   RSIF FOTO – korrigering av tabellayout efter massgodkännande
   Version 2.8.1
   Lägg LÄNGST NED i den centrala CSS-filen.
   ========================================================= */

/*
 * När checkbox-kolumnen lades till försköts de äldre nth-child-reglerna.
 * Följande regler återställer en tydlig fyrkolumnslayout:
 * 1. markering
 * 2. miniatyr
 * 3. information
 * 4. åtgärder
 */

.rsif-photo-review-table-wrap {
    width: 100% !important;
    overflow-x: auto !important;
}

.rsif-photo-review-table {
    width: 100% !important;
    min-width: 980px !important;
    table-layout: fixed !important;
}

/* 1. Checkbox */
.rsif-photo-review-table th:nth-child(1),
.rsif-photo-review-table td:nth-child(1) {
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    padding-left: 10px !important;
    padding-right: 6px !important;
    text-align: center !important;
}

/* 2. Miniatyr */
.rsif-photo-review-table th:nth-child(2),
.rsif-photo-review-table td:nth-child(2) {
    width: 112px !important;
    min-width: 112px !important;
    max-width: 112px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    text-align: center !important;
}

/* 3. Information */
.rsif-photo-review-table th:nth-child(3),
.rsif-photo-review-table td:nth-child(3) {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
}

/* 4. Åtgärder */
.rsif-photo-review-table th:nth-child(4),
.rsif-photo-review-table td:nth-child(4) {
    width: 178px !important;
    min-width: 178px !important;
    max-width: 178px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
}

/* Miniatyren ska vara tydlig men fortfarande kompakt. */
.rsif-photo-review-image-cell {
    text-align: center !important;
    vertical-align: top !important;
}

.rsif-photo-review-image-cell a {
    display: inline-block !important;
    line-height: 0 !important;
}

.rsif-photo-review-thumb,
.rsif-photo-review-no-thumb {
    width: 82px !important;
    height: 82px !important;
    min-width: 82px !important;
    min-height: 82px !important;
    max-width: 82px !important;
    max-height: 82px !important;
    object-fit: cover !important;
}

/* Informationsfältet får använda bredden i mitten. */
.rsif-photo-review-info-cell {
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
}

.rsif-photo-review-info-cell h3 {
    margin: 0 0 9px !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
}

.rsif-photo-review-facts {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 5px 22px !important;
    margin: 0 !important;
}

.rsif-photo-review-facts div {
    min-width: 0 !important;
}

.rsif-photo-review-facts dt,
.rsif-photo-review-facts dd {
    font-size: 13px !important;
    line-height: 1.4 !important;
}

.rsif-photo-review-facts dd {
    overflow-wrap: anywhere !important;
}

/* Åtgärdsknapparna hålls kompakta i högerspalten. */
.rsif-photo-review-actions-cell {
    vertical-align: top !important;
}

.rsif-photo-review-actions {
    display: grid !important;
    gap: 8px !important;
    width: 100% !important;
}

.rsif-photo-review-actions .rsif-ui-button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 38px !important;
    padding: 9px 10px !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

/* Checkboxraden över tabellen får mer luft och tydligare gruppering. */
.rsif-photo-review-bulk-toolbar {
    padding: 12px 14px !important;
    border-radius: 14px !important;
}

.rsif-photo-review-bulk-submit {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 190px !important;
}

/* På smalare skärmar behålls tabellen scrollbar i stället för hoptryckt. */
@media (max-width: 980px) {
    .rsif-photo-review-table {
        min-width: 900px !important;
    }
}

@media (max-width: 767px) {
    .rsif-photo-review-bulk-toolbar {
        display: grid !important;
        gap: 10px !important;
    }

    .rsif-photo-review-bulk-submit {
        width: 100% !important;
        min-width: 0 !important;
    }
}


/* ===== Upload accordion v2.9 ===== */

/* =========================================================
   RSIF FOTO – uppladdningssida med grupper och dragspel
   Version 2.9
   Lägg längst ned i den centrala CSS-filen.
   ========================================================= */

.rsif-photo-upload-overview {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 0 24px !important;
}

.rsif-photo-upload-overview span,
.rsif-photo-upload-section__count {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    min-height: 34px !important;
    padding: 7px 11px !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 999px !important;
    background: rgba(80, 0, 100, .06) !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
    font-weight: 600 !important;
}

.rsif-photo-upload-overview strong {
    color: inherit !important;
    font-size: 15px !important;
    line-height: 1 !important;
}

.rsif-photo-upload-sections {
    display: grid !important;
    gap: 34px !important;
}

.rsif-photo-upload-section {
    display: grid !important;
    gap: 13px !important;
}

.rsif-photo-upload-section__header {
    display: flex !important;
    align-items: end !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 0 2px !important;
}

.rsif-photo-upload-section__header h3 {
    margin: 8px 0 3px !important;
    padding: 0 !important;
    color: var(--rsif-text, #222222) !important;
    font-size: clamp(23px, 3vw, 29px) !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    font-weight: 700 !important;
}

.rsif-photo-upload-section__header p {
    margin: 0 !important;
    color: var(--rsif-muted, #555555) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.rsif-photo-upload-accordion-list {
    display: grid !important;
    gap: 11px !important;
}

.rsif-photo-upload-accordion {
    overflow: hidden !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 16px !important;
    background: var(--rsif-surface, #ffffff) !important;
    box-shadow: 0 7px 20px rgba(30, 20, 35, .045) !important;
}

.rsif-photo-upload-accordion--complete {
    border-color: rgba(60, 143, 128, .28) !important;
    background:
        linear-gradient(
            135deg,
            rgba(60, 143, 128, .08),
            rgba(255, 255, 255, .95)
        ) !important;
}

.rsif-photo-upload-accordion summary {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    min-height: 92px !important;
    padding: 15px 58px 15px 16px !important;
    cursor: pointer !important;
    list-style: none !important;
}

.rsif-photo-upload-accordion summary::-webkit-details-marker {
    display: none !important;
}

.rsif-photo-upload-accordion summary::after {
    content: "+" !important;
    position: absolute !important;
    top: 50% !important;
    right: 18px !important;
    transform: translateY(-50%) !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 29px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
}

.rsif-photo-upload-accordion[open] summary::after {
    content: "−" !important;
}

.rsif-photo-upload-accordion__summary-main {
    min-width: 0 !important;
}

.rsif-photo-upload-accordion__summary-main h4 {
    margin: 8px 0 5px !important;
    padding: 0 !important;
    color: var(--rsif-text, #222222) !important;
    font-size: 19px !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    font-weight: 700 !important;
}

.rsif-photo-upload-accordion__summary-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px 15px !important;
    color: var(--rsif-muted, #555555) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

.rsif-photo-upload-accordion__summary-meta strong {
    color: inherit !important;
    font-weight: 700 !important;
}

.rsif-photo-upload-accordion__summary-state {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    min-height: 30px !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    background: rgba(80, 0, 100, .08) !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}

.rsif-photo-upload-accordion--complete .rsif-photo-upload-accordion__summary-state {
    background: rgba(60, 143, 128, .14) !important;
    color: #246f63 !important;
}

.rsif-photo-upload-accordion__content {
    display: grid !important;
    gap: 14px !important;
    padding: 16px !important;
    border-top: 1px solid rgba(80, 0, 100, .10) !important;
    background: rgba(255, 255, 255, .72) !important;
}

.rsif-photo-upload-accordion__content .rsif-photo-upload-rules {
    max-width: 700px !important;
    margin-bottom: 0 !important;
}

.rsif-photo-upload-accordion__content .rsif-photo-status-list {
    width: min(100%, 420px) !important;
}

.rsif-photo-upload-accordion__content .rsif-photo-upload-form {
    display: grid !important;
    gap: 14px !important;
    width: min(100%, 700px) !important;
    margin-top: 2px !important;
}

@media (max-width: 767px) {
    .rsif-photo-upload-sections {
        gap: 28px !important;
    }

    .rsif-photo-upload-section__header {
        display: grid !important;
        align-items: start !important;
    }

    .rsif-photo-upload-section__count {
        justify-self: start !important;
    }

    .rsif-photo-upload-accordion summary {
        display: grid !important;
        gap: 10px !important;
        min-height: auto !important;
        padding: 14px 48px 14px 14px !important;
    }

    .rsif-photo-upload-accordion__summary-state {
        justify-self: start !important;
    }

    .rsif-photo-upload-accordion__summary-main h4 {
        font-size: 18px !important;
    }

    .rsif-photo-upload-accordion__content {
        padding: 14px !important;
    }

    .rsif-photo-upload-rules div {
        grid-template-columns: 1fr !important;
        gap: 3px !important;
    }
}


/* ===== Imagely slideshow/fullscreen v1.6 ===== */

/* =========================================================
   RSIF FOTO – Imagely REST-integration v1.1
   Lägg längst ned i den centrala CSS-filen.
   ========================================================= */

.rsif-photo-imagely-admin-panel {
    display: grid !important;
    gap: 14px !important;
    margin: 30px 0 0 !important;
    padding: 18px !important;
    border: 1px solid rgba(80, 0, 100, .16) !important;
    border-radius: 18px !important;
    background: rgba(80, 0, 100, .045) !important;
}

.rsif-photo-imagely-admin-panel h3 {
    margin: 8px 0 3px !important;
    font-size: 23px !important;
    line-height: 1.15 !important;
}

.rsif-photo-imagely-admin-panel p {
    margin: 0 !important;
}

.rsif-photo-imagely-admin-stats,
.rsif-photo-imagely-admin-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.rsif-photo-imagely-admin-stats span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 7px 10px !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 12px !important;
    line-height: 1 !important;
}

.rsif-photo-imagely-diagnos {
    overflow-x: auto !important;
}

.rsif-photo-imagely-diagnos table {
    width: 100% !important;
    margin: 12px 0 24px !important;
    border-collapse: collapse !important;
    background: #ffffff !important;
}

.rsif-photo-imagely-diagnos th,
.rsif-photo-imagely-diagnos td {
    padding: 8px 10px !important;
    border: 1px solid #dddddd !important;
    text-align: left !important;
    vertical-align: top !important;
}

@media (max-width: 767px) {
    .rsif-photo-imagely-admin-actions .rsif-ui-button {
        width: 100% !important;
    }
}


/* =========================================================
   RSIF FOTO – Imagelyarkiv, dragspel och bildspel v1.4
   ========================================================= */

.rsif-photo-imagely-archive {
    display: grid !important;
    gap: 14px !important;
}

.rsif-photo-imagely-accordion {
    overflow: hidden !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 17px !important;
    background: #ffffff !important;
    box-shadow: 0 8px 22px rgba(30, 20, 35, .05) !important;
}

.rsif-photo-imagely-accordion summary {
    position: relative !important;
    display: block !important;
    padding: 17px 58px 17px 18px !important;
    cursor: pointer !important;
    list-style: none !important;
    background:
        linear-gradient(
            135deg,
            rgba(80, 0, 100, .065),
            rgba(230, 0, 110, .045)
        ) !important;
}

.rsif-photo-imagely-accordion summary::-webkit-details-marker {
    display: none !important;
}

.rsif-photo-imagely-accordion summary::after {
    content: "+" !important;
    position: absolute !important;
    top: 50% !important;
    right: 18px !important;
    transform: translateY(-50%) !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 30px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
}

.rsif-photo-imagely-accordion[open] summary::after {
    content: "−" !important;
}

.rsif-photo-imagely-accordion summary strong,
.rsif-photo-imagely-accordion summary small {
    display: block !important;
}

.rsif-photo-imagely-accordion summary strong {
    margin-top: 9px !important;
    color: var(--rsif-text, #222222) !important;
    font-size: 21px !important;
    line-height: 1.2 !important;
}

.rsif-photo-imagely-accordion summary small {
    margin-top: 4px !important;
    color: var(--rsif-muted, #555555) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

.rsif-photo-imagely-accordion__content {
    display: grid !important;
    gap: 15px !important;
    padding: 17px 18px 21px !important;
}

.rsif-photo-imagely-slideshow-button {
    justify-self: start !important;
}

.rsif-photo-imagely-gallery {
    min-width: 0 !important;
}

/* Helskärmsbildspel */

body.rsif-photo-imagely-slideshow-open {
    overflow: hidden !important;
}

.rsif-photo-imagely-slideshow {
    position: fixed !important;
    z-index: 999999 !important;
    inset: 0 !important;
    display: grid !important;
    place-items: center !important;
    padding: 18px !important;
}

.rsif-photo-imagely-slideshow[hidden] {
    display: none !important;
}

.rsif-photo-imagely-slideshow__backdrop {
    position: absolute !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, .9) !important;
}

.rsif-photo-imagely-slideshow__dialog {
    position: relative !important;
    z-index: 1 !important;
    display: grid !important;
    grid-template-rows: auto 1fr auto !important;
    width: min(1500px, 96vw) !important;
    height: min(940px, 94vh) !important;
    overflow: hidden !important;
    border-radius: 17px !important;
    background: #101010 !important;
    color: #ffffff !important;
}

.rsif-photo-imagely-slideshow__dialog header,
.rsif-photo-imagely-slideshow__dialog footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 12px 16px !important;
    background: rgba(255, 255, 255, .07) !important;
}

.rsif-photo-imagely-slideshow__close,
.rsif-photo-imagely-slideshow__previous,
.rsif-photo-imagely-slideshow__next,
.rsif-photo-imagely-slideshow__autoplay {
    border: 0 !important;
    cursor: pointer !important;
}

.rsif-photo-imagely-slideshow__close {
    padding: 0 6px !important;
    background: transparent !important;
    color: #ffffff !important;
    font-size: 35px !important;
    line-height: 1 !important;
}

.rsif-photo-imagely-slideshow__stage {
    display: grid !important;
    grid-template-columns: 64px 1fr 64px !important;
    align-items: center !important;
    min-height: 0 !important;
}

.rsif-photo-imagely-slideshow__stage figure {
    display: grid !important;
    place-items: center !important;
    gap: 9px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 14px !important;
}

.rsif-photo-imagely-slideshow__image {
    display: block !important;
    max-width: 100% !important;
    max-height: calc(94vh - 155px) !important;
    object-fit: contain !important;
}

.rsif-photo-imagely-slideshow__caption {
    min-height: 18px !important;
    color: rgba(255, 255, 255, .78) !important;
    font-size: 13px !important;
    text-align: center !important;
}

.rsif-photo-imagely-slideshow__previous,
.rsif-photo-imagely-slideshow__next {
    height: 100% !important;
    background: transparent !important;
    color: #ffffff !important;
    font-size: 50px !important;
}

.rsif-photo-imagely-slideshow__autoplay {
    padding: 8px 13px !important;
    border-radius: 999px !important;
    background: var(--rsif-primary, #e6006e) !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

@media (max-width: 767px) {
    .rsif-photo-imagely-accordion summary {
        padding: 15px 50px 15px 14px !important;
    }

    .rsif-photo-imagely-accordion__content {
        padding: 14px !important;
    }

    .rsif-photo-imagely-slideshow {
        padding: 0 !important;
    }

    .rsif-photo-imagely-slideshow__dialog {
        width: 100vw !important;
        height: 100vh !important;
        border-radius: 0 !important;
    }

    .rsif-photo-imagely-slideshow__stage {
        grid-template-columns: 46px 1fr 46px !important;
    }

    .rsif-photo-imagely-slideshow__image {
        max-height: calc(100vh - 150px) !important;
    }
}


/* =========================================================
   RSIF FOTO – avskalat helskärmsbildspel v1.5
   Läggs sist för att ersätta tidigare bildspelslayout.
   Endast bild och eventuellt stjärnbetyg ska synas.
   ========================================================= */

body.rsif-photo-imagely-slideshow-open {
    overflow: hidden !important;
}

.rsif-photo-imagely-slideshow {
    position: fixed !important;
    z-index: 999999 !important;
    inset: 0 !important;
    display: block !important;
    padding: 0 !important;
    background: #000000 !important;
}

.rsif-photo-imagely-slideshow[hidden] {
    display: none !important;
}

.rsif-photo-imagely-slideshow__dialog {
    position: fixed !important;
    inset: 0 !important;
    display: grid !important;
    width: 100vw !important;
    height: 100vh !important;
    min-width: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #000000 !important;
    color: #ffffff !important;
}

.rsif-photo-imagely-slideshow__image {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100vw !important;
    height: 100vh !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    background: #000000 !important;
}

/*
 * Navigationsytorna är osynliga. Klick eller tryck på respektive sida
 * byter bild utan att några knappar stör presentationen.
 */
.rsif-photo-imagely-slideshow__previous,
.rsif-photo-imagely-slideshow__next {
    position: absolute !important;
    z-index: 3 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 28vw !important;
    height: 100vh !important;
    border: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    background: transparent !important;
    cursor: pointer !important;
}

.rsif-photo-imagely-slideshow__previous {
    left: 0 !important;
    cursor: w-resize !important;
}

.rsif-photo-imagely-slideshow__next {
    right: 0 !important;
    cursor: e-resize !important;
}

/*
 * Stängningsknappen finns för tillgänglighet men syns endast diskret
 * när muspekaren befinner sig över presentationen eller knappen får fokus.
 */
.rsif-photo-imagely-slideshow__close {
    position: absolute !important;
    z-index: 5 !important;
    top: max(14px, env(safe-area-inset-top)) !important;
    right: max(16px, env(safe-area-inset-right)) !important;
    width: 44px !important;
    height: 44px !important;
    border: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    background: rgba(0, 0, 0, .34) !important;
    color: #ffffff !important;
    font-size: 35px !important;
    line-height: 40px !important;
    cursor: pointer !important;
    transition: opacity .18s ease !important;
}

.rsif-photo-imagely-slideshow__dialog:hover .rsif-photo-imagely-slideshow__close,
.rsif-photo-imagely-slideshow__close:focus-visible {
    opacity: .72 !important;
}

/* Endast grafiska stjärnor. Ingen bildtitel, inget filnamn, ingen fotograf. */
.rsif-photo-imagely-slideshow__rating {
    position: absolute !important;
    z-index: 4 !important;
    left: 50% !important;
    bottom: max(22px, env(safe-area-inset-bottom)) !important;
    transform: translateX(-50%) !important;
    display: block !important;
    padding: 7px 12px 9px !important;
    border-radius: 999px !important;
    background: rgba(0, 0, 0, .46) !important;
    backdrop-filter: blur(5px) !important;
}

.rsif-photo-imagely-slideshow__rating[hidden] {
    display: none !important;
}

.rsif-photo-imagely-slideshow__rating-stars {
    position: relative !important;
    display: inline-block !important;
    overflow: hidden !important;
    font-size: clamp(26px, 3.4vw, 42px) !important;
    line-height: 1 !important;
    letter-spacing: 4px !important;
    white-space: nowrap !important;
}

.rsif-photo-imagely-slideshow__rating-stars-base {
    display: block !important;
    color: rgba(255, 255, 255, .30) !important;
}

.rsif-photo-imagely-slideshow__rating-stars-fill {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    display: block !important;
    width: 0 !important;
    overflow: hidden !important;
    color: #ffd24a !important;
    white-space: nowrap !important;
}

/* Dölj rester från tidigare bildspelslayout om äldre cache ligger kvar. */
.rsif-photo-imagely-slideshow__backdrop,
.rsif-photo-imagely-slideshow__title,
.rsif-photo-imagely-slideshow__caption,
.rsif-photo-imagely-slideshow__counter,
.rsif-photo-imagely-slideshow__autoplay,
.rsif-photo-imagely-slideshow__dialog header,
.rsif-photo-imagely-slideshow__dialog footer,
.rsif-photo-imagely-slideshow__stage {
    display: none !important;
}

@media (max-width: 767px) {
    .rsif-photo-imagely-slideshow__previous,
    .rsif-photo-imagely-slideshow__next {
        width: 34vw !important;
    }

    .rsif-photo-imagely-slideshow__rating {
        bottom: max(16px, env(safe-area-inset-bottom)) !important;
    }
}


/* =========================================================
   RSIF FOTO – riktig webbläsarhelskärm v1.6
   Läggs allra sist och vinner över tidigare bildspelsregler.
   ========================================================= */

.rsif-photo-imagely-slideshow,
.rsif-photo-imagely-slideshow:fullscreen,
.rsif-photo-imagely-slideshow:-webkit-full-screen {
    position: fixed !important;
    z-index: 2147483647 !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    min-width: 100vw !important;
    min-height: 100vh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    background: #000000 !important;
}

.rsif-photo-imagely-slideshow:fullscreen,
.rsif-photo-imagely-slideshow:-webkit-full-screen {
    width: 100% !important;
    height: 100% !important;
}

.rsif-photo-imagely-slideshow__dialog,
.rsif-photo-imagely-slideshow:fullscreen .rsif-photo-imagely-slideshow__dialog,
.rsif-photo-imagely-slideshow:-webkit-full-screen .rsif-photo-imagely-slideshow__dialog {
    position: absolute !important;
    z-index: 1 !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    background: #000000 !important;
}

.rsif-photo-imagely-slideshow__image {
    position: absolute !important;
    z-index: 1 !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    background: #000000 !important;
}

/*
 * Helt osynlig stängningsknapp. Escape används normalt.
 * Knappen finns kvar för tangentbords- och skärmläsarstöd.
 */
.rsif-photo-imagely-slideshow__close,
.rsif-photo-imagely-slideshow__dialog:hover .rsif-photo-imagely-slideshow__close,
.rsif-photo-imagely-slideshow__close:focus-visible {
    position: absolute !important;
    z-index: 5 !important;
    top: 0 !important;
    right: 0 !important;
    width: 1px !important;
    height: 1px !important;
    min-width: 1px !important;
    min-height: 1px !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

/*
 * WordPress adminfält och Divi får inte ligga ovanpå reservläget.
 */
body.rsif-photo-imagely-slideshow-open #wpadminbar {
    visibility: hidden !important;
}


/* ===== Maximal slideshow fill v1.7 ===== */

/* =========================================================
   RSIF FOTO – bildspelet fyller skärmen maximalt
   Tillägg efter Imagely-CSS v1.6
   ========================================================= */

/*
 * Bilden skalas proportionellt så långt det går utan beskärning:
 * - liggande bild fyller normalt skärmens bredd
 * - stående bild fyller normalt skärmens höjd
 * - bilden centreras alltid i den återstående svarta ytan
 */
.rsif-photo-imagely-slideshow,
.rsif-photo-imagely-slideshow:fullscreen,
.rsif-photo-imagely-slideshow:-webkit-full-screen,
.rsif-photo-imagely-slideshow__dialog {
    width: 100vw !important;
    height: 100vh !important;
    width: 100dvw !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    background: #000000 !important;
}

.rsif-photo-imagely-slideshow__image {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100vw !important;
    height: 100vh !important;
    width: 100dvw !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #000000 !important;
}


/* ===== Imagely archive ratings v1.8 ===== */

/* =========================================================
   RSIF FOTO – gemensamt bildarkiv med stjärnbetyg
   Version 1.8
   Lägg sist i den centrala CSS-filen.
   ========================================================= */

.rsif-photo-imagely-rating-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)) !important;
    gap: 16px !important;
    margin-top: 2px !important;
}

.rsif-photo-imagely-rating-card {
    display: grid !important;
    align-content: start !important;
    overflow: hidden !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 15px !important;
    background: #ffffff !important;
    box-shadow: 0 7px 18px rgba(30, 20, 35, .045) !important;
}

.rsif-photo-imagely-rating-card__image-link {
    display: block !important;
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important;
    background: rgba(80, 0, 100, .045) !important;
}

.rsif-photo-imagely-rating-card__image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: rgba(80, 0, 100, .025) !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating {
    margin: 0 !important;
    padding: 12px !important;
    border-top: 1px solid rgba(80, 0, 100, .10) !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating__stars {
    gap: 5px !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating__star {
    font-size: 27px !important;
}

.rsif-photo-imagely-rating-card__legacy-note {
    margin: 0 !important;
    padding: 11px 12px !important;
    color: var(--rsif-muted, #555555) !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}

@media (max-width: 767px) {
    .rsif-photo-imagely-rating-grid {
        grid-template-columns: repeat(auto-fill, minmax(155px, 1fr)) !important;
        gap: 11px !important;
    }

    .rsif-photo-imagely-rating-card .rsif-photo-rating {
        padding: 10px !important;
    }

    .rsif-photo-imagely-rating-card .rsif-photo-rating__star {
        font-size: 25px !important;
    }
}


/* ===== Visible rating result v1.9 ===== */

/* =========================================================
   RSIF FOTO – synligt betygsresultat i helskärmsbildspel
   Version 1.9
   Lägg sist i den centrala CSS-filen.
   ========================================================= */

/*
 * Tidigare CSS satte width: 0 !important på fyllningen.
 * JavaScript styr nu denna CSS-variabel för att visa snittbetyget.
 */
.rsif-photo-imagely-slideshow__rating-stars-fill {
    width: var(--rsif-photo-rating-fill, 0%) !important;
}

/*
 * Visa både grafiska stjärnor och ett tydligt anonymt resultat.
 * Fotografens namn, bildtitel och filnamn visas fortfarande inte.
 */
.rsif-photo-imagely-slideshow__rating {
    display: grid !important;
    justify-items: center !important;
    gap: 3px !important;
    min-width: 220px !important;
}

.rsif-photo-imagely-slideshow__rating[hidden] {
    display: none !important;
}

.rsif-photo-imagely-slideshow__rating-summary {
    display: block !important;
    color: rgba(255, 255, 255, .96) !important;
    font-family: "Poppins", Arial, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: .01em !important;
    text-align: center !important;
    white-space: nowrap !important;
}

@media (max-width: 767px) {
    .rsif-photo-imagely-slideshow__rating {
        min-width: 190px !important;
    }

    .rsif-photo-imagely-slideshow__rating-summary {
        font-size: 12px !important;
    }
}


/* ===== Filled stars v1.9.1 ===== */

/* =========================================================
   RSIF FOTO – tydligt ifyllda stjärnor i bildspelet
   Version 1.9.1
   Lägg allra sist i den centrala CSS-filen.
   ========================================================= */

/*
 * Tidigare lösning lade ett andra stjärnlager ovanpå det grå lagret.
 * I vissa webbläsare klipps det lagret inte korrekt.
 *
 * Den här lösningen färgsätter i stället själva stjärntexten med en
 * gradient. CSS-variabeln styr fortfarande exakt hur stor del som fylls:
 * 2,0 av 5 = 40 %
 * 3,5 av 5 = 70 %
 * 5,0 av 5 = 100 %
 */
.rsif-photo-imagely-slideshow__rating-stars-base {
    display: block !important;
    color: transparent !important;
    background:
        linear-gradient(
            90deg,
            #ffd24a 0%,
            #ffd24a var(--rsif-photo-rating-fill, 0%),
            rgba(255, 255, 255, .30) var(--rsif-photo-rating-fill, 0%),
            rgba(255, 255, 255, .30) 100%
        ) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

/*
 * Det gamla överlagrade lagret behövs inte längre.
 * Dölj det så att olika webbläsare inte försöker tolka två lager samtidigt.
 */
.rsif-photo-imagely-slideshow__rating-stars-fill {
    display: none !important;
}


/* ===== Rating info block ===== */

/* =========================================================
   RSIF FOTO – informationsblock under stjärnbetyg
   Lägg allra sist i den centrala CSS-filen.
   ========================================================= */

.rsif-photo-rating__help {
    display: block !important;
    margin: 10px 0 0 !important;
    padding: 11px 13px !important;
    border-left: 4px solid var(--rsif-secondary, #500064) !important;
    border-radius: 10px !important;
    background: rgba(80, 0, 100, .10) !important;
    color: var(--rsif-text, #222222) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
}

/* Lite lugnare utseende på mindre skärmar. */
@media (max-width: 767px) {
    .rsif-photo-rating__help {
        padding: 10px 11px !important;
        font-size: 12px !important;
    }
}


/* ===== Spacing between cards ===== */

/* =========================================================
   RSIF FOTO – mer luft mellan bildkort i betygsvyn
   Lägg allra sist i den centrala CSS-filen.
   ========================================================= */

/*
 * Informationsblocket hör till bilden ovanför och får därför
 * extra luft under sig innan nästa bildkort börjar.
 */
.rsif-photo-imagely-rating-card .rsif-photo-rating__help {
    margin: 10px 0 18px !important;
}

/*
 * Skapa tydligare separation mellan bildkorten även i enkolumnsläge.
 */
.rsif-photo-imagely-rating-grid {
    row-gap: 28px !important;
}

/*
 * Lite extra nederkant inne i kortet så att blocket inte upplevs
 * som klistrat mot nästa bild.
 */
.rsif-photo-imagely-rating-card {
    padding-bottom: 8px !important;
}


/* ===== Review accordion year filter v3.1 ===== */

/* =========================================================
   RSIF FOTO – granskningssida med säkert dragspel och årfilter
   Version 3.1
   Lägg allra sist i den centrala CSS-filen.
   ========================================================= */

/* Årsfilter */

.rsif-photo-review-year-filter {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 22px !important;
    padding: 10px 12px !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 14px !important;
    background: rgba(80, 0, 100, .055) !important;
}

.rsif-photo-review-year-filter label {
    color: var(--rsif-secondary, #500064) !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

.rsif-photo-review-year-filter select {
    min-width: 112px !important;
    min-height: 40px !important;
    padding: 7px 32px 7px 10px !important;
    border: 1px solid rgba(80, 0, 100, .20) !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

/* Robust accordion som inte bygger på webbläsarens details-rendering. */

.rsif-photo-review-group--accordion {
    overflow: hidden !important;
    border: 1px solid rgba(80, 0, 100, .15) !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 8px 22px rgba(30, 20, 35, .045) !important;
}

.rsif-photo-review-group--accordion + .rsif-photo-review-group--accordion {
    margin-top: 15px !important;
}

.rsif-photo-review-group--accordion .rsif-photo-review-group__header {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    width: 100% !important;
    min-height: 108px !important;
    margin: 0 !important;
    padding: 18px 72px 18px 22px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(
            135deg,
            rgba(80, 0, 100, .075),
            rgba(230, 0, 110, .045)
        ) !important;
    color: inherit !important;
    cursor: pointer !important;
    text-align: left !important;
}

.rsif-photo-review-group--accordion .rsif-photo-review-group__header::after {
    content: "+" !important;
    position: absolute !important;
    top: 50% !important;
    right: 23px !important;
    transform: translateY(-50%) !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 34px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
}

.rsif-photo-review-group--accordion.is-open .rsif-photo-review-group__header::after {
    content: "−" !important;
}

.rsif-photo-review-group--accordion.is-open .rsif-photo-review-group__header {
    border-bottom: 1px solid rgba(80, 0, 100, .12) !important;
}

.rsif-photo-review-group--accordion .rsif-photo-review-group__header h3 {
    margin: 0 0 4px !important;
    padding: 0 !important;
    color: var(--rsif-text, #222222) !important;
}

.rsif-photo-review-group--accordion .rsif-photo-review-group__header p {
    margin: 0 !important;
}

.rsif-photo-review-group--accordion .rsif-photo-review-group__content {
    padding: 18px !important;
    background: #ffffff !important;
}

.rsif-photo-review-group--accordion .rsif-photo-review-group__content[hidden] {
    display: none !important;
}

.rsif-photo-review-group--accordion .rsif-photo-review-group__bulk-form {
    margin: 0 !important;
}

.rsif-photo-review-group--accordion .rsif-photo-review-group__stats {
    margin-right: 8px !important;
}

@media (max-width: 980px) {
    .rsif-photo-review-group--accordion .rsif-photo-review-group__header {
        display: grid !important;
        gap: 14px !important;
        min-height: auto !important;
        padding: 17px 58px 17px 17px !important;
    }

    .rsif-photo-review-group--accordion .rsif-photo-review-group__header::after {
        right: 17px !important;
    }

    .rsif-photo-review-group--accordion .rsif-photo-review-group__stats {
        margin-right: 0 !important;
    }
}

@media (max-width: 767px) {
    .rsif-photo-review-year-filter {
        display: grid !important;
        width: 100% !important;
    }

    .rsif-photo-review-year-filter select {
        width: 100% !important;
    }

    .rsif-photo-review-group--accordion .rsif-photo-review-group__header {
        padding: 14px 48px 14px 14px !important;
    }

    .rsif-photo-review-group--accordion .rsif-photo-review-group__header::after {
        right: 14px !important;
        font-size: 30px !important;
    }

    .rsif-photo-review-group--accordion .rsif-photo-review-group__content {
        padding: 10px !important;
    }
}


/* =========================================================
   RSIF Foto v0.1.2 – albumfilter och etikettstädning
   ========================================================= */

.rsif-photo-imagely-year-filter {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 20px !important;
    padding: 10px 12px !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 14px !important;
    background: rgba(80, 0, 100, .055) !important;
}

.rsif-photo-imagely-year-filter label {
    color: var(--rsif-secondary, #500064) !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

.rsif-photo-imagely-year-filter select {
    min-width: 112px !important;
    min-height: 40px !important;
    padding: 7px 32px 7px 10px !important;
    border: 1px solid rgba(80, 0, 100, .20) !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

.rsif-photo-upload-overview span,
.rsif-photo-upload-section__count {
    gap: 6px !important;
}

@media (max-width: 767px) {
    .rsif-photo-imagely-year-filter {
        display: grid !important;
        width: 100% !important;
    }

    .rsif-photo-imagely-year-filter select {
        width: 100% !important;
    }
}


/* =========================================================
   RSIF FOTO – v0.1.3 bildarkiv och bildspel
   - Dölj sidokolumn på bildarkivssidan när temat ger sidebar.
   - Visa diskreta framåt/bakåt-pilar i helskärmsbildspelet.
   - Ta bort resize-cursor som såg teknisk ut.
   ========================================================= */

/* Bildarkivet ska helst ligga i fullbredd även om sidan råkar ha sidebar-template. */
body:has(.rsif-photo-imagely-archive) #sidebar,
body:has(.rsif-photo-imagely-archive) .et_pb_widget_area,
body:has(.rsif-photo-imagely-archive) .widget_search {
    display: none !important;
}

body:has(.rsif-photo-imagely-archive).et_right_sidebar #left-area,
body:has(.rsif-photo-imagely-archive).et_left_sidebar #left-area,
body:has(.rsif-photo-imagely-archive) #left-area {
    width: 100% !important;
    max-width: none !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

body:has(.rsif-photo-imagely-archive) #main-content .container:before {
    display: none !important;
}

/* Helskärmsbildspel: synliga men diskreta navigeringspilar. */
.rsif-photo-imagely-slideshow__previous,
.rsif-photo-imagely-slideshow__next {
    position: absolute !important;
    z-index: 4 !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    display: grid !important;
    place-items: center !important;
    width: clamp(46px, 6vw, 74px) !important;
    height: clamp(64px, 10vh, 110px) !important;
    border: 0 !important;
    border-radius: 999px !important;
    padding: 0 !important;
    opacity: .42 !important;
    background: rgba(0, 0, 0, .36) !important;
    color: #ffffff !important;
    cursor: pointer !important;
    transition: opacity .18s ease, background .18s ease, transform .18s ease !important;
}

.rsif-photo-imagely-slideshow__previous {
    left: max(18px, env(safe-area-inset-left)) !important;
}

.rsif-photo-imagely-slideshow__next {
    right: max(18px, env(safe-area-inset-right)) !important;
}

.rsif-photo-imagely-slideshow__previous::before,
.rsif-photo-imagely-slideshow__next::before {
    display: block !important;
    font-family: Arial, sans-serif !important;
    font-size: clamp(40px, 5vw, 68px) !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    color: #ffffff !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .55) !important;
}

.rsif-photo-imagely-slideshow__previous::before {
    content: "‹" !important;
    margin-right: 4px !important;
}

.rsif-photo-imagely-slideshow__next::before {
    content: "›" !important;
    margin-left: 4px !important;
}

.rsif-photo-imagely-slideshow__previous:hover,
.rsif-photo-imagely-slideshow__next:hover,
.rsif-photo-imagely-slideshow__previous:focus-visible,
.rsif-photo-imagely-slideshow__next:focus-visible {
    opacity: .86 !important;
    background: rgba(0, 0, 0, .54) !important;
}

/* Pilarnas klickyta ska inte täcka för mycket av bilden. */
@media (max-width: 767px) {
    .rsif-photo-imagely-slideshow__previous,
    .rsif-photo-imagely-slideshow__next {
        width: 46px !important;
        height: 76px !important;
        opacity: .50 !important;
    }

    .rsif-photo-imagely-slideshow__previous {
        left: 8px !important;
    }

    .rsif-photo-imagely-slideshow__next {
        right: 8px !important;
    }
}

/* =========================================================
   RSIF FOTO – Årets bild
   Version 0.1.8
   ========================================================= */
.rsif-photo-year-awards {
    display: grid !important;
    gap: 22px !important;
    margin: 24px 0 !important;
}
.rsif-photo-year-awards__header h2 {
    margin: 8px 0 6px !important;
}
.rsif-photo-year-awards__header p {
    max-width: 780px !important;
    margin: 0 !important;
}
.rsif-photo-year-awards__filters {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    align-items: end !important;
    padding: 14px !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 16px !important;
    background: rgba(80, 0, 100, .045) !important;
}
.rsif-photo-year-awards__filters label {
    display: grid !important;
    gap: 6px !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}
.rsif-photo-year-awards__filters select {
    min-height: 42px !important;
    min-width: 150px !important;
    padding: 8px 34px 8px 11px !important;
    border: 1px solid rgba(80, 0, 100, .20) !important;
    border-radius: 11px !important;
    background: #fff !important;
    color: var(--rsif-secondary, #500064) !important;
    font-weight: 700 !important;
}
.rsif-photo-year-awards__grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important;
    gap: 18px !important;
}
.rsif-photo-year-awards__card {
    overflow: hidden !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(30, 20, 35, .055) !important;
}
.rsif-photo-year-awards__image-link {
    display: block !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    background: rgba(80, 0, 100, .04) !important;
}
.rsif-photo-year-awards__image-link img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}
.rsif-photo-year-awards__body {
    position: relative !important;
    display: grid !important;
    gap: 8px !important;
    padding: 15px !important;
}
.rsif-photo-year-awards__rank {
    position: absolute !important;
    top: -22px !important;
    left: 14px !important;
    display: inline-flex !important;
    min-width: 48px !important;
    min-height: 48px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: var(--rsif-primary, #e6006e) !important;
    color: #fff !important;
    font-weight: 800 !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .14) !important;
}
.rsif-photo-year-awards__body .rsif-ui-badge {
    width: fit-content !important;
    margin-left: 58px !important;
}
.rsif-photo-year-awards__body h3 {
    margin: 2px 0 0 !important;
    font-size: 20px !important;
    line-height: 1.18 !important;
}
.rsif-photo-year-awards__body p {
    margin: 0 !important;
}
.rsif-photo-year-awards__rating {
    display: grid !important;
    gap: 4px !important;
    margin-top: 4px !important;
}
.rsif-photo-year-awards__stars {
    width: fit-content !important;
    color: transparent !important;
    background: linear-gradient(90deg, #ffd24a 0%, #ffd24a var(--rsif-photo-rating-fill, 0%), rgba(55, 45, 60, .30) var(--rsif-photo-rating-fill, 0%), rgba(55, 45, 60, .30) 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    font-size: 28px !important;
    line-height: 1 !important;
    letter-spacing: 1px !important;
}
.rsif-photo-year-awards__source {
    color: var(--rsif-muted, #555) !important;
    font-size: 12px !important;
}
@media (max-width: 767px) {
    .rsif-photo-year-awards__filters {
        display: grid !important;
    }
    .rsif-photo-year-awards__filters select,
    .rsif-photo-year-awards__filters button {
        width: 100% !important;
    }
    .rsif-photo-year-awards__grid {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   RSIF FOTO – Årets bild, vinnare och toppfotografer
   Version 0.1.9
   ========================================================= */
.rsif-photo-award-badge {
    display: inline-flex !important;
    width: fit-content !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #e6006e, #500064) !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    box-shadow: 0 8px 18px rgba(80, 0, 100, .18) !important;
}
.rsif-photo-award-badge--large {
    position: absolute !important;
    left: 18px !important;
    bottom: 18px !important;
    font-size: 17px !important;
    padding: 10px 16px !important;
}
.rsif-photo-award-badge--gallery {
    position: absolute !important;
    z-index: 2 !important;
    top: 10px !important;
    left: 10px !important;
    font-size: 12px !important;
    padding: 7px 10px !important;
}
.rsif-photo-imagely-rating-card {
    position: relative !important;
}
.rsif-photo-year-awards__photographer,
.rsif-photo-year-awards__metrics {
    color: var(--rsif-muted, #555555) !important;
    font-size: 13px !important;
}
.rsif-photo-year-awards__award-form {
    display: grid !important;
    gap: 8px !important;
    margin-top: 8px !important;
    padding: 10px !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 12px !important;
    background: rgba(80, 0, 100, .04) !important;
}
.rsif-photo-year-awards__award-form label {
    display: grid !important;
    gap: 5px !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}
.rsif-photo-year-awards__award-form textarea {
    width: 100% !important;
    min-height: 64px !important;
    border: 1px solid rgba(80, 0, 100, .18) !important;
    border-radius: 9px !important;
    background: #ffffff !important;
}
.rsif-photo-winners {
    display: grid !important;
    gap: 22px !important;
}
.rsif-photo-winner-card {
    display: grid !important;
    grid-template-columns: minmax(260px, 42%) 1fr !important;
    overflow: hidden !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    box-shadow: 0 12px 30px rgba(30, 20, 35, .06) !important;
}
.rsif-photo-winner-card__image {
    position: relative !important;
    min-height: 310px !important;
    background: rgba(80, 0, 100, .04) !important;
}
.rsif-photo-winner-card__image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}
.rsif-photo-winner-card__body {
    display: grid !important;
    align-content: center !important;
    gap: 10px !important;
    padding: 28px !important;
}
.rsif-photo-winner-card__body h2 {
    margin: 0 !important;
}
.rsif-photo-winner-card__body p {
    margin: 0 !important;
}
.rsif-photo-winner-card__motivation {
    margin-top: 6px !important;
    padding: 14px 16px !important;
    border-left: 5px solid var(--rsif-primary, #e6006e) !important;
    border-radius: 13px !important;
    background: rgba(230, 0, 110, .075) !important;
}
.rsif-photo-photographer-leaderboard__table {
    width: 100% !important;
    border-collapse: collapse !important;
    background: #ffffff !important;
}
.rsif-photo-photographer-leaderboard__table th,
.rsif-photo-photographer-leaderboard__table td {
    padding: 11px 12px !important;
    border-bottom: 1px solid rgba(80, 0, 100, .11) !important;
    text-align: left !important;
}
.rsif-photo-photographer-leaderboard__table th {
    background: rgba(80, 0, 100, .11) !important;
    color: var(--rsif-text, #222222) !important;
    font-weight: 800 !important;
}
@media (max-width: 900px) {
    .rsif-photo-winner-card {
        grid-template-columns: 1fr !important;
    }
    .rsif-photo-winner-card__image {
        min-height: 260px !important;
    }
}

/* =========================================================
   RSIF FOTO – bildspel med visningsläge och stjärnsättningsläge
   Version 0.2.0
   ========================================================= */

.rsif-photo-imagely-slideshow-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 18px !important;
}

.rsif-photo-imagely-slideshow.is-rating-mode .rsif-photo-imagely-slideshow__rating {
    bottom: 104px !important;
}

.rsif-photo-imagely-slideshow__rate {
    position: fixed !important;
    left: 50% !important;
    bottom: 26px !important;
    z-index: 2147483647 !important;
    transform: translateX(-50%) !important;
    display: grid !important;
    justify-items: center !important;
    gap: 5px !important;
    min-width: 330px !important;
    max-width: calc(100vw - 32px) !important;
    padding: 12px 16px 13px !important;
    border: 1px solid rgba(255, 255, 255, .18) !important;
    border-radius: 22px !important;
    background: rgba(20, 14, 26, .74) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 36px rgba(0, 0, 0, .38) !important;
    backdrop-filter: blur(8px) !important;
}

.rsif-photo-imagely-slideshow__rate[hidden] {
    display: none !important;
}

.rsif-photo-imagely-slideshow__rate-title {
    color: rgba(255, 255, 255, .90) !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

.rsif-photo-imagely-slideshow__rate-buttons {
    display: flex !important;
    gap: 4px !important;
}

.rsif-photo-imagely-slideshow__rate-buttons button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: rgba(255, 255, 255, .46) !important;
    font-size: 32px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    box-shadow: none !important;
}

.rsif-photo-imagely-slideshow__rate-buttons button:hover,
.rsif-photo-imagely-slideshow__rate-buttons button:focus-visible,
.rsif-photo-imagely-slideshow__rate-buttons button.is-active {
    color: #ffd24a !important;
}

.rsif-photo-imagely-slideshow__rate-buttons button:disabled {
    cursor: not-allowed !important;
    opacity: .48 !important;
}

.rsif-photo-imagely-slideshow__rate-summary {
    color: rgba(255, 255, 255, .96) !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

.rsif-photo-imagely-slideshow__rate-message {
    color: rgba(255, 255, 255, .80) !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

.rsif-photo-imagely-slideshow.is-clean-mode .rsif-photo-imagely-slideshow__rating,
.rsif-photo-imagely-slideshow.is-clean-mode .rsif-photo-imagely-slideshow__rate {
    display: none !important;
}

@media (max-width: 767px) {
    .rsif-photo-imagely-slideshow-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    .rsif-photo-imagely-slideshow-actions .rsif-ui-button {
        width: 100% !important;
        text-align: center !important;
    }

    .rsif-photo-imagely-slideshow__rate {
        bottom: 18px !important;
        min-width: 0 !important;
        width: calc(100vw - 28px) !important;
        padding: 10px 12px 12px !important;
    }

    .rsif-photo-imagely-slideshow__rate-buttons button {
        width: 38px !important;
        height: 38px !important;
        font-size: 29px !important;
    }
}

/* =========================================================
   RSIF FOTO – juryunderlag och toppfotografer
   Version 0.2.1
   ========================================================= */
.rsif-photo-year-awards,
.rsif-photo-photographer-leaderboard,
.rsif-photo-winners {
    font-family: "Poppins", Arial, sans-serif !important;
}

.rsif-photo-year-awards__header {
    max-width: 980px !important;
}

.rsif-photo-year-awards__header .rsif-ui-badge {
    margin-bottom: 10px !important;
}

.rsif-photo-year-awards__grid {
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)) !important;
    gap: 22px !important;
}

.rsif-photo-year-awards__card {
    display: grid !important;
    grid-template-rows: auto 1fr !important;
}

/* Grundorsak till "kortet spränger sin kolumn": grid-objekt krymper
   aldrig under sitt eget innehålls minsta bredd som standard, oavsett
   vad kolumnens minmax() säger, om inte min-width:0 sätts explicit.
   Det gäller varje nivå av nästlad grid i kedjan. */
.rsif-photo-year-awards__card,
.rsif-photo-year-awards__body,
.rsif-photo-year-awards__info-panel,
.rsif-photo-year-awards__info-grid,
.rsif-photo-year-awards__info-card,
.rsif-photo-year-awards__decision-metrics,
.rsif-photo-year-awards__decision-card,
.rsif-photo-year-awards__jury-reviews,
.rsif-photo-year-awards__jury-review,
.rsif-photo-year-awards__award-form--decision {
    min-width: 0 !important;
}

.rsif-photo-year-awards__image-link {
    aspect-ratio: 16 / 10 !important;
}

.rsif-photo-year-awards__body {
    gap: 10px !important;
    padding: 18px !important;
}

.rsif-photo-year-awards__rank {
    top: -26px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    font-size: 18px !important;
}

.rsif-photo-year-awards__body .rsif-ui-badge {
    margin-left: 64px !important;
}

.rsif-photo-year-awards__body h3,
.rsif-photo-year-awards__body p,
.rsif-photo-year-awards__rating strong,
.rsif-photo-year-awards__metrics,
.rsif-photo-year-awards__photographer,
.rsif-photo-year-awards__source {
    font-family: "Poppins", Arial, sans-serif !important;
}

.rsif-photo-year-awards__body h3 {
    font-size: 21px !important;
}

.rsif-photo-year-awards__metrics {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.rsif-photo-year-awards__metrics::before {
    content: "Statistik" !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    background: rgba(80, 0, 100, .08) !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.rsif-photo-year-awards__award-panel {
    margin-top: 8px !important;
    border: 1px solid rgba(80, 0, 100, .16) !important;
    border-radius: 14px !important;
    background: rgba(80, 0, 100, .035) !important;
    overflow: hidden !important;
}

.rsif-photo-year-awards__award-panel summary {
    padding: 12px 14px !important;
    cursor: pointer !important;
    color: var(--rsif-secondary, #500064) !important;
    font-weight: 800 !important;
    list-style: none !important;
}

.rsif-photo-year-awards__award-panel summary::-webkit-details-marker {
    display: none !important;
}

.rsif-photo-year-awards__award-panel summary::after {
    content: "+" !important;
    float: right !important;
    font-size: 20px !important;
    line-height: 1 !important;
}

.rsif-photo-year-awards__award-panel[open] summary::after {
    content: "−" !important;
}

.rsif-photo-year-awards__award-panel .rsif-photo-year-awards__award-form {
    margin: 0 !important;
    border: 0 !important;
    border-top: 1px solid rgba(80, 0, 100, .12) !important;
    border-radius: 0 !important;
    background: #ffffff !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-table-wrap {
    overflow-x: auto !important;
    border: 1px solid rgba(80, 0, 100, .12) !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 10px 26px rgba(30, 20, 35, .045) !important;
}

.rsif-photo-photographer-leaderboard__table {
    min-width: 980px !important;
    font-family: "Poppins", Arial, sans-serif !important;
}

.rsif-photo-photographer-leaderboard__table th {
    position: sticky !important;
    top: 0 !important;
    z-index: 1 !important;
    white-space: nowrap !important;
}

.rsif-photo-photographer-leaderboard__table th a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: var(--rsif-text, #222222) !important;
    text-decoration: none !important;
}

.rsif-photo-photographer-leaderboard__table th a::after {
    content: "↕" !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 12px !important;
    opacity: .75 !important;
}

.rsif-photo-photographer-leaderboard__table th a.is-active {
    color: var(--rsif-secondary, #500064) !important;
}

.rsif-photo-photographer-leaderboard__table th a.is-active::after {
    content: "↓" !important;
    opacity: 1 !important;
}

.rsif-photo-photographer-leaderboard__table tbody tr:nth-child(even) {
    background: rgba(80, 0, 100, .025) !important;
}

.rsif-photo-photographer-leaderboard__table tbody tr:hover {
    background: rgba(230, 0, 110, .055) !important;
}

.rsif-photo-photographer-leaderboard__table td:first-child {
    color: var(--rsif-secondary, #500064) !important;
    font-weight: 800 !important;
}

@media (max-width: 767px) {
    .rsif-photo-year-awards__grid {
        grid-template-columns: 1fr !important;
    }

    .rsif-photo-year-awards__image-link {
        aspect-ratio: 4 / 3 !important;
    }
}

/* =========================================================
   RSIF FOTO – juryunderlag med bildspel och jurybedömning
   Version 0.2.2
   ========================================================= */

.rsif-photo-year-awards__slideshow-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin: 0 0 24px !important;
}

.rsif-photo-year-awards__award-panel .rsif-photo-year-awards__award-form + .rsif-photo-year-awards__award-form {
    margin-top: 16px !important;
    padding-top: 16px !important;
    border-top: 1px solid rgba(80, 0, 100, .14) !important;
}

.rsif-photo-year-awards__award-form select {
    width: 100% !important;
    min-height: 44px !important;
    padding: 8px 12px !important;
    border: 1px solid rgba(80, 0, 100, .18) !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: var(--rsif-secondary, #500064) !important;
    font-weight: 700 !important;
}

/* =========================================================
   RSIF FOTO – jurybedömning i storbild
   Version 0.2.3
   ========================================================= */

.rsif-photo-year-awards__slideshow-actions--jury .rsif-ui-button {
    min-height: 52px !important;
    padding: 14px 22px !important;
    border-radius: 999px !important;
    font-family: "Poppins", Arial, sans-serif !important;
    font-weight: 800 !important;
}

.rsif-ui-button--gold {
    border-color: #b57a00 !important;
    background: linear-gradient(135deg, #f7c948, #d99a00) !important;
    color: #2d1700 !important;
}

.rsif-photo-year-awards__jury-summary {
    margin: 12px 12px 8px !important;
    padding: 12px 14px !important;
    border-left: 4px solid var(--rsif-secondary, #500064) !important;
    border-radius: 12px !important;
    background: rgba(80, 0, 100, .08) !important;
    font-weight: 700 !important;
}

.rsif-photo-year-awards__jury-reviews {
    display: grid !important;
    gap: 8px !important;
    margin: 0 12px 10px !important;
}

.rsif-photo-year-awards__jury-review {
    display: grid !important;
    gap: 5px !important;
    padding: 10px 12px !important;
    border: 1px solid rgba(80, 0, 100, .12) !important;
    border-radius: 12px !important;
    background: #ffffff !important;
}

.rsif-photo-year-awards__jury-review > div {
    display: flex !important;
    justify-content: space-between !important;
    gap: 10px !important;
    color: var(--rsif-secondary, #500064) !important;
}

.rsif-photo-year-awards__jury-review p,
.rsif-photo-year-awards__jury-hint {
    margin: 0 !important;
    color: var(--rsif-muted, #555555) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

.rsif-photo-year-awards__jury-hint {
    margin: 0 12px 12px !important;
}

.rsif-photo-year-awards__award-form--decision {
    margin-top: 0 !important;
}

.rsif-photo-jury-modal-open {
    overflow: hidden !important;
}

.rsif-photo-jury-modal[hidden] {
    display: none !important;
}

.rsif-photo-jury-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    background: #000000 !important;
}

.rsif-photo-jury-modal__dialog {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 360px !important;
    width: 100vw !important;
    height: 100vh !important;
    background: #000000 !important;
    color: #ffffff !important;
}

.rsif-photo-jury-modal__stage {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 18px 64px !important;
}

.rsif-photo-jury-modal__image {
    display: block !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
}

.rsif-photo-jury-modal__panel {
    display: grid !important;
    grid-template-rows: auto 1fr !important;
    gap: 18px !important;
    padding: 26px 22px !important;
    background: rgba(255, 255, 255, .96) !important;
    color: var(--rsif-text, #222222) !important;
    overflow-y: auto !important;
}

.rsif-photo-jury-modal__meta {
    display: grid !important;
    gap: 8px !important;
}

.rsif-photo-jury-modal__title {
    color: var(--rsif-secondary, #500064) !important;
    font-size: 22px !important;
    line-height: 1.2 !important;
}

.rsif-photo-jury-modal__event,
.rsif-photo-jury-modal__photographer,
.rsif-photo-jury-modal__member-rating,
.rsif-photo-jury-modal__jury-summary {
    font-size: 14px !important;
    line-height: 1.35 !important;
}

.rsif-photo-jury-modal__review {
    align-self: end !important;
    display: grid !important;
    gap: 12px !important;
    padding: 16px !important;
    border: 1px solid rgba(80, 0, 100, .16) !important;
    border-radius: 18px !important;
    background: rgba(80, 0, 100, .055) !important;
}

.rsif-photo-jury-modal__review-title {
    color: var(--rsif-secondary, #500064) !important;
    font-weight: 900 !important;
}

.rsif-photo-jury-modal__stars {
    display: flex !important;
    gap: 4px !important;
}

.rsif-photo-jury-modal__stars button {
    width: 42px !important;
    height: 42px !important;
    border: 0 !important;
    background: transparent !important;
    color: rgba(55, 45, 60, .34) !important;
    cursor: pointer !important;
    font-size: 34px !important;
    line-height: 1 !important;
}

.rsif-photo-jury-modal__stars button.is-active {
    color: #ffd24a !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .22) !important;
}

.rsif-photo-jury-modal__comment {
    width: 100% !important;
    min-height: 110px !important;
    padding: 12px !important;
    border: 1px solid rgba(80, 0, 100, .22) !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    color: var(--rsif-text, #222222) !important;
    font-family: "Poppins", Arial, sans-serif !important;
}

.rsif-photo-jury-modal__message {
    min-height: 20px !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

.rsif-photo-jury-modal__close,
.rsif-photo-jury-modal__previous,
.rsif-photo-jury-modal__next {
    position: fixed !important;
    z-index: 2 !important;
    border: 0 !important;
    background: rgba(255, 255, 255, .16) !important;
    color: #ffffff !important;
    cursor: pointer !important;
}

.rsif-photo-jury-modal__close {
    top: 18px !important;
    right: 382px !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 999px !important;
    font-size: 30px !important;
    line-height: 1 !important;
}

.rsif-photo-jury-modal__previous,
.rsif-photo-jury-modal__next {
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 48px !important;
    height: 76px !important;
    border-radius: 999px !important;
    font-size: 50px !important;
    line-height: 1 !important;
}

.rsif-photo-jury-modal__previous {
    left: 18px !important;
}

.rsif-photo-jury-modal__next {
    right: 382px !important;
}

@media (max-width: 980px) {
    .rsif-photo-jury-modal__dialog {
        grid-template-columns: 1fr !important;
        grid-template-rows: minmax(0, 1fr) auto !important;
    }

    .rsif-photo-jury-modal__stage {
        padding: 16px 54px !important;
    }

    .rsif-photo-jury-modal__panel {
        max-height: 42vh !important;
    }

    .rsif-photo-jury-modal__close {
        right: 18px !important;
    }

    .rsif-photo-jury-modal__next {
        right: 18px !important;
    }
}


/* =========================================================
   RSIF FOTO – juryunderlag och bildspel designfix
   Version 0.2.4
   ========================================================= */

.rsif-photo-year-awards__slideshow-actions--jury {
    align-items: center !important;
    gap: 12px !important;
}

.rsif-photo-year-awards__slideshow-actions--jury .rsif-ui-button {
    min-height: 48px !important;
    padding: 12px 20px !important;
    border-radius: 999px !important;
    line-height: 1.1 !important;
    white-space: normal !important;
}

.rsif-photo-year-awards__slideshow-actions--jury .rsif-ui-button--gold {
    color: #2d1700 !important;
    border-color: #d99a00 !important;
}

.rsif-photo-imagely-slideshow.is-clean-mode .rsif-photo-imagely-slideshow__rating,
.rsif-photo-imagely-slideshow.is-clean-mode .rsif-photo-imagely-slideshow__rate {
    display: none !important;
}

.rsif-photo-year-awards__decision-metrics {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    padding: 12px !important;
}

.rsif-photo-year-awards__decision-card {
    display: grid !important;
    gap: 4px !important;
    padding: 12px 13px !important;
    border: 1px solid rgba(80, 0, 100, .12) !important;
    border-radius: 14px !important;
    background: rgba(80, 0, 100, .045) !important;
}

.rsif-photo-year-awards__decision-card span {
    color: var(--rsif-secondary, #500064) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}

.rsif-photo-year-awards__decision-card strong {
    color: var(--rsif-text, #222222) !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
}

.rsif-photo-year-awards__decision-card small {
    color: var(--rsif-muted, #555555) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

.rsif-photo-year-awards__jury-reviews {
    margin-top: 2px !important;
}

.rsif-photo-year-awards__award-panel summary {
    background: rgba(80, 0, 100, .055) !important;
}

.rsif-photo-jury-modal__dialog {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 420px) !important;
}

.rsif-photo-jury-modal__panel {
    gap: 14px !important;
    padding: 24px !important;
}

.rsif-photo-jury-modal__score-card {
    display: grid !important;
    gap: 5px !important;
    padding: 12px 13px !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 15px !important;
    background: rgba(80, 0, 100, .045) !important;
}

.rsif-photo-jury-modal__score-label {
    color: var(--rsif-secondary, #500064) !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
}

.rsif-photo-jury-modal__score-stars {
    width: fit-content !important;
    color: transparent !important;
    background: linear-gradient(90deg, #ffd24a 0%, #ffd24a var(--rsif-photo-rating-fill, 0%), rgba(55, 45, 60, .30) var(--rsif-photo-rating-fill, 0%), rgba(55, 45, 60, .30) 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    font-size: 25px !important;
    line-height: 1 !important;
    letter-spacing: 1px !important;
}

.rsif-photo-jury-modal__member-rating,
.rsif-photo-jury-modal__jury-summary {
    color: var(--rsif-text, #222222) !important;
    font-weight: 800 !important;
}

.rsif-photo-jury-modal__review {
    align-self: start !important;
    margin-top: 4px !important;
}

.rsif-photo-jury-modal__previous,
.rsif-photo-jury-modal__next,
.rsif-photo-jury-modal__close {
    z-index: 2147483647 !important;
}

@media (max-width: 767px) {
    .rsif-photo-year-awards__decision-metrics {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   RSIF FOTO – juryarbete designfix och förhandsvisning
   Version 0.2.5
   ========================================================= */

/* Jurybildspel: högerpanelen ska inte täcka pilar/kryss. */
.rsif-photo-jury-modal__dialog {
    grid-template-columns: minmax(0, 1fr) clamp(360px, 24vw, 460px) !important;
}

.rsif-photo-jury-modal__stage {
    padding-right: 72px !important;
}

.rsif-photo-jury-modal__close {
    top: 16px !important;
    right: calc(clamp(360px, 24vw, 460px) + 18px) !important;
    z-index: 2147483647 !important;
}

.rsif-photo-jury-modal__next {
    right: calc(clamp(360px, 24vw, 460px) + 18px) !important;
    z-index: 2147483647 !important;
}

.rsif-photo-jury-modal__previous {
    z-index: 2147483647 !important;
}

.rsif-photo-jury-modal__blind-note {
    margin: 2px 0 0 !important;
    padding: 10px 12px !important;
    border-left: 5px solid var(--rsif-secondary, #500064) !important;
    border-radius: 12px !important;
    background: rgba(80, 0, 100, .055) !important;
    color: var(--rsif-text, #222222) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 650 !important;
}

/* Juryunderlag: mindre kort, mer beslutsunderlag. */
.rsif-photo-year-awards__award-panel {
    overflow: hidden !important;
    border: 1px solid rgba(80, 0, 100, .12) !important;
    border-radius: 16px !important;
    background: rgba(80, 0, 100, .025) !important;
}

.rsif-photo-year-awards__award-panel > summary {
    padding: 13px 15px !important;
    cursor: pointer !important;
    color: var(--rsif-secondary, #500064) !important;
    font-weight: 900 !important;
}

.rsif-photo-year-awards__decision-metrics {
    grid-template-columns: 1fr !important;
    padding: 12px 14px 8px !important;
}

.rsif-photo-year-awards__decision-card {
    min-height: auto !important;
}

.rsif-photo-year-awards__jury-reviews {
    display: grid !important;
    gap: 8px !important;
    padding: 8px 14px 12px !important;
}

.rsif-photo-year-awards__jury-review {
    padding: 10px 12px !important;
    border: 1px solid rgba(80, 0, 100, .10) !important;
    border-radius: 13px !important;
    background: #ffffff !important;
}

.rsif-photo-year-awards__jury-review > div {
    display: flex !important;
    justify-content: space-between !important;
    gap: 10px !important;
    color: var(--rsif-secondary, #500064) !important;
    font-weight: 900 !important;
}

.rsif-photo-year-awards__jury-review p,
.rsif-photo-year-awards__empty-jury-note,
.rsif-photo-year-awards__jury-hint {
    margin: 6px 14px 10px !important;
    color: var(--rsif-muted, #555555) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

.rsif-photo-year-awards__award-form--decision {
    margin: 10px 14px 14px !important;
    padding-top: 12px !important;
    border-top: 1px solid rgba(80, 0, 100, .10) !important;
}

/* Bildspel utan betyg ska vara helt rent även om tidigare läge visat resultat. */
.rsif-photo-imagely-slideshow.is-clean-mode .rsif-photo-imagely-slideshow__rating,
.rsif-photo-imagely-slideshow.is-clean-mode .rsif-photo-imagely-slideshow__rate,
.rsif-photo-imagely-slideshow[data-rsif-clean-mode="1"] .rsif-photo-imagely-slideshow__rating,
.rsif-photo-imagely-slideshow[data-rsif-clean-mode="1"] .rsif-photo-imagely-slideshow__rate {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

@media (max-width: 980px) {
    .rsif-photo-jury-modal__dialog {
        grid-template-columns: 1fr !important;
    }

    .rsif-photo-jury-modal__stage {
        padding-right: 54px !important;
    }

    .rsif-photo-jury-modal__close,
    .rsif-photo-jury-modal__next {
        right: 18px !important;
    }
}


/* =========================================================
   RSIF FOTO – juryarbete designfix v0.2.6
   ========================================================= */

/* Knapptexter/ytor i juryunderlaget. */
.rsif-photo-year-awards__slideshow-actions--jury {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
    margin: 18px 0 28px !important;
}

.rsif-photo-year-awards__slideshow-actions--jury .rsif-ui-button {
    min-width: 220px !important;
    min-height: 58px !important;
    padding: 16px 24px !important;
    border-radius: 999px !important;
    font-weight: 900 !important;
}

.rsif-photo-year-awards__slideshow-actions--jury .rsif-ui-button--gold {
    background: linear-gradient(135deg, #f8ca3a, #e6a900) !important;
    border-color: #d99a00 !important;
    color: #321a00 !important;
}

/* Bildspel utan betyg: absolut rent läge. */
.rsif-photo-imagely-slideshow.is-clean-mode .rsif-photo-imagely-slideshow__rating,
.rsif-photo-imagely-slideshow.is-clean-mode .rsif-photo-imagely-slideshow__rate,
.rsif-photo-imagely-slideshow[data-rsif-clean-mode="1"] .rsif-photo-imagely-slideshow__rating,
.rsif-photo-imagely-slideshow[data-rsif-clean-mode="1"] .rsif-photo-imagely-slideshow__rate,
.rsif-photo-imagely-slideshow[data-rsif-slideshow-mode="clean"] .rsif-photo-imagely-slideshow__rating,
.rsif-photo-imagely-slideshow[data-rsif-slideshow-mode="clean"] .rsif-photo-imagely-slideshow__rate {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Jurybildspel: kontroller ska alltid ligga ovanpå panelen. */
.rsif-photo-jury-modal__close {
    top: 18px !important;
    right: 18px !important;
    width: 52px !important;
    height: 52px !important;
    background: rgba(0, 0, 0, .72) !important;
    color: #ffffff !important;
    z-index: 2147483647 !important;
}

.rsif-photo-jury-modal__next {
    right: calc(clamp(360px, 24vw, 460px) + 22px) !important;
    z-index: 2147483647 !important;
}

.rsif-photo-jury-modal__previous {
    left: 22px !important;
    z-index: 2147483647 !important;
}

.rsif-photo-jury-modal__panel {
    z-index: 20 !important;
}

/* Juryunderlag på korten: mer läsbart och mindre formulärkänsla. */
.rsif-photo-year-awards__award-panel {
    margin-top: 18px !important;
    border-radius: 18px !important;
    background: #fbf8fc !important;
}

.rsif-photo-year-awards__award-panel > summary {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 15px 18px !important;
    background: rgba(80, 0, 100, .08) !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
}

.rsif-photo-year-awards__award-panel > summary::after {
    content: "+" !important;
    font-size: 22px !important;
    font-weight: 900 !important;
}

.rsif-photo-year-awards__award-panel[open] > summary::after {
    content: "−" !important;
}

.rsif-photo-year-awards__decision-metrics {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 14px !important;
}

.rsif-photo-year-awards__decision-card {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 7px !important;
    padding: 14px 15px !important;
    border-radius: 16px !important;
    background: #ffffff !important;
}

.rsif-photo-year-awards__decision-card strong,
.rsif-photo-year-awards__decision-card small,
.rsif-photo-year-awards__decision-card span {
    text-align: left !important;
    white-space: normal !important;
}

.rsif-photo-year-awards__decision-stars,
.rsif-photo-year-awards__jury-review-score > span {
    display: inline-block !important;
    width: fit-content !important;
    color: transparent !important;
    background: linear-gradient(90deg, #ffd24a 0%, #ffd24a var(--rsif-photo-rating-fill, 0%), rgba(55, 45, 60, .30) var(--rsif-photo-rating-fill, 0%), rgba(55, 45, 60, .30) 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    font-size: 24px !important;
    line-height: 1 !important;
    letter-spacing: 1px !important;
}

.rsif-photo-year-awards__jury-review-score {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.rsif-photo-year-awards__jury-review-score em {
    color: var(--rsif-text, #222222) !important;
    font-style: normal !important;
    font-weight: 800 !important;
}

.rsif-photo-year-awards__jury-reviews {
    padding: 4px 14px 14px !important;
}

.rsif-photo-year-awards__jury-review {
    display: grid !important;
    gap: 7px !important;
    padding: 13px 14px !important;
    border-radius: 16px !important;
    background: #ffffff !important;
}

.rsif-photo-year-awards__jury-review > div {
    align-items: center !important;
}

.rsif-photo-year-awards__jury-review p {
    margin: 0 !important;
    color: var(--rsif-text, #222222) !important;
    font-size: 14px !important;
}

.rsif-photo-year-awards__award-form--decision {
    display: grid !important;
    gap: 10px !important;
    margin: 12px 14px 16px !important;
    padding: 14px !important;
    border: 1px solid rgba(80, 0, 100, .12) !important;
    border-radius: 16px !important;
    background: #ffffff !important;
}

.rsif-photo-year-awards__award-form--decision textarea {
    min-height: 90px !important;
    border-radius: 14px !important;
}

@media (max-width: 980px) {
    .rsif-photo-jury-modal__next {
        right: 22px !important;
    }
}

@media (max-width: 767px) {
    .rsif-photo-year-awards__slideshow-actions--jury .rsif-ui-button {
        width: 100% !important;
        min-width: 0 !important;
    }
}


/* =========================================================
   RSIF FOTO v0.2.7 – renare jurykort
   ========================================================= */
.rsif-photo-year-awards__body {
    padding: 0 !important;
}

.rsif-photo-year-awards__card-intro {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    gap: 16px !important;
    align-items: start !important;
    padding: 18px 20px 16px !important;
}

.rsif-photo-year-awards__headline {
    display: grid !important;
    gap: 8px !important;
    min-width: 0 !important;
}

.rsif-photo-year-awards__headline .rsif-ui-badge,
.rsif-photo-year-awards__headline .rsif-photo-award-badge {
    width: fit-content !important;
}

.rsif-photo-year-awards__headline h3 {
    margin: 0 !important;
    color: var(--rsif-text, #222222) !important;
    font-size: clamp(20px, 2vw, 26px) !important;
    line-height: 1.12 !important;
}

.rsif-photo-year-awards__headline p {
    margin: 0 !important;
    color: rgba(34, 34, 34, .78) !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}

.rsif-photo-year-awards__info-panel {
    margin: 0 18px 18px !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    background: #ffffff !important;
}

.rsif-photo-year-awards__info-panel > summary {
    min-height: 52px !important;
    padding: 14px 18px !important;
    background: #ffffff !important;
    border-radius: 16px !important;
}

.rsif-photo-year-awards__info-panel[open] > summary {
    border-bottom: 1px solid rgba(80, 0, 100, .10) !important;
    border-radius: 16px 16px 0 0 !important;
}

.rsif-photo-year-awards__info-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    padding: 14px !important;
}

.rsif-photo-year-awards__info-card {
    display: grid !important;
    gap: 6px !important;
    padding: 14px 15px !important;
    border: 1px solid rgba(80, 0, 100, .10) !important;
    border-radius: 16px !important;
    background: rgba(80, 0, 100, .035) !important;
}

.rsif-photo-year-awards__info-card span,
.rsif-photo-year-awards__decision-card span {
    color: var(--rsif-secondary, #500064) !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
}

.rsif-photo-year-awards__info-card strong {
    color: var(--rsif-text, #222222) !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
}

.rsif-photo-year-awards__info-card small {
    color: rgba(34, 34, 34, .72) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

.rsif-photo-year-awards__info-panel .rsif-photo-year-awards__decision-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    padding: 0 14px 14px !important;
}

.rsif-photo-year-awards__info-panel .rsif-photo-year-awards__decision-card {
    border: 1px solid rgba(80, 0, 100, .10) !important;
    background: #fbf8fc !important;
}

.rsif-photo-year-awards__info-panel .rsif-photo-year-awards__jury-reviews {
    display: grid !important;
    gap: 10px !important;
    padding: 0 14px 14px !important;
}

.rsif-photo-year-awards__info-panel .rsif-photo-year-awards__jury-review {
    border: 1px solid rgba(80, 0, 100, .10) !important;
}

.rsif-photo-year-awards__empty-jury-note {
    margin: 0 !important;
    padding: 13px 14px !important;
    border: 1px dashed rgba(80, 0, 100, .18) !important;
    border-radius: 14px !important;
    color: rgba(34, 34, 34, .72) !important;
    background: rgba(80, 0, 100, .025) !important;
}

.rsif-photo-year-awards__info-panel .rsif-photo-year-awards__award-form--decision {
    margin: 0 14px 14px !important;
}

.rsif-photo-year-awards__rating,
.rsif-photo-year-awards__metrics,
.rsif-photo-year-awards__source,
.rsif-photo-year-awards__photographer {
    display: none !important;
}

@media (max-width: 980px) {
    .rsif-photo-year-awards__info-grid,
    .rsif-photo-year-awards__info-panel .rsif-photo-year-awards__decision-metrics {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 640px) {
    .rsif-photo-year-awards__card-intro {
        grid-template-columns: 1fr !important;
    }

    .rsif-photo-year-awards__rank {
        position: static !important;
        width: fit-content !important;
    }
}


/* =========================================================
   RSIF FOTO – juryinformation kompakt och läsbar
   Version 0.2.8
   ========================================================= */

/* Gör informationspanelen till en lugn detaljvy i stället för tre trånga kort. */
.rsif-photo-year-awards__info-panel {
    margin: 0 18px 18px !important;
    overflow: hidden !important;
    border-radius: 18px !important;
    background: #ffffff !important;
}

.rsif-photo-year-awards__info-panel > summary {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 54px !important;
    padding: 15px 18px !important;
    background: rgba(80, 0, 100, .055) !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
}

.rsif-photo-year-awards__info-panel > summary::marker {
    content: "" !important;
}

.rsif-photo-year-awards__info-panel > summary::-webkit-details-marker {
    display: none !important;
}

.rsif-photo-year-awards__info-panel > summary::after {
    content: "+" !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 24px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
}

.rsif-photo-year-awards__info-panel[open] > summary::after {
    content: "−" !important;
}

.rsif-photo-year-awards__info-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(80, 0, 100, .10) !important;
}

.rsif-photo-year-awards__info-card {
    display: grid !important;
    grid-template-columns: minmax(110px, 32%) minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 10px 16px !important;
    padding: 14px 18px !important;
    border: 0 !important;
    border-radius: 0 !important;
    border-bottom: 1px solid rgba(80, 0, 100, .08) !important;
    background: #ffffff !important;
}

.rsif-photo-year-awards__info-card:last-child {
    border-bottom: 0 !important;
}

.rsif-photo-year-awards__info-card span {
    margin-top: 1px !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .02em !important;
}

.rsif-photo-year-awards__info-card strong,
.rsif-photo-year-awards__info-card small {
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
}

.rsif-photo-year-awards__info-card strong {
    color: var(--rsif-text, #222222) !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 800 !important;
}

.rsif-photo-year-awards__info-card small {
    grid-column: 2 !important;
    margin-top: -4px !important;
    color: rgba(34, 34, 34, .72) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

/* Betygskorten ska ligga prydligt under bildinformationen och inte knö ihop sig. */
.rsif-photo-year-awards__info-panel .rsif-photo-year-awards__decision-metrics {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    padding: 16px 18px !important;
    border-bottom: 1px solid rgba(80, 0, 100, .10) !important;
}

.rsif-photo-year-awards__info-panel .rsif-photo-year-awards__decision-card {
    display: grid !important;
    gap: 7px !important;
    min-height: auto !important;
    padding: 15px 16px !important;
    border: 1px solid rgba(80, 0, 100, .12) !important;
    border-radius: 16px !important;
    background: #fbf8fc !important;
}

.rsif-photo-year-awards__decision-card span {
    color: var(--rsif-secondary, #500064) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}

.rsif-photo-year-awards__decision-stars {
    width: fit-content !important;
    max-width: 100% !important;
    font-size: 21px !important;
    line-height: 1 !important;
    letter-spacing: 1px !important;
}

.rsif-photo-year-awards__decision-card strong {
    font-size: 16px !important;
    line-height: 1.25 !important;
}

.rsif-photo-year-awards__decision-card small {
    color: rgba(34, 34, 34, .72) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

/* Jurykommentarerna blir en tydlig lista. */
.rsif-photo-year-awards__info-panel .rsif-photo-year-awards__jury-reviews {
    display: grid !important;
    gap: 10px !important;
    padding: 16px 18px !important;
    border-bottom: 1px solid rgba(80, 0, 100, .10) !important;
}

.rsif-photo-year-awards__info-panel .rsif-photo-year-awards__jury-review {
    display: grid !important;
    gap: 8px !important;
    padding: 14px 16px !important;
    border: 1px solid rgba(80, 0, 100, .12) !important;
    border-radius: 16px !important;
    background: #ffffff !important;
}

.rsif-photo-year-awards__jury-review > div {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
}

.rsif-photo-year-awards__jury-review-score {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    white-space: nowrap !important;
}

.rsif-photo-year-awards__jury-review-score > span {
    color: transparent !important;
    background: linear-gradient(90deg, #ffd24a 0%, #ffd24a var(--rsif-photo-rating-fill, 0%), rgba(55, 45, 60, .30) var(--rsif-photo-rating-fill, 0%), rgba(55, 45, 60, .30) 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    font-size: 19px !important;
    line-height: 1 !important;
}

.rsif-photo-year-awards__jury-review-score em {
    color: var(--rsif-text, #222222) !important;
    font-size: 13px !important;
    font-style: normal !important;
    font-weight: 900 !important;
}

.rsif-photo-year-awards__info-panel .rsif-photo-year-awards__jury-review p {
    margin: 0 !important;
    color: var(--rsif-text, #222222) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.rsif-photo-year-awards__empty-jury-note {
    margin: 0 !important;
    padding: 14px 16px !important;
    border: 1px dashed rgba(80, 0, 100, .20) !important;
    border-radius: 16px !important;
    background: rgba(80, 0, 100, .025) !important;
}

/* Beslutsdelen får en egen lugn yta. */
.rsif-photo-year-awards__info-panel .rsif-photo-year-awards__award-form--decision {
    display: grid !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 16px 18px 18px !important;
    border: 0 !important;
    background: #ffffff !important;
}

.rsif-photo-year-awards__award-form--decision label {
    display: grid !important;
    gap: 8px !important;
    margin: 0 !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 900 !important;
}

.rsif-photo-year-awards__award-form--decision textarea {
    min-height: 90px !important;
    width: 100% !important;
    padding: 12px 13px !important;
    border: 1px solid rgba(80, 0, 100, .16) !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    color: var(--rsif-text, #222222) !important;
    font: inherit !important;
    resize: vertical !important;
}

.rsif-photo-year-awards__award-form--decision .rsif-ui-button {
    width: 100% !important;
    min-height: 48px !important;
    border-radius: 999px !important;
}

@media (min-width: 900px) {
    .rsif-photo-year-awards__info-panel .rsif-photo-year-awards__decision-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 640px) {
    .rsif-photo-year-awards__info-panel {
        margin: 0 12px 14px !important;
    }

    .rsif-photo-year-awards__info-card {
        grid-template-columns: 1fr !important;
        gap: 5px !important;
        padding: 13px 14px !important;
    }

    .rsif-photo-year-awards__info-card small {
        grid-column: 1 !important;
        margin-top: 0 !important;
    }

    .rsif-photo-year-awards__jury-review > div {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   RSIF FOTO v0.2.10 – minimal juryfix från v0.2.9
   Viktigt: rör inte grundvyn. Åtgärdar endast öppnad information.
   ========================================================= */

/* När en informationspanel öppnas ska inte hela grid-raden sträcka ut grannkorten. */
.rsif-photo-year-awards__grid {
    align-items: start !important;
}

.rsif-photo-year-awards__card {
    align-self: start !important;
}

/* Kortets body ska inte fördela extra höjd mellan rubrik och informationspanel. */
.rsif-photo-year-awards__body {
    align-content: start !important;
}

/* Öppnad info ska bete sig som vanligt blockinnehåll, inte som en stretchad grid-yta. */
.rsif-photo-year-awards__info-panel[open] {
    display: block !important;
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
}

.rsif-photo-year-awards__info-panel[open] > summary {
    margin: 0 !important;
}

/* Komprimera endast innehållet i den öppnade informationspanelen. */
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-grid {
    margin: 0 !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-card {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-metrics {
    margin: 0 !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    gap: 10px !important;
}

.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-card {
    padding-top: 11px !important;
    padding-bottom: 11px !important;
}

.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__jury-reviews {
    margin: 0 !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision {
    margin: 0 !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}


/* =========================================================
   RSIF FOTO v0.2.11 – minimal juryfix från v0.2.9/v0.2.10
   Rör inte grundkortens första vy, utom att ta bort rangmärket.
   Mål: kompakt öppnad information + inga #1/#2/#3-badges.
   ========================================================= */

/* Ta bort rank-bubblorna utan att störa övrig kortvy. */
.rsif-photo-year-awards__rank {
    display: none !important;
}
.rsif-photo-year-awards__card-intro {
    grid-template-columns: 1fr !important;
}
.rsif-photo-year-awards__headline .rsif-ui-badge,
.rsif-photo-year-awards__body .rsif-ui-badge {
    margin-left: 0 !important;
}

/* Säkerställ att öppet kort inte drar ned grannarnas infoknapp. */
.rsif-photo-year-awards__grid {
    align-items: start !important;
}
.rsif-photo-year-awards__card {
    align-self: start !important;
}
.rsif-photo-year-awards__body {
    align-content: start !important;
}

/* Kompakt öppnad informationspanel. Detta påverkar bara panelen när den är öppnad. */
.rsif-photo-year-awards__info-panel[open] {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    background: #ffffff !important;
    white-space: normal !important;
}
.rsif-photo-year-awards__info-panel {
    white-space: normal !important;
}
.rsif-photo-year-awards__info-panel[open] > summary {
    min-height: 44px !important;
    padding: 10px 16px !important;
    margin: 0 !important;
    line-height: 1.15 !important;
}

/* Ta bort den stora luften i informationsdelen. */
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(80, 0, 100, .10) !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-card {
    display: grid !important;
    grid-template-columns: 116px minmax(0, 1fr) !important;
    gap: 4px 12px !important;
    align-items: start !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 8px 14px !important;
    border: 0 !important;
    border-radius: 0 !important;
    border-bottom: 1px solid rgba(80, 0, 100, .08) !important;
    background: #ffffff !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-card:last-child {
    border-bottom: 0 !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-card span {
    margin: 1px 0 0 !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-card strong {
    font-size: 14px !important;
    line-height: 1.25 !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-card small {
    grid-column: 2 !important;
    margin: -2px 0 0 !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
}

/* Betygskorten – kompakt utan stora mellanrum. */
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-metrics {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 10px 14px !important;
    border-bottom: 1px solid rgba(80, 0, 100, .10) !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-card {
    gap: 4px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 10px 11px !important;
    border-radius: 12px !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-card span {
    font-size: 12px !important;
    line-height: 1.15 !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-stars {
    font-size: 18px !important;
    line-height: 1 !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-card strong {
    font-size: 14px !important;
    line-height: 1.2 !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-card small {
    font-size: 12px !important;
    line-height: 1.25 !important;
}

/* Jurykommentarer – tätare lista. */
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__jury-reviews {
    display: grid !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 10px 14px !important;
    border-bottom: 1px solid rgba(80, 0, 100, .10) !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__jury-review {
    gap: 4px !important;
    margin: 0 !important;
    padding: 9px 11px !important;
    border-radius: 12px !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__jury-review > div {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 8px !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__jury-review-score > span {
    font-size: 17px !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__jury-review p {
    font-size: 13px !important;
    line-height: 1.3 !important;
}

/* Beslut – kompakt och innanför ramen. */
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision {
    gap: 8px !important;
    margin: 0 !important;
    padding: 10px 14px 12px !important;
    border: 0 !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision label {
    gap: 6px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision textarea {
    min-height: 62px !important;
    padding: 8px 10px !important;
    border-radius: 10px !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision .rsif-ui-button {
    min-height: 42px !important;
    padding: 9px 14px !important;
}

@media (max-width: 640px) {
    .rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-card {
        grid-template-columns: 1fr !important;
    }
    .rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-card small {
        grid-column: 1 !important;
        margin-top: 0 !important;
    }
    .rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-metrics {
        grid-template-columns: 1fr !important;
    }
    .rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__jury-review > div {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   RSIF FOTO v0.2.12 – konsoliderad, snyggare jurypanel
   Detta är den vinnande stylingen för den öppnade info-panelen
   (högre/lika specificitet + sist i filen slår v0.2.6–v0.2.11).
   De äldre "designfix"-blocken ovan kan städas bort vid tillfälle,
   men lämnas orörda här så inget annat i filen riskerar att gå sönder.
   ========================================================= */

/* Tätare avstånd rakt igenom panelen. */
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-grid {
    border-bottom: 1px solid rgba(80, 0, 100, .08) !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__info-card {
    padding: 7px 14px !important;
}

.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-metrics {
    gap: 6px !important;
    padding: 8px 14px !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-card {
    padding: 9px 10px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: 0 1px 3px rgba(80, 0, 100, .10) !important;
}

.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__jury-reviews {
    gap: 6px !important;
    padding: 8px 14px !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__jury-review {
    gap: 3px !important;
    padding: 8px 10px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: 0 1px 3px rgba(80, 0, 100, .10) !important;
}

/* Beslutsformuläret: mindre luft, snyggare fält och knapp. */
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision {
    gap: 6px !important;
    padding: 8px 14px 12px !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision label {
    gap: 4px !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision textarea {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 52px !important;
    padding: 7px 10px !important;
    border-radius: 10px !important;
    transition: border-color .15s ease, box-shadow .15s ease !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision textarea:focus {
    outline: none !important;
    border-color: var(--rsif-secondary, #500064) !important;
    box-shadow: 0 0 0 3px rgba(80, 0, 100, .12) !important;
}

/* Snyggare knapp: fylld i stället för tunn kantlinje, med mjuk hover. */
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision .rsif-ui-button {
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 44px !important;
    margin-top: 2px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 10px 16px !important;
    border: 0 !important;
    background: linear-gradient(135deg, #6a0084, var(--rsif-secondary, #500064)) !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    letter-spacing: .2px !important;
    box-shadow: 0 3px 10px rgba(80, 0, 100, .28) !important;
    transition: transform .12s ease, box-shadow .12s ease, filter .12s ease !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision .rsif-ui-button:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 5px 14px rgba(80, 0, 100, .34) !important;
    filter: brightness(1.05) !important;
}
.rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__award-form--decision .rsif-ui-button:active {
    transform: translateY(0) !important;
    box-shadow: 0 2px 6px rgba(80, 0, 100, .28) !important;
}

@media (max-width: 640px) {
    .rsif-photo-year-awards__info-panel[open] .rsif-photo-year-awards__decision-metrics {
        gap: 6px !important;
    }
}

/* =========================================================
   RSIF FOTO – toppfotografer, kompakt statistikvy
   Version 0.2.17
   ========================================================= */
.rsif-photo-photographer-leaderboard {
    --rsif-photo-soft: rgba(80, 0, 100, .055);
    --rsif-photo-soft-strong: rgba(80, 0, 100, .12);
    --rsif-photo-accent-soft: rgba(230, 0, 110, .07);
    display: grid !important;
    gap: 22px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__header {
    max-width: 1040px !important;
    margin-bottom: 8px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__header h2 {
    margin-bottom: 8px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__header p {
    max-width: 920px !important;
    margin-top: 0 !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters {
    align-items: end !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 18px !important;
    border-radius: 18px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters label {
    min-width: 190px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters button {
    min-height: 48px !important;
    padding: 12px 22px !important;
}

.rsif-photo-photographer-leaderboard__summary {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(120px, 1fr)) !important;
    gap: 12px !important;
}

.rsif-photo-photographer-leaderboard__summary-card {
    padding: 14px 16px !important;
    border: 1px solid rgba(80, 0, 100, .13) !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #ffffff 0%, rgba(80, 0, 100, .045) 100%) !important;
    box-shadow: 0 8px 20px rgba(30, 20, 35, .035) !important;
}

.rsif-photo-photographer-leaderboard__summary-card span {
    display: block !important;
    margin-bottom: 4px !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: .02em !important;
}

.rsif-photo-photographer-leaderboard__summary-card strong {
    display: block !important;
    color: var(--rsif-text, #222222) !important;
    font-size: 28px !important;
    line-height: 1.05 !important;
    font-weight: 900 !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-table-wrap {
    margin-top: 0 !important;
    border-radius: 20px !important;
    box-shadow: 0 16px 34px rgba(30, 20, 35, .055) !important;
}

.rsif-photo-photographer-leaderboard__table {
    min-width: 1120px !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

.rsif-photo-photographer-leaderboard__table th,
.rsif-photo-photographer-leaderboard__table td {
    padding: 13px 14px !important;
    vertical-align: middle !important;
}

.rsif-photo-photographer-leaderboard__table th {
    background: rgba(80, 0, 100, .105) !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 13px !important;
    letter-spacing: .01em !important;
}

.rsif-photo-photographer-leaderboard__table th:first-child {
    border-top-left-radius: 18px !important;
}

.rsif-photo-photographer-leaderboard__table th:last-child {
    border-top-right-radius: 18px !important;
}

.rsif-photo-photographer-leaderboard__table tbody tr {
    transition: background .16s ease, transform .16s ease !important;
}

.rsif-photo-photographer-leaderboard__table tbody tr:hover {
    background: var(--rsif-photo-accent-soft) !important;
}

.rsif-photo-photographer-leaderboard__table td:first-child {
    width: 64px !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 18px !important;
    font-weight: 900 !important;
}

.rsif-photo-photographer-leaderboard__person {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 190px !important;
}

.rsif-photo-photographer-leaderboard__avatar {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 999px !important;
    background: rgba(230, 0, 110, .12) !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 15px !important;
    font-weight: 900 !important;
}

.rsif-photo-photographer-leaderboard__person strong {
    color: var(--rsif-text, #222222) !important;
    font-weight: 800 !important;
}

.rsif-photo-photographer-leaderboard__table td:nth-child(n+3) {
    font-variant-numeric: tabular-nums !important;
}

@media (max-width: 900px) {
    .rsif-photo-photographer-leaderboard__summary {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 640px) {
    .rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters {
        grid-template-columns: 1fr !important;
    }

    .rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters label,
    .rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters button {
        width: 100% !important;
    }

    .rsif-photo-photographer-leaderboard__summary {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   RSIF FOTO – toppfotografer, kompakt layout
   Version 0.2.18
   ========================================================= */
.rsif-photo-photographer-leaderboard {
    gap: 14px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__header {
    margin-bottom: 0 !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__header h2 {
    margin: 0 0 6px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__header p {
    margin: 0 !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters {
    gap: 10px !important;
    padding: 12px 14px !important;
    border-radius: 16px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters label {
    min-width: 170px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters select {
    min-height: 44px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters button {
    min-height: 44px !important;
    padding: 9px 18px !important;
}

.rsif-photo-photographer-leaderboard__summary {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    align-items: stretch !important;
}

.rsif-photo-photographer-leaderboard__summary-card {
    flex: 1 1 145px !important;
    min-height: 0 !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 6px 18px rgba(30, 20, 35, .03) !important;
}

.rsif-photo-photographer-leaderboard__summary-card span {
    margin: 0 !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
}

.rsif-photo-photographer-leaderboard__summary-card strong {
    font-size: 22px !important;
    line-height: 1 !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-table-wrap {
    overflow-x: visible !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 24px rgba(30, 20, 35, .045) !important;
}

.rsif-photo-photographer-leaderboard__table {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: auto !important;
    font-size: 14px !important;
}

.rsif-photo-photographer-leaderboard__table th,
.rsif-photo-photographer-leaderboard__table td {
    padding: 10px 9px !important;
    white-space: normal !important;
}

.rsif-photo-photographer-leaderboard__table th {
    font-size: 12px !important;
    line-height: 1.2 !important;
}

.rsif-photo-photographer-leaderboard__table td:first-child {
    width: 46px !important;
    font-size: 16px !important;
}

.rsif-photo-photographer-leaderboard__person {
    min-width: 0 !important;
    gap: 8px !important;
}

.rsif-photo-photographer-leaderboard__avatar {
    flex-basis: 30px !important;
    width: 30px !important;
    height: 30px !important;
    font-size: 13px !important;
}

.rsif-photo-photographer-leaderboard__person strong {
    min-width: 110px !important;
    max-width: 170px !important;
    line-height: 1.2 !important;
}

.rsif-photo-photographer-leaderboard__table td:nth-child(n+3),
.rsif-photo-photographer-leaderboard__table th:nth-child(n+3) {
    text-align: center !important;
}

@media (max-width: 900px) {
    .rsif-photo-photographer-leaderboard .rsif-photo-table-wrap {
        overflow-x: auto !important;
    }

    .rsif-photo-photographer-leaderboard__table {
        min-width: 760px !important;
    }
}


/* =========================================================
   RSIF FOTO – toppfotografer, hero och tabellputs
   Version 0.2.19
   ========================================================= */
.rsif-photo-photographer-leaderboard {
    max-width: 100% !important;
    overflow-x: clip !important;
    gap: 12px !important;
}

.rsif-photo-photographer-leaderboard,
.rsif-photo-photographer-leaderboard * {
    white-space: normal !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__header {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 8px !important;
    padding: 22px 24px !important;
    border: 1px solid rgba(80, 0, 100, .12) !important;
    border-radius: 22px !important;
    background:
        radial-gradient(circle at top right, rgba(230, 0, 110, .075), transparent 34%),
        linear-gradient(135deg, rgba(80, 0, 100, .045), #ffffff 58%) !important;
    box-shadow: 0 12px 30px rgba(30, 20, 35, .045) !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__header .rsif-ui-badge {
    margin-bottom: 10px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__header h2 {
    margin: 0 0 8px !important;
    line-height: 1.08 !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__header p {
    display: block !important;
    width: min(100%, 860px) !important;
    max-width: 860px !important;
    margin: 0 !important;
    color: var(--rsif-muted, #4f4653) !important;
    line-height: 1.45 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters {
    margin-top: 0 !important;
    padding: 12px !important;
    gap: 10px !important;
    align-items: end !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters label {
    min-width: 0 !important;
    flex: 0 1 220px !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-year-awards__filters button {
    flex: 0 0 auto !important;
}

.rsif-photo-photographer-leaderboard__summary {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

.rsif-photo-photographer-leaderboard__summary-card {
    min-width: 0 !important;
    padding: 8px 12px !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

.rsif-photo-photographer-leaderboard__summary-card span {
    max-width: 72% !important;
    font-size: 10.5px !important;
    line-height: 1.1 !important;
}

.rsif-photo-photographer-leaderboard__summary-card strong {
    font-size: 20px !important;
    line-height: 1 !important;
}

.rsif-photo-photographer-leaderboard .rsif-photo-table-wrap {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: visible !important;
    padding: 0 !important;
    margin-top: 6px !important;
    border-radius: 18px !important;
}

.rsif-photo-photographer-leaderboard__table {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    font-size: 13.5px !important;
}

.rsif-photo-photographer-leaderboard__table th,
.rsif-photo-photographer-leaderboard__table td {
    padding: 9px 7px !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
}

.rsif-photo-photographer-leaderboard__table th {
    font-size: 11.5px !important;
}

.rsif-photo-photographer-leaderboard__table th:nth-child(1),
.rsif-photo-photographer-leaderboard__table td:nth-child(1) {
    width: 44px !important;
}

.rsif-photo-photographer-leaderboard__table th:nth-child(2),
.rsif-photo-photographer-leaderboard__table td:nth-child(2) {
    width: 220px !important;
}

.rsif-photo-photographer-leaderboard__table th:nth-child(n+3),
.rsif-photo-photographer-leaderboard__table td:nth-child(n+3) {
    width: auto !important;
    text-align: center !important;
}

.rsif-photo-photographer-leaderboard__person {
    min-width: 0 !important;
    max-width: 100% !important;
}

.rsif-photo-photographer-leaderboard__person strong {
    min-width: 0 !important;
    max-width: none !important;
    overflow-wrap: anywhere !important;
}

@media (max-width: 1100px) {
    .rsif-photo-photographer-leaderboard__summary {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .rsif-photo-photographer-leaderboard .rsif-photo-table-wrap {
        overflow-x: auto !important;
    }

    .rsif-photo-photographer-leaderboard__table {
        min-width: 760px !important;
    }
}

@media (max-width: 700px) {
    .rsif-photo-photographer-leaderboard .rsif-photo-year-awards__header {
        padding: 18px !important;
    }

    .rsif-photo-photographer-leaderboard__summary {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* ===== RSIF Foto v0.2.30 – arkivkort, bildspel och kompakt stjärnrad ===== */
.rsif-photo-imagely-rating-card__image-link {
    cursor: pointer !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating {
    padding: 10px 11px !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating__stars {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 2px !important;
    max-width: 100% !important;
    white-space: nowrap !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating__star,
.rsif-photo-imagely-rating-card .rsif-photo-rating__stars button,
.rsif-photo-imagely-rating-card button.rsif-photo-rating__star {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 1px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 19px !important;
    line-height: 1 !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating__summary,
.rsif-photo-imagely-rating-card [data-rsif-rating-summary] {
    margin-top: 6px !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
}

@media (max-width: 767px) {
    .rsif-photo-imagely-rating-card .rsif-photo-rating__star,
    .rsif-photo-imagely-rating-card .rsif-photo-rating__stars button,
    .rsif-photo-imagely-rating-card button.rsif-photo-rating__star {
        font-size: 17px !important;
    }
}

/* ===== RSIF Foto v0.2.31 – tydlig laddning och kompakt äldre betyg ===== */
.rsif-photo-archive-loading {
    padding: 24px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid rgba(93, 0, 112, 0.12);
}

.rsif-photo-archive-loading > strong {
    display: block;
    margin-bottom: 14px;
    color: #5d0070;
    font-weight: 800;
}

.rsif-photo-archive-loading__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 18px;
}

.rsif-photo-archive-loading__card {
    display: block;
    min-height: 190px;
    border-radius: 16px;
    background:
        linear-gradient(90deg, rgba(245, 237, 247, 0.8), rgba(255, 255, 255, 0.95), rgba(245, 237, 247, 0.8));
    background-size: 220% 100%;
    border: 1px solid rgba(93, 0, 112, 0.12);
    box-shadow: 0 10px 24px rgba(36, 17, 45, 0.06);
    animation: rsif-photo-loading-pulse 1.35s ease-in-out infinite;
}

@keyframes rsif-photo-loading-pulse {
    0% { background-position: 0 0; opacity: .75; }
    50% { opacity: 1; }
    100% { background-position: -220% 0; opacity: .75; }
}

.rsif-photo-imagely-rating-card [data-rsif-rating-widget],
.rsif-photo-imagely-rating-card .rsif-photo-rating-widget {
    white-space: normal !important;
}

.rsif-photo-imagely-rating-card [data-rsif-rating-widget] button[data-rating],
.rsif-photo-imagely-rating-card .rsif-photo-rating-widget button[data-rating] {
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 1px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 22px !important;
    line-height: 1 !important;
}

.rsif-photo-imagely-rating-card [data-rsif-rating-widget] {
    display: block !important;
    max-width: 100% !important;
}

.rsif-photo-imagely-rating-card [data-rsif-rating-widget] form,
.rsif-photo-imagely-rating-card .rsif-photo-rating-widget form {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 1px !important;
    align-items: center !important;
    max-width: 100% !important;
}

@media (max-width: 700px) {
    .rsif-photo-archive-loading {
        padding: 16px;
    }

    .rsif-photo-archive-loading__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .rsif-photo-archive-loading__card {
        min-height: 150px;
    }
}

/* ===== RSIF Foto v0.2.33 – bildladdning och tydligare stjärnstatus ===== */
.rsif-photo-imagely-rating-card__image-link {
    position: relative !important;
    min-height: 120px !important;
}

.rsif-photo-imagely-rating-card__image-link--loading::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background:
        linear-gradient(90deg, rgba(245, 237, 247, 0.92), rgba(255, 255, 255, 0.98), rgba(245, 237, 247, 0.92)) !important;
    background-size: 220% 100% !important;
    animation: rsif-photo-loading-pulse 1.25s ease-in-out infinite !important;
}

.rsif-photo-imagely-rating-card__image-link--loading::after {
    content: "Laddar bild…" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    z-index: 2 !important;
    transform: translate(-50%, -50%) !important;
    color: #5d0070 !important;
    font-weight: 800 !important;
    font-size: 13px !important;
    white-space: nowrap !important;
}

.rsif-photo-imagely-rating-card__image-link--loading img {
    opacity: 0 !important;
}

.rsif-photo-imagely-rating-card__image-link.is-loaded img {
    opacity: 1 !important;
    transition: opacity 160ms ease-in !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating__stars {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 1px !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating__star,
.rsif-photo-imagely-rating-card .rsif-photo-rating__stars button,
.rsif-photo-imagely-rating-card button.rsif-photo-rating__star,
.rsif-photo-imagely-rating-card .rsif-photo-rating__star--static {
    color: #b9b0bf !important;
    font-size: 18px !important;
    line-height: 1 !important;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating__star.is-active,
.rsif-photo-imagely-rating-card .rsif-photo-rating__star--static.is-active,
.rsif-photo-imagely-rating-card button.rsif-photo-rating__star.is-active {
    color: #ffc640 !important;
}

.rsif-photo-imagely-rating-card button.rsif-photo-rating__star:hover,
.rsif-photo-imagely-rating-card button.rsif-photo-rating__star:focus-visible {
    color: #ffc640 !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating__help {
    margin-top: 8px !important;
    padding: 9px 10px !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

@media (max-width: 767px) {
    .rsif-photo-imagely-rating-card .rsif-photo-rating__star,
    .rsif-photo-imagely-rating-card .rsif-photo-rating__stars button,
    .rsif-photo-imagely-rating-card button.rsif-photo-rating__star,
    .rsif-photo-imagely-rating-card .rsif-photo-rating__star--static {
        font-size: 16px !important;
    }
}

/* =========================================================
   RSIF Foto v0.2.35 – översiktsbetyg och fotografkoppling
   ========================================================= */
.rsif-photo-imagely-rating-card .rsif-photo-rating__stars,
.rsif-photo-imagely-rating-card .rsif-photo-rating__stars * {
    white-space: nowrap !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating__star,
.rsif-photo-imagely-rating-card .rsif-photo-rating__stars button,
.rsif-photo-imagely-rating-card button.rsif-photo-rating__star,
.rsif-photo-imagely-rating-card .rsif-photo-rating__star--static {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 1px 0 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #b9b0bf !important;
    font-size: 17px !important;
    line-height: 1 !important;
    font-family: inherit !important;
    text-decoration: none !important;
    text-shadow: none !important;
    cursor: pointer !important;
}

.rsif-photo-imagely-rating-card .rsif-photo-rating__star.is-active,
.rsif-photo-imagely-rating-card .rsif-photo-rating__star--static.is-active,
.rsif-photo-imagely-rating-card button.rsif-photo-rating__star.is-active,
.rsif-photo-imagely-rating-card button.rsif-photo-rating__star:hover,
.rsif-photo-imagely-rating-card button.rsif-photo-rating__star:focus-visible {
    color: #ffc640 !important;
}

.rsif-photo-review-author-tool {
    margin-top: 14px;
    padding: 12px;
    border: 1px solid rgba(93, 0, 112, .18);
    border-radius: 14px;
    background: rgba(250, 245, 252, .78);
}

.rsif-photo-review-author-tool > strong {
    display: block;
    margin-bottom: 4px;
    color: #5d0070;
}

.rsif-photo-review-author-tool p {
    margin: 0 0 8px;
    font-size: 13px;
}

.rsif-photo-review-author-search {
    width: min(420px, 100%);
    max-width: 100%;
}

.rsif-photo-review-author-results {
    display: none;
    position: relative;
    z-index: 20;
    width: min(520px, 100%);
    margin-top: 6px;
    border: 1px solid rgba(93, 0, 112, .22);
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 12px 24px rgba(36, 26, 42, .12);
}

.rsif-photo-review-author-results button {
    display: block;
    width: 100%;
    padding: 9px 12px;
    border: 0;
    border-bottom: 1px solid rgba(93, 0, 112, .10);
    background: #fff;
    text-align: left;
    color: #241a2a;
    cursor: pointer;
}

.rsif-photo-review-author-results button:hover,
.rsif-photo-review-author-results button:focus-visible {
    background: #f7edf8;
}

.rsif-photo-review-author-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.rsif-photo-review-author-message {
    min-height: 1.25em;
    margin: 7px 0 0 !important;
    font-size: 13px;
    font-weight: 700;
    color: #5d0070;
}

/* =========================================================
   RSIF FOTO – kommande bilduppladdningar + årets bild text
   Version 0.2.37
   ========================================================= */

.rsif-photo-upcoming-uploads {
    display: grid !important;
    gap: 14px !important;
    margin-top: 30px !important;
}

.rsif-photo-upcoming-uploads__header {
    display: flex !important;
    align-items: end !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 0 2px !important;
}

.rsif-photo-upcoming-uploads__header h3 {
    margin: 8px 0 3px !important;
    padding: 0 !important;
    color: var(--rsif-text, #222222) !important;
    font-size: clamp(22px, 3vw, 28px) !important;
    line-height: 1.12 !important;
    font-weight: 700 !important;
}

.rsif-photo-upcoming-uploads__header p {
    margin: 0 !important;
    max-width: 760px !important;
    color: var(--rsif-muted, #555555) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.rsif-photo-upcoming-uploads__list {
    display: grid !important;
    gap: 10px !important;
}

.rsif-photo-upcoming-upload-card {
    display: grid !important;
    grid-template-columns: minmax(220px, 1.3fr) minmax(280px, 2fr) !important;
    gap: 16px !important;
    padding: 15px 16px !important;
    border: 1px solid rgba(80, 0, 100, .14) !important;
    border-radius: 16px !important;
    background:
        linear-gradient(135deg, rgba(80, 0, 100, .04), rgba(255, 255, 255, .95)) !important;
    box-shadow: 0 7px 20px rgba(30, 20, 35, .04) !important;
}

.rsif-photo-upcoming-upload-card h4 {
    margin: 8px 0 4px !important;
    padding: 0 !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    color: var(--rsif-text, #222222) !important;
}

.rsif-photo-upcoming-upload-card p {
    margin: 0 !important;
    color: var(--rsif-muted, #555555) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

.rsif-photo-upcoming-upload-card__facts {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 0 !important;
}

.rsif-photo-upcoming-upload-card__facts div {
    padding: 10px 11px !important;
    border: 1px solid rgba(80, 0, 100, .10) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, .76) !important;
}

.rsif-photo-upcoming-upload-card__facts dt {
    margin: 0 0 4px !important;
    color: var(--rsif-secondary, #500064) !important;
    font-size: 11px !important;
    line-height: 1.1 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: .02em !important;
}

.rsif-photo-upcoming-upload-card__facts dd {
    margin: 0 !important;
    color: var(--rsif-text, #222222) !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

.rsif-photo-year-awards__member-callout {
    margin-top: 10px !important;
    padding: 13px 15px !important;
    border-left: 5px solid var(--rsif-primary, #e6007e) !important;
    border-radius: 12px !important;
    background: rgba(230, 0, 126, .07) !important;
    max-width: 920px !important;
}

@media (max-width: 900px) {
    .rsif-photo-upcoming-upload-card {
        grid-template-columns: 1fr !important;
    }

    .rsif-photo-upcoming-upload-card__facts {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 560px) {
    .rsif-photo-upcoming-uploads__header {
        display: grid !important;
        align-items: start !important;
    }

    .rsif-photo-upcoming-upload-card__facts {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   0.2.45 – Tävlingar och jury
   ========================================================= */
.rsif-photo-competition-center__header {
    margin-bottom: 24px;
}

.rsif-photo-competition-center__header h2 {
    margin: 10px 0 6px;
}

.rsif-photo-competition-center__layout {
    display: grid;
    grid-template-columns: minmax(210px, 280px) minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.rsif-photo-competition-list {
    display: grid;
    gap: 10px;
}

.rsif-photo-competition-list__item {
    display: grid;
    gap: 3px;
    padding: 14px 16px;
    border: 1px solid rgba(86, 0, 108, .16);
    border-radius: 16px;
    text-decoration: none;
    color: inherit;
    background: #fff;
}

.rsif-photo-competition-list__item.is-active {
    border-color: #56006c;
    box-shadow: 0 0 0 2px rgba(86, 0, 108, .08);
}

.rsif-photo-competition-list__item span {
    font-size: 13px;
    opacity: .75;
}

.rsif-photo-competition-form {
    display: grid;
    gap: 20px;
    padding: 22px;
    border: 1px solid rgba(86, 0, 108, .16);
    border-radius: 20px;
    background: #fff;
}

.rsif-photo-competition-form__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.rsif-photo-competition-form__wide {
    grid-column: 1 / -1;
}

.rsif-photo-competition-form__section {
    margin: 0;
    padding: 18px;
    border: 1px solid rgba(86, 0, 108, .14);
    border-radius: 16px;
}

.rsif-photo-competition-form__section legend {
    padding: 0 8px;
    font-weight: 700;
}

.rsif-photo-competition-form__checks {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 22px;
    margin-bottom: 16px;
}

.rsif-photo-competition-form__checks label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

@media (max-width: 900px) {
    .rsif-photo-competition-center__layout,
    .rsif-photo-competition-form__grid {
        grid-template-columns: 1fr;
    }

    .rsif-photo-competition-form__wide {
        grid-column: auto;
    }
}

/* Jurygrupper och inbjudningar – 0.2.46 */
.rsif-photo-juror-builder{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:10px}.rsif-photo-juror-builder__panel,.rsif-photo-juror-list{padding:18px;border:1px solid #ead9ec;border-radius:18px;background:#fff}.rsif-photo-juror-builder__panel h3,.rsif-photo-juror-list h3{margin:0 0 12px}.rsif-photo-juror-builder__panel form{display:grid;gap:10px}.rsif-photo-juror-search-results{display:grid;gap:8px;margin-top:10px}.rsif-photo-juror-search-result,.rsif-photo-juror-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid #ead9ec;border-radius:14px}.rsif-photo-juror-search-result span,.rsif-photo-juror-row span{display:block;font-size:13px}.rsif-photo-juror-list{margin-top:18px}.rsif-photo-juror-list__table{display:grid;gap:10px}.rsif-photo-juror-row__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.rsif-photo-jury-portal{background:#faf8f6}.rsif-photo-jury-portal__main{max-width:900px;margin:0 auto;padding:50px 24px}.rsif-photo-jury-portal__card{margin-top:24px;padding:24px;border:1px solid #ead9ec;border-radius:20px;background:#fff}@media(max-width:800px){.rsif-photo-juror-builder{grid-template-columns:1fr}.rsif-photo-juror-row{align-items:flex-start;flex-direction:column}.rsif-photo-juror-row__actions{justify-content:flex-start}}

/* =========================================================
   RSIF Foto 0.2.47 – flera bildkällor i tävling
   ========================================================= */
.rsif-photo-source-picker__search {
    width: 100%;
    margin: 8px 0 10px;
}
.rsif-photo-source-picker__list {
    max-height: 360px;
    overflow: auto;
    border: 1px solid rgba(88, 0, 109, .18);
    border-radius: 16px;
    padding: 8px;
    background: #fff;
}
.rsif-photo-source-picker__item {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 11px 12px;
    border-radius: 11px;
    cursor: pointer;
}
.rsif-photo-source-picker__item:hover {
    background: rgba(88, 0, 109, .05);
}
.rsif-photo-source-picker__item + .rsif-photo-source-picker__item {
    border-top: 1px solid rgba(88, 0, 109, .09);
}
.rsif-photo-source-picker__content {
    display: grid;
    gap: 3px;
}
.rsif-photo-source-picker__content small {
    opacity: .75;
}


/* =========================================================
   RSIF Foto 0.2.48 – tydliga val och fungerande sökning
   ========================================================= */
.rsif-photo-source-picker__item[hidden] {
    display: none !important;
}

.rsif-photo-source-picker__checkbox {
    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;
}

.rsif-photo-source-picker__item {
    position: relative;
    border: 1px solid transparent;
    transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.rsif-photo-source-picker__item.is-selected {
    padding-right: 78px;
    background: rgba(88, 0, 109, .10);
    border-color: rgba(88, 0, 109, .35);
    box-shadow: inset 4px 0 0 #58006d;
}

.rsif-photo-source-picker__item.is-selected::after {
    content: "Vald";
    position: absolute;
    top: 50%;
    right: 12px;
    transform: translateY(-50%);
    padding: 5px 10px;
    border-radius: 999px;
    background: #58006d;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
}

.rsif-photo-source-picker__item:focus-within {
    outline: 3px solid rgba(239, 0, 113, .30);
    outline-offset: 2px;
}


/* =========================================================
   RSIF Foto 0.2.49 – årsstyrd bildkällesökning
   ========================================================= */
.rsif-photo-source-picker__empty {
    margin: 8px 0 0;
    padding: 12px 14px;
    border: 1px dashed rgba(88, 0, 109, .25);
    border-radius: 12px;
    background: rgba(88, 0, 109, .04);
}
.rsif-photo-source-picker__empty[hidden] {
    display: none !important;
}

/* =========================================================
   RSIF FOTO 0.2.50 – MALLSTYRNING OCH BESTÅENDE BILDKÄLLOR
   ========================================================= */
.rsif-photo-source-picker__toolbar {
    display: flex;
    align-items: center;
    gap: 12px;
}
.rsif-photo-source-picker__toolbar .rsif-photo-source-picker__search {
    flex: 1 1 auto;
    min-width: 0;
}
.rsif-photo-source-picker__selected-count {
    flex: 0 0 auto;
    padding: 7px 12px;
    border: 1px solid rgba(79, 0, 111, .18);
    border-radius: 999px;
    background: rgba(79, 0, 111, .06);
    color: #4f006f;
    font-weight: 700;
    white-space: nowrap;
}
@media (max-width: 700px) {
    .rsif-photo-source-picker__toolbar {
        align-items: stretch;
        flex-direction: column;
    }
    .rsif-photo-source-picker__selected-count {
        align-self: flex-start;
    }
}

/* =========================================================
   RSIF Foto 0.2.52 – medlemstävlingar och tävlingsbidrag
   ========================================================= */
.rsif-photo-member-competitions,
.rsif-photo-member-competition-detail,
.rsif-photo-results { display:grid; gap:24px; }
.rsif-photo-member-competition-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:18px; }
.rsif-photo-member-competition-card { border:1px solid #dcdfe5; border-radius:16px; padding:20px; background:#fff; display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.rsif-photo-member-competition-card h3 { margin:0; }
.rsif-photo-entry-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:18px; }
.rsif-photo-entry-card { border:2px solid #e2e4e9; border-radius:14px; padding:12px; background:#fff; display:grid; gap:10px; }
.rsif-photo-entry-card.is-selected { border-color:#6d2b8f; background:#f6eff9; box-shadow:0 0 0 3px rgba(109,43,143,.08); }
.rsif-photo-entry-card img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:10px; }
.rsif-photo-entry-card h4 { margin:0; font-size:15px; overflow-wrap:anywhere; }
.rsif-photo-entry-card form { display:grid; gap:8px; }
.rsif-photo-back-link { font-weight:700; text-decoration:none; }

/* =========================================================
   RSIF Foto 0.2.53 – tävlingsuppladdning på Skicka in
   ========================================================= */
.rsif-photo-competition-uploads {
    margin: 28px 0;
}

.rsif-photo-section-heading,
.rsif-photo-competition-upload-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}

.rsif-photo-section-heading h2,
.rsif-photo-competition-upload-card h3 {
    margin: 10px 0 4px;
}

.rsif-photo-competition-upload-grid {
    display: grid;
    gap: 16px;
    margin-top: 18px;
}

.rsif-photo-competition-upload-card {
    padding: 20px;
    border: 1px solid rgba( 91, 0, 112, .18 );
    border-radius: 18px;
    background: linear-gradient( 135deg, rgba( 244, 235, 247, .62 ), rgba( 255, 255, 255, .96 ) );
}

.rsif-photo-competition-upload-card.is-complete {
    background: rgba( 235, 248, 246, .72 );
}

.rsif-photo-competition-upload-card__count {
    white-space: nowrap;
    padding: 8px 12px;
    border: 1px solid rgba( 91, 0, 112, .14 );
    border-radius: 999px;
    font-weight: 700;
}

.rsif-photo-my-competition-entries {
    margin: 24px 0;
}

@media (max-width: 720px) {
    .rsif-photo-section-heading,
    .rsif-photo-competition-upload-card__header {
        display: block;
    }

    .rsif-photo-section-heading > .rsif-ui-button,
    .rsif-photo-competition-upload-card__count {
        display: inline-flex;
        margin-top: 12px;
    }
}


/* =========================================================
   RSIF Foto 0.2.59 – kompakta kort för Mina tävlingsbidrag
   ========================================================= */
.rsif-photo-competition-my-entries .rsif-photo-entry-grid,
.rsif-photo-my-competition-entries .rsif-photo-entry-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.rsif-photo-competition-my-entries .rsif-photo-entry-card,
.rsif-photo-my-competition-entries .rsif-photo-entry-card {
    align-content: start;
    min-width: 0;
    padding: 10px;
}

.rsif-photo-competition-my-entries .rsif-photo-entry-card img,
.rsif-photo-my-competition-entries .rsif-photo-entry-card img {
    width: 100%;
    height: 135px;
    aspect-ratio: auto;
    object-fit: cover;
}

.rsif-photo-competition-my-entries .rsif-photo-entry-card p,
.rsif-photo-my-competition-entries .rsif-photo-entry-card p {
    margin: 0;
    font-size: 14px;
    font-weight: 700;
}

@media (max-width: 900px) {
    .rsif-photo-competition-my-entries .rsif-photo-entry-grid,
    .rsif-photo-my-competition-entries .rsif-photo-entry-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .rsif-photo-competition-my-entries .rsif-photo-entry-grid,
    .rsif-photo-my-competition-entries .rsif-photo-entry-grid {
        grid-template-columns: 1fr;
    }

    .rsif-photo-competition-my-entries .rsif-photo-entry-card,
    .rsif-photo-my-competition-entries .rsif-photo-entry-card {
        grid-template-columns: 92px minmax(0, 1fr);
        align-items: start;
    }

    .rsif-photo-competition-my-entries .rsif-photo-entry-card img,
    .rsif-photo-my-competition-entries .rsif-photo-entry-card img {
        grid-row: 1 / span 3;
        width: 92px;
        height: 76px;
    }
}


/* =========================================================
   RSIF Foto 0.2.60 – tävlingsspecifik medlemsbedömning
   ========================================================= */
.rsif-photo-competition-member-rating { margin-top: 32px; }
.rsif-photo-competition-member-rating__head { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; margin-bottom:18px; }
.rsif-photo-competition-member-rating__head h3 { margin:8px 0 4px; }
.rsif-photo-competition-member-rating__progress { min-width:110px; padding:12px 16px; border:1px solid #e0cee5; border-radius:16px; text-align:center; background:#fff; }
.rsif-photo-competition-member-rating__progress strong, .rsif-photo-competition-member-rating__progress span { display:block; }
.rsif-photo-competition-rating-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.rsif-photo-competition-rating-card { overflow:hidden; border:1px solid #e0cee5; border-radius:18px; background:#fff; }
.rsif-photo-competition-rating-card.is-rated { box-shadow:inset 0 0 0 2px #2f8f77; }
.rsif-photo-competition-rating-card > img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; background:#111; }
.rsif-photo-competition-rating-card__body { padding:15px; }
.rsif-photo-competition-rating-card__meta { display:flex; justify-content:space-between; gap:12px; margin-bottom:12px; }
.rsif-photo-competition-rating-card__meta span { color:#675d69; }
.rsif-photo-competition-stars fieldset { margin:0 0 12px; padding:0; border:0; }
.rsif-photo-competition-stars legend { margin-bottom:6px; font-weight:700; }
.rsif-photo-competition-stars label { display:inline-flex; cursor:pointer; }
.rsif-photo-competition-stars input { position:absolute; opacity:0; pointer-events:none; }
.rsif-photo-competition-stars label span[aria-hidden="true"] { font-size:29px; line-height:1; color:#c9bdcc; transition:color .15s, transform .15s; }
.rsif-photo-competition-stars label:has(input:checked) span[aria-hidden="true"],
.rsif-photo-competition-stars label:has(input:checked) ~ label span[aria-hidden="true"] { color:#c9bdcc; }
.rsif-photo-competition-stars fieldset:has(input[value="1"]:checked) label:nth-of-type(-n+1) span[aria-hidden="true"],
.rsif-photo-competition-stars fieldset:has(input[value="2"]:checked) label:nth-of-type(-n+2) span[aria-hidden="true"],
.rsif-photo-competition-stars fieldset:has(input[value="3"]:checked) label:nth-of-type(-n+3) span[aria-hidden="true"],
.rsif-photo-competition-stars fieldset:has(input[value="4"]:checked) label:nth-of-type(-n+4) span[aria-hidden="true"],
.rsif-photo-competition-stars fieldset:has(input[value="5"]:checked) label:nth-of-type(-n+5) span[aria-hidden="true"] { color:#f2b500; }
.rsif-photo-competition-stars label:hover span[aria-hidden="true"] { transform:scale(1.08); }
.rsif-photo-competition-rating-card__own { margin:0; padding:10px 12px; border-radius:12px; background:#f5eff7; }
@media (max-width:980px) { .rsif-photo-competition-rating-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px) { .rsif-photo-competition-member-rating__head { display:block; } .rsif-photo-competition-member-rating__progress { display:inline-block; margin-top:10px; } .rsif-photo-competition-rating-grid { grid-template-columns:1fr; } }

/* =========================================================
   RSIF Foto 0.2.61 – medlemsbildspel för tävling
   ========================================================= */
.rsif-photo-competition-member-rating__tools { display:flex; flex-direction:column; align-items:stretch; gap:12px; min-width:250px; }
.rsif-photo-competition-member-rating__tools .rsif-photo-competition-member-rating__progress { min-width:0; }
.rsif-photo-competition-member-rating__tools .rsif-ui-button { width:100%; text-align:center; }
body.rsif-photo-competition-slideshow-open { overflow:hidden; }
.rsif-photo-competition-slideshow[hidden] { display:none !important; }
.rsif-photo-competition-slideshow { position:fixed; inset:0; z-index:1000000; display:flex; align-items:center; justify-content:center; padding:24px; background:rgba(15,9,18,.94); }
.rsif-photo-competition-slideshow__dialog { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,360px); width:min(1500px,100%); height:min(900px,calc(100vh - 48px)); overflow:hidden; border-radius:22px; background:#111; box-shadow:0 30px 90px rgba(0,0,0,.48); }
.rsif-photo-competition-slideshow__stage { display:flex; align-items:center; justify-content:center; min-width:0; min-height:0; padding:28px; background:#0b0b0b; }
.rsif-photo-competition-slideshow__image { display:block; max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; }
.rsif-photo-competition-slideshow__panel { padding:34px 30px; overflow:auto; background:#fff; color:#171018; }
.rsif-photo-competition-slideshow__counter { display:inline-flex; margin-bottom:24px; padding:8px 12px; border:1px solid #e0cee5; border-radius:999px; font-weight:700; }
.rsif-photo-competition-slideshow__title { margin:0 0 6px; font-size:30px; }
.rsif-photo-competition-slideshow__category { margin:0 0 30px; color:#675d69; font-size:18px; }
.rsif-photo-competition-slideshow__stars { display:flex; gap:5px; margin:14px 0; }
.rsif-photo-competition-slideshow__stars button { appearance:none; padding:0; border:0; background:transparent; color:#c9bdcc; font-size:42px; line-height:1; cursor:pointer; transition:transform .15s,color .15s; }
.rsif-photo-competition-slideshow__stars button:hover { transform:scale(1.08); }
.rsif-photo-competition-slideshow__stars button.is-active { color:#f2b500; }
.rsif-photo-competition-slideshow__message { min-height:1.5em; color:#675d69; }
.rsif-photo-competition-slideshow__own { padding:16px; border-radius:14px; background:#f5eff7; font-weight:700; }
.rsif-photo-competition-slideshow__close { position:absolute; top:14px; right:14px; z-index:4; display:grid; place-items:center; width:46px; height:46px; border:0; border-radius:50%; background:#fff; color:#5b006e; font-size:31px; cursor:pointer; box-shadow:0 6px 24px rgba(0,0,0,.22); }
.rsif-photo-competition-slideshow__nav { position:absolute; top:50%; z-index:3; display:grid; place-items:center; width:52px; height:72px; margin-top:-36px; border:0; border-radius:14px; background:rgba(255,255,255,.9); color:#5b006e; font-size:48px; line-height:1; cursor:pointer; }
.rsif-photo-competition-slideshow__nav.is-previous { left:14px; }
.rsif-photo-competition-slideshow__nav.is-next { right:374px; }
@media (max-width:980px) {
  .rsif-photo-competition-member-rating__head { display:block; }
  .rsif-photo-competition-member-rating__tools { width:100%; min-width:0; margin-top:16px; }
  .rsif-photo-competition-slideshow__dialog { grid-template-columns:1fr; grid-template-rows:minmax(0,1fr) auto; }
  .rsif-photo-competition-slideshow__panel { max-height:38vh; padding:22px; }
  .rsif-photo-competition-slideshow__nav.is-next { right:14px; }
}
@media (max-width:640px) {
  .rsif-photo-competition-slideshow { padding:0; }
  .rsif-photo-competition-slideshow__dialog { width:100%; height:100vh; border-radius:0; }
  .rsif-photo-competition-slideshow__stage { padding:62px 12px 16px; }
  .rsif-photo-competition-slideshow__stars button { font-size:36px; }
}


/* =========================================================
   RSIF Foto 0.2.62 – medlemsbildspel layout och navigation
   ========================================================= */
.rsif-photo-competition-member-rating__head { display:block; margin-bottom:20px; }
.rsif-photo-competition-member-rating__tools { display:flex; flex-direction:row; align-items:center; justify-content:flex-start; flex-wrap:wrap; gap:12px; min-width:0; margin-top:18px; }
.rsif-photo-competition-member-rating__tools .rsif-photo-competition-member-rating__progress { display:flex; align-items:baseline; gap:5px; width:auto; min-width:0; padding:10px 14px; text-align:left; }
.rsif-photo-competition-member-rating__tools .rsif-photo-competition-member-rating__progress strong,
.rsif-photo-competition-member-rating__tools .rsif-photo-competition-member-rating__progress span { display:inline; }
.rsif-photo-competition-member-rating__tools .rsif-ui-button { width:auto; min-width:0; }
.rsif-photo-competition-slideshow__nav { touch-action:manipulation; user-select:none; }
.rsif-photo-competition-slideshow__nav:disabled { opacity:.35; cursor:not-allowed; }
@media (max-width:640px) {
  .rsif-photo-competition-member-rating__tools { align-items:stretch; }
  .rsif-photo-competition-member-rating__tools .rsif-ui-button { width:100%; }
}

/* =========================================================
   0.2.65 – Bildkällor i tävling
   ========================================================= */
.rsif-photo-competition-source-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 14px 0 18px;
}

.rsif-photo-competition-source-item {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 8px 14px;
    border: 1px solid rgba(91, 0, 126, 0.18);
    border-radius: 999px;
    background: rgba(91, 0, 126, 0.06);
    color: inherit;
    font-weight: 600;
    line-height: 1.25;
}

.rsif-photo-competition-source-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

/* =========================================================
   v0.2.67 – Månadsträffar och teman
   ========================================================= */
.rsif-photo-monthly-overview {
    margin: 28px 0;
    padding: 22px;
    border: 1px solid #e4d3e8;
    border-radius: 18px;
    background: #fff;
}

.rsif-photo-monthly-overview__heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 18px;
}

.rsif-photo-monthly-overview__heading h3 {
    margin: 10px 0 4px;
}

.rsif-photo-monthly-overview__heading p {
    margin: 0;
}

.rsif-photo-monthly-overview__stats {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.rsif-photo-monthly-overview__stats span {
    display: inline-flex;
    gap: 5px;
    align-items: center;
    padding: 8px 12px;
    border: 1px solid #e4d3e8;
    border-radius: 999px;
    white-space: nowrap;
    background: #faf7fb;
}

.rsif-photo-monthly-overview__table-wrap {
    overflow-x: auto;
}

.rsif-photo-monthly-overview__table {
    width: 100%;
    min-width: 900px;
    border-collapse: collapse;
}

.rsif-photo-monthly-overview__table th,
.rsif-photo-monthly-overview__table td {
    padding: 14px 12px;
    border-top: 1px solid #eee3f0;
    text-align: left;
    vertical-align: middle;
}

.rsif-photo-monthly-overview__table thead th {
    border-top: 0;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: #5e4664;
}

.rsif-photo-monthly-overview__table tr.is-selected td {
    background: #faf4fb;
}

.rsif-photo-monthly-overview__table td small,
.rsif-photo-monthly-overview__table td span:not(.rsif-photo-monthly-status) {
    display: block;
    margin-top: 3px;
    color: #695d6b;
}

.rsif-photo-monthly-overview__missing {
    font-weight: 700;
    color: #a33c55 !important;
}

.rsif-photo-monthly-status {
    display: inline-flex;
    align-items: center;
    padding: 7px 10px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    background: #eee7f1;
    color: #4f1761;
}

.rsif-photo-monthly-status--open {
    background: #cfe6e3;
    color: #075a50;
}

.rsif-photo-monthly-status--missing,
.rsif-photo-monthly-status--disabled {
    background: #fde3e9;
    color: #9b2043;
}

.rsif-photo-monthly-status--upcoming {
    background: #eee5f2;
    color: #5a176d;
}

.rsif-photo-monthly-status--closed,
.rsif-photo-monthly-status--completed {
    background: #ececec;
    color: #555;
}

.rsif-photo-monthly-overview__edit {
    min-width: 82px;
    justify-content: center;
}

@media (max-width: 900px) {
    .rsif-photo-monthly-overview__heading {
        display: block;
    }

    .rsif-photo-monthly-overview__stats {
        justify-content: flex-start;
        margin-top: 14px;
    }
}

/* =========================================================
   RSIF Foto 0.2.69 – bredare arbetsyta för Månadens tema
   ========================================================= */

/* Kortkoden ligger inne i AdminCenters breda fotopanel. Ta bort den
   generella kortbegränsningen så månadstema-vyn använder hela ytan. */
.rsif-ac-photo-center__content > .rsif-photo-monthly-admin,
.rsif-ac-photo-center__content .rsif-photo-monthly-admin {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.rsif-ac-photo-center__content .rsif-photo-monthly-overview,
.rsif-ac-photo-center__content .rsif-photo-monthly-admin__selector,
.rsif-ac-photo-center__content .rsif-photo-monthly-admin__form {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}

/* På breda skärmar ryms tabellen utan onödig horisontell rullning. */
@media (min-width: 1180px) {
    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table {
        min-width: 0 !important;
        table-layout: fixed !important;
    }

    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table th:nth-child(1),
    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table td:nth-child(1) {
        width: 24%;
    }

    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table th:nth-child(2),
    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table td:nth-child(2) {
        width: 17%;
    }

    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table th:nth-child(3),
    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table td:nth-child(3) {
        width: 22%;
    }

    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table th:nth-child(4),
    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table td:nth-child(4) {
        width: 13%;
    }

    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table th:nth-child(5),
    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table td:nth-child(5) {
        width: 12%;
    }

    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table th:nth-child(6),
    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table td:nth-child(6) {
        width: 12%;
        text-align: right;
    }

    .rsif-ac-photo-center__content .rsif-photo-monthly-admin__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }
}

@media (max-width: 1179px) {
    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table {
        min-width: 900px;
    }
}


/* =========================================================
   RSIF Foto 0.2.70 – använd hela AdminCenter-bredden för Månadens tema
   ========================================================= */

/* AdminCenter lägger kortkoden i en extra embedded-module-wrapper. Både den
   wrappern och månadstema-kortet måste sträckas; annars ligger den centrala
   maxbredden kvar trots att innehållet självt har width:100%. */
body.rsif-admincenter-page .rsif-ac-photo-center__content,
body.rsif-admincenter-page .rsif-ac-photo-center__content > .rsif-ac-embedded-module,
body.rsif-admincenter-page .rsif-ac-photo-center__content > .rsif-ac-embedded-module--photo,
body.rsif-admincenter-page .rsif-ac-photo-center__content > .rsif-ac-embedded-module--photo > .rsif-photo-monthly-admin,
.rsif-ac-photo-center .rsif-ac-photo-center__content,
.rsif-ac-photo-center .rsif-ac-embedded-module--photo,
.rsif-ac-photo-center .rsif-ac-embedded-module--photo > .rsif-photo-monthly-admin {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Den generella rsif-ui-card-regeln kan ha en fast maxbredd i den centrala
   designsystem-CSS:en. Den här mer specifika regeln gäller bara Månadens tema. */
body.rsif-admincenter-page .rsif-ac-photo-center__content .rsif-ui-card.rsif-photo-monthly-admin,
.rsif-ac-photo-center__content .rsif-ac-embedded-module--photo .rsif-ui-card.rsif-photo-monthly-admin {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
    align-self: stretch !important;
}

@media (min-width: 1180px) {
    body.rsif-admincenter-page .rsif-photo-monthly-overview__table-wrap,
    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table-wrap {
        overflow-x: visible !important;
    }

    body.rsif-admincenter-page .rsif-photo-monthly-overview__table,
    .rsif-ac-photo-center__content .rsif-photo-monthly-overview__table {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        table-layout: fixed !important;
    }
}


/* =========================================================
   RSIF Foto 0.2.71 – stabil månadstemaöversikt i AdminCenter
   ========================================================= */
.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table-wrap {
    width: 100%;
    overflow-x: visible;
}

.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table {
    width: 100%;
    min-width: 0;
    table-layout: fixed;
}

.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table th:nth-child(1),
.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table td:nth-child(1) { width: 26%; }
.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table th:nth-child(2),
.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table td:nth-child(2) { width: 18%; }
.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table th:nth-child(3),
.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table td:nth-child(3) { width: 22%; }
.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table th:nth-child(4),
.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table td:nth-child(4) { width: 12%; }
.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table th:nth-child(5),
.rsif-photo-monthly-admin .rsif-photo-monthly-overview__table td:nth-child(5) { width: 22%; }

.rsif-photo-monthly-overview__status-action {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
}

.rsif-photo-monthly-overview__status-action .rsif-photo-monthly-status,
.rsif-photo-monthly-overview__status-action .rsif-photo-monthly-overview__edit {
    flex: 0 0 auto;
}

@media (max-width: 1100px) {
    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table,
    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table tbody,
    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table tr,
    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table td {
        display: block;
        width: 100% !important;
    }

    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table thead {
        display: none;
    }

    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table tbody {
        display: grid;
        gap: 12px;
    }

    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table tr {
        padding: 16px;
        border: 1px solid #eadfed;
        border-radius: 14px;
        background: #fff;
    }

    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table tr.is-selected {
        background: #faf4fb;
        border-color: #d8bddf;
    }

    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table td {
        padding: 6px 0;
        border: 0;
    }

    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__status-action {
        justify-content: flex-start;
        padding-top: 12px !important;
        margin-top: 6px;
        border-top: 1px solid #eadfed !important;
    }
}


/* =========================================================
   RSIF Foto 0.2.72 – förenklad temaöversikt
   ========================================================= */
.rsif-photo-monthly-overview__empty {
    color: #7a6c7c;
    font-weight: 600;
}

.rsif-photo-monthly-overview__status-action .rsif-photo-monthly-overview__edit {
    white-space: nowrap;
}

/* =========================================================
   RSIF Foto 0.2.73 – tema saknas i temakolumnen
   ========================================================= */
.rsif-photo-monthly-overview__empty {
    font-weight: 700;
}

/* =========================================================
   RSIF Foto 0.2.74 – historik över använda månadsteman
   ========================================================= */
.rsif-photo-monthly-history {
    margin-top: 30px;
    padding: 24px;
    border: 1px solid #eadfed;
    border-radius: 18px;
    background: #fff;
}

.rsif-photo-monthly-history__heading h3 {
    margin: 10px 0 4px;
}

.rsif-photo-monthly-history__heading p {
    margin: 0 0 18px;
    color: #6f6171;
}

.rsif-photo-monthly-history__table-wrap {
    width: 100%;
    overflow-x: auto;
}

.rsif-photo-monthly-history__table {
    width: 100%;
    min-width: 620px;
    border-collapse: collapse;
    table-layout: fixed;
}

.rsif-photo-monthly-history__table th,
.rsif-photo-monthly-history__table td {
    padding: 12px 14px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid #eee5f0;
}

.rsif-photo-monthly-history__table th {
    color: #5a3d5f;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.rsif-photo-monthly-history__table th:nth-child(1),
.rsif-photo-monthly-history__table td:nth-child(1) { width: 20%; }
.rsif-photo-monthly-history__table th:nth-child(2),
.rsif-photo-monthly-history__table td:nth-child(2) { width: 45%; }
.rsif-photo-monthly-history__table th:nth-child(3),
.rsif-photo-monthly-history__table td:nth-child(3) { width: 35%; }

.rsif-photo-monthly-history__table tbody tr:last-child td {
    border-bottom: 0;
}

@media (max-width: 760px) {
    .rsif-photo-monthly-history {
        padding: 18px;
    }

    .rsif-photo-monthly-history__table {
        min-width: 560px;
    }
}

.rsif-photo-monthly-history__empty {
    padding: 16px 18px;
    border: 1px dashed #d9c7de;
    border-radius: 12px;
    color: #6f6171;
    background: #faf7fb;
}

/* =========================================================
   RSIF Foto 0.2.78 – månadsöversikt över hela kortbredden
   ========================================================= */
@media (min-width: 1101px) {
    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table-wrap {
        box-sizing: border-box;
        width: calc(100% + 44px);
        max-width: none;
        margin-right: -22px;
        margin-left: -22px;
        padding-right: 22px;
        padding-left: 22px;
    }

    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table {
        width: 100% !important;
        max-width: none !important;
    }
}

/* =========================================================
   RSIF Foto 0.2.80 – tabellen använder hela översiktsbredden
   ========================================================= */
@media (min-width: 1101px) {
    .rsif-photo-monthly-admin .rsif-photo-monthly-overview {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        box-sizing: border-box !important;
    }

    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table-wrap {
        display: block !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table {
        display: table !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: none !important;
        table-layout: fixed !important;
        box-sizing: border-box !important;
    }
}

/* =========================================================
   RSIF Foto 0.2.82 – full tabellbredd efter verifierad diagnos
   =========================================================

   Diagnosen visade att Divi inte begränsar tabellen. Bredden
   förlorades i översiktens 22 px sidopadding, samtidigt som
   en senare 0.2.80-regel nollställde den tidigare utvidgningen.
*/
@media (min-width: 1101px) {
    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table-wrap {
        display: block !important;
        width: calc(100% + 44px) !important;
        min-width: calc(100% + 44px) !important;
        max-width: none !important;
        margin-right: -22px !important;
        margin-left: -22px !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        overflow: visible !important;
        overflow-x: visible !important;
        box-sizing: border-box !important;
    }

    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__table {
        display: table !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: none !important;
        table-layout: fixed !important;
        box-sizing: border-box !important;
    }
}


/* =========================================================
   RSIF Foto 0.2.83 – synkroniserad CSS-cacheversion
   ========================================================= */


/* =========================================================
   RSIF Foto 0.2.85 – stabil fullbreddslista utan tabellmotor
   ========================================================= */
@media (min-width: 1101px) {
    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__grid {
        width: calc(100% + 44px);
        margin-left: -22px;
        margin-right: -22px;
    }

    .rsif-photo-monthly-overview__grid-head,
    .rsif-photo-monthly-overview__grid-row {
        display: grid;
        grid-template-columns: minmax(220px, 1.35fr) minmax(150px, .9fr) minmax(200px, 1.1fr) minmax(120px, .65fr) minmax(150px, .8fr);
        align-items: center;
        width: 100%;
    }
}

.rsif-photo-monthly-overview__grid {
    width: 100%;
    min-width: 0;
}

.rsif-photo-monthly-overview__grid-head {
    padding: 0 14px 14px;
    color: #5b355f;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.rsif-photo-monthly-overview__grid-row {
    background: #faf4fb;
    border-top: 1px solid #eadfed;
}

.rsif-photo-monthly-overview__grid-row.is-selected {
    background: #faf4fb;
}

.rsif-photo-monthly-overview__cell {
    min-width: 0;
    padding: 18px 14px;
}

.rsif-photo-monthly-overview__cell strong,
.rsif-photo-monthly-overview__cell small,
.rsif-photo-monthly-overview__cell span:not(.rsif-photo-monthly-status) {
    display: block;
}

.rsif-photo-monthly-overview__cell small {
    margin-top: 4px;
    color: #6f6171;
}

@media (max-width: 1100px) {
    .rsif-photo-monthly-overview__grid-head {
        display: none;
    }

    .rsif-photo-monthly-overview__grid-body {
        display: grid;
        gap: 12px;
    }

    .rsif-photo-monthly-overview__grid-row {
        display: block;
        padding: 14px 16px;
        border: 1px solid #eadfed;
        border-radius: 14px;
        background: #fff;
    }

    .rsif-photo-monthly-overview__grid-row.is-selected {
        background: #faf4fb;
        border-color: #d8bddf;
    }

    .rsif-photo-monthly-overview__cell {
        padding: 7px 0;
    }

    .rsif-photo-monthly-overview__cell::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 3px;
        color: #5b355f;
        font-size: 12px;
        font-weight: 800;
        letter-spacing: .03em;
        text-transform: uppercase;
    }

    .rsif-photo-monthly-overview__status-action {
        justify-content: flex-start;
        margin-top: 7px;
        padding-top: 14px;
        border-top: 1px solid #eadfed;
    }
}


/* =========================================================
   RSIF Foto 0.2.86 – bred historik med stabil gridlayout
   ========================================================= */
.rsif-photo-monthly-history {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
}

.rsif-photo-monthly-history__grid {
    width: calc(100% + 48px);
    margin-right: -24px;
    margin-left: -24px;
    box-sizing: border-box;
}

.rsif-photo-monthly-history__grid-head,
.rsif-photo-monthly-history__grid-row {
    display: grid;
    grid-template-columns: minmax(150px, .75fr) minmax(280px, 1.7fr) minmax(180px, 1fr);
    align-items: start;
    width: 100%;
    box-sizing: border-box;
}

.rsif-photo-monthly-history__grid-head {
    padding: 0 24px;
    color: #5a3d5f;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.rsif-photo-monthly-history__grid-head > span,
.rsif-photo-monthly-history__grid-row > span {
    min-width: 0;
    padding: 12px 14px;
    overflow-wrap: anywhere;
}

.rsif-photo-monthly-history__grid-row {
    padding: 0 24px;
    border-bottom: 1px solid #eee5f0;
}

.rsif-photo-monthly-history__grid-row:last-child {
    border-bottom: 0;
}

@media (max-width: 760px) {
    .rsif-photo-monthly-history__grid {
        width: 100%;
        margin-right: 0;
        margin-left: 0;
    }

    .rsif-photo-monthly-history__grid-head {
        display: none;
    }

    .rsif-photo-monthly-history__grid-row {
        display: block;
        padding: 10px 0;
    }

    .rsif-photo-monthly-history__grid-row > span {
        display: grid;
        grid-template-columns: 125px minmax(0, 1fr);
        gap: 12px;
        padding: 6px 0;
    }

    .rsif-photo-monthly-history__grid-row > span::before {
        content: attr(data-label);
        color: #5a3d5f;
        font-size: 12px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: .04em;
    }
}

/* =========================================================
   RSIF Foto 0.2.87 – robust månadsöversikt vid smalare AdminCenter
   ========================================================= */
@media (min-width: 1101px) {
    .rsif-photo-monthly-admin .rsif-photo-monthly-overview__grid {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    .rsif-photo-monthly-overview__grid-head,
    .rsif-photo-monthly-overview__grid-row {
        grid-template-columns:
            minmax(0, 1.45fr)
            minmax(0, 1fr)
            minmax(0, 1.25fr)
            minmax(82px, .62fr)
            minmax(108px, .7fr);
    }

    .rsif-photo-monthly-overview__cell {
        padding-left: 10px;
        padding-right: 10px;
        overflow-wrap: anywhere;
    }

    .rsif-photo-monthly-overview__cell:last-child {
        justify-self: stretch;
        text-align: center;
    }

    .rsif-photo-monthly-overview__cell:last-child .rsif-photo-monthly-status,
    .rsif-photo-monthly-overview__cell:last-child .rsif-ui-button,
    .rsif-photo-monthly-overview__cell:last-child a,
    .rsif-photo-monthly-overview__cell:last-child button {
        max-width: 100%;
        box-sizing: border-box;
        white-space: normal;
    }
}

@media (min-width: 1101px) and (max-width: 1320px) {
    .rsif-photo-monthly-overview__grid-head,
    .rsif-photo-monthly-overview__grid-row {
        grid-template-columns:
            minmax(0, 1.35fr)
            minmax(0, .9fr)
            minmax(0, 1.15fr)
            minmax(72px, .55fr)
            minmax(98px, .65fr);
    }

    .rsif-photo-monthly-overview__cell {
        padding-left: 8px;
        padding-right: 8px;
    }
}

/* =========================================================
   RSIF Foto 0.2.89 – Temabank, massurval och generator
   ========================================================= */
.rsif-photo-theme-bank {
    margin-top: 32px;
    padding: 24px;
    border: 1px solid #ead8ee;
    border-radius: 22px;
    background: #fff;
}

.rsif-photo-theme-bank__heading,
.rsif-photo-theme-bank__import,
.rsif-photo-theme-bank__generator-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
}

.rsif-photo-theme-bank__heading h3,
.rsif-photo-theme-bank__generator h4,
.rsif-photo-theme-bank__queue h4,
.rsif-photo-theme-bank__import h4 {
    margin: 10px 0 6px;
}

.rsif-photo-theme-bank__heading p,
.rsif-photo-theme-bank__generator p,
.rsif-photo-theme-bank__import p,
.rsif-photo-theme-bank__queue-card p {
    margin: 0;
}

.rsif-photo-theme-bank__counts {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.rsif-photo-theme-bank__counts span {
    display: inline-flex;
    gap: 5px;
    padding: 10px 14px;
    border: 1px solid #ead8ee;
    border-radius: 999px;
    background: #fbf8fc;
    white-space: nowrap;
}

.rsif-photo-theme-bank__generator,
.rsif-photo-theme-bank__queue,
.rsif-photo-theme-bank__import,
.rsif-photo-theme-bank__settings {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #ead8ee;
}

.rsif-photo-theme-bank__candidate-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}

.rsif-photo-theme-bank__candidate {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 16px;
    border: 1px solid #ead8ee;
    border-radius: 18px;
    background: linear-gradient(145deg, #fff, #faf4fb);
}

.rsif-photo-theme-bank__candidate-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.rsif-photo-theme-bank__candidate h5 {
    margin: 14px 0 6px;
    font-size: 18px;
}

.rsif-photo-theme-bank__reusable {
    font-size: 11px;
    font-weight: 700;
    color: #0d625c;
}

.rsif-photo-theme-bank__pin {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
    font-weight: 700;
}


.rsif-photo-theme-bank__queue-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 14px;
}

.rsif-photo-theme-bank__queue-toolbar label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
}

.rsif-photo-theme-bank__selected-count {
    color: #6c6270;
    font-weight: 700;
}

.rsif-photo-theme-bank__queue-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.rsif-photo-theme-bank__queue-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: 12px;
    padding: 16px;
    border: 1px solid #ead8ee;
    border-radius: 16px;
    background: #fbf8fc;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
}

.rsif-photo-theme-bank__queue-card:hover {
    border-color: #b987c4;
}

.rsif-photo-theme-bank__queue-card.is-selected {
    border-color: #5b006e;
    background: #f3e8f5;
    box-shadow: inset 4px 0 0 #5b006e;
}

.rsif-photo-theme-bank__queue-card > input {
    margin-top: 4px;
}

.rsif-photo-theme-bank__queue-card-content {
    min-width: 0;
}

.rsif-photo-theme-bank__queue-card small {
    display: block;
    margin-top: 3px;
    color: #6c6270;
}

.rsif-photo-theme-bank__queue-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: auto;
}

.rsif-photo-theme-bank__queue-actions .rsif-ui-button {
    min-height: 38px;
    padding: 8px 14px;
}

.rsif-photo-theme-bank__settings summary {
    cursor: pointer;
    font-weight: 700;
    color: #5b006e;
}

.rsif-photo-theme-bank__settings-grid {
    display: grid;
    grid-template-columns: minmax(180px, .35fr) minmax(320px, 1fr);
    gap: 18px;
    margin-top: 16px;
}

@media (max-width: 1250px) {
    .rsif-photo-theme-bank__candidate-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .rsif-photo-theme-bank__heading,
    .rsif-photo-theme-bank__import,
    .rsif-photo-theme-bank__generator-head {
        display: block;
    }

    .rsif-photo-theme-bank__counts {
        justify-content: flex-start;
        margin-top: 14px;
    }

    .rsif-photo-theme-bank__candidate-grid,
    .rsif-photo-theme-bank__queue-grid,
    .rsif-photo-theme-bank__settings-grid {
        grid-template-columns: 1fr;
    }

    .rsif-photo-theme-bank__import form {
        margin-top: 14px;
    }
}

/* =========================================================
   0.2.90 – Temabank: lokalt arbetsurval utan omladdning
   ========================================================= */
.rsif-photo-theme-bank__review-heading,
.rsif-photo-theme-bank__review-column-head,
.rsif-photo-theme-bank__save-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.rsif-photo-theme-bank__review-heading h4,
.rsif-photo-theme-bank__review-column-head h5 {
    margin: 0;
}

.rsif-photo-theme-bank__review-board {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
    margin-top: 18px;
}

.rsif-photo-theme-bank__review-column {
    min-width: 0;
    padding: 16px;
    border: 1px solid #ead8ee;
    border-radius: 18px;
    background: #fbf8fc;
}

.rsif-photo-theme-bank__review-column--approved {
    border-color: #a9d8ce;
    background: #f3fbf8;
}

.rsif-photo-theme-bank__review-column-head small {
    display: block;
    margin-top: 3px;
    color: #6c6270;
}

.rsif-photo-theme-bank__review-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    min-height: 34px;
    padding: 4px 10px;
    border-radius: 999px;
    background: #5b006e;
    color: #fff;
    font-weight: 800;
}

.rsif-photo-theme-bank__review-column--approved .rsif-photo-theme-bank__review-count {
    background: #0d625c;
}

.rsif-photo-theme-bank__review-column .rsif-photo-theme-bank__queue-grid,
.rsif-photo-theme-bank__rejected-panel .rsif-photo-theme-bank__queue-grid {
    grid-template-columns: 1fr;
}

.rsif-photo-theme-bank__queue-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
}

.rsif-photo-theme-bank__card-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.rsif-photo-theme-bank__card-actions .rsif-ui-button {
    min-height: 36px;
    padding: 7px 12px;
}

[data-theme-list="approved"] .rsif-photo-theme-bank__queue-card {
    border-color: #9fcfc4;
    background: #fff;
    box-shadow: inset 4px 0 0 #0d625c;
}

[data-theme-list="rejected"] .rsif-photo-theme-bank__queue-card {
    border-color: #e1b4b4;
    background: #fff8f8;
    box-shadow: inset 4px 0 0 #9c2f2f;
}

.rsif-photo-theme-bank__empty-state {
    padding: 20px;
    border: 1px dashed #cdbfd1;
    border-radius: 14px;
    color: #6c6270;
    text-align: center;
}

.rsif-photo-theme-bank__rejected-panel {
    margin-top: 16px;
    padding: 14px 16px;
    border: 1px solid #ead8ee;
    border-radius: 16px;
    background: #fff;
}

.rsif-photo-theme-bank__rejected-panel summary {
    cursor: pointer;
    font-weight: 800;
    color: #6b245f;
}

.rsif-photo-theme-bank__save-selection-form {
    position: sticky;
    bottom: 12px;
    z-index: 8;
    margin-top: 18px;
}

.rsif-photo-theme-bank__save-bar {
    padding: 14px 16px;
    border: 1px solid #c7b5cc;
    border-radius: 16px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 10px 30px rgba(58, 23, 66, .12);
    backdrop-filter: blur(8px);
}

.rsif-photo-theme-bank__save-bar span {
    font-weight: 700;
    color: #514756;
}

@media (max-width: 900px) {
    .rsif-photo-theme-bank__review-board {
        grid-template-columns: 1fr;
    }

    .rsif-photo-theme-bank__review-heading,
    .rsif-photo-theme-bank__save-bar {
        align-items: stretch;
        flex-direction: column;
    }

    .rsif-photo-theme-bank__queue-card {
        grid-template-columns: 1fr;
    }

    .rsif-photo-theme-bank__card-actions {
        justify-content: flex-start;
    }
}


/* =========================================================
   0.2.91 – Öppen tematolkning och samlad godkänd bank
   ========================================================= */
.rsif-photo-theme-bank__candidate {
    justify-content: space-between;
}
.rsif-photo-theme-bank__candidate h5 {
    margin: 0 0 18px;
}
.rsif-photo-theme-bank__queue-card.is-saved {
    cursor: default;
}
.rsif-photo-theme-bank__saved-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 5px 10px;
    border-radius: 999px;
    background: #d9efea;
    color: #0d625c;
    font-size: 13px;
    font-weight: 800;
}
.rsif-photo-theme-bank__review-column--approved .rsif-photo-theme-bank__queue-grid {
    max-height: 760px;
    overflow-y: auto;
    padding-right: 4px;
}

/* =========================================================
   0.2.92 – Sammanhängande urval till temaomröstning
   ========================================================= */
.rsif-photo-theme-workflow__board {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 22px;
    align-items: start;
}
.rsif-photo-theme-workflow__column {
    min-width: 0;
    padding: 18px;
    border: 1px solid #ead8ec;
    border-radius: 18px;
    background: #fcf9fd;
}
.rsif-photo-theme-workflow__column--selection {
    border-color: #a8d9d1;
    background: #f3fbf9;
}
.rsif-photo-theme-workflow__column-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}
.rsif-photo-theme-workflow__column-heading h4 { margin: 0 0 5px; }
.rsif-photo-theme-workflow__column-heading small { display: block; color: #6f6372; }
.rsif-photo-theme-workflow__list {
    display: grid;
    gap: 10px;
    max-height: 650px;
    overflow-y: auto;
    padding-right: 4px;
}
.rsif-photo-theme-workflow__card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    padding: 13px 14px;
    border: 1px solid #ead8ec;
    border-radius: 14px;
    background: #fff;
}
.rsif-photo-theme-workflow__card.is-selected {
    border-color: #8accc2;
    box-shadow: inset 4px 0 0 #11776e;
}
.rsif-photo-theme-workflow__continue-form { margin-top: 16px; }
.rsif-photo-theme-workflow__continue {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding-top: 16px;
    border-top: 1px solid #cce6e1;
}
.rsif-photo-theme-workflow__continue span { font-weight: 700; color: #514756; }
.rsif-photo-theme-poll-meetings {
    margin-top: 24px;
    padding: 22px;
    border: 1px solid #d8bfdc;
    border-radius: 18px;
    background: #fff;
}
.rsif-photo-theme-poll-meetings__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin: 18px 0;
}
@media (max-width: 900px) {
    .rsif-photo-theme-workflow__board,
    .rsif-photo-theme-poll-meetings__grid { grid-template-columns: 1fr; }
    .rsif-photo-theme-workflow__continue { align-items: stretch; flex-direction: column; }
    .rsif-photo-theme-workflow__card { grid-template-columns: 1fr; }
}

/* =========================================================
   0.2.93 – Träffar först, därefter årstidsanpassade teman
   ========================================================= */
.rsif-photo-theme-workflow__step-heading{margin:30px 0 16px}.rsif-photo-theme-workflow__step-heading h4{margin:10px 0 6px}.rsif-photo-theme-workflow__custom{padding:16px;border:1px solid rgba(0,110,103,.22);border-radius:16px;background:#fff;margin-bottom:14px}.rsif-photo-theme-workflow__custom label{display:block;font-weight:700;margin-bottom:8px}.rsif-photo-theme-workflow__custom>div{display:flex;gap:10px}.rsif-photo-theme-workflow__custom input{flex:1;min-width:0}.rsif-photo-theme-workflow__refill{margin-top:14px}.rsif-photo-theme-poll-meetings{margin-bottom:26px}
@media(max-width:720px){.rsif-photo-theme-workflow__custom>div{display:block}.rsif-photo-theme-workflow__custom button{margin-top:10px;width:100%}}

/* RSIF Foto 0.2.94 – sparat omröstningsutkast */
.rsif-photo-theme-poll-draft-summary{margin:22px 0;padding:22px;border:1px solid #9fd7cf;border-radius:18px;background:#f2fbf9}.rsif-photo-theme-poll-draft-summary h4{margin:12px 0 8px}.rsif-photo-theme-poll-draft-summary__themes{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.rsif-photo-theme-poll-draft-summary__themes span{display:inline-flex;padding:8px 12px;border-radius:999px;background:#d8efea;font-weight:700}.rsif-photo-theme-poll-draft-summary__next{margin-bottom:0;font-weight:700}

/* =========================================================
   RSIF Foto 0.2.95 – QR-omröstning för Månadens tema
   ========================================================= */
.rsif-photo-theme-poll-draft-summary__open { margin-top: 18px; }
.rsif-photo-theme-poll-live { display:grid; grid-template-columns:minmax(180px,260px) 1fr; gap:28px; margin-top:22px; padding-top:22px; border-top:1px solid rgba(91,0,112,.16); }
.rsif-photo-theme-poll-live__qr img { display:block; width:100%; max-width:260px; height:auto; border-radius:16px; border:1px solid rgba(91,0,112,.18); background:#fff; padding:10px; }
.rsif-photo-theme-poll-live__qr a { display:inline-block; margin-top:10px; font-weight:700; }
.rsif-photo-theme-poll-live__results { display:grid; gap:8px; margin:16px 0 20px; }
.rsif-photo-theme-poll-live__results > div { display:flex; justify-content:space-between; gap:20px; padding:10px 12px; border-radius:12px; background:rgba(0,112,105,.06); }
.rsif-photo-theme-vote-page { margin:0; background:#f8f4f9; }
.rsif-photo-theme-vote { width:min(680px,calc(100% - 32px)); margin:32px auto; padding:28px; border:1px solid rgba(91,0,112,.18); border-radius:24px; background:#fff; box-shadow:0 16px 45px rgba(38,0,47,.08); }
.rsif-photo-theme-vote h1 { margin:14px 0 8px; font-size:clamp(28px,6vw,42px); line-height:1.1; }
.rsif-photo-theme-vote__choices { display:grid; gap:12px; margin:24px 0; }
.rsif-photo-theme-vote__choices label { cursor:pointer; }
.rsif-photo-theme-vote__choices input { position:absolute; opacity:0; pointer-events:none; }
.rsif-photo-theme-vote__choices span { display:block; padding:18px 20px; border:2px solid rgba(91,0,112,.22); border-radius:16px; font-size:20px; font-weight:700; }
.rsif-photo-theme-vote__choices input:checked + span { border-color:#ec006a; background:rgba(236,0,106,.08); box-shadow:0 0 0 3px rgba(236,0,106,.12); }
@media (max-width:700px){ .rsif-photo-theme-poll-live{grid-template-columns:1fr;} .rsif-photo-theme-poll-live__qr img{max-width:220px;} .rsif-photo-theme-vote{padding:22px;} }


/* =========================================================
   RSIF Foto 0.2.96 – aktiv omröstning och nedladdningsbar QR
   ========================================================= */
.rsif-photo-theme-poll-live__qr-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.rsif-photo-theme-poll-live__qr-actions .rsif-ui-button{margin:0;text-align:center}
.rsif-photo-theme-poll-live__link-label{display:block;margin-top:16px;font-weight:700}
.rsif-photo-theme-poll-live__link-row{display:flex;gap:8px;margin-top:7px}
.rsif-photo-theme-poll-live__link-row input{flex:1;min-width:0}
.rsif-photo-theme-poll-live__link-row button{white-space:nowrap}
@media(max-width:700px){.rsif-photo-theme-poll-live__qr-actions,.rsif-photo-theme-poll-live__link-row{display:block}.rsif-photo-theme-poll-live__qr-actions .rsif-ui-button,.rsif-photo-theme-poll-live__link-row button{display:block;width:100%;margin-top:8px}}

/* =========================================================
   RSIF Foto 0.2.97 – aktuellt steg och bekräftelse av vinnare
   ========================================================= */
.rsif-photo-theme-poll-winner {
    display: grid;
    gap: 12px;
    margin-top: 22px;
    padding-top: 20px;
    border-top: 1px solid rgba(0, 110, 104, .18);
}
.rsif-photo-theme-poll-winner select {
    width: 100%;
    min-height: 48px;
}
.rsif-photo-theme-poll-winner .rsif-ui-button {
    justify-self: start;
}


/* =========================================================
   RSIF Foto 0.2.98 – välj vinnare direkt i resultatlistan
   ========================================================= */
.rsif-photo-theme-poll-winner__fieldset {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}
.rsif-photo-theme-poll-winner__fieldset legend {
    margin-bottom: 12px;
    font-weight: 700;
}
.rsif-photo-theme-poll-winner__choice {
    display: block;
    cursor: pointer;
}
.rsif-photo-theme-poll-winner__choice input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.rsif-photo-theme-poll-winner__choice-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 16px;
    border: 2px solid transparent;
    border-radius: 14px;
    background: rgba(0, 110, 104, .06);
    transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease;
}
.rsif-photo-theme-poll-winner__choice:hover .rsif-photo-theme-poll-winner__choice-content {
    border-color: rgba(91, 0, 112, .3);
}
.rsif-photo-theme-poll-winner__choice input:focus-visible + .rsif-photo-theme-poll-winner__choice-content {
    outline: 3px solid rgba(236, 0, 106, .25);
    outline-offset: 2px;
}
.rsif-photo-theme-poll-winner__choice input:checked + .rsif-photo-theme-poll-winner__choice-content {
    border-color: #ec006a;
    background: rgba(236, 0, 106, .09);
    box-shadow: 0 0 0 3px rgba(236, 0, 106, .11);
}
.rsif-photo-theme-poll-winner .rsif-ui-button:disabled {
    cursor: not-allowed;
    opacity: .5;
}


/* =========================================================
   RSIF Foto 0.3.0 – träffdetaljer och ny temaomröstning
   ========================================================= */
.rsif-photo-monthly-event-details {
    margin-top: 28px;
    padding: 24px;
    border: 1px solid rgba(95, 0, 112, 0.18);
    border-radius: 22px;
    background: #fff;
    scroll-margin-top: 32px;
}
.rsif-photo-monthly-event-details__heading { margin-bottom: 20px; }
.rsif-photo-monthly-event-details__heading h3 { margin: 10px 0 6px; }
.rsif-photo-monthly-event-details__heading p { margin: 0; }
.rsif-photo-theme-poll-confirmed__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    margin-top: 18px;
}
.rsif-photo-theme-poll-confirmed__actions form { margin: 0; }
@media (max-width: 700px) {
    .rsif-photo-monthly-event-details { padding: 18px; }
    .rsif-photo-theme-poll-confirmed__actions,
    .rsif-photo-theme-poll-confirmed__actions form,
    .rsif-photo-theme-poll-confirmed__actions .rsif-ui-button { width: 100%; }
}

/* =========================================================
   RSIF Foto 0.3.0 – kompakt avslutad omröstning
   ========================================================= */
.rsif-photo-theme-poll-confirmed--compact {
    margin-top: 20px;
    padding: 24px;
    border: 1px solid rgba(18, 135, 124, .28);
    border-radius: 22px;
    background: rgba(226, 246, 243, .62);
}
.rsif-photo-theme-poll-confirmed--compact h4 {
    margin: 12px 0 4px;
}
.rsif-photo-theme-poll-confirmed--compact p {
    margin: 0 0 18px;
}
.rsif-photo-theme-poll-confirmed--compact form {
    margin: 0;
}


/* =========================================================
   0.3.2 – Temaförslag i WordPress-admin
   ========================================================= */
.rsif-photo-theme-admin__summary {
    display: flex;
    gap: 18px;
    align-items: center;
    margin: 16px 0;
}
.rsif-photo-theme-admin__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin: 20px 0;
}
.rsif-photo-theme-admin .rsif-ui-card {
    background: #fff;
    border: 1px solid #e6d5e8;
    border-radius: 16px;
    padding: 22px;
    box-sizing: border-box;
}
.rsif-photo-theme-admin__preview,
.rsif-photo-theme-admin__list {
    margin-top: 20px;
}
@media (max-width: 900px) {
    .rsif-photo-theme-admin__grid { grid-template-columns: 1fr; }
}

/* =========================================================
   0.3.3 – Medlemsförslag i temabanken
   ========================================================= */
.rsif-photo-theme-admin__member-badge {
    display: inline-flex;
    align-items: center;
    margin-left: 8px;
    padding: 2px 8px;
    border-radius: 999px;
    background: #f0e7f4;
    color: #5f2c6f;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.5;
    vertical-align: middle;
}

/* =========================================================
   0.3.4 – Kompakt påfyllning av temaförslag i Temalabbet
   ========================================================= */
.rsif-photo-theme-bank__refill-tools > summary {
    cursor: pointer;
}

.rsif-photo-theme-bank__refill-intro {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 18px 0;
}

.rsif-photo-theme-bank__refill-intro p {
    margin: 0;
    max-width: 760px;
}

.rsif-photo-theme-bank__refill-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.rsif-photo-theme-bank__refill-card {
    padding: 20px;
    border: 1px solid rgba(96, 0, 112, .18);
    border-radius: 18px;
    background: #fff;
}

.rsif-photo-theme-bank__refill-card h4 {
    margin: 0 0 14px;
}

.rsif-photo-theme-bank__refill-card .rsif-ui-field {
    margin-bottom: 12px;
}

.rsif-photo-theme-bank__refill-card input[type="text"],
.rsif-photo-theme-bank__refill-card input[type="file"] {
    width: 100%;
}

.rsif-photo-theme-bank__inline-check {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 10px 0;
}

.rsif-photo-theme-bank__refill-card .rsif-ui-button {
    margin-top: 10px;
}

@media (max-width: 900px) {
    .rsif-photo-theme-bank__refill-intro {
        align-items: flex-start;
        flex-direction: column;
    }

    .rsif-photo-theme-bank__refill-grid {
        grid-template-columns: 1fr;
    }
}


.rsif-photo-theme-bank__template-download {
    margin: 6px 0 18px;
}

.rsif-photo-theme-bank__template-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #111827;
    font-weight: 600;
    text-decoration: none;
}

.rsif-photo-theme-bank__template-link:hover,
.rsif-photo-theme-bank__template-link:focus {
    color: #0f766e;
    text-decoration: underline;
}

.rsif-photo-theme-bank__template-link::before {
    content: '';
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23107834' d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath fill='%2321A366' d='M14 2v6h6z'/%3E%3Cpath fill='%231857C8' d='M3 6.5h8v11H3z'/%3E%3Cpath fill='%23fff' d='M5.1 9.1h1.7l1.05 1.95L8.93 9.1h1.57L8.83 12l1.77 2.9H8.98l-1.12-2.05-1.13 2.05H5.12L6.92 12z'/%3E%3C/svg%3E");
}

.rsif-photo-theme-bank__refill-card input[type="file"] {
    margin-top: 8px;
}

/* =========================================================
   0.3.9 – Månadsträffens mötesvy
   ========================================================= */
.rsif-photo-meeting { width:100%; }
.rsif-photo-meeting__header { margin-bottom:22px; }
.rsif-photo-meeting__header h2 { margin:8px 0 4px; }
.rsif-photo-meeting__tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:22px; }
.rsif-photo-meeting__tabs button { padding:14px 16px; border:1px solid rgba(96,0,112,.2); border-radius:12px; background:#fff; font-weight:700; cursor:pointer; }
.rsif-photo-meeting__tabs button.is-active { background:#5f006f; color:#fff; border-color:#5f006f; }
.rsif-photo-meeting__tabs span { display:inline-flex; min-width:24px; height:24px; align-items:center; justify-content:center; margin-left:5px; border-radius:999px; background:rgba(0,0,0,.08); }
.rsif-photo-meeting__panel { display:none; padding:26px; border:1px solid rgba(96,0,112,.16); border-radius:18px; background:#fff; }
.rsif-photo-meeting__panel.is-active { display:block; }
.rsif-photo-meeting__agenda { display:grid; gap:16px; margin:0; padding-left:34px; font-size:1.3rem; }
.rsif-photo-meeting__agenda li { padding:10px 0 10px 8px; }
.rsif-photo-meeting__agenda-edit { margin-top:28px; }
.rsif-photo-meeting__agenda-edit form { display:grid; gap:12px; margin-top:14px; }
.rsif-photo-meeting__agenda-edit textarea { width:100%; min-height:160px; }
.rsif-photo-meeting__slideshow-launch { text-align:center; padding:36px 12px; }
.rsif-photo-meeting__slideshow { position:fixed; inset:0; z-index:999999; display:grid; grid-template-columns:80px minmax(0,1fr) 80px; grid-template-rows:minmax(0,1fr) auto auto; align-items:center; background:#090909; color:#fff; }
.rsif-photo-meeting__slideshow[hidden] { display:none!important; }
.rsif-photo-meeting__slideshow img { grid-column:2; grid-row:1; width:100%; height:100%; max-height:calc(100vh - 150px); object-fit:contain; }
.rsif-photo-meeting__slide-prev,.rsif-photo-meeting__slide-next,.rsif-photo-meeting__slide-close { border:0; background:transparent; color:#fff; cursor:pointer; }
.rsif-photo-meeting__slide-prev,.rsif-photo-meeting__slide-next { font-size:64px; }
.rsif-photo-meeting__slide-close { position:absolute; top:14px; right:20px; font-size:42px; z-index:2; }
.rsif-photo-meeting__slide-footer { grid-column:1/-1; grid-row:2; display:flex; justify-content:center; align-items:center; gap:24px; padding:12px 20px; }
.rsif-photo-meeting__slide-footer button { padding:10px 16px; border:1px solid rgba(255,255,255,.4); border-radius:999px; background:transparent; color:#fff; cursor:pointer; }
.rsif-photo-meeting__slide-info { grid-column:1/-1; grid-row:3; display:flex; flex-wrap:wrap; justify-content:center; gap:18px 28px; padding:16px 30px 22px; background:rgba(255,255,255,.08); }
.rsif-photo-meeting__slide-info[hidden] { display:none!important; }
.rsif-photo-meeting__slide-info div { display:grid; gap:2px; min-width:120px; }
.rsif-photo-meeting__slide-info strong { font-size:.78rem; text-transform:uppercase; opacity:.65; }
body.rsif-photo-meeting-slideshow-open { overflow:hidden; }
.rsif-photo-meeting__poll-grid { display:grid; grid-template-columns:minmax(230px,34%) minmax(0,1fr); gap:30px; align-items:start; }
.rsif-photo-meeting__poll-qr { text-align:center; }
.rsif-photo-meeting__poll-qr img { display:block; width:100%; max-width:360px; margin:0 auto 10px; }
.rsif-photo-meeting__poll-options { display:grid; gap:10px; margin:16px 0 22px; }
.rsif-photo-meeting__poll-option { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:15px 18px; border:1px solid rgba(96,0,112,.16); border-radius:12px; font-size:1.1rem; }
.rsif-photo-meeting__poll-option strong { font-size:1.45rem; }
.rsif-photo-meeting__winner-form fieldset { display:grid; gap:10px; margin:18px 0; border:0; padding:0; }
.rsif-photo-meeting__winner-form label { display:flex; gap:10px; padding:12px; border:1px solid rgba(96,0,112,.16); border-radius:10px; }
.rsif-photo-meeting__activities { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.rsif-photo-meeting__activities article { padding:18px; border:1px solid rgba(96,0,112,.16); border-radius:14px; }
.rsif-photo-meeting__activities time { font-weight:700; color:#5f006f; }
.rsif-photo-meeting__activities h4 { margin:6px 0; }
@media(max-width:900px){.rsif-photo-meeting__tabs{grid-template-columns:1fr 1fr}.rsif-photo-meeting__poll-grid,.rsif-photo-meeting__activities{grid-template-columns:1fr}.rsif-photo-meeting__panel{padding:18px}}
@media(max-width:560px){.rsif-photo-meeting__tabs{grid-template-columns:1fr}.rsif-photo-meeting__slideshow{grid-template-columns:42px minmax(0,1fr) 42px}.rsif-photo-meeting__slide-prev,.rsif-photo-meeting__slide-next{font-size:42px}}


/* =========================================================
   0.3.13 – Bildspelet frikopplat från Divis stacking context
   ========================================================= */
body > .rsif-photo-meeting__slideshow {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    z-index: 2147483000 !important;
    isolation: isolate;
    transform: none !important;
    pointer-events: auto;
}

body > .rsif-photo-meeting__slideshow img {
    min-width: 0;
    min-height: 0;
    max-height: calc(100dvh - 160px);
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer,
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info,
body > .rsif-photo-meeting__slideshow button {
    position: relative;
    z-index: 3;
    pointer-events: auto;
}

body.rsif-photo-meeting-slideshow-open #wpadminbar {
    visibility: hidden;
}

body.rsif-photo-meeting-slideshow-open {
    overflow: hidden !important;
}


/* =========================================================
   0.3.14 – Maximerat mötesbildspel med infopanel från höger
   ========================================================= */
body > .rsif-photo-meeting__slideshow {
    display: block !important;
    overflow: hidden !important;
    background: #050505 !important;
}

body > .rsif-photo-meeting__slideshow > img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-prev,
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-next {
    position: absolute !important;
    top: 50% !important;
    width: 64px !important;
    height: 96px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    transform: translateY(-50%) !important;
    font-size: 72px !important;
    line-height: 1 !important;
    z-index: 8 !important;
    text-shadow: 0 2px 14px rgba(0,0,0,.9);
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-prev {
    left: 18px !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-next {
    right: 18px !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-close {
    position: absolute !important;
    top: 18px !important;
    right: 22px !important;
    left: auto !important;
    width: 54px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    font-size: 48px !important;
    line-height: 1 !important;
    z-index: 12 !important;
    text-shadow: 0 2px 14px rgba(0,0,0,.9);
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer {
    position: absolute !important;
    left: 50% !important;
    bottom: 18px !important;
    transform: translateX(-50%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: auto !important;
    padding: 10px 14px !important;
    border-radius: 999px !important;
    background: rgba(0,0,0,.68) !important;
    backdrop-filter: blur(8px);
    z-index: 10 !important;
    white-space: nowrap;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: min(430px, 92vw) !important;
    height: 100vh !important;
    height: 100dvh !important;
    display: block !important;
    overflow-y: auto !important;
    padding: 88px 30px 34px !important;
    margin: 0 !important;
    background: rgba(16,16,18,.94) !important;
    box-shadow: -18px 0 45px rgba(0,0,0,.45);
    transform: translateX(100%) !important;
    transition: transform .28s ease !important;
    z-index: 11 !important;
    pointer-events: none !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info.is-open {
    transform: translateX(0) !important;
    pointer-events: auto !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info[hidden] {
    display: block !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info div {
    display: grid !important;
    grid-template-columns: 130px minmax(0,1fr) !important;
    gap: 10px 18px !important;
    min-width: 0 !important;
    padding: 11px 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.12);
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info strong {
    font-size: .78rem !important;
    letter-spacing: .04em;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info span {
    overflow-wrap: anywhere;
}

@media (max-width: 700px) {
    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-prev,
    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-next {
        width: 46px !important;
        height: 72px !important;
        font-size: 54px !important;
    }

    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-prev {
        left: 4px !important;
    }

    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-next {
        right: 4px !important;
    }

    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer {
        bottom: 10px !important;
        max-width: calc(100vw - 24px);
        white-space: normal;
    }
}


/* =========================================================
   0.3.15 – Bildnummer och informationsknapp utanför bilden
   ========================================================= */
body > .rsif-photo-meeting__slideshow > img {
    bottom: 76px !important;
    height: calc(100vh - 76px) !important;
    height: calc(100dvh - 76px) !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer {
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    transform: none !important;
    width: 100% !important;
    min-height: 76px !important;
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    align-items: center !important;
    gap: 18px !important;
    padding: 12px 28px !important;
    border-radius: 0 !important;
    background: #050505 !important;
    backdrop-filter: none !important;
    white-space: nowrap !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer [data-slide-counter] {
    grid-column: 1 !important;
    justify-self: start !important;
    font-weight: 700 !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer [data-slide-info-toggle] {
    grid-column: 3 !important;
    justify-self: end !important;
    margin: 0 !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-prev,
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-next {
    top: calc((100dvh - 76px) / 2) !important;
}

@media (max-width: 700px) {
    body > .rsif-photo-meeting__slideshow > img {
        bottom: 92px !important;
        height: calc(100vh - 92px) !important;
        height: calc(100dvh - 92px) !important;
    }

    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer {
        min-height: 92px !important;
        grid-template-columns: auto 1fr !important;
        gap: 12px !important;
        padding: 10px 14px !important;
        white-space: normal !important;
    }

    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer [data-slide-counter] {
        grid-column: 1 !important;
    }

    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer [data-slide-info-toggle] {
        grid-column: 2 !important;
        justify-self: end !important;
    }

    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-prev,
    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-next {
        top: calc((100dvh - 92px) / 2) !important;
    }
}


/* =========================================================
   0.3.16 – Kontroller ovanpå utfälld informationspanel
   ========================================================= */
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info {
    z-index: 20 !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-next,
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-close {
    z-index: 24 !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer {
    z-index: 23 !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer [data-slide-info-toggle] {
    position: relative !important;
    z-index: 25 !important;
}

/*
 * När informationspanelen är öppen ska nästa-pilen ligga ovanpå panelen,
 * medan föregående-pilen ligger kvar över bildytan.
 */
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info.is-open ~ .rsif-photo-meeting__slide-next,
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-next {
    pointer-events: auto !important;
}

/* Ge knappen tillräcklig kontrast ovanpå panelen. */
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info.is-open ~ .rsif-photo-meeting__slide-footer [data-slide-info-toggle],
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-footer [data-slide-info-toggle] {
    background: rgba(5,5,5,.92) !important;
}


/* =========================================================
   0.3.18 – Läsbar EXIF-panel utan överlappande text
   ========================================================= */
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info div {
    grid-template-columns: minmax(0, 44%) minmax(0, 56%) !important;
    align-items: start !important;
    column-gap: 18px !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info strong,
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info span {
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info strong {
    line-height: 1.35 !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info span {
    line-height: 1.4 !important;
}

@media (max-width: 520px) {
    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info div {
        grid-template-columns: 1fr !important;
        gap: 4px !important;
    }
}


/* =========================================================
   0.3.19 – Språkriktig radbrytning av EXIF-etiketter
   ========================================================= */
body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info {
    width: min(480px, 94vw) !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info div {
    grid-template-columns: minmax(150px, 46%) minmax(0, 54%) !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info strong {
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: manual !important;
    -webkit-hyphens: manual !important;
}

body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info span {
    overflow-wrap: break-word !important;
    word-break: normal !important;
}

@media (max-width: 520px) {
    body > .rsif-photo-meeting__slideshow .rsif-photo-meeting__slide-info div {
        grid-template-columns: 1fr !important;
    }
}


/* RSIF Foto 0.3.20 – tydliga omröstningsalternativ i månadsträffen */
.rsif-photo-meeting__poll-options:empty::before {
    content: "Omröstningen saknar visningsbara alternativ.";
    display: block;
    padding: 14px 16px;
    border: 1px solid rgba(112, 0, 112, .18);
    border-radius: 14px;
    background: #fff;
}
.rsif-photo-meeting__poll-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}


/* =========================================================
   RSIF FOTO – v0.3.21 gemensam publik hero
   ========================================================= */
.rsif-photo-public-hero {
    position: relative;
    overflow: hidden;
    margin: 0 0 clamp(22px, 3vw, 36px);
    padding: clamp(26px, 4vw, 46px);
    border: 1px solid rgba(106, 0, 122, 0.16);
    border-radius: 28px;
    background:
        radial-gradient(circle at 88% 18%, rgba(232, 0, 116, 0.16), transparent 28%),
        linear-gradient(135deg, rgba(251, 247, 252, 0.98), rgba(255, 255, 255, 0.96) 58%, rgba(245, 235, 249, 0.9));
    box-shadow: 0 20px 52px rgba(72, 36, 88, 0.10);
    max-width: 100%;
    box-sizing: border-box;
}

.rsif-photo-public-hero::after {
    content: "";
    position: absolute;
    right: clamp(22px, 4vw, 56px);
    bottom: 0;
    width: min(34vw, 360px);
    height: 7px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, #e60073, #6a007a);
    opacity: 0.95;
}

.rsif-photo-public-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 16px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(106, 0, 122, 0.12);
    color: #5d0070;
    font-weight: 800;
    font-size: 0.86rem;
    line-height: 1;
}

.rsif-photo-public-hero h2 {
    max-width: min(920px, 100%);
    margin: 0;
    color: #1d2330;
    font-size: clamp(2.2rem, 5vw, 4.4rem);
    line-height: 0.96;
    letter-spacing: -0.055em;
    overflow-wrap: anywhere;
}

.rsif-photo-public-hero p {
    max-width: min(900px, 100%);
    margin: 18px 0 0;
    color: #34313a;
    font-size: clamp(1.05rem, 1.35vw, 1.32rem);
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.rsif-photo-public-hero__stats {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: clamp(18px, 2.6vw, 28px);
    max-width: 100%;
}

.rsif-photo-public-hero__stat {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 42px;
    padding: 9px 15px 9px 12px;
    border: 1px solid rgba(106, 0, 122, 0.15);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 8px 22px rgba(72, 36, 88, 0.07);
    color: #5d0070;
    white-space: nowrap;
}

.rsif-photo-public-hero__stat strong {
    display: inline-grid;
    place-items: center;
    min-width: 32px;
    height: 32px;
    padding: 0 8px;
    border-radius: 999px;
    background: #e60073;
    color: #fff;
    font-size: 1.02rem;
    line-height: 1;
    font-weight: 900;
}

.rsif-photo-public-hero__stat em {
    font-style: normal;
    font-weight: 800;
    font-size: 0.92rem;
}

.rsif-photo-public-hero--archive-activity::after,
.rsif-photo-public-hero--archive-monthly_theme::after {
    right: auto;
    left: clamp(22px, 4vw, 56px);
}

.rsif-photo-public-hero--winners {
    margin-bottom: clamp(20px, 3vw, 34px);
}

/* Gör äldre filterblock lugnare när hero finns ovanför. */
.rsif-photo-public-hero + .rsif-photo-imagely-archive .rsif-photo-imagely-year-filter,
.rsif-photo-public-hero + .rsif-photo-year-awards__filters {
    margin-top: 0;
}

.rsif-photo-public-hero + .rsif-photo-imagely-archive {
    max-width: 100%;
    overflow-x: clip;
}

/* Toppfotografer: undvik dubbla stora statkort när hero redan visar nyckeltal. */
.rsif-photo-photographer-leaderboard .rsif-photo-public-hero + .rsif-photo-year-awards__filters + .rsif-photo-photographer-leaderboard__summary {
    margin-top: 18px;
}

.rsif-photo-photographer-leaderboard__summary-card {
    min-height: 0 !important;
    padding: 14px 16px !important;
}

.rsif-photo-photographer-leaderboard__summary-card span {
    font-size: 0.78rem !important;
    letter-spacing: 0.02em;
}

.rsif-photo-photographer-leaderboard__summary-card strong {
    font-size: clamp(1.25rem, 2vw, 1.75rem) !important;
}

@media (max-width: 760px) {
    .rsif-photo-public-hero {
        padding: 24px 20px 28px;
        border-radius: 22px;
    }

    .rsif-photo-public-hero__stats {
        gap: 8px;
    }

    .rsif-photo-public-hero__stat {
        width: 100%;
        justify-content: flex-start;
    }
}


/* =========================================================
   RSIF FOTO – v0.3.23 hero-navigation och ankarlänkar
   ========================================================= */
.rsif-photo-public-hero__home {
    position: absolute;
    z-index: 3;
    top: clamp(20px, 3vw, 32px);
    right: clamp(20px, 3vw, 32px);
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 44px;
    padding: 9px 15px;
    border: 1px solid rgba(106, 0, 122, .18);
    border-radius: 999px;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 8px 22px rgba(72, 36, 88, .09);
    color: #5d0070;
    font-weight: 850;
    line-height: 1;
    text-decoration: none;
    backdrop-filter: blur(8px);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.rsif-photo-public-hero__home:hover,
.rsif-photo-public-hero__home:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(106, 0, 122, .42);
    box-shadow: 0 12px 26px rgba(72, 36, 88, .14);
    text-decoration: none;
}
.rsif-photo-public-hero__camera {
    position: relative;
    display: inline-block;
    width: 25px;
    height: 18px;
    border: 2px solid currentColor;
    border-radius: 5px;
    background: rgba(255,255,255,.72);
    flex: 0 0 auto;
}
.rsif-photo-public-hero__camera::before {
    content: "";
    position: absolute;
    left: 4px;
    top: -6px;
    width: 9px;
    height: 5px;
    border: 2px solid currentColor;
    border-bottom: 0;
    border-radius: 4px 4px 0 0;
}
.rsif-photo-public-hero__camera::after {
    content: "";
    position: absolute;
    left: 8px;
    top: 3px;
    width: 7px;
    height: 7px;
    border: 2px solid currentColor;
    border-radius: 50%;
}
.rsif-photo-public-hero__stat--link {
    text-decoration: none;
    cursor: pointer;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.rsif-photo-public-hero__stat--link:hover,
.rsif-photo-public-hero__stat--link:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(106,0,122,.42);
    box-shadow: 0 12px 26px rgba(72,36,88,.14);
}
.rsif-photo-scroll-target { scroll-margin-top: 110px; }
html { scroll-behavior: smooth; }

@media (min-width: 761px) {
    .rsif-photo-public-hero__eyebrow {
        margin-right: 210px;
    }
}

@media (max-width: 760px) {
    .rsif-photo-public-hero__home {
        position: relative;
        top: auto;
        right: auto;
        margin: 0 0 18px;
        width: fit-content;
    }
}
