:root {
  --bg:#f6f8fb; --bg2:#eef3f8; --surface:rgba(255,255,255,.82); --surface-2:#fff; --text:#111827; --muted:#64748b; --muted-2:#94a3b8; --line:#dbe4ef; --line-soft:rgba(15,23,42,.08);
  --sidebar:#0b1220; --sidebar-2:#111827; --sidebar-text:#e5edf8; --primary:#1459f5; --primary-2:#14b8a6; --success:#059669; --danger:#dc2626; --warning:#d97706;
  --shadow:0 18px 60px rgba(15,23,42,.10); --shadow-sm:0 8px 24px rgba(15,23,42,.08); --radius:22px; --radius-sm:14px; --sidebar-width:292px; color-scheme: light;
}
@media (prefers-color-scheme: dark){body[data-theme="system"]{--bg:#080d16;--bg2:#0c1422;--surface:rgba(17,24,39,.78);--surface-2:#111827;--text:#f8fafc;--muted:#a8b4c5;--muted-2:#738096;--line:#243145;--line-soft:rgba(255,255,255,.08);--sidebar:#050814;--sidebar-2:#09111f;color-scheme:dark}}
body[data-theme="dark"]{--bg:#080d16;--bg2:#0c1422;--surface:rgba(17,24,39,.78);--surface-2:#111827;--text:#f8fafc;--muted:#a8b4c5;--muted-2:#738096;--line:#243145;--line-soft:rgba(255,255,255,.08);--sidebar:#050814;--sidebar-2:#09111f;color-scheme:dark}
*{box-sizing:border-box} html{min-height:100%} body{margin:0;min-height:100vh;color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;background:radial-gradient(circle at 10% -10%,rgba(20,89,245,.18),transparent 34rem),radial-gradient(circle at 92% 0,rgba(20,184,166,.16),transparent 30rem),linear-gradient(135deg,var(--bg),var(--bg2));letter-spacing:-.015em} body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,#000,transparent 86%)} a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-width) 1fr;position:relative;z-index:1}.sidebar{position:sticky;top:0;height:100vh;padding:18px 14px;overflow:auto;color:var(--sidebar-text);background:linear-gradient(180deg,var(--sidebar),var(--sidebar-2));border-right:1px solid rgba(255,255,255,.08);box-shadow:18px 0 50px rgba(2,6,23,.22)}.brand{display:flex;gap:12px;align-items:center;padding:8px 10px 20px;font-size:1.12rem;font-weight:950;letter-spacing:-.04em}.brand-icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#e11d48,#1459f5 48%,#14b8a6);box-shadow:0 14px 34px rgba(20,89,245,.28)}.brand small{display:block;margin-top:3px;color:#94a3b8;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.nav-section{margin:18px 10px 8px;color:#718096;font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.13em}.sidebar nav a{display:flex;align-items:center;gap:10px;margin:3px 0;padding:11px 12px;border-radius:15px;color:#cbd5e1;font-weight:820;transition:.16s ease;border:1px solid transparent}.sidebar nav a span{width:24px;text-align:center}.sidebar nav a:hover{background:rgba(255,255,255,.07);color:#fff}.sidebar nav a.active{background:linear-gradient(135deg,rgba(20,89,245,.96),rgba(20,184,166,.88));color:#fff;box-shadow:0 12px 30px rgba(20,89,245,.25)}.main{min-width:0}.topbar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 30px;background:rgba(246,248,251,.72);backdrop-filter:blur(22px) saturate(1.35);border-bottom:1px solid var(--line-soft)}body[data-theme="dark"] .topbar{background:rgba(8,13,22,.72)}@media(prefers-color-scheme:dark){body[data-theme="system"] .topbar{background:rgba(8,13,22,.72)}}.topbar strong{font-size:1.05rem}.topbar-eyebrow,.eyebrow{margin:0 0 7px;color:var(--muted-2);text-transform:uppercase;font-size:.73rem;font-weight:950;letter-spacing:.14em}.topbar-user{display:flex;align-items:center;gap:10px;color:var(--muted)}.user-chip{display:inline-grid;gap:1px;text-align:right;font-weight:900}.user-chip small{font-size:.72rem;color:var(--muted);font-weight:800}.theme-switch{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--surface)}.theme-dot{width:30px;height:30px;border-radius:999px;border:0;background:transparent;color:var(--muted);font-weight:900}.theme-dot:hover{background:var(--surface-2);color:var(--text)}.secure-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;background:#ecfdf5;color:#047857;border:1px solid #bbf7d0;font-size:.8rem;font-weight:900;white-space:nowrap}.secure-pill.off{background:#fff7ed;color:#c2410c;border-color:#fed7aa}.menu-toggle{display:none;border:0;background:transparent;font-size:1.4rem;color:var(--text)}.content{width:min(1600px,100%);padding:30px}.page-head,.page-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:22px}.page-hero{padding:28px;border-radius:30px;background:linear-gradient(135deg,var(--surface),rgba(255,255,255,.52));border:1px solid rgba(255,255,255,.62);box-shadow:var(--shadow);backdrop-filter:blur(18px)}body[data-theme="dark"] .page-hero{background:linear-gradient(135deg,rgba(17,24,39,.88),rgba(15,23,42,.58));border-color:rgba(255,255,255,.08)}h1,h2,h3{margin:0;letter-spacing:-.05em}h1{font-size:clamp(2rem,3.3vw,3.85rem);line-height:1.02}h2{font-size:1.18rem}p{line-height:1.65}.muted{color:var(--muted)}.subtle{color:var(--muted-2);font-size:.86rem}.hero-clean{position:relative;overflow:hidden}.hero-clean:after{content:"";position:absolute;right:-110px;top:-150px;width:360px;height:360px;border-radius:999px;background:radial-gradient(circle,rgba(20,89,245,.22),rgba(20,184,166,.18),transparent 70%)}.hero-clean>*{position:relative;z-index:1}.hero-actions,.actions{display:flex;flex-wrap:wrap;gap:10px}.card,.stat-card,.toolbar,.pagination,.login-card{background:var(--surface);border:1px solid rgba(255,255,255,.60);box-shadow:var(--shadow);border-radius:var(--radius);backdrop-filter:blur(18px) saturate(1.2)}body[data-theme="dark"] .card,body[data-theme="dark"] .stat-card,body[data-theme="dark"] .toolbar,body[data-theme="dark"] .pagination{border-color:rgba(255,255,255,.08)}.card{padding:22px;margin-bottom:22px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.card-head a{color:var(--primary);font-weight:900}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.stat-grid.six{grid-template-columns:repeat(6,minmax(0,1fr))}.stat-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card{min-height:112px;padding:17px;display:flex;flex-direction:column;justify-content:space-between}.stat-card span{color:var(--muted);font-size:.82rem;font-weight:900}.stat-card strong{font-size:2.25rem;letter-spacing:-.06em}.stat-card.mini{min-height:92px}.compact-stats{margin-bottom:16px}.grid{display:grid;gap:22px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:41px;padding:9px 14px;border-radius:13px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);font-weight:900;box-shadow:var(--shadow-sm);transition:.16s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 16px 36px rgba(15,23,42,.13)}.btn.primary{border-color:transparent;color:#fff;background:linear-gradient(135deg,var(--primary),#0f766e)}.btn.danger{background:#fff1f2;color:var(--danger);border-color:#fecdd3}.btn.small{min-height:34px;padding:6px 10px;border-radius:10px;font-size:.85rem}.toolbar{padding:14px;display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:18px}.toolbar form,.toolbar{flex-wrap:wrap}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);color:var(--text);padding:10px 12px;outline:0;transition:.15s ease}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(20,89,245,.14)}label{display:grid;gap:7px;color:var(--muted);font-size:.9rem;font-weight:900}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid.one{grid-template-columns:1fr}.form-grid .full,.full{grid-column:1/-1}.form-actions{display:flex;gap:10px;justify-content:flex-end;align-items:center}.inline-form{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.inline-form>*{width:auto;min-width:160px}.inline-form.slim>*{min-width:120px}.check{display:flex;grid-template-columns:none;flex-direction:row;align-items:flex-start;gap:10px;padding:10px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.38)}.check input{width:auto;margin-top:2px}.check small{display:block;color:var(--muted);font-weight:700}.table-wrap{width:100%;overflow:auto;border-radius:18px;border:1px solid var(--line-soft);padding:0}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:13px 15px;text-align:left;border-bottom:1px solid var(--line-soft);vertical-align:top}th{color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;background:rgba(148,163,184,.10)}tr:hover td{background:rgba(20,89,245,.035)}.compact th,.compact td{padding:10px 12px}.pill,.status,.role{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.77rem;font-weight:950;background:#eef2ff;color:#3730a3}.status.Aktiv,.status.Verfügbar,.status.Genehmigt,.ok{background:#ecfdf5;color:#047857}.status.Defekt,.status.Abgelehnt,.danger-text{background:#fff1f2;color:#be123c}.status.Offen,.status.In{background:#fffbeb;color:#92400e}.flash{margin-bottom:18px;border-radius:16px;padding:14px 16px;font-weight:900;border:1px solid transparent}.flash.success{background:#ecfdf5;color:#047857;border-color:#bbf7d0}.flash.error{background:#fff1f2;color:#be123c;border-color:#fecdd3}.flash.info{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.empty{text-align:center;color:var(--muted);padding:24px}.department-strip{display:grid;gap:10px}.department-chip{display:flex;align-items:center;gap:12px;padding:12px;border-radius:16px;background:rgba(148,163,184,.10);border:1px solid var(--line)}.department-chip em{margin-left:auto;font-style:normal;color:var(--muted);font-weight:900}.entity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.entity-card{padding:20px;border-radius:22px;background:var(--surface);border:1px solid var(--line-soft);box-shadow:var(--shadow-sm)}.entity-card-top,.mini-stats{display:flex;justify-content:space-between;gap:10px;align-items:center}.entity-icon{font-size:1.5rem}.mini-stats{margin:18px 0;color:var(--muted)}.detail-grid,.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-item,.info-grid>div{padding:13px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2)}.detail-item span,.info-grid span,.detail-list dt{display:block;margin-bottom:5px;color:var(--muted);font-size:.75rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.detail-list{display:grid;gap:8px}.detail-list dd{margin:0 0 8px}.clean-list{display:grid;gap:10px;color:var(--muted);padding-left:20px}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pre{white-space:pre-wrap}code{padding:3px 7px;border-radius:8px;background:rgba(20,89,245,.1);color:var(--primary)}.login-page,.login-wrap{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 20% 0,rgba(20,184,166,.2),transparent 30rem),linear-gradient(135deg,#08111f,#10213b)}.login-card{width:min(480px,100%);padding:28px}.login-card.wide{width:min(560px,100%)}.login-logo{width:58px;height:58px;border-radius:20px;display:grid;place-items:center;margin-bottom:12px;background:linear-gradient(135deg,#e11d48,var(--primary),var(--primary-2));color:#fff;font-size:1.8rem}.login-card form{display:grid;gap:14px;margin-top:20px}.btn.full{width:100%}.auth-switch{margin-top:18px;display:flex;justify-content:space-between;gap:12px;color:var(--muted)}.auth-switch a{color:var(--primary);font-weight:950}.pagination{display:flex;gap:8px;align-items:center;justify-content:center;padding:12px}.pagination a,.pagination span{padding:8px 11px;border-radius:12px;font-weight:900}.pagination .active{background:var(--primary);color:#fff}@media(max-width:1180px){.stat-grid.six,.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.two,.grid.three,.entity-grid{grid-template-columns:1fr}}@media(max-width:860px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(86vw,310px);z-index:20;transform:translateX(-105%);transition:.2s ease}body.sidebar-open .sidebar{transform:translateX(0)}.menu-toggle{display:inline-flex}.topbar{padding:14px 18px}.content{padding:18px}.form-grid,.detail-grid,.info-grid,.permission-grid{grid-template-columns:1fr}.stat-grid.six,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar-user .secure-pill,.user-chip{display:none}.page-head,.page-hero{flex-direction:column}.inline-form>*{width:100%}}@media(max-width:560px){.stat-grid.six,.stat-grid{grid-template-columns:1fr}.form-actions{justify-content:stretch;flex-direction:column}.btn{width:100%}}
.compact-fields { gap: 8px; margin: 0; }
.compact-fields input { min-width: 120px; }
.flash.info { border-color: rgba(37, 99, 235, .25); background: rgba(37, 99, 235, .08); color: var(--text); }

/* Retter-Portal v1.0.14: echtes Logo + seriöser E-Mail-First Auth-Look */
:root{
  --primary:#c8102e;
  --primary-2:#132233;
  --accent:#e21b2d;
  --sidebar:#ffffff;
  --sidebar-2:#f7f9fc;
  --sidebar-text:#172336;
}
body[data-theme="dark"]{
  --sidebar:#08101c;
  --sidebar-2:#101827;
  --sidebar-text:#eef4fb;
  --primary:#f04452;
  --primary-2:#172a3d;
}
@media (prefers-color-scheme: dark){body[data-theme="system"]{--sidebar:#08101c;--sidebar-2:#101827;--sidebar-text:#eef4fb;--primary:#f04452;--primary-2:#172a3d}}
body{background:radial-gradient(circle at 18% -8%,rgba(200,16,46,.12),transparent 34rem),radial-gradient(circle at 95% 2%,rgba(19,34,51,.12),transparent 30rem),linear-gradient(135deg,var(--bg),var(--bg2));}
.sidebar{background:linear-gradient(180deg,var(--sidebar),var(--sidebar-2));color:var(--sidebar-text);border-right:1px solid var(--line);box-shadow:12px 0 35px rgba(15,23,42,.08)}
body[data-theme="dark"] .sidebar{border-right-color:rgba(255,255,255,.08);box-shadow:18px 0 50px rgba(2,6,23,.22)}
.brand{position:sticky;top:0;z-index:3;margin:-4px -4px 14px;padding:10px 10px 16px;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.78));box-shadow:0 10px 26px rgba(15,23,42,.06)}
body[data-theme="dark"] .brand{background:linear-gradient(180deg,rgba(15,23,42,.92),rgba(15,23,42,.66));box-shadow:none}
.brand-logo-wrap{width:100%;display:flex;align-items:center;justify-content:flex-start;min-height:58px;overflow:hidden}
.brand-logo{display:block;width:min(218px,100%);height:auto;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(15,23,42,.10))}
.brand-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.brand-icon{display:none}.brand small{display:none}
.sidebar nav a{color:#36445a;background:transparent;border-radius:14px}
body[data-theme="dark"] .sidebar nav a{color:#cbd5e1}
.sidebar nav a:hover{background:rgba(200,16,46,.075);color:#c8102e}
body[data-theme="dark"] .sidebar nav a:hover{background:rgba(255,255,255,.07);color:#fff}
.sidebar nav a.active{background:linear-gradient(135deg,#c8102e,#8f1226);box-shadow:0 12px 28px rgba(200,16,46,.22)}
.nav-section{color:#7c8798}
.topbar-title{display:flex;align-items:center;gap:12px;min-width:0}.topbar-logo{width:42px;height:42px;object-fit:contain;border-radius:14px;padding:4px;background:rgba(255,255,255,.85);border:1px solid var(--line);box-shadow:0 8px 20px rgba(15,23,42,.08)}
body[data-theme="dark"] .topbar-logo{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.10)}
.btn.primary,.sidebar nav a.active{background:linear-gradient(135deg,#d30d21,#9c1027);color:#fff;border-color:transparent}.btn.primary:hover{box-shadow:0 16px 38px rgba(200,16,46,.26)}
input:focus,select:focus,textarea:focus{border-color:#c8102e;box-shadow:0 0 0 4px rgba(200,16,46,.12)}
.login-page.auth-page-branded{background:radial-gradient(circle at 15% 10%,rgba(200,16,46,.22),transparent 30rem),radial-gradient(circle at 92% 7%,rgba(19,34,51,.28),transparent 32rem),linear-gradient(135deg,#f6f8fb,#eef2f7);}
body[data-theme="dark"] .login-page.auth-page-branded{background:radial-gradient(circle at 15% 10%,rgba(200,16,46,.18),transparent 30rem),radial-gradient(circle at 92% 7%,rgba(255,255,255,.08),transparent 32rem),linear-gradient(135deg,#08101c,#101827)}
.auth-card{position:relative;overflow:hidden;border-radius:30px;border:1px solid rgba(255,255,255,.72);background:linear-gradient(155deg,rgba(255,255,255,.92),rgba(255,255,255,.72));box-shadow:0 30px 90px rgba(15,23,42,.16)}
.auth-card:before{content:"";position:absolute;inset:-1px -1px auto -1px;height:6px;background:linear-gradient(90deg,#c8102e,#132233,#c8102e)}
body[data-theme="dark"] .auth-card{border-color:rgba(255,255,255,.10);background:linear-gradient(155deg,rgba(15,23,42,.92),rgba(15,23,42,.72));box-shadow:0 30px 100px rgba(0,0,0,.38)}
.auth-logo{display:block;width:min(310px,92%);height:auto;margin:4px auto 22px;object-fit:contain;filter:drop-shadow(0 10px 24px rgba(15,23,42,.12))}.login-logo{display:none}.auth-card h1{font-size:clamp(2rem,4vw,3.2rem);text-align:center}.auth-card .eyebrow,.auth-hint{text-align:center}.auth-hint{margin:8px 0 22px;color:var(--muted);font-weight:800}.login-policy-note{margin-top:14px;padding:11px 13px;border-radius:14px;background:rgba(200,16,46,.075);color:#8f1226;border:1px solid rgba(200,16,46,.18);font-size:.86rem;font-weight:900;text-align:center}
body[data-theme="dark"] .login-policy-note{background:rgba(240,68,82,.10);color:#fecdd3;border-color:rgba(240,68,82,.22)}
.pill,.status,.role{background:#fff1f2;color:#9f1239}.status.Aktiv,.status.Verfügbar,.status.Genehmigt,.ok{background:#ecfdf5;color:#047857}.card,.stat-card,.toolbar,.pagination,.login-card{border-color:rgba(203,213,225,.72)}
@media(max-width:860px){.brand-logo{width:min(210px,100%)}.topbar-logo{width:36px;height:36px}.topbar-title{gap:9px}}

/* Retter-Portal v1.0.14: transparentes Logo, stabilere Navigation, kein Layout-Ruckeln */
html{
  min-height:100%;
  overflow-y:scroll;
  scrollbar-gutter:stable both-edges;
}
body{
  min-height:100dvh;
  overflow-x:hidden;
}
.app-shell{
  grid-template-columns:var(--sidebar-width) minmax(0,1fr);
  align-items:start;
}
.sidebar{
  width:var(--sidebar-width);
  min-width:var(--sidebar-width);
  max-width:var(--sidebar-width);
  contain:layout paint;
}
.main{
  min-width:0;
  width:100%;
}
.content{
  margin:0 auto;
  min-height:calc(100dvh - 74px);
}
.sidebar nav a{
  min-height:44px;
  transform:none!important;
  will-change:auto;
}
.sidebar nav a:hover,
.sidebar nav a.active{
  transform:none!important;
}
.brand{
  min-height:90px;
  align-items:center;
}
.brand-logo-wrap{
  min-height:72px;
  padding:4px 0;
}
.brand-logo{
  width:min(232px,100%);
  max-height:82px;
  object-fit:contain;
  object-position:left center;
}
.topbar-logo{
  background:transparent;
  border-color:transparent;
  box-shadow:none;
  padding:0;
}
.auth-logo{
  width:min(330px,92%);
  max-height:138px;
  object-fit:contain;
}
.theme-switch{
  min-width:74px;
  justify-content:center;
}
.theme-dot{
  line-height:1;
}
@media(max-width:860px){
  .sidebar{width:min(86vw,310px);min-width:0;max-width:min(86vw,310px)}
  .brand-logo{width:min(226px,100%)}
}

/* Retter-Portal v1.0.14: Layout-Reparatur, echtes transparentes Logo, ruhige Navigation */
:root{
  --sidebar-width:300px;
  --primary:#c8102e;
  --primary-2:#132233;
  --accent:#e21b2d;
}
html{
  overflow-y:auto;
  scrollbar-gutter:stable;
  background:var(--bg);
}
body{
  width:100%;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 18% -12%,rgba(200,16,46,.10),transparent 34rem),
    radial-gradient(circle at 94% 0,rgba(19,34,51,.10),transparent 32rem),
    linear-gradient(135deg,var(--bg),var(--bg2));
}
body[data-theme="dark"]{
  --bg:#07101d;
  --bg2:#0b1422;
  --surface:rgba(16,25,41,.88);
  --surface-2:#111c2c;
  --text:#f5f7fb;
  --muted:#aab6c7;
  --muted-2:#7e8ca3;
  --line:#253247;
  --line-soft:rgba(255,255,255,.07);
  --sidebar:#07101d;
  --sidebar-2:#0b1422;
  --sidebar-text:#f2f6fb;
  --primary:#e21b2d;
}
@media (prefers-color-scheme: dark){body[data-theme="system"]{
  --bg:#07101d;
  --bg2:#0b1422;
  --surface:rgba(16,25,41,.88);
  --surface-2:#111c2c;
  --text:#f5f7fb;
  --muted:#aab6c7;
  --muted-2:#7e8ca3;
  --line:#253247;
  --line-soft:rgba(255,255,255,.07);
  --sidebar:#07101d;
  --sidebar-2:#0b1422;
  --sidebar-text:#f2f6fb;
  --primary:#e21b2d;
}}
.app-shell{
  display:block;
  min-height:100dvh;
}
.sidebar{
  position:fixed;
  inset:0 auto 0 0;
  z-index:30;
  width:var(--sidebar-width);
  min-width:var(--sidebar-width);
  max-width:var(--sidebar-width);
  height:100dvh;
  padding:18px 14px 22px;
  overflow-y:auto;
  overflow-x:hidden;
  background:linear-gradient(180deg,var(--sidebar),var(--sidebar-2));
  color:var(--sidebar-text);
  border-right:1px solid var(--line);
  box-shadow:12px 0 36px rgba(15,23,42,.08);
  contain:initial;
}
body[data-theme="dark"] .sidebar{box-shadow:18px 0 60px rgba(0,0,0,.28);border-right-color:rgba(255,255,255,.08)}
.main{
  width:auto;
  min-width:0;
  margin-left:var(--sidebar-width);
}
.topbar{
  min-height:74px;
}
.content{
  width:min(1500px,100%);
  margin:0 auto;
  padding:28px 30px 40px;
  transition:opacity .14s ease, transform .14s ease;
}
body.page-transitioning .content{
  opacity:.82;
  transform:translateY(2px);
}
.brand{
  position:relative;
  top:auto;
  display:flex;
  width:100%;
  min-height:82px;
  margin:0 0 18px;
  padding:8px 8px 16px;
  border-radius:22px;
  background:transparent;
  box-shadow:none;
  overflow:hidden;
}
body[data-theme="dark"] .brand{background:transparent;box-shadow:none}
.brand-logo-wrap{
  width:100%;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding:0;
  overflow:hidden;
}
.brand-logo{
  display:block;
  width:228px;
  max-width:100%;
  max-height:86px;
  height:auto;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 8px 18px rgba(15,23,42,.12));
}
.topbar-logo{
  width:42px;
  height:42px;
  object-fit:contain;
  border-radius:0;
  background:transparent;
  border:0;
  padding:0;
  box-shadow:none;
}
.auth-logo{
  display:block;
  width:min(320px,92%);
  max-height:124px;
  margin:0 auto 22px;
  object-fit:contain;
  filter:drop-shadow(0 12px 28px rgba(15,23,42,.14));
}
.login-card.auth-card{
  max-width:520px;
}
.login-card.wide.auth-card{
  max-width:620px;
}
.sidebar nav a{
  position:relative;
  min-height:42px;
  padding:10px 12px;
  color:color-mix(in srgb,var(--sidebar-text) 72%, transparent);
  border-radius:14px;
  transition:background-color .14s ease,color .14s ease,box-shadow .14s ease;
  transform:none!important;
}
.sidebar nav a:hover{
  background:rgba(200,16,46,.09);
  color:#c8102e;
}
body[data-theme="dark"] .sidebar nav a:hover{background:rgba(255,255,255,.065);color:#fff}
.sidebar nav a.active{
  background:linear-gradient(135deg,#c8102e,#981328);
  color:#fff;
  box-shadow:0 12px 26px rgba(200,16,46,.24);
}
.nav-section{margin-top:18px;color:var(--muted-2)}
.theme-switch{
  min-width:auto;
  padding:4px;
  gap:2px;
}
.theme-dot{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  line-height:1;
}
.page-hero{
  border-radius:28px;
  background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(255,255,255,.70));
  border:1px solid rgba(203,213,225,.75);
}
body[data-theme="dark"] .page-hero{background:linear-gradient(135deg,rgba(17,28,45,.94),rgba(10,18,31,.78));border-color:rgba(255,255,255,.08)}
.card,.stat-card,.toolbar,.pagination,.login-card{
  border:1px solid rgba(203,213,225,.68);
  box-shadow:0 14px 46px rgba(15,23,42,.08);
}
body[data-theme="dark"] .card,body[data-theme="dark"] .stat-card,body[data-theme="dark"] .toolbar,body[data-theme="dark"] .pagination,body[data-theme="dark"] .login-card{border-color:rgba(255,255,255,.08);box-shadow:0 16px 50px rgba(0,0,0,.20)}
.btn:hover{transform:none;box-shadow:0 12px 28px rgba(15,23,42,.12)}
.table-wrap{overflow:auto;scrollbar-gutter:stable;}
.dashboard-table table{min-width:100%;}
.dashboard-table th,.dashboard-table td{white-space:normal;}
.dashboard-table{overflow:hidden;}
@media(max-width:1180px){
  .content{padding:24px 22px 36px;}
}
@media(max-width:860px){
  .app-shell{display:block;}
  .sidebar{
    position:fixed;
    inset:0 auto 0 0;
    width:min(86vw,310px);
    min-width:0;
    max-width:min(86vw,310px);
    transform:translateX(-105%);
    transition:transform .2s ease;
  }
  body.sidebar-open .sidebar{transform:translateX(0)}
  .main{margin-left:0;}
  .content{padding:18px;}
  .brand-logo{width:min(232px,100%)}
}

/* Retter-Portal v1.0.17: Startseite/Login, Logo-Fix, ruhiger Seitenwechsel */
body.page-loading .content{
  opacity:.98;
  transform:none!important;
}
body.page-transitioning .content{
  opacity:1!important;
  transform:none!important;
}
.content{
  will-change:auto;
}
.entity-grid + .pagination,
.entity-grid + .pagination.subtle{
  margin-top:22px;
}
.pagination.subtle{
  margin-top:18px;
}
.topbar-logo,
img[src$="retter-portal-mark.png"],
img[src$="favicon.png"]{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.topbar-logo{
  width:44px;
  height:44px;
  padding:0!important;
  object-fit:contain;
  filter:drop-shadow(0 8px 14px rgba(15,23,42,.16));
}
body[data-theme="dark"] .topbar-logo{filter:drop-shadow(0 10px 20px rgba(0,0,0,.32));}

.auth-landing{
  min-height:100dvh;
  color:var(--text);
  background:
    radial-gradient(circle at 16% 8%,rgba(200,16,46,.14),transparent 28rem),
    radial-gradient(circle at 88% 4%,rgba(19,34,51,.15),transparent 32rem),
    linear-gradient(135deg,var(--bg),var(--bg2));
  padding:26px;
  position:relative;
  overflow:hidden;
}
.auth-landing:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);
  background-size:46px 46px;
  mask-image:linear-gradient(to bottom,#000,transparent 82%);
}
.auth-topbar,
.auth-hero-grid,
.auth-why-section{
  position:relative;
  z-index:1;
  width:min(1440px,100%);
  margin:0 auto;
}
.auth-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 18px;
  border:1px solid rgba(203,213,225,.66);
  border-radius:26px;
  background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(255,255,255,.60));
  box-shadow:0 18px 56px rgba(15,23,42,.08);
  backdrop-filter:blur(22px) saturate(1.18);
}
body[data-theme="dark"] .auth-topbar{
  border-color:rgba(255,255,255,.08);
  background:linear-gradient(135deg,rgba(17,28,45,.84),rgba(10,18,31,.62));
  box-shadow:0 22px 68px rgba(0,0,0,.28);
}
.auth-brand{
  display:flex;
  align-items:center;
  min-width:0;
}
.auth-brand img{
  display:block;
  width:min(270px,46vw);
  height:auto;
  max-height:74px;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 10px 24px rgba(15,23,42,.10));
}
.auth-top-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.auth-theme-switch{
  display:flex;
  gap:4px;
  padding:4px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(16px);
}
body[data-theme="dark"] .auth-theme-switch{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.10)}
.auth-theme-switch button{
  width:36px;
  height:36px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:var(--muted);
  font-weight:950;
}
.auth-theme-switch button:hover,
.auth-theme-switch button.active{
  background:var(--surface-2);
  color:var(--text);
  box-shadow:0 8px 18px rgba(15,23,42,.08);
}
.auth-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(360px,520px);
  gap:26px;
  align-items:stretch;
  padding:42px 0 28px;
}
.auth-hero-copy,
.auth-card.auth-signin,
.auth-why-section{
  border:1px solid rgba(203,213,225,.66);
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(255,255,255,.58));
  box-shadow:0 24px 76px rgba(15,23,42,.10);
  backdrop-filter:blur(24px) saturate(1.22);
}
body[data-theme="dark"] .auth-hero-copy,
body[data-theme="dark"] .auth-card.auth-signin,
body[data-theme="dark"] .auth-why-section{
  border-color:rgba(255,255,255,.08);
  background:linear-gradient(135deg,rgba(17,28,45,.88),rgba(10,18,31,.64));
  box-shadow:0 26px 80px rgba(0,0,0,.28);
}
.auth-hero-copy{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  padding:clamp(28px,4vw,54px);
  min-height:540px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.auth-hero-copy:after{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  right:-140px;
  top:-140px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(200,16,46,.24),rgba(19,34,51,.16),transparent 68%);
  pointer-events:none;
}
.auth-hero-copy>*{position:relative;z-index:1}
.auth-hero-copy h1{
  max-width:980px;
  font-size:clamp(2.6rem,6vw,5.75rem);
  line-height:.96;
  letter-spacing:-.07em;
  margin:0;
}
.auth-lead{
  max-width:760px;
  color:var(--muted);
  font-size:clamp(1rem,1.4vw,1.22rem);
  font-weight:760;
  margin:22px 0 0;
}
.auth-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
.auth-benefit-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:34px;
}
.auth-benefit-grid article{
  padding:16px;
  border-radius:20px;
  border:1px solid var(--line-soft);
  background:rgba(255,255,255,.50);
}
body[data-theme="dark"] .auth-benefit-grid article{background:rgba(255,255,255,.055)}
.auth-benefit-grid strong{display:block;margin-bottom:6px;font-size:1rem}
.auth-benefit-grid span{display:block;color:var(--muted);font-weight:760;line-height:1.45;font-size:.92rem}
.auth-card.auth-signin{
  position:relative;
  width:100%;
  max-width:none;
  align-self:stretch;
  padding:30px;
  border-radius:34px;
}
.auth-card.auth-signin:before{display:none}
.auth-card.auth-signin .auth-logo{
  width:min(292px,92%);
  max-height:118px;
  margin:0 auto 18px;
}
.auth-card.auth-signin h2{
  font-size:clamp(1.9rem,3vw,2.8rem);
  text-align:center;
  margin-bottom:18px;
}
.auth-card.auth-signin .eyebrow{text-align:center}
.auth-card.auth-signin form{margin-top:18px}
.auth-why-section{
  border-radius:34px;
  padding:30px;
  margin-bottom:32px;
}
.auth-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:22px;
  margin-bottom:18px;
}
.auth-section-head h2{
  max-width:920px;
  font-size:clamp(1.7rem,3vw,3rem);
  line-height:1.04;
}
.auth-feature-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.auth-feature-card{
  padding:20px;
  border:1px solid var(--line-soft);
  border-radius:24px;
  background:rgba(255,255,255,.52);
}
body[data-theme="dark"] .auth-feature-card{background:rgba(255,255,255,.055)}
.auth-feature-card span{display:grid;place-items:center;width:46px;height:46px;border-radius:16px;margin-bottom:14px;background:#fff1f2;color:#9f1239;font-size:1.25rem}
.auth-feature-card strong{display:block;font-size:1.05rem;margin-bottom:8px}
.auth-feature-card p{margin:0;color:var(--muted);font-weight:760;line-height:1.5}
@media(max-width:1120px){
  .auth-hero-grid{grid-template-columns:1fr;}
  .auth-hero-copy{min-height:auto;}
  .auth-feature-row,.auth-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:650px){
  .auth-landing{padding:14px;}
  .auth-topbar{border-radius:22px;}
  .auth-brand img{width:min(215px,54vw);}
  .auth-top-actions .btn{display:none;}
  .auth-hero-grid{padding:20px 0;}
  .auth-hero-copy,.auth-card.auth-signin,.auth-why-section{border-radius:26px;padding:22px;}
  .auth-benefit-grid,.auth-feature-row{grid-template-columns:1fr;}
  .auth-section-head{display:block;}
}

/* Retter-Portal v1.0.17: ausgewogener Whitemode mit klareren Flächen */
:root{
  --bg:#e9eef5;
  --bg2:#f4f7fb;
  --surface:rgba(255,255,255,.88);
  --surface-2:#ffffff;
  --text:#111827;
  --muted:#53637a;
  --muted-2:#7a8799;
  --line:#cbd5e1;
  --line-soft:rgba(15,23,42,.125);
  --shadow:0 22px 66px rgba(15,23,42,.13);
  --shadow-sm:0 10px 30px rgba(15,23,42,.10);
}
body[data-theme="light"]{
  --bg:#e9eef5;
  --bg2:#f4f7fb;
  --surface:rgba(255,255,255,.88);
  --surface-2:#ffffff;
  --text:#111827;
  --muted:#53637a;
  --muted-2:#7a8799;
  --line:#cbd5e1;
  --line-soft:rgba(15,23,42,.125);
  --shadow:0 22px 66px rgba(15,23,42,.13);
  --shadow-sm:0 10px 30px rgba(15,23,42,.10);
}
body[data-theme="light"],
body[data-theme="system"]{
  background:
    radial-gradient(circle at 18% -12%,rgba(200,16,46,.13),transparent 34rem),
    radial-gradient(circle at 94% 0,rgba(19,34,51,.13),transparent 32rem),
    linear-gradient(135deg,var(--bg),var(--bg2));
}
body[data-theme="light"] .auth-landing,
body[data-theme="system"] .auth-landing{
  background:
    radial-gradient(circle at 15% 7%,rgba(200,16,46,.16),transparent 28rem),
    radial-gradient(circle at 88% 4%,rgba(19,34,51,.15),transparent 32rem),
    linear-gradient(135deg,#e8eef6,#f5f7fb 42%,#edf2f8);
}
body[data-theme="light"] .auth-topbar,
body[data-theme="light"] .auth-hero-copy,
body[data-theme="light"] .auth-card.auth-signin,
body[data-theme="light"] .auth-why-section,
body[data-theme="system"] .auth-topbar,
body[data-theme="system"] .auth-hero-copy,
body[data-theme="system"] .auth-card.auth-signin,
body[data-theme="system"] .auth-why-section{
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(246,249,253,.86));
  border-color:rgba(148,163,184,.44);
  box-shadow:0 24px 72px rgba(15,23,42,.13), inset 0 1px 0 rgba(255,255,255,.92);
}
body[data-theme="light"] .auth-benefit-grid article,
body[data-theme="light"] .auth-feature-card,
body[data-theme="system"] .auth-benefit-grid article,
body[data-theme="system"] .auth-feature-card{
  background:linear-gradient(145deg,#ffffff,#f2f5f9);
  border-color:rgba(148,163,184,.38);
  box-shadow:0 12px 34px rgba(15,23,42,.075), inset 0 1px 0 rgba(255,255,255,.90);
}
body[data-theme="light"] .card,
body[data-theme="light"] .stat-card,
body[data-theme="light"] .toolbar,
body[data-theme="light"] .pagination,
body[data-theme="light"] .login-card,
body[data-theme="system"] .card,
body[data-theme="system"] .stat-card,
body[data-theme="system"] .toolbar,
body[data-theme="system"] .pagination,
body[data-theme="system"] .login-card{
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(248,250,252,.84));
  border-color:rgba(148,163,184,.42);
  box-shadow:0 18px 54px rgba(15,23,42,.115), inset 0 1px 0 rgba(255,255,255,.92);
}
body[data-theme="light"] .page-hero,
body[data-theme="system"] .page-hero{
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(244,248,252,.82));
  border-color:rgba(148,163,184,.44);
  box-shadow:0 22px 66px rgba(15,23,42,.12), inset 0 1px 0 rgba(255,255,255,.92);
}
body[data-theme="light"] input,
body[data-theme="light"] select,
body[data-theme="light"] textarea,
body[data-theme="system"] input,
body[data-theme="system"] select,
body[data-theme="system"] textarea{
  background:#f8fafc;
  border-color:#cbd5e1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 1px 2px rgba(15,23,42,.045);
}
body[data-theme="light"] input:focus,
body[data-theme="light"] select:focus,
body[data-theme="light"] textarea:focus,
body[data-theme="system"] input:focus,
body[data-theme="system"] select:focus,
body[data-theme="system"] textarea:focus{
  background:#ffffff;
  border-color:#c8102e;
  box-shadow:0 0 0 4px rgba(200,16,46,.12),0 8px 24px rgba(15,23,42,.08);
}
body[data-theme="light"] .table-wrap,
body[data-theme="system"] .table-wrap{
  background:#f8fafc;
  border-color:rgba(148,163,184,.42);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92);
}
body[data-theme="light"] th,
body[data-theme="system"] th{
  background:#eef3f8;
  color:#58677d;
}
body[data-theme="light"] tr:hover td,
body[data-theme="system"] tr:hover td{
  background:rgba(200,16,46,.035);
}
body[data-theme="light"] .sidebar,
body[data-theme="system"] .sidebar{
  background:linear-gradient(180deg,#ffffff,#f1f5f9);
  border-right-color:rgba(148,163,184,.46);
  box-shadow:14px 0 42px rgba(15,23,42,.10);
}
body[data-theme="light"] .topbar,
body[data-theme="system"] .topbar{
  background:rgba(244,247,251,.82);
  border-bottom-color:rgba(148,163,184,.36);
  box-shadow:0 8px 28px rgba(15,23,42,.055);
}
body[data-theme="light"] .btn:not(.primary),
body[data-theme="system"] .btn:not(.primary){
  background:linear-gradient(145deg,#ffffff,#f3f6fa);
  border-color:rgba(148,163,184,.44);
}
body[data-theme="light"] .auth-section-head h2,
body[data-theme="system"] .auth-section-head h2,
body[data-theme="light"] .auth-hero-copy h1,
body[data-theme="system"] .auth-hero-copy h1{
  text-shadow:0 1px 0 rgba(255,255,255,.70);
}
@media (prefers-color-scheme: dark){
  body[data-theme="system"]{
    background:
      radial-gradient(circle at 18% -12%,rgba(200,16,46,.10),transparent 34rem),
      radial-gradient(circle at 94% 0,rgba(19,34,51,.10),transparent 32rem),
      linear-gradient(135deg,var(--bg),var(--bg2));
  }
  body[data-theme="system"] .auth-landing{
    background:
      radial-gradient(circle at 15% 10%,rgba(200,16,46,.18),transparent 30rem),
      radial-gradient(circle at 92% 7%,rgba(255,255,255,.08),transparent 32rem),
      linear-gradient(135deg,#08101c,#101827);
  }
  body[data-theme="system"] .auth-topbar,
  body[data-theme="system"] .auth-hero-copy,
  body[data-theme="system"] .auth-card.auth-signin,
  body[data-theme="system"] .auth-why-section,
  body[data-theme="system"] .auth-benefit-grid article,
  body[data-theme="system"] .auth-feature-card,
  body[data-theme="system"] .card,
  body[data-theme="system"] .stat-card,
  body[data-theme="system"] .toolbar,
  body[data-theme="system"] .pagination,
  body[data-theme="system"] .login-card,
  body[data-theme="system"] .page-hero{
    background:linear-gradient(135deg,rgba(17,28,45,.88),rgba(10,18,31,.64));
    border-color:rgba(255,255,255,.08);
    box-shadow:0 26px 80px rgba(0,0,0,.28);
  }
  body[data-theme="system"] input,
  body[data-theme="system"] select,
  body[data-theme="system"] textarea{
    background:var(--surface-2);
    border-color:var(--line);
    box-shadow:none;
  }
  body[data-theme="system"] th{background:rgba(148,163,184,.10);color:var(--muted)}
  body[data-theme="system"] .topbar{background:rgba(8,13,22,.72);box-shadow:none;border-bottom-color:var(--line-soft)}
  body[data-theme="system"] .sidebar{background:linear-gradient(180deg,var(--sidebar),var(--sidebar-2));box-shadow:18px 0 60px rgba(0,0,0,.28);border-right-color:rgba(255,255,255,.08)}
  body[data-theme="system"] .btn:not(.primary){background:var(--surface-2);border-color:var(--line)}
}

/* Retter-Portal v1.0.19: ruhiger Whitemode, Auto-Modus und Logo-Varianten */
:root,
body[data-theme="light"]{
  --bg:#dfe7f1;
  --bg2:#edf2f8;
  --surface:rgba(246,249,253,.91);
  --surface-2:#f8fafc;
  --text:#0f172a;
  --muted:#4f6077;
  --muted-2:#7c8a9f;
  --line:#b9c6d6;
  --line-soft:rgba(15,23,42,.145);
  --shadow:0 26px 76px rgba(15,23,42,.16);
  --shadow-sm:0 13px 34px rgba(15,23,42,.12);
  color-scheme:light;
}
body[data-theme="light"]{
  background:
    radial-gradient(circle at 13% -8%,rgba(200,16,46,.18),transparent 34rem),
    radial-gradient(circle at 94% 0,rgba(19,34,51,.18),transparent 34rem),
    linear-gradient(135deg,#dbe4ef 0%,#edf2f8 50%,#dfe8f3 100%);
}
body[data-theme="light"]:before{
  background-image:linear-gradient(rgba(15,23,42,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.10) 1px,transparent 1px);
  opacity:.72;
}
body[data-theme="light"] .auth-landing{
  background:
    radial-gradient(circle at 14% 4%,rgba(200,16,46,.18),transparent 30rem),
    radial-gradient(circle at 86% 2%,rgba(19,34,51,.18),transparent 32rem),
    linear-gradient(135deg,#dbe4ef 0%,#edf2f8 48%,#dfe8f3 100%);
}
body[data-theme="light"] .auth-landing:before{
  background-image:linear-gradient(rgba(15,23,42,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.10) 1px,transparent 1px);
  opacity:.70;
}
body[data-theme="light"] .auth-topbar,
body[data-theme="light"] .auth-hero-copy,
body[data-theme="light"] .auth-card.auth-signin,
body[data-theme="light"] .auth-why-section,
body[data-theme="light"] .page-hero,
body[data-theme="light"] .card,
body[data-theme="light"] .stat-card,
body[data-theme="light"] .toolbar,
body[data-theme="light"] .pagination,
body[data-theme="light"] .login-card{
  background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(238,244,250,.76));
  border:1px solid rgba(116,133,157,.38);
  box-shadow:0 24px 70px rgba(15,23,42,.16), inset 0 1px 0 rgba(255,255,255,.78);
}
body[data-theme="light"] .auth-benefit-grid article,
body[data-theme="light"] .auth-feature-card,
body[data-theme="light"] .department-chip,
body[data-theme="light"] .pill,
body[data-theme="light"] .status,
body[data-theme="light"] .role{
  background:linear-gradient(145deg,rgba(255,255,255,.90),rgba(231,238,247,.84));
  border-color:rgba(116,133,157,.32);
  box-shadow:0 12px 30px rgba(15,23,42,.095), inset 0 1px 0 rgba(255,255,255,.72);
}
body[data-theme="light"] .table-wrap{
  background:rgba(235,241,248,.74);
  border:1px solid rgba(116,133,157,.36);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 12px 32px rgba(15,23,42,.08);
}
body[data-theme="light"] th{
  background:#dce5f0;
  color:#43536a;
  border-bottom:1px solid rgba(116,133,157,.30);
}
body[data-theme="light"] td{border-bottom-color:rgba(116,133,157,.22)}
body[data-theme="light"] input,
body[data-theme="light"] select,
body[data-theme="light"] textarea{
  background:#edf3f9;
  border-color:#aebdce;
  color:#111827;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.055),0 1px 0 rgba(255,255,255,.65);
}
body[data-theme="light"] input:focus,
body[data-theme="light"] select:focus,
body[data-theme="light"] textarea:focus{
  background:#f8fbff;
  border-color:#c8102e;
  box-shadow:0 0 0 4px rgba(200,16,46,.13),0 12px 30px rgba(15,23,42,.12);
}
body[data-theme="light"] .topbar{
  background:rgba(225,233,243,.88);
  border-bottom-color:rgba(116,133,157,.32);
  box-shadow:0 10px 32px rgba(15,23,42,.075);
}
body[data-theme="light"] .sidebar{
  background:linear-gradient(180deg,#f5f8fc,#e6edf6);
  border-right-color:rgba(116,133,157,.34);
  box-shadow:16px 0 46px rgba(15,23,42,.11);
}
body[data-theme="light"] .sidebar nav a{color:#354258}
body[data-theme="light"] .nav-section{color:#66758a}
body[data-theme="light"] .btn:not(.primary){
  background:linear-gradient(145deg,#f7faff,#e5edf6);
  border-color:rgba(116,133,157,.36);
  box-shadow:0 9px 24px rgba(15,23,42,.08);
}
body[data-theme="light"] .auth-theme-switch,
body[data-theme="light"] .theme-switch{
  background:rgba(231,239,248,.88);
  border-color:rgba(116,133,157,.30);
}
.theme-dot.auto,
.auth-theme-switch button[data-theme-set="system"]{width:auto;min-width:46px;padding:0 10px;font-size:.75rem;letter-spacing:.01em}
.logo-dark{display:none!important}.logo-light{display:block!important}
body[data-theme="dark"] .logo-light{display:none!important}
body[data-theme="dark"] .logo-dark{display:block!important}
@media (prefers-color-scheme: dark){
  body[data-theme="system"] .logo-light{display:none!important}
  body[data-theme="system"] .logo-dark{display:block!important}
}
@media (prefers-color-scheme: light){
  body[data-theme="system"] .logo-light{display:block!important}
  body[data-theme="system"] .logo-dark{display:none!important}
}
.topbar-logo-pair{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px}
.topbar-logo-pair .topbar-logo{grid-area:1/1;width:44px;height:44px}
.auth-brand .logo-dark,.auth-brand .logo-light{width:min(270px,46vw);height:auto;max-height:74px;object-fit:contain;object-position:left center;filter:drop-shadow(0 10px 24px rgba(15,23,42,.10))}
body[data-theme="dark"] .auth-brand .logo-dark,
body[data-theme="dark"] .brand-logo.logo-dark,
body[data-theme="dark"] .auth-logo.logo-dark{filter:drop-shadow(0 14px 30px rgba(0,0,0,.46))}
.auth-card.auth-signin .auth-logo.logo-dark,.auth-card.auth-signin .auth-logo.logo-light{width:min(292px,92%);max-height:118px;margin:0 auto 18px;object-fit:contain}
.auth-top-actions{margin-left:auto}.auth-hero-actions .btn:not(.primary){display:none}

@media (prefers-color-scheme: dark){
  body[data-theme="system"]{color-scheme:dark;}
}
@media (prefers-color-scheme: light){
  body[data-theme="system"]{color-scheme:light;}
}

.report-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.report-summary .stat-card strong{font-size:2rem}.report-summary .stat-card small{display:block;color:var(--muted);font-weight:800;margin-top:4px}
.check-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#fff1f2;color:#9f1239;font-weight:950;font-size:.84rem;border:1px solid rgba(200,16,46,.18)}
.due-soon{color:#d97706}.overdue{color:#dc2626}.ok-text{color:#059669}
@media(max-width:1100px){.report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.report-summary{grid-template-columns:1fr}.auth-brand .logo-dark,.auth-brand .logo-light{width:min(215px,54vw)}}
.form-section{padding:8px 0 0}.form-section h2{margin:0 0 4px}.compact-toolbar{margin:14px 0 18px}.compact-toolbar label{min-width:180px}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
@media (prefers-color-scheme: light){
  body[data-theme="system"]{
    --bg:#dfe7f1;--bg2:#edf2f8;--surface:rgba(246,249,253,.91);--surface-2:#f8fafc;--text:#0f172a;--muted:#4f6077;--muted-2:#7c8a9f;--line:#b9c6d6;--line-soft:rgba(15,23,42,.145);--shadow:0 26px 76px rgba(15,23,42,.16);--shadow-sm:0 13px 34px rgba(15,23,42,.12);
    background:radial-gradient(circle at 13% -8%,rgba(200,16,46,.18),transparent 34rem),radial-gradient(circle at 94% 0,rgba(19,34,51,.18),transparent 34rem),linear-gradient(135deg,#dbe4ef 0%,#edf2f8 50%,#dfe8f3 100%);
  }
  body[data-theme="system"] .auth-landing{background:radial-gradient(circle at 14% 4%,rgba(200,16,46,.18),transparent 30rem),radial-gradient(circle at 86% 2%,rgba(19,34,51,.18),transparent 32rem),linear-gradient(135deg,#dbe4ef 0%,#edf2f8 48%,#dfe8f3 100%)}
  body[data-theme="system"] .auth-topbar,body[data-theme="system"] .auth-hero-copy,body[data-theme="system"] .auth-card.auth-signin,body[data-theme="system"] .auth-why-section,body[data-theme="system"] .page-hero,body[data-theme="system"] .card,body[data-theme="system"] .stat-card,body[data-theme="system"] .toolbar,body[data-theme="system"] .pagination,body[data-theme="system"] .login-card{background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(238,244,250,.76));border:1px solid rgba(116,133,157,.38);box-shadow:0 24px 70px rgba(15,23,42,.16), inset 0 1px 0 rgba(255,255,255,.78)}
  body[data-theme="system"] .auth-benefit-grid article,body[data-theme="system"] .auth-feature-card,body[data-theme="system"] .department-chip{background:linear-gradient(145deg,rgba(255,255,255,.90),rgba(231,238,247,.84));border-color:rgba(116,133,157,.32);box-shadow:0 12px 30px rgba(15,23,42,.095), inset 0 1px 0 rgba(255,255,255,.72)}
  body[data-theme="system"] .table-wrap{background:rgba(235,241,248,.74);border:1px solid rgba(116,133,157,.36);box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 12px 32px rgba(15,23,42,.08)}
  body[data-theme="system"] th{background:#dce5f0;color:#43536a;border-bottom:1px solid rgba(116,133,157,.30)}
  body[data-theme="system"] input,body[data-theme="system"] select,body[data-theme="system"] textarea{background:#edf3f9;border-color:#aebdce;color:#111827;box-shadow:inset 0 1px 2px rgba(15,23,42,.055),0 1px 0 rgba(255,255,255,.65)}
  body[data-theme="system"] .topbar{background:rgba(225,233,243,.88);border-bottom-color:rgba(116,133,157,.32);box-shadow:0 10px 32px rgba(15,23,42,.075)}
  body[data-theme="system"] .sidebar{background:linear-gradient(180deg,#f5f8fc,#e6edf6);border-right-color:rgba(116,133,157,.34);box-shadow:16px 0 46px rgba(15,23,42,.11)}
  body[data-theme="system"] .sidebar nav a{color:#354258}
}

/* Retter-Portal v1.0.19: Auto ist nur eine Voreinstellung und löst sich zu Light/Dark auf */
html[data-theme="light"],
body[data-theme="light"]{color-scheme:light}
html[data-theme="dark"],
body[data-theme="dark"]{color-scheme:dark}
body[data-theme="light"]{
  --bg:#d7e1ed;
  --bg2:#e9eff6;
  --surface:rgba(244,248,253,.93);
  --surface-2:#f4f8fc;
  --line:#aebdce;
  --line-soft:rgba(15,23,42,.17);
  --shadow:0 28px 80px rgba(15,23,42,.17);
  --shadow-sm:0 14px 36px rgba(15,23,42,.13);
  background:
    radial-gradient(circle at 12% -8%,rgba(200,16,46,.20),transparent 34rem),
    radial-gradient(circle at 92% 0,rgba(19,34,51,.20),transparent 34rem),
    linear-gradient(135deg,#d2ddea 0%,#e7eef6 48%,#dbe5f0 100%);
}
body[data-theme="light"] .auth-landing{
  background:
    radial-gradient(circle at 12% 2%,rgba(200,16,46,.20),transparent 30rem),
    radial-gradient(circle at 88% 2%,rgba(19,34,51,.20),transparent 32rem),
    linear-gradient(135deg,#d2ddea 0%,#e7eef6 48%,#dbe5f0 100%);
}
body[data-theme="light"] .auth-topbar,
body[data-theme="light"] .auth-hero-copy,
body[data-theme="light"] .auth-card.auth-signin,
body[data-theme="light"] .auth-why-section,
body[data-theme="light"] .page-hero,
body[data-theme="light"] .card,
body[data-theme="light"] .stat-card,
body[data-theme="light"] .toolbar,
body[data-theme="light"] .pagination,
body[data-theme="light"] .login-card{
  background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(228,237,247,.82));
  border-color:rgba(82,101,126,.34);
  box-shadow:0 28px 80px rgba(15,23,42,.17), inset 0 1px 0 rgba(255,255,255,.78);
}
body[data-theme="light"] .auth-benefit-grid article,
body[data-theme="light"] .auth-feature-card,
body[data-theme="light"] .department-chip,
body[data-theme="light"] .entity-card,
body[data-theme="light"] .info-card{
  background:linear-gradient(145deg,rgba(255,255,255,.91),rgba(222,232,244,.88));
  border:1px solid rgba(82,101,126,.28);
  box-shadow:0 16px 40px rgba(15,23,42,.12), inset 0 1px 0 rgba(255,255,255,.70);
}
body[data-theme="light"] .auth-feature-card span{
  width:52px;height:52px;border-radius:18px;
  background:linear-gradient(145deg,#fff1f2,#dfe8f3);
  color:#b20d28;
  border:1px solid rgba(200,16,46,.18);
  box-shadow:0 12px 26px rgba(200,16,46,.13), inset 0 1px 0 rgba(255,255,255,.88);
  font-size:1.55rem;
}
body[data-theme="dark"] .auth-feature-card span{
  width:52px;height:52px;border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(200,16,46,.17));
  color:#fff;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 12px 30px rgba(0,0,0,.24);
  font-size:1.55rem;
}
.info-card{display:grid;gap:6px;padding:14px 16px;border-radius:18px;background:rgba(148,163,184,.10);border:1px solid var(--line-soft)}
.info-card strong{font-size:1rem}.info-card span{color:var(--muted);font-weight:750;line-height:1.5}
.theme-switch button[data-theme-set="system"],
.auth-theme-switch button[data-theme-set="system"]{font-weight:950}
.theme-switch button.active,
.auth-theme-switch button.active{background:var(--surface-2);color:var(--text);box-shadow:0 7px 18px rgba(15,23,42,.10)}
body[data-theme="dark"] .theme-switch button.active,
body[data-theme="dark"] .auth-theme-switch button.active{background:rgba(255,255,255,.10);box-shadow:0 7px 18px rgba(0,0,0,.22)}
body[data-theme="dark"] .topbar-logo-pair,
body[data-theme="dark"] .brand-logo-wrap,
body[data-theme="dark"] .auth-logo.logo-dark,
body[data-theme="dark"] .auth-brand .logo-dark{filter:drop-shadow(0 0 16px rgba(255,255,255,.10)) drop-shadow(0 18px 32px rgba(0,0,0,.38))}

/* Retter-Portal v1.0.21: temporäre Entwicklungs-Testrechte */
.devtools-hero .inline-form{justify-content:flex-end}.devtools-hero select{min-width:260px}.dev-role-card{position:relative;overflow:hidden}.dev-role-card:before{content:"";position:absolute;inset:-40% auto auto -16%;width:230px;height:230px;border-radius:999px;background:radial-gradient(circle,rgba(100,116,139,.18),transparent 62%);pointer-events:none}.dev-role-card.leader:before{background:radial-gradient(circle,rgba(211,13,33,.18),transparent 62%)}.soft-warning{border-style:dashed}.dev-impersonation-banner{position:sticky;top:73px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 30px 0;padding:12px 14px;border-radius:0 0 18px 18px;background:linear-gradient(135deg,rgba(211,13,33,.96),rgba(12,31,54,.96));color:#fff;box-shadow:0 16px 44px rgba(15,23,42,.22);border:1px solid rgba(255,255,255,.16)}.dev-impersonation-banner strong{font-weight:950}.dev-impersonation-banner span{margin-left:10px;color:rgba(255,255,255,.78);font-size:.9rem}.dev-impersonation-banner .btn{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.22);box-shadow:none}@media(max-width:860px){.devtools-hero .inline-form{justify-content:stretch}.devtools-hero select{min-width:0}.dev-impersonation-banner{top:66px;margin:0 18px;flex-direction:column;align-items:flex-start}.dev-impersonation-banner span{display:block;margin-left:0;margin-top:4px}}

/* Retter-Portal v1.0.22: Support-Tickets und klarere Self-Service-Personalansicht */
.support-thread{display:grid;gap:16px}.ticket-message{padding:16px 18px;border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.035));border:1px solid var(--line-soft);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.ticket-message.original{border-color:rgba(211,13,33,.30);background:linear-gradient(145deg,rgba(211,13,33,.12),rgba(255,255,255,.04))}.ticket-message.internal{border-style:dashed;background:linear-gradient(145deg,rgba(245,158,11,.12),rgba(255,255,255,.035))}.ticket-message-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.ticket-message-head strong{font-weight:950}.ticket-message-head span{color:var(--muted);font-size:.86rem;font-weight:800}.ticket-message p{white-space:pre-wrap;margin:0;line-height:1.62;color:var(--text)}body[data-theme="light"] .ticket-message{background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(224,234,246,.72));border-color:rgba(82,101,126,.26);box-shadow:0 10px 26px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.72)}body[data-theme="light"] .ticket-message.original{background:linear-gradient(145deg,rgba(255,241,242,.95),rgba(228,237,247,.82));border-color:rgba(211,13,33,.24)}body[data-theme="light"] .ticket-message.internal{background:linear-gradient(145deg,rgba(255,251,235,.96),rgba(228,237,247,.82));border-color:rgba(245,158,11,.30)}

/* Retter-Portal v1.0.23: Dateianhänge, Kalender und Dienstplan */
.attachment-card{margin-top:18px}.attachment-upload{display:grid;grid-template-columns:minmax(260px,1.25fr) minmax(220px,.85fr) auto;gap:12px;align-items:center;margin:16px 0}.attachment-drop{position:relative;display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:20px;border:1px dashed var(--line);background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.025));cursor:pointer}.attachment-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.attachment-drop-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:16px;background:linear-gradient(145deg,rgba(211,13,33,.18),rgba(255,255,255,.06));font-weight:950;color:var(--accent)}.attachment-drop small{display:block;color:var(--muted);font-weight:750;margin-top:2px}.attachment-status{grid-column:1/-1;margin:0}.attachment-list{display:grid;gap:10px}.attachment-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid var(--line-soft);border-radius:18px;background:rgba(255,255,255,.045)}.attachment-main{display:flex;align-items:center;gap:13px;min-width:0}.attachment-main strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-main small{display:block;color:var(--muted);font-weight:750;margin-top:2px}.attachment-icon{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:15px;background:rgba(148,163,184,.14)}
.calendar-page-grid{align-items:start}.calendar-list{display:grid;gap:12px}.calendar-item{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:16px;align-items:start;padding:15px;border-radius:20px;border:1px solid var(--line-soft);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025))}.calendar-item time{display:grid;gap:3px;padding:12px;border-radius:17px;background:rgba(211,13,33,.10);border:1px solid rgba(211,13,33,.18);color:var(--text)}.calendar-item time small{color:var(--muted);font-weight:800}.calendar-item h3{margin:8px 0 4px}.compact-pre{font-size:.92rem;margin-top:8px}.timeline-list{display:grid;gap:10px}.timeline-item{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:17px;border:1px solid var(--line-soft);background:rgba(255,255,255,.04);color:var(--text);text-decoration:none}.timeline-item:hover{transform:translateY(-1px);border-color:rgba(211,13,33,.22)}.timeline-dot{width:10px;height:10px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 5px rgba(211,13,33,.12);margin-top:7px;flex:0 0 auto}.timeline-item strong{display:block}.timeline-item small{display:block;color:var(--muted);font-weight:800;margin-top:2px}
body[data-theme="light"] .attachment-drop,body[data-theme="light"] .attachment-item,body[data-theme="light"] .calendar-item,body[data-theme="light"] .timeline-item{background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(224,234,246,.78));border-color:rgba(82,101,126,.28);box-shadow:0 12px 28px rgba(15,23,42,.075),inset 0 1px 0 rgba(255,255,255,.72)}body[data-theme="light"] .calendar-item time{background:linear-gradient(145deg,#fff1f2,#e5edf7);border-color:rgba(211,13,33,.20)}body[data-theme="light"] .attachment-icon{background:#e4ecf6;border:1px solid rgba(82,101,126,.16)}
@media(max-width:900px){.attachment-upload{grid-template-columns:1fr}.calendar-item{grid-template-columns:1fr}.calendar-item .actions{justify-content:flex-start}}

/* Retter-Portal v1.0.24: Kalender-Monatsraster und Hydrantenkarte */
.calendar-month-card{overflow:hidden}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.calendar-weekday{padding:8px 10px;color:var(--muted);font-weight:950;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.calendar-day{min-height:132px;padding:10px;border-radius:18px;border:1px solid var(--line-soft);background:linear-gradient(145deg,rgba(255,255,255,.62),rgba(239,246,255,.46));box-shadow:inset 0 1px 0 rgba(255,255,255,.60);overflow:hidden}.calendar-day.muted-day{opacity:.54}.calendar-day.today{border-color:rgba(200,16,46,.44);box-shadow:0 0 0 3px rgba(200,16,46,.08),inset 0 1px 0 rgba(255,255,255,.62)}body[data-theme="dark"] .calendar-day{background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.035));box-shadow:none}.calendar-day-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:8px}.calendar-day-head span{font-weight:950}.calendar-day-head small{font-size:.72rem;color:var(--muted);font-weight:850}.calendar-day-events{display:grid;gap:5px}.calendar-event-pill{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:6px;min-width:0;padding:6px 7px;border-radius:11px;background:rgba(200,16,46,.09);border:1px solid rgba(200,16,46,.12);color:var(--text);font-size:.78rem;font-weight:860}.calendar-event-pill span{color:#9f1239;font-weight:950}.calendar-event-pill strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body[data-theme="dark"] .calendar-event-pill{background:rgba(240,68,82,.13);border-color:rgba(240,68,82,.22)}body[data-theme="dark"] .calendar-event-pill span{color:#fda4af}.map-card{overflow:hidden}.map-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.map-filter-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;max-width:760px}.map-filter-row input{min-width:260px}.map-filter-row select{min-width:190px}.water-map{position:relative;height:min(68vh,720px);min-height:520px;border-radius:24px;overflow:hidden;border:1px solid var(--line);background:linear-gradient(145deg,var(--surface-2),rgba(148,163,184,.18));box-shadow:inset 0 1px 0 rgba(255,255,255,.40)}.water-map.small{height:380px;min-height:320px}.map-loading{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-weight:950}.map-status{margin-top:10px;font-weight:850}.water-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.water-type-chip{display:grid;gap:5px;padding:14px 15px;border-radius:17px;border:1px solid var(--line-soft);background:rgba(148,163,184,.10)}.water-type-chip strong{font-weight:950}.water-type-chip span{color:var(--muted);font-weight:850}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--surface-2);color:var(--text);box-shadow:0 16px 46px rgba(15,23,42,.22)}.water-popup{display:grid;gap:5px;min-width:220px}.water-popup strong{font-size:1rem}.water-popup small{color:var(--muted)}.water-marker{border-radius:999px;border:2px solid rgba(255,255,255,.85);box-shadow:0 8px 18px rgba(15,23,42,.28)}.water-marker.hydrant{background:#c8102e}.water-marker.water{background:#2563eb}.water-marker.problem{background:#d97706}@media(max-width:1180px){.calendar-grid{gap:7px}.calendar-day{min-height:112px}.water-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.map-toolbar{display:grid}.map-filter-row input,.map-filter-row select{min-width:0;flex:1}}@media(max-width:760px){.calendar-grid{display:block}.calendar-weekday{display:none}.calendar-day{margin-bottom:9px;min-height:auto}.calendar-day.muted-day:empty{display:none}.water-map{height:68vh;min-height:420px}.water-type-grid{grid-template-columns:1fr}.map-filter-row{display:grid}.map-filter-row input,.map-filter-row select,.map-filter-row .btn{width:100%}}

/* Retter-Portal v1.0.26: intuitivere Hydrantenkarte mit Standort und veredelter Kalender */
.water-map-head{align-items:center}.water-map-dashboard{padding:20px}.map-commandbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px}.map-title-block{display:flex;align-items:center;gap:14px}.map-title-block h2{font-size:1.28rem}.map-icon{display:grid;place-items:center;flex:0 0 auto;width:50px;height:50px;border-radius:18px;background:linear-gradient(145deg,rgba(37,99,235,.16),rgba(200,16,46,.10));border:1px solid rgba(37,99,235,.16);font-size:1.55rem}.map-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.map-filter-panel{display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(190px,.7fr) minmax(320px,1fr);gap:12px;align-items:end;padding:14px;margin-bottom:16px;border-radius:22px;border:1px solid var(--line-soft);background:linear-gradient(145deg,rgba(255,255,255,.62),rgba(229,237,247,.48));box-shadow:inset 0 1px 0 rgba(255,255,255,.62)}body[data-theme="dark"] .map-filter-panel{background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.026));box-shadow:none}.map-legend{display:flex;align-items:center;justify-content:flex-end;gap:10px 14px;flex-wrap:wrap;padding-bottom:2px;color:var(--muted);font-weight:850;font-size:.86rem}.legend-dot,.nearest-water-dot{display:inline-block;width:11px;height:11px;border-radius:999px;box-shadow:0 0 0 4px rgba(15,23,42,.06);vertical-align:-1px}.legend-dot.hydrant,.nearest-water-dot.hydrant{background:#c8102e}.legend-dot.water,.nearest-water-dot.water{background:#2563eb}.legend-dot.problem,.nearest-water-dot.problem{background:#d97706}.legend-dot.user{background:#0ea5e9}.water-map-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:stretch}.water-map-shell{min-width:0}.water-map{height:min(70vh,760px);min-height:560px;border-radius:28px;border:1px solid rgba(82,101,126,.32);box-shadow:0 22px 70px rgba(15,23,42,.16),inset 0 1px 0 rgba(255,255,255,.70)}body[data-theme="dark"] .water-map{border-color:rgba(255,255,255,.10);box-shadow:0 24px 80px rgba(0,0,0,.36)}.map-side-panel{display:flex;flex-direction:column;gap:12px;padding:15px;border-radius:26px;border:1px solid var(--line-soft);background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(225,234,246,.72));box-shadow:0 20px 54px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.72)}body[data-theme="dark"] .map-side-panel{background:linear-gradient(145deg,rgba(17,28,45,.88),rgba(10,18,31,.72));box-shadow:0 20px 60px rgba(0,0,0,.24);border-color:rgba(255,255,255,.08)}.side-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.side-panel-head h3{font-size:1.02rem}.nearest-water-list{display:grid;gap:9px;max-height:420px;overflow:auto;padding-right:2px}.nearest-water-item{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:flex-start;padding:11px 12px;border-radius:17px;border:1px solid var(--line-soft);background:rgba(255,255,255,.58);color:var(--text);transition:border-color .14s ease,background .14s ease}.nearest-water-item:hover{border-color:rgba(200,16,46,.28);background:rgba(255,255,255,.80)}body[data-theme="dark"] .nearest-water-item{background:rgba(255,255,255,.045)}body[data-theme="dark"] .nearest-water-item:hover{background:rgba(255,255,255,.075)}.nearest-water-item strong{display:block;font-size:.93rem}.nearest-water-item small{display:block;color:var(--muted);font-weight:780;line-height:1.35;margin-top:2px}.nearest-water-dot{margin-top:5px;width:12px;height:12px;box-shadow:0 0 0 5px rgba(15,23,42,.07)}.map-help-box{margin-top:auto;padding:13px 14px;border-radius:18px;background:linear-gradient(145deg,rgba(200,16,46,.085),rgba(37,99,235,.07));border:1px solid rgba(200,16,46,.12)}.map-help-box strong{font-weight:950}.map-help-box p{margin:.25rem 0 0}.leaflet-control-zoom a{color:#132233!important}.leaflet-popup-content{margin:12px 14px!important}.water-popup .btn{margin-top:5px;box-shadow:none}.map-status{padding:10px 12px;border-radius:16px;background:rgba(148,163,184,.11);border:1px solid var(--line-soft)}
.calendar-toolbar{display:grid;grid-template-columns:auto minmax(260px,420px) 1fr;gap:16px;align-items:center;padding:16px 18px}.calendar-month-nav{display:flex;align-items:center;gap:10px}.calendar-current-month{display:grid;min-width:230px;padding:3px 8px}.calendar-current-month strong{font-size:1.55rem;letter-spacing:-.05em;text-transform:capitalize}.calendar-month-form{display:flex;gap:10px;align-items:end}.calendar-month-form label{min-width:190px}.calendar-legend{display:flex;justify-content:flex-end;gap:10px 16px;flex-wrap:wrap;color:var(--muted);font-size:.88rem;font-weight:850}.calendar-legend-dot{display:inline-block;width:11px;height:11px;border-radius:999px;margin-right:6px;vertical-align:-1px;box-shadow:0 0 0 4px rgba(15,23,42,.06)}.calendar-legend-dot.dienst{background:#c8102e}.calendar-legend-dot.pruefung{background:#2563eb}.calendar-legend-dot.besprechung{background:#d97706}.refined-calendar{padding:20px}.refined-calendar .calendar-grid{gap:9px}.refined-calendar .calendar-weekday{text-align:center;padding:10px;border-radius:14px;background:rgba(148,163,184,.10);border:1px solid var(--line-soft)}.refined-calendar .calendar-day{min-height:146px;background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(226,235,247,.78));border-color:rgba(82,101,126,.24);box-shadow:0 10px 28px rgba(15,23,42,.075),inset 0 1px 0 rgba(255,255,255,.74)}body[data-theme="dark"] .refined-calendar .calendar-day{background:linear-gradient(145deg,rgba(255,255,255,.072),rgba(255,255,255,.034));border-color:rgba(255,255,255,.075);box-shadow:none}.refined-calendar .calendar-day.has-events{border-color:rgba(200,16,46,.20)}.refined-calendar .calendar-day.today{background:linear-gradient(145deg,rgba(255,241,242,.92),rgba(226,235,247,.82));border-color:rgba(200,16,46,.45);box-shadow:0 0 0 3px rgba(200,16,46,.09),0 12px 30px rgba(200,16,46,.10)}body[data-theme="dark"] .refined-calendar .calendar-day.today{background:linear-gradient(145deg,rgba(200,16,46,.18),rgba(255,255,255,.05));box-shadow:0 0 0 3px rgba(200,16,46,.12)}.calendar-day-head span{display:grid;place-items:center;width:30px;height:30px;border-radius:11px;background:rgba(148,163,184,.11)}.calendar-day.today .calendar-day-head span{background:#c8102e;color:#fff}.calendar-event-pill{min-height:28px;border-left:3px solid #c8102e;background:rgba(200,16,46,.08)}.calendar-event-pill.prüfung,.calendar-event-pill.pruefung{border-left-color:#2563eb;background:rgba(37,99,235,.09)}.calendar-event-pill.besprechung,.calendar-event-pill.sitzung{border-left-color:#d97706;background:rgba(217,119,6,.10)}.calendar-event-pill.übung,.calendar-event-pill.uebung,.calendar-event-pill.dienst{border-left-color:#c8102e}.calendar-event-pill:hover{border-color:rgba(200,16,46,.26);transform:translateY(-1px)}.calendar-more{padding-left:3px}.refined-list .calendar-item{border-color:rgba(82,101,126,.18)}.calendar-upcoming-card{position:sticky;top:96px}.calendar-upcoming-card .timeline-item{padding:14px}.calendar-upcoming-card .timeline-dot{width:12px;height:12px;margin-top:6px}
@media(max-width:1220px){.water-map-layout{grid-template-columns:1fr}.map-side-panel{order:2}.nearest-water-list{max-height:300px}.calendar-toolbar{grid-template-columns:1fr}.calendar-legend{justify-content:flex-start}.calendar-upcoming-card{position:relative;top:auto}}
@media(max-width:760px){.map-commandbar{display:grid}.map-actions{justify-content:stretch}.map-actions .btn{width:100%}.map-filter-panel{grid-template-columns:1fr}.map-legend{justify-content:flex-start}.water-map{height:68vh;min-height:430px;border-radius:22px}.water-map-layout{gap:12px}.calendar-month-nav{justify-content:space-between}.calendar-current-month{min-width:0}.calendar-month-form{display:grid}.calendar-month-form label,.calendar-month-form .btn{width:100%}.refined-calendar .calendar-day{min-height:auto}.calendar-day-head span{width:28px;height:28px}.calendar-toolbar{padding:14px}}

/* v1.0.28-alpha.1 */
.map-popup-links{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.water-popup .btn.primary{background:#c8102e;color:#fff;border-color:#c8102e}.calendar-day{position:relative}.calendar-day-add{display:inline-flex;align-items:center;gap:4px;margin:-2px 0 7px;padding:5px 8px;border-radius:999px;border:1px solid rgba(200,16,46,.18);background:rgba(200,16,46,.08);font-size:.72rem;font-weight:950;color:var(--text)}.calendar-day-add:hover{background:rgba(200,16,46,.14);transform:translateY(-1px)}body[data-theme="dark"] .calendar-day-add{background:rgba(240,68,82,.14);border-color:rgba(240,68,82,.26)}.invite-card .spacing-top{margin-top:14px}.break-all{word-break:break-all}.form-meta{display:flex;justify-content:flex-end;margin-top:-6px}.form-meta a{font-size:.9rem;font-weight:850;color:var(--accent)}

/* v1.0.28-alpha.1 · Praxis-Feinschliff: Kalender, Karten-Rückkehr, Mobile App-Gefühl */
.auth-privacy-panel{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:flex-start;margin-top:22px;padding:18px;border-radius:24px;border:1px solid rgba(200,16,46,.18);background:linear-gradient(135deg,rgba(200,16,46,.10),rgba(19,34,51,.06));box-shadow:0 16px 42px rgba(15,23,42,.08)}
.auth-privacy-panel>span{display:grid;place-items:center;width:46px;height:46px;border-radius:16px;background:#fff1f2;color:#9f1239;font-size:1.35rem;box-shadow:0 12px 28px rgba(200,16,46,.12)}
.auth-privacy-panel strong{display:block;margin-bottom:4px;font-size:1.04rem;font-weight:950;color:var(--text)}
.auth-privacy-panel p{margin:0;color:var(--muted);font-weight:780;line-height:1.55}
body[data-theme="dark"] .auth-privacy-panel{background:linear-gradient(135deg,rgba(248,113,113,.12),rgba(255,255,255,.045));border-color:rgba(248,113,113,.18)}
body[data-theme="dark"] .auth-privacy-panel>span{background:rgba(248,113,113,.14);color:#fecdd3}

.calendar-day.clickable-day{cursor:pointer;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease,background .14s ease}
.calendar-day.clickable-day:hover{transform:translateY(-2px);border-color:rgba(200,16,46,.30);box-shadow:0 16px 38px rgba(15,23,42,.12),0 0 0 3px rgba(200,16,46,.055)}
body[data-theme="dark"] .calendar-day.clickable-day:hover{box-shadow:0 16px 44px rgba(0,0,0,.26),0 0 0 3px rgba(248,113,113,.09)}
.calendar-day-add{position:relative;z-index:2}.calendar-day-events{position:relative;z-index:2}.calendar-event-pill{position:relative;z-index:3}
.calendar-day.has-events .calendar-day-head small{color:#c8102e}body[data-theme="dark"] .calendar-day.has-events .calendar-day-head small{color:#fda4af}
.refined-calendar .calendar-day{display:flex;flex-direction:column}.refined-calendar .calendar-day-events{flex:1;align-content:start}.calendar-page-grid .card{align-self:start}
.calendar-item{display:grid;grid-template-columns:150px 1fr auto;gap:16px;align-items:start;padding:14px;border:1px solid var(--line-soft);border-radius:18px;background:rgba(148,163,184,.08);margin-bottom:10px}.calendar-item time{display:grid;gap:3px}.calendar-item time strong{font-weight:950}.calendar-item time small{color:var(--muted);font-weight:850}.calendar-item h3{font-size:1.02rem;margin:.25rem 0 .1rem}body[data-theme="dark"] .calendar-item{background:rgba(255,255,255,.045)}

.water-map-dashboard{scroll-margin-top:86px}.water-map-shell,.map-side-panel,.calendar-month-card,.calendar-toolbar{transition:box-shadow .16s ease,border-color .16s ease}.map-status{font-size:.9rem}.nearest-water-item{scroll-margin-top:90px}

@media(max-width:860px){
  body{background:linear-gradient(180deg,var(--bg),var(--bg2));letter-spacing:-.01em}.app-shell{display:block}.main{min-height:100vh}.topbar{position:sticky;top:0;padding:12px 14px;border-bottom:1px solid var(--line-soft);box-shadow:0 10px 32px rgba(15,23,42,.08)}.content{padding:14px 12px 88px;width:100%}.page-head,.page-hero{gap:14px;margin-bottom:16px}.page-head h1,.page-hero h1{font-size:clamp(1.7rem,8vw,2.35rem);line-height:1.06}.card,.stat-card,.toolbar,.pagination,.login-card{border-radius:22px;box-shadow:0 14px 36px rgba(15,23,42,.10)}.card{padding:16px;margin-bottom:14px}.card-head{align-items:flex-start}.actions,.hero-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.actions .btn,.hero-actions .btn{width:100%;min-height:44px}.stat-grid.six,.stat-grid.three,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{min-height:98px;padding:14px}.stat-card strong{font-size:1.85rem}.sidebar{border-radius:0 28px 28px 0;box-shadow:22px 0 70px rgba(2,6,23,.38)}.sidebar nav a{padding:13px 12px;min-height:48px}.table-wrap{border-radius:16px}.table-wrap table{min-width:680px}.form-grid{gap:12px}input,select,textarea{min-height:44px}.btn{min-height:44px;border-radius:14px}.water-map-layout{display:flex;flex-direction:column}.map-side-panel{order:2}.water-map{height:62vh;min-height:390px}.map-filter-panel{padding:12px;border-radius:20px}.calendar-toolbar{gap:12px}.calendar-month-nav .btn{width:auto;min-width:48px}.calendar-grid{display:grid;grid-template-columns:1fr;gap:10px}.calendar-weekday{display:none}.calendar-day{min-height:auto;padding:13px}.calendar-day.muted-day{display:none}.calendar-item{grid-template-columns:1fr;gap:10px}.calendar-item .actions{display:flex}.calendar-upcoming-card{position:relative;top:auto}.auth-landing{padding:12px}.auth-hero-grid{gap:12px}.auth-hero-copy h1{font-size:clamp(2.2rem,12vw,3.4rem)}.auth-feature-row{gap:12px}.auth-privacy-panel{grid-template-columns:1fr;padding:16px}.auth-theme-switch{width:100%;justify-content:space-between}.auth-theme-switch button{flex:1}
}
@media(max-width:520px){.stat-grid.six,.stat-grid.three,.stat-grid{grid-template-columns:1fr}.actions,.hero-actions{grid-template-columns:1fr}.topbar-user{gap:6px}.theme-switch{max-width:100%;overflow:auto}.theme-dot{width:32px;min-width:32px}.brand img{max-width:210px}.water-map{height:58vh;min-height:360px}.map-commandbar,.map-title-block{gap:10px}.map-icon{width:42px;height:42px;border-radius:14px}.calendar-current-month strong{font-size:1.25rem}.auth-brand img{width:min(230px,70vw)}}

/* v1.0.30-alpha.1: Kalender bewusst ruhiger und präziser bedienbar */
.calendar-day-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.calendar-day-head small{font-size:.72rem;color:var(--muted);font-weight:900}.calendar-day-add-mini{display:grid;place-items:center;width:28px;height:28px;border-radius:10px;background:rgba(200,16,46,.10);border:1px solid rgba(200,16,46,.22);color:#c8102e;font-size:1rem;font-weight:1000;line-height:1;box-shadow:0 6px 18px rgba(200,16,46,.08);transition:transform .14s ease,background .14s ease,border-color .14s ease}.calendar-day-add-mini:hover{transform:translateY(-1px);background:#c8102e;border-color:#c8102e;color:#fff}.calendar-day-add{display:none!important}.calendar-day.clickable-day{cursor:default}.calendar-day.clickable-day:hover{transform:none;box-shadow:0 10px 28px rgba(15,23,42,.075),inset 0 1px 0 rgba(255,255,255,.74)}body[data-theme="dark"] .calendar-day-add-mini{background:rgba(248,113,113,.13);border-color:rgba(248,113,113,.28);color:#fecdd3}body[data-theme="dark"] .calendar-day-add-mini:hover{background:#ef4444;border-color:#ef4444;color:#fff}.calendar-event-pill.service-source{border-left-color:#0ea5e9;background:rgba(14,165,233,.09)}.calendar-event-pill.service-source:hover{border-color:rgba(14,165,233,.28)}.calendar-list .calendar-item h3 a:hover{color:var(--primary)}
@media(max-width:760px){.calendar-day-head{margin-bottom:6px}.calendar-day-add-mini{width:32px;height:32px;border-radius:12px}.calendar-event-pill{min-height:32px}.calendar-page-grid{grid-template-columns:1fr!important}}
.calendar-detail-card .card-head{align-items:flex-start}.calendar-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px}.detail-item{display:grid;gap:5px;padding:15px;border-radius:18px;border:1px solid var(--line-soft);background:rgba(148,163,184,.08)}.detail-item span{color:var(--muted);font-size:.82rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.detail-item strong{font-size:1rem}.detail-section{margin-top:16px;padding:16px;border-radius:18px;border:1px solid var(--line-soft);background:rgba(148,163,184,.07)}.detail-section h3{margin:0 0 8px}.internal-note{border-color:rgba(200,16,46,.18);background:rgba(200,16,46,.06)}body[data-theme="light"] .detail-item,body[data-theme="light"] .detail-section{background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(226,235,247,.72));box-shadow:0 10px 26px rgba(15,23,42,.06)}@media(max-width:980px){.calendar-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.calendar-detail-grid{grid-template-columns:1fr}.calendar-detail-card .actions{display:grid}.calendar-detail-card .actions .btn{width:100%}}

/* Retter-Portal v1.0.36-alpha.1: Support klarer und API/PDF praxisnaher */
.support-hero{background:linear-gradient(135deg,rgba(200,16,46,.12),rgba(19,34,51,.08),var(--surface));overflow:hidden;position:relative}
.support-hero:after{content:"";position:absolute;right:-80px;top:-110px;width:300px;height:300px;border-radius:999px;background:radial-gradient(circle,rgba(200,16,46,.20),transparent 66%);pointer-events:none}.support-hero>*{position:relative;z-index:1}.support-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:-6px 0 20px}.support-quick-card{display:grid;gap:5px;padding:17px;border-radius:20px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.support-quick-card span{display:grid;place-items:center;width:38px;height:38px;border-radius:14px;background:rgba(200,16,46,.10);font-size:1.15rem}.support-quick-card strong{font-size:1rem}.support-quick-card small{color:var(--muted);font-weight:800;line-height:1.45}.support-toolbar input{min-width:min(320px,100%);flex:2}.support-toolbar select{width:auto;min-width:180px}.support-ticket-list{display:grid;gap:13px}.support-ticket-card{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 20px;border-radius:22px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:.14s ease}.support-ticket-card:hover{transform:translateY(-1px);border-color:rgba(200,16,46,.32);box-shadow:var(--shadow)}.support-ticket-main h2{margin:6px 0 5px;font-size:1.18rem}.support-ticket-main p{margin:0;color:var(--muted);font-weight:750}.support-ticket-meta{display:flex;flex-wrap:wrap;gap:8px}.support-ticket-meta span{padding:5px 8px;border-radius:999px;background:rgba(148,163,184,.14);color:var(--muted);font-size:.75rem;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.support-ticket-state{display:grid;justify-items:end;gap:8px;min-width:160px}.support-choice{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.support-choice-card{display:grid;gap:6px;padding:14px;border:1px solid var(--line);border-radius:18px;background:rgba(148,163,184,.08);cursor:pointer;color:var(--text);transition:.14s ease}.support-choice-card input{position:absolute;opacity:0;pointer-events:none}.support-choice-card span{font-size:1.25rem}.support-choice-card strong{font-size:.94rem}.support-choice-card small{color:var(--muted);font-weight:760;line-height:1.35}.support-choice-card:has(input:checked){border-color:rgba(200,16,46,.45);background:rgba(200,16,46,.10);box-shadow:0 12px 30px rgba(200,16,46,.10)}.support-detail-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}.support-side{position:sticky;top:96px;align-self:start}.support-thread{gap:14px}.support-reply{margin-top:8px}.empty-state{text-align:center;padding:34px}.empty-state .btn{margin-top:8px}
body[data-theme="dark"] .support-hero{background:linear-gradient(135deg,rgba(200,16,46,.13),rgba(19,34,51,.22),var(--surface))}body[data-theme="dark"] .support-ticket-card,body[data-theme="dark"] .support-quick-card{border-color:rgba(255,255,255,.09)}
@media(max-width:1100px){.support-choice{grid-template-columns:repeat(2,minmax(0,1fr))}.support-detail-grid{grid-template-columns:1fr}.support-side{position:static}.support-ticket-card{align-items:flex-start}.support-ticket-state{justify-items:start}}
@media(max-width:680px){.support-quick-grid{grid-template-columns:1fr}.support-choice{grid-template-columns:1fr}.support-ticket-card{display:grid}.support-toolbar select,.support-toolbar input{width:100%;min-width:0}.support-ticket-state{display:flex;flex-wrap:wrap;min-width:0}.page-hero.support-hero h1{font-size:2rem}}

/* Retter-Portal v1.0.36-alpha.1: Mobile Webapp-Ansicht */
html, body { max-width: 100%; overflow-x: hidden; }
img, svg, video { max-width: 100%; height: auto; }
.content, .main, .card, .page-hero, .toolbar, .table-wrap { min-width: 0; }
.mobile-safe-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }

@media (max-width: 900px) {
  :root { --sidebar-width: 0px; --radius: 20px; --radius-sm: 14px; }
  body { background-attachment: scroll; }
  body:before { background-size: 34px 34px; opacity: .55; }
  .app-shell { display: block; min-height: 100dvh; }
  .sidebar {
    position: fixed;
    z-index: 80;
    inset: 0 auto 0 0;
    width: min(86vw, 330px);
    height: 100dvh;
    transform: translateX(-105%);
    transition: transform .22s ease;
    border-radius: 0 26px 26px 0;
    box-shadow: 22px 0 90px rgba(0,0,0,.38);
    padding-bottom: calc(18px + env(safe-area-inset-bottom));
  }
  body.sidebar-open .sidebar { transform: translateX(0); }
  body.sidebar-open:after {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 70;
    background: rgba(2,6,23,.48);
    backdrop-filter: blur(4px);
  }
  .main { width: 100%; }
  .topbar {
    min-height: 66px;
    padding: calc(10px + env(safe-area-inset-top)) 12px 10px;
    gap: 8px;
    align-items: center;
    position: sticky;
  }
  .menu-toggle { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 14px; background: var(--surface); border: 1px solid var(--line-soft); box-shadow: var(--shadow-sm); }
  .topbar-title { min-width: 0; flex: 1; }
  .topbar-title strong { display: block; max-width: 48vw; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .topbar-eyebrow { font-size: .66rem; max-width: 48vw; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .topbar-user { gap: 6px; }
  .user-chip { display: none; }
  .secure-pill { display: none; }
  .theme-switch { transform: scale(.92); transform-origin: right center; }
  .theme-dot { width: 28px; height: 28px; }
  .content { width: 100%; padding: 14px 12px 24px; }
  .page-head, .page-hero, .card-head { display: grid; grid-template-columns: 1fr; gap: 12px; }
  .page-hero { padding: 20px; border-radius: 24px; margin-bottom: 16px; }
  .page-hero h1, h1 { font-size: clamp(2rem, 10vw, 3.05rem); line-height: 1.02; word-break: normal; overflow-wrap: anywhere; }
  h2 { font-size: 1.12rem; }
  .hero-actions, .actions, .form-actions { justify-content: stretch; }
  .hero-actions .btn, .actions .btn, .form-actions .btn { flex: 1 1 auto; }
  .stat-grid, .stat-grid.six, .stat-grid.three, .grid.two, .grid.three, .form-grid { grid-template-columns: 1fr; gap: 12px; }
  .stat-card { min-height: 94px; padding: 15px; }
  .stat-card strong { font-size: 2rem; }
  .card { padding: 16px; margin-bottom: 14px; border-radius: 22px; overflow: hidden; }
  .toolbar { padding: 12px; display: grid; grid-template-columns: 1fr; align-items: stretch; border-radius: 20px; }
  .toolbar form, .inline-form { display: grid; grid-template-columns: 1fr; width: 100%; }
  .inline-form > * { width: 100%; min-width: 0; }
  input, select, textarea { min-height: 44px; font-size: 16px; }
  .btn { min-height: 44px; border-radius: 14px; }
  .btn.small { min-height: 38px; }
  .table-wrap { max-width: 100%; overflow-x: auto; border-radius: 18px; }
  table { min-width: 640px; }
  th, td { padding: 11px 12px; }
  .compact th, .compact td { padding: 10px; }
  .department-chip, .nearest-water-item, .calendar-event-pill, .mobile-card-row { max-width: 100%; min-width: 0; }
  .calendar-shell, .calendar-grid, .calendar-month, .calendar-list { max-width: 100%; min-width: 0; }
  .calendar-day { min-height: 98px; padding: 10px; }
  .calendar-day .add-day, .calendar-day-add, .day-add { width: 28px; height: 28px; min-height: 28px; padding: 0; border-radius: 999px; font-size: 0; }
  .calendar-day .add-day:before, .calendar-day-add:before, .day-add:before { content: "+"; font-size: 1rem; line-height: 1; }
  .water-map-dashboard { display: grid; grid-template-columns: 1fr; gap: 12px; }
  .water-map, [data-water-map] { min-height: 62dvh; border-radius: 22px; }
  .water-map-sidebar, .water-side-panel { max-height: none; overflow: visible; }
  .auth-landing { min-height: 100dvh; padding: 14px 12px 28px; overflow-x: hidden; }
  .auth-topbar { position: sticky; top: 0; z-index: 10; padding: 12px; border-radius: 20px; }
  .auth-brand img { width: min(220px, 64vw); }
  .auth-hero-grid { display: grid; grid-template-columns: 1fr; gap: 14px; padding: 14px 0; }
  .auth-hero-copy, .auth-card.auth-signin, .auth-why-section { padding: 20px; border-radius: 24px; }
  .auth-hero-copy h1 { font-size: clamp(2.2rem, 11vw, 3.5rem); line-height: 1.02; }
  .auth-feature-row, .auth-benefit-grid { grid-template-columns: 1fr; gap: 12px; }
}

@media (max-width: 520px) {
  .content { padding-left: 10px; padding-right: 10px; }
  .topbar { padding-left: 10px; padding-right: 10px; }
  .card { padding: 14px; }
  .card-head a, .card-head .btn { justify-self: start; }
  table { min-width: 560px; }
  .stat-card { min-height: 86px; }
  .calendar-day { min-height: 86px; }
  .water-popup { max-width: 74vw; }
  .map-popup-links { display: grid; grid-template-columns: 1fr; gap: 6px; }
}

/* v1.0.49-alpha.1 Mailverwaltung */
.input-suffix{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);overflow:hidden}
.input-suffix input{border:0;background:transparent;box-shadow:none!important}
.input-suffix span{padding:0 12px;color:var(--muted);font-weight:900;white-space:nowrap;border-left:1px solid var(--line-soft)}
.table-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.table-actions .inline-form{display:inline-flex}.table-actions .inline-form>*{min-width:0;width:auto}.pill.warn{background:#fffbeb;color:#92400e}.pill.danger{background:#fff1f2;color:#be123c}.pill.ok{background:#ecfdf5;color:#047857}.hint-box{padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(200,16,46,.07);color:var(--text);line-height:1.55}.stat-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 14px}.stat-grid.compact div{padding:15px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}.stat-grid.compact strong{display:block;font-size:1.5rem;letter-spacing:-.04em}.stat-grid.compact span{color:var(--muted);font-weight:850}
@media(max-width:760px){.input-suffix{grid-template-columns:1fr}.input-suffix span{border-left:0;border-top:1px solid var(--line-soft);padding:9px 12px}.table-actions{display:grid}.table-actions .btn{width:100%}.stat-grid.compact{grid-template-columns:1fr}}

/* Retter-Portal v1.0.49-alpha.1: mobile Ansicht repariert – keine Blur-Overlay-Falle mehr */
@media (max-width: 900px) {
  html, body, .app-shell, .main { width: 100% !important; max-width: 100vw !important; overflow-x: hidden !important; }
  body.sidebar-open:after { display: none !important; content: none !important; backdrop-filter: none !important; }
  body.sidebar-open .main, body.sidebar-open .content, body.sidebar-open .topbar { filter: none !important; transform: none !important; }
  .sidebar { background: var(--sidebar-bg, #07101d) !important; backdrop-filter: none !important; filter: none !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch; }
  .sidebar .brand { padding-top: calc(18px + env(safe-area-inset-top)); }
  .sidebar nav a { min-height: 46px; font-size: .98rem; }
  .main { display: block !important; min-width: 0 !important; }
  .topbar { width: 100% !important; max-width: 100vw !important; border-radius: 0 0 22px 22px; }
  .topbar-user form[action="/logout"] .btn { width: auto; min-width: 44px; padding-left: 10px; padding-right: 10px; }
  .topbar-user form[action="/logout"] .btn { font-size: 0; }
  .topbar-user form[action="/logout"] .btn:before { content: "⏻"; font-size: 1rem; }
  .theme-switch { max-width: 126px; }
  .theme-dot.auto { width: 44px; font-size: .72rem; }
  .content { max-width: 100vw !important; }
  .card, .page-hero, .toolbar, .stat-card { max-width: 100% !important; }
  .table-wrap { overflow-x: auto !important; -webkit-overflow-scrolling: touch; }
  .table-wrap table { min-width: 620px; }
  .support-ticket-card, .calendar-item, .timeline-item, .department-chip { word-break: normal; overflow-wrap: anywhere; }
  .brand-text { display: none; }
}
@media (max-width: 560px) {
  .content { padding: 12px 10px 28px !important; }
  .topbar-title strong { max-width: 42vw !important; }
  .topbar-eyebrow { display: none; }
  .menu-toggle { flex: 0 0 42px; }
  .theme-switch { transform: scale(.86); margin-left: -6px; }
  .page-head, .page-hero { margin-bottom: 14px; }
  .card { margin-bottom: 12px !important; }
  .table-wrap table { min-width: 540px; }
}

/* Retter-Portal v1.0.49-alpha.1: Mobile ohne seitliches Schieben */
html, body { width: 100%; max-width: 100%; overflow-x: hidden !important; }
*, *::before, *::after { box-sizing: border-box; }
.app-shell, .main, .content, .topbar, .page-head, .page-hero, .card, .toolbar, .grid, .stat-grid, .table-wrap { max-width: 100%; min-width: 0; }
.card, .page-hero, .toolbar, .table-wrap { overflow-wrap: anywhere; }

@media (max-width: 900px) {
  body { overflow-x: hidden !important; }
  .main, .content { width: 100vw; max-width: 100vw; overflow-x: hidden; }
  .content { padding-left: max(10px, env(safe-area-inset-left)); padding-right: max(10px, env(safe-area-inset-right)); }
  .topbar { width: 100vw; max-width: 100vw; overflow: hidden; }
  .topbar-title, .topbar-user, .actions, .hero-actions, .card-head > * { min-width: 0; max-width: 100%; }
  .page-head, .page-hero, .card-head, .grid.two, .grid.three, .stat-grid, .stat-grid.six, .form-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .actions, .hero-actions { display: grid; grid-template-columns: minmax(0, 1fr); width: 100%; }
  .btn, button, input, select, textarea { max-width: 100%; }
  .card { width: 100%; padding: 14px; border-radius: 20px; }
  .page-hero { padding: 16px; border-radius: 22px; }
  .toolbar { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .toolbar > *, .toolbar form, .inline-form, .compact-toolbar { width: 100%; min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr); }
  .table-wrap { width: 100%; overflow-x: hidden !important; }
  .table-wrap table, table { width: 100% !important; min-width: 0 !important; table-layout: fixed; }
  th, td { white-space: normal !important; overflow-wrap: anywhere !important; word-break: break-word; padding: 9px 8px; font-size: .82rem; }
  th { letter-spacing: .04em; }
  td .btn, td button { width: auto; max-width: 100%; }
  .pill, .status, code { white-space: normal; overflow-wrap: anywhere; }
  .calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); width: 100%; min-width: 0; gap: 5px; }
  .calendar-day { min-width: 0; padding: 7px; min-height: 78px; }
  .calendar-day strong, .calendar-day span, .calendar-event-pill { max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
  .calendar-event-pill { white-space: nowrap; font-size: .72rem; padding: 4px 5px; }
  .map-layout, .water-map-dashboard, .support-detail-grid { display: grid; grid-template-columns: minmax(0, 1fr) !important; }
  .leaflet-container, .water-map, [data-water-map] { width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
  .sidebar { max-width: min(84vw, 320px); }
  body.sidebar-open { overflow: hidden; }
}

@media (max-width: 560px) {
  .content { padding-left: 8px; padding-right: 8px; }
  .card { padding: 12px; }
  .page-hero h1, h1 { font-size: clamp(1.8rem, 9.5vw, 2.65rem); }
  th, td { font-size: .76rem; padding: 8px 6px; }
  .stat-card strong { font-size: 1.75rem; }
  .calendar-day { min-height: 68px; padding: 5px; }
  .calendar-event-pill { font-size: .66rem; }
  .hide-mobile, .optional-mobile-column { display: none !important; }
}

/* v1.0.49-alpha.1: Professionelle Mailverwaltung + Mail-Design */
.mail-admin-hero{background:linear-gradient(135deg,rgba(200,16,46,.16),rgba(13,27,44,.14),var(--surface));position:relative;overflow:hidden}.mail-admin-hero:after{content:"";position:absolute;right:-80px;top:-80px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(200,16,46,.26),transparent 68%);pointer-events:none}.mail-admin-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:18px;margin-bottom:18px}.mail-create-card,.mail-status-card,.mail-list-card{border-color:rgba(200,16,46,.16)}.mail-address-input input{font-weight:900}.mail-info-panel{display:grid;gap:4px;margin-top:14px;padding:14px 15px;border-radius:18px;border:1px solid rgba(200,16,46,.18);background:rgba(200,16,46,.07);color:var(--muted);font-weight:800}.mail-info-panel strong{color:var(--text)}.mail-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.mail-status-grid>div{padding:15px;border:1px solid var(--line-soft);border-radius:18px;background:rgba(148,163,184,.09)}.mail-status-grid strong{display:block;font-size:1.7rem;letter-spacing:-.05em}.mail-status-grid span{display:block;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.mailbox-list{display:grid;gap:11px}.mailbox-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:13px;padding:14px;border-radius:20px;border:1px solid var(--line-soft);background:linear-gradient(145deg,rgba(255,255,255,.62),rgba(235,241,249,.42));box-shadow:var(--shadow-sm)}body[data-theme="dark"] .mailbox-card{background:linear-gradient(145deg,rgba(17,29,45,.94),rgba(10,19,33,.94));border-color:rgba(255,255,255,.08)}.mailbox-card.disabled{opacity:.68}.mailbox-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:16px;background:rgba(200,16,46,.10);color:#c8102e;font-size:1.1rem}.mailbox-main{display:grid;gap:3px;min-width:0}.mailbox-main strong{font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mailbox-main span,.mailbox-main small{color:var(--muted);font-weight:800}.mailbox-main small{font-size:.78rem}.mailbox-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end}.mailbox-state{justify-self:end}@media(max-width:1050px){.mail-admin-grid{grid-template-columns:1fr}.mailbox-card{grid-template-columns:44px minmax(0,1fr);align-items:flex-start}.mailbox-state,.mailbox-actions{grid-column:2;justify-self:start}.mailbox-actions{flex-wrap:wrap}.mailbox-actions .btn{width:auto}}@media(max-width:640px){.mail-status-grid{grid-template-columns:1fr}.mailbox-card{grid-template-columns:1fr}.mailbox-icon{display:none}.mailbox-state,.mailbox-actions{grid-column:auto}.mailbox-actions{display:grid;width:100%}.mailbox-actions form,.mailbox-actions .btn{width:100%}.mail-admin-hero .hero-actions{grid-template-columns:1fr}}

/* v1.0.49-alpha.1 · Organisationspflicht, Anträge und saubere Modulfreigabe */
.org-gate-hero{background:linear-gradient(135deg,rgba(200,16,46,.12),rgba(19,34,51,.10),var(--surface));position:relative;overflow:hidden}.org-gate-hero:after{content:"";position:absolute;right:-100px;top:-130px;width:330px;height:330px;border-radius:999px;background:radial-gradient(circle,rgba(200,16,46,.20),transparent 68%);pointer-events:none}.org-gate-hero>*{position:relative;z-index:1}.org-request-form .info-card{margin-top:4px}.org-request-admin-list{display:grid;gap:16px}.org-request-admin-card{overflow:visible}.org-request-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0}.compact-grid{gap:12px;margin-top:14px}.empty-state{text-align:center}.status.Offen{background:#fff7ed;color:#c2410c;border-color:#fed7aa}.status.In.Prüfung,.status.In\ Prüfung{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.status.Genehmigt{background:#ecfdf5;color:#047857;border-color:#bbf7d0}.status.Abgelehnt{background:#fef2f2;color:#b91c1c;border-color:#fecaca}body[data-theme="dark"] .status.Offen{background:rgba(251,146,60,.13);color:#fdba74;border-color:rgba(251,146,60,.25)}body[data-theme="dark"] .status.Genehmigt{background:rgba(52,211,153,.12);color:#86efac;border-color:rgba(52,211,153,.22)}body[data-theme="dark"] .status.Abgelehnt{background:rgba(248,113,113,.13);color:#fecaca;border-color:rgba(248,113,113,.25)}
@media(max-width:900px){.org-request-detail-grid{grid-template-columns:1fr}.org-request-admin-card .grid.two{grid-template-columns:1fr}.org-gate-hero .hero-actions{display:grid;grid-template-columns:1fr}.org-gate-hero .hero-actions .btn{width:100%}}

/* v1.0.50-alpha.1 · Enterprise UI polish + harte Mobile-Breiten */
:root{--rp-radius-xl:28px;--rp-shadow-soft:0 24px 80px rgba(15,23,42,.12)}
.card{box-shadow:var(--rp-shadow-soft)}
.page-head{align-items:flex-start;gap:18px}
.page-head h1{letter-spacing:-.055em}
.card-head h2,.form-section h2{letter-spacing:-.035em}
.table-wrap{border-radius:22px;border:1px solid var(--border);background:var(--card);overflow:auto;max-width:100%}
.table-wrap table{margin:0}
input,select,textarea{max-width:100%}
.btn{white-space:normal;text-align:center}
@media (max-width: 780px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  .app-shell,.content,.main,.topbar,.page-head,.card,.dashboard-grid,.grid,.form-grid,.detail-grid,.table-wrap{max-width:100%;min-width:0;box-sizing:border-box}
  .content{padding-left:12px;padding-right:12px}
  .page-head{display:flex;flex-direction:column;align-items:stretch}
  .page-head .btn,.page-head form,.inline-form{width:100%}
  .inline-form{display:grid;grid-template-columns:1fr;gap:10px}
  .form-grid,.form-grid.two,.form-grid.three,.grid.two,.grid.three{grid-template-columns:1fr!important}
  .card{border-radius:22px;padding:16px}
  .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .table-wrap table{min-width:0;width:100%;table-layout:auto}
  th,td{white-space:normal;overflow-wrap:anywhere;word-break:normal;padding:10px 8px}
  .actions,.form-actions{display:flex;flex-wrap:wrap;gap:8px}
  .actions .btn,.form-actions .btn{flex:1 1 auto;min-width:0}
  .login-card,.auth-card{width:min(100%, 560px)}
}

/* v1.0.51-alpha.1 · Corporate Remake: seriöser, ruhiger, weniger verspielt */
:root{
  --rp-corporate-red:#b70f24;
  --rp-corporate-red-2:#8c1020;
  --rp-ink:#101828;
  --rp-panel:rgba(255,255,255,.88);
  --radius:20px;
  --shadow:0 18px 48px rgba(16,24,40,.10);
  --shadow-sm:0 7px 22px rgba(16,24,40,.07);
}
body{letter-spacing:-.012em;background:radial-gradient(circle at 10% -10%,rgba(183,15,36,.08),transparent 32rem),radial-gradient(circle at 92% 0,rgba(16,24,40,.08),transparent 32rem),linear-gradient(135deg,var(--bg),var(--bg2));}
body:before{opacity:.28;background-size:56px 56px}.page-hero,.card,.stat-card,.toolbar,.pagination,.login-card{backdrop-filter:blur(14px) saturate(1.08);border-color:rgba(203,213,225,.72);box-shadow:var(--shadow)}
.card{padding:24px;border-radius:24px}.page-hero{border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(248,250,252,.72))}body[data-theme="dark"] .page-hero{background:linear-gradient(145deg,rgba(15,23,42,.92),rgba(15,23,42,.68))}
.page-hero:after{opacity:.55}.page-hero h1,.page-head h1,h1{letter-spacing:-.055em}.muted{line-height:1.72}.btn{border-radius:12px;box-shadow:none;min-height:42px}.btn:hover{box-shadow:0 10px 24px rgba(16,24,40,.10)}.btn.primary{background:linear-gradient(135deg,var(--rp-corporate-red),var(--rp-corporate-red-2))}.btn.primary:hover{box-shadow:0 14px 34px rgba(183,15,36,.22)}
.sidebar nav a{font-weight:820;letter-spacing:-.01em;padding:10px 12px}.sidebar nav a span{width:28px;height:28px;display:inline-grid;place-items:center;border-radius:9px;background:rgba(100,116,139,.10);font-size:.64rem;font-weight:950;letter-spacing:.06em;color:#64748b}.sidebar nav a.active span,.sidebar nav a:hover span{background:rgba(255,255,255,.18);color:currentColor}.nav-section{font-size:.68rem;letter-spacing:.16em}.brand{box-shadow:none;border:1px solid var(--line-soft)}
.topbar{box-shadow:0 1px 0 var(--line-soft);background:rgba(248,250,252,.78)}body[data-theme="dark"] .topbar{background:rgba(8,13,22,.76)}.secure-pill{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.secure-pill.off{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.user-chip small{text-transform:uppercase;letter-spacing:.08em}
.stat-card{min-height:106px}.stat-card span{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.stat-card strong{font-size:2rem}.table-wrap{border-radius:18px;background:rgba(255,255,255,.62)}body[data-theme="dark"] .table-wrap{background:rgba(15,23,42,.56)}th{background:rgba(15,23,42,.045);font-size:.72rem}body[data-theme="dark"] th{background:rgba(255,255,255,.045)}tr:hover td{background:rgba(183,15,36,.025)}
.department-chip-code{width:34px;height:34px;border-radius:11px;display:inline-grid;place-items:center;background:rgba(183,15,36,.09);color:var(--rp-corporate-red);font-size:.7rem;font-weight:950;letter-spacing:.08em}.department-chip{box-shadow:none;background:rgba(148,163,184,.08)}
.rp-corporate-landing{min-height:100vh;padding:24px;background:radial-gradient(circle at 16% -8%,rgba(183,15,36,.13),transparent 35rem),radial-gradient(circle at 86% 4%,rgba(16,24,40,.10),transparent 34rem),linear-gradient(135deg,var(--bg),var(--bg2));}
.rp-public-topbar{position:relative;max-width:1240px;margin:0 auto 26px;padding:14px 18px;border-radius:24px;border:1px solid rgba(203,213,225,.70);background:rgba(255,255,255,.76);box-shadow:0 16px 42px rgba(16,24,40,.07);backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:space-between;gap:18px}.rp-public-topbar .auth-brand img{max-width:235px;height:auto}.rp-public-nav{display:flex;gap:8px;align-items:center}.rp-public-nav a{padding:9px 12px;border-radius:999px;color:var(--muted);font-weight:900}.rp-public-nav a:hover{background:rgba(15,23,42,.06);color:var(--text)}
body[data-theme="dark"] .rp-public-topbar{background:rgba(15,23,42,.72);border-color:rgba(255,255,255,.08)}.rp-public-hero{max-width:1240px;margin:0 auto 24px;grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr);gap:28px;align-items:stretch}.rp-hero-copy{padding:38px 8px}.rp-hero-copy h1{font-size:clamp(2.7rem,5.4vw,5.25rem);line-height:.96;max-width:940px}.rp-hero-copy .auth-lead{max-width:760px;font-size:1.11rem;color:var(--muted);font-weight:760}.rp-hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px}.rp-hero-metrics article{padding:16px 17px;border:1px solid var(--line-soft);border-radius:18px;background:rgba(255,255,255,.64);box-shadow:0 10px 28px rgba(16,24,40,.05)}.rp-hero-metrics strong{display:block;font-size:.94rem}.rp-hero-metrics span{display:block;margin-top:5px;color:var(--muted);font-weight:760;font-size:.86rem;line-height:1.45}body[data-theme="dark"] .rp-hero-metrics article{background:rgba(15,23,42,.66);border-color:rgba(255,255,255,.08)}
.rp-signin-card{align-self:center;padding:30px;border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,255,255,.78));border:1px solid rgba(255,255,255,.78);box-shadow:0 28px 80px rgba(16,24,40,.14)}body[data-theme="dark"] .rp-signin-card{background:linear-gradient(145deg,rgba(15,23,42,.94),rgba(15,23,42,.74));border-color:rgba(255,255,255,.10)}.rp-signin-card:before{height:4px;background:linear-gradient(90deg,var(--rp-corporate-red),#111827)}.rp-signin-card h2{font-size:2rem}.rp-signin-card .auth-logo{max-height:112px;margin-bottom:18px}.rp-signin-card input{background:rgba(255,255,255,.88)}body[data-theme="dark"] .rp-signin-card input{background:rgba(15,23,42,.84)}
.rp-trust-section,.rp-product-section{max-width:1240px;margin:0 auto 24px;padding:34px;border:1px solid rgba(203,213,225,.70);border-radius:30px;background:rgba(255,255,255,.70);box-shadow:0 18px 52px rgba(16,24,40,.08);backdrop-filter:blur(18px)}body[data-theme="dark"] .rp-trust-section,body[data-theme="dark"] .rp-product-section{background:rgba(15,23,42,.62);border-color:rgba(255,255,255,.08)}.rp-section-head{max-width:780px}.rp-section-head h2{font-size:clamp(2rem,3.2vw,3.35rem);line-height:1;letter-spacing:-.055em}.rp-section-head p{color:var(--muted);font-weight:760}.rp-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.rp-trust-grid article,.rp-module-grid .auth-feature-card{padding:22px;border:1px solid var(--line-soft);border-radius:22px;background:rgba(255,255,255,.62);box-shadow:none}.rp-trust-grid span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:13px;background:rgba(183,15,36,.09);color:var(--rp-corporate-red);font-weight:950;margin-bottom:18px}.rp-trust-grid strong,.rp-module-grid strong{display:block;font-size:1.05rem}.rp-trust-grid p,.rp-module-grid p{margin:.55rem 0 0;color:var(--muted);font-weight:760}body[data-theme="dark"] .rp-trust-grid article,body[data-theme="dark"] .rp-module-grid .auth-feature-card{background:rgba(15,23,42,.56);border-color:rgba(255,255,255,.08)}.rp-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.rp-module-grid .auth-feature-card span{display:none}.auth-why-section{background:transparent;box-shadow:none;border:none}.auth-section-head{text-align:left}.auth-feature-row{grid-template-columns:repeat(3,minmax(0,1fr))}
.rp-admin-hero{background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(248,250,252,.72))}.rp-security-card{border-color:rgba(34,197,94,.18)}
@media(max-width:980px){.rp-public-topbar{position:relative;display:grid;grid-template-columns:1fr auto}.rp-public-nav{grid-column:1/-1;overflow:auto;padding-bottom:2px}.rp-public-hero{grid-template-columns:1fr}.rp-hero-metrics,.rp-trust-grid,.rp-module-grid,.auth-feature-row{grid-template-columns:1fr}.rp-hero-copy{padding:18px 0}.rp-trust-section,.rp-product-section{padding:24px}.rp-public-hero{gap:12px}.rp-hero-copy h1{font-size:clamp(2.3rem,10vw,4rem)}}
@media(max-width:720px){.rp-corporate-landing{padding:12px}.rp-public-topbar{border-radius:18px;margin-bottom:16px}.rp-public-topbar .auth-brand img{max-width:210px}.auth-top-actions{justify-self:end}.rp-public-hero{margin-bottom:16px}.rp-signin-card{padding:22px;border-radius:22px}.rp-trust-section,.rp-product-section{border-radius:22px;padding:20px}.rp-hero-metrics article,.rp-trust-grid article,.rp-module-grid .auth-feature-card{border-radius:18px;padding:18px}.rp-section-head h2{font-size:2rem}.topbar{padding:12px 12px}.content{padding:14px}.card{padding:18px;border-radius:20px}.page-hero{padding:22px;border-radius:22px}.table-wrap{overflow-x:auto}.table-wrap table{min-width:720px}.dashboard-table table,.table-wrap.compact table{min-width:0}.mailbox-main strong{white-space:normal}.auth-theme-switch{transform:scale(.94);transform-origin:right center}}
@media(max-width:520px){.rp-public-topbar{grid-template-columns:1fr}.auth-top-actions{justify-self:start}.rp-public-nav a{font-size:.86rem}.rp-hero-copy h1{font-size:2.25rem}.rp-hero-copy .auth-lead{font-size:1rem}.rp-hero-metrics{gap:9px}.topbar-title strong{font-size:.96rem}.secure-pill{padding:7px 9px;font-size:.74rem}.card-head{align-items:flex-start;flex-direction:column}.hero-actions,.actions{display:grid;grid-template-columns:1fr;width:100%}.hero-actions .btn,.actions .btn{width:100%}}
/* v1.0.51-alpha.1 · Mobile ohne horizontales Verschieben */
@media(max-width:720px){
  html,body,.app-shell,.main,.content,.topbar,.page-hero,.card,.grid,.stat-grid,.table-wrap,.toolbar,.form-grid{max-width:100%!important;min-width:0!important;overflow-x:hidden;box-sizing:border-box}
  .table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  .table-wrap table{width:100%!important;min-width:0!important;table-layout:auto!important}
  th,td{white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;padding:9px 7px!important}
  .optional-mobile-column,.hide-mobile{display:none!important}
  input,select,textarea,.btn{max-width:100%!important;min-width:0!important}
}

/* v1.0.54-alpha.1 · Executive Visual Remake: markanter, seriöser, farbiger */
:root{
  --rp-red:#d91027;
  --rp-red-dark:#8e0f20;
  --rp-blue:#2563eb;
  --rp-cyan:#06b6d4;
  --rp-teal:#14b8a6;
  --rp-amber:#f59e0b;
  --rp-green:#22c55e;
  --rp-violet:#7c3aed;
  --rp-ink:#07111f;
  --rp-ink-2:#0e1b2d;
}
body{background:
  radial-gradient(circle at 12% 2%,rgba(217,16,39,.12),transparent 26rem),
  radial-gradient(circle at 86% 4%,rgba(37,99,235,.13),transparent 31rem),
  radial-gradient(circle at 60% 96%,rgba(20,184,166,.10),transparent 26rem),
  linear-gradient(135deg,var(--bg),var(--bg2));}
.btn.primary{background:linear-gradient(135deg,var(--rp-red),var(--rp-red-dark));box-shadow:0 18px 42px rgba(217,16,39,.22)}
.btn.primary:hover{box-shadow:0 22px 54px rgba(217,16,39,.30)}
.secure-pill{background:linear-gradient(135deg,#ecfdf5,#dcfce7);color:#065f46;border-color:#a7f3d0;box-shadow:0 10px 26px rgba(5,150,105,.12)}
.topbar{background:color-mix(in srgb,var(--bg) 78%, transparent);box-shadow:0 12px 36px rgba(15,23,42,.06)}
.topbar-title strong{letter-spacing:-.035em}.topbar-eyebrow{color:color-mix(in srgb,var(--muted) 72%,var(--rp-red))}
.sidebar{background:linear-gradient(180deg,#06111f 0%,#0b1728 52%,#08101d 100%);border-right:1px solid rgba(255,255,255,.08);box-shadow:18px 0 55px rgba(4,9,17,.28)}
.sidebar:before{content:"";position:fixed;left:0;top:0;width:var(--sidebar-width);height:5px;background:linear-gradient(90deg,var(--rp-red),var(--rp-amber),var(--rp-cyan));z-index:2}.brand{padding-top:14px}.brand-logo-wrap{position:relative}.brand-logo-wrap:after{content:"";position:absolute;inset:-8px;border-radius:22px;background:radial-gradient(circle,rgba(217,16,39,.24),transparent 65%);z-index:-1}.brand-text{font-size:1.08rem}.sidebar nav a{position:relative;margin:5px 0;padding:12px 12px 12px 10px;border-radius:16px;color:rgba(241,245,249,.78);background:transparent;overflow:hidden}.sidebar nav a:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:99px;background:transparent}.sidebar nav a span{display:grid;place-items:center;width:30px;height:30px;border-radius:11px;color:#fff;font-size:.72rem;font-weight:950;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)}.sidebar nav a:nth-of-type(5n+1) span{background:linear-gradient(135deg,var(--rp-red),#9f1239)}.sidebar nav a:nth-of-type(5n+2) span{background:linear-gradient(135deg,var(--rp-blue),#1d4ed8)}.sidebar nav a:nth-of-type(5n+3) span{background:linear-gradient(135deg,var(--rp-teal),#0f766e)}.sidebar nav a:nth-of-type(5n+4) span{background:linear-gradient(135deg,var(--rp-amber),#b45309)}.sidebar nav a:nth-of-type(5n+5) span{background:linear-gradient(135deg,var(--rp-violet),#5b21b6)}.sidebar nav a:hover{background:rgba(255,255,255,.075);color:#fff;transform:translateX(2px)}.sidebar nav a.active{background:linear-gradient(135deg,rgba(217,16,39,.98),rgba(37,99,235,.88));box-shadow:0 18px 44px rgba(37,99,235,.20),0 12px 34px rgba(217,16,39,.18)}.sidebar nav a.active:before{background:#fff}.nav-section{color:rgba(203,213,225,.62)}
.card,.stat-card,.toolbar,.pagination,.login-card{border:1px solid color-mix(in srgb,var(--line) 74%, transparent);box-shadow:0 18px 50px rgba(15,23,42,.10)}
.card{position:relative;overflow:hidden}.card:before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:linear-gradient(90deg,rgba(217,16,39,.72),rgba(37,99,235,.55),rgba(20,184,166,.55));opacity:.7}.card-head h2{font-size:1.12rem;letter-spacing:-.035em}.pill,.status,.role{background:linear-gradient(135deg,#fff1f2,#eef2ff);color:#9f1239;border:1px solid rgba(217,16,39,.10)}
.stat-card{position:relative;overflow:hidden;border:0}.stat-card:after{content:"";position:absolute;right:-34px;top:-42px;width:112px;height:112px;border-radius:999px;background:currentColor;opacity:.10}.stat-card span,.stat-card em{position:relative;z-index:1}.stat-card em{font-style:normal;color:var(--muted);font-size:.75rem;font-weight:850}.stat-card strong{position:relative;z-index:1}.tone-red{color:var(--rp-red)}.tone-blue{color:var(--rp-blue)}.tone-teal{color:var(--rp-teal)}.tone-amber{color:var(--rp-amber)}.tone-green{color:var(--rp-green)}.tone-violet{color:var(--rp-violet)}
.stat-card.tone-red{background:linear-gradient(145deg,rgba(217,16,39,.15),var(--surface) 68%)}.stat-card.tone-blue{background:linear-gradient(145deg,rgba(37,99,235,.15),var(--surface) 68%)}.stat-card.tone-teal{background:linear-gradient(145deg,rgba(20,184,166,.16),var(--surface) 68%)}.stat-card.tone-amber{background:linear-gradient(145deg,rgba(245,158,11,.17),var(--surface) 68%)}.stat-card.tone-green{background:linear-gradient(145deg,rgba(34,197,94,.16),var(--surface) 68%)}.stat-card.tone-violet{background:linear-gradient(145deg,rgba(124,58,237,.14),var(--surface) 68%)}
body[data-theme="dark"] .stat-card.tone-red{background:linear-gradient(145deg,rgba(217,16,39,.22),rgba(15,23,42,.86) 68%)}body[data-theme="dark"] .stat-card.tone-blue{background:linear-gradient(145deg,rgba(37,99,235,.22),rgba(15,23,42,.86) 68%)}body[data-theme="dark"] .stat-card.tone-teal{background:linear-gradient(145deg,rgba(20,184,166,.20),rgba(15,23,42,.86) 68%)}body[data-theme="dark"] .stat-card.tone-amber{background:linear-gradient(145deg,rgba(245,158,11,.20),rgba(15,23,42,.86) 68%)}body[data-theme="dark"] .stat-card.tone-green{background:linear-gradient(145deg,rgba(34,197,94,.18),rgba(15,23,42,.86) 68%)}body[data-theme="dark"] .stat-card.tone-violet{background:linear-gradient(145deg,rgba(124,58,237,.20),rgba(15,23,42,.86) 68%)}

/* Public landing */
.rp-impact-landing{position:relative;min-height:100vh;padding:18px;overflow:hidden;background:
  radial-gradient(circle at 8% 10%,rgba(217,16,39,.32),transparent 22rem),
  radial-gradient(circle at 88% 12%,rgba(37,99,235,.26),transparent 34rem),
  radial-gradient(circle at 52% 90%,rgba(20,184,166,.18),transparent 32rem),
  linear-gradient(135deg,#050a12 0%,#0a1321 52%,#0b1220 100%);color:#f8fafc}.rp-impact-landing:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,#000,transparent 86%)}.rp-impact-landing:after{content:"";position:absolute;right:-14%;top:12%;width:58vw;height:58vw;border-radius:999px;background:conic-gradient(from 120deg,rgba(217,16,39,.48),rgba(37,99,235,.38),rgba(20,184,166,.30),rgba(217,16,39,.48));filter:blur(74px);opacity:.35;pointer-events:none}.rp-impact-landing>*{position:relative;z-index:1}.rp-impact-nav{position:sticky;top:18px;z-index:10;margin:0 auto 18px;width:min(1500px,100%);border-radius:22px;padding:12px 16px;background:rgba(5,10,18,.72);backdrop-filter:blur(24px) saturate(1.5);border:1px solid rgba(255,255,255,.10);box-shadow:0 20px 70px rgba(0,0,0,.25)}.rp-impact-nav .auth-brand img{max-height:56px}.rp-impact-nav .rp-public-nav a{color:rgba(248,250,252,.78);font-weight:950}.rp-impact-nav .rp-public-nav a:hover{color:#fff}.rp-nav-login{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#fff;box-shadow:none}.rp-nav-primary{min-width:112px}.rp-impact-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);gap:28px;align-items:center;width:min(1500px,100%);min-height:calc(100vh - 118px);margin:0 auto;padding:28px 0 72px}.rp-impact-copy{padding:24px 12px}.rp-impact-copy .eyebrow{color:#fca5a5}.rp-impact-copy h1{max-width:940px;font-size:clamp(3rem,7vw,7.8rem);line-height:.88;letter-spacing:-.08em;color:#fff;text-wrap:balance}.rp-impact-copy .auth-lead{max-width:720px;margin:28px 0;color:#cbd5e1;font-size:clamp(1.05rem,1.35vw,1.35rem);font-weight:650;line-height:1.6}.rp-impact-actions{display:flex;flex-wrap:wrap;gap:14px;margin:28px 0}.rp-impact-actions .btn{min-height:54px;padding-inline:22px;border-radius:16px}.rp-trust-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.rp-trust-row span{display:inline-flex;align-items:center;gap:10px;padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);color:#dbeafe;font-weight:850}.rp-trust-row strong{color:#fff;letter-spacing:.08em}.rp-hero-visual{position:relative;min-height:680px;display:grid;align-items:center}.rp-visual-glow{position:absolute;border-radius:999px;filter:blur(28px);opacity:.72}.rp-visual-glow.one{right:8%;top:7%;width:260px;height:260px;background:rgba(217,16,39,.28)}.rp-visual-glow.two{left:5%;bottom:14%;width:240px;height:240px;background:rgba(6,182,212,.24)}.rp-command-preview{position:absolute;right:5%;top:5%;width:min(520px,88%);padding:18px;border-radius:30px;background:linear-gradient(145deg,rgba(15,23,42,.92),rgba(15,23,42,.60));border:1px solid rgba(255,255,255,.12);box-shadow:0 34px 120px rgba(0,0,0,.45);backdrop-filter:blur(22px);transform:rotate(1.5deg)}.rp-preview-top{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:#cbd5e1;font-weight:900}.rp-preview-top span{width:10px;height:10px;border-radius:999px;background:#64748b}.rp-preview-top span:first-child{background:var(--rp-red)}.rp-preview-top span:nth-child(2){background:var(--rp-amber)}.rp-preview-top span:nth-child(3){background:var(--rp-green)}.rp-preview-top strong{margin-left:auto;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.rp-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rp-preview-grid article{padding:18px;border-radius:22px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}.rp-preview-grid small{display:block;color:#cbd5e1;font-weight:900}.rp-preview-grid strong{display:block;margin:8px 0 4px;font-size:2.4rem;color:#fff}.rp-preview-grid em{font-style:normal;color:#94a3b8;font-weight:800}.rp-preview-flow{display:grid;grid-template-columns:1fr .6fr .8fr .5fr;gap:10px;margin-top:16px}.rp-preview-flow span{height:12px;border-radius:99px;background:rgba(255,255,255,.10)}.rp-preview-flow span:first-child{background:linear-gradient(90deg,var(--rp-red),var(--rp-amber))}.rp-preview-flow span:nth-child(3){background:linear-gradient(90deg,var(--rp-blue),var(--rp-cyan))}.rp-signin-card{position:relative;z-index:2;align-self:end;justify-self:start;width:min(430px,92%);margin-top:250px;background:linear-gradient(155deg,rgba(255,255,255,.96),rgba(248,250,252,.88));color:#0f172a;box-shadow:0 40px 120px rgba(0,0,0,.40);border-color:rgba(255,255,255,.78)}body[data-theme="dark"] .rp-signin-card{background:linear-gradient(155deg,rgba(15,23,42,.97),rgba(15,23,42,.86));color:#f8fafc}.rp-signin-card .btn.primary{background:linear-gradient(135deg,var(--rp-red),#7f1021)}
.rp-problem-solution,.rp-module-showcase,.rp-security-section,.rp-workflow-section{width:min(1500px,100%);margin:0 auto 22px;border-radius:34px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);backdrop-filter:blur(22px);box-shadow:0 30px 100px rgba(0,0,0,.20);padding:clamp(24px,4vw,58px)}.rp-problem-solution{display:grid;grid-template-columns:.9fr 1.2fr;gap:32px;align-items:center}.rp-problem-solution h2,.rp-module-showcase h2,.rp-security-section h2,.rp-workflow-section h2{font-size:clamp(2rem,4vw,4.6rem);line-height:.95;color:#fff}.rp-problem-solution p,.rp-module-showcase p,.rp-security-section p,.rp-workflow-section p{color:#cbd5e1}.rp-impact-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.rp-impact-cards article{min-height:210px;padding:22px;border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.045));border:1px solid rgba(255,255,255,.10)}.rp-impact-cards span{display:inline-flex;margin-bottom:22px;color:#fff;background:linear-gradient(135deg,var(--rp-red),var(--rp-blue));padding:8px 11px;border-radius:999px;font-weight:950}.rp-impact-cards strong{display:block;color:#fff;font-size:1.28rem}.rp-module-mosaic{display:grid;grid-template-columns:1.1fr 1fr 1fr;grid-auto-rows:190px;gap:16px;margin-top:28px}.rp-module-mosaic article{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;border-radius:30px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);box-shadow:inset 0 -120px 120px currentColor}.rp-module-mosaic article:before{content:"";position:absolute;right:-40px;top:-40px;width:170px;height:170px;border-radius:999px;background:currentColor;opacity:.25}.rp-module-mosaic .big{grid-row:span 2}.rp-module-mosaic .wide{grid-column:span 2}.rp-module-mosaic span{color:rgba(255,255,255,.80);font-weight:950;text-transform:uppercase;letter-spacing:.10em}.rp-module-mosaic strong{position:relative;color:#fff;font-size:1.7rem;letter-spacing:-.04em}.rp-security-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:center;background:linear-gradient(135deg,rgba(217,16,39,.18),rgba(37,99,235,.14),rgba(20,184,166,.12))}.rp-security-points{display:grid;gap:12px}.rp-security-points article{padding:18px 20px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10)}.rp-security-points strong{display:block;color:#fff;font-size:1.1rem}.rp-security-points span{color:#cbd5e1;font-weight:800}.rp-workflow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}.rp-workflow article{padding:22px;border-radius:26px;background:#f8fafc;color:#0f172a}.rp-workflow span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--rp-red),var(--rp-blue));color:#fff;font-weight:950;margin-bottom:18px}.rp-workflow strong{font-size:1.18rem}.rp-workflow p{color:#475569;margin-bottom:0}

/* Dashboard remake */
.rp-dashboard-remake{position:relative}.rp-command-hero{position:relative;overflow:hidden;min-height:260px;align-items:stretch;color:#fff;background:
  linear-gradient(120deg,rgba(7,17,31,.96),rgba(15,23,42,.92) 48%,rgba(37,99,235,.56)),
  radial-gradient(circle at 78% 30%,rgba(217,16,39,.42),transparent 24rem);border:1px solid rgba(255,255,255,.10);box-shadow:0 26px 95px rgba(15,23,42,.24)}.rp-command-hero:before{content:"";position:absolute;right:18px;top:18px;width:260px;height:260px;border-radius:42px;background:linear-gradient(135deg,rgba(217,16,39,.24),rgba(6,182,212,.20));transform:rotate(12deg);filter:blur(.2px)}.rp-command-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);opacity:.85}.rp-command-hero>*{position:relative;z-index:1}.rp-command-copy h1{max-width:980px;font-size:clamp(2.4rem,4.9vw,5.7rem);color:#fff}.rp-command-copy .muted{max-width:760px;color:#cbd5e1;font-size:1.08rem}.rp-command-badges{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.rp-command-badges span{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);font-weight:900;color:#f8fafc}.rp-command-actions{align-self:flex-end;min-width:240px}.rp-command-actions .btn:not(.primary){background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18);color:#fff;box-shadow:none}.rp-kpi-grid .stat-card{min-height:136px;border-radius:25px}.rp-kpi-grid .stat-card strong{font-size:2.65rem}.rp-dashboard-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 22px}.rp-dashboard-strip article{display:flex;gap:14px;align-items:center;padding:18px;border-radius:24px;background:var(--surface);border:1px solid color-mix(in srgb,var(--line) 74%, transparent);box-shadow:0 14px 42px rgba(15,23,42,.08)}.rp-strip-icon{display:inline-block;width:48px;height:48px;border-radius:17px;background:currentColor;box-shadow:0 14px 32px color-mix(in srgb,currentColor 26%, transparent)}.rp-dashboard-strip strong{display:block;font-size:1.05rem}.rp-dashboard-strip small{display:block;margin-top:4px;color:var(--muted);font-weight:760;line-height:1.45}.rp-dashboard-grid .card{border-radius:28px}.rp-priority-card{background:linear-gradient(145deg,rgba(37,99,235,.12),var(--surface) 58%)}.rp-action-card{background:linear-gradient(145deg,rgba(217,16,39,.10),var(--surface) 62%)}.rp-timeline-card{background:linear-gradient(145deg,rgba(20,184,166,.12),var(--surface) 62%)}.rp-table-card .table-wrap{border-radius:20px}.rp-table-card thead th{background:linear-gradient(135deg,rgba(15,23,42,.06),rgba(37,99,235,.06));color:color-mix(in srgb,var(--muted) 76%,var(--rp-blue))}.timeline-item{position:relative;border-radius:18px;padding:13px 14px;background:color-mix(in srgb,var(--surface-2) 74%, transparent);border:1px solid var(--line-soft)}.timeline-dot{box-shadow:0 0 0 6px rgba(217,16,39,.10);background:var(--rp-red)}.rp-department-strip .department-chip{border-radius:20px;background:linear-gradient(135deg,rgba(217,16,39,.07),rgba(37,99,235,.06));border-color:color-mix(in srgb,var(--line) 70%, transparent);transition:.16s ease}.rp-department-strip .department-chip:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(15,23,42,.10)}.department-chip-code{display:grid;place-items:center;width:42px;height:42px;border-radius:15px;background:linear-gradient(135deg,var(--rp-red),var(--rp-blue));color:#fff;font-weight:950}.rp-mini-kpis .stat-card strong{font-size:2rem}.table-wrap{background:var(--surface-2)}tr:hover td{background:color-mix(in srgb,var(--rp-blue) 6%, transparent)}

@media(max-width:1180px){.rp-impact-hero,.rp-problem-solution,.rp-security-section{grid-template-columns:1fr}.rp-hero-visual{min-height:auto}.rp-command-preview{position:relative;right:auto;top:auto;width:100%;transform:none;margin-bottom:18px}.rp-signin-card{justify-self:stretch;width:100%;margin-top:0}.rp-module-mosaic{grid-template-columns:1fr 1fr}.rp-workflow,.rp-dashboard-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.rp-impact-copy h1{font-size:clamp(3rem,10vw,6rem)}}
@media(max-width:860px){.rp-impact-landing{padding:10px}.rp-impact-nav{top:10px;border-radius:18px}.rp-impact-nav .rp-public-nav{display:none}.rp-impact-nav .auth-top-actions{gap:6px}.rp-impact-nav .auth-theme-switch{display:none}.rp-impact-hero{grid-template-columns:1fr;min-height:auto;padding:24px 0 36px}.rp-impact-copy{padding:14px 6px}.rp-impact-copy h1{font-size:clamp(3rem,15vw,5rem)}.rp-trust-row span{width:100%;justify-content:space-between}.rp-preview-grid,.rp-impact-cards,.rp-module-mosaic,.rp-workflow,.rp-dashboard-strip{grid-template-columns:1fr}.rp-module-mosaic{grid-auto-rows:auto}.rp-module-mosaic .big,.rp-module-mosaic .wide{grid-row:auto;grid-column:auto}.rp-module-mosaic article{min-height:190px}.rp-problem-solution,.rp-module-showcase,.rp-security-section,.rp-workflow-section{border-radius:24px;padding:24px}.rp-command-hero{min-height:0}.rp-command-actions{width:100%}.rp-command-actions .btn{width:100%}.rp-kpi-grid .stat-card{min-height:118px}.sidebar:before{width:min(86vw,310px)}}
@media(max-width:560px){.rp-impact-actions .btn,.rp-nav-login,.rp-nav-primary{width:100%}.rp-impact-nav{align-items:flex-start}.rp-impact-nav .auth-top-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.rp-impact-copy h1,.rp-command-copy h1{letter-spacing:-.065em}.rp-command-badges span{width:100%;text-align:center}.rp-dashboard-strip article{align-items:flex-start}.rp-strip-icon{width:42px;height:42px}.rp-kpi-grid .stat-card strong{font-size:2.25rem}}

/* v1.0.54-alpha.1 · Premium UI Remake: weniger verspielt, deutlich hochwertiger */
:root{
  --rp53-red:#c8102e;
  --rp53-red-2:#8f1021;
  --rp53-navy:#06111f;
  --rp53-graphite:#111827;
  --rp53-steel:#334155;
  --rp53-blue:#1d4ed8;
  --rp53-cyan:#0891b2;
  --rp53-green:#059669;
  --rp53-amber:#b45309;
  --rp53-surface:rgba(255,255,255,.86);
  --rp53-border:rgba(148,163,184,.28);
  --rp53-shadow:0 28px 90px rgba(15,23,42,.14);
  --rp53-shadow-dark:0 36px 120px rgba(2,6,23,.42);
}
body{letter-spacing:-.012em;background:
  radial-gradient(circle at 8% 0,rgba(200,16,46,.11),transparent 25rem),
  radial-gradient(circle at 90% 6%,rgba(29,78,216,.10),transparent 30rem),
  radial-gradient(circle at 52% 95%,rgba(8,145,178,.08),transparent 30rem),
  linear-gradient(135deg,var(--bg),var(--bg2));}
h1,h2,h3{letter-spacing:-.045em}.muted{line-height:1.72}.btn{border-radius:13px;min-height:43px;box-shadow:none;border-color:rgba(148,163,184,.30)}.btn.primary{background:linear-gradient(135deg,var(--rp53-red),var(--rp53-red-2));box-shadow:0 16px 42px rgba(200,16,46,.22)}.btn.primary:hover{box-shadow:0 22px 58px rgba(200,16,46,.30)}
.card,.stat-card,.toolbar,.pagination,.login-card{border:1px solid var(--rp53-border);box-shadow:0 18px 52px rgba(15,23,42,.09);background:var(--surface)}.card:before{height:2px;background:linear-gradient(90deg,rgba(200,16,46,.78),rgba(29,78,216,.42),rgba(8,145,178,.38));opacity:.88}.secure-pill{background:rgba(236,253,245,.90);color:#065f46;border-color:#bbf7d0;box-shadow:none}.topbar{background:rgba(248,250,252,.74);border-bottom:1px solid rgba(148,163,184,.20);box-shadow:0 10px 32px rgba(15,23,42,.055)}body[data-theme="dark"] .topbar{background:rgba(6,17,31,.78)}.topbar-title strong{font-size:1.04rem;letter-spacing:-.025em}.topbar-eyebrow{color:rgba(100,116,139,.92)}body[data-theme="dark"] .topbar-eyebrow{color:rgba(203,213,225,.66)}
.sidebar{background:linear-gradient(180deg,#030712 0%,#07111f 46%,#0a1423 100%)}.sidebar:before{height:4px;background:linear-gradient(90deg,var(--rp53-red),#ef4444,var(--rp53-blue))}.sidebar nav a span{border-radius:10px;background:rgba(255,255,255,.08)!important;color:#cbd5e1;box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)}.sidebar nav a:hover span,.sidebar nav a.active span{background:rgba(255,255,255,.16)!important;color:#fff}.sidebar nav a.active{background:linear-gradient(135deg,rgba(200,16,46,.92),rgba(29,78,216,.76));box-shadow:0 16px 44px rgba(2,6,23,.34)}
.pill,.status,.role{background:rgba(15,23,42,.055);color:var(--rp53-steel);border:1px solid rgba(148,163,184,.24)}body[data-theme="dark"] .pill,body[data-theme="dark"] .status,body[data-theme="dark"] .role{background:rgba(255,255,255,.07);color:#cbd5e1;border-color:rgba(255,255,255,.09)}

/* Public premium landing */
.rp53-public{position:relative;min-height:100vh;padding:18px;overflow:hidden;color:#f8fafc;background:
  radial-gradient(circle at 10% 8%,rgba(200,16,46,.32),transparent 23rem),
  radial-gradient(circle at 88% 12%,rgba(29,78,216,.25),transparent 34rem),
  radial-gradient(circle at 54% 92%,rgba(8,145,178,.18),transparent 32rem),
  linear-gradient(135deg,#030712 0%,#07111f 46%,#0b1220 100%)}
.rp53-public:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:62px 62px;mask-image:linear-gradient(to bottom,#000,transparent 88%)}
.rp53-public:after{content:"";position:absolute;right:-12%;top:10%;width:58vw;height:58vw;border-radius:999px;background:conic-gradient(from 160deg,rgba(200,16,46,.42),rgba(29,78,216,.32),rgba(8,145,178,.28),rgba(200,16,46,.42));filter:blur(80px);opacity:.42;pointer-events:none}.rp53-public>*{position:relative;z-index:1}
.rp53-public-nav{position:sticky;top:18px;z-index:20;width:min(1520px,100%);margin:0 auto 20px;padding:13px 16px;border-radius:24px;background:rgba(3,7,18,.72);border:1px solid rgba(255,255,255,.12);box-shadow:0 22px 80px rgba(0,0,0,.30);backdrop-filter:blur(24px) saturate(1.4);display:flex;align-items:center;justify-content:space-between;gap:18px}.rp53-brand img{display:block;max-height:58px;width:auto}.rp53-nav-links{display:flex;align-items:center;gap:6px}.rp53-nav-links a{padding:10px 13px;border-radius:999px;color:rgba(226,232,240,.82);font-weight:900}.rp53-nav-links a:hover{background:rgba(255,255,255,.07);color:#fff}.rp53-nav-actions{display:flex;align-items:center;gap:9px}.rp53-login-jump{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.13);color:#fff}.rp53-nav-actions .btn.primary{min-width:158px}
.rp53-hero{width:min(1520px,100%);margin:0 auto;padding:42px 0 70px;min-height:calc(100vh - 118px);display:grid;grid-template-columns:minmax(0,1.02fr) minmax(440px,.86fr);gap:46px;align-items:center}.rp53-hero-copy{padding:12px 8px 36px}.rp53-kicker{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;padding:10px 13px;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(255,255,255,.055);color:#fecaca;font-weight:950;text-transform:uppercase;letter-spacing:.11em;font-size:.75rem}.rp53-kicker span{width:9px;height:9px;border-radius:50%;background:var(--rp53-red);box-shadow:0 0 0 6px rgba(200,16,46,.15)}.rp53-hero h1{max-width:980px;font-size:clamp(3.2rem,6.25vw,7.35rem);line-height:.89;letter-spacing:-.078em;color:#fff;text-wrap:balance}.rp53-lead{max-width:760px;margin:28px 0 0;color:#cbd5e1;font-size:clamp(1.05rem,1.25vw,1.28rem);font-weight:650;line-height:1.68}.rp53-hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin:32px 0 0}.rp53-hero-actions .btn{min-height:56px;padding-inline:24px;border-radius:17px}.rp53-hero-actions .btn:not(.primary){background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12);color:#fff}.rp53-trustline{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.rp53-trustline span{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);color:#dbeafe;font-weight:850}.rp53-trustline strong{color:#fff;letter-spacing:.08em}.rp53-hero-stage{position:relative;min-height:720px;display:grid;grid-template-rows:1fr auto;gap:22px;align-items:end}.rp53-hero-stage:before{content:"";position:absolute;inset:6% -3% 10% 0;border-radius:44px;background:linear-gradient(135deg,rgba(200,16,46,.22),rgba(29,78,216,.18),rgba(8,145,178,.14));filter:blur(22px);opacity:.9}.rp53-stage-card,.rp53-signin{position:relative;z-index:1}.rp53-command-card{align-self:center;padding:20px;border-radius:34px;background:linear-gradient(145deg,rgba(15,23,42,.94),rgba(15,23,42,.70));border:1px solid rgba(255,255,255,.13);box-shadow:var(--rp53-shadow-dark);backdrop-filter:blur(22px)}.rp53-window-bar{display:flex;align-items:center;gap:8px;margin-bottom:18px;color:#cbd5e1;font-size:.8rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.rp53-window-bar i{width:10px;height:10px;border-radius:50%;background:#64748b}.rp53-window-bar i:first-child{background:var(--rp53-red)}.rp53-window-bar i:nth-child(2){background:#f59e0b}.rp53-window-bar i:nth-child(3){background:#22c55e}.rp53-window-bar strong{margin-left:auto}.rp53-command-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.rp53-command-head small{display:block;color:#94a3b8;text-transform:uppercase;letter-spacing:.12em;font-weight:950}.rp53-command-head strong{display:block;margin-top:4px;font-size:1.45rem;color:#fff}.rp53-command-head span{padding:7px 11px;border-radius:999px;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.26);color:#86efac;font-weight:950}.rp53-command-map{position:relative;min-height:260px;margin:20px 0;border-radius:28px;background:radial-gradient(circle at 24% 26%,rgba(200,16,46,.22),transparent 12rem),radial-gradient(circle at 78% 68%,rgba(8,145,178,.20),transparent 13rem),linear-gradient(135deg,rgba(2,6,23,.88),rgba(15,23,42,.70));border:1px solid rgba(255,255,255,.08);overflow:hidden}.rp53-command-map:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.038) 1px,transparent 1px);background-size:36px 36px}.rp53-map-line{position:absolute;left:16%;right:18%;top:52%;height:3px;background:linear-gradient(90deg,var(--rp53-red),var(--rp53-blue),var(--rp53-cyan));border-radius:99px;transform:rotate(-8deg);box-shadow:0 0 28px rgba(37,99,235,.48)}.rp53-map-node{position:absolute;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 0 0 8px rgba(255,255,255,.10),0 0 38px rgba(255,255,255,.34)}.rp53-map-node.a{left:18%;top:48%;background:#f87171}.rp53-map-node.b{left:54%;top:37%;background:#60a5fa}.rp53-map-node.c{right:18%;top:58%;background:#2dd4bf}.rp53-command-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.rp53-command-grid article{padding:16px;border-radius:20px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09)}.rp53-command-grid small{display:block;color:#94a3b8;font-weight:900}.rp53-command-grid strong{display:block;margin-top:5px;color:#fff;font-size:2rem;letter-spacing:-.05em}.rp53-command-grid span{color:#cbd5e1;font-weight:800}.rp53-signin{padding:28px;border-radius:30px;background:rgba(248,250,252,.96);border:1px solid rgba(255,255,255,.72);box-shadow:0 28px 90px rgba(0,0,0,.22);color:#0f172a}.rp53-signin:before{background:linear-gradient(90deg,var(--rp53-red),var(--rp53-blue));height:4px}.rp53-signin h2{font-size:2rem}.rp53-signin .eyebrow{color:#991b1b}.rp53-signin .muted{color:#64748b;margin-top:4px}.rp53-signin input{background:#fff}body[data-theme="dark"] .rp53-signin{background:rgba(15,23,42,.94);border-color:rgba(255,255,255,.10);color:#f8fafc}body[data-theme="dark"] .rp53-signin input{background:rgba(2,6,23,.82)}
.rp53-logo-strip{width:min(1520px,100%);margin:0 auto 22px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.rp53-logo-strip article{padding:19px 20px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);backdrop-filter:blur(18px)}.rp53-logo-strip strong{display:block;color:#fff}.rp53-logo-strip span{display:block;margin-top:5px;color:#cbd5e1;font-weight:700}.rp53-section{width:min(1520px,100%);margin:0 auto 22px;padding:36px;border-radius:34px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.11);box-shadow:0 22px 90px rgba(0,0,0,.22);backdrop-filter:blur(22px)}.rp53-section-head{max-width:820px}.rp53-section h2{font-size:clamp(2.05rem,3.3vw,4rem);line-height:.98;color:#fff}.rp53-section p{color:#cbd5e1;font-weight:650}.rp53-feature-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-auto-rows:minmax(210px,auto);gap:16px;margin-top:28px}.rp53-feature-grid article{position:relative;overflow:hidden;padding:24px;border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.045));border:1px solid rgba(255,255,255,.11)}.rp53-feature-grid article:after{content:"";position:absolute;right:-40px;bottom:-50px;width:180px;height:180px;border-radius:999px;background:radial-gradient(circle,rgba(200,16,46,.18),transparent 68%)}.rp53-feature-grid .is-large{grid-row:span 2;background:linear-gradient(145deg,rgba(200,16,46,.22),rgba(255,255,255,.055))}.rp53-feature-grid .is-wide{grid-column:span 2}.rp53-feature-grid span{display:inline-flex;margin-bottom:38px;color:#fecaca;font-size:.82rem;font-weight:950;letter-spacing:.14em}.rp53-feature-grid strong{position:relative;z-index:1;display:block;color:#fff;font-size:1.55rem;line-height:1.1;letter-spacing:-.04em}.rp53-feature-grid p{position:relative;z-index:1;margin:.8rem 0 0}.rp53-security{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:center}.rp53-security-grid{display:grid;gap:13px}.rp53-security-grid article{display:grid;gap:5px;padding:19px;border-radius:21px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10)}.rp53-security-grid strong{color:#fff}.rp53-security-grid span{color:#cbd5e1;font-weight:700}.rp53-flow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}.rp53-flow-grid article{padding:22px;border-radius:24px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.10)}.rp53-flow-grid span{display:grid;place-items:center;width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,var(--rp53-red),var(--rp53-blue));color:#fff;font-weight:950;margin-bottom:20px}.rp53-flow-grid strong{display:block;color:#fff;font-size:1.05rem}.rp53-flow-grid p{margin:.55rem 0 0}

/* Dashboard premium remake */
.rp53-dashboard{display:grid;gap:22px}.rp53-ops-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:34px;border-radius:34px;background:linear-gradient(135deg,rgba(6,17,31,.96),rgba(15,23,42,.86));border:1px solid rgba(255,255,255,.10);box-shadow:var(--rp53-shadow-dark);color:#f8fafc}.rp53-ops-hero:before{content:"";position:absolute;right:-7%;top:-26%;width:520px;height:520px;border-radius:999px;background:radial-gradient(circle,rgba(200,16,46,.36),rgba(29,78,216,.22),transparent 68%)}.rp53-ops-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,#000,transparent 88%)}.rp53-ops-copy,.rp53-ops-actions{position:relative;z-index:1}.rp53-ops-copy{max-width:820px}.rp53-ops-copy h1{font-size:clamp(2.25rem,4.3vw,5.4rem);line-height:.94;color:#fff}.rp53-ops-copy .muted{max-width:720px;color:#cbd5e1;font-weight:650}.rp53-ops-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.rp53-ops-tags span{padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.11);color:#dbeafe;font-weight:900}.rp53-ops-actions{display:grid;gap:10px;min-width:220px}.rp53-ops-actions .btn:not(.primary){background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.13);color:#fff}.rp53-readiness-panel{display:grid;grid-template-columns:minmax(280px,.8fr) 1.7fr;gap:16px}.rp53-readiness-main,.rp53-metric-stack article{position:relative;overflow:hidden;padding:24px;border-radius:28px;background:var(--surface);border:1px solid var(--rp53-border);box-shadow:0 18px 54px rgba(15,23,42,.10)}.rp53-readiness-main:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,var(--rp53-red),var(--rp53-blue))}.rp53-readiness-main strong{display:block;font-size:4.2rem;line-height:1;letter-spacing:-.07em}.rp53-readiness-main>span{display:block;margin-top:6px;color:var(--muted);font-weight:900}.rp53-readiness-bar{height:11px;border-radius:99px;background:rgba(148,163,184,.18);overflow:hidden;margin-top:24px}.rp53-readiness-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--rp53-red),var(--rp53-green))}.rp53-metric-stack{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.rp53-metric-stack article{min-height:152px;display:flex;flex-direction:column;justify-content:space-between}.rp53-metric-stack span,.rp53-personal-metrics span{color:var(--muted);font-size:.8rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.rp53-metric-stack strong,.rp53-personal-metrics strong{font-size:2.65rem;line-height:1;letter-spacing:-.06em}.rp53-metric-stack small{color:var(--muted);font-weight:800}.rp53-metric-stack article:nth-child(1){border-top:4px solid var(--rp53-red)}.rp53-metric-stack article:nth-child(2){border-top:4px solid var(--rp53-blue)}.rp53-metric-stack article:nth-child(3){border-top:4px solid var(--rp53-cyan)}.rp53-metric-stack article:nth-child(4){border-top:4px solid var(--rp53-green)}.rp53-dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);gap:22px}.rp53-personal-card,.rp53-priority-list,.rp53-table-card,.rp53-org-card,.rp53-timeline-card{border-radius:28px}.rp53-personal-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:18px}.rp53-personal-metrics article{padding:18px;border-radius:20px;background:rgba(148,163,184,.09);border:1px solid rgba(148,163,184,.16)}.rp53-personal-metrics strong{display:block;margin-top:12px}.rp53-priority-items{display:grid;gap:10px}.rp53-priority-items a{display:flex;align-items:center;gap:13px;padding:15px;border-radius:18px;background:rgba(148,163,184,.08);border:1px solid rgba(148,163,184,.15)}.rp53-priority-items a:hover{background:rgba(200,16,46,.07);border-color:rgba(200,16,46,.16)}.rp53-priority-items span{width:12px;height:42px;border-radius:99px;background:linear-gradient(180deg,var(--rp53-red),var(--rp53-blue))}.rp53-priority-items strong{display:block}.rp53-priority-items small{display:block;margin-top:4px;color:var(--muted);font-weight:750}.rp53-dashboard-grid{gap:22px}.rp53-department-strip{gap:10px}.rp53-department-strip .department-chip{border-radius:18px;background:rgba(148,163,184,.08);box-shadow:none}.rp53-department-strip .department-chip-code{background:rgba(200,16,46,.10);color:var(--rp53-red)}.rp53-table-card .table-wrap{border-radius:20px}.rp53-table-card table{min-width:640px}.rp53-timeline-card .timeline-item{border-radius:17px;background:rgba(148,163,184,.08);border:1px solid rgba(148,163,184,.13)}.rp53-timeline-card .timeline-dot{background:linear-gradient(135deg,var(--rp53-red),var(--rp53-blue));box-shadow:0 0 0 5px rgba(200,16,46,.08)}
body[data-theme="dark"] .rp53-readiness-main,body[data-theme="dark"] .rp53-metric-stack article,body[data-theme="dark"] .rp53-personal-metrics article,body[data-theme="dark"] .rp53-priority-items a,body[data-theme="dark"] .rp53-department-strip .department-chip,body[data-theme="dark"] .rp53-timeline-card .timeline-item{background:rgba(15,23,42,.68);border-color:rgba(255,255,255,.08)}

@media(max-width:1220px){.rp53-hero{grid-template-columns:1fr;gap:20px;min-height:auto}.rp53-hero-stage{min-height:auto;grid-template-columns:1fr;align-items:stretch}.rp53-hero h1{font-size:clamp(3rem,9vw,5.9rem)}.rp53-feature-grid{grid-template-columns:1fr 1fr}.rp53-feature-grid .is-large,.rp53-feature-grid .is-wide{grid-row:auto;grid-column:auto}.rp53-security,.rp53-readiness-panel,.rp53-dashboard-layout{grid-template-columns:1fr}.rp53-metric-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.rp53-flow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.rp53-public{padding:10px}.rp53-public-nav{position:relative;top:auto;border-radius:20px;display:grid;grid-template-columns:1fr auto}.rp53-nav-links{grid-column:1/-1;overflow:auto;padding-bottom:2px}.rp53-nav-actions{justify-self:end}.rp53-nav-actions .auth-theme-switch{display:none}.rp53-hero{padding:26px 0 42px}.rp53-hero h1{font-size:clamp(2.75rem,13vw,4.8rem);letter-spacing:-.065em}.rp53-lead{font-size:1.02rem}.rp53-command-grid,.rp53-logo-strip,.rp53-feature-grid,.rp53-flow-grid,.rp53-personal-metrics,.rp53-metric-stack{grid-template-columns:1fr}.rp53-section{border-radius:24px;padding:24px}.rp53-command-card,.rp53-signin{border-radius:24px}.rp53-command-map{min-height:210px}.rp53-ops-hero{display:grid;padding:26px;border-radius:26px}.rp53-ops-actions{min-width:0}.rp53-ops-actions .btn{width:100%}.rp53-readiness-main,.rp53-metric-stack article{border-radius:22px}.rp53-table-card table{min-width:0}.content{padding:14px}.card{border-radius:22px}}
@media(max-width:560px){.rp53-public-nav{grid-template-columns:1fr}.rp53-brand img{max-width:215px;height:auto}.rp53-nav-actions{justify-self:stretch;display:grid;grid-template-columns:1fr 1fr}.rp53-nav-actions .btn.primary{min-width:0}.rp53-nav-links a{font-size:.86rem}.rp53-hero-actions .btn,.rp53-trustline span{width:100%;justify-content:center}.rp53-hero h1,.rp53-ops-copy h1{font-size:2.55rem}.rp53-command-head{display:grid}.rp53-window-bar strong{display:none}.rp53-section h2{font-size:2.05rem}.rp53-ops-tags span{width:100%;text-align:center}.rp53-readiness-main strong{font-size:3.25rem}.rp53-metric-stack strong,.rp53-personal-metrics strong{font-size:2.2rem}.rp53-logo-strip article{padding:16px}.rp53-feature-grid article{min-height:190px}.rp53-flow-grid article{padding:18px}}

/* v1.0.54-alpha.1 · Complete Executive Remake: Startseite + Dashboard sauber, modern, seriös */
:root{
  --rp54-red:#c8102e;
  --rp54-red-2:#8f0f22;
  --rp54-navy:#07111f;
  --rp54-navy-2:#101827;
  --rp54-ink:#0f172a;
  --rp54-slate:#334155;
  --rp54-blue:#2563eb;
  --rp54-cyan:#06b6d4;
  --rp54-green:#10b981;
  --rp54-amber:#f59e0b;
  --rp54-line:rgba(148,163,184,.24);
  --rp54-shadow:0 24px 80px rgba(15,23,42,.12);
  --rp54-shadow-deep:0 38px 120px rgba(2,6,23,.42);
}

html,body{max-width:100%;overflow-x:hidden}.content{max-width:100%;}
body{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,sans-serif;font-feature-settings:"cv02","cv03","cv04","cv11";}
body[data-theme="light"]{
  --bg:#f6f8fb;--bg2:#eef3f8;--surface:rgba(255,255,255,.90);--surface-2:#ffffff;--text:#0f172a;--muted:#5f6f86;--muted-2:#8793a7;--line:#d9e2ef;--line-soft:rgba(15,23,42,.075);color-scheme:light;
}
body[data-theme="dark"]{
  --bg:#070c15;--bg2:#0a1422;--surface:rgba(15,23,42,.82);--surface-2:#111827;--text:#f8fafc;--muted:#a9b5c7;--muted-2:#7d8ca3;--line:#26344a;--line-soft:rgba(255,255,255,.07);color-scheme:dark;
}
body[data-theme="light"] .card,body[data-theme="light"] .stat-card,body[data-theme="light"] .toolbar,body[data-theme="light"] .pagination,body[data-theme="light"] .login-card{border-color:rgba(148,163,184,.24);box-shadow:0 18px 50px rgba(15,23,42,.08)}
body[data-theme="light"] .topbar{background:rgba(255,255,255,.72);border-bottom:1px solid rgba(148,163,184,.19);box-shadow:0 12px 42px rgba(15,23,42,.055)}
body[data-theme="dark"] .topbar{background:rgba(7,12,21,.76);border-bottom:1px solid rgba(255,255,255,.075)}
.sidebar{background:linear-gradient(180deg,#050b16 0%,#08111f 50%,#0d1727 100%)}
.sidebar nav a.active{background:linear-gradient(135deg,var(--rp54-red),#7f1225);box-shadow:0 16px 42px rgba(200,16,46,.27)}
.sidebar nav a:hover{background:rgba(255,255,255,.075);color:#fff}.sidebar nav a span{background:rgba(255,255,255,.07)!important;color:#dbe5f1!important}.nav-section{color:#7c8ca4}.btn{border-radius:12px;box-shadow:none}.btn.primary{background:linear-gradient(135deg,var(--rp54-red),var(--rp54-red-2));box-shadow:0 18px 46px rgba(200,16,46,.25)}.btn.primary:hover{box-shadow:0 24px 62px rgba(200,16,46,.32)}
.secure-pill{background:#eefbf6;color:#047857;border-color:#b7f1d9}.pill,.status,.role{background:rgba(15,23,42,.055);color:#334155;border:1px solid rgba(148,163,184,.22)}body[data-theme="dark"] .pill,body[data-theme="dark"] .status,body[data-theme="dark"] .role{background:rgba(255,255,255,.07);color:#dbe5f1;border-color:rgba(255,255,255,.09)}

.rp54-public{position:relative;isolation:isolate;min-height:100vh;padding:20px;color:#0f172a;background:
  radial-gradient(circle at 9% 7%,rgba(200,16,46,.15),transparent 34rem),
  radial-gradient(circle at 92% 20%,rgba(37,99,235,.14),transparent 35rem),
  linear-gradient(135deg,#f8fafc 0%,#eaf0f8 52%,#f5f7fb 100%);
}
body[data-theme="dark"] .rp54-public{color:#f8fafc;background:
  radial-gradient(circle at 10% 0,rgba(200,16,46,.25),transparent 35rem),
  radial-gradient(circle at 92% 14%,rgba(37,99,235,.24),transparent 39rem),
  linear-gradient(135deg,#050812 0%,#07111f 48%,#0a1627 100%);
}
.rp54-public:before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:linear-gradient(rgba(15,23,42,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.05) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,#000,transparent 82%)}
body[data-theme="dark"] .rp54-public:before{background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px)}
.rp54-public:after{content:"";position:absolute;z-index:-1;right:-16vw;top:17vh;width:56vw;height:56vw;border-radius:999px;background:conic-gradient(from 160deg,rgba(200,16,46,.28),rgba(37,99,235,.22),rgba(6,182,212,.18),rgba(200,16,46,.28));filter:blur(86px);opacity:.70;pointer-events:none}
.rp54-nav{position:sticky;top:18px;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:18px;width:min(1480px,100%);margin:0 auto 38px;padding:12px 14px;border-radius:28px;background:rgba(255,255,255,.72);border:1px solid rgba(148,163,184,.25);box-shadow:0 18px 70px rgba(15,23,42,.12);backdrop-filter:blur(26px) saturate(1.3)}
body[data-theme="dark"] .rp54-nav{background:rgba(3,7,18,.76);border-color:rgba(255,255,255,.10);box-shadow:0 24px 90px rgba(0,0,0,.34)}
.rp54-brand{display:flex;align-items:center;gap:12px;min-width:232px;color:inherit}.rp54-brand-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,255,255,.64));border:1px solid rgba(148,163,184,.22);box-shadow:0 12px 30px rgba(15,23,42,.10)}body[data-theme="dark"] .rp54-brand-mark{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.10)}.rp54-brand-mark img{max-width:40px;max-height:40px}.rp54-brand strong{display:block;font-size:1.05rem;letter-spacing:-.035em}.rp54-brand small{display:block;margin-top:2px;color:#64748b;font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.10em}body[data-theme="dark"] .rp54-brand small{color:#94a3b8}
.rp54-nav-links{display:flex;align-items:center;gap:4px}.rp54-nav-links a{padding:11px 13px;border-radius:999px;color:#475569;font-weight:950}.rp54-nav-links a:hover{background:rgba(15,23,42,.06);color:#0f172a}body[data-theme="dark"] .rp54-nav-links a{color:#cbd5e1}body[data-theme="dark"] .rp54-nav-links a:hover{background:rgba(255,255,255,.08);color:#fff}.rp54-nav-actions{display:flex;align-items:center;gap:9px}.rp54-nav-login{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 16px;border-radius:14px;border:1px solid rgba(148,163,184,.28);background:rgba(255,255,255,.52);font-weight:950;color:#0f172a}.rp54-nav-login:hover{background:#fff}body[data-theme="dark"] .rp54-nav-login{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.10);color:#fff}body[data-theme="dark"] .rp54-nav-login:hover{background:rgba(255,255,255,.11)}.rp54-nav-cta{min-width:164px}.rp54-theme-switch{background:rgba(15,23,42,.06);border:1px solid rgba(148,163,184,.22);box-shadow:none}body[data-theme="dark"] .rp54-theme-switch{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.10)}
.rp54-hero{width:min(1480px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(390px,.80fr);gap:48px;align-items:start;padding:22px 6px 78px}.rp54-hero-copy{min-width:0;max-width:760px;padding-top:36px}.rp54-kicker{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;padding:10px 14px;border-radius:999px;border:1px solid rgba(200,16,46,.18);background:rgba(255,255,255,.58);color:#991b1b;font-weight:950;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;box-shadow:0 14px 40px rgba(15,23,42,.06)}body[data-theme="dark"] .rp54-kicker{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10);color:#fecaca}.rp54-kicker i{width:10px;height:10px;border-radius:99px;background:var(--rp54-red);box-shadow:0 0 0 6px rgba(200,16,46,.14)}.rp54-hero h1{max-width:760px;margin:0;font-size:clamp(3.15rem,5.25vw,6.15rem);line-height:.93;letter-spacing:-.079em;text-wrap:balance;color:#0f172a}.rp54-lead{max-width:690px;margin:26px 0 0;color:#506176;font-size:clamp(1.02rem,1.2vw,1.22rem);line-height:1.72;font-weight:700}body[data-theme="dark"] .rp54-hero h1{color:#fff}body[data-theme="dark"] .rp54-lead{color:#cbd5e1}.rp54-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:31px}.rp54-hero-actions .btn{min-height:55px;padding-inline:23px;border-radius:16px}.rp54-ghost{background:rgba(255,255,255,.62);border-color:rgba(148,163,184,.26);color:#0f172a}body[data-theme="dark"] .rp54-ghost{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.10);color:#fff}.rp54-proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:32px}.rp54-proof-grid article{padding:17px 16px;border-radius:22px;background:rgba(255,255,255,.62);border:1px solid rgba(148,163,184,.22);box-shadow:0 14px 44px rgba(15,23,42,.07);backdrop-filter:blur(16px)}body[data-theme="dark"] .rp54-proof-grid article{background:rgba(255,255,255,.065);border-color:rgba(255,255,255,.10)}.rp54-proof-grid span{display:block;margin-bottom:18px;color:var(--rp54-red);font-weight:950;letter-spacing:.12em}.rp54-proof-grid strong{display:block;font-size:1rem}.rp54-proof-grid small{display:block;margin-top:6px;color:#64748b;font-weight:750;line-height:1.45}body[data-theme="dark"] .rp54-proof-grid small{color:#aeb9ca}
.rp54-hero-panel{min-width:0;display:grid;gap:20px;align-content:start}.rp54-product-card{position:relative;overflow:hidden;padding:22px;border-radius:34px;background:linear-gradient(145deg,#0e1728,#172238 62%,#101827);border:1px solid rgba(255,255,255,.10);box-shadow:var(--rp54-shadow-deep);color:#f8fafc}.rp54-product-card:before{content:"";position:absolute;inset:auto -18% -32% 18%;height:280px;background:radial-gradient(circle,rgba(37,99,235,.34),transparent 66%);filter:blur(24px)}.rp54-product-card>*{position:relative}.rp54-product-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.rp54-product-top span{display:block;color:#94a3b8;text-transform:uppercase;letter-spacing:.12em;font-weight:950;font-size:.75rem}.rp54-product-top strong{display:block;margin-top:5px;font-size:1.45rem}.rp54-product-top em{font-style:normal;padding:8px 11px;border-radius:999px;background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.28);color:#86efac;font-weight:950}.rp54-situation-map{position:relative;min-height:252px;border-radius:28px;background:radial-gradient(circle at 24% 25%,rgba(200,16,46,.28),transparent 13rem),radial-gradient(circle at 76% 62%,rgba(6,182,212,.22),transparent 14rem),linear-gradient(135deg,rgba(3,7,18,.92),rgba(15,23,42,.70));border:1px solid rgba(255,255,255,.08);overflow:hidden}.rp54-situation-map:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px}.rp54-route{position:absolute;left:15%;right:13%;top:50%;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--rp54-red),var(--rp54-blue),var(--rp54-cyan));box-shadow:0 0 32px rgba(37,99,235,.48);transform:rotate(-7deg)}.rp54-node{position:absolute;width:22px;height:22px;border-radius:50%;box-shadow:0 0 0 8px rgba(255,255,255,.10),0 0 40px rgba(255,255,255,.34)}.rp54-node.red{left:18%;top:48%;background:#f87171}.rp54-node.blue{left:55%;top:35%;background:#60a5fa}.rp54-node.cyan{right:15%;top:58%;background:#2dd4bf}.rp54-map-label{position:absolute;display:grid;gap:0;padding:10px 12px;border-radius:16px;background:rgba(15,23,42,.72);border:1px solid rgba(255,255,255,.09);box-shadow:0 18px 44px rgba(0,0,0,.26)}.rp54-map-label.one{left:9%;bottom:12%}.rp54-map-label.two{right:10%;top:14%}.rp54-map-label b{font-size:1.45rem;line-height:1}.rp54-map-label small{color:#94a3b8;font-weight:800}.rp54-product-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.rp54-product-metrics article{padding:15px;border-radius:20px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09)}.rp54-product-metrics small{display:block;color:#94a3b8;font-weight:900}.rp54-product-metrics strong{display:block;margin-top:6px;font-size:1.9rem;letter-spacing:-.06em}.rp54-product-metrics span{font-size:.84rem;color:#cbd5e1;font-weight:800}.rp54-signin{position:relative;z-index:1;padding:28px;border-radius:30px;background:rgba(255,255,255,.92);border:1px solid rgba(148,163,184,.22);box-shadow:0 28px 90px rgba(15,23,42,.14);color:#0f172a;backdrop-filter:blur(20px)}.rp54-signin:before{height:4px;background:linear-gradient(90deg,var(--rp54-red),var(--rp54-blue),var(--rp54-cyan))}.rp54-signin h2{font-size:2rem}.rp54-signin .eyebrow{color:#991b1b}.rp54-signin .muted{color:#64748b}.rp54-signin input{background:#fff;border-color:rgba(148,163,184,.34)}body[data-theme="dark"] .rp54-signin{background:rgba(15,23,42,.88);border-color:rgba(255,255,255,.10);box-shadow:0 30px 100px rgba(0,0,0,.34);color:#fff}body[data-theme="dark"] .rp54-signin input{background:rgba(2,6,23,.72);border-color:rgba(255,255,255,.12)}body[data-theme="dark"] .rp54-signin .muted{color:#aeb9ca}
.rp54-strip,.rp54-section{width:min(1480px,100%);margin:0 auto 22px}.rp54-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.rp54-strip article{padding:19px 20px;border-radius:24px;background:rgba(255,255,255,.64);border:1px solid rgba(148,163,184,.22);box-shadow:0 16px 50px rgba(15,23,42,.07)}body[data-theme="dark"] .rp54-strip article{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10)}.rp54-strip strong{display:block;font-size:1.05rem}.rp54-strip span{display:block;margin-top:6px;color:#64748b;font-weight:750}body[data-theme="dark"] .rp54-strip span{color:#aeb9ca}.rp54-section{padding:38px;border-radius:34px;background:rgba(255,255,255,.66);border:1px solid rgba(148,163,184,.22);box-shadow:0 18px 70px rgba(15,23,42,.08);backdrop-filter:blur(20px)}body[data-theme="dark"] .rp54-section{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.10);box-shadow:0 28px 90px rgba(0,0,0,.25)}.rp54-section-head{max-width:860px}.rp54-section h2{font-size:clamp(2.1rem,3.2vw,4.05rem);line-height:.98;color:#0f172a}.rp54-section p{color:#506176;font-weight:700}body[data-theme="dark"] .rp54-section h2{color:#fff}body[data-theme="dark"] .rp54-section p{color:#cbd5e1}.rp54-module-grid{display:grid;grid-template-columns:1.18fr .91fr .91fr;gap:15px;margin-top:28px}.rp54-module-grid article{position:relative;overflow:hidden;min-height:230px;padding:24px;border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(255,255,255,.48));border:1px solid rgba(148,163,184,.20);box-shadow:0 14px 44px rgba(15,23,42,.06)}body[data-theme="dark"] .rp54-module-grid article{background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.045));border-color:rgba(255,255,255,.10)}.rp54-module-grid article:after{content:"";position:absolute;right:-52px;bottom:-64px;width:190px;height:190px;border-radius:999px;background:radial-gradient(circle,rgba(37,99,235,.16),transparent 68%)}.rp54-module-grid article.primary{grid-row:span 2;background:linear-gradient(145deg,rgba(200,16,46,.16),rgba(37,99,235,.09),rgba(255,255,255,.58))}body[data-theme="dark"] .rp54-module-grid article.primary{background:linear-gradient(145deg,rgba(200,16,46,.22),rgba(37,99,235,.12),rgba(255,255,255,.05))}.rp54-module-grid span{display:inline-flex;margin-bottom:42px;color:var(--rp54-red);font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.13em}.rp54-module-grid strong{position:relative;z-index:1;display:block;font-size:1.38rem;line-height:1.14;letter-spacing:-.035em}.rp54-module-grid p{position:relative;z-index:1;margin:.8rem 0 0;color:#64748b}body[data-theme="dark"] .rp54-module-grid p{color:#aeb9ca}.rp54-security{display:grid;grid-template-columns:.92fr 1.08fr;gap:28px;align-items:center}.rp54-security-cards{display:grid;gap:13px}.rp54-security-cards article{display:grid;grid-template-columns:auto 1fr;column-gap:14px;row-gap:5px;align-items:start;padding:18px;border-radius:22px;background:rgba(255,255,255,.64);border:1px solid rgba(148,163,184,.20)}body[data-theme="dark"] .rp54-security-cards article{background:rgba(255,255,255,.065);border-color:rgba(255,255,255,.10)}.rp54-security-cards b{grid-row:span 2;display:grid;place-items:center;width:44px;height:44px;border-radius:16px;background:linear-gradient(135deg,var(--rp54-red),var(--rp54-blue));color:#fff;letter-spacing:.08em}.rp54-security-cards strong{font-size:1.04rem}.rp54-security-cards span{color:#64748b;font-weight:750}body[data-theme="dark"] .rp54-security-cards span{color:#aeb9ca}.rp54-flow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}.rp54-flow-grid article{padding:22px;border-radius:24px;background:rgba(255,255,255,.64);border:1px solid rgba(148,163,184,.20)}body[data-theme="dark"] .rp54-flow-grid article{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10)}.rp54-flow-grid span{display:grid;place-items:center;width:42px;height:42px;border-radius:15px;background:linear-gradient(135deg,var(--rp54-red),var(--rp54-blue));color:#fff;font-weight:950;margin-bottom:20px}.rp54-flow-grid strong{display:block}.rp54-flow-grid p{margin:.55rem 0 0;color:#64748b}body[data-theme="dark"] .rp54-flow-grid p{color:#aeb9ca}

.rp54-dashboard{display:grid;gap:22px}.rp54-dash-hero{position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:34px;border-radius:32px;background:linear-gradient(135deg,#07111f 0%,#101827 54%,#111f37 100%);border:1px solid rgba(255,255,255,.10);box-shadow:0 28px 100px rgba(2,6,23,.26);color:#fff}.rp54-dash-hero:before{content:"";position:absolute;right:-9%;top:-42%;width:620px;height:620px;border-radius:999px;background:radial-gradient(circle,rgba(200,16,46,.38),rgba(37,99,235,.22),transparent 68%);filter:blur(10px)}.rp54-dash-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to bottom,#000,transparent 90%)}.rp54-dash-copy,.rp54-dash-actions{position:relative;z-index:1}.rp54-dash-copy{max-width:860px}.rp54-dash-copy h1{font-size:clamp(2.15rem,3.9vw,5rem);line-height:.98;color:#fff}.rp54-dash-copy .muted{max-width:790px;color:#cbd5e1;font-weight:680}.rp54-dash-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:19px}.rp54-dash-tags span{padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.11);color:#dbeafe;font-weight:900}.rp54-dash-actions{display:grid;gap:10px;min-width:220px}.rp54-dash-actions .btn:not(.primary){background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:#fff}.rp54-command-grid{display:grid;grid-template-columns:1.3fr repeat(4,minmax(0,.78fr));gap:15px}.rp54-readiness-card,.rp54-kpi{position:relative;overflow:hidden;min-height:150px;padding:22px;border-radius:26px;background:var(--surface);border:1px solid rgba(148,163,184,.22);box-shadow:0 18px 54px rgba(15,23,42,.09)}body[data-theme="dark"] .rp54-readiness-card,body[data-theme="dark"] .rp54-kpi{background:rgba(15,23,42,.72);border-color:rgba(255,255,255,.085)}.rp54-readiness-card{display:flex;align-items:center;justify-content:space-between;gap:20px}.rp54-readiness-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,var(--rp54-red),var(--rp54-blue),var(--rp54-cyan))}.rp54-readiness-card strong{display:block;font-size:3.85rem;line-height:1;letter-spacing:-.07em}.rp54-readiness-card strong small{font-size:1.2rem;color:var(--muted);letter-spacing:-.03em}.rp54-readiness-card span{color:var(--muted);font-weight:850}.rp54-ring{--p:0;width:98px;height:98px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--rp54-green) calc(var(--p)*1%),rgba(148,163,184,.18) 0);box-shadow:inset 0 0 0 11px rgba(255,255,255,.68)}body[data-theme="dark"] .rp54-ring{box-shadow:inset 0 0 0 11px rgba(15,23,42,.86)}.rp54-ring b{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--surface-2);font-size:1.05rem}.rp54-kpi{display:flex;flex-direction:column;justify-content:space-between}.rp54-kpi:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:#94a3b8}.rp54-kpi.red:before{background:var(--rp54-red)}.rp54-kpi.blue:before{background:var(--rp54-blue)}.rp54-kpi.cyan:before{background:var(--rp54-cyan)}.rp54-kpi.green:before{background:var(--rp54-green)}.rp54-kpi span,.rp54-personal-metrics span{font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.rp54-kpi strong,.rp54-personal-metrics strong{display:block;margin-top:10px;font-size:2.55rem;line-height:1;letter-spacing:-.065em}.rp54-kpi small{color:var(--muted);font-weight:760}.rp54-workbench,.rp54-data-grid,.rp54-operations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.rp54-personal-card,.rp54-priority-card,.rp54-table-card,.rp54-org-card,.rp54-timeline-card{border-radius:26px}.rp54-personal-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.rp54-personal-metrics article{padding:17px;border-radius:20px;background:rgba(148,163,184,.075);border:1px solid rgba(148,163,184,.16)}body[data-theme="dark"] .rp54-personal-metrics article{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.08)}.rp54-priority-list{display:grid;gap:10px}.rp54-priority-list a{display:flex;align-items:center;gap:14px;padding:15px;border-radius:18px;background:rgba(148,163,184,.075);border:1px solid rgba(148,163,184,.15);transition:.16s ease}.rp54-priority-list a:hover{background:rgba(200,16,46,.065);border-color:rgba(200,16,46,.18);transform:translateY(-1px)}body[data-theme="dark"] .rp54-priority-list a{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.08)}.rp54-priority-list i{width:12px;height:44px;border-radius:99px;background:linear-gradient(180deg,var(--rp54-red),var(--rp54-blue));flex:0 0 auto}.rp54-priority-list strong{display:block}.rp54-priority-list small{display:block;margin-top:4px;color:var(--muted);font-weight:760}.rp54-table-card .table-wrap{border-radius:18px}.rp54-table-card table{min-width:620px}.rp54-department-strip{gap:10px}.rp54-department-strip .department-chip{border-radius:18px;background:rgba(148,163,184,.075);box-shadow:none;border:1px solid rgba(148,163,184,.15)}body[data-theme="dark"] .rp54-department-strip .department-chip{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.08)}.rp54-department-strip .department-chip-code{background:rgba(200,16,46,.10);color:var(--rp54-red)}.rp54-timeline-card .timeline-item{border-radius:17px;background:rgba(148,163,184,.075);border:1px solid rgba(148,163,184,.14)}body[data-theme="dark"] .rp54-timeline-card .timeline-item{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.08)}.rp54-timeline-card .timeline-dot{background:linear-gradient(135deg,var(--rp54-red),var(--rp54-blue));box-shadow:0 0 0 5px rgba(200,16,46,.09)}

@media(max-width:1280px){.rp54-hero{grid-template-columns:1fr;gap:24px}.rp54-hero-copy{max-width:940px}.rp54-hero h1{max-width:940px}.rp54-proof-grid{max-width:940px}.rp54-hero-panel{grid-template-columns:1fr 1fr;align-items:start}.rp54-command-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rp54-readiness-card{grid-column:1/-1}.rp54-module-grid{grid-template-columns:1fr 1fr}.rp54-module-grid article.primary{grid-row:auto}.rp54-security{grid-template-columns:1fr}}
@media(max-width:980px){.rp54-nav{position:relative;top:auto;display:grid;grid-template-columns:1fr;gap:12px}.rp54-brand{min-width:0}.rp54-nav-links{overflow-x:auto;max-width:100%;padding-bottom:2px}.rp54-nav-actions{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.rp54-theme-switch{display:none}.rp54-hero{padding-top:10px}.rp54-hero-copy{padding-top:18px}.rp54-hero-panel{grid-template-columns:1fr}.rp54-proof-grid,.rp54-strip,.rp54-flow-grid{grid-template-columns:1fr}.rp54-product-metrics{grid-template-columns:1fr}.rp54-workbench,.rp54-data-grid,.rp54-operations-grid{grid-template-columns:1fr}.rp54-dash-hero{display:grid}.rp54-dash-actions{min-width:0;grid-template-columns:1fr}.rp54-dash-actions .btn{width:100%}}
@media(max-width:700px){.rp54-public{padding:10px}.rp54-nav{border-radius:20px;padding:10px}.rp54-brand-mark{width:46px;height:46px;border-radius:15px}.rp54-brand small{display:none}.rp54-nav-actions{grid-template-columns:1fr}.rp54-nav-links a{font-size:.86rem;white-space:nowrap}.rp54-hero h1{font-size:clamp(2.65rem,13vw,4.1rem);letter-spacing:-.065em}.rp54-lead{font-size:1rem}.rp54-hero-actions .btn,.rp54-proof-grid article{width:100%}.rp54-product-card,.rp54-signin,.rp54-section{border-radius:24px}.rp54-section{padding:24px}.rp54-module-grid{grid-template-columns:1fr}.rp54-security-cards article{grid-template-columns:1fr}.rp54-command-grid{grid-template-columns:1fr}.rp54-readiness-card{display:grid}.rp54-ring{width:86px;height:86px}.rp54-ring b{width:62px;height:62px}.rp54-table-card table{min-width:0}.rp54-dash-hero{padding:25px;border-radius:25px}.rp54-dash-copy h1{font-size:2.35rem}.rp54-dash-tags span{width:100%;justify-content:center;text-align:center}.rp54-personal-metrics{grid-template-columns:1fr}.content{padding:14px}.card{border-radius:22px}.table-wrap{overflow-x:auto}}

/* v1.0.55-alpha.1 · Executive Remake ohne KI-Overlap: Startseite, Lightmode, Dashboard */
.rp55-public{
  --rp55-red:#c8102e;
  --rp55-red-2:#9f1025;
  --rp55-navy:#09111f;
  --rp55-navy-2:#101b2d;
  --rp55-blue:#1d4ed8;
  --rp55-teal:#0f766e;
  --rp55-amber:#b45309;
  --rp55-green:#047857;
  --rp55-text:#101828;
  --rp55-muted:#667085;
  --rp55-line:#d9e2ef;
  --rp55-panel:#ffffff;
  --rp55-panel-2:#f7f9fc;
  --rp55-bg:#f3f6fa;
  position:relative;
  isolation:isolate;
  min-height:100dvh;
  padding:26px;
  color:var(--rp55-text);
  background:
    radial-gradient(circle at 8% 8%,rgba(200,16,46,.10),transparent 27rem),
    radial-gradient(circle at 92% 14%,rgba(29,78,216,.12),transparent 28rem),
    linear-gradient(180deg,#f8fafc 0%,#eef3f8 55%,#f7f8fb 100%);
}
.rp55-public:before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:linear-gradient(rgba(16,24,40,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(16,24,40,.038) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,#000 0,#000 680px,transparent 1200px)}
.rp55-public:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.72),rgba(255,255,255,.38) 48%,rgba(255,255,255,.76));}
body[data-theme="dark"] .rp55-public{
  --rp55-text:#f8fafc;
  --rp55-muted:#a8b4c7;
  --rp55-line:rgba(255,255,255,.10);
  --rp55-panel:rgba(13,23,39,.94);
  --rp55-panel-2:rgba(18,30,48,.90);
  --rp55-bg:#07101d;
  background:
    radial-gradient(circle at 4% 12%,rgba(200,16,46,.24),transparent 28rem),
    radial-gradient(circle at 94% 15%,rgba(29,78,216,.20),transparent 30rem),
    linear-gradient(180deg,#050a12 0%,#081424 58%,#060b13 100%);
}
body[data-theme="dark"] .rp55-public:before{background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px)}
body[data-theme="dark"] .rp55-public:after{background:linear-gradient(90deg,rgba(5,10,18,.30),rgba(5,10,18,.02),rgba(5,10,18,.36))}
.rp55-nav{position:sticky;top:18px;z-index:20;width:min(1480px,100%);margin:0 auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;padding:14px 18px;border-radius:26px;background:rgba(255,255,255,.82);border:1px solid rgba(203,213,225,.82);box-shadow:0 24px 60px rgba(15,23,42,.12);backdrop-filter:blur(20px) saturate(1.25)}
body[data-theme="dark"] .rp55-nav{background:rgba(8,15,27,.84);border-color:rgba(255,255,255,.10);box-shadow:0 24px 70px rgba(0,0,0,.36)}
.rp55-brand{display:flex;align-items:center;gap:12px;min-width:230px}.rp55-brand-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;background:rgba(255,255,255,.86);border:1px solid rgba(203,213,225,.72);box-shadow:0 10px 26px rgba(15,23,42,.10)}body[data-theme="dark"] .rp55-brand-mark{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10)}.rp55-brand-mark img{width:39px;height:39px;object-fit:contain}.rp55-brand strong{display:block;font-size:1.12rem;letter-spacing:-.035em}.rp55-brand small{display:block;margin-top:1px;color:var(--rp55-muted);font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.12em}.rp55-nav-links{display:flex;justify-content:center;gap:10px}.rp55-nav-links a{padding:10px 14px;border-radius:999px;color:var(--rp55-muted);font-weight:950}.rp55-nav-links a:hover{background:rgba(200,16,46,.08);color:var(--rp55-red)}body[data-theme="dark"] .rp55-nav-links a:hover{background:rgba(255,255,255,.07);color:#fff}.rp55-nav-actions{display:flex;align-items:center;gap:10px}.rp55-nav-login{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:9px 16px;border-radius:14px;background:var(--rp55-panel-2);border:1px solid var(--rp55-line);font-weight:950}.rp55-nav-cta{min-height:42px}.rp55-theme-switch{height:44px;background:var(--rp55-panel-2);border:1px solid var(--rp55-line);box-shadow:none}.rp55-theme-switch button{color:var(--rp55-muted)}
.rp55-hero{width:min(1480px,100%);margin:64px auto 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,520px);gap:64px;align-items:start}.rp55-hero-copy{min-width:0;max-width:780px;padding-top:24px}.rp55-kicker{display:inline-flex;align-items:center;gap:10px;max-width:100%;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.78);border:1px solid rgba(203,213,225,.75);color:#7f1d1d;font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.12em;box-shadow:0 10px 26px rgba(15,23,42,.06)}body[data-theme="dark"] .rp55-kicker{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.10);color:#fecdd3}.rp55-kicker span{width:9px;height:9px;border-radius:50%;background:var(--rp55-red);box-shadow:0 0 0 6px rgba(200,16,46,.12)}.rp55-hero h1{max-width:760px;margin:24px 0 0;font-size:clamp(3.1rem,5vw,5.95rem);line-height:.98;letter-spacing:-.075em;color:var(--rp55-text);text-wrap:balance;overflow-wrap:normal}.rp55-lead{max-width:730px;margin:24px 0 0;color:var(--rp55-muted);font-size:clamp(1.08rem,1.25vw,1.28rem);font-weight:760;line-height:1.65}.rp55-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.rp55-hero-actions .btn{min-height:48px;padding-inline:18px}.rp55-outline{background:rgba(255,255,255,.74);border-color:rgba(203,213,225,.88);box-shadow:none}body[data-theme="dark"] .rp55-outline{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.10);color:#fff}.rp55-trust-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.rp55-trust-row span{padding:10px 12px;border-radius:999px;background:rgba(255,255,255,.70);border:1px solid rgba(203,213,225,.70);color:#344054;font-weight:900;font-size:.86rem}body[data-theme="dark"] .rp55-trust-row span{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10);color:#dbe5f3}.rp55-hero-side{display:grid;gap:18px;min-width:0}.rp55-signin{padding:28px!important;border-radius:26px!important;background:rgba(255,255,255,.92)!important;border:1px solid rgba(203,213,225,.88)!important;box-shadow:0 28px 80px rgba(15,23,42,.16)!important;backdrop-filter:blur(22px) saturate(1.15)}body[data-theme="dark"] .rp55-signin{background:rgba(12,22,38,.94)!important;border-color:rgba(255,255,255,.10)!important;box-shadow:0 28px 90px rgba(0,0,0,.42)!important}.rp55-signin:before{height:4px!important;background:linear-gradient(90deg,var(--rp55-red),var(--rp55-blue),var(--rp55-teal))!important}.rp55-signin h2{font-size:2.25rem;letter-spacing:-.06em}.rp55-signin label{color:var(--rp55-muted)}.rp55-signin input{background:#fff;border-color:#cfd8e6}body[data-theme="dark"] .rp55-signin input{background:#07111f;border-color:rgba(255,255,255,.12)}.rp55-product-preview{position:relative;overflow:hidden;padding:22px;border-radius:28px;background:linear-gradient(145deg,#101828,#16243a);color:#fff;border:1px solid rgba(255,255,255,.12);box-shadow:0 26px 80px rgba(15,23,42,.20)}.rp55-product-preview:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 18%,rgba(200,16,46,.30),transparent 28%),radial-gradient(circle at 90% 45%,rgba(29,78,216,.34),transparent 36%);pointer-events:none}.rp55-product-preview>*{position:relative;z-index:1}.rp55-preview-head{display:flex;justify-content:space-between;align-items:start;gap:14px}.rp55-preview-head small{display:block;color:#9aa8bd;font-size:.74rem;font-weight:950;text-transform:uppercase;letter-spacing:.16em}.rp55-preview-head strong{display:block;margin-top:5px;font-size:1.25rem}.rp55-preview-head span{padding:7px 10px;border-radius:999px;background:rgba(4,120,87,.18);color:#bbf7d0;border:1px solid rgba(187,247,208,.18);font-weight:950}.rp55-preview-board{position:relative;height:210px;margin:18px 0;border-radius:24px;background:linear-gradient(145deg,rgba(10,18,32,.96),rgba(10,30,49,.88));border:1px solid rgba(255,255,255,.08);overflow:hidden}.rp55-preview-board:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:38px 38px}.rp55-board-line{position:absolute;height:3px;border-radius:99px;transform-origin:left center}.rp55-board-line.one{left:58px;top:118px;width:290px;background:linear-gradient(90deg,#ef4444,#2563eb);transform:rotate(-8deg)}.rp55-board-line.two{left:112px;top:92px;width:180px;background:linear-gradient(90deg,#14b8a6,#22c55e);opacity:.28;transform:rotate(18deg)}.rp55-point{position:absolute;width:20px;height:20px;border-radius:50%;box-shadow:0 0 0 12px rgba(255,255,255,.07)}.rp55-point.red{left:74px;top:104px;background:#fb7185}.rp55-point.blue{left:264px;top:75px;background:#60a5fa}.rp55-point.green{right:86px;bottom:70px;background:#2dd4bf}.rp55-mini-card{position:absolute;display:grid;gap:1px;min-width:82px;padding:10px 12px;border-radius:15px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10)}.rp55-mini-card.a{left:22px;bottom:18px}.rp55-mini-card.b{right:22px;top:22px}.rp55-mini-card b{font-size:1.45rem}.rp55-mini-card small,.rp55-preview-metrics small{color:#aebbd0;font-weight:900}.rp55-preview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.rp55-preview-metrics article{padding:14px;border-radius:17px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.09)}.rp55-preview-metrics strong{display:block;margin-top:4px;font-size:1.55rem}.rp55-section{width:min(1480px,100%);margin:28px auto 0;padding:34px;border-radius:30px;background:rgba(255,255,255,.78);border:1px solid rgba(203,213,225,.78);box-shadow:0 22px 70px rgba(15,23,42,.08);backdrop-filter:blur(18px)}body[data-theme="dark"] .rp55-section{background:rgba(10,20,34,.74);border-color:rgba(255,255,255,.09);box-shadow:0 22px 80px rgba(0,0,0,.28)}.rp55-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.rp55-proof article{padding:22px;border-radius:23px;background:var(--rp55-panel);border:1px solid var(--rp55-line)}.rp55-proof b{display:inline-flex;margin-bottom:20px;color:var(--rp55-red);font-size:.82rem;letter-spacing:.16em}.rp55-proof strong{display:block;font-size:1.12rem}.rp55-proof span{display:block;margin-top:8px;color:var(--rp55-muted);font-weight:740;line-height:1.55}.rp55-section-head{max-width:820px}.rp55-section-head h2,.rp55-security-copy h2{font-size:clamp(2rem,3vw,3.85rem);line-height:1.02;letter-spacing:-.065em}.rp55-section-head p,.rp55-security-copy p{color:var(--rp55-muted);font-weight:750}.rp55-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}.rp55-module-grid article{position:relative;overflow:hidden;min-height:220px;padding:24px;border-radius:25px;background:var(--rp55-panel);border:1px solid var(--rp55-line)}.rp55-module-grid article:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--rp55-red),var(--rp55-blue),var(--rp55-teal))}.rp55-module-grid span{display:inline-flex;color:var(--rp55-red);font-size:.76rem;font-weight:950;text-transform:uppercase;letter-spacing:.14em}.rp55-module-grid strong{display:block;margin-top:18px;font-size:1.35rem;line-height:1.14}.rp55-module-grid p{margin:12px 0 0;color:var(--rp55-muted);font-weight:730}.rp55-security{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:center}.rp55-security-grid{display:grid;gap:13px}.rp55-security-grid article{display:grid;grid-template-columns:56px 1fr;column-gap:15px;row-gap:6px;padding:19px;border-radius:23px;background:var(--rp55-panel);border:1px solid var(--rp55-line)}.rp55-security-grid b{grid-row:span 2;display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,var(--rp55-red),var(--rp55-navy));color:#fff;letter-spacing:.12em}.rp55-security-grid strong{font-size:1.08rem}.rp55-security-grid span{color:var(--rp55-muted);font-weight:750}.rp55-flow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}.rp55-flow-grid article{padding:24px;border-radius:25px;background:var(--rp55-panel);border:1px solid var(--rp55-line)}.rp55-flow-grid span{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;background:#111827;color:#fff;font-weight:950;margin-bottom:20px}body[data-theme="dark"] .rp55-flow-grid span{background:#fff;color:#111827}.rp55-flow-grid strong{display:block}.rp55-flow-grid p{margin:8px 0 0;color:var(--rp55-muted);font-weight:720}

.rp55-dashboard{display:grid;gap:22px}.rp55-dash-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:34px;border-radius:30px;background:linear-gradient(135deg,#101828 0%,#14243a 58%,#1a1021 100%);color:#fff;border:1px solid rgba(255,255,255,.10);box-shadow:0 26px 80px rgba(15,23,42,.22)}.rp55-dash-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 20%,rgba(200,16,46,.35),transparent 33%),radial-gradient(circle at 82% 16%,rgba(37,99,235,.28),transparent 36%);pointer-events:none}.rp55-dash-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to bottom,#000,transparent 90%)}.rp55-dash-copy,.rp55-dash-actions{position:relative;z-index:1}.rp55-dash-copy{max-width:900px}.rp55-dash-copy h1{font-size:clamp(2.25rem,3.7vw,4.65rem);line-height:1;letter-spacing:-.07em;color:#fff;max-width:860px}.rp55-dash-copy .muted{max-width:820px;color:#d3dbe8;font-weight:720}.rp55-dash-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.rp55-dash-tags span{padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#e6edf8;font-weight:900}.rp55-dash-actions{display:grid;gap:10px;min-width:210px}.rp55-dash-actions .btn:not(.primary){background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:#fff;box-shadow:none}.rp55-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.rp55-kpi-card{position:relative;overflow:hidden;min-height:142px;padding:20px;border-radius:24px;background:rgba(255,255,255,.86);border:1px solid rgba(203,213,225,.78);box-shadow:0 16px 46px rgba(15,23,42,.08)}body[data-theme="dark"] .rp55-kpi-card{background:rgba(16,25,41,.84);border-color:rgba(255,255,255,.08);box-shadow:0 18px 54px rgba(0,0,0,.22)}.rp55-kpi-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:#94a3b8}.rp55-kpi-card.red:before{background:#c8102e}.rp55-kpi-card.blue:before{background:#1d4ed8}.rp55-kpi-card.teal:before{background:#0f766e}.rp55-kpi-card.amber:before{background:#b45309}.rp55-kpi-card.slate:before{background:#334155}.rp55-kpi-card span{display:block;color:var(--muted);font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.11em}.rp55-kpi-card strong{display:block;margin-top:16px;font-size:2.65rem;line-height:1;letter-spacing:-.065em}.rp55-kpi-card small{display:block;margin-top:7px;color:var(--muted);font-weight:760}.rp55-command-layout,.rp55-data-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:22px}.rp55-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rp55-focus-card,.rp55-own-card,.rp55-table-card{border-radius:26px;border-color:rgba(203,213,225,.72)}body[data-theme="dark"] .rp55-focus-card,body[data-theme="dark"] .rp55-own-card,body[data-theme="dark"] .rp55-table-card{border-color:rgba(255,255,255,.08)}.rp55-focus-grid,.rp55-own-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.rp55-focus-grid article,.rp55-own-metrics article{padding:16px;border-radius:19px;background:rgba(248,250,252,.88);border:1px solid rgba(203,213,225,.72)}body[data-theme="dark"] .rp55-focus-grid article,body[data-theme="dark"] .rp55-own-metrics article{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.08)}.rp55-focus-grid span,.rp55-own-metrics span{display:block;color:var(--muted);font-size:.77rem;font-weight:950;text-transform:uppercase;letter-spacing:.10em}.rp55-focus-grid strong,.rp55-own-metrics strong{display:block;margin-top:10px;font-size:2.25rem;letter-spacing:-.06em}.rp55-focus-grid small{color:var(--muted);font-weight:760}.rp55-priority-list{display:grid;gap:10px}.rp55-priority-list a{display:flex;align-items:center;gap:14px;padding:15px;border-radius:18px;background:rgba(248,250,252,.88);border:1px solid rgba(203,213,225,.70);transition:.16s ease}body[data-theme="dark"] .rp55-priority-list a{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.08)}.rp55-priority-list a:hover{transform:translateY(-1px);border-color:rgba(200,16,46,.26);background:rgba(200,16,46,.045)}.rp55-priority-list i{width:10px;height:44px;border-radius:999px;background:linear-gradient(180deg,#c8102e,#1d4ed8)}.rp55-priority-list strong{display:block}.rp55-priority-list small{display:block;margin-top:4px;color:var(--muted);font-weight:740}.rp55-table-card .table-wrap{border-radius:18px}.rp55-table-card table{min-width:620px}.rp55-timeline-list .timeline-item{border-radius:17px;background:rgba(248,250,252,.88);border:1px solid rgba(203,213,225,.70)}body[data-theme="dark"] .rp55-timeline-list .timeline-item{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.08)}.rp55-timeline-list .timeline-dot{background:#c8102e;box-shadow:0 0 0 5px rgba(200,16,46,.10)}.rp55-department-strip .department-chip{border-radius:18px;background:rgba(248,250,252,.88);border:1px solid rgba(203,213,225,.70);box-shadow:none}body[data-theme="dark"] .rp55-department-strip .department-chip{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.08)}.rp55-department-strip .department-chip-code{background:rgba(200,16,46,.10);color:#c8102e}

@media(max-width:1280px){.rp55-nav{grid-template-columns:1fr;gap:12px}.rp55-nav-links{justify-content:flex-start;overflow-x:auto}.rp55-nav-actions{justify-content:flex-start;flex-wrap:wrap}.rp55-hero{grid-template-columns:1fr;gap:30px;margin-top:34px}.rp55-hero-copy{max-width:980px}.rp55-hero h1{max-width:920px}.rp55-hero-side{grid-template-columns:1fr 1fr;align-items:start}.rp55-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.rp55-command-layout,.rp55-data-grid{grid-template-columns:1fr}.rp55-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rp55-security{grid-template-columns:1fr}.rp55-flow-grid,.rp55-proof{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.rp55-public{padding:14px}.rp55-nav{position:relative;top:auto;border-radius:22px}.rp55-brand{min-width:0}.rp55-brand small{display:none}.rp55-nav-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.rp55-nav-actions .rp55-theme-switch{display:none}.rp55-hero{margin-top:24px}.rp55-hero-copy{padding-top:0}.rp55-hero h1{font-size:clamp(2.7rem,12vw,4.4rem);max-width:100%;letter-spacing:-.065em}.rp55-lead{font-size:1rem}.rp55-hero-side{grid-template-columns:1fr}.rp55-section{padding:24px;border-radius:24px}.rp55-module-grid,.rp55-flow-grid,.rp55-proof,.rp55-security-grid{grid-template-columns:1fr}.rp55-preview-board{height:190px}.rp55-board-line.one{width:220px}.rp55-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rp55-dash-hero{grid-template-columns:1fr;padding:26px;border-radius:25px}.rp55-dash-actions{min-width:0}.rp55-focus-grid,.rp55-own-metrics{grid-template-columns:1fr}}
@media(max-width:560px){.rp55-public{padding:10px}.rp55-nav{padding:10px}.rp55-brand-mark{width:46px;height:46px}.rp55-nav-links a{font-size:.84rem;padding:8px 10px}.rp55-nav-actions{grid-template-columns:1fr}.rp55-hero h1{font-size:clamp(2.35rem,13vw,3.5rem);line-height:1.01}.rp55-hero-actions .btn,.rp55-nav-actions a{width:100%}.rp55-trust-row span{width:100%;text-align:center}.rp55-signin{padding:22px!important}.rp55-preview-metrics{grid-template-columns:1fr}.rp55-kpi-grid{grid-template-columns:1fr}.rp55-table-card table{min-width:0}.rp55-dash-copy h1{font-size:2.2rem}.rp55-dash-tags span{width:100%;text-align:center}.rp55-focus-card,.rp55-own-card,.rp55-table-card{border-radius:22px}}

/* Retter-Portal v1.0.62-alpha.1 · Enterprise-Modulseiten + Auto-Theme-Default */
html,body{scroll-behavior:smooth}
body[data-theme-preference="system"] .theme-dot[data-theme-set="system"],
body[data-theme-preference="system"] .auth-theme-switch button[data-theme-set="system"]{
  background:var(--surface-2);
  color:var(--text);
  box-shadow:0 7px 18px rgba(15,23,42,.10);
}
body[data-theme="dark"][data-theme-preference="system"] .theme-dot[data-theme-set="system"],
body[data-theme="dark"][data-theme-preference="system"] .auth-theme-switch button[data-theme-set="system"]{
  background:rgba(255,255,255,.10);
  box-shadow:0 7px 18px rgba(0,0,0,.22);
}

.content > .page-head{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:24px;
  margin-bottom:24px;
  padding:28px 30px;
  border-radius:30px;
  overflow:hidden;
  border:1px solid rgba(118,134,157,.30);
  background:
    linear-gradient(135deg,rgba(255,255,255,.88),rgba(232,240,249,.74)),
    radial-gradient(circle at 12% 20%,rgba(200,16,46,.10),transparent 28rem),
    radial-gradient(circle at 88% 18%,rgba(37,99,235,.10),transparent 30rem);
  box-shadow:0 26px 78px rgba(15,23,42,.13), inset 0 1px 0 rgba(255,255,255,.78);
}
.content > .page-head:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:7px;
  background:linear-gradient(180deg,#c8102e,#1d4ed8,#0f766e);
  z-index:-1;
}
.content > .page-head:after{
  content:"";
  position:absolute;
  right:-150px;
  top:-150px;
  width:360px;
  height:360px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(200,16,46,.18),rgba(37,99,235,.12),transparent 68%);
  z-index:-1;
  pointer-events:none;
}
body[data-theme="dark"] .content > .page-head{
  background:
    linear-gradient(135deg,rgba(16,25,41,.94),rgba(8,15,27,.78)),
    radial-gradient(circle at 14% 18%,rgba(200,16,46,.22),transparent 28rem),
    radial-gradient(circle at 92% 12%,rgba(37,99,235,.18),transparent 31rem);
  border-color:rgba(255,255,255,.08);
  box-shadow:0 26px 82px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.06);
}
@media (prefers-color-scheme: dark){
  body[data-theme="system"] .content > .page-head{
    background:
      linear-gradient(135deg,rgba(16,25,41,.94),rgba(8,15,27,.78)),
      radial-gradient(circle at 14% 18%,rgba(200,16,46,.22),transparent 28rem),
      radial-gradient(circle at 92% 12%,rgba(37,99,235,.18),transparent 31rem);
    border-color:rgba(255,255,255,.08);
    box-shadow:0 26px 82px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.06);
  }
}
.content > .page-head > div:first-child{max-width:980px;min-width:0}
.content > .page-head .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin:0 0 12px;
  padding:8px 12px;
  border-radius:999px;
  color:#9f1239;
  background:rgba(255,241,242,.72);
  border:1px solid rgba(200,16,46,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
}
.content > .page-head .eyebrow:before{
  content:"";
  width:8px;
  height:8px;
  border-radius:999px;
  background:#c8102e;
  box-shadow:0 0 0 5px rgba(200,16,46,.12);
}
body[data-theme="dark"] .content > .page-head .eyebrow{color:#fecaca;background:rgba(200,16,46,.12);border-color:rgba(255,255,255,.10)}
@media (prefers-color-scheme: dark){body[data-theme="system"] .content > .page-head .eyebrow{color:#fecaca;background:rgba(200,16,46,.12);border-color:rgba(255,255,255,.10)}}
.content > .page-head h1{
  max-width:960px;
  font-size:clamp(2.25rem,3.6vw,4.35rem);
  line-height:.98;
  letter-spacing:-.07em;
  text-wrap:balance;
}
.content > .page-head .muted{
  max-width:860px;
  margin:.9rem 0 0;
  font-size:1.03rem;
  font-weight:730;
  line-height:1.65;
}
.content > .page-head > .btn,
.content > .page-head > .actions,
.content > .page-head > form,
.content > .page-head > div:last-child:not(:first-child){
  position:relative;
  z-index:1;
}
.content > .page-head > .btn,
.content > .page-head .actions .btn{
  min-height:48px;
  padding-inline:18px;
  border-radius:16px;
}

.content > .toolbar{
  position:relative;
  overflow:hidden;
  gap:12px;
  padding:16px;
  margin-bottom:20px;
  border-radius:24px;
  background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(235,242,250,.72));
  border:1px solid rgba(118,134,157,.28);
  box-shadow:0 18px 54px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.78);
}
.content > .toolbar:before{
  content:"Filter & Aktionen";
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(15,23,42,.06);
  color:#334155;
  font-size:.76rem;
  font-weight:950;
  letter-spacing:.10em;
  text-transform:uppercase;
}
body[data-theme="dark"] .content > .toolbar{background:linear-gradient(145deg,rgba(16,25,41,.90),rgba(8,15,27,.70));border-color:rgba(255,255,255,.08);box-shadow:0 18px 60px rgba(0,0,0,.24)}
body[data-theme="dark"] .content > .toolbar:before{background:rgba(255,255,255,.07);color:#cbd5e1}
@media (prefers-color-scheme: dark){
  body[data-theme="system"] .content > .toolbar{background:linear-gradient(145deg,rgba(16,25,41,.90),rgba(8,15,27,.70));border-color:rgba(255,255,255,.08);box-shadow:0 18px 60px rgba(0,0,0,.24)}
  body[data-theme="system"] .content > .toolbar:before{background:rgba(255,255,255,.07);color:#cbd5e1}
}
.content > .toolbar input,
.content > .toolbar select{min-height:44px;border-radius:15px;flex:1 1 220px}
.content > .toolbar button,.content > .toolbar .btn{min-height:44px;border-radius:15px}

.content > .card:not(.rp55-focus-card):not(.rp55-own-card):not(.rp55-table-card),
.entity-card,
.detail-item,
.info-grid > div,
.calendar-item,
.timeline-item,
.department-chip{
  border-radius:24px;
  border-color:rgba(118,134,157,.25);
  background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(235,242,250,.74));
  box-shadow:0 16px 46px rgba(15,23,42,.09), inset 0 1px 0 rgba(255,255,255,.70);
}
body[data-theme="dark"] .content > .card:not(.rp55-focus-card):not(.rp55-own-card):not(.rp55-table-card),
body[data-theme="dark"] .entity-card,
body[data-theme="dark"] .detail-item,
body[data-theme="dark"] .info-grid > div,
body[data-theme="dark"] .calendar-item,
body[data-theme="dark"] .timeline-item,
body[data-theme="dark"] .department-chip{
  border-color:rgba(255,255,255,.08);
  background:linear-gradient(145deg,rgba(16,25,41,.88),rgba(8,15,27,.68));
  box-shadow:0 18px 56px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.05);
}
@media (prefers-color-scheme: dark){
  body[data-theme="system"] .content > .card:not(.rp55-focus-card):not(.rp55-own-card):not(.rp55-table-card),
  body[data-theme="system"] .entity-card,
  body[data-theme="system"] .detail-item,
  body[data-theme="system"] .info-grid > div,
  body[data-theme="system"] .calendar-item,
  body[data-theme="system"] .timeline-item,
  body[data-theme="system"] .department-chip{
    border-color:rgba(255,255,255,.08);
    background:linear-gradient(145deg,rgba(16,25,41,.88),rgba(8,15,27,.68));
    box-shadow:0 18px 56px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.05);
  }
}
.content > .card.table-wrap{
  position:relative;
  padding:0;
  overflow:auto;
  border-radius:26px;
}
.content > .card.table-wrap:before{
  content:"";
  position:sticky;
  left:0;
  top:0;
  display:block;
  height:5px;
  width:100%;
  background:linear-gradient(90deg,#c8102e,#1d4ed8,#0f766e);
  z-index:2;
}
table{border-collapse:separate;border-spacing:0}
th{
  padding-top:15px;
  padding-bottom:15px;
  background:linear-gradient(180deg,rgba(241,245,249,.96),rgba(226,232,240,.86));
  color:#475569;
  border-bottom:1px solid rgba(118,134,157,.22);
}
body[data-theme="dark"] th{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.04));color:#aeb9ca;border-bottom-color:rgba(255,255,255,.08)}
@media (prefers-color-scheme: dark){body[data-theme="system"] th{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.04));color:#aeb9ca;border-bottom-color:rgba(255,255,255,.08)}}
td{transition:background-color .15s ease, box-shadow .15s ease}
tr:hover td{background:rgba(200,16,46,.045)}
body[data-theme="dark"] tr:hover td{background:rgba(255,255,255,.045)}
@media (prefers-color-scheme: dark){body[data-theme="system"] tr:hover td{background:rgba(255,255,255,.045)}}
td strong,a strong{font-weight:920}.actions .btn.small{border-radius:12px}
.pill,.status,.role{
  border:1px solid rgba(67,56,202,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35);
}
.status.Aktiv,.status.Verfügbar,.status.Genehmigt,.ok{border-color:rgba(4,120,87,.18)}
.status.Defekt,.status.Abgelehnt,.danger-text{border-color:rgba(190,18,60,.18)}
.status.Offen,.status.In{border-color:rgba(146,64,14,.18)}

.form-grid label,
.inline-form label{
  padding:12px;
  border-radius:18px;
  background:rgba(148,163,184,.075);
  border:1px solid rgba(118,134,157,.16);
}
body[data-theme="dark"] .form-grid label,body[data-theme="dark"] .inline-form label{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.07)}
@media (prefers-color-scheme: dark){body[data-theme="system"] .form-grid label,body[data-theme="system"] .inline-form label{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.07)}}
.card-head h2{font-size:1.32rem;letter-spacing:-.045em}.card-head{padding-bottom:12px;border-bottom:1px solid var(--line-soft)}
.card-head + .table-wrap{margin-top:14px}
.entity-grid{gap:20px}.entity-card{position:relative;overflow:hidden}.entity-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#c8102e,#1d4ed8)}
.entity-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:17px;background:rgba(200,16,46,.10);color:#c8102e;font-size:1.35rem}

@media(max-width:980px){
  .content > .page-head{grid-template-columns:1fr;padding:24px;border-radius:25px}
  .content > .page-head .actions,.content > .page-head > .btn{justify-content:flex-start;width:100%}
  .content > .page-head > .btn{width:fit-content}
}
@media(max-width:620px){
  .content{padding:16px 14px 28px}
  .content > .page-head{padding:21px 18px;border-radius:22px;margin-bottom:18px}
  .content > .page-head h1{font-size:clamp(2rem,11vw,3.1rem);line-height:1.02}
  .content > .page-head .muted{font-size:.96rem}
  .content > .toolbar{border-radius:20px;padding:13px}
  .content > .toolbar:before{width:100%;justify-content:center}
  .content > .toolbar input,.content > .toolbar select,.content > .toolbar button,.content > .toolbar .btn{width:100%;flex:1 1 100%}
  .content > .card.table-wrap table{min-width:640px}
  .form-grid label,.inline-form label{padding:10px;border-radius:15px}
}

/* Retter-Portal v1.0.62-alpha.1 · Whitemode final polish: klare Kontraste, sichtbare Sidebar-Kürzel */
body[data-theme="light"]{
  --bg:#f3f6fa;
  --bg2:#e8eef6;
  --surface:rgba(255,255,255,.94);
  --surface-2:#ffffff;
  --text:#111827;
  --muted:#526173;
  --muted-2:#738195;
  --line:#c8d3e0;
  --line-soft:rgba(15,23,42,.12);
  --sidebar:#ffffff;
  --sidebar-2:#f6f9fc;
  --sidebar-text:#1f2937;
  --shadow:0 18px 54px rgba(15,23,42,.105);
  --shadow-sm:0 8px 24px rgba(15,23,42,.075);
  color-scheme:light;
  background:
    radial-gradient(circle at 12% -8%,rgba(200,16,46,.10),transparent 30rem),
    radial-gradient(circle at 92% -6%,rgba(37,99,235,.10),transparent 30rem),
    linear-gradient(135deg,#f7f9fc 0%,#eef3f9 48%,#e6edf6 100%) !important;
}
body[data-theme="light"]:before{
  opacity:.42;
  background-image:
    linear-gradient(rgba(15,23,42,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(15,23,42,.045) 1px,transparent 1px) !important;
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,#000,transparent 88%);
}
body[data-theme="light"] .sidebar{
  color:#1f2937 !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,249,253,.97)) !important;
  border-right:1px solid rgba(148,163,184,.38) !important;
  box-shadow:16px 0 52px rgba(15,23,42,.10) !important;
}
body[data-theme="light"] .brand{
  margin:0 0 10px;
  padding:14px 12px 18px;
  border-radius:24px;
  background:linear-gradient(145deg,#ffffff,#f2f6fb);
  border:1px solid rgba(148,163,184,.28);
  box-shadow:0 14px 36px rgba(15,23,42,.07), inset 0 1px 0 rgba(255,255,255,.9);
}
body[data-theme="light"] .brand small,
body[data-theme="light"] .nav-section{
  color:#66758a !important;
  text-shadow:none !important;
}
body[data-theme="light"] .nav-section{
  margin:20px 10px 9px;
  letter-spacing:.15em;
}
body[data-theme="light"] .sidebar nav a{
  color:#263244 !important;
  background:transparent !important;
  border:1px solid transparent !important;
  box-shadow:none !important;
  font-weight:880;
}
body[data-theme="light"] .sidebar nav a span{
  display:grid !important;
  place-items:center !important;
  flex:0 0 30px;
  width:30px !important;
  height:30px !important;
  border-radius:11px;
  color:#334155 !important;
  background:#edf3f8 !important;
  border:1px solid rgba(148,163,184,.42);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 2px 8px rgba(15,23,42,.04);
  font-size:.68rem;
  line-height:1;
  font-weight:1000;
  letter-spacing:.06em;
  text-align:center;
  text-transform:uppercase;
}
body[data-theme="light"] .sidebar nav a:hover{
  color:#9f1239 !important;
  background:linear-gradient(135deg,rgba(200,16,46,.075),rgba(255,255,255,.68)) !important;
  border-color:rgba(200,16,46,.16) !important;
}
body[data-theme="light"] .sidebar nav a:hover span{
  color:#9f1239 !important;
  background:#fff1f2 !important;
  border-color:rgba(200,16,46,.25);
}
body[data-theme="light"] .sidebar nav a.active{
  color:#ffffff !important;
  background:linear-gradient(135deg,#b40f27,#8f1224) !important;
  border-color:rgba(180,15,39,.22) !important;
  box-shadow:0 16px 34px rgba(180,15,39,.24) !important;
}
body[data-theme="light"] .sidebar nav a.active span{
  color:#ffffff !important;
  background:rgba(255,255,255,.16) !important;
  border-color:rgba(255,255,255,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20);
}
body[data-theme="light"] .topbar{
  background:rgba(250,252,255,.88) !important;
  border-bottom:1px solid rgba(148,163,184,.32) !important;
  box-shadow:0 10px 30px rgba(15,23,42,.055) !important;
}
body[data-theme="light"] .topbar-title strong,
body[data-theme="light"] .user-chip{
  color:#111827 !important;
}
body[data-theme="light"] .topbar-eyebrow,
body[data-theme="light"] .user-chip small{
  color:#66758a !important;
}
body[data-theme="light"] .secure-pill{
  background:#ecfdf5 !important;
  color:#047857 !important;
  border-color:#a7f3d0 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 6px 16px rgba(4,120,87,.08);
}
body[data-theme="light"] .theme-switch,
body[data-theme="light"] .auth-theme-switch,
body[data-theme="light"] .rp55-theme-switch{
  background:#f1f5f9 !important;
  border-color:rgba(148,163,184,.36) !important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.05),0 6px 18px rgba(15,23,42,.045) !important;
}
body[data-theme="light"] .theme-dot,
body[data-theme="light"] .auth-theme-switch button{
  color:#66758a !important;
}
body[data-theme="light"] .theme-dot.active,
body[data-theme="light"] .theme-dot:hover,
body[data-theme="light"] .auth-theme-switch button.active,
body[data-theme="light"] .auth-theme-switch button:hover{
  color:#111827 !important;
  background:#ffffff !important;
  box-shadow:0 6px 16px rgba(15,23,42,.08) !important;
}
body[data-theme="light"] .content{
  background:transparent;
}
body[data-theme="light"] .content > .page-head,
body[data-theme="light"] .page-hero{
  color:#111827 !important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(244,248,252,.90)),
    radial-gradient(circle at 10% 18%,rgba(200,16,46,.08),transparent 28rem),
    radial-gradient(circle at 92% 10%,rgba(37,99,235,.08),transparent 28rem) !important;
  border-color:rgba(148,163,184,.36) !important;
  box-shadow:0 22px 68px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.92) !important;
}
body[data-theme="light"] .content > .page-head h1,
body[data-theme="light"] .page-hero h1,
body[data-theme="light"] h1,
body[data-theme="light"] h2,
body[data-theme="light"] h3{
  color:#101828 !important;
  text-shadow:none !important;
}
body[data-theme="light"] .muted,
body[data-theme="light"] p.muted,
body[data-theme="light"] .content > .page-head .muted{
  color:#526173 !important;
}
body[data-theme="light"] .content > .page-head .eyebrow{
  color:#9f1239 !important;
  background:#fff1f2 !important;
  border-color:rgba(200,16,46,.20) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 8px 18px rgba(200,16,46,.06);
}
body[data-theme="light"] .card,
body[data-theme="light"] .stat-card,
body[data-theme="light"] .toolbar,
body[data-theme="light"] .pagination,
body[data-theme="light"] .login-card,
body[data-theme="light"] .content > .card:not(.rp55-focus-card):not(.rp55-own-card):not(.rp55-table-card),
body[data-theme="light"] .entity-card,
body[data-theme="light"] .detail-item,
body[data-theme="light"] .info-grid > div,
body[data-theme="light"] .calendar-item,
body[data-theme="light"] .timeline-item,
body[data-theme="light"] .department-chip{
  color:#111827 !important;
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(247,250,253,.88)) !important;
  border-color:rgba(148,163,184,.34) !important;
  box-shadow:0 16px 46px rgba(15,23,42,.085), inset 0 1px 0 rgba(255,255,255,.92) !important;
}
body[data-theme="light"] .content > .toolbar{
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(241,246,251,.90)) !important;
  border-color:rgba(148,163,184,.34) !important;
  box-shadow:0 16px 40px rgba(15,23,42,.075), inset 0 1px 0 rgba(255,255,255,.92) !important;
}
body[data-theme="light"] .content > .toolbar:before{
  color:#334155 !important;
  background:#eef3f8 !important;
  border:1px solid rgba(148,163,184,.26);
}
body[data-theme="light"] input,
body[data-theme="light"] select,
body[data-theme="light"] textarea{
  color:#101828 !important;
  background:#ffffff !important;
  border-color:#c8d3e0 !important;
  box-shadow:inset 0 1px 1px rgba(15,23,42,.035),0 1px 0 rgba(255,255,255,.75) !important;
}
body[data-theme="light"] input::placeholder,
body[data-theme="light"] textarea::placeholder{
  color:#7d8aa0 !important;
}
body[data-theme="light"] input:focus,
body[data-theme="light"] select:focus,
body[data-theme="light"] textarea:focus{
  border-color:#b40f27 !important;
  box-shadow:0 0 0 4px rgba(180,15,39,.12),0 10px 24px rgba(15,23,42,.075) !important;
}
body[data-theme="light"] label{
  color:#526173 !important;
}
body[data-theme="light"] .form-grid label,
body[data-theme="light"] .inline-form label{
  background:#f8fafc !important;
  border-color:rgba(148,163,184,.28) !important;
}
body[data-theme="light"] .table-wrap,
body[data-theme="light"] .content > .card.table-wrap{
  background:#ffffff !important;
  border-color:rgba(148,163,184,.36) !important;
  box-shadow:0 14px 38px rgba(15,23,42,.075), inset 0 1px 0 rgba(255,255,255,.92) !important;
}
body[data-theme="light"] table{
  color:#111827 !important;
}
body[data-theme="light"] th{
  color:#4b5a6f !important;
  background:linear-gradient(180deg,#f1f5f9,#e8eef6) !important;
  border-bottom-color:rgba(148,163,184,.34) !important;
}
body[data-theme="light"] td{
  color:#243044 !important;
  border-bottom-color:rgba(148,163,184,.22) !important;
  background:rgba(255,255,255,.62);
}
body[data-theme="light"] tr:hover td{
  background:#fff7f8 !important;
}
body[data-theme="light"] td strong,
body[data-theme="light"] a strong{
  color:#111827 !important;
}
body[data-theme="light"] .btn:not(.primary):not(.danger){
  color:#111827 !important;
  background:linear-gradient(145deg,#ffffff,#f3f6fa) !important;
  border-color:rgba(148,163,184,.42) !important;
  box-shadow:0 8px 22px rgba(15,23,42,.075) !important;
}
body[data-theme="light"] .btn:not(.primary):not(.danger):hover{
  border-color:rgba(180,15,39,.30) !important;
  box-shadow:0 12px 26px rgba(15,23,42,.10) !important;
}
body[data-theme="light"] .btn.primary{
  background:linear-gradient(135deg,#b40f27,#8f1224) !important;
  box-shadow:0 14px 28px rgba(180,15,39,.23) !important;
}
body[data-theme="light"] .pill,
body[data-theme="light"] .status,
body[data-theme="light"] .role{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 4px 12px rgba(15,23,42,.045) !important;
}
body[data-theme="light"] .status.Aktiv,
body[data-theme="light"] .status.Verfügbar,
body[data-theme="light"] .status.Genehmigt,
body[data-theme="light"] .ok{
  background:#ecfdf5 !important;
  color:#047857 !important;
  border-color:#a7f3d0 !important;
}
body[data-theme="light"] .status.Defekt,
body[data-theme="light"] .status.Abgelehnt,
body[data-theme="light"] .danger-text{
  background:#fff1f2 !important;
  color:#be123c !important;
  border-color:#fecdd3 !important;
}
body[data-theme="light"] .status.Offen,
body[data-theme="light"] .status.In{
  background:#fff7ed !important;
  color:#c2410c !important;
  border-color:#fed7aa !important;
}
body[data-theme="light"] .flash.success{background:#ecfdf5!important;color:#047857!important;border-color:#a7f3d0!important}
body[data-theme="light"] .flash.error{background:#fff1f2!important;color:#be123c!important;border-color:#fecdd3!important}
body[data-theme="light"] .flash.info{background:#eff6ff!important;color:#1d4ed8!important;border-color:#bfdbfe!important}
body[data-theme="light"] .entity-icon,
body[data-theme="light"] .auth-feature-card span,
body[data-theme="light"] .mailbox-icon{
  background:#fff1f2 !important;
  color:#b40f27 !important;
  border:1px solid rgba(200,16,46,.15);
}
body[data-theme="light"] .rp55-focus-card,
body[data-theme="light"] .rp55-own-card,
body[data-theme="light"] .rp55-table-card{
  border-color:rgba(148,163,184,.34) !important;
}
@media(max-width:900px){
  body[data-theme="light"] .sidebar{
    background:linear-gradient(180deg,#ffffff,#f6f9fc) !important;
    box-shadow:24px 0 70px rgba(15,23,42,.18) !important;
  }
}

/* Retter-Portal v1.0.62-alpha.1 · Whitemode Deep Pass: Dashboard, Flächen, Kontrast, weniger grelles Weiß */
body[data-theme="light"]{
  --bg:#e9eff6;
  --bg2:#dde7f1;
  --surface:rgba(248,251,255,.94);
  --surface-2:#f6f9fc;
  --text:#101828;
  --muted:#475569;
  --muted-2:#66758a;
  --line:#b9c7d8;
  --line-soft:rgba(15,23,42,.135);
  --shadow:0 20px 58px rgba(15,23,42,.115);
  --shadow-sm:0 9px 24px rgba(15,23,42,.085);
  background:
    radial-gradient(circle at 9% -8%,rgba(200,16,46,.085),transparent 31rem),
    radial-gradient(circle at 96% 0%,rgba(29,78,216,.095),transparent 34rem),
    linear-gradient(135deg,#eef4fa 0%,#e7eef7 45%,#dde7f1 100%) !important;
}
body[data-theme="light"]:before{
  opacity:.34 !important;
  background-image:
    linear-gradient(rgba(15,23,42,.050) 1px,transparent 1px),
    linear-gradient(90deg,rgba(15,23,42,.042) 1px,transparent 1px) !important;
  background-size:48px 48px !important;
}
body[data-theme="light"] .content{
  background:
    radial-gradient(circle at 8% 4%,rgba(200,16,46,.035),transparent 26rem),
    radial-gradient(circle at 94% 2%,rgba(29,78,216,.045),transparent 28rem);
}
body[data-theme="light"] .sidebar{
  background:
    linear-gradient(180deg,rgba(248,251,255,.99),rgba(232,239,248,.98)) !important;
  border-right-color:rgba(100,116,139,.34) !important;
}
body[data-theme="light"] .brand{
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(238,244,250,.96)) !important;
  border-color:rgba(100,116,139,.25) !important;
}
body[data-theme="light"] .topbar{
  background:rgba(244,248,252,.92) !important;
  border-bottom-color:rgba(100,116,139,.30) !important;
}
body[data-theme="light"] .rp55-dashboard{
  gap:24px;
}
body[data-theme="light"] .rp55-dash-hero{
  position:relative;
  color:#f8fafc !important;
  background:
    radial-gradient(circle at 14% 18%,rgba(200,16,46,.32),transparent 25rem),
    radial-gradient(circle at 92% 8%,rgba(37,99,235,.30),transparent 28rem),
    linear-gradient(135deg,#152033 0%,#1c2b45 52%,#233554 100%) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:0 24px 68px rgba(21,32,51,.22), inset 0 1px 0 rgba(255,255,255,.10) !important;
}
body[data-theme="light"] .rp55-dash-hero:before{
  opacity:.70;
  background:radial-gradient(circle,rgba(200,16,46,.34),rgba(37,99,235,.18),transparent 68%) !important;
}
body[data-theme="light"] .rp55-dash-hero:after{
  opacity:.62;
  background-image:
    linear-gradient(rgba(255,255,255,.042) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px) !important;
}
body[data-theme="light"] .rp55-dash-hero h1,
body[data-theme="light"] .rp55-dash-hero h2,
body[data-theme="light"] .rp55-dash-hero h3,
body[data-theme="light"] .rp55-dash-copy h1{
  color:#ffffff !important;
  text-shadow:0 14px 34px rgba(0,0,0,.18) !important;
}
body[data-theme="light"] .rp55-dash-hero .eyebrow{
  color:#fecdd3 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
body[data-theme="light"] .rp55-dash-hero .muted,
body[data-theme="light"] .rp55-dash-copy .muted{
  color:#d9e3ef !important;
}
body[data-theme="light"] .rp55-dash-tags span{
  color:#f8fafc !important;
  background:rgba(255,255,255,.105) !important;
  border-color:rgba(255,255,255,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12) !important;
}
body[data-theme="light"] .rp55-dash-actions .btn:not(.primary){
  color:#101828 !important;
  background:rgba(255,255,255,.94) !important;
  border-color:rgba(255,255,255,.45) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.13) !important;
}
body[data-theme="light"] .rp55-kpi-card{
  background:linear-gradient(145deg,rgba(250,252,255,.96),rgba(238,244,250,.92)) !important;
  border-color:rgba(100,116,139,.25) !important;
  box-shadow:0 16px 42px rgba(15,23,42,.095), inset 0 1px 0 rgba(255,255,255,.88) !important;
}
body[data-theme="light"] .rp55-kpi-card span{
  color:#526173 !important;
}
body[data-theme="light"] .rp55-kpi-card strong{
  color:#111827 !important;
}
body[data-theme="light"] .rp55-kpi-card small{
  color:#5b6b80 !important;
}
body[data-theme="light"] .rp55-focus-card,
body[data-theme="light"] .rp55-own-card,
body[data-theme="light"] .rp55-table-card,
body[data-theme="light"] .card{
  background:linear-gradient(145deg,rgba(248,251,255,.96),rgba(235,242,249,.91)) !important;
  border-color:rgba(100,116,139,.26) !important;
  box-shadow:0 18px 48px rgba(15,23,42,.095), inset 0 1px 0 rgba(255,255,255,.86) !important;
}
body[data-theme="light"] .rp55-focus-card .card-head,
body[data-theme="light"] .rp55-own-card .card-head,
body[data-theme="light"] .rp55-table-card .card-head,
body[data-theme="light"] .card-head{
  border-bottom-color:rgba(100,116,139,.18) !important;
}
body[data-theme="light"] .card-head h2,
body[data-theme="light"] .rp55-focus-card h2,
body[data-theme="light"] .rp55-own-card h2,
body[data-theme="light"] .rp55-table-card h2{
  color:#111827 !important;
}
body[data-theme="light"] .rp55-focus-grid article,
body[data-theme="light"] .rp55-own-metrics article,
body[data-theme="light"] .rp55-priority-list a,
body[data-theme="light"] .rp55-timeline-list .timeline-item,
body[data-theme="light"] .rp55-department-strip .department-chip{
  background:linear-gradient(145deg,#f8fbff,#edf3f8) !important;
  border-color:rgba(100,116,139,.23) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86) !important;
}
body[data-theme="light"] .rp55-focus-grid span,
body[data-theme="light"] .rp55-own-metrics span{
  color:#536277 !important;
}
body[data-theme="light"] .rp55-focus-grid strong,
body[data-theme="light"] .rp55-own-metrics strong,
body[data-theme="light"] .rp55-priority-list strong,
body[data-theme="light"] .rp55-timeline-list strong,
body[data-theme="light"] .rp55-department-strip strong{
  color:#111827 !important;
}
body[data-theme="light"] .rp55-focus-grid small,
body[data-theme="light"] .rp55-priority-list small,
body[data-theme="light"] .rp55-timeline-list small{
  color:#5b6b80 !important;
}
body[data-theme="light"] .table-wrap,
body[data-theme="light"] .dashboard-table{
  background:linear-gradient(145deg,#f9fbfd,#edf3f8) !important;
  border-color:rgba(100,116,139,.24) !important;
}
body[data-theme="light"] th{
  background:linear-gradient(180deg,#e8eef6,#dce6f1) !important;
  color:#3f4e63 !important;
}
body[data-theme="light"] td{
  background:rgba(248,251,255,.74) !important;
  color:#273244 !important;
}
body[data-theme="light"] tr:hover td{
  background:#fff2f4 !important;
}
body[data-theme="light"] .pill,
body[data-theme="light"] .role,
body[data-theme="light"] .status{
  background:#edf3ff !important;
  color:#263b7a !important;
  border-color:rgba(37,99,235,.17) !important;
}
body[data-theme="light"] .secure-pill{
  background:#dff8ee !important;
  color:#05694d !important;
  border-color:#95e8c4 !important;
}
body[data-theme="light"] .btn:not(.primary):not(.danger){
  background:linear-gradient(145deg,#f9fbfd,#e9f0f7) !important;
  border-color:rgba(100,116,139,.30) !important;
}
body[data-theme="light"] input,
body[data-theme="light"] select,
body[data-theme="light"] textarea{
  background:#f8fbfe !important;
  border-color:#b9c7d8 !important;
}
body[data-theme="light"] .empty{
  color:#64748b !important;
}
body[data-theme="light"] .logo-dark{display:none!important}
body[data-theme="light"] .logo-light{display:block!important}
@media(max-width:900px){
  body[data-theme="light"] .rp55-dash-hero{border-radius:26px!important;padding:25px!important}
  body[data-theme="light"] .rp55-kpi-card{min-height:118px}
}

/* Retter-Portal v1.0.62-alpha.1 · Lightmode-Finalisierung: keine Dark-Cards im hellen Design */
body[data-theme="light"]{
  --bg:#e7eef6;
  --bg2:#dce7f2;
  --surface:rgba(247,250,254,.96);
  --surface-2:#f7fafc;
  --text:#0f172a;
  --muted:#4b5d73;
  --muted-2:#6a7a90;
  --line:#b5c4d6;
  --line-soft:rgba(15,23,42,.13);
  color:#0f172a!important;
  background:
    radial-gradient(circle at 8% -6%,rgba(200,16,46,.070),transparent 30rem),
    radial-gradient(circle at 92% -4%,rgba(29,78,216,.085),transparent 34rem),
    linear-gradient(135deg,#edf3f9 0%,#e6eef7 44%,#dbe6f1 100%)!important;
}
body[data-theme="light"] .main,
body[data-theme="light"] .content{
  color:#0f172a!important;
}
body[data-theme="light"] .rp55-public{
  color:#0f172a!important;
  background:
    radial-gradient(circle at 10% -10%,rgba(200,16,46,.065),transparent 32rem),
    radial-gradient(circle at 88% -8%,rgba(37,99,235,.080),transparent 34rem),
    linear-gradient(135deg,#eef4fa 0%,#e7eff7 52%,#dfe9f4 100%)!important;
}
body[data-theme="light"] .rp55-public:before{
  opacity:.42!important;
  background-image:
    linear-gradient(rgba(15,23,42,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(15,23,42,.038) 1px,transparent 1px)!important;
}
body[data-theme="light"] .rp55-public:after{
  background:
    linear-gradient(90deg,rgba(244,248,252,.78),rgba(248,251,255,.30) 45%,rgba(237,244,251,.78))!important;
}
body[data-theme="light"] .rp55-nav{
  background:rgba(248,251,255,.90)!important;
  border-color:rgba(116,132,154,.34)!important;
  box-shadow:0 18px 48px rgba(15,23,42,.115)!important;
}
body[data-theme="light"] .rp55-brand-mark,
body[data-theme="light"] .rp55-nav-login,
body[data-theme="light"] .rp55-theme-switch{
  background:linear-gradient(145deg,#ffffff,#edf3f9)!important;
  border-color:rgba(116,132,154,.30)!important;
  color:#101828!important;
}
body[data-theme="light"] .rp55-nav-links a,
body[data-theme="light"] .rp55-brand small,
body[data-theme="light"] .rp55-theme-switch button{
  color:#536277!important;
}
body[data-theme="light"] .rp55-nav-links a:hover{
  background:#fff1f3!important;
  color:#b40f27!important;
}
body[data-theme="light"] .rp55-hero h1,
body[data-theme="light"] .rp55-section-head h2,
body[data-theme="light"] .rp55-security-copy h2{
  color:#0f172a!important;
  text-shadow:none!important;
}
body[data-theme="light"] .rp55-lead,
body[data-theme="light"] .rp55-section-head p,
body[data-theme="light"] .rp55-security-copy p{
  color:#4b5d73!important;
}
body[data-theme="light"] .rp55-kicker,
body[data-theme="light"] .rp55-trust-row span{
  background:rgba(255,255,255,.72)!important;
  border-color:rgba(116,132,154,.28)!important;
  color:#334155!important;
  box-shadow:0 8px 24px rgba(15,23,42,.055)!important;
}
body[data-theme="light"] .rp55-signin,
body[data-theme="light"] .rp55-section,
body[data-theme="light"] .rp55-proof article,
body[data-theme="light"] .rp55-module-grid article,
body[data-theme="light"] .rp55-security-grid article,
body[data-theme="light"] .rp55-flow-grid article{
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(239,245,251,.92))!important;
  color:#0f172a!important;
  border-color:rgba(116,132,154,.28)!important;
  box-shadow:0 18px 52px rgba(15,23,42,.085),inset 0 1px 0 rgba(255,255,255,.86)!important;
}
body[data-theme="light"] .rp55-product-preview{
  color:#0f172a!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.94),rgba(235,243,251,.94))!important;
  border-color:rgba(116,132,154,.30)!important;
  box-shadow:0 22px 62px rgba(15,23,42,.105),inset 0 1px 0 rgba(255,255,255,.88)!important;
}
body[data-theme="light"] .rp55-product-preview:before{
  background:
    radial-gradient(circle at 18% 16%,rgba(200,16,46,.10),transparent 30%),
    radial-gradient(circle at 92% 42%,rgba(37,99,235,.12),transparent 36%)!important;
}
body[data-theme="light"] .rp55-preview-head small{
  color:#66758a!important;
}
body[data-theme="light"] .rp55-preview-head strong{
  color:#0f172a!important;
}
body[data-theme="light"] .rp55-preview-head span{
  background:#dcfce7!important;
  color:#047857!important;
  border-color:#a7f3d0!important;
}
body[data-theme="light"] .rp55-preview-board{
  background:
    radial-gradient(circle at 22% 24%,rgba(200,16,46,.075),transparent 24%),
    radial-gradient(circle at 78% 26%,rgba(37,99,235,.085),transparent 30%),
    linear-gradient(145deg,#f8fbff,#e7f0f8)!important;
  border-color:rgba(116,132,154,.25)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 14px 34px rgba(15,23,42,.055)!important;
}
body[data-theme="light"] .rp55-preview-board:before{
  opacity:.68!important;
  background-image:
    linear-gradient(rgba(15,23,42,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(15,23,42,.045) 1px,transparent 1px)!important;
}
body[data-theme="light"] .rp55-mini-card,
body[data-theme="light"] .rp55-preview-metrics article{
  background:rgba(255,255,255,.76)!important;
  border-color:rgba(116,132,154,.26)!important;
  color:#0f172a!important;
  box-shadow:0 10px 24px rgba(15,23,42,.060)!important;
}
body[data-theme="light"] .rp55-mini-card small,
body[data-theme="light"] .rp55-preview-metrics small{
  color:#536277!important;
}
body[data-theme="light"] .rp55-mini-card b,
body[data-theme="light"] .rp55-preview-metrics strong{
  color:#0f172a!important;
}
body[data-theme="light"] .rp55-dash-hero{
  color:#0f172a!important;
  background:
    radial-gradient(circle at 12% 12%,rgba(200,16,46,.085),transparent 28rem),
    radial-gradient(circle at 88% 8%,rgba(37,99,235,.115),transparent 31rem),
    linear-gradient(135deg,rgba(255,255,255,.94),rgba(233,241,249,.94))!important;
  border:1px solid rgba(116,132,154,.30)!important;
  box-shadow:0 22px 64px rgba(15,23,42,.115),inset 0 1px 0 rgba(255,255,255,.90)!important;
}
body[data-theme="light"] .rp55-dash-hero:before{
  opacity:1!important;
  background:
    linear-gradient(90deg,rgba(200,16,46,.16),transparent 34%),
    radial-gradient(circle at 92% 10%,rgba(37,99,235,.14),transparent 35%)!important;
}
body[data-theme="light"] .rp55-dash-hero:after{
  opacity:.62!important;
  background-image:
    linear-gradient(rgba(15,23,42,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px)!important;
}
body[data-theme="light"] .rp55-dash-hero h1,
body[data-theme="light"] .rp55-dash-hero h2,
body[data-theme="light"] .rp55-dash-hero h3,
body[data-theme="light"] .rp55-dash-copy h1{
  color:#0f172a!important;
  text-shadow:none!important;
}
body[data-theme="light"] .rp55-dash-hero .eyebrow{
  color:#9f1239!important;
  background:rgba(255,241,242,.72)!important;
  border:1px solid rgba(200,16,46,.14)!important;
  box-shadow:none!important;
}
body[data-theme="light"] .rp55-dash-hero .muted,
body[data-theme="light"] .rp55-dash-copy .muted{
  color:#46566b!important;
}
body[data-theme="light"] .rp55-dash-tags span{
  color:#273244!important;
  background:rgba(255,255,255,.74)!important;
  border-color:rgba(116,132,154,.26)!important;
  box-shadow:0 8px 18px rgba(15,23,42,.055),inset 0 1px 0 rgba(255,255,255,.86)!important;
}
body[data-theme="light"] .rp55-dash-actions .btn:not(.primary){
  color:#0f172a!important;
  background:linear-gradient(145deg,#ffffff,#eaf1f8)!important;
  border-color:rgba(116,132,154,.30)!important;
  box-shadow:0 10px 24px rgba(15,23,42,.075)!important;
}
body[data-theme="light"] .rp55-kpi-card,
body[data-theme="light"] .rp55-focus-card,
body[data-theme="light"] .rp55-own-card,
body[data-theme="light"] .rp55-table-card,
body[data-theme="light"] .card,
body[data-theme="light"] .stat-card,
body[data-theme="light"] .toolbar,
body[data-theme="light"] .pagination{
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(239,245,251,.92))!important;
  color:#0f172a!important;
  border-color:rgba(116,132,154,.28)!important;
  box-shadow:0 17px 46px rgba(15,23,42,.090),inset 0 1px 0 rgba(255,255,255,.86)!important;
}
body[data-theme="light"] .rp55-focus-grid article,
body[data-theme="light"] .rp55-own-metrics article,
body[data-theme="light"] .rp55-priority-list a,
body[data-theme="light"] .rp55-timeline-list .timeline-item,
body[data-theme="light"] .rp55-department-strip .department-chip{
  background:linear-gradient(145deg,#f9fbfe,#edf3f9)!important;
  border-color:rgba(116,132,154,.24)!important;
  color:#0f172a!important;
}
body[data-theme="light"] .map-card,
body[data-theme="light"] .map-side-panel,
body[data-theme="light"] .map-filter-panel{
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(238,245,251,.92))!important;
  border-color:rgba(116,132,154,.28)!important;
  box-shadow:0 17px 46px rgba(15,23,42,.090),inset 0 1px 0 rgba(255,255,255,.86)!important;
}
body[data-theme="light"] .water-map{
  border-color:rgba(116,132,154,.30)!important;
  box-shadow:0 18px 48px rgba(15,23,42,.10)!important;
}
@media(max-width:900px){
  body[data-theme="light"] .rp55-dash-hero{grid-template-columns:1fr!important;gap:18px!important}
}

/* Retter-Portal v1.0.62-alpha.1 · Lightmode-Fix: Dashboard-Eyebrow ohne Vollbreiten-Balken */
.rp55-dash-hero .eyebrow,
.rp55-dash-copy .eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:9px!important;
  width:auto!important;
  max-width:max-content!important;
  align-self:flex-start!important;
  white-space:nowrap!important;
  line-height:1!important;
  box-decoration-break:clone!important;
  -webkit-box-decoration-break:clone!important;
}
body[data-theme="light"] .rp55-dash-hero .eyebrow,
body[data-theme="light"] .rp55-dash-copy .eyebrow{
  display:inline-flex!important;
  width:auto!important;
  max-width:max-content!important;
  min-width:0!important;
  padding:8px 12px!important;
  border-radius:999px!important;
  color:#9f1239!important;
  background:rgba(255,241,242,.88)!important;
  border:1px solid rgba(200,16,46,.16)!important;
  box-shadow:0 8px 18px rgba(200,16,46,.045), inset 0 1px 0 rgba(255,255,255,.82)!important;
}
body[data-theme="light"] .rp55-dash-hero .eyebrow::before,
body[data-theme="light"] .rp55-dash-copy .eyebrow::before{
  content:""!important;
  display:inline-block!important;
  width:8px!important;
  height:8px!important;
  border-radius:999px!important;
  background:#c8102e!important;
  box-shadow:0 0 0 5px rgba(200,16,46,.10)!important;
  flex:0 0 auto!important;
}
@media(max-width:560px){
  .rp55-dash-hero .eyebrow,
  .rp55-dash-copy .eyebrow{
    white-space:normal!important;
    max-width:100%!important;
  }
}

/* Retter-Portal v1.0.63-alpha.1 · Dashboard-Eyebrow in Light/Dark einheitlich ohne Rahmen */
.rp55-dash-hero .eyebrow,
.rp55-dash-copy .eyebrow,
body[data-theme="light"] .rp55-dash-hero .eyebrow,
body[data-theme="light"] .rp55-dash-copy .eyebrow,
body[data-theme="dark"] .rp55-dash-hero .eyebrow,
body[data-theme="dark"] .rp55-dash-copy .eyebrow{
  display:inline-block!important;
  width:auto!important;
  max-width:max-content!important;
  min-width:0!important;
  padding:0!important;
  margin:0 0 16px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:rgba(200,16,46,.95)!important;
  font-size:.78rem!important;
  font-weight:950!important;
  letter-spacing:.16em!important;
  line-height:1.1!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  text-shadow:none!important;
}
body[data-theme="dark"] .rp55-dash-hero .eyebrow,
body[data-theme="dark"] .rp55-dash-copy .eyebrow{
  color:#fecdd3!important;
}
.rp55-dash-hero .eyebrow::before,
.rp55-dash-copy .eyebrow::before,
body[data-theme="light"] .rp55-dash-hero .eyebrow::before,
body[data-theme="light"] .rp55-dash-copy .eyebrow::before,
body[data-theme="dark"] .rp55-dash-hero .eyebrow::before,
body[data-theme="dark"] .rp55-dash-copy .eyebrow::before{
  content:none!important;
  display:none!important;
}


/* Retter-Portal v1.0.65-alpha.1 · Mobile UX Pass ohne Bottom-Navigation */
.mobile-app-nav{display:none}
@media(max-width:760px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important;-webkit-text-size-adjust:100%}
  body{min-height:100dvh;overscroll-behavior-y:contain}
  .content{padding:14px 12px calc(20px + env(safe-area-inset-bottom))!important;width:100%!important;max-width:100vw!important;overflow-x:hidden!important}
  .topbar{min-height:62px!important;padding:calc(8px + env(safe-area-inset-top)) 10px 8px!important;border-radius:0 0 22px 22px!important}
  .topbar-title strong{max-width:54vw!important;font-size:.98rem!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;word-break:normal!important;overflow-wrap:normal!important}
  .menu-toggle{width:44px!important;height:44px!important;flex:0 0 44px!important}
  .theme-switch{display:none!important}
  .page-head,.page-hero,.card,.toolbar,.pagination{border-radius:22px!important}
  .page-head,.content>.page-head{padding:20px 18px!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
  .page-head h1,.page-hero h1,.rp55-dash-copy h1,h1{font-size:clamp(1.95rem,9.2vw,2.85rem)!important;line-height:1.04!important;letter-spacing:-.055em!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;text-wrap:balance!important;max-width:100%!important}
  .page-head .muted,.page-hero .muted,.rp55-dash-copy .muted{font-size:.96rem!important;line-height:1.55!important;overflow-wrap:normal!important;word-break:normal!important}
  .btn,button,.pill,.status,.role,.sidebar nav a,.mobile-app-tab,.calendar-event-pill,.rp55-dash-tags span{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;white-space:nowrap!important}
  .btn,button{min-height:46px!important;touch-action:manipulation}
  .hero-actions,.actions,.form-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;width:100%!important;justify-content:stretch!important}
  .actions .btn,.hero-actions .btn,.form-actions .btn{width:100%!important;min-width:0!important}

  /* Tabellen werden auf dem Handy zu klaren App-Karten statt gequetschten Mini-Spalten. */
  .table-wrap{overflow:visible!important;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;border-radius:0!important;backdrop-filter:none!important}
  .table-wrap table.responsive-table{display:block!important;width:100%!important;min-width:0!important;table-layout:auto!important;border-collapse:separate!important;border-spacing:0!important}
  .table-wrap table.responsive-table thead{display:none!important}
  .table-wrap table.responsive-table tbody{display:grid!important;gap:12px!important;width:100%!important}
  .table-wrap table.responsive-table tr{display:block!important;width:100%!important;padding:12px 14px!important;border:1px solid rgba(118,134,157,.22)!important;border-radius:20px!important;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(238,244,250,.92))!important;box-shadow:0 12px 30px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.9)!important;overflow:hidden!important}
  body[data-theme="dark"] .table-wrap table.responsive-table tr{background:linear-gradient(145deg,rgba(16,25,41,.94),rgba(9,17,30,.94))!important;border-color:rgba(255,255,255,.09)!important;box-shadow:0 16px 36px rgba(0,0,0,.22)!important}
  .table-wrap table.responsive-table td{display:grid!important;grid-template-columns:minmax(96px,36%) minmax(0,1fr)!important;gap:12px!important;align-items:center!important;width:100%!important;padding:9px 0!important;border:0!important;border-bottom:1px solid rgba(118,134,157,.16)!important;background:transparent!important;text-align:left!important;font-size:.94rem!important;line-height:1.35!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important;color:var(--text)!important}
  body[data-theme="dark"] .table-wrap table.responsive-table td{border-bottom-color:rgba(255,255,255,.07)!important}
  .table-wrap table.responsive-table td:last-child{border-bottom:0!important}
  .table-wrap table.responsive-table td::before{content:attr(data-label);display:block;min-width:0;color:var(--muted)!important;font-size:.68rem!important;font-weight:950!important;letter-spacing:.10em!important;text-transform:uppercase!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;line-height:1.25!important}
  .table-wrap table.responsive-table td.mobile-action-cell,.table-wrap table.responsive-table td.actions{display:flex!important;justify-content:stretch!important;align-items:center!important;gap:8px!important;padding-top:12px!important;border-bottom:0!important}
  .table-wrap table.responsive-table td.mobile-action-cell::before,.table-wrap table.responsive-table td.actions::before{display:none!important;content:none!important}
  .table-wrap table.responsive-table td.mobile-action-cell .btn,.table-wrap table.responsive-table td.actions .btn{width:100%!important}
  .table-wrap table.responsive-table td.mobile-full-row{display:block!important;text-align:center!important;padding:18px!important;border-bottom:0!important;color:var(--muted)!important}
  .table-wrap table.responsive-table td.mobile-full-row::before{display:none!important;content:none!important}
  .table-wrap table.responsive-table strong,.table-wrap table.responsive-table a,.table-wrap table.responsive-table span{word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important}
  .table-wrap table.responsive-table .pill,.table-wrap table.responsive-table .status{justify-self:start!important;white-space:nowrap!important;max-width:100%!important}

  .rp55-dashboard{gap:16px!important}
  .rp55-dash-hero{padding:24px 18px!important;border-radius:26px!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
  .rp55-dash-tags{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .rp55-dash-tags span{width:auto!important;max-width:100%!important;font-size:.78rem!important;padding:8px 10px!important}
  .rp55-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .rp55-kpi-card{min-height:116px!important;padding:16px!important;border-radius:20px!important}
  .rp55-kpi-card strong{font-size:2.1rem!important}
  .rp55-command-layout,.rp55-data-grid,.grid.two,.grid.three{grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
  .rp55-focus-grid,.rp55-own-metrics{grid-template-columns:minmax(0,1fr)!important}
  .rp55-priority-list a,.timeline-item,.department-chip{align-items:flex-start!important;word-break:normal!important;overflow-wrap:normal!important}
  .rp55-priority-list a small,.timeline-item small,.department-chip em{white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}

  .mobile-app-nav{position:fixed;z-index:90;left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:8px;border-radius:26px;background:rgba(248,251,255,.92);border:1px solid rgba(118,134,157,.26);box-shadow:0 24px 70px rgba(15,23,42,.22),inset 0 1px 0 rgba(255,255,255,.88);backdrop-filter:blur(20px) saturate(1.35)}
  body[data-theme="dark"] .mobile-app-nav{background:rgba(8,13,22,.88);border-color:rgba(255,255,255,.10);box-shadow:0 26px 80px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08)}
  .mobile-app-tab{min-width:0;min-height:54px;padding:7px 4px;border:0;border-radius:19px;background:transparent;color:#526173;display:grid;place-items:center;gap:3px;text-align:center;text-decoration:none;font-weight:950;line-height:1.1;box-shadow:none!important}
  body[data-theme="dark"] .mobile-app-tab{color:#a8b4c5}
  .mobile-app-tab span{display:grid;place-items:center;min-width:24px;height:24px;padding:0 5px;border-radius:999px;background:rgba(15,23,42,.055);color:#0f172a;font-size:.74rem;font-weight:1000;letter-spacing:.03em}
  body[data-theme="dark"] .mobile-app-tab span{background:rgba(255,255,255,.08);color:#e5edf8}
  .mobile-app-tab strong{display:block;max-width:100%;font-size:.66rem;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-app-tab.active{background:linear-gradient(135deg,#c8102e,#9f1239);color:#fff;box-shadow:0 12px 28px rgba(200,16,46,.28)!important}
  .mobile-app-tab.active span{background:rgba(255,255,255,.18);color:#fff}
  .mobile-app-menu{appearance:none;-webkit-appearance:none}
}

@media(max-width:420px){
  .content{padding-left:10px!important;padding-right:10px!important}
  .page-head h1,.page-hero h1,.rp55-dash-copy h1,h1{font-size:clamp(1.78rem,8.8vw,2.35rem)!important;letter-spacing:-.05em!important}
  .rp55-kpi-grid{grid-template-columns:1fr!important}
  .table-wrap table.responsive-table td{grid-template-columns:1fr!important;gap:4px!important;padding:10px 0!important}
  .table-wrap table.responsive-table td::before{font-size:.66rem!important}
  .mobile-app-tab strong{font-size:.62rem}
  .mobile-app-tab{min-height:52px}
}


/* Retter-Portal v1.0.65-alpha.1 · Mobile Bottom-Navigation entfernt, Sidebar bleibt Hauptnavigation */
.mobile-app-nav{display:none!important;visibility:hidden!important;pointer-events:none!important}
@media(max-width:760px){
  .mobile-app-nav{display:none!important;visibility:hidden!important;pointer-events:none!important}
  .content{padding-bottom:calc(20px + env(safe-area-inset-bottom))!important}
}

/* Retter-Portal v1.0.69-alpha.1 · Mobile-Finalisierung: kein seitliches Wischen, Formularfelder wie App-Eingaben */
@media(max-width:760px){
  html,
  body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    touch-action:pan-y!important;
  }
  body{
    position:relative!important;
  }
  .app-shell,
  .main,
  .content,
  .page-head,
  .page-hero,
  .card,
  .toolbar,
  .pagination,
  .grid,
  .form-grid,
  .table-wrap,
  .rp55-public,
  .rp55-public main,
  .rp55-nav,
  .rp55-hero,
  .rp55-hero-copy,
  .rp55-hero-side,
  .rp55-section,
  .rp55-signin,
  .rp55-product-preview{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .rp55-public,
  .rp55-public body{
    overflow-x:hidden!important;
  }
  .rp55-public{
    width:100%!important;
    padding-left:max(12px,env(safe-area-inset-left))!important;
    padding-right:max(12px,env(safe-area-inset-right))!important;
  }
  .rp55-public *{
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .rp55-nav{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding:13px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    overflow:hidden!important;
  }
  .rp55-brand{
    width:100%!important;
    min-width:0!important;
    gap:10px!important;
  }
  .rp55-brand strong{
    max-width:calc(100vw - 120px)!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .rp55-nav-links{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    overflow:visible!important;
  }
  .rp55-nav-links a{
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
    text-align:center!important;
    padding:10px 8px!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.055)!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body[data-theme="light"] .rp55-nav-links a{
    background:rgba(15,23,42,.045)!important;
  }
  .rp55-nav-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
  }
  .rp55-nav-actions a,
  .rp55-nav-actions .btn{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .rp55-hero{
    width:100%!important;
    margin-top:20px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:18px!important;
  }
  .rp55-hero h1{
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(2.25rem,11.4vw,3.35rem)!important;
    line-height:1.03!important;
    letter-spacing:-.055em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  .rp55-kicker{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    line-height:1.28!important;
    align-items:flex-start!important;
    letter-spacing:.105em!important;
  }
  .rp55-kicker span{
    flex:0 0 9px!important;
    margin-top:.35em!important;
  }
  .rp55-lead{
    max-width:100%!important;
    font-size:1rem!important;
    line-height:1.58!important;
    overflow-wrap:break-word!important;
  }
  .rp55-hero-actions,
  .rp55-trust-row{
    width:100%!important;
  }
  .rp55-section{
    width:100%!important;
    padding:22px 16px!important;
    margin-top:18px!important;
    border-radius:24px!important;
    overflow:hidden!important;
  }
  .rp55-product-preview{
    padding:18px!important;
    border-radius:24px!important;
    overflow:hidden!important;
  }
  .rp55-preview-board{
    width:100%!important;
    height:168px!important;
    overflow:hidden!important;
  }
  .rp55-board-line.one{left:34px!important;top:94px!important;width:200px!important}
  .rp55-board-line.two{left:72px!important;top:76px!important;width:132px!important}
  .rp55-point.red{left:48px!important;top:82px!important}
  .rp55-point.blue{left:190px!important;top:58px!important}
  .rp55-point.green{right:34px!important;bottom:56px!important}
  .rp55-mini-card{min-width:70px!important;padding:8px 10px!important}
  .rp55-mini-card.a{left:14px!important;bottom:14px!important}
  .rp55-mini-card.b{right:14px!important;top:14px!important}

  .form-grid,
  .form-grid.one,
  .grid.two,
  .grid.three,
  .detail-grid,
  .info-grid,
  .entity-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .form-grid label,
  .inline-form label,
  label{
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    overflow:hidden!important;
  }
  input,
  select,
  textarea{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-inline-size:0!important;
    box-sizing:border-box!important;
    font-size:16px!important;
    line-height:1.25!important;
  }
  select{
    -webkit-appearance:none!important;
    appearance:none!important;
    padding-right:46px!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%)!important;
    background-position:calc(100% - 22px) 50%,calc(100% - 15px) 50%!important;
    background-size:7px 7px,7px 7px!important;
    background-repeat:no-repeat!important;
  }
  input[type="date"],
  input[type="time"],
  input[type="datetime-local"],
  input[type="month"]{
    -webkit-min-logical-width:0!important;
    min-inline-size:0!important;
    padding-left:14px!important;
    padding-right:14px!important;
    text-align:left!important;
  }
  .inline-form,
  .toolbar form{
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
  .inline-form > *,
  .inline-form.slim > *{
    width:100%!important;
    min-width:0!important;
  }
  .card,
  .login-card{
    overflow:hidden!important;
  }
}

@media(max-width:390px){
  .rp55-public{padding-left:9px!important;padding-right:9px!important}
  .rp55-nav{padding:11px!important;border-radius:22px!important}
  .rp55-nav-links a{font-size:.82rem!important;padding:9px 6px!important}
  .rp55-hero h1{font-size:clamp(2.02rem,10.8vw,2.9rem)!important}
  .rp55-section-head h2,
  .rp55-security-copy h2{font-size:clamp(1.75rem,9vw,2.45rem)!important}
  .content{padding-left:8px!important;padding-right:8px!important}
  .card{padding:17px 14px!important}
  .form-grid label,
  .inline-form label{padding:10px!important}
  input,select,textarea{padding-left:12px!important;padding-right:12px!important}
  select{padding-right:42px!important;background-position:calc(100% - 20px) 50%,calc(100% - 13px) 50%!important}
}

/* Retter-Portal v1.0.69-alpha.1 · Dashboard Overflow Fix */
.rp55-dashboard,
.rp55-dashboard *,
.rp55-dashboard *::before,
.rp55-dashboard *::after{box-sizing:border-box!important;min-width:0}
.rp55-dashboard{width:100%!important;max-width:100%!important;overflow-x:clip!important}
.rp55-dashboard .card,
.rp55-dashboard .table-wrap,
.rp55-dashboard .rp55-dash-hero,
.rp55-dashboard .rp55-kpi-grid,
.rp55-dashboard .rp55-command-layout,
.rp55-dashboard .rp55-data-grid,
.rp55-dashboard .rp55-focus-grid,
.rp55-dashboard .rp55-own-metrics{max-width:100%!important;min-width:0!important}
.rp55-dashboard .rp55-dash-copy,
.rp55-dashboard .rp55-dash-actions,
.rp55-dashboard .rp55-priority-list,
.rp55-dashboard .rp55-timeline-list,
.rp55-dashboard .department-strip{min-width:0!important;max-width:100%!important}
.rp55-dashboard h1,
.rp55-dashboard h2,
.rp55-dashboard h3,
.rp55-dashboard p,
.rp55-dashboard small,
.rp55-dashboard td,
.rp55-dashboard th,
.rp55-dashboard strong,
.rp55-dashboard a:not(.btn){overflow-wrap:break-word!important;word-break:normal!important;hyphens:none!important}
.rp55-dashboard .btn,
.rp55-dashboard button,
.rp55-dashboard .pill,
.rp55-dashboard .status{max-width:100%!important;white-space:normal!important;text-align:center!important}
.rp55-dashboard .table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
.rp55-dashboard table{max-width:100%!important}
.rp55-dashboard .timeline-item,
.rp55-dashboard .department-chip,
.rp55-dashboard .rp55-priority-list a{overflow:hidden!important}
@media(max-width:1180px){
  .rp55-command-layout,.rp55-data-grid{grid-template-columns:minmax(0,1fr)!important}
  .rp55-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .rp55-dashboard{overflow-x:hidden!important}
  .rp55-dash-hero{width:100%!important;grid-template-columns:minmax(0,1fr)!important}
  .rp55-dash-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  .rp55-dash-actions .btn{width:100%!important}
  .rp55-kpi-grid{grid-template-columns:minmax(0,1fr)!important}
  .rp55-table-card table{min-width:0!important}
}

/* Retter-Portal v1.0.69-alpha.1 · Devtools Aktionen */
.devtools-actions{display:grid;gap:12px;min-width:min(520px,100%)}
.devtools-actions .inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
@media(max-width:760px){.devtools-actions{min-width:0;width:100%}.devtools-actions .inline-form{grid-template-columns:minmax(0,1fr)}.devtools-actions .btn{width:100%}}

/* Retter-Portal v1.0.69-alpha.1 · Beta-Check und Mailbox löschen */
.beta-readiness-top{align-items:stretch}.beta-score-card{display:grid;gap:18px}.beta-score-ring{--score:0;display:grid;place-items:center;width:min(240px,70vw);aspect-ratio:1;margin:4px auto;border-radius:50%;background:conic-gradient(#16a34a calc(var(--score)*1%),rgba(148,163,184,.22) 0);position:relative}.beta-score-ring:before{content:"";position:absolute;inset:15px;border-radius:50%;background:var(--surface)}.beta-score-ring strong,.beta-score-ring span{position:relative;z-index:1}.beta-score-ring strong{font-size:2.25rem;letter-spacing:-.05em}.beta-score-ring span{color:var(--muted);font-weight:900}.beta-check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.beta-check-item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:13px;padding:16px;border-radius:20px;border:1px solid var(--line-soft);background:rgba(255,255,255,.50)}body[data-theme="dark"] .beta-check-item{background:rgba(255,255,255,.04)}.beta-check-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;background:#fff7ed;color:#c2410c;font-weight:1000}.beta-check-item.ok .beta-check-icon{background:#dcfce7;color:#15803d}.beta-check-item.error .beta-check-icon{background:#fee2e2;color:#b91c1c}.beta-check-item strong{display:block}.beta-check-item small{display:block;color:var(--muted);font-weight:760;margin-top:4px}.beta-check-item em{display:block;margin-top:8px;color:#9f1239;font-style:normal;font-weight:900}.beta-flow-list{display:grid;gap:12px;margin:0;padding-left:22px}.beta-flow-list li{padding:12px 0;border-bottom:1px solid var(--line-soft)}.beta-flow-list li:last-child{border-bottom:0}.beta-flow-list strong{display:block}.beta-flow-list span{display:block;color:var(--muted);font-weight:740;margin-top:4px}.mailbox-delete-form{display:grid!important;gap:6px}.mailbox-purge-check{display:flex!important;align-items:center!important;gap:6px!important;font-size:.72rem!important;font-weight:900!important;color:var(--muted)!important;padding:0!important;background:transparent!important;border:0!important;white-space:nowrap}.mailbox-purge-check input{width:auto!important;min-height:0!important}@media(max-width:900px){.beta-check-list{grid-template-columns:1fr}.mailbox-delete-form{width:100%}.mailbox-purge-check{justify-content:center}}

/* Retter-Portal v1.0.69-alpha.1 · Mobile Audit-Log und Kartenrücksprung Feinschliff */
@media(max-width:760px){
  .audit-log-wrap.table-wrap{overflow:visible!important;background:transparent!important;box-shadow:none!important;border:0!important;padding:0!important}
  .admin-audit-table.responsive-table td{grid-template-columns:1fr!important;gap:4px!important;min-width:0!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}
  .admin-audit-table.responsive-table td::before{white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important}
  .admin-audit-table.responsive-table .pill{white-space:normal!important;display:inline-flex!important;max-width:100%!important;line-height:1.25!important;text-align:left!important;overflow-wrap:normal!important;word-break:normal!important}
  .admin-audit-table.responsive-table .audit-detail{white-space:normal!important;overflow-wrap:break-word!important;word-break:normal!important;line-height:1.45!important}
  .admin-audit-table.responsive-table tr{padding:14px!important}
  .water-map-shell{scroll-margin-top:92px!important}
  .water-map-dashboard{scroll-margin-top:80px!important}
}
@media(max-width:560px){
  .table-wrap table.responsive-table td{grid-template-columns:1fr!important;gap:5px!important;min-width:0!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}
  .table-wrap table.responsive-table td > *{min-width:0!important;max-width:100%!important}
  .table-wrap table.responsive-table .pill,
  .table-wrap table.responsive-table .status,
  .table-wrap table.responsive-table .role{white-space:normal!important;line-height:1.25!important;text-align:left!important}
}

/* Retter-Portal v1.0.74-alpha.1 · Beta-Fix: kein horizontales Auslaufen, Audit-Log lesbar */
html,body{max-width:100%!important;overflow-x:hidden!important}
.app-shell,.main,.content,.card,.grid,.grid>*{min-width:0!important;max-width:100%!important}
.content{overflow-x:clip!important}
@supports not (overflow:clip){.content{overflow-x:hidden!important}}
.card{overflow-wrap:normal!important;word-break:normal!important}
.card *{min-width:0}
.detail-list dd,.info-grid dd,.pre,.compact-pre,.attachment-item small,.muted,.subtle{overflow-wrap:break-word!important;word-break:normal!important;hyphens:none!important}
.table-wrap.compact,.rp55-table-card .table-wrap,.dashboard-table{overflow-x:hidden!important;max-width:100%!important}
.table-wrap.compact table,.rp55-table-card table,.dashboard-table table{min-width:0!important;table-layout:fixed!important;width:100%!important}
.table-wrap.compact th,.table-wrap.compact td,.dashboard-table th,.dashboard-table td{white-space:normal!important;overflow-wrap:break-word!important;word-break:normal!important;hyphens:none!important}
.grid.two,.grid.three{grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr))!important}
.attachment-upload{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important;max-width:100%!important;overflow:hidden!important}
.attachment-drop,.attachment-upload input,.attachment-upload button{min-width:0!important;max-width:100%!important}
.attachment-upload .attachment-status{grid-column:1/-1!important}
@media(max-width:980px){.attachment-upload{grid-template-columns:minmax(0,1fr)!important}.attachment-upload button{width:100%!important}}

.audit-card-list{display:grid;gap:14px;max-width:100%;overflow:hidden}
.audit-card{display:grid;gap:13px;padding:17px;border-radius:22px;background:var(--surface);border:1px solid var(--line-soft);box-shadow:var(--shadow-sm);overflow:hidden;max-width:100%}
body[data-theme="dark"] .audit-card{background:linear-gradient(145deg,rgba(16,25,41,.90),rgba(8,15,27,.74));border-color:rgba(255,255,255,.08)}
.audit-card-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.audit-card-main strong{display:block;font-size:1.05rem;overflow-wrap:break-word}.audit-card-main small,.audit-card-time{display:block;color:var(--muted);font-weight:800}.audit-card-time{font-size:.78rem;letter-spacing:.04em;margin-bottom:4px}.audit-action-pill{white-space:normal!important;text-align:center!important;max-width:min(260px,40vw)}
.audit-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.audit-meta-grid div{padding:10px 12px;border-radius:14px;background:rgba(148,163,184,.10);border:1px solid var(--line-soft);overflow:hidden}.audit-meta-grid span{display:block;color:var(--muted);font-size:.68rem;font-weight:950;text-transform:uppercase;letter-spacing:.1em}.audit-meta-grid strong{display:block;margin-top:4px;white-space:normal!important;overflow-wrap:break-word!important;word-break:normal!important;hyphens:none!important}
.audit-detail-box{border:1px solid var(--line-soft);border-radius:16px;background:rgba(148,163,184,.08);overflow:hidden}.audit-detail-box summary{cursor:pointer;padding:11px 13px;font-weight:950;color:var(--primary)}.audit-detail-box pre{margin:0;padding:13px;max-height:280px;overflow:auto;white-space:pre-wrap!important;overflow-wrap:anywhere!important;word-break:normal!important;font-size:.82rem;line-height:1.45;background:rgba(2,6,23,.04)}body[data-theme="dark"] .audit-detail-box pre{background:rgba(2,6,23,.30)}
@media(max-width:760px){.audit-card{padding:15px}.audit-card-main{grid-template-columns:minmax(0,1fr)}.audit-action-pill{max-width:100%;justify-self:start}.audit-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-detail-box pre{font-size:.78rem;max-height:240px}.table-wrap.compact table,.rp55-table-card table,.dashboard-table table{table-layout:auto!important}}
@media(max-width:420px){.audit-meta-grid{grid-template-columns:minmax(0,1fr)}}

/* Retter-Portal v1.0.74-alpha.1 · Lagekarte-Popup, Mobile-Overflow und Beta-Fix */
.water-source-popup .leaflet-popup-content-wrapper{border-radius:22px!important;overflow:hidden!important}
.water-source-popup .leaflet-popup-content{width:min(326px,calc(100vw - 96px))!important;max-width:calc(100vw - 96px)!important;margin:14px!important;line-height:1.35!important}
.water-popup{display:grid!important;gap:10px!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;color:var(--text)!important;overflow:hidden!important;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important}
.water-popup-title{display:block!important;font-size:1.18rem!important;line-height:1.12!important;letter-spacing:-.035em!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important}
.water-popup-meta,.water-popup-location,.water-popup small,.water-popup span{display:block!important;min-width:0!important;max-width:100%!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important;line-height:1.35!important;color:var(--muted)!important}
.water-popup-location{color:var(--text)!important;font-weight:800!important}
.water-popup-facts{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;min-width:0!important}
.water-popup-facts span{padding:9px 10px!important;border-radius:14px!important;background:rgba(148,163,184,.10)!important;border:1px solid var(--line-soft)!important;color:var(--text)!important;font-weight:850!important}
.water-popup-facts b{display:block!important;margin-bottom:3px!important;color:var(--muted)!important;font-size:.66rem!important;text-transform:uppercase!important;letter-spacing:.09em!important;white-space:normal!important}
.water-popup .btn{width:100%!important;max-width:100%!important;margin:0!important;min-height:42px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;text-align:center!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
.map-popup-links{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important;min-width:0!important;margin-top:0!important}
.map-popup-links .btn{min-width:0!important;font-size:.88rem!important;padding-left:9px!important;padding-right:9px!important}
.leaflet-popup-close-button{width:34px!important;height:34px!important;line-height:32px!important;font-size:22px!important;border-radius:999px!important;background:rgba(255,255,255,.78)!important;color:#334155!important;right:7px!important;top:7px!important}
body[data-theme="dark"] .leaflet-popup-close-button{background:rgba(15,23,42,.76)!important;color:#e5edf8!important}
@media(max-width:520px){
  .water-source-popup .leaflet-popup-content{width:min(292px,calc(100vw - 82px))!important;max-width:calc(100vw - 82px)!important;margin:13px!important}
  .water-popup{gap:9px!important}
  .water-popup-title{font-size:1.08rem!important;padding-right:28px!important}
  .water-popup-facts{grid-template-columns:1fr!important;gap:7px!important}
  .map-popup-links{grid-template-columns:1fr!important}
  .water-map{height:62vh!important;min-height:390px!important;max-width:100%!important}
  .leaflet-container{max-width:100%!important;overflow:hidden!important}
}
@media(max-width:760px){
  .water-map-dashboard,.water-map-shell,.water-map,.map-filter-panel,.map-side-panel{max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:hidden!important}
  .water-map-layout{width:100%!important;max-width:100%!important;overflow:hidden!important}
  .leaflet-control-container,.leaflet-pane,.leaflet-map-pane{max-width:100%!important}
  .leaflet-control-attribution{max-width:70vw!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .nearest-water-item,.nearest-water-item *{word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important}
}
/* Mailverwaltung ist ab v1.0.71 serverseitig strikt Owner-only. */

/* Retter-Portal v1.0.74-alpha.1 · Mobile-Feinschliff gegen Buchstaben untereinander und seitliches Ziehen */
@media(max-width:760px){
  .content,.main,.app-shell{max-width:100vw!important;overflow-x:hidden!important}
  .content > *{max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
  .table-wrap table.responsive-table td::before{letter-spacing:.045em!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}
  .table-wrap table.responsive-table td{grid-template-columns:minmax(112px,38%) minmax(0,1fr)!important;overflow-wrap:break-word!important}
  .audit-card,.audit-card *{min-width:0!important;max-width:100%;word-break:normal!important;hyphens:none!important}
  .audit-meta-grid strong,.audit-card-main strong,.audit-detail-box pre{overflow-wrap:anywhere!important;word-break:normal!important}
}
@media(max-width:430px){
  .table-wrap table.responsive-table td{grid-template-columns:1fr!important;gap:5px!important}
  .table-wrap table.responsive-table td::before{font-size:.65rem!important;letter-spacing:.035em!important;white-space:normal!important}
}

/* Retter-Portal v1.0.74-alpha.1 · Wasserversorgung-Popup: klare Farben für Beta */
.water-source-popup .leaflet-popup-content-wrapper,
.water-source-popup .leaflet-popup-tip{
  background:#ffffff!important;
  color:#0f172a!important;
  border:1px solid rgba(15,23,42,.10)!important;
  box-shadow:0 24px 70px rgba(15,23,42,.25)!important;
}
.water-source-popup .leaflet-popup-content{color:#0f172a!important}
.water-popup-title{color:#0f172a!important;font-weight:950!important}
.water-popup-meta{color:#475569!important;font-weight:820!important}
.water-popup-location{color:#1e293b!important;font-weight:900!important}
.water-popup-facts span{
  background:#f1f5f9!important;
  border-color:#d9e2ec!important;
  color:#0f172a!important;
}
.water-popup-facts b{color:#64748b!important}
.water-popup .btn.primary{background:linear-gradient(135deg,#c8102e,#9f1239)!important;color:#fff!important;border-color:rgba(200,16,46,.20)!important;box-shadow:0 12px 24px rgba(200,16,46,.22)!important}
.map-popup-links .btn{background:#111827!important;color:#ffffff!important;border-color:rgba(15,23,42,.20)!important;box-shadow:none!important}
.map-popup-links .btn:hover{background:#0f172a!important;color:#ffffff!important}
.leaflet-popup-close-button{background:#ffffff!important;color:#0f172a!important;border:1px solid rgba(15,23,42,.13)!important;box-shadow:0 8px 18px rgba(15,23,42,.15)!important}
body[data-theme="dark"] .water-source-popup .leaflet-popup-content-wrapper,
body[data-theme="dark"] .water-source-popup .leaflet-popup-tip{
  background:#0f172a!important;
  color:#e5edf8!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 26px 80px rgba(0,0,0,.46)!important;
}
body[data-theme="dark"] .water-source-popup .leaflet-popup-content{color:#e5edf8!important}
body[data-theme="dark"] .water-popup-title{color:#ffffff!important}
body[data-theme="dark"] .water-popup-meta{color:#cbd5e1!important}
body[data-theme="dark"] .water-popup-location{color:#f1f5f9!important}
body[data-theme="dark"] .water-popup-facts span{
  background:rgba(30,41,59,.92)!important;
  border-color:rgba(148,163,184,.20)!important;
  color:#f8fafc!important;
}
body[data-theme="dark"] .water-popup-facts b{color:#aebbd0!important}
body[data-theme="dark"] .map-popup-links .btn{background:#243244!important;color:#ffffff!important;border-color:rgba(255,255,255,.10)!important}
body[data-theme="dark"] .map-popup-links .btn:hover{background:#334155!important;color:#ffffff!important}
body[data-theme="dark"] .leaflet-popup-close-button{background:#1e293b!important;color:#ffffff!important;border-color:rgba(255,255,255,.14)!important}
@media(max-width:520px){
  .water-source-popup .leaflet-popup-content-wrapper{border-radius:24px!important}
  .water-popup-title{font-size:1.05rem!important;line-height:1.18!important}
  .water-popup-meta,.water-popup-location{font-size:.90rem!important;line-height:1.38!important}
  .water-popup-facts span{padding:11px 12px!important}
  .water-popup .btn{min-height:48px!important;font-size:.95rem!important;border-radius:15px!important}
}

/* Retter-Portal v1.0.74-alpha.1 · Mobile Form Compact Pass für Prüffristen/Datum-Felder */
@media(max-width:760px){
  .form-grid.card,
  form.card.form-grid{
    padding:16px 14px!important;
    gap:11px!important;
    border-radius:22px!important;
  }
  .form-section.full{
    padding:0!important;
    margin:2px 0 0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .form-section.full h2{
    font-size:1.28rem!important;
    line-height:1.15!important;
    margin:0 0 5px!important;
  }
  .form-section.full .muted,
  .form-section.full p.muted{
    margin:0 0 6px!important;
    font-size:.96rem!important;
    line-height:1.45!important;
  }
  .form-grid label,
  .inline-form label{
    min-height:0!important;
    padding:10px 12px!important;
    gap:7px!important;
    border-radius:18px!important;
  }
  .form-grid label:has(input[type="date"]),
  .form-grid label:has(input[type="time"]),
  .form-grid label:has(input[type="datetime-local"]),
  .form-grid label:has(input[type="month"]){
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(136px,44%)!important;
    column-gap:12px!important;
    row-gap:6px!important;
    align-items:center!important;
    min-height:62px!important;
    padding:10px 12px!important;
  }
  .form-grid label:has(input[type="date"]) > input,
  .form-grid label:has(input[type="time"]) > input,
  .form-grid label:has(input[type="datetime-local"]) > input,
  .form-grid label:has(input[type="month"]) > input{
    justify-self:end!important;
  }
  input[type="date"],
  input[type="time"],
  input[type="datetime-local"],
  input[type="month"]{
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    padding:7px 10px!important;
    border-radius:14px!important;
    line-height:1.1!important;
    font-size:16px!important;
    text-align:center!important;
  }
  input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
  select{
    min-height:42px!important;
    height:42px!important;
    max-height:42px!important;
    padding-top:7px!important;
    padding-bottom:7px!important;
    border-radius:14px!important;
  }
  textarea{
    min-height:96px!important;
    max-height:none!important;
    padding-top:9px!important;
    padding-bottom:9px!important;
    border-radius:16px!important;
  }
  .form-actions.full{
    margin-top:2px!important;
    gap:8px!important;
  }
  .form-actions.full .btn{
    min-height:46px!important;
  }
}
@media(max-width:420px){
  .form-grid.card,
  form.card.form-grid{padding:14px 12px!important;gap:9px!important}
  .form-grid label:has(input[type="date"]),
  .form-grid label:has(input[type="time"]),
  .form-grid label:has(input[type="datetime-local"]),
  .form-grid label:has(input[type="month"]){
    grid-template-columns:minmax(0,1fr) minmax(124px,42%)!important;
    column-gap:9px!important;
    min-height:58px!important;
    padding:9px 10px!important;
  }
  .form-grid label,
  .inline-form label{padding:9px 10px!important;border-radius:16px!important}
  input[type="date"],
  input[type="time"],
  input[type="datetime-local"],
  input[type="month"]{height:40px!important;min-height:40px!important;max-height:40px!important;font-size:15px!important;padding-left:8px!important;padding-right:8px!important}
}
@media(max-width:350px){
  .form-grid label:has(input[type="date"]),
  .form-grid label:has(input[type="time"]),
  .form-grid label:has(input[type="datetime-local"]),
  .form-grid label:has(input[type="month"]){
    grid-template-columns:1fr!important;
    min-height:0!important;
  }
  .form-grid label:has(input[type="date"]) > input,
  .form-grid label:has(input[type="time"]) > input,
  .form-grid label:has(input[type="datetime-local"]) > input,
  .form-grid label:has(input[type="month"]) > input{
    justify-self:stretch!important;
  }
}

/* Retter-Portal v1.0.79-alpha.1 · Desktop-Prüfungsübersicht und Beta-Check UX Polish */
.checks-table-wrap{overflow:hidden!important;border-radius:26px!important;padding:0!important}
.checks-table-wrap:before{height:4px!important}
.checks-table{width:100%!important;min-width:0!important;table-layout:fixed!important;border-collapse:separate!important;border-spacing:0!important}
.checks-table th,.checks-table td{vertical-align:middle!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
.checks-table th:nth-child(1),.checks-table td:nth-child(1){width:12%}
.checks-table th:nth-child(2),.checks-table td:nth-child(2){width:12%}
.checks-table th:nth-child(3),.checks-table td:nth-child(3){width:23%}
.checks-table th:nth-child(4),.checks-table td:nth-child(4){width:22%}
.checks-table th:nth-child(5),.checks-table td:nth-child(5){width:23%}
.checks-table th:nth-child(6),.checks-table td:nth-child(6){width:8%;text-align:right!important}
.checks-table .actions{justify-content:flex-end!important;display:flex!important;gap:8px!important}
.checks-action-head{text-align:right!important;color:var(--muted)!important}
.check-badge{white-space:nowrap!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;max-width:100%!important}

.beta-explain-card{position:relative;overflow:hidden}
.beta-explain-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#16a34a,#f59e0b,#c8102e)}
.beta-explain-card>*{position:relative;z-index:1}
.beta-explain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.beta-explain-grid article{padding:14px 15px;border-radius:18px;background:rgba(148,163,184,.10);border:1px solid var(--line-soft);min-width:0}
.beta-explain-grid strong{display:block;margin-bottom:4px;font-size:1.02rem}.beta-explain-grid article:nth-child(1) strong{color:#16a34a}.beta-explain-grid article:nth-child(2) strong{color:#f59e0b}.beta-explain-grid article:nth-child(3) strong{color:#c8102e}.beta-explain-grid span{display:block;color:var(--muted);font-weight:760;line-height:1.45}.beta-explain-summary{margin:0;font-weight:780}
.beta-check-item{align-items:start!important;overflow:hidden!important}.beta-check-item>div{min-width:0!important}.beta-check-item strong,.beta-check-item small{overflow-wrap:break-word!important;word-break:normal!important;hyphens:none!important}.beta-action-details{margin-top:10px;border-radius:15px;border:1px solid rgba(200,16,46,.16);background:rgba(200,16,46,.055);overflow:hidden}.beta-action-details summary{cursor:pointer;padding:9px 11px;color:#c8102e;font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.07em}.beta-action-details code{display:block;padding:0 11px 11px;color:#e11d48!important;font-size:.86rem;font-weight:900;line-height:1.45;white-space:pre-wrap!important;overflow-wrap:anywhere!important;word-break:normal!important}.beta-check-item.ok .beta-action-details{display:none}
body[data-theme="dark"] .beta-action-details{background:rgba(200,16,46,.10);border-color:rgba(255,255,255,.08)}
body[data-theme="dark"] .beta-action-details code{color:#fb7185!important}
@media(max-width:980px){.checks-table{table-layout:auto!important}.checks-table th:nth-child(n),.checks-table td:nth-child(n){width:auto}.beta-explain-grid{grid-template-columns:1fr}}
@media(max-width:760px){.checks-table-wrap{overflow:visible!important}.checks-table.responsive-table{display:block!important}.checks-table.responsive-table td{text-align:left!important}.checks-table.responsive-table .actions{justify-content:stretch!important}.checks-table.responsive-table .actions .btn{width:100%!important}.beta-action-details code{font-size:.78rem}.beta-check-item{grid-template-columns:38px minmax(0,1fr)!important;padding:14px!important}.beta-check-icon{width:38px!important;height:38px!important;border-radius:13px!important}}

/* Retter-Portal v1.0.79-alpha.1 · Präziser Tabellen-/Aktionsspalten-Polish für Beta */
.table-wrap.data-table-card,
.checks-table-wrap{
  position:relative!important;
  overflow:hidden!important;
  border-radius:26px!important;
  padding:0!important;
  border:1px solid rgba(118,134,157,.20)!important;
}
.table-wrap.data-table-card::before,
.checks-table-wrap::before{
  display:none!important;
  content:none!important;
}
.table-wrap.data-table-card::after,
.checks-table-wrap::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:4px!important;
  z-index:6!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,#c8102e 0%,#7c3aed 34%,#1459f5 68%,#14b8a6 100%)!important;
  border-radius:26px 26px 0 0!important;
}
.data-table,
.vehicles-table,
.inventory-table,
.checks-table{
  width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
.data-table thead th,
.checks-table thead th{
  background:linear-gradient(180deg,rgba(255,255,255,.070),rgba(255,255,255,.035))!important;
}
body[data-theme="light"] .data-table thead th,
body[data-theme="light"] .checks-table thead th{
  background:linear-gradient(180deg,#eef3f9,#e2eaf4)!important;
}
.data-table th,
.data-table td,
.checks-table th,
.checks-table td{
  vertical-align:middle!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
}
.data-table td.actions,
.data-table td.table-actions,
.checks-table td.actions,
.checks-table td.table-actions,
.table-wrap td.actions,
.table-wrap td.table-actions{
  display:table-cell!important;
  vertical-align:middle!important;
  text-align:right!important;
  white-space:nowrap!important;
  min-width:0!important;
  padding-left:12px!important;
  padding-right:18px!important;
}
.data-table td.actions .btn,
.data-table td.table-actions .btn,
.checks-table td.actions .btn,
.checks-table td.table-actions .btn,
.table-wrap td.actions .btn,
.table-wrap td.table-actions .btn{
  display:inline-flex!important;
  width:auto!important;
  min-width:92px!important;
  max-width:100%!important;
  justify-content:center!important;
  white-space:nowrap!important;
  margin:0!important;
}
.table-action-head,
.checks-action-head{
  text-align:right!important;
  padding-right:22px!important;
  color:var(--muted)!important;
}
.vehicles-table th:nth-child(1),.vehicles-table td:nth-child(1){width:13%!important}
.vehicles-table th:nth-child(2),.vehicles-table td:nth-child(2){width:22%!important}
.vehicles-table th:nth-child(3),.vehicles-table td:nth-child(3){width:12%!important}
.vehicles-table th:nth-child(4),.vehicles-table td:nth-child(4){width:12%!important}
.vehicles-table th:nth-child(5),.vehicles-table td:nth-child(5){width:10%!important}
.vehicles-table th:nth-child(6),.vehicles-table td:nth-child(6),
.vehicles-table th:nth-child(7),.vehicles-table td:nth-child(7),
.vehicles-table th:nth-child(8),.vehicles-table td:nth-child(8){width:5.5%!important;text-align:center!important}
.vehicles-table th:nth-child(9),.vehicles-table td:nth-child(9){width:10%!important}
.vehicles-table th:nth-child(10),.vehicles-table td:nth-child(10){width:10%!important}
.inventory-table th:nth-child(1),.inventory-table td:nth-child(1){width:10%!important}
.inventory-table th:nth-child(2),.inventory-table td:nth-child(2){width:15%!important}
.inventory-table th:nth-child(3),.inventory-table td:nth-child(3){width:12%!important}
.inventory-table th:nth-child(4),.inventory-table td:nth-child(4){width:9%!important}
.inventory-table th:nth-child(5),.inventory-table td:nth-child(5){width:6%!important;text-align:center!important}
.inventory-table th:nth-child(6),.inventory-table td:nth-child(6){width:13%!important}
.inventory-table th:nth-child(7),.inventory-table td:nth-child(7){width:11%!important}
.inventory-table th:nth-child(8),.inventory-table td:nth-child(8){width:9%!important}
.inventory-table th:nth-child(9),.inventory-table td:nth-child(9){width:8%!important}
.inventory-table th:nth-child(10),.inventory-table td:nth-child(10){width:9%!important}
.checks-table th:nth-child(1),.checks-table td:nth-child(1){width:12%!important}
.checks-table th:nth-child(2),.checks-table td:nth-child(2){width:12%!important}
.checks-table th:nth-child(3),.checks-table td:nth-child(3){width:23%!important}
.checks-table th:nth-child(4),.checks-table td:nth-child(4){width:22%!important}
.checks-table th:nth-child(5),.checks-table td:nth-child(5){width:22%!important}
.checks-table th:nth-child(6),.checks-table td:nth-child(6){width:9%!important}
.data-table tr:last-child td,
.checks-table tr:last-child td{
  border-bottom:0!important;
}
/* Unschöne alte Flex-Regel für generische .actions darf Tabellenzellen nicht mehr zerlegen. */
td.actions::before,
td.table-actions::before{
  content:none!important;
  display:none!important;
}
@media(max-width:1180px){
  .vehicles-table,.inventory-table,.checks-table{table-layout:auto!important;min-width:920px!important}
  .table-wrap.data-table-card,.checks-table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  .vehicles-table th:nth-child(n),.vehicles-table td:nth-child(n),
  .inventory-table th:nth-child(n),.inventory-table td:nth-child(n),
  .checks-table th:nth-child(n),.checks-table td:nth-child(n){width:auto!important}
}
@media(max-width:760px){
  .table-wrap.data-table-card,.checks-table-wrap{overflow:visible!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}
  .table-wrap.data-table-card::after,.checks-table-wrap::after{display:none!important;content:none!important}
  .data-table.responsive-table,.vehicles-table.responsive-table,.inventory-table.responsive-table,.checks-table.responsive-table{min-width:0!important;table-layout:auto!important}
  .table-wrap table.responsive-table td.actions,
  .table-wrap table.responsive-table td.table-actions,
  .checks-table.responsive-table td.actions,
  .checks-table.responsive-table td.table-actions{
    display:flex!important;
    justify-content:stretch!important;
    width:100%!important;
    padding:12px 0 0!important;
    text-align:left!important;
  }
  .table-wrap table.responsive-table td.actions .btn,
  .table-wrap table.responsive-table td.table-actions .btn,
  .checks-table.responsive-table td.actions .btn,
  .checks-table.responsive-table td.table-actions .btn{
    width:100%!important;
    min-width:0!important;
  }
}

/* Retter-Portal v1.0.79-alpha.1 · Tabellenkopf final: durchgehender Header-Balken + präzise Aktionsspalten */
.table-wrap.data-table-card,
.checks-table-wrap{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  border-radius:28px!important;
}
.table-wrap.data-table-card::before,
.checks-table-wrap::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  top:4px!important;
  left:0!important;
  right:0!important;
  height:58px!important;
  z-index:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(255,255,255,.070),rgba(255,255,255,.032))!important;
  border-bottom:1px solid rgba(148,163,184,.16)!important;
}
body[data-theme="light"] .table-wrap.data-table-card::before,
body[data-theme="light"] .checks-table-wrap::before{
  background:linear-gradient(180deg,#eef3f9,#e2eaf4)!important;
  border-bottom-color:rgba(100,116,139,.20)!important;
}
.table-wrap.data-table-card::after,
.checks-table-wrap::after{
  left:0!important;
  right:0!important;
  width:auto!important;
  border-radius:28px 28px 0 0!important;
}
.data-table,
.vehicles-table,
.inventory-table,
.checks-table{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  table-layout:fixed!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
.data-table thead,
.checks-table thead,
.data-table thead tr,
.checks-table thead tr{
  background:transparent!important;
}
.data-table thead th,
.checks-table thead th,
body[data-theme="light"] .data-table thead th,
body[data-theme="light"] .checks-table thead th{
  background:transparent!important;
  border-bottom:1px solid rgba(148,163,184,.16)!important;
  height:58px!important;
}
.data-table th:first-child,
.checks-table th:first-child{padding-left:20px!important}
.data-table th:last-child,
.checks-table th:last-child{padding-right:24px!important}
.data-table td:first-child,
.checks-table td:first-child{padding-left:20px!important}
.data-table td:last-child,
.checks-table td:last-child{padding-right:20px!important}
/* Inventar: exakt 100%, damit rechts kein optischer Abriss entstehen kann. */
.inventory-table th:nth-child(1),.inventory-table td:nth-child(1){width:9%!important}
.inventory-table th:nth-child(2),.inventory-table td:nth-child(2){width:18%!important}
.inventory-table th:nth-child(3),.inventory-table td:nth-child(3){width:12%!important}
.inventory-table th:nth-child(4),.inventory-table td:nth-child(4){width:9%!important}
.inventory-table th:nth-child(5),.inventory-table td:nth-child(5){width:5%!important;text-align:center!important}
.inventory-table th:nth-child(6),.inventory-table td:nth-child(6){width:13%!important}
.inventory-table th:nth-child(7),.inventory-table td:nth-child(7){width:11%!important}
.inventory-table th:nth-child(8),.inventory-table td:nth-child(8){width:9%!important}
.inventory-table th:nth-child(9),.inventory-table td:nth-child(9){width:8%!important}
.inventory-table th:nth-child(10),.inventory-table td:nth-child(10){width:6%!important;text-align:right!important}
/* Fahrzeuge: ebenfalls exakt 100%. */
.vehicles-table th:nth-child(1),.vehicles-table td:nth-child(1){width:12%!important}
.vehicles-table th:nth-child(2),.vehicles-table td:nth-child(2){width:22%!important}
.vehicles-table th:nth-child(3),.vehicles-table td:nth-child(3){width:12%!important}
.vehicles-table th:nth-child(4),.vehicles-table td:nth-child(4){width:12%!important}
.vehicles-table th:nth-child(5),.vehicles-table td:nth-child(5){width:10%!important}
.vehicles-table th:nth-child(6),.vehicles-table td:nth-child(6),
.vehicles-table th:nth-child(7),.vehicles-table td:nth-child(7),
.vehicles-table th:nth-child(8),.vehicles-table td:nth-child(8){width:5%!important;text-align:center!important}
.vehicles-table th:nth-child(9),.vehicles-table td:nth-child(9){width:10%!important}
.vehicles-table th:nth-child(10),.vehicles-table td:nth-child(10){width:7%!important;text-align:right!important}
/* Prüfungen: exakte 100% und Aktion sauber rechts. */
.checks-table th:nth-child(1),.checks-table td:nth-child(1){width:12%!important}
.checks-table th:nth-child(2),.checks-table td:nth-child(2){width:12%!important}
.checks-table th:nth-child(3),.checks-table td:nth-child(3){width:23%!important}
.checks-table th:nth-child(4),.checks-table td:nth-child(4){width:22%!important}
.checks-table th:nth-child(5),.checks-table td:nth-child(5){width:22%!important}
.checks-table th:nth-child(6),.checks-table td:nth-child(6){width:9%!important;text-align:right!important}
.table-action-head,.checks-action-head{text-align:right!important;padding-right:24px!important}
.data-table td.actions,
.data-table td.table-actions,
.checks-table td.actions,
.checks-table td.table-actions{
  display:table-cell!important;
  text-align:right!important;
  vertical-align:middle!important;
  white-space:nowrap!important;
}
.data-table td.actions .btn,
.data-table td.table-actions .btn,
.checks-table td.actions .btn,
.checks-table td.table-actions .btn{
  min-width:86px!important;
  padding-left:14px!important;
  padding-right:14px!important;
}
@media(max-width:1180px){
  .vehicles-table,.inventory-table,.checks-table{min-width:960px!important;table-layout:fixed!important}
}
@media(max-width:760px){
  .table-wrap.data-table-card::before,.checks-table-wrap::before{display:none!important;content:none!important}
  .vehicles-table,.inventory-table,.checks-table{min-width:0!important;table-layout:auto!important}
}

/* Retter-Portal v1.0.79-alpha.1 · Tabellenkopf wirklich durchgehend für alle Listenmodule */
.content > .card.table-wrap,
.content > section.card.table-wrap,
.content > div.card.table-wrap{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  border-radius:28px!important;
  padding:0!important;
  border:1px solid rgba(118,134,157,.20)!important;
}
/* Der farbige Top-Strich sitzt jetzt immer auf der Kartenbreite, nicht auf der Tabellenbreite. */
.content > .card.table-wrap::after,
.content > section.card.table-wrap::after,
.content > div.card.table-wrap::after,
.table-wrap.data-table-card::after,
.checks-table-wrap::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:auto!important;
  max-width:none!important;
  height:4px!important;
  z-index:8!important;
  pointer-events:none!important;
  border-radius:28px 28px 0 0!important;
  background:linear-gradient(90deg,#c8102e 0%,#7c3aed 34%,#1459f5 68%,#14b8a6 100%)!important;
}
/* Header-Hintergrund über die volle Kartenbreite, damit rechts keine abgeschnittene Fläche entsteht. */
.content > .card.table-wrap:has(> table:first-child)::before,
.content > section.card.table-wrap:has(> table:first-child)::before,
.content > div.card.table-wrap:has(> table:first-child)::before,
.table-wrap.data-table-card::before,
.checks-table-wrap::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  top:4px!important;
  left:0!important;
  right:0!important;
  width:auto!important;
  max-width:none!important;
  height:58px!important;
  z-index:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(255,255,255,.070),rgba(255,255,255,.032))!important;
  border-bottom:1px solid rgba(148,163,184,.16)!important;
}
body[data-theme="light"] .content > .card.table-wrap:has(> table:first-child)::before,
body[data-theme="light"] .content > section.card.table-wrap:has(> table:first-child)::before,
body[data-theme="light"] .content > div.card.table-wrap:has(> table:first-child)::before,
body[data-theme="light"] .table-wrap.data-table-card::before,
body[data-theme="light"] .checks-table-wrap::before{
  background:linear-gradient(180deg,#eef3f9,#e2eaf4)!important;
  border-bottom-color:rgba(100,116,139,.20)!important;
}
.content > .card.table-wrap > table,
.content > section.card.table-wrap > table,
.content > div.card.table-wrap > table,
.table-wrap.data-table-card > table,
.checks-table-wrap > table{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
.content > .card.table-wrap > table > thead,
.content > section.card.table-wrap > table > thead,
.content > div.card.table-wrap > table > thead,
.content > .card.table-wrap > table > thead > tr,
.content > section.card.table-wrap > table > thead > tr,
.content > div.card.table-wrap > table > thead > tr{
  background:transparent!important;
}
.content > .card.table-wrap > table > thead th,
.content > section.card.table-wrap > table > thead th,
.content > div.card.table-wrap > table > thead th,
.content > .card.table-wrap > table > thead th:last-child,
.content > section.card.table-wrap > table > thead th:last-child,
.content > div.card.table-wrap > table > thead th:last-child{
  background:transparent!important;
  height:58px!important;
  border-bottom:1px solid rgba(148,163,184,.16)!important;
}
.content > .card.table-wrap > table th:first-child,
.content > section.card.table-wrap > table th:first-child,
.content > div.card.table-wrap > table th:first-child,
.content > .card.table-wrap > table td:first-child,
.content > section.card.table-wrap > table td:first-child,
.content > div.card.table-wrap > table td:first-child{padding-left:20px!important}
.content > .card.table-wrap > table th:last-child,
.content > section.card.table-wrap > table th:last-child,
.content > div.card.table-wrap > table th:last-child,
.content > .card.table-wrap > table td:last-child,
.content > section.card.table-wrap > table td:last-child,
.content > div.card.table-wrap > table td:last-child{padding-right:20px!important}
@media(max-width:760px){
  .content > .card.table-wrap,
  .content > section.card.table-wrap,
  .content > div.card.table-wrap{overflow:visible!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}
  .content > .card.table-wrap::before,
  .content > section.card.table-wrap::before,
  .content > div.card.table-wrap::before,
  .content > .card.table-wrap::after,
  .content > section.card.table-wrap::after,
  .content > div.card.table-wrap::after{display:none!important;content:none!important}
}

/* Retter-Portal v1.0.79-alpha.1 · Tabellenkopf FINAL: kein Gutter, kein Doppelstrich, volle Kartenbreite */
.table-wrap,
.card.table-wrap,
section.card.table-wrap,
div.card.table-wrap,
.table-wrap.data-table-card,
.checks-table-wrap,
.dashboard-table{
  scrollbar-gutter:auto!important;
}
.content > .card.table-wrap,
.content > section.card.table-wrap,
.content > div.card.table-wrap,
.table-wrap.data-table-card,
.checks-table-wrap{
  position:relative!important;
  isolation:isolate!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:0!important;
  border-radius:28px!important;
  border:1px solid rgba(118,134,157,.20)!important;
  background:
    linear-gradient(90deg,#c8102e 0%,#7c3aed 34%,#1459f5 68%,#14b8a6 100%) left top/100% 4px no-repeat,
    linear-gradient(180deg,rgba(255,255,255,.070),rgba(255,255,255,.032)) left 4px/100% 58px no-repeat,
    linear-gradient(145deg,rgba(10,18,31,.82),rgba(8,15,27,.76))!important;
  box-shadow:0 18px 56px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.035)!important;
}
body[data-theme="light"] .content > .card.table-wrap,
body[data-theme="light"] .content > section.card.table-wrap,
body[data-theme="light"] .content > div.card.table-wrap,
body[data-theme="light"] .table-wrap.data-table-card,
body[data-theme="light"] .checks-table-wrap{
  background:
    linear-gradient(90deg,#c8102e 0%,#7c3aed 34%,#1459f5 68%,#14b8a6 100%) left top/100% 4px no-repeat,
    linear-gradient(180deg,#eef3f9,#e2eaf4) left 4px/100% 58px no-repeat,
    linear-gradient(145deg,rgba(255,255,255,.94),rgba(239,245,251,.88))!important;
  box-shadow:0 16px 44px rgba(15,23,42,.09), inset 0 1px 0 rgba(255,255,255,.86)!important;
}
/* Alte Pseudo-Layer abschalten: sie erzeugten den abgeschnittenen Zusatzstrich. */
.content > .card.table-wrap::before,
.content > section.card.table-wrap::before,
.content > div.card.table-wrap::before,
.content > .card.table-wrap::after,
.content > section.card.table-wrap::after,
.content > div.card.table-wrap::after,
.table-wrap.data-table-card::before,
.table-wrap.data-table-card::after,
.checks-table-wrap::before,
.checks-table-wrap::after{
  display:none!important;
  content:none!important;
  background:none!important;
  border:0!important;
}
.content > .card.table-wrap > table,
.content > section.card.table-wrap > table,
.content > div.card.table-wrap > table,
.table-wrap.data-table-card > table,
.checks-table-wrap > table{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
.content > .card.table-wrap > table > thead,
.content > section.card.table-wrap > table > thead,
.content > div.card.table-wrap > table > thead,
.content > .card.table-wrap > table > thead > tr,
.content > section.card.table-wrap > table > thead > tr,
.content > div.card.table-wrap > table > thead > tr,
.table-wrap.data-table-card > table > thead,
.table-wrap.data-table-card > table > thead > tr,
.checks-table-wrap > table > thead,
.checks-table-wrap > table > thead > tr{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.content > .card.table-wrap > table > thead th,
.content > section.card.table-wrap > table > thead th,
.content > div.card.table-wrap > table > thead th,
.table-wrap.data-table-card > table > thead th,
.checks-table-wrap > table > thead th,
.data-table thead th,
.checks-table thead th,
th{
  background:transparent!important;
}
.content > .card.table-wrap > table > thead th,
.content > section.card.table-wrap > table > thead th,
.content > div.card.table-wrap > table > thead th,
.table-wrap.data-table-card > table > thead th,
.checks-table-wrap > table > thead th,
.data-table thead th,
.checks-table thead th{
  height:62px!important;
  border-bottom:0!important;
  box-shadow:none!important;
  vertical-align:middle!important;
}
/* Zeilentrennung startet erst im Body, dadurch kein zweiter Balken unter dem Header. */
.content > .card.table-wrap > table > tbody tr:first-child td,
.content > section.card.table-wrap > table > tbody tr:first-child td,
.content > div.card.table-wrap > table > tbody tr:first-child td,
.table-wrap.data-table-card > table > tbody tr:first-child td,
.checks-table-wrap > table > tbody tr:first-child td{
  border-top:0!important;
}
.content > .card.table-wrap > table td:last-child,
.content > section.card.table-wrap > table td:last-child,
.content > div.card.table-wrap > table td:last-child,
.table-wrap.data-table-card > table td:last-child,
.checks-table-wrap > table td:last-child{
  padding-right:24px!important;
}
.content > .card.table-wrap > table th:last-child,
.content > section.card.table-wrap > table th:last-child,
.content > div.card.table-wrap > table th:last-child,
.table-wrap.data-table-card > table th:last-child,
.checks-table-wrap > table th:last-child{
  padding-right:24px!important;
}
@media(max-width:760px){
  .content > .card.table-wrap,
  .content > section.card.table-wrap,
  .content > div.card.table-wrap,
  .table-wrap.data-table-card,
  .checks-table-wrap{
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
    border:0!important;
    border-radius:0!important;
  }
}

/* Retter-Portal v1.2.0 · Auswertungsfilter sauber ausrichten */
.report-filter-toolbar{
  display:grid!important;
  grid-template-columns:auto minmax(320px,1fr) minmax(176px,210px) minmax(176px,210px) auto!important;
  align-items:center!important;
  gap:14px!important;
  padding:18px 20px!important;
}
.report-filter-toolbar:before{
  align-self:center!important;
  height:52px!important;
  min-height:52px!important;
  display:inline-flex!important;
  align-items:center!important;
}
.report-filter-toolbar select,
.report-filter-toolbar .btn{
  height:52px!important;
  min-height:52px!important;
}
.report-filter-toolbar label{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  height:52px!important;
  min-height:52px!important;
  margin:0!important;
  padding:0 13px!important;
  border-radius:17px!important;
  background:var(--surface-2)!important;
  border:1px solid var(--line)!important;
  color:var(--muted)!important;
  font-size:.84rem!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
  white-space:nowrap!important;
}
.report-filter-toolbar label input[type="date"]{
  width:142px!important;
  min-width:142px!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--text)!important;
  font-weight:900!important;
}
body[data-theme="dark"] .report-filter-toolbar label{
  background:rgba(15,23,42,.86)!important;
  border-color:rgba(255,255,255,.10)!important;
}
body[data-theme="light"] .report-filter-toolbar label{
  background:#f8fbfe!important;
  border-color:#b9c7d8!important;
}
@media(max-width:1060px){
  .report-filter-toolbar{grid-template-columns:auto minmax(260px,1fr) minmax(160px,1fr) minmax(160px,1fr)!important}
  .report-filter-toolbar .btn{grid-column:1 / -1!important;width:100%!important}
}
@media(max-width:720px){
  .report-filter-toolbar{grid-template-columns:1fr!important;align-items:stretch!important;padding:14px!important}
  .report-filter-toolbar:before{width:100%!important;justify-content:center!important}
  .report-filter-toolbar label{width:100%!important;justify-content:space-between!important}
  .report-filter-toolbar label input[type="date"]{width:auto!important;min-width:0!important;text-align:right!important}
}

/* Retter-Portal v1.2.0 · Tabellenfeinschliff: Inventar ohne unnötigen Desktop-Scroll, Fahrzeuge-Aktion mit Randabstand */
@media(min-width:1181px){
  .vehicles-table,
  .inventory-table{
    table-layout:fixed!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .vehicles-table-wrap,
  .inventory-table-wrap,
  .content > .card.table-wrap.vehicles-table-wrap,
  .content > .card.table-wrap.inventory-table-wrap,
  .content > section.card.table-wrap.inventory-table-wrap{
    overflow:hidden!important;
  }
  .vehicles-table th,
  .vehicles-table td,
  .inventory-table th,
  .inventory-table td{
    overflow:hidden!important;
    text-overflow:clip!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }
  .vehicles-table th:nth-child(1),.vehicles-table td:nth-child(1){width:12%!important}
  .vehicles-table th:nth-child(2),.vehicles-table td:nth-child(2){width:22%!important}
  .vehicles-table th:nth-child(3),.vehicles-table td:nth-child(3){width:12%!important}
  .vehicles-table th:nth-child(4),.vehicles-table td:nth-child(4){width:11%!important}
  .vehicles-table th:nth-child(5),.vehicles-table td:nth-child(5){width:10%!important}
  .vehicles-table th:nth-child(6),.vehicles-table td:nth-child(6),
  .vehicles-table th:nth-child(7),.vehicles-table td:nth-child(7),
  .vehicles-table th:nth-child(8),.vehicles-table td:nth-child(8){width:5%!important;text-align:center!important}
  .vehicles-table th:nth-child(9),.vehicles-table td:nth-child(9){width:10%!important}
  .vehicles-table th:nth-child(10),.vehicles-table td:nth-child(10){width:13%!important;text-align:right!important;padding-right:34px!important}
  .vehicles-table td:nth-child(10) .btn{min-width:108px!important}

  .inventory-table th:nth-child(1),.inventory-table td:nth-child(1){width:9%!important}
  .inventory-table th:nth-child(2),.inventory-table td:nth-child(2){width:18%!important}
  .inventory-table th:nth-child(3),.inventory-table td:nth-child(3){width:12%!important}
  .inventory-table th:nth-child(4),.inventory-table td:nth-child(4){width:9%!important}
  .inventory-table th:nth-child(5),.inventory-table td:nth-child(5){width:5%!important;text-align:center!important}
  .inventory-table th:nth-child(6),.inventory-table td:nth-child(6){width:13%!important}
  .inventory-table th:nth-child(7),.inventory-table td:nth-child(7){width:10%!important}
  .inventory-table th:nth-child(8),.inventory-table td:nth-child(8){width:9%!important}
  .inventory-table th:nth-child(9),.inventory-table td:nth-child(9){width:8%!important}
  .inventory-table th:nth-child(10),.inventory-table td:nth-child(10){width:7%!important;text-align:right!important;padding-right:30px!important}
  .inventory-table th:nth-child(10){font-size:.70rem!important;letter-spacing:.10em!important;white-space:nowrap!important}
  .inventory-table th:nth-child(5){font-size:.70rem!important;letter-spacing:.10em!important;white-space:nowrap!important}
  .inventory-table td:nth-child(10) .btn{min-width:92px!important;padding-left:13px!important;padding-right:13px!important}
  .inventory-table td:nth-child(1),
  .inventory-table td:nth-child(2),
  .inventory-table td:nth-child(6){word-break:normal!important;overflow-wrap:break-word!important}
}
@media(min-width:1181px) and (max-width:1380px){
  .inventory-table th,
  .inventory-table td{font-size:.92rem!important;padding-left:12px!important;padding-right:12px!important}
  .inventory-table th{font-size:.68rem!important}
  .inventory-table td:nth-child(10){padding-right:24px!important}
  .vehicles-table td:nth-child(10){padding-right:28px!important}
}
/* Falls ältere Regeln auf größeren Screens doch overflow-x:auto setzen: Desktop soll hier nicht scrollen. */
@media(min-width:1181px){
  .inventory-table-wrap::-webkit-scrollbar,
  .vehicles-table-wrap::-webkit-scrollbar{display:none!important}
}

/* Retter-Portal v1.2.0 · Support-Tickets: farbige Admin-/Rollen-Kennzeichnung */
.ticket-author{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.ticket-role-badge,
.ticket-origin-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  font-size:.70rem!important;
  font-weight:1000!important;
  line-height:1!important;
  text-transform:uppercase!important;
  letter-spacing:.065em!important;
  white-space:nowrap!important;
  border:1px solid transparent!important;
}
.ticket-role-badge.role-owner{background:linear-gradient(135deg,#fef3c7,#fde68a)!important;color:#92400e!important;border-color:rgba(245,158,11,.32)!important}
.ticket-role-badge.role-admin,.ticket-role-badge.role-support{background:linear-gradient(135deg,#dbeafe,#bfdbfe)!important;color:#1d4ed8!important;border-color:rgba(37,99,235,.32)!important}
.ticket-role-badge.role-member{background:rgba(148,163,184,.16)!important;color:var(--muted)!important;border-color:var(--line-soft)!important}
.ticket-origin-badge{background:rgba(16,185,129,.12)!important;color:#10b981!important;border-color:rgba(16,185,129,.28)!important}
.ticket-origin-badge.internal-badge{background:rgba(245,158,11,.14)!important;color:#f59e0b!important;border-color:rgba(245,158,11,.30)!important}
.ticket-message.role-owner{border-color:rgba(245,158,11,.34)!important;background:linear-gradient(145deg,rgba(245,158,11,.14),rgba(255,255,255,.035))!important}
.ticket-message.role-admin,.ticket-message.role-support{border-color:rgba(59,130,246,.28)!important;background:linear-gradient(145deg,rgba(37,99,235,.13),rgba(255,255,255,.035))!important}
.ticket-message.role-member{border-color:rgba(148,163,184,.16)!important}
.ticket-message.internal{border-color:rgba(245,158,11,.36)!important;background:linear-gradient(145deg,rgba(245,158,11,.13),rgba(255,255,255,.032))!important}
body[data-theme="light"] .ticket-role-badge.role-owner{background:#fff7ed!important;color:#c2410c!important;border-color:#fed7aa!important}
body[data-theme="light"] .ticket-role-badge.role-admin,
body[data-theme="light"] .ticket-role-badge.role-support{background:#eff6ff!important;color:#1d4ed8!important;border-color:#bfdbfe!important}
body[data-theme="light"] .ticket-role-badge.role-member{background:#f1f5f9!important;color:#475569!important;border-color:#cbd5e1!important}
body[data-theme="light"] .ticket-origin-badge{background:#ecfdf5!important;color:#047857!important;border-color:#a7f3d0!important}
body[data-theme="light"] .ticket-origin-badge.internal-badge{background:#fff7ed!important;color:#c2410c!important;border-color:#fed7aa!important}
body[data-theme="light"] .ticket-message.role-owner{background:linear-gradient(145deg,#fff7ed,#f8fafc)!important;border-color:#fed7aa!important}
body[data-theme="light"] .ticket-message.role-admin,
body[data-theme="light"] .ticket-message.role-support{background:linear-gradient(145deg,#eff6ff,#f8fafc)!important;border-color:#bfdbfe!important}
body[data-theme="light"] .ticket-message.role-member{background:linear-gradient(145deg,#ffffff,#f1f5f9)!important;border-color:#cbd5e1!important}
@media(max-width:760px){
  .ticket-message-head{align-items:flex-start!important;flex-direction:column!important;gap:7px!important}
  .ticket-role-badge,.ticket-origin-badge{font-size:.66rem!important;padding:5px 8px!important}
}

/* Retter-Portal v1.2.0 · Inventar-Aktionsspalte bündig, aber nicht am Rand klebend */
@media(min-width:1181px){
  .inventory-table{
    table-layout:fixed!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .inventory-table th:nth-child(1),.inventory-table td:nth-child(1){width:8.5%!important}
  .inventory-table th:nth-child(2),.inventory-table td:nth-child(2){width:17%!important}
  .inventory-table th:nth-child(3),.inventory-table td:nth-child(3){width:11.5%!important}
  .inventory-table th:nth-child(4),.inventory-table td:nth-child(4){width:8.5%!important}
  .inventory-table th:nth-child(5),.inventory-table td:nth-child(5){width:5%!important;text-align:center!important}
  .inventory-table th:nth-child(6),.inventory-table td:nth-child(6){width:12%!important}
  .inventory-table th:nth-child(7),.inventory-table td:nth-child(7){width:10%!important}
  .inventory-table th:nth-child(8),.inventory-table td:nth-child(8){width:8.5%!important}
  .inventory-table th:nth-child(9),.inventory-table td:nth-child(9){width:8.5%!important}
  .inventory-table th:nth-child(10),.inventory-table td:nth-child(10){
    width:10.5%!important;
    min-width:128px!important;
    text-align:center!important;
    padding-left:12px!important;
    padding-right:30px!important;
    box-sizing:border-box!important;
  }
  .inventory-table td:nth-child(10),
  .inventory-table td.table-actions,
  .inventory-table td.actions.table-actions{
    display:table-cell!important;
    vertical-align:middle!important;
  }
  .inventory-table td:nth-child(10) .btn,
  .inventory-table td.table-actions .btn{
    display:inline-flex!important;
    justify-content:center!important;
    min-width:104px!important;
    max-width:112px!important;
    width:auto!important;
    margin:0 auto!important;
    padding-left:14px!important;
    padding-right:14px!important;
    white-space:nowrap!important;
  }
}
@media(min-width:1181px) and (max-width:1380px){
  .inventory-table th:nth-child(10),.inventory-table td:nth-child(10){
    width:11.5%!important;
    padding-right:26px!important;
  }
  .inventory-table td:nth-child(10) .btn,
  .inventory-table td.table-actions .btn{
    min-width:98px!important;
    max-width:106px!important;
    padding-left:11px!important;
    padding-right:11px!important;
  }
}

/* Retter-Portal v1.2.0 · Beta-Analyse / Logging */
.beta-range-form{display:flex;align-items:center;gap:10px;justify-content:flex-end;flex-wrap:wrap}.beta-range-form select{min-width:210px}.beta-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.beta-analysis-grid{align-items:start}.beta-mini-list{display:grid;gap:10px}.beta-mini-list>div,.beta-device-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid var(--line-soft);border-radius:18px;background:rgba(255,255,255,.035)}.beta-mini-list strong{display:block}.beta-mini-list span{display:block;color:var(--muted);font-size:.88rem;margin-top:3px}.beta-device-list{display:grid;gap:10px}.beta-device-list span{color:var(--muted);font-weight:900}.beta-event-list{display:grid;gap:12px}.beta-event-list.compact{gap:9px}.beta-event{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 16px;border:1px solid var(--line-soft);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018))}.beta-event.change{border-color:rgba(37,99,235,.28);background:linear-gradient(145deg,rgba(37,99,235,.12),rgba(255,255,255,.018))}.beta-event.error{border-color:rgba(200,16,46,.30);background:linear-gradient(145deg,rgba(200,16,46,.13),rgba(255,255,255,.018))}.beta-event.warn{border-color:rgba(245,158,11,.30);background:linear-gradient(145deg,rgba(245,158,11,.12),rgba(255,255,255,.018))}.beta-event-time{display:block;color:var(--muted);font-size:.78rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px}.beta-event strong{display:block;color:var(--text);word-break:normal;overflow-wrap:anywhere}.beta-event small,.beta-event span{color:var(--muted);word-break:normal;overflow-wrap:anywhere}.beta-event-meta{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;max-width:520px}.beta-event-meta span{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border:1px solid var(--line-soft);border-radius:999px;background:rgba(255,255,255,.045);font-size:.78rem;font-weight:900;color:var(--muted)}body[data-theme="light"] .beta-mini-list>div,body[data-theme="light"] .beta-device-list>div,body[data-theme="light"] .beta-event{background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(238,244,250,.70));border-color:rgba(116,132,154,.24)}body[data-theme="light"] .beta-event-meta span{background:rgba(255,255,255,.72);border-color:rgba(116,132,154,.22);color:#526173}@media(max-width:980px){.beta-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.beta-event{grid-template-columns:1fr}.beta-event-meta{justify-content:flex-start;max-width:none}.beta-range-form{justify-content:stretch}.beta-range-form select,.beta-range-form .btn{width:100%}}@media(max-width:560px){.beta-kpi-grid{grid-template-columns:1fr}.beta-mini-list>div,.beta-device-list>div{align-items:flex-start;flex-direction:column;gap:4px}.beta-event{padding:13px;border-radius:18px}.beta-event-meta span{font-size:.72rem}}

/* Retter-Portal v1.2.0 · Nur Beta-Analyse: intelligenter Suchfilter + sauberer KPI-Abstand */
.beta-search-form{display:grid!important;grid-template-columns:minmax(280px,1fr) minmax(190px,230px) auto auto!important;align-items:end!important;gap:10px!important;width:min(100%,960px)!important}.beta-smart-search{display:flex!important;flex-direction:column!important;gap:7px!important;min-width:0!important}.beta-smart-search span{font-size:.78rem!important;font-weight:1000!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--muted)!important}.beta-smart-search input[type="search"]{width:100%!important;min-height:48px!important;border-radius:16px!important}.beta-search-hint{margin-top:-6px!important;margin-bottom:18px!important;display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;padding:14px 16px!important}.beta-search-hint strong{color:var(--text)!important}.beta-search-hint>span{display:inline-flex!important;align-items:center!important;min-height:30px!important;padding:5px 10px!important;border-radius:999px!important;border:1px solid var(--line-soft)!important;background:rgba(255,255,255,.045)!important;font-weight:900!important}.beta-search-hint small{flex-basis:100%!important;color:var(--muted)!important}.beta-search-hint code{padding:2px 6px!important;border-radius:7px!important;background:rgba(200,16,46,.12)!important;color:#ff4d64!important;font-weight:900!important}.beta-kpi-grid{margin-bottom:34px!important}.beta-kpi-grid+.beta-analysis-grid{margin-top:4px!important}.beta-analysis-grid{row-gap:22px!important}@media(max-width:980px){.beta-search-form{grid-template-columns:1fr!important;width:100%!important}.beta-search-form select,.beta-search-form .btn{width:100%!important}.beta-kpi-grid{margin-bottom:26px!important}}@media(max-width:560px){.beta-search-hint{margin-bottom:14px!important}.beta-kpi-grid{margin-bottom:22px!important}}

/* Retter-Portal v1.2.0 · Rollen & Rechte klarer auffindbar und bedienbar */
.rights-hero{background:linear-gradient(145deg,rgba(13,25,46,.94),rgba(15,23,42,.82))!important}
.rights-explainer-card,.rights-workbench-card,.rights-note-card,.rights-teaser-card{border-top:4px solid transparent!important;border-image:linear-gradient(90deg,#c8102e,#2563eb,#14b8a6) 1!important}
.rights-principle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.rights-principle-grid article{background:var(--surface-2);border:1px solid var(--line);border-radius:22px;padding:18px;display:flex;flex-direction:column;gap:8px;min-height:132px}
.rights-principle-grid span{width:42px;height:42px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:rgba(200,16,46,.14);color:#ff5a73;font-weight:1000;letter-spacing:.04em}
.rights-principle-grid strong{font-size:1.08rem;color:var(--text)}
.rights-principle-grid small{color:var(--muted);font-weight:750;line-height:1.45}
.rights-department-switch{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:14px;align-items:end;margin-bottom:18px}
.rights-department-switch label{display:flex;flex-direction:column;gap:8px;color:var(--muted);font-weight:950;letter-spacing:.02em}
.rights-assign-form{display:grid;grid-template-columns:minmax(230px,1fr) minmax(230px,1fr) auto;gap:14px;align-items:end;margin-top:10px;padding:16px;border-radius:24px;background:rgba(255,255,255,.035);border:1px solid var(--line)}
.rights-assign-form label{display:flex;flex-direction:column;gap:8px;color:var(--muted);font-weight:950;letter-spacing:.02em}
.rights-grid{align-items:start}
.rights-assignment-list,.rights-group-list{display:flex;flex-direction:column;gap:12px;margin-top:14px}
.rights-assignment-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border-radius:20px;background:var(--surface-2);border:1px solid var(--line)}
.rights-assignment-item strong{display:block;color:var(--text);font-size:1.02rem}
.rights-assignment-item small{display:block;color:var(--muted);font-weight:800;margin-top:3px}
.rights-assignment-item em{display:block;color:var(--muted);font-style:normal;margin-top:5px;font-size:.86rem}
.rights-group-detail{border:1px solid var(--line);background:var(--surface-2);border-radius:20px;padding:0;overflow:hidden}
.rights-group-detail summary{cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px 16px;list-style:none}
.rights-group-detail summary::-webkit-details-marker{display:none}
.rights-group-detail summary strong{display:block;color:var(--text)}
.rights-group-detail summary small{display:block;color:var(--muted);margin-top:3px;font-weight:750}
.rights-group-detail summary em{font-style:normal;color:var(--muted);font-weight:950;background:rgba(148,163,184,.16);border:1px solid var(--line);border-radius:999px;padding:7px 10px;white-space:nowrap}
.rights-chip-list{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 16px}
.rights-chip-list span{display:inline-flex;border-radius:999px;background:rgba(37,99,235,.12);border:1px solid rgba(37,99,235,.22);color:#a7c7ff;padding:7px 10px;font-size:.78rem;font-weight:850;line-height:1.2}
.notice-soft{padding:13px 15px;border-radius:18px;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.26);color:var(--text);font-weight:800}
body[data-theme="light"] .rights-principle-grid article,
body[data-theme="light"] .rights-assignment-item,
body[data-theme="light"] .rights-group-detail{background:#f8fbfe;border-color:#cbd8e6}
body[data-theme="light"] .rights-assign-form{background:#f8fbfe;border-color:#cbd8e6}
body[data-theme="light"] .rights-chip-list span{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}
body[data-theme="light"] .notice-soft{background:#fff7ed;border-color:#fed7aa;color:#7c2d12}
@media(max-width:920px){
  .rights-principle-grid,.rights-assign-form,.rights-department-switch{grid-template-columns:1fr}
  .rights-assign-form .btn{width:100%}
}
@media(max-width:640px){
  .rights-assignment-item{grid-template-columns:1fr}
  .rights-assignment-item .btn{width:100%}
  .rights-group-detail summary{grid-template-columns:1fr}
}

/* Retter-Portal v1.2.0 · Nur Rollen-&-Rechte: äußere Kästen um Erklärung und Vergabe entfernen */
.rights-explainer-card,
.rights-workbench-card{
  background:transparent!important;
  border:0!important;
  border-top:0!important;
  border-image:none!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
}
.rights-explainer-card::before,
.rights-explainer-card::after,
.rights-workbench-card::before,
.rights-workbench-card::after{
  display:none!important;
  content:none!important;
}
body[data-theme="light"] .rights-explainer-card,
body[data-theme="light"] .rights-workbench-card{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* Retter-Portal v1.2.0 · Nur Korrektur: Pill-Text auf Rollen-&-Rechte mittig ausrichten */
.rights-explainer-card .card-head > .pill{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.14!important;
  padding-top:0!important;
  padding-bottom:0!important;
  min-height:42px!important;
}

/* Retter-Portal v1.2.0 · Personalakte ↔ Account: sichere Einladung ohne globale Account-Suche */
.personnel-account-link-card .notice{
  margin:14px 0 18px!important;
}
.account-link-form{
  margin-top:14px!important;
}
.account-link-form .form-help{
  display:flex!important;
  align-items:center!important;
  min-height:54px!important;
  padding:13px 16px!important;
  border-radius:18px!important;
  background:rgba(14,165,233,.09)!important;
  border:1px solid rgba(14,165,233,.20)!important;
  color:var(--muted)!important;
  line-height:1.5!important;
}
body[data-theme="light"] .account-link-form .form-help{
  background:#eff6ff!important;
  border-color:#bfdbfe!important;
}
.account-invite-table{
  margin-top:16px!important;
}
@media(max-width:760px){
  .account-link-form .form-help{min-height:auto!important;align-items:flex-start!important}
}

/* Retter-Portal v1.2.0 · Prüfungsreiter und UVV-Unterweisungen */
.check-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 20px;
}
.check-tab{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:44px;
  padding:9px 12px 9px 14px;
  border-radius:15px;
  background:var(--surface);
  border:1px solid var(--line);
  color:var(--muted);
  font-weight:920;
  box-shadow:var(--shadow-sm);
}
.check-tab span{white-space:nowrap}
.check-tab strong{
  min-width:28px;
  height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 8px;
  border-radius:999px;
  background:var(--surface-2);
  color:var(--text);
  font-size:.82rem;
}
.check-tab.active{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,#c8102e,#1459f5 62%,#14b8a6);
  box-shadow:0 16px 38px rgba(20,89,245,.20);
}
.check-tab.active strong{background:rgba(255,255,255,.18);color:#fff}
.form-section.full strong{display:block;color:var(--text);font-size:1.05rem;font-weight:950;letter-spacing:-.02em}
.form-section.full span{display:block;margin-top:4px;color:var(--muted);font-size:.9rem;font-weight:760;line-height:1.45}
.uvv-card .pill{background:rgba(20,184,166,.12);color:#0f766e}
body[data-theme="dark"] .uvv-card .pill{background:rgba(20,184,166,.16);color:#5eead4}
@media(max-width:760px){
  .check-tabs{display:grid;grid-template-columns:1fr;gap:8px}
  .check-tab{width:100%}
  .check-tab span{white-space:normal}
}


/* Retter-Portal v1.2.0 · dezenter Admin-Mini-Changelog */
.rp-admin-changelog-card{max-width:100%!important}
.rp-admin-changelog-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.rp-admin-changelog-list article{display:flex;gap:12px;align-items:flex-start;padding:12px 13px;border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:18px;min-width:0}
.rp-admin-changelog-list article>span{flex:0 0 auto;font-size:.76rem;font-weight:1000;letter-spacing:.08em;color:var(--muted);background:rgba(148,163,184,.12);border:1px solid var(--line);border-radius:999px;padding:6px 8px;line-height:1}
.rp-admin-changelog-list strong{display:block;color:var(--text);font-size:.94rem;line-height:1.2}
.rp-admin-changelog-list small{display:block;color:var(--muted);font-weight:750;line-height:1.35;margin-top:4px}
body[data-theme="light"] .rp-admin-changelog-list article{background:#f8fbfe;border-color:#cbd8e6}
body[data-theme="light"] .rp-admin-changelog-list article>span{background:#eef4fb;border-color:#cbd8e6}
@media(max-width:1100px){.rp-admin-changelog-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.rp-admin-changelog-list{grid-template-columns:1fr}.rp-admin-changelog-list article{display:block}.rp-admin-changelog-list article>span{display:inline-flex;margin-bottom:9px}}

/* Retter-Portal v1.2.0 · Dashboard entschlackt und Mitgliederansicht kompakter */
.dashboard-member{max-width:980px;margin:0 auto;display:grid;gap:18px}
.dashboard-member-card{padding:28px!important}
.dashboard-member-metrics,.dashboard-own-compact{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:14px!important}
.dashboard-member-metrics article,.dashboard-own-compact article{min-width:0!important;overflow:hidden!important}
.rp55-own-metrics article span{font-size:.78rem!important;line-height:1.18!important;overflow-wrap:anywhere!important;hyphens:auto!important;letter-spacing:.09em!important}
.rp55-own-metrics article strong{font-size:clamp(1.75rem,3vw,2.35rem)!important;line-height:1.05!important}
.dashboard-member-requests,.dashboard-member-calendar{padding:24px!important}
.compact-dashboard-layout{grid-template-columns:minmax(0,1.1fr) minmax(320px,.75fr)!important;gap:20px!important}
.dashboard-conditional-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))!important;gap:20px!important}
.dashboard-conditional-grid .rp55-table-card{min-width:0!important}
.rp-admin-changelog-list{max-height:360px;overflow:auto;padding-right:4px}
@media(max-width:980px){.compact-dashboard-layout{grid-template-columns:1fr!important}.dashboard-conditional-grid{grid-template-columns:1fr!important}.dashboard-member{max-width:none}.dashboard-member-card{padding:22px!important}}
@media(max-width:520px){.dashboard-member-metrics,.dashboard-own-compact{grid-template-columns:1fr 1fr!important}.rp55-own-metrics article span{font-size:.72rem!important}.dashboard-member-card{padding:18px!important}}

/* Retter-Portal v1.2.0 · Kleine optische Beta-Korrekturen */
/* Dashboard: lange Datumswerte in Desktop-Kacheln sauber halten. */
.rp55-own-metrics article.date-metric strong,
.dashboard-member-metrics article.date-metric strong,
.dashboard-own-compact article.date-metric strong{
  font-size:clamp(1.45rem,2.05vw,1.88rem)!important;
  line-height:1.02!important;
  white-space:nowrap!important;
  letter-spacing:-.05em!important;
}
.rp55-own-metrics article.date-metric,
.dashboard-member-metrics article.date-metric,
.dashboard-own-compact article.date-metric{
  align-content:center!important;
}

/* Prüfungen: lange UVV-/DGUV-Bezeichnungen dürfen innerhalb des Badges umbrechen statt auszulaufen. */
.checks-table .check-badge{
  max-width:170px!important;
  min-width:78px!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto!important;
  line-height:1.16!important;
  text-align:center!important;
  justify-content:center!important;
  padding:7px 10px!important;
}
.checks-table th:nth-child(2),
.checks-table td:nth-child(2){
  width:16%!important;
}
.checks-table th:nth-child(4),
.checks-table td:nth-child(4){
  width:19%!important;
}

/* Admin-Benutzerverwaltung: Desktop kompakter, nichts mehr rechts abgeschnitten. */
.admin-users-table-wrap{
  overflow-x:auto!important;
  overflow-y:visible!important;
  padding:0!important;
  border-radius:24px!important;
}
.admin-users-table{
  width:100%!important;
  min-width:1120px!important;
  table-layout:fixed!important;
}
.admin-users-table th,
.admin-users-table td{
  padding:12px 12px!important;
  vertical-align:top!important;
}
.admin-users-table th:nth-child(1),.admin-users-table td:nth-child(1){width:20%!important}
.admin-users-table th:nth-child(2),.admin-users-table td:nth-child(2){width:17%!important}
.admin-users-table th:nth-child(3),.admin-users-table td:nth-child(3){width:17%!important}
.admin-users-table th:nth-child(4),.admin-users-table td:nth-child(4){width:16%!important}
.admin-users-table th:nth-child(5),.admin-users-table td:nth-child(5){width:10%!important}
.admin-users-table th:nth-child(6),.admin-users-table td:nth-child(6){width:20%!important}
.admin-users-table input,
.admin-users-table select{
  min-width:0!important;
  max-width:100%!important;
  width:100%!important;
  padding:9px 10px!important;
}
.admin-users-table .compact-fields{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
.admin-user-status{
  display:grid!important;
  gap:6px!important;
  min-width:0!important;
}
.admin-users-table .compact-check{
  min-height:0!important;
  padding:7px 9px!important;
  border-radius:13px!important;
  align-items:center!important;
  gap:7px!important;
  background:rgba(148,163,184,.09)!important;
}
.admin-users-table .compact-check input{
  width:auto!important;
  flex:0 0 auto!important;
}
.admin-users-table .compact-check .pill{
  min-width:58px!important;
  justify-content:center!important;
  text-align:center!important;
}
.admin-user-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
  align-items:start!important;
  min-width:0!important;
}
.admin-user-actions input[type="password"]{
  grid-column:1/-1!important;
}
.admin-user-actions .btn{
  width:100%!important;
  min-width:88px!important;
  padding-left:9px!important;
  padding-right:9px!important;
}
.admin-user-actions form{
  margin:0!important;
  min-width:0!important;
}

/* Kleine Status-Pills in Card-Heads sauber mittig setzen. */
.mail-status-card .card-head > .pill,
.beta-explain-card .card-head > .pill,
.beta-score-card .card-head > .pill,
.beta-stats-card .card-head > .pill{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  min-height:40px!important;
  min-width:64px!important;
  max-width:150px!important;
  padding:0 13px!important;
  line-height:1.12!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.mail-status-card .card-head > .pill{
  min-width:58px!important;
  max-width:92px!important;
}
.beta-explain-card .card-head > .pill{
  min-width:128px!important;
}
@media(max-width:760px){
  .admin-users-table{min-width:1040px!important}
  .checks-table .check-badge{max-width:100%!important}
}

/* Retter-Portal v1.2.0 · Admin-Suche, Benutzerverwaltung und Atemschutz-Übungslauf */
.admin-search-toolbar{display:grid!important;grid-template-columns:minmax(220px,1.4fr) minmax(180px,.9fr) auto auto;gap:12px!important;align-items:end!important}
.admin-access-search-card .card-head,.account-policy-card .card-head{margin-bottom:14px!important}
.admin-access-grid .card{min-width:0!important}
.admin-access-inline{display:grid!important;grid-template-columns:minmax(180px,.8fr) minmax(220px,1.1fr) minmax(180px,.8fr) minmax(180px,.8fr) auto!important;gap:10px!important;align-items:end!important}
[data-select-filter]{margin-bottom:8px!important;background:rgba(14,165,233,.06)!important;border-color:rgba(14,165,233,.22)!important}
.improved-admin-users-table{min-width:1120px!important}
.improved-admin-users-table th,.improved-admin-users-table td{vertical-align:top!important}
.admin-user-main{display:flex;flex-direction:column;gap:4px;margin-bottom:10px;min-width:180px}
.admin-user-main small{color:var(--muted);font-weight:800}
.admin-user-create-card{margin-top:18px!important}
.agt-exercise-card{position:relative;overflow:hidden}
.agt-exercise-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#0ea5e9,#14b8a6);opacity:.9}
body[data-theme="light"] [data-select-filter]{background:#eff6ff!important;border-color:#bfdbfe!important}
@media(max-width:900px){.admin-search-toolbar{grid-template-columns:1fr!important}.admin-access-inline{grid-template-columns:1fr!important}.improved-admin-users-table{min-width:980px!important}}

/* Retter-Portal v1.2.0 · große Beta-Erweiterung / Mobile Feinschliff */
.incident-participant-bulk{align-items:stretch!important;grid-template-columns:minmax(220px,1.2fr) repeat(3,minmax(140px,.7fr)) minmax(160px,.8fr) auto!important}
.incident-participant-bulk select[multiple]{min-height:118px!important;border-radius:18px!important;padding:10px 12px!important}
.rp-feed-card .timeline-item p{margin:4px 0 0!important;font-size:.9rem!important}
.department-rights-plain{margin:14px 0 0!important;display:flex;justify-content:flex-end!important}
.ticket-thread{display:grid;gap:14px;margin-bottom:18px}.ticket-thread article{border:1px solid var(--line);border-radius:20px;padding:16px;background:rgba(255,255,255,.025)}.ticket-thread article small{display:block;color:var(--muted);margin-top:3px}.danger-zone{border-color:rgba(200,16,46,.35)!important}.metric strong{display:block;font-size:2.3rem;line-height:1;margin-top:10px}
@media(max-width:900px){
  .app-main{padding-left:clamp(12px,3vw,22px)!important;padding-right:clamp(12px,3vw,22px)!important;max-width:100vw!important;overflow-x:hidden!important}
  .card,.page-head,.rp55-dash-hero{border-radius:22px!important;max-width:100%!important;overflow:hidden!important}
  .toolbar,.inline-form,.form-grid,.incident-participant-bulk{grid-template-columns:1fr!important;display:grid!important;width:100%!important}
  .inline-form>*{width:100%!important;min-width:0!important}
  .table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  .table-wrap table{min-width:680px!important}
  .dashboard-member-metrics,.dashboard-own-compact,.rp55-kpi-grid,.rp55-focus-grid{grid-template-columns:1fr 1fr!important}
  .rp55-dash-actions,.actions{flex-wrap:wrap!important;gap:10px!important}.rp55-dash-actions .btn,.actions .btn{flex:1 1 160px!important;text-align:center!important}
  .calendar-grid{min-width:0!important;grid-template-columns:repeat(7,minmax(38px,1fr))!important}.calendar-day{min-height:92px!important;padding:8px!important}.calendar-event-pill strong{display:none!important}
}
@media(max-width:520px){
  .topbar{padding:10px 12px!important}.topbar-actions{gap:6px!important}.user-chip small{display:none!important}
  .page-head h1{font-size:clamp(2rem,13vw,3.1rem)!important;line-height:.95!important}.page-head{padding:18px!important}
  .dashboard-member-metrics,.dashboard-own-compact,.rp55-kpi-grid,.rp55-focus-grid{grid-template-columns:1fr!important}
  .table-wrap table{min-width:560px!important}.btn{min-height:44px!important}.pill{white-space:normal!important;text-align:center!important;justify-content:center!important}
  .water-popup{max-width:calc(100vw - 88px)!important}.leaflet-popup-content{width:min(320px,calc(100vw - 96px))!important}
}

/* Retter-Portal v1.2.1 · Google Captcha, Jugendfeuerwehr und Devtools Fix */
.captcha-box{display:grid;gap:8px;justify-items:start;padding:12px;border:1px solid var(--line-soft);border-radius:16px;background:rgba(148,163,184,.08)}
.captcha-box .muted{margin:0;font-size:.82rem}
.devtools-hero{align-items:center}
.devtools-hero .hero-actions{width:min(680px,100%);justify-content:stretch}
.devtools-actions{width:100%;min-width:0!important;display:grid;gap:14px!important}
.devtools-actions .inline-form{display:grid!important;grid-template-columns:minmax(260px,1fr) minmax(260px,auto)!important;gap:12px!important;align-items:stretch!important;width:100%}
.devtools-actions .inline-form>*{width:100%!important;min-width:0!important}
.devtools-actions .btn{white-space:normal;text-align:center;line-height:1.15;padding-inline:16px}
.youth-calendar-card .card-head{align-items:flex-start}
.youth-mini-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.youth-weekday{padding:8px 10px;text-align:center;color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}
.youth-day{min-height:106px;padding:10px;border:1px solid var(--line-soft);border-radius:16px;background:var(--surface-2);display:grid;align-content:start;gap:5px;overflow:hidden}
.youth-day.empty-day{background:transparent;border-style:dashed;opacity:.45}
.youth-day.has-event{border-color:rgba(20,89,245,.35);box-shadow:inset 0 3px 0 rgba(20,89,245,.55)}
.youth-day>span{font-weight:950;color:var(--text)}
.youth-day small{display:block;padding:5px 7px;border-radius:10px;background:rgba(20,89,245,.10);color:var(--text);font-weight:850;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.youth-day em{color:var(--muted);font-style:normal;font-size:.78rem;font-weight:900}
.youth-table td small{display:block;margin-top:3px}
@media(max-width:980px){.devtools-actions .inline-form{grid-template-columns:minmax(0,1fr)!important}.youth-mini-calendar{grid-template-columns:repeat(2,minmax(0,1fr))}.youth-weekday{display:none}.youth-day.empty-day{display:none}.youth-day{min-height:auto}.youth-calendar-card .card-head{display:grid}.youth-calendar-card .actions{display:grid!important;grid-template-columns:1fr!important;width:100%}}

/* Retter-Portal v1.2.2 · Jugendfeuerwehr-Ränder, Kalender-Befüllung und Formularlogik */
.youth-table-card.card.table-wrap{
  padding:0!important;
  overflow:hidden!important;
}
.youth-table-card.card.table-wrap > .card-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  min-height:66px!important;
  padding:22px 26px 16px!important;
  margin:0!important;
  border-bottom:1px solid var(--line-soft)!important;
}
.youth-table-card.card.table-wrap > .card-head h2{
  min-width:0!important;
  overflow-wrap:anywhere!important;
  line-height:1.15!important;
}
.youth-table-card.card.table-wrap > .card-head > .pill{
  flex:0 0 auto!important;
  min-width:38px!important;
  justify-content:center!important;
  margin-right:0!important;
}
.youth-table-card.card.table-wrap > .card-head > a,
.youth-table-card.card.table-wrap > .card-head .btn{
  flex:0 0 auto!important;
  margin-left:auto!important;
  white-space:normal!important;
  text-align:center!important;
}
.youth-table-card table{
  min-width:980px!important;
}
.youth-table-card th:first-child,
.youth-table-card td:first-child{
  padding-left:26px!important;
}
.youth-table-card th:last-child,
.youth-table-card td:last-child{
  padding-right:26px!important;
}
.youth-calendar-card .card-head .actions{
  align-items:center!important;
  justify-content:flex-end!important;
}
.youth-day[data-create-url]{
  cursor:pointer;
  transition:border-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.youth-day[data-create-url]:hover,
.youth-day[data-create-url]:focus{
  border-color:rgba(20,184,166,.46)!important;
  box-shadow:0 14px 28px rgba(15,23,42,.10), inset 0 3px 0 rgba(20,184,166,.65)!important;
  outline:none!important;
}
.youth-linked-note{
  margin:0!important;
}
[data-youth-new-only][hidden],
.youth-linked-note[hidden]{
  display:none!important;
}
.account-email-help{margin-top:3px}
@media(max-width:980px){
  .youth-table-card.card.table-wrap > .card-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:start!important;
    padding:18px!important;
  }
  .youth-table-card.card.table-wrap > .card-head > a,
  .youth-table-card.card.table-wrap > .card-head .btn{
    width:100%!important;
    margin-left:0!important;
  }
  .youth-table-card.card.table-wrap > .card-head > .pill{
    justify-self:start!important;
  }
  .youth-table-card th:first-child,
  .youth-table-card td:first-child{padding-left:16px!important}
  .youth-table-card th:last-child,
  .youth-table-card td:last-child{padding-right:16px!important}
}

/* Retter-Portal v1.2.3 · Einheitliche Kanten, Jugendfeuerwehr/Dateispeicher und Mobile-Feinschliff */
.card::before{
  height:4px!important;
  opacity:1!important;
  background:linear-gradient(90deg,#c8102e 0%,#7c3aed 34%,#1459f5 68%,#14b8a6 100%)!important;
}
.content > .card.table-wrap,
.content > section.card.table-wrap,
.content > div.card.table-wrap,
.table-wrap.data-table-card,
.checks-table-wrap,
.youth-table-card.card.table-wrap{
  border-radius:28px!important;
  border:1px solid rgba(118,134,157,.22)!important;
  background:
    linear-gradient(90deg,#c8102e 0%,#7c3aed 34%,#1459f5 68%,#14b8a6 100%) left top/100% 4px no-repeat,
    linear-gradient(180deg,rgba(255,255,255,.070),rgba(255,255,255,.032)) left 4px/100% 62px no-repeat,
    linear-gradient(145deg,rgba(10,18,31,.82),rgba(8,15,27,.76))!important;
  box-shadow:0 18px 56px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.035)!important;
}
body[data-theme="light"] .content > .card.table-wrap,
body[data-theme="light"] .content > section.card.table-wrap,
body[data-theme="light"] .content > div.card.table-wrap,
body[data-theme="light"] .table-wrap.data-table-card,
body[data-theme="light"] .checks-table-wrap,
body[data-theme="light"] .youth-table-card.card.table-wrap{
  background:
    linear-gradient(90deg,#c8102e 0%,#7c3aed 34%,#1459f5 68%,#14b8a6 100%) left top/100% 4px no-repeat,
    linear-gradient(180deg,#eef3f9,#e2eaf4) left 4px/100% 62px no-repeat,
    linear-gradient(145deg,rgba(255,255,255,.94),rgba(239,245,251,.88))!important;
  box-shadow:0 16px 44px rgba(15,23,42,.09), inset 0 1px 0 rgba(255,255,255,.86)!important;
}
.youth-table-card.card.table-wrap{
  padding:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
.youth-table-card.card.table-wrap::before,
.youth-table-card.card.table-wrap::after{
  display:none!important;
  content:none!important;
}
.youth-table-card.card.table-wrap > .card-head{
  min-height:66px!important;
  padding:23px 30px 17px!important;
  margin:0!important;
  border-bottom:1px solid rgba(148,163,184,.16)!important;
}
.youth-table-card.card.table-wrap > .card-head h2{
  line-height:1.16!important;
  padding-right:10px!important;
}
.youth-table-card.card.table-wrap > .card-head > .pill{
  margin-right:0!important;
}
.youth-table-card table{
  min-width:1040px!important;
}
.youth-services-table{
  min-width:1080px!important;
}
.org-file-card{
  padding-top:30px!important;
}
.org-file-card > .card-head{
  align-items:center!important;
  padding-top:2px!important;
}
.org-file-card .table-wrap.compact{
  border-radius:20px!important;
}
.training-return-hint{
  margin-top:-8px!important;
}
@media(max-width:980px){
  .content{padding:20px!important;max-width:100vw!important;overflow-x:hidden!important}
  .grid.three,.stat-grid.three,.entity-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .youth-calendar-card .card-head{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
  .youth-calendar-card .card-head .actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important;justify-content:stretch!important}
  .youth-calendar-card .card-head .actions .btn,.youth-calendar-card .card-head .actions .pill{width:100%!important;min-width:0!important;text-align:center!important;justify-content:center!important}
}
@media(max-width:760px){
  html,body,.app-shell,.main,.content{max-width:100%!important;overflow-x:hidden!important}
  .content{padding:14px 12px!important}
  .topbar{gap:8px!important;padding-left:10px!important;padding-right:10px!important}
  .topbar-user{gap:7px!important;min-width:0!important}
  .user-chip{max-width:92px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .secure-pill{display:none!important}
  .page-head,.page-hero{padding:18px!important;border-radius:24px!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  .page-head .actions,.page-hero .actions,.hero-actions,.form-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  .page-head .btn,.page-hero .btn,.actions .btn,.form-actions .btn{width:100%!important;min-width:0!important}
  .grid.two,.grid.three,.stat-grid,.stat-grid.three,.stat-grid.six,.entity-grid,.form-grid,.form-grid.two{grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
  .card,.stat-card,.toolbar,.pagination{padding:16px!important;border-radius:22px!important;margin-bottom:16px!important}
  .card::before{height:4px!important}
  .toolbar{display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important}
  .toolbar input,.toolbar select,.toolbar .btn{width:100%!important;min-width:0!important}
  .content > .card.table-wrap,
  .content > section.card.table-wrap,
  .content > div.card.table-wrap,
  .table-wrap.data-table-card,
  .checks-table-wrap,
  .youth-table-card.card.table-wrap{
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    border-radius:0!important;
    padding:0!important;
  }
  .youth-table-card.card.table-wrap > .card-head{
    margin:0 0 12px!important;
    padding:18px 16px!important;
    border:1px solid rgba(118,134,157,.22)!important;
    border-radius:22px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
  }
  .youth-table-card.card.table-wrap > .card-head::before{
    content:""!important;
    position:absolute!important;
    left:0!important;right:0!important;top:0!important;height:4px!important;
    background:linear-gradient(90deg,#c8102e 0%,#7c3aed 34%,#1459f5 68%,#14b8a6 100%)!important;
  }
  .youth-table-card.card.table-wrap > .card-head h2{font-size:1.08rem!important;overflow-wrap:break-word!important}
  .youth-table-card table,.youth-services-table{min-width:0!important;width:100%!important}
  .youth-mini-calendar{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  .youth-weekday,.youth-day.empty-day{display:none!important}
  .youth-day{min-height:auto!important;padding:14px!important;border-radius:18px!important}
  .youth-day small{white-space:normal!important;text-overflow:clip!important}
  .org-file-card{padding:22px 16px 16px!important}
  .org-file-card > .card-head{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  .org-file-card .form-grid{grid-template-columns:minmax(0,1fr)!important}
  .attachment-upload{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  .attachment-item{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;align-items:start!important}
  .attachment-item .actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  .attachment-item .actions .btn,.attachment-item .actions form,.attachment-item .actions button{width:100%!important}
  .table-wrap table.responsive-table td{grid-template-columns:minmax(104px,36%) minmax(0,1fr)!important;gap:10px!important}
  .table-wrap table.responsive-table td.mobile-action-cell,.table-wrap table.responsive-table td.actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
}
@media(max-width:420px){
  .content{padding-left:10px!important;padding-right:10px!important}
  .page-head h1,.page-hero h1,h1{font-size:clamp(1.7rem,8.6vw,2.25rem)!important;line-height:1.06!important}
  .table-wrap table.responsive-table td{grid-template-columns:minmax(0,1fr)!important;gap:5px!important}
  .btn,.pill,.status,.role{white-space:normal!important;line-height:1.2!important;text-align:center!important}
}
.youth-table-card.card.table-wrap > .card-head{position:relative!important;overflow:hidden!important;}
@media(max-width:760px){.youth-table-card.card.table-wrap > .card-head{padding-top:22px!important;}}

/* v1.2.4 – saubere Mehrfachauswahl ohne STRG, Jugendfeuerwehr-Feinschliff */
.smart-person-picker{display:grid;gap:14px;padding:16px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,var(--surface-2),rgba(148,163,184,.07));min-width:0}
.picker-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,360px);gap:14px;align-items:end}
.picker-head strong{display:block;font-size:1rem;color:var(--text);margin-bottom:3px}
.person-choice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;max-height:360px;overflow:auto;padding:2px}
.person-choice{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);cursor:pointer;transition:.15s ease;min-width:0}
.person-choice:hover{transform:translateY(-1px);border-color:rgba(20,89,245,.45);box-shadow:var(--shadow-sm)}
.person-choice input{width:auto;margin-top:3px;accent-color:var(--primary)}
.person-choice span{display:grid;gap:2px;min-width:0}
.person-choice strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.93rem}
.person-choice small{color:var(--muted);font-weight:800;line-height:1.35;overflow-wrap:anywhere}
.person-choice.is-selected{border-color:rgba(20,89,245,.78);background:linear-gradient(135deg,rgba(20,89,245,.14),rgba(20,184,166,.10));box-shadow:0 0 0 3px rgba(20,89,245,.10)}
.participant-add-form{display:grid;gap:14px;margin-bottom:16px}.participant-meta{justify-content:flex-start}.participant-meta input{min-width:190px}.personnel-youth-card .youth-personnel-assignment{margin-top:16px}.personnel-youth-card .table-wrap{margin-bottom:12px}
@media(max-width:820px){.picker-head{grid-template-columns:1fr}.person-choice-grid{grid-template-columns:1fr;max-height:460px}.participant-meta{display:grid;grid-template-columns:1fr}.participant-meta>*{width:100%;min-width:0}.smart-person-picker{padding:13px}.person-choice strong{white-space:normal}.youth-services-table,.youth-table{min-width:0!important}.youth-table-card{overflow:visible!important}.youth-table-card table.responsive-table{display:block!important}}

/* v1.2.5 – Jugendbearbeitung, DSGVO-Hinweis und saubere Formular-/Tabellenkanten */
.youth-edit-card .notice{align-self:stretch}.youth-edit-card select:disabled{opacity:.78;cursor:not-allowed}.youth-table-card .actions{white-space:nowrap}.youth-table-card .btn.small{min-height:38px}.rp55-trust-row{flex-wrap:wrap}.rp55-security-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.attachment-card .card-head,.youth-calendar-card .card-head,.youth-table-card .card-head{gap:16px}.attachment-card .card-head:before,.youth-calendar-card .card-head:before,.youth-table-card .card-head:before{height:4px!important}
@media(max-width:920px){.youth-table-card .actions{white-space:normal}.youth-table-card table{min-width:760px}.rp55-trust-row span{white-space:normal}.rp55-security-grid article{min-width:0}}
@media(max-width:680px){.youth-calendar-card .card-head .actions{display:grid;grid-template-columns:1fr;align-items:stretch}.youth-calendar-card .card-head .actions .btn,.youth-calendar-card .card-head .actions .pill{text-align:center;justify-content:center}.youth-edit-card .form-actions{display:grid;grid-template-columns:1fr}.youth-edit-card .form-actions .btn{width:100%}}


/* v1.2.6 – globale Karten-/Textstabilität und sauberere mobile Ansicht */
.rp55-public,
.rp55-public *,
.app-shell,
.app-shell *,
.content,
.content *,
.card,
.card *,
.login-card,
.login-card *{box-sizing:border-box;min-width:0}

.content,
.main,
.page-head,
.card,
.stat-card,
.login-card,
.toolbar,
.table-wrap,
.form-grid,
.actions,
.rp55-section,
.rp55-proof article,
.rp55-module-grid article,
.rp55-security-grid article,
.rp55-flow-grid article,
.rights-principle-grid article,
.beta-explain-grid article,
.rp-admin-changelog-list article{max-width:100%;min-width:0;overflow-wrap:break-word}

.page-head,
.card-head,
.toolbar,
.actions,
.form-actions{min-width:0;max-width:100%;gap:14px;flex-wrap:wrap}
.card-head > div,
.page-head > div,
.toolbar > div,
.actions > div{min-width:0;max-width:100%}
.page-head h1,
.card-head h2,
.card h1,
.card h2,
.card h3,
.card strong,
.stat-card strong,
.rp55-section h2,
.rp55-module-grid strong,
.rp55-proof strong,
.rp55-flow-grid strong,
.rights-principle-grid strong,
.beta-explain-grid strong{max-width:100%;overflow-wrap:break-word;hyphens:auto;line-height:1.18}
.pill,
.status,
.role,
.badge,
.btn,
.card-head .actions a,
.card-head .actions button,
.toolbar .btn{max-width:100%;white-space:normal;text-align:center;overflow-wrap:break-word}
input,
select,
textarea{max-width:100%;min-width:0}
textarea{overflow-wrap:anywhere}

/* Startseite: Sicherheitskarten dürfen nie schmaler als ihr Inhalt werden. */
.rp55-security{align-items:stretch!important}
.rp55-security-copy{min-width:0;max-width:720px}
.rp55-security-grid{grid-template-columns:repeat(2,minmax(min(100%,300px),1fr))!important;align-items:stretch!important;gap:16px!important}
.rp55-security-grid article{grid-template-columns:64px minmax(0,1fr)!important;align-content:start!important;align-items:start!important;min-height:142px!important;padding:20px!important;overflow:hidden!important}
.rp55-security-grid b{width:64px!important;height:64px!important;min-width:64px!important;font-size:.88rem!important;letter-spacing:.08em!important;line-height:1!important;text-align:center;overflow:hidden}
.rp55-security-grid strong{display:block!important;font-size:clamp(1rem,1.15vw,1.16rem)!important;line-height:1.25!important;overflow-wrap:break-word!important;hyphens:auto!important}
.rp55-security-grid span{display:block!important;margin-top:2px;line-height:1.5!important;overflow-wrap:break-word!important;hyphens:auto!important}
.rp55-trust-row span{max-width:100%;white-space:normal;line-height:1.25}

/* Öffentliche Karten und interne Übersichten: gleichmäßige Umbrüche statt abgeschnittener Texte. */
.rp55-proof article,
.rp55-module-grid article,
.rp55-flow-grid article{overflow:hidden!important}
.rp55-module-grid p,
.rp55-proof span,
.rp55-flow-grid p,
.rights-principle-grid span,
.beta-explain-grid span{overflow-wrap:break-word;hyphens:auto;line-height:1.5}
.table-wrap table{max-width:100%}
.table-wrap th,
.table-wrap td{overflow-wrap:break-word;hyphens:auto}

@media(max-width:1280px){
  .rp55-security-grid{grid-template-columns:repeat(2,minmax(min(100%,320px),1fr))!important}
}

@media(max-width:860px){
  html,body{overflow-x:hidden!important}
  .rp55-public{padding:12px!important;overflow-x:hidden!important}
  .rp55-nav,.rp55-hero,.rp55-section{width:100%!important;max-width:100%!important}
  .rp55-hero{gap:22px!important;margin-top:22px!important}
  .rp55-hero h1{font-size:clamp(2.25rem,11vw,3.55rem)!important;line-height:1.02!important;letter-spacing:-.055em!important;overflow-wrap:break-word!important}
  .rp55-section{padding:22px!important;border-radius:24px!important}
  .rp55-security-grid{grid-template-columns:1fr!important}
  .rp55-security-grid article{grid-template-columns:58px minmax(0,1fr)!important;min-height:0!important;padding:18px!important;border-radius:21px!important}
  .rp55-security-grid b{width:58px!important;height:58px!important;min-width:58px!important;font-size:.80rem!important;letter-spacing:.06em!important}
  .rp55-module-grid article,.rp55-proof article,.rp55-flow-grid article{min-height:0!important;padding:19px!important}
  .page-head{grid-template-columns:1fr!important;align-items:start!important;padding:22px!important;border-radius:24px!important}
  .page-head .actions,.card-head .actions,.toolbar,.form-actions{display:flex;align-items:stretch;justify-content:flex-start;width:100%;gap:10px}
  .page-head .btn,.card-head .btn,.toolbar .btn,.form-actions .btn{min-width:0;flex:1 1 180px}
  .form-grid{grid-template-columns:1fr!important}
  .form-grid.two,.form-grid.three,.form-grid.four{grid-template-columns:1fr!important}
  .card{padding:20px!important;border-radius:23px!important}
  .table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch;max-width:100%}
}

@media(max-width:520px){
  .rp55-public{padding:10px!important}
  .rp55-nav-links{gap:3px!important}
  .rp55-nav-links a{white-space:normal!important;text-align:center;line-height:1.15!important}
  .rp55-hero-actions,.rp55-nav-actions,.rp55-trust-row{display:grid!important;grid-template-columns:1fr!important;width:100%}
  .rp55-hero-actions .btn,.rp55-nav-actions a,.rp55-trust-row span{width:100%;justify-content:center;text-align:center}
  .rp55-section{padding:18px!important;border-radius:22px!important}
  .rp55-security-grid article{grid-template-columns:1fr!important;gap:10px!important}
  .rp55-security-grid b{width:54px!important;height:54px!important;min-width:54px!important}
  .rp55-security-grid strong{font-size:1.02rem!important}
  .rp55-preview-metrics{grid-template-columns:1fr!important}
  .content{padding-left:10px!important;padding-right:10px!important}
  .page-head,.card{padding:17px!important}
  .card-head{align-items:flex-start!important}
  .card-head .actions,.page-head .actions,.toolbar,.form-actions{display:grid!important;grid-template-columns:1fr!important;width:100%}
  .card-head .actions .btn,.page-head .actions .btn,.toolbar .btn,.form-actions .btn{width:100%;flex:none}
  .pill,.status,.role,.badge{font-size:.82rem;line-height:1.2}
}

/* v1.2.8: Rechtliches, Footer und aktiver Feuerwehr-Kontext */
.portal-footer{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin:34px 0 0;
  padding:20px 22px;
  border:1px solid var(--line-soft);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(255,255,255,.58),rgba(255,255,255,.26));
  color:var(--muted);
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}
body[data-theme="dark"] .portal-footer{background:linear-gradient(135deg,rgba(17,24,39,.72),rgba(15,23,42,.42));border-color:rgba(255,255,255,.08)}
@media(prefers-color-scheme:dark){body[data-theme="system"] .portal-footer{background:linear-gradient(135deg,rgba(17,24,39,.72),rgba(15,23,42,.42));border-color:rgba(255,255,255,.08)}}
.portal-footer-brand{display:grid;gap:4px;min-width:0;max-width:620px}
.portal-footer-brand strong{color:var(--text);font-weight:950;letter-spacing:-.04em}
.portal-footer-brand span{font-size:.9rem;line-height:1.5;overflow-wrap:anywhere}
.portal-footer-links{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end;align-items:center;min-width:0}
.portal-footer-links a{display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border:1px solid var(--line-soft);border-radius:999px;background:rgba(255,255,255,.38);font-size:.84rem;font-weight:900;color:var(--muted);white-space:nowrap}
.portal-footer-links a:hover{color:var(--text);border-color:var(--line)}
.legal-content-card{max-width:980px;margin-inline:auto}
.legal-content{white-space:pre-wrap;line-height:1.75;color:var(--text);font-weight:650;overflow-wrap:anywhere}
.legal-admin-card textarea{min-height:320px;font-family:inherit;line-height:1.55}
.legal-editor-field{align-content:start}
.legal-editor-field > span{color:var(--text);font-size:1.04rem;font-weight:950}
.department-context-switch{display:flex;align-items:center;gap:8px;max-width:310px;min-width:230px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);box-shadow:var(--shadow-sm)}
.department-context-switch span{font-size:.72rem;font-weight:950;color:var(--muted-2);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.department-context-switch select{height:34px;min-height:34px;padding:4px 26px 4px 9px;border-radius:999px;box-shadow:none;font-size:.86rem;font-weight:900;background:var(--surface-2);min-width:0}
.department-context-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,440px);gap:18px;align-items:end;background:linear-gradient(135deg,var(--surface),rgba(20,89,245,.06))}
.department-context-card h2{font-size:1.55rem;overflow-wrap:anywhere}
.department-context-card-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
.department-context-card-form .btn{white-space:nowrap}
.rp55-security-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))!important;align-items:stretch!important}
.rp55-security-grid article{min-width:0!important;overflow:hidden!important;display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:16px!important}
.rp55-security-grid article strong,.rp55-security-grid article span{min-width:0!important;overflow-wrap:anywhere!important;hyphens:auto!important;max-width:100%!important}
.rp55-security-grid article b{flex:none!important;overflow:hidden!important;text-align:center!important}
.topbar-title,.topbar-user,.department-context-switch,.secure-pill,.user-chip{min-width:0}
@media(max-width:1180px){
  .topbar{align-items:flex-start;flex-wrap:wrap}
  .topbar-user{width:100%;justify-content:flex-start;flex-wrap:wrap}
  .department-context-switch{max-width:100%;flex:1 1 280px;border-radius:16px}
  .department-context-switch select{border-radius:13px}
}
@media(max-width:860px){
  .portal-footer{display:grid;grid-template-columns:1fr;padding:18px;margin-top:24px}
  .portal-footer-links{justify-content:flex-start}
  .portal-footer-links a{white-space:normal;text-align:center}
  .department-context-card{grid-template-columns:1fr}
  .department-context-card-form{grid-template-columns:1fr}
  .department-context-card-form .btn{width:100%}
  .rp55-security-grid{grid-template-columns:1fr!important}
  .rp55-security-grid article{grid-template-columns:58px minmax(0,1fr)!important}
}
@media(max-width:620px){
  .department-context-switch{display:grid;grid-template-columns:1fr;width:100%;border-radius:18px;padding:9px}
  .department-context-switch select{width:100%}
  .rp55-security-grid article{grid-template-columns:1fr!important;gap:10px!important}
  .rp55-security-grid article b{width:54px!important;height:54px!important;min-width:54px!important}
}

/* v1.2.8: Öffentliches Rechtliches-Menü und feldbasierte Betreiberangaben */
.legal-public-shell{
  width:min(100% - 32px,1420px);
  margin:0 auto;
  padding:16px 0 34px;
  min-height:100vh;
  overflow-x:hidden;
}
.legal-public-nav{
  position:sticky;
  top:10px;
  z-index:30;
  max-width:100%;
  border-radius:24px;
  padding:12px;
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(255,255,255,.64));
  border:1px solid var(--line-soft);
  box-shadow:var(--shadow-sm);
  backdrop-filter:blur(18px);
}
body[data-theme="dark"] .legal-public-nav{background:linear-gradient(135deg,rgba(15,23,42,.88),rgba(15,23,42,.66));border-color:rgba(255,255,255,.09)}
@media(prefers-color-scheme:dark){body[data-theme="system"] .legal-public-nav{background:linear-gradient(135deg,rgba(15,23,42,.88),rgba(15,23,42,.66));border-color:rgba(255,255,255,.09)}}
.legal-public-menu{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  justify-content:center;
  min-width:0;
}
.legal-public-menu a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 12px;
  border:1px solid var(--line-soft);
  border-radius:999px;
  background:rgba(255,255,255,.36);
  color:var(--muted);
  font-size:.88rem;
  font-weight:950;
  line-height:1.15;
  text-align:center;
  max-width:100%;
  overflow-wrap:anywhere;
}
.legal-public-menu a:hover,.legal-public-menu a.active{color:var(--text);border-color:var(--brand);background:rgba(225,6,45,.10)}
body[data-theme="dark"] .legal-public-menu a{background:rgba(15,23,42,.62)}
@media(prefers-color-scheme:dark){body[data-theme="system"] .legal-public-menu a{background:rgba(15,23,42,.62)}}
.legal-nav-actions{flex-wrap:wrap;justify-content:flex-end;min-width:0}
.legal-nav-actions .compact{min-height:38px;padding:8px 12px;font-size:.86rem;white-space:normal;text-align:center}
.legal-public-main{display:grid;gap:18px;margin:26px auto 0;max-width:1180px;min-width:0}
.legal-public-hero{
  padding:34px;
  border:1px solid var(--line-soft);
  border-radius:28px;
  background:linear-gradient(135deg,var(--surface),rgba(20,89,245,.06));
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}
.legal-public-hero h1{margin:0;font-size:clamp(2rem,5vw,4.4rem);line-height:.98;letter-spacing:-.07em;overflow-wrap:anywhere}
.legal-public-hero p:not(.eyebrow){max-width:850px;color:var(--muted);font-size:1.05rem;line-height:1.65;font-weight:750;overflow-wrap:anywhere}
.legal-public-card{max-width:none;margin-inline:0}
.legal-profile-form{display:grid;gap:18px;min-width:0}
.legal-field-group{display:grid;gap:18px;overflow:hidden}
.legal-profile-grid{align-items:start}
.legal-profile-field{min-width:0;display:grid;gap:8px}
.legal-profile-field span{color:var(--muted);font-size:.86rem;font-weight:950;line-height:1.25;overflow-wrap:anywhere}
.legal-profile-field input,.legal-profile-field textarea{width:100%;min-width:0}
.legal-profile-field textarea{resize:vertical;min-height:112px;line-height:1.55}
.legal-preview-links{display:flex;align-items:center;justify-content:space-between;gap:18px;overflow:hidden}
.legal-preview-links h2{margin-bottom:4px;overflow-wrap:anywhere}
.legal-preview-menu{justify-content:flex-end}
.legal-manage-actions{position:sticky;bottom:12px;z-index:20;justify-content:flex-end;padding:12px;border:1px solid var(--line-soft);border-radius:22px;background:rgba(248,250,252,.88);backdrop-filter:blur(16px);box-shadow:var(--shadow-sm)}
body[data-theme="dark"] .legal-manage-actions{background:rgba(15,23,42,.88);border-color:rgba(255,255,255,.08)}
@media(prefers-color-scheme:dark){body[data-theme="system"] .legal-manage-actions{background:rgba(15,23,42,.88);border-color:rgba(255,255,255,.08)}}
@media(max-width:1120px){
  .legal-public-nav{display:grid;grid-template-columns:1fr;gap:12px;position:relative;top:auto}
  .legal-public-menu,.legal-nav-actions{justify-content:flex-start}
  .legal-nav-actions .auth-theme-switch{margin-left:0}
  .legal-preview-links{display:grid;grid-template-columns:1fr}
  .legal-preview-menu{justify-content:flex-start}
}
@media(max-width:720px){
  .legal-public-shell{width:min(100% - 18px,1420px);padding-top:9px}
  .legal-public-nav{border-radius:20px;padding:10px}
  .legal-public-menu{display:grid;grid-template-columns:1fr;width:100%}
  .legal-public-menu a{width:100%;border-radius:16px;white-space:normal}
  .legal-nav-actions{display:grid!important;grid-template-columns:1fr!important;width:100%}
  .legal-nav-actions .rp55-nav-login,.legal-nav-actions .btn,.legal-nav-actions .auth-theme-switch{width:100%;justify-content:center}
  .legal-public-main{margin-top:14px;gap:14px}
  .legal-public-hero{padding:22px;border-radius:22px}
  .legal-public-hero h1{font-size:clamp(2rem,13vw,3.2rem)}
  .legal-profile-grid{grid-template-columns:1fr!important}
  .legal-field-group{padding:18px!important;border-radius:22px!important}
  .legal-manage-actions{position:static;display:grid!important;grid-template-columns:1fr!important}
  .legal-manage-actions .btn{width:100%}
}

/* v1.2.9: Feuerwehr-Auswahl oben klarer und Rechtliches/Footer zentrierter */
.department-context-card{display:none!important}
.department-context-switch{
  flex:0 1 520px!important;
  width:min(520px,100%)!important;
  max-width:520px!important;
  min-width:360px!important;
  display:grid!important;
  grid-template-columns:auto minmax(220px,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  padding:6px 10px 6px 12px!important;
  overflow:hidden!important;
}
.department-context-switch span{
  max-width:92px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  letter-spacing:.075em!important;
}
.department-context-switch select{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  color:var(--text)!important;
  background:var(--surface-2)!important;
  text-overflow:ellipsis!important;
}
.department-context-switch select option{color:#111827;background:#fff}
body[data-theme="dark"] .department-context-switch select option{color:#f8fafc;background:#111827}
@media(prefers-color-scheme:dark){body[data-theme="system"] .department-context-switch select option{color:#f8fafc;background:#111827}}
.portal-footer{
  width:min(100%,1180px)!important;
  max-width:1180px!important;
  margin:34px auto 0!important;
  background:linear-gradient(135deg,rgba(248,250,252,.42),rgba(226,232,240,.18))!important;
}
body[data-theme="dark"] .portal-footer{background:linear-gradient(135deg,rgba(17,24,39,.62),rgba(15,23,42,.34))!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .portal-footer{background:linear-gradient(135deg,rgba(17,24,39,.62),rgba(15,23,42,.34))!important}}
.rp55-public > .portal-footer,
.legal-public-shell > .portal-footer{
  width:min(100%,1080px)!important;
  max-width:1080px!important;
  margin:34px auto 0!important;
}
.portal-footer-links a{background:rgba(255,255,255,.24)!important}
body[data-theme="dark"] .portal-footer-links a{background:rgba(15,23,42,.48)!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .portal-footer-links a{background:rgba(15,23,42,.48)!important}}
@media(max-width:1180px){
  .department-context-switch{flex:1 1 360px!important;max-width:100%!important}
}
@media(max-width:620px){
  .department-context-switch{min-width:0!important;width:100%!important;grid-template-columns:1fr!important;border-radius:18px!important;padding:9px!important}
  .department-context-switch span{max-width:100%!important;text-overflow:clip!important}
  .department-context-switch select{width:100%!important}
  .rp55-public > .portal-footer,.legal-public-shell > .portal-footer{margin-top:22px!important}
}

/* v1.2.10: Header/Footer/Rechtliches optisch bereinigt und globaler Overflow-Schutz */
html,body{max-width:100%;overflow-x:hidden}
.topbar.has-department-switch{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  overflow:hidden!important;
}
.topbar.has-department-switch .topbar-title{
  flex:0 1 280px!important;
  min-width:180px!important;
  overflow:hidden!important;
}
.topbar.has-department-switch .topbar-title > div{min-width:0!important;overflow:hidden!important}
.topbar.has-department-switch .topbar-title strong,
.topbar.has-department-switch .topbar-eyebrow{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.topbar.has-department-switch .topbar-user{
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:nowrap!important;
  overflow:hidden!important;
}
.topbar.has-department-switch .department-context-switch{
  flex:1 1 560px!important;
  width:auto!important;
  min-width:300px!important;
  max-width:720px!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  padding:7px 11px 7px 14px!important;
  border-radius:999px!important;
  overflow:hidden!important;
}
.topbar.has-department-switch .department-context-switch span{
  flex:0 0 auto!important;
  max-width:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
}
.topbar.has-department-switch .department-context-switch select{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  height:38px!important;
  min-height:38px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.topbar.has-department-switch .secure-pill{
  flex:0 1 auto!important;
  max-width:155px!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  padding-inline:13px!important;
}
.topbar.has-department-switch .theme-switch,
.topbar.has-department-switch .user-chip,
.topbar.has-department-switch .topbar-user > form{
  flex:0 0 auto!important;
}
.topbar.has-department-switch .user-chip{
  max-width:104px!important;
  overflow:hidden!important;
}
.topbar.has-department-switch .user-chip small,
.topbar.has-department-switch .user-chip{
  text-overflow:ellipsis!important;
}
@media(max-width:1440px){
  .topbar.has-department-switch .topbar-title{display:none!important}
  .topbar.has-department-switch .topbar-user{width:100%!important;justify-content:flex-start!important}
  .topbar.has-department-switch .department-context-switch{flex:1 1 520px!important;max-width:none!important;min-width:280px!important}
  .topbar.has-department-switch .secure-pill{max-width:118px!important;font-size:0!important;justify-content:center!important}
  .topbar.has-department-switch .secure-pill::after{content:"Verschlüsselt";font-size:.80rem;line-height:1;font-weight:950;white-space:nowrap}
  .topbar.has-department-switch .secure-pill.off::after{content:"Schlüssel fehlt"}
}
@media(max-width:980px){
  .topbar.has-department-switch{display:grid!important;grid-template-columns:1fr!important;align-items:stretch!important;overflow:visible!important}
  .topbar.has-department-switch .topbar-user{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;gap:8px!important;align-items:center!important;overflow:visible!important}
  .topbar.has-department-switch .department-context-switch{grid-column:1/-1!important;min-width:0!important;width:100%!important;border-radius:18px!important}
  .topbar.has-department-switch .secure-pill{max-width:none!important;font-size:.8rem!important}
  .topbar.has-department-switch .secure-pill::after{content:none!important}
  .topbar.has-department-switch .user-chip{max-width:150px!important;text-align:left!important}
}
@media(max-width:760px){
  .topbar.has-department-switch .topbar-user{grid-template-columns:1fr auto!important}
  .topbar.has-department-switch .department-context-switch{grid-template-columns:1fr!important;padding:10px!important}
  .topbar.has-department-switch .department-context-switch span{font-size:.70rem!important}
  .topbar.has-department-switch .theme-switch{display:none!important}
  .topbar.has-department-switch .user-chip{max-width:120px!important}
}
@media(max-width:430px){
  .topbar.has-department-switch .topbar-user{grid-template-columns:1fr!important}
  .topbar.has-department-switch .topbar-user > form .btn,
  .topbar.has-department-switch .topbar-user > form{width:100%!important}
  .topbar.has-department-switch .user-chip{text-align:left!important;max-width:100%!important}
}
.rp55-public > .portal-footer,
.legal-public-shell > .portal-footer{
  width:min(1480px,100%)!important;
  max-width:1480px!important;
  margin:34px auto 0!important;
  border-radius:30px!important;
}
.legal-public-shell > .portal-footer{width:min(1420px,100%)!important;max-width:1420px!important}
.rp55-public > .portal-footer .portal-footer-brand,
.legal-public-shell > .portal-footer .portal-footer-brand{max-width:780px!important}
.legal-content{
  white-space:pre-line!important;
  line-height:1.7!important;
  overflow-wrap:anywhere!important;
}
.card,.stat-card,.toolbar,.pagination,.login-card,.page-hero,.page-head,
.rp55-section,.rp55-module-grid article,.rp55-proof article,.rp55-security-grid article,
.legal-public-nav,.legal-public-hero,.legal-public-card,.portal-footer,
.entity-card,.detail-item,.info-grid>div,.attachment-item,.smart-person-picker,.person-choice{
  min-width:0!important;
  max-width:100%;
  overflow-wrap:anywhere;
}
.card-head,.actions,.form-actions,.toolbar,.portal-footer,.portal-footer-links,
.rp55-nav,.rp55-nav-links,.rp55-nav-actions,.legal-public-menu,.legal-nav-actions{
  min-width:0!important;
}
.btn,.pill,.status,.role,.secure-pill,.portal-footer-links a,
.rp55-trust-row span,.rp55-nav-links a,.legal-public-menu a{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
}
input,select,textarea,button{min-width:0!important;max-width:100%}
.table-wrap{max-width:100%;overflow-x:auto;overflow-y:hidden}
@media(max-width:860px){
  .rp55-public > .portal-footer,
  .legal-public-shell > .portal-footer{width:100%!important;max-width:100%!important;border-radius:24px!important;padding:18px!important}
  .portal-footer{grid-template-columns:1fr!important;gap:16px!important}
  .portal-footer-links{justify-content:flex-start!important;width:100%!important}
  .portal-footer-links a{white-space:normal!important;text-align:center!important;justify-content:center!important;flex:1 1 160px!important}
  .rp55-nav,.legal-public-nav{overflow:hidden!important}
  .rp55-nav-links{max-width:100%;overflow-x:auto!important;padding-bottom:4px!important;justify-content:flex-start!important}
  .rp55-nav-actions,.legal-nav-actions{max-width:100%;overflow:hidden!important}
  .rp55-section{overflow:hidden!important}
  .rp55-module-grid article,.rp55-proof article,.rp55-security-grid article{overflow:hidden!important}
}
@media(max-width:560px){
  .portal-footer-links{display:grid!important;grid-template-columns:1fr!important}
  .portal-footer-links a{width:100%!important}
  .rp55-section,.legal-public-hero,.legal-public-card{padding:18px!important;border-radius:22px!important}
  .rp55-section h2,.legal-public-hero h1{hyphens:auto!important;overflow-wrap:anywhere!important}
  .rp55-hero-actions,.form-actions,.actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .rp55-hero-actions .btn,.actions .btn,.form-actions .btn{width:100%!important}
}


/* v1.2.11: reCAPTCHA, breitere Feuerwehr-Auswahl, Dashboard-Footer und mobile Stabilität */
.topbar.has-department-switch{
  gap:16px!important;
}
.topbar.has-department-switch .department-context-switch{
  flex:1 1 720px!important;
  min-width:360px!important;
  max-width:920px!important;
  grid-template-columns:auto minmax(260px,1fr)!important;
}
.topbar.has-department-switch .department-context-switch select{
  font-size:.92rem!important;
  padding-left:13px!important;
  padding-right:32px!important;
}
.topbar.has-department-switch .secure-pill{
  max-width:170px!important;
  justify-content:center!important;
}
.content > .portal-footer{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  border-radius:26px!important;
}
.rp55-public > .portal-footer,
.legal-public-shell > .portal-footer{
  width:min(1480px,100%)!important;
  max-width:1480px!important;
}
.legal-public-main{
  width:min(1180px,100%)!important;
}
.legal-profile-grid.two{
  grid-template-columns:repeat(2,minmax(260px,1fr))!important;
}
.captcha-box{
  display:grid;
  gap:10px;
  justify-items:start;
  min-width:0;
  overflow:hidden;
}
.captcha-box .g-recaptcha{
  max-width:100%;
  transform-origin:left top;
}
@media(max-width:1700px){
  .topbar.has-department-switch .topbar-title{display:none!important}
  .topbar.has-department-switch .topbar-user{width:100%!important;justify-content:flex-start!important}
  .topbar.has-department-switch .department-context-switch{flex:1 1 760px!important;max-width:none!important;min-width:340px!important}
  .topbar.has-department-switch .secure-pill{max-width:128px!important;font-size:0!important;padding-inline:10px!important}
  .topbar.has-department-switch .secure-pill::after{content:"Verschlüsselt";font-size:.80rem;line-height:1;font-weight:950;white-space:nowrap}
  .topbar.has-department-switch .secure-pill.off::after{content:"Schlüssel fehlt"}
}
@media(max-width:1120px){
  .topbar.has-department-switch{display:grid!important;grid-template-columns:1fr!important;align-items:stretch!important;overflow:visible!important}
  .topbar.has-department-switch .topbar-user{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;gap:8px!important;align-items:center!important;overflow:visible!important}
  .topbar.has-department-switch .department-context-switch{grid-column:1/-1!important;width:100%!important;min-width:0!important;grid-template-columns:auto minmax(0,1fr)!important;border-radius:18px!important}
  .topbar.has-department-switch .secure-pill{max-width:none!important;font-size:.8rem!important}
  .topbar.has-department-switch .secure-pill::after{content:none!important}
  .content > .portal-footer{border-radius:22px!important}
}
@media(max-width:760px){
  .topbar.has-department-switch .topbar-user{grid-template-columns:1fr auto!important}
  .topbar.has-department-switch .department-context-switch{grid-template-columns:1fr!important;padding:10px!important}
  .topbar.has-department-switch .department-context-switch span{font-size:.70rem!important;white-space:normal!important}
  .topbar.has-department-switch .department-context-switch select{width:100%!important}
  .topbar.has-department-switch .theme-switch{display:none!important}
  .portal-footer{display:grid!important;grid-template-columns:1fr!important;gap:16px!important}
  .portal-footer-links{justify-content:flex-start!important;width:100%!important}
  .portal-footer-links a{flex:1 1 150px!important;justify-content:center!important;text-align:center!important;white-space:normal!important}
  .legal-profile-grid.two{grid-template-columns:1fr!important}
}
@media(max-width:390px){
  .captcha-box .g-recaptcha{transform:scale(.88)}
  .captcha-box{min-height:86px}
}

/* Retter-Portal v1.2.12 · reCAPTCHA v3 ohne falsches Checkbox-Widget */
.captcha-box-v3{min-height:auto!important;padding:12px 14px!important}
.captcha-box-v3 .flash{margin:2px 0 0!important;width:100%}

/* Retter-Portal v1.2.13: reCAPTCHA v3 Aktivstatus */
.captcha-box-v3{align-items:stretch!important;gap:10px!important}
.captcha-v3-row{display:flex!important;align-items:flex-start!important;gap:12px!important;width:100%!important;min-width:0!important}
.captcha-v3-icon{flex:0 0 auto!important;width:34px!important;height:34px!important;border-radius:999px!important;display:grid!important;place-items:center!important;font-weight:950!important;background:rgba(148,163,184,.16)!important;color:var(--muted)!important;border:1px solid var(--line-soft)!important;box-shadow:var(--shadow-sm)!important}
.captcha-v3-copy{min-width:0!important;display:grid!important;gap:2px!important}
.captcha-v3-copy strong{display:block!important;font-size:.92rem!important;line-height:1.25!important;color:var(--text)!important;overflow-wrap:break-word!important}
.captcha-box-v3 .muted{font-size:.84rem!important;line-height:1.45!important}
.captcha-box-v3.is-ready .captcha-v3-icon,.captcha-box-v3[data-recaptcha-status="verified"] .captcha-v3-icon{background:#ecfdf5!important;color:#047857!important;border-color:#bbf7d0!important}
.captcha-box-v3.is-running .captcha-v3-icon{background:#eff6ff!important;color:#1d4ed8!important;border-color:#bfdbfe!important}
.captcha-box-v3.is-error .captcha-v3-icon{background:#fff1f2!important;color:#be123c!important;border-color:#fecdd3!important}
@media(max-width:560px){.captcha-v3-row{gap:10px!important}.captcha-v3-icon{width:30px!important;height:30px!important}.captcha-v3-copy strong{font-size:.86rem!important}.captcha-box-v3 .muted{font-size:.78rem!important}}

/* Retter-Portal v1.2.14 · Header entrümpelt, Tabellen/Skalierung und Mobile-Feinschliff */
.content{
  width:100%!important;
  max-width:none!important;
  padding:clamp(16px,1.65vw,30px)!important;
}
.topbar.has-department-switch{
  padding-inline:clamp(14px,1.7vw,30px)!important;
  gap:14px!important;
}
.topbar.has-department-switch .topbar-user{
  width:100%!important;
  justify-content:flex-end!important;
  overflow:visible!important;
}
.topbar.has-department-switch .department-context-switch{
  flex:1 1 900px!important;
  min-width:min(520px,100%)!important;
  max-width:1080px!important;
  grid-template-columns:auto minmax(320px,1fr)!important;
  padding:7px 12px 7px 16px!important;
}
.topbar.has-department-switch .department-context-switch select{
  min-width:0!important;
  font-size:.96rem!important;
  font-weight:950!important;
}
.content > .portal-footer,
.app-shell .content > .portal-footer{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
.rp55-public > .portal-footer,
.legal-public-shell > .portal-footer{
  width:min(1480px,100%)!important;
  max-width:1480px!important;
}
.training-status-autosave{
  display:grid!important;
  grid-template-columns:minmax(150px,1fr) minmax(150px,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  min-width:min(360px,100%)!important;
}
.training-status-autosave .autosave-state{
  grid-column:1/-1!important;
  display:block!important;
  margin-top:0!important;
  font-size:.76rem!important;
  font-weight:850!important;
}
.training-status-autosave .autosave-state[data-mode="saving"]{color:#1d4ed8!important}
.training-status-autosave .autosave-state[data-mode="saved"]{color:#047857!important}
.training-status-autosave .autosave-state[data-mode="error"]{color:#be123c!important}
.rights-unlinked-notice{
  display:grid!important;
  gap:10px!important;
}
.rights-unlinked-notice > span{color:var(--muted)!important;font-weight:760!important}
.rights-unlinked-list{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:8px!important;
}
.rights-unlinked-list a{
  display:grid!important;
  gap:2px!important;
  padding:10px 12px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:14px!important;
  background:rgba(148,163,184,.10)!important;
}
.rights-unlinked-list small{color:var(--muted)!important;font-weight:760!important}
.incident-time-grid,
.form-grid .incident-time-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
.danger-zone-emphasis{
  border-color:rgba(200,16,46,.32)!important;
  background:linear-gradient(145deg,rgba(200,16,46,.08),rgba(255,255,255,.035))!important;
}
.danger-zone-emphasis h2{color:#c8102e!important}
.danger-zone-emphasis .btn.danger{
  background:linear-gradient(135deg,#c8102e,#9f1239)!important;
  color:#fff!important;
  border-color:rgba(200,16,46,.24)!important;
  box-shadow:0 14px 34px rgba(200,16,46,.20)!important;
}
.check-tabs{
  gap:9px!important;
}
.check-tab{
  min-height:41px!important;
  padding:9px 14px!important;
  border-radius:13px!important;
  background:var(--surface-2)!important;
  color:var(--text)!important;
  border:1px solid var(--line)!important;
  box-shadow:var(--shadow-sm)!important;
}
.check-tab strong{
  background:rgba(148,163,184,.16)!important;
  color:var(--text)!important;
}
.check-tab.active{
  color:#fff!important;
  border-color:transparent!important;
  background:linear-gradient(135deg,var(--primary),#0f766e)!important;
}
.check-tab.active strong{background:rgba(255,255,255,.20)!important;color:#fff!important}
@media(min-width:761px){
  .vehicles-table-wrap{
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .vehicles-table{
    width:100%!important;
    min-width:1180px!important;
    table-layout:auto!important;
  }
  .vehicles-table th,
  .vehicles-table td{
    overflow:visible!important;
    text-overflow:clip!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
    line-height:1.35!important;
  }
  .vehicles-table th:nth-child(1),.vehicles-table td:nth-child(1){min-width:130px!important;width:auto!important;white-space:normal!important}
  .vehicles-table th:nth-child(2),.vehicles-table td:nth-child(2){min-width:210px!important;width:auto!important;white-space:normal!important}
  .vehicles-table th:nth-child(3),.vehicles-table td:nth-child(3){min-width:120px!important;width:auto!important;white-space:nowrap!important}
  .vehicles-table th:nth-child(4),.vehicles-table td:nth-child(4){min-width:120px!important;width:auto!important;white-space:normal!important}
  .vehicles-table th:nth-child(5),.vehicles-table td:nth-child(5){min-width:120px!important;width:auto!important;white-space:normal!important}
  .vehicles-table th:nth-child(6),.vehicles-table td:nth-child(6),
  .vehicles-table th:nth-child(7),.vehicles-table td:nth-child(7),
  .vehicles-table th:nth-child(8),.vehicles-table td:nth-child(8){min-width:86px!important;width:auto!important;white-space:nowrap!important;text-align:center!important}
  .vehicles-table th:nth-child(9),.vehicles-table td:nth-child(9){min-width:106px!important;width:auto!important;white-space:nowrap!important}
  .vehicles-table th:nth-child(10),.vehicles-table td:nth-child(10){min-width:126px!important;width:auto!important;text-align:right!important;white-space:nowrap!important}
  .vehicles-table td:nth-child(10) .btn{min-width:104px!important;white-space:nowrap!important}
  .checks-table td.table-actions .btn,
  .checks-table td.actions .btn{
    min-width:96px!important;
    background:var(--surface-2)!important;
    color:var(--text)!important;
    border:1px solid var(--line)!important;
  }
}
@media(max-width:1120px){
  .topbar.has-department-switch .topbar-user{grid-template-columns:minmax(0,1fr) auto!important}
  .topbar.has-department-switch .department-context-switch{grid-column:1/-1!important;min-width:0!important;max-width:100%!important;grid-template-columns:auto minmax(0,1fr)!important}
}
@media(max-width:760px){
  .content{padding:14px!important}
  .topbar{padding:12px 14px!important}
  .topbar.has-department-switch .topbar-user{grid-template-columns:1fr!important;gap:9px!important}
  .topbar.has-department-switch .department-context-switch{grid-template-columns:1fr!important;border-radius:18px!important;width:100%!important}
  .topbar.has-department-switch .department-context-switch select{height:42px!important;min-height:42px!important}
  .training-status-autosave{grid-template-columns:1fr!important;min-width:0!important;width:100%!important}
  .incident-time-grid,.form-grid .incident-time-grid{grid-template-columns:1fr!important}
  .page-head,.page-hero{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
  .report-summary,.stat-grid,.stat-grid.three,.stat-grid.six{grid-template-columns:1fr!important}
  .check-tabs{display:grid!important;grid-template-columns:1fr!important}
  .check-tab{width:100%!important}
  .rights-unlinked-list{grid-template-columns:1fr!important}
}

/* Retter-Portal v1.2.15 · Live-Suche, Startseite/Dashboard und Whitemode-Feinschliff */
.smart-select-field{
  position:relative!important;
  display:grid!important;
  gap:8px!important;
  min-width:0!important;
  overflow:visible!important;
}
.smart-select-field label{
  display:grid!important;
  gap:8px!important;
  margin:0!important;
  min-width:0!important;
  font-weight:950!important;
}
.smart-select-field.compact label{font-size:.78rem!important;color:var(--muted)!important;text-transform:uppercase!important;letter-spacing:.08em!important}
.smart-select-native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  min-height:1px!important;
  padding:0!important;
  opacity:.01!important;
  pointer-events:none!important;
  z-index:-1!important;
}
.smart-select-results{
  display:grid!important;
  gap:6px!important;
  padding:8px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(148,163,184,.10),rgba(148,163,184,.05))!important;
  max-height:300px!important;
  overflow:auto!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
}
.smart-select-field:not(.is-open) .smart-select-results{
  max-height:82px!important;
  overflow:hidden!important;
}
.smart-select-option{
  appearance:none!important;
  border:1px solid transparent!important;
  background:rgba(255,255,255,.68)!important;
  color:var(--text)!important;
  display:grid!important;
  gap:2px!important;
  width:100%!important;
  min-height:44px!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  text-align:left!important;
  cursor:pointer!important;
  transition:border-color .12s ease,background .12s ease,transform .12s ease!important;
}
body[data-theme="dark"] .smart-select-option{background:rgba(15,23,42,.62)!important}
.smart-select-option:hover,.smart-select-option:focus-visible{
  border-color:rgba(200,16,46,.34)!important;
  background:rgba(200,16,46,.08)!important;
  transform:translateY(-1px)!important;
  outline:none!important;
}
.smart-select-option.is-selected{
  border-color:rgba(200,16,46,.42)!important;
  background:linear-gradient(135deg,rgba(200,16,46,.16),rgba(14,165,233,.10))!important;
}
.smart-select-option strong{
  font-size:.92rem!important;
  line-height:1.25!important;
  overflow-wrap:anywhere!important;
}
.smart-select-option small,.smart-select-more,.smart-select-empty{
  color:var(--muted)!important;
  font-weight:800!important;
  font-size:.78rem!important;
  line-height:1.35!important;
}
.smart-select-more,.smart-select-empty{
  padding:7px 9px!important;
  border-radius:12px!important;
  background:rgba(148,163,184,.10)!important;
}
.rights-assign-form{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(240px,1fr)) auto!important;
  gap:14px!important;
  align-items:end!important;
  overflow:visible!important;
}
.admin-access-grid .card,.rights-workbench-card{overflow:visible!important}
.smart-inline-form{align-items:end!important;overflow:visible!important}
.smart-inline-form .smart-select-field{min-width:min(360px,100%)!important;flex:1 1 360px!important}
.training-status-autosave select.is-saving{opacity:.75!important}
.status[data-training-status-pill]{transition:background .16s ease,color .16s ease,box-shadow .16s ease!important}
.status[data-training-status-pill].Genehmigt,.status[data-training-status-pill].Erledigt{background:#ecfdf5!important;color:#047857!important}
.status[data-training-status-pill].Abgelehnt{background:#fff1f2!important;color:#be123c!important}
.status[data-training-status-pill].Geplant,.status[data-training-status-pill].In\ Prüfung{background:#eff6ff!important;color:#1d4ed8!important}

/* Startseite moderner und sauberer */
.rp55-public{
  background:
    radial-gradient(circle at 12% 4%,rgba(200,16,46,.16),transparent 32rem),
    radial-gradient(circle at 88% 6%,rgba(14,165,233,.13),transparent 34rem),
    linear-gradient(145deg,var(--bg),var(--bg2))!important;
}
body[data-theme="light"] .rp55-public,
body:not([data-theme="dark"]) .rp55-public{
  background:
    radial-gradient(circle at 12% 4%,rgba(200,16,46,.11),transparent 34rem),
    radial-gradient(circle at 90% 2%,rgba(14,165,233,.10),transparent 34rem),
    linear-gradient(145deg,#f8fbff,#edf3fb)!important;
}
.rp55-nav{
  backdrop-filter:blur(18px)!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(203,213,225,.64)!important;
  box-shadow:0 18px 54px rgba(15,23,42,.10)!important;
}
body[data-theme="dark"] .rp55-nav{background:rgba(7,16,29,.72)!important;border-color:rgba(255,255,255,.08)!important;box-shadow:0 18px 60px rgba(0,0,0,.28)!important}
.rp55-hero{
  gap:clamp(24px,4vw,64px)!important;
  align-items:stretch!important;
}
.rp55-hero-copy,.rp55-hero-side,.rp55-section,.rp55-signin,.rp55-product-preview{
  border-color:rgba(148,163,184,.22)!important;
}
body[data-theme="light"] .rp55-hero-copy,
body[data-theme="light"] .rp55-section,
body[data-theme="light"] .rp55-signin,
body[data-theme="light"] .rp55-product-preview{
  background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(255,255,255,.64))!important;
  box-shadow:0 22px 70px rgba(15,23,42,.08)!important;
}
.rp55-trust-row span{
  border:1px solid rgba(200,16,46,.14)!important;
  background:rgba(200,16,46,.065)!important;
  box-shadow:0 8px 18px rgba(15,23,42,.04)!important;
}
.rp55-module-grid article,.rp55-proof article,.rp55-flow-grid article,.rp55-security-grid article{
  transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease!important;
}
.rp55-module-grid article:hover,.rp55-proof article:hover,.rp55-flow-grid article:hover,.rp55-security-grid article:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(200,16,46,.26)!important;
  box-shadow:0 20px 60px rgba(15,23,42,.10)!important;
}
.rp55-security-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.rp55-security-grid article b{
  flex:0 0 auto!important;
  min-width:62px!important;
  max-width:78px!important;
  text-align:center!important;
  font-size:clamp(.88rem,1.5vw,1.05rem)!important;
}
.rp55-security-grid article span,.rp55-security-grid article strong{overflow-wrap:anywhere!important}

/* Dashboard optisch näher an der Startseite */
.rp55-dashboard{display:grid!important;gap:clamp(18px,1.8vw,28px)!important}
.rp55-dash-hero{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(148,163,184,.22)!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 90% 20%,rgba(14,165,233,.20),transparent 26rem),
    radial-gradient(circle at 12% 0,rgba(200,16,46,.18),transparent 28rem),
    linear-gradient(145deg,var(--surface),rgba(15,23,42,.04))!important;
  box-shadow:0 24px 80px rgba(15,23,42,.12)!important;
}
body[data-theme="dark"] .rp55-dash-hero{box-shadow:0 26px 90px rgba(0,0,0,.26)!important}
.rp55-dash-hero::after{
  content:""!important;
  position:absolute!important;
  inset:auto -80px -120px auto!important;
  width:260px!important;
  height:260px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,rgba(200,16,46,.24),rgba(14,165,233,.20))!important;
  filter:blur(18px)!important;
  opacity:.74!important;
}
.rp55-dash-copy,.rp55-dash-actions{position:relative!important;z-index:1!important}
.rp55-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important}
.rp55-kpi-card,.rp55-focus-card,.rp55-own-card,.rp55-table-card,.rp-feed-card{
  border:1px solid rgba(148,163,184,.22)!important;
  background:linear-gradient(145deg,var(--surface),rgba(148,163,184,.035))!important;
  box-shadow:0 16px 52px rgba(15,23,42,.08)!important;
}
.rp55-kpi-card::before,.card::before{pointer-events:none!important}
body[data-theme="light"] .rp55-kpi-card,
body[data-theme="light"] .rp55-focus-card,
body[data-theme="light"] .rp55-own-card,
body[data-theme="light"] .rp55-table-card,
body[data-theme="light"] .rp-feed-card{
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(248,251,255,.80))!important;
  box-shadow:0 14px 44px rgba(15,23,42,.07)!important;
}
.rp55-priority-list a,.timeline-item,.department-chip{
  transition:transform .12s ease,border-color .12s ease,background .12s ease!important;
}
.rp55-priority-list a:hover,.timeline-item:hover,.department-chip:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(200,16,46,.24)!important;
  background:rgba(200,16,46,.06)!important;
}

/* Whitemode insgesamt ruhiger, kontrastreicher und weniger grau */
body[data-theme="light"]{
  --bg:#f7faff;
  --bg2:#edf3fb;
  --surface:rgba(255,255,255,.90);
  --surface-2:#f3f7fc;
  --text:#142033;
  --muted:#627086;
  --muted-2:#7b8798;
  --line:#d6dfeb;
  --line-soft:rgba(15,23,42,.08);
  --sidebar:#ffffff;
  --sidebar-2:#f4f7fb;
  --sidebar-text:#172336;
}
body[data-theme="light"] .card,
body[data-theme="light"] .toolbar,
body[data-theme="light"] .table-wrap,
body[data-theme="light"] .stat-card,
body[data-theme="light"] .page-hero{
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(248,251,255,.82))!important;
  border-color:rgba(148,163,184,.28)!important;
  box-shadow:0 12px 38px rgba(15,23,42,.06)!important;
}
body[data-theme="light"] input,
body[data-theme="light"] select,
body[data-theme="light"] textarea{
  background:#f8fbff!important;
  border-color:#d7e0ec!important;
  color:#142033!important;
}
body[data-theme="light"] input::placeholder,
body[data-theme="light"] textarea::placeholder{color:#8a96a8!important}
body[data-theme="light"] table thead th{color:#526078!important;background:rgba(241,245,249,.64)!important}
body[data-theme="light"] .btn:not(.primary):not(.danger){background:#f8fbff!important;color:#142033!important;border-color:#d6dfeb!important}
body[data-theme="light"] .btn:not(.primary):not(.danger):hover{background:#eef4fb!important;border-color:#cbd5e1!important}

@media(max-width:1180px){
  .rights-assign-form{grid-template-columns:1fr!important;align-items:stretch!important}
  .rights-assign-form .btn{width:100%!important}
  .rp55-security-grid{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  .smart-select-results{max-height:240px!important}
  .smart-inline-form{display:grid!important;grid-template-columns:1fr!important}
  .smart-inline-form .smart-select-field{min-width:0!important;width:100%!important}
  .rp55-nav{margin:10px!important;border-radius:22px!important}
  .rp55-hero,.rp55-section{border-radius:24px!important}
  .rp55-security-grid article{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .rp55-security-grid article b{max-width:none!important;width:max-content!important}
  .rp55-dash-hero{border-radius:24px!important;padding:18px!important}
  .rp55-dash-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .rp55-dash-actions .btn{width:100%!important}
  .rp55-kpi-grid{grid-template-columns:1fr!important}
}
.rp55-ops-strip{
  display:grid!important;
  grid-template-columns:minmax(0,.95fr) minmax(360px,1.25fr)!important;
  gap:clamp(18px,3vw,38px)!important;
  align-items:center!important;
}
.rp55-ops-strip h2{margin:.2rem 0 .6rem!important;font-size:clamp(2rem,3.6vw,3.8rem)!important;letter-spacing:-.055em!important;line-height:.98!important}
.rp55-ops-strip p{color:var(--muted)!important;font-weight:800!important;line-height:1.65!important}
.rp55-ops-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.rp55-ops-grid article{padding:18px!important;border:1px solid var(--line-soft)!important;border-radius:22px!important;background:rgba(148,163,184,.09)!important;display:grid!important;gap:8px!important;min-width:0!important}
.rp55-ops-grid span{width:42px!important;height:42px!important;border-radius:15px!important;background:linear-gradient(135deg,var(--primary),#0f766e)!important;color:#fff!important;display:grid!important;place-items:center!important;font-weight:950!important}
.rp55-ops-grid strong{font-size:1.05rem!important;overflow-wrap:anywhere!important}.rp55-ops-grid small{color:var(--muted)!important;font-weight:800!important;line-height:1.45!important}
@media(max-width:980px){.rp55-ops-strip{grid-template-columns:1fr!important}.rp55-ops-grid{grid-template-columns:1fr!important}}
.person-picker-counter{display:block!important;margin-top:4px!important;color:var(--muted)!important;font-weight:850!important}.person-choice-grid{gap:8px!important}.person-choice{transition:border-color .12s ease,background .12s ease,transform .12s ease!important}.person-choice:hover{transform:translateY(-1px)!important;border-color:rgba(200,16,46,.24)!important}.person-choice.is-selected{border-color:rgba(200,16,46,.42)!important;background:linear-gradient(135deg,rgba(200,16,46,.14),rgba(14,165,233,.08))!important}.picker-head input[type="search"],.picker-head input{min-width:min(320px,100%)!important}
.smart-select-field.is-loading .smart-select-results{position:relative!important}.smart-select-field.is-loading .smart-select-results::after{content:"Suche läuft …"!important;display:block!important;padding:6px 9px!important;color:var(--muted)!important;font-weight:850!important;font-size:.78rem!important}.live-search-toolbar .btn.primary{white-space:nowrap!important}

/* Retter-Portal v1.2.16 · saubere UI-Politur, echte Live-Treffer und stabilere Skalierung */
.topbar{
  min-height:72px!important;
  padding:14px clamp(18px,2.4vw,36px)!important;
  gap:18px!important;
}
.topbar-title{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-width:max-content!important;
  max-width:none!important;
}
.topbar-logo{width:42px!important;height:42px!important;object-fit:contain!important}.topbar-product{display:grid!important;gap:2px!important}.topbar-title strong{display:none!important}.topbar-eyebrow{display:flex!important;gap:8px!important;align-items:center!important;margin:0!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;font-size:.78rem!important;line-height:1.1!important;color:var(--muted)!important}.topbar-eyebrow span:first-child{font-weight:950!important;letter-spacing:.12em!important}.topbar-eyebrow span:last-child{font-weight:950!important;color:var(--text)!important;letter-spacing:.04em!important}.topbar-user{flex:1 1 auto!important;justify-content:flex-end!important;min-width:0!important}.topbar.has-department-switch .department-context-switch{flex:1 1 min(760px,58vw)!important;max-width:min(820px,64vw)!important;min-width:min(520px,52vw)!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:12px!important;padding:7px 11px!important;border-radius:999px!important;background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(238,244,250,.60))!important;border:1px solid rgba(116,132,154,.28)!important;box-shadow:0 10px 30px rgba(15,23,42,.08)!important}body[data-theme="dark"] .topbar.has-department-switch .department-context-switch{background:linear-gradient(135deg,rgba(15,23,42,.82),rgba(17,24,39,.58))!important;border-color:rgba(255,255,255,.10)!important}.topbar.has-department-switch .department-context-switch span{font-size:.72rem!important;letter-spacing:.12em!important;color:var(--muted)!important}.topbar.has-department-switch .department-context-switch select{height:40px!important;min-height:40px!important;border-radius:999px!important;font-size:.95rem!important;font-weight:950!important;padding-left:14px!important;background:var(--surface-2)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.theme-switch{flex:0 0 auto!important}.user-chip{flex:0 0 auto!important}.topbar form[action="/logout"]{flex:0 0 auto!important}.content > .page-head .eyebrow{display:none!important}.content > .page-head{padding:30px!important;align-items:center!important;overflow:hidden!important}.content > .page-head h1{font-size:clamp(2.3rem,3.2vw,4rem)!important}.content > .page-head .muted{max-width:860px!important;font-size:1rem!important}

.smart-select-field{isolation:isolate!important}.smart-select-field label input[type="search"],.smart-select-field input[data-smart-select-search]{padding-right:42px!important;background-image:linear-gradient(135deg,rgba(200,16,46,.08),rgba(20,89,245,.05))!important}.smart-select-field::after{content:"⌕";position:absolute;right:15px;top:40px;color:var(--muted);font-weight:950;pointer-events:none}.smart-select-results{display:none!important;position:relative!important;z-index:8!important;margin-top:2px!important;border:1px solid rgba(116,132,154,.28)!important;border-radius:18px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 18px 42px rgba(15,23,42,.13)!important;padding:7px!important;max-height:320px!important;overflow:auto!important}.smart-select-field.is-open .smart-select-results,.smart-select-field.is-loading .smart-select-results{display:grid!important}.smart-select-field:not(.is-open) .smart-select-results{max-height:0!important;padding:0!important;border:0!important;overflow:hidden!important}.smart-select-option{background:#fff!important;border-color:rgba(116,132,154,.18)!important}.smart-select-option:hover,.smart-select-option:focus-visible,.smart-select-option.is-active{background:linear-gradient(135deg,rgba(200,16,46,.10),rgba(20,89,245,.07))!important;border-color:rgba(200,16,46,.32)!important}.smart-select-option.is-selected{background:linear-gradient(135deg,rgba(4,120,87,.12),rgba(20,89,245,.08))!important;border-color:rgba(4,120,87,.35)!important}body[data-theme="dark"] .smart-select-results{background:rgba(13,23,39,.98)!important;border-color:rgba(255,255,255,.12)!important;box-shadow:0 20px 50px rgba(0,0,0,.35)!important}body[data-theme="dark"] .smart-select-option{background:rgba(15,23,42,.88)!important;border-color:rgba(255,255,255,.08)!important}.person-choice[hidden]{display:none!important}.person-choice-grid:empty::after{content:"Keine Treffer.";display:block;padding:12px;color:var(--muted);font-weight:850}.person-picker-counter{padding-top:2px!important}
.status-training[data-status="Offen"],.status-training[data-status="In Prüfung"],.status-training[data-mode="pending"]{background:#fffbeb!important;color:#92400e!important}.status-training[data-status="Geplant"]{background:#eff6ff!important;color:#1d4ed8!important}.status-training[data-status="Genehmigt"],.status-training[data-status="Erledigt"],.status-training[data-mode="saved"]{background:#ecfdf5!important;color:#047857!important}.status-training[data-status="Abgelehnt"]{background:#fff1f2!important;color:#be123c!important}.autosave-state[data-mode="saving"],.autosave-state[data-mode="pending"]{color:#92400e!important}.autosave-state[data-mode="saved"]{color:#047857!important}.autosave-state[data-mode="error"]{color:#be123c!important}

.rp55-public{background:linear-gradient(180deg,#f7fafc 0%,#eef4f8 48%,#f8fafc 100%)!important}.rp55-public:before{opacity:.55!important;background-size:64px 64px!important}.rp55-public:after{background:linear-gradient(90deg,rgba(255,255,255,.82),rgba(255,255,255,.26) 45%,rgba(255,255,255,.80))!important}.rp55-nav,.rp55-hero,.rp55-section,.portal-footer{width:min(1480px,100%)!important}.rp55-hero{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(400px,.72fr)!important;gap:clamp(28px,4vw,56px)!important;align-items:stretch!important;padding:clamp(34px,5vw,70px)!important;border-radius:34px!important;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(241,246,252,.78))!important;border:1px solid rgba(116,132,154,.22)!important;box-shadow:0 30px 90px rgba(15,23,42,.13)!important}.rp55-hero-copy{max-width:860px!important}.rp55-kicker{width:max-content!important;max-width:100%!important;padding:8px 12px!important;border-radius:999px!important;border:1px solid rgba(200,16,46,.18)!important;background:rgba(255,241,242,.70)!important;color:#9f1239!important;font-weight:950!important}.rp55-hero h1{max-width:860px!important;font-size:clamp(3.1rem,6vw,6.2rem)!important;line-height:.94!important;letter-spacing:-.075em!important;color:#0f172a!important}.rp55-lead{max-width:760px!important;color:#475569!important;font-size:clamp(1.05rem,1.35vw,1.25rem)!important;font-weight:700!important}.rp55-trust-row{display:flex!important;gap:9px!important;flex-wrap:wrap!important;margin-top:22px!important}.rp55-trust-row span{border:1px solid rgba(116,132,154,.24)!important;background:rgba(255,255,255,.70)!important;color:#334155!important;border-radius:999px!important;padding:9px 12px!important;font-size:.86rem!important;font-weight:900!important}.rp55-hero-side{display:grid!important;gap:16px!important}.rp55-signin,.rp55-product-preview{background:rgba(255,255,255,.88)!important;border-color:rgba(116,132,154,.22)!important;box-shadow:0 22px 56px rgba(15,23,42,.10)!important}.rp55-proof{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.rp55-proof article{display:grid!important;gap:10px!important;align-content:start!important;min-height:180px!important;padding:22px!important;border-radius:24px!important;background:rgba(255,255,255,.82)!important;border:1px solid rgba(116,132,154,.22)!important;box-shadow:0 16px 45px rgba(15,23,42,.08)!important}.rp55-proof b{width:46px!important;height:46px!important;border-radius:16px!important;background:linear-gradient(135deg,#c8102e,#16233a)!important;color:#fff!important;display:grid!important;place-items:center!important}.rp55-proof strong{font-size:1.12rem!important;color:#0f172a!important}.rp55-proof span{color:#5b677a!important;line-height:1.55!important;font-weight:760!important}.rp55-ops-strip{display:grid!important;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)!important;gap:clamp(24px,4vw,56px)!important;align-items:center!important;background:linear-gradient(135deg,rgba(15,23,42,.96),rgba(13,25,46,.92))!important;color:#f8fafc!important;border-color:rgba(255,255,255,.08)!important;box-shadow:0 26px 82px rgba(15,23,42,.22)!important}.rp55-ops-strip .eyebrow,.rp55-ops-strip p{color:#cbd5e1!important}.rp55-ops-strip h2{color:#fff!important}.rp55-ops-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}.rp55-ops-grid article{display:grid!important;grid-template-rows:auto auto 1fr!important;gap:9px!important;padding:20px!important;border-radius:22px!important;background:rgba(255,255,255,.065)!important;border:1px solid rgba(255,255,255,.10)!important;min-height:170px!important}.rp55-ops-grid span{width:42px!important;height:42px!important;border-radius:14px!important;background:linear-gradient(135deg,#c8102e,#1459f5)!important;color:#fff!important;display:grid!important;place-items:center!important;font-size:.84rem!important;font-weight:950!important}.rp55-ops-grid strong{display:block!important;color:#fff!important;font-size:1.05rem!important}.rp55-ops-grid small{display:block!important;color:#cbd5e1!important;line-height:1.55!important;font-weight:760!important}.rp55-module-grid article,.rp55-security-grid article,.rp55-flow-grid article{border-color:rgba(116,132,154,.22)!important;background:rgba(255,255,255,.80)!important;box-shadow:0 14px 38px rgba(15,23,42,.07)!important}.rp55-security{display:grid!important;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)!important;gap:30px!important}.rp55-security-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}body[data-theme="dark"] .rp55-public{background:linear-gradient(180deg,#050a12 0%,#081424 55%,#060b13 100%)!important}body[data-theme="dark"] .rp55-public:after{background:linear-gradient(90deg,rgba(5,10,18,.38),rgba(5,10,18,.08),rgba(5,10,18,.42))!important}body[data-theme="dark"] .rp55-hero,body[data-theme="dark"] .rp55-signin,body[data-theme="dark"] .rp55-product-preview,body[data-theme="dark"] .rp55-proof article,body[data-theme="dark"] .rp55-module-grid article,body[data-theme="dark"] .rp55-security-grid article,body[data-theme="dark"] .rp55-flow-grid article{background:rgba(13,23,39,.86)!important;border-color:rgba(255,255,255,.10)!important;box-shadow:0 24px 70px rgba(0,0,0,.30)!important}body[data-theme="dark"] .rp55-hero h1,body[data-theme="dark"] .rp55-proof strong{color:#fff!important}body[data-theme="dark"] .rp55-lead,body[data-theme="dark"] .rp55-proof span{color:#a8b4c7!important}body[data-theme="dark"] .rp55-trust-row span{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.10)!important;color:#dce5f2!important}

.rp55-dashboard{display:grid!important;gap:22px!important}.rp55-dash-hero{position:relative!important;overflow:hidden!important;grid-template-columns:minmax(0,1fr) minmax(260px,380px)!important;padding:clamp(28px,4vw,48px)!important;border-radius:32px!important;background:linear-gradient(135deg,rgba(255,255,255,.90),rgba(239,246,255,.72))!important;border:1px solid rgba(116,132,154,.22)!important;box-shadow:0 24px 74px rgba(15,23,42,.11)!important}.rp55-dash-hero:before{content:"";position:absolute;right:-100px;top:-140px;width:330px;height:330px;border-radius:999px;background:radial-gradient(circle,rgba(200,16,46,.14),rgba(20,89,245,.12),transparent 70%);pointer-events:none}.rp55-dash-hero>*{position:relative;z-index:1}.rp55-dash-copy h1{max-width:840px!important;font-size:clamp(2.4rem,4.1vw,4.8rem)!important;line-height:.98!important}.rp55-dash-copy .muted{font-size:1.02rem!important;max-width:720px!important}.rp55-dash-tags{display:flex!important;gap:8px!important;flex-wrap:wrap!important}.rp55-dash-tags span{background:rgba(255,255,255,.68)!important;border:1px solid rgba(116,132,154,.22)!important;color:#334155!important;border-radius:999px!important;padding:8px 11px!important;font-weight:900!important}.rp55-dash-actions{align-content:center!important}.rp55-kpi-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;gap:14px!important}.rp55-kpi-card{border-radius:24px!important;background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(241,246,252,.72))!important;border:1px solid rgba(116,132,154,.20)!important;box-shadow:0 14px 40px rgba(15,23,42,.08)!important}.rp55-command-layout,.compact-dashboard-layout{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)!important;gap:22px!important}.rp55-data-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px!important}.rp55-focus-grid,.rp55-own-metrics{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(135px,1fr))!important;gap:12px!important}.rp55-focus-grid article,.rp55-own-metrics article{border-radius:18px!important;background:rgba(148,163,184,.08)!important;border:1px solid rgba(116,132,154,.17)!important;padding:16px!important}body[data-theme="dark"] .rp55-dash-hero{background:linear-gradient(135deg,rgba(15,23,42,.94),rgba(13,25,46,.76))!important;border-color:rgba(255,255,255,.10)!important;box-shadow:0 24px 74px rgba(0,0,0,.30)!important}body[data-theme="dark"] .rp55-dash-tags span{background:rgba(255,255,255,.065)!important;border-color:rgba(255,255,255,.10)!important;color:#dce5f2!important}body[data-theme="dark"] .rp55-kpi-card,body[data-theme="dark"] .rp55-focus-grid article,body[data-theme="dark"] .rp55-own-metrics article{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.08)!important}

body[data-theme="light"]{--bg:#f7fafc;--bg2:#edf3f8;--surface:rgba(255,255,255,.88);--surface-2:#ffffff;--text:#111827;--muted:#526173;--muted-2:#66758a;--line:#ccd7e5;--line-soft:rgba(15,23,42,.10);color-scheme:light}body[data-theme="light"] body:before{opacity:.65}body[data-theme="light"] .sidebar{background:linear-gradient(180deg,#0b1220,#101b2c)!important;border-right-color:rgba(15,23,42,.10)!important}body[data-theme="light"] .card,body[data-theme="light"] .toolbar,body[data-theme="light"] .table-wrap,body[data-theme="light"] .pagination{background:rgba(255,255,255,.88)!important;border-color:rgba(116,132,154,.22)!important;box-shadow:0 14px 42px rgba(15,23,42,.08)!important}body[data-theme="light"] input,body[data-theme="light"] select,body[data-theme="light"] textarea{background:#fff!important;border-color:#cbd7e5!important;color:#111827!important}body[data-theme="light"] th{background:#eef4fb!important;color:#526173!important}body[data-theme="light"] td{color:#172033!important}body[data-theme="light"] .muted{color:#526173!important}body[data-theme="light"] .btn:not(.primary):not(.danger){background:#fff!important;border-color:#c9d5e4!important;color:#172033!important}body[data-theme="light"] .pill,body[data-theme="light"] .role{background:#eef2ff!important;color:#3730a3!important}.btn.danger,.danger-zone .btn,.account-delete-card .btn{border-color:#fecdd3!important;background:#fff1f2!important;color:#be123c!important}.account-delete-card strong,.danger-zone strong{color:#be123c!important}

@media(max-width:1280px){.topbar{align-items:flex-start!important;flex-wrap:wrap!important}.topbar-title{min-width:0!important}.topbar-user{width:100%!important;justify-content:flex-start!important;flex-wrap:wrap!important}.topbar.has-department-switch .department-context-switch{flex:1 1 620px!important;max-width:100%!important;min-width:320px!important}.rp55-hero,.rp55-security,.rp55-ops-strip,.rp55-command-layout,.compact-dashboard-layout{grid-template-columns:1fr!important}.rp55-data-grid{grid-template-columns:1fr!important}.rp55-proof{grid-template-columns:1fr!important}.rp55-hero-side{grid-template-columns:1fr 1fr!important}.rp55-ops-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:860px){.topbar{padding:10px 12px!important;gap:10px!important}.topbar-title{width:auto!important}.topbar-logo{width:36px!important;height:36px!important}.topbar-user{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}.topbar.has-department-switch .department-context-switch{min-width:0!important;width:100%!important;max-width:100%!important;grid-template-columns:1fr!important;border-radius:18px!important}.theme-switch{justify-self:start!important}.user-chip{display:none!important}.content{padding:18px!important}.content > .page-head{padding:22px!important;border-radius:24px!important}.content > .page-head h1{font-size:clamp(2rem,9vw,3rem)!important}.rp55-public{padding:12px!important}.rp55-nav{position:relative!important;top:0!important;grid-template-columns:1fr!important;gap:12px!important}.rp55-nav-links{overflow-x:auto!important;justify-content:flex-start!important}.rp55-hero{grid-template-columns:1fr!important;padding:28px!important;border-radius:26px!important}.rp55-hero-side{grid-template-columns:1fr!important}.rp55-hero h1{font-size:clamp(2.5rem,12vw,4rem)!important}.rp55-ops-grid,.rp55-security-grid,.rp55-module-grid,.rp55-flow-grid{grid-template-columns:1fr!important}.rp55-section{padding:22px!important;border-radius:24px!important}.rp55-dash-hero{grid-template-columns:1fr!important;padding:24px!important;border-radius:26px!important}.rp55-dash-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}.rp55-dash-actions .btn{width:100%!important}.portal-footer{width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:14px!important}.portal-footer-links{justify-content:flex-start!important}.smart-select-results{max-height:260px!important}.picker-head{grid-template-columns:1fr!important}.person-choice-grid{grid-template-columns:1fr!important}}
@media(max-width:480px){.content{padding:12px!important}.topbar-eyebrow span:first-child{display:none!important}.topbar.has-department-switch .department-context-switch span{white-space:normal!important}.rp55-trust-row span,.rp55-hero-actions .btn,.rp55-nav-actions a{width:100%!important;justify-content:center!important;text-align:center!important}.rp55-proof article,.rp55-module-grid article,.rp55-security-grid article,.rp55-flow-grid article{padding:18px!important}.rp55-dash-copy h1{font-size:2.1rem!important}.topbar form[action="/logout"] .btn{width:100%!important}}
form[data-live-submit] button[type="submit"]{display:none!important}
form[data-live-submit]::after{content:"Treffer werden automatisch aktualisiert.";align-self:center;color:var(--muted);font-size:.82rem;font-weight:850}
@media(max-width:760px){form[data-live-submit]::after{font-size:.78rem;text-align:center}}

/* Retter-Portal v1.2.18 · sauberes Cache-Busting, echte Dropdown-Suche und Status-Lesbarkeit */
.topbar-title{
  flex:0 0 auto!important;
  min-width:0!important;
  max-width:clamp(190px,22vw,360px)!important;
}
.topbar-product{min-width:0!important;max-width:100%!important}
.topbar-eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  letter-spacing:.08em!important;
}
.topbar-eyebrow span,.topbar-eyebrow em{display:inline-block!important;min-width:0!important;font-style:normal!important;line-height:1.2!important}
.topbar-eyebrow span:first-child{letter-spacing:.11em!important;text-transform:uppercase!important;color:var(--muted)!important}
.topbar-eyebrow .topbar-version{letter-spacing:.06em!important;color:var(--text)!important;font-weight:950!important}
.topbar.has-department-switch .department-context-switch{
  flex:1 1 min(900px,62vw)!important;
  max-width:min(980px,68vw)!important;
  min-width:min(620px,56vw)!important;
}
.topbar.has-department-switch .department-context-switch select{font-size:1rem!important;letter-spacing:-.01em!important}
.status,.pill,.role{
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  min-width:max-content!important;
  line-height:1.15!important;
  text-align:center!important;
}
.status-training{transition:background-color .12s ease,color .12s ease,box-shadow .12s ease!important}
.status-training[data-mode="pending"]{box-shadow:0 0 0 3px rgba(245,158,11,.16)!important}
.status-training[data-mode="saved"]{box-shadow:0 0 0 3px rgba(16,185,129,.14)!important}
.training-status-autosave.is-autosaving select{box-shadow:0 0 0 3px rgba(245,158,11,.16)!important}
.smart-select-field{
  position:relative!important;
  overflow:visible!important;
  z-index:1!important;
}
.smart-select-field:focus-within{z-index:70!important}
.smart-select-results{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:calc(100% + 7px)!important;
  z-index:90!important;
  display:none!important;
  max-height:min(360px,48vh)!important;
  overflow:auto!important;
}
.smart-select-field.is-open .smart-select-results,.smart-select-field.is-loading .smart-select-results{display:grid!important}
.smart-select-field:not(.is-open) .smart-select-results{display:none!important;max-height:0!important;padding:0!important;border:0!important}
.smart-select-option{
  width:100%!important;
  text-align:left!important;
  display:grid!important;
  gap:3px!important;
  padding:10px 12px!important;
  border-radius:12px!important;
  min-height:44px!important;
}
.smart-select-empty{padding:11px 12px!important;color:var(--muted)!important;font-weight:850!important}
.form-grid,.inline-form,.toolbar,.card,.table-wrap{overflow:visible!important}
.table-wrap{overflow-x:auto!important;overflow-y:visible!important}
.rights-unlinked-details{display:block!important;padding:0!important;overflow:hidden!important}
.rights-unlinked-details summary{
  list-style:none!important;
  cursor:pointer!important;
  display:flex!important;
  justify-content:space-between!important;
  gap:14px!important;
  align-items:center!important;
  padding:14px 16px!important;
}
.rights-unlinked-details summary::-webkit-details-marker{display:none!important}
.rights-unlinked-details summary span{display:grid!important;gap:3px!important;min-width:0!important}
.rights-unlinked-details summary small{display:block!important;color:var(--muted)!important;font-weight:820!important;line-height:1.45!important}
.rights-unlinked-details summary em{font-style:normal!important;color:var(--primary)!important;font-weight:950!important;white-space:nowrap!important}
.rights-unlinked-details[open] summary em::before{content:"ausblenden"!important;font-style:normal!important}
.rights-unlinked-details[open] summary em{font-size:0!important}
.rights-unlinked-details[open] summary em::before{font-size:.9rem!important}
.rights-unlinked-details .rights-unlinked-list{padding:0 16px 16px!important;max-height:320px!important;overflow:auto!important}
.rp55-public .rp55-section.rp55-ops-strip{display:none!important}
body[data-theme="light"]{
  --bg:#f8fafc;
  --bg2:#eef4fb;
  --surface:rgba(255,255,255,.92);
  --surface-2:#ffffff;
  --text:#0f172a;
  --muted:#475569;
  --muted-2:#64748b;
  --line:#cbd5e1;
  --line-soft:rgba(15,23,42,.10);
}
body[data-theme="light"] .topbar{background:rgba(255,255,255,.84)!important;border-bottom-color:rgba(100,116,139,.20)!important}
body[data-theme="light"] .content > .page-head,body[data-theme="light"] .page-hero{background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(241,246,252,.84))!important;border-color:rgba(100,116,139,.22)!important}
body[data-theme="light"] .sidebar{background:linear-gradient(180deg,#09111f,#101b2d)!important;color:#eef4fb!important}
body[data-theme="light"] .sidebar nav a{color:#dbe5f2!important}
body[data-theme="light"] .sidebar nav a.active{color:#fff!important}
body[data-theme="light"] .rp55-public{background:linear-gradient(180deg,#f8fafc 0%,#eef4fb 54%,#f8fafc 100%)!important}
@media(max-width:1280px){
  .topbar-title{max-width:100%!important}
  .topbar.has-department-switch .department-context-switch{min-width:320px!important;max-width:100%!important;flex:1 1 640px!important}
}
@media(max-width:860px){
  .topbar-title{max-width:100%!important;width:100%!important}
  .topbar-eyebrow{font-size:.74rem!important}
  .topbar-user{width:100%!important}
  .smart-select-results{position:relative!important;top:auto!important;max-height:260px!important}
  .status,.pill,.role{min-width:auto!important;white-space:normal!important}
}
@media(max-width:480px){
  .topbar-eyebrow span:first-child{display:inline-block!important}
  .topbar-eyebrow{gap:5px!important;font-size:.68rem!important}
}

/* Retter-Portal v1.2.18 · Live-Suche ohne Seitenreload, Whitemode-Sidebar und einheitliche Dashboard-Kanten */
form[data-live-submit]{position:relative!important}
form[data-live-submit].is-live-loading{opacity:.94!important}
form[data-live-submit].is-live-loading::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,transparent,rgba(200,16,46,.08),transparent);pointer-events:none;animation:rp-live-sweep .9s linear infinite}
@keyframes rp-live-sweep{0%{transform:translateX(-60%)}100%{transform:translateX(60%)}}
.live-results{min-width:0!important;max-width:100%!important}
.live-results .flash[data-live-search-error]{margin:0 0 14px!important}
form[data-live-submit]::after{content:"Live-Suche aktiv"!important;align-self:center;color:var(--muted)!important;font-size:.78rem!important;font-weight:900!important;letter-spacing:.02em!important}

.topbar{align-items:center!important;gap:clamp(12px,1.5vw,24px)!important;overflow:visible!important}
.topbar-title{flex:0 0 auto!important;min-width:clamp(250px,24vw,390px)!important;max-width:420px!important;white-space:nowrap!important;overflow:visible!important}
.topbar-eyebrow{display:inline-flex!important;align-items:center!important;gap:9px!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;max-width:none!important;letter-spacing:.10em!important}
.topbar-eyebrow span:first-child{display:inline-block!important;letter-spacing:.12em!important}.topbar-eyebrow em{opacity:.85!important}.topbar-version{display:inline-block!important;min-width:max-content!important;letter-spacing:.05em!important;text-transform:uppercase!important}
.topbar-user{min-width:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex:1 1 auto!important}
.topbar.has-department-switch .department-context-switch{flex:1 1 780px!important;min-width:clamp(420px,44vw,760px)!important;max-width:min(860px,54vw)!important}
.topbar.has-department-switch .department-context-switch select{min-width:0!important;text-overflow:ellipsis!important}

body[data-theme="light"] .sidebar{background:linear-gradient(180deg,#ffffff 0%,#f7fafc 52%,#eef4fb 100%)!important;color:#162033!important;border-right-color:rgba(100,116,139,.24)!important;box-shadow:16px 0 46px rgba(15,23,42,.08)!important}
body[data-theme="light"] .sidebar:before{background:linear-gradient(90deg,#c8102e,#2563eb,#14b8a6)!important}
body[data-theme="light"] .brand{background:rgba(255,255,255,.48)!important;border:1px solid rgba(100,116,139,.14)!important;box-shadow:0 12px 28px rgba(15,23,42,.055)!important}
body[data-theme="light"] .brand-logo{filter:drop-shadow(0 8px 16px rgba(15,23,42,.10))!important}
body[data-theme="light"] .nav-section{color:#64748b!important}
body[data-theme="light"] .sidebar nav a{color:#334155!important;background:transparent!important}
body[data-theme="light"] .sidebar nav a span{color:#fff!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.20)!important}
body[data-theme="light"] .sidebar nav a:hover{background:rgba(200,16,46,.075)!important;color:#991b1b!important}
body[data-theme="light"] .sidebar nav a.active{background:linear-gradient(135deg,#c8102e,#b91c1c)!important;color:#fff!important;box-shadow:0 14px 30px rgba(200,16,46,.22)!important}

.rp55-dashboard .card,.rp55-kpi-card,.rp55-focus-card,.rp55-own-card,.rp55-table-card,.rp-feed-card{position:relative!important;overflow:hidden!important;border-radius:26px!important;border:1px solid rgba(118,134,157,.22)!important}
.rp55-dashboard .card::before,.rp55-kpi-card::before,.rp55-focus-card::before,.rp55-own-card::before,.rp55-table-card::before,.rp-feed-card::before{content:""!important;position:absolute!important;left:0!important;right:0!important;top:0!important;width:100%!important;height:4px!important;z-index:2!important;border-radius:26px 26px 0 0!important;background:linear-gradient(90deg,#c8102e 0%,#7c3aed 34%,#1459f5 68%,#14b8a6 100%)!important;opacity:1!important;pointer-events:none!important}
.rp55-kpi-card.red::before{background:linear-gradient(90deg,#c8102e,#ef4444)!important}.rp55-kpi-card.blue::before{background:linear-gradient(90deg,#2563eb,#38bdf8)!important}.rp55-kpi-card.teal::before{background:linear-gradient(90deg,#0f766e,#14b8a6)!important}.rp55-kpi-card.amber::before{background:linear-gradient(90deg,#d97706,#f59e0b)!important}.rp55-kpi-card.slate::before{background:linear-gradient(90deg,#475569,#94a3b8)!important}
.rp55-dashboard .card > *,.rp55-kpi-card > *{position:relative;z-index:1}.rp55-dashboard .card{padding-top:28px!important}.rp55-kpi-card{padding-top:24px!important}
body[data-theme="light"] .rp55-dashboard .card,body[data-theme="light"] .rp55-kpi-card{background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(245,249,253,.84))!important;border-color:rgba(100,116,139,.22)!important;box-shadow:0 14px 40px rgba(15,23,42,.075)!important}
body[data-theme="light"] .rp55-focus-grid article,body[data-theme="light"] .rp55-own-metrics article{background:rgba(241,246,252,.88)!important;border-color:rgba(100,116,139,.18)!important;color:#0f172a!important}
body[data-theme="light"] .rp55-focus-grid article span,body[data-theme="light"] .rp55-own-metrics article span{color:#475569!important}

.smart-select-field{position:relative!important;overflow:visible!important}.smart-select-results{position:absolute!important;top:calc(100% + 8px)!important;left:0!important;right:0!important;z-index:999!important;display:none!important;max-height:min(360px,46vh)!important;overflow:auto!important}.smart-select-field.is-open .smart-select-results,.smart-select-field.is-loading .smart-select-results{display:grid!important}.smart-select-option{cursor:pointer!important}.smart-select-native{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:.01!important;pointer-events:none!important}
.training-status-autosave select[data-pending="1"],.training-status-autosave.is-autosaving select{border-color:#f59e0b!important;box-shadow:0 0 0 3px rgba(245,158,11,.15)!important}.autosave-state[data-mode="saved"]{color:#059669!important}.autosave-state[data-mode="error"]{color:#dc2626!important}.autosave-state[data-mode="saving"]{color:#d97706!important}

@media(max-width:1280px){.topbar{flex-wrap:wrap!important;align-items:flex-start!important}.topbar-title{min-width:250px!important;max-width:none!important}.topbar-user{width:100%!important;justify-content:flex-start!important}.topbar.has-department-switch .department-context-switch{min-width:min(520px,100%)!important;max-width:100%!important;flex:1 1 680px!important}}
@media(max-width:860px){.topbar-title{min-width:0!important;width:auto!important}.topbar-eyebrow{font-size:.72rem!important;gap:6px!important}.topbar-user{display:grid!important;grid-template-columns:1fr!important}.topbar.has-department-switch .department-context-switch{min-width:0!important;width:100%!important;grid-template-columns:1fr!important;border-radius:18px!important}.smart-select-results{position:relative!important;top:auto!important;max-height:260px!important}.rp55-dashboard .card,.rp55-kpi-card{border-radius:22px!important}.rp55-dashboard .card::before,.rp55-kpi-card::before{border-radius:22px 22px 0 0!important}}
@media(max-width:480px){.topbar-title{display:flex!important}.topbar-eyebrow span:first-child{display:inline-block!important}.topbar-version{font-size:.68rem!important}.topbar-logo-pair{width:36px!important;height:36px!important;flex-basis:36px!important}}

/* Retter-Portal v1.2.19 · Präzisionspass: einheitliche Kanten, ruhige Live-Suche, lesbarer Header */
:root{--rp-stripe:linear-gradient(90deg,#c8102e 0%,#7c3aed 34%,#1459f5 68%,#14b8a6 100%)}
.content > .card,
.content > section.card,
.content > div.card,
.rp55-dashboard .card,
.rp55-kpi-card,
.rp55-focus-card,
.rp55-own-card,
.rp55-table-card,
.rp-feed-card,
.table-wrap.data-table-card,
.checks-table-wrap{
  position:relative!important;
  isolation:isolate!important;
  border-radius:26px!important;
  border:1px solid rgba(118,134,157,.22)!important;
  background-clip:padding-box!important;
}
.content > .card:not(.has-smart-select),
.content > section.card:not(.has-smart-select),
.content > div.card:not(.has-smart-select),
.rp55-dashboard .card:not(.has-smart-select),
.rp55-kpi-card,
.rp55-focus-card,
.rp55-own-card,
.rp55-table-card,
.rp-feed-card{
  overflow:hidden!important;
}
.content > .card::before,
.content > section.card::before,
.content > div.card::before,
.rp55-dashboard .card::before,
.rp55-kpi-card::before,
.rp55-focus-card::before,
.rp55-own-card::before,
.rp55-table-card::before,
.rp-feed-card::before,
.table-wrap.data-table-card::before,
.checks-table-wrap::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0 0 auto 0!important;
  width:100%!important;
  max-width:none!important;
  height:4px!important;
  min-height:4px!important;
  z-index:12!important;
  pointer-events:none!important;
  border:0!important;
  border-radius:26px 26px 0 0!important;
  background:var(--rp-stripe)!important;
  opacity:1!important;
  transform:none!important;
}
.content > .card.table-wrap::before,
.content > section.card.table-wrap::before,
.content > div.card.table-wrap::before,
.table-wrap.data-table-card::before,
.checks-table-wrap::before{
  position:sticky!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:30!important;
}
.content > .card > *,
.content > section.card > *,
.content > div.card > *,
.rp55-dashboard .card > *,
.rp55-kpi-card > *,
.rp55-focus-card > *,
.rp55-own-card > *,
.rp55-table-card > *,
.rp-feed-card > *{position:relative;z-index:1}
.card.has-smart-select,
.toolbar.has-smart-select,
.form-grid.has-smart-select,
.inline-form.has-smart-select{
  overflow:visible!important;
  z-index:50!important;
}
.card.has-smart-select::before{z-index:1!important}
.smart-select-field{position:relative!important;z-index:60!important}
.smart-select-field.is-open{z-index:1000!important}
.smart-select-results{
  border:1px solid rgba(118,134,157,.24)!important;
  border-radius:18px!important;
  background:rgba(248,251,255,.98)!important;
  box-shadow:0 22px 60px rgba(15,23,42,.18)!important;
  backdrop-filter:blur(18px) saturate(1.2)!important;
}
body[data-theme="dark"] .smart-select-results{background:rgba(10,18,31,.98)!important;border-color:rgba(255,255,255,.10)!important;box-shadow:0 26px 70px rgba(0,0,0,.38)!important}
.smart-select-option{width:100%!important;text-align:left!important;border:0!important;background:transparent!important;box-shadow:none!important;min-height:48px!important;justify-content:flex-start!important;border-radius:14px!important;white-space:normal!important;color:var(--text)!important}
.smart-select-option:hover,.smart-select-option.is-active{background:rgba(200,16,46,.08)!important;color:var(--text)!important;transform:none!important}
.smart-select-option.is-selected{background:linear-gradient(135deg,rgba(200,16,46,.13),rgba(20,89,245,.08))!important;border:1px solid rgba(200,16,46,.20)!important}
.smart-select-empty{padding:12px 14px!important;color:var(--muted)!important;font-weight:850!important}

/* Live-Suche bleibt ruhig: keine Vollseiten-Navigation, keine springenden Zusatztexte. */
form[data-live-submit]::after{content:none!important;display:none!important}
form[data-live-submit].is-live-loading::before{display:none!important;content:none!important}
form[data-live-submit].is-live-loading{opacity:1!important}
.live-results{contain:layout style!important}
.is-live-filter-hidden{display:none!important}
.local-filter-empty{margin:12px!important}

/* Tabellen- und Kartenköpfe überall gleichmäßig; alte doppelte Layer werden neutralisiert. */
.content > .card.table-wrap,
.content > section.card.table-wrap,
.content > div.card.table-wrap,
.table-wrap.data-table-card,
.checks-table-wrap{
  padding:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.070),rgba(255,255,255,.032)) left 4px/100% 58px no-repeat,
    linear-gradient(145deg,rgba(10,18,31,.82),rgba(8,15,27,.76))!important;
}
body[data-theme="light"] .content > .card.table-wrap,
body[data-theme="light"] .content > section.card.table-wrap,
body[data-theme="light"] .content > div.card.table-wrap,
body[data-theme="light"] .table-wrap.data-table-card,
body[data-theme="light"] .checks-table-wrap{
  background:
    linear-gradient(180deg,#eef3f9,#e2eaf4) left 4px/100% 58px no-repeat,
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(239,245,251,.90))!important;
}
.content > .card.table-wrap::after,
.content > section.card.table-wrap::after,
.content > div.card.table-wrap::after,
.table-wrap.data-table-card::after,
.checks-table-wrap::after{content:none!important;display:none!important}

/* Header: saubere Version und neutraler Nutzertyp statt Portalrang. */
.topbar-title{min-width:clamp(300px,26vw,430px)!important;max-width:460px!important}
.topbar-eyebrow{gap:10px!important;letter-spacing:.08em!important;align-items:center!important}
.topbar-eyebrow em{display:inline-flex!important;align-items:center!important;opacity:.72!important;margin:0 1px!important}
.topbar-version{letter-spacing:.04em!important;text-transform:none!important;white-space:nowrap!important}
.user-chip small{text-transform:uppercase!important;letter-spacing:.12em!important}
.topbar.has-department-switch .department-context-switch{min-width:clamp(500px,48vw,820px)!important;max-width:min(920px,58vw)!important}
.department-context-switch span{white-space:nowrap!important}
.department-context-switch select{font-weight:900!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

/* Status-Badges nicht mehr abgeschnitten. */
.status,.pill,.role{max-width:100%!important;min-width:max-content!important;white-space:nowrap!important;line-height:1.18!important;padding-inline:11px!important;overflow:visible!important}
.status-training[data-mode="pending"],.training-status-autosave select[data-pending="1"]{border-color:#f59e0b!important;box-shadow:0 0 0 3px rgba(245,158,11,.16)!important}
.status-training[data-mode="saved"]{border-color:rgba(5,150,105,.28)!important}

/* Whitemode final: Sidebar bleibt hell, klare Kontraste ohne dunkle Rückfälle. */
body[data-theme="light"] .sidebar{background:linear-gradient(180deg,#ffffff 0%,#f7fafc 55%,#eef4fb 100%)!important;color:#162033!important;border-right-color:rgba(100,116,139,.24)!important;box-shadow:16px 0 46px rgba(15,23,42,.08)!important}
body[data-theme="light"] .sidebar nav a{color:#334155!important;background:transparent!important;border-color:transparent!important}
body[data-theme="light"] .sidebar nav a span{color:#334155!important;background:#eef4fb!important;border-color:rgba(100,116,139,.24)!important}
body[data-theme="light"] .sidebar nav a:hover{background:rgba(200,16,46,.075)!important;color:#991b1b!important}
body[data-theme="light"] .sidebar nav a.active{background:linear-gradient(135deg,#c8102e,#b91c1c)!important;color:#fff!important;box-shadow:0 14px 30px rgba(200,16,46,.22)!important}
body[data-theme="light"] .sidebar nav a.active span{color:#fff!important;background:rgba(255,255,255,.16)!important;border-color:rgba(255,255,255,.18)!important}
body[data-theme="light"] .card,
body[data-theme="light"] .stat-card,
body[data-theme="light"] .toolbar,
body[data-theme="light"] .pagination,
body[data-theme="light"] .rp55-kpi-card,
body[data-theme="light"] .rp55-focus-card,
body[data-theme="light"] .rp55-own-card,
body[data-theme="light"] .rp55-table-card{
  color:#0f172a!important;
  border-color:rgba(100,116,139,.24)!important;
  box-shadow:0 14px 40px rgba(15,23,42,.075), inset 0 1px 0 rgba(255,255,255,.86)!important;
}

@media(max-width:1280px){
  .topbar{flex-wrap:wrap!important;align-items:flex-start!important}
  .topbar-title{min-width:260px!important;max-width:100%!important}
  .topbar-user{width:100%!important;justify-content:flex-start!important}
  .topbar.has-department-switch .department-context-switch{min-width:min(580px,100%)!important;max-width:100%!important;flex:1 1 760px!important}
}
@media(max-width:860px){
  .topbar{padding:12px 14px!important;gap:10px!important}
  .topbar-title{width:100%!important;min-width:0!important}
  .topbar-eyebrow{font-size:.72rem!important;gap:7px!important;white-space:normal!important}
  .topbar-user{display:grid!important;grid-template-columns:1fr!important;width:100%!important;gap:10px!important}
  .department-context-switch{grid-template-columns:1fr!important;width:100%!important;min-width:0!important}
  .smart-select-results{position:relative!important;top:auto!important;max-height:260px!important;margin-top:8px!important}
  .status,.pill,.role{min-width:0!important;white-space:normal!important;text-align:left!important}
}
@media(max-width:760px){
  .content > .card::before,
  .content > section.card::before,
  .content > div.card::before,
  .rp55-dashboard .card::before,
  .rp55-kpi-card::before{border-radius:22px 22px 0 0!important}
  .card.has-smart-select{overflow:visible!important}
}

/* Retter-Portal v1.2.20 · finaler Oberflächen-Audit: einheitliche Linien, volle Startseitenbreite, ruhige Suche */
:root{
  --rp-stripe-final:linear-gradient(90deg,#c8102e 0%,#a21caf 34%,#1459f5 68%,#14b8a6 100%);
  --rp-card-border:rgba(118,134,157,.24);
  --rp-card-border-dark:rgba(255,255,255,.10);
  --rp-content-max:1720px;
  --rp-public-max:1840px;
}
.content{width:min(var(--rp-content-max),100%)!important;padding-left:clamp(18px,1.8vw,34px)!important;padding-right:clamp(18px,1.8vw,34px)!important;}

/* Eine einzige, stabile Technik für obere Linien: keine Border-Images, keine Sticky-Pseudo-Striche. */
.card,
.stat-card,
.metric.card,
.page-hero,
.content > .page-head,
.table-wrap,
.rp55-dashboard .card,
.rp55-kpi-card,
.rp55-focus-card,
.rp55-own-card,
.rp55-table-card,
.rp-feed-card,
.checks-table-wrap,
.notice-soft,
.rights-explainer-card,
.rights-workbench-card,
.youth-calendar-card,
.youth-table-card{
  position:relative!important;
  isolation:isolate!important;
  border-color:var(--rp-card-border)!important;
  background-clip:padding-box!important;
}
body[data-theme="dark"] .card,
body[data-theme="dark"] .stat-card,
body[data-theme="dark"] .metric.card,
body[data-theme="dark"] .page-hero,
body[data-theme="dark"] .content > .page-head,
body[data-theme="dark"] .table-wrap,
body[data-theme="dark"] .rp55-dashboard .card,
body[data-theme="dark"] .rp55-kpi-card,
body[data-theme="dark"] .rp55-focus-card,
body[data-theme="dark"] .rp55-own-card,
body[data-theme="dark"] .rp55-table-card,
body[data-theme="dark"] .rp-feed-card,
body[data-theme="dark"] .checks-table-wrap,
body[data-theme="dark"] .notice-soft,
body[data-theme="dark"] .rights-explainer-card,
body[data-theme="dark"] .rights-workbench-card,
body[data-theme="dark"] .youth-calendar-card,
body[data-theme="dark"] .youth-table-card{border-color:var(--rp-card-border-dark)!important;}

.card::before,
.stat-card::before,
.metric.card::before,
.page-hero::before,
.content > .page-head::before,
.table-wrap::before,
.rp55-dashboard .card::before,
.rp55-kpi-card::before,
.rp55-focus-card::before,
.rp55-own-card::before,
.rp55-table-card::before,
.rp-feed-card::before,
.checks-table-wrap::before,
.notice-soft::before,
.rights-explainer-card::before,
.rights-workbench-card::before,
.youth-calendar-card::before,
.youth-table-card::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:auto!important;
  max-width:none!important;
  height:4px!important;
  min-height:4px!important;
  background:var(--rp-stripe-final)!important;
  border:0!important;
  border-radius:inherit!important;
  border-bottom-left-radius:0!important;
  border-bottom-right-radius:0!important;
  transform:none!important;
  opacity:1!important;
  z-index:0!important;
  pointer-events:none!important;
}
.card::after,
.stat-card::after,
.metric.card::after,
.table-wrap::after,
.checks-table-wrap::after,
.rights-explainer-card::after,
.rights-workbench-card::after,
.youth-calendar-card::after,
.youth-table-card::after{content:none!important;display:none!important;}
.card > *,
.stat-card > *,
.metric.card > *,
.page-hero > *,
.content > .page-head > *,
.table-wrap > *,
.rp55-dashboard .card > *,
.rp55-kpi-card > *,
.rp55-focus-card > *,
.rp55-own-card > *,
.rp55-table-card > *,
.rp-feed-card > *,
.checks-table-wrap > *,
.notice-soft > *,
.rights-explainer-card > *,
.rights-workbench-card > *,
.youth-calendar-card > *,
.youth-table-card > *{position:relative!important;z-index:1!important;}

/* Karten, die früher absichtlich transparent gemacht wurden, bekommen wieder sauberen Innenabstand und können keine Überschriften abschneiden. */
.rights-explainer-card,
.rights-workbench-card{
  padding:26px 28px!important;
  border:1px solid var(--rp-card-border)!important;
  border-radius:26px!important;
  background:var(--surface)!important;
  box-shadow:var(--shadow-sm)!important;
  overflow:visible!important;
}
body[data-theme="dark"] .rights-explainer-card,
body[data-theme="dark"] .rights-workbench-card{border-color:var(--rp-card-border-dark)!important;background:rgba(16,25,41,.84)!important;}
.rights-explainer-card .card-head,
.rights-workbench-card .card-head{padding-top:2px!important;}
.rights-principle-grid{overflow:visible!important;}
.rights-principle-grid article{min-width:0!important;overflow:visible!important;}
.rights-principle-grid strong,
.rights-principle-grid small{overflow-wrap:anywhere!important;}

/* Tabellensurfaces: Linie bleibt oben stehen, Tabelleninhalt darf horizontal scrollen, ohne dass Texte gequetscht werden. */
.table-wrap,
.checks-table-wrap{overflow-x:auto!important;overflow-y:visible!important;border-radius:26px!important;padding-top:4px!important;}
.table-wrap table{margin-top:0!important;}
th,td{overflow-wrap:normal!important;word-break:normal!important;}
td strong,th{hyphens:auto;}
.table-wrap .btn{white-space:nowrap!important;}

/* Status/Pills: volle Lesbarkeit, kein Abschneiden bei „In Prüfung“. */
.status,.pill,.role{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:fit-content!important;
  max-width:100%!important;
  min-height:34px!important;
  padding:7px 12px!important;
  white-space:normal!important;
  overflow:visible!important;
  text-align:center!important;
  line-height:1.15!important;
  hyphens:none!important;
}
.status-training{transition:background-color .12s ease,color .12s ease,box-shadow .12s ease,border-color .12s ease!important;}
.status-training[data-status="Offen"],.status-training[data-status="In Prüfung"],.status-training[data-mode="pending"]{background:#fffbeb!important;color:#92400e!important;}
.status-training[data-status="Geplant"]{background:#eff6ff!important;color:#1d4ed8!important;}
.status-training[data-status="Genehmigt"],.status-training[data-status="Erledigt"],.status-training[data-mode="saved"]{background:#ecfdf5!important;color:#047857!important;}
.status-training[data-status="Abgelehnt"]{background:#fff1f2!important;color:#be123c!important;}

/* Header: Feuerwehr-Auswahl wieder kompakt, aber lesbar. */
.topbar{gap:14px!important;}
.topbar-title{min-width:clamp(280px,22vw,380px)!important;max-width:420px!important;}
.topbar-eyebrow{display:flex!important;flex-wrap:nowrap!important;gap:8px!important;align-items:center!important;letter-spacing:.09em!important;white-space:nowrap!important;}
.topbar-eyebrow span:first-child{white-space:nowrap!important;}
.topbar-version{white-space:nowrap!important;letter-spacing:.035em!important;}
@media(min-width:861px){
  .topbar-user{flex:1 1 auto!important;justify-content:flex-end!important;min-width:0!important;}
  .topbar.has-department-switch .department-context-switch,
  .department-context-switch{
    flex:0 1 clamp(420px,34vw,660px)!important;
    min-width:clamp(360px,28vw,500px)!important;
    max-width:660px!important;
    grid-template-columns:auto minmax(220px,1fr)!important;
  }
  .department-context-switch select{min-width:0!important;}
}

/* Öffentliche Startseite: breiter, ruhiger, seriöser auf großen Monitoren. */
.rp55-public{padding:clamp(18px,2vw,34px)!important;}
.rp55-nav,
.rp55-hero,
.rp55-section,
.rp55-public .portal-footer{width:min(var(--rp-public-max),100%)!important;max-width:var(--rp-public-max)!important;}
.rp55-hero{grid-template-columns:minmax(0,1.08fr) minmax(410px,.72fr)!important;gap:clamp(34px,4.2vw,78px)!important;margin-top:clamp(34px,4vw,76px)!important;}
.rp55-hero-copy{max-width:980px!important;}
.rp55-hero h1{max-width:960px!important;}
.rp55-lead{max-width:880px!important;}
.rp55-section{margin-top:clamp(22px,2vw,34px)!important;}
.rp55-modules .rp55-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.rp55-security{grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr)!important;}
.rp55-security-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.rp55-security-grid article,.rp55-module-grid article,.rp55-proof article,.rp55-flow-grid article{min-width:0!important;overflow:hidden!important;}
.rp55-security-grid strong,.rp55-security-grid span,.rp55-module-grid strong,.rp55-module-grid p{overflow-wrap:anywhere!important;}
.rp55-public .portal-footer{margin-left:auto!important;margin-right:auto!important;}

/* Whitemode: klare Flächen, Sidebar wirklich hell und dennoch kontrastreich. */
body[data-theme="light"]{
  --surface:rgba(255,255,255,.88);
  --surface-2:#ffffff;
  --line:#cad7e5;
  --line-soft:rgba(100,116,139,.16);
  --muted:#536173;
  --muted-2:#69778a;
}
body[data-theme="light"] .topbar{background:rgba(248,250,252,.86)!important;border-bottom-color:rgba(100,116,139,.20)!important;}
body[data-theme="light"] .sidebar{background:linear-gradient(180deg,#ffffff 0%,#f7fafc 58%,#eef4fb 100%)!important;color:#172033!important;}
body[data-theme="light"] .card,
body[data-theme="light"] .stat-card,
body[data-theme="light"] .metric.card,
body[data-theme="light"] .table-wrap,
body[data-theme="light"] .content > .page-head,
body[data-theme="light"] .page-hero{background-color:rgba(255,255,255,.90)!important;}
body[data-theme="light"] .muted{color:#536173!important;}
body[data-theme="light"] input,
body[data-theme="light"] select,
body[data-theme="light"] textarea{background:#fff!important;border-color:#c8d5e3!important;color:#0f172a!important;}

/* Live-Suche: kein visueller Sweep, kein Höhenruckeln, Trefferbereiche bleiben stabil. */
form[data-live-submit]::after,
form[data-live-submit]::before,
form[data-live-submit].is-live-loading::before{display:none!important;content:none!important;}
form[data-live-submit].is-live-loading{opacity:1!important;}
.live-results{contain:layout style!important;min-height:0!important;}
.instant-local-filter input[type="search"]{transition:border-color .12s ease,box-shadow .12s ease!important;}
.local-filter-empty{margin:14px 0!important;padding:16px!important;border-radius:16px!important;border:1px dashed var(--line)!important;color:var(--muted)!important;font-weight:850!important;}

/* Smart-Auswahl wie eine echte Sofortsuche: Dropdown bleibt über Karten, ohne Layout der Seite zu verschieben. */
.smart-select-field{position:relative!important;overflow:visible!important;}
.smart-select-field.is-open{z-index:2000!important;}
.smart-select-results{position:absolute!important;top:calc(100% + 8px)!important;left:0!important;right:0!important;z-index:2000!important;display:none!important;max-height:min(380px,48vh)!important;overflow:auto!important;}
.smart-select-field.is-open .smart-select-results,.smart-select-field.is-loading .smart-select-results{display:grid!important;}
.smart-select-option{min-height:46px!important;}

@media(max-width:1280px){
  .rp55-hero{grid-template-columns:1fr!important;}
  .rp55-hero-side{grid-template-columns:1fr 1fr!important;}
  .rp55-security{grid-template-columns:1fr!important;}
  .rp55-modules .rp55-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:860px){
  .content{padding:16px!important;}
  .topbar-title{width:100%!important;min-width:0!important;max-width:100%!important;}
  .topbar-eyebrow{white-space:normal!important;}
  .topbar-user{display:grid!important;grid-template-columns:1fr!important;width:100%!important;}
  .department-context-switch{width:100%!important;min-width:0!important;max-width:100%!important;grid-template-columns:1fr!important;}
  .smart-select-results{position:relative!important;top:auto!important;max-height:280px!important;margin-top:8px!important;}
  .rights-explainer-card,.rights-workbench-card{padding:22px!important;border-radius:22px!important;}
  .rights-principle-grid,.rp55-security-grid,.rp55-modules .rp55-module-grid,.rp55-proof,.rp55-flow-grid{grid-template-columns:1fr!important;}
  .rp55-public{padding:12px!important;}
  .rp55-hero-side{grid-template-columns:1fr!important;}
  .rp55-nav,.rp55-hero,.rp55-section,.rp55-public .portal-footer{width:100%!important;}
  .table-wrap{border-radius:22px!important;}
}

/* v1.2.20 · Spezifitäts-Sperre gegen ältere Linienregeln */
.content > .card::before,
.content > section.card::before,
.content > div.card::before,
.content > .card.table-wrap::before,
.content > section.card.table-wrap::before,
.content > div.card.table-wrap::before,
.table-wrap.data-table-card::before,
.checks-table-wrap::before,
.rp55-dashboard .card::before,
.rp55-kpi-card::before,
.rp55-focus-card::before,
.rp55-own-card::before,
.rp55-table-card::before,
.rp-feed-card::before,
.rights-explainer-card::before,
.rights-workbench-card::before,
.youth-calendar-card::before,
.youth-table-card::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:auto!important;
  height:4px!important;
  min-height:4px!important;
  z-index:0!important;
  background:var(--rp-stripe-final)!important;
  border:0!important;
  border-radius:inherit!important;
  border-bottom-left-radius:0!important;
  border-bottom-right-radius:0!important;
  transform:none!important;
  opacity:1!important;
  pointer-events:none!important;
}
.content > .card:not(.has-smart-select),
.content > section.card:not(.has-smart-select),
.content > div.card:not(.has-smart-select),
.rp55-dashboard .card:not(.has-smart-select),
.rp55-kpi-card,
.rp55-focus-card,
.rp55-own-card,
.rp55-table-card,
.rp-feed-card{overflow:visible!important;}
.content > .card.table-wrap,
.content > section.card.table-wrap,
.content > div.card.table-wrap,
.table-wrap.data-table-card,
.checks-table-wrap{overflow-x:auto!important;overflow-y:visible!important;padding-top:4px!important;}
.content > .card > *,
.content > section.card > *,
.content > div.card > *,
.content > .card.table-wrap > *,
.content > section.card.table-wrap > *,
.content > div.card.table-wrap > *{position:relative!important;z-index:1!important;}

/* v1.2.21 · Einheitliche Kartenlinien, PSA und stabile Oberflächen */
:root{--rp-stripe-final:linear-gradient(90deg,#c8102e 0%,#d21d51 22%,#7c3aed 46%,#2563eb 72%,#14b8a6 100%);}
.card,
.stat-card,
.page-hero,
.table-wrap,
.toolbar,
.pagination,
.entity-card,
.notice,
.notice-soft,
.checks-table-wrap,
.rights-explainer-card,
.rights-workbench-card,
.youth-calendar-card,
.youth-table-card,
.rp55-kpi-card,
.rp55-focus-card,
.rp55-own-card,
.rp55-table-card,
.rp-feed-card,
.rp55-dashboard .card{
  position:relative!important;
  isolation:isolate!important;
  border:1px solid var(--line-soft)!important;
  box-shadow:0 18px 56px rgba(15,23,42,.10)!important;
  background-clip:padding-box!important;
}
body[data-theme="dark"] .card,
body[data-theme="dark"] .stat-card,
body[data-theme="dark"] .page-hero,
body[data-theme="dark"] .table-wrap,
body[data-theme="dark"] .toolbar,
body[data-theme="dark"] .pagination,
body[data-theme="dark"] .entity-card,
body[data-theme="dark"] .notice,
body[data-theme="dark"] .notice-soft,
body[data-theme="dark"] .checks-table-wrap,
body[data-theme="dark"] .rights-explainer-card,
body[data-theme="dark"] .rights-workbench-card,
body[data-theme="dark"] .youth-calendar-card,
body[data-theme="dark"] .youth-table-card,
body[data-theme="dark"] .rp55-kpi-card,
body[data-theme="dark"] .rp55-focus-card,
body[data-theme="dark"] .rp55-own-card,
body[data-theme="dark"] .rp55-table-card,
body[data-theme="dark"] .rp-feed-card,
body[data-theme="dark"] .rp55-dashboard .card{
  border-color:rgba(255,255,255,.09)!important;
  box-shadow:0 18px 60px rgba(0,0,0,.22)!important;
}
.card::before,
.stat-card::before,
.page-hero::before,
.table-wrap::before,
.toolbar::before,
.pagination::before,
.entity-card::before,
.notice::before,
.notice-soft::before,
.checks-table-wrap::before,
.rights-explainer-card::before,
.rights-workbench-card::before,
.youth-calendar-card::before,
.youth-table-card::before,
.rp55-kpi-card::before,
.rp55-focus-card::before,
.rp55-own-card::before,
.rp55-table-card::before,
.rp-feed-card::before,
.rp55-dashboard .card::before{
  content:""!important;
  position:absolute!important;
  top:-1px!important;
  left:-1px!important;
  right:-1px!important;
  width:auto!important;
  height:4px!important;
  min-height:4px!important;
  background:var(--rp-stripe-final)!important;
  border:0!important;
  border-radius:inherit!important;
  border-bottom-left-radius:0!important;
  border-bottom-right-radius:0!important;
  opacity:1!important;
  transform:none!important;
  z-index:5!important;
  pointer-events:none!important;
}
.card > *,
.stat-card > *,
.page-hero > *,
.table-wrap > *,
.toolbar > *,
.pagination > *,
.entity-card > *,
.notice > *,
.notice-soft > *,
.checks-table-wrap > *,
.rights-explainer-card > *,
.rights-workbench-card > *,
.youth-calendar-card > *,
.youth-table-card > *,
.rp55-kpi-card > *,
.rp55-focus-card > *,
.rp55-own-card > *,
.rp55-table-card > *,
.rp-feed-card > *,
.rp55-dashboard .card > *{
  position:relative!important;
  z-index:6!important;
}
.card,
.stat-card,
.page-hero,
.toolbar,
.pagination,
.entity-card,
.notice,
.notice-soft,
.rp55-kpi-card,
.rp55-focus-card,
.rp55-own-card,
.rp55-table-card,
.rp-feed-card,
.rp55-dashboard .card{
  overflow:visible!important;
  padding-top:max(var(--rp-card-top-pad,22px),24px)!important;
}
.table-wrap,
.checks-table-wrap,
.card.table-wrap,
section.card.table-wrap,
div.card.table-wrap{
  overflow-x:auto!important;
  overflow-y:visible!important;
  padding-top:4px!important;
  border-radius:26px!important;
}
.table-wrap table,
.card.table-wrap table,
section.card.table-wrap table,
div.card.table-wrap table{
  margin:0!important;
  border-radius:0!important;
}
.table-wrap thead th:first-child{border-top-left-radius:0!important;}
.table-wrap thead th:last-child{border-top-right-radius:0!important;}
.page-head{padding-inline:0!important;overflow:visible!important;}
.page-head h1,.page-hero h1,.card h2,.card h3{overflow:visible!important;line-height:1.12!important;padding-bottom:.02em!important;}
.card-head{padding-top:0!important;min-height:0!important;}
.card-head h2{min-width:0!important;}
.status,.pill,.role{white-space:nowrap!important;min-width:max-content!important;max-width:100%!important;overflow:visible!important;}
.department-context-switch{max-width:540px!important;min-width:min(440px,42vw)!important;}
.department-context-switch select{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.personnel-psa-card .psa-actions-grid{align-items:start;}
.personnel-psa-card h3{font-size:1.02rem;margin:0 0 8px;}
.personnel-psa-card .psa-assign-form,
.personnel-psa-card .psa-create-form{padding:16px;border:1px solid var(--line-soft);border-radius:20px;background:rgba(148,163,184,.08);}
body[data-theme="dark"] .personnel-psa-card .psa-assign-form,
body[data-theme="dark"] .personnel-psa-card .psa-create-form{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.08);}
body[data-theme="light"] .sidebar{background:linear-gradient(180deg,#fff 0%,#f8fbff 62%,#eef4fb 100%)!important;border-right-color:#d4dfeb!important;}
body[data-theme="light"] .sidebar nav a{color:#334155!important;}
body[data-theme="light"] .sidebar nav a:hover{background:#eef4fb!important;color:#0f172a!important;}
@media(max-width:1180px){.department-context-switch{min-width:360px!important;max-width:480px!important;}}
@media(max-width:860px){
  .department-context-switch{min-width:0!important;max-width:none!important;width:100%!important;}
  .card,.stat-card,.page-hero,.toolbar,.pagination,.entity-card,.notice,.notice-soft,.rp55-dashboard .card{border-radius:22px!important;}
  .table-wrap,.checks-table-wrap,.card.table-wrap{border-radius:20px!important;}
  .personnel-psa-card .psa-actions-grid{grid-template-columns:1fr!important;}
  .status,.pill,.role{white-space:normal!important;min-width:0!important;}
}

/* v1.2.22 · Notbremse für Linien/Striche + globaler Overflow-Fix
   Keine dekorativen Farbstriche mehr im internen Portal. Dadurch können keine
   doppelten, abgeschnittenen oder versetzten Linien mehr entstehen. */
:root{
  --rp-safe-border:rgba(100,116,139,.18);
  --rp-safe-border-dark:rgba(255,255,255,.09);
}
html,body{
  width:100%;
  max-width:100%;
  overflow-x:hidden!important;
}
body{overscroll-behavior-x:none;}
.app-shell,.main,.content,.page-shell,.dashboard-grid,.grid,.stat-grid,.form-grid,.entity-grid{
  min-width:0!important;
  max-width:100%!important;
}
.content{
  overflow-x:hidden!important;
}

/* Striche konsequent entfernen. Die normale Border bleibt erhalten. */
.card::before,.card::after,
.stat-card::before,.stat-card::after,
.metric.card::before,.metric.card::after,
.page-hero::before,.page-hero::after,
.content>.page-head::before,.content>.page-head::after,
.table-wrap::before,.table-wrap::after,
.toolbar::before,.toolbar::after,
.pagination::before,.pagination::after,
.entity-card::before,.entity-card::after,
.notice::before,.notice::after,
.notice-soft::before,.notice-soft::after,
.checks-table-wrap::before,.checks-table-wrap::after,
.rights-explainer-card::before,.rights-explainer-card::after,
.rights-workbench-card::before,.rights-workbench-card::after,
.youth-calendar-card::before,.youth-calendar-card::after,
.youth-table-card::before,.youth-table-card::after,
.rp55-kpi-card::before,.rp55-kpi-card::after,
.rp55-focus-card::before,.rp55-focus-card::after,
.rp55-own-card::before,.rp55-own-card::after,
.rp55-table-card::before,.rp55-table-card::after,
.rp-feed-card::before,.rp-feed-card::after,
.rp55-dashboard .card::before,.rp55-dashboard .card::after,
.data-table-card::before,.data-table-card::after,
.personnel-psa-card::before,.personnel-psa-card::after{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  min-height:0!important;
  background:none!important;
  border:0!important;
  opacity:0!important;
}
.card,.stat-card,.metric.card,.page-hero,.table-wrap,.toolbar,.pagination,.entity-card,.notice,.notice-soft,
.checks-table-wrap,.rights-explainer-card,.rights-workbench-card,.youth-calendar-card,.youth-table-card,
.rp55-kpi-card,.rp55-focus-card,.rp55-own-card,.rp55-table-card,.rp-feed-card,.rp55-dashboard .card,
.data-table-card,.personnel-psa-card{
  border:1px solid var(--rp-safe-border)!important;
  overflow:hidden!important;
  background-clip:border-box!important;
  padding-top:var(--rp-card-reset-pad,22px)!important;
}
body[data-theme="dark"] .card,body[data-theme="dark"] .stat-card,body[data-theme="dark"] .metric.card,
body[data-theme="dark"] .page-hero,body[data-theme="dark"] .table-wrap,body[data-theme="dark"] .toolbar,
body[data-theme="dark"] .pagination,body[data-theme="dark"] .entity-card,body[data-theme="dark"] .notice,
body[data-theme="dark"] .notice-soft,body[data-theme="dark"] .checks-table-wrap,
body[data-theme="dark"] .rights-explainer-card,body[data-theme="dark"] .rights-workbench-card,
body[data-theme="dark"] .youth-calendar-card,body[data-theme="dark"] .youth-table-card,
body[data-theme="dark"] .rp55-kpi-card,body[data-theme="dark"] .rp55-focus-card,
body[data-theme="dark"] .rp55-own-card,body[data-theme="dark"] .rp55-table-card,
body[data-theme="dark"] .rp-feed-card,body[data-theme="dark"] .rp55-dashboard .card,
body[data-theme="dark"] .data-table-card,body[data-theme="dark"] .personnel-psa-card{
  border-color:var(--rp-safe-border-dark)!important;
}
.card>*,.stat-card>*,.metric.card>*,.page-hero>*,.table-wrap>*,.toolbar>*,.pagination>*,.entity-card>*,.notice>*,.notice-soft>*,
.checks-table-wrap>*,.rights-explainer-card>*,.rights-workbench-card>*,.youth-calendar-card>*,.youth-table-card>*,
.rp55-kpi-card>*,.rp55-focus-card>*,.rp55-own-card>*,.rp55-table-card>*,.rp-feed-card>*,.rp55-dashboard .card>*,
.data-table-card>*,.personnel-psa-card>*{
  position:relative!important;
  z-index:auto!important;
  min-width:0!important;
  max-width:100%!important;
}

/* Tabellen dürfen nicht mehr eine zweite horizontale Seiten-Scrollbar erzeugen. */
.table-wrap,.checks-table-wrap,.card.table-wrap,section.card.table-wrap,div.card.table-wrap,.data-table-card{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  padding:0!important;
  border-radius:26px!important;
}
table,.table-wrap table,.checks-table-wrap table,.data-table-card table{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  table-layout:auto!important;
  border-collapse:collapse!important;
}
th,td{
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto!important;
}
td .btn,td button,td a.btn,.table-wrap .btn{
  white-space:normal!important;
  min-width:0!important;
  max-width:100%!important;
}
.status,.pill,.role,.badge{
  white-space:normal!important;
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:break-word!important;
}

/* Formulare, Suchleisten und Header dürfen den Inhalt nicht seitlich sprengen. */
input,select,textarea,button,.btn,.toolbar form,.inline-form,.form-actions,.actions,.hero-actions,.card-head{
  min-width:0!important;
  max-width:100%!important;
}
.department-context-switch{
  flex:0 1 520px!important;
  min-width:min(380px,34vw)!important;
  max-width:520px!important;
}
.department-context-switch select{
  min-width:0!important;
  width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

/* Smart-Suche bleibt als Overlay, aber sprengt keine Karten und erzeugt keine Layout-Sprünge. */
.card.has-smart-select,.smart-select-field,.smart-select-field.is-open{
  overflow:visible!important;
}
.smart-select-results{
  max-width:min(100%,720px)!important;
  box-sizing:border-box!important;
}

@media(max-width:1180px){
  .department-context-switch{min-width:min(320px,42vw)!important;max-width:460px!important;}
  th,td{padding:11px 10px!important;}
}
@media(max-width:860px){
  html,body,.app-shell,.main,.content{overflow-x:hidden!important;}
  .content{padding-inline:14px!important;}
  .department-context-switch{width:100%!important;min-width:0!important;max-width:none!important;grid-template-columns:1fr!important;}
  .table-wrap,.checks-table-wrap,.card.table-wrap,.data-table-card{border-radius:20px!important;}
  table,.table-wrap table,.checks-table-wrap table,.data-table-card table{font-size:.92rem!important;}
  th,td{padding:10px 8px!important;}
  .page-hero,.card,.stat-card,.toolbar,.pagination,.entity-card,.notice,.notice-soft{border-radius:22px!important;}
}

/* v1.2.23 · Finale Strich-Entfernung global im Portal
   Alle dekorativen Farbstriche, Border-Images und dadurch entstandenen Abstände werden im eingeloggten Portal entfernt. */
html,body{max-width:100%!important;overflow-x:hidden!important;}
body{overscroll-behavior-x:none!important;}
.app-shell,.main,.content,.page-head,.page-hero,.card,.stat-card,.toolbar,.pagination,.table-wrap,
.grid,.stat-grid,.entity-grid,.form-grid,.detail-grid,.info-grid,
.rp55-dashboard,.rp55-command-layout,.rp55-data-grid,.rp55-kpi-grid,.rp55-focus-grid,.rp55-own-metrics{
  min-width:0!important;
  max-width:100%!important;
}
.main,.content{overflow-x:hidden!important;}

/* Sidebar-Strich oben endgültig entfernen. */
.sidebar::before,
.sidebar::after{
  content:none!important;
  display:none!important;
  height:0!important;
  width:0!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
}
.brand{padding-top:8px!important;}

/* Im Portalinhalt keine dekorativen Pseudo-Elemente mehr. */
.content *::before,
.content *::after,
.topbar *::before,
.topbar *::after,
.app-footer *::before,
.app-footer *::after{
  content:none!important;
  display:none!important;
  position:static!important;
  inset:auto!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* Keine farbigen Border-Images / Top-Borders mehr auf Karten, Tabellen und Modulen. */
.content *,
.content > *,
.content .card,
.content .stat-card,
.content .table-wrap,
.content .toolbar,
.content .pagination,
.content .entity-card,
.content .notice,
.content .notice-soft,
.content .page-head,
.content .page-hero,
.content .rp55-kpi-card,
.content .rp55-focus-card,
.content .rp55-own-card,
.content .rp55-table-card,
.content .rp-feed-card,
.content .rights-explainer-card,
.content .rights-workbench-card,
.content .rights-note-card,
.content .rights-teaser-card,
.content .youth-calendar-card,
.content .youth-table-card,
.content .attachment-card,
.content .data-table-card,
.content .checks-table-wrap,
.content .personnel-psa-card{
  border-image:none!important;
  background-clip:padding-box!important;
}
.content .card,
.content .stat-card,
.content .table-wrap,
.content .toolbar,
.content .pagination,
.content .entity-card,
.content .notice,
.content .notice-soft,
.content .page-head,
.content .page-hero,
.content .rp55-kpi-card,
.content .rp55-focus-card,
.content .rp55-own-card,
.content .rp55-table-card,
.content .rp-feed-card,
.content .rights-explainer-card,
.content .rights-workbench-card,
.content .rights-note-card,
.content .rights-teaser-card,
.content .youth-calendar-card,
.content .youth-table-card,
.content .attachment-card,
.content .data-table-card,
.content .checks-table-wrap,
.content .personnel-psa-card{
  border-top-width:1px!important;
  border-top-style:solid!important;
  border-top-color:var(--line-soft)!important;
}
body[data-theme="dark"] .content .card,
body[data-theme="dark"] .content .stat-card,
body[data-theme="dark"] .content .table-wrap,
body[data-theme="dark"] .content .toolbar,
body[data-theme="dark"] .content .pagination,
body[data-theme="dark"] .content .entity-card,
body[data-theme="dark"] .content .notice,
body[data-theme="dark"] .content .notice-soft,
body[data-theme="dark"] .content .page-head,
body[data-theme="dark"] .content .page-hero,
body[data-theme="dark"] .content .rp55-kpi-card,
body[data-theme="dark"] .content .rp55-focus-card,
body[data-theme="dark"] .content .rp55-own-card,
body[data-theme="dark"] .content .rp55-table-card,
body[data-theme="dark"] .content .rp-feed-card,
body[data-theme="dark"] .content .rights-explainer-card,
body[data-theme="dark"] .content .rights-workbench-card,
body[data-theme="dark"] .content .rights-note-card,
body[data-theme="dark"] .content .rights-teaser-card,
body[data-theme="dark"] .content .youth-calendar-card,
body[data-theme="dark"] .content .youth-table-card,
body[data-theme="dark"] .content .attachment-card,
body[data-theme="dark"] .content .data-table-card,
body[data-theme="dark"] .content .checks-table-wrap,
body[data-theme="dark"] .content .personnel-psa-card{
  border-top-color:rgba(255,255,255,.09)!important;
}

/* Abstände normalisieren: keine Zusatzlücken mehr, die nur für alte Striche gedacht waren. */
.content .card:not(.table-wrap):not(.data-table-card):not(.checks-table-wrap),
.content .stat-card,
.content .toolbar,
.content .pagination,
.content .entity-card,
.content .notice,
.content .notice-soft,
.content .rp55-kpi-card,
.content .rp55-focus-card,
.content .rp55-own-card,
.content .rp55-table-card,
.content .rp-feed-card,
.content .rights-explainer-card,
.content .rights-workbench-card,
.content .rights-note-card,
.content .rights-teaser-card,
.content .youth-calendar-card,
.content .youth-table-card,
.content .attachment-card,
.content .personnel-psa-card{
  padding-top:22px!important;
}
.content .table-wrap,
.content .card.table-wrap,
.content .data-table-card,
.content .checks-table-wrap{
  padding:0!important;
  overflow:hidden!important;
}
.content .card-head{
  margin-top:0!important;
  padding-top:0!important;
}

/* Tabellen ohne Seiten-Scrollbar: Inhalt bricht sauber um und bleibt im Kasten. */
.content .table-wrap,
.content .data-table-card,
.content .checks-table-wrap{
  width:100%!important;
  max-width:100%!important;
}
.content table,
.content .table-wrap table,
.content .data-table-card table,
.content .checks-table-wrap table{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  table-layout:fixed!important;
}
.content th,
.content td{
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto!important;
}
.content td:last-child,
.content th:last-child{
  width:auto!important;
}
.content td .btn,
.content td button,
.content td a.btn,
.content .table-wrap .btn{
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
}

/* Status/Badges und Formularfelder dürfen keine Breite erzwingen. */
.content .status,
.content .pill,
.content .role,
.content .badge,
.content .btn,
.content button,
.content input,
.content select,
.content textarea{
  min-width:0!important;
  max-width:100%!important;
}

/* Smart-Suche bleibt sichtbar, aber ohne Layout-Sprünge. */
.content .smart-select-field,
.content .smart-select-field.is-open,
.content .card.has-smart-select{
  overflow:visible!important;
}
.content .smart-select-results{
  max-width:min(100%,720px)!important;
  box-sizing:border-box!important;
}

@media(max-width:1180px){
  .content{padding-inline:22px!important;}
  .content th,.content td{padding:10px 8px!important;font-size:.92rem!important;}
}
@media(max-width:860px){
  .content{padding-inline:14px!important;}
  .content .card:not(.table-wrap):not(.data-table-card):not(.checks-table-wrap),
  .content .stat-card,
  .content .toolbar,
  .content .pagination,
  .content .entity-card,
  .content .notice,
  .content .notice-soft,
  .content .page-hero,
  .content .page-head{padding:18px!important;border-radius:22px!important;}
  .content .table-wrap,
  .content .data-table-card,
  .content .checks-table-wrap{border-radius:20px!important;}
  .content table{font-size:.88rem!important;}
  .content th,.content td{padding:9px 7px!important;}
}

/* Retter-Portal v1.2.24 · Harte globale Entfernung aller Dekor-Striche und Overflow-Fix
   Diese Regeln stehen bewusst am Dateiende und übersteuern ältere v1.2.18–v1.2.23 Stripe-Regeln. */
:root{--rp-stripe:none!important;--rp-stripe-height:0px!important;}
html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
body{overscroll-behavior-x:none!important;}
.app-shell,.main,.content,.topbar,.sidebar,.app-footer{max-width:100%!important;min-width:0!important;}
.main,.content{overflow-x:hidden!important;}

/* Wirklich keine farbigen Balken/Pseudo-Striche mehr im eingeloggten Portal. */
html body .app-shell .sidebar::before,
html body .app-shell .sidebar::after,
html body .app-shell .main .content *::before,
html body .app-shell .main .content *::after,
html body .app-shell .main .topbar *::before,
html body .app-shell .main .topbar *::after,
html body .app-shell .main .app-footer *::before,
html body .app-shell .main .app-footer *::after,
html body .app-shell .main .content > .card::before,
html body .app-shell .main .content > .card::after,
html body .app-shell .main .content > section.card::before,
html body .app-shell .main .content > section.card::after,
html body .app-shell .main .content > div.card::before,
html body .app-shell .main .content > div.card::after,
html body .app-shell .main .content .rp55-dashboard .card::before,
html body .app-shell .main .content .rp55-dashboard .card::after,
html body .app-shell .main .content .rp55-kpi-card::before,
html body .app-shell .main .content .rp55-kpi-card::after,
html body .app-shell .main .content .rp55-focus-card::before,
html body .app-shell .main .content .rp55-focus-card::after,
html body .app-shell .main .content .rp55-own-card::before,
html body .app-shell .main .content .rp55-own-card::after,
html body .app-shell .main .content .rp55-table-card::before,
html body .app-shell .main .content .rp55-table-card::after,
html body .app-shell .main .content .rp-feed-card::before,
html body .app-shell .main .content .rp-feed-card::after,
html body .app-shell .main .content .table-wrap::before,
html body .app-shell .main .content .table-wrap::after,
html body .app-shell .main .content .data-table-card::before,
html body .app-shell .main .content .data-table-card::after,
html body .app-shell .main .content .checks-table-wrap::before,
html body .app-shell .main .content .checks-table-wrap::after{
  content:none!important;
  display:none!important;
  visibility:hidden!important;
  position:static!important;
  inset:auto!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  max-width:0!important;
  max-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-image:none!important;
  background:none!important;
  box-shadow:none!important;
  opacity:0!important;
  transform:none!important;
  pointer-events:none!important;
}

/* Alte Stripe-Abstände und Top-Border-Konstrukte neutralisieren. */
html body .app-shell .main .content .card,
html body .app-shell .main .content .stat-card,
html body .app-shell .main .content .page-hero,
html body .app-shell .main .content .toolbar,
html body .app-shell .main .content .pagination,
html body .app-shell .main .content .entity-card,
html body .app-shell .main .content .notice,
html body .app-shell .main .content .notice-soft,
html body .app-shell .main .content .rp55-dashboard .card,
html body .app-shell .main .content .rp55-kpi-card,
html body .app-shell .main .content .rp55-focus-card,
html body .app-shell .main .content .rp55-own-card,
html body .app-shell .main .content .rp55-table-card,
html body .app-shell .main .content .rp-feed-card,
html body .app-shell .main .content .rights-explainer-card,
html body .app-shell .main .content .rights-workbench-card,
html body .app-shell .main .content .rights-note-card,
html body .app-shell .main .content .rights-teaser-card,
html body .app-shell .main .content .youth-calendar-card,
html body .app-shell .main .content .youth-table-card,
html body .app-shell .main .content .attachment-card,
html body .app-shell .main .content .personnel-psa-card{
  border-image:none!important;
  border-top:1px solid var(--line-soft)!important;
  background-clip:border-box!important;
}
html body .app-shell .main .content .card:not(.table-wrap):not(.data-table-card):not(.checks-table-wrap),
html body .app-shell .main .content .stat-card,
html body .app-shell .main .content .page-hero,
html body .app-shell .main .content .toolbar,
html body .app-shell .main .content .pagination,
html body .app-shell .main .content .entity-card,
html body .app-shell .main .content .notice,
html body .app-shell .main .content .notice-soft{
  padding-top:22px!important;
}
html body .app-shell .main .content .rp55-dashboard .card,
html body .app-shell .main .content .rp55-kpi-card,
html body .app-shell .main .content .rp55-focus-card,
html body .app-shell .main .content .rp55-own-card,
html body .app-shell .main .content .rp55-table-card,
html body .app-shell .main .content .rp-feed-card{
  padding-top:22px!important;
}

/* Tabellen skalieren in den Container statt seitlich zu scrollen. */
html body .app-shell .main .content .table-wrap,
html body .app-shell .main .content .data-table-card,
html body .app-shell .main .content .checks-table-wrap{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  padding:0!important;
  border-image:none!important;
}
html body .app-shell .main .content table,
html body .app-shell .main .content .table-wrap table,
html body .app-shell .main .content .data-table-card table,
html body .app-shell .main .content .checks-table-wrap table{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
}
html body .app-shell .main .content th,
html body .app-shell .main .content td{
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto!important;
}
html body .app-shell .main .content th:last-child,
html body .app-shell .main .content td:last-child{width:auto!important;}
html body .app-shell .main .content td .btn,
html body .app-shell .main .content td button,
html body .app-shell .main .content td a.btn,
html body .app-shell .main .content .table-actions,
html body .app-shell .main .content .actions{
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  flex-wrap:wrap!important;
}

/* Karten dürfen keine volle Viewport-Breite erzwingen. */
html body .app-shell .main .content > *,
html body .app-shell .main .content .grid,
html body .app-shell .main .content .stat-grid,
html body .app-shell .main .content .form-grid,
html body .app-shell .main .content .detail-grid,
html body .app-shell .main .content .info-grid{
  min-width:0!important;
  max-width:100%!important;
}

/* Smart-Select darf weiterhin über Karten sichtbar sein, aber ohne Seitenbreite zu erzwingen. */
html body .app-shell .main .content .card.has-smart-select,
html body .app-shell .main .content .smart-select-field,
html body .app-shell .main .content .smart-select-field.is-open{overflow:visible!important;}
html body .app-shell .main .content .smart-select-results{
  max-width:min(720px,100%)!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

@media(max-width:1180px){
  html body .app-shell .main .content{padding-inline:20px!important;}
  html body .app-shell .main .content th,
  html body .app-shell .main .content td{padding:10px 8px!important;font-size:.92rem!important;}
}
@media(max-width:860px){
  html body .app-shell .main .content{padding-inline:14px!important;}
  html body .app-shell .main .content .card:not(.table-wrap):not(.data-table-card):not(.checks-table-wrap),
  html body .app-shell .main .content .stat-card,
  html body .app-shell .main .content .page-hero,
  html body .app-shell .main .content .toolbar,
  html body .app-shell .main .content .pagination{padding:16px!important;border-radius:22px!important;}
  html body .app-shell .main .content th,
  html body .app-shell .main .content td{padding:9px 7px!important;font-size:.86rem!important;}
}

/* v1.2.24b · keine Restflächen der alten Strich-Header */
html body .app-shell .sidebar{border-top:0!important;}
html body .app-shell .main .content .table-wrap,
html body .app-shell .main .content .data-table-card,
html body .app-shell .main .content .checks-table-wrap{
  background:var(--surface)!important;
  box-shadow:var(--shadow-sm)!important;
  border:1px solid var(--line-soft)!important;
}
html body .app-shell .main .content .table-wrap th,
html body .app-shell .main .content .data-table-card th,
html body .app-shell .main .content .checks-table-wrap th{
  background:rgba(148,163,184,.10)!important;
}
html body[data-theme="light"] .app-shell .main .content .table-wrap th,
html body[data-theme="light"] .app-shell .main .content .data-table-card th,
html body[data-theme="light"] .app-shell .main .content .checks-table-wrap th{
  background:#eef3f9!important;
}
html body .app-shell .main .content .card,
html body .app-shell .main .content .stat-card,
html body .app-shell .main .content .page-hero,
html body .app-shell .main .content .toolbar,
html body .app-shell .main .content .pagination{
  background-image:none!important;
}

/* Retter-Portal v1.2.25 · finale Flächen-/Tabellenbereinigung
   Ziel: keine Dekor-Striche, keine Rest-Lücken, keine abgeschnittenen rechten Tabellenbereiche. */
:root{
  --rp-clean-card-bg:rgba(255,255,255,.82);
  --rp-clean-card-bg-2:#ffffff;
  --rp-clean-table-head:rgba(226,235,247,.76);
  --rp-clean-table-row:rgba(255,255,255,.18);
  --rp-clean-table-row-hover:rgba(200,16,46,.055);
  --rp-clean-border:rgba(100,116,139,.20);
}
body[data-theme="dark"]{
  --rp-clean-card-bg:rgba(15,23,42,.78);
  --rp-clean-card-bg-2:rgba(17,24,39,.88);
  --rp-clean-table-head:rgba(30,41,59,.82);
  --rp-clean-table-row:rgba(15,23,42,.38);
  --rp-clean-table-row-hover:rgba(255,255,255,.045);
  --rp-clean-border:rgba(255,255,255,.09);
}
@media(prefers-color-scheme:dark){
  body[data-theme="system"]{
    --rp-clean-card-bg:rgba(15,23,42,.78);
    --rp-clean-card-bg-2:rgba(17,24,39,.88);
    --rp-clean-table-head:rgba(30,41,59,.82);
    --rp-clean-table-row:rgba(15,23,42,.38);
    --rp-clean-table-row-hover:rgba(255,255,255,.045);
    --rp-clean-border:rgba(255,255,255,.09);
  }
}

/* Farbige Top-Striche und deren alte Platzhalter endgültig ausschalten. */
html body .app-shell .sidebar::before,
html body .app-shell .main .content > .card::before,
html body .app-shell .main .content > .card::after,
html body .app-shell .main .content > section.card::before,
html body .app-shell .main .content > section.card::after,
html body .app-shell .main .content > div.card::before,
html body .app-shell .main .content > div.card::after,
html body .app-shell .main .content .stat-card::before,
html body .app-shell .main .content .stat-card::after,
html body .app-shell .main .content .page-head::before,
html body .app-shell .main .content .page-head::after,
html body .app-shell .main .content .page-hero::before,
html body .app-shell .main .content .page-hero::after,
html body .app-shell .main .content .toolbar::before,
html body .app-shell .main .content .toolbar::after,
html body .app-shell .main .content .pagination::before,
html body .app-shell .main .content .pagination::after,
html body .app-shell .main .content .table-wrap::before,
html body .app-shell .main .content .table-wrap::after,
html body .app-shell .main .content .data-table-card::before,
html body .app-shell .main .content .data-table-card::after,
html body .app-shell .main .content .checks-table-wrap::before,
html body .app-shell .main .content .checks-table-wrap::after,
html body .app-shell .main .content .card-head::before,
html body .app-shell .main .content .card-head::after,
html body .app-shell .main .content .rights-explainer-card::before,
html body .app-shell .main .content .rights-explainer-card::after,
html body .app-shell .main .content .rights-workbench-card::before,
html body .app-shell .main .content .rights-workbench-card::after,
html body .app-shell .main .content .rights-note-card::before,
html body .app-shell .main .content .rights-note-card::after,
html body .app-shell .main .content .rights-teaser-card::before,
html body .app-shell .main .content .rights-teaser-card::after,
html body .app-shell .main .content .youth-calendar-card::before,
html body .app-shell .main .content .youth-calendar-card::after,
html body .app-shell .main .content .youth-table-card::before,
html body .app-shell .main .content .youth-table-card::after,
html body .app-shell .main .content .attachment-card::before,
html body .app-shell .main .content .attachment-card::after,
html body .app-shell .main .content .personnel-psa-card::before,
html body .app-shell .main .content .personnel-psa-card::after,
html body .app-shell .main .content .rp55-dashboard .card::before,
html body .app-shell .main .content .rp55-dashboard .card::after,
html body .app-shell .main .content .rp55-kpi-card::before,
html body .app-shell .main .content .rp55-kpi-card::after,
html body .app-shell .main .content .rp55-focus-card::before,
html body .app-shell .main .content .rp55-focus-card::after,
html body .app-shell .main .content .rp55-own-card::before,
html body .app-shell .main .content .rp55-own-card::after,
html body .app-shell .main .content .rp55-table-card::before,
html body .app-shell .main .content .rp55-table-card::after,
html body .app-shell .main .content .rp-feed-card::before,
html body .app-shell .main .content .rp-feed-card::after{
  content:none!important;
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  max-width:0!important;
  max-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
  opacity:0!important;
  pointer-events:none!important;
}

html body .app-shell .main .content .card,
html body .app-shell .main .content .stat-card,
html body .app-shell .main .content .page-head,
html body .app-shell .main .content .page-hero,
html body .app-shell .main .content .toolbar,
html body .app-shell .main .content .pagination,
html body .app-shell .main .content .entity-card,
html body .app-shell .main .content .notice,
html body .app-shell .main .content .notice-soft,
html body .app-shell .main .content .rp55-kpi-card,
html body .app-shell .main .content .rp55-focus-card,
html body .app-shell .main .content .rp55-own-card,
html body .app-shell .main .content .rp55-table-card,
html body .app-shell .main .content .rp-feed-card{
  border-top:1px solid var(--rp-clean-border)!important;
  border-image:none!important;
  background-image:none!important;
  background-color:var(--rp-clean-card-bg)!important;
  background-clip:border-box!important;
  overflow:visible!important;
}

html body .app-shell .main .content .card:not(.table-wrap):not(.data-table-card):not(.checks-table-wrap),
html body .app-shell .main .content .stat-card,
html body .app-shell .main .content .page-head,
html body .app-shell .main .content .page-hero,
html body .app-shell .main .content .toolbar,
html body .app-shell .main .content .pagination{
  padding-top:22px!important;
}

/* Tabellen: eine durchgehende Fläche, keine rechten dunklen Restspalten, keine horizontale Seitenleiste. */
html body .app-shell .main .content .table-wrap,
html body .app-shell .main .content .data-table-card,
html body .app-shell .main .content .checks-table-wrap{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  padding:0!important;
  border:1px solid var(--rp-clean-border)!important;
  border-radius:26px!important;
  border-image:none!important;
  background:var(--rp-clean-card-bg)!important;
  background-image:none!important;
  box-shadow:var(--shadow-sm)!important;
}
html body .app-shell .main .content .table-wrap table,
html body .app-shell .main .content .data-table-card table,
html body .app-shell .main .content .checks-table-wrap table{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
  border-spacing:0!important;
  background:transparent!important;
}
html body .app-shell .main .content .table-wrap thead,
html body .app-shell .main .content .table-wrap thead tr,
html body .app-shell .main .content .data-table-card thead,
html body .app-shell .main .content .data-table-card thead tr,
html body .app-shell .main .content .checks-table-wrap thead,
html body .app-shell .main .content .checks-table-wrap thead tr{
  background:var(--rp-clean-table-head)!important;
}
html body .app-shell .main .content .table-wrap th,
html body .app-shell .main .content .data-table-card th,
html body .app-shell .main .content .checks-table-wrap th,
html body .app-shell .main .content th{
  background:transparent!important;
  height:auto!important;
  min-height:0!important;
  color:var(--muted)!important;
  border-bottom:1px solid var(--rp-clean-border)!important;
  box-shadow:none!important;
}
html body .app-shell .main .content .table-wrap tbody tr,
html body .app-shell .main .content .data-table-card tbody tr,
html body .app-shell .main .content .checks-table-wrap tbody tr{
  background:var(--rp-clean-table-row)!important;
}
html body .app-shell .main .content .table-wrap tbody tr:hover,
html body .app-shell .main .content .data-table-card tbody tr:hover,
html body .app-shell .main .content .checks-table-wrap tbody tr:hover{
  background:var(--rp-clean-table-row-hover)!important;
}
html body .app-shell .main .content .table-wrap td,
html body .app-shell .main .content .data-table-card td,
html body .app-shell .main .content .checks-table-wrap td,
html body .app-shell .main .content td{
  background:transparent!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  border-bottom:1px solid var(--line-soft)!important;
}
html body .app-shell .main .content .table-wrap tr:last-child td,
html body .app-shell .main .content .data-table-card tr:last-child td,
html body .app-shell .main .content .checks-table-wrap tr:last-child td{border-bottom:0!important;}
html body .app-shell .main .content .table-wrap th:last-child,
html body .app-shell .main .content .table-wrap td:last-child,
html body .app-shell .main .content .data-table-card th:last-child,
html body .app-shell .main .content .data-table-card td:last-child,
html body .app-shell .main .content .checks-table-wrap th:last-child,
html body .app-shell .main .content .checks-table-wrap td:last-child{
  background:transparent!important;
  width:132px!important;
  min-width:0!important;
  text-align:right!important;
  padding-right:20px!important;
}
html body .app-shell .main .content .table-wrap td:last-child .btn,
html body .app-shell .main .content .table-wrap td:last-child button,
html body .app-shell .main .content .data-table-card td:last-child .btn,
html body .app-shell .main .content .data-table-card td:last-child button{
  max-width:100%!important;
}

/* Lehrgangsbedarf: Status-Aktion komplett sichtbar, kein abgeschnittener rechter Rand. */
.training-requests-table{table-layout:fixed!important;}
.training-requests-table th:nth-child(1),.training-requests-table td:nth-child(1){width:13%!important;}
.training-requests-table th:nth-child(2),.training-requests-table td:nth-child(2){width:12%!important;}
.training-requests-table th:nth-child(3),.training-requests-table td:nth-child(3){width:13%!important;}
.training-requests-table th:nth-child(4),.training-requests-table td:nth-child(4){width:8%!important;}
.training-requests-table th:nth-child(5),.training-requests-table td:nth-child(5){width:10%!important;}
.training-requests-table th:nth-child(6),.training-requests-table td:nth-child(6){width:10%!important;}
.training-requests-table th:nth-child(7),.training-requests-table td:nth-child(7){width:15%!important;}
.training-requests-table th:nth-child(8),.training-requests-table td:nth-child(8){width:19%!important;text-align:left!important;}
.training-requests-table .training-action-cell{overflow:visible!important;}
.training-requests-table .training-status-autosave{
  display:grid!important;
  grid-template-columns:minmax(128px,.9fr) minmax(0,1.1fr)!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  align-items:start!important;
}
.training-requests-table .training-status-autosave > *{width:100%!important;min-width:0!important;}
.training-requests-table .training-status-autosave .autosave-state{grid-column:1/-1!important;white-space:normal!important;}
.training-requests-table .training-status-autosave select,
.training-requests-table .training-status-autosave input{min-height:46px!important;}

/* Gleichmäßige dunkle/helle Karten in Jugend, Kalender und kleinen Kacheln. */
html body .app-shell .main .content .youth-day,
html body .app-shell .main .content .calendar-day,
html body .app-shell .main .content .calendar-weekday,
html body .app-shell .main .content .detail-item,
html body .app-shell .main .content .info-grid > div,
html body .app-shell .main .content .department-chip,
html body .app-shell .main .content .timeline-item,
html body .app-shell .main .content .calendar-item{
  background:var(--rp-clean-card-bg-2)!important;
  background-image:none!important;
  border-color:var(--rp-clean-border)!important;
}
html body .app-shell .main .content .youth-day.empty-day{
  background:rgba(148,163,184,.045)!important;
  border-style:dashed!important;
}
body[data-theme="light"] .app-shell .main .content .youth-day.empty-day{
  background:rgba(226,235,247,.45)!important;
}

/* Keine Browser-/Tabellen-Scrollleisten durch zu breite Inhalte. */
html,body,.app-shell,.main,.content{max-width:100%!important;overflow-x:hidden!important;}
html body .app-shell .main .content > *,
html body .app-shell .main .content .grid,
html body .app-shell .main .content .stat-grid,
html body .app-shell .main .content .form-grid,
html body .app-shell .main .content .detail-grid,
html body .app-shell .main .content .info-grid{
  min-width:0!important;
  max-width:100%!important;
}

@media(max-width:1400px){
  .training-requests-table th:nth-child(2),.training-requests-table td:nth-child(2),
  .training-requests-table th:nth-child(4),.training-requests-table td:nth-child(4){display:none!important;}
  .training-requests-table th:nth-child(8),.training-requests-table td:nth-child(8){width:24%!important;}
}
@media(max-width:980px){
  html body .app-shell .main .content .table-wrap table,
  html body .app-shell .main .content .data-table-card table,
  html body .app-shell .main .content .checks-table-wrap table{table-layout:auto!important;}
  .training-requests-table .training-status-autosave{grid-template-columns:1fr!important;}
  .training-requests-table th:nth-child(8),.training-requests-table td:nth-child(8){width:auto!important;}
}
@media(max-width:760px){
  html body .app-shell .main .content .table-wrap,
  html body .app-shell .main .content .data-table-card,
  html body .app-shell .main .content .checks-table-wrap{border-radius:20px!important;overflow:hidden!important;}
  html body .app-shell .main .content th,
  html body .app-shell .main .content td{padding:10px 8px!important;font-size:.88rem!important;}
  .training-requests-table th:nth-child(5),.training-requests-table td:nth-child(5),
  .training-requests-table th:nth-child(7),.training-requests-table td:nth-child(7){display:none!important;}
}


/* Retter-Portal v1.2.26: ruhiger UI-Refresh ohne Dekor-Striche, mit stabilen Tabellenflächen */
:root{
  --rp26-panel:linear-gradient(145deg,rgba(255,255,255,.92),rgba(238,244,252,.82));
  --rp26-panel-strong:linear-gradient(145deg,rgba(255,255,255,.98),rgba(230,238,248,.88));
  --rp26-panel-soft:rgba(255,255,255,.74);
  --rp26-border:rgba(130,150,176,.28);
  --rp26-border-strong:rgba(93,112,140,.34);
  --rp26-table-head:#e7eef8;
  --rp26-table-row:#f7faff;
  --rp26-table-row-alt:#f1f6fd;
  --rp26-table-hover:#eef5ff;
  --rp26-shadow:0 18px 48px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.70);
  --rp26-shadow-soft:0 10px 28px rgba(15,23,42,.075), inset 0 1px 0 rgba(255,255,255,.58);
  --rp26-radius:28px;
}
body[data-theme="dark"]{
  --rp26-panel:linear-gradient(145deg,rgba(17,27,44,.96),rgba(12,20,34,.92));
  --rp26-panel-strong:linear-gradient(145deg,rgba(22,34,54,.98),rgba(13,21,35,.94));
  --rp26-panel-soft:rgba(15,25,41,.88);
  --rp26-border:rgba(120,140,168,.20);
  --rp26-border-strong:rgba(137,158,190,.28);
  --rp26-table-head:#1d293a;
  --rp26-table-row:#111c2e;
  --rp26-table-row-alt:#132033;
  --rp26-table-hover:#17263c;
  --rp26-shadow:0 22px 58px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.045);
  --rp26-shadow-soft:0 14px 34px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04);
}
@media (prefers-color-scheme:dark){
  body[data-theme="system"]{
    --rp26-panel:linear-gradient(145deg,rgba(17,27,44,.96),rgba(12,20,34,.92));
    --rp26-panel-strong:linear-gradient(145deg,rgba(22,34,54,.98),rgba(13,21,35,.94));
    --rp26-panel-soft:rgba(15,25,41,.88);
    --rp26-border:rgba(120,140,168,.20);
    --rp26-border-strong:rgba(137,158,190,.28);
    --rp26-table-head:#1d293a;
    --rp26-table-row:#111c2e;
    --rp26-table-row-alt:#132033;
    --rp26-table-hover:#17263c;
    --rp26-shadow:0 22px 58px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.045);
    --rp26-shadow-soft:0 14px 34px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04);
  }
}

html,body,.app-shell,.main,.content{max-width:100%!important;overflow-x:hidden!important;}
body{
  background:
    radial-gradient(circle at 0% 0%,rgba(200,16,46,.105),transparent 31rem),
    radial-gradient(circle at 92% -4%,rgba(29,78,216,.13),transparent 33rem),
    radial-gradient(circle at 74% 26%,rgba(20,184,166,.055),transparent 36rem),
    linear-gradient(135deg,var(--bg),var(--bg2))!important;
}
body:before{opacity:.35!important;}

/* Harte Sicherung: keine alten Farbstriche oder Stripe-Lücken im eingeloggten Portal. */
html body .app-shell .main .content :where(.card,.stat-card,.page-head,.page-hero,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.rp-feed-card,.rp55-table-card,.rp55-focus-card,.rp55-own-card,.rp55-kpi-card,.entity-card,.notice,.notice-soft)::before,
html body .app-shell .main .content :where(.card,.stat-card,.page-head,.page-hero,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.rp-feed-card,.rp55-table-card,.rp55-focus-card,.rp55-own-card,.rp55-kpi-card,.entity-card,.notice,.notice-soft)::after,
html body .app-shell .main .content :where(.card-head,.hero-clean,.page-head,.page-hero)::before,
html body .app-shell .main .content :where(.card-head,.hero-clean,.page-head,.page-hero)::after{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
}

/* Neue Designsprache: ruhige Glasflächen, einheitliche Radien und Akzent nur über Buttons/Badges, nicht über Linien. */
html body .app-shell .main .content :where(.card,.stat-card,.page-head,.page-hero,.toolbar,.pagination,.entity-card,.notice,.notice-soft,.rp-feed-card,.rp55-table-card,.rp55-focus-card,.rp55-own-card,.rp55-kpi-card){
  position:relative!important;
  background:var(--rp26-panel)!important;
  background-image:var(--rp26-panel)!important;
  border:1px solid var(--rp26-border)!important;
  border-top:1px solid var(--rp26-border)!important;
  border-image:none!important;
  border-radius:var(--rp26-radius)!important;
  box-shadow:var(--rp26-shadow-soft)!important;
  outline:0!important;
}
html body .app-shell .main .content :where(.page-head,.page-hero){
  padding:clamp(26px,3vw,46px)!important;
  margin-bottom:26px!important;
  align-items:center!important;
  overflow:hidden!important;
}
html body .app-shell .main .content :where(.page-head,.page-hero) h1{
  max-width:100%!important;
  overflow:visible!important;
  line-height:1.02!important;
  letter-spacing:-.065em!important;
}
html body .app-shell .main .content :where(.page-head,.page-hero) p{
  max-width:920px!important;
}
html body .app-shell .main .content .card:not(.table-wrap):not(.data-table-card):not(.checks-table-wrap){
  padding:24px!important;
  margin-bottom:24px!important;
  overflow:visible!important;
}
html body .app-shell .main .content .stat-card{
  padding:22px!important;
  min-height:126px!important;
  overflow:hidden!important;
}
html body .app-shell .main .content .stat-card strong{line-height:1!important;}
html body .app-shell .main .content .card-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  min-width:0!important;
  margin:0 0 18px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  overflow:visible!important;
}
html body .app-shell .main .content .card-head h2,
html body .app-shell .main .content .card-head h3{
  line-height:1.18!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
}
html body .app-shell .main .content .card-head .pill{flex:0 0 auto!important;}

/* Tabellen: einheitliche durchgehende Fläche ohne Restspalten, ohne seitliche Scrollbar, ohne abgeschnittene Titel. */
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap){
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  padding:0!important;
  margin-bottom:24px!important;
  border:1px solid var(--rp26-border-strong)!important;
  border-top:1px solid var(--rp26-border-strong)!important;
  border-image:none!important;
  border-radius:26px!important;
  background:var(--rp26-table-row)!important;
  background-image:none!important;
  box-shadow:var(--rp26-shadow-soft)!important;
}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) > .card-head{
  margin:0!important;
  padding:20px 24px 16px!important;
  min-height:0!important;
  border-bottom:1px solid var(--line-soft)!important;
  background:var(--rp26-panel)!important;
  border-radius:25px 25px 0 0!important;
}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) > .card-head + table{
  margin-top:0!important;
}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) table,
html body .app-shell .main .content table{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
  border-spacing:0!important;
  background:var(--rp26-table-row)!important;
}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) thead,
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) thead tr,
html body .app-shell .main .content thead,
html body .app-shell .main .content thead tr{
  background:var(--rp26-table-head)!important;
}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) th,
html body .app-shell .main .content th{
  background:var(--rp26-table-head)!important;
  color:var(--muted)!important;
  padding:15px 18px!important;
  line-height:1.2!important;
  height:auto!important;
  min-height:0!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
  border-bottom:1px solid var(--rp26-border)!important;
  box-shadow:none!important;
}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) td,
html body .app-shell .main .content td{
  background:var(--rp26-table-row)!important;
  color:var(--text)!important;
  padding:16px 18px!important;
  line-height:1.35!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  vertical-align:middle!important;
  border-bottom:1px solid var(--line-soft)!important;
}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:nth-child(even) td{background:var(--rp26-table-row-alt)!important;}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:hover td{background:var(--rp26-table-hover)!important;}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) tr:last-child td{border-bottom:0!important;}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) th:last-child,
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) td:last-child{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  padding-right:18px!important;
  background:inherit!important;
  text-align:left!important;
}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) th:last-child{text-align:left!important;background:var(--rp26-table-head)!important;}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) td:last-child .btn,
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) td:last-child button{
  width:auto!important;
  max-width:100%!important;
  white-space:nowrap!important;
}
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) td.empty,
html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) .empty{
  text-align:center!important;
  color:var(--muted)!important;
  padding:24px!important;
}

/* Lehrgangsbedarf: Aktion/Notiz nicht mehr am rechten Rand abschneiden. */
html body .app-shell .main .content .training-requests-table{table-layout:fixed!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(1),
html body .app-shell .main .content .training-requests-table td:nth-child(1){width:13%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(2),
html body .app-shell .main .content .training-requests-table td:nth-child(2){width:12%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(3),
html body .app-shell .main .content .training-requests-table td:nth-child(3){width:14%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(4),
html body .app-shell .main .content .training-requests-table td:nth-child(4){width:7%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(5),
html body .app-shell .main .content .training-requests-table td:nth-child(5){width:8%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(6),
html body .app-shell .main .content .training-requests-table td:nth-child(6){width:9%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(7),
html body .app-shell .main .content .training-requests-table td:nth-child(7){width:18%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(8),
html body .app-shell .main .content .training-requests-table td:nth-child(8){width:19%!important;}
html body .app-shell .main .content .training-requests-table .training-action-cell{overflow:visible!important;padding-right:20px!important;}
html body .app-shell .main .content .training-requests-table .training-status-autosave{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  align-items:stretch!important;
}
html body .app-shell .main .content .training-requests-table .training-status-autosave select,
html body .app-shell .main .content .training-requests-table .training-status-autosave input{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:46px!important;
  min-height:46px!important;
}
html body .app-shell .main .content .training-requests-table .training-status-autosave .autosave-state{
  display:block!important;
  width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  line-height:1.25!important;
}

/* Dateianhänge: sauberer Abstand zwischen Upload-Button und Dateiliste. */
html body .app-shell .main .content .attachment-upload{
  margin:18px 0 0!important;
  padding-bottom:20px!important;
  border-bottom:1px solid var(--line-soft)!important;
  overflow:visible!important;
}
html body .app-shell .main .content .attachment-list{
  margin-top:18px!important;
  padding-top:0!important;
}
html body .app-shell .main .content .attachment-upload .btn.primary{
  margin-bottom:0!important;
}
html body .app-shell .main .content .attachment-item{
  background:var(--rp26-panel-soft)!important;
  border-color:var(--rp26-border)!important;
}

/* Einheitliche Kacheln/Kalenderflächen ohne Helligkeitsmix. */
html body .app-shell .main .content :where(.youth-day,.calendar-day,.calendar-weekday,.detail-item,.info-grid>div,.department-chip,.timeline-item,.calendar-item,.person-choice,.smart-person-picker,.rp55-own-metrics article,.rp55-kpi-card,.rp55-focus-card){
  background:var(--rp26-panel-soft)!important;
  background-image:none!important;
  border:1px solid var(--rp26-border)!important;
  box-shadow:var(--rp26-shadow-soft)!important;
}
html body .app-shell .main .content :where(.youth-day.empty-day,.calendar-day.empty-day){
  background:rgba(148,163,184,.055)!important;
  border-style:dashed!important;
  box-shadow:none!important;
}
body[data-theme="light"] .app-shell .main .content :where(.youth-day.empty-day,.calendar-day.empty-day){background:rgba(226,235,247,.58)!important;}

/* Buttons, Badges und Eingaben: etwas mehr Designsprache ohne Layout-Risiko. */
html body .btn.primary,
html body button.btn.primary,
html body .sidebar nav a.active{
  background:linear-gradient(135deg,#df102c,#a90f25)!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:0 14px 32px rgba(200,16,46,.22)!important;
}
html body .btn:not(.primary):not(.danger){
  background:linear-gradient(145deg,var(--rp26-panel-soft),rgba(148,163,184,.08))!important;
  border-color:var(--rp26-border)!important;
  box-shadow:var(--rp26-shadow-soft)!important;
}
html body :where(input,select,textarea){
  background:var(--rp26-panel-soft)!important;
  border-color:var(--rp26-border)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
html body :where(input,select,textarea):focus{
  border-color:rgba(220,38,38,.55)!important;
  box-shadow:0 0 0 4px rgba(220,38,38,.12), inset 0 1px 0 rgba(255,255,255,.04)!important;
}
html body :where(.pill,.status,.role){
  max-width:100%!important;
  white-space:normal!important;
  line-height:1.15!important;
  overflow:visible!important;
  border:1px solid rgba(148,163,184,.24)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}

/* Public Startseite passend zum Portal: breiter, seriöser, weniger KI-Optik. */
.rp55-public{
  width:100%!important;
  max-width:none!important;
  overflow-x:hidden!important;
}
.rp55-public :where(.rp55-hero,.rp55-section,.site-footer){
  width:min(1760px,calc(100% - 48px))!important;
  max-width:1760px!important;
}
.rp55-public :where(.rp55-section,.rp55-hero){
  border-color:var(--rp26-border)!important;
  background:var(--rp26-panel)!important;
  box-shadow:var(--rp26-shadow-soft)!important;
}
.rp55-module-grid article,
.rp55-security-grid article,
.rp55-flow-grid article,
.rp55-proof article,
.rp55-product-preview,
.rp55-signin{
  background:var(--rp26-panel-soft)!important;
  border:1px solid var(--rp26-border)!important;
  box-shadow:var(--rp26-shadow-soft)!important;
}

/* Responsive: keine abgeschnittenen Tabellenüberschriften, keine seitlichen Restflächen. */
@media(max-width:1500px){
  html body .app-shell .main .content .training-requests-table th:nth-child(2),
  html body .app-shell .main .content .training-requests-table td:nth-child(2),
  html body .app-shell .main .content .training-requests-table th:nth-child(4),
  html body .app-shell .main .content .training-requests-table td:nth-child(4){display:none!important;}
  html body .app-shell .main .content .training-requests-table th:nth-child(8),
  html body .app-shell .main .content .training-requests-table td:nth-child(8){width:24%!important;}
}
@media(max-width:980px){
  html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) table,
  html body .app-shell .main .content table{table-layout:auto!important;}
  html body .app-shell .main .content :where(th,td){padding:12px 10px!important;font-size:.92rem!important;}
  html body .app-shell .main .content .page-head,
  html body .app-shell .main .content .page-hero{padding:24px!important;}
  .rp55-public :where(.rp55-hero,.rp55-section,.site-footer){width:calc(100% - 24px)!important;}
}
@media(max-width:760px){
  html body .app-shell .main .content .card:not(.table-wrap):not(.data-table-card):not(.checks-table-wrap){padding:18px!important;border-radius:22px!important;}
  html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap){border-radius:20px!important;}
  html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) > .card-head{padding:16px!important;border-radius:19px 19px 0 0!important;}
  html body .app-shell .main .content .training-requests-table th:nth-child(5),
  html body .app-shell .main .content .training-requests-table td:nth-child(5),
  html body .app-shell .main .content .training-requests-table th:nth-child(7),
  html body .app-shell .main .content .training-requests-table td:nth-child(7){display:none!important;}
  html body .app-shell .main .content .training-requests-table th:nth-child(8),
  html body .app-shell .main .content .training-requests-table td:nth-child(8){width:auto!important;}
}

/* Retter-Portal v1.2.27 · harte Layout- und Flächenkorrektur ohne neue Dekorstriche */
:root{
  --rp27-public-max:1600px;
}
html,
body,
.app-shell,
.main,
.content{
  max-width:100%!important;
  overflow-x:hidden!important;
}

/* Tabellenzeilen komplett durchfärben: keine dunklen Restbereiche bei Aktion/Öffnen/Anzahl. */
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
  border-spacing:0!important;
  background:var(--rp26-table-row)!important;
  background-image:none!important;
}
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) thead,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) thead tr,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) thead th,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) thead th:last-child,
html body .app-shell .main .content table thead th,
html body .app-shell .main .content table thead th:last-child{
  background:var(--rp26-table-head)!important;
  background-image:none!important;
}
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr{
  background:var(--rp26-table-row)!important;
  background-image:none!important;
}
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr > td,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr > td:last-child,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr > td.actions,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr > td.table-actions,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr > td.training-action-cell{
  background:var(--rp26-table-row)!important;
  background-image:none!important;
  box-shadow:none!important;
}
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:nth-child(even),
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:nth-child(even) > td,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:nth-child(even) > td:last-child,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:nth-child(even) > td.actions,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:nth-child(even) > td.table-actions,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:nth-child(even) > td.training-action-cell{
  background:var(--rp26-table-row-alt)!important;
  background-image:none!important;
}
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:hover,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:hover > td,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:hover > td:last-child,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:hover > td.actions,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:hover > td.table-actions,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:hover > td.training-action-cell{
  background:var(--rp26-table-hover)!important;
  background-image:none!important;
}
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td.actions,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td.table-actions{
  text-align:right!important;
  padding-right:20px!important;
  white-space:nowrap!important;
}
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td.actions .btn,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td.table-actions .btn{
  display:inline-flex!important;
  width:auto!important;
  min-width:92px!important;
  justify-content:center!important;
}

/* Lehrgangsbedarf: Aktionsbereich vollständig sichtbar, ohne rechts abgeschnittene Notiz. */
html body .app-shell .main .content .training-requests-table{
  table-layout:fixed!important;
}
html body .app-shell .main .content .training-requests-table th:nth-child(1),
html body .app-shell .main .content .training-requests-table td:nth-child(1){width:13%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(2),
html body .app-shell .main .content .training-requests-table td:nth-child(2){width:11%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(3),
html body .app-shell .main .content .training-requests-table td:nth-child(3){width:14%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(4),
html body .app-shell .main .content .training-requests-table td:nth-child(4){width:7%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(5),
html body .app-shell .main .content .training-requests-table td:nth-child(5){width:8%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(6),
html body .app-shell .main .content .training-requests-table td:nth-child(6){width:10%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(7),
html body .app-shell .main .content .training-requests-table td:nth-child(7){width:16%!important;}
html body .app-shell .main .content .training-requests-table th:nth-child(8),
html body .app-shell .main .content .training-requests-table td:nth-child(8){width:21%!important;}
html body .app-shell .main .content .training-requests-table td.training-action-cell{
  overflow:visible!important;
  padding-right:22px!important;
  min-width:0!important;
}
html body .app-shell .main .content .training-status-autosave{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
html body .app-shell .main .content .training-status-autosave select,
html body .app-shell .main .content .training-status-autosave input,
html body .app-shell .main .content .training-status-autosave .autosave-state{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

/* Dateianhänge: deutlicher Luft zwischen Upload-Button und Dateikopf. */
html body .app-shell .main .content .attachment-upload{
  margin-bottom:30px!important;
  padding-bottom:30px!important;
}
html body .app-shell .main .content .attachment-upload .btn.primary{
  margin-bottom:0!important;
}
html body .app-shell .main .content .attachment-list{
  margin-top:30px!important;
}
html body .app-shell .main .content .attachment-card .attachment-upload + .attachment-list,
html body .app-shell .main .content .attachment-card .attachment-list{
  border-top:0!important;
}

/* Jugend-/Kalender-Leertage nicht mehr deutlich dunkler/heller als normale Tage. */
html body .app-shell .main .content :is(.youth-day,.calendar-day,.calendar-weekday){
  background:var(--rp26-panel-soft)!important;
  background-image:none!important;
}
html body .app-shell .main .content :is(.youth-day.empty-day,.calendar-day.empty-day){
  background:var(--rp26-panel-soft)!important;
  background-image:none!important;
  opacity:.46!important;
  border-style:dashed!important;
}

/* Card-Header in Tabellen nicht mehr an der oberen Kante abschneiden. */
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) > .card-head{
  padding:22px 26px 18px!important;
  overflow:visible!important;
}
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) > .card-head h2,
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) > .card-head h3{
  padding-top:2px!important;
  line-height:1.22!important;
  overflow:visible!important;
}

/* Öffentliche Startseite auf Dashboard-Breite: Header, Hero, Module und Footer exakt gleich breit. */
.rp55-public{
  width:100%!important;
  max-width:none!important;
  padding:30px!important;
  overflow-x:hidden!important;
}
.rp55-public :is(.rp55-nav,.rp55-hero,.rp55-section,.portal-footer,.site-footer){
  width:min(var(--rp27-public-max),100%)!important;
  max-width:var(--rp27-public-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.rp55-public .rp55-hero{
  margin-top:clamp(30px,3.4vw,58px)!important;
}
@media(max-width:980px){
  .rp55-public{padding:18px!important;}
  .rp55-public :is(.rp55-nav,.rp55-hero,.rp55-section,.portal-footer,.site-footer){width:100%!important;max-width:100%!important;}
  html body .app-shell .main .content .training-requests-table{table-layout:auto!important;}
  html body .app-shell .main .content .training-requests-table th:nth-child(2),
  html body .app-shell .main .content .training-requests-table td:nth-child(2),
  html body .app-shell .main .content .training-requests-table th:nth-child(4),
  html body .app-shell .main .content .training-requests-table td:nth-child(4),
  html body .app-shell .main .content .training-requests-table th:nth-child(5),
  html body .app-shell .main .content .training-requests-table td:nth-child(5),
  html body .app-shell .main .content .training-requests-table th:nth-child(7),
  html body .app-shell .main .content .training-requests-table td:nth-child(7){display:none!important;}
  html body .app-shell .main .content .training-requests-table th:nth-child(8),
  html body .app-shell .main .content .training-requests-table td:nth-child(8){width:auto!important;}
}


/* Retter-Portal v1.2.28 · öffentliche Startseite auf einheitliche FWPortal-ähnliche Breite */
.rp55-public{
  --rp55-public-max:1440px;
  --rp55-public-gutter:clamp(18px,5vw,96px);
  padding:22px var(--rp55-public-gutter) 36px!important;
}
.rp55-public > .rp55-nav,
.rp55-public > .rp55-hero,
.rp55-public > .rp55-section,
.rp55-public > .portal-footer{
  width:100%!important;
  max-width:var(--rp55-public-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.rp55-public > .rp55-nav{
  margin-top:0!important;
  margin-bottom:clamp(34px,5vw,72px)!important;
}
.rp55-public > .rp55-hero{
  margin-top:0!important;
  margin-bottom:clamp(30px,4vw,58px)!important;
}
.rp55-public > .rp55-section{
  margin-top:clamp(24px,3vw,40px)!important;
}
.rp55-public > .portal-footer{
  margin-top:clamp(30px,4vw,54px)!important;
}
.rp55-hero{
  grid-template-columns:minmax(0,1.05fr) minmax(390px,.72fr)!important;
}
.rp55-hero-copy{max-width:820px!important;}
.rp55-hero h1{max-width:820px!important;}
.rp55-lead{max-width:760px!important;}
.rp55-module-grid,
.rp55-security-grid,
.rp55-flow-grid,
.rp55-proof{
  width:100%!important;
}
.rp55-section-head{max-width:900px!important;}
@media(min-width:1600px){
  .rp55-public{--rp55-public-max:1460px;}
}
@media(max-width:1280px){
  .rp55-public{--rp55-public-gutter:clamp(16px,3vw,40px);}
  .rp55-public > .rp55-nav,
  .rp55-public > .rp55-hero,
  .rp55-public > .rp55-section,
  .rp55-public > .portal-footer{max-width:100%!important;}
}
@media(max-width:860px){
  .rp55-public{padding:12px!important;}
  .rp55-public > .rp55-nav{margin-bottom:22px!important;}
  .rp55-public > .rp55-hero{margin-bottom:22px!important;}
}

/* Retter-Portal v1.2.29 · öffentliche Startseite deutlich breiter, ruhiger und klarer */
html body .rp55-public{
  --rp29-public-width:min(1760px, calc(100vw - 64px));
  width:100%!important;
  max-width:none!important;
  padding:clamp(18px,2.2vw,36px) 0 clamp(36px,4vw,64px)!important;
  overflow-x:hidden!important;
}
html body .rp55-public > :is(.rp55-nav,.rp55-hero,.rp55-section,.portal-footer,.site-footer){
  width:var(--rp29-public-width)!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
html body .rp55-public > .rp55-nav{
  min-height:76px!important;
  margin-bottom:clamp(30px,3.5vw,62px)!important;
  padding:14px 20px!important;
  border-radius:24px!important;
}
html body .rp55-brand{min-width:260px!important;}
html body .rp55-nav-links{gap:clamp(8px,1vw,16px)!important;}
html body .rp55-nav-links a{padding:10px 15px!important;white-space:nowrap!important;}
html body .rp55-public > .rp55-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1.28fr) minmax(420px,.72fr)!important;
  gap:clamp(32px,4vw,76px)!important;
  align-items:stretch!important;
  min-height:min(720px, calc(100vh - 160px))!important;
  margin-top:0!important;
  margin-bottom:clamp(28px,3vw,48px)!important;
  padding:clamp(42px,5vw,86px)!important;
  border-radius:34px!important;
  background:
    radial-gradient(circle at 86% 18%, rgba(200,16,46,.18), transparent 22rem),
    radial-gradient(circle at 8% 0%, rgba(20,89,245,.14), transparent 28rem),
    linear-gradient(135deg, rgba(255,255,255,.90), rgba(245,248,253,.72))!important;
  border:1px solid rgba(148,163,184,.22)!important;
  box-shadow:0 28px 90px rgba(15,23,42,.12)!important;
  overflow:hidden!important;
}
body[data-theme="dark"] .rp55-public > .rp55-hero{
  background:
    radial-gradient(circle at 86% 18%, rgba(200,16,46,.20), transparent 24rem),
    radial-gradient(circle at 8% 0%, rgba(20,89,245,.16), transparent 30rem),
    linear-gradient(135deg, rgba(13,22,38,.94), rgba(7,14,26,.82))!important;
  border-color:rgba(255,255,255,.10)!important;
  box-shadow:0 28px 100px rgba(0,0,0,.34)!important;
}
html body .rp55-hero-copy{max-width:1040px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;padding-top:0!important;}
html body .rp55-hero h1{
  max-width:1040px!important;
  font-size:clamp(3.35rem,5.9vw,7.2rem)!important;
  line-height:.94!important;
  letter-spacing:-.08em!important;
  text-wrap:balance!important;
}
html body .rp55-lead{max-width:880px!important;font-size:clamp(1.08rem,1.18vw,1.32rem)!important;line-height:1.65!important;}
html body .rp55-hero-actions{gap:14px!important;margin-top:32px!important;}
html body .rp55-hero-actions .btn{min-height:52px!important;padding-inline:22px!important;border-radius:15px!important;}
html body .rp55-trust-row{max-width:960px!important;gap:10px!important;}
html body .rp55-trust-row span{font-size:.88rem!important;padding:10px 13px!important;}
html body .rp55-hero-side{align-self:center!important;display:grid!important;gap:18px!important;}
html body .rp55-signin{padding:30px!important;border-radius:28px!important;}
html body .rp55-product-preview{border-radius:28px!important;min-height:300px!important;}
html body .rp55-public > .rp55-section{
  margin-top:clamp(22px,2vw,34px)!important;
  padding:clamp(30px,3.2vw,54px)!important;
  border-radius:30px!important;
  background:rgba(255,255,255,.80)!important;
  border:1px solid rgba(148,163,184,.22)!important;
  box-shadow:0 18px 62px rgba(15,23,42,.08)!important;
}
body[data-theme="dark"] .rp55-public > .rp55-section{
  background:rgba(10,18,31,.78)!important;
  border-color:rgba(255,255,255,.09)!important;
  box-shadow:0 20px 70px rgba(0,0,0,.28)!important;
}
html body .rp55-proof{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;}
html body .rp55-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;}
html body .rp55-module-grid article:before{display:none!important;content:none!important;}
html body .rp55-module-grid article,
html body .rp55-security-grid article,
html body .rp55-flow-grid article,
html body .rp55-proof article{
  border-radius:24px!important;
  border:1px solid rgba(148,163,184,.20)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(248,251,255,.66))!important;
  box-shadow:0 14px 44px rgba(15,23,42,.065)!important;
}
body[data-theme="dark"] .rp55-module-grid article,
body[data-theme="dark"] .rp55-security-grid article,
body[data-theme="dark"] .rp55-flow-grid article,
body[data-theme="dark"] .rp55-proof article{
  background:linear-gradient(145deg,rgba(16,27,45,.88),rgba(11,20,34,.72))!important;
  border-color:rgba(255,255,255,.09)!important;
  box-shadow:0 16px 48px rgba(0,0,0,.24)!important;
}
html body .rp55-security{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;gap:clamp(26px,3vw,52px)!important;}
html body .rp55-security-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
html body .rp55-flow-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;}
html body .rp55-public > .portal-footer,
html body .rp55-public > .site-footer{
  margin-top:clamp(28px,3vw,48px)!important;
  padding:22px 28px!important;
  border-radius:24px!important;
}

/* Header-Ranglogik: normale Benutzer ohne verwirrenden Untertitel; erhöhte Rollen als klare Badge. */
html body .topbar-user{gap:12px!important;}
html body .user-chip{
  display:inline-flex!important;
  align-items:center!important;
  max-width:220px!important;
  min-width:0!important;
  text-align:right!important;
  line-height:1.05!important;
  color:var(--text)!important;
  font-weight:950!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html body .user-chip small{display:none!important;}
html body .topbar-role-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  background:rgba(148,163,184,.14)!important;
  border:1px solid var(--line)!important;
  color:var(--text)!important;
  font-size:.77rem!important;
  font-weight:950!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
html body .topbar-role-badge.role-owner{background:rgba(200,16,46,.16)!important;border-color:rgba(200,16,46,.34)!important;color:#fecdd3!important;}
body[data-theme="light"] .topbar-role-badge.role-owner{color:#9f1239!important;}
html body .topbar-role-badge.role-admin{background:rgba(20,89,245,.14)!important;border-color:rgba(20,89,245,.28)!important;color:#bfdbfe!important;}
body[data-theme="light"] .topbar-role-badge.role-admin{color:#1d4ed8!important;}
html body .topbar-role-badge.role-support{background:rgba(20,184,166,.14)!important;border-color:rgba(20,184,166,.26)!important;color:#99f6e4!important;}
body[data-theme="light"] .topbar-role-badge.role-support{color:#0f766e!important;}
html body .topbar-role-badge.role-editor{background:rgba(217,119,6,.14)!important;border-color:rgba(217,119,6,.28)!important;color:#fed7aa!important;}
body[data-theme="light"] .topbar-role-badge.role-editor{color:#b45309!important;}

@media(max-width:1320px){
  html body .rp55-public{--rp29-public-width:calc(100vw - 36px);}
  html body .rp55-public > .rp55-hero{grid-template-columns:1fr!important;min-height:0!important;}
  html body .rp55-hero-side{grid-template-columns:1fr 1fr!important;align-items:stretch!important;}
  html body .rp55-security{grid-template-columns:1fr!important;}
}
@media(max-width:900px){
  html body .rp55-public{--rp29-public-width:calc(100vw - 24px);padding-top:12px!important;}
  html body .rp55-public > .rp55-nav{position:relative!important;top:auto!important;grid-template-columns:1fr!important;gap:12px!important;}
  html body .rp55-brand{min-width:0!important;}
  html body .rp55-nav-links{justify-content:flex-start!important;overflow-x:auto!important;}
  html body .rp55-nav-actions{justify-content:space-between!important;}
  html body .rp55-public > .rp55-hero{padding:28px!important;border-radius:26px!important;}
  html body .rp55-hero h1{font-size:clamp(2.6rem,11vw,4.4rem)!important;}
  html body .rp55-hero-side{grid-template-columns:1fr!important;}
  html body .rp55-proof,
  html body .rp55-module-grid,
  html body .rp55-security-grid,
  html body .rp55-flow-grid{grid-template-columns:1fr!important;}
  html body .topbar-role-badge{min-height:32px!important;padding:6px 10px!important;}
}
@media(max-width:560px){
  html body .rp55-public{--rp29-public-width:calc(100vw - 18px);}
  html body .rp55-public > .rp55-section{padding:22px!important;border-radius:22px!important;}
  html body .rp55-trust-row span{width:100%!important;text-align:center!important;justify-content:center!important;}
  html body .topbar-role-badge{display:none!important;}
}


/* Retter-Portal v1.2.30 · Startseiten-Überschriften ohne unschöne Worttrennung */
html body .rp55-public .rp55-section-head h2,
html body .rp55-public .rp55-security-copy h2,
html body .rp55-public .rp55-hero h1{
  hyphens:none!important;
  -webkit-hyphens:none!important;
  -ms-hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  text-wrap:balance!important;
}
html body .rp55-public .rp55-section-head{
  max-width:min(1180px,100%)!important;
}
html body .rp55-public .rp55-section-head h2{
  max-width:1120px!important;
}
@media(max-width:900px){
  html body .rp55-public .rp55-section-head h2,
  html body .rp55-public .rp55-security-copy h2{
    font-size:clamp(2.15rem,8.6vw,3.65rem)!important;
    line-height:1.04!important;
    overflow-wrap:break-word!important;
  }
}
@media(max-width:520px){
  html body .rp55-public .rp55-section-head h2,
  html body .rp55-public .rp55-security-copy h2{
    font-size:clamp(2rem,10vw,3.05rem)!important;
    letter-spacing:-.055em!important;
  }
}

/* Retter-Portal v1.2.31 · Smart-Select/Einsatzleitung stabilisiert
   Dropdowns sind ab jetzt echte, opake Overlays und werden nicht mehr von nachfolgenden Feldern überlagert. */
html body .app-shell .main .content form.card.has-smart-select,
html body .app-shell .main .content .card.has-smart-select,
html body .app-shell .main .content .form-grid.has-smart-select,
html body .app-shell .main .content .toolbar.has-smart-select,
html body .app-shell .main .content .inline-form.has-smart-select{
  overflow:visible!important;
  position:relative!important;
  z-index:40!important;
  isolation:visible!important;
}
html body .app-shell .main .content .smart-select-field{
  position:relative!important;
  z-index:20!important;
  isolation:isolate!important;
  overflow:visible!important;
  min-width:0!important;
}
html body .app-shell .main .content .smart-select-field.is-open,
html body .app-shell .main .content .smart-select-field.is-loading,
html body .app-shell .main .content .incident-command-smart-select.is-open,
html body .app-shell .main .content .incident-command-smart-select.is-loading{
  z-index:99999!important;
}
html body .app-shell .main .content .smart-select-field label{
  display:block!important;
  position:relative!important;
  z-index:2!important;
  overflow:visible!important;
}
html body .app-shell .main .content .smart-select-field .smart-select-results,
html body .app-shell .main .content .incident-command-smart-select .smart-select-results{
  position:absolute!important;
  top:calc(100% + 10px)!important;
  left:0!important;
  right:0!important;
  z-index:100000!important;
  display:none!important;
  width:100%!important;
  min-width:100%!important;
  max-width:none!important;
  max-height:min(360px,48vh)!important;
  overflow:auto!important;
  padding:8px!important;
  margin:0!important;
  border-radius:18px!important;
  border:1px solid rgba(148,163,184,.30)!important;
  background:#ffffff!important;
  background-image:none!important;
  box-shadow:0 24px 70px rgba(15,23,42,.24), 0 0 0 1px rgba(255,255,255,.65) inset!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  pointer-events:auto!important;
}
body[data-theme="dark"] .app-shell .main .content .smart-select-field .smart-select-results,
body[data-theme="dark"] .app-shell .main .content .incident-command-smart-select .smart-select-results{
  background:#101827!important;
  border-color:rgba(255,255,255,.16)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.58), 0 0 0 1px rgba(255,255,255,.045) inset!important;
}
@media(prefers-color-scheme:dark){
  body[data-theme="system"] .app-shell .main .content .smart-select-field .smart-select-results,
  body[data-theme="system"] .app-shell .main .content .incident-command-smart-select .smart-select-results{
    background:#101827!important;
    border-color:rgba(255,255,255,.16)!important;
    box-shadow:0 28px 80px rgba(0,0,0,.58), 0 0 0 1px rgba(255,255,255,.045) inset!important;
  }
}
html body .app-shell .main .content .smart-select-field.is-open .smart-select-results,
html body .app-shell .main .content .smart-select-field.is-loading .smart-select-results,
html body .app-shell .main .content .incident-command-smart-select.is-open .smart-select-results,
html body .app-shell .main .content .incident-command-smart-select.is-loading .smart-select-results{
  display:grid!important;
  gap:6px!important;
}
html body .app-shell .main .content .smart-select-field:not(.is-open):not(.is-loading) .smart-select-results{
  display:none!important;
  max-height:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}
html body .app-shell .main .content .smart-select-option{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  width:100%!important;
  min-height:46px!important;
  padding:10px 12px!important;
  border-radius:12px!important;
  border:1px solid transparent!important;
  background:#f8fafc!important;
  color:#0f172a!important;
  box-shadow:none!important;
  cursor:pointer!important;
  text-align:left!important;
  white-space:normal!important;
}
body[data-theme="dark"] .app-shell .main .content .smart-select-option{
  background:#152033!important;
  color:#f8fafc!important;
}
@media(prefers-color-scheme:dark){
  body[data-theme="system"] .app-shell .main .content .smart-select-option{
    background:#152033!important;
    color:#f8fafc!important;
  }
}
html body .app-shell .main .content .smart-select-option:hover,
html body .app-shell .main .content .smart-select-option:focus-visible,
html body .app-shell .main .content .smart-select-option.is-active{
  background:linear-gradient(135deg,rgba(200,16,46,.16),rgba(20,89,245,.10))!important;
  border-color:rgba(200,16,46,.28)!important;
  color:var(--text)!important;
  outline:none!important;
}
html body .app-shell .main .content .smart-select-option.is-selected{
  background:linear-gradient(135deg,rgba(20,184,166,.18),rgba(20,89,245,.10))!important;
  border-color:rgba(20,184,166,.34)!important;
}
html body .app-shell .main .content .smart-select-option strong{
  color:inherit!important;
  font-weight:950!important;
  line-height:1.2!important;
}
html body .app-shell .main .content .smart-select-option small,
html body .app-shell .main .content .smart-select-empty{
  color:var(--muted)!important;
}
html body .app-shell .main .content .smart-select-empty{
  padding:12px 14px!important;
  border-radius:12px!important;
  background:rgba(148,163,184,.11)!important;
  font-weight:850!important;
}
html body .app-shell .main .content .smart-select-native{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  opacity:.01!important;
  pointer-events:none!important;
}
@media(max-width:860px){
  html body .app-shell .main .content .smart-select-field .smart-select-results,
  html body .app-shell .main .content .incident-command-smart-select .smart-select-results{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    max-height:280px!important;
    margin-top:8px!important;
  }
}

/* Retter-Portal v1.2.32 · Lehrgangsnachweis direkt beim Anlegen */
.training-create-upload{
  display:grid!important;
  gap:14px!important;
  padding:18px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,rgba(148,163,184,.10),rgba(148,163,184,.045))!important;
}
body[data-theme="dark"] .training-create-upload{
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025))!important;
  border-color:rgba(255,255,255,.09)!important;
}
.training-create-upload-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
}
.training-create-upload-head h3{
  margin:0 0 4px!important;
  font-size:1.05rem!important;
  line-height:1.2!important;
}
.training-create-upload-head p{margin:0!important;}
.training-create-drop{
  min-height:92px!important;
}
form[data-optional-attachment-form] [data-file-status]{
  min-height:1.25em!important;
  margin:0!important;
}
@media(max-width:760px){
  .training-create-upload{padding:16px!important;border-radius:18px!important;}
  .training-create-upload-head{display:grid!important;}
}

/* Retter-Portal v1.2.33 · Personalverwaltung/Zuordnung sauberer + Mobile-only Feinschliff */
html body .app-shell .main .content .personnel-mini-table-card > h2{
  margin:0 0 18px!important;
  line-height:1.2!important;
}
html body .app-shell .main .content .personnel-mini-table-card > .table-wrap{
  margin-top:0!important;
}
html body .app-shell .main .content .personnel-account-link-card .card-head{
  margin-bottom:22px!important;
}
html body .app-shell .main .content .account-linked-notice{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  min-height:56px!important;
  padding:16px 18px!important;
  border-radius:18px!important;
  line-height:1.45!important;
  overflow:visible!important;
  white-space:normal!important;
}
html body .app-shell .main .content .account-linked-notice strong{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
html body .app-shell .main .content .account-linked-notice span{
  min-width:0!important;
  overflow-wrap:break-word!important;
}
html body .app-shell .main .content .admin-user-link-table table{
  table-layout:fixed!important;
}
html body .app-shell .main .content .admin-user-link-table th:nth-child(1),
html body .app-shell .main .content .admin-user-link-table td:nth-child(1){width:23%!important;}
html body .app-shell .main .content .admin-user-link-table th:nth-child(2),
html body .app-shell .main .content .admin-user-link-table td:nth-child(2){width:22%!important;}
html body .app-shell .main .content .admin-user-link-table th:nth-child(3),
html body .app-shell .main .content .admin-user-link-table td:nth-child(3){width:16%!important;}
html body .app-shell .main .content .admin-user-link-table th:nth-child(4),
html body .app-shell .main .content .admin-user-link-table td:nth-child(4){width:13%!important;}
html body .app-shell .main .content .admin-user-link-table th:nth-child(5),
html body .app-shell .main .content .admin-user-link-table td:nth-child(5){width:26%!important;}
html body .app-shell .main .content .admin-link-action-cell{
  padding-right:18px!important;
  text-align:right!important;
  overflow:visible!important;
}
html body .app-shell .main .content .admin-unlink-form{
  display:flex!important;
  justify-content:flex-end!important;
  width:100%!important;
  min-width:0!important;
}
html body .app-shell .main .content .admin-unlink-form .btn{
  width:auto!important;
  max-width:100%!important;
  min-width:148px!important;
  white-space:normal!important;
  line-height:1.15!important;
  padding-inline:12px!important;
  text-align:center!important;
}

@media(max-width:860px){
  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body{
    min-height:100dvh!important;
    -webkit-text-size-adjust:100%!important;
  }
  html body .app-shell{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  html body .sidebar{
    position:fixed!important;
    z-index:120!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    width:min(86vw,330px)!important;
    height:100dvh!important;
    padding:14px 12px calc(22px + env(safe-area-inset-bottom))!important;
    transform:translateX(calc(-100% - 16px))!important;
    transition:transform .22s ease!important;
    border-right:1px solid rgba(148,163,184,.22)!important;
    box-shadow:24px 0 80px rgba(0,0,0,.36)!important;
    overflow:auto!important;
    overscroll-behavior:contain!important;
  }
  html body.sidebar-open .sidebar{
    transform:translateX(0)!important;
  }
  html body .sidebar .brand{
    min-height:68px!important;
    padding:8px 8px 16px!important;
  }
  html body .sidebar nav a{
    min-height:46px!important;
    padding:10px 12px!important;
    border-radius:16px!important;
    font-size:.94rem!important;
  }
  html body .sidebar .nav-section{
    margin:16px 8px 8px!important;
    font-size:.68rem!important;
  }
  html body .main{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .topbar{
    position:sticky!important;
    top:0!important;
    z-index:80!important;
    min-height:64px!important;
    padding:calc(8px + env(safe-area-inset-top)) 12px 9px!important;
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:center!important;
    border-radius:0 0 22px 22px!important;
    background:rgba(8,13,22,.88)!important;
    backdrop-filter:blur(18px) saturate(1.25)!important;
    -webkit-backdrop-filter:blur(18px) saturate(1.25)!important;
  }
  body[data-theme="light"] .topbar{
    background:rgba(255,255,255,.92)!important;
  }
  html body .menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:46px!important;
    height:46px!important;
    border-radius:16px!important;
    border:1px solid var(--line-soft)!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
    font-size:1.25rem!important;
  }
  html body .topbar-title{
    min-width:0!important;
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
  }
  html body .topbar-logo-pair{
    width:34px!important;
    height:34px!important;
    flex:0 0 34px!important;
  }
  html body .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
    margin:0!important;
    max-width:100%!important;
    font-size:.68rem!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar-user{
    grid-column:1 / -1!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    align-items:stretch!important;
  }
  html body .topbar.has-department-switch .department-context-switch,
  html body .department-context-switch{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    border-radius:18px!important;
    padding:9px!important;
  }
  html body .department-context-switch span{
    font-size:.67rem!important;
    letter-spacing:.10em!important;
  }
  html body .theme-switch,
  html body .topbar-role-badge,
  html body .user-chip{
    display:none!important;
  }
  html body .topbar form[action="/logout"]{
    display:none!important;
  }
  html body .content{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:14px 12px calc(24px + env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
  }
  html body .content > .page-head,
  html body .content > .page-hero{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    padding:20px!important;
    margin-bottom:16px!important;
    border-radius:24px!important;
  }
  html body .content > .page-head h1,
  html body .content > .page-hero h1,
  html body .content h1{
    font-size:clamp(2.05rem,10vw,3.05rem)!important;
    line-height:1.03!important;
    letter-spacing:-.06em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  html body .grid,
  html body .grid.two,
  html body .grid.three,
  html body .stat-grid,
  html body .stat-grid.three,
  html body .stat-grid.six,
  html body .form-grid,
  html body .report-summary,
  html body .info-grid,
  html body .detail-grid,
  html body .entity-grid{
    grid-template-columns:1fr!important;
    gap:13px!important;
  }
  html body .card,
  html body .stat-card,
  html body .toolbar,
  html body .pagination,
  html body .notice,
  html body .notice-soft{
    border-radius:22px!important;
    margin-bottom:14px!important;
    padding:18px!important;
    overflow:visible!important;
  }
  html body .card-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    align-items:start!important;
  }
  html body .card-head .pill{
    justify-self:start!important;
  }
  html body .toolbar,
  html body .toolbar form,
  html body .inline-form,
  html body .form-actions,
  html body .actions,
  html body .hero-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    gap:10px!important;
  }
  html body .btn,
  html body button,
  html body .actions .btn,
  html body .form-actions .btn,
  html body .hero-actions .btn{
    width:100%!important;
    max-width:100%!important;
    min-height:46px!important;
    white-space:normal!important;
  }
  html body label,
  html body input,
  html body select,
  html body textarea{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    font-size:16px!important;
  }
  html body .table-wrap,
  html body .data-table-card,
  html body .checks-table-wrap{
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    padding:0!important;
    border-radius:0!important;
  }
  html body .table-wrap table.responsive-table,
  html body .data-table-card table.responsive-table,
  html body .checks-table-wrap table.responsive-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    table-layout:auto!important;
    background:transparent!important;
  }
  html body .table-wrap table.responsive-table thead,
  html body .data-table-card table.responsive-table thead,
  html body .checks-table-wrap table.responsive-table thead{
    display:none!important;
  }
  html body .table-wrap table.responsive-table tbody,
  html body .data-table-card table.responsive-table tbody,
  html body .checks-table-wrap table.responsive-table tbody{
    display:grid!important;
    gap:12px!important;
    width:100%!important;
  }
  html body .table-wrap table.responsive-table tr,
  html body .data-table-card table.responsive-table tr,
  html body .checks-table-wrap table.responsive-table tr{
    display:block!important;
    width:100%!important;
    padding:13px 14px!important;
    border-radius:20px!important;
    border:1px solid var(--rp26-border, var(--line-soft))!important;
    background:var(--rp26-panel, var(--surface))!important;
    box-shadow:var(--rp26-shadow-soft, var(--shadow-sm))!important;
    overflow:hidden!important;
  }
  html body .table-wrap table.responsive-table td,
  html body .data-table-card table.responsive-table td,
  html body .checks-table-wrap table.responsive-table td{
    display:grid!important;
    grid-template-columns:minmax(92px,36%) minmax(0,1fr)!important;
    gap:10px!important;
    align-items:start!important;
    width:100%!important;
    padding:9px 0!important;
    border:0!important;
    border-bottom:1px solid var(--line-soft)!important;
    background:transparent!important;
    text-align:left!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
  }
  html body .table-wrap table.responsive-table td:last-child,
  html body .data-table-card table.responsive-table td:last-child,
  html body .checks-table-wrap table.responsive-table td:last-child{
    border-bottom:0!important;
  }
  html body .table-wrap table.responsive-table td::before,
  html body .data-table-card table.responsive-table td::before,
  html body .checks-table-wrap table.responsive-table td::before{
    content:attr(data-label)!important;
    display:block!important;
    color:var(--muted)!important;
    font-size:.67rem!important;
    font-weight:950!important;
    letter-spacing:.09em!important;
    text-transform:uppercase!important;
    line-height:1.25!important;
  }
  html body .table-wrap table.responsive-table td.actions,
  html body .table-wrap table.responsive-table td.mobile-action-cell,
  html body .data-table-card table.responsive-table td.actions,
  html body .data-table-card table.responsive-table td.mobile-action-cell{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding-top:12px!important;
  }
  html body .table-wrap table.responsive-table td.actions::before,
  html body .table-wrap table.responsive-table td.mobile-action-cell::before,
  html body .data-table-card table.responsive-table td.actions::before,
  html body .data-table-card table.responsive-table td.mobile-action-cell::before{
    display:none!important;
    content:none!important;
  }
  html body .account-linked-notice{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:4px!important;
    padding:15px!important;
  }
  html body .admin-user-link-table table.responsive-table .admin-link-action-cell,
  html body .admin-user-link-table table.responsive-table .admin-unlink-form,
  html body .admin-user-link-table table.responsive-table .admin-unlink-form .btn{
    width:100%!important;
    max-width:100%!important;
  }
}

@media(max-width:420px){
  html body .content{padding-left:9px!important;padding-right:9px!important;}
  html body .content > .page-head,
  html body .content > .page-hero,
  html body .card,
  html body .stat-card{border-radius:19px!important;padding:15px!important;}
  html body .table-wrap table.responsive-table td,
  html body .data-table-card table.responsive-table td,
  html body .checks-table-wrap table.responsive-table td{
    grid-template-columns:1fr!important;
    gap:4px!important;
  }
}

/* Retter-Portal v1.2.34 · Mobile-Lesbarkeit, Dateispeicher-Abstand und Nach-oben-Button */
.back-to-top-btn{
  position:fixed!important;
  right:clamp(14px,2.4vw,28px)!important;
  bottom:calc(18px + env(safe-area-inset-bottom))!important;
  z-index:250!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-width:54px!important;
  height:48px!important;
  padding:0 15px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  background:linear-gradient(135deg,#dc1430,#9f1025)!important;
  color:#fff!important;
  font-weight:950!important;
  font-size:.88rem!important;
  box-shadow:0 18px 46px rgba(200,16,46,.28), 0 12px 36px rgba(0,0,0,.22)!important;
  opacity:0!important;
  pointer-events:none!important;
  transform:translateY(14px) scale(.96)!important;
  transition:opacity .18s ease, transform .18s ease, box-shadow .18s ease!important;
}
.back-to-top-btn span{font-size:1.15rem!important;line-height:1!important;}
.back-to-top-btn strong{font:inherit!important;line-height:1!important;}
.back-to-top-btn.is-visible{opacity:1!important;pointer-events:auto!important;transform:translateY(0) scale(1)!important;}
.back-to-top-btn:hover{box-shadow:0 22px 58px rgba(200,16,46,.34), 0 14px 44px rgba(0,0,0,.28)!important;}
body[data-theme="light"] .back-to-top-btn{border-color:rgba(159,18,57,.18)!important;}

/* Dateispeicher: sauberer Abstand zwischen Hochladen und Dateitabelle */
html body .app-shell .main .content .org-file-card form[data-attachment-form],
html body .app-shell .main .content .attachment-card form[data-attachment-form],
html body .app-shell .main .content .attachment-upload{
  margin-bottom:34px!important;
  padding-bottom:28px!important;
  border-bottom:1px solid var(--line-soft)!important;
}
html body .app-shell .main .content .org-file-card form[data-attachment-form] + .table-wrap,
html body .app-shell .main .content .attachment-upload + .attachment-list,
html body .app-shell .main .content .attachment-list{
  margin-top:26px!important;
}
html body .app-shell .main .content .org-file-card .table-wrap{
  margin-top:26px!important;
}

/* Mobile: keine Buchstaben mehr untereinander, Tabellen als gut lesbare Karten */
@media(max-width:860px){
  html,body{
    overflow-x:hidden!important;
    max-width:100%!important;
  }
  html body,
  html body .app-shell,
  html body .main,
  html body .content{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .content{
    padding:14px 12px calc(84px + env(safe-area-inset-bottom))!important;
  }
  html body .content *,
  html body .topbar *,
  html body .sidebar *{
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:auto!important;
  }
  html body .content :is(h1,h2,h3,h4,.btn,button,.pill,.status,.role,.badge,th,td,strong,small,p,span,label,a){
    max-width:100%!important;
    min-width:0!important;
  }
  html body .content > .page-head,
  html body .content > .page-hero{
    padding:18px!important;
    gap:12px!important;
    border-radius:22px!important;
  }
  html body .content > .page-head h1,
  html body .content > .page-hero h1,
  html body .content h1{
    font-size:clamp(1.95rem,8.8vw,2.75rem)!important;
    line-height:1.06!important;
    letter-spacing:-.055em!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }
  html body .content h2{
    font-size:clamp(1.25rem,5.5vw,1.7rem)!important;
    line-height:1.16!important;
  }
  html body .content h3{
    font-size:clamp(1.06rem,4.8vw,1.32rem)!important;
    line-height:1.2!important;
  }
  html body .card,
  html body .stat-card,
  html body .toolbar,
  html body .pagination,
  html body .notice,
  html body .notice-soft{
    padding:16px!important;
    border-radius:21px!important;
    margin-bottom:14px!important;
  }
  html body .card-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    align-items:start!important;
    overflow:visible!important;
  }
  html body .card-head :is(h2,h3,p){
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:normal!important;
  }
  html body :is(.grid,.grid.two,.grid.three,.stat-grid,.stat-grid.three,.stat-grid.six,.form-grid,.form-grid.two,.form-grid.three,.report-summary,.info-grid,.detail-grid,.entity-grid){
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
  }
  html body label,
  html body input,
  html body select,
  html body textarea{
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    font-size:16px!important;
  }
  html body .form-actions,
  html body .actions,
  html body .hero-actions,
  html body .inline-form,
  html body .toolbar,
  html body .toolbar form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    width:100%!important;
  }
  html body .btn,
  html body button,
  html body input[type="submit"]{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:46px!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
    text-align:center!important;
  }

  html body .table-wrap,
  html body .data-table-card,
  html body .checks-table-wrap{
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    padding:0!important;
    border-radius:0!important;
  }
  html body .table-wrap table.responsive-table,
  html body .data-table-card table.responsive-table,
  html body .checks-table-wrap table.responsive-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    background:transparent!important;
  }
  html body .table-wrap table.responsive-table thead,
  html body .data-table-card table.responsive-table thead,
  html body .checks-table-wrap table.responsive-table thead{
    display:none!important;
  }
  html body .table-wrap table.responsive-table tbody,
  html body .data-table-card table.responsive-table tbody,
  html body .checks-table-wrap table.responsive-table tbody{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    width:100%!important;
  }
  html body .table-wrap table.responsive-table tr,
  html body .data-table-card table.responsive-table tr,
  html body .checks-table-wrap table.responsive-table tr{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    padding:14px!important;
    border-radius:20px!important;
    border:1px solid var(--rp26-border, var(--line-soft))!important;
    background:var(--rp26-panel, var(--surface))!important;
    box-shadow:var(--rp26-shadow-soft, var(--shadow-sm))!important;
    overflow:visible!important;
  }
  html body .table-wrap table.responsive-table td,
  html body .data-table-card table.responsive-table td,
  html body .checks-table-wrap table.responsive-table td{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:4px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:10px 0!important;
    border:0!important;
    border-bottom:1px solid var(--line-soft)!important;
    background:transparent!important;
    text-align:left!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:auto!important;
  }
  html body .table-wrap table.responsive-table td::before,
  html body .data-table-card table.responsive-table td::before,
  html body .checks-table-wrap table.responsive-table td::before{
    content:attr(data-label)!important;
    display:block!important;
    width:100%!important;
    color:var(--muted)!important;
    font-size:.68rem!important;
    font-weight:950!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
    line-height:1.25!important;
    margin-bottom:2px!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }
  html body .table-wrap table.responsive-table td:last-child,
  html body .data-table-card table.responsive-table td:last-child,
  html body .checks-table-wrap table.responsive-table td:last-child{
    border-bottom:0!important;
  }
  html body .table-wrap table.responsive-table td.actions,
  html body .table-wrap table.responsive-table td.mobile-action-cell,
  html body .data-table-card table.responsive-table td.actions,
  html body .data-table-card table.responsive-table td.mobile-action-cell,
  html body .checks-table-wrap table.responsive-table td.actions,
  html body .checks-table-wrap table.responsive-table td.mobile-action-cell{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
    padding-top:12px!important;
  }
  html body .table-wrap table.responsive-table td.actions::before,
  html body .table-wrap table.responsive-table td.mobile-action-cell::before,
  html body .data-table-card table.responsive-table td.actions::before,
  html body .data-table-card table.responsive-table td.mobile-action-cell::before,
  html body .checks-table-wrap table.responsive-table td.actions::before,
  html body .checks-table-wrap table.responsive-table td.mobile-action-cell::before{
    display:none!important;
    content:none!important;
  }
  html body .table-wrap table.responsive-table td :is(.btn,button,select,input,textarea,form),
  html body .data-table-card table.responsive-table td :is(.btn,button,select,input,textarea,form),
  html body .checks-table-wrap table.responsive-table td :is(.btn,button,select,input,textarea,form){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  html body .attachment-upload,
  html body .org-file-card form[data-attachment-form]{
    margin-bottom:32px!important;
    padding-bottom:28px!important;
  }
  html body .org-file-card form[data-attachment-form] + .table-wrap,
  html body .attachment-upload + .attachment-list,
  html body .attachment-list{
    margin-top:28px!important;
  }
  .back-to-top-btn{
    right:12px!important;
    bottom:calc(12px + env(safe-area-inset-bottom))!important;
    height:50px!important;
    min-width:50px!important;
    padding:0 13px!important;
    border-radius:18px!important;
  }
  .back-to-top-btn strong{display:none!important;}
}

@media(max-width:520px){
  html body .content{padding-left:10px!important;padding-right:10px!important;}
  html body .content > .page-head,
  html body .content > .page-hero,
  html body .card,
  html body .stat-card{border-radius:19px!important;padding:14px!important;}
  html body .sidebar{width:min(92vw,330px)!important;}
  html body .topbar{grid-template-columns:44px minmax(0,1fr)!important;padding-left:10px!important;padding-right:10px!important;}
  html body .menu-toggle{width:42px!important;height:42px!important;border-radius:14px!important;}
  html body .topbar-logo-pair{width:30px!important;height:30px!important;flex-basis:30px!important;}
  html body .topbar-eyebrow{font-size:.62rem!important;letter-spacing:.06em!important;}
  html body .department-context-switch{padding:8px!important;border-radius:16px!important;}
  html body .department-context-switch select{font-size:15px!important;}
  html body .content > .page-head h1,
  html body .content > .page-hero h1,
  html body .content h1{font-size:clamp(1.75rem,8.5vw,2.35rem)!important;}
}

/* Retter-Portal v1.2.35 · Topbar: mehr Platz für längere Benutzernamen */
@media (min-width:861px){
  html body .topbar{
    display:grid!important;
    grid-template-columns:minmax(210px,auto) minmax(0,1fr)!important;
    align-items:center!important;
    gap:clamp(14px,2vw,34px)!important;
  }
  html body .topbar-title{
    min-width:210px!important;
    max-width:420px!important;
    flex:0 1 auto!important;
  }
  html body .topbar-user{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:clamp(10px,1vw,16px)!important;
    overflow:visible!important;
  }
  html body .topbar-user > *{
    min-width:0!important;
  }
  html body .theme-switch,
  html body .topbar-role-badge,
  html body .topbar form[action="/logout"]{
    flex:0 0 auto!important;
  }
  html body .user-chip{
    flex:0 1 clamp(220px,24vw,460px)!important;
    width:auto!important;
    min-width:clamp(180px,14vw,260px)!important;
    max-width:clamp(260px,26vw,520px)!important;
    display:block!important;
    color:var(--text)!important;
    text-align:left!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    line-height:1.12!important;
  }
  html body .user-chip.has-role-badge{
    min-width:clamp(200px,16vw,300px)!important;
    max-width:clamp(300px,28vw,560px)!important;
  }
  html body .topbar.has-department-switch{
    grid-template-columns:minmax(190px,auto) minmax(0,1fr)!important;
  }
  html body .topbar.has-department-switch .department-context-switch{
    flex:1 1 clamp(360px,38vw,680px)!important;
    min-width:clamp(320px,30vw,520px)!important;
    max-width:min(760px,44vw)!important;
  }
  html body .topbar.has-department-switch .user-chip{
    flex-basis:clamp(180px,18vw,360px)!important;
    min-width:clamp(160px,13vw,240px)!important;
    max-width:clamp(240px,20vw,420px)!important;
  }
}
@media (min-width:1280px){
  html body .topbar{
    padding-left:clamp(24px,2.4vw,44px)!important;
    padding-right:clamp(24px,2.4vw,44px)!important;
  }
  html body .user-chip{
    max-width:560px!important;
  }
  html body .user-chip.has-role-badge{
    max-width:600px!important;
  }
}
@media (max-width:1100px) and (min-width:861px){
  html body .topbar{
    grid-template-columns:1fr!important;
    align-items:flex-start!important;
  }
  html body .topbar-user{
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
  }
  html body .user-chip{
    min-width:220px!important;
    max-width:calc(100vw - 340px)!important;
  }
}

/* Retter-Portal v1.2.36 · Rollen-&-Rechte Smart-Suche und Topbar-Namensposition */
html body .app-shell .main .content .rights-workbench-card{
  overflow:visible!important;
  position:relative!important;
  z-index:2!important;
}
html body .app-shell .main .content .rights-assign-form{
  position:relative!important;
  z-index:5!important;
  overflow:visible!important;
  margin-bottom:26px!important;
}
html body .app-shell .main .content .rights-assign-form.smart-select-open{
  margin-bottom:clamp(260px,38vh,390px)!important;
  z-index:100050!important;
}
html body .app-shell .main .content .rights-assign-form .smart-select-field{
  z-index:100060!important;
}
html body .app-shell .main .content .rights-assign-form .smart-select-field.is-open,
html body .app-shell .main .content .rights-assign-form .smart-select-field.is-loading{
  z-index:100090!important;
}
html body .app-shell .main .content .rights-assign-form .smart-select-results{
  z-index:100100!important;
  background:#101827!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.62), 0 0 0 1px rgba(255,255,255,.05) inset!important;
  opacity:1!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body[data-theme="light"] .app-shell .main .content .rights-assign-form .smart-select-results{
  background:#ffffff!important;
  border-color:rgba(100,116,139,.28)!important;
  box-shadow:0 24px 70px rgba(15,23,42,.20), 0 0 0 1px rgba(255,255,255,.72) inset!important;
}
html body .app-shell .main .content .rights-unlinked-details,
html body .app-shell .main .content .rights-unlinked-notice{
  position:relative!important;
  z-index:1!important;
  margin-top:28px!important;
  clear:both!important;
}
html body .app-shell .main .content .rights-workbench-card .smart-select-open + .rights-unlinked-details,
html body .app-shell .main .content .rights-workbench-card .smart-select-open + .rights-unlinked-notice{
  margin-top:32px!important;
}
html body .app-shell .main .content .rights-unlinked-details summary{
  position:relative!important;
  z-index:1!important;
}

@media (min-width:861px){
  html body .topbar-user{
    gap:clamp(8px,.75vw,13px)!important;
  }
  html body .user-chip,
  html body .user-chip.has-role-badge{
    flex:0 1 clamp(150px,15vw,340px)!important;
    min-width:clamp(130px,10vw,190px)!important;
    max-width:clamp(220px,18vw,360px)!important;
  }
  html body .topbar.has-department-switch .user-chip,
  html body .topbar.has-department-switch .user-chip.has-role-badge{
    flex:0 1 clamp(140px,13vw,300px)!important;
    min-width:clamp(120px,9vw,170px)!important;
    max-width:clamp(200px,16vw,330px)!important;
  }
}
@media (min-width:1500px){
  html body .user-chip,
  html body .user-chip.has-role-badge{
    max-width:380px!important;
  }
  html body .topbar.has-department-switch .user-chip,
  html body .topbar.has-department-switch .user-chip.has-role-badge{
    max-width:340px!important;
  }
}
@media (max-width:860px){
  html body .app-shell .main .content .rights-assign-form.smart-select-open{
    margin-bottom:26px!important;
  }
  html body .app-shell .main .content .rights-unlinked-details,
  html body .app-shell .main .content .rights-unlinked-notice{
    margin-top:24px!important;
  }
}

/* Retter-Portal v1.2.37 · Mobile-First Reparatur + glattere Topbar */
@media (min-width: 861px){
  html body .topbar{
    display:grid!important;
    grid-template-columns:minmax(250px,360px) minmax(0,1fr)!important;
    align-items:center!important;
    gap:18px!important;
    min-height:72px!important;
    padding:12px clamp(22px,2vw,36px)!important;
    background:rgba(7,14,25,.82)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
  body[data-theme="light"] .topbar{background:rgba(255,255,255,.86)!important;}
  html body .topbar-title{min-width:0!important;max-width:360px!important;width:auto!important;}
  html body .topbar-user{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:10px!important;
    min-width:0!important;
    width:100%!important;
    overflow:visible!important;
  }
  html body .topbar.has-department-switch .department-context-switch{
    flex:1 1 520px!important;
    min-width:min(440px,42vw)!important;
    max-width:680px!important;
  }
  html body .topbar .theme-switch,
  html body .topbar .topbar-role-badge,
  html body .topbar form[action="/logout"]{flex:0 0 auto!important;}
  html body .topbar .user-chip{
    flex:0 1 260px!important;
    min-width:120px!important;
    max-width:300px!important;
    text-align:left!important;
  }
}

@media (max-width: 860px){
  html,body{overflow-x:hidden!important;}
  html body .app-shell{display:block!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  html body .main{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;}
  html body .content{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:14px 12px calc(86px + env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
  }

  /* Mobile Topbar: alle PC-Aktionen bleiben erreichbar inkl. Logout. */
  html body .topbar{
    position:sticky!important;
    top:0!important;
    z-index:1000!important;
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:8px 10px!important;
    align-items:center!important;
    min-height:0!important;
    height:auto!important;
    padding:calc(8px + env(safe-area-inset-top)) 10px 10px!important;
    border-radius:0 0 20px 20px!important;
    overflow:visible!important;
    background:rgba(7,14,25,.94)!important;
    box-shadow:0 12px 36px rgba(0,0,0,.34)!important;
  }
  body[data-theme="light"] .topbar{background:rgba(255,255,255,.94)!important;box-shadow:0 10px 30px rgba(15,23,42,.12)!important;}
  html body .menu-toggle{display:inline-flex!important;grid-column:1!important;width:46px!important;height:46px!important;min-width:46px!important;border-radius:16px!important;align-items:center!important;justify-content:center!important;}
  html body .topbar-title{grid-column:2!important;display:flex!important;align-items:center!important;min-width:0!important;width:100%!important;max-width:100%!important;overflow:hidden!important;}
  html body .topbar-logo-pair{width:34px!important;height:34px!important;flex:0 0 34px!important;}
  html body .topbar-eyebrow{font-size:.68rem!important;gap:5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;letter-spacing:.06em!important;}
  html body .topbar-eyebrow span:first-child{display:inline-block!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  html body .topbar-version{font-size:.68rem!important;white-space:nowrap!important;}
  html body .topbar-user{
    grid-column:1 / -1!important;
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }
  html body .topbar.has-department-switch .department-context-switch,
  html body .department-context-switch{
    order:0!important;
    flex:1 0 100%!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:5px!important;
    padding:9px 10px!important;
    border-radius:16px!important;
  }
  html body .department-context-switch span{font-size:.66rem!important;letter-spacing:.08em!important;}
  html body .department-context-switch select{width:100%!important;min-height:40px!important;font-size:15px!important;}
  html body .topbar .theme-switch{order:1!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;transform:scale(.92)!important;transform-origin:left center!important;}
  html body .topbar .topbar-role-badge{order:2!important;flex:0 0 auto!important;max-width:45vw!important;min-height:34px!important;padding:7px 10px!important;font-size:.70rem!important;}
  html body .topbar .user-chip{order:3!important;flex:1 1 120px!important;min-width:0!important;max-width:none!important;display:block!important;text-align:left!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:.94rem!important;}
  html body .topbar form[action="/logout"]{order:4!important;flex:0 0 auto!important;width:auto!important;max-width:none!important;display:block!important;}
  html body .topbar form[action="/logout"] .btn{width:auto!important;min-width:92px!important;min-height:42px!important;padding:0 14px!important;white-space:nowrap!important;border-radius:14px!important;}

  /* Grundlayout: keine Buchstaben-Spalten mehr. */
  html body .content *,
  html body .content *::before,
  html body .content *::after{
    box-sizing:border-box!important;
  }
  html body .content :is(h1,h2,h3,h4,p,span,strong,small,a,label,li,td,th,.btn,button,.pill,.status,.role,.badge){
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
    line-break:auto!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .content :is(.card,.stat-card,.page-head,.page-hero,.toolbar,.pagination,.notice,.notice-soft){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    border-radius:22px!important;
    padding:16px!important;
    overflow:visible!important;
  }
  html body .content :is(.grid,.grid.two,.grid.three,.stat-grid,.stat-grid.three,.form-grid,.form-grid.two,.form-grid.three,.detail-grid,.info-grid,.entity-grid,.calendar-page-grid){
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
  }
  html body .content :is(.actions,.form-actions,.hero-actions,.toolbar form,.inline-form){
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    width:100%!important;
  }
  html body .content :is(.btn,button,input[type="submit"]){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:46px!important;
    white-space:normal!important;
    text-align:center!important;
    justify-content:center!important;
  }

  /* Tabellen auf Mobile als echte Karten – keine geerbten Desktop-Spaltenbreiten. */
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap){
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  html body .content table.responsive-table,
  html body .content table.responsive-table tbody,
  html body .content table.responsive-table tr,
  html body .content table.responsive-table td{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  html body .content table.responsive-table{display:block!important;table-layout:auto!important;background:transparent!important;}
  html body .content table.responsive-table thead{display:none!important;}
  html body .content table.responsive-table tbody{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;}
  html body .content table.responsive-table tr{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
    padding:16px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:22px!important;
    background:var(--rp26-panel, var(--surface))!important;
    box-shadow:var(--rp26-shadow-soft, var(--shadow-sm))!important;
    overflow:visible!important;
  }
  html body .content table.responsive-table td{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:5px!important;
    padding:10px 0!important;
    border:0!important;
    border-bottom:1px solid var(--line-soft)!important;
    background:transparent!important;
    text-align:left!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  html body .content table.responsive-table td::before{
    content:attr(data-label)!important;
    display:block!important;
    width:100%!important;
    color:var(--muted)!important;
    font-size:.69rem!important;
    font-weight:950!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
    line-height:1.25!important;
    white-space:normal!important;
  }
  html body .content table.responsive-table td:last-child{border-bottom:0!important;}
  html body .content table.responsive-table td.mobile-full-row,
  html body .content table.responsive-table td.empty{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:140px!important;
    padding:22px!important;
    text-align:center!important;
    border:1px dashed var(--line-soft)!important;
    border-radius:18px!important;
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
  }
  html body .content table.responsive-table td.mobile-full-row::before,
  html body .content table.responsive-table td.empty::before,
  html body .content table.responsive-table td.actions::before,
  html body .content table.responsive-table td.mobile-action-cell::before{content:none!important;display:none!important;}
  html body .content table.responsive-table td :is(.btn,button,select,input,textarea,form){width:100%!important;max-width:100%!important;min-width:0!important;}

  /* Kalender mobil nutzbar statt 7 zu schmalen Spalten. */
  html body .content .calendar-grid,
  html body .content .youth-mini-calendar{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
  }
  html body .content .calendar-weekday,
  html body .content .youth-weekday{display:none!important;}
  html body .content .calendar-day,
  html body .content .youth-day{
    min-width:0!important;
    min-height:118px!important;
    padding:12px!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }
  html body .content .calendar-day-head{gap:6px!important;align-items:flex-start!important;}
  html body .content .calendar-day-add-mini{width:34px!important;height:34px!important;min-height:34px!important;min-width:34px!important;flex:0 0 34px!important;padding:0!important;border-radius:12px!important;}
  html body .content .calendar-event-pill,
  html body .content .youth-calendar-event-link{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  /* Nach-oben-Button klein und nicht als roter Balken. */
  html body .back-to-top-btn{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    max-width:54px!important;
    right:14px!important;
    bottom:calc(16px + env(safe-area-inset-bottom))!important;
    padding:0!important;
    border-radius:18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  html body .back-to-top-btn span{font-size:1.45rem!important;line-height:1!important;}
  html body .back-to-top-btn strong{display:none!important;}
}

@media (max-width:520px){
  html body .content{padding-left:12px!important;padding-right:12px!important;}
  html body .content table.responsive-table tr{padding:14px!important;border-radius:20px!important;}
  html body .content .calendar-grid,
  html body .content .youth-mini-calendar{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;}
  html body .content .calendar-day,
  html body .content .youth-day{min-height:108px!important;padding:10px!important;}
  html body .content :is(h1){font-size:clamp(1.85rem,9vw,2.6rem)!important;}
  html body .content :is(h2){font-size:clamp(1.24rem,6vw,1.75rem)!important;}
}

/* Retter-Portal v1.2.38 · Mobile-Reparatur, Dropdown-Overlay und glattere Topbar */
@media (min-width:861px){
  html body .topbar{
    display:grid!important;
    grid-template-columns:minmax(230px,320px) minmax(0,1fr)!important;
    align-items:center!important;
    gap:14px!important;
    min-height:74px!important;
    padding:12px clamp(20px,2vw,34px)!important;
  }
  html body .topbar-title{max-width:320px!important;min-width:0!important;width:auto!important;}
  html body .topbar-user{
    justify-content:flex-end!important;
    gap:10px!important;
    min-width:0!important;
    width:100%!important;
  }
  html body .topbar.has-department-switch .department-context-switch{
    flex:1 1 auto!important;
    width:auto!important;
    min-width:clamp(320px,26vw,520px)!important;
    max-width:min(620px,36vw)!important;
  }
  html body .topbar .theme-switch,
  html body .topbar .topbar-role-badge,
  html body .topbar form[action="/logout"]{flex:0 0 auto!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:clamp(160px,14vw,310px)!important;
    text-align:left!important;
  }
}

/* Smart-Suchen dürfen nie von darunterliegenden Karten/Feldern verdeckt werden und verursachen keinen Layout-Sprung. */
html body .app-shell .main .content :is(.smart-select-field,.smart-select-field.is-open,.smart-select-field.is-loading){
  position:relative!important;
  overflow:visible!important;
  z-index:220000!important;
}
html body .app-shell .main .content :is(form,.card,.toolbar,.form-grid,.inline-form).smart-select-open{
  position:relative!important;
  overflow:visible!important;
  z-index:210000!important;
  margin-bottom:inherit!important;
}
html body .app-shell .main .content .smart-select-results{
  position:absolute!important;
  top:calc(100% + 8px)!important;
  left:0!important;
  right:0!important;
  z-index:230000!important;
  background:#101827!important;
  opacity:1!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.05) inset!important;
}
body[data-theme="light"] .app-shell .main .content .smart-select-results{
  background:#fff!important;
  border-color:rgba(100,116,139,.28)!important;
  box-shadow:0 28px 80px rgba(15,23,42,.20),0 0 0 1px rgba(255,255,255,.70) inset!important;
}
html body .app-shell .main .content .rights-assign-form.smart-select-open{
  margin-bottom:26px!important;
}
html body .app-shell .main .content .rights-workbench-card,
html body .app-shell .main .content .admin-access-grid,
html body .app-shell .main .content .admin-access-grid .card,
html body .app-shell .main .content .admin-access-search-card{
  overflow:visible!important;
}
html body .app-shell .main .content .admin-access-grid{position:relative!important;z-index:50!important;}
html body .app-shell .main .content .admin-access-grid .card:has(.smart-select-field.is-open),
html body .app-shell .main .content .admin-access-grid .card:has(.smart-select-field.is-loading){z-index:230000!important;}
html body .app-shell .main .content .admin-access-inline.smart-select-open{z-index:230000!important;}

/* Jugendkalender-Termine besser sichtbar kennzeichnen. */
html body .app-shell .main .content .youth-calendar-event-link{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  width:100%!important;
  min-height:34px!important;
  margin-top:7px!important;
  padding:8px 10px!important;
  border-radius:13px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#c8102e,#8f1024)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 10px 26px rgba(200,16,46,.18)!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html body .app-shell .main .content .youth-calendar-event-link::before{
  content:""!important;
  display:inline-block!important;
  width:8px!important;
  height:8px!important;
  min-width:8px!important;
  border-radius:999px!important;
  background:#fff!important;
  opacity:.88!important;
}
html body .app-shell .main .content .youth-day.has-event{
  border-color:rgba(200,16,46,.34)!important;
  box-shadow:0 0 0 3px rgba(200,16,46,.06),var(--rp26-shadow-soft,var(--shadow-sm))!important;
}
html body .app-shell .main .content .youth-event-pill{
  background:rgba(200,16,46,.12)!important;
  border-color:rgba(200,16,46,.24)!important;
}

@media (max-width:860px){
  html,body,.app-shell,.main,.content{max-width:100%!important;overflow-x:hidden!important;}
  html body .topbar{
    position:sticky!important;
    top:0!important;
    z-index:900!important;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr)!important;
    gap:8px!important;
    padding:calc(8px + env(safe-area-inset-top)) 10px 10px!important;
    border-radius:0 0 18px 18px!important;
  }
  html body.sidebar-open .topbar{z-index:800!important;}
  html body .sidebar{z-index:3000!important;}
  html body.sidebar-open::after{
    content:""!important;
    position:fixed!important;
    inset:0!important;
    z-index:2500!important;
    background:rgba(2,6,23,.58)!important;
    backdrop-filter:blur(2px)!important;
    -webkit-backdrop-filter:blur(2px)!important;
  }
  html body.sidebar-open .sidebar{z-index:3100!important;}
  html body .menu-toggle{position:relative!important;z-index:910!important;}
  html body .topbar-title{min-width:0!important;overflow:hidden!important;}
  html body .topbar-user{
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
    align-items:center!important;
    width:100%!important;
  }
  html body .topbar .department-context-switch{grid-column:1/-1!important;order:0!important;width:100%!important;max-width:100%!important;}
  html body .topbar .theme-switch{order:1!important;grid-column:1!important;justify-self:start!important;max-width:100%!important;overflow:visible!important;transform:none!important;}
  html body .topbar .topbar-role-badge{order:2!important;grid-column:2!important;justify-self:end!important;max-width:42vw!important;}
  html body .topbar .user-chip{order:3!important;grid-column:1!important;min-width:0!important;max-width:100%!important;font-size:.94rem!important;}
  html body .topbar form[action="/logout"]{order:4!important;grid-column:2!important;justify-self:end!important;width:auto!important;display:block!important;}
  html body .topbar form[action="/logout"] .btn{
    display:inline-flex!important;
    width:auto!important;
    min-width:92px!important;
    max-width:120px!important;
    min-height:42px!important;
    padding:0 13px!important;
    font-size:.86rem!important;
    line-height:1!important;
    color:var(--text)!important;
    text-indent:0!important;
    white-space:nowrap!important;
    overflow:visible!important;
    opacity:1!important;
  }

  /* Mobile Tabellen: alle Desktop-Spaltenbreiten neutralisieren, dadurch keine Buchstaben untereinander. */
  html body .content table.responsive-table,
  html body .content table.responsive-table tbody,
  html body .content table.responsive-table tr,
  html body .content table.responsive-table td,
  html body .content table.responsive-table th{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .content table.responsive-table{display:block!important;table-layout:auto!important;background:transparent!important;}
  html body .content table.responsive-table thead{display:none!important;}
  html body .content table.responsive-table tbody{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;}
  html body .content table.responsive-table tr{
    display:block!important;
    padding:16px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:22px!important;
    background:var(--rp26-panel,var(--surface))!important;
    box-shadow:var(--rp26-shadow-soft,var(--shadow-sm))!important;
    overflow:visible!important;
  }
  html body .content table.responsive-table td{
    display:block!important;
    padding:11px 0!important;
    border:0!important;
    border-bottom:1px solid var(--line-soft)!important;
    background:transparent!important;
    text-align:left!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
    line-height:1.35!important;
  }
  html body .content table.responsive-table td:last-child{border-bottom:0!important;}
  html body .content table.responsive-table td::before{
    content:attr(data-label)!important;
    display:block!important;
    margin:0 0 5px!important;
    color:var(--muted)!important;
    font-size:.70rem!important;
    font-weight:950!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
    white-space:normal!important;
  }
  html body .content table.responsive-table td.mobile-full-row,
  html body .content table.responsive-table td.empty{
    display:block!important;
    min-height:0!important;
    padding:22px!important;
    text-align:center!important;
    border:1px dashed var(--line-soft)!important;
    border-radius:18px!important;
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }
  html body .content table.responsive-table td.mobile-full-row::before,
  html body .content table.responsive-table td.empty::before,
  html body .content table.responsive-table td.actions::before,
  html body .content table.responsive-table td.mobile-action-cell::before{content:none!important;display:none!important;}
  html body .content table.responsive-table td :is(.btn,button,select,input,textarea,form){width:100%!important;max-width:100%!important;min-width:0!important;}

  html body .content :is(.detail-grid,.calendar-detail-grid){display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}
  html body .content .detail-item{display:block!important;padding:14px!important;}
  html body .content .detail-item span{display:block!important;margin-bottom:6px!important;}
  html body .content .detail-item strong{display:block!important;word-break:normal!important;overflow-wrap:break-word!important;}

  /* Monatskalender mobil als lesbare Tageskarten, nicht mehr als schmale 7-Spalten-Ansicht. */
  html body .content .calendar-grid,
  html body .content .youth-mini-calendar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    width:100%!important;
  }
  html body .content .calendar-weekday,
  html body .content .youth-weekday,
  html body .content .calendar-day.muted-day,
  html body .content .youth-day.empty-day{display:none!important;}
  html body .content .calendar-day,
  html body .content .youth-day{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:96px!important;
    padding:14px!important;
    border-radius:20px!important;
    overflow:visible!important;
  }
  html body .content .calendar-day-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;}
  html body .content .calendar-day-add-mini{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;flex:0 0 38px!important;}
  html body .content .calendar-event-pill,
  html body .content .youth-calendar-event-link{
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    word-break:normal!important;
  }

  /* Kompakter Nach-oben-Button, nie wieder voller Balken. */
  html body .back-to-top-btn{
    width:54px!important;height:54px!important;min-width:54px!important;max-width:54px!important;
    right:14px!important;bottom:calc(16px + env(safe-area-inset-bottom))!important;
    padding:0!important;border-radius:18px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
  }
  html body .back-to-top-btn strong{display:none!important;}
}

/* Retter-Portal v1.2.39 · Mobile-Fix, Header-Glättung und Hinweisboxen */
html body .app-shell .main .content .youth-new-member-info{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  padding:18px 20px!important;
  line-height:1.45!important;
  overflow:visible!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
}
html body .app-shell .main .content .youth-new-member-info strong{
  display:block!important;
  line-height:1.2!important;
  color:var(--text)!important;
}
html body .app-shell .main .content .youth-new-member-info span{
  display:block!important;
  max-width:100%!important;
  color:var(--muted)!important;
  line-height:1.5!important;
}

/* Desktop-Header: kompakter gruppieren, aber Namen nicht zu früh abschneiden. */
@media(min-width:861px){
  html body .topbar{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:clamp(14px,1.6vw,26px)!important;
    min-height:76px!important;
    padding:12px clamp(20px,2vw,36px)!important;
  }
  html body .topbar-title{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:220px!important;
    max-width:360px!important;
  }
  html body .topbar-user{
    flex:1 1 auto!important;
    min-width:0!important;
    max-width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:10px!important;
    overflow:visible!important;
  }
  html body .topbar-user > *{min-width:0!important;}
  html body .topbar .department-context-switch{
    flex:1 1 440px!important;
    min-width:min(360px,30vw)!important;
    max-width:min(720px,42vw)!important;
    margin-left:auto!important;
  }
  html body .topbar .theme-switch,
  html body .topbar .topbar-role-badge,
  html body .topbar form[action="/logout"]{
    flex:0 0 auto!important;
  }
  html body .topbar .user-chip{
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:clamp(180px,18vw,340px)!important;
    display:inline-block!important;
    text-align:left!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .user-chip.has-role-badge{max-width:clamp(160px,16vw,300px)!important;}
}
@media(min-width:1500px){
  html body .topbar .user-chip{max-width:420px!important;}
  html body .topbar .user-chip.has-role-badge{max-width:360px!important;}
}
@media(max-width:1180px) and (min-width:861px){
  html body .topbar{
    align-items:flex-start!important;
    flex-wrap:wrap!important;
    min-height:0!important;
  }
  html body .topbar-title{min-width:200px!important;}
  html body .topbar-user{flex-basis:100%!important;justify-content:flex-start!important;flex-wrap:wrap!important;}
  html body .topbar .department-context-switch{flex:1 1 100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;}
  html body .topbar .user-chip{max-width:calc(100vw - 340px)!important;}
}

/* Mobile: Nie wieder buchstabenweise Umbrechung und Header komplett bedienbar. */
@media(max-width:860px){
  html,body,.app-shell,.main,.content{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }
  html body .content,
  html body .content *{
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }
  html body .content :is(h1,h2,h3,h4,p,span,strong,small,em,a,button,label,th,td,.btn,.pill,.status,.role,.muted){
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
    text-overflow:clip!important;
  }
  html body .content :is(.btn,button,select,input,textarea){
    min-height:44px!important;
    width:100%!important;
    max-width:100%!important;
  }

  html body .topbar{
    position:sticky!important;
    top:0!important;
    z-index:1200!important;
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr) auto!important;
    grid-auto-rows:auto!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    padding:calc(8px + env(safe-area-inset-top)) 10px 10px!important;
    border-radius:0 0 18px 18px!important;
    background:rgba(7,14,26,.96)!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
  }
  body[data-theme="light"] .topbar{background:rgba(255,255,255,.96)!important;}
  html body.sidebar-open .topbar{z-index:900!important;}
  html body .menu-toggle{
    grid-column:1!important;
    grid-row:1!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    border-radius:14px!important;
    z-index:1210!important;
  }
  html body .topbar-title{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  html body .topbar-logo-pair{width:32px!important;height:32px!important;flex-basis:32px!important;}
  html body .topbar-eyebrow{
    max-width:100%!important;
    font-size:.66rem!important;
    letter-spacing:.055em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar-user{
    grid-column:1 / -1!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  html body .topbar .department-context-switch{
    grid-column:1 / -1!important;
    order:0!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:8px!important;
    border-radius:16px!important;
  }
  html body .topbar .department-context-switch span{font-size:.66rem!important;white-space:nowrap!important;}
  html body .topbar .department-context-switch select{height:42px!important;min-height:42px!important;font-size:15px!important;}
  html body .topbar .theme-switch{
    grid-column:1!important;
    order:1!important;
    justify-self:start!important;
    max-width:100%!important;
    width:auto!important;
    min-width:0!important;
  }
  html body .topbar .topbar-role-badge{
    grid-column:2!important;
    order:2!important;
    justify-self:end!important;
    max-width:44vw!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .user-chip{
    grid-column:1!important;
    order:3!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    font-size:.94rem!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    text-align:left!important;
  }
  html body .topbar form[action="/logout"]{
    grid-column:2!important;
    order:4!important;
    justify-self:end!important;
    width:auto!important;
    min-width:0!important;
    display:block!important;
  }
  html body .topbar form[action="/logout"] .btn,
  html body .topbar form[action="/logout"] button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:88px!important;
    max-width:118px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 14px!important;
    font-size:.86rem!important;
    line-height:1!important;
    color:var(--text)!important;
    opacity:1!important;
    visibility:visible!important;
    text-indent:0!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }
  html body .sidebar{z-index:4200!important;top:0!important;height:100dvh!important;}
  html body.sidebar-open::after{z-index:4100!important;}
  html body.sidebar-open .sidebar{z-index:4300!important;}

  /* Mobile Tabellen global als Karten, auch wenn responsive-table-Klasse fehlt. */
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap){
    overflow:visible!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table,
  html body .content table.responsive-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    table-layout:auto!important;
    background:transparent!important;
  }
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) thead,
  html body .content table.responsive-table thead{display:none!important;}
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody,
  html body .content table.responsive-table tbody{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tr,
  html body .content table.responsive-table tr{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:16px!important;
    border-radius:22px!important;
    border:1px solid var(--line-soft)!important;
    background:var(--rp26-panel,var(--surface))!important;
    box-shadow:var(--rp26-shadow-soft,var(--shadow-sm))!important;
    overflow:visible!important;
  }
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td,
  html body .content table.responsive-table td{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:11px 0!important;
    border:0!important;
    border-bottom:1px solid var(--line-soft)!important;
    background:transparent!important;
    text-align:left!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
    line-height:1.36!important;
  }
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td:last-child,
  html body .content table.responsive-table td:last-child{border-bottom:0!important;}
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td::before,
  html body .content table.responsive-table td::before{
    content:attr(data-label)!important;
    display:block!important;
    margin:0 0 5px!important;
    color:var(--muted)!important;
    font-size:.70rem!important;
    font-weight:950!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td:not([data-label])::before,
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td.actions::before,
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td.mobile-action-cell::before,
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td.empty::before,
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td.mobile-full-row::before{
    content:none!important;
    display:none!important;
  }
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td[colspan],
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td.empty,
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td.mobile-full-row{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:22px!important;
    text-align:center!important;
    border:1px dashed var(--line-soft)!important;
    border-radius:18px!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }

  /* Kalender mobil: breite Tageskarten, keine 7-Spalten-Quetschung. */
  html body .content :is(.calendar-grid,.youth-mini-calendar){
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .content :is(.calendar-weekday,.youth-weekday,.calendar-day.muted-day,.youth-day.empty-day){display:none!important;}
  html body .content :is(.calendar-day,.youth-day){
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:104px!important;
    padding:15px!important;
    border-radius:20px!important;
    overflow:visible!important;
  }
  html body .content :is(.calendar-event-pill,.youth-calendar-event-link){
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }

  html body .back-to-top-btn{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    max-width:54px!important;
    right:14px!important;
    bottom:calc(16px + env(safe-area-inset-bottom))!important;
    padding:0!important;
    border-radius:18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  html body .back-to-top-btn strong{display:none!important;}
}

@media(max-width:520px){
  html body .content{padding-left:12px!important;padding-right:12px!important;}
  html body .content > :is(.page-head,.page-hero),
  html body .content :is(.card,.stat-card){
    border-radius:20px!important;
  }
  html body .content :is(h1,h2,h3){letter-spacing:-.04em!important;}
  html body .topbar .theme-switch .theme-dot{width:38px!important;min-width:38px!important;height:38px!important;}
  html body .topbar .theme-switch .theme-dot.auto{min-width:54px!important;width:auto!important;}
}

/* Retter-Portal v1.2.40 · Mobile- und Header-Finalisierung */
@media (min-width:861px){
  html body .topbar{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:18px!important;
    padding:12px 28px!important;
  }
  html body .topbar-title{min-width:0!important;justify-self:start!important;}
  html body .topbar.has-department-switch .topbar-user{
    display:grid!important;
    grid-template-columns:minmax(360px,1fr) auto auto minmax(150px,max-content) auto!important;
    align-items:center!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
    justify-content:stretch!important;
  }
  html body .topbar.has-department-switch .department-context-switch{
    grid-column:1!important;
    width:100%!important;
    min-width:320px!important;
    max-width:min(760px,100%)!important;
    justify-self:stretch!important;
  }
  html body .topbar.has-department-switch .theme-switch{grid-column:2!important;justify-self:end!important;}
  html body .topbar.has-department-switch .topbar-role-badge{grid-column:3!important;justify-self:end!important;}
  html body .topbar.has-department-switch .user-chip{
    grid-column:4!important;
    justify-self:center!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:150px!important;
    max-width:280px!important;
    width:auto!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar.has-department-switch form[action="/logout"]{grid-column:5!important;justify-self:end!important;}
  html body .topbar:not(.has-department-switch) .topbar-user{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:12px!important;
    min-width:0!important;
  }
  html body .topbar:not(.has-department-switch) .user-chip{
    display:flex!important;
    min-width:150px!important;
    max-width:280px!important;
    justify-content:center!important;
    text-align:center!important;
  }
}

/* Rechte-vergeben: Smart-Suche als Overlay, ohne Ruckeln oder Reservieren von Extra-Höhe. */
html body .app-shell .main .content .rights-workbench-card,
html body .app-shell .main .content .rights-assign-form,
html body .app-shell .main .content .rights-assign-form .smart-select-field{
  overflow:visible!important;
}
html body .app-shell .main .content .rights-assign-form{
  position:relative!important;
  z-index:1000!important;
  margin-bottom:18px!important;
  contain:none!important;
}
html body .app-shell .main .content .rights-assign-form.smart-select-open{
  margin-bottom:18px!important;
  padding-bottom:16px!important;
  z-index:240000!important;
  transform:none!important;
}
html body .app-shell .main .content .rights-assign-form .smart-select-field.is-open,
html body .app-shell .main .content .rights-assign-form .smart-select-field.is-loading{
  z-index:250000!important;
}
html body .app-shell .main .content .rights-assign-form .smart-select-results{
  position:absolute!important;
  top:calc(100% + 8px)!important;
  left:0!important;
  right:0!important;
  z-index:260000!important;
  max-height:min(360px,48vh)!important;
  overflow:auto!important;
}
html body .app-shell .main .content .rights-unlinked-details,
html body .app-shell .main .content .rights-unlinked-notice{
  margin-top:22px!important;
}

@media (max-width:860px){
  html,body,.app-shell,.main,.content{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  html body .app-shell{display:block!important;min-width:0!important;}
  html body .main{min-width:0!important;width:100%!important;}
  html body .content{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:14px!important;
  }

  /* Mobile Header: kompakt, mit sichtbarem Logout und sauberer Feuerwehr-Auswahl. */
  html body .topbar{
    position:sticky!important;
    top:0!important;
    z-index:1200!important;
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr) auto!important;
    grid-auto-rows:auto!important;
    grid-template-areas:
      "menu title logout"
      "dept dept dept"
      "theme user user"!important;
    gap:8px!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:calc(8px + env(safe-area-inset-top)) 10px 10px!important;
    border-radius:0 0 18px 18px!important;
    background:rgba(7,14,26,.97)!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    overflow:visible!important;
  }
  body[data-theme="light"] .topbar{background:rgba(255,255,255,.97)!important;}
  html body .menu-toggle{
    grid-area:menu!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    border-radius:14px!important;
    background:var(--surface)!important;
    border:1px solid var(--line)!important;
    box-shadow:var(--shadow-sm)!important;
    font-size:1.15rem!important;
    line-height:1!important;
    z-index:1210!important;
  }
  html body .topbar-title{
    grid-area:title!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  html body .topbar-logo-pair{width:30px!important;height:30px!important;flex:0 0 30px!important;}
  html body .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    font-size:.67rem!important;
    letter-spacing:.055em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar-user{display:contents!important;}
  html body .topbar .department-context-switch{
    grid-area:dept!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:8px!important;
    border-radius:16px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
  }
  html body .topbar .department-context-switch span{
    font-size:.66rem!important;
    letter-spacing:.12em!important;
    white-space:nowrap!important;
  }
  html body .topbar .department-context-switch select{
    height:42px!important;
    min-height:42px!important;
    font-size:15px!important;
    border-radius:14px!important;
  }
  html body .topbar .theme-switch{
    grid-area:theme!important;
    justify-self:start!important;
    width:auto!important;
    max-width:150px!important;
  }
  html body .topbar .topbar-role-badge{display:none!important;}
  html body .topbar .user-chip{
    grid-area:user!important;
    justify-self:end!important;
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    width:auto!important;
    font-size:.95rem!important;
    line-height:1.1!important;
    text-align:right!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar form[action="/logout"]{
    grid-area:logout!important;
    justify-self:end!important;
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
  }
  html body .topbar form[action="/logout"] .btn,
  html body .topbar form[action="/logout"] button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:82px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 13px!important;
    font-size:.86rem!important;
    line-height:1!important;
    text-indent:0!important;
    color:var(--text)!important;
    opacity:1!important;
    visibility:visible!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }
  html body .sidebar{z-index:4300!important;top:0!important;height:100dvh!important;}
  html body.sidebar-open::after{z-index:4200!important;}
  html body.sidebar-open .sidebar{z-index:4400!important;}

  /* Wirklich alle Inhalts-Tabellen auf Mobile als Vollbreiten-Karten, nicht als schmale Spalten. */
  html body .app-shell .main .content table,
  html body .app-shell .main .content thead,
  html body .app-shell .main .content tbody,
  html body .app-shell .main .content tfoot,
  html body .app-shell .main .content tr,
  html body .app-shell .main .content th,
  html body .app-shell .main .content td{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  html body .app-shell .main .content table{
    display:block!important;
    width:100%!important;
    table-layout:auto!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    background:transparent!important;
  }
  html body .app-shell .main .content thead{display:none!important;}
  html body .app-shell .main .content tbody{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
  }
  html body .app-shell .main .content tr{
    display:block!important;
    width:100%!important;
    padding:16px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:22px!important;
    background:var(--rp26-panel,var(--surface))!important;
    box-shadow:var(--rp26-shadow-soft,var(--shadow-sm))!important;
    overflow:visible!important;
  }
  html body .app-shell .main .content td,
  html body .app-shell .main .content th,
  html body .app-shell .main .content td:nth-child(n),
  html body .app-shell .main .content th:nth-child(n),
  html body .app-shell .main .content .training-requests-table td:nth-child(n),
  html body .app-shell .main .content .training-requests-table th:nth-child(n){
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:11px 0!important;
    border:0!important;
    border-bottom:1px solid var(--line-soft)!important;
    background:transparent!important;
    text-align:left!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
    line-height:1.36!important;
  }
  html body .app-shell .main .content td:last-child,
  html body .app-shell .main .content th:last-child{border-bottom:0!important;}
  html body .app-shell .main .content td[colspan],
  html body .app-shell .main .content td.empty,
  html body .app-shell .main .content td.mobile-full-row{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:22px!important;
    text-align:center!important;
    border:1px dashed var(--line-soft)!important;
    border-radius:18px!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }
  html body .app-shell .main .content td :is(.btn,button,select,input,textarea,form){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){
    overflow:visible!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .app-shell .main .content :is(.empty,.muted,.subtle,p,span,strong,small,td,th,h1,h2,h3,button,.btn,.pill,.status,.role){
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }

  /* Kalender/Jugendkalender mobil breit und lesbar. */
  html body .app-shell .main .content :is(.calendar-grid,.youth-mini-calendar){
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .app-shell .main .content :is(.calendar-weekday,.youth-weekday,.calendar-day.muted-day,.youth-day.empty-day){display:none!important;}
  html body .app-shell .main .content :is(.calendar-day,.youth-day){
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:104px!important;
    padding:15px!important;
    border-radius:20px!important;
    overflow:visible!important;
  }
  html body .app-shell .main .content :is(.calendar-event-pill,.youth-calendar-event-link){
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
}

@media (max-width:520px){
  html body .app-shell .main .content{padding:12px!important;}
  html body .app-shell .main .content :is(.card,.page-head,.page-hero,.stat-card){border-radius:20px!important;}
  html body .app-shell .main .content :is(h1){font-size:clamp(2rem,10vw,3rem)!important;}
}

/* Retter-Portal v1.2.41 · Header-Breiten final: Mobile kein Name/Logout-Overlap, Desktop Feuerwehr-Auswahl kompakter */
@media (min-width:861px){
  html body .topbar.has-department-switch .topbar-user{
    grid-template-columns:minmax(280px,560px) auto auto minmax(170px,auto) auto!important;
    justify-content:end!important;
    column-gap:12px!important;
  }
  html body .topbar.has-department-switch .department-context-switch{
    width:100%!important;
    min-width:280px!important;
    max-width:560px!important;
    justify-self:end!important;
  }
  html body .topbar.has-department-switch .department-context-switch select{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar.has-department-switch .user-chip{
    min-width:170px!important;
    max-width:300px!important;
    justify-self:center!important;
    text-align:center!important;
  }
}

@media (max-width:860px){
  html body .topbar{
    grid-template-columns:46px minmax(0,1fr) auto!important;
    grid-template-areas:
      "menu title logout"
      "dept dept dept"
      "theme theme theme"
      "user user user"!important;
    gap:8px!important;
    overflow:visible!important;
  }
  html body .topbar .user-chip{
    grid-area:user!important;
    justify-self:stretch!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:block!important;
    text-align:left!important;
    padding:8px 10px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:14px!important;
    background:rgba(148,163,184,.075)!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    line-height:1.12!important;
  }
  html body .topbar form[action="/logout"]{
    grid-area:logout!important;
    justify-self:end!important;
    align-self:center!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    z-index:3!important;
  }
  html body .topbar form[action="/logout"] .btn,
  html body .topbar form[action="/logout"] button{
    min-width:86px!important;
    width:auto!important;
    max-width:none!important;
    padding:0 14px!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  html body .topbar .theme-switch{
    grid-area:theme!important;
    justify-self:start!important;
    max-width:100%!important;
  }
}

@media (max-width:430px){
  html body .topbar{
    grid-template-columns:44px minmax(0,1fr) auto!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  html body .topbar form[action="/logout"] .btn,
  html body .topbar form[action="/logout"] button{
    min-width:76px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0 10px!important;
    font-size:.82rem!important;
  }
  html body .topbar .topbar-eyebrow{
    font-size:.62rem!important;
    letter-spacing:.04em!important;
  }
}

/* Retter-Portal v1.2.42 · Mobile Header und Smart-Select-Stacking final */
@media (max-width:860px){
  html body .topbar{
    position:sticky!important;
    top:0!important;
    z-index:1200!important;
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr)!important;
    grid-template-areas:
      "menu title"
      "controls controls"!important;
    gap:10px!important;
    align-items:center!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:calc(9px + env(safe-area-inset-top)) 10px 11px!important;
    border-radius:0 0 18px 18px!important;
    overflow:visible!important;
  }
  html body .topbar-title{
    grid-area:title!important;
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    overflow:hidden!important;
  }
  html body .topbar-user{
    grid-area:controls!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "dept dept"
      "theme logout"
      "name name"!important;
    gap:9px!important;
    align-items:center!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar.has-department-switch .department-context-switch{
    grid-area:dept!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
  }
  html body .topbar .theme-switch{
    grid-area:theme!important;
    justify-self:start!important;
    width:auto!important;
    max-width:100%!important;
    min-width:0!important;
    transform:none!important;
  }
  html body .topbar .topbar-role-badge{display:none!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge,
  html body .topbar.has-department-switch .user-chip,
  html body .topbar.has-department-switch .user-chip.has-role-badge{
    grid-area:name!important;
    justify-self:stretch!important;
    align-self:center!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:9px 12px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:14px!important;
    background:rgba(148,163,184,.075)!important;
    text-align:left!important;
    font-size:.94rem!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    z-index:1!important;
  }
  html body .topbar form[action="/logout"]{
    grid-area:logout!important;
    justify-self:end!important;
    align-self:center!important;
    display:block!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    z-index:2!important;
  }
  html body .topbar form[action="/logout"] .btn,
  html body .topbar form[action="/logout"] button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:92px!important;
    max-width:none!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 15px!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-indent:0!important;
    opacity:1!important;
    visibility:visible!important;
  }
}
@media (max-width:430px){
  html body .topbar{grid-template-columns:46px minmax(0,1fr)!important;padding-left:8px!important;padding-right:8px!important;}
  html body .topbar-user{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;}
  html body .topbar .theme-switch{transform:scale(.94)!important;transform-origin:left center!important;}
  html body .topbar form[action="/logout"] .btn,
  html body .topbar form[action="/logout"] button{min-width:84px!important;height:40px!important;min-height:40px!important;padding:0 12px!important;font-size:.82rem!important;}
}
@media (max-width:360px){
  html body .topbar .theme-switch{transform:scale(.88)!important;}
  html body .topbar form[action="/logout"] .btn,
  html body .topbar form[action="/logout"] button{min-width:76px!important;padding:0 9px!important;}
}

/* Smart-Select: das aktiv geöffnete Feld gewinnt immer gegen alle nachfolgenden Felder/Karten. */
html body .app-shell .main .content .smart-select-field{
  position:relative!important;
  overflow:visible!important;
  z-index:20!important;
}
html body .app-shell .main .content .smart-select-field.is-open,
html body .app-shell .main .content .smart-select-field.is-loading,
html body .app-shell .main .content .smart-select-field:focus-within{
  z-index:900000!important;
}
html body .app-shell .main .content .smart-select-results{
  position:absolute!important;
  top:calc(100% + 8px)!important;
  left:0!important;
  right:0!important;
  z-index:900010!important;
  opacity:1!important;
  background:#101827!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.62),0 0 0 1px rgba(255,255,255,.05) inset!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body[data-theme="light"] .app-shell .main .content .smart-select-results{background:#fff!important;border-color:rgba(100,116,139,.28)!important;box-shadow:0 26px 78px rgba(15,23,42,.22)!important;}
html body .app-shell .main .content .account-link-form,
html body .app-shell .main .content .account-link-form.smart-select-open{
  position:relative!important;
  overflow:visible!important;
  z-index:650000!important;
}
html body .app-shell .main .content .account-link-form .smart-select-field{z-index:40!important;}
html body .app-shell .main .content .account-link-form .user-link-field.is-open,
html body .app-shell .main .content .account-link-form .user-link-field.is-loading,
html body .app-shell .main .content .account-link-form .user-link-field:focus-within{z-index:950000!important;}
html body .app-shell .main .content .account-link-form .personnel-link-field.is-open,
html body .app-shell .main .content .account-link-form .personnel-link-field.is-loading,
html body .app-shell .main .content .account-link-form .personnel-link-field:focus-within{z-index:940000!important;}
html body .app-shell .main .content .account-link-form .user-link-field.is-open + .personnel-link-field,
html body .app-shell .main .content .account-link-form .user-link-field.is-loading + .personnel-link-field,
html body .app-shell .main .content .account-link-form .user-link-field:focus-within + .personnel-link-field{z-index:1!important;}

/* Mobile: keine Buchstaben-/Mini-Spalten mehr in Tabellenkarten und leeren Zuständen. */
@media (max-width:860px){
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){overflow:visible!important;}
  html body .app-shell .main .content table,
  html body .app-shell .main .content table.responsive-table,
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    table-layout:auto!important;
    background:transparent!important;
  }
  html body .app-shell .main .content table thead{display:none!important;}
  html body .app-shell .main .content table tbody{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    gap:14px!important;
  }
  html body .app-shell .main .content table tr,
  html body .app-shell .main .content table.responsive-table tr{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:16px!important;
    overflow:visible!important;
  }
  html body .app-shell .main .content table td,
  html body .app-shell .main .content table th,
  html body .app-shell .main .content table td:nth-child(n),
  html body .app-shell .main .content table th:nth-child(n),
  html body .app-shell .main .content table.responsive-table td,
  html body .app-shell .main .content table.responsive-table td:nth-child(n),
  html body .app-shell .main .content .training-requests-table td:nth-child(n),
  html body .app-shell .main .content .training-requests-table th:nth-child(n){
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:0 0 auto!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
    line-height:1.38!important;
    text-align:left!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
  }
  html body .app-shell .main .content table td.empty,
  html body .app-shell .main .content table td[colspan],
  html body .app-shell .main .content table td.mobile-full-row,
  html body .app-shell .main .content :is(.empty-state,.empty,.no-results,.smart-select-empty){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
    text-align:center!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) :is(.btn,button,select,input,textarea){
    max-width:100%!important;
    min-width:0!important;
  }
}


/* Retter-Portal v1.2.44 · White-Mode Startseiten-Hero ohne harten weißen Kasten */
body[data-theme="light"] .rp55-public > .rp55-hero{
  background:
    radial-gradient(circle at 84% 18%, rgba(200,16,46,.10), transparent 26rem),
    radial-gradient(circle at 10% 6%, rgba(20,89,245,.10), transparent 30rem),
    radial-gradient(circle at 46% 90%, rgba(20,184,166,.045), transparent 24rem),
    linear-gradient(135deg, rgba(255,255,255,.58), rgba(248,251,255,.34))!important;
}
body[data-theme="light"] .rp55-public .rp55-hero-copy{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
@media (prefers-color-scheme: light){
  body[data-theme="system"] .rp55-public > .rp55-hero{
    background:
      radial-gradient(circle at 84% 18%, rgba(200,16,46,.10), transparent 26rem),
      radial-gradient(circle at 10% 6%, rgba(20,89,245,.10), transparent 30rem),
      radial-gradient(circle at 46% 90%, rgba(20,184,166,.045), transparent 24rem),
      linear-gradient(135deg, rgba(255,255,255,.58), rgba(248,251,255,.34))!important;
  }
  body[data-theme="system"] .rp55-public .rp55-hero-copy{
    background:transparent!important;
    background-image:none!important;
    border:0!important;
    box-shadow:none!important;
    outline:0!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}

/* Retter-Portal v1.2.46 · Admin User-Logins */
.admin-login-stats{margin-bottom:24px!important;}
.admin-login-filter-card .toolbar{grid-template-columns:minmax(220px,.8fr) minmax(280px,1.2fr) minmax(180px,.5fr) auto auto!important;align-items:end!important;}
.admin-login-table td strong{display:block;line-height:1.25;}
.admin-login-table td small{display:block;color:var(--muted);font-weight:800;margin-top:4px;line-height:1.3;overflow-wrap:anywhere;}
.admin-login-table th:nth-child(1),.admin-login-table td:nth-child(1){width:18%;}
.admin-login-table th:nth-child(2),.admin-login-table td:nth-child(2){width:12%;}
.admin-login-table th:nth-child(3),.admin-login-table td:nth-child(3){width:18%;}
.admin-login-table th:nth-child(4),.admin-login-table td:nth-child(4){width:18%;}
.admin-login-table th:nth-child(5),.admin-login-table td:nth-child(5){width:10%;}
.admin-login-table th:nth-child(6),.admin-login-table td:nth-child(6){width:16%;}
.admin-login-table th:nth-child(7),.admin-login-table td:nth-child(7){width:8%;}
.login-chip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;}
.login-session-chip{border:1px solid var(--line-soft);background:rgba(20,184,166,.08);border-radius:20px;padding:16px;box-shadow:var(--shadow-sm);}
.login-session-chip strong,.login-session-chip span,.login-session-chip small{display:block;overflow-wrap:anywhere;}
.login-session-chip span{color:var(--muted);font-weight:900;margin-top:5px;}
.login-session-chip small{color:var(--muted);font-weight:800;margin-top:6px;line-height:1.35;}
.login-log-note{margin-top:20px;}
@media(max-width:980px){
  .admin-login-filter-card .toolbar{display:grid!important;grid-template-columns:1fr!important;}
  .admin-login-table,.admin-login-table thead,.admin-login-table tbody,.admin-login-table tr,.admin-login-table th,.admin-login-table td{display:block!important;width:100%!important;}
  .admin-login-table thead{display:none!important;}
  .admin-login-table tr{padding:16px!important;border-bottom:1px solid var(--line-soft)!important;background:var(--rp26-table-row)!important;}
  .admin-login-table td{padding:10px 0!important;border:0!important;background:transparent!important;}
  .admin-login-table td::before{content:attr(data-label);display:block;color:var(--muted);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;font-weight:950;margin-bottom:5px;}
}

/* Retter-Portal v1.2.50 · Login, Mobile, Einsatzfahrzeuge, Löschzüge, User-Logins */
.password-reveal{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;}
.password-reveal input{width:100%;min-width:0;}
.password-reveal button{height:44px;border-radius:14px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);font-weight:900;padding:0 14px;cursor:pointer;}
.incident-vehicle-grid{display:grid;gap:14px;}
.incident-vehicle-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(130px,.35fr);gap:14px;padding:16px;border:1px solid var(--line-soft);border-radius:20px;background:rgba(148,163,184,.06);}
.incident-vehicle-row .full{grid-column:1/-1;}
.incident-vehicles-card .pre{white-space:pre-wrap;}
.unit-chip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;}
.unit-chip-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--line-soft);border-radius:18px;background:rgba(148,163,184,.06);}
.unit-chip-card strong,.unit-chip-card small{display:block;}
.filter-chip-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;}
.login-session-chip form{margin-top:10px;}
.admin-login-table td small{display:block;margin-top:4px;color:var(--muted);}
.admin-login-table .actions form{display:inline-flex;}

@media(max-width:760px){
  body{overflow-x:hidden!important;}
  .content{padding-inline:12px!important;}
  .page-head,.page-hero,.card,.toolbar,.stat-card{border-radius:22px!important;}
  .toolbar{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;}
  .toolbar>*{width:100%!important;min-width:0!important;}
  .form-grid,.form-grid.two,.form-grid.three,.form-grid.four,.grid,.grid.two,.stat-grid,.stat-grid.three{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;}
  .table-wrap{overflow:visible!important;}
  .table-wrap table,.data-table-card table,.checks-table-wrap table{display:block!important;width:100%!important;table-layout:auto!important;}
  .table-wrap thead,.data-table-card thead,.checks-table-wrap thead{display:none!important;}
  .table-wrap tbody,.table-wrap tr,.table-wrap td,.data-table-card tbody,.data-table-card tr,.data-table-card td,.checks-table-wrap tbody,.checks-table-wrap tr,.checks-table-wrap td{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;}
  .table-wrap tr,.data-table-card tr,.checks-table-wrap tr{margin:0 0 14px!important;padding:14px!important;border:1px solid var(--line-soft)!important;border-radius:20px!important;background:var(--rp26-panel-soft,var(--surface))!important;}
  .table-wrap td,.data-table-card td,.checks-table-wrap td{padding:9px 0!important;border:0!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important;}
  .table-wrap td::before,.data-table-card td::before,.checks-table-wrap td::before{content:attr(data-label);display:block;margin-bottom:3px;color:var(--muted);font-size:.74rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;}
  .table-wrap td:empty{display:none!important;}
  .table-wrap td.actions,.data-table-card td.actions,.checks-table-wrap td.actions{display:flex!important;justify-content:flex-start!important;gap:8px!important;flex-wrap:wrap!important;}
  .table-wrap td.actions::before,.data-table-card td.actions::before,.checks-table-wrap td.actions::before{width:100%;}
  .btn,button.btn,a.btn{white-space:normal!important;min-width:0!important;max-width:100%!important;}
  .incident-vehicle-row{grid-template-columns:1fr!important;padding:14px!important;}
  .unit-chip-card{align-items:flex-start;flex-direction:column;}
  .admin-login-toolbar{grid-template-columns:1fr!important;}
  .password-reveal{grid-template-columns:1fr!important;}
  .password-reveal button{width:100%;}
}

/* Retter-Portal v1.2.51 · Einsatzfahrzeuge, Wasserfilter und Mobile-Feinschliff */
.incident-form .form-subcard,
.incident-vehicle-builder{
  background:var(--rp26-panel-soft,rgba(15,23,42,.78))!important;
  border:1px solid var(--rp26-border,rgba(148,163,184,.18))!important;
  border-radius:24px!important;
  padding:20px!important;
  box-shadow:var(--rp26-shadow-soft,0 12px 32px rgba(0,0,0,.18))!important;
}
.unit-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:14px;}
.unit-choice,.incident-vehicle-row,.incident-crew-box{
  border:1px solid var(--line-soft)!important;
  border-radius:20px!important;
  background:rgba(15,23,42,.42)!important;
}
body[data-theme="light"] .unit-choice,
body[data-theme="light"] .incident-vehicle-row,
body[data-theme="light"] .incident-crew-box{background:rgba(255,255,255,.74)!important;}
.unit-choice{display:flex;align-items:center;gap:12px;padding:13px 14px;cursor:pointer;}
.unit-choice input{width:auto!important;}
.unit-choice span{display:flex;flex-direction:column;gap:3px;min-width:0;}
.unit-choice strong,.unit-choice small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.incident-vehicle-list{display:grid;gap:16px;}
.incident-vehicle-row{padding:16px;display:grid;gap:14px;}
.incident-vehicle-row.is-empty-vehicle-row .incident-vehicle-meta-grid,
.incident-vehicle-row.is-empty-vehicle-row .incident-crew-box{display:none!important;}
.incident-vehicle-row-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;}
.incident-vehicle-meta-grid{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);gap:12px;}
.incident-crew-box{padding:14px;display:grid;gap:12px;}
.incident-crew-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
.incident-crew-head .toggle-line{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:.9rem;color:var(--muted);}
.incident-crew-head .toggle-line input{width:auto!important;}
.incident-crew-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;}
.incident-crew-grid label{gap:6px!important;}
.incident-crew-grid label span{font-weight:900;color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;}
.crew-free-text textarea{min-height:78px!important;}
.water-origin-toggle{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;}
.water-origin-toggle>span{font-size:.82rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-right:4px;}
.water-origin-toggle .btn.is-active{background:linear-gradient(135deg,#df102c,#a90f25)!important;color:#fff!important;border-color:rgba(255,255,255,.12)!important;box-shadow:0 12px 28px rgba(200,16,46,.22)!important;}
.map-origin-toggle{align-self:end;padding:9px 10px;border:1px solid var(--line-soft);border-radius:18px;background:rgba(15,23,42,.28);}
body[data-theme="light"] .map-origin-toggle{background:rgba(255,255,255,.62);}
@media(max-width:760px){
  .incident-form .form-subcard,.incident-vehicle-builder{padding:14px!important;border-radius:20px!important;}
  .unit-choice-grid,.incident-crew-grid,.incident-vehicle-meta-grid,.incident-vehicle-row-head{grid-template-columns:1fr!important;}
  .incident-vehicle-row{padding:12px!important;border-radius:18px!important;}
  .incident-crew-head{display:grid!important;grid-template-columns:1fr!important;}
  .incident-crew-head .toggle-line{align-items:flex-start;line-height:1.35;}
  .water-origin-toggle{width:100%;}
  .water-origin-toggle .btn{flex:1 1 auto;min-width:0!important;}
}

/* Retter-Portal v1.2.52 · Einsatzbesetzung, Admin-Overlay und Accountverwaltung */
html body .app-shell .main .content .incident-vehicle-builder .form-section{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  align-items:start!important;
}
html body .app-shell .main .content .incident-vehicle-builder .form-section strong{display:block!important;line-height:1.2!important;}
html body .app-shell .main .content .incident-vehicle-builder .form-section span{display:block!important;line-height:1.45!important;color:var(--muted)!important;}
html body .app-shell .main .content .incident-strength-field{display:grid!important;gap:8px!important;}
html body .app-shell .main .content .strength-preset-row{display:flex!important;gap:8px!important;flex-wrap:wrap!important;}
html body .app-shell .main .content .btn.tiny{min-height:32px!important;padding:6px 10px!important;border-radius:11px!important;font-size:.82rem!important;}
html body .app-shell .main .content .incident-crew-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;align-items:start!important;}
html body .app-shell .main .content .incident-crew-slot{min-width:0!important;overflow:visible!important;}
html body .app-shell .main .content .incident-crew-slot label{display:grid!important;gap:6px!important;}
html body .app-shell .main .content .incident-crew-slot label span{font-weight:950!important;color:var(--muted)!important;font-size:.82rem!important;text-transform:uppercase!important;letter-spacing:.05em!important;}
html body .app-shell .main .content .incident-crew-slot label small{font-size:.75rem!important;color:var(--muted)!important;text-transform:none!important;letter-spacing:0!important;}
html body .app-shell .main .content .incident-crew-slot .smart-select-native{display:none!important;}
html body .app-shell .main .content .incident-crew-slot.is-open{z-index:920000!important;}
html body .app-shell .main .content .incident-crew-slot .smart-select-results{z-index:930000!important;}
html body .app-shell .main .content .password-admin-field{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important;}
html body .app-shell .main .content .admin-users-table input,
html body .app-shell .main .content .admin-users-table select{min-width:0!important;}
html body .app-shell .main .content .admin-access-grid{position:relative!important;z-index:1000!important;}
html body .app-shell .main .content .admin-access-grid .card{position:relative!important;z-index:1!important;}
html body .app-shell .main .content .admin-access-grid .card:has(.smart-select-field.is-open),
html body .app-shell .main .content .admin-access-grid .card:has(.smart-select-field.is-loading),
html body .app-shell .main .content .account-link-form.smart-select-open,
html body .app-shell .main .content .account-link-form:has(.smart-select-field.is-open){z-index:980000!important;}
html body .app-shell .main .content .account-link-form .user-link-field.is-open,
html body .app-shell .main .content .account-link-form .user-link-field.is-loading,
html body .app-shell .main .content .account-link-form .user-link-field:focus-within{z-index:990000!important;}
html body .app-shell .main .content .account-link-form .personnel-link-field.is-open,
html body .app-shell .main .content .account-link-form .personnel-link-field.is-loading,
html body .app-shell .main .content .account-link-form .personnel-link-field:focus-within{z-index:980000!important;}
html body .app-shell .main .content .admin-access-table-grid,
html body .app-shell .main .content .admin-user-link-table{position:relative!important;z-index:1!important;}
html body .app-shell .main .content .mail-deliverability-note{margin-top:18px!important;}
@media(max-width:760px){
  html body .app-shell .main .content .incident-crew-grid{grid-template-columns:1fr!important;}
  html body .app-shell .main .content .password-admin-field{grid-template-columns:1fr!important;}
  html body .app-shell .main .content .incident-vehicle-row-head,
  html body .app-shell .main .content .incident-vehicle-meta-grid{grid-template-columns:1fr!important;}
  html body .app-shell .main .content .incident-crew-slot .smart-select-results{position:relative!important;top:auto!important;max-height:280px!important;}
}

/* Retter-Portal v1.2.53 · sensible Accountdaten getrennt + mobile/tablet Stabilisierung */
.small-link{display:inline-flex;margin-top:8px;font-size:.82rem;font-weight:900;color:var(--accent);text-decoration:none;}
.admin-account-credentials-table input[type="email"],
.admin-account-credentials-table .password-reveal{width:100%;min-width:0;}
.admin-account-credentials-table .password-reveal{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;}
.account-policy-card .toolbar{align-items:end;}

@media(max-width:1180px){
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table{table-layout:auto!important;}
  html body .admin-account-credentials-table .password-reveal{grid-template-columns:1fr!important;}
}

@media(max-width:820px){
  html body,
  html body *{
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }
  html body .app-shell .main .content :is(h1,h2,h3,h4,strong,a,button,.btn,.pill,.role,.status,.subtle,td,th,label,input,select,textarea,p,span,div){
    max-width:100%;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){
    overflow:visible!important;
    padding:16px!important;
    border-radius:22px!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table,
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) thead,
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody,
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tr,
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) th,
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) thead{display:none!important;}
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr{
    margin:0 0 14px!important;
    padding:14px!important;
    border:1px solid var(--line)!important;
    border-radius:18px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody tr:last-child{margin-bottom:0!important;}
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody td{
    padding:9px 0!important;
    border:0!important;
    background:transparent!important;
    text-align:left!important;
    white-space:normal!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody td.actions,
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody td.table-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    justify-content:flex-start!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody td .btn,
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody td button{
    width:auto!important;
    max-width:100%!important;
    white-space:normal!important;
  }
  html body .form-grid,
  html body .form-grid.two,
  html body .grid.two,
  html body .grid.three,
  html body .toolbar,
  html body .admin-search-toolbar{
    grid-template-columns:1fr!important;
    display:grid!important;
    gap:14px!important;
  }
  html body .toolbar .btn,
  html body .admin-search-toolbar .btn{width:100%!important;justify-content:center!important;}
  html body .page-head{padding:22px!important;border-radius:24px!important;}
  html body .page-head h1{font-size:clamp(2.2rem,11vw,3.7rem)!important;line-height:.98!important;}
  html body .card{border-radius:22px!important;}
}

/* Retter-Portal v1.2.56 · Einsatz-Besetzung standardmäßig einklappen + E-Mail-Hinweis entschärft */
html body .app-shell .main .content details.incident-crew-box{
  padding:0!important;
  overflow:visible!important;
}
html body .app-shell .main .content .incident-crew-summary{
  list-style:none!important;
  cursor:pointer!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:14px 16px!important;
  border-radius:18px!important;
  background:rgba(15,23,42,.24)!important;
  user-select:none!important;
}
body[data-theme="light"] .app-shell .main .content .incident-crew-summary{background:rgba(226,235,247,.76)!important;}
html body .app-shell .main .content .incident-crew-summary::-webkit-details-marker{display:none!important;}
html body .app-shell .main .content .incident-crew-summary strong{font-weight:950!important;line-height:1.2!important;}
html body .app-shell .main .content .incident-crew-summary span{font-size:.88rem!important;color:var(--muted)!important;font-weight:850!important;}
html body .app-shell .main .content .incident-crew-summary::after{
  content:'+'!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:34px!important;
  height:34px!important;
  border-radius:999px!important;
  background:rgba(200,16,46,.14)!important;
  color:var(--accent)!important;
  border:1px solid rgba(200,16,46,.25)!important;
  font-weight:950!important;
  flex:0 0 auto!important;
}
html body .app-shell .main .content details.incident-crew-box[open] .incident-crew-summary::after{content:'–'!important;}
html body .app-shell .main .content .incident-crew-content{
  display:grid!important;
  gap:12px!important;
  padding:14px!important;
  border-top:1px solid var(--line-soft)!important;
}
@media(max-width:760px){
  html body .app-shell .main .content .incident-crew-summary{padding:12px!important;align-items:flex-start!important;}
  html body .app-shell .main .content .incident-crew-summary span{font-size:.8rem!important;}
  html body .app-shell .main .content .incident-crew-content{padding:12px!important;}
}

/* Retter-Portal v1.2.57 · Dropdowns immer vor Folgefeldern + Jugendtermine nur im Jugendkalender */
html body .app-shell .main,
html body .app-shell .main .content,
html body .app-shell .main .content :is(form,.card,.toolbar,.form-grid,.form-subcard,.table-wrap,.data-table-card,.checks-table-wrap,.incident-vehicle-row,.incident-crew-box,.admin-access-grid,.account-link-form,.rights-assign-form){
  overflow:visible!important;
}
html body .app-shell .main .content :is(.smart-select-field,.smart-select-field.is-open,.smart-select-field.is-loading,.smart-select-field.is-front-select){
  position:relative!important;
  overflow:visible!important;
}
html body .app-shell .main .content .smart-select-field{z-index:10!important;}
html body .app-shell .main .content .smart-select-field.is-open,
html body .app-shell .main .content .smart-select-field.is-loading,
html body .app-shell .main .content .smart-select-field.is-front-select,
html body .app-shell .main .content :is(form,.card,.toolbar,.form-grid,.form-subcard,.table-wrap,.data-table-card,.checks-table-wrap,.incident-vehicle-row,.incident-crew-box,.admin-access-grid,.account-link-form,.rights-assign-form).smart-select-open,
html body .app-shell .main .content :is(form,.card,.toolbar,.form-grid,.form-subcard,.table-wrap,.data-table-card,.checks-table-wrap,.incident-vehicle-row,.incident-crew-box,.admin-access-grid,.account-link-form,.rights-assign-form):has(.smart-select-field.is-open),
html body .app-shell .main .content :is(form,.card,.toolbar,.form-grid,.form-subcard,.table-wrap,.data-table-card,.checks-table-wrap,.incident-vehicle-row,.incident-crew-box,.admin-access-grid,.account-link-form,.rights-assign-form):has(.smart-select-field.is-loading){
  position:relative!important;
  z-index:2147480000!important;
  isolation:isolate!important;
  overflow:visible!important;
}
html body .app-shell .main .content .smart-select-results,
html body .app-shell .main .content .smart-select-field .smart-select-results,
html body .app-shell .main .content .incident-crew-slot .smart-select-results,
html body .app-shell .main .content .incident-command-smart-select .smart-select-results{
  position:absolute!important;
  top:calc(100% + 8px)!important;
  left:0!important;
  right:0!important;
  z-index:2147483000!important;
  min-width:100%!important;
  max-height:min(420px,52vh)!important;
  overflow:auto!important;
  background:var(--surface)!important;
  border:1px solid var(--line)!important;
  box-shadow:0 34px 90px rgba(0,0,0,.38)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
body[data-theme="light"] .app-shell .main .content .smart-select-results{background:#fff!important;box-shadow:0 30px 80px rgba(15,23,42,.22)!important;}
html body .app-shell .main .content .smart-select-field:not(.is-open):not(.is-loading) .smart-select-results{display:none!important;}
html body .app-shell .main .content .smart-select-field.is-open .smart-select-results,
html body .app-shell .main .content .smart-select-field.is-loading .smart-select-results{display:grid!important;}
html body .app-shell .main .content .incident-crew-slot label small{display:none!important;}
@media(max-width:820px){
  html body .app-shell .main .content .smart-select-results,
  html body .app-shell .main .content .incident-crew-slot .smart-select-results,
  html body .app-shell .main .content .incident-command-smart-select .smart-select-results{
    position:absolute!important;
    top:calc(100% + 8px)!important;
    left:0!important;
    right:0!important;
    max-height:min(360px,48vh)!important;
  }
}

/* Retter-Portal v1.2.58 · Kalender-Spannen, Tablet-Badges und Smart-Auswahlen stabilisiert */
html body .smart-select-field{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  z-index:2!important;
}
html body .smart-select-field.is-open,
html body .smart-select-field.is-loading,
html body .smart-select-field.is-front-select{
  z-index:99980!important;
}
html body .smart-select-field .smart-select-results,
html body .smart-select-results{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:99990!important;
  width:100%!important;
  min-width:min(100%,280px)!important;
  max-height:min(360px,52vh)!important;
  overflow:auto!important;
  background:var(--surface)!important;
  border:1px solid var(--line)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.34)!important;
  backdrop-filter:blur(14px)!important;
}
html body .card.has-smart-select,
html body .form-grid.has-smart-select,
html body .form-subcard.has-smart-select,
html body form.smart-select-open,
html body .card.smart-select-open,
html body .form-grid.smart-select-open,
html body .form-subcard.smart-select-open,
html body .incident-form,
html body .incident-form .form-subcard{
  overflow:visible!important;
}
html body .smart-select-option,
html body .smart-select-empty{
  overflow-wrap:normal!important;
  word-break:normal!important;
  white-space:normal!important;
}

/* Einsatzleitung öffnet auf Bearbeiten nicht mehr automatisch; geöffnete Auswahl bleibt aber immer darüber. */
html body .incident-command-smart-select.is-open{z-index:100000!important;}

/* Mehrtägige Kalendereinträge klar kennzeichnen. */
html body .calendar-event-pill strong,
html body .youth-calendar-event-link{
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
html body .calendar-event-pill:has(strong)::before{content:none!important;}
html body .calendar-event-pill .continued-marker{font-weight:950;}
html body .calendar-event-pill.dienst-übung,
html body .calendar-event-pill.jugendtermin,
html body .youth-calendar-event-link{
  border-color:rgba(200,16,46,.28)!important;
  background:linear-gradient(135deg,rgba(200,16,46,.20),rgba(20,89,245,.10))!important;
}

/* Tablet: Badges/Pills dürfen wachsen und umbrechen, ohne aus dem Kasten zu laufen. */
html body :is(.rp55-trust-row,.hero-trust-row,.trust-row,.badge-row,.pill-row,.actions){
  flex-wrap:wrap!important;
  min-width:0!important;
}
html body :is(.rp55-trust-row span,.hero-trust-row span,.trust-row span,.badge-row span,.pill,.status,.role,.topbar-role-badge){
  max-width:100%!important;
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  line-height:1.18!important;
}
html body .rp55-trust-row span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:9px 13px!important;
  flex:0 1 auto!important;
}

@media (min-width:760px) and (max-width:1180px){
  html body .content{padding-left:22px!important;padding-right:22px!important;}
  html body .page-head,
  html body .page-hero,
  html body .card{border-radius:24px!important;}
  html body .page-head h1,
  html body .page-hero h1{font-size:clamp(2.4rem,5.6vw,4.8rem)!important;}
  html body .rp55-public{--rp29-public-width:calc(100vw - 36px)!important;}
  html body .rp55-hero{grid-template-columns:1fr!important;min-height:0!important;}
  html body .rp55-trust-row{display:flex!important;gap:9px!important;}
  html body .rp55-trust-row span{font-size:.78rem!important;letter-spacing:.055em!important;}
  html body .topbar{gap:10px!important;}
  html body .fire-selector{max-width:min(42vw,520px)!important;}
}

@media(max-width:720px){
  html body .smart-select-field .smart-select-results,
  html body .smart-select-results{
    position:fixed!important;
    left:14px!important;
    right:14px!important;
    top:auto!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 18px)!important;
    width:auto!important;
    max-height:46vh!important;
    border-radius:22px!important;
    z-index:2147483000!important;
  }
  html body .smart-select-field.is-open::before{
    content:""!important;
    position:fixed!important;
    inset:0!important;
    background:rgba(0,0,0,.20)!important;
    z-index:2147482999!important;
    pointer-events:none!important;
  }
  html body :is(.rp55-trust-row,.hero-trust-row,.trust-row,.badge-row,.pill-row){
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  html body :is(.rp55-trust-row span,.hero-trust-row span,.trust-row span,.badge-row span,.pill){
    width:100%!important;
    text-align:center!important;
    justify-content:center!important;
  }
}

/* Retter-Portal v1.2.59 · Mobile/Tablet Header sauber + fortlaufende Kalendereinträge ohne Pfeil */
html body .calendar-event-pill .continued-marker{display:none!important;}
html body .calendar-event-pill strong,
html body .youth-calendar-event-link{
  text-decoration:none!important;
}

@media (min-width:861px) and (max-width:1260px){
  html body .topbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-rows:auto!important;
    gap:10px!important;
    align-items:center!important;
    min-height:auto!important;
    padding:12px clamp(14px,2vw,22px)!important;
  }
  html body .topbar-title{
    grid-column:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    overflow:hidden!important;
  }
  html body .topbar-user,
  html body .topbar.has-department-switch .topbar-user{
    grid-column:1!important;
    display:grid!important;
    grid-template-columns:minmax(260px,1fr) auto auto minmax(120px,220px) auto!important;
    align-items:center!important;
    justify-content:stretch!important;
    gap:9px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar.has-department-switch .department-context-switch{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    justify-self:stretch!important;
    margin:0!important;
  }
  html body .topbar .department-context-switch select{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar .theme-switch,
  html body .topbar .topbar-role-badge,
  html body .topbar form[action="/logout"]{
    flex:0 0 auto!important;
    justify-self:end!important;
    max-width:100%!important;
  }
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge,
  html body .topbar.has-department-switch .user-chip,
  html body .topbar.has-department-switch .user-chip.has-role-badge{
    width:auto!important;
    min-width:0!important;
    max-width:220px!important;
    justify-self:stretch!important;
    text-align:left!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

@media (min-width:861px) and (max-width:1040px){
  html body .topbar-user,
  html body .topbar.has-department-switch .topbar-user{
    grid-template-columns:minmax(0,1fr) auto auto auto!important;
    grid-template-areas:
      "dept dept dept dept"
      "theme role name logout"!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar.has-department-switch .department-context-switch{grid-area:dept!important;}
  html body .topbar .theme-switch{grid-area:theme!important;justify-self:start!important;}
  html body .topbar .topbar-role-badge{grid-area:role!important;justify-self:end!important;white-space:nowrap!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge,
  html body .topbar.has-department-switch .user-chip,
  html body .topbar.has-department-switch .user-chip.has-role-badge{grid-area:name!important;max-width:260px!important;justify-self:end!important;}
  html body .topbar form[action="/logout"]{grid-area:logout!important;justify-self:end!important;}
}

@media (max-width:860px){
  html body .topbar{
    position:sticky!important;
    top:0!important;
    z-index:1300!important;
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    grid-template-areas:
      "menu title"
      "controls controls"!important;
    gap:10px!important;
    align-items:center!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:calc(10px + env(safe-area-inset-top)) 12px 12px!important;
    border-radius:0 0 22px 22px!important;
    border-bottom:1px solid var(--line-soft)!important;
    background:linear-gradient(180deg,rgba(8,13,22,.97),rgba(11,18,32,.94))!important;
    box-shadow:0 18px 46px rgba(0,0,0,.28)!important;
    backdrop-filter:blur(18px) saturate(1.22)!important;
    -webkit-backdrop-filter:blur(18px) saturate(1.22)!important;
    overflow:visible!important;
  }
  body[data-theme="light"] .topbar{
    background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(241,246,252,.95))!important;
    box-shadow:0 16px 38px rgba(15,23,42,.14)!important;
  }
  html body.sidebar-open .topbar{z-index:900!important;}
  html body .menu-toggle{
    grid-area:menu!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    border-radius:16px!important;
    border:1px solid var(--line)!important;
    background:var(--surface)!important;
    color:var(--text)!important;
    box-shadow:var(--shadow-sm)!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    line-height:1!important;
    z-index:2!important;
  }
  html body .topbar-title{
    grid-area:title!important;
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    overflow:hidden!important;
  }
  html body .topbar-logo-pair{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    flex:0 0 34px!important;
  }
  html body .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    font-size:.68rem!important;
    letter-spacing:.075em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar-eyebrow .topbar-version{flex:0 0 auto!important;}
  html body .topbar-user,
  html body .topbar.has-department-switch .topbar-user{
    grid-area:controls!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    grid-template-areas:
      "dept dept dept"
      "theme name logout"!important;
    gap:9px!important;
    align-items:center!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar.has-department-switch .department-context-switch{
    grid-area:dept!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:8px!important;
    border-radius:18px!important;
    background:rgba(148,163,184,.10)!important;
    border:1px solid var(--line-soft)!important;
  }
  html body .topbar .department-context-switch span{
    font-size:.66rem!important;
    letter-spacing:.11em!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .topbar .department-context-switch select{
    height:42px!important;
    min-height:42px!important;
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    padding:0 40px 0 14px!important;
    border-radius:15px!important;
    font-size:.95rem!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar .theme-switch{
    grid-area:theme!important;
    justify-self:start!important;
    align-self:center!important;
    width:auto!important;
    max-width:100%!important;
    min-width:0!important;
    transform:none!important;
    padding:4px!important;
    border-radius:999px!important;
  }
  html body .topbar .theme-switch .theme-dot{
    width:34px!important;
    min-width:34px!important;
    height:34px!important;
    min-height:34px!important;
    font-size:.84rem!important;
    padding:0!important;
  }
  html body .topbar .theme-switch .theme-dot.auto{width:auto!important;min-width:48px!important;padding:0 10px!important;}
  html body .topbar .topbar-role-badge{display:none!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge,
  html body .topbar.has-department-switch .user-chip,
  html body .topbar.has-department-switch .user-chip.has-role-badge{
    grid-area:name!important;
    justify-self:stretch!important;
    align-self:center!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:9px 12px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:16px!important;
    background:rgba(148,163,184,.10)!important;
    text-align:left!important;
    font-size:.93rem!important;
    font-weight:950!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar form[action="/logout"]{
    grid-area:logout!important;
    justify-self:end!important;
    align-self:center!important;
    display:block!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
  }
  html body .topbar form[action="/logout"] .btn,
  html body .topbar form[action="/logout"] button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:86px!important;
    max-width:none!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 14px!important;
    border-radius:15px!important;
    font-size:.85rem!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-indent:0!important;
    opacity:1!important;
    visibility:visible!important;
  }
}

@media (max-width:460px){
  html body .topbar{padding-left:10px!important;padding-right:10px!important;}
  html body .topbar-user,
  html body .topbar.has-department-switch .topbar-user{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "dept dept"
      "theme logout"
      "name name"!important;
  }
  html body .topbar .theme-switch{justify-self:start!important;}
  html body .topbar form[action="/logout"]{justify-self:end!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{
    font-size:.94rem!important;
    text-align:center!important;
  }
}

@media (max-width:370px){
  html body .topbar{grid-template-columns:42px minmax(0,1fr)!important;gap:8px!important;}
  html body .menu-toggle{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;}
  html body .topbar-logo-pair{width:30px!important;height:30px!important;min-width:30px!important;flex-basis:30px!important;}
  html body .topbar-eyebrow{font-size:.61rem!important;letter-spacing:.045em!important;}
  html body .topbar .theme-switch .theme-dot{width:31px!important;min-width:31px!important;height:31px!important;min-height:31px!important;}
  html body .topbar .theme-switch .theme-dot.auto{min-width:44px!important;padding:0 8px!important;}
  html body .topbar form[action="/logout"] .btn,
  html body .topbar form[action="/logout"] button{min-width:76px!important;height:39px!important;min-height:39px!important;padding:0 10px!important;font-size:.8rem!important;}
}

/* Retter-Portal v1.2.60 · Einsatzfahrzeug-Luft, Tablet-Header, Badge-Fit und ruhige Suche */
html body .app-shell .main .content .incident-vehicle-row{
  grid-template-columns:1fr!important;
  align-items:start!important;
  align-content:start!important;
  gap:14px!important;
}
html body .app-shell .main .content .incident-vehicle-row-head{
  align-items:start!important;
  align-content:start!important;
  grid-template-columns:minmax(0,1fr) auto!important;
}
html body .app-shell .main .content .incident-vehicle-row-head > label{
  align-self:start!important;
  margin:0!important;
}
html body .app-shell .main .content .incident-vehicle-meta-grid{
  align-items:start!important;
  grid-template-columns:minmax(150px,220px) minmax(0,1fr)!important;
}
html body .app-shell .main .content .incident-vehicle-row .incident-crew-box,
html body .app-shell .main .content .incident-vehicle-row details.incident-crew-box{
  grid-column:1/-1!important;
  align-self:start!important;
}
html body .app-shell .main .content .incident-vehicle-row.is-empty-vehicle-row{
  min-height:0!important;
}
html body .app-shell .main .content .incident-vehicle-row.is-empty-vehicle-row .incident-vehicle-row-head{
  margin-top:0!important;
}
html body :where(.pill,.status,.role,.topbar-role-badge){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:max-content!important;
  min-width:fit-content!important;
  max-width:100%!important;
  min-height:34px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
  line-height:1.08!important;
  text-align:center!important;
  vertical-align:middle!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  overflow:visible!important;
}
html body td :where(.pill,.status,.role),
html body .table-wrap :where(.pill,.status,.role){
  justify-self:start!important;
}
@media (min-width:861px) and (max-width:1280px){
  html body .topbar{
    display:grid!important;
    grid-template-columns:minmax(190px,auto) minmax(0,1fr)!important;
    align-items:center!important;
    gap:14px!important;
    padding:14px 20px!important;
    overflow:visible!important;
  }
  html body .topbar-title{min-width:0!important;max-width:100%!important;overflow:hidden!important;}
  html body .topbar-user,
  html body .topbar.has-department-switch .topbar-user{
    display:grid!important;
    grid-template-columns:minmax(320px,560px) auto auto minmax(120px,220px) auto!important;
    gap:10px!important;
    align-items:center!important;
    justify-content:end!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar.has-department-switch .department-context-switch{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
    min-width:0!important;
    width:100%!important;
    max-width:560px!important;
    margin:0!important;
    padding:7px 9px!important;
    border-radius:999px!important;
    overflow:visible!important;
  }
  html body .topbar .department-context-switch span{
    position:relative!important;
    z-index:2!important;
    display:inline-flex!important;
    align-items:center!important;
    height:100%!important;
    padding-left:4px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .topbar .department-context-switch select{
    position:relative!important;
    z-index:1!important;
    height:40px!important;
    min-height:40px!important;
    min-width:0!important;
    padding-left:14px!important;
    font-size:.92rem!important;
  }
  html body .topbar .theme-switch{justify-self:end!important;}
  html body .topbar .topbar-role-badge{justify-self:end!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{
    justify-self:end!important;
    max-width:220px!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar form[action="/logout"]{justify-self:end!important;}
}
@media (min-width:861px) and (max-width:1080px){
  html body .topbar-user,
  html body .topbar.has-department-switch .topbar-user{
    grid-template-columns:minmax(0,1fr) auto auto auto!important;
    grid-template-areas:
      "dept dept dept dept"
      "theme role name logout"!important;
    justify-content:stretch!important;
    row-gap:8px!important;
  }
  html body .topbar .department-context-switch{grid-area:dept!important;max-width:none!important;}
  html body .topbar .theme-switch{grid-area:theme!important;justify-self:start!important;}
  html body .topbar .topbar-role-badge{grid-area:role!important;}
  html body .topbar .user-chip{grid-area:name!important;}
  html body .topbar form[action="/logout"]{grid-area:logout!important;}
}
@media(max-width:760px){
  html body .app-shell .main .content .incident-vehicle-meta-grid,
  html body .app-shell .main .content .incident-vehicle-row-head{
    grid-template-columns:1fr!important;
  }
  html body :where(.pill,.status,.role){
    min-width:fit-content!important;
    white-space:nowrap!important;
  }
}
html body .app-shell .main .content .smart-select-field,
html body .app-shell .main .content .smart-select-results{
  will-change:opacity,transform!important;
}
html body .app-shell .main .content .smart-select-results{
  transform:translate3d(0,0,0)!important;
}

/* Retter-Portal v1.2.61 · Inventar-Spalte Menge auf Desktop sauber halten */
@media (min-width: 821px){
  html body .app-shell .main .content .inventory-table th:nth-child(5),
  html body .app-shell .main .content .inventory-table td:nth-child(5){
    min-width:72px!important;
    width:72px!important;
    max-width:72px!important;
    text-align:center!important;
    white-space:nowrap!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }
  html body .app-shell .main .content .inventory-table th:nth-child(5){
    letter-spacing:.07em!important;
    font-size:.68rem!important;
    line-height:1.1!important;
  }
}

/* Retter-Portal v1.2.62 · Kalender & Dienstplan zeigt im Monatsfeld mehr als nur Uhrzeit */
html body .app-shell .main .content .refined-calendar .calendar-day{
  min-height:154px!important;
}
html body .app-shell .main .content .calendar-event-pill{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  align-items:start!important;
  column-gap:7px!important;
  row-gap:2px!important;
  min-height:42px!important;
  padding:7px 8px!important;
  white-space:normal!important;
  overflow:hidden!important;
}
html body .app-shell .main .content .calendar-event-pill .calendar-event-time,
html body .app-shell .main .content .calendar-event-pill > span:first-child{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  align-self:start!important;
  white-space:nowrap!important;
  font-weight:950!important;
  line-height:1.2!important;
  padding-top:1px!important;
}
html body .app-shell .main .content .calendar-event-pill strong{
  display:block!important;
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  line-height:1.18!important;
}
html body .app-shell .main .content .calendar-event-pill .calendar-event-meta{
  display:block!important;
  grid-column:2!important;
  grid-row:2!important;
  min-width:0!important;
  max-width:100%!important;
  color:var(--muted)!important;
  font-size:.68rem!important;
  font-weight:850!important;
  line-height:1.18!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body[data-theme="dark"] .app-shell .main .content .calendar-event-pill .calendar-event-meta{color:rgba(226,232,240,.72)!important;}
@media(max-width:900px){
  html body .app-shell .main .content .refined-calendar .calendar-day{min-height:118px!important;}
  html body .app-shell .main .content .calendar-event-pill strong{display:block!important;}
}
@media(max-width:640px){
  html body .app-shell .main .content .calendar-event-pill{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;
    gap:4px!important;
    min-height:54px!important;
  }
  html body .app-shell .main .content .calendar-event-pill .calendar-event-time,
  html body .app-shell .main .content .calendar-event-pill > span:first-child,
  html body .app-shell .main .content .calendar-event-pill strong,
  html body .app-shell .main .content .calendar-event-pill .calendar-event-meta{
    grid-column:1!important;
    grid-row:auto!important;
    white-space:normal!important;
  }
}


/* Retter-Portal v1.2.63 · Kalender-Monatsfeld wieder cleaner: Uhrzeit + Titel */
html body .app-shell .main .content .refined-calendar .calendar-day{
  min-height:140px!important;
}
html body .app-shell .main .content .calendar-event-pill{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  column-gap:7px!important;
  row-gap:0!important;
  min-height:34px!important;
  padding:6px 8px!important;
  white-space:normal!important;
  overflow:hidden!important;
}
html body .app-shell .main .content .calendar-event-pill .calendar-event-time,
html body .app-shell .main .content .calendar-event-pill > span:first-child{
  grid-column:1!important;
  grid-row:1!important;
  align-self:center!important;
  white-space:nowrap!important;
  font-weight:950!important;
  line-height:1.15!important;
  padding-top:0!important;
}
html body .app-shell .main .content .calendar-event-pill strong{
  display:block!important;
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  line-height:1.15!important;
}
html body .app-shell .main .content .calendar-event-pill .calendar-event-meta{
  display:none!important;
}
@media(max-width:900px){
  html body .app-shell .main .content .refined-calendar .calendar-day{min-height:118px!important;}
}
@media(max-width:640px){
  html body .app-shell .main .content .calendar-event-pill{
    grid-template-columns:auto minmax(0,1fr)!important;
    grid-template-rows:auto!important;
    min-height:34px!important;
    gap:7px!important;
  }
  html body .app-shell .main .content .calendar-event-pill .calendar-event-time,
  html body .app-shell .main .content .calendar-event-pill > span:first-child{
    grid-column:1!important;
    grid-row:1!important;
    white-space:nowrap!important;
  }
  html body .app-shell .main .content .calendar-event-pill strong{
    grid-column:2!important;
    grid-row:1!important;
    white-space:nowrap!important;
  }
}

/* Retter-Portal v1.2.64 · Tablet-Einsatzübersicht + ruhige Status-Badges */
@media (min-width:861px) and (max-width:1280px){
  :root{--sidebar-width:248px!important;}
  html body .sidebar{
    width:var(--sidebar-width)!important;
    min-width:var(--sidebar-width)!important;
    max-width:var(--sidebar-width)!important;
  }
  html body .main{margin-left:var(--sidebar-width)!important;}
  html body .content{padding:22px 20px 34px!important;}

  html body .incident-list-wrap{
    padding:0!important;
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
  }
  html body .incident-list-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    border-collapse:separate!important;
  }
  html body .incident-list-table thead{display:none!important;}
  html body .incident-list-table tbody{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    width:100%!important;
  }
  html body .incident-list-table tbody tr{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:12px 16px!important;
    width:100%!important;
    min-width:0!important;
    padding:16px!important;
    border:1px solid var(--line)!important;
    border-radius:22px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
    overflow:visible!important;
  }
  html body .incident-list-table tbody td{
    display:grid!important;
    grid-template-rows:auto 1fr!important;
    gap:5px!important;
    min-width:0!important;
    width:100%!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
    align-content:start!important;
  }
  html body .incident-list-table tbody td::before{
    content:attr(data-label)!important;
    display:block!important;
    color:var(--muted-2)!important;
    font-size:.69rem!important;
    font-weight:950!important;
    letter-spacing:.09em!important;
    line-height:1.15!important;
    text-transform:uppercase!important;
  }
  html body .incident-list-table .incident-title-cell{grid-column:span 2!important;}
  html body .incident-list-table .incident-action-cell{
    align-self:end!important;
    justify-self:stretch!important;
  }
  html body .incident-list-table .incident-action-cell .btn{width:100%!important;}
  html body .incident-list-table :is(.pill,.status,.role,.incident-status-pill){
    width:max-content!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:34px!important;
    padding:7px 12px!important;
    white-space:nowrap!important;
    line-height:1!important;
    overflow:visible!important;
  }
}

@media (min-width:861px) and (max-width:1040px){
  html body .incident-list-table tbody tr{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  html body .incident-list-table .incident-title-cell{grid-column:1/-1!important;}
  html body .incident-list-table .incident-action-cell{grid-column:1/-1!important;}
}

/* Retter-Portal v1.2.65 · Tablet wieder desktopnah + vollständig nutzbarer Mobile-Header */
html body .topbar-user,
html body .topbar-controls,
html body .topbar-account{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
html body .topbar-user{flex:1 1 auto!important;justify-content:flex-end!important;flex-wrap:nowrap!important;}
html body .topbar-controls{flex:1 1 auto!important;justify-content:flex-end!important;}
html body .topbar-account{flex:0 1 auto!important;justify-content:flex-end!important;}
html body .topbar-logout{flex:0 0 auto!important;margin:0!important;}
html body .topbar-logout .btn{white-space:nowrap!important;}
html body .department-context-switch{
  min-width:0!important;
  max-width:520px!important;
  display:grid!important;
  grid-template-columns:auto minmax(190px,1fr)!important;
  align-items:center!important;
  gap:10px!important;
}
html body .department-context-switch > span{
  position:static!important;
  display:block!important;
  min-width:max-content!important;
  margin:0!important;
  line-height:1.1!important;
  white-space:nowrap!important;
}
html body .department-context-switch select{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
html body .app-shell .main .content :is(.pill,.status,.role,.badge,.incident-status-pill){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:max-content!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:32px!important;
  padding:7px 11px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  vertical-align:middle!important;
}

/* Tablet: Desktop-Tabellen beibehalten; nur innerhalb der Tabelle darf bei Bedarf gescrollt werden. */
@media (min-width:761px) and (max-width:1280px){
  :root{--sidebar-width:220px!important;}
  html body .sidebar{
    width:var(--sidebar-width)!important;
    min-width:var(--sidebar-width)!important;
    max-width:var(--sidebar-width)!important;
  }
  html body .main{margin-left:var(--sidebar-width)!important;min-width:0!important;}
  html body .content{width:100%!important;max-width:100%!important;padding:20px 18px 34px!important;overflow-x:hidden!important;}
  html body .topbar{
    min-height:72px!important;
    padding:11px 18px!important;
    gap:12px!important;
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    overflow:visible!important;
  }
  html body .topbar-title{
    flex:0 0 auto!important;
    min-width:210px!important;
    max-width:280px!important;
    width:auto!important;
  }
  html body .topbar-eyebrow{font-size:.68rem!important;gap:6px!important;white-space:nowrap!important;}
  html body .topbar-user{flex:1 1 520px!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:9px!important;}
  html body .topbar-controls{flex:1 1 360px!important;min-width:300px!important;justify-content:flex-end!important;}
  html body .topbar-account{flex:0 1 auto!important;max-width:100%!important;}
  html body .department-context-switch{flex:1 1 300px!important;max-width:430px!important;}
  html body .user-chip{max-width:170px!important;white-space:nowrap!important;text-overflow:ellipsis!important;overflow:hidden!important;}
  html body .topbar-role-badge{display:inline-flex!important;}
  html body .theme-switch{display:flex!important;flex:0 0 auto!important;}
  html body .topbar-logout{display:block!important;}

  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    -webkit-overflow-scrolling:touch!important;
    background:var(--surface)!important;
    border:1px solid var(--line-soft)!important;
    border-radius:20px!important;
    box-shadow:var(--shadow-sm)!important;
    padding:0!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table,
  html body .app-shell .main .content .incident-list-table{
    display:table!important;
    width:100%!important;
    min-width:800px!important;
    table-layout:fixed!important;
    border-collapse:collapse!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) thead,
  html body .app-shell .main .content .incident-list-table thead{display:table-header-group!important;}
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody,
  html body .app-shell .main .content .incident-list-table tbody{display:table-row-group!important;}
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tr,
  html body .app-shell .main .content .incident-list-table tr{
    display:table-row!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) th,
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td,
  html body .app-shell .main .content .incident-list-table th,
  html body .app-shell .main .content .incident-list-table td{
    display:table-cell!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    padding:11px 10px!important;
    border-bottom:1px solid var(--line-soft)!important;
    background:transparent!important;
    vertical-align:middle!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
    font-size:.86rem!important;
    line-height:1.3!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) td::before,
  html body .app-shell .main .content .incident-list-table td::before{display:none!important;content:none!important;}
  html body .incident-list-wrap{
    padding:0!important;
    overflow-x:auto!important;
    border:1px solid var(--line-soft)!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
  }
  html body .incident-list-table{min-width:860px!important;}
  html body .incident-list-table th:nth-child(1),html body .incident-list-table td:nth-child(1){width:13%!important;}
  html body .incident-list-table th:nth-child(2),html body .incident-list-table td:nth-child(2){width:10%!important;}
  html body .incident-list-table th:nth-child(3),html body .incident-list-table td:nth-child(3){width:19%!important;}
  html body .incident-list-table th:nth-child(4),html body .incident-list-table td:nth-child(4){width:14%!important;}
  html body .incident-list-table th:nth-child(5),html body .incident-list-table td:nth-child(5){width:14%!important;}
  html body .incident-list-table th:nth-child(6),html body .incident-list-table td:nth-child(6){width:13%!important;}
  html body .incident-list-table th:nth-child(7),html body .incident-list-table td:nth-child(7){width:6%!important;text-align:center!important;}
  html body .incident-list-table th:nth-child(8),html body .incident-list-table td:nth-child(8){width:11%!important;text-align:right!important;}
  html body .incident-list-table .incident-title-cell{grid-column:auto!important;}
  html body .incident-list-table .incident-action-cell{grid-column:auto!important;justify-self:auto!important;align-self:auto!important;}
  html body .incident-list-table .incident-action-cell .btn{width:auto!important;white-space:nowrap!important;}
  html body .form-grid,
  html body .detail-grid,
  html body .info-grid,
  html body .permission-grid{min-width:0!important;}
  html body :is(input,select,textarea,.btn,.card,.toolbar,.form-subcard){min-width:0!important;max-width:100%!important;}
}

/* Schmales Tablet: Sidebar wie mobil öffnen, Inhalt bleibt aber desktopnah. */
@media (min-width:761px) and (max-width:980px){
  html body .app-shell{display:block!important;}
  html body .sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:min(82vw,320px)!important;
    min-width:0!important;
    max-width:320px!important;
    height:100dvh!important;
    z-index:4400!important;
    transform:translateX(calc(-100% - 18px))!important;
    transition:transform .22s ease!important;
  }
  html body.sidebar-open .sidebar{transform:translateX(0)!important;}
  html body .main{margin-left:0!important;width:100%!important;}
  html body .menu-toggle{display:inline-flex!important;}
  html body .topbar{
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr)!important;
    align-items:center!important;
    padding:10px 14px!important;
  }
  html body .topbar-title{min-width:0!important;max-width:100%!important;width:100%!important;}
  html body .topbar-user{grid-column:1/-1!important;width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:9px!important;}
  html body .topbar-controls{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;width:100%!important;}
  html body .topbar-account{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;width:100%!important;}
  html body .department-context-switch{max-width:none!important;width:100%!important;}
  html body .user-chip{max-width:none!important;justify-content:center!important;text-align:center!important;}
}

/* Smartphone: vollständiger Header wie Desktop, aber in klaren Zeilen statt Überlappungen. */
@media (max-width:760px){
  html body .topbar{
    min-height:0!important;
    padding:calc(8px + env(safe-area-inset-top)) 10px 10px!important;
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:9px!important;
    align-items:center!important;
    border-radius:0 0 20px 20px!important;
    overflow:visible!important;
  }
  html body .menu-toggle{
    display:inline-flex!important;
    width:44px!important;
    height:44px!important;
    align-items:center!important;
    justify-content:center!important;
  }
  html body .topbar-title{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
  }
  html body .topbar-logo-pair{width:32px!important;height:32px!important;flex:0 0 32px!important;}
  html body .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
    margin:0!important;
    font-size:.67rem!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar-user{
    grid-column:1/-1!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  html body .topbar-controls{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  html body .department-context-switch{
    width:100%!important;
    max-width:none!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    gap:9px!important;
    padding:8px 10px!important;
    border-radius:16px!important;
  }
  html body .department-context-switch > span{display:block!important;font-size:.66rem!important;}
  html body .theme-switch{
    display:flex!important;
    width:max-content!important;
    max-width:100%!important;
    justify-self:start!important;
    margin:0!important;
  }
  html body .topbar-account{
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"role logout" "name name"!important;
    gap:8px 10px!important;
    align-items:center!important;
    padding:10px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:17px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
  }
  html body .topbar-role-badge{
    grid-area:role!important;
    display:inline-flex!important;
    justify-self:start!important;
    min-height:32px!important;
    padding:6px 10px!important;
  }
  html body .user-chip{
    grid-area:name!important;
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    justify-content:flex-start!important;
    text-align:left!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:break-word!important;
    line-height:1.25!important;
    padding:2px 0!important;
  }
  html body .topbar-logout{
    grid-area:logout!important;
    display:block!important;
    justify-self:end!important;
  }
  html body .topbar-logout .btn{
    width:auto!important;
    min-height:36px!important;
    padding:7px 12px!important;
  }
  html body .content{padding:14px 10px calc(86px + env(safe-area-inset-bottom))!important;}
  html body .app-shell .main .content :is(.pill,.status,.role,.badge,.incident-status-pill){
    white-space:normal!important;
    text-align:center!important;
  }
}

/* v1.2.65 Nachschärfung: Kontoinformationen dürfen durch ältere Mobile-Regeln nicht ausgeblendet werden. */
@media (min-width:761px) and (max-width:980px){
  html body .topbar .topbar-account .user-chip{display:flex!important;}
  html body .topbar .topbar-account .topbar-role-badge{display:inline-flex!important;}
  html body .topbar .topbar-controls .theme-switch{display:flex!important;}
  html body .topbar .topbar-account form.topbar-logout{display:block!important;}
}
@media (max-width:760px){
  html body .topbar .topbar-account .user-chip{display:flex!important;}
  html body .topbar .topbar-account .topbar-role-badge{display:inline-flex!important;}
  html body .topbar .topbar-controls .theme-switch{display:flex!important;}
  html body .topbar .topbar-account form.topbar-logout{display:block!important;}
}

/* Retter-Portal v1.2.66 · Header vollständig neu geordnet */
html body .topbar{
  display:grid!important;
  grid-template-columns:minmax(190px,auto) minmax(280px,520px) minmax(360px,auto)!important;
  align-items:center!important;
  gap:16px!important;
  min-height:76px!important;
  padding:12px 24px!important;
  overflow:visible!important;
}
html body .topbar .menu-toggle{display:none!important;}
html body .topbar .topbar-title{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
  width:auto!important;
  max-width:none!important;
  overflow:visible!important;
}
html body .topbar .topbar-logo-pair{flex:0 0 34px!important;width:34px!important;height:34px!important;}
html body .topbar .topbar-eyebrow{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  margin:0!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
html body .topbar .topbar-context{
  justify-self:center!important;
  width:100%!important;
  min-width:0!important;
  max-width:520px!important;
}
html body .topbar .department-context-switch,
html body .topbar .department-context-static{
  width:100%!important;
  min-width:0!important;
  max-width:520px!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  margin:0!important;
  padding:7px 10px!important;
  border:1px solid var(--line)!important;
  border-radius:18px!important;
  background:var(--surface)!important;
  box-shadow:var(--shadow-sm)!important;
}
html body .topbar .department-context-switch > span,
html body .topbar .department-context-static > span{
  position:static!important;
  display:block!important;
  min-width:max-content!important;
  margin:0!important;
  font-size:.68rem!important;
  line-height:1!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  color:var(--muted)!important;
  white-space:nowrap!important;
}
html body .topbar .department-context-switch select{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:40px!important;
  min-height:40px!important;
  padding:7px 34px 7px 12px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html body .topbar .department-context-static strong{
  min-width:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html body .topbar .topbar-actions{
  justify-self:end!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:12px!important;
  min-width:0!important;
  width:auto!important;
  max-width:100%!important;
}
html body .topbar .theme-switch{flex:0 0 auto!important;margin:0!important;}
html body .topbar .topbar-account-info{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
  max-width:300px!important;
}
html body .topbar .topbar-role-badge{
  display:inline-flex!important;
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
html body .topbar .user-chip,
html body .topbar .user-chip.has-role-badge{
  display:block!important;
  min-width:0!important;
  max-width:180px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-align:left!important;
}
html body .topbar .topbar-logout{display:block!important;flex:0 0 auto!important;margin:0!important;}
html body .topbar .topbar-logout .btn{white-space:nowrap!important;min-width:86px!important;}

/* Tablet: keine gequetschten Bedienelemente, sondern zwei saubere Zeilen. */
@media (min-width:761px) and (max-width:1180px){
  html body .topbar{
    grid-template-columns:auto minmax(0,1fr) auto!important;
    grid-template-areas:
      "brand brand actions"
      "context context context"!important;
    gap:10px 14px!important;
    padding:10px 16px!important;
  }
  html body .topbar .menu-toggle{display:none!important;}
  html body .topbar .topbar-title{grid-area:brand!important;}
  html body .topbar .topbar-context{grid-area:context!important;justify-self:stretch!important;max-width:none!important;}
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{max-width:none!important;}
  html body .topbar .topbar-actions{
    grid-area:actions!important;
    justify-self:end!important;
    gap:9px!important;
  }
  html body .topbar .topbar-account-info{max-width:250px!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{max-width:145px!important;}
}

/* Schmales Tablet mit eingeklappter Sidebar. */
@media (min-width:761px) and (max-width:980px){
  html body .topbar{
    grid-template-columns:48px minmax(0,1fr) auto!important;
    grid-template-areas:
      "menu brand actions"
      "context context context"!important;
  }
  html body .topbar .menu-toggle{
    grid-area:menu!important;
    display:inline-flex!important;
    width:44px!important;
    height:44px!important;
    align-items:center!important;
    justify-content:center!important;
  }
  html body .topbar .topbar-actions{gap:8px!important;}
  html body .topbar .theme-switch{display:none!important;}
  html body .topbar .topbar-account-info{max-width:220px!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{max-width:120px!important;}
}

/* Smartphone: alle Desktop-Informationen, aber klar in vier geordneten Bereichen. */
@media (max-width:760px){
  html body .topbar{
    position:sticky!important;
    top:0!important;
    z-index:4200!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    grid-template-areas:
      "menu brand"
      "context context"
      "actions actions"!important;
    gap:10px!important;
    min-height:0!important;
    padding:calc(8px + env(safe-area-inset-top)) 10px 11px!important;
    border-radius:0 0 22px 22px!important;
    overflow:visible!important;
  }
  html body .topbar .menu-toggle{
    grid-area:menu!important;
    display:inline-flex!important;
    width:44px!important;
    height:44px!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
  }
  html body .topbar .topbar-title{
    grid-area:brand!important;
    width:100%!important;
    min-width:0!important;
    align-self:center!important;
  }
  html body .topbar .topbar-logo-pair{width:30px!important;height:30px!important;flex-basis:30px!important;}
  html body .topbar .topbar-eyebrow{
    min-width:0!important;
    font-size:.66rem!important;
    letter-spacing:.07em!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-context{
    grid-area:context!important;
    width:100%!important;
    max-width:none!important;
    justify-self:stretch!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{
    width:100%!important;
    max-width:none!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
    padding:10px 11px!important;
    border-radius:17px!important;
  }
  html body .topbar .department-context-switch > span,
  html body .topbar .department-context-static > span{font-size:.67rem!important;}
  html body .topbar .department-context-switch select{height:42px!important;min-height:42px!important;}
  html body .topbar .topbar-actions{
    grid-area:actions!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    grid-template-areas:"theme account logout"!important;
    align-items:stretch!important;
    gap:8px!important;
    justify-self:stretch!important;
  }
  html body .topbar .theme-switch{
    grid-area:theme!important;
    display:flex!important;
    align-self:stretch!important;
    justify-self:start!important;
    width:auto!important;
    max-width:100%!important;
    margin:0!important;
  }
  html body .topbar .topbar-account-info{
    grid-area:account!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-areas:"role" "name"!important;
    align-content:center!important;
    gap:4px!important;
    min-width:0!important;
    max-width:none!important;
    padding:8px 10px!important;
    border:1px solid var(--line)!important;
    border-radius:16px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
  }
  html body .topbar .topbar-role-badge{
    grid-area:role!important;
    justify-self:start!important;
    min-height:27px!important;
    padding:5px 9px!important;
    font-size:.72rem!important;
  }
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{
    grid-area:name!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    text-align:left!important;
    line-height:1.2!important;
  }
  html body .topbar .topbar-logout{
    grid-area:logout!important;
    display:block!important;
    align-self:stretch!important;
    justify-self:end!important;
  }
  html body .topbar .topbar-logout .btn{
    height:100%!important;
    min-height:44px!important;
    min-width:82px!important;
    padding:8px 11px!important;
  }
}

@media (max-width:430px){
  html body .topbar .topbar-actions{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "theme logout"
      "account account"!important;
  }
  html body .topbar .theme-switch{justify-self:start!important;}
  html body .topbar .topbar-account-info{width:100%!important;}
  html body .topbar .topbar-logout{justify-self:end!important;}
}

/* Retter-Portal v1.2.67 · kompakter, klarer Smartphone-Header */
@media (max-width:760px){
  html body .topbar,
  html body .topbar.has-department-switch{
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr) auto!important;
    grid-template-areas:
      "menu brand logout"
      "context context context"
      "role name theme"!important;
    align-items:center!important;
    gap:8px 9px!important;
    width:100%!important;
    min-height:0!important;
    padding:calc(8px + env(safe-area-inset-top)) 10px 10px!important;
    border-radius:0 0 20px 20px!important;
    overflow:visible!important;
  }
  html body .topbar .menu-toggle{
    grid-area:menu!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    margin:0!important;
  }
  html body .topbar .topbar-title{
    grid-area:brand!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-logo-pair{
    display:flex!important;
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    flex:0 0 30px!important;
  }
  html body .topbar .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    font-size:.64rem!important;
    letter-spacing:.055em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-context{
    grid-area:context!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:9px!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:50px!important;
    margin:0!important;
    padding:6px 7px 6px 11px!important;
    border-radius:16px!important;
    background:rgba(148,163,184,.08)!important;
    border:1px solid var(--line-soft)!important;
    box-shadow:none!important;
  }
  html body .topbar .department-context-switch > span,
  html body .topbar .department-context-static > span{
    font-size:.65rem!important;
    letter-spacing:.10em!important;
    white-space:nowrap!important;
  }
  html body .topbar .department-context-switch select{
    height:38px!important;
    min-height:38px!important;
    padding:0 36px 0 12px!important;
    border-radius:13px!important;
    font-size:.92rem!important;
  }
  html body .topbar .topbar-actions{
    display:contents!important;
  }
  html body .topbar .topbar-account-info{
    display:contents!important;
  }
  html body .topbar .topbar-role-badge{
    grid-area:role!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    justify-self:start!important;
    width:auto!important;
    min-width:0!important;
    max-width:96px!important;
    min-height:34px!important;
    margin:0!important;
    padding:6px 9px!important;
    border-radius:999px!important;
    font-size:.67rem!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge,
  html body .topbar.has-department-switch .user-chip,
  html body .topbar.has-department-switch .user-chip.has-role-badge{
    grid-area:name!important;
    display:block!important;
    justify-self:stretch!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:34px!important;
    margin:0!important;
    padding:7px 10px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:12px!important;
    background:rgba(148,163,184,.08)!important;
    box-shadow:none!important;
    color:var(--text)!important;
    font-size:.88rem!important;
    line-height:1.15!important;
    text-align:left!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .theme-switch{
    grid-area:theme!important;
    display:flex!important;
    justify-self:end!important;
    align-self:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:36px!important;
    margin:0!important;
    padding:3px!important;
    border-radius:999px!important;
    transform:none!important;
  }
  html body .topbar .theme-switch .theme-dot{
    width:30px!important;
    min-width:30px!important;
    height:30px!important;
    min-height:30px!important;
    padding:0!important;
    font-size:.76rem!important;
  }
  html body .topbar .theme-switch .theme-dot.auto{
    width:auto!important;
    min-width:44px!important;
    padding:0 8px!important;
  }
  html body .topbar .topbar-logout,
  html body .topbar form[action="/logout"]{
    grid-area:logout!important;
    display:block!important;
    justify-self:end!important;
    align-self:center!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
  }
  html body .topbar .topbar-logout .btn,
  html body .topbar form[action="/logout"] .btn,
  html body .topbar form[action="/logout"] button{
    width:auto!important;
    min-width:76px!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:0 12px!important;
    border-radius:13px!important;
    font-size:.82rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
}

@media (max-width:390px){
  html body .topbar,
  html body .topbar.has-department-switch{
    grid-template-columns:42px minmax(0,1fr) auto!important;
    gap:7px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  html body .topbar .menu-toggle{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;}
  html body .topbar .topbar-role-badge{max-width:86px!important;padding-inline:7px!important;font-size:.62rem!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{font-size:.82rem!important;padding-inline:8px!important;}
  html body .topbar .theme-switch .theme-dot{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important;}
  html body .topbar .theme-switch .theme-dot.auto{min-width:41px!important;padding-inline:7px!important;}
  html body .topbar .topbar-logout .btn,
  html body .topbar form[action="/logout"] .btn{min-width:70px!important;padding-inline:10px!important;font-size:.78rem!important;}
}

/* Retter-Portal v1.2.68 · mobiler Header ohne Überlagerungen, Version dauerhaft sichtbar */
html body .topbar .topbar-mobile-logout{display:none!important;}

@media (max-width:760px){
  html body .topbar,
  html body .topbar.has-department-switch{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) auto!important;
    grid-template-areas:
      "menu brand mobilelogout"
      "context context context"
      "actions actions actions"!important;
    align-items:center!important;
    column-gap:9px!important;
    row-gap:8px!important;
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    padding:calc(8px + env(safe-area-inset-top)) 10px 10px!important;
    overflow:visible!important;
  }
  html body .topbar .menu-toggle{
    grid-area:menu!important;
    display:inline-flex!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    margin:0!important;
  }
  html body .topbar .topbar-title{
    grid-area:brand!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-logo-pair{
    display:flex!important;
    width:29px!important;
    height:29px!important;
    min-width:29px!important;
    flex:0 0 29px!important;
  }
  html body .topbar .topbar-product{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    overflow:visible!important;
    white-space:nowrap!important;
    text-overflow:clip!important;
    font-size:.62rem!important;
    letter-spacing:.045em!important;
  }
  html body .topbar .topbar-eyebrow span:first-child,
  html body .topbar .topbar-eyebrow em,
  html body .topbar .topbar-version{
    display:inline-flex!important;
    align-items:center!important;
    min-width:0!important;
    line-height:1!important;
  }
  html body .topbar .topbar-eyebrow span:first-child{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-version{
    flex:0 0 auto!important;
    padding:4px 6px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:999px!important;
    background:rgba(148,163,184,.10)!important;
    color:var(--text)!important;
    font-size:.62rem!important;
    font-weight:950!important;
    letter-spacing:.025em!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-mobile-logout{
    grid-area:mobilelogout!important;
    display:block!important;
    justify-self:end!important;
    align-self:center!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
  }
  html body .topbar .topbar-mobile-logout .btn{
    width:auto!important;
    min-width:72px!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:0 11px!important;
    border-radius:13px!important;
    font-size:.78rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-context{
    grid-area:context!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:48px!important;
    margin:0!important;
    padding:6px 7px 6px 10px!important;
    border-radius:15px!important;
  }
  html body .topbar .department-context-switch > span,
  html body .topbar .department-context-static > span{
    display:block!important;
    min-width:max-content!important;
    font-size:.63rem!important;
    line-height:1!important;
    letter-spacing:.10em!important;
    white-space:nowrap!important;
  }
  html body .topbar .department-context-switch select{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:37px!important;
    min-height:37px!important;
    padding:0 34px 0 11px!important;
    border-radius:12px!important;
    font-size:.9rem!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-actions{
    grid-area:actions!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    grid-template-areas:"theme account"!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    overflow:visible!important;
  }
  html body .topbar .theme-switch{
    grid-area:theme!important;
    display:flex!important;
    justify-self:start!important;
    align-self:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:38px!important;
    margin:0!important;
    padding:3px!important;
    transform:none!important;
  }
  html body .topbar .theme-switch .theme-dot{
    width:30px!important;
    min-width:30px!important;
    height:30px!important;
    min-height:30px!important;
    padding:0!important;
    font-size:.74rem!important;
  }
  html body .topbar .theme-switch .theme-dot.auto{
    width:auto!important;
    min-width:43px!important;
    padding:0 7px!important;
  }
  html body .topbar .topbar-account-info{
    grid-area:account!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:38px!important;
    margin:0!important;
    padding:4px 6px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:14px!important;
    background:rgba(148,163,184,.08)!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-role-badge{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:94px!important;
    min-height:29px!important;
    margin:0!important;
    padding:5px 8px!important;
    border-radius:999px!important;
    font-size:.64rem!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge,
  html body .topbar.has-department-switch .user-chip,
  html body .topbar.has-department-switch .user-chip.has-role-badge{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0 4px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:var(--text)!important;
    font-size:.82rem!important;
    line-height:1.15!important;
    text-align:left!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-actions > .topbar-logout,
  html body .topbar .topbar-actions > form[action="/logout"]{
    display:none!important;
  }
}

@media (max-width:390px){
  html body .topbar,
  html body .topbar.has-department-switch{
    grid-template-columns:42px minmax(0,1fr) auto!important;
    column-gap:7px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  html body .topbar .menu-toggle{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;}
  html body .topbar .topbar-logo-pair{width:27px!important;height:27px!important;min-width:27px!important;flex-basis:27px!important;}
  html body .topbar .topbar-eyebrow{font-size:.58rem!important;gap:4px!important;}
  html body .topbar .topbar-version{font-size:.57rem!important;padding:3px 5px!important;}
  html body .topbar .topbar-mobile-logout .btn{min-width:68px!important;padding:0 9px!important;font-size:.75rem!important;}
  html body .topbar .theme-switch .theme-dot{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important;}
  html body .topbar .theme-switch .theme-dot.auto{min-width:40px!important;padding:0 6px!important;}
  html body .topbar .topbar-role-badge{max-width:82px!important;padding-inline:6px!important;font-size:.59rem!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{font-size:.78rem!important;}
}

/* Retter-Portal v1.2.69 · Header neu strukturiert: Desktop, Tablet und Smartphone */
html body .topbar{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  padding:0!important;
  overflow:visible!important;
  background:rgba(7,13,24,.90)!important;
  border-bottom:1px solid rgba(148,163,184,.13)!important;
  box-shadow:0 12px 34px rgba(2,6,23,.18)!important;
  backdrop-filter:blur(24px) saturate(1.35)!important;
  -webkit-backdrop-filter:blur(24px) saturate(1.35)!important;
}
body[data-theme="light"] .topbar{
  background:rgba(255,255,255,.91)!important;
  border-bottom-color:rgba(100,116,139,.18)!important;
  box-shadow:0 10px 30px rgba(15,23,42,.08)!important;
}
html body .topbar-desktop-shell{
  display:grid!important;
  grid-template-columns:minmax(230px,auto) minmax(320px,1fr) minmax(max-content,auto)!important;
  align-items:center!important;
  gap:clamp(16px,2vw,34px)!important;
  width:100%!important;
  min-width:0!important;
  min-height:80px!important;
  padding:12px 28px!important;
}
html body .topbar-mobile-shell{display:none!important;}
html body .topbar-desktop-shell .topbar-title{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  overflow:visible!important;
  white-space:nowrap!important;
}
html body .topbar-desktop-shell .topbar-logo-pair{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  flex:0 0 38px!important;
}
html body .topbar-desktop-shell .topbar-product{min-width:0!important;overflow:visible!important;}
html body .topbar-desktop-shell .topbar-eyebrow{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin:0!important;
  max-width:none!important;
  overflow:visible!important;
  white-space:nowrap!important;
  font-size:.73rem!important;
  letter-spacing:.095em!important;
}
html body .topbar-desktop-shell .topbar-version{
  display:inline-flex!important;
  align-items:center!important;
  min-height:26px!important;
  padding:4px 8px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:999px!important;
  background:rgba(148,163,184,.09)!important;
  color:var(--text)!important;
  font-size:.69rem!important;
  font-weight:950!important;
  letter-spacing:.035em!important;
  text-transform:none!important;
}
html body .topbar-desktop-shell .topbar-context{
  display:flex!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
}
html body .topbar-desktop-shell .department-context-switch,
html body .topbar-desktop-shell .department-context-static{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  width:min(100%,620px)!important;
  min-width:0!important;
  max-width:620px!important;
  min-height:48px!important;
  margin:0!important;
  padding:5px 6px 5px 13px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:999px!important;
  background:rgba(148,163,184,.07)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
}
html body .topbar-desktop-shell .department-context-switch > span,
html body .topbar-desktop-shell .department-context-static > span{
  font-size:.65rem!important;
  letter-spacing:.12em!important;
  line-height:1!important;
  white-space:nowrap!important;
  color:var(--muted)!important;
}
html body .topbar-desktop-shell .department-context-switch select{
  height:38px!important;
  min-height:38px!important;
  min-width:0!important;
  padding:0 38px 0 14px!important;
  border-radius:999px!important;
  font-size:.94rem!important;
  font-weight:950!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html body .topbar-desktop-shell .department-context-static strong{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:.94rem!important;
}
html body .topbar-desktop-shell .topbar-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
}
html body .topbar-desktop-shell .theme-switch{
  flex:0 0 auto!important;
  height:42px!important;
  margin:0!important;
  padding:4px!important;
}
html body .topbar-desktop-shell .topbar-account-info{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
  max-width:300px!important;
  padding:4px 5px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body .topbar-desktop-shell .topbar-role-badge{
  flex:0 0 auto!important;
  min-height:32px!important;
  padding:6px 10px!important;
  font-size:.66rem!important;
  white-space:nowrap!important;
}
html body .topbar-desktop-shell .user-chip,
html body .topbar-desktop-shell .user-chip.has-role-badge{
  display:block!important;
  min-width:0!important;
  max-width:180px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--text)!important;
  font-size:.9rem!important;
  line-height:1.15!important;
  text-align:left!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html body .topbar-desktop-shell .topbar-logout{display:block!important;flex:0 0 auto!important;margin:0!important;}
html body .topbar-desktop-shell .topbar-logout .btn{
  min-width:84px!important;
  min-height:42px!important;
  padding:8px 15px!important;
  border-radius:14px!important;
}

@media (min-width:761px) and (max-width:1180px){
  html body .topbar-desktop-shell{
    grid-template-columns:minmax(220px,1fr) auto!important;
    grid-template-areas:"brand actions" "context context"!important;
    gap:10px 18px!important;
    min-height:0!important;
    padding:10px 18px 12px!important;
  }
  html body .topbar-desktop-shell .topbar-title{grid-area:brand!important;}
  html body .topbar-desktop-shell .topbar-context{grid-area:context!important;}
  html body .topbar-desktop-shell .topbar-actions{grid-area:actions!important;}
  html body .topbar-desktop-shell .department-context-switch,
  html body .topbar-desktop-shell .department-context-static{width:min(100%,760px)!important;max-width:760px!important;}
  html body .topbar-desktop-shell .topbar-account-info{max-width:250px!important;}
  html body .topbar-desktop-shell .user-chip,
  html body .topbar-desktop-shell .user-chip.has-role-badge{max-width:140px!important;}
}

@media (max-width:760px){
  html body .topbar{
    position:sticky!important;
    top:0!important;
    border-radius:0 0 20px 20px!important;
  }
  html body .topbar-desktop-shell{display:none!important;}
  html body .topbar-mobile-shell{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:9px!important;
    width:100%!important;
    min-width:0!important;
    padding:calc(8px + env(safe-area-inset-top)) 10px 11px!important;
  }
  html body .topbar-mobile-primary{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:8px!important;
    min-width:0!important;
  }
  html body .topbar-mobile-primary .menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--surface-2)!important;
    color:var(--text)!important;
    box-shadow:var(--shadow-sm)!important;
    font-size:1.05rem!important;
  }
  html body .topbar-mobile-brand{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
    height:44px!important;
    padding:0 8px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:14px!important;
    background:rgba(148,163,184,.07)!important;
    overflow:hidden!important;
  }
  html body .topbar-mobile-logo-pair{
    position:relative!important;
    display:flex!important;
    width:26px!important;
    min-width:26px!important;
    height:26px!important;
    flex:0 0 26px!important;
  }
  html body .topbar-mobile-logo-pair .topbar-logo{
    width:26px!important;
    height:26px!important;
    min-width:26px!important;
  }
  html body .topbar-mobile-product{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:var(--muted)!important;
    font-size:.68rem!important;
    font-weight:950!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
  }
  html body .topbar-mobile-version{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    min-height:27px!important;
    padding:4px 7px!important;
    border:1px solid var(--line)!important;
    border-radius:999px!important;
    background:var(--surface)!important;
    color:var(--text)!important;
    font-size:.64rem!important;
    font-weight:950!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .topbar-mobile-primary .topbar-mobile-logout{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
  }
  html body .topbar-mobile-primary .topbar-mobile-logout .btn{
    width:auto!important;
    min-width:74px!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0 11px!important;
    border-radius:14px!important;
    font-size:.78rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .topbar-mobile-context{display:block!important;width:100%!important;min-width:0!important;}
  html body .topbar-mobile-context .department-context-switch,
  html body .topbar-mobile-context .department-context-static{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:48px!important;
    margin:0!important;
    padding:5px 6px 5px 10px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:15px!important;
    background:rgba(148,163,184,.07)!important;
    box-shadow:none!important;
  }
  html body .topbar-mobile-context .department-context-switch > span,
  html body .topbar-mobile-context .department-context-static > span{
    min-width:max-content!important;
    font-size:.63rem!important;
    line-height:1!important;
    letter-spacing:.11em!important;
    white-space:nowrap!important;
    color:var(--muted)!important;
  }
  html body .topbar-mobile-context .department-context-switch select{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:38px!important;
    min-height:38px!important;
    padding:0 35px 0 11px!important;
    border-radius:12px!important;
    font-size:.9rem!important;
    font-weight:950!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar-mobile-context .department-context-static strong{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:.9rem!important;
  }
  html body .topbar-mobile-secondary{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
  }
  html body .topbar-mobile-secondary .theme-switch{
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    height:38px!important;
    margin:0!important;
    padding:3px!important;
    border-radius:999px!important;
  }
  html body .topbar-mobile-secondary .theme-dot{
    width:30px!important;
    min-width:30px!important;
    height:30px!important;
    min-height:30px!important;
    padding:0!important;
    font-size:.72rem!important;
  }
  html body .topbar-mobile-secondary .theme-dot.auto{width:auto!important;min-width:43px!important;padding:0 7px!important;}
  html body .topbar-mobile-account{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    min-height:38px!important;
    padding:4px 6px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:14px!important;
    background:rgba(148,163,184,.07)!important;
    overflow:hidden!important;
  }
  html body .topbar-mobile-account .topbar-role-badge{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    max-width:94px!important;
    min-height:28px!important;
    margin:0!important;
    padding:5px 8px!important;
    border-radius:999px!important;
    font-size:.61rem!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar-mobile-name{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:var(--text)!important;
    font-size:.82rem!important;
    font-weight:950!important;
    line-height:1.15!important;
  }
}

@media (max-width:390px){
  html body .topbar-mobile-shell{padding-left:8px!important;padding-right:8px!important;gap:8px!important;}
  html body .topbar-mobile-primary{grid-template-columns:42px minmax(0,1fr) auto!important;gap:7px!important;}
  html body .topbar-mobile-primary .menu-toggle{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important;}
  html body .topbar-mobile-brand{height:42px!important;padding-inline:6px!important;gap:4px!important;}
  html body .topbar-mobile-logo-pair,
  html body .topbar-mobile-logo-pair .topbar-logo{width:24px!important;min-width:24px!important;height:24px!important;flex-basis:24px!important;}
  html body .topbar-mobile-product{font-size:.61rem!important;letter-spacing:.055em!important;}
  html body .topbar-mobile-version{font-size:.58rem!important;padding-inline:5px!important;}
  html body .topbar-mobile-primary .topbar-mobile-logout .btn{height:42px!important;min-height:42px!important;min-width:68px!important;padding-inline:9px!important;font-size:.74rem!important;}
  html body .topbar-mobile-account .topbar-role-badge{max-width:80px!important;font-size:.56rem!important;padding-inline:6px!important;}
  html body .topbar-mobile-name{font-size:.77rem!important;}
}
