/* _content/AI4Cert/Components/Account/Shared/AccountLayout.razor.rz.scp.css */
/* Nach PPS_Schreml Identity/css/site.css: Fusszeile unten, Inhalt darueber. */

/* Logo oben wie login_logo.png (620 px) in PPS_Schreml */
.account-logo[b-yx11nhpeoo] {
    margin-top: .5rem;
}

    .account-logo img[b-yx11nhpeoo] {
        max-width: 100%;
        height: auto;
    }

.box-shadow[b-yx11nhpeoo] {
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

/* Seite als Spalte, Fusszeile rutscht ans Ende (statt position:absolute wie bei PPS,
   weil html/body hier nicht pro Layout gestylt werden koennen). */
.account-seite[b-yx11nhpeoo] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

    .account-seite > .container[b-yx11nhpeoo] {
        flex: 1 0 auto;
    }

.account-login[b-yx11nhpeoo] {
    display: flex;
    align-items: center;
    gap: .5rem;
}

/* Icon steckt immer im Markup, ist aber nur auf dem Handy sichtbar - siehe OeffentlichLayout,
   gleiches Prinzip. */
.account-login-icon[b-yx11nhpeoo] {
    display: none;
}

/* "Wozu"-Pille wie .top-row-wozu in MainLayout.razor.css (gleiche Werte, wegen CSS-Isolation hier nochmal). */
.account-wozu[b-yx11nhpeoo] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    background: #F59B23;
    color: #143A5E;
    font-weight: 600;
    font-size: .9rem;
    line-height: 1;
    padding: .45rem .85rem;
    border-radius: 2rem;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 .15rem .5rem rgba(245, 155, 35, .35);
    transition: background-color .15s ease, box-shadow .15s ease;
}

    .account-wozu:hover[b-yx11nhpeoo],
    .account-wozu:focus[b-yx11nhpeoo] {
        background: #E08A12;
        color: #143A5E;
        text-decoration: none;
        box-shadow: 0 .2rem .7rem rgba(245, 155, 35, .5);
    }

.account-wozu-zeichen[b-yx11nhpeoo] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.3rem;
    height: 1.3rem;
    border-radius: 50%;
    background: #fff;
    color: #143A5E;
    font-size: .85rem;
    font-weight: 700;
    line-height: 1;
    flex: 0 0 auto;
}

@media (max-width: 575.98px) {
    .account-wozu-text[b-yx11nhpeoo] {
        display: none;
    }

    .account-login-text[b-yx11nhpeoo] {
        display: none;
    }

    .account-login-icon[b-yx11nhpeoo] {
        display: inline-flex;
    }

    .account-login-link[b-yx11nhpeoo] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 2rem;
        height: 2rem;
    }
}

#blazor-error-ui[b-yx11nhpeoo] {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-yx11nhpeoo] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* _content/AI4Cert/Components/Layout/Fusszeile.razor.rz.scp.css */
/* Fusszeile: heller Blaugrau-Ton statt Navy (Johann 16.09.2026: Navy war zu hart gegen die weisse
   Kopfzeile), Schrift im Navy der Wortmarke. Breite wie die Kopfleiste (.oeff-nav-inhalt). */
.fuss[b-mexy3dzfcw] {
    background: #f1f4f7;
    border-top: 1px solid #dde3e9;
    color: #3a586c;
    font-size: .9rem;
    line-height: 1.55;
}

.fuss a[b-mexy3dzfcw] {
    color: #3a586c;
    text-decoration: none;
}

.fuss a:hover[b-mexy3dzfcw],
.fuss a:focus[b-mexy3dzfcw] {
    color: #2F80ED;
    text-decoration: underline;
}

.fuss-inhalt[b-mexy3dzfcw] {
    max-width: 1250px;
    margin: 0 auto;
    padding: 2.5rem 1.5rem 1.75rem;
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr;
    gap: 2.5rem;
}

.fuss h4[b-mexy3dzfcw] {
    color: #1F3B4D;
    font-size: .8rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    margin: 0 0 .75rem;
}

