/* =========================================================
   SHRC Theme - Steve's HouseRockin' Corner
   Cassiopeia Child Template
   ========================================================= */

:root {
    --shrc-blue: #14213d;
    --shrc-blue-2: #1f4068;
    --shrc-dark: #20242a;
    --shrc-text: #232323;
    --shrc-muted: #6b7280;
    --shrc-bg: #f4f1ea;
    --shrc-card: #ffffff;
    --shrc-accent: #d99a00;
    --shrc-accent-light: #ffbf2e;
    --shrc-border: rgba(20, 33, 61, .12);
    --shrc-shadow: 0 10px 30px rgba(0, 0, 0, .10);
}

/* Grundlayout */

body {
    background: var(--shrc-bg);
    color: var(--shrc-text);
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.65;
}

a {
    color: var(--shrc-blue-2);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

a:hover {
    color: var(--shrc-accent);
}

/* Header */

.container-header {
    background:
        radial-gradient(circle at top left, rgba(255, 191, 46, .22), transparent 32rem),
        linear-gradient(135deg, var(--shrc-blue), var(--shrc-blue-2));
    box-shadow: 0 8px 24px rgba(0, 0, 0, .28);
    padding: 1.1rem 0;
}

.container-header .navbar-brand {
    font-size: clamp(1.7rem, 3vw, 2.4rem);
    font-weight: 850;
    letter-spacing: .4px;
    line-height: 1.1;
}

.container-header .navbar-brand a {
    color: #fff;
    text-decoration: none;
}

.container-header .navbar-brand a:hover {
    color: var(--shrc-accent-light);
}

.container-header .navbar-brand::after {
    content: "PA • Studio • Musik • Elektronik";
    display: block;
    margin-top: .35rem;
    font-size: .95rem;
    font-weight: 500;
    letter-spacing: .08em;
    color: rgba(255,255,255,.78);
}

.container-header .container-nav {
    align-items: center;
}

/* Navigation */

.container-header .mod-menu {
    gap: .35rem;
}

.container-header .mod-menu > li > a,
.container-header .navbar-nav .nav-link {
    color: #fff !important;
    padding: .55rem .9rem;
    border-radius: 999px;
    font-weight: 650;
    text-decoration: none;
    transition: background .2s ease, color .2s ease, transform .2s ease;
}

.container-header .mod-menu > li > a:hover,
.container-header .mod-menu > li.active > a,
.container-header .navbar-nav .nav-link:hover {
    background: rgba(255,255,255,.13);
    color: var(--shrc-accent-light) !important;
    transform: translateY(-1px);
}

/* Seitencontainer */

.site-grid {
    max-width: 1180px;
    margin: 2.2rem auto;
    padding: 0 1rem;
}

/* Hauptinhalt und Module */

main,
.container-component,
.card,
.moduletable,
.sidebar-right .moduletable,
.sidebar-left .moduletable {
    background: var(--shrc-card);
    border: 1px solid var(--shrc-border);
    border-radius: 18px;
    box-shadow: var(--shrc-shadow);
    padding: 1.6rem;
}

main,
.container-component {
    min-height: 18rem;
}

/* Überschriften */

h1, h2, h3, h4 {
    color: var(--shrc-blue);
    line-height: 1.2;
}

h1 {
    font-size: clamp(2rem, 4vw, 3.4rem);
    font-weight: 850;
    margin-bottom: 1rem;
}

h2 {
    font-size: clamp(1.5rem, 2.6vw, 2.2rem);
    font-weight: 800;
    margin-top: 2rem;
}

h3 {
    font-size: 1.25rem;
    font-weight: 760;
}

/* Beiträge */

.article-info,
.text-muted,
small {
    color: var(--shrc-muted) !important;
}

.item-content,
.com-content-article {
    max-width: 78ch;
}

/* Buttons */

.btn,
button,
input[type="submit"] {
    border-radius: 999px;
    font-weight: 700;
}

.btn-primary,
button.btn-primary,
input[type="submit"] {
    background: var(--shrc-blue-2);
    border-color: var(--shrc-blue-2);
}

.btn-primary:hover,
button.btn-primary:hover,
input[type="submit"]:hover {
    background: var(--shrc-accent);
    border-color: var(--shrc-accent);
    color: #111;
}

/* Listen / Menüs in Modulen */

.moduletable ul,
.card ul {
    padding-left: 1.1rem;
}

.moduletable li,
.card li {
    margin: .25rem 0;
}

/* Login-Modul */

.mod-login {
    font-size: .95rem;
}

.mod-login input {
    border-radius: 10px;
}

/* Bilder */

img {
    max-width: 100%;
    height: auto;
}

.com-content-article img,
.item-image img {
    border-radius: 16px;
    box-shadow: 0 8px 22px rgba(0,0,0,.12);
}

/* Footer */

.container-footer {
    background:
        radial-gradient(circle at bottom right, rgba(255, 191, 46, .18), transparent 28rem),
        linear-gradient(135deg, var(--shrc-blue), var(--shrc-blue-2));
    color: rgba(255,255,255,.85);
    margin-top: 3rem;
    padding: 2rem 0;
}

.container-footer a {
    color: #fff;
}

.container-footer a:hover {
    color: var(--shrc-accent-light);
}

/* Responsive */

@media (max-width: 768px) {
    .container-header {
        padding: .9rem 0;
    }

    .container-header .navbar-brand {
        font-size: 1.55rem;
    }

    .container-header .navbar-brand::after {
        font-size: .78rem;
        letter-spacing: .05em;
    }

    .site-grid {
        margin-top: 1.2rem;
    }

    main,
    .container-component,
    .card,
    .moduletable {
        padding: 1.1rem;
        border-radius: 14px;
    }
}

.shrc-hero {
    min-height: 520px;
    border-radius: 22px;
    background-size: cover;
    background-position: center;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    margin-bottom: 2rem;
}

.shrc-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(10,16,28,.88), rgba(10,16,28,.45), rgba(10,16,28,.15));
}

.shrc-hero-content {
    position: relative;
    z-index: 1;
    max-width: 680px;
    padding: 3rem;
    color: #fff;
}

.shrc-hero-content span {
    color: var(--shrc-accent-light);
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.shrc-hero-content h1 {
    color: #fff;
    margin: .8rem 0 1rem;
}

.shrc-hero-content p {
    font-size: 1.25rem;
    line-height: 1.6;
    margin-bottom: 1.5rem;
}

/* SHRC Startseite */

.shrc-home {
    display: grid;
    gap: 1.6rem;
}

.shrc-landing {
    min-height: 560px;
    border-radius: 28px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    box-shadow: 0 18px 45px rgba(0,0,0,.25);
}

.shrc-landing::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(8,13,24,.92), rgba(8,13,24,.58), rgba(8,13,24,.18));
}

.shrc-landing-content {
    position: relative;
    z-index: 1;
    max-width: 760px;
    padding: 4rem;
    color: #fff;
}

.shrc-eyebrow {
    color: var(--shrc-accent-light);
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
    margin-bottom: .8rem;
}

.shrc-landing h1 {
    color: #fff;
    font-size: clamp(2.6rem, 5vw, 5rem);
    margin: 0 0 1rem;
}

.shrc-intro {
    font-size: 1.3rem;
    line-height: 1.6;
    max-width: 680px;
    margin-bottom: 1.8rem;
}

.shrc-actions {
    display: flex;
    gap: .9rem;
    flex-wrap: wrap;
}

.shrc-section {
    background: #fff;
    border: 1px solid var(--shrc-border);
    border-radius: 22px;
    padding: 2rem;
    box-shadow: var(--shrc-shadow);
}

.shrc-section h2 {
    margin-top: 0;
}

@media (max-width: 800px) {
    .shrc-landing {
        min-height: 430px;
    }

    .shrc-landing-content {
        padding: 2rem;
    }

    .shrc-intro {
        font-size: 1.05rem;
    }
}

/* SHRC Layout Feinschliff */

