/* Gemeinsame Farbwelt für öffentlichen Relaunch und geschützten Bereich. */
:root{color-scheme:light;--sen-bg:#f4f6fb;--sen-sidebar:#e9edf5;--sen-surface:#fff;--sen-border:#dfe5f0;--sen-text:#243148;--sen-muted:#53637d;--sen-accent:#173f84;--sen-accent-hover:#15366e;--sen-accent-soft:#d7e5fb;--sen-lavender:#e6eaff;--sen-heading:#243675}
body.address-modern{background:var(--sen-bg);color:var(--sen-text)}
body.address-modern a{color:#1954a0}
.private-header{background:var(--sen-surface);border-bottom-color:#dce3ee;box-shadow:none}
.private-brand{color:#263754}
.private-brand small,.page-heading p,.muted,.subline,.form-help{color:var(--sen-muted)}
.brand-mark{background:#dfe6ff;color:var(--sen-heading)}
.private-brand .brand-icon{display:block;flex:none;width:2.4rem;height:2.4rem}
.private-nav a{color:#30405b}
.private-nav a:hover,.private-nav a:focus-visible{background:#d9e3f3;color:var(--sen-accent)}
.private-nav a[aria-current="page"]{background:var(--sen-accent-soft);color:var(--sen-accent)}
.page-heading h1,.profile-card h2{color:#263754}
.eyebrow{color:var(--sen-accent)}
.panel,.auth-card,.profile-card,.user-editor,.user-list{background:var(--sen-surface);border-color:var(--sen-border);box-shadow:none}
.panel h2{color:var(--sen-heading)}
.profile-card{background:linear-gradient(120deg,#fff,#f3f5ff)}
.profile-avatar,.account-avatar{background:var(--sen-lavender);color:var(--sen-heading)}
.button{background:#e3eafe;border-color:#b9c9ec;color:var(--sen-accent)}
.button:hover{background:#d7e5fb;border-color:#90b0df;color:var(--sen-accent-hover)}
.button-secondary{background:#fff;border-color:#c7d5ea;color:var(--sen-accent)}
.button-secondary:hover{background:#eaf0fb;color:var(--sen-accent-hover)}
.button-quiet{background:#f1f4fa;border-color:var(--sen-border);color:#30405b}
.button-quiet:hover{background:#e8eef8;color:var(--sen-accent)}
.button-danger{background:#fff;color:#a52a3e;border-color:#e9b1bb}
.button-danger:hover{background:#fff3f5;color:#8a172d;border-color:#e9b1bb}
.field input,.field select,.field textarea,.search-input{border-color:#c8d3e3;color:var(--sen-text)}
.field input:focus,.field select:focus,.field textarea:focus,.search-input:focus{border-color:var(--sen-accent);outline-color:#d7e5fb}
.filter-details summary{color:var(--sen-accent)}
.flag-group label,.filter-chip{background:#f4f6fb;border-color:var(--sen-border);color:#30405b}
.flag-group input,.checkbox-line input{accent-color:var(--sen-accent)}
.filter-chip span,.pill,.code-badge.role{background:var(--sen-lavender);color:var(--sen-heading)}
.filter-chip:has(input:checked){background:var(--sen-accent-soft);border-color:#7ba0d6;color:var(--sen-accent)}
.filter-chip:has(input:checked) span{background:var(--sen-accent);color:#fff}
.data-table th{background:#eef1ff;color:#425270}
.data-table th,.data-table td{border-bottom-color:var(--sen-border)}
.data-table tbody tr:nth-child(even) td{background:#f8f9fd}
.data-table tr:hover td{background:#eaf0fa}
.person-name{color:#263754}
.stat-card{background:#f4f6ff;border-color:var(--sen-border)}
.notice{background:#eaf0fb;color:#244675}
.notice-error{background:#fff0f1;color:#91253a}
.notice-success{background:#eaf7ee;color:#1d6337}
.auth-content{background:radial-gradient(circle at 20% 0%,#e6eaff 0,transparent 45%),var(--sen-bg)}
.auth-brand{color:var(--sen-heading)}
.account-menu>summary{background:#f7f9fd;border-color:var(--sen-border);color:#263754}
.account-menu>summary:hover,.account-menu[open]>summary{background:#eaf0fb;border-color:#a8c1e4}
.account-dropdown{border-color:var(--sen-border)}
.account-dropdown a:hover,.account-dropdown button:hover{background:#eaf0fb}
:focus-visible,.account-menu>summary:focus-visible,.filter-chip:has(input:focus-visible){outline-color:#6d95d4}
/* Links als Schaltflächen brauchen Vorrang vor der allgemeinen Linkfarbe. */
body.address-modern a.button{color:var(--sen-accent)}
body.address-modern a.button:hover,body.address-modern a.button:focus-visible{color:var(--sen-accent-hover)}
body.address-modern a.button-secondary,body.address-modern a.button-quiet{color:var(--sen-accent)}
body.address-modern a.button-secondary:hover,body.address-modern a.button-quiet:hover{color:var(--sen-accent-hover)}
body.address-modern a.button-danger,body.address-modern a.button-danger:hover{color:#a52a3e}
body.address-modern a.private-brand{color:#263754}
body.address-modern .private-nav a{color:#30405b}
body.address-modern .private-nav a:hover,body.address-modern .private-nav a:focus-visible,body.address-modern .private-nav a[aria-current="page"]{color:var(--sen-accent)}
body.address-modern .account-dropdown a{color:#263e5d}
/* Login und Passwort-Reset erhalten dieselbe Kopfzeile wie der öffentliche Relaunch. */
.auth-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:72px;padding:12px clamp(20px,3vw,56px);background:#fff;border-bottom:1px solid #dce3ee}
body.address-modern .auth-header a{color:#263754;text-decoration:none;font-size:clamp(22px,2vw,28px);font-weight:750;letter-spacing:-.02em}
body.address-modern .auth-header a{display:inline-flex;align-items:center;gap:.65rem}
.auth-header img{display:block;width:38px;height:38px}
.auth-header span{color:#53637d;font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.auth-content{min-height:calc(100dvh - 72px);background:var(--sen-bg)}
.auth-card{padding:0 0 1.5rem;overflow:hidden;border-radius:12px}
.auth-card>.auth-brand{display:none}
.auth-card>.eyebrow{display:none}
.auth-card>small{display:none}
.auth-card h1{margin:0 0 1.4rem;padding:18px 24px;background:var(--sen-lavender);color:var(--sen-heading);font-size:clamp(1.35rem,2vw,1.7rem)}
.auth-card>p,.auth-card>form,.auth-card>.auth-links,.auth-card>.notice{margin-left:24px;margin-right:24px}
.auth-card>p{color:var(--sen-muted)}
.auth-card>form{margin-top:1.3rem}
.auth-card .button{background:#e3eafe;border-color:#b9c9ec;color:var(--sen-accent);font-weight:700}
.auth-card .button:hover,.auth-card .button:focus-visible{background:#d7e5fb;border-color:#90b0df;color:var(--sen-accent-hover)}
body.address-modern .auth-card a.button{color:var(--sen-accent)}
@media(max-width:520px){.auth-header{min-height:64px;padding:10px 18px}.auth-header span{font-size:.68rem}.auth-content{min-height:calc(100dvh - 64px);padding:16px}.auth-card h1{padding:16px 18px}.auth-card>p,.auth-card>form,.auth-card>.auth-links,.auth-card>.notice{margin-left:18px;margin-right:18px}}