.fuss ul[b-mexy3dzfcw] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.fuss li[b-mexy3dzfcw] {
    margin: 0 0 .5rem;
}

.fuss-logo[b-mexy3dzfcw] {
    height: 34px;
    width: auto;
    display: block;
    margin-bottom: .75rem;
}

.fuss-claim[b-mexy3dzfcw] {
    color: #1F3B4D;
    margin: 0 0 .9rem;
}

.fuss-angebot[b-mexy3dzfcw] {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin: 0;
    font-size: .85rem;
    color: #5b6b78;
}

.fuss-dts[b-mexy3dzfcw] {
    display: inline-flex;
    align-items: center;
}

.fuss-dts img[b-mexy3dzfcw] {
    height: 16px;
    width: auto;
    display: block;
}

.fuss-sozial[b-mexy3dzfcw] {
    display: flex;
    gap: .6rem;
    margin-top: 1rem;
}

.fuss-sozial a[b-mexy3dzfcw] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #c3ccd5;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #1F3B4D;
}

.fuss-sozial a:hover[b-mexy3dzfcw],
.fuss-sozial a:focus[b-mexy3dzfcw] {
    background: #2F80ED;
    border-color: #2F80ED;
    color: #fff;
    text-decoration: none;
}

.fuss-sozial svg[b-mexy3dzfcw] {
    width: 18px;
    height: 18px;
    fill: currentColor;
}

.fuss-copyright[b-mexy3dzfcw] {
    margin: 1rem 0 0;
    font-size: .85rem;
    color: #5b6b78;
}

.fuss-sprache[b-mexy3dzfcw] {
    margin-top: .75rem;
}

.fuss-sprache a.aktiv[b-mexy3dzfcw] {
    color: #1F3B4D;
    font-weight: 600;
}

/* Hinweis auf den englischen Seiten, dass die Rechtstexte bisher nur deutsch sind */
.fuss-hinweis[b-mexy3dzfcw] {
    margin-top: .5rem;
    font-size: .8rem;
    font-style: italic;
}

/* Cookie-Hinweis (16.09.2026): erst eine schmale Leiste am unteren Rand - die hat Johann auf
   dem Bildschirm glatt uebersehen. Jetzt ein Kasten in der Bildschirmmitte auf leicht abgedunkeltem
   Grund. Die Abdunkelung ist nur optisch (pointer-events: none): die Seite bleibt dahinter
   scrollbar und klickbar, auch die Datenschutzerklaerung - kein Vorhang, nur ein Blickfang. */
.cookie-hinweis[b-mexy3dzfcw] {
    position: fixed;
    inset: 0;
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(31, 59, 77, .28);
    pointer-events: none;
}

.cookie-hinweis[hidden][b-mexy3dzfcw] {
    display: none;
}

.cookie-hinweis-inhalt[b-mexy3dzfcw] {
    pointer-events: auto;
    max-width: 640px;
    width: 100%;
    background: #fff;
    border: 1px solid #dde3e9;
    border-top: 4px solid #1F3B4D;
    border-radius: .5rem;
    box-shadow: 0 12px 40px rgba(31, 59, 77, .35);
    padding: 1.5rem 1.75rem;
    color: #1F3B4D;
    font-size: .95rem;
    line-height: 1.55;
}

.cookie-hinweis p[b-mexy3dzfcw] {
    margin: 0 0 1.1rem;
}

.cookie-hinweis a[b-mexy3dzfcw] {
    color: #2F80ED;
    text-decoration: underline;
}

.cookie-knoepfe[b-mexy3dzfcw] {
    display: flex;
    gap: .75rem;
}

.cookie-knoepfe .btn[b-mexy3dzfcw] {
    flex: 1 1 0;
    white-space: nowrap;
}