.site-grid {
    max-width: 1500px;
}

main,
.container-component {
    padding: 1.2rem;
}

.com-content-article {
    max-width: none;
}

.article-info,
.com-content-article > dl.article-info {
    display: none;
}

.container-header .navbar-brand::after {
    content: none;
}

.container-header .navbar-brand {
    font-size: clamp(1.8rem, 3vw, 2.8rem);
}

.shrc-landing {
    min-height: 520px;
    width: 100%;
}

.shrc-landing-content {
    max-width: 980px;
}

.shrc-landing h1 {
    font-size: clamp(2rem, 4vw, 4rem);
    white-space: nowrap;
}

.shrc-intro {
    max-width: 760px;
}

.shrc-section p {
    display: none;
}

.shrc-section {
    min-height: 130px;
    display: flex;
    align-items: center;
}

.page-header,
.com-content-article > h1,
.article-info {
    display: none !important;
}

/* SHRC Startseite breiter und kompakter */

.site-grid {
    max-width: 1320px !important;
}

main,
.container-component {
    max-width: 1100px;
    margin: 0 auto;
}

.shrc-landing {
    min-height: 360px;
    background-position: center 45%;
}

.shrc-landing-content {
    padding: 3rem;
}

.shrc-landing h1 {
    font-size: clamp(2rem, 4vw, 3.4rem);
}

.shrc-section {
    min-height: 110px;
    padding: 1.7rem 2rem;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.shrc-section:hover {
    transform: translateY(-3px);
    box-shadow: 0 16px 38px rgba(0,0,0,.14);
    background: linear-gradient(135deg, #ffffff, #f7f1df);
}

.shrc-section h2 {
    font-size: 1.9rem;
    margin: 0;
}

.shrc-home {
    gap: 1rem;
}

/* ==========================================================
   SHRC Bildkacheln - mit Hover/Zoom/Pfeil
   ========================================================== */

.shrc-tile-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}

.shrc-tile {
    min-height: 135px;
    border-radius: 18px;
    overflow: hidden;
    position: relative;
    display: flex;
    align-items: flex-end;
    padding: 1.2rem;
    text-decoration: none;
    color: #fff;
    box-shadow: var(--shrc-shadow);
    transition: transform .25s ease, box-shadow .25s ease;
}

.shrc-tile::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--tile-image);
    background-size: cover;
    background-position: center;
    transition: transform .45s ease, filter .45s ease;
    z-index: 0;
}

.shrc-tile::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(0,0,0,.05),
        rgba(0,0,0,.78)
    );
    z-index: 1;
    transition: background .25s ease;
}

.shrc-tile:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 45px rgba(0,0,0,.25);
    color: var(--shrc-accent-light);
}

.shrc-tile:hover::before {
    transform: scale(1.08);
    filter: brightness(1.08) contrast(1.05);
}

.shrc-tile:hover::after {
    background: linear-gradient(
        180deg,
        rgba(0,0,0,.02),
        rgba(0,0,0,.58)
    );
}

.shrc-tile span {
    position: relative;
    z-index: 2;
    font-size: 1.25rem;
    font-weight: 850;
    line-height: 1.15;
    text-shadow: 0 2px 10px rgba(0,0,0,.65);
    transition: transform .25s ease;
}

.shrc-tile span::after {
    content: " →";
    opacity: 0;
    transform: translateX(-6px);
    display: inline-block;
    transition: opacity .25s ease, transform .25s ease;
}

.shrc-tile:hover span {
    transform: translateY(-4px);
}

.shrc-tile:hover span::after {
    opacity: 1;
    transform: translateX(0);
}

/* Einzelne Bilder einfach hier austauschen */

.tile-pa {
    --tile-image: url("/images/bilder/shrc/DSC_1801.jpg");
}

.tile-studio {
    --tile-image: url("/images/bilder/shrc/_DSC_0472.jpg");
}

.tile-elektronik {
    --tile-image: url("/images/bilder/shrc/_RIM00011bm.jpg");
}

.tile-projekte {
    --tile-image: url("/images/bilder/shrc/PXL_20230916_183000634.jpg");
}

.tile-downloads {
    --tile-image: url("/images/bilder/shrc/hero-tightrope.jpg");
}

.tile-verkauf {
    --tile-image: url("/images/bilder/shrc/PXL_20260520_135605001.jpg");
}

.tile-kontakt {
    --tile-image: url("/images/bilder/shrc/hero-tightrope.jpg");
}

.tile-ueber {
    --tile-image: url("/images/bilder/shrc/back.jpg");
}

