/* Gemeinsame Bedienoberflaeche. Farben und Schriften stammen aus den Design-Tokens. */
:root {
    --radius-sm:0;--radius-md:0;--radius-lg:0;--radius-xl:0;--radius-2xl:0;--radius-3xl:0;
    --ux-radius-card:0;--shadow-sm:none;--shadow-md:none;--shadow-lg:none;--shadow-xl:none;
    --shadow-2xl:none;--ux-shadow-sm:none;--ux-shadow-md:none;
}
/* Meldungen bleiben Text und behalten ihre Live-Regionen. */
:is([role="status"],[role="alert"],.callout,.info,.warning,.danger,.highlight,.note,
    .insight-box,.rule-block,.success-message,.error-message,.form-status,.form-message,
    .access-notice,.product-access-notice,.auth-card,.info-box,.notice) {
    border:0!important;border-radius:0!important;box-shadow:none!important;
    background:transparent!important;color:var(--color-text-primary,inherit);
}
:is([role="status"],[role="alert"],.callout,.info,.warning,.danger,.highlight,.note,.insight-box,.rule-block) {
    padding:0;margin-block:var(--space-4,1rem);
}
:is([role="status"],[role="alert"]):empty {display:none;}
:is(.card,.panel,.form-card,.product-card,.article-card,.dimension-card,.dimension-intro,
    .dimension-overview-card,.module-summary-card,.reflection-card,.protected-section-login,
    .product-login-form,.user-auth-form,.recommendation-box,.info-footer,.product-details,
    .karte,.start-angebot,.profil-block,.zugangs-gate,.vv-karte) {
    border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;
}
:is(blockquote,.reply-indicator,.parent-message-quote) {border-inline-start:0!important;border-left:0!important;}
:is([class$="-card"],[class*="-card "],.toc,.btn,.suite-nav-toggle,.suite-nav-dropdown) {border-radius:0!important;box-shadow:none!important;}
:is(button,.gate-cta,.chat-popover-panel,li.is-active,.video-container>div) {border-radius:0!important;box-shadow:none!important;}
.content.vv-breit {inline-size:100%;min-inline-size:0;grid-template-columns:minmax(0,1fr);}
.vv-karte {min-inline-size:0;}
/* Ein vorhandener Feldrahmen zeigt den Fokus, ohne zusaetzlichen Halo. */
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="image"]),textarea,select) {
    border:1px solid var(--color-border,#d0d0d0);border-radius:0!important;box-shadow:none!important;
}
:where(input,textarea,select):is(:focus,:focus-visible) {
    border-color:var(--color-primary,#21588f)!important;border-width:1px!important;
    outline:none!important;box-shadow:none!important;
}
:where(input,textarea,select)[aria-invalid="true"]:not(:focus) {border-color:var(--color-error,#dc3545);}
/* Zentraler Login: zwei Schritte, sechs einzelne Ziffern. */
.auth {max-inline-size:var(--ux-text-max,70ch);margin-inline:auto;}
.auth [hidden] {display:none!important;}
.auth-flow {margin-block-start:var(--space-6,1.5rem);}
.auth .form-group {max-inline-size:32rem;}
.auth input {background:var(--color-bg-primary,#fff);color:var(--color-text-primary,#111);}
.auth-code.form-group {display:block;border:0;padding:0;margin:0 0 var(--space-4,1rem);min-inline-size:0;inline-size:100%;max-inline-size:100%;}
.auth-code legend {font-weight:600;margin-block-end:var(--space-2,.5rem);}
.auth-code-fields {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(.25rem,1vw,.5rem);inline-size:19rem;max-inline-size:100%;}
.auth .auth-code-digit {box-sizing:border-box;min-inline-size:0;inline-size:100%;max-inline-size:100%;block-size:2.75rem;min-block-size:44px;padding-inline:0;text-align:center;font-size:var(--font-size-ui-title,1.25rem);font-variant-numeric:tabular-nums;}
.auth-code-label {position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.auth .hint {display:block;margin-block-start:var(--space-2,.5rem);}
.auth-msg {margin-block:var(--space-4,1rem);}
.auth-alternatives {display:flex;flex-wrap:wrap;gap:var(--space-4,1rem);margin-block-start:var(--space-4,1rem);}
.auth .btn-link {display:inline-flex;align-items:center;min-block-size:44px;padding:0;border:0;background:transparent;color:var(--color-link,var(--color-primary,#21588f));font:inherit;text-decoration:underline;cursor:pointer;}
.auth .btn-link:disabled {color:var(--color-text-secondary,#666);cursor:default;}
.product-cards {list-style:none;padding:0;display:grid;gap:var(--space-3,.75rem);grid-template-columns:repeat(auto-fill,minmax(min(16rem,100%),1fr));}
.product-card {padding:var(--space-4,1rem);}
.product-card h3 {margin:0 0 var(--space-2,.5rem);font-size:var(--font-size-ui-title);}
.product-meta {color:var(--color-text-secondary,#666);font-size:var(--font-size-meta);margin:0;}
.profile-nav {margin-block-start:var(--space-6,1.5rem);padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-6,1.5rem);}
.suite-navigation .suite-user-view {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.25em 1em;padding:.25em 1.25em;border-bottom:1px solid var(--color-border,#d0d0d0);overflow-wrap:anywhere;}
.suite-user-view a {display:inline-flex;align-items:center;min-height:44px;color:var(--color-link,#21588f);font:inherit;}