/* Handy: Spalten untereinander, linksbuendig, mehr Luft zum Antippen. */
@media (max-width: 575.98px) {
    .fuss-inhalt[b-mexy3dzfcw] {
        grid-template-columns: 1fr;
        gap: 1.75rem;
        padding: 2rem 1rem 1.25rem;
    }

    .fuss li[b-mexy3dzfcw] {
        margin-bottom: .75rem;
        font-size: 1rem;
    }

    .cookie-hinweis-inhalt[b-mexy3dzfcw] {
        padding: 1.25rem 1rem;
    }

    .cookie-knoepfe[b-mexy3dzfcw] {
        flex-direction: column;
    }
}
/* _content/AI4Cert/Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-g9q7fuud8t] {
    position: relative;
    display: flex;
    flex-direction: column;
}

.main[b-g9q7fuud8t] {
    flex: 1;
}

/* Seitenleiste: gleiche Grundfarbe wie PPS_Schreml, damit sich Johanns Anwendungen aehneln */
.sidebar[b-g9q7fuud8t] {
    background-color: rgb(200, 230, 230);
}

.top-row[b-g9q7fuud8t] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    height: 3.5rem;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
}

.top-row-titel[b-g9q7fuud8t] {
    display: flex;
    align-items: baseline;
    gap: 12px;
    white-space: nowrap;
}

.top-row-unterzeile[b-g9q7fuud8t] {
    color: #6c757d;
    font-size: .9rem;
}

/* Der eine Link, der auf jeder Seite da ist: "Wozu brauche ich das?".
   Seit 14.09.2026 in derselben orangen Pillenform wie auf den oeffentlichen Seiten
   (OeffentlichLayout.razor.css) - der Knopf soll ueberall gleich aussehen und auffallen.
   Schrift im Navy des Logos, nicht weiss: das ergibt rund 5,3:1 Kontrast auf diesem Orange. */
.top-row-wozu[b-g9q7fuud8t] {
    margin-left: 16px;
    align-self: center;
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    background: #F59B23;
    color: #143A5E;
    font-weight: 600;
    font-size: .9rem;
    line-height: 1;
    padding: .45rem .85rem;
    border-radius: 2rem;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 .15rem .5rem rgba(245, 155, 35, .35);
    transition: background-color .15s ease, box-shadow .15s ease;
}

    .top-row-wozu:hover[b-g9q7fuud8t],
    .top-row-wozu:focus[b-g9q7fuud8t] {
        background: #E08A12;
        color: #143A5E;
        text-decoration: none;
        box-shadow: 0 .2rem .7rem rgba(245, 155, 35, .5);
    }

.top-row-wozu-icon[b-g9q7fuud8t] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.3rem;
    height: 1.3rem;
    border-radius: 50%;
    background: #fff;
    color: #143A5E;
    font-size: .85rem;
    font-weight: 700;
    line-height: 1;
    flex: 0 0 auto;
}

.top-row-login[b-g9q7fuud8t] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
}

    .top-row-login[b-g9q7fuud8t]  a,
    .top-row-login[b-g9q7fuud8t]  .btn-link {
        white-space: nowrap;
    }

#blazor-error-ui[b-g9q7fuud8t] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-g9q7fuud8t] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

@media (max-width: 640.98px) {
    .top-row-unterzeile[b-g9q7fuud8t] {
        display: none;
    }

    .top-row-wozu[b-g9q7fuud8t] {
        margin-left: 8px;
    }
}

@media (min-width: 641px) {
    .page[b-g9q7fuud8t] {
        flex-direction: row;
    }

    .sidebar[b-g9q7fuud8t] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-g9q7fuud8t] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .main > div[b-g9q7fuud8t] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}
/* _content/AI4Cert/Components/Layout/NavMenu.razor.rz.scp.css */
.nav-logo[b-v9x0t2tala] {
    width: 100%;
    padding: 1rem 1rem .5rem 1rem;
}

    .nav-logo img[b-v9x0t2tala] {
        display: block;
        width: 100%;
        max-width: 218px;
        height: auto;
    }

.nav-menu[b-v9x0t2tala] {
    width: 100%;
}

.nav-menu-liste[b-v9x0t2tala] {
    width: 100%;
    margin: 0;
    padding: 0;
}