@media (max-width: 1000px) {
    .shrc-tile-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {
    .shrc-tile-grid {
        grid-template-columns: 1fr;
    }
}

/* Über diese Seite */

.shrc-about {
    max-width: 1000px;
    margin: 0 auto;
}

.shrc-about > h1 {
    margin-bottom: 1rem;
}

.shrc-about .lead {
    font-size: 1.2rem;
    max-width: 760px;
    margin-bottom: 2rem;
}

.shrc-about-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.about-card {
    min-height: 150px;
    background: #fff;
    border: 1px solid var(--shrc-border);
    border-radius: 20px;
    box-shadow: var(--shrc-shadow);
    padding: 1.6rem;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    justify-content: center;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.about-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 42px rgba(0,0,0,.16);
    border-color: var(--shrc-accent);
}

.about-card .icon {
    font-size: 2rem;
    margin-bottom: .8rem;
}

.about-card h2 {
    margin: 0;
    font-size: 1.45rem;
}

@media (max-width: 700px) {
    .shrc-about-grid {
        grid-template-columns: 1fr;
    }
}

/* SHRC Zurück-Button */

.shrc-downloads__footer{
    margin-top:2rem;
    display:flex;
    justify-content:flex-start;
}

a.shrc-back{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:140px;
    height:46px;

    padding:0 24px;

    background:#294a78 !important;
    color:#fff !important;

    border:none;
    border-radius:999px;

    font-weight:700;
    font-size:1rem;
    text-decoration:none !important;

    box-shadow:0 4px 10px rgba(0,0,0,.18);
    transition:.2s;
}

a.shrc-back:hover{
    background:#3b649b !important;
    color:#fff !important;
    transform:translateY(-2px);
}

a.shrc-back::before{
    content:"←";
    margin-right:.55rem;
}

/* Theme-Umschalter */

.shrc-theme-toggle {
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    z-index: 9999;
    width: 48px;
    height: 48px;
    border: 0;
    border-radius: 50%;
    background: var(--shrc-blue-2);
    color: #fff;
    font-size: 1.25rem;
    box-shadow: 0 8px 24px rgba(0,0,0,.25);
    cursor: pointer;
}

.shrc-theme-toggle:hover {
    background: var(--shrc-accent);
    color: #111;
}

/* Dark Mode */

html[data-theme="dark"] {
    --shrc-bg: #111827;
    --shrc-card: #1f2937;
    --shrc-text: #f3f4f6;
    --shrc-muted: #cbd5e1;
    --shrc-border: rgba(255,255,255,.12);
}

html[data-theme="dark"] body {
    background: var(--shrc-bg);
    color: var(--shrc-text);
}

html[data-theme="dark"] main,
html[data-theme="dark"] .container-component,
html[data-theme="dark"] .card,
html[data-theme="dark"] .moduletable,
html[data-theme="dark"] .shrc-section,
html[data-theme="dark"] .about-card {
    background: var(--shrc-card);
    color: var(--shrc-text);
}

html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4 {
    color: #fff;
}

html[data-theme="dark"] a {
    color: #93c5fd;
}

html[data-theme="dark"] a:hover {
    color: var(--shrc-accent-light);
}



/* SHRC – Geschichte / langer Magazinartikel */
.shrc-story{max-width:920px;margin:0 auto}.shrc-story-header{margin-bottom:2.2rem}.shrc-story-kicker{margin:1.4rem 0 .45rem;color:var(--shrc-accent);font-size:.85rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.shrc-story-header h1{margin:0 0 1rem;font-size:clamp(2.1rem,5vw,4rem)}.shrc-story-intro{max-width:760px;margin:0;color:var(--shrc-muted);font-size:clamp(1.12rem,2vw,1.35rem);line-height:1.65}.shrc-story-body{max-width:78ch}.shrc-story-body>p{margin:0 0 1.15rem;font-size:1.07rem;line-height:1.8}.shrc-story-divider{width:min(220px,45%);height:1px;margin:2.7rem auto;border:0;background:linear-gradient(90deg,transparent,var(--shrc-accent),transparent);opacity:.75}.shrc-story-quote{margin:1.6rem 0 1.8rem;padding:1.3rem 1.5rem 1.3rem 2rem;border-left:5px solid var(--shrc-accent);border-radius:0 14px 14px 0;background:rgba(31,64,104,.08);color:var(--shrc-text);font-size:clamp(1.15rem,2vw,1.35rem);font-style:italic;line-height:1.6}.shrc-story-highlight{margin:2rem 0!important;padding:1.5rem 1.7rem;border:1px solid var(--shrc-border);border-radius:18px;background:linear-gradient(135deg,rgba(217,154,0,.14),rgba(31,64,104,.08));box-shadow:0 10px 28px rgba(0,0,0,.08);color:var(--shrc-blue);font-size:clamp(1.35rem,2.8vw,1.9rem)!important;font-weight:850;line-height:1.4!important}.shrc-story-punchline{font-weight:780}.shrc-story-callout{margin:1.8rem 0!important;padding-left:1rem;border-left:3px solid var(--shrc-accent);font-size:1.13rem!important;font-weight:700}.shrc-story-stack{display:grid;gap:.15rem;margin:1.45rem 0 1.7rem;color:var(--shrc-blue);font-size:1.2rem;font-weight:820;line-height:1.45}.shrc-story-stack-large{gap:.3rem;font-size:clamp(1.25rem,2.4vw,1.65rem)}.shrc-story-ending{margin-top:3rem;padding:2rem;border:1px solid var(--shrc-border);border-radius:20px;background:linear-gradient(135deg,rgba(31,64,104,.08),rgba(217,154,0,.11));box-shadow:var(--shrc-shadow)}.shrc-story-ending h2{margin-top:0}.shrc-story-ending p:last-child{margin-bottom:0}.shrc-back-bottom{margin-top:2rem}html[data-theme="dark"] .shrc-story-quote{background:rgba(255,255,255,.06);color:var(--shrc-text)}html[data-theme="dark"] .shrc-story-highlight,html[data-theme="dark"] .shrc-story-ending{background:linear-gradient(135deg,rgba(217,154,0,.13),rgba(255,255,255,.045));color:var(--shrc-text)}html[data-theme="dark"] .shrc-story-highlight,html[data-theme="dark"] .shrc-story-stack{color:#fff}@media(max-width:700px){.shrc-story-body>p{font-size:1rem;line-height:1.72}.shrc-story-quote{padding:1.1rem 1rem 1.1rem 1.35rem}.shrc-story-highlight,.shrc-story-ending{padding:1.25rem;border-radius:15px}.shrc-story-divider{margin:2.1rem auto}}



/* Anschrift im Impressum */

.shrc-address {
    margin: 1.5rem 0 2rem;
}

.shrc-address-image {
    display: block;
    max-width: 220px;
    width: 100%;
    height: auto;
    border-radius: 12px;
    box-shadow: var(--shrc-shadow);
}


.shrc-email-image {
    max-width: 220px;
    margin-top: .75rem;
}

/* =========================================================
   SHRC Loginseite
   ========================================================= */

.shrc-login-page {
    width: min(100%, 460px);
    margin: 1rem auto 2rem;
    padding: 2rem;
    border: 1px solid var(--shrc-border);
    border-radius: 20px;
    background: #fff;
    box-shadow: var(--shrc-shadow);
}

.shrc-login-page::before {
    content: "Produktionsbereich";
    display: block;
    margin-bottom: .35rem;
    color: var(--shrc-blue);
    font-size: 1.6rem;
    font-weight: 850;
}

.shrc-login-page::after {
    content: "Bitte mit den Zugangsdaten der Produktion anmelden.";
    display: block;
    margin-top: 1rem;
    color: var(--shrc-muted);
    font-size: .92rem;
}

/* Felder */

.shrc-login-page .mod-login__username,
.shrc-login-page .mod-login__password {
    margin-bottom: 1rem;
}

.shrc-login-page .input-group {
    position: relative;
    display: block;
    width: 100%;
}

.shrc-login-page input[type="text"],
.shrc-login-page input[type="password"] {
    width: 100%;
    min-height: 48px;
    padding: .7rem 2.9rem .7rem .9rem;
    border: 1px solid var(--shrc-border);
    border-radius: 10px;
    background: #fff;
    color: var(--shrc-text);
    font-size: 1rem;
}

.shrc-login-page input:focus {
    border-color: var(--shrc-accent);
    box-shadow: 0 0 0 3px rgba(217, 154, 0, .18);
    outline: 0;
}

/* Benutzer-Icon komplett ausblenden */

.shrc-login-page .mod-login__username .input-group-text,
.shrc-login-page .mod-login__username button {
    display: none !important;
}

/* Passwort-Auge rechts im Feld */

.shrc-login-page .mod-login__password .input-group {
    position: relative;
}

.shrc-login-page .mod-login__password .input-password-toggle,
.shrc-login-page .mod-login__password button {
    position: absolute;
    top: 50%;
    right: .35rem;
    z-index: 3;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 0;
    background: transparent;
    transform: translateY(-50%);
    color: var(--shrc-blue);
}

/* Unnötige Optionen ausblenden */

.shrc-login-page .mod-login__remember,
.shrc-login-page .mod-login__passkey,
.shrc-login-page .mod-login__options,
.shrc-login-page .mod-login__forgot,
.shrc-login-page .mod-login__registration {
    display: none !important;
}

/* Button */

.shrc-login-page .mod-login__submit {
    margin-top: 1.2rem;
}

.shrc-login-page .mod-login__submit .btn,
.shrc-login-page button[type="submit"] {
    width: 100%;
    min-height: 48px;
    border: 0;
    border-radius: 999px;
    background: var(--shrc-blue-2);
    color: #fff;
    font-weight: 800;
}

.shrc-login-page .mod-login__submit .btn:hover,
.shrc-login-page button[type="submit"]:hover {
    background: var(--shrc-accent);
    color: #111;
}

/* Dark Mode */

html[data-theme="dark"] .shrc-login-page {
    background: var(--shrc-card);
    color: var(--shrc-text);
}

html[data-theme="dark"] .shrc-login-page::before {
    color: #fff;
}

html[data-theme="dark"] .shrc-login-page input[type="text"],
html[data-theme="dark"] .shrc-login-page input[type="password"] {
    border-color: rgba(255,255,255,.15);
    background: #111827;
    color: #fff;
}


/* Login rechts im blauen Header */

.container-header {
    position: relative;
}

.shrc-header-account {
    position: absolute;
    top: 22px;
    right: 30px;
    z-index: 9999;

    display: flex;
    align-items: center;
    gap: .65rem;
}

.shrc-header-account__name {
    color: #fff;
    font-size: .95rem;
    font-weight: 700;
}

.shrc-header-account__login,
.shrc-header-account__logout {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 38px;
    padding: .42rem .95rem;

    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 999px;

    background: rgba(255, 255, 255, .08);
    color: #fff !important;

    font-size: .92rem;
    font-weight: 750;
    text-decoration: none;
}

.shrc-header-account__login:hover,
.shrc-header-account__logout:hover {
    border-color: var(--shrc-accent);
    background: var(--shrc-accent);
    color: #111 !important;
}

@media (max-width: 700px) {
    .shrc-header-account {
        top: 14px;
        right: 14px;
    }

    .shrc-header-account__name {
        display: none;
    }

    .shrc-header-account__login,
    .shrc-header-account__logout {
        min-height: 34px;
        padding: .36rem .72rem;
        font-size: .82rem;
    }
}

.shrc-header-account__logout-form {
    display: inline-flex;
    margin: 0;
}

.shrc-header-account__logout {
    cursor: pointer;
    font-family: inherit;
}


/* =========================================================
   SHRC Benutzerstatus im Header
   ========================================================= */

.shrc-header-account {
    display: flex;
    align-items: center;
}

.shrc-header-account .mod-login-logout {
    position: static !important;
    display: flex !important;
    align-items: center;
    gap: .7rem;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.shrc-header-account .mod-login-logout__login-greeting {
    position: static !important;
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: .95rem;
    font-weight: 750;
    line-height: 1.2;
    white-space: nowrap;
    pointer-events: none;
}

.shrc-header-account .mod-login-logout__button {
    position: static !important;
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.shrc-header-account .mod-login-logout__button .btn {
    position: relative !important;
    z-index: 10 !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: auto !important;
    min-width: 0 !important;
    min-height: 38px;
    margin: 0 !important;
    padding: .42rem .95rem !important;
    border: 1px solid rgba(255,255,255,.55) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.08) !important;
    color: #fff !important;
    font-family: inherit;
    font-size: .92rem;
    font-weight: 750;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer !important;
    pointer-events: auto !important;
}

.shrc-header-account .mod-login-logout__button .btn:hover {
    border-color: var(--shrc-accent) !important;
    background: var(--shrc-accent) !important;
    color: #111 !important;
}

@media (max-width: 700px) {
    .shrc-header-account .mod-login-logout__login-greeting {
        display: none !important;
    }

    .shrc-header-account .mod-login-logout__button .btn {
        min-height: 34px;
        padding: .36rem .72rem !important;
        font-size: .82rem;
    }
}

/* Echtes Joomla-Abmeldemodul im SHRC-Header */

.shrc-header-account .mod-login-logout {
    display: flex;
    align-items: center;
    gap: .7rem;
    width: auto;
    margin: 0;
    padding: 0;
    background: transparent;
    box-shadow: none;
}

.shrc-header-account .mod-login-logout__login-greeting,
.shrc-header-account .login-greeting {
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: .95rem;
    font-weight: 750;
    white-space: nowrap;
}

.shrc-header-account .mod-login-logout__button {
    width: auto;
    margin: 0;
    padding: 0;
}

.shrc-header-account .mod-login-logout__button .btn {
    width: auto;
    min-width: 0;
    min-height: 38px;
    margin: 0;
    padding: .42rem .95rem;
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    font-family: inherit;
    font-size: .92rem;
    font-weight: 750;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
}

.shrc-header-account .mod-login-logout__button .btn:hover {
    border-color: var(--shrc-accent);
    background: var(--shrc-accent);
    color: #111;
}

/* Passwortfeld */

.password-wrapper{
    position:relative;
}

.password-wrapper input{
    padding-right:48px;
}

.password-wrapper button,
.password-wrapper .toggle-password{
    position:absolute;
    right:14px;
    top:50%;
    transform:translateY(-50%);
    z-index:5;

    border:0;
    background:none;
}

/* Nur auf der Loginseite: Beitragsnavigation komplett entfernen */

body.shrc-login-page-view .pagenavigation,
body.shrc-login-page-view nav.pagenavigation,
body.shrc-login-page-view .pagenavigation .pagination {
    display: none !important;
}

/* Passwort-Auge dauerhaft im Feld halten */

.shrc-login-page .mod-login__password .input-group,
.shrc-login-page .password-group,
.shrc-login-page .input-password {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
}

.shrc-login-page .mod-login__password input,
.shrc-login-page input[type="password"] {
    width: 100% !important;
    padding-right: 3.25rem !important;
}

.shrc-login-page .mod-login__password button,
.shrc-login-page button.input-password-toggle,
.shrc-login-page .input-password button {
    position: absolute !important;
    top: 50% !important;
    right: .45rem !important;
    z-index: 50 !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 2.5rem !important;
    height: 2.5rem !important;
    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(-50%) !important;
}

.shrc-login-page .mod-login__password button *,
.shrc-login-page button.input-password-toggle *,
.shrc-login-page .input-password button * {
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Loginseite: komplette Beitragsnavigation samt leerem Container entfernen */

body.shrc-login-page-view nav.pagenavigation,
body.shrc-login-page-view .pagenavigation,
body.shrc-login-page-view .pagination,
body.shrc-login-page-view .pagination-wrapper,
body.shrc-login-page-view main > nav,
body.shrc-login-page-view .com-content-article > nav {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Leeren Platzhalter-Beitrag auf der Loginseite vollständig entfernen */

.com-content-article[class*="shrc-login-page-view"] {
    display: none !important;
}


/* Loginseite: leeren Beitragsbereich einschließlich Main-Container entfernen */

.container-component main:has(
    > .com-content-article.item-pageshrc-login-page-view
) {
    display: none !important;
}

/* =========================================================
   SHRC – jDownloads
   ========================================================= */

/* Gesamter jDownloads-Bereich */

.com_jdownloads .container-component,
body.com_jdownloads .container-component {
    max-width: 1180px;
}

.com_jdownloads main,
body.com_jdownloads main {
    width: 100%;
}

.com_jdownloads .jd_content,
.com_jdownloads .jd_container,
.com_jdownloads .jd_content_wrapper,
.com_jdownloads .jdownloads,
body.com_jdownloads .jd_content,
body.com_jdownloads .jd_container {
    width: 100% !important;
    max-width: none !important;
}

/* Hauptkarte */

.com_jdownloads .jd_content,
.com_jdownloads .jd_container,
body.com_jdownloads .jd_content,
body.com_jdownloads .jd_container {
    padding: 1.5rem !important;
    border: 1px solid var(--shrc-border) !important;
    border-radius: 22px !important;
    background: var(--shrc-card, #fff) !important;
    box-shadow: var(--shrc-shadow) !important;
}

/* Überschriften */

.com_jdownloads h1,
.com_jdownloads h2,
.com_jdownloads h3,
.com_jdownloads .jd_cat_title,
.com_jdownloads .jd_page_title,
body.com_jdownloads h1,
body.com_jdownloads h2,
body.com_jdownloads h3 {
    color: var(--shrc-blue) !important;
    font-family: inherit !important;
    font-weight: 850 !important;
}

.com_jdownloads h2,
.com_jdownloads .jd_cat_title {
    margin-bottom: 1rem !important;
    font-size: clamp(1.45rem, 2.5vw, 2rem) !important;
}

/* Oberes Navigationsfeld */

.com_jdownloads .jd_top_navi,
.com_jdownloads .jd_top_nav,
.com_jdownloads .jd_toolbar,
.com_jdownloads .jd_header,
body.com_jdownloads .jd_top_navi,
body.com_jdownloads .jd_toolbar {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: .55rem !important;
    margin-bottom: 1.35rem !important;
}

/* jDownloads-Buttons */

.com_jdownloads .btn,
.com_jdownloads button,
.com_jdownloads input[type="submit"],
.com_jdownloads .jd_button,
body.com_jdownloads .btn {
    min-height: 38px;
    padding: .42rem .9rem !important;
    border: 1px solid rgba(31, 64, 104, .22) !important;
    border-radius: 999px !important;
    background: var(--shrc-blue-2) !important;
    color: #fff !important;
    font-family: inherit !important;
    font-size: .9rem !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    transition:
        transform .18s ease,
        background .18s ease,
        color .18s ease;
}

.com_jdownloads .btn:hover,
.com_jdownloads button:hover,
.com_jdownloads input[type="submit"]:hover,
.com_jdownloads .jd_button:hover {
    transform: translateY(-1px);
    border-color: var(--shrc-accent) !important;
    background: var(--shrc-accent) !important;
    color: #111 !important;
}

/* Suchfeld */

.com_jdownloads input[type="search"],
.com_jdownloads input[type="text"],
.com_jdownloads select {
    min-height: 42px;
    padding: .55rem .8rem !important;
    border: 1px solid var(--shrc-border) !important;
    border-radius: 10px !important;
    background: var(--shrc-card, #fff) !important;
    color: var(--shrc-text) !important;
    font-family: inherit !important;
}

.com_jdownloads input:focus,
.com_jdownloads select:focus {
    border-color: var(--shrc-accent) !important;
    box-shadow: 0 0 0 3px rgba(217, 154, 0, .17) !important;
    outline: 0 !important;
}

/* =========================================================
   Kategorien als Kacheln
   ========================================================= */

/*
   jDownloads verwendet je nach aktivem Layout etwas andere
   Klassennamen. Deshalb sind hier mehrere Varianten erfasst.
*/

.com_jdownloads .jd_subcategories,
.com_jdownloads .jd_categories,
.com_jdownloads .jd_cat_sub,
.com_jdownloads .jd_cat_list,
.com_jdownloads .jd_categories_container {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)) !important;
    gap: 1rem !important;
    width: 100% !important;
    margin: 1rem 0 1.5rem !important;
}

/* Einzelne Kategorie */

.com_jdownloads .jd_subcategory,
.com_jdownloads .jd_category,
.com_jdownloads .jd_cat,
.com_jdownloads .jd_cat_item,
.com_jdownloads .jd_categories > div,
.com_jdownloads .jd_subcategories > div {
    position: relative !important;
    min-width: 0 !important;
    min-height: 125px !important;
    margin: 0 !important;
    padding: 1.25rem !important;
    overflow: hidden !important;
    border: 1px solid var(--shrc-border) !important;
    border-radius: 18px !important;
    background:
        linear-gradient(
            135deg,
            rgba(31, 64, 104, .08),
            rgba(217, 154, 0, .08)
        ),
        var(--shrc-card, #fff) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .08) !important;
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        border-color .2s ease;
}

.com_jdownloads .jd_subcategory:hover,
.com_jdownloads .jd_category:hover,
.com_jdownloads .jd_cat:hover,
.com_jdownloads .jd_cat_item:hover,
.com_jdownloads .jd_categories > div:hover,
.com_jdownloads .jd_subcategories > div:hover {
    transform: translateY(-3px);
    border-color: rgba(217, 154, 0, .7) !important;
    box-shadow: 0 13px 30px rgba(0, 0, 0, .13) !important;
}

/* Kategoriename */

.com_jdownloads .jd_subcategory a,
.com_jdownloads .jd_category a,
.com_jdownloads .jd_cat a,
.com_jdownloads .jd_cat_item a,
.com_jdownloads .jd_categories a,
.com_jdownloads .jd_subcategories a {
    color: var(--shrc-blue) !important;
    font-size: 1.12rem !important;
    font-weight: 850 !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
}

/* Datei-/Unterkategorie-Zähler */

.com_jdownloads .jd_files_count,
.com_jdownloads .jd_subcategories_count,
.com_jdownloads .jd_count,
.com_jdownloads .small,
.com_jdownloads small {
    color: var(--shrc-muted) !important;
    font-size: .84rem !important;
    font-weight: 500 !important;
}

/* Alte Ordnergrafiken ausblenden */

.com_jdownloads img[src*="folder"],
.com_jdownloads img[alt*="folder" i],
.com_jdownloads img[alt*="ordner" i],
.com_jdownloads .jd_folder,
.com_jdownloads .folder {
    display: none !important;
}

/* Eigenes schlichtes Ordnersymbol */

.com_jdownloads .jd_subcategory::before,
.com_jdownloads .jd_category::before,
.com_jdownloads .jd_cat::before,
.com_jdownloads .jd_cat_item::before {
    content: "▰";
    display: block;
    margin-bottom: .7rem;
    color: var(--shrc-accent);
    font-size: 1.7rem;
    line-height: 1;
}

/* =========================================================
   Download-Dateien
   ========================================================= */

.com_jdownloads .jd_download,
.com_jdownloads .jd_download_wrapper,
.com_jdownloads .jd_file,
.com_jdownloads .jd_download_item,
.com_jdownloads .jd_downloads > div {
    margin: 0 0 .9rem !important;
    padding: 1rem 1.1rem !important;
    border: 1px solid var(--shrc-border) !important;
    border-radius: 15px !important;
    background: var(--shrc-card, #fff) !important;
    box-shadow: 0 5px 18px rgba(0, 0, 0, .06) !important;
}

.com_jdownloads .jd_download_title,
.com_jdownloads .jd_file_title,
.com_jdownloads .jd_download a {
    color: var(--shrc-blue) !important;
    font-weight: 800 !important;
}

/* Beschreibungstexte */

.com_jdownloads .jd_description,
.com_jdownloads .jd_cat_description,
.com_jdownloads .jd_file_description {
    color: var(--shrc-muted) !important;
    line-height: 1.65 !important;
}

/* Leere-Kategorie-Hinweise dezenter */

.com_jdownloads .jd_no_downloads,
.com_jdownloads .jd_empty,
.com_jdownloads .alert {
    padding: .85rem 1rem !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: rgba(31, 64, 104, .06) !important;
    color: var(--shrc-muted) !important;
}

/* Zurück-Link */

.com_jdownloads a[href*="back"],
.com_jdownloads .jd_back_link,
.com_jdownloads .back_button {
    display: inline-flex !important;
    align-items: center !important;
    margin-top: 1rem !important;
    color: var(--shrc-blue) !important;
    font-weight: 750 !important;
    text-decoration: none !important;
}

/* Powered by jDownloads ausblenden */

.com_jdownloads a[href*="jdownloads.com"],
.com_jdownloads .jd_footer,
.com_jdownloads .jd_powered_by,
.com_jdownloads .powered_by {
    display: none !important;
}

/* Tabellen nicht überlaufen lassen */

.com_jdownloads table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

.com_jdownloads td,
.com_jdownloads th {
    padding: .65rem !important;
    border-color: var(--shrc-border) !important;
}

/* =========================================================
   Dark Mode
   ========================================================= */

html[data-theme="dark"] .com_jdownloads .jd_content,
html[data-theme="dark"] .com_jdownloads .jd_container,
html[data-theme="dark"] .com_jdownloads .jd_subcategory,
html[data-theme="dark"] .com_jdownloads .jd_category,
html[data-theme="dark"] .com_jdownloads .jd_cat,
html[data-theme="dark"] .com_jdownloads .jd_cat_item,
html[data-theme="dark"] .com_jdownloads .jd_download,
html[data-theme="dark"] .com_jdownloads .jd_file {
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, .035),
            rgba(217, 154, 0, .07)
        ),
        var(--shrc-card) !important;
    color: var(--shrc-text) !important;
}

html[data-theme="dark"] .com_jdownloads h1,
html[data-theme="dark"] .com_jdownloads h2,
html[data-theme="dark"] .com_jdownloads h3,
html[data-theme="dark"] .com_jdownloads a {
    color: #fff !important;
}

html[data-theme="dark"] .com_jdownloads input,
html[data-theme="dark"] .com_jdownloads select {
    border-color: rgba(255, 255, 255, .15) !important;
    background: #111827 !important;
    color: #fff !important;
}

/* =========================================================
   Mobil
   ========================================================= */

@media (max-width: 700px) {
    .com_jdownloads .jd_content,
    .com_jdownloads .jd_container {
        padding: 1rem !important;
        border-radius: 16px !important;
    }

    .com_jdownloads .jd_subcategories,
    .com_jdownloads .jd_categories,
    .com_jdownloads .jd_cat_list {
        grid-template-columns: 1fr !important;
    }

    .com_jdownloads .jd_subcategory,
    .com_jdownloads .jd_category,
    .com_jdownloads .jd_cat,
    .com_jdownloads .jd_cat_item {
        min-height: 100px !important;
    }
}

/* =========================================================
   SHRC – jDownloads Produktionsübersicht vereinfachen
   ========================================================= */

/* Obere Navigation: Übersicht, Suchen, Ebene */
.com_jdownloads .jd_top_navi,
.com_jdownloads .jd_top_nav,
.com_jdownloads .jd_toolbar,
.com_jdownloads .jd_header,
.com_jdownloads .jd_menu,
.com_jdownloads .jd_nav {
    display: none !important;
}

/* Dropdown / Kombobox oben rechts */
.com_jdownloads select,
.com_jdownloads .jd_category_select,
.com_jdownloads .jd_cat_select,
.com_jdownloads .jd_dropdown,
.com_jdownloads .chzn-container,
.com_jdownloads .choices {
    display: none !important;
}

/* Kategorie-Überschrift und große Statistik-Karte ausblenden */
.com_jdownloads .jd_page_title,
.com_jdownloads .jd_cat_title,
.com_jdownloads .jd_category_title,
.com_jdownloads .jd_cat_header,
.com_jdownloads .jd_category_header {
    display: none !important;
}

/* Falls "Kategorie: Produktionen" als normales h2/h3 ausgegeben wird */
.com_jdownloads h1,
.com_jdownloads h2,
.com_jdownloads h3 {
    display: none !important;
}

/* Große Karte mit "Unterkategorien: 1 / Dateien: 0" */
.com_jdownloads .jd_cat_info,
.com_jdownloads .jd_category_info,
.com_jdownloads .jd_category_details,
.com_jdownloads .jd_cat_details,
.com_jdownloads .jd_category_summary {
    display: none !important;
}

/* Überschrift "Unterkategorien:" ausblenden */
.com_jdownloads .jd_subcategories_title,
.com_jdownloads .jd_subcat_title,
.com_jdownloads .jd_subcategories_heading {
    display: none !important;
}

/* Leere-Kategorie-Hinweis entfernen */
.com_jdownloads .jd_no_downloads,
.com_jdownloads .jd_empty,
.com_jdownloads .alert,
.com_jdownloads .jd_message {
    display: none !important;
}

/* Nur die eigentlichen Produktionskacheln stehen lassen */
.com_jdownloads .jd_subcategories,
.com_jdownloads .jd_categories,
.com_jdownloads .jd_cat_list,
.com_jdownloads .jd_categories_container {
    margin-top: 0 !important;
}

/* Zurück-Link wie auf Impressum/Geschichte gestalten */
.com_jdownloads .jd_back_link,
.com_jdownloads .back_button,
.com_jdownloads a[href*="back"],
.com_jdownloads a[onclick*="history.back"] {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    margin-top: 1.5rem !important;
    padding: .5rem 1rem !important;
    border: 1px solid var(--shrc-border) !important;
    border-radius: 999px !important;
    background: var(--shrc-card, #fff) !important;
    color: var(--shrc-blue) !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .07);
}

.com_jdownloads .jd_back_link::before,
.com_jdownloads .back_button::before,
.com_jdownloads a[href*="back"]::before,
.com_jdownloads a[onclick*="history.back"]::before {
    content: "←";
    margin-right: .45rem;
}

.com_jdownloads .jd_back_link:hover,
.com_jdownloads .back_button:hover,
.com_jdownloads a[href*="back"]:hover,
.com_jdownloads a[onclick*="history.back"]:hover {
    border-color: var(--shrc-accent) !important;
    background: var(--shrc-accent) !important;
    color: #111 !important;
}

/* Dark Mode */
html[data-theme="dark"] .com_jdownloads .jd_back_link,
html[data-theme="dark"] .com_jdownloads .back_button,
html[data-theme="dark"] .com_jdownloads a[href*="back"],
html[data-theme="dark"] .com_jdownloads a[onclick*="history.back"] {
    background: var(--shrc-card) !important;
    color: #fff !important;
}

/* =========================================================
   SHRC – jDownloads Produktionsübersicht gezielt vereinfachen
   ========================================================= */

/* Obere Navigation komplett entfernen */
.jd-item-page > .container-fluid.mb-2,
.jd-item-page nav.navbar,
.jd-item-page #go_cat {
    display: none !important;
}

/* Überschrift "Kategorie: Produktionen" entfernen */
.jd-item-page > .d-flex.justify-content-between.align-items-center.mb-2.pb-3.border-bottom {
    display: none !important;
}

/* Große Infokarte mit Unterkategorien / Dateien entfernen */
.jd-item-page > .card.mb-1.shadow-sm {
    display: none !important;
}

/* Überschrift "Unterkategorien:" entfernen */
.jd-item-page .subcategories-section > h5 {
    display: none !important;
}

/* Hinweistext nur auf Kategorien ohne Downloads ausblenden */

.jd-item-page > .my-2 > br:first-child,
.jd-item-page > .my-2 > br:nth-child(2) {
    display:none;
}

.jd-item-page > .my-2{
    padding-top:0 !important;
}

/* Powered by jDownloads entfernen */
.jd-item-page .jd_footer {
    display: none !important;
}

/* Produktionskacheln */
.jd-item-page .subcategories-section {
    margin: 0 !important;
}

.jd-item-page .subcategories-section .row {
    margin: 0 !important;
}

.jd-item-page .subcategories-section .col-sm-6 {
    width: auto !important;
    max-width: 320px;
    padding: 0 !important;
}

.jd-item-page .category-card {
    min-width: 240px;
    min-height: 120px;
    border: 1px solid var(--shrc-border) !important;
    border-radius: 18px !important;
    background:
        linear-gradient(
            135deg,
            rgba(31, 64, 104, .08),
            rgba(217, 154, 0, .08)
        ),
        var(--shrc-card, #fff) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .08) !important;
    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.jd-item-page .category-card:hover {
    transform: translateY(-3px);
    border-color: var(--shrc-accent) !important;
    box-shadow: 0 13px 30px rgba(0, 0, 0, .13) !important;
}

.jd-item-page .category-card .card-body {
    display: flex;
    align-items: center;
    padding: 1.25rem !important;
}

/* Ordnerbild etwas dezenter */
.jd-item-page .category-card img {
    width: 44px !important;
    height: 44px !important;
}

/* Kacheltitel */
.jd-item-page .category-card h6 {
    margin: 0 !important;
}

.jd-item-page .category-card h6 a {
    color: var(--shrc-blue) !important;
    font-size: 1.15rem;
    font-weight: 850;
    text-decoration: none !important;
}

/* Dateizähler */
.jd-item-page .category-card small {
    color: var(--shrc-muted) !important;
    font-size: .82rem;
}

/* Unterer Bereich mit Zurück-Link */
.jd-item-page > .d-flex.justify-content-between.align-items-center.mt-1.pt-1.border-top {
    display: flex !important;
    justify-content: flex-start !important;
    margin-top: 1.5rem !important;
    padding-top: 0 !important;
    border-top: 0 !important;
}

/* Leere Pagination rechts ausblenden */
.jd-item-page > .d-flex.justify-content-between.align-items-center.mt-1.pt-1.border-top
    > .d-flex.gap-2.align-items-center {
    display: none !important;
}

/* Zurück-Link wie auf Impressum/Geschichte */
.jd-item-page a[href^="javascript:history.go"] {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: .5rem 1rem !important;
    border: 1px solid var(--shrc-border) !important;
    border-radius: 999px !important;
    background: var(--shrc-card, #fff) !important;
    color: var(--shrc-blue) !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .07);
}

.jd-item-page a[href^="javascript:history.go"]::before {
    content: "←";
    margin-right: .45rem;
}

.jd-item-page a[href^="javascript:history.go"]:hover {
    border-color: var(--shrc-accent) !important;
    background: var(--shrc-accent) !important;
    color: #111 !important;
}

/* Dark Mode */
html[data-theme="dark"] .jd-item-page .category-card {
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, .035),
            rgba(217, 154, 0, .07)
        ),
        var(--shrc-card) !important;
}

html[data-theme="dark"] .jd-item-page .category-card h6 a,
html[data-theme="dark"] .jd-item-page a[href^="javascript:history.go"] {
    color: #fff !important;
}


.shrc-production-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 1rem;
}

.shrc-production-card {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-height: 122px;
    padding: 1.2rem;
    border: 1px solid var(--shrc-border);
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(31, 64, 104, .08), rgba(217, 154, 0, .08)),
        var(--shrc-card, #fff);
    color: var(--shrc-blue) !important;
    text-decoration: none !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.shrc-production-card:hover {
    transform: translateY(-3px);
    border-color: var(--shrc-accent);
    box-shadow: 0 13px 30px rgba(0, 0, 0, .13);
}

.shrc-production-card__icon {
    display: grid;
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    place-items: center;
    border-radius: 14px;
    background: var(--shrc-blue-2);
    color: #fff;
    font-size: 1.9rem;
    font-weight: 850;
}

.shrc-production-card__content {
    min-width: 0;
}

.shrc-production-card__title,
.shrc-production-card__count {
    display: block;
}

.shrc-production-card__title {
    font-size: 1.15rem;
    line-height: 1.25;
}

.shrc-production-card__count {
    margin-top: .25rem;
    color: var(--shrc-muted);
    font-size: .86rem;
}

.shrc-file-list {
    display: grid;
    gap: .85rem;
}

.shrc-file-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.1rem;
    border: 1px solid var(--shrc-border);
    border-radius: 16px;
    background: var(--shrc-card, #fff);
    box-shadow: 0 6px 20px rgba(0, 0, 0, .065);
}

.shrc-file-card__icon {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 13px;
    background: rgba(31, 64, 104, .1);
    color: var(--shrc-blue);
    font-size: 1.65rem;
    font-weight: 850;
}

.shrc-file-card__title {
    margin: 0;
    color: var(--shrc-blue);
    font-size: 1.08rem;
    font-weight: 850;
}

.shrc-file-card__description {
    margin-top: .35rem;
    color: var(--shrc-muted);
    line-height: 1.5;
}

.shrc-file-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .8rem;
    margin-top: .45rem;
    color: var(--shrc-muted);
    font-size: .84rem;
}

.shrc-file-card__meta span + span::before {
    content: "·";
    margin-right: .8rem;
}

.shrc-download-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: .5rem 1rem;
    border: 1px solid var(--shrc-blue-2);
    border-radius: 999px;
    background: var(--shrc-blue-2);
    color: #fff !important;
    font-weight: 800;
    line-height: 1;
    text-decoration: none !important;
    white-space: nowrap;
}

.shrc-download-button:hover {
    border-color: var(--shrc-accent);
    background: var(--shrc-accent);
    color: #111 !important;
}

.shrc-download-button.is-disabled {
    cursor: not-allowed;
    opacity: .55;
}

.shrc-downloads__empty {
    margin: 0;
    padding: 1rem;
    border: 1px solid var(--shrc-border);
    border-radius: 14px;
    color: var(--shrc-muted);
}

.shrc-downloads__footer {
    margin-top: 1.5rem;
}

.shrc-downloads__footer .shrc-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: .5rem 1rem;
    border: 1px solid var(--shrc-border);
    border-radius: 999px;
    background: var(--shrc-card, #fff);
    color: var(--shrc-blue) !important;
    font-weight: 750;
    line-height: 1;
    text-decoration: none !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .07);
}

.shrc-downloads__footer .shrc-back:hover {
    border-color: var(--shrc-accent);
    background: var(--shrc-accent);
    color: #111 !important;
}

html[data-theme="dark"] .shrc-production-card,
html[data-theme="dark"] .shrc-file-card,
html[data-theme="dark"] .shrc-downloads__footer .shrc-back {
    background:
        linear-gradient(135deg, rgba(255,255,255,.035), rgba(217,154,0,.07)),
        var(--shrc-card);
}

html[data-theme="dark"] .shrc-downloads__title,
html[data-theme="dark"] .shrc-downloads__page-heading,
html[data-theme="dark"] .shrc-file-card__title,
html[data-theme="dark"] .shrc-production-card,
html[data-theme="dark"] .shrc-downloads__footer .shrc-back {
    color: #fff !important;
}

@media (max-width: 700px) {
    .shrc-file-card {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .shrc-file-card__action {
        grid-column: 1 / -1;
    }

    .shrc-download-button {
        width: 100%;
    }

    .shrc-downloads__heading-row {
        align-items: flex-start;
        flex-direction: column;
        gap: .25rem;
    }
}

.shrc-back-button{
    display:inline-flex;
    align-items:center;
    gap:.5rem;

    padding:.8rem 1.4rem;
    border-radius:999px;

    background:#294a78;
    color:#fff !important;

    text-decoration:none;
    font-weight:700;

    transition:.2s;
}

.shrc-back-button:hover{
    background:#35609b;
    color:#fff !important;
    transform:translateY(-1px);
}

/* jDownloads: Zurück-Button sicher blau darstellen */

.jd-item-page.shrc-downloads .shrc-downloads__footer {
    display: flex !important;
    justify-content: flex-start !important;
    margin-top: 2rem !important;
}

.jd-item-page.shrc-downloads .shrc-downloads__footer > a.shrc-back {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .5rem !important;

    min-width: 140px !important;
    min-height: 46px !important;
    padding: .7rem 1.35rem !important;

    border: 0 !important;
    border-radius: 999px !important;

    background-color: #244a78 !important;
    background-image: none !important;
    color: #fff !important;

    font: inherit !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-decoration: none !important;

    box-shadow: 0 6px 18px rgba(0, 0, 0, .16) !important;
}

.jd-item-page.shrc-downloads .shrc-downloads__footer > a.shrc-back::before {
    content: "←";
    display: inline-block;
}

.jd-item-page.shrc-downloads .shrc-downloads__footer > a.shrc-back:hover,
.jd-item-page.shrc-downloads .shrc-downloads__footer > a.shrc-back:focus {
    background-color: #35659d !important;
    background-image: none !important;
    color: #fff !important;
    text-decoration: none !important;
    transform: translateY(-1px);
}

/* =========================================================
   SHRC jDownloads Override – moderne Produktionsansicht
   ========================================================= */

.shrc-downloads {
    width: 100%;
    color: var(--shrc-text);
}

.shrc-downloads__section {
    width: 100%;
}

.shrc-downloads__hero {
    margin-bottom: 1.6rem;
}

.shrc-downloads__eyebrow {
    margin: 0 0 .35rem;
    color: var(--shrc-accent);
    font-size: .82rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.shrc-downloads__title {
    margin: 0;
    color: var(--shrc-blue);
    font-family: inherit;
    font-size: clamp(2rem, 4.2vw, 3.1rem);
    font-weight: 900;
    line-height: 1.05;
}

.shrc-downloads__intro {
    max-width: 760px;
    margin: .75rem 0 0;
    color: var(--shrc-muted);
    font-size: 1.05rem;
    line-height: 1.6;
}

.shrc-downloads__breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem;
    margin: 0 0 1.6rem;
    color: var(--shrc-muted);
    font-size: .95rem;
}

.shrc-downloads__breadcrumb a {
    color: var(--shrc-blue);
    font-weight: 700;
    text-decoration: none;
}

.shrc-downloads__breadcrumb strong {
    color: var(--shrc-blue);
}

/* Produktionskacheln */

.shrc-production-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1rem;
}

.shrc-production-card {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-height: 132px;
    padding: 1.3rem;
    border: 1px solid var(--shrc-border);
    border-radius: 20px;
    background:
        linear-gradient(135deg, rgba(31, 64, 104, .08), rgba(217, 154, 0, .08)),
        var(--shrc-card, #fff);
    color: var(--shrc-blue) !important;
    text-decoration: none !important;
    box-shadow: 0 9px 25px rgba(0, 0, 0, .08);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.shrc-production-card:hover {
    transform: translateY(-3px);
    border-color: var(--shrc-accent);
    box-shadow: 0 14px 32px rgba(0, 0, 0, .13);
}

.shrc-production-card__icon {
    display: grid;
    flex: 0 0 58px;
    width: 58px;
    height: 58px;
    place-items: center;
    border-radius: 16px;
    background: var(--shrc-blue-2);
    color: #fff;
    font-size: 2rem;
    font-weight: 900;
}

.shrc-production-card__content,
.shrc-production-card__title,
.shrc-production-card__count {
    display: block;
}

.shrc-production-card__content {
    min-width: 0;
}

.shrc-production-card__title {
    font-size: 1.2rem;
    line-height: 1.25;
}

.shrc-production-card__count {
    margin-top: .3rem;
    color: var(--shrc-muted);
    font-size: .88rem;
}

/* Dateiliste */

.shrc-file-list {
    overflow: hidden;
    border: 1px solid var(--shrc-border);
    border-radius: 18px;
    background: var(--shrc-card, #fff);
    box-shadow: 0 8px 26px rgba(0, 0, 0, .07);
}

.shrc-file-row {
    display: grid;
    grid-template-columns: 96px minmax(220px, 1.8fr) minmax(90px, .65fr) minmax(110px, .75fr) minmax(110px, .8fr) auto;
    align-items: center;
    gap: 1.25rem;
    min-height: 116px;
    padding: 1rem 1.1rem;
    background: var(--shrc-card, #fff);
}

.shrc-file-row + .shrc-file-row {
    border-top: 1px solid var(--shrc-border);
}

.shrc-file-row:hover {
    background: rgba(31, 64, 104, .025);
}

.shrc-file-badge {
    display: grid;
    width: 78px;
    height: 78px;
    place-items: center;
    border-radius: 12px;
    color: #fff;
    text-align: center;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.18);
}

.shrc-file-badge__symbol {
    display: block;
    width: 30px;
    height: 24px;
    margin-bottom: -5px;
    opacity: .95;
}

.shrc-file-badge__symbol::before {
    display: block;
    font-size: 1.8rem;
    line-height: 1;
}

.shrc-file-badge strong {
    font-size: .88rem;
    letter-spacing: .04em;
}

.shrc-file-badge--audio {
    background: linear-gradient(145deg, #6d28d9, #4c1d95);
}

.shrc-file-badge--wave {
    background: linear-gradient(145deg, #1d4ed8, #1e3a8a);
}

.shrc-file-badge--image {
    background: linear-gradient(145deg, #334155, #111827);
}

.shrc-file-badge--pdf {
    background: linear-gradient(145deg, #ef4444, #b91c1c);
}

.shrc-file-badge--archive {
    background: linear-gradient(145deg, #f59e0b, #d97706);
}

.shrc-file-badge--file {
    background: linear-gradient(145deg, #64748b, #334155);
}

.shrc-file-badge--audio .shrc-file-badge__symbol::before {
    content: "♪";
}

.shrc-file-badge--wave .shrc-file-badge__symbol::before {
    content: "≋";
}

.shrc-file-badge--image .shrc-file-badge__symbol::before {
    content: "▣";
}

.shrc-file-badge--pdf .shrc-file-badge__symbol::before {
    content: "⌁";
}

.shrc-file-badge--archive .shrc-file-badge__symbol::before {
    content: "▤";
}

.shrc-file-badge--file .shrc-file-badge__symbol::before {
    content: "↓";
}

.shrc-file-row__name h2 {
    margin: 0;
    color: var(--shrc-blue);
    font-size: 1.05rem;
    font-weight: 850;
    line-height: 1.3;
}

.shrc-file-row__name span {
    display: block;
    margin-top: .25rem;
    color: var(--shrc-muted);
    font-size: .88rem;
}

.shrc-file-row__meta {
    min-width: 0;
    color: var(--shrc-text);
    font-size: .92rem;
}

.shrc-file-row__label {
    display: block;
    margin-bottom: .2rem;
    color: var(--shrc-muted);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.shrc-file-row__meta strong {
    font-weight: 650;
    white-space: nowrap;
}

.shrc-file-row__action {
    display: flex;
    justify-content: flex-end;
}

.shrc-download-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    min-height: 44px;
    padding: .65rem 1.05rem;
    border: 1px solid var(--shrc-blue-2);
    border-radius: 10px;
    background: var(--shrc-blue-2);
    color: #fff !important;
    font-weight: 800;
    line-height: 1;
    text-decoration: none !important;
    white-space: nowrap;
    box-shadow: 0 6px 16px rgba(31, 64, 104, .18);
    transition: transform .18s ease, background .18s ease, color .18s ease;
}

.shrc-download-button:hover {
    transform: translateY(-1px);
    border-color: var(--shrc-accent);
    background: var(--shrc-accent);
    color: #111 !important;
}

.shrc-download-button.is-disabled {
    cursor: not-allowed;
    opacity: .55;
}

.shrc-downloads__empty {
    margin: 0;
    padding: 1rem;
    border: 1px solid var(--shrc-border);
    border-radius: 14px;
    color: var(--shrc-muted);
}

/* Zurück */

.shrc-downloads__footer {
    display: flex;
    justify-content: flex-end;
    margin-top: 1.5rem;
}

.jd-item-page.shrc-downloads .shrc-downloads__footer > a.shrc-back {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .5rem !important;
    min-width: 140px !important;
    min-height: 46px !important;
    padding: .7rem 1.35rem !important;
    border: 0 !important;
    border-radius: 999px !important;
    background-color: #244a78 !important;
    background-image: none !important;
    color: #fff !important;
    font: inherit !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .16) !important;
}

.jd-item-page.shrc-downloads .shrc-downloads__footer > a.shrc-back::before {
    content: "←";
    display: inline-block;
}

.jd-item-page.shrc-downloads .shrc-downloads__footer > a.shrc-back:hover,
.jd-item-page.shrc-downloads .shrc-downloads__footer > a.shrc-back:focus {
    transform: translateY(-1px);
    background-color: #35659d !important;
    color: #fff !important;
}

/* Dark Mode */

html[data-theme="dark"] .shrc-downloads__title,
html[data-theme="dark"] .shrc-downloads__breadcrumb strong,
html[data-theme="dark"] .shrc-downloads__breadcrumb a,
html[data-theme="dark"] .shrc-file-row__name h2,
html[data-theme="dark"] .shrc-production-card {
    color: #fff !important;
}

html[data-theme="dark"] .shrc-file-list,
html[data-theme="dark"] .shrc-file-row,
html[data-theme="dark"] .shrc-production-card {
    background:
        linear-gradient(135deg, rgba(255,255,255,.025), rgba(217,154,0,.045)),
        var(--shrc-card);
}

html[data-theme="dark"] .shrc-file-row:hover {
    background: rgba(255,255,255,.035);
}

/* Responsive */

@media (max-width: 1050px) {
    .shrc-file-row {
        grid-template-columns: 82px minmax(200px, 1.5fr) minmax(85px, .6fr) minmax(105px, .7fr) auto;
    }

    .shrc-file-row__meta--hits {
        display: none;
    }
}

@media (max-width: 780px) {
    .shrc-file-row {
        grid-template-columns: 68px minmax(0, 1fr) auto;
        gap: .85rem;
        min-height: 96px;
        padding: .9rem;
    }

    .shrc-file-badge {
        width: 60px;
        height: 60px;
    }

    .shrc-file-row__meta {
        display: none;
    }

    .shrc-file-row__action {
        grid-column: 1 / -1;
    }

    .shrc-download-button {
        width: 100%;
    }

    .shrc-downloads__footer {
        justify-content: stretch;
    }

    .jd-item-page.shrc-downloads .shrc-downloads__footer > a.shrc-back {
        width: 100% !important;
    }
}