.menu-hinweis[b-v9x0t2tala] {
    margin: 1rem;
}

.nav-item[b-v9x0t2tala] {
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 14px;
    list-style: none;
}

    .nav-item:first-of-type[b-v9x0t2tala] {
        padding-top: .5rem;
    }

    .nav-item:last-of-type[b-v9x0t2tala] {
        padding-bottom: 1rem;
    }

/* Gruppenueberschrift ohne Link */
.nav-gruppe[b-v9x0t2tala] {
    padding: .9rem 1rem .25rem 1rem;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #4a6470;
}

.nav-item[b-v9x0t2tala]  a.nav-link {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 2.15rem;
    margin: 0;
    padding: 0.45rem 1rem;
    border: 0;
    border-radius: 0;
    background-color: transparent;
    color: black;
    line-height: 1.15rem;
    text-decoration: none;
    box-shadow: none;
    cursor: pointer;
}

    .nav-item[b-v9x0t2tala]  a.nav-link:hover,
    .nav-item[b-v9x0t2tala]  a.nav-link:focus {
        background-color: rgba(255, 255, 255, 0.20);
        color: black;
        outline: none;
    }

    /* Aktiver Punkt: nur der senkrechte Balken links, wie in PPS_Schreml */
    .nav-item[b-v9x0t2tala]  a.nav-link.active {
        background-color: transparent !important;
        color: black;
        box-shadow: inset 4px 0 0 #1f5f8b;
    }

/* Pflichtlinks unten in der Seitenleiste, auf jeder Seite erreichbar */
.nav-betrieb[b-v9x0t2tala] {
    margin-top: .5rem;
    font-size: 13px;
    font-weight: 600;
    color: #1f3a48;
    line-height: 1.3;
}

.nav-rechtliches[b-v9x0t2tala] {
    padding: 1rem;
    font-size: 12px;
    color: #4a6470;
}

    .nav-rechtliches a[b-v9x0t2tala] {
        color: #4a6470;
    }
/* _content/AI4Cert/Components/Layout/OeffentlichLayout.razor.rz.scp.css */
.oeff-seite[b-h1frxp68fw] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.oeff-nav[b-h1frxp68fw] {
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
    padding: .4rem 0;
}

/* Kopfleiste auf dieselbe Breite wie der Inhalt der Landingpage (1.250 px) */
.oeff-nav-inhalt[b-h1frxp68fw] {
    max-width: 1250px;
    margin: 0 auto;
    padding: 0 1.5rem;
    width: 100%;
    display: flex;
    align-items: center;
}

.oeff-logo[b-h1frxp68fw] {
    height: 34px;
    width: auto;
}

/* "Wozu brauche ich das?" in der Kopfleiste. Bewusst kein Bootstrap-Knopf: der soll auffallen,
   ohne dem blauen "Betrieb anmelden" auf der Seite die Aufmerksamkeit wegzunehmen. Orange wie im
   Flyer, Schrift im Navy des Logos - das ergibt ein Kontrastverhaeltnis von rund 5,3:1 und ist
   damit gut lesbar (weisse Schrift auf diesem Orange waere es nicht). */
.oeff-wozu[b-h1frxp68fw] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    background: #F59B23;
    color: #143A5E;
    font-weight: 600;
    font-size: .95rem;
    line-height: 1;
    padding: .5rem .9rem;
    border-radius: 2rem;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 .15rem .5rem rgba(245, 155, 35, .35);
    transition: background-color .15s ease, box-shadow .15s ease;
}

.oeff-wozu:hover[b-h1frxp68fw],
.oeff-wozu:focus[b-h1frxp68fw] {
    background: #E08A12;
    color: #143A5E;
    text-decoration: none;
    box-shadow: 0 .2rem .7rem rgba(245, 155, 35, .5);
}

/* Fragezeichen im hellen Kreis - macht den Knopf auf einen Blick als Hilfe erkennbar. */
.oeff-wozu-zeichen[b-h1frxp68fw] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    height: 1.35rem;
    border-radius: 50%;
    background: #fff;
    color: #143A5E;
    font-weight: 700;
    font-size: .9rem;
    flex: 0 0 auto;
}

/* Auf dem Handy ist neben Logo, Sprachumschalter und Anmelden kein Platz fuer den Text. Dann
   bleibt der Kreis mit dem Fragezeichen stehen - klein, aber weiterhin anklickbar, und der
   Titel (title-Attribut) erklaert ihn weiterhin. */
@media (max-width: 575.98px) {
    .oeff-wozu[b-h1frxp68fw] {
        padding: .35rem;
        gap: 0;
        font-size: 0;
    }
}

.oeff-login[b-h1frxp68fw] {
    display: flex;
    align-items: center;
    gap: .5rem;
}

/* Icon steckt immer im Markup, ist aber nur auf dem Handy sichtbar - auf breiten Bildschirmen
   reicht der Platz fuer den Text, der ist dort klarer als ein Icon allein. */
.oeff-login-icon[b-h1frxp68fw] {
    display: none;
}

/* Ab hier (wie beim "?"-Knopf oben) reicht der Platz neben Logo und "?"-Knopf nicht mehr fuer
   "Mitarbeiter registrieren"/"Anmelden" als Text. Statt umzubrechen oder abzuschneiden, zeigen die
   Links dann nur noch ihr Icon; den Linktext liest ein Screenreader weiterhin ueber "title". */
@media (max-width: 575.98px) {
    .oeff-login-text[b-h1frxp68fw] {
        display: none;
    }

    .oeff-login-icon[b-h1frxp68fw] {
        display: inline-flex;
    }

    .oeff-login-link[b-h1frxp68fw] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 2rem;
        height: 2rem;
    }
}

.oeff-inhalt[b-h1frxp68fw] {
    flex: 1 0 auto;
}

#blazor-error-ui[b-h1frxp68fw] {
    display: none;
}
/* _content/AI4Cert/Components/Layout/Seitenkopf.razor.rz.scp.css */
.seite-faden[b-w75nmzst39] {
    margin: .5rem 0 1.25rem 0;
}

.faden-kachel[b-w75nmzst39] {
    display: flex;
    gap: .9rem;
    align-items: flex-start;
    padding: .9rem 1.1rem;
    background: #f5f9fc;
    border: 1px solid #dfe8f0;
    border-left: 4px solid #2f6fd6;
    border-radius: .5rem;
    color: #3a4650;
    line-height: 1.5;
}

.faden-nr[b-w75nmzst39] {
    flex: 0 0 auto;
    width: 1.9rem;
    height: 1.9rem;
    border-radius: 50%;
    background: #2f6fd6;
    color: #fff;
    font-weight: 700;
    font-size: .95rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: .05rem;
}

.faden-text[b-w75nmzst39] {
    flex: 1 1 auto;
}
/* _content/AI4Cert/Components/Layout/Sprachumschalter.razor.rz.scp.css */
/* Kleiner Zweifach-Schalter, bewusst unauffaellig: Er steht in der Kopfleiste neben der
   Anmeldung und soll den Hauptknopf nicht verdraengen. */
.sprachwahl[b-b9po4o2acu] {
    display: inline-flex;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    overflow: hidden;
    margin-right: .75rem;
    white-space: nowrap;
}

.sprachwahl-knopf[b-b9po4o2acu] {
    padding: .15rem .45rem;
    font-size: .8rem;
    font-weight: 600;
    line-height: 1.4;
    color: #6c757d;
    text-decoration: none;
    background: #fff;
}

    .sprachwahl-knopf + .sprachwahl-knopf[b-b9po4o2acu] {
        border-left: 1px solid #ced4da;
    }

    .sprachwahl-knopf:hover[b-b9po4o2acu] {
        background: #f1f3f5;
        color: #2f6fd6;
    }

.sprachwahl-aktiv[b-b9po4o2acu] {
    background: #2f6fd6;
    color: #fff;
}

    .sprachwahl-aktiv:hover[b-b9po4o2acu] {
        background: #2f6fd6;
        color: #fff;
    }